xref: /csrg-svn/usr.bin/tn3270/api/asctab.c (revision 31049)
1 /*
2  *	Copyright (c) 1984, 1985, 1986 by the Regents of the
3  *	University of 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 #ifndef	lint
23 static	char	sccsid[] = "@(#)asctab.c	3.1  10/29/86";
24 #endif	/* ndef lint */
25 
26 
27 /*
28  * ascii to ebcdic translation tables
29  */
30 
31 #include "ascebc.h"
32 
33 unsigned 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 };
123