xref: /aoo42x/main/sal/textenc/tcvtarb1.tab (revision 11594ab6)
1*11594ab6SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3*11594ab6SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4*11594ab6SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5*11594ab6SAndrew Rist * distributed with this work for additional information
6*11594ab6SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7*11594ab6SAndrew Rist * to you under the Apache License, Version 2.0 (the
8*11594ab6SAndrew Rist * "License"); you may not use this file except in compliance
9*11594ab6SAndrew Rist * with the License.  You may obtain a copy of the License at
10*11594ab6SAndrew Rist *
11*11594ab6SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12*11594ab6SAndrew Rist *
13*11594ab6SAndrew Rist * Unless required by applicable law or agreed to in writing,
14*11594ab6SAndrew Rist * software distributed under the License is distributed on an
15*11594ab6SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*11594ab6SAndrew Rist * KIND, either express or implied.  See the License for the
17*11594ab6SAndrew Rist * specific language governing permissions and limitations
18*11594ab6SAndrew Rist * under the License.
19*11594ab6SAndrew Rist *
20*11594ab6SAndrew Rist *************************************************************/
21*11594ab6SAndrew Rist
22*11594ab6SAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweir/* ======================================================================= */
25cdf0e10cSrcweir
26cdf0e10cSrcweir/* This file contain the tables for all 1 byte charsets, for the */
27cdf0e10cSrcweir/* following scripts: arabic, hebrew and other scripts in the arabic region */
28cdf0e10cSrcweir
29cdf0e10cSrcweir/* ======================================================================= */
30cdf0e10cSrcweir
31cdf0e10cSrcweir/* IBM-862 */
32cdf0e10cSrcweir/* Dos Standard CharSet for Hebrew */
33cdf0e10cSrcweir/* 1-Byte, 0x00-0x7F ASCII ohne Ausnahme */
34cdf0e10cSrcweir/* Convert-Tables: mappings/vendors/micsft/pc/cp862.txt from 04/24/96 Version 2.00 */
35cdf0e10cSrcweir/* Last-Changes from us: */
36cdf0e10cSrcweir
37cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
38cdf0e10cSrcweir
39cdf0e10cSrcweir#define IBM862UNI_START                 0x80
40cdf0e10cSrcweir#define IBM862UNI_END                   0xFF
41cdf0e10cSrcweirstatic sal_uInt16 const aImplIBM862ToUniTab[IBM862UNI_END - IBM862UNI_START + 1] =
42cdf0e10cSrcweir{
43cdf0e10cSrcweir/*       0       1       2       3       4       5       6       7 */
44cdf0e10cSrcweir/*       8       9       A       B       C       D       E       F */
45cdf0e10cSrcweir    0x05D0, 0x05D1, 0x05D2, 0x05D3, 0x05D4, 0x05D5, 0x05D6, 0x05D7, /* 0x80 */
46cdf0e10cSrcweir    0x05D8, 0x05D9, 0x05DA, 0x05DB, 0x05DC, 0x05DD, 0x05DE, 0x05DF, /* 0x80 */
47cdf0e10cSrcweir    0x05E0, 0x05E1, 0x05E2, 0x05E3, 0x05E4, 0x05E5, 0x05E6, 0x05E7, /* 0x90 */
48cdf0e10cSrcweir    0x05E8, 0x05E9, 0x05EA, 0x00A2, 0x00A3, 0x00A5, 0x20A7, 0x0192, /* 0x90 */
49cdf0e10cSrcweir    0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x00AA, 0x00BA, /* 0xA0 */
50cdf0e10cSrcweir    0x00BF, 0x2310, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB, /* 0xA0 */
51cdf0e10cSrcweir    0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556, /* 0xB0 */
52cdf0e10cSrcweir    0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510, /* 0xB0 */
53cdf0e10cSrcweir    0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F, /* 0xC0 */
54cdf0e10cSrcweir    0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567, /* 0xC0 */
55cdf0e10cSrcweir    0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B, /* 0xD0 */
56cdf0e10cSrcweir    0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580, /* 0xD0 */
57cdf0e10cSrcweir    0x03B1, 0x00DF, 0x0393, 0x03C0, 0x03A3, 0x03C3, 0x00B5, 0x03C4, /* 0xE0 */
58cdf0e10cSrcweir    0x03A6, 0x0398, 0x03A9, 0x03B4, 0x221E, 0x03C6, 0x03B5, 0x2229, /* 0xE0 */
59cdf0e10cSrcweir    0x2261, 0x00B1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00F7, 0x2248, /* 0xF0 */
60cdf0e10cSrcweir    0x00B0, 0x2219, 0x00B7, 0x221A, 0x207F, 0x00B2, 0x25A0, 0x00A0  /* 0xF0 */
61cdf0e10cSrcweir};
62cdf0e10cSrcweir
63cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
64cdf0e10cSrcweir
65cdf0e10cSrcweir#define IBM862CHAR_START                0x05D0
66cdf0e10cSrcweir#define IBM862CHAR_END                  0x05EA
67cdf0e10cSrcweirstatic sal_uChar const aImplIBM862ToCharTab[IBM862CHAR_END - IBM862CHAR_START + 1] =
68cdf0e10cSrcweir{
69cdf0e10cSrcweir/*     0     1     2     3     4     5     6     7 */
70cdf0e10cSrcweir/*     8     9     A     B     C     D     E     F */
71cdf0e10cSrcweir    0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, /* 0x05D0 */
72cdf0e10cSrcweir    0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, /* 0x05D0 */
73cdf0e10cSrcweir    0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, /* 0x05E0 */
74cdf0e10cSrcweir    0x98, 0x99, 0x9A                                /* 0x05E0 */
75cdf0e10cSrcweir};
76cdf0e10cSrcweir
77cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
78cdf0e10cSrcweir
79cdf0e10cSrcweir#define IBM862TOCHARTABEX_COUNT         101
80cdf0e10cSrcweirstatic ImplUniCharTabData const aImplIBM862ToCharTabEx[IBM862TOCHARTABEX_COUNT] =
81cdf0e10cSrcweir{
82cdf0e10cSrcweir  { 0x00A0, 0xFF, 0 },
83cdf0e10cSrcweir  { 0x00A1, 0xAD, 0 },
84cdf0e10cSrcweir  { 0x00A2, 0x9B, 0 },
85cdf0e10cSrcweir  { 0x00A3, 0x9C, 0 },
86cdf0e10cSrcweir  { 0x00A5, 0x9D, 0 },
87cdf0e10cSrcweir  { 0x00AA, 0xA6, 0 },
88cdf0e10cSrcweir  { 0x00AB, 0xAE, 0 },
89cdf0e10cSrcweir  { 0x00AC, 0xAA, 0 },
90cdf0e10cSrcweir  { 0x00B0, 0xF8, 0 },
91cdf0e10cSrcweir  { 0x00B1, 0xF1, 0 },
92cdf0e10cSrcweir  { 0x00B2, 0xFD, 0 },
93cdf0e10cSrcweir  { 0x00B5, 0xE6, 0 },
94cdf0e10cSrcweir  { 0x00B7, 0xFA, 0 },
95cdf0e10cSrcweir  { 0x00BA, 0xA7, 0 },
96cdf0e10cSrcweir  { 0x00BB, 0xAF, 0 },
97cdf0e10cSrcweir  { 0x00BC, 0xAC, 0 },
98cdf0e10cSrcweir  { 0x00BD, 0xAB, 0 },
99cdf0e10cSrcweir  { 0x00BF, 0xA8, 0 },
100cdf0e10cSrcweir  { 0x00D1, 0xA5, 0 },
101cdf0e10cSrcweir  { 0x00DF, 0xE1, 0 },
102cdf0e10cSrcweir  { 0x00E1, 0xA0, 0 },
103cdf0e10cSrcweir  { 0x00ED, 0xA1, 0 },
104cdf0e10cSrcweir  { 0x00F1, 0xA4, 0 },
105cdf0e10cSrcweir  { 0x00F3, 0xA2, 0 },
106cdf0e10cSrcweir  { 0x00F7, 0xF6, 0 },
107cdf0e10cSrcweir  { 0x00FA, 0xA3, 0 },
108cdf0e10cSrcweir  { 0x0192, 0x9F, 0 },
109cdf0e10cSrcweir  { 0x0393, 0xE2, 0 },
110cdf0e10cSrcweir  { 0x0398, 0xE9, 0 },
111cdf0e10cSrcweir  { 0x03A3, 0xE4, 0 },
112cdf0e10cSrcweir  { 0x03A6, 0xE8, 0 },
113cdf0e10cSrcweir  { 0x03A9, 0xEA, 0 },
114cdf0e10cSrcweir  { 0x03B1, 0xE0, 0 },
115cdf0e10cSrcweir  { 0x03B4, 0xEB, 0 },
116cdf0e10cSrcweir  { 0x03B5, 0xEE, 0 },
117cdf0e10cSrcweir  { 0x03C0, 0xE3, 0 },
118cdf0e10cSrcweir  { 0x03C3, 0xE5, 0 },
119cdf0e10cSrcweir  { 0x03C4, 0xE7, 0 },
120cdf0e10cSrcweir  { 0x03C6, 0xED, 0 },
121cdf0e10cSrcweir  { 0x207F, 0xFC, 0 },
122cdf0e10cSrcweir  { 0x20A7, 0x9E, 0 },
123cdf0e10cSrcweir  { 0x2219, 0xF9, 0 },
124cdf0e10cSrcweir  { 0x221A, 0xFB, 0 },
125cdf0e10cSrcweir  { 0x221E, 0xEC, 0 },
126cdf0e10cSrcweir  { 0x2229, 0xEF, 0 },
127cdf0e10cSrcweir  { 0x2248, 0xF7, 0 },
128cdf0e10cSrcweir  { 0x2261, 0xF0, 0 },
129cdf0e10cSrcweir  { 0x2264, 0xF3, 0 },
130cdf0e10cSrcweir  { 0x2265, 0xF2, 0 },
131cdf0e10cSrcweir  { 0x2310, 0xA9, 0 },
132cdf0e10cSrcweir  { 0x2320, 0xF4, 0 },
133cdf0e10cSrcweir  { 0x2321, 0xF5, 0 },
134cdf0e10cSrcweir  { 0x2500, 0xC4, 0 },
135cdf0e10cSrcweir  { 0x2502, 0xB3, 0 },
136cdf0e10cSrcweir  { 0x250C, 0xDA, 0 },
137cdf0e10cSrcweir  { 0x2510, 0xBF, 0 },
138cdf0e10cSrcweir  { 0x2514, 0xC0, 0 },
139cdf0e10cSrcweir  { 0x2518, 0xD9, 0 },
140cdf0e10cSrcweir  { 0x251C, 0xC3, 0 },
141cdf0e10cSrcweir  { 0x2524, 0xB4, 0 },
142cdf0e10cSrcweir  { 0x252C, 0xC2, 0 },
143cdf0e10cSrcweir  { 0x2534, 0xC1, 0 },
144cdf0e10cSrcweir  { 0x253C, 0xC5, 0 },
145cdf0e10cSrcweir  { 0x2550, 0xCD, 0 },
146cdf0e10cSrcweir  { 0x2551, 0xBA, 0 },
147cdf0e10cSrcweir  { 0x2552, 0xD5, 0 },
148cdf0e10cSrcweir  { 0x2553, 0xD6, 0 },
149cdf0e10cSrcweir  { 0x2554, 0xC9, 0 },
150cdf0e10cSrcweir  { 0x2555, 0xB8, 0 },
151cdf0e10cSrcweir  { 0x2556, 0xB7, 0 },
152cdf0e10cSrcweir  { 0x2557, 0xBB, 0 },
153cdf0e10cSrcweir  { 0x2558, 0xD4, 0 },
154cdf0e10cSrcweir  { 0x2559, 0xD3, 0 },
155cdf0e10cSrcweir  { 0x255A, 0xC8, 0 },
156cdf0e10cSrcweir  { 0x255B, 0xBE, 0 },
157cdf0e10cSrcweir  { 0x255C, 0xBD, 0 },
158cdf0e10cSrcweir  { 0x255D, 0xBC, 0 },
159cdf0e10cSrcweir  { 0x255E, 0xC6, 0 },
160cdf0e10cSrcweir  { 0x255F, 0xC7, 0 },
161cdf0e10cSrcweir  { 0x2560, 0xCC, 0 },
162cdf0e10cSrcweir  { 0x2561, 0xB5, 0 },
163cdf0e10cSrcweir  { 0x2562, 0xB6, 0 },
164cdf0e10cSrcweir  { 0x2563, 0xB9, 0 },
165cdf0e10cSrcweir  { 0x2564, 0xD1, 0 },
166cdf0e10cSrcweir  { 0x2565, 0xD2, 0 },
167cdf0e10cSrcweir  { 0x2566, 0xCB, 0 },
168cdf0e10cSrcweir  { 0x2567, 0xCF, 0 },
169cdf0e10cSrcweir  { 0x2568, 0xD0, 0 },
170cdf0e10cSrcweir  { 0x2569, 0xCA, 0 },
171cdf0e10cSrcweir  { 0x256A, 0xD8, 0 },
172cdf0e10cSrcweir  { 0x256B, 0xD7, 0 },
173cdf0e10cSrcweir  { 0x256C, 0xCE, 0 },
174cdf0e10cSrcweir  { 0x2580, 0xDF, 0 },
175cdf0e10cSrcweir  { 0x2584, 0xDC, 0 },
176cdf0e10cSrcweir  { 0x2588, 0xDB, 0 },
177cdf0e10cSrcweir  { 0x258C, 0xDD, 0 },
178cdf0e10cSrcweir  { 0x2590, 0xDE, 0 },
179cdf0e10cSrcweir  { 0x2591, 0xB0, 0 },
180cdf0e10cSrcweir  { 0x2592, 0xB1, 0 },
181cdf0e10cSrcweir  { 0x2593, 0xB2, 0 },
182cdf0e10cSrcweir  { 0x25A0, 0xFE, 0 }
183cdf0e10cSrcweir};
184cdf0e10cSrcweir
185cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
186cdf0e10cSrcweir
187cdf0e10cSrcweirstatic ImplByteConvertData const aImplIBM862ByteCvtData =
188cdf0e10cSrcweir{
189cdf0e10cSrcweir    aImplIBM862ToUniTab,
190cdf0e10cSrcweir    NULL,
191cdf0e10cSrcweir    IBM862UNI_START, IBM862UNI_END,
192cdf0e10cSrcweir    NOTABUNI_START, NOTABUNI_END,
193cdf0e10cSrcweir    aImplIBM862ToCharTab,
194cdf0e10cSrcweir    NULL,
195cdf0e10cSrcweir    aImplIBM862ToCharTabEx,
196cdf0e10cSrcweir    IBM862CHAR_START, IBM862CHAR_END,
197cdf0e10cSrcweir    NOTABCHAR_START, NOTABCHAR_END,
198cdf0e10cSrcweir    IBM862TOCHARTABEX_COUNT
199cdf0e10cSrcweir};
200cdf0e10cSrcweir
201cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
202cdf0e10cSrcweir
203cdf0e10cSrcweirstatic ImplTextEncodingData const aImplIBM862TextEncodingData
204cdf0e10cSrcweir    = { { &aImplIBM862ByteCvtData,
205cdf0e10cSrcweir          ImplCharToUnicode,
206cdf0e10cSrcweir          ImplUnicodeToChar,
207cdf0e10cSrcweir          NULL,
208cdf0e10cSrcweir          NULL,
209cdf0e10cSrcweir          NULL,
210cdf0e10cSrcweir          NULL,
211cdf0e10cSrcweir          NULL,
212cdf0e10cSrcweir          NULL },
213cdf0e10cSrcweir        1,
214cdf0e10cSrcweir        1,
215cdf0e10cSrcweir        1,
216cdf0e10cSrcweir        177,
217cdf0e10cSrcweir        "iso8859-8",
218cdf0e10cSrcweir        "IBM862",
219cdf0e10cSrcweir        RTL_TEXTENCODING_INFO_ASCII
220cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_MIME
221cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_R2L };
222cdf0e10cSrcweir    /* DOS/OS2, SCRIPT_HEBREW, pc code page 862, mac encoding 5 */
223cdf0e10cSrcweir
224cdf0e10cSrcweir/* ======================================================================= */
225cdf0e10cSrcweir
226cdf0e10cSrcweir/* IBM-864 */
227cdf0e10cSrcweir/* Dos Standard CharSet for Arabic */
228cdf0e10cSrcweir/* 1-Byte, 0x00-0x7F ASCII ohne Ausnahme */
229cdf0e10cSrcweir/* Convert-Tables: mappings/vendors/micsft/pc/cp864.txt from 04/24/96 Version 2.00 */
230cdf0e10cSrcweir/* Last-Changes from us: */
231cdf0e10cSrcweir
232cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
233cdf0e10cSrcweir
234cdf0e10cSrcweir#define IBM864UNI_START                 0x80
235cdf0e10cSrcweir#define IBM864UNI_END                   0xFE
236cdf0e10cSrcweirstatic sal_uInt16 const aImplIBM864ToUniTab[IBM864UNI_END - IBM864UNI_START + 1] =
237cdf0e10cSrcweir{
238cdf0e10cSrcweir/*       0       1       2       3       4       5       6       7 */
239cdf0e10cSrcweir/*       8       9       A       B       C       D       E       F */
240cdf0e10cSrcweir    0x00B0, 0x00B7, 0x2219, 0x221A, 0x2592, 0x2500, 0x2502, 0x253C, /* 0x80 */
241cdf0e10cSrcweir    0x2524, 0x252C, 0x251C, 0x2534, 0x2510, 0x250C, 0x2514, 0x2518, /* 0x80 */
242cdf0e10cSrcweir    0x03B2, 0x221E, 0x03C6, 0x00B1, 0x00BD, 0x00BC, 0x2248, 0x00AB, /* 0x90 */
243cdf0e10cSrcweir    0x00BB, 0xFEF7, 0xFEF8,      0,      0, 0xFEFB, 0xFEFC,      0, /* 0x90 */
244cdf0e10cSrcweir    0x00A0, 0x00AD, 0xFE82, 0x00A3, 0x00A4, 0xFE84,      0,      0, /* 0xA0 */
245cdf0e10cSrcweir    0xFE8E, 0xFE8F, 0xFE95, 0xFE99, 0x060C, 0xFE9D, 0xFEA1, 0xFEA5, /* 0xA0 */
246cdf0e10cSrcweir    0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667, /* 0xB0 */
247cdf0e10cSrcweir    0x0668, 0x0669, 0xFED1, 0x061B, 0xFEB1, 0xFEB5, 0xFEB9, 0x061F, /* 0xB0 */
248cdf0e10cSrcweir    0x00A2, 0xFE80, 0xFE81, 0xFE83, 0xFE85, 0xFECA, 0xFE8B, 0xFE8D, /* 0xC0 */
249cdf0e10cSrcweir    0xFE91, 0xFE93, 0xFE97, 0xFE9B, 0xFE9F, 0xFEA3, 0xFEA7, 0xFEA9, /* 0xC0 */
250cdf0e10cSrcweir    0xFEAB, 0xFEAD, 0xFEAF, 0xFEB3, 0xFEB7, 0xFEBB, 0xFEBF, 0xFEC1, /* 0xD0 */
251cdf0e10cSrcweir    0xFEC5, 0xFECB, 0xFECF, 0x00A6, 0x00AC, 0x00F7, 0x00D7, 0xFEC9, /* 0xD0 */
252cdf0e10cSrcweir    0x0640, 0xFED3, 0xFED7, 0xFEDB, 0xFEDF, 0xFEE3, 0xFEE7, 0xFEEB, /* 0xE0 */
253cdf0e10cSrcweir    0xFEED, 0xFEEF, 0xFEF3, 0xFEBD, 0xFECC, 0xFECE, 0xFECD, 0xFEE1, /* 0xE0 */
254cdf0e10cSrcweir    0xFE7D, 0x0651, 0xFEE5, 0xFEE9, 0xFEEC, 0xFEF0, 0xFEF2, 0xFED0, /* 0xF0 */
255cdf0e10cSrcweir    0xFED5, 0xFEF5, 0xFEF6, 0xFEDD, 0xFED9, 0xFEF1, 0x25A0          /* 0xF0 */
256cdf0e10cSrcweir};
257cdf0e10cSrcweir
258cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
259cdf0e10cSrcweir
260cdf0e10cSrcweir#define IBM864CHAR_START                0xFE7D
261cdf0e10cSrcweir#define IBM864CHAR_END                  0xFEFC
262cdf0e10cSrcweirstatic sal_uChar const aImplIBM864ToCharTab[IBM864CHAR_END - IBM864CHAR_START + 1] =
263cdf0e10cSrcweir{
264cdf0e10cSrcweir/*     0     1     2     3     4     5     6     7 */
265cdf0e10cSrcweir/*     8     9     A     B     C     D     E     F */
266cdf0e10cSrcweir                                  0xF0,    0,    0, /* 0xFE70 */
267cdf0e10cSrcweir    0xC1, 0xC2, 0xA2, 0xC3, 0xA5, 0xC4,    0,    0, /* 0xFE80 */
268cdf0e10cSrcweir       0,    0,    0, 0xC6,    0, 0xC7, 0xA8, 0xA9, /* 0xFE80 */
269cdf0e10cSrcweir       0, 0xC8,    0, 0xC9,    0, 0xAA,    0, 0xCA, /* 0xFE90 */
270cdf0e10cSrcweir       0, 0xAB,    0, 0xCB,    0, 0xAD,    0, 0xCC, /* 0xFE90 */
271cdf0e10cSrcweir       0, 0xAE,    0, 0xCD,    0, 0xAF,    0, 0xCE, /* 0xFEA0 */
272cdf0e10cSrcweir       0, 0xCF,    0, 0xD0,    0, 0xD1,    0, 0xD2, /* 0xFEA0 */
273cdf0e10cSrcweir       0, 0xBC,    0, 0xD3,    0, 0xBD,    0, 0xD4, /* 0xFEB0 */
274cdf0e10cSrcweir       0, 0xBE,    0, 0xD5,    0, 0xEB,    0, 0xD6, /* 0xFEB0 */
275cdf0e10cSrcweir       0, 0xD7,    0,    0,    0, 0xD8,    0,    0, /* 0xFEC0 */
276cdf0e10cSrcweir       0, 0xDF, 0xC5, 0xD9, 0xEC, 0xEE, 0xED, 0xDA, /* 0xFEC0 */
277cdf0e10cSrcweir    0xF7, 0xBA,    0, 0xE1,    0, 0xF8,    0, 0xE2, /* 0xFED0 */
278cdf0e10cSrcweir       0, 0xFC,    0, 0xE3,    0, 0xFB,    0, 0xE4, /* 0xFED0 */
279cdf0e10cSrcweir       0, 0xEF,    0, 0xE5,    0, 0xF2,    0, 0xE6, /* 0xFEE0 */
280cdf0e10cSrcweir       0, 0xF3,    0, 0xE7, 0xF4, 0xE8,    0, 0xE9, /* 0xFEE0 */
281cdf0e10cSrcweir    0xF5, 0xFD, 0xF6, 0xEA,    0, 0xF9, 0xFA, 0x99, /* 0xFEF0 */
282cdf0e10cSrcweir    0x9A,    0,    0, 0x9D, 0x9E                    /* 0xFEF0 */
283cdf0e10cSrcweir};
284cdf0e10cSrcweir
285cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
286cdf0e10cSrcweir
287cdf0e10cSrcweir#define IBM864TOCHARTABEX_COUNT         51
288cdf0e10cSrcweirstatic ImplUniCharTabData const aImplIBM864ToCharTabEx[IBM864TOCHARTABEX_COUNT] =
289cdf0e10cSrcweir{
290cdf0e10cSrcweir  { 0x00A0, 0xA0, 0 },
291cdf0e10cSrcweir  { 0x00A2, 0xC0, 0 },
292cdf0e10cSrcweir  { 0x00A3, 0xA3, 0 },
293cdf0e10cSrcweir  { 0x00A4, 0xA4, 0 },
294cdf0e10cSrcweir  { 0x00A6, 0xDB, 0 },
295cdf0e10cSrcweir  { 0x00AB, 0x97, 0 },
296cdf0e10cSrcweir  { 0x00AC, 0xDC, 0 },
297cdf0e10cSrcweir  { 0x00AD, 0xA1, 0 },
298cdf0e10cSrcweir  { 0x00B0, 0x80, 0 },
299cdf0e10cSrcweir  { 0x00B1, 0x93, 0 },
300cdf0e10cSrcweir  { 0x00B7, 0x81, 0 },
301cdf0e10cSrcweir  { 0x00BB, 0x98, 0 },
302cdf0e10cSrcweir  { 0x00BC, 0x95, 0 },
303cdf0e10cSrcweir  { 0x00BD, 0x94, 0 },
304cdf0e10cSrcweir  { 0x00D7, 0xDE, 0 },
305cdf0e10cSrcweir  { 0x00F7, 0xDD, 0 },
306cdf0e10cSrcweir  { 0x03B2, 0x90, 0 },
307cdf0e10cSrcweir  { 0x03C6, 0x92, 0 },
308cdf0e10cSrcweir  { 0x060C, 0xAC, 0 },
309cdf0e10cSrcweir  { 0x061B, 0xBB, 0 },
310cdf0e10cSrcweir  { 0x061F, 0xBF, 0 },
311cdf0e10cSrcweir  { 0x0640, 0xE0, 0 },
312cdf0e10cSrcweir  { 0x0651, 0xF1, 0 },
313cdf0e10cSrcweir  { 0x0660, 0xB0, 0 },
314cdf0e10cSrcweir  { 0x0661, 0xB1, 0 },
315cdf0e10cSrcweir  { 0x0662, 0xB2, 0 },
316cdf0e10cSrcweir  { 0x0663, 0xB3, 0 },
317cdf0e10cSrcweir  { 0x0664, 0xB4, 0 },
318cdf0e10cSrcweir  { 0x0665, 0xB5, 0 },
319cdf0e10cSrcweir  { 0x0666, 0xB6, 0 },
320cdf0e10cSrcweir  { 0x0667, 0xB7, 0 },
321cdf0e10cSrcweir  { 0x0668, 0xB8, 0 },
322cdf0e10cSrcweir  { 0x0669, 0xB9, 0 },
323cdf0e10cSrcweir  { 0x066A, 0x25, 0 },
324cdf0e10cSrcweir  { 0x2219, 0x82, 0 },
325cdf0e10cSrcweir  { 0x221A, 0x83, 0 },
326cdf0e10cSrcweir  { 0x221E, 0x91, 0 },
327cdf0e10cSrcweir  { 0x2248, 0x96, 0 },
328cdf0e10cSrcweir  { 0x2500, 0x85, 0 },
329cdf0e10cSrcweir  { 0x2502, 0x86, 0 },
330cdf0e10cSrcweir  { 0x250C, 0x8D, 0 },
331cdf0e10cSrcweir  { 0x2510, 0x8C, 0 },
332cdf0e10cSrcweir  { 0x2514, 0x8E, 0 },
333cdf0e10cSrcweir  { 0x2518, 0x8F, 0 },
334cdf0e10cSrcweir  { 0x251C, 0x8A, 0 },
335cdf0e10cSrcweir  { 0x2524, 0x88, 0 },
336cdf0e10cSrcweir  { 0x252C, 0x89, 0 },
337cdf0e10cSrcweir  { 0x2534, 0x8B, 0 },
338cdf0e10cSrcweir  { 0x253C, 0x87, 0 },
339cdf0e10cSrcweir  { 0x2592, 0x84, 0 },
340cdf0e10cSrcweir  { 0x25A0, 0xFE, 0 }
341cdf0e10cSrcweir};
342cdf0e10cSrcweir
343cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
344cdf0e10cSrcweir
345cdf0e10cSrcweirstatic ImplByteConvertData const aImplIBM864ByteCvtData =
346cdf0e10cSrcweir{
347cdf0e10cSrcweir    aImplIBM864ToUniTab,
348cdf0e10cSrcweir    NULL,
349cdf0e10cSrcweir    IBM864UNI_START, IBM864UNI_END,
350cdf0e10cSrcweir    NOTABUNI_START, NOTABUNI_END,
351cdf0e10cSrcweir    aImplIBM864ToCharTab,
352cdf0e10cSrcweir    NULL,
353cdf0e10cSrcweir    aImplIBM864ToCharTabEx,
354cdf0e10cSrcweir    IBM864CHAR_START, IBM864CHAR_END,
355cdf0e10cSrcweir    NOTABCHAR_START, NOTABCHAR_END,
356cdf0e10cSrcweir    IBM864TOCHARTABEX_COUNT
357cdf0e10cSrcweir};
358cdf0e10cSrcweir
359cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
360cdf0e10cSrcweir
361cdf0e10cSrcweirstatic ImplTextEncodingData const aImplIBM864TextEncodingData
362cdf0e10cSrcweir    = { { &aImplIBM864ByteCvtData,
363cdf0e10cSrcweir          ImplCharToUnicode,
364cdf0e10cSrcweir          ImplUnicodeToChar,
365cdf0e10cSrcweir          NULL,
366cdf0e10cSrcweir          NULL,
367cdf0e10cSrcweir          NULL,
368cdf0e10cSrcweir          NULL,
369cdf0e10cSrcweir          NULL,
370cdf0e10cSrcweir          NULL },
371cdf0e10cSrcweir        1,
372cdf0e10cSrcweir        1,
373cdf0e10cSrcweir        1,
374cdf0e10cSrcweir        178,
375cdf0e10cSrcweir        "iso8859-6",
376cdf0e10cSrcweir        "IBM864",
377cdf0e10cSrcweir        RTL_TEXTENCODING_INFO_ASCII
378cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_MIME
379cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_R2L };
380cdf0e10cSrcweir    /* DOS/OS2, SCRIPT_ARABIC, pc code page 864, mac encoding 4 */
381cdf0e10cSrcweir
382cdf0e10cSrcweir/* ======================================================================= */
383cdf0e10cSrcweir
384cdf0e10cSrcweir/* MS-1255 */
385cdf0e10cSrcweir/* Windows Standard CharSet for Hebrew */
386cdf0e10cSrcweir/* 1-Byte, 0x00-0x7F ASCII ohne Ausnahme */
387cdf0e10cSrcweir/* Convert-Tables: mappings/vendors/micsft/windows/cp1255.txt from 04/15/98 Version 2.01 */
388cdf0e10cSrcweir/* Last-Changes from us: */
389cdf0e10cSrcweir
390cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
391cdf0e10cSrcweir
392cdf0e10cSrcweir#define MS1255UNI_START                 0x80
393cdf0e10cSrcweir#define MS1255UNI_END                   0xFF
394cdf0e10cSrcweirstatic sal_uInt16 const aImplMS1255ToUniTab[MS1255UNI_END - MS1255UNI_START + 1] =
395cdf0e10cSrcweir{
396cdf0e10cSrcweir/*       0       1       2       3       4       5       6       7 */
397cdf0e10cSrcweir/*       8       9       A       B       C       D       E       F */
398cdf0e10cSrcweir    0x20AC,      0, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021, /* 0x80 */
399cdf0e10cSrcweir    0x02C6, 0x2030,      0, 0x2039,      0,      0,      0,      0, /* 0x80 */
400cdf0e10cSrcweir         0, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014, /* 0x90 */
401cdf0e10cSrcweir    0x02DC, 0x2122,      0, 0x203A,      0,      0,      0,      0, /* 0x90 */
402cdf0e10cSrcweir    0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x20AA, 0x00A5, 0x00A6, 0x00A7, /* 0xA0 */
403cdf0e10cSrcweir    0x00A8, 0x00A9, 0x00D7, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF, /* 0xA0 */
404cdf0e10cSrcweir    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7, /* 0xB0 */
405cdf0e10cSrcweir    0x00B8, 0x00B9, 0x00F7, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF, /* 0xB0 */
406cdf0e10cSrcweir    0x05B0, 0x05B1, 0x05B2, 0x05B3, 0x05B4, 0x05B5, 0x05B6, 0x05B7, /* 0xC0 */
407cdf0e10cSrcweir    0x05B8, 0x05B9,      0, 0x05BB, 0x05BC, 0x05BD, 0x05BE, 0x05BF, /* 0xC0 */
408cdf0e10cSrcweir    0x05C0, 0x05C1, 0x05C2, 0x05C3, 0x05F0, 0x05F1, 0x05F2, 0x05F3, /* 0xD0 */
409cdf0e10cSrcweir    0x05F4,      0,      0,      0,      0,      0,      0,      0, /* 0xD0 */
410cdf0e10cSrcweir    0x05D0, 0x05D1, 0x05D2, 0x05D3, 0x05D4, 0x05D5, 0x05D6, 0x05D7, /* 0xE0 */
411cdf0e10cSrcweir    0x05D8, 0x05D9, 0x05DA, 0x05DB, 0x05DC, 0x05DD, 0x05DE, 0x05DF, /* 0xE0 */
412cdf0e10cSrcweir    0x05E0, 0x05E1, 0x05E2, 0x05E3, 0x05E4, 0x05E5, 0x05E6, 0x05E7, /* 0xF0 */
413cdf0e10cSrcweir    0x05E8, 0x05E9, 0x05EA,      0,      0, 0x200E, 0x200F,      0  /* 0xF0 */
414cdf0e10cSrcweir};
415cdf0e10cSrcweir
416cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
417cdf0e10cSrcweir
418cdf0e10cSrcweir#define MS1255CHAR_START                0x05B0
419cdf0e10cSrcweir#define MS1255CHAR_END                  0x05F4
420cdf0e10cSrcweirstatic sal_uChar const aImplMS1255ToCharTab[MS1255CHAR_END - MS1255CHAR_START + 1] =
421cdf0e10cSrcweir{
422cdf0e10cSrcweir/*     0     1     2     3     4     5     6     7 */
423cdf0e10cSrcweir/*     8     9     A     B     C     D     E     F */
424cdf0e10cSrcweir    0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, /* 0x05B0 */
425cdf0e10cSrcweir    0xC8, 0xC9,    0, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, /* 0x05B0 */
426cdf0e10cSrcweir    0xD0, 0xD1, 0xD2, 0xD3,    0,    0,    0,    0, /* 0x05C0 */
427cdf0e10cSrcweir       0,    0,    0,    0,    0,    0,    0,    0, /* 0x05C0 */
428cdf0e10cSrcweir    0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, /* 0x05D0 */
429cdf0e10cSrcweir    0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, /* 0x05D0 */
430cdf0e10cSrcweir    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, /* 0x05E0 */
431cdf0e10cSrcweir    0xF8, 0xF9, 0xFA,    0,    0,    0,    0,    0, /* 0x05E0 */
432cdf0e10cSrcweir    0xD4, 0xD5, 0xD6, 0xD7, 0xD8                    /* 0x05F0 */
433cdf0e10cSrcweir};
434cdf0e10cSrcweir
435cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
436cdf0e10cSrcweir
437cdf0e10cSrcweir#define MS1255TOCHARTABEX_COUNT         54
438cdf0e10cSrcweirstatic ImplUniCharTabData const aImplMS1255ToCharTabEx[MS1255TOCHARTABEX_COUNT] =
439cdf0e10cSrcweir{
440cdf0e10cSrcweir  { 0x00A0, 0xA0, 0 },
441cdf0e10cSrcweir  { 0x00A1, 0xA1, 0 },
442cdf0e10cSrcweir  { 0x00A2, 0xA2, 0 },
443cdf0e10cSrcweir  { 0x00A3, 0xA3, 0 },
444cdf0e10cSrcweir  { 0x00A5, 0xA5, 0 },
445cdf0e10cSrcweir  { 0x00A6, 0xA6, 0 },
446cdf0e10cSrcweir  { 0x00A7, 0xA7, 0 },
447cdf0e10cSrcweir  { 0x00A8, 0xA8, 0 },
448cdf0e10cSrcweir  { 0x00A9, 0xA9, 0 },
449cdf0e10cSrcweir  { 0x00AB, 0xAB, 0 },
450cdf0e10cSrcweir  { 0x00AC, 0xAC, 0 },
451cdf0e10cSrcweir  { 0x00AD, 0xAD, 0 },
452cdf0e10cSrcweir  { 0x00AE, 0xAE, 0 },
453cdf0e10cSrcweir  { 0x00AF, 0xAF, 0 },
454cdf0e10cSrcweir  { 0x00B0, 0xB0, 0 },
455cdf0e10cSrcweir  { 0x00B1, 0xB1, 0 },
456cdf0e10cSrcweir  { 0x00B2, 0xB2, 0 },
457cdf0e10cSrcweir  { 0x00B3, 0xB3, 0 },
458cdf0e10cSrcweir  { 0x00B4, 0xB4, 0 },
459cdf0e10cSrcweir  { 0x00B5, 0xB5, 0 },
460cdf0e10cSrcweir  { 0x00B6, 0xB6, 0 },
461cdf0e10cSrcweir  { 0x00B7, 0xB7, 0 },
462cdf0e10cSrcweir  { 0x00B8, 0xB8, 0 },
463cdf0e10cSrcweir  { 0x00B9, 0xB9, 0 },
464cdf0e10cSrcweir  { 0x00BB, 0xBB, 0 },
465cdf0e10cSrcweir  { 0x00BC, 0xBC, 0 },
466cdf0e10cSrcweir  { 0x00BD, 0xBD, 0 },
467cdf0e10cSrcweir  { 0x00BE, 0xBE, 0 },
468cdf0e10cSrcweir  { 0x00BF, 0xBF, 0 },
469cdf0e10cSrcweir  { 0x00D7, 0xAA, 0 },
470cdf0e10cSrcweir  { 0x00F7, 0xBA, 0 },
471cdf0e10cSrcweir  { 0x0192, 0x83, 0 },
472cdf0e10cSrcweir  { 0x02C6, 0x88, 0 },
473cdf0e10cSrcweir  { 0x02DC, 0x98, 0 },
474cdf0e10cSrcweir  { 0x200E, 0xFD, 0 },
475cdf0e10cSrcweir  { 0x200F, 0xFE, 0 },
476cdf0e10cSrcweir  { 0x2013, 0x96, 0 },
477cdf0e10cSrcweir  { 0x2014, 0x97, 0 },
478cdf0e10cSrcweir  { 0x2018, 0x91, 0 },
479cdf0e10cSrcweir  { 0x2019, 0x92, 0 },
480cdf0e10cSrcweir  { 0x201A, 0x82, 0 },
481cdf0e10cSrcweir  { 0x201C, 0x93, 0 },
482cdf0e10cSrcweir  { 0x201D, 0x94, 0 },
483cdf0e10cSrcweir  { 0x201E, 0x84, 0 },
484cdf0e10cSrcweir  { 0x2020, 0x86, 0 },
485cdf0e10cSrcweir  { 0x2021, 0x87, 0 },
486cdf0e10cSrcweir  { 0x2022, 0x95, 0 },
487cdf0e10cSrcweir  { 0x2026, 0x85, 0 },
488cdf0e10cSrcweir  { 0x2030, 0x89, 0 },
489cdf0e10cSrcweir  { 0x2039, 0x8B, 0 },
490cdf0e10cSrcweir  { 0x203A, 0x9B, 0 },
491cdf0e10cSrcweir  { 0x20AA, 0xA4, 0 },
492cdf0e10cSrcweir  { 0x20AC, 0x80, 0 },
493cdf0e10cSrcweir  { 0x2122, 0x99, 0 }
494cdf0e10cSrcweir};
495cdf0e10cSrcweir
496cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
497cdf0e10cSrcweir
498cdf0e10cSrcweirstatic ImplByteConvertData const aImplMS1255ByteCvtData =
499cdf0e10cSrcweir{
500cdf0e10cSrcweir    aImplMS1255ToUniTab,
501cdf0e10cSrcweir    NULL,
502cdf0e10cSrcweir    MS1255UNI_START, MS1255UNI_END,
503cdf0e10cSrcweir    NOTABUNI_START, NOTABUNI_END,
504cdf0e10cSrcweir    aImplMS1255ToCharTab,
505cdf0e10cSrcweir    NULL,
506cdf0e10cSrcweir    aImplMS1255ToCharTabEx,
507cdf0e10cSrcweir    MS1255CHAR_START, MS1255CHAR_END,
508cdf0e10cSrcweir    NOTABCHAR_START, NOTABCHAR_END,
509cdf0e10cSrcweir    MS1255TOCHARTABEX_COUNT
510cdf0e10cSrcweir};
511cdf0e10cSrcweir
512cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
513cdf0e10cSrcweir
514cdf0e10cSrcweirstatic ImplTextEncodingData const aImplMS1255TextEncodingData
515cdf0e10cSrcweir    = { { &aImplMS1255ByteCvtData,
516cdf0e10cSrcweir          ImplCharToUnicode,
517cdf0e10cSrcweir          ImplUnicodeToChar,
518cdf0e10cSrcweir          NULL,
519cdf0e10cSrcweir          NULL,
520cdf0e10cSrcweir          NULL,
521cdf0e10cSrcweir          NULL,
522cdf0e10cSrcweir          NULL,
523cdf0e10cSrcweir          NULL },
524cdf0e10cSrcweir        1,
525cdf0e10cSrcweir        1,
526cdf0e10cSrcweir        1,
527cdf0e10cSrcweir        177,
528cdf0e10cSrcweir        "iso8859-8",
529cdf0e10cSrcweir        "windows-1255",
530cdf0e10cSrcweir        RTL_TEXTENCODING_INFO_ASCII
531cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_MIME
532cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_R2L };
533cdf0e10cSrcweir    /* WIN, SCRIPT_HEBREW, pc code page 862, mac encoding 5 */
534cdf0e10cSrcweir
535cdf0e10cSrcweir/* ======================================================================= */
536cdf0e10cSrcweir
537cdf0e10cSrcweir/* MS-1256 */
538cdf0e10cSrcweir/* Windows Standard CharSet for Arabic */
539cdf0e10cSrcweir/* 1-Byte, 0x00-0x7F ASCII ohne Ausnahme */
540cdf0e10cSrcweir/* Convert-Tables: mappings/vendors/micsft/windows/cp1256.txt from 01/5/99 Version 2.01 */
541cdf0e10cSrcweir
542cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
543cdf0e10cSrcweir
544cdf0e10cSrcweir#define MS1256UNI_START                 0x80
545cdf0e10cSrcweir#define MS1256UNI_END                   0xFF
546cdf0e10cSrcweirstatic sal_uInt16 const aImplMS1256ToUniTab[MS1256UNI_END - MS1256UNI_START + 1] =
547cdf0e10cSrcweir{
548cdf0e10cSrcweir/*       0       1       2       3       4       5       6       7 */
549cdf0e10cSrcweir/*       8       9       A       B       C       D       E       F */
550cdf0e10cSrcweir    0x20AC, 0x067E, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021, /* 0x80 */
551cdf0e10cSrcweir    0x02C6, 0x2030, 0x0679, 0x2039, 0x0152, 0x0686, 0x0698, 0x0688, /* 0x80 */
552cdf0e10cSrcweir    0x06AF, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014, /* 0x90 */
553cdf0e10cSrcweir    0x06A9, 0x2122, 0x0691, 0x203A, 0x0153, 0x200C, 0x200D, 0x06BA, /* 0x90 */
554cdf0e10cSrcweir    0x00A0, 0x060C, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7, /* 0xA0 */
555cdf0e10cSrcweir    0x00A8, 0x00A9, 0x06BE, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF, /* 0xA0 */
556cdf0e10cSrcweir    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7, /* 0xB0 */
557cdf0e10cSrcweir    0x00B8, 0x00B9, 0x061B, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x061F, /* 0xB0 */
558cdf0e10cSrcweir    0x06C1, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627, /* 0xC0 */
559cdf0e10cSrcweir    0x0628, 0x0629, 0x062A, 0x062B, 0x062C, 0x062D, 0x062E, 0x062F, /* 0xC0 */
560cdf0e10cSrcweir    0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x00D7, /* 0xD0 */
561cdf0e10cSrcweir    0x0637, 0x0638, 0x0639, 0x063A, 0x0640, 0x0641, 0x0642, 0x0643, /* 0xD0 */
562cdf0e10cSrcweir    0x00E0, 0x0644, 0x00E2, 0x0645, 0x0646, 0x0647, 0x0648, 0x00E7, /* 0xE0 */
563cdf0e10cSrcweir    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x0649, 0x064A, 0x00EE, 0x00EF, /* 0xE0 */
564cdf0e10cSrcweir    0x064B, 0x064C, 0x064D, 0x064E, 0x00F4, 0x064F, 0x0650, 0x00F7, /* 0xF0 */
565cdf0e10cSrcweir    0x0651, 0x00F9, 0x0652, 0x00FB, 0x00FC, 0x200E, 0x200F, 0x06D2  /* 0xF0 */
566cdf0e10cSrcweir};
567cdf0e10cSrcweir
568cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
569cdf0e10cSrcweir
570cdf0e10cSrcweir#define MS1256CHAR_START                0x061B
571cdf0e10cSrcweir#define MS1256CHAR_END                  0x0652
572cdf0e10cSrcweirstatic sal_uChar const aImplMS1256ToCharTab[MS1256CHAR_END - MS1256CHAR_START + 1] =
573cdf0e10cSrcweir{
574cdf0e10cSrcweir/*     0     1     2     3     4     5     6     7 */
575cdf0e10cSrcweir/*     8     9     A     B     C     D     E     F */
576cdf0e10cSrcweir                      0xBA,    0,    0,    0, 0xBF, /* 0x0610 */
577cdf0e10cSrcweir       0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, /* 0x0620 */
578cdf0e10cSrcweir    0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, /* 0x0620 */
579cdf0e10cSrcweir    0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD8, /* 0x0630 */
580cdf0e10cSrcweir    0xD9, 0xDA, 0xDB,    0,    0,    0,    0,    0, /* 0x0630 */
581cdf0e10cSrcweir    0xDC, 0xDD, 0xDE, 0xDF, 0xE1, 0xE3, 0xE4, 0xE5, /* 0x0640 */
582cdf0e10cSrcweir    0xE6, 0xEC, 0xED, 0xF0, 0xF1, 0xF2, 0xF3, 0xF5, /* 0x0640 */
583cdf0e10cSrcweir    0xF6, 0xF8, 0xFA                                /* 0x0650 */
584cdf0e10cSrcweir};
585cdf0e10cSrcweir
586cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
587cdf0e10cSrcweir
588cdf0e10cSrcweir#define MS1256TOCHARTABEX_COUNT         81
589cdf0e10cSrcweirstatic ImplUniCharTabData const aImplMS1256ToCharTabEx[MS1256TOCHARTABEX_COUNT] =
590cdf0e10cSrcweir{
591cdf0e10cSrcweir  { 0x00A0, 0xA0, 0 },
592cdf0e10cSrcweir  { 0x00A2, 0xA2, 0 },
593cdf0e10cSrcweir  { 0x00A3, 0xA3, 0 },
594cdf0e10cSrcweir  { 0x00A4, 0xA4, 0 },
595cdf0e10cSrcweir  { 0x00A5, 0xA5, 0 },
596cdf0e10cSrcweir  { 0x00A6, 0xA6, 0 },
597cdf0e10cSrcweir  { 0x00A7, 0xA7, 0 },
598cdf0e10cSrcweir  { 0x00A8, 0xA8, 0 },
599cdf0e10cSrcweir  { 0x00A9, 0xA9, 0 },
600cdf0e10cSrcweir  { 0x00AB, 0xAB, 0 },
601cdf0e10cSrcweir  { 0x00AC, 0xAC, 0 },
602cdf0e10cSrcweir  { 0x00AD, 0xAD, 0 },
603cdf0e10cSrcweir  { 0x00AE, 0xAE, 0 },
604cdf0e10cSrcweir  { 0x00AF, 0xAF, 0 },
605cdf0e10cSrcweir  { 0x00B0, 0xB0, 0 },
606cdf0e10cSrcweir  { 0x00B1, 0xB1, 0 },
607cdf0e10cSrcweir  { 0x00B2, 0xB2, 0 },
608cdf0e10cSrcweir  { 0x00B3, 0xB3, 0 },
609cdf0e10cSrcweir  { 0x00B4, 0xB4, 0 },
610cdf0e10cSrcweir  { 0x00B5, 0xB5, 0 },
611cdf0e10cSrcweir  { 0x00B6, 0xB6, 0 },
612cdf0e10cSrcweir  { 0x00B7, 0xB7, 0 },
613cdf0e10cSrcweir  { 0x00B8, 0xB8, 0 },
614cdf0e10cSrcweir  { 0x00B9, 0xB9, 0 },
615cdf0e10cSrcweir  { 0x00BB, 0xBB, 0 },
616cdf0e10cSrcweir  { 0x00BC, 0xBC, 0 },
617cdf0e10cSrcweir  { 0x00BD, 0xBD, 0 },
618cdf0e10cSrcweir  { 0x00BE, 0xBE, 0 },
619cdf0e10cSrcweir  { 0x00D7, 0xD7, 0 },
620cdf0e10cSrcweir  { 0x00E0, 0xE0, 0 },
621cdf0e10cSrcweir  { 0x00E2, 0xE2, 0 },
622cdf0e10cSrcweir  { 0x00E7, 0xE7, 0 },
623cdf0e10cSrcweir  { 0x00E8, 0xE8, 0 },
624cdf0e10cSrcweir  { 0x00E9, 0xE9, 0 },
625cdf0e10cSrcweir  { 0x00EA, 0xEA, 0 },
626cdf0e10cSrcweir  { 0x00EB, 0xEB, 0 },
627cdf0e10cSrcweir  { 0x00EE, 0xEE, 0 },
628cdf0e10cSrcweir  { 0x00EF, 0xEF, 0 },
629cdf0e10cSrcweir  { 0x00F4, 0xF4, 0 },
630cdf0e10cSrcweir  { 0x00F7, 0xF7, 0 },
631cdf0e10cSrcweir  { 0x00F9, 0xF9, 0 },
632cdf0e10cSrcweir  { 0x00FB, 0xFB, 0 },
633cdf0e10cSrcweir  { 0x00FC, 0xFC, 0 },
634cdf0e10cSrcweir  { 0x0152, 0x8C, 0 },
635cdf0e10cSrcweir  { 0x0153, 0x9C, 0 },
636cdf0e10cSrcweir  { 0x0192, 0x83, 0 },
637cdf0e10cSrcweir  { 0x02C6, 0x88, 0 },
638cdf0e10cSrcweir  { 0x060C, 0xA1, 0 },
639cdf0e10cSrcweir  { 0x0679, 0x8A, 0 },
640cdf0e10cSrcweir  { 0x067E, 0x81, 0 },
641cdf0e10cSrcweir  { 0x0686, 0x8D, 0 },
642cdf0e10cSrcweir  { 0x0688, 0x8F, 0 },
643cdf0e10cSrcweir  { 0x0691, 0x9A, 0 },
644cdf0e10cSrcweir  { 0x0698, 0x8E, 0 },
645cdf0e10cSrcweir  { 0x06A9, 0x98, 0 },
646cdf0e10cSrcweir  { 0x06AF, 0x90, 0 },
647cdf0e10cSrcweir  { 0x06BA, 0x9F, 0 },
648cdf0e10cSrcweir  { 0x06BE, 0xAA, 0 },
649cdf0e10cSrcweir  { 0x06C1, 0xC0, 0 },
650cdf0e10cSrcweir  { 0x06D2, 0xFF, 0 },
651cdf0e10cSrcweir  { 0x200C, 0x9D, 0 },
652cdf0e10cSrcweir  { 0x200D, 0x9E, 0 },
653cdf0e10cSrcweir  { 0x200E, 0xFD, 0 },
654cdf0e10cSrcweir  { 0x200F, 0xFE, 0 },
655cdf0e10cSrcweir  { 0x2013, 0x96, 0 },
656cdf0e10cSrcweir  { 0x2014, 0x97, 0 },
657cdf0e10cSrcweir  { 0x2018, 0x91, 0 },
658cdf0e10cSrcweir  { 0x2019, 0x92, 0 },
659cdf0e10cSrcweir  { 0x201A, 0x82, 0 },
660cdf0e10cSrcweir  { 0x201C, 0x93, 0 },
661cdf0e10cSrcweir  { 0x201D, 0x94, 0 },
662cdf0e10cSrcweir  { 0x201E, 0x84, 0 },
663cdf0e10cSrcweir  { 0x2020, 0x86, 0 },
664cdf0e10cSrcweir  { 0x2021, 0x87, 0 },
665cdf0e10cSrcweir  { 0x2022, 0x95, 0 },
666cdf0e10cSrcweir  { 0x2026, 0x85, 0 },
667cdf0e10cSrcweir  { 0x2030, 0x89, 0 },
668cdf0e10cSrcweir  { 0x2039, 0x8B, 0 },
669cdf0e10cSrcweir  { 0x203A, 0x9B, 0 },
670cdf0e10cSrcweir  { 0x20AC, 0x80, 0 },
671cdf0e10cSrcweir  { 0x2122, 0x99, 0 }
672cdf0e10cSrcweir};
673cdf0e10cSrcweir
674cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
675cdf0e10cSrcweir
676cdf0e10cSrcweirstatic ImplByteConvertData const aImplMS1256ByteCvtData =
677cdf0e10cSrcweir{
678cdf0e10cSrcweir    aImplMS1256ToUniTab,
679cdf0e10cSrcweir    NULL,
680cdf0e10cSrcweir    MS1256UNI_START, MS1256UNI_END,
681cdf0e10cSrcweir    NOTABUNI_START, NOTABUNI_END,
682cdf0e10cSrcweir    aImplMS1256ToCharTab,
683cdf0e10cSrcweir    NULL,
684cdf0e10cSrcweir    aImplMS1256ToCharTabEx,
685cdf0e10cSrcweir    MS1256CHAR_START, MS1256CHAR_END,
686cdf0e10cSrcweir    NOTABCHAR_START, NOTABCHAR_END,
687cdf0e10cSrcweir    MS1256TOCHARTABEX_COUNT
688cdf0e10cSrcweir};
689cdf0e10cSrcweir
690cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
691cdf0e10cSrcweir
692cdf0e10cSrcweirstatic ImplTextEncodingData const aImplMS1256TextEncodingData
693cdf0e10cSrcweir    = { { &aImplMS1256ByteCvtData,
694cdf0e10cSrcweir          ImplCharToUnicode,
695cdf0e10cSrcweir          ImplUnicodeToChar,
696cdf0e10cSrcweir          NULL,
697cdf0e10cSrcweir          NULL,
698cdf0e10cSrcweir          NULL,
699cdf0e10cSrcweir          NULL,
700cdf0e10cSrcweir          NULL,
701cdf0e10cSrcweir          NULL },
702cdf0e10cSrcweir        1,
703cdf0e10cSrcweir        1,
704cdf0e10cSrcweir        1,
705cdf0e10cSrcweir        178,
706cdf0e10cSrcweir        "iso8859-6",
707cdf0e10cSrcweir        "windows-1256",
708cdf0e10cSrcweir        RTL_TEXTENCODING_INFO_ASCII
709cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_MIME
710cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_R2L };
711cdf0e10cSrcweir    /* WIN, SCRIPT_ARABIC, pc code page 864, mac encoding 4 */
712cdf0e10cSrcweir
713cdf0e10cSrcweir/* ======================================================================= */
714cdf0e10cSrcweir
715cdf0e10cSrcweir/* ISO-8859-6 */
716cdf0e10cSrcweir/* Unix Standard for Arabic */
717cdf0e10cSrcweir/* 1-Byte, 0x00-0x7F ASCII ohne Ausnahme, 0x80-0x9F Control-Caracter wie in Unicode */
718cdf0e10cSrcweir/* Convert-Tables: mappings/iso8859/8859-6.txt from 07/27/99 Version 1.0 (based on Unicode 3.0) */
719cdf0e10cSrcweir/* Last-Changes from us: */
720cdf0e10cSrcweir/* !!! 0x30-0x39 sind Arabische Zahlen und muessten eigentlich nach 0x0660-0x0669 gemappt werden !!! */
721cdf0e10cSrcweir
722cdf0e10cSrcweir#define ISO88596UNI_START               0xA0
723cdf0e10cSrcweir#define ISO88596UNI_END                 0xF2
724cdf0e10cSrcweirstatic sal_uInt16 const aImplISO88596ToUniTab[ISO88596UNI_END - ISO88596UNI_START + 1] =
725cdf0e10cSrcweir{
726cdf0e10cSrcweir/*       0       1       2       3       4       5       6       7 */
727cdf0e10cSrcweir/*       8       9       A       B       C       D       E       F */
728cdf0e10cSrcweir    0x00A0,      0,      0,      0, 0x00A4,      0,      0,      0, /* 0xA0 */
729cdf0e10cSrcweir         0,      0,      0,      0, 0x060C, 0x00AD,      0,      0, /* 0xA0 */
730cdf0e10cSrcweir         0,      0,      0,      0,      0,      0,      0,      0, /* 0xB0 */
731cdf0e10cSrcweir         0,      0,      0, 0x061B,      0,      0,      0, 0x061F, /* 0xB0 */
732cdf0e10cSrcweir         0, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627, /* 0xC0 */
733cdf0e10cSrcweir    0x0628, 0x0629, 0x062A, 0x062B, 0x062C, 0x062D, 0x062E, 0x062F, /* 0xC0 */
734cdf0e10cSrcweir    0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637, /* 0xD0 */
735cdf0e10cSrcweir    0x0638, 0x0639, 0x063A,      0,      0,      0,      0,      0, /* 0xD0 */
736cdf0e10cSrcweir    0x0640, 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647, /* 0xE0 */
737cdf0e10cSrcweir    0x0648, 0x0649, 0x064A, 0x064B, 0x064C, 0x064D, 0x064E, 0x064F, /* 0xE0 */
738cdf0e10cSrcweir    0x0650, 0x0651, 0x0652                                          /* 0xF0 */
739cdf0e10cSrcweir                                                                    /* 0xF0 */
740cdf0e10cSrcweir};
741cdf0e10cSrcweir
742cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
743cdf0e10cSrcweir
744cdf0e10cSrcweir#define ISO88596CHAR_START              0x061B
745cdf0e10cSrcweir#define ISO88596CHAR_END                0x0669
746cdf0e10cSrcweirstatic sal_uChar const aImplISO88596ToCharTab[ISO88596CHAR_END - ISO88596CHAR_START + 1] =
747cdf0e10cSrcweir{
748cdf0e10cSrcweir/*     0     1     2     3     4     5     6     7 */
749cdf0e10cSrcweir/*     8     9     A     B     C     D     E     F */
750cdf0e10cSrcweir                      0xBB,    0,    0,    0, 0xBF, /* 0x0610 */
751cdf0e10cSrcweir       0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, /* 0x0620 */
752cdf0e10cSrcweir    0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, /* 0x0620 */
753cdf0e10cSrcweir    0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, /* 0x0630 */
754cdf0e10cSrcweir    0xD8, 0xD9, 0xDA,    0,    0,    0,    0,    0, /* 0x0630 */
755cdf0e10cSrcweir    0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, /* 0x0640 */
756cdf0e10cSrcweir    0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, /* 0x0640 */
757cdf0e10cSrcweir    0xF0, 0xF1, 0xF2,    0,    0,    0,    0,    0, /* 0x0650 */
758cdf0e10cSrcweir       0,    0,    0,    0,    0,    0,    0,    0, /* 0x0650 */
759cdf0e10cSrcweir    0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, /* 0x0660 */
760cdf0e10cSrcweir    0x38, 0x39                                      /* 0x0660 */
761cdf0e10cSrcweir};
762cdf0e10cSrcweir
763cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
764cdf0e10cSrcweir
765cdf0e10cSrcweir#define ISO88596TOCHARTABEX_COUNT       4
766cdf0e10cSrcweirstatic ImplUniCharTabData const aImplISO88596ToCharTabEx[ISO88596TOCHARTABEX_COUNT] =
767cdf0e10cSrcweir{
768cdf0e10cSrcweir  { 0x00A0, 0xA0, 0 },
769cdf0e10cSrcweir  { 0x00A4, 0xA4, 0 },
770cdf0e10cSrcweir  { 0x00AD, 0xAD, 0 },
771cdf0e10cSrcweir  { 0x060C, 0xAC, 0 }
772cdf0e10cSrcweir};
773cdf0e10cSrcweir
774cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
775cdf0e10cSrcweir
776cdf0e10cSrcweirstatic ImplByteConvertData const aImplISO88596ByteCvtData =
777cdf0e10cSrcweir{
778cdf0e10cSrcweir    aImplISO88596ToUniTab,
779cdf0e10cSrcweir    aImpl8090SameToUniTab,
780cdf0e10cSrcweir    ISO88596UNI_START, ISO88596UNI_END,
781cdf0e10cSrcweir    SAME8090UNI_START, SAME8090UNI_END,
782cdf0e10cSrcweir    aImplISO88596ToCharTab,
783cdf0e10cSrcweir    aImpl8090SameToCharTab,
784cdf0e10cSrcweir    aImplISO88596ToCharTabEx,
785cdf0e10cSrcweir    ISO88596CHAR_START, ISO88596CHAR_END,
786cdf0e10cSrcweir    SAME8090CHAR_START, SAME8090CHAR_END,
787cdf0e10cSrcweir    ISO88596TOCHARTABEX_COUNT
788cdf0e10cSrcweir};
789cdf0e10cSrcweir
790cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
791cdf0e10cSrcweir
792cdf0e10cSrcweirstatic ImplTextEncodingData const aImplISO88596TextEncodingData
793cdf0e10cSrcweir    = { { &aImplISO88596ByteCvtData,
794cdf0e10cSrcweir          ImplCharToUnicode,
795cdf0e10cSrcweir          ImplUnicodeToChar,
796cdf0e10cSrcweir          NULL,
797cdf0e10cSrcweir          NULL,
798cdf0e10cSrcweir          NULL,
799cdf0e10cSrcweir          NULL,
800cdf0e10cSrcweir          NULL,
801cdf0e10cSrcweir          NULL },
802cdf0e10cSrcweir        1,
803cdf0e10cSrcweir        1,
804cdf0e10cSrcweir        1,
805cdf0e10cSrcweir        178,
806cdf0e10cSrcweir        "iso8859-6",
807cdf0e10cSrcweir        "ISO-8859-6",
808cdf0e10cSrcweir        RTL_TEXTENCODING_INFO_ASCII
809cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_R2L
810cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_MIME };
811cdf0e10cSrcweir    /* SCRIPT_ARABIC, pc code page 864, mac encoding 4 */
812cdf0e10cSrcweir
813cdf0e10cSrcweir
814cdf0e10cSrcweir/* ======================================================================= */
815cdf0e10cSrcweir
816cdf0e10cSrcweir/* ISO-8859-8 */
817cdf0e10cSrcweir/* Unix Standard for Hebrew */
818cdf0e10cSrcweir/* 1-Byte, 0x00-0x7F ASCII ohne Ausnahme, 0x80-0x9F Control-Caracter wie in Unicode */
819cdf0e10cSrcweir/* Convert-Tables: mappings/iso8859/8859-8.txt from 2000-Jan-03 Version 1.1 (based on Unicode 3.0) */
820cdf0e10cSrcweir
821cdf0e10cSrcweir#define ISO88598UNI_START               0xA0
822cdf0e10cSrcweir#define ISO88598UNI_END                 0xFE
823cdf0e10cSrcweirstatic sal_uInt16 const aImplISO88598ToUniTab[ISO88598UNI_END - ISO88598UNI_START + 1] =
824cdf0e10cSrcweir{
825cdf0e10cSrcweir/*       0       1       2       3       4       5       6       7 */
826cdf0e10cSrcweir/*       8       9       A       B       C       D       E       F */
827cdf0e10cSrcweir    0x00A0,      0, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7, /* 0xA0 */
828cdf0e10cSrcweir    0x00A8, 0x00A9, 0x00D7, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF, /* 0xA0 */
829cdf0e10cSrcweir    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7, /* 0xB0 */
830cdf0e10cSrcweir    0x00B8, 0x00B9, 0x00F7, 0x00BB, 0x00BC, 0x00BD, 0x00BE,      0, /* 0xB0 */
831cdf0e10cSrcweir         0,      0,      0,      0,      0,      0,      0,      0, /* 0xC0 */
832cdf0e10cSrcweir         0,      0,      0,      0,      0,      0,      0,      0, /* 0xC0 */
833cdf0e10cSrcweir         0,      0,      0,      0,      0,      0,      0,      0, /* 0xD0 */
834cdf0e10cSrcweir         0,      0,      0,      0,      0,      0,      0, 0x2017, /* 0xD0 */
835cdf0e10cSrcweir    0x05D0, 0x05D1, 0x05D2, 0x05D3, 0x05D4, 0x05D5, 0x05D6, 0x05D7, /* 0xE0 */
836cdf0e10cSrcweir    0x05D8, 0x05D9, 0x05DA, 0x05DB, 0x05DC, 0x05DD, 0x05DE, 0x05DF, /* 0xE0 */
837cdf0e10cSrcweir    0x05E0, 0x05E1, 0x05E2, 0x05E3, 0x05E4, 0x05E5, 0x05E6, 0x05E7, /* 0xF0 */
838cdf0e10cSrcweir    0x05E8, 0x05E9, 0x05EA,      0,      0, 0x200E, 0x200F          /* 0xF0 */
839cdf0e10cSrcweir};
840cdf0e10cSrcweir
841cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
842cdf0e10cSrcweir
843cdf0e10cSrcweir#define ISO88598CHAR_START              0x05D0
844cdf0e10cSrcweir#define ISO88598CHAR_END                0x05EA
845cdf0e10cSrcweirstatic sal_uChar const aImplISO88598ToCharTab[ISO88598CHAR_END - ISO88598CHAR_START + 1] =
846cdf0e10cSrcweir{
847cdf0e10cSrcweir/*     0     1     2     3     4     5     6     7 */
848cdf0e10cSrcweir/*     8     9     A     B     C     D     E     F */
849cdf0e10cSrcweir    0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, /* 0x05D0 */
850cdf0e10cSrcweir    0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, /* 0x05D0 */
851cdf0e10cSrcweir    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, /* 0x05E0 */
852cdf0e10cSrcweir    0xF8, 0xF9, 0xFA                                /* 0x05E0 */
853cdf0e10cSrcweir};
854cdf0e10cSrcweir
855cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
856cdf0e10cSrcweir
857cdf0e10cSrcweir#define ISO88598TOCHARTABEX_COUNT       33
858cdf0e10cSrcweirstatic ImplUniCharTabData const aImplISO88598ToCharTabEx[ISO88598TOCHARTABEX_COUNT] =
859cdf0e10cSrcweir{
860cdf0e10cSrcweir  { 0x00A0, 0xA0, 0 },
861cdf0e10cSrcweir  { 0x00A2, 0xA2, 0 },
862cdf0e10cSrcweir  { 0x00A3, 0xA3, 0 },
863cdf0e10cSrcweir  { 0x00A4, 0xA4, 0 },
864cdf0e10cSrcweir  { 0x00A5, 0xA5, 0 },
865cdf0e10cSrcweir  { 0x00A6, 0xA6, 0 },
866cdf0e10cSrcweir  { 0x00A7, 0xA7, 0 },
867cdf0e10cSrcweir  { 0x00A8, 0xA8, 0 },
868cdf0e10cSrcweir  { 0x00A9, 0xA9, 0 },
869cdf0e10cSrcweir  { 0x00AB, 0xAB, 0 },
870cdf0e10cSrcweir  { 0x00AC, 0xAC, 0 },
871cdf0e10cSrcweir  { 0x00AD, 0xAD, 0 },
872cdf0e10cSrcweir  { 0x00AE, 0xAE, 0 },
873cdf0e10cSrcweir  { 0x00AF, 0xAF, 0 },
874cdf0e10cSrcweir  { 0x00B0, 0xB0, 0 },
875cdf0e10cSrcweir  { 0x00B1, 0xB1, 0 },
876cdf0e10cSrcweir  { 0x00B2, 0xB2, 0 },
877cdf0e10cSrcweir  { 0x00B3, 0xB3, 0 },
878cdf0e10cSrcweir  { 0x00B4, 0xB4, 0 },
879cdf0e10cSrcweir  { 0x00B5, 0xB5, 0 },
880cdf0e10cSrcweir  { 0x00B6, 0xB6, 0 },
881cdf0e10cSrcweir  { 0x00B7, 0xB7, 0 },
882cdf0e10cSrcweir  { 0x00B8, 0xB8, 0 },
883cdf0e10cSrcweir  { 0x00B9, 0xB9, 0 },
884cdf0e10cSrcweir  { 0x00BB, 0xBB, 0 },
885cdf0e10cSrcweir  { 0x00BC, 0xBC, 0 },
886cdf0e10cSrcweir  { 0x00BD, 0xBD, 0 },
887cdf0e10cSrcweir  { 0x00BE, 0xBE, 0 },
888cdf0e10cSrcweir  { 0x00D7, 0xAA, 0 },
889cdf0e10cSrcweir  { 0x00F7, 0xBA, 0 },
890cdf0e10cSrcweir  { 0x200E, 0xFD, 0 },
891cdf0e10cSrcweir  { 0x200F, 0xFE, 0 },
892cdf0e10cSrcweir  { 0x2017, 0xDF, 0 }
893cdf0e10cSrcweir};
894cdf0e10cSrcweir
895cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
896cdf0e10cSrcweir
897cdf0e10cSrcweirstatic ImplByteConvertData const aImplISO88598ByteCvtData =
898cdf0e10cSrcweir{
899cdf0e10cSrcweir    aImplISO88598ToUniTab,
900cdf0e10cSrcweir    aImpl8090SameToUniTab,
901cdf0e10cSrcweir    ISO88598UNI_START, ISO88598UNI_END,
902cdf0e10cSrcweir    SAME8090UNI_START, SAME8090UNI_END,
903cdf0e10cSrcweir    aImplISO88598ToCharTab,
904cdf0e10cSrcweir    aImpl8090SameToCharTab,
905cdf0e10cSrcweir    aImplISO88598ToCharTabEx,
906cdf0e10cSrcweir    ISO88598CHAR_START, ISO88598CHAR_END,
907cdf0e10cSrcweir    SAME8090CHAR_START, SAME8090CHAR_END,
908cdf0e10cSrcweir    ISO88598TOCHARTABEX_COUNT
909cdf0e10cSrcweir};
910cdf0e10cSrcweir
911cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
912cdf0e10cSrcweir
913cdf0e10cSrcweirstatic ImplTextEncodingData const aImplISO88598TextEncodingData
914cdf0e10cSrcweir    = { { &aImplISO88598ByteCvtData,
915cdf0e10cSrcweir          ImplCharToUnicode,
916cdf0e10cSrcweir          ImplUnicodeToChar,
917cdf0e10cSrcweir          NULL,
918cdf0e10cSrcweir          NULL,
919cdf0e10cSrcweir          NULL,
920cdf0e10cSrcweir          NULL,
921cdf0e10cSrcweir          NULL,
922cdf0e10cSrcweir          NULL },
923cdf0e10cSrcweir        1,
924cdf0e10cSrcweir        1,
925cdf0e10cSrcweir        1,
926cdf0e10cSrcweir        177,
927cdf0e10cSrcweir        "iso8859-8",
928cdf0e10cSrcweir        "ISO-8859-8",
929cdf0e10cSrcweir        RTL_TEXTENCODING_INFO_ASCII
930cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_R2L
931cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_MIME };
932cdf0e10cSrcweir    /* SCRIPT_HEBREW, pc code page 862, mac encoding 5 */
933