Satellite Observers Workbench. NOT yet complete, just published for forum posters to \"cherry pick\" pieces of code as requiered as an example.

Dependencies:   mbed

Committer:
AjK
Date:
Mon Oct 11 10:34:55 2010 +0000
Revision:
0:0a841b89d614
Totally Alpha quality as this project isn\t completed. Just publishing it as it answers many questions asked in the forums

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AjK 0:0a841b89d614 1
AjK 0:0a841b89d614 2
AjK 0:0a841b89d614 3 /* (SBCS code pages) */
AjK 0:0a841b89d614 4 /*------------------------------------------------------------------------*/
AjK 0:0a841b89d614 5 /* 437 U.S. (OEM)
AjK 0:0a841b89d614 6 / 720 Arabic (OEM)
AjK 0:0a841b89d614 7 / 1256 Arabic (Windows)
AjK 0:0a841b89d614 8 / 737 Greek (OEM)
AjK 0:0a841b89d614 9 / 1253 Greek (Windows)
AjK 0:0a841b89d614 10 / 1250 Central Europe (Windows)
AjK 0:0a841b89d614 11 / 775 Baltic (OEM)
AjK 0:0a841b89d614 12 / 1257 Baltic (Windows)
AjK 0:0a841b89d614 13 / 850 Multilingual Latin 1 (OEM)
AjK 0:0a841b89d614 14 / 852 Latin 2 (OEM)
AjK 0:0a841b89d614 15 / 1252 Latin 1 (Windows)
AjK 0:0a841b89d614 16 / 855 Cyrillic (OEM)
AjK 0:0a841b89d614 17 / 1251 Cyrillic (Windows) AjK Patched http://elm-chan.org/fsw/ff/patches.html
AjK 0:0a841b89d614 18 / 866 Russian (OEM)
AjK 0:0a841b89d614 19 / 857 Turkish (OEM)
AjK 0:0a841b89d614 20 / 1254 Turkish (Windows)
AjK 0:0a841b89d614 21 / 858 Multilingual Latin 1 + Euro (OEM)
AjK 0:0a841b89d614 22 / 862 Hebrew (OEM)
AjK 0:0a841b89d614 23 / 1255 Hebrew (Windows)
AjK 0:0a841b89d614 24 / 874 Thai (OEM, Windows)
AjK 0:0a841b89d614 25 / 1258 Vietnam (OEM, Windows)
AjK 0:0a841b89d614 26 */
AjK 0:0a841b89d614 27
AjK 0:0a841b89d614 28 #include "../ff.h"
AjK 0:0a841b89d614 29
AjK 0:0a841b89d614 30
AjK 0:0a841b89d614 31 #if _CODE_PAGE == 437
AjK 0:0a841b89d614 32 #define _TBLDEF 1
AjK 0:0a841b89d614 33 static
AjK 0:0a841b89d614 34 const WCHAR Tbl[] = { /* CP437(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 35 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x00E0, 0x00E5, 0x00E7,
AjK 0:0a841b89d614 36 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x00EC, 0x00C4, 0x00C5,
AjK 0:0a841b89d614 37 0x00C9, 0x00E6, 0x00C6, 0x00F4, 0x00F6, 0x00F2, 0x00FB, 0x00F9,
AjK 0:0a841b89d614 38 0x00FF, 0x00D6, 0x00DC, 0x00A2, 0x00A3, 0x00A5, 0x20A7, 0x0192,
AjK 0:0a841b89d614 39 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x00AA, 0x00BA,
AjK 0:0a841b89d614 40 0x00BF, 0x2310, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB,
AjK 0:0a841b89d614 41 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
AjK 0:0a841b89d614 42 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510,
AjK 0:0a841b89d614 43 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F,
AjK 0:0a841b89d614 44 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567,
AjK 0:0a841b89d614 45 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B,
AjK 0:0a841b89d614 46 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
AjK 0:0a841b89d614 47 0x03B1, 0x00DF, 0x0393, 0x03C0, 0x03A3, 0x03C3, 0x00B5, 0x03C4,
AjK 0:0a841b89d614 48 0x03A6, 0x0398, 0x03A9, 0x03B4, 0x221E, 0x03C6, 0x03B5, 0x2229,
AjK 0:0a841b89d614 49 0x2261, 0x00B1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00F7, 0x2248,
AjK 0:0a841b89d614 50 0x00B0, 0x2219, 0x00B7, 0x221A, 0x207F, 0x00B2, 0x25A0, 0x00A0
AjK 0:0a841b89d614 51 };
AjK 0:0a841b89d614 52
AjK 0:0a841b89d614 53 #elif _CODE_PAGE == 720
AjK 0:0a841b89d614 54 #define _TBLDEF 1
AjK 0:0a841b89d614 55 static
AjK 0:0a841b89d614 56 const WCHAR Tbl[] = { /* CP720(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 57 0x0000, 0x0000, 0x00E9, 0x00E2, 0x0000, 0x00E0, 0x0000, 0x00E7,
AjK 0:0a841b89d614 58 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x0000, 0x0000, 0x0000,
AjK 0:0a841b89d614 59 0x0000, 0x0651, 0x0652, 0x00F4, 0x00A4, 0x0640, 0x00FB, 0x00F9,
AjK 0:0a841b89d614 60 0x0621, 0x0622, 0x0623, 0x0624, 0x00A3, 0x0625, 0x0626, 0x0627,
AjK 0:0a841b89d614 61 0x0628, 0x0629, 0x062A, 0x062B, 0x062C, 0x062D, 0x062E, 0x062F,
AjK 0:0a841b89d614 62 0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x00AB, 0x00BB,
AjK 0:0a841b89d614 63 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
AjK 0:0a841b89d614 64 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510,
AjK 0:0a841b89d614 65 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F,
AjK 0:0a841b89d614 66 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567,
AjK 0:0a841b89d614 67 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B,
AjK 0:0a841b89d614 68 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
AjK 0:0a841b89d614 69 0x0636, 0x0637, 0x0638, 0x0639, 0x063A, 0x0641, 0x00B5, 0x0642,
AjK 0:0a841b89d614 70 0x0643, 0x0644, 0x0645, 0x0646, 0x0647, 0x0648, 0x0649, 0x064A,
AjK 0:0a841b89d614 71 0x2261, 0x064B, 0x064C, 0x064D, 0x064E, 0x064F, 0xO650, 0x2248,
AjK 0:0a841b89d614 72 0x00B0, 0x2219, 0x00B7, 0x221A, 0x207F, 0x00B2, 0x25A0, 0x00A0
AjK 0:0a841b89d614 73 };
AjK 0:0a841b89d614 74
AjK 0:0a841b89d614 75 #elif _CODE_PAGE == 737
AjK 0:0a841b89d614 76 #define _TBLDEF 1
AjK 0:0a841b89d614 77 static
AjK 0:0a841b89d614 78 const WCHAR Tbl[] = { /* CP737(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 79 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398,
AjK 0:0a841b89d614 80 0x0399, 0x039A, 0x039B, 0x039C, 0x039D, 0x039E, 0x039F, 0x03A0,
AjK 0:0a841b89d614 81 0x03A1, 0x03A3, 0x03A4, 0x03A5, 0x03A6, 0x03A7, 0x03A8, 0x03A9,
AjK 0:0a841b89d614 82 0x03B1, 0x03B2, 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7, 0x03B8,
AjK 0:0a841b89d614 83 0x03B9, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF, 0x03C0,
AjK 0:0a841b89d614 84 0x03C1, 0x03C3, 0x03C2, 0x03C4, 0x03C5, 0x03C6, 0x03C7, 0x03C8,
AjK 0:0a841b89d614 85 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
AjK 0:0a841b89d614 86 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510,
AjK 0:0a841b89d614 87 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F,
AjK 0:0a841b89d614 88 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567,
AjK 0:0a841b89d614 89 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B,
AjK 0:0a841b89d614 90 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
AjK 0:0a841b89d614 91 0x03C9, 0x03AC, 0x03AD, 0x03AE, 0x03CA, 0x03AF, 0x03CC, 0x03CD,
AjK 0:0a841b89d614 92 0x03CB, 0x03CE, 0x0386, 0x0388, 0x0389, 0x038A, 0x038C, 0x038E,
AjK 0:0a841b89d614 93 0x038F, 0x00B1, 0x2265, 0x2264, 0x03AA, 0x03AB, 0x00F7, 0x2248,
AjK 0:0a841b89d614 94 0x00B0, 0x2219, 0x00B7, 0x221A, 0x207F, 0x00B2, 0x25A0, 0x00A0
AjK 0:0a841b89d614 95 };
AjK 0:0a841b89d614 96
AjK 0:0a841b89d614 97 #elif _CODE_PAGE == 775
AjK 0:0a841b89d614 98 #define _TBLDEF 1
AjK 0:0a841b89d614 99 static
AjK 0:0a841b89d614 100 const WCHAR Tbl[] = { /* CP775(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 101 0x0106, 0x00FC, 0x00E9, 0x0101, 0x00E4, 0x0123, 0x00E5, 0x0107,
AjK 0:0a841b89d614 102 0x0142, 0x0113, 0x0156, 0x0157, 0x012B, 0x0179, 0x00C4, 0x00C5,
AjK 0:0a841b89d614 103 0x00C9, 0x00E6, 0x00C6, 0x014D, 0x00F6, 0x0122, 0x00A2, 0x015A,
AjK 0:0a841b89d614 104 0x015B, 0x00D6, 0x00DC, 0x00F8, 0x00A3, 0x00D8, 0x00D7, 0x00A4,
AjK 0:0a841b89d614 105 0x0100, 0x012A, 0x00F3, 0x017B, 0x017C, 0x017A, 0x201D, 0x00A6,
AjK 0:0a841b89d614 106 0x00A9, 0x00AE, 0x00AC, 0x00BD, 0x00BC, 0x0141, 0x00AB, 0x00BB,
AjK 0:0a841b89d614 107 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x0104, 0x010C, 0x0118,
AjK 0:0a841b89d614 108 0x0116, 0x2563, 0x2551, 0x2557, 0x255D, 0x012E, 0x0160, 0x2510,
AjK 0:0a841b89d614 109 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x0172, 0x016A,
AjK 0:0a841b89d614 110 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x017D,
AjK 0:0a841b89d614 111 0x0105, 0x010D, 0x0119, 0x0117, 0x012F, 0x0161, 0x0173, 0x016B,
AjK 0:0a841b89d614 112 0x017E, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
AjK 0:0a841b89d614 113 0x00D3, 0x00DF, 0x014C, 0x0143, 0x00F5, 0x00D5, 0x00B5, 0x0144,
AjK 0:0a841b89d614 114 0x0136, 0x0137, 0x013B, 0x013C, 0x0146, 0x0112, 0x0145, 0x2019,
AjK 0:0a841b89d614 115 0x00AD, 0x00B1, 0x201C, 0x00BE, 0x00B6, 0x00A7, 0x00F7, 0x201E,
AjK 0:0a841b89d614 116 0x00B0, 0x2219, 0x00B7, 0x00B9, 0x00B3, 0x00B2, 0x25A0, 0x00A0
AjK 0:0a841b89d614 117 };
AjK 0:0a841b89d614 118
AjK 0:0a841b89d614 119 #elif _CODE_PAGE == 850
AjK 0:0a841b89d614 120 #define _TBLDEF 1
AjK 0:0a841b89d614 121 static
AjK 0:0a841b89d614 122 const WCHAR Tbl[] = { /* CP850(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 123 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x00E0, 0x00E5, 0x00E7,
AjK 0:0a841b89d614 124 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x00EC, 0x00C4, 0x00C5,
AjK 0:0a841b89d614 125 0x00C9, 0x00E6, 0x00C6, 0x00F4, 0x00F6, 0x00F2, 0x00FB, 0x00F9,
AjK 0:0a841b89d614 126 0x00FF, 0x00D6, 0x00DC, 0x00F8, 0x00A3, 0x00D8, 0x00D7, 0x0192,
AjK 0:0a841b89d614 127 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x00AA, 0x00BA,
AjK 0:0a841b89d614 128 0x00BF, 0x00AE, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB,
AjK 0:0a841b89d614 129 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00C1, 0x00C2, 0x00C0,
AjK 0:0a841b89d614 130 0x00A9, 0x2563, 0x2551, 0x2557, 0x255D, 0x00A2, 0x00A5, 0x2510,
AjK 0:0a841b89d614 131 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x00E3, 0x00C3,
AjK 0:0a841b89d614 132 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x00A4,
AjK 0:0a841b89d614 133 0x00F0, 0x00D0, 0x00CA, 0x00CB, 0x00C8, 0x0131, 0x00CD, 0x00CE,
AjK 0:0a841b89d614 134 0x00CF, 0x2518, 0x250C, 0x2588, 0x2584, 0x00A6, 0x00CC, 0x2580,
AjK 0:0a841b89d614 135 0x00D3, 0x00DF, 0x00D4, 0x00D2, 0x00F5, 0x00D5, 0x00B5, 0x00FE,
AjK 0:0a841b89d614 136 0x00DE, 0x00DA, 0x00DB, 0x00D9, 0x00FD, 0x00DD, 0x00AF, 0x00B4,
AjK 0:0a841b89d614 137 0x00AD, 0x00B1, 0x2017, 0x00BE, 0x00B6, 0x00A7, 0x00F7, 0x00B8,
AjK 0:0a841b89d614 138 0x00B0, 0x00A8, 0x00B7, 0x00B9, 0x00B3, 0x00B2, 0x25A0, 0x00A0
AjK 0:0a841b89d614 139 };
AjK 0:0a841b89d614 140
AjK 0:0a841b89d614 141 #elif _CODE_PAGE == 852
AjK 0:0a841b89d614 142 #define _TBLDEF 1
AjK 0:0a841b89d614 143 static
AjK 0:0a841b89d614 144 const WCHAR Tbl[] = { /* CP852(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 145 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x016F, 0x0107, 0x00E7,
AjK 0:0a841b89d614 146 0x0142, 0x00EB, 0x0150, 0x0151, 0x00EE, 0x0179, 0x00C4, 0x0106,
AjK 0:0a841b89d614 147 0x00C9, 0x0139, 0x013A, 0x00F4, 0x00F6, 0x013D, 0x013E, 0x015A,
AjK 0:0a841b89d614 148 0x015B, 0x00D6, 0x00DC, 0x0164, 0x0165, 0x0141, 0x00D7, 0x010D,
AjK 0:0a841b89d614 149 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x0104, 0x0105, 0x017D, 0x017E,
AjK 0:0a841b89d614 150 0x0118, 0x0119, 0x00AC, 0x017A, 0x010C, 0x015F, 0x00AB, 0x00BB,
AjK 0:0a841b89d614 151 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00C1, 0x00C2, 0x011A,
AjK 0:0a841b89d614 152 0x015E, 0x2563, 0x2551, 0x2557, 0x255D, 0x017B, 0x017C, 0x2510,
AjK 0:0a841b89d614 153 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x0102, 0x0103,
AjK 0:0a841b89d614 154 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x00A4,
AjK 0:0a841b89d614 155 0x0111, 0x0110, 0x010E, 0x00CB, 0x010F, 0x0147, 0x00CD, 0x00CE,
AjK 0:0a841b89d614 156 0x011B, 0x2518, 0x250C, 0x2588, 0x2584, 0x0162, 0x016E, 0x2580,
AjK 0:0a841b89d614 157 0x00D3, 0x00DF, 0x00D4, 0x0143, 0x0144, 0x0148, 0x0160, 0x0161,
AjK 0:0a841b89d614 158 0x0154, 0x00DA, 0x0155, 0x0170, 0x00FD, 0x00DD, 0x0163, 0x00B4,
AjK 0:0a841b89d614 159 0x00AD, 0x02DD, 0x02DB, 0x02C7, 0x02D8, 0x00A7, 0x00F7, 0x00B8,
AjK 0:0a841b89d614 160 0x00B0, 0x00A8, 0x02D9, 0x0171, 0x0158, 0x0159, 0x25A0, 0x00A0
AjK 0:0a841b89d614 161 };
AjK 0:0a841b89d614 162
AjK 0:0a841b89d614 163 #elif _CODE_PAGE == 855
AjK 0:0a841b89d614 164 #define _TBLDEF 1
AjK 0:0a841b89d614 165 static
AjK 0:0a841b89d614 166 const WCHAR Tbl[] = { /* CP855(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 167 0x0452, 0x0402, 0x0453, 0x0403, 0x0451, 0x0401, 0x0454, 0x0404,
AjK 0:0a841b89d614 168 0x0455, 0x0405, 0x0456, 0x0406, 0x0457, 0x0407, 0x0458, 0x0408,
AjK 0:0a841b89d614 169 0x0459, 0x0409, 0x045A, 0x040A, 0x045B, 0x040B, 0x045C, 0x040C,
AjK 0:0a841b89d614 170 0x045E, 0x040E, 0x045F, 0x040F, 0x044E, 0x042E, 0x044A, 0x042A,
AjK 0:0a841b89d614 171 0x0430, 0x0410, 0x0431, 0x0411, 0x0446, 0x0426, 0x0434, 0x0414,
AjK 0:0a841b89d614 172 0x0435, 0x0415, 0x0444, 0x0424, 0x0433, 0x0413, 0x00AB, 0x00BB,
AjK 0:0a841b89d614 173 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x0445, 0x0425, 0x0438,
AjK 0:0a841b89d614 174 0x0418, 0x2563, 0x2551, 0x2557, 0x255D, 0x0439, 0x0419, 0x2510,
AjK 0:0a841b89d614 175 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x043A, 0x041A,
AjK 0:0a841b89d614 176 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x00A4,
AjK 0:0a841b89d614 177 0x043B, 0x041B, 0x043C, 0x041C, 0x043D, 0x041D, 0x043E, 0x041E,
AjK 0:0a841b89d614 178 0x043F, 0x2518, 0x250C, 0x2588, 0x2584, 0x041F, 0x044F, 0x2580,
AjK 0:0a841b89d614 179 0x042F, 0x0440, 0x0420, 0x0441, 0x0421, 0x0442, 0x0422, 0x0443,
AjK 0:0a841b89d614 180 0x0423, 0x0436, 0x0416, 0x0432, 0x0412, 0x044C, 0x042C, 0x2116,
AjK 0:0a841b89d614 181 0x00AD, 0x044B, 0x042B, 0x0437, 0x0417, 0x0448, 0x0428, 0x044D,
AjK 0:0a841b89d614 182 0x042D, 0x0449, 0x0429, 0x0447, 0x0427, 0x00A7, 0x25A0, 0x00A0
AjK 0:0a841b89d614 183 };
AjK 0:0a841b89d614 184
AjK 0:0a841b89d614 185 #elif _CODE_PAGE == 857
AjK 0:0a841b89d614 186 #define _TBLDEF 1
AjK 0:0a841b89d614 187 static
AjK 0:0a841b89d614 188 const WCHAR Tbl[] = { /* CP857(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 189 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x00E0, 0x00E5, 0x00E7,
AjK 0:0a841b89d614 190 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x0131, 0x00C4, 0x00C5,
AjK 0:0a841b89d614 191 0x00C9, 0x00E6, 0x00C6, 0x00F4, 0x00F6, 0x00F2, 0x00FB, 0x00F9,
AjK 0:0a841b89d614 192 0x0130, 0x00D6, 0x00DC, 0x00F8, 0x00A3, 0x00D8, 0x015E, 0x015F,
AjK 0:0a841b89d614 193 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x011E, 0x011F,
AjK 0:0a841b89d614 194 0x00BF, 0x00AE, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB,
AjK 0:0a841b89d614 195 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00C1, 0x00C2, 0x00C0,
AjK 0:0a841b89d614 196 0x00A9, 0x2563, 0x2551, 0x2557, 0x255D, 0x00A2, 0x00A5, 0x2510,
AjK 0:0a841b89d614 197 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x00E3, 0x00C3,
AjK 0:0a841b89d614 198 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x00A4,
AjK 0:0a841b89d614 199 0x00BA, 0x00AA, 0x00CA, 0x00CB, 0x00C8, 0x0000, 0x00CD, 0x00CE,
AjK 0:0a841b89d614 200 0x00CF, 0x2518, 0x250C, 0x2588, 0x2584, 0x00A6, 0x00CC, 0x2580,
AjK 0:0a841b89d614 201 0x00D3, 0x00DF, 0x00D4, 0x00D2, 0x00F5, 0x00D5, 0x00B5, 0x0000,
AjK 0:0a841b89d614 202 0x00D7, 0x00DA, 0x00DB, 0x00D9, 0x00EC, 0x00FF, 0x00AF, 0x00B4,
AjK 0:0a841b89d614 203 0x00AD, 0x00B1, 0x0000, 0x00BE, 0x00B6, 0x00A7, 0x00F7, 0x00B8,
AjK 0:0a841b89d614 204 0x00B0, 0x00A8, 0x00B7, 0x00B9, 0x00B3, 0x00B2, 0x25A0, 0x00A0
AjK 0:0a841b89d614 205 };
AjK 0:0a841b89d614 206
AjK 0:0a841b89d614 207 #elif _CODE_PAGE == 858
AjK 0:0a841b89d614 208 #define _TBLDEF 1
AjK 0:0a841b89d614 209 static
AjK 0:0a841b89d614 210 const WCHAR Tbl[] = { /* CP858(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 211 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x00E0, 0x00E5, 0x00E7,
AjK 0:0a841b89d614 212 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x00EC, 0x00C4, 0x00C5,
AjK 0:0a841b89d614 213 0x00C9, 0x00E6, 0x00C6, 0x00F4, 0x00F6, 0x00F2, 0x00FB, 0x00F9,
AjK 0:0a841b89d614 214 0x00FF, 0x00D6, 0x00DC, 0x00F8, 0x00A3, 0x00D8, 0x00D7, 0x0192,
AjK 0:0a841b89d614 215 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x00AA, 0x00BA,
AjK 0:0a841b89d614 216 0x00BF, 0x00AE, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB,
AjK 0:0a841b89d614 217 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00C1, 0x00C2, 0x00C0,
AjK 0:0a841b89d614 218 0x00A9, 0x2563, 0x2551, 0x2557, 0x2550, 0x00A2, 0x00A5, 0x2510,
AjK 0:0a841b89d614 219 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x00E3, 0x00C3,
AjK 0:0a841b89d614 220 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x00A4,
AjK 0:0a841b89d614 221 0x00F0, 0x00D0, 0x00CA, 0x00CB, 0x00C8, 0x20AC, 0x00CD, 0x00CE,
AjK 0:0a841b89d614 222 0x00CF, 0x2518, 0x250C, 0x2588, 0x2584, 0x00C6, 0x00CC, 0x2580,
AjK 0:0a841b89d614 223 0x00D3, 0x00DF, 0x00D4, 0x00D2, 0x00F5, 0x00D5, 0x00B5, 0x00FE,
AjK 0:0a841b89d614 224 0x00DE, 0x00DA, 0x00DB, 0x00D9, 0x00FD, 0x00DD, 0x00AF, 0x00B4,
AjK 0:0a841b89d614 225 0x00AD, 0x00B1, 0x2017, 0x00BE, 0x00B6, 0x00A7, 0x00F7, 0x00B8,
AjK 0:0a841b89d614 226 0x00B0, 0x00A8, 0x00B7, 0x00B9, 0x00B3, 0x00B2, 0x25A0, 0x00A0
AjK 0:0a841b89d614 227 };
AjK 0:0a841b89d614 228
AjK 0:0a841b89d614 229 #elif _CODE_PAGE == 862
AjK 0:0a841b89d614 230 #define _TBLDEF 1
AjK 0:0a841b89d614 231 static
AjK 0:0a841b89d614 232 const WCHAR Tbl[] = { /* CP862(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 233 0x05D0, 0x05D1, 0x05D2, 0x05D3, 0x05D4, 0x05D5, 0x05D6, 0x05D7,
AjK 0:0a841b89d614 234 0x05D8, 0x05D9, 0x05DA, 0x05DB, 0x05DC, 0x05DD, 0x05DE, 0x05DF,
AjK 0:0a841b89d614 235 0x05E0, 0x05E1, 0x05E2, 0x05E3, 0x05E4, 0x05E5, 0x05E6, 0x05E7,
AjK 0:0a841b89d614 236 0x05E8, 0x05E9, 0x05EA, 0x00A2, 0x00A3, 0x00A5, 0x20A7, 0x0192,
AjK 0:0a841b89d614 237 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x00AA, 0x00BA,
AjK 0:0a841b89d614 238 0x00BF, 0x2310, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB,
AjK 0:0a841b89d614 239 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
AjK 0:0a841b89d614 240 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510,
AjK 0:0a841b89d614 241 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F,
AjK 0:0a841b89d614 242 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567,
AjK 0:0a841b89d614 243 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B,
AjK 0:0a841b89d614 244 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
AjK 0:0a841b89d614 245 0x03B1, 0x00DF, 0x0393, 0x03C0, 0x03A3, 0x03C3, 0x00B5, 0x03C4,
AjK 0:0a841b89d614 246 0x03A6, 0x0398, 0x03A9, 0x03B4, 0x221E, 0x03C6, 0x03B5, 0x2229,
AjK 0:0a841b89d614 247 0x2261, 0x00B1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00F7, 0x2248,
AjK 0:0a841b89d614 248 0x00B0, 0x2219, 0x00B7, 0x221A, 0x207F, 0x00B2, 0x25A0, 0x00A0
AjK 0:0a841b89d614 249 };
AjK 0:0a841b89d614 250
AjK 0:0a841b89d614 251 #elif _CODE_PAGE == 866
AjK 0:0a841b89d614 252 #define _TBLDEF 1
AjK 0:0a841b89d614 253 static
AjK 0:0a841b89d614 254 const WCHAR Tbl[] = { /* CP866(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 255 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
AjK 0:0a841b89d614 256 0x0418, 0x0419, 0x041A, 0x041B, 0x041C, 0x041D, 0x041E, 0x041F,
AjK 0:0a841b89d614 257 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
AjK 0:0a841b89d614 258 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, 0x042E, 0x042F,
AjK 0:0a841b89d614 259 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
AjK 0:0a841b89d614 260 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, 0x043E, 0x043F,
AjK 0:0a841b89d614 261 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
AjK 0:0a841b89d614 262 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510,
AjK 0:0a841b89d614 263 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F,
AjK 0:0a841b89d614 264 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567,
AjK 0:0a841b89d614 265 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B,
AjK 0:0a841b89d614 266 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
AjK 0:0a841b89d614 267 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
AjK 0:0a841b89d614 268 0x0448, 0x0449, 0x044A, 0x044B, 0x044C, 0x044D, 0x044E, 0x044F,
AjK 0:0a841b89d614 269 0x0401, 0x0451, 0x0404, 0x0454, 0x0407, 0x0457, 0x040E, 0x045E,
AjK 0:0a841b89d614 270 0x00B0, 0x2219, 0x00B7, 0x221A, 0x2116, 0x00A4, 0x25A0, 0x00A0
AjK 0:0a841b89d614 271 };
AjK 0:0a841b89d614 272
AjK 0:0a841b89d614 273 #elif _CODE_PAGE == 874
AjK 0:0a841b89d614 274 #define _TBLDEF 1
AjK 0:0a841b89d614 275 static
AjK 0:0a841b89d614 276 const WCHAR Tbl[] = { /* CP874(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 277 0x20AC, 0x0000, 0x0000, 0x0000, 0x0000, 0x2026, 0x0000, 0x0000,
AjK 0:0a841b89d614 278 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
AjK 0:0a841b89d614 279 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
AjK 0:0a841b89d614 280 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
AjK 0:0a841b89d614 281 0x00A0, 0x0E01, 0x0E02, 0x0E03, 0x0E04, 0x0E05, 0x0E06, 0x0E07,
AjK 0:0a841b89d614 282 0x0E08, 0x0E09, 0x0E0A, 0x0E0B, 0x0E0C, 0x0E0D, 0x0E0E, 0x0E0F,
AjK 0:0a841b89d614 283 0x0E10, 0x0E11, 0x0E12, 0x0E13, 0x0E14, 0x0E15, 0x0E16, 0x0E17,
AjK 0:0a841b89d614 284 0x0E18, 0x0E19, 0x0E1A, 0x0E1B, 0x0E1C, 0x0E1D, 0x0E1E, 0x0E1F,
AjK 0:0a841b89d614 285 0x0E20, 0x0E21, 0x0E22, 0x0E23, 0x0E24, 0x0E25, 0x0E26, 0x0E27,
AjK 0:0a841b89d614 286 0x0E28, 0x0E29, 0x0E2A, 0x0E2B, 0x0E2C, 0x0E2D, 0x0E2E, 0x0E2F,
AjK 0:0a841b89d614 287 0x0E30, 0x0E31, 0x0E32, 0x0E33, 0x0E34, 0x0E35, 0x0E36, 0x0E37,
AjK 0:0a841b89d614 288 0x0E38, 0x0E39, 0x0E3A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0E3F,
AjK 0:0a841b89d614 289 0x0E40, 0x0E41, 0x0E42, 0x0E43, 0x0E44, 0x0E45, 0x0E46, 0x0E47,
AjK 0:0a841b89d614 290 0x0E48, 0x0E49, 0x0E4A, 0x0E4B, 0x0E4C, 0x0E4D, 0x0E4E, 0x0E4F,
AjK 0:0a841b89d614 291 0x0E50, 0x0E51, 0x0E52, 0x0E53, 0x0E54, 0x0E55, 0x0E56, 0x0E57,
AjK 0:0a841b89d614 292 0x0E58, 0x0E59, 0x0E5A, 0x0E5B, 0x0000, 0x0000, 0x0000, 0x0000
AjK 0:0a841b89d614 293 };
AjK 0:0a841b89d614 294
AjK 0:0a841b89d614 295 #elif _CODE_PAGE == 1250
AjK 0:0a841b89d614 296 #define _TBLDEF 1
AjK 0:0a841b89d614 297 static
AjK 0:0a841b89d614 298 const WCHAR Tbl[] = { /* CP1250(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 299 0x20AC, 0x0000, 0x201A, 0x0000, 0x201E, 0x2026, 0x2020, 0x2021,
AjK 0:0a841b89d614 300 0x0000, 0x2030, 0x0160, 0x2039, 0x015A, 0x0164, 0x017D, 0x0179,
AjK 0:0a841b89d614 301 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
AjK 0:0a841b89d614 302 0x0000, 0x2122, 0x0161, 0x203A, 0x015B, 0x0165, 0x017E, 0x017A,
AjK 0:0a841b89d614 303 0x00A0, 0x02C7, 0x02D8, 0x0141, 0x00A4, 0x0104, 0x00A6, 0x00A7,
AjK 0:0a841b89d614 304 0x00A8, 0x00A9, 0x015E, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x017B,
AjK 0:0a841b89d614 305 0x00B0, 0x00B1, 0x02DB, 0x0142, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
AjK 0:0a841b89d614 306 0x00B8, 0x0105, 0x015F, 0x00BB, 0x013D, 0x02DD, 0x013E, 0x017C,
AjK 0:0a841b89d614 307 0x0154, 0x00C1, 0x00C2, 0x0102, 0x00C4, 0x0139, 0x0106, 0x00C7,
AjK 0:0a841b89d614 308 0x010C, 0x00C9, 0x0118, 0x00CB, 0x011A, 0x00CD, 0x00CE, 0x010E,
AjK 0:0a841b89d614 309 0x0110, 0x0143, 0x0147, 0x00D3, 0x00D4, 0x0150, 0x00D6, 0x00D7,
AjK 0:0a841b89d614 310 0x0158, 0x016E, 0x00DA, 0x0170, 0x00DC, 0x00DD, 0x0162, 0x00DF,
AjK 0:0a841b89d614 311 0x0155, 0x00E1, 0x00E2, 0x0103, 0x00E4, 0x013A, 0x0107, 0x00E7,
AjK 0:0a841b89d614 312 0x010D, 0x00E9, 0x0119, 0x00EB, 0x011B, 0x00ED, 0x00EE, 0x010F,
AjK 0:0a841b89d614 313 0x0111, 0x0144, 0x0148, 0x00F3, 0x00F4, 0x0151, 0x00F6, 0x00F7,
AjK 0:0a841b89d614 314 0x0159, 0x016F, 0x00FA, 0x0171, 0x00FC, 0x00FD, 0x0163, 0x02D9
AjK 0:0a841b89d614 315 };
AjK 0:0a841b89d614 316
AjK 0:0a841b89d614 317 #elif _CODE_PAGE == 1251
AjK 0:0a841b89d614 318 #define _TBLDEF 1
AjK 0:0a841b89d614 319 static
AjK 0:0a841b89d614 320 const WCHAR Tbl[] = { /* CP1251(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 321 0x0402, 0x0403, 0x201A, 0x0453, 0x201E, 0x2026, 0x2020, 0x2021,
AjK 0:0a841b89d614 322 0x20AC, 0x2030, 0x0409, 0x2039, 0x040A, 0x040C, 0x040B, 0x040F,
AjK 0:0a841b89d614 323 0x0452, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
AjK 0:0a841b89d614 324 0x0000, 0x2111, 0x0459, 0x203A, 0x045A, 0x045C, 0x045B, 0x045F,
AjK 0:0a841b89d614 325 0x00A0, 0x040E, 0x045E, 0x0408, 0x00A4, 0x0490, 0x00A6, 0x00A7,
AjK 0:0a841b89d614 326 0x0401, 0x00A9, 0x0404, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x0407,
AjK 0:0a841b89d614 327 0x00B0, 0x00B1, 0x0406, 0x0456, 0x0491, 0x00B5, 0x00B6, 0x00B7,
AjK 0:0a841b89d614 328 0x0451, 0x2116, 0x0454, 0x00BB, 0x0458, 0x0405, 0x0455, 0x0457,
AjK 0:0a841b89d614 329 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
AjK 0:0a841b89d614 330 0x0418, 0x0419, 0x041A, 0x041B, 0x041C, 0x041D, 0x041E, 0x041F,
AjK 0:0a841b89d614 331 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
AjK 0:0a841b89d614 332 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, 0x042E, 0x042F,
AjK 0:0a841b89d614 333 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
AjK 0:0a841b89d614 334 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, 0x043E, 0x043F,
AjK 0:0a841b89d614 335 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
AjK 0:0a841b89d614 336 0x0448, 0x0449, 0x044A, 0x044B, 0x044C, 0x044D, 0x044E, 0x044F
AjK 0:0a841b89d614 337 };
AjK 0:0a841b89d614 338
AjK 0:0a841b89d614 339 #elif _CODE_PAGE == 1252
AjK 0:0a841b89d614 340 #define _TBLDEF 1
AjK 0:0a841b89d614 341 static
AjK 0:0a841b89d614 342 const WCHAR Tbl[] = { /* CP1252(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 343 0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
AjK 0:0a841b89d614 344 0x02C6, 0x2030, 0x0160, 0x2039, 0x0152, 0x0000, 0x017D, 0x0000,
AjK 0:0a841b89d614 345 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
AjK 0:0a841b89d614 346 0x02DC, 0x2122, 0x0161, 0x203A, 0x0153, 0x0000, 0x017E, 0x0178,
AjK 0:0a841b89d614 347 0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
AjK 0:0a841b89d614 348 0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
AjK 0:0a841b89d614 349 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
AjK 0:0a841b89d614 350 0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,
AjK 0:0a841b89d614 351 0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,
AjK 0:0a841b89d614 352 0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,
AjK 0:0a841b89d614 353 0x00D0, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7,
AjK 0:0a841b89d614 354 0x00D8, 0x00D9, 0x00DA, 0x00BD, 0x00DC, 0x00DD, 0x00DE, 0x00DF,
AjK 0:0a841b89d614 355 0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,
AjK 0:0a841b89d614 356 0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,
AjK 0:0a841b89d614 357 0x00F0, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x00F7,
AjK 0:0a841b89d614 358 0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x00FD, 0x00FE, 0x00FF
AjK 0:0a841b89d614 359 };
AjK 0:0a841b89d614 360
AjK 0:0a841b89d614 361 #elif _CODE_PAGE == 1253
AjK 0:0a841b89d614 362 #define _TBLDEF 1
AjK 0:0a841b89d614 363 static
AjK 0:0a841b89d614 364 const WCHAR Tbl[] = { /* CP1253(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 365 0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
AjK 0:0a841b89d614 366 0x0000, 0x2030, 0x0000, 0x2039, 0x000C, 0x0000, 0x0000, 0x0000,
AjK 0:0a841b89d614 367 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
AjK 0:0a841b89d614 368 0x0000, 0x2122, 0x0000, 0x203A, 0x0000, 0x0000, 0x0000, 0x0000,
AjK 0:0a841b89d614 369 0x00A0, 0x0385, 0x0386, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
AjK 0:0a841b89d614 370 0x00A8, 0x00A9, 0x0000, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x2015,
AjK 0:0a841b89d614 371 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x0384, 0x00B5, 0x00B6, 0x00B7,
AjK 0:0a841b89d614 372 0x0388, 0x0389, 0x038A, 0x00BB, 0x038C, 0x00BD, 0x038E, 0x038F,
AjK 0:0a841b89d614 373 0x0390, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,
AjK 0:0a841b89d614 374 0x0398, 0x0399, 0x039A, 0x039B, 0x039C, 0x039D, 0x039E, 0x039F,
AjK 0:0a841b89d614 375 0x03A0, 0x03A1, 0x0000, 0x03A3, 0x03A4, 0x03A5, 0x03A6, 0x03A7,
AjK 0:0a841b89d614 376 0x03A8, 0x03A9, 0x03AA, 0x03AD, 0x03AC, 0x03AD, 0x03AE, 0x03AF,
AjK 0:0a841b89d614 377 0x03B0, 0x03B1, 0x03B2, 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7,
AjK 0:0a841b89d614 378 0x03B8, 0x03B9, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF,
AjK 0:0a841b89d614 379 0x03C0, 0x03C1, 0x03C2, 0x03C3, 0x03C4, 0x03C5, 0x03C6, 0x03C7,
AjK 0:0a841b89d614 380 0x03C8, 0x03C9, 0x03CA, 0x03CB, 0x03CC, 0x03CD, 0x03CE, 0x0000
AjK 0:0a841b89d614 381 };
AjK 0:0a841b89d614 382
AjK 0:0a841b89d614 383 #elif _CODE_PAGE == 1254
AjK 0:0a841b89d614 384 #define _TBLDEF 1
AjK 0:0a841b89d614 385 static
AjK 0:0a841b89d614 386 const WCHAR Tbl[] = { /* CP1254(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 387 0x20AC, 0x0000, 0x210A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
AjK 0:0a841b89d614 388 0x02C6, 0x2030, 0x0160, 0x2039, 0x0152, 0x0000, 0x0000, 0x0000,
AjK 0:0a841b89d614 389 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
AjK 0:0a841b89d614 390 0x02DC, 0x2122, 0x0161, 0x203A, 0x0153, 0x0000, 0x0000, 0x0178,
AjK 0:0a841b89d614 391 0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
AjK 0:0a841b89d614 392 0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
AjK 0:0a841b89d614 393 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
AjK 0:0a841b89d614 394 0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,
AjK 0:0a841b89d614 395 0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,
AjK 0:0a841b89d614 396 0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,
AjK 0:0a841b89d614 397 0x011E, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7,
AjK 0:0a841b89d614 398 0x00D8, 0x00D9, 0x00DA, 0x00BD, 0x00DC, 0x0130, 0x015E, 0x00DF,
AjK 0:0a841b89d614 399 0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,
AjK 0:0a841b89d614 400 0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,
AjK 0:0a841b89d614 401 0x011F, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x00F7,
AjK 0:0a841b89d614 402 0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x0131, 0x015F, 0x00FF
AjK 0:0a841b89d614 403 };
AjK 0:0a841b89d614 404
AjK 0:0a841b89d614 405 #elif _CODE_PAGE == 1255
AjK 0:0a841b89d614 406 #define _TBLDEF 1
AjK 0:0a841b89d614 407 static
AjK 0:0a841b89d614 408 const WCHAR Tbl[] = { /* CP1255(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 409 0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
AjK 0:0a841b89d614 410 0x02C6, 0x2030, 0x0000, 0x2039, 0x0000, 0x0000, 0x0000, 0x0000,
AjK 0:0a841b89d614 411 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
AjK 0:0a841b89d614 412 0x02DC, 0x2122, 0x0000, 0x203A, 0x0000, 0x0000, 0x0000, 0x0000,
AjK 0:0a841b89d614 413 0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
AjK 0:0a841b89d614 414 0x00A8, 0x00A9, 0x00D7, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
AjK 0:0a841b89d614 415 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
AjK 0:0a841b89d614 416 0x00B8, 0x00B9, 0x00F7, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,
AjK 0:0a841b89d614 417 0x05B0, 0x05B1, 0x05B2, 0x05B3, 0x05B4, 0x05B5, 0x05B6, 0x05B7,
AjK 0:0a841b89d614 418 0x05B8, 0x05B9, 0x0000, 0x05BB, 0x05BC, 0x05BD, 0x05BE, 0x05BF,
AjK 0:0a841b89d614 419 0x05C0, 0x05C1, 0x05C2, 0x05C3, 0x05F0, 0x05F1, 0x05F2, 0x05F3,
AjK 0:0a841b89d614 420 0x05F4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
AjK 0:0a841b89d614 421 0x05D0, 0x05D1, 0x05D2, 0x05D3, 0x05D4, 0x05D5, 0x05D6, 0x05D7,
AjK 0:0a841b89d614 422 0x05D8, 0x05D9, 0x05DA, 0x05DB, 0x05DC, 0x05DD, 0x05DE, 0x05DF,
AjK 0:0a841b89d614 423 0x05E0, 0x05E1, 0x05E2, 0x05E3, 0x05E4, 0x05E5, 0x05E6, 0x05E7,
AjK 0:0a841b89d614 424 0x05E8, 0x05E9, 0x05EA, 0x0000, 0x0000, 0x200E, 0x200F, 0x0000
AjK 0:0a841b89d614 425 };
AjK 0:0a841b89d614 426
AjK 0:0a841b89d614 427 #elif _CODE_PAGE == 1256
AjK 0:0a841b89d614 428 #define _TBLDEF 1
AjK 0:0a841b89d614 429 static
AjK 0:0a841b89d614 430 const WCHAR Tbl[] = { /* CP1256(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 431 0x20AC, 0x067E, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
AjK 0:0a841b89d614 432 0x02C6, 0x2030, 0x0679, 0x2039, 0x0152, 0x0686, 0x0698, 0x0688,
AjK 0:0a841b89d614 433 0x06AF, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
AjK 0:0a841b89d614 434 0x06A9, 0x2122, 0x0691, 0x203A, 0x0153, 0x200C, 0x200D, 0x06BA,
AjK 0:0a841b89d614 435 0x00A0, 0x060C, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
AjK 0:0a841b89d614 436 0x00A8, 0x00A9, 0x06BE, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
AjK 0:0a841b89d614 437 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
AjK 0:0a841b89d614 438 0x00B8, 0x00B9, 0x061B, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x061F,
AjK 0:0a841b89d614 439 0x06C1, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
AjK 0:0a841b89d614 440 0x0628, 0x0629, 0x062A, 0x062B, 0x062C, 0x062D, 0x062E, 0x062F,
AjK 0:0a841b89d614 441 0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x00D7,
AjK 0:0a841b89d614 442 0x0637, 0x0638, 0x0639, 0x063A, 0x0640, 0x0640, 0x0642, 0x0643,
AjK 0:0a841b89d614 443 0x00E0, 0x0644, 0x00E2, 0x0645, 0x0646, 0x0647, 0x0648, 0x00E7,
AjK 0:0a841b89d614 444 0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x0649, 0x064A, 0x00EE, 0x00EF,
AjK 0:0a841b89d614 445 0x064B, 0x064C, 0x064D, 0x064E, 0x00F4, 0x064F, 0x0650, 0x00F7,
AjK 0:0a841b89d614 446 0x0651, 0x00F9, 0x0652, 0x00FB, 0x00FC, 0x200E, 0x200F, 0x06D2
AjK 0:0a841b89d614 447 }
AjK 0:0a841b89d614 448
AjK 0:0a841b89d614 449 #elif _CODE_PAGE == 1257
AjK 0:0a841b89d614 450 #define _TBLDEF 1
AjK 0:0a841b89d614 451 static
AjK 0:0a841b89d614 452 const WCHAR Tbl[] = { /* CP1257(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 453 0x20AC, 0x0000, 0x201A, 0x0000, 0x201E, 0x2026, 0x2020, 0x2021,
AjK 0:0a841b89d614 454 0x0000, 0x2030, 0x0000, 0x2039, 0x0000, 0x00A8, 0x02C7, 0x00B8,
AjK 0:0a841b89d614 455 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
AjK 0:0a841b89d614 456 0x0000, 0x2122, 0x0000, 0x203A, 0x0000, 0x00AF, 0x02DB, 0x0000,
AjK 0:0a841b89d614 457 0x00A0, 0x0000, 0x00A2, 0x00A3, 0x00A4, 0x0000, 0x00A6, 0x00A7,
AjK 0:0a841b89d614 458 0x00D8, 0x00A9, 0x0156, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
AjK 0:0a841b89d614 459 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
AjK 0:0a841b89d614 460 0x00B8, 0x00B9, 0x0157, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00E6,
AjK 0:0a841b89d614 461 0x0104, 0x012E, 0x0100, 0x0106, 0x00C4, 0x00C5, 0x0118, 0x0112,
AjK 0:0a841b89d614 462 0x010C, 0x00C9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012A, 0x013B,
AjK 0:0a841b89d614 463 0x0160, 0x0143, 0x0145, 0x00D3, 0x014C, 0x00D5, 0x00D6, 0x00D7,
AjK 0:0a841b89d614 464 0x0172, 0x0141, 0x015A, 0x016A, 0x00DC, 0x017B, 0x017D, 0x00DF,
AjK 0:0a841b89d614 465 0x0105, 0x012F, 0x0101, 0x0107, 0x00E4, 0x00E5, 0x0119, 0x0113,
AjK 0:0a841b89d614 466 0x010D, 0x00E9, 0x017A, 0x0117, 0x0123, 0x0137, 0x012B, 0x013C,
AjK 0:0a841b89d614 467 0x0161, 0x0144, 0x0146, 0x00F3, 0x014D, 0x00F5, 0x00F6, 0x00F7,
AjK 0:0a841b89d614 468 0x0173, 0x014E, 0x015B, 0x016B, 0x00FC, 0x017C, 0x017E, 0x02D9
AjK 0:0a841b89d614 469 };
AjK 0:0a841b89d614 470
AjK 0:0a841b89d614 471 #elif _CODE_PAGE == 1258
AjK 0:0a841b89d614 472 #define _TBLDEF 1
AjK 0:0a841b89d614 473 static
AjK 0:0a841b89d614 474 const WCHAR Tbl[] = { /* CP1258(0x80-0xFF) to Unicode conversion table */
AjK 0:0a841b89d614 475 0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
AjK 0:0a841b89d614 476 0x02C6, 0x2030, 0x0000, 0x2039, 0x0152, 0x0000, 0x0000, 0x0000,
AjK 0:0a841b89d614 477 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
AjK 0:0a841b89d614 478 0x02DC, 0x2122, 0x0000, 0x203A, 0x0153, 0x0000, 0x0000, 0x0178,
AjK 0:0a841b89d614 479 0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
AjK 0:0a841b89d614 480 0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
AjK 0:0a841b89d614 481 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
AjK 0:0a841b89d614 482 0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,
AjK 0:0a841b89d614 483 0x00C0, 0x00C1, 0x00C2, 0x0102, 0x00C4, 0x00C5, 0x00C6, 0x00C7,
AjK 0:0a841b89d614 484 0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x0300, 0x00CD, 0x00CE, 0x00CF,
AjK 0:0a841b89d614 485 0x0110, 0x00D1, 0x0309, 0x00D3, 0x00D4, 0x01A0, 0x00D6, 0x00D7,
AjK 0:0a841b89d614 486 0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x01AF, 0x0303, 0x00DF,
AjK 0:0a841b89d614 487 0x00E0, 0x00E1, 0x00E2, 0x0103, 0x00E4, 0x00E5, 0x00E6, 0x00E7,
AjK 0:0a841b89d614 488 0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x0301, 0x00ED, 0x00EE, 0x00EF,
AjK 0:0a841b89d614 489 0x0111, 0x00F1, 0x0323, 0x00F3, 0x00F4, 0x01A1, 0x00F6, 0x00F7,
AjK 0:0a841b89d614 490 0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x01B0, 0x20AB, 0x00FF
AjK 0:0a841b89d614 491 };
AjK 0:0a841b89d614 492
AjK 0:0a841b89d614 493 #endif
AjK 0:0a841b89d614 494
AjK 0:0a841b89d614 495
AjK 0:0a841b89d614 496 #if !_TBLDEF || !_USE_LFN
AjK 0:0a841b89d614 497 #error This file is not needed in current configuration
AjK 0:0a841b89d614 498 #endif
AjK 0:0a841b89d614 499
AjK 0:0a841b89d614 500
AjK 0:0a841b89d614 501 WCHAR ff_convert ( /* Converted character, Returns zero on error */
AjK 0:0a841b89d614 502 WCHAR src, /* Character code to be converted */
AjK 0:0a841b89d614 503 UINT dir /* 0: Unicode to OEMCP, 1: OEMCP to Unicode */
AjK 0:0a841b89d614 504 )
AjK 0:0a841b89d614 505 {
AjK 0:0a841b89d614 506 WCHAR c;
AjK 0:0a841b89d614 507
AjK 0:0a841b89d614 508
AjK 0:0a841b89d614 509 if (src < 0x80) { /* ASCII */
AjK 0:0a841b89d614 510 c = src;
AjK 0:0a841b89d614 511
AjK 0:0a841b89d614 512 } else {
AjK 0:0a841b89d614 513 if (dir) { /* OEMCP to Unicode */
AjK 0:0a841b89d614 514 c = (src >= 0x100) ? 0 : Tbl[src - 0x80];
AjK 0:0a841b89d614 515
AjK 0:0a841b89d614 516 } else { /* Unicode to OEMCP */
AjK 0:0a841b89d614 517 for (c = 0; c < 0x80; c++) {
AjK 0:0a841b89d614 518 if (src == Tbl[c]) break;
AjK 0:0a841b89d614 519 }
AjK 0:0a841b89d614 520 c = (c + 0x80) & 0xFF;
AjK 0:0a841b89d614 521 }
AjK 0:0a841b89d614 522 }
AjK 0:0a841b89d614 523
AjK 0:0a841b89d614 524 return c;
AjK 0:0a841b89d614 525 }
AjK 0:0a841b89d614 526
AjK 0:0a841b89d614 527
AjK 0:0a841b89d614 528 WCHAR ff_wtoupper ( /* Upper converted character */
AjK 0:0a841b89d614 529 WCHAR chr /* Input character */
AjK 0:0a841b89d614 530 )
AjK 0:0a841b89d614 531 {
AjK 0:0a841b89d614 532 static const WCHAR tbl_lower[] = { 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, 0xA1, 0x00A2, 0x00A3, 0x00A5, 0x00AC, 0x00AF, 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0x0FF, 0x101, 0x103, 0x105, 0x107, 0x109, 0x10B, 0x10D, 0x10F, 0x111, 0x113, 0x115, 0x117, 0x119, 0x11B, 0x11D, 0x11F, 0x121, 0x123, 0x125, 0x127, 0x129, 0x12B, 0x12D, 0x12F, 0x131, 0x133, 0x135, 0x137, 0x13A, 0x13C, 0x13E, 0x140, 0x142, 0x144, 0x146, 0x148, 0x14B, 0x14D, 0x14F, 0x151, 0x153, 0x155, 0x157, 0x159, 0x15B, 0x15D, 0x15F, 0x161, 0x163, 0x165, 0x167, 0x169, 0x16B, 0x16D, 0x16F, 0x171, 0x173, 0x175, 0x177, 0x17A, 0x17C, 0x17E, 0x192, 0x3B1, 0x3B2, 0x3B3, 0x3B4, 0x3B5, 0x3B6, 0x3B7, 0x3B8, 0x3B9, 0x3BA, 0x3BB, 0x3BC, 0x3BD, 0x3BE, 0x3BF, 0x3C0, 0x3C1, 0x3C3, 0x3C4, 0x3C5, 0x3C6, 0x3C7, 0x3C8, 0x3C9, 0x3CA, 0x430, 0x431, 0x432, 0x433, 0x434, 0x435, 0x436, 0x437, 0x438, 0x439, 0x43A, 0x43B, 0x43C, 0x43D, 0x43E, 0x43F, 0x440, 0x441, 0x442, 0x443, 0x444, 0x445, 0x446, 0x447, 0x448, 0x449, 0x44A, 0x44B, 0x44C, 0x44D, 0x44E, 0x44F, 0x451, 0x452, 0x453, 0x454, 0x455, 0x456, 0x457, 0x458, 0x459, 0x45A, 0x45B, 0x45C, 0x45E, 0x45F, 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, 0x217A, 0x217B, 0x217C, 0x217D, 0x217E, 0x217F, 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0xFF57, 0xFF58, 0xFF59, 0xFF5A, 0 };
AjK 0:0a841b89d614 533 static const WCHAR tbl_upper[] = { 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x21, 0xFFE0, 0xFFE1, 0xFFE5, 0xFFE2, 0xFFE3, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0x178, 0x100, 0x102, 0x104, 0x106, 0x108, 0x10A, 0x10C, 0x10E, 0x110, 0x112, 0x114, 0x116, 0x118, 0x11A, 0x11C, 0x11E, 0x120, 0x122, 0x124, 0x126, 0x128, 0x12A, 0x12C, 0x12E, 0x130, 0x132, 0x134, 0x136, 0x139, 0x13B, 0x13D, 0x13F, 0x141, 0x143, 0x145, 0x147, 0x14A, 0x14C, 0x14E, 0x150, 0x152, 0x154, 0x156, 0x158, 0x15A, 0x15C, 0x15E, 0x160, 0x162, 0x164, 0x166, 0x168, 0x16A, 0x16C, 0x16E, 0x170, 0x172, 0x174, 0x176, 0x179, 0x17B, 0x17D, 0x191, 0x391, 0x392, 0x393, 0x394, 0x395, 0x396, 0x397, 0x398, 0x399, 0x39A, 0x39B, 0x39C, 0x39D, 0x39E, 0x39F, 0x3A0, 0x3A1, 0x3A3, 0x3A4, 0x3A5, 0x3A6, 0x3A7, 0x3A8, 0x3A9, 0x3AA, 0x410, 0x411, 0x412, 0x413, 0x414, 0x415, 0x416, 0x417, 0x418, 0x419, 0x41A, 0x41B, 0x41C, 0x41D, 0x41E, 0x41F, 0x420, 0x421, 0x422, 0x423, 0x424, 0x425, 0x426, 0x427, 0x428, 0x429, 0x42A, 0x42B, 0x42C, 0x42D, 0x42E, 0x42F, 0x401, 0x402, 0x403, 0x404, 0x405, 0x406, 0x407, 0x408, 0x409, 0x40A, 0x40B, 0x40C, 0x40E, 0x40F, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0x216A, 0x216B, 0x216C, 0x216D, 0x216E, 0x216F, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0 };
AjK 0:0a841b89d614 534 int i;
AjK 0:0a841b89d614 535
AjK 0:0a841b89d614 536
AjK 0:0a841b89d614 537 for (i = 0; tbl_lower[i] && chr != tbl_lower[i]; i++) ;
AjK 0:0a841b89d614 538
AjK 0:0a841b89d614 539 return tbl_lower[i] ? tbl_upper[i] : chr;
AjK 0:0a841b89d614 540 }
AjK 0:0a841b89d614 541
AjK 0:0a841b89d614 542