Umasoft
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
GnsCodes.h
1 //
2 // key translation table for GEOnet region mapping of non-roman characters
3 // (Geonet 8-bit character to 16-bit Unicode)
4 //
5 
6 //
7 // This table is for region 1
8 //
9 unsigned short region1[128] =
10 {
11  // (for regions 1-5, 0-127 map directly to 0-127 for ASCII)
12 
13  // 128
14  0x0000,
15  0x010C, // LATIN CAPITAL LETTER C WITH CARON
16  0x0000,
17  0x0000,
18  0x0000,
19  0x0000,
20  0x0000,
21  0x0152, // LATIN CAPITAL LIGATURE OE
22 
23  // 136
24  0x0000,
25  0x0000,
26  0x0000,
27  0x014A, // LATIN CAPITAL LETTER ENG
28  0x0000,
29  0x0000,
30  0x0150, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
31  0x0000,
32 
33  // 144
34  0x0000,
35  0x0000,
36  0x0000,
37  0x0000,
38  0x0000,
39  0x0160, // LATIN CAPITAL LETTER S WITH CARON (Š)
40  0x00B6, // PILCROW SIGN = PARAGRAPH SIGN
41  0x201D, // RIGHT DOUBLE QUOTATION MARK
42 
43  // 152
44  0x0000,
45  0x0000,
46  0x0000,
47  0x0166, // LATIN CAPITAL LETTER T WITH STROKE
48  0x017D, // LATIN CAPITAL LETTER Z WITH CARON
49  0x0000,
50  0x0000,
51  0x0000,
52 
53  // 160
54  0x0000,
55  0x010D, // LATIN SMALL LETTER C WITH CARON
56  0x0000,
57  0x0000,
58  0x0000,
59  0x0000,
60  0x0000,
61  0x0153, // LATIN SMALL LIGATURE OE
62 
63  // 168
64  0x0000,
65  0x0000,
66  0x0000,
67  0x014B, // LATIN SMALL LETTER ENG
68  0x0000,
69  0x0000,
70  0x0151, // LATIN SMALL LETTER O WITH DOUBLE ACUTE
71  0x0000,
72 
73  // 176
74  0x00B0, // DEGREE SIGN (°)
75  0x0000,
76  0x0000,
77  0x0000,
78  0x0000,
79  0x0161, // LATIN SMALL LETTER S WITH CARON (š)
80  0x0000,
81  0x2027, // HYPHENATION POINT
82 
83  // 184
84  0x0000,
85  0x0000,
86  0x0000,
87  0x0167, // LATIN SMALL LETTER T WITH STROKE
88  0x017E, // LATIN SMALL LETTER Z WITH CARON (ž)
89  0x0000,
90  0x0000,
91  0x0000,
92 
93  // 192
94  0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À)
95  0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á)
96  0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â)
97  0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã)
98  0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä)
99  0x00C5, // LATIN CAPITAL LETTER A WITH RING ABOVE (Å)
100  0x00C6, // LATIN CAPITAL LETTER AE (Æ)
101  0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç)
102 
103  // 200
104  0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È)
105  0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É)
106  0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX
107  0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS
108  0x00CC, // LATIN CAPITAL LETTER I WITH GRAVE
109  0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE
110  0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX
111  0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS
112 
113  // 208
114  0x00D0, // LATIN CAPITAL LETTER ETH (Ð)
115  0x00D1, // LATIN CAPITAL LETTER N WITH TILDE
116  0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE
117  0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE
118  0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX
119  0x00D5, // LATIN CAPITAL LETTER O WITH TILDE
120  0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS
121  0x0170, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
122 
123  // 216
124  0x00D8, // LATIN CAPITAL LETTER O WITH STROKE (Ø)
125  0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù)
126  0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú)
127  0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX
128  0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS
129  0x00DD, // LATIN CAPITAL LETTER Y WITH ACUTE (Ý)
130  0x00DE, // LATIN CAPITAL LETTER THORN (Þ)
131  0x00DF, // LATIN SMALL LETTER SHARP S (ß)
132 
133  // 224
134  0x00E0, // LATIN SMALL LETTER A WITH GRAVE
135  0x00E1, // LATIN SMALL LETTER A WITH ACUTE
136  0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX
137  0x00E3, // LATIN SMALL LETTER A WITH TILDE
138  0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS
139  0x00E5, // LATIN SMALL LETTER A WITH RING ABOVE
140  0x00E6, // LATIN SMALL LETTER AE = LATIN SMALL LIGATURE AE
141  0x00E7, // LATIN SMALL LETTER C WITH CEDILLA
142 
143  // 232
144  0x00E8, // LATIN SMALL LETTER E WITH GRAVE
145  0x00E9, // LATIN SMALL LETTER E WITH ACUTE
146  0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX
147  0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x00EC, // LATIN SMALL LETTER I WITH GRAVE 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x00F8, // LATIN SMALL LETTER O WITH STROKE (ø) 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x00FE, // LATIN SMALL LETTER THORN (þ) 0x00F0 // LATIN SMALL LETTER ETH (ð) }; // // This table is for region 2 // unsigned short region2[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x0106, // LATIN CAPITAL LETTER C WITH ACUTE 0x010C, // LATIN CAPITAL LETTER C WITH CARON 0x010E, // LATIN CAPITAL LETTER D WITH CARON 0x0104, // LATIN CAPITAL LETTER A WITH OGONEK 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0116, // LATIN CAPITAL LETTER E WITH DOT ABOVE 0x0118, // LATIN CAPITAL LETTER E WITH OGONEK 0x0000, // 136 0x015A, // LATIN CAPITAL LETTER S WITH ACUTE 0x1E2E, // LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE 0x013B, // LATIN CAPITAL LETTER L WITH CEDILLA 0x0136, // LATIN CAPITAL LETTER K WITH CEDILLA 0x016E, // LATIN CAPITAL LETTER U WITH RING ABOVE 0x011A, // LATIN CAPITAL LETTER E WITH CARON 0x0150, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 0x0141, // LATIN CAPITAL LETTER L WITH STROKE // 144 0x0000, 0x0158, // LATIN CAPITAL LETTER R WITH CARON 0x0147, // LATIN CAPITAL LETTER N WITH CARON 0x0143, // LATIN CAPITAL LETTER N WITH ACUTE 0x0154, // LATIN CAPITAL LETTER R WITH ACUTE 0x0160, // LATIN CAPITAL LETTER S WITH CARON (Š) 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x013D, // LATIN CAPITAL LETTER L WITH CARON 0x0164, // LATIN CAPITAL LETTER T WITH CARON 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0122, // LATIN CAPITAL LETTER G WITH CEDILLA 0x017D, // LATIN CAPITAL LETTER Z WITH CARON 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x0179, // LATIN CAPITAL LETTER Z WITH ACUTE 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x0107, // LATIN SMALL LETTER C WITH ACUTE 0x010D, // LATIN SMALL LETTER C WITH CARON 0x010F, // LATIN SMALL LETTER D WITH CARON 0x0105, // LATIN SMALL LETTER A WITH OGONEK 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0117, // LATIN SMALL LETTER E WITH DOT ABOVE 0x0119, // LATIN SMALL LETTER E WITH OGONEK 0x0000, // 168 0x015B, // LATIN SMALL LETTER S WITH ACUTE 0x1E2F, // LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE 0x013C, // LATIN SMALL LETTER L WITH CEDILLA 0x0137, // LATIN SMALL LETTER K WITH CEDILLA 0x016F, // LATIN SMALL LETTER U WITH RING ABOVE 0x011B, // LATIN SMALL LETTER E WITH CARON 0x0151, // LATIN SMALL LETTER O WITH DOUBLE ACUTE 0x0142, // LATIN SMALL LETTER L WITH STROKE // 176 0x00B0, // DEGREE SIGN (°) 0x0159, // LATIN SMALL LETTER R WITH CARON 0x0148, // LATIN SMALL LETTER N WITH CARON 0x0144, // LATIN SMALL LETTER N WITH ACUTE 0x0155, // LATIN SMALL LETTER R WITH ACUTE 0x0161, // LATIN SMALL LETTER S WITH CARON (š) 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x013E, // LATIN SMALL LETTER L WITH CARON 0x0165, // LATIN SMALL LETTER T WITH CARON 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0123, // LATIN SMALL LETTER G WITH CEDILLA 0x017E, // LATIN SMALL LETTER Z WITH CARON (ž) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x017A, // LATIN SMALL LETTER Z WITH ACUTE 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x0000, 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x0139, // LATIN CAPITAL LETTER L WITH ACUTE 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0102, // LATIN CAPITAL LETTER A WITH BREVE (Ã) 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x0000, 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x012E, // LATIN CAPITAL LETTER I WITH OGONEK 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x00D0, // LATIN CAPITAL LETTER ETH 0x0145, // LATIN CAPITAL LETTER N WITH CEDILLA 0x0000, 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0170, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x0000, 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x0172, // LATIN CAPITAL LETTER U WITH OGONEK 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x00DD, // LATIN CAPITAL LETTER Y WITH ACUTE (Ý) 0x016C, // LATIN CAPITAL LETTER U WITH BREVE 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x0000, 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x013A, // LATIN SMALL LETTER L WITH ACUTE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0103, // LATIN SMALL LETTER A WITH BREVE 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x0000, 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x012F, // LATIN SMALL LETTER I WITH OGONEK 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x0146, // LATIN SMALL LETTER N WITH CEDILLA 0x0000, 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x0000, 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x0173, // LATIN SMALL LETTER U WITH OGONEK 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
148  0x00EC, // LATIN SMALL LETTER I WITH GRAVE
149  0x00ED, // LATIN SMALL LETTER I WITH ACUTE
150  0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX
151  0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS
152 
153  // 240
154  0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x00F8, // LATIN SMALL LETTER O WITH STROKE (ø) 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x00FE, // LATIN SMALL LETTER THORN (þ) 0x00F0 // LATIN SMALL LETTER ETH (ð) }; // // This table is for region 2 // unsigned short region2[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x0106, // LATIN CAPITAL LETTER C WITH ACUTE 0x010C, // LATIN CAPITAL LETTER C WITH CARON 0x010E, // LATIN CAPITAL LETTER D WITH CARON 0x0104, // LATIN CAPITAL LETTER A WITH OGONEK 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0116, // LATIN CAPITAL LETTER E WITH DOT ABOVE 0x0118, // LATIN CAPITAL LETTER E WITH OGONEK 0x0000, // 136 0x015A, // LATIN CAPITAL LETTER S WITH ACUTE 0x1E2E, // LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE 0x013B, // LATIN CAPITAL LETTER L WITH CEDILLA 0x0136, // LATIN CAPITAL LETTER K WITH CEDILLA 0x016E, // LATIN CAPITAL LETTER U WITH RING ABOVE 0x011A, // LATIN CAPITAL LETTER E WITH CARON 0x0150, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 0x0141, // LATIN CAPITAL LETTER L WITH STROKE // 144 0x0000, 0x0158, // LATIN CAPITAL LETTER R WITH CARON 0x0147, // LATIN CAPITAL LETTER N WITH CARON 0x0143, // LATIN CAPITAL LETTER N WITH ACUTE 0x0154, // LATIN CAPITAL LETTER R WITH ACUTE 0x0160, // LATIN CAPITAL LETTER S WITH CARON (Š) 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x013D, // LATIN CAPITAL LETTER L WITH CARON 0x0164, // LATIN CAPITAL LETTER T WITH CARON 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0122, // LATIN CAPITAL LETTER G WITH CEDILLA 0x017D, // LATIN CAPITAL LETTER Z WITH CARON 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x0179, // LATIN CAPITAL LETTER Z WITH ACUTE 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x0107, // LATIN SMALL LETTER C WITH ACUTE 0x010D, // LATIN SMALL LETTER C WITH CARON 0x010F, // LATIN SMALL LETTER D WITH CARON 0x0105, // LATIN SMALL LETTER A WITH OGONEK 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0117, // LATIN SMALL LETTER E WITH DOT ABOVE 0x0119, // LATIN SMALL LETTER E WITH OGONEK 0x0000, // 168 0x015B, // LATIN SMALL LETTER S WITH ACUTE 0x1E2F, // LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE 0x013C, // LATIN SMALL LETTER L WITH CEDILLA 0x0137, // LATIN SMALL LETTER K WITH CEDILLA 0x016F, // LATIN SMALL LETTER U WITH RING ABOVE 0x011B, // LATIN SMALL LETTER E WITH CARON 0x0151, // LATIN SMALL LETTER O WITH DOUBLE ACUTE 0x0142, // LATIN SMALL LETTER L WITH STROKE // 176 0x00B0, // DEGREE SIGN (°) 0x0159, // LATIN SMALL LETTER R WITH CARON 0x0148, // LATIN SMALL LETTER N WITH CARON 0x0144, // LATIN SMALL LETTER N WITH ACUTE 0x0155, // LATIN SMALL LETTER R WITH ACUTE 0x0161, // LATIN SMALL LETTER S WITH CARON (š) 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x013E, // LATIN SMALL LETTER L WITH CARON 0x0165, // LATIN SMALL LETTER T WITH CARON 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0123, // LATIN SMALL LETTER G WITH CEDILLA 0x017E, // LATIN SMALL LETTER Z WITH CARON (ž) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x017A, // LATIN SMALL LETTER Z WITH ACUTE 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x0000, 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x0139, // LATIN CAPITAL LETTER L WITH ACUTE 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0102, // LATIN CAPITAL LETTER A WITH BREVE (Ã) 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x0000, 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x012E, // LATIN CAPITAL LETTER I WITH OGONEK 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x00D0, // LATIN CAPITAL LETTER ETH 0x0145, // LATIN CAPITAL LETTER N WITH CEDILLA 0x0000, 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0170, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x0000, 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x0172, // LATIN CAPITAL LETTER U WITH OGONEK 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x00DD, // LATIN CAPITAL LETTER Y WITH ACUTE (Ý) 0x016C, // LATIN CAPITAL LETTER U WITH BREVE 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x0000, 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x013A, // LATIN SMALL LETTER L WITH ACUTE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0103, // LATIN SMALL LETTER A WITH BREVE 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x0000, 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x012F, // LATIN SMALL LETTER I WITH OGONEK 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x0146, // LATIN SMALL LETTER N WITH CEDILLA 0x0000, 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x0000, 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x0173, // LATIN SMALL LETTER U WITH OGONEK 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
155  0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x00F8, // LATIN SMALL LETTER O WITH STROKE (ø) 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x00FE, // LATIN SMALL LETTER THORN (þ) 0x00F0 // LATIN SMALL LETTER ETH (ð) }; // // This table is for region 2 // unsigned short region2[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x0106, // LATIN CAPITAL LETTER C WITH ACUTE 0x010C, // LATIN CAPITAL LETTER C WITH CARON 0x010E, // LATIN CAPITAL LETTER D WITH CARON 0x0104, // LATIN CAPITAL LETTER A WITH OGONEK 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0116, // LATIN CAPITAL LETTER E WITH DOT ABOVE 0x0118, // LATIN CAPITAL LETTER E WITH OGONEK 0x0000, // 136 0x015A, // LATIN CAPITAL LETTER S WITH ACUTE 0x1E2E, // LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE 0x013B, // LATIN CAPITAL LETTER L WITH CEDILLA 0x0136, // LATIN CAPITAL LETTER K WITH CEDILLA 0x016E, // LATIN CAPITAL LETTER U WITH RING ABOVE 0x011A, // LATIN CAPITAL LETTER E WITH CARON 0x0150, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 0x0141, // LATIN CAPITAL LETTER L WITH STROKE // 144 0x0000, 0x0158, // LATIN CAPITAL LETTER R WITH CARON 0x0147, // LATIN CAPITAL LETTER N WITH CARON 0x0143, // LATIN CAPITAL LETTER N WITH ACUTE 0x0154, // LATIN CAPITAL LETTER R WITH ACUTE 0x0160, // LATIN CAPITAL LETTER S WITH CARON (Š) 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x013D, // LATIN CAPITAL LETTER L WITH CARON 0x0164, // LATIN CAPITAL LETTER T WITH CARON 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0122, // LATIN CAPITAL LETTER G WITH CEDILLA 0x017D, // LATIN CAPITAL LETTER Z WITH CARON 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x0179, // LATIN CAPITAL LETTER Z WITH ACUTE 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x0107, // LATIN SMALL LETTER C WITH ACUTE 0x010D, // LATIN SMALL LETTER C WITH CARON 0x010F, // LATIN SMALL LETTER D WITH CARON 0x0105, // LATIN SMALL LETTER A WITH OGONEK 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0117, // LATIN SMALL LETTER E WITH DOT ABOVE 0x0119, // LATIN SMALL LETTER E WITH OGONEK 0x0000, // 168 0x015B, // LATIN SMALL LETTER S WITH ACUTE 0x1E2F, // LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE 0x013C, // LATIN SMALL LETTER L WITH CEDILLA 0x0137, // LATIN SMALL LETTER K WITH CEDILLA 0x016F, // LATIN SMALL LETTER U WITH RING ABOVE 0x011B, // LATIN SMALL LETTER E WITH CARON 0x0151, // LATIN SMALL LETTER O WITH DOUBLE ACUTE 0x0142, // LATIN SMALL LETTER L WITH STROKE // 176 0x00B0, // DEGREE SIGN (°) 0x0159, // LATIN SMALL LETTER R WITH CARON 0x0148, // LATIN SMALL LETTER N WITH CARON 0x0144, // LATIN SMALL LETTER N WITH ACUTE 0x0155, // LATIN SMALL LETTER R WITH ACUTE 0x0161, // LATIN SMALL LETTER S WITH CARON (š) 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x013E, // LATIN SMALL LETTER L WITH CARON 0x0165, // LATIN SMALL LETTER T WITH CARON 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0123, // LATIN SMALL LETTER G WITH CEDILLA 0x017E, // LATIN SMALL LETTER Z WITH CARON (ž) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x017A, // LATIN SMALL LETTER Z WITH ACUTE 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x0000, 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x0139, // LATIN CAPITAL LETTER L WITH ACUTE 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0102, // LATIN CAPITAL LETTER A WITH BREVE (Ã) 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x0000, 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x012E, // LATIN CAPITAL LETTER I WITH OGONEK 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x00D0, // LATIN CAPITAL LETTER ETH 0x0145, // LATIN CAPITAL LETTER N WITH CEDILLA 0x0000, 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0170, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x0000, 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x0172, // LATIN CAPITAL LETTER U WITH OGONEK 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x00DD, // LATIN CAPITAL LETTER Y WITH ACUTE (Ý) 0x016C, // LATIN CAPITAL LETTER U WITH BREVE 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x0000, 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x013A, // LATIN SMALL LETTER L WITH ACUTE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0103, // LATIN SMALL LETTER A WITH BREVE 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x0000, 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x012F, // LATIN SMALL LETTER I WITH OGONEK 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x0146, // LATIN SMALL LETTER N WITH CEDILLA 0x0000, 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x0000, 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x0173, // LATIN SMALL LETTER U WITH OGONEK 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
156  0x00F2, // SMALL LETTER O WITH GRAVE
157  0x00F3, // SMALL LETTER O WITH ACUTE
158  0x00F4, // SMALL LETTER O WITH CIRCUMFLEX
159  0x00F5, // SMALL LETTER O WITH TILDE
160  0x00F6, // SMALL LETTER O WITH DIAERESIS
161  0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE
162 
163 
164  // 248
165  0x00F8, // LATIN SMALL LETTER O WITH STROKE (ø) 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x00FE, // LATIN SMALL LETTER THORN (þ) 0x00F0 // LATIN SMALL LETTER ETH (ð) }; // // This table is for region 2 // unsigned short region2[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x0106, // LATIN CAPITAL LETTER C WITH ACUTE 0x010C, // LATIN CAPITAL LETTER C WITH CARON 0x010E, // LATIN CAPITAL LETTER D WITH CARON 0x0104, // LATIN CAPITAL LETTER A WITH OGONEK 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0116, // LATIN CAPITAL LETTER E WITH DOT ABOVE 0x0118, // LATIN CAPITAL LETTER E WITH OGONEK 0x0000, // 136 0x015A, // LATIN CAPITAL LETTER S WITH ACUTE 0x1E2E, // LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE 0x013B, // LATIN CAPITAL LETTER L WITH CEDILLA 0x0136, // LATIN CAPITAL LETTER K WITH CEDILLA 0x016E, // LATIN CAPITAL LETTER U WITH RING ABOVE 0x011A, // LATIN CAPITAL LETTER E WITH CARON 0x0150, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 0x0141, // LATIN CAPITAL LETTER L WITH STROKE // 144 0x0000, 0x0158, // LATIN CAPITAL LETTER R WITH CARON 0x0147, // LATIN CAPITAL LETTER N WITH CARON 0x0143, // LATIN CAPITAL LETTER N WITH ACUTE 0x0154, // LATIN CAPITAL LETTER R WITH ACUTE 0x0160, // LATIN CAPITAL LETTER S WITH CARON (Š) 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x013D, // LATIN CAPITAL LETTER L WITH CARON 0x0164, // LATIN CAPITAL LETTER T WITH CARON 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0122, // LATIN CAPITAL LETTER G WITH CEDILLA 0x017D, // LATIN CAPITAL LETTER Z WITH CARON 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x0179, // LATIN CAPITAL LETTER Z WITH ACUTE 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x0107, // LATIN SMALL LETTER C WITH ACUTE 0x010D, // LATIN SMALL LETTER C WITH CARON 0x010F, // LATIN SMALL LETTER D WITH CARON 0x0105, // LATIN SMALL LETTER A WITH OGONEK 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0117, // LATIN SMALL LETTER E WITH DOT ABOVE 0x0119, // LATIN SMALL LETTER E WITH OGONEK 0x0000, // 168 0x015B, // LATIN SMALL LETTER S WITH ACUTE 0x1E2F, // LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE 0x013C, // LATIN SMALL LETTER L WITH CEDILLA 0x0137, // LATIN SMALL LETTER K WITH CEDILLA 0x016F, // LATIN SMALL LETTER U WITH RING ABOVE 0x011B, // LATIN SMALL LETTER E WITH CARON 0x0151, // LATIN SMALL LETTER O WITH DOUBLE ACUTE 0x0142, // LATIN SMALL LETTER L WITH STROKE // 176 0x00B0, // DEGREE SIGN (°) 0x0159, // LATIN SMALL LETTER R WITH CARON 0x0148, // LATIN SMALL LETTER N WITH CARON 0x0144, // LATIN SMALL LETTER N WITH ACUTE 0x0155, // LATIN SMALL LETTER R WITH ACUTE 0x0161, // LATIN SMALL LETTER S WITH CARON (š) 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x013E, // LATIN SMALL LETTER L WITH CARON 0x0165, // LATIN SMALL LETTER T WITH CARON 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0123, // LATIN SMALL LETTER G WITH CEDILLA 0x017E, // LATIN SMALL LETTER Z WITH CARON (ž) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x017A, // LATIN SMALL LETTER Z WITH ACUTE 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x0000, 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x0139, // LATIN CAPITAL LETTER L WITH ACUTE 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0102, // LATIN CAPITAL LETTER A WITH BREVE (Ã) 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x0000, 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x012E, // LATIN CAPITAL LETTER I WITH OGONEK 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x00D0, // LATIN CAPITAL LETTER ETH 0x0145, // LATIN CAPITAL LETTER N WITH CEDILLA 0x0000, 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0170, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x0000, 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x0172, // LATIN CAPITAL LETTER U WITH OGONEK 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x00DD, // LATIN CAPITAL LETTER Y WITH ACUTE (Ý) 0x016C, // LATIN CAPITAL LETTER U WITH BREVE 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x0000, 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x013A, // LATIN SMALL LETTER L WITH ACUTE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0103, // LATIN SMALL LETTER A WITH BREVE 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x0000, 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x012F, // LATIN SMALL LETTER I WITH OGONEK 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x0146, // LATIN SMALL LETTER N WITH CEDILLA 0x0000, 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x0000, 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x0173, // LATIN SMALL LETTER U WITH OGONEK 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
166  0x00F9, // LATIN SMALL LETTER U WITH GRAVE
167  0x00FA, // LATIN SMALL LETTER U WITH ACUTE
168  0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX
169  0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x00FE, // LATIN SMALL LETTER THORN (þ) 0x00F0 // LATIN SMALL LETTER ETH (ð) }; // // This table is for region 2 // unsigned short region2[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x0106, // LATIN CAPITAL LETTER C WITH ACUTE 0x010C, // LATIN CAPITAL LETTER C WITH CARON 0x010E, // LATIN CAPITAL LETTER D WITH CARON 0x0104, // LATIN CAPITAL LETTER A WITH OGONEK 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0116, // LATIN CAPITAL LETTER E WITH DOT ABOVE 0x0118, // LATIN CAPITAL LETTER E WITH OGONEK 0x0000, // 136 0x015A, // LATIN CAPITAL LETTER S WITH ACUTE 0x1E2E, // LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE 0x013B, // LATIN CAPITAL LETTER L WITH CEDILLA 0x0136, // LATIN CAPITAL LETTER K WITH CEDILLA 0x016E, // LATIN CAPITAL LETTER U WITH RING ABOVE 0x011A, // LATIN CAPITAL LETTER E WITH CARON 0x0150, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 0x0141, // LATIN CAPITAL LETTER L WITH STROKE // 144 0x0000, 0x0158, // LATIN CAPITAL LETTER R WITH CARON 0x0147, // LATIN CAPITAL LETTER N WITH CARON 0x0143, // LATIN CAPITAL LETTER N WITH ACUTE 0x0154, // LATIN CAPITAL LETTER R WITH ACUTE 0x0160, // LATIN CAPITAL LETTER S WITH CARON (Š) 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x013D, // LATIN CAPITAL LETTER L WITH CARON 0x0164, // LATIN CAPITAL LETTER T WITH CARON 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0122, // LATIN CAPITAL LETTER G WITH CEDILLA 0x017D, // LATIN CAPITAL LETTER Z WITH CARON 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x0179, // LATIN CAPITAL LETTER Z WITH ACUTE 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x0107, // LATIN SMALL LETTER C WITH ACUTE 0x010D, // LATIN SMALL LETTER C WITH CARON 0x010F, // LATIN SMALL LETTER D WITH CARON 0x0105, // LATIN SMALL LETTER A WITH OGONEK 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0117, // LATIN SMALL LETTER E WITH DOT ABOVE 0x0119, // LATIN SMALL LETTER E WITH OGONEK 0x0000, // 168 0x015B, // LATIN SMALL LETTER S WITH ACUTE 0x1E2F, // LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE 0x013C, // LATIN SMALL LETTER L WITH CEDILLA 0x0137, // LATIN SMALL LETTER K WITH CEDILLA 0x016F, // LATIN SMALL LETTER U WITH RING ABOVE 0x011B, // LATIN SMALL LETTER E WITH CARON 0x0151, // LATIN SMALL LETTER O WITH DOUBLE ACUTE 0x0142, // LATIN SMALL LETTER L WITH STROKE // 176 0x00B0, // DEGREE SIGN (°) 0x0159, // LATIN SMALL LETTER R WITH CARON 0x0148, // LATIN SMALL LETTER N WITH CARON 0x0144, // LATIN SMALL LETTER N WITH ACUTE 0x0155, // LATIN SMALL LETTER R WITH ACUTE 0x0161, // LATIN SMALL LETTER S WITH CARON (š) 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x013E, // LATIN SMALL LETTER L WITH CARON 0x0165, // LATIN SMALL LETTER T WITH CARON 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0123, // LATIN SMALL LETTER G WITH CEDILLA 0x017E, // LATIN SMALL LETTER Z WITH CARON (ž) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x017A, // LATIN SMALL LETTER Z WITH ACUTE 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x0000, 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x0139, // LATIN CAPITAL LETTER L WITH ACUTE 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0102, // LATIN CAPITAL LETTER A WITH BREVE (Ã) 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x0000, 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x012E, // LATIN CAPITAL LETTER I WITH OGONEK 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x00D0, // LATIN CAPITAL LETTER ETH 0x0145, // LATIN CAPITAL LETTER N WITH CEDILLA 0x0000, 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0170, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x0000, 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x0172, // LATIN CAPITAL LETTER U WITH OGONEK 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x00DD, // LATIN CAPITAL LETTER Y WITH ACUTE (Ý) 0x016C, // LATIN CAPITAL LETTER U WITH BREVE 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x0000, 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x013A, // LATIN SMALL LETTER L WITH ACUTE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0103, // LATIN SMALL LETTER A WITH BREVE 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x0000, 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x012F, // LATIN SMALL LETTER I WITH OGONEK 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x0146, // LATIN SMALL LETTER N WITH CEDILLA 0x0000, 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x0000, 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x0173, // LATIN SMALL LETTER U WITH OGONEK 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
170  0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x00FE, // LATIN SMALL LETTER THORN (þ) 0x00F0 // LATIN SMALL LETTER ETH (ð) }; // // This table is for region 2 // unsigned short region2[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x0106, // LATIN CAPITAL LETTER C WITH ACUTE 0x010C, // LATIN CAPITAL LETTER C WITH CARON 0x010E, // LATIN CAPITAL LETTER D WITH CARON 0x0104, // LATIN CAPITAL LETTER A WITH OGONEK 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0116, // LATIN CAPITAL LETTER E WITH DOT ABOVE 0x0118, // LATIN CAPITAL LETTER E WITH OGONEK 0x0000, // 136 0x015A, // LATIN CAPITAL LETTER S WITH ACUTE 0x1E2E, // LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE 0x013B, // LATIN CAPITAL LETTER L WITH CEDILLA 0x0136, // LATIN CAPITAL LETTER K WITH CEDILLA 0x016E, // LATIN CAPITAL LETTER U WITH RING ABOVE 0x011A, // LATIN CAPITAL LETTER E WITH CARON 0x0150, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 0x0141, // LATIN CAPITAL LETTER L WITH STROKE // 144 0x0000, 0x0158, // LATIN CAPITAL LETTER R WITH CARON 0x0147, // LATIN CAPITAL LETTER N WITH CARON 0x0143, // LATIN CAPITAL LETTER N WITH ACUTE 0x0154, // LATIN CAPITAL LETTER R WITH ACUTE 0x0160, // LATIN CAPITAL LETTER S WITH CARON (Š) 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x013D, // LATIN CAPITAL LETTER L WITH CARON 0x0164, // LATIN CAPITAL LETTER T WITH CARON 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0122, // LATIN CAPITAL LETTER G WITH CEDILLA 0x017D, // LATIN CAPITAL LETTER Z WITH CARON 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x0179, // LATIN CAPITAL LETTER Z WITH ACUTE 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x0107, // LATIN SMALL LETTER C WITH ACUTE 0x010D, // LATIN SMALL LETTER C WITH CARON 0x010F, // LATIN SMALL LETTER D WITH CARON 0x0105, // LATIN SMALL LETTER A WITH OGONEK 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0117, // LATIN SMALL LETTER E WITH DOT ABOVE 0x0119, // LATIN SMALL LETTER E WITH OGONEK 0x0000, // 168 0x015B, // LATIN SMALL LETTER S WITH ACUTE 0x1E2F, // LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE 0x013C, // LATIN SMALL LETTER L WITH CEDILLA 0x0137, // LATIN SMALL LETTER K WITH CEDILLA 0x016F, // LATIN SMALL LETTER U WITH RING ABOVE 0x011B, // LATIN SMALL LETTER E WITH CARON 0x0151, // LATIN SMALL LETTER O WITH DOUBLE ACUTE 0x0142, // LATIN SMALL LETTER L WITH STROKE // 176 0x00B0, // DEGREE SIGN (°) 0x0159, // LATIN SMALL LETTER R WITH CARON 0x0148, // LATIN SMALL LETTER N WITH CARON 0x0144, // LATIN SMALL LETTER N WITH ACUTE 0x0155, // LATIN SMALL LETTER R WITH ACUTE 0x0161, // LATIN SMALL LETTER S WITH CARON (š) 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x013E, // LATIN SMALL LETTER L WITH CARON 0x0165, // LATIN SMALL LETTER T WITH CARON 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0123, // LATIN SMALL LETTER G WITH CEDILLA 0x017E, // LATIN SMALL LETTER Z WITH CARON (ž) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x017A, // LATIN SMALL LETTER Z WITH ACUTE 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x0000, 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x0139, // LATIN CAPITAL LETTER L WITH ACUTE 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0102, // LATIN CAPITAL LETTER A WITH BREVE (Ã) 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x0000, 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x012E, // LATIN CAPITAL LETTER I WITH OGONEK 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x00D0, // LATIN CAPITAL LETTER ETH 0x0145, // LATIN CAPITAL LETTER N WITH CEDILLA 0x0000, 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0170, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x0000, 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x0172, // LATIN CAPITAL LETTER U WITH OGONEK 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x00DD, // LATIN CAPITAL LETTER Y WITH ACUTE (Ý) 0x016C, // LATIN CAPITAL LETTER U WITH BREVE 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x0000, 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x013A, // LATIN SMALL LETTER L WITH ACUTE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0103, // LATIN SMALL LETTER A WITH BREVE 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x0000, 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x012F, // LATIN SMALL LETTER I WITH OGONEK 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x0146, // LATIN SMALL LETTER N WITH CEDILLA 0x0000, 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x0000, 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x0173, // LATIN SMALL LETTER U WITH OGONEK 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
171  0x00FE, // LATIN SMALL LETTER THORN (þ) 0x00F0 // LATIN SMALL LETTER ETH (ð) }; // // This table is for region 2 // unsigned short region2[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x0106, // LATIN CAPITAL LETTER C WITH ACUTE 0x010C, // LATIN CAPITAL LETTER C WITH CARON 0x010E, // LATIN CAPITAL LETTER D WITH CARON 0x0104, // LATIN CAPITAL LETTER A WITH OGONEK 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0116, // LATIN CAPITAL LETTER E WITH DOT ABOVE 0x0118, // LATIN CAPITAL LETTER E WITH OGONEK 0x0000, // 136 0x015A, // LATIN CAPITAL LETTER S WITH ACUTE 0x1E2E, // LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE 0x013B, // LATIN CAPITAL LETTER L WITH CEDILLA 0x0136, // LATIN CAPITAL LETTER K WITH CEDILLA 0x016E, // LATIN CAPITAL LETTER U WITH RING ABOVE 0x011A, // LATIN CAPITAL LETTER E WITH CARON 0x0150, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 0x0141, // LATIN CAPITAL LETTER L WITH STROKE // 144 0x0000, 0x0158, // LATIN CAPITAL LETTER R WITH CARON 0x0147, // LATIN CAPITAL LETTER N WITH CARON 0x0143, // LATIN CAPITAL LETTER N WITH ACUTE 0x0154, // LATIN CAPITAL LETTER R WITH ACUTE 0x0160, // LATIN CAPITAL LETTER S WITH CARON (Š) 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x013D, // LATIN CAPITAL LETTER L WITH CARON 0x0164, // LATIN CAPITAL LETTER T WITH CARON 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0122, // LATIN CAPITAL LETTER G WITH CEDILLA 0x017D, // LATIN CAPITAL LETTER Z WITH CARON 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x0179, // LATIN CAPITAL LETTER Z WITH ACUTE 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x0107, // LATIN SMALL LETTER C WITH ACUTE 0x010D, // LATIN SMALL LETTER C WITH CARON 0x010F, // LATIN SMALL LETTER D WITH CARON 0x0105, // LATIN SMALL LETTER A WITH OGONEK 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0117, // LATIN SMALL LETTER E WITH DOT ABOVE 0x0119, // LATIN SMALL LETTER E WITH OGONEK 0x0000, // 168 0x015B, // LATIN SMALL LETTER S WITH ACUTE 0x1E2F, // LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE 0x013C, // LATIN SMALL LETTER L WITH CEDILLA 0x0137, // LATIN SMALL LETTER K WITH CEDILLA 0x016F, // LATIN SMALL LETTER U WITH RING ABOVE 0x011B, // LATIN SMALL LETTER E WITH CARON 0x0151, // LATIN SMALL LETTER O WITH DOUBLE ACUTE 0x0142, // LATIN SMALL LETTER L WITH STROKE // 176 0x00B0, // DEGREE SIGN (°) 0x0159, // LATIN SMALL LETTER R WITH CARON 0x0148, // LATIN SMALL LETTER N WITH CARON 0x0144, // LATIN SMALL LETTER N WITH ACUTE 0x0155, // LATIN SMALL LETTER R WITH ACUTE 0x0161, // LATIN SMALL LETTER S WITH CARON (š) 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x013E, // LATIN SMALL LETTER L WITH CARON 0x0165, // LATIN SMALL LETTER T WITH CARON 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0123, // LATIN SMALL LETTER G WITH CEDILLA 0x017E, // LATIN SMALL LETTER Z WITH CARON (ž) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x017A, // LATIN SMALL LETTER Z WITH ACUTE 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x0000, 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x0139, // LATIN CAPITAL LETTER L WITH ACUTE 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0102, // LATIN CAPITAL LETTER A WITH BREVE (Ã) 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x0000, 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x012E, // LATIN CAPITAL LETTER I WITH OGONEK 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x00D0, // LATIN CAPITAL LETTER ETH 0x0145, // LATIN CAPITAL LETTER N WITH CEDILLA 0x0000, 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0170, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x0000, 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x0172, // LATIN CAPITAL LETTER U WITH OGONEK 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x00DD, // LATIN CAPITAL LETTER Y WITH ACUTE (Ý) 0x016C, // LATIN CAPITAL LETTER U WITH BREVE 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x0000, 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x013A, // LATIN SMALL LETTER L WITH ACUTE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0103, // LATIN SMALL LETTER A WITH BREVE 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x0000, 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x012F, // LATIN SMALL LETTER I WITH OGONEK 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x0146, // LATIN SMALL LETTER N WITH CEDILLA 0x0000, 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x0000, 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x0173, // LATIN SMALL LETTER U WITH OGONEK 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
172  0x00F0 // LATIN SMALL LETTER ETH (ð)}; // // This table is for region 2 // unsigned short region2[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x0106, // LATIN CAPITAL LETTER C WITH ACUTE 0x010C, // LATIN CAPITAL LETTER C WITH CARON 0x010E, // LATIN CAPITAL LETTER D WITH CARON 0x0104, // LATIN CAPITAL LETTER A WITH OGONEK 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0116, // LATIN CAPITAL LETTER E WITH DOT ABOVE 0x0118, // LATIN CAPITAL LETTER E WITH OGONEK 0x0000, // 136 0x015A, // LATIN CAPITAL LETTER S WITH ACUTE 0x1E2E, // LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE 0x013B, // LATIN CAPITAL LETTER L WITH CEDILLA 0x0136, // LATIN CAPITAL LETTER K WITH CEDILLA 0x016E, // LATIN CAPITAL LETTER U WITH RING ABOVE 0x011A, // LATIN CAPITAL LETTER E WITH CARON 0x0150, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 0x0141, // LATIN CAPITAL LETTER L WITH STROKE // 144 0x0000, 0x0158, // LATIN CAPITAL LETTER R WITH CARON 0x0147, // LATIN CAPITAL LETTER N WITH CARON 0x0143, // LATIN CAPITAL LETTER N WITH ACUTE 0x0154, // LATIN CAPITAL LETTER R WITH ACUTE 0x0160, // LATIN CAPITAL LETTER S WITH CARON (Š) 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x013D, // LATIN CAPITAL LETTER L WITH CARON 0x0164, // LATIN CAPITAL LETTER T WITH CARON 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0122, // LATIN CAPITAL LETTER G WITH CEDILLA 0x017D, // LATIN CAPITAL LETTER Z WITH CARON 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x0179, // LATIN CAPITAL LETTER Z WITH ACUTE 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x0107, // LATIN SMALL LETTER C WITH ACUTE 0x010D, // LATIN SMALL LETTER C WITH CARON 0x010F, // LATIN SMALL LETTER D WITH CARON 0x0105, // LATIN SMALL LETTER A WITH OGONEK 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0117, // LATIN SMALL LETTER E WITH DOT ABOVE 0x0119, // LATIN SMALL LETTER E WITH OGONEK 0x0000, // 168 0x015B, // LATIN SMALL LETTER S WITH ACUTE 0x1E2F, // LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE 0x013C, // LATIN SMALL LETTER L WITH CEDILLA 0x0137, // LATIN SMALL LETTER K WITH CEDILLA 0x016F, // LATIN SMALL LETTER U WITH RING ABOVE 0x011B, // LATIN SMALL LETTER E WITH CARON 0x0151, // LATIN SMALL LETTER O WITH DOUBLE ACUTE 0x0142, // LATIN SMALL LETTER L WITH STROKE // 176 0x00B0, // DEGREE SIGN (°) 0x0159, // LATIN SMALL LETTER R WITH CARON 0x0148, // LATIN SMALL LETTER N WITH CARON 0x0144, // LATIN SMALL LETTER N WITH ACUTE 0x0155, // LATIN SMALL LETTER R WITH ACUTE 0x0161, // LATIN SMALL LETTER S WITH CARON (š) 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x013E, // LATIN SMALL LETTER L WITH CARON 0x0165, // LATIN SMALL LETTER T WITH CARON 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0123, // LATIN SMALL LETTER G WITH CEDILLA 0x017E, // LATIN SMALL LETTER Z WITH CARON (ž) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x017A, // LATIN SMALL LETTER Z WITH ACUTE 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x0000, 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x0139, // LATIN CAPITAL LETTER L WITH ACUTE 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0102, // LATIN CAPITAL LETTER A WITH BREVE (Ã) 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x0000, 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x012E, // LATIN CAPITAL LETTER I WITH OGONEK 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x00D0, // LATIN CAPITAL LETTER ETH 0x0145, // LATIN CAPITAL LETTER N WITH CEDILLA 0x0000, 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0170, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x0000, 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x0172, // LATIN CAPITAL LETTER U WITH OGONEK 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x00DD, // LATIN CAPITAL LETTER Y WITH ACUTE (Ý) 0x016C, // LATIN CAPITAL LETTER U WITH BREVE 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x0000, 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x013A, // LATIN SMALL LETTER L WITH ACUTE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0103, // LATIN SMALL LETTER A WITH BREVE 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x0000, 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x012F, // LATIN SMALL LETTER I WITH OGONEK 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x0146, // LATIN SMALL LETTER N WITH CEDILLA 0x0000, 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x0000, 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x0173, // LATIN SMALL LETTER U WITH OGONEK 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
173 };
174 
175 //
176 // This table is for region 2
177 //
178 unsigned short region2[128] =
179 {
180  // (0-127 map directly to 0-127 for ASCII)
181  // 128
182  0x0106, // LATIN CAPITAL LETTER C WITH ACUTE
183  0x010C, // LATIN CAPITAL LETTER C WITH CARON
184  0x010E, // LATIN CAPITAL LETTER D WITH CARON
185  0x0104, // LATIN CAPITAL LETTER A WITH OGONEK
186  0x0112, // LATIN CAPITAL LETTER E WITH MACRON
187  0x0116, // LATIN CAPITAL LETTER E WITH DOT ABOVE
188  0x0118, // LATIN CAPITAL LETTER E WITH OGONEK
189  0x0000,
190 
191  // 136
192  0x015A, // LATIN CAPITAL LETTER S WITH ACUTE
193  0x1E2E, // LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE
194  0x013B, // LATIN CAPITAL LETTER L WITH CEDILLA
195  0x0136, // LATIN CAPITAL LETTER K WITH CEDILLA
196  0x016E, // LATIN CAPITAL LETTER U WITH RING ABOVE
197  0x011A, // LATIN CAPITAL LETTER E WITH CARON
198  0x0150, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
199  0x0141, // LATIN CAPITAL LETTER L WITH STROKE
200 
201  // 144
202  0x0000,
203  0x0158, // LATIN CAPITAL LETTER R WITH CARON
204  0x0147, // LATIN CAPITAL LETTER N WITH CARON
205  0x0143, // LATIN CAPITAL LETTER N WITH ACUTE
206  0x0154, // LATIN CAPITAL LETTER R WITH ACUTE
207  0x0160, // LATIN CAPITAL LETTER S WITH CARON (Š)
208  0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA
209  0x201D, // RIGHT DOUBLE QUOTATION MARK
210 
211  // 152
212  0x013D, // LATIN CAPITAL LETTER L WITH CARON
213  0x0164, // LATIN CAPITAL LETTER T WITH CARON
214  0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA
215  0x0122, // LATIN CAPITAL LETTER G WITH CEDILLA
216  0x017D, // LATIN CAPITAL LETTER Z WITH CARON
217  0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE
218  0x0179, // LATIN CAPITAL LETTER Z WITH ACUTE
219  0x012A, // LATIN CAPITAL LETTER I WITH MACRON
220 
221  // 160
222  0x0107, // LATIN SMALL LETTER C WITH ACUTE
223  0x010D, // LATIN SMALL LETTER C WITH CARON
224  0x010F, // LATIN SMALL LETTER D WITH CARON
225  0x0105, // LATIN SMALL LETTER A WITH OGONEK
226  0x0113, // LATIN SMALL LETTER E WITH MACRON
227  0x0117, // LATIN SMALL LETTER E WITH DOT ABOVE
228  0x0119, // LATIN SMALL LETTER E WITH OGONEK
229  0x0000,
230 
231  // 168
232  0x015B, // LATIN SMALL LETTER S WITH ACUTE
233  0x1E2F, // LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE
234  0x013C, // LATIN SMALL LETTER L WITH CEDILLA
235  0x0137, // LATIN SMALL LETTER K WITH CEDILLA
236  0x016F, // LATIN SMALL LETTER U WITH RING ABOVE
237  0x011B, // LATIN SMALL LETTER E WITH CARON
238  0x0151, // LATIN SMALL LETTER O WITH DOUBLE ACUTE
239  0x0142, // LATIN SMALL LETTER L WITH STROKE
240 
241  // 176
242  0x00B0, // DEGREE SIGN (°)
243  0x0159, // LATIN SMALL LETTER R WITH CARON
244  0x0148, // LATIN SMALL LETTER N WITH CARON
245  0x0144, // LATIN SMALL LETTER N WITH ACUTE
246  0x0155, // LATIN SMALL LETTER R WITH ACUTE
247  0x0161, // LATIN SMALL LETTER S WITH CARON (š)
248  0x015F, // LATIN SMALL LETTER S WITH CEDILLA
249  0x2027, // HYPHENATION POINT
250 
251  // 184
252  0x013E, // LATIN SMALL LETTER L WITH CARON
253  0x0165, // LATIN SMALL LETTER T WITH CARON
254  0x0163, // LATIN SMALL LETTER T WITH CEDILLA
255  0x0123, // LATIN SMALL LETTER G WITH CEDILLA
256  0x017E, // LATIN SMALL LETTER Z WITH CARON (ž)
257  0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE
258  0x017A, // LATIN SMALL LETTER Z WITH ACUTE
259  0x012B, // LATIN SMALL LETTER I WITH MACRON
260 
261  // 192
262  0x0000,
263  0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á)
264  0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â)
265  0x0139, // LATIN CAPITAL LETTER L WITH ACUTE
266  0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä)
267  0x0100, // LATIN CAPITAL LETTER A WITH MACRON
268  0x0102, // LATIN CAPITAL LETTER A WITH BREVE (Ã)
269  0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç)
270 
271  // 200
272  0x0000,
273  0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É)
274  0x012E, // LATIN CAPITAL LETTER I WITH OGONEK
275  0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS
276  0x0000,
277  0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE
278  0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX
279  0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS
280 
281  // 208
282  0x00D0, // LATIN CAPITAL LETTER ETH
283  0x0145, // LATIN CAPITAL LETTER N WITH CEDILLA
284  0x0000,
285  0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE
286  0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX
287  0x00D5, // LATIN CAPITAL LETTER O WITH TILDE
288  0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS
289  0x0170, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
290 
291  // 216
292  0x016A, // LATIN CAPITAL LETTER U WITH MACRON
293  0x0000,
294  0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú)
295  0x0172, // LATIN CAPITAL LETTER U WITH OGONEK
296  0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS
297  0x00DD, // LATIN CAPITAL LETTER Y WITH ACUTE (Ý)
298  0x016C, // LATIN CAPITAL LETTER U WITH BREVE
299  0x00DF, // LATIN SMALL LETTER SHARP S (ß)
300 
301  // 224
302  0x0000,
303  0x00E1, // LATIN SMALL LETTER A WITH ACUTE
304  0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX
305  0x013A, // LATIN SMALL LETTER L WITH ACUTE
306  0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS
307  0x0101, // LATIN SMALL LETTER A WITH MACRON
308  0x0103, // LATIN SMALL LETTER A WITH BREVE
309  0x00E7, // LATIN SMALL LETTER C WITH CEDILLA
310 
311  // 232
312  0x0000,
313  0x00E9, // LATIN SMALL LETTER E WITH ACUTE
314  0x012F, // LATIN SMALL LETTER I WITH OGONEK
315  0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x0146, // LATIN SMALL LETTER N WITH CEDILLA 0x0000, 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x0000, 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x0173, // LATIN SMALL LETTER U WITH OGONEK 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
316  0x0000,
317  0x00ED, // LATIN SMALL LETTER I WITH ACUTE
318  0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX
319  0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS
320 
321  // 240
322  0x0111, // LATIN SMALL LETTER D WITH STROKE- ANSI has 00F0 LATIN SMALL LETTER ETH (ð) 0x0146, // LATIN SMALL LETTER N WITH CEDILLA 0x0000, 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x0000, 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x0173, // LATIN SMALL LETTER U WITH OGONEK 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
323  0x0146, // LATIN SMALL LETTER N WITH CEDILLA
324  0x0000,
325  0x00F3, // SMALL LETTER O WITH ACUTE
326  0x00F4, // SMALL LETTER O WITH CIRCUMFLEX
327  0x00F5, // SMALL LETTER O WITH TILDE
328  0x00F6, // SMALL LETTER O WITH DIAERESIS
329  0x0171, // LATIN SMALL LETTER U WITH DOUBLE ACUTE
330 
331  // 248
332  0x016B, // LATIN SMALL LETTER U WITH MACRON
333  0x0000,
334  0x00FA, // LATIN SMALL LETTER U WITH ACUTE
335  0x0173, // LATIN SMALL LETTER U WITH OGONEK
336  0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
337  0x00FD, // LATIN SMALL LETTER Y WITH ACUTE (ý) 0x016D, // LATIN SMALL LETTER U WITH BREVE 0x0000 }; // // This table is for region 3 // unsigned short region3[128] = { // (0-127 map directly to 0-127 for ASCII) // 128 0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE 0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW 0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA 0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW 0x0112, // LATIN CAPITAL LETTER E WITH MACRON 0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE 0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0152, // LATIN CAPITAL LIGATURE OE // 136 0x0000, 0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE 0x0000, 0x011E, // LATIN CAPITAL LETTER G WITH BREVE 0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x201B, // SINGLE REVERSED COMMA QUOTATION MARK // 144 0x0000, 0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA 0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0126, // LATIN CAPITAL LETTER H WITH STROKE 0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW 0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA 0x201D, // RIGHT DOUBLE QUOTATION MARK // 152 0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW 0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA 0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW 0x012A, // LATIN CAPITAL LETTER I WITH MACRON // 160 0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE 0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW 0x1E11, // LATIN SMALL LETTER D WITH CEDILLA 0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW 0x0113, // LATIN SMALL LETTER E WITH MACRON 0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE 0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!) 0x0153, // LATIN SMALL LIGATURE OE // 168 0x0000, 0x0131, // LATIN SMALL LETTER DOTLESS I 0x0000, 0x011F, // LATIN SMALL LETTER G WITH BREVE 0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW 0x0000, 0x0000, 0x2018, // LEFT SINGLE QUOTATION MARK (‘) // 176 0x00B0, // DEGREE SIGN (°) 0x1E29, // LATIN SMALL LETTER H WITH CEDILLA 0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!) 0x0000, 0x0127, // LATIN SMALL LETTER H WITH STROKE 0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW 0x015F, // LATIN SMALL LETTER S WITH CEDILLA 0x2027, // HYPHENATION POINT // 184 0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX 0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW 0x0163, // LATIN SMALL LETTER T WITH CEDILLA 0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!) 0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!) 0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE 0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW 0x012B, // LATIN SMALL LETTER I WITH MACRON // 192 0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À) 0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á) 0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â) 0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã) 0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä) 0x0100, // LATIN CAPITAL LETTER A WITH MACRON 0x0000, 0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç) // 200 0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È) 0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É) 0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS 0x0000, 0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE 0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS // 208 0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!) 0x00D1, // LATIN CAPITAL LETTER N WITH TILDE 0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE 0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE 0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x00D5, // LATIN CAPITAL LETTER O WITH TILDE 0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS 0x0000, // 216 0x016A, // LATIN CAPITAL LETTER U WITH MACRON 0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù) 0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú) 0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS 0x0000, 0x0000, 0x00DF, // LATIN SMALL LETTER SHARP S (ß) // 224 0x00E0, // LATIN SMALL LETTER A WITH GRAVE 0x00E1, // LATIN SMALL LETTER A WITH ACUTE 0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX 0x00E3, // LATIN SMALL LETTER A WITH TILDE 0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS 0x0101, // LATIN SMALL LETTER A WITH MACRON 0x0000, 0x00E7, // LATIN SMALL LETTER C WITH CEDILLA // 232 0x00E8, // LATIN SMALL LETTER E WITH GRAVE 0x00E9, // LATIN SMALL LETTER E WITH ACUTE 0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX 0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
338  0x016D, // LATIN SMALL LETTER U WITH BREVE
339  0x0000
340 };
341 
342 //
343 // This table is for region 3
344 //
345 unsigned short region3[128] =
346 {
347  // (0-127 map directly to 0-127 for ASCII)
348  // 128
349  0x010A, // LATIN CAPITAL LETTER C WITH DOT ABOVE
350  0x1E0C, // LATIN CAPITAL LETTER D WITH DOT BELOW
351  0x1E10, // LATIN CAPITAL LETTER D WITH CEDILLA
352  0x1E0E, // LATIN CAPITAL LETTER D WITH LINE BELOW
353  0x0112, // LATIN CAPITAL LETTER E WITH MACRON
354  0x0120, // LATIN CAPITAL LETTER G WITH DOT ABOVE
355  0x0, // LATIN CAPITAL LETTER S WITH MACRON (can't find Unicode char!!!)
356  0x0152, // LATIN CAPITAL LIGATURE OE
357 
358  // 136
359  0x0000,
360  0x0130, // LATIN CAPITAL LETTER I WITH DOT ABOVE
361  0x0000,
362  0x011E, // LATIN CAPITAL LETTER G WITH BREVE
363  0x1E24, // LATIN CAPITAL LETTER H WITH DOT BELOW
364  0x0000,
365  0x0000,
366  0x201B, // SINGLE REVERSED COMMA QUOTATION MARK
367 
368  // 144
369  0x0000,
370  0x1E28, // LATIN CAPITAL LETTER H WITH CEDILLA
371  0x0, // LATIN CAPITAL LETTER H WITH LINE BELOW (can't find Unicode char!!!)
372  0x0000,
373  0x0126, // LATIN CAPITAL LETTER H WITH STROKE
374  0x1E62, // LATIN CAPITAL LETTER S WITH DOT BELOW
375  0x015E, // LATIN CAPITAL LETTER S WITH CEDILLA
376  0x201D, // RIGHT DOUBLE QUOTATION MARK
377 
378  // 152
379  0x0174, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX
380  0x1E6C, // LATIN CAPITAL LETTER T WITH DOT BELOW
381  0x0162, // LATIN CAPITAL LETTER T WITH CEDILLA
382  0x0, // LATIN CAPITAL LETTER Z WITH CEDILLA (can't find Unicode char!!!)
383  0x0, // LATIN CAPITAL LETTER Z WITH MACRON (can't find Unicode char!!!)
384  0x017B, // LATIN CAPITAL LETTER Z WITH DOT ABOVE
385  0x1E94, // LATIN CAPITAL LETTER Z WITH LINE BELOW
386  0x012A, // LATIN CAPITAL LETTER I WITH MACRON
387 
388  // 160
389  0x010B, // LATIN SMALL LETTER C WITH DOT ABOVE
390  0x1E0D, // LATIN SMALL LETTER D WITH DOT BELOW
391  0x1E11, // LATIN SMALL LETTER D WITH CEDILLA
392  0x1E0F, // LATIN SMALL LETTER D WITH LINE BELOW
393  0x0113, // LATIN SMALL LETTER E WITH MACRON
394  0x0121, // LATIN SMALL LETTER G WITH DOT ABOVE
395  0x0, // LATIN SMALL LETTER S WITH MACRON (can't find Unicode char!!!)
396  0x0153, // LATIN SMALL LIGATURE OE
397 
398  // 168
399  0x0000,
400  0x0131, // LATIN SMALL LETTER DOTLESS I
401  0x0000,
402  0x011F, // LATIN SMALL LETTER G WITH BREVE
403  0x1E25, // LATIN SMALL LETTER H WITH DOT BELOW
404  0x0000,
405  0x0000,
406  0x2018, // LEFT SINGLE QUOTATION MARK (‘)
407 
408  // 176
409  0x00B0, // DEGREE SIGN (°)
410  0x1E29, // LATIN SMALL LETTER H WITH CEDILLA
411  0x0, // LATIN SMALL LETTER H WITH LINE BELOW (can't find Unicode char!!!)
412  0x0000,
413  0x0127, // LATIN SMALL LETTER H WITH STROKE
414  0x1E63, // LATIN SMALL LETTER S WITH DOT BELOW
415  0x015F, // LATIN SMALL LETTER S WITH CEDILLA
416  0x2027, // HYPHENATION POINT
417 
418  // 184
419  0x0175, // LATIN SMALL LETTER W WITH CIRCUMFLEX
420  0x1E6D, // LATIN SMALL LETTER T WITH DOT BELOW
421  0x0163, // LATIN SMALL LETTER T WITH CEDILLA
422  0x0, // LATIN SMALL LETTER Z WITH CEDILLA (can't find Unicode char!!!)
423  0x0, // LATIN SMALL LETTER Z WITH MACRON (can't find Unicode char!!!)
424  0x017C, // LATIN SMALL LETTER Z WITH DOT ABOVE
425  0x1E95, // LATIN SMALL LETTER Z WITH LINE BELOW
426  0x012B, // LATIN SMALL LETTER I WITH MACRON
427 
428  // 192
429  0x00C0, // LATIN CAPITAL LETTER A WITH GRAVE (À)
430  0x00C1, // LATIN CAPITAL LETTER A WITH ACUTE (Á)
431  0x00C2, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Â)
432  0x00C3, // LATIN CAPITAL LETTER A WITH TILDE (Ã)
433  0x00C4, // LATIN CAPITAL LETTER A WITH DIAERESIS (Ä)
434  0x0100, // LATIN CAPITAL LETTER A WITH MACRON
435  0x0000,
436  0x00C7, // LATIN CAPITAL LETTER C WITH CEDILLA (Ç)
437 
438  // 200
439  0x00C8, // LATIN CAPITAL LETTER E WITH GRAVE (È)
440  0x00C9, // LATIN CAPITAL LETTER E WITH ACUTE (É)
441  0x00CA, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX
442  0x00CB, // LATIN CAPITAL LETTER E WITH DIAERESIS
443  0x0000,
444  0x00CD, // LATIN CAPITAL LETTER I WITH ACUTE
445  0x00CE, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX
446  0x00CF, // LATIN CAPITAL LETTER I WITH DIAERESIS
447 
448  // 208
449  0x0, // LATIN CAPITAL LETTER N WITH DIARESIS (can't find Unicode char!!!)
450  0x00D1, // LATIN CAPITAL LETTER N WITH TILDE
451  0x00D2, // LATIN CAPITAL LETTER O WITH GRAVE
452  0x00D3, // LATIN CAPITAL LETTER O WITH ACUTE
453  0x00D4, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX
454  0x00D5, // LATIN CAPITAL LETTER O WITH TILDE
455  0x00D6, // LATIN CAPITAL LETTER O WITH DIAERESIS
456  0x0000,
457 
458  // 216
459  0x016A, // LATIN CAPITAL LETTER U WITH MACRON
460  0x00D9, // LATIN CAPITAL LETTER U WITH GRAVE (Ù)
461  0x00DA, // LATIN CAPITAL LETTER U WITH ACUTE (Ú)
462  0x00DB, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX
463  0x00DC, // LATIN CAPITAL LETTER U WITH DIAERESIS
464  0x0000,
465  0x0000,
466  0x00DF, // LATIN SMALL LETTER SHARP S (ß)
467 
468  // 224
469  0x00E0, // LATIN SMALL LETTER A WITH GRAVE
470  0x00E1, // LATIN SMALL LETTER A WITH ACUTE
471  0x00E2, // LATIN SMALL LETTER A WITH CIRCUMFLEX
472  0x00E3, // LATIN SMALL LETTER A WITH TILDE
473  0x00E4, // LATIN SMALL LETTER A WITH DIAERESIS
474  0x0101, // LATIN SMALL LETTER A WITH MACRON
475  0x0000,
476  0x00E7, // LATIN SMALL LETTER C WITH CEDILLA
477 
478  // 232
479  0x00E8, // LATIN SMALL LETTER E WITH GRAVE
480  0x00E9, // LATIN SMALL LETTER E WITH ACUTE
481  0x00EA, // LATIN SMALL LETTER E WITH CIRCUMFLEX
482  0x00EB, // LATIN SMALL LETTER E WITH DIAERESIS (ë) 0x0000, 0x00ED, // LATIN SMALL LETTER I WITH ACUTE 0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX 0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS // 240 0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!) 0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
483  0x0000,
484  0x00ED, // LATIN SMALL LETTER I WITH ACUTE
485  0x00EE, // LATIN SMALL LETTER I WITH CIRCUMFLEX
486  0x00EF, // LATIN SMALL LETTER I WITH DIAERESIS
487 
488  // 240
489  0x0, // LATIN SMALL LETTER N DIARESIS (can't find Unicode char !!!)
490  0x00F1, // LATIN SMALL LETTER N WITH TILDE (ñ) 0x00F2, // SMALL LETTER O WITH GRAVE 0x00F3, // SMALL LETTER O WITH ACUTE 0x00F4, // SMALL LETTER O WITH CIRCUMFLEX 0x00F5, // SMALL LETTER O WITH TILDE 0x00F6, // SMALL LETTER O WITH DIAERESIS 0x0000, // 248 0x016B, // LATIN SMALL LETTER U WITH MACRON 0x00F9, // LATIN SMALL LETTER U WITH GRAVE 0x00FA, // LATIN SMALL LETTER U WITH ACUTE 0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX 0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
491  0x00F2, // SMALL LETTER O WITH GRAVE
492  0x00F3, // SMALL LETTER O WITH ACUTE
493  0x00F4, // SMALL LETTER O WITH CIRCUMFLEX
494  0x00F5, // SMALL LETTER O WITH TILDE
495  0x00F6, // SMALL LETTER O WITH DIAERESIS
496  0x0000,
497 
498  // 248
499  0x016B, // LATIN SMALL LETTER U WITH MACRON
500  0x00F9, // LATIN SMALL LETTER U WITH GRAVE
501  0x00FA, // LATIN SMALL LETTER U WITH ACUTE
502  0x00FB, // LATIN SMALL LETTER U WITH CIRCUMFLEX
503  0x00FC, // LATIN SMALL LETTER U WITH DIAERESIS (ü) 0x0000, 0x0000, 0x0000 };
504  0x0000,
505  0x0000,
506  0x0000
507 };
508