home *** CD-ROM | disk | FTP | other *** search
-
- #include "def.h"
-
- extern char ERR_ebcdic[];
-
- /* Function definitions */
-
- /* This table defines the translation from EBCDIC code to ASCII. */
-
- char ebcdic_table[] =
- {
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 00-07 */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 08-0F */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 10-17 */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 18-1F */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 20-27 */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 28-2F */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 30-37 */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 38-3F */
- 0x20, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 40-47 */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x3C, 0x28, 0x2B, 0x2E, /* 48-4F */
- 0x26, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 50-57 */
- 0x2E, 0x2E, 0x21, 0x24, 0x2A, 0x29, 0x3B, 0x5E, /* 58-5F */
- 0x2D, 0x2F, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 60-67 */
- 0x2E, 0x2E, 0x7C, 0x2E, 0x25, 0x5F, 0x3E, 0x3F, /* 68-6F */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x27, 0x2E, 0x2E, /* 70-77 */
- 0x2E, 0x60, 0x3A, 0x23, 0x40, 0x2C, 0x3D, 0x22, /* 78-7F */
- 0x2E, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, /* 80-87 */
- 0x68, 0x69, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 88-8F */
- 0x2E, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, /* 90-97 */
- 0x71, 0x72, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* 98-9F */
- 0x2E, 0x7E, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, /* A0-A7 */
- 0x79, 0x7A, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* A8-AF */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* B0-B7 */
- 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* B8-BF */
- 0x7B, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, /* C0-C7 */
- 0x48, 0x49, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* C8-CF */
- 0x7D, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50, /* D0-D7 */
- 0x51, 0x52, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* D8-DF */
- 0x5C, 0x2E, 0X53, 0x54, 0x55, 0x56, 0x57, 0x58, /* E0-E7 */
- 0x59, 0x5A, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, /* E8-EF */
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, /* F0-F7 */
- 0x38, 0x39, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E /* F8-FF */
- };
-
- /* convert a ASCII character to an EBCDIC character */
- char
- to_ebcdic (ch)
-
- int ch;
- {
- int cnt;
- char buf[NCOL], buf1[NCOL];
-
- for (cnt = 0; cnt < sizeof (ebcdic_table); cnt++)
- {
- if (ch == ebcdic_table[cnt])
- return (cnt);
- }
- sprintf (buf1, ERR_ebcdic, R_BYTE_FMT (curwp));
- sprintf (buf, buf1, ch);
- writ_echo (buf);
- return (0);
- }
-