1*9abb453fSnaddy /* $OpenBSD: char.c,v 1.6 2015/10/26 16:27:04 naddy Exp $ */ 2df930be7Sderaadt /* $NetBSD: char.c,v 1.6 1995/03/21 09:02:26 cgd Exp $ */ 3df930be7Sderaadt 4df930be7Sderaadt /*- 5df930be7Sderaadt * Copyright (c) 1980, 1991, 1993 6df930be7Sderaadt * The Regents of the University of California. All rights reserved. 7df930be7Sderaadt * 8df930be7Sderaadt * Redistribution and use in source and binary forms, with or without 9df930be7Sderaadt * modification, are permitted provided that the following conditions 10df930be7Sderaadt * are met: 11df930be7Sderaadt * 1. Redistributions of source code must retain the above copyright 12df930be7Sderaadt * notice, this list of conditions and the following disclaimer. 13df930be7Sderaadt * 2. Redistributions in binary form must reproduce the above copyright 14df930be7Sderaadt * notice, this list of conditions and the following disclaimer in the 15df930be7Sderaadt * documentation and/or other materials provided with the distribution. 1629295d1cSmillert * 3. Neither the name of the University nor the names of its contributors 17df930be7Sderaadt * may be used to endorse or promote products derived from this software 18df930be7Sderaadt * without specific prior written permission. 19df930be7Sderaadt * 20df930be7Sderaadt * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 21df930be7Sderaadt * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22df930be7Sderaadt * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23df930be7Sderaadt * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 24df930be7Sderaadt * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25df930be7Sderaadt * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26df930be7Sderaadt * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27df930be7Sderaadt * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28df930be7Sderaadt * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29df930be7Sderaadt * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30df930be7Sderaadt * SUCH DAMAGE. 31df930be7Sderaadt */ 32df930be7Sderaadt 33df930be7Sderaadt #include "char.h" 34df930be7Sderaadt 35df930be7Sderaadt unsigned short _cmap[256] = { 36df930be7Sderaadt /* nul soh stx etx */ 37df930be7Sderaadt _CTR, _CTR, _CTR, _CTR, 38df930be7Sderaadt 39df930be7Sderaadt /* eot enq ack bel */ 40df930be7Sderaadt _CTR, _CTR, _CTR, _CTR, 41df930be7Sderaadt 42df930be7Sderaadt /* bs ht nl vt */ 43df930be7Sderaadt _CTR, _CTR|_SP|_META, _CTR|_NL|_META, _CTR, 44df930be7Sderaadt 45df930be7Sderaadt /* np cr so si */ 46df930be7Sderaadt _CTR, _CTR, _CTR, _CTR, 47df930be7Sderaadt 48df930be7Sderaadt /* dle dc1 dc2 dc3 */ 49df930be7Sderaadt _CTR, _CTR, _CTR, _CTR, 50df930be7Sderaadt 51df930be7Sderaadt /* dc4 nak syn etb */ 52df930be7Sderaadt _CTR, _CTR, _CTR, _CTR, 53df930be7Sderaadt 54df930be7Sderaadt /* can em sub esc */ 55df930be7Sderaadt _CTR, _CTR, _CTR, _CTR, 56df930be7Sderaadt 57df930be7Sderaadt /* fs gs rs us */ 58df930be7Sderaadt _CTR, _CTR, _CTR, _CTR, 59df930be7Sderaadt 60df930be7Sderaadt /* sp ! " # */ 61df930be7Sderaadt _SP|_META, 0, _QF, _META, 62df930be7Sderaadt 63df930be7Sderaadt /* $ % & ' */ 64df930be7Sderaadt _DOL, 0, _META|_CMD, _QF, 65df930be7Sderaadt 66df930be7Sderaadt /* ( ) * + */ 67df930be7Sderaadt _META|_CMD, _META, _GLOB, 0, 68df930be7Sderaadt 69df930be7Sderaadt /* , - . / */ 70df930be7Sderaadt 0, 0, 0, 0, 71df930be7Sderaadt 72df930be7Sderaadt /* 0 1 2 3 */ 73df930be7Sderaadt _DIG|_XD, _DIG|_XD, _DIG|_XD, _DIG|_XD, 74df930be7Sderaadt 75df930be7Sderaadt /* 4 5 6 7 */ 76df930be7Sderaadt _DIG|_XD, _DIG|_XD, _DIG|_XD, _DIG|_XD, 77df930be7Sderaadt 78df930be7Sderaadt /* 8 9 : ; */ 79df930be7Sderaadt _DIG|_XD, _DIG|_XD, 0, _META|_CMD, 80df930be7Sderaadt 81df930be7Sderaadt /* < = > ? */ 82df930be7Sderaadt _META, 0, _META, _GLOB, 83df930be7Sderaadt 84df930be7Sderaadt /* @ A B C */ 85df930be7Sderaadt 0, _LET|_UP|_XD, _LET|_UP|_XD, _LET|_UP|_XD, 86df930be7Sderaadt 87df930be7Sderaadt /* D E F G */ 88df930be7Sderaadt _LET|_UP|_XD, _LET|_UP|_XD, _LET|_UP|_XD, _LET|_UP, 89df930be7Sderaadt 90df930be7Sderaadt /* H I J K */ 91df930be7Sderaadt _LET|_UP, _LET|_UP, _LET|_UP, _LET|_UP, 92df930be7Sderaadt 93df930be7Sderaadt /* L M N O */ 94df930be7Sderaadt _LET|_UP, _LET|_UP, _LET|_UP, _LET|_UP, 95df930be7Sderaadt 96df930be7Sderaadt /* P Q R S */ 97df930be7Sderaadt _LET|_UP, _LET|_UP, _LET|_UP, _LET|_UP, 98df930be7Sderaadt 99df930be7Sderaadt /* T U V W */ 100df930be7Sderaadt _LET|_UP, _LET|_UP, _LET|_UP, _LET|_UP, 101df930be7Sderaadt 102df930be7Sderaadt /* X Y Z [ */ 103df930be7Sderaadt _LET|_UP, _LET|_UP, _LET|_UP, _GLOB, 104df930be7Sderaadt 105df930be7Sderaadt /* \ ] ^ _ */ 106df930be7Sderaadt _ESC, 0, 0, 0, 107df930be7Sderaadt 108df930be7Sderaadt /* ` a b c */ 109df930be7Sderaadt _QB|_GLOB|_META, _LET|_LOW|_XD, _LET|_LOW|_XD, _LET|_LOW|_XD, 110df930be7Sderaadt 111df930be7Sderaadt /* d e f g */ 112df930be7Sderaadt _LET|_LOW|_XD, _LET|_LOW|_XD, _LET|_LOW|_XD, _LET|_LOW, 113df930be7Sderaadt 114df930be7Sderaadt /* h i j k */ 115df930be7Sderaadt _LET|_LOW, _LET|_LOW, _LET|_LOW, _LET|_LOW, 116df930be7Sderaadt 117df930be7Sderaadt /* l m n o */ 118df930be7Sderaadt _LET|_LOW, _LET|_LOW, _LET|_LOW, _LET|_LOW, 119df930be7Sderaadt 120df930be7Sderaadt /* p q r s */ 121df930be7Sderaadt _LET|_LOW, _LET|_LOW, _LET|_LOW, _LET|_LOW, 122df930be7Sderaadt 123df930be7Sderaadt /* t u v w */ 124df930be7Sderaadt _LET|_LOW, _LET|_LOW, _LET|_LOW, _LET|_LOW, 125df930be7Sderaadt 126df930be7Sderaadt /* x y z { */ 127df930be7Sderaadt _LET|_LOW, _LET|_LOW, _LET|_LOW, _GLOB, 128df930be7Sderaadt 129df930be7Sderaadt /* | } ~ del */ 130df930be7Sderaadt _META|_CMD, 0, 0, _CTR, 131df930be7Sderaadt 132df930be7Sderaadt /****************************************************************/ 133*9abb453fSnaddy /* 128 - 255 */ 134df930be7Sderaadt /****************************************************************/ 135*9abb453fSnaddy /* (undef) ... */ 136*9abb453fSnaddy 0, 137df930be7Sderaadt }; 138