| 1 | /*\r |
| 2 | * (C) Copyright 2002, Brian Knittel.\r |
| 3 | * You may freely use this program, but: it offered strictly on an AS-IS, AT YOUR OWN\r |
| 4 | * RISK basis, there is no warranty of fitness for any purpose, and the rest of the\r |
| 5 | * usual yada-yada. Please keep this notice and the copyright in any distributions\r |
| 6 | * or modifications.\r |
| 7 | *\r |
| 8 | * This is not a supported product, but I welcome bug reports and fixes.\r |
| 9 | * Mail to sim@ibm1130.org\r |
| 10 | */\r |
| 11 | \r |
| 12 | struct tag_codewheel {\r |
| 13 | unsigned char ascii;\r |
| 14 | unsigned char ebcdic;\r |
| 15 | };\r |
| 16 | \r |
| 17 | static struct tag_codewheel codewheel1132[] =\r |
| 18 | { /* characters and EBCDIC codes in printwheel order */\r |
| 19 | 'A', 0xC1,\r |
| 20 | 'B', 0xC2,\r |
| 21 | 'C', 0xC3,\r |
| 22 | 'D', 0xC4,\r |
| 23 | 'F', 0xC6,\r |
| 24 | 'H', 0xC8,\r |
| 25 | 'I', 0xC9,\r |
| 26 | 'S', 0xE2,\r |
| 27 | 'T', 0xE3,\r |
| 28 | 'U', 0xE4,\r |
| 29 | 'V', 0xE5,\r |
| 30 | '1', 0xF1,\r |
| 31 | '2', 0xF2,\r |
| 32 | '3', 0xF3,\r |
| 33 | '4', 0xF4,\r |
| 34 | '5', 0xF5,\r |
| 35 | '6', 0xF6,\r |
| 36 | '7', 0xF7,\r |
| 37 | '8', 0xF8,\r |
| 38 | '9', 0xF9,\r |
| 39 | '0', 0xF0,\r |
| 40 | '=', 0x7E,\r |
| 41 | '$', 0x5B,\r |
| 42 | '.', 0x4B,\r |
| 43 | '\'', 0x7D,\r |
| 44 | ',', 0x6B,\r |
| 45 | ')', 0x5D,\r |
| 46 | '-', 0x60,\r |
| 47 | '(', 0x4D,\r |
| 48 | '+', 0x4E,\r |
| 49 | '/', 0x61,\r |
| 50 | '*', 0x5C,\r |
| 51 | '&', 0x50,\r |
| 52 | 'J', 0xD1,\r |
| 53 | 'K', 0xD2,\r |
| 54 | 'L', 0xD3,\r |
| 55 | 'M', 0xD4,\r |
| 56 | 'N', 0xD5,\r |
| 57 | 'O', 0xD6,\r |
| 58 | 'P', 0xD7,\r |
| 59 | 'Q', 0xD8,\r |
| 60 | 'R', 0xD9,\r |
| 61 | 'E', 0xC5,\r |
| 62 | 'G', 0xC7,\r |
| 63 | 'W', 0xE6,\r |
| 64 | 'X', 0xE7,\r |
| 65 | 'Y', 0xE8,\r |
| 66 | 'Z', 0xE9,\r |
| 67 | };\r |
| 68 | \r |
| 69 | #define WHEELCHARS_1132 (sizeof(codewheel1132)/sizeof(codewheel1132[0]))\r |
| 70 | \r |
| 71 | static struct tag_codewheel codewheel1403[] =\r |
| 72 | {\r |
| 73 | 'A', 0x64,\r |
| 74 | 'B', 0x25,\r |
| 75 | 'C', 0x26,\r |
| 76 | 'D', 0x67,\r |
| 77 | 'E', 0x68,\r |
| 78 | 'F', 0x29,\r |
| 79 | 'G', 0x2A,\r |
| 80 | 'H', 0x6B,\r |
| 81 | 'I', 0x2C,\r |
| 82 | 'J', 0x58,\r |
| 83 | 'K', 0x19,\r |
| 84 | 'L', 0x1A,\r |
| 85 | 'M', 0x5B,\r |
| 86 | 'N', 0x1C,\r |
| 87 | 'O', 0x5D,\r |
| 88 | 'P', 0x5E,\r |
| 89 | 'Q', 0x1F,\r |
| 90 | 'R', 0x20,\r |
| 91 | 'S', 0x0D,\r |
| 92 | 'T', 0x0E,\r |
| 93 | 'U', 0x4F,\r |
| 94 | 'V', 0x10,\r |
| 95 | 'W', 0x51,\r |
| 96 | 'X', 0x52,\r |
| 97 | 'Y', 0x13,\r |
| 98 | 'Z', 0x54,\r |
| 99 | '0', 0x49,\r |
| 100 | '1', 0x40,\r |
| 101 | '2', 0x01,\r |
| 102 | '3', 0x02,\r |
| 103 | '4', 0x43,\r |
| 104 | '5', 0x04,\r |
| 105 | '6', 0x45,\r |
| 106 | '7', 0x46,\r |
| 107 | '8', 0x07,\r |
| 108 | '9', 0x08,\r |
| 109 | ' ', 0x7F,\r |
| 110 | '.', 0x6E,\r |
| 111 | '(', 0x57,\r |
| 112 | '+', 0x6D,\r |
| 113 | '&', 0x15,\r |
| 114 | '$', 0x62,\r |
| 115 | '*', 0x23,\r |
| 116 | ')', 0x2F,\r |
| 117 | '-', 0x61,\r |
| 118 | '/', 0x4C,\r |
| 119 | ',', 0x16,\r |
| 120 | '\'', 0x0B,\r |
| 121 | '=', 0x4A,\r |
| 122 | };\r |
| 123 | \r |
| 124 | #define WHEELCHARS_1403 (sizeof(codewheel1403)/sizeof(codewheel1403[0]))\r |
| 125 | \r |
| 126 | \r |