1: /* 2: * Copyright 1984, 1985 by the Regents of the University of 3: * California and by Gregory Glenn Minshall. 4: * 5: * Permission to use, copy, modify, and distribute these 6: * programs and their documentation for any purpose and 7: * without fee is hereby granted, provided that this 8: * copyright and permission appear on all copies and 9: * supporting documentation, the name of the Regents of 10: * the University of California not be used in advertising 11: * or publicity pertaining to distribution of the programs 12: * without specific prior permission, and notice be given in 13: * supporting documentation that copying and distribution is 14: * by permission of the Regents of the University of California 15: * and by Gregory Glenn Minshall. Neither the Regents of the 16: * University of California nor Gregory Glenn Minshall make 17: * representations about the suitability of this software 18: * for any purpose. It is provided "as is" without 19: * express or implied warranty. 20: */ 21: 22: 23: /* 24: * ascii to ebcdic translation tables 25: */ 26: 27: #include "ascebc.h" 28: 29: #if defined(DOSCCS) && !defined(lint) 30: static char sccsid[] = "@(#)asctab.c 2.7"; 31: #endif 32: 33: char ascebc[NASCEBC][NASCII] = { 34: 35: /* 36: * printer translation 37: */ 38: 39: /* 000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 40: /* 010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 41: /* 020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 42: /* 030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 43: /* 040 */ 0x40, 0x5A, 0x7F, 0x7B, 0x5B, 0x6C, 0x50, 0x74, 44: /* 050 */ 0x4D, 0x5D, 0x5C, 0x4E, 0x6B, 0x60, 0x4B, 0x61, 45: /* 060 */ 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 46: /* 070 */ 0xF8, 0xF9, 0x7A, 0x5E, 0x4C, 0x7E, 0x6E, 0x6F, 47: /* 100 */ 0x7C, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 48: /* 110 */ 0xC8, 0xC9, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 49: /* 120 */ 0xD7, 0xD8, 0xD9, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 50: /* 130 */ 0xE7, 0xE8, 0xE9, 0xAD, 0xE0, 0xBD, 0x71, 0x6D, 51: /* 140 */ 0x79, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 52: /* 150 */ 0x88, 0x89, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 53: /* 160 */ 0x97, 0x98, 0x99, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 54: /* 170 */ 0xA7, 0xA8, 0xA9, 0xC0, 0x4F, 0xD0, 0xA1, 0x00, 55: 56: /* 57: * input translation 58: */ 59: 60: /* 000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 61: /* 010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 62: /* 020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 63: /* 030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 64: /* 040 */ 0x40, 0x5A, 0x7F, 0x7B, 0x5B, 0x6C, 0x50, 0x7D, 65: /* 050 */ 0x4D, 0x5D, 0x5C, 0x4E, 0x6B, 0x60, 0x4B, 0x61, 66: /* 060 */ 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 67: /* 070 */ 0xF8, 0xF9, 0x7A, 0x5E, 0x4C, 0x7E, 0x6E, 0x6F, 68: /* 100 */ 0x7C, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 69: /* 110 */ 0xC8, 0xC9, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 70: /* 120 */ 0xD7, 0xD8, 0xD9, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 71: /* 130 */ 0xE7, 0xE8, 0xE9, 0xAD, 0xE0, 0xBD, 0x5F, 0x6D, 72: /* 140 */ 0x79, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 73: /* 150 */ 0x88, 0x89, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 74: /* 160 */ 0x97, 0x98, 0x99, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 75: /* 170 */ 0xA7, 0xA8, 0xA9, 0xC0, 0x4F, 0xD0, 0xA1, 0x00, 76: 77: /* 78: * special translation - for IBM 6670 laser printer. 79: * Used by iroff and ipr. The control characters 030-037 have been mapped 80: * into printable (though non-ascii) characters. Bell 007 and backspace 010 81: * translate to the corresponding ebcdic characters, and ^N 016 and ^O 017 82: * map to ebcdic SBS (subscript) and SPS (superscript). 83: */ 84: 85: /* 000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2F, 86: /* 010 */ 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x09, 87: /* 020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 88: /* 030 */ 0x8D, 0x9D, 0x9E, 0x8B, 0x4A, 0x9B, 0x8C, 0xAE, 89: /* 040 */ 0x40, 0x5A, 0x7F, 0x7B, 0x5B, 0x6C, 0x50, 0x7D, 90: /* 050 */ 0x4D, 0x5D, 0x5C, 0x4E, 0x6B, 0x60, 0x4B, 0x61, 91: /* 060 */ 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 92: /* 070 */ 0xF8, 0xF9, 0x7A, 0x5E, 0x4C, 0x7E, 0x6E, 0x6F, 93: /* 100 */ 0x7C, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 94: /* 110 */ 0xC8, 0xC9, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 95: /* 120 */ 0xD7, 0xD8, 0xD9, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 96: /* 130 */ 0xE7, 0xE8, 0xE9, 0xAD, 0xE0, 0xBD, 0x5F, 0x6D, 97: /* 140 */ 0x79, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 98: /* 150 */ 0x88, 0x89, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 99: /* 160 */ 0x97, 0x98, 0x99, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 100: /* 170 */ 0xA7, 0xA8, 0xA9, 0xC0, 0x4F, 0xD0, 0xA1, 0x00, 101: 102: /* 103: * text translation - all graphics retained. 104: */ 105: 106: /* 000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 107: /* 010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 108: /* 020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 109: /* 030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 110: /* 040 */ 0x40, 0x5A, 0x7F, 0x7B, 0x5B, 0x6C, 0x50, 0x7D, 111: /* 050 */ 0x4D, 0x5D, 0x5C, 0x4E, 0x6B, 0x60, 0x4B, 0x61, 112: /* 060 */ 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 113: /* 070 */ 0xF8, 0xF9, 0x7A, 0x5E, 0x4C, 0x7E, 0x6E, 0x6F, 114: /* 100 */ 0x7C, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 115: /* 110 */ 0xC8, 0xC9, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 116: /* 120 */ 0xD7, 0xD8, 0xD9, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 117: /* 130 */ 0xE7, 0xE8, 0xE9, 0xAD, 0xE0, 0xBD, 0x71, 0x6D, 118: /* 140 */ 0x79, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 119: /* 150 */ 0x88, 0x89, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 120: /* 160 */ 0x97, 0x98, 0x99, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 121: /* 170 */ 0xA7, 0xA8, 0xA9, 0xC0, 0x4F, 0xD0, 0xA1, 0x00, 122: };