1: #include <X/mit-copyright.h> 2: 3: /* $Header: chartable.h,v 10.3 86/02/01 16:06:06 tony Rel $ */ 4: 5: #define CIGNORE 0 6: #define BUFFER_MODE 1 7: #define CLINEFEED 2 8: #define CRETURN 4 9: #define CPRINTING 6 10: #define FLUSH 8 11: #define CRI 10 12: #define CESC 12 13: #define CCANCEL 14 14: #define CLS1 16 15: #define CLS0 18 16: #define CTEKINIT 20 17: #define CTEKALPH 22 18: #define CCSI 24 19: #define CDCS 26 20: #define CTAB 28 21: #define CFORMFEED 30 22: #define CBACKSPACE 32 23: #define CSS2 34 24: #define CSS3 36 25: #define CIND 38 26: #define CNEL 40 27: #define CBELL 42 28: 29: /* 30: * Decode table 31: */ 32: #define ctable (&chartable[1]) 33: unsigned char chartable[257] = { 34: FLUSH, /* EOF code (-1) */ 35: CIGNORE, /* NUL */ 36: CIGNORE, /* SOH */ 37: CIGNORE, /* STX */ 38: CIGNORE, /* ETX */ 39: CIGNORE, /* EOT */ 40: CIGNORE, /* ENQ */ 41: CIGNORE, /* ACK */ 42: CBELL, /* BEL */ 43: CBACKSPACE, /* BS */ 44: CTAB, /* HT */ 45: CLINEFEED, /* LF */ 46: CLINEFEED, /* VT */ 47: CFORMFEED, /* FF */ 48: CRETURN, /* CR */ 49: CLS1, /* SO (Locking shift 1) */ 50: CLS0, /* SI (Locking shift 0) */ 51: CIGNORE, /* DLE */ 52: CIGNORE, /* DC1 */ 53: CIGNORE, /* DC2 */ 54: CIGNORE, /* DC3 */ 55: CIGNORE, /* DC4 */ 56: CIGNORE, /* NAK */ 57: CIGNORE, /* SYN */ 58: CIGNORE, /* ETB */ 59: CCANCEL, /* CAN */ 60: CIGNORE, /* EM */ 61: CCANCEL, /* SUB */ 62: CESC, /* ESC (ESCAPE introducer) */ 63: CTEKINIT, /* FS (Tek point plot mode) */ 64: CTEKINIT, /* GS (Tek vector plot mode) */ 65: CTEKINIT, /* RS (Tek incr. plot mode) */ 66: CTEKALPH, /* US (Tek alpha mode) */ 67: 68: CPRINTING, /* SP */ 69: CPRINTING, /* ! */ 70: CPRINTING, /* " */ 71: CPRINTING, /* # */ 72: CPRINTING, /* $ */ 73: CPRINTING, /* % */ 74: CPRINTING, /* & */ 75: CPRINTING, /* ' */ 76: CPRINTING, /* ( */ 77: CPRINTING, /* ) */ 78: CPRINTING, /* * */ 79: CPRINTING, /* + */ 80: CPRINTING, /* , */ 81: CPRINTING, /* - */ 82: CPRINTING, /* . */ 83: CPRINTING, /* / */ 84: CPRINTING, /* 0 */ 85: CPRINTING, /* 1 */ 86: CPRINTING, /* 2 */ 87: CPRINTING, /* 3 */ 88: CPRINTING, /* 4 */ 89: CPRINTING, /* 5 */ 90: CPRINTING, /* 6 */ 91: CPRINTING, /* 7 */ 92: CPRINTING, /* 8 */ 93: CPRINTING, /* 9 */ 94: CPRINTING, /* : */ 95: CPRINTING, /* ; */ 96: CPRINTING, /* < */ 97: CPRINTING, /* = */ 98: CPRINTING, /* > */ 99: CPRINTING, /* ? */ 100: 101: CPRINTING, /* @ */ 102: CPRINTING, /* A */ 103: CPRINTING, /* B */ 104: CPRINTING, /* C */ 105: CPRINTING, /* D */ 106: CPRINTING, /* E */ 107: CPRINTING, /* F */ 108: CPRINTING, /* G */ 109: CPRINTING, /* H */ 110: CPRINTING, /* I */ 111: CPRINTING, /* J */ 112: CPRINTING, /* K */ 113: CPRINTING, /* L */ 114: CPRINTING, /* M */ 115: CPRINTING, /* N */ 116: CPRINTING, /* O */ 117: CPRINTING, /* P */ 118: CPRINTING, /* Q */ 119: CPRINTING, /* R */ 120: CPRINTING, /* S */ 121: CPRINTING, /* T */ 122: CPRINTING, /* U */ 123: CPRINTING, /* V */ 124: CPRINTING, /* W */ 125: CPRINTING, /* X */ 126: CPRINTING, /* Y */ 127: CPRINTING, /* Z */ 128: CPRINTING, /* [ */ 129: CPRINTING, /* \ */ 130: CPRINTING, /* ] */ 131: CPRINTING, /* ^ */ 132: CPRINTING, /* _ */ 133: 134: CPRINTING, /* ` */ 135: CPRINTING, /* a */ 136: CPRINTING, /* b */ 137: CPRINTING, /* c */ 138: CPRINTING, /* d */ 139: CPRINTING, /* e */ 140: CPRINTING, /* f */ 141: CPRINTING, /* g */ 142: CPRINTING, /* h */ 143: CPRINTING, /* i */ 144: CPRINTING, /* j */ 145: CPRINTING, /* k */ 146: CPRINTING, /* l */ 147: CPRINTING, /* m */ 148: CPRINTING, /* n */ 149: CPRINTING, /* o */ 150: CPRINTING, /* p */ 151: CPRINTING, /* q */ 152: CPRINTING, /* r */ 153: CPRINTING, /* s */ 154: CPRINTING, /* t */ 155: CPRINTING, /* u */ 156: CPRINTING, /* v */ 157: CPRINTING, /* w */ 158: CPRINTING, /* x */ 159: CPRINTING, /* y */ 160: CPRINTING, /* z */ 161: CPRINTING, /* { */ 162: CPRINTING, /* | */ 163: CPRINTING, /* } */ 164: CPRINTING, /* ~ */ 165: CIGNORE, /* DEL */ 166: 167: CIGNORE, /* Reserved. */ 168: CIGNORE, /* Reserved. */ 169: CIGNORE, /* Reserved. */ 170: CIGNORE, /* Reserved. */ 171: CIND, /* IND */ 172: CNEL, /* NEL */ 173: CIGNORE, /* SSA */ 174: CIGNORE, /* ESA */ 175: CIGNORE, /* HTS */ 176: CIGNORE, /* HTJ */ 177: CIGNORE, /* VTS */ 178: CIGNORE, /* PLD */ 179: CIGNORE, /* PLU */ 180: CRI, /* RI */ 181: CSS2, /* SS2 */ 182: CSS3, /* SS3 */ 183: CDCS, /* DCS */ 184: CIGNORE, /* PU1 */ 185: CIGNORE, /* PU2 */ 186: CIGNORE, /* STS */ 187: CIGNORE, /* CCH */ 188: CIGNORE, /* MW */ 189: CIGNORE, /* SPA */ 190: CIGNORE, /* EPA */ 191: CIGNORE, /* Reserved */ 192: CIGNORE, /* Reserved */ 193: CIGNORE, /* Reserved */ 194: CCSI, /* CSI */ 195: CCANCEL, /* ST */ 196: CDCS, /* OSC */ 197: CDCS, /* PM */ 198: CDCS, /* APC */ 199: 200: CPRINTING, /* SP */ 201: CPRINTING, /* Inverted ! */ 202: CPRINTING, /* Cent */ 203: CPRINTING, /* Pound Sterling */ 204: CPRINTING, /* */ 205: CPRINTING, /* Yen */ 206: CPRINTING, /* */ 207: CPRINTING, /* Section sign */ 208: CPRINTING, /* Blob */ 209: CPRINTING, /* Copyright */ 210: CPRINTING, /* Fem. ordinal */ 211: CPRINTING, /* << */ 212: CPRINTING, /* */ 213: CPRINTING, /* */ 214: CPRINTING, /* */ 215: CPRINTING, /* */ 216: CPRINTING, /* Degree */ 217: CPRINTING, /* +/- */ 218: CPRINTING, /* Superscript 2 */ 219: CPRINTING, /* Superscript 3 */ 220: CPRINTING, /* */ 221: CPRINTING, /* Micro */ 222: CPRINTING, /* Paragraph */ 223: CPRINTING, /* Dot */ 224: CPRINTING, /* */ 225: CPRINTING, /* Superscript 1 */ 226: CPRINTING, /* Masc. ordinal */ 227: CPRINTING, /* >> */ 228: CPRINTING, /* 1/4 */ 229: CPRINTING, /* 1/2 */ 230: CPRINTING, /* */ 231: CPRINTING, /* Inverted ? */ 232: 233: CPRINTING, /* A grave */ 234: CPRINTING, /* A acute */ 235: CPRINTING, /* A curcumflex */ 236: CPRINTING, /* A tilde */ 237: CPRINTING, /* A diaresis */ 238: CPRINTING, /* A ring */ 239: CPRINTING, /* AE */ 240: CPRINTING, /* C cedilla */ 241: CPRINTING, /* E grave */ 242: CPRINTING, /* E acute */ 243: CPRINTING, /* E curcumflex */ 244: CPRINTING, /* E diaresis */ 245: CPRINTING, /* I grave */ 246: CPRINTING, /* I acute */ 247: CPRINTING, /* I curcumflex */ 248: CPRINTING, /* I diaresis */ 249: CPRINTING, /* */ 250: CPRINTING, /* N tilde */ 251: CPRINTING, /* O grave */ 252: CPRINTING, /* O acute */ 253: CPRINTING, /* O circumflex */ 254: CPRINTING, /* O tilde */ 255: CPRINTING, /* O diaresis */ 256: CPRINTING, /* OE */ 257: CPRINTING, /* O slash */ 258: CPRINTING, /* U grave */ 259: CPRINTING, /* U acute */ 260: CPRINTING, /* U circumflex */ 261: CPRINTING, /* U diaresis */ 262: CPRINTING, /* Y diaresis */ 263: CPRINTING, /* */ 264: CPRINTING, /* German "s" */ 265: 266: CPRINTING, /* a grave */ 267: CPRINTING, /* a acute */ 268: CPRINTING, /* a curcumflex */ 269: CPRINTING, /* a tilde */ 270: CPRINTING, /* a diaresis */ 271: CPRINTING, /* a ring */ 272: CPRINTING, /* ae */ 273: CPRINTING, /* c cedilla */ 274: CPRINTING, /* e grave */ 275: CPRINTING, /* e acute */ 276: CPRINTING, /* e curcumflex */ 277: CPRINTING, /* e diaresis */ 278: CPRINTING, /* i grave */ 279: CPRINTING, /* i acute */ 280: CPRINTING, /* i circumflex */ 281: CPRINTING, /* i diaresis */ 282: CPRINTING, /* */ 283: CPRINTING, /* n tilde */ 284: CPRINTING, /* o grave */ 285: CPRINTING, /* o acute */ 286: CPRINTING, /* o curcumflex */ 287: CPRINTING, /* o tilde */ 288: CPRINTING, /* o diaresis */ 289: CPRINTING, /* oe */ 290: CPRINTING, /* o slash */ 291: CPRINTING, /* u grave */ 292: CPRINTING, /* u acute */ 293: CPRINTING, /* u circumflex */ 294: CPRINTING, /* u diaresis */ 295: CPRINTING, /* y diaresis */ 296: CPRINTING, /* */ 297: CIGNORE /* Right delete */ 298: };