1 /* ex: set ro ft=c: -*- mode: c; buffer-read-only: t -*- */
2 // Copyright (C) 2023 Free Software Foundation, Inc.
3 // This file is part of LibreDWG.
4 // Generated by txt2h.pl.
5
6 #include <stdint.h>
7
8 static const uint16_t cptbl_cp864[] = {
9 /*[0x0] = */254, // size of vector
10 /*[0x1] = */1,
11 /*[0x2] = */2,
12 /*[0x3] = */3,
13 /*[0x4] = */4,
14 /*[0x5] = */5,
15 /*[0x6] = */6,
16 /*[0x7] = */7,
17 /*[0x8] = */8,
18 /*[0x9] = */9,
19 /*[0xa] = */10,
20 /*[0xb] = */11,
21 /*[0xc] = */12,
22 /*[0xd] = */13,
23 /*[0xe] = */14,
24 /*[0xf] = */15,
25 /*[0x10] = */16,
26 /*[0x11] = */17,
27 /*[0x12] = */18,
28 /*[0x13] = */19,
29 /*[0x14] = */20,
30 /*[0x15] = */21,
31 /*[0x16] = */22,
32 /*[0x17] = */23,
33 /*[0x18] = */24,
34 /*[0x19] = */25,
35 /*[0x1a] = */26,
36 /*[0x1b] = */27,
37 /*[0x1c] = */28,
38 /*[0x1d] = */29,
39 /*[0x1e] = */30,
40 /*[0x1f] = */31,
41 /*[0x20] = */32,
42 /*[0x21] = */33,
43 /*[0x22] = */34,
44 /*[0x23] = */35,
45 /*[0x24] = */36,
46 /*[0x25] = */0x066a, // ARABIC PERCENT SIGN
47 /*[0x26] = */38,
48 /*[0x27] = */39,
49 /*[0x28] = */40,
50 /*[0x29] = */41,
51 /*[0x2a] = */42,
52 /*[0x2b] = */43,
53 /*[0x2c] = */44,
54 /*[0x2d] = */45,
55 /*[0x2e] = */46,
56 /*[0x2f] = */47,
57 /*[0x30] = */48,
58 /*[0x31] = */49,
59 /*[0x32] = */50,
60 /*[0x33] = */51,
61 /*[0x34] = */52,
62 /*[0x35] = */53,
63 /*[0x36] = */54,
64 /*[0x37] = */55,
65 /*[0x38] = */56,
66 /*[0x39] = */57,
67 /*[0x3a] = */58,
68 /*[0x3b] = */59,
69 /*[0x3c] = */60,
70 /*[0x3d] = */61,
71 /*[0x3e] = */62,
72 /*[0x3f] = */63,
73 /*[0x40] = */64,
74 /*[0x41] = */65,
75 /*[0x42] = */66,
76 /*[0x43] = */67,
77 /*[0x44] = */68,
78 /*[0x45] = */69,
79 /*[0x46] = */70,
80 /*[0x47] = */71,
81 /*[0x48] = */72,
82 /*[0x49] = */73,
83 /*[0x4a] = */74,
84 /*[0x4b] = */75,
85 /*[0x4c] = */76,
86 /*[0x4d] = */77,
87 /*[0x4e] = */78,
88 /*[0x4f] = */79,
89 /*[0x50] = */80,
90 /*[0x51] = */81,
91 /*[0x52] = */82,
92 /*[0x53] = */83,
93 /*[0x54] = */84,
94 /*[0x55] = */85,
95 /*[0x56] = */86,
96 /*[0x57] = */87,
97 /*[0x58] = */88,
98 /*[0x59] = */89,
99 /*[0x5a] = */90,
100 /*[0x5b] = */91,
101 /*[0x5c] = */92,
102 /*[0x5d] = */93,
103 /*[0x5e] = */94,
104 /*[0x5f] = */95,
105 /*[0x60] = */96,
106 /*[0x61] = */97,
107 /*[0x62] = */98,
108 /*[0x63] = */99,
109 /*[0x64] = */100,
110 /*[0x65] = */101,
111 /*[0x66] = */102,
112 /*[0x67] = */103,
113 /*[0x68] = */104,
114 /*[0x69] = */105,
115 /*[0x6a] = */106,
116 /*[0x6b] = */107,
117 /*[0x6c] = */108,
118 /*[0x6d] = */109,
119 /*[0x6e] = */110,
120 /*[0x6f] = */111,
121 /*[0x70] = */112,
122 /*[0x71] = */113,
123 /*[0x72] = */114,
124 /*[0x73] = */115,
125 /*[0x74] = */116,
126 /*[0x75] = */117,
127 /*[0x76] = */118,
128 /*[0x77] = */119,
129 /*[0x78] = */120,
130 /*[0x79] = */121,
131 /*[0x7a] = */122,
132 /*[0x7b] = */123,
133 /*[0x7c] = */124,
134 /*[0x7d] = */125,
135 /*[0x7e] = */126,
136 /*[0x7f] = */0,
137 /*[0x80] = */0x00b0, // DEGREE SIGN
138 /*[0x81] = */0x00b7, // MIDDLE DOT
139 /*[0x82] = */0x2219, // BULLET OPERATOR
140 /*[0x83] = */0x221a, // SQUARE ROOT
141 /*[0x84] = */0x2592, // MEDIUM SHADE
142 /*[0x85] = */0x2500, // FORMS LIGHT HORIZONTAL
143 /*[0x86] = */0x2502, // FORMS LIGHT VERTICAL
144 /*[0x87] = */0x253c, // FORMS LIGHT VERTICAL AND HORIZONTAL
145 /*[0x88] = */0x2524, // FORMS LIGHT VERTICAL AND LEFT
146 /*[0x89] = */0x252c, // FORMS LIGHT DOWN AND HORIZONTAL
147 /*[0x8a] = */0x251c, // FORMS LIGHT VERTICAL AND RIGHT
148 /*[0x8b] = */0x2534, // FORMS LIGHT UP AND HORIZONTAL
149 /*[0x8c] = */0x2510, // FORMS LIGHT DOWN AND LEFT
150 /*[0x8d] = */0x250c, // FORMS LIGHT DOWN AND RIGHT
151 /*[0x8e] = */0x2514, // FORMS LIGHT UP AND RIGHT
152 /*[0x8f] = */0x2518, // FORMS LIGHT UP AND LEFT
153 /*[0x90] = */0x03b2, // GREEK SMALL BETA
154 /*[0x91] = */0x221e, // INFINITY
155 /*[0x92] = */0x03c6, // GREEK SMALL PHI
156 /*[0x93] = */0x00b1, // PLUS-OR-MINUS SIGN
157 /*[0x94] = */0x00bd, // FRACTION 1/2
158 /*[0x95] = */0x00bc, // FRACTION 1/4
159 /*[0x96] = */0x2248, // ALMOST EQUAL TO
160 /*[0x97] = */0x00ab, // LEFT POINTING GUILLEMET
161 /*[0x98] = */0x00bb, // RIGHT POINTING GUILLEMET
162 /*[0x99] = */0xfef7, // ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM
163 /*[0x9a] = */0xfef8, // ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM
164 /*[0x9b] = */0,
165 /*[0x9c] = */0,
166 /*[0x9d] = */0xfefb, // ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM
167 /*[0x9e] = */0xfefc, // ARABIC LIGATURE LAM WITH ALEF FINAL FORM
168 /*[0x9f] = */0,
169 /*[0xa0] = */0x00a0, // NON-BREAKING SPACE
170 /*[0xa1] = */0x00ad, // SOFT HYPHEN
171 /*[0xa2] = */0xfe82, // ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM
172 /*[0xa3] = */0x00a3, // POUND SIGN
173 /*[0xa4] = */0x00a4, // CURRENCY SIGN
174 /*[0xa5] = */0xfe84, // ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM
175 /*[0xa6] = */0,
176 /*[0xa7] = */0,
177 /*[0xa8] = */0xfe8e, // ARABIC LETTER ALEF FINAL FORM
178 /*[0xa9] = */0xfe8f, // ARABIC LETTER BEH ISOLATED FORM
179 /*[0xaa] = */0xfe95, // ARABIC LETTER TEH ISOLATED FORM
180 /*[0xab] = */0xfe99, // ARABIC LETTER THEH ISOLATED FORM
181 /*[0xac] = */0x060c, // ARABIC COMMA
182 /*[0xad] = */0xfe9d, // ARABIC LETTER JEEM ISOLATED FORM
183 /*[0xae] = */0xfea1, // ARABIC LETTER HAH ISOLATED FORM
184 /*[0xaf] = */0xfea5, // ARABIC LETTER KHAH ISOLATED FORM
185 /*[0xb0] = */0x0660, // ARABIC-INDIC DIGIT ZERO
186 /*[0xb1] = */0x0661, // ARABIC-INDIC DIGIT ONE
187 /*[0xb2] = */0x0662, // ARABIC-INDIC DIGIT TWO
188 /*[0xb3] = */0x0663, // ARABIC-INDIC DIGIT THREE
189 /*[0xb4] = */0x0664, // ARABIC-INDIC DIGIT FOUR
190 /*[0xb5] = */0x0665, // ARABIC-INDIC DIGIT FIVE
191 /*[0xb6] = */0x0666, // ARABIC-INDIC DIGIT SIX
192 /*[0xb7] = */0x0667, // ARABIC-INDIC DIGIT SEVEN
193 /*[0xb8] = */0x0668, // ARABIC-INDIC DIGIT EIGHT
194 /*[0xb9] = */0x0669, // ARABIC-INDIC DIGIT NINE
195 /*[0xba] = */0xfed1, // ARABIC LETTER FEH ISOLATED FORM
196 /*[0xbb] = */0x061b, // ARABIC SEMICOLON
197 /*[0xbc] = */0xfeb1, // ARABIC LETTER SEEN ISOLATED FORM
198 /*[0xbd] = */0xfeb5, // ARABIC LETTER SHEEN ISOLATED FORM
199 /*[0xbe] = */0xfeb9, // ARABIC LETTER SAD ISOLATED FORM
200 /*[0xbf] = */0x061f, // ARABIC QUESTION MARK
201 /*[0xc0] = */0x00a2, // CENT SIGN
202 /*[0xc1] = */0xfe80, // ARABIC LETTER HAMZA ISOLATED FORM
203 /*[0xc2] = */0xfe81, // ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM
204 /*[0xc3] = */0xfe83, // ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM
205 /*[0xc4] = */0xfe85, // ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM
206 /*[0xc5] = */0xfeca, // ARABIC LETTER AIN FINAL FORM
207 /*[0xc6] = */0xfe8b, // ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM
208 /*[0xc7] = */0xfe8d, // ARABIC LETTER ALEF ISOLATED FORM
209 /*[0xc8] = */0xfe91, // ARABIC LETTER BEH INITIAL FORM
210 /*[0xc9] = */0xfe93, // ARABIC LETTER TEH MARBUTA ISOLATED FORM
211 /*[0xca] = */0xfe97, // ARABIC LETTER TEH INITIAL FORM
212 /*[0xcb] = */0xfe9b, // ARABIC LETTER THEH INITIAL FORM
213 /*[0xcc] = */0xfe9f, // ARABIC LETTER JEEM INITIAL FORM
214 /*[0xcd] = */0xfea3, // ARABIC LETTER HAH INITIAL FORM
215 /*[0xce] = */0xfea7, // ARABIC LETTER KHAH INITIAL FORM
216 /*[0xcf] = */0xfea9, // ARABIC LETTER DAL ISOLATED FORM
217 /*[0xd0] = */0xfeab, // ARABIC LETTER THAL ISOLATED FORM
218 /*[0xd1] = */0xfead, // ARABIC LETTER REH ISOLATED FORM
219 /*[0xd2] = */0xfeaf, // ARABIC LETTER ZAIN ISOLATED FORM
220 /*[0xd3] = */0xfeb3, // ARABIC LETTER SEEN INITIAL FORM
221 /*[0xd4] = */0xfeb7, // ARABIC LETTER SHEEN INITIAL FORM
222 /*[0xd5] = */0xfebb, // ARABIC LETTER SAD INITIAL FORM
223 /*[0xd6] = */0xfebf, // ARABIC LETTER DAD INITIAL FORM
224 /*[0xd7] = */0xfec1, // ARABIC LETTER TAH ISOLATED FORM
225 /*[0xd8] = */0xfec5, // ARABIC LETTER ZAH ISOLATED FORM
226 /*[0xd9] = */0xfecb, // ARABIC LETTER AIN INITIAL FORM
227 /*[0xda] = */0xfecf, // ARABIC LETTER GHAIN INITIAL FORM
228 /*[0xdb] = */0x00a6, // BROKEN VERTICAL BAR
229 /*[0xdc] = */0x00ac, // NOT SIGN
230 /*[0xdd] = */0x00f7, // DIVISION SIGN
231 /*[0xde] = */0x00d7, // MULTIPLICATION SIGN
232 /*[0xdf] = */0xfec9, // ARABIC LETTER AIN ISOLATED FORM
233 /*[0xe0] = */0x0640, // ARABIC TATWEEL
234 /*[0xe1] = */0xfed3, // ARABIC LETTER FEH INITIAL FORM
235 /*[0xe2] = */0xfed7, // ARABIC LETTER QAF INITIAL FORM
236 /*[0xe3] = */0xfedb, // ARABIC LETTER KAF INITIAL FORM
237 /*[0xe4] = */0xfedf, // ARABIC LETTER LAM INITIAL FORM
238 /*[0xe5] = */0xfee3, // ARABIC LETTER MEEM INITIAL FORM
239 /*[0xe6] = */0xfee7, // ARABIC LETTER NOON INITIAL FORM
240 /*[0xe7] = */0xfeeb, // ARABIC LETTER HEH INITIAL FORM
241 /*[0xe8] = */0xfeed, // ARABIC LETTER WAW ISOLATED FORM
242 /*[0xe9] = */0xfeef, // ARABIC LETTER ALEF MAKSURA ISOLATED FORM
243 /*[0xea] = */0xfef3, // ARABIC LETTER YEH INITIAL FORM
244 /*[0xeb] = */0xfebd, // ARABIC LETTER DAD ISOLATED FORM
245 /*[0xec] = */0xfecc, // ARABIC LETTER AIN MEDIAL FORM
246 /*[0xed] = */0xfece, // ARABIC LETTER GHAIN FINAL FORM
247 /*[0xee] = */0xfecd, // ARABIC LETTER GHAIN ISOLATED FORM
248 /*[0xef] = */0xfee1, // ARABIC LETTER MEEM ISOLATED FORM
249 /*[0xf0] = */0xfe7d, // ARABIC SHADDA MEDIAL FORM
250 /*[0xf1] = */0x0651, // ARABIC SHADDAH
251 /*[0xf2] = */0xfee5, // ARABIC LETTER NOON ISOLATED FORM
252 /*[0xf3] = */0xfee9, // ARABIC LETTER HEH ISOLATED FORM
253 /*[0xf4] = */0xfeec, // ARABIC LETTER HEH MEDIAL FORM
254 /*[0xf5] = */0xfef0, // ARABIC LETTER ALEF MAKSURA FINAL FORM
255 /*[0xf6] = */0xfef2, // ARABIC LETTER YEH FINAL FORM
256 /*[0xf7] = */0xfed0, // ARABIC LETTER GHAIN MEDIAL FORM
257 /*[0xf8] = */0xfed5, // ARABIC LETTER QAF ISOLATED FORM
258 /*[0xf9] = */0xfef5, // ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM
259 /*[0xfa] = */0xfef6, // ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM
260 /*[0xfb] = */0xfedd, // ARABIC LETTER LAM ISOLATED FORM
261 /*[0xfc] = */0xfed9, // ARABIC LETTER KAF ISOLATED FORM
262 /*[0xfd] = */0xfef1, // ARABIC LETTER YEH ISOLATED FORM
263 /*[0xfe] = */0x25a0, // BLACK SQUARE
264 };
265 #define MIN_CP864 0
266 #define MAX_CP864 254
267 #define MIN_CP864_UC 0
268 #define MAX_CP864_UC 65276
269 #if 0
270 static const uint16_t cptbl_exc_cp864[] = {
271 /*[0x25] = */0x066a, // ARABIC PERCENT SIGN
272 };
273 #endif