xref: /reactos/sdk/tools/unicode/c_1258.c (revision c7bba39a)
1 /* code page 1258 (ANSI/OEM Viet Nam) */
2 /* generated from http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WindowsBestFit/bestfit1258.txt */
3 /* DO NOT EDIT!! */
4 
5 #include "wine/unicode.h"
6 
7 static const WCHAR cp2uni[256] =
8 {
9     0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
10     0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
11     0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
12     0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
13     0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
14     0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
15     0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
16     0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
17     0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
18     0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
19     0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
20     0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
21     0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
22     0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
23     0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
24     0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
25     0x20ac, 0x0081, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
26     0x02c6, 0x2030, 0x008a, 0x2039, 0x0152, 0x008d, 0x008e, 0x008f,
27     0x0090, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
28     0x02dc, 0x2122, 0x009a, 0x203a, 0x0153, 0x009d, 0x009e, 0x0178,
29     0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
30     0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
31     0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
32     0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
33     0x00c0, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
34     0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x0300, 0x00cd, 0x00ce, 0x00cf,
35     0x0110, 0x00d1, 0x0309, 0x00d3, 0x00d4, 0x01a0, 0x00d6, 0x00d7,
36     0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x01af, 0x0303, 0x00df,
37     0x00e0, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
38     0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x0301, 0x00ed, 0x00ee, 0x00ef,
39     0x0111, 0x00f1, 0x0323, 0x00f3, 0x00f4, 0x01a1, 0x00f6, 0x00f7,
40     0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x01b0, 0x20ab, 0x00ff
41 };
42 
43 static const unsigned char uni2cp_low[2010] =
44 {
45     /* 0x0000 .. 0x00ff */
46     0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
47     0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
48     0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
49     0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
50     0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
51     0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
52     0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
53     0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
54     0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
55     0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
56     0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
57     0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
58     0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
59     0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
60     0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
61     0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
62     0x3f, 0x81, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
63     0x3f, 0x3f, 0x8a, 0x3f, 0x3f, 0x8d, 0x8e, 0x8f,
64     0x90, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
65     0x3f, 0x3f, 0x9a, 0x3f, 0x3f, 0x9d, 0x9e, 0x3f,
66     0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
67     0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
68     0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
69     0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
70     0xc0, 0xc1, 0xc2, 0x3f, 0xc4, 0xc5, 0xc6, 0xc7,
71     0xc8, 0xc9, 0xca, 0xcb, 0x3f, 0xcd, 0xce, 0xcf,
72     0x3f, 0xd1, 0x3f, 0xd3, 0xd4, 0x3f, 0xd6, 0xd7,
73     0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0x3f, 0x3f, 0xdf,
74     0xe0, 0xe1, 0xe2, 0x3f, 0xe4, 0xe5, 0xe6, 0xe7,
75     0xe8, 0xe9, 0xea, 0xeb, 0x3f, 0xed, 0xee, 0xef,
76     0x3f, 0xf1, 0x3f, 0xf3, 0xf4, 0x3f, 0xf6, 0xf7,
77     0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0x3f, 0x3f, 0xff,
78     /* 0x0100 .. 0x01ff */
79     0x3f, 0x3f, 0xc3, 0xe3, 0x3f, 0x3f, 0x3f, 0x3f,
80     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
81     0xd0, 0xf0, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
82     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
83     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
84     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
85     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
86     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
87     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
88     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
89     0x3f, 0x3f, 0x8c, 0x9c, 0x3f, 0x3f, 0x3f, 0x3f,
90     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
91     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
92     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
93     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
94     0x9f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
95     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
96     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
97     0x3f, 0x3f, 0x83, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
98     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
99     0xd5, 0xf5, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
100     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0xdd,
101     0xfd, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
102     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
103     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
104     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
105     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
106     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
107     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
108     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
109     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
110     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
111     /* 0x024f .. 0x02ff */
112     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
113     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
114     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
115     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
116     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
117     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
118     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
119     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
120     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
121     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
122     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
123     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
124     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
125     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
126     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x88,
127     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
128     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
129     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x98, 0x3f, 0x3f,
130     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
131     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
132     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
133     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
134     0x3f,
135     /* 0x0300 .. 0x03ff */
136     0xcc, 0xec, 0x3f, 0xde, 0x3f, 0x3f, 0x3f, 0x3f,
137     0x3f, 0xd2, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
138     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
139     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
140     0x3f, 0x3f, 0x3f, 0xf2, 0x3f, 0x3f, 0x3f, 0x3f,
141     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
142     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
143     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
144     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
145     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
146     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
147     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
148     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
149     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
150     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
151     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
152     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
153     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
154     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
155     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
156     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
157     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
158     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
159     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
160     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
161     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
162     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
163     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
164     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
165     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
166     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
167     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
168     /* 0x2013 .. 0x20ff */
169     0x96, 0x97, 0x3f, 0x3f, 0x3f, 0x91, 0x92, 0x82,
170     0x3f, 0x93, 0x94, 0x84, 0x3f, 0x86, 0x87, 0x95,
171     0x3f, 0x3f, 0x3f, 0x85, 0x3f, 0x3f, 0x3f, 0x3f,
172     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x89, 0x3f, 0x3f,
173     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x8b, 0x9b,
174     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
175     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
176     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
177     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
178     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
179     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
180     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
181     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
182     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
183     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
184     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
185     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
186     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
187     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
188     0xfe, 0x80, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
189     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
190     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
191     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
192     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
193     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
194     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
195     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
196     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
197     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
198     0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
199     /* 0x2122 .. 0x21ff */
200     0x99, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
201     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
202     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
203     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
204     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
205     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
206     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
207     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
208     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
209     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
210     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
211     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
212     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
213     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
214     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
215     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
216     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
217     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
218     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
219     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
220     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
221     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
222     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
223     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
224     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
225     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
226     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
227     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
228     /* 0xff01 .. 0xffff */
229     0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
230     0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
231     0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
232     0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40,
233     0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48,
234     0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50,
235     0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,
236     0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60,
237     0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68,
238     0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70,
239     0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78,
240     0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x3f, 0x3f,
241     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
242     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
243     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
244     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
245     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
246     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
247     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
248     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
249     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
250     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
251     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
252     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
253     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
254     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
255     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
256     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
257     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
258     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
259     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
260     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
261     /* defaults */
262     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
263     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
264     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
265     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
266     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
267     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
268     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
269     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
270     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
271     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
272     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
273     0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f
274 };
275 
276 static const unsigned short uni2cp_high[256] =
277 {
278     0x0000, 0x0100, 0x01b1, 0x02b1, 0x05da, 0x05da, 0x05da, 0x05da,
279     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
280     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
281     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
282     0x039e, 0x047c, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
283     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
284     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
285     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
286     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
287     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
288     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
289     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
290     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
291     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
292     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
293     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
294     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
295     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
296     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
297     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
298     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
299     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
300     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
301     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
302     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
303     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
304     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
305     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
306     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
307     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
308     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da,
309     0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x05da, 0x057b
310 };
311 
312 const struct sbcs_table DECLSPEC_HIDDEN cptable_1258 =
313 {
314     { 1258, 1, 0x003f, 0x003f, "ANSI/OEM Viet Nam" },
315     cp2uni,
316     cp2uni,
317     uni2cp_low,
318     uni2cp_high
319 };
320