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 information tables for all japanese charsets: */ 27cdf0e10cSrcweir/* SJIS, MS932, APPLE_JAPANESE, EUC_JP, JIS-X-201, JIS-X-208, JIS-X-212 */ 28cdf0e10cSrcweir 29cdf0e10cSrcweir/* ======================================================================= */ 30cdf0e10cSrcweir 31cdf0e10cSrcweirstatic ImplDBCSToUniLeadTab const aSJISUniLeadTab[256] = 32cdf0e10cSrcweir{ 33cdf0e10cSrcweir { 0x0000, 0, 0, NULL }, /* 0x00 */ 34cdf0e10cSrcweir { 0x0001, 0, 0, NULL }, /* 0x01 */ 35cdf0e10cSrcweir { 0x0002, 0, 0, NULL }, /* 0x02 */ 36cdf0e10cSrcweir { 0x0003, 0, 0, NULL }, /* 0x03 */ 37cdf0e10cSrcweir { 0x0004, 0, 0, NULL }, /* 0x04 */ 38cdf0e10cSrcweir { 0x0005, 0, 0, NULL }, /* 0x05 */ 39cdf0e10cSrcweir { 0x0006, 0, 0, NULL }, /* 0x06 */ 40cdf0e10cSrcweir { 0x0007, 0, 0, NULL }, /* 0x07 */ 41cdf0e10cSrcweir { 0x0008, 0, 0, NULL }, /* 0x08 */ 42cdf0e10cSrcweir { 0x0009, 0, 0, NULL }, /* 0x09 */ 43cdf0e10cSrcweir { 0x000A, 0, 0, NULL }, /* 0x0A */ 44cdf0e10cSrcweir { 0x000B, 0, 0, NULL }, /* 0x0B */ 45cdf0e10cSrcweir { 0x000C, 0, 0, NULL }, /* 0x0C */ 46cdf0e10cSrcweir { 0x000D, 0, 0, NULL }, /* 0x0D */ 47cdf0e10cSrcweir { 0x000E, 0, 0, NULL }, /* 0x0E */ 48cdf0e10cSrcweir { 0x000F, 0, 0, NULL }, /* 0x0F */ 49cdf0e10cSrcweir { 0x0010, 0, 0, NULL }, /* 0x10 */ 50cdf0e10cSrcweir { 0x0011, 0, 0, NULL }, /* 0x11 */ 51cdf0e10cSrcweir { 0x0012, 0, 0, NULL }, /* 0x12 */ 52cdf0e10cSrcweir { 0x0013, 0, 0, NULL }, /* 0x13 */ 53cdf0e10cSrcweir { 0x0014, 0, 0, NULL }, /* 0x14 */ 54cdf0e10cSrcweir { 0x0015, 0, 0, NULL }, /* 0x15 */ 55cdf0e10cSrcweir { 0x0016, 0, 0, NULL }, /* 0x16 */ 56cdf0e10cSrcweir { 0x0017, 0, 0, NULL }, /* 0x17 */ 57cdf0e10cSrcweir { 0x0018, 0, 0, NULL }, /* 0x18 */ 58cdf0e10cSrcweir { 0x0019, 0, 0, NULL }, /* 0x19 */ 59cdf0e10cSrcweir { 0x001A, 0, 0, NULL }, /* 0x1A */ 60cdf0e10cSrcweir { 0x001B, 0, 0, NULL }, /* 0x1B */ 61cdf0e10cSrcweir { 0x001C, 0, 0, NULL }, /* 0x1C */ 62cdf0e10cSrcweir { 0x001D, 0, 0, NULL }, /* 0x1D */ 63cdf0e10cSrcweir { 0x001E, 0, 0, NULL }, /* 0x1E */ 64cdf0e10cSrcweir { 0x001F, 0, 0, NULL }, /* 0x1F */ 65cdf0e10cSrcweir { 0x0020, 0, 0, NULL }, /* 0x20 */ 66cdf0e10cSrcweir { 0x0021, 0, 0, NULL }, /* 0x21 */ 67cdf0e10cSrcweir { 0x0022, 0, 0, NULL }, /* 0x22 */ 68cdf0e10cSrcweir { 0x0023, 0, 0, NULL }, /* 0x23 */ 69cdf0e10cSrcweir { 0x0024, 0, 0, NULL }, /* 0x24 */ 70cdf0e10cSrcweir { 0x0025, 0, 0, NULL }, /* 0x25 */ 71cdf0e10cSrcweir { 0x0026, 0, 0, NULL }, /* 0x26 */ 72cdf0e10cSrcweir { 0x0027, 0, 0, NULL }, /* 0x27 */ 73cdf0e10cSrcweir { 0x0028, 0, 0, NULL }, /* 0x28 */ 74cdf0e10cSrcweir { 0x0029, 0, 0, NULL }, /* 0x29 */ 75cdf0e10cSrcweir { 0x002A, 0, 0, NULL }, /* 0x2A */ 76cdf0e10cSrcweir { 0x002B, 0, 0, NULL }, /* 0x2B */ 77cdf0e10cSrcweir { 0x002C, 0, 0, NULL }, /* 0x2C */ 78cdf0e10cSrcweir { 0x002D, 0, 0, NULL }, /* 0x2D */ 79cdf0e10cSrcweir { 0x002E, 0, 0, NULL }, /* 0x2E */ 80cdf0e10cSrcweir { 0x002F, 0, 0, NULL }, /* 0x2F */ 81cdf0e10cSrcweir { 0x0030, 0, 0, NULL }, /* 0x30 */ 82cdf0e10cSrcweir { 0x0031, 0, 0, NULL }, /* 0x31 */ 83cdf0e10cSrcweir { 0x0032, 0, 0, NULL }, /* 0x32 */ 84cdf0e10cSrcweir { 0x0033, 0, 0, NULL }, /* 0x33 */ 85cdf0e10cSrcweir { 0x0034, 0, 0, NULL }, /* 0x34 */ 86cdf0e10cSrcweir { 0x0035, 0, 0, NULL }, /* 0x35 */ 87cdf0e10cSrcweir { 0x0036, 0, 0, NULL }, /* 0x36 */ 88cdf0e10cSrcweir { 0x0037, 0, 0, NULL }, /* 0x37 */ 89cdf0e10cSrcweir { 0x0038, 0, 0, NULL }, /* 0x38 */ 90cdf0e10cSrcweir { 0x0039, 0, 0, NULL }, /* 0x39 */ 91cdf0e10cSrcweir { 0x003A, 0, 0, NULL }, /* 0x3A */ 92cdf0e10cSrcweir { 0x003B, 0, 0, NULL }, /* 0x3B */ 93cdf0e10cSrcweir { 0x003C, 0, 0, NULL }, /* 0x3C */ 94cdf0e10cSrcweir { 0x003D, 0, 0, NULL }, /* 0x3D */ 95cdf0e10cSrcweir { 0x003E, 0, 0, NULL }, /* 0x3E */ 96cdf0e10cSrcweir { 0x003F, 0, 0, NULL }, /* 0x3F */ 97cdf0e10cSrcweir { 0x0040, 0, 0, NULL }, /* 0x40 */ 98cdf0e10cSrcweir { 0x0041, 0, 0, NULL }, /* 0x41 */ 99cdf0e10cSrcweir { 0x0042, 0, 0, NULL }, /* 0x42 */ 100cdf0e10cSrcweir { 0x0043, 0, 0, NULL }, /* 0x43 */ 101cdf0e10cSrcweir { 0x0044, 0, 0, NULL }, /* 0x44 */ 102cdf0e10cSrcweir { 0x0045, 0, 0, NULL }, /* 0x45 */ 103cdf0e10cSrcweir { 0x0046, 0, 0, NULL }, /* 0x46 */ 104cdf0e10cSrcweir { 0x0047, 0, 0, NULL }, /* 0x47 */ 105cdf0e10cSrcweir { 0x0048, 0, 0, NULL }, /* 0x48 */ 106cdf0e10cSrcweir { 0x0049, 0, 0, NULL }, /* 0x49 */ 107cdf0e10cSrcweir { 0x004A, 0, 0, NULL }, /* 0x4A */ 108cdf0e10cSrcweir { 0x004B, 0, 0, NULL }, /* 0x4B */ 109cdf0e10cSrcweir { 0x004C, 0, 0, NULL }, /* 0x4C */ 110cdf0e10cSrcweir { 0x004D, 0, 0, NULL }, /* 0x4D */ 111cdf0e10cSrcweir { 0x004E, 0, 0, NULL }, /* 0x4E */ 112cdf0e10cSrcweir { 0x004F, 0, 0, NULL }, /* 0x4F */ 113cdf0e10cSrcweir { 0x0050, 0, 0, NULL }, /* 0x50 */ 114cdf0e10cSrcweir { 0x0051, 0, 0, NULL }, /* 0x51 */ 115cdf0e10cSrcweir { 0x0052, 0, 0, NULL }, /* 0x52 */ 116cdf0e10cSrcweir { 0x0053, 0, 0, NULL }, /* 0x53 */ 117cdf0e10cSrcweir { 0x0054, 0, 0, NULL }, /* 0x54 */ 118cdf0e10cSrcweir { 0x0055, 0, 0, NULL }, /* 0x55 */ 119cdf0e10cSrcweir { 0x0056, 0, 0, NULL }, /* 0x56 */ 120cdf0e10cSrcweir { 0x0057, 0, 0, NULL }, /* 0x57 */ 121cdf0e10cSrcweir { 0x0058, 0, 0, NULL }, /* 0x58 */ 122cdf0e10cSrcweir { 0x0059, 0, 0, NULL }, /* 0x59 */ 123cdf0e10cSrcweir { 0x005A, 0, 0, NULL }, /* 0x5A */ 124cdf0e10cSrcweir { 0x005B, 0, 0, NULL }, /* 0x5B */ 125cdf0e10cSrcweir { 0x005C, 0, 0, NULL }, /* 0x5C */ /* is A5 (YEN SIGN), but for compatibiliy with ascii, we use 0x5C (SLASH) like MS CP392 */ 126cdf0e10cSrcweir { 0x005D, 0, 0, NULL }, /* 0x5D */ 127cdf0e10cSrcweir { 0x005E, 0, 0, NULL }, /* 0x5E */ 128cdf0e10cSrcweir { 0x005F, 0, 0, NULL }, /* 0x5F */ 129cdf0e10cSrcweir { 0x0060, 0, 0, NULL }, /* 0x60 */ 130cdf0e10cSrcweir { 0x0061, 0, 0, NULL }, /* 0x61 */ 131cdf0e10cSrcweir { 0x0062, 0, 0, NULL }, /* 0x62 */ 132cdf0e10cSrcweir { 0x0063, 0, 0, NULL }, /* 0x63 */ 133cdf0e10cSrcweir { 0x0064, 0, 0, NULL }, /* 0x64 */ 134cdf0e10cSrcweir { 0x0065, 0, 0, NULL }, /* 0x65 */ 135cdf0e10cSrcweir { 0x0066, 0, 0, NULL }, /* 0x66 */ 136cdf0e10cSrcweir { 0x0067, 0, 0, NULL }, /* 0x67 */ 137cdf0e10cSrcweir { 0x0068, 0, 0, NULL }, /* 0x68 */ 138cdf0e10cSrcweir { 0x0069, 0, 0, NULL }, /* 0x69 */ 139cdf0e10cSrcweir { 0x006A, 0, 0, NULL }, /* 0x6A */ 140cdf0e10cSrcweir { 0x006B, 0, 0, NULL }, /* 0x6B */ 141cdf0e10cSrcweir { 0x006C, 0, 0, NULL }, /* 0x6C */ 142cdf0e10cSrcweir { 0x006D, 0, 0, NULL }, /* 0x6D */ 143cdf0e10cSrcweir { 0x006E, 0, 0, NULL }, /* 0x6E */ 144cdf0e10cSrcweir { 0x006F, 0, 0, NULL }, /* 0x6F */ 145cdf0e10cSrcweir { 0x0070, 0, 0, NULL }, /* 0x70 */ 146cdf0e10cSrcweir { 0x0071, 0, 0, NULL }, /* 0x71 */ 147cdf0e10cSrcweir { 0x0072, 0, 0, NULL }, /* 0x72 */ 148cdf0e10cSrcweir { 0x0073, 0, 0, NULL }, /* 0x73 */ 149cdf0e10cSrcweir { 0x0074, 0, 0, NULL }, /* 0x74 */ 150cdf0e10cSrcweir { 0x0075, 0, 0, NULL }, /* 0x75 */ 151cdf0e10cSrcweir { 0x0076, 0, 0, NULL }, /* 0x76 */ 152cdf0e10cSrcweir { 0x0077, 0, 0, NULL }, /* 0x77 */ 153cdf0e10cSrcweir { 0x0078, 0, 0, NULL }, /* 0x78 */ 154cdf0e10cSrcweir { 0x0079, 0, 0, NULL }, /* 0x79 */ 155cdf0e10cSrcweir { 0x007A, 0, 0, NULL }, /* 0x7A */ 156cdf0e10cSrcweir { 0x007B, 0, 0, NULL }, /* 0x7B */ 157cdf0e10cSrcweir { 0x007C, 0, 0, NULL }, /* 0x7C */ 158cdf0e10cSrcweir { 0x007D, 0, 0, NULL }, /* 0x7D */ 159cdf0e10cSrcweir { 0x007E, 0, 0, NULL }, /* 0x7E */ /* is 0x0203E (SPACING OVERSCORE), but for compatibiliy with ascii, we use 0x7E (TILDE) like MS CP392 */ 160cdf0e10cSrcweir { 0x007F, 0, 0, NULL }, /* 0x7F */ 161cdf0e10cSrcweir { 0x005C, 0, 0, NULL }, /* 0x80 */ /* APPLE additons over SJIS, we convert this like apple, because I think, this gives better result, than we take a replacement char */ 162cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_81 }, /* 0x81 */ 163cdf0e10cSrcweir { 0, 0x4F, 0xF1, aImplDBCSToUniTab_SJIS_82 }, /* 0x82 */ 164cdf0e10cSrcweir { 0, 0x40, 0xD6, aImplDBCSToUniTab_SJIS_83 }, /* 0x83 */ 165cdf0e10cSrcweir { 0, 0x40, 0xBF, aImplDBCSToUniTab_SJIS_84 }, /* 0x84 */ 166cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x85 */ /* We convert this as double byte */ 167cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x86 */ /* We convert this as double byte */ 168cdf0e10cSrcweir { 0, 0x40, 0x9C, aImplDBCSToUniTab_MS932_87 }, /* 0x87 */ /* We use the MS table for better MS compatibility */ 169cdf0e10cSrcweir { 0, 0x9F, 0xFC, aImplDBCSToUniTab_SJIS_88 }, /* 0x88 */ 170cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_89 }, /* 0x89 */ 171cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8A }, /* 0x8A */ 172cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8B }, /* 0x8B */ 173cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8C }, /* 0x8C */ 174cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8D }, /* 0x8D */ 175cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8E }, /* 0x8E */ 176cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8F }, /* 0x8F */ 177cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_90 }, /* 0x90 */ 178cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_91 }, /* 0x91 */ 179cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_92 }, /* 0x92 */ 180cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_93 }, /* 0x93 */ 181cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_94 }, /* 0x94 */ 182cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_95 }, /* 0x95 */ 183cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_96 }, /* 0x96 */ 184cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_97 }, /* 0x97 */ 185cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_98 }, /* 0x98 */ 186cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_99 }, /* 0x99 */ 187cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9A }, /* 0x9A */ 188cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9B }, /* 0x9B */ 189cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9C }, /* 0x9C */ 190cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9D }, /* 0x9D */ 191cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9E }, /* 0x9E */ 192cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9F }, /* 0x9F */ 193cdf0e10cSrcweir { 0x00A0, 0, 0, NULL }, /* 0xA0 */ /* APPLE additons over SJIS, we convert this like apple, because I think, this gives better result, than we take a replacement char */ 194cdf0e10cSrcweir { 0xFF61, 0, 0, NULL }, /* 0xA1 */ 195cdf0e10cSrcweir { 0xFF62, 0, 0, NULL }, /* 0xA2 */ 196cdf0e10cSrcweir { 0xFF63, 0, 0, NULL }, /* 0xA3 */ 197cdf0e10cSrcweir { 0xFF64, 0, 0, NULL }, /* 0xA4 */ 198cdf0e10cSrcweir { 0xFF65, 0, 0, NULL }, /* 0xA5 */ 199cdf0e10cSrcweir { 0xFF66, 0, 0, NULL }, /* 0xA6 */ 200cdf0e10cSrcweir { 0xFF67, 0, 0, NULL }, /* 0xA7 */ 201cdf0e10cSrcweir { 0xFF68, 0, 0, NULL }, /* 0xA8 */ 202cdf0e10cSrcweir { 0xFF69, 0, 0, NULL }, /* 0xA9 */ 203cdf0e10cSrcweir { 0xFF6A, 0, 0, NULL }, /* 0xAA */ 204cdf0e10cSrcweir { 0xFF6B, 0, 0, NULL }, /* 0xAB */ 205cdf0e10cSrcweir { 0xFF6C, 0, 0, NULL }, /* 0xAC */ 206cdf0e10cSrcweir { 0xFF6D, 0, 0, NULL }, /* 0xAD */ 207cdf0e10cSrcweir { 0xFF6E, 0, 0, NULL }, /* 0xAE */ 208cdf0e10cSrcweir { 0xFF6F, 0, 0, NULL }, /* 0xAF */ 209cdf0e10cSrcweir { 0xFF70, 0, 0, NULL }, /* 0xB0 */ 210cdf0e10cSrcweir { 0xFF71, 0, 0, NULL }, /* 0xB1 */ 211cdf0e10cSrcweir { 0xFF72, 0, 0, NULL }, /* 0xB2 */ 212cdf0e10cSrcweir { 0xFF73, 0, 0, NULL }, /* 0xB3 */ 213cdf0e10cSrcweir { 0xFF74, 0, 0, NULL }, /* 0xB4 */ 214cdf0e10cSrcweir { 0xFF75, 0, 0, NULL }, /* 0xB5 */ 215cdf0e10cSrcweir { 0xFF76, 0, 0, NULL }, /* 0xB6 */ 216cdf0e10cSrcweir { 0xFF77, 0, 0, NULL }, /* 0xB7 */ 217cdf0e10cSrcweir { 0xFF78, 0, 0, NULL }, /* 0xB8 */ 218cdf0e10cSrcweir { 0xFF79, 0, 0, NULL }, /* 0xB9 */ 219cdf0e10cSrcweir { 0xFF7A, 0, 0, NULL }, /* 0xBA */ 220cdf0e10cSrcweir { 0xFF7B, 0, 0, NULL }, /* 0xBB */ 221cdf0e10cSrcweir { 0xFF7C, 0, 0, NULL }, /* 0xBC */ 222cdf0e10cSrcweir { 0xFF7D, 0, 0, NULL }, /* 0xBD */ 223cdf0e10cSrcweir { 0xFF7E, 0, 0, NULL }, /* 0xBE */ 224cdf0e10cSrcweir { 0xFF7F, 0, 0, NULL }, /* 0xBF */ 225cdf0e10cSrcweir { 0xFF80, 0, 0, NULL }, /* 0xC0 */ 226cdf0e10cSrcweir { 0xFF81, 0, 0, NULL }, /* 0xC1 */ 227cdf0e10cSrcweir { 0xFF82, 0, 0, NULL }, /* 0xC2 */ 228cdf0e10cSrcweir { 0xFF83, 0, 0, NULL }, /* 0xC3 */ 229cdf0e10cSrcweir { 0xFF84, 0, 0, NULL }, /* 0xC4 */ 230cdf0e10cSrcweir { 0xFF85, 0, 0, NULL }, /* 0xC5 */ 231cdf0e10cSrcweir { 0xFF86, 0, 0, NULL }, /* 0xC6 */ 232cdf0e10cSrcweir { 0xFF87, 0, 0, NULL }, /* 0xC7 */ 233cdf0e10cSrcweir { 0xFF88, 0, 0, NULL }, /* 0xC8 */ 234cdf0e10cSrcweir { 0xFF89, 0, 0, NULL }, /* 0xC9 */ 235cdf0e10cSrcweir { 0xFF8A, 0, 0, NULL }, /* 0xCA */ 236cdf0e10cSrcweir { 0xFF8B, 0, 0, NULL }, /* 0xCB */ 237cdf0e10cSrcweir { 0xFF8C, 0, 0, NULL }, /* 0xCC */ 238cdf0e10cSrcweir { 0xFF8D, 0, 0, NULL }, /* 0xCD */ 239cdf0e10cSrcweir { 0xFF8E, 0, 0, NULL }, /* 0xCE */ 240cdf0e10cSrcweir { 0xFF8F, 0, 0, NULL }, /* 0xCF */ 241cdf0e10cSrcweir { 0xFF90, 0, 0, NULL }, /* 0xD0 */ 242cdf0e10cSrcweir { 0xFF91, 0, 0, NULL }, /* 0xD1 */ 243cdf0e10cSrcweir { 0xFF92, 0, 0, NULL }, /* 0xD2 */ 244cdf0e10cSrcweir { 0xFF93, 0, 0, NULL }, /* 0xD3 */ 245cdf0e10cSrcweir { 0xFF94, 0, 0, NULL }, /* 0xD4 */ 246cdf0e10cSrcweir { 0xFF95, 0, 0, NULL }, /* 0xD5 */ 247cdf0e10cSrcweir { 0xFF96, 0, 0, NULL }, /* 0xD6 */ 248cdf0e10cSrcweir { 0xFF97, 0, 0, NULL }, /* 0xD7 */ 249cdf0e10cSrcweir { 0xFF98, 0, 0, NULL }, /* 0xD8 */ 250cdf0e10cSrcweir { 0xFF99, 0, 0, NULL }, /* 0xD9 */ 251cdf0e10cSrcweir { 0xFF9A, 0, 0, NULL }, /* 0xDA */ 252cdf0e10cSrcweir { 0xFF9B, 0, 0, NULL }, /* 0xDB */ 253cdf0e10cSrcweir { 0xFF9C, 0, 0, NULL }, /* 0xDC */ 254cdf0e10cSrcweir { 0xFF9D, 0, 0, NULL }, /* 0xDD */ 255cdf0e10cSrcweir { 0xFF9E, 0, 0, NULL }, /* 0xDE */ 256cdf0e10cSrcweir { 0xFF9F, 0, 0, NULL }, /* 0xDF */ 257cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E0 }, /* 0xE0 */ 258cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E1 }, /* 0xE1 */ 259cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E2 }, /* 0xE2 */ 260cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E3 }, /* 0xE3 */ 261cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E4 }, /* 0xE4 */ 262cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E5 }, /* 0xE5 */ 263cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E6 }, /* 0xE6 */ 264cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E7 }, /* 0xE7 */ 265cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E8 }, /* 0xE8 */ 266cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E9 }, /* 0xE9 */ 267cdf0e10cSrcweir { 0, 0x40, 0xA4, aImplDBCSToUniTab_SJIS_EA }, /* 0xEA */ 268cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xEB */ /* We convert this as double byte */ 269cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xEC */ /* We convert this as double byte */ 270cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_ED }, /* 0xED */ /* We use the MS table for better MS compatibility */ 271cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_EE }, /* 0xEE */ /* We use the MS table for better MS compatibility */ 272cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xEF */ /* We convert this as double byte */ 273cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF0 */ /* EUDC Range */ 274cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF1 */ /* EUDC Range */ 275cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF2 */ /* EUDC Range */ 276cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF3 */ /* EUDC Range */ 277cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF4 */ /* EUDC Range */ 278cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF5 */ /* EUDC Range */ 279cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF6 */ /* EUDC Range */ 280cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF7 */ /* EUDC Range */ 281cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF8 */ /* EUDC Range */ 282cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF9 */ /* EUDC Range */ 283cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_FA }, /* 0xFA */ /* We use the MS table for better MS compatibility */ 284cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_FB }, /* 0xFB */ /* We use the MS table for better MS compatibility */ 285cdf0e10cSrcweir { 0, 0x40, 0x4B, aImplDBCSToUniTab_MS932_FC }, /* 0xFC */ /* We use the MS table for better MS compatibility */ 286cdf0e10cSrcweir { 0x00A9, 0, 0, NULL }, /* 0xFD */ /* APPLE additons over SJIS, we convert this like apple, because I think, this gives better result, than we take a replacement char */ 287cdf0e10cSrcweir { 0x2122, 0, 0, NULL }, /* 0xFE */ /* APPLE additons over SJIS, we convert this like apple, because I think, this gives better result, than we take a replacement char */ 288cdf0e10cSrcweir { 0x2026, 0, 0, NULL } /* 0xFF */ /* APPLE additons over SJIS, we convert this like apple, because I think, this gives better result, than we take a replacement char */ 289cdf0e10cSrcweir}; 290cdf0e10cSrcweir 291cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 292cdf0e10cSrcweir 293cdf0e10cSrcweir/* MS932-Tables are used for better microsoft compatibility */ 294cdf0e10cSrcweir 295cdf0e10cSrcweirstatic ImplUniToDBCSHighTab const aSJISDBCSHighTab[256] = 296cdf0e10cSrcweir{ 297cdf0e10cSrcweir { 0x00, 0xF7, aImplUniToDBCSTab_SJIS_00 }, /* 0x00 */ 298cdf0e10cSrcweir { 1, 0, NULL }, /* 0x01 */ 299cdf0e10cSrcweir { 1, 0, NULL }, /* 0x02 */ 300cdf0e10cSrcweir { 0x91, 0xC9, aImplUniToDBCSTab_SJIS_03 }, /* 0x03 */ 301cdf0e10cSrcweir { 0x01, 0x51, aImplUniToDBCSTab_SJIS_04 }, /* 0x04 */ 302cdf0e10cSrcweir { 1, 0, NULL }, /* 0x05 */ 303cdf0e10cSrcweir { 1, 0, NULL }, /* 0x06 */ 304cdf0e10cSrcweir { 1, 0, NULL }, /* 0x07 */ 305cdf0e10cSrcweir { 1, 0, NULL }, /* 0x08 */ 306cdf0e10cSrcweir { 1, 0, NULL }, /* 0x09 */ 307cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0A */ 308cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0B */ 309cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0C */ 310cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0D */ 311cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0E */ 312cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0F */ 313cdf0e10cSrcweir { 1, 0, NULL }, /* 0x10 */ 314cdf0e10cSrcweir { 1, 0, NULL }, /* 0x11 */ 315cdf0e10cSrcweir { 1, 0, NULL }, /* 0x12 */ 316cdf0e10cSrcweir { 1, 0, NULL }, /* 0x13 */ 317cdf0e10cSrcweir { 1, 0, NULL }, /* 0x14 */ 318cdf0e10cSrcweir { 1, 0, NULL }, /* 0x15 */ 319cdf0e10cSrcweir { 1, 0, NULL }, /* 0x16 */ 320cdf0e10cSrcweir { 1, 0, NULL }, /* 0x17 */ 321cdf0e10cSrcweir { 1, 0, NULL }, /* 0x18 */ 322cdf0e10cSrcweir { 1, 0, NULL }, /* 0x19 */ 323cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1A */ 324cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1B */ 325cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1C */ 326cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1D */ 327cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1E */ 328cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1F */ 329cdf0e10cSrcweir { 0x10, 0x3E, aImplUniToDBCSTab_SJIS_20 }, /* 0x20 */ 330cdf0e10cSrcweir { 0x03, 0xD4, aImplUniToDBCSTab_MS932_21 }, /* 0x21 */ 331cdf0e10cSrcweir { 0x00, 0xBF, aImplUniToDBCSTab_MS932_22 }, /* 0x22 */ 332cdf0e10cSrcweir { 0x12, 0x12, aImplUniToDBCSTab_SJIS_23 }, /* 0x23 */ 333cdf0e10cSrcweir { 0x60, 0x73, aImplUniToDBCSTab_MS932_24 }, /* 0x24 */ 334cdf0e10cSrcweir { 0x00, 0xEF, aImplUniToDBCSTab_SJIS_25 }, /* 0x25 */ 335cdf0e10cSrcweir { 0x05, 0x6F, aImplUniToDBCSTab_SJIS_26 }, /* 0x26 */ 336cdf0e10cSrcweir { 1, 0, NULL }, /* 0x27 */ 337cdf0e10cSrcweir { 1, 0, NULL }, /* 0x28 */ 338cdf0e10cSrcweir { 1, 0, NULL }, /* 0x29 */ 339cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2A */ 340cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2B */ 341cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2C */ 342cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2D */ 343cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2E */ 344cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2F */ 345cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_30 }, /* 0x30 */ 346cdf0e10cSrcweir { 1, 0, NULL }, /* 0x31 */ 347cdf0e10cSrcweir { 0x31, 0xA8, aImplUniToDBCSTab_MS932_32 }, /* 0x32 */ 348cdf0e10cSrcweir { 0x03, 0xCD, aImplUniToDBCSTab_MS932_33 }, /* 0x33 */ 349cdf0e10cSrcweir { 1, 0, NULL }, /* 0x34 */ 350cdf0e10cSrcweir { 1, 0, NULL }, /* 0x35 */ 351cdf0e10cSrcweir { 1, 0, NULL }, /* 0x36 */ 352cdf0e10cSrcweir { 1, 0, NULL }, /* 0x37 */ 353cdf0e10cSrcweir { 1, 0, NULL }, /* 0x38 */ 354cdf0e10cSrcweir { 1, 0, NULL }, /* 0x39 */ 355cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3A */ 356cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3B */ 357cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3C */ 358cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3D */ 359cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3E */ 360cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3F */ 361cdf0e10cSrcweir { 1, 0, NULL }, /* 0x40 */ 362cdf0e10cSrcweir { 1, 0, NULL }, /* 0x41 */ 363cdf0e10cSrcweir { 1, 0, NULL }, /* 0x42 */ 364cdf0e10cSrcweir { 1, 0, NULL }, /* 0x43 */ 365cdf0e10cSrcweir { 1, 0, NULL }, /* 0x44 */ 366cdf0e10cSrcweir { 1, 0, NULL }, /* 0x45 */ 367cdf0e10cSrcweir { 1, 0, NULL }, /* 0x46 */ 368cdf0e10cSrcweir { 1, 0, NULL }, /* 0x47 */ 369cdf0e10cSrcweir { 1, 0, NULL }, /* 0x48 */ 370cdf0e10cSrcweir { 1, 0, NULL }, /* 0x49 */ 371cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4A */ 372cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4B */ 373cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4C */ 374cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4D */ 375cdf0e10cSrcweir { 0x00, 0xFC, aImplUniToDBCSTab_SJIS_4E }, /* 0x4E */ 376cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_4F }, /* 0x4F */ 377cdf0e10cSrcweir { 0x05, 0xFB, aImplUniToDBCSTab_SJIS_50 }, /* 0x50 */ 378cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_51 }, /* 0x51 */ 379cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_52 }, /* 0x52 */ 380cdf0e10cSrcweir { 0x00, 0xFA, aImplUniToDBCSTab_SJIS_53 }, /* 0x53 */ 381cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_SJIS_54 }, /* 0x54 */ 382cdf0e10cSrcweir { 0x04, 0xFE, aImplUniToDBCSTab_SJIS_55 }, /* 0x55 */ 383cdf0e10cSrcweir { 0x06, 0xFF, aImplUniToDBCSTab_SJIS_56 }, /* 0x56 */ 384cdf0e10cSrcweir { 0x00, 0xFC, aImplUniToDBCSTab_SJIS_57 }, /* 0x57 */ 385cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_SJIS_58 }, /* 0x58 */ 386cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_SJIS_59 }, /* 0x59 */ 387cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_5A }, /* 0x5A */ 388cdf0e10cSrcweir { 0x09, 0xFF, aImplUniToDBCSTab_SJIS_5B }, /* 0x5B */ 389cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_SJIS_5C }, /* 0x5C */ 390cdf0e10cSrcweir { 0x07, 0xFE, aImplUniToDBCSTab_SJIS_5D }, /* 0x5D */ 391cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_SJIS_5E }, /* 0x5E */ 392cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_SJIS_5F }, /* 0x5F */ 393cdf0e10cSrcweir { 0x0E, 0xFB, aImplUniToDBCSTab_SJIS_60 }, /* 0x60 */ 394cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_61 }, /* 0x61 */ 395cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_62 }, /* 0x62 */ 396cdf0e10cSrcweir { 0x01, 0xFA, aImplUniToDBCSTab_SJIS_63 }, /* 0x63 */ 397cdf0e10cSrcweir { 0x06, 0xFE, aImplUniToDBCSTab_SJIS_64 }, /* 0x64 */ 398cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_SJIS_65 }, /* 0x65 */ 399cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_66 }, /* 0x66 */ 400cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_67 }, /* 0x67 */ 401cdf0e10cSrcweir { 0x01, 0xFA, aImplUniToDBCSTab_SJIS_68 }, /* 0x68 */ 402cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_69 }, /* 0x69 */ 403cdf0e10cSrcweir { 0x02, 0xFB, aImplUniToDBCSTab_SJIS_6A }, /* 0x6A */ 404cdf0e10cSrcweir { 0x04, 0xF3, aImplUniToDBCSTab_SJIS_6B }, /* 0x6B */ 405cdf0e10cSrcweir { 0x08, 0xF3, aImplUniToDBCSTab_SJIS_6C }, /* 0x6C */ 406cdf0e10cSrcweir { 0x04, 0xFC, aImplUniToDBCSTab_SJIS_6D }, /* 0x6D */ 407cdf0e10cSrcweir { 0x05, 0xFF, aImplUniToDBCSTab_SJIS_6E }, /* 0x6E */ 408cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_SJIS_6F }, /* 0x6F */ 409cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_SJIS_70 }, /* 0x70 */ 410cdf0e10cSrcweir { 0x04, 0xFF, aImplUniToDBCSTab_SJIS_71 }, /* 0x71 */ 411cdf0e10cSrcweir { 0x06, 0xFD, aImplUniToDBCSTab_SJIS_72 }, /* 0x72 */ 412cdf0e10cSrcweir { 0x0A, 0xFE, aImplUniToDBCSTab_SJIS_73 }, /* 0x73 */ 413cdf0e10cSrcweir { 0x03, 0xF8, aImplUniToDBCSTab_SJIS_74 }, /* 0x74 */ 414cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_SJIS_75 }, /* 0x75 */ 415cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_SJIS_76 }, /* 0x76 */ 416cdf0e10cSrcweir { 0x01, 0xFC, aImplUniToDBCSTab_SJIS_77 }, /* 0x77 */ 417cdf0e10cSrcweir { 0x02, 0xFD, aImplUniToDBCSTab_SJIS_78 }, /* 0x78 */ 418cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_79 }, /* 0x79 */ 419cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_7A }, /* 0x7A */ 420cdf0e10cSrcweir { 0x02, 0xF7, aImplUniToDBCSTab_SJIS_7B }, /* 0x7B */ 421cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_7C }, /* 0x7C */ 422cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_SJIS_7D }, /* 0x7D */ 423cdf0e10cSrcweir { 0x01, 0x9C, aImplUniToDBCSTab_SJIS_7E }, /* 0x7E */ 424cdf0e10cSrcweir { 0x36, 0xFC, aImplUniToDBCSTab_SJIS_7F }, /* 0x7F */ 425cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_SJIS_80 }, /* 0x80 */ 426cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_SJIS_81 }, /* 0x81 */ 427cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_82 }, /* 0x82 */ 428cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_SJIS_83 }, /* 0x83 */ 429cdf0e10cSrcweir { 0x03, 0xFF, aImplUniToDBCSTab_SJIS_84 }, /* 0x84 */ 430cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_85 }, /* 0x85 */ 431cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_SJIS_86 }, /* 0x86 */ 432cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_87 }, /* 0x87 */ 433cdf0e10cSrcweir { 0x05, 0xFE, aImplUniToDBCSTab_SJIS_88 }, /* 0x88 */ 434cdf0e10cSrcweir { 0x02, 0xF8, aImplUniToDBCSTab_SJIS_89 }, /* 0x89 */ 435cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_8A }, /* 0x8A */ 436cdf0e10cSrcweir { 0x00, 0x9A, aImplUniToDBCSTab_SJIS_8B }, /* 0x8B */ 437cdf0e10cSrcweir { 0x37, 0xFD, aImplUniToDBCSTab_SJIS_8C }, /* 0x8C */ 438cdf0e10cSrcweir { 0x04, 0xFF, aImplUniToDBCSTab_SJIS_8D }, /* 0x8D */ 439cdf0e10cSrcweir { 0x08, 0xFE, aImplUniToDBCSTab_SJIS_8E }, /* 0x8E */ 440cdf0e10cSrcweir { 0x03, 0xFD, aImplUniToDBCSTab_SJIS_8F }, /* 0x8F */ 441cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_SJIS_90 }, /* 0x90 */ 442cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_SJIS_91 }, /* 0x91 */ 443cdf0e10cSrcweir { 0x06, 0xFF, aImplUniToDBCSTab_SJIS_92 }, /* 0x92 */ 444cdf0e10cSrcweir { 0x02, 0xF8, aImplUniToDBCSTab_SJIS_93 }, /* 0x93 */ 445cdf0e10cSrcweir { 0x03, 0x81, aImplUniToDBCSTab_SJIS_94 }, /* 0x94 */ 446cdf0e10cSrcweir { 0x77, 0xE5, aImplUniToDBCSTab_SJIS_95 }, /* 0x95 */ 447cdf0e10cSrcweir { 0x1C, 0xFB, aImplUniToDBCSTab_SJIS_96 }, /* 0x96 */ 448cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_97 }, /* 0x97 */ 449cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_SJIS_98 }, /* 0x98 */ 450cdf0e10cSrcweir { 0x03, 0xFF, aImplUniToDBCSTab_SJIS_99 }, /* 0x99 */ 451cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_9A }, /* 0x9A */ 452cdf0e10cSrcweir { 0x06, 0xF5, aImplUniToDBCSTab_SJIS_9B }, /* 0x9B */ 453cdf0e10cSrcweir { 0x00, 0xF6, aImplUniToDBCSTab_SJIS_9C }, /* 0x9C */ 454cdf0e10cSrcweir { 0x03, 0xFD, aImplUniToDBCSTab_SJIS_9D }, /* 0x9D */ 455cdf0e10cSrcweir { 0x19, 0xFD, aImplUniToDBCSTab_SJIS_9E }, /* 0x9E */ 456cdf0e10cSrcweir { 0x07, 0xA0, aImplUniToDBCSTab_SJIS_9F }, /* 0x9F */ 457cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA0 */ 458cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA1 */ 459cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA2 */ 460cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA3 */ 461cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA4 */ 462cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA5 */ 463cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA6 */ 464cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA7 */ 465cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA8 */ 466cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA9 */ 467cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAA */ 468cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAB */ 469cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAC */ 470cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAD */ 471cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAE */ 472cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAF */ 473cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB0 */ 474cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB1 */ 475cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB2 */ 476cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB3 */ 477cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB4 */ 478cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB5 */ 479cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB6 */ 480cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB7 */ 481cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB8 */ 482cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB9 */ 483cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBA */ 484cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBB */ 485cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBC */ 486cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBD */ 487cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBE */ 488cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBF */ 489cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC0 */ 490cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC1 */ 491cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC2 */ 492cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC3 */ 493cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC4 */ 494cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC5 */ 495cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC6 */ 496cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC7 */ 497cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC8 */ 498cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC9 */ 499cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCA */ 500cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCB */ 501cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCC */ 502cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCD */ 503cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCE */ 504cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCF */ 505cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD0 */ 506cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD1 */ 507cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD2 */ 508cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD3 */ 509cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD4 */ 510cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD5 */ 511cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD6 */ 512cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD7 */ 513cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD8 */ 514cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD9 */ 515cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDA */ 516cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDB */ 517cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDC */ 518cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDD */ 519cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDE */ 520cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDF */ 521cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE0 */ 522cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE1 */ 523cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE2 */ 524cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE3 */ 525cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE4 */ 526cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE5 */ 527cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE6 */ 528cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE7 */ 529cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE8 */ 530cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE9 */ 531cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEA */ 532cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEB */ 533cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEC */ 534cdf0e10cSrcweir { 1, 0, NULL }, /* 0xED */ 535cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEE */ 536cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEF */ 537cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF0 */ 538cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF1 */ 539cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF2 */ 540cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF3 */ 541cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF4 */ 542cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF5 */ 543cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF6 */ 544cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF7 */ 545cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF8 */ 546cdf0e10cSrcweir { 0x29, 0xDC, aImplUniToDBCSTab_MS932_F9 }, /* 0xF9 */ 547cdf0e10cSrcweir { 0x0E, 0x2D, aImplUniToDBCSTab_MS932_FA }, /* 0xFA */ 548cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFB */ 549cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFC */ 550cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFD */ 551cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFE */ 552cdf0e10cSrcweir { 0x01, 0xE5, aImplUniToDBCSTab_SJIS_FF } /* 0xFF */ 553cdf0e10cSrcweir}; 554cdf0e10cSrcweir 555cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 556cdf0e10cSrcweir 557cdf0e10cSrcweir/* F040-F9FC --> E000-E757 */ 558cdf0e10cSrcweir 559cdf0e10cSrcweir#define DBCS_EUDC_SJIS_COUNT 1 560cdf0e10cSrcweirstatic ImplDBCSEUDCData const aImplSJISDBCSEUDCTab[DBCS_EUDC_SJIS_COUNT] = 561cdf0e10cSrcweir{ 562cdf0e10cSrcweir /* EUDC-Range */ 563cdf0e10cSrcweir /* Lead: F0-F9 */ 564cdf0e10cSrcweir /* Trail: 40-7E, 80-FC */ 565cdf0e10cSrcweir { 0xF0, 0xF9, 0x40, 0x7E, 0x80, 0xFC, 0, 0, 2, 0xBC, 0xE000, 0xE757 } 566cdf0e10cSrcweir}; 567cdf0e10cSrcweir 568cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 569cdf0e10cSrcweir 570cdf0e10cSrcweirstatic ImplDBCSConvertData const aImplSJISDBCSCvtData = 571cdf0e10cSrcweir{ 572cdf0e10cSrcweir aSJISUniLeadTab, 573cdf0e10cSrcweir aSJISDBCSHighTab, 574cdf0e10cSrcweir 0x00, 0xFF, 575cdf0e10cSrcweir 0x40, 0xFC, 576cdf0e10cSrcweir aImplSJISDBCSEUDCTab, 577cdf0e10cSrcweir DBCS_EUDC_SJIS_COUNT 578cdf0e10cSrcweir}; 579cdf0e10cSrcweir 580cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 581cdf0e10cSrcweir 582cdf0e10cSrcweirstatic ImplTextEncodingData const aImplSJISTextEncodingData 583cdf0e10cSrcweir = { { &aImplSJISDBCSCvtData, 584cdf0e10cSrcweir ImplDBCSToUnicode, 585cdf0e10cSrcweir ImplUnicodeToDBCS, 586cdf0e10cSrcweir NULL, 587cdf0e10cSrcweir NULL, 588cdf0e10cSrcweir NULL, 589cdf0e10cSrcweir NULL, 590cdf0e10cSrcweir NULL, 591cdf0e10cSrcweir NULL }, 592cdf0e10cSrcweir 1, 593cdf0e10cSrcweir 2, 594cdf0e10cSrcweir 2, 595cdf0e10cSrcweir 128, 596cdf0e10cSrcweir "euc-jp", 597cdf0e10cSrcweir "shift_jis", 598cdf0e10cSrcweir RTL_TEXTENCODING_INFO_MULTIBYTE | RTL_TEXTENCODING_INFO_MIME }; 599cdf0e10cSrcweir /* SCRIPT_JAPANESE, pc code page 932, mac encoding 1 */ 600cdf0e10cSrcweir 601cdf0e10cSrcweir/* ======================================================================= */ 602cdf0e10cSrcweir 603cdf0e10cSrcweirstatic ImplDBCSToUniLeadTab const aMS932UniLeadTab[256] = 604cdf0e10cSrcweir{ 605cdf0e10cSrcweir { 0x0000, 0, 0, NULL }, /* 0x00 */ 606cdf0e10cSrcweir { 0x0001, 0, 0, NULL }, /* 0x01 */ 607cdf0e10cSrcweir { 0x0002, 0, 0, NULL }, /* 0x02 */ 608cdf0e10cSrcweir { 0x0003, 0, 0, NULL }, /* 0x03 */ 609cdf0e10cSrcweir { 0x0004, 0, 0, NULL }, /* 0x04 */ 610cdf0e10cSrcweir { 0x0005, 0, 0, NULL }, /* 0x05 */ 611cdf0e10cSrcweir { 0x0006, 0, 0, NULL }, /* 0x06 */ 612cdf0e10cSrcweir { 0x0007, 0, 0, NULL }, /* 0x07 */ 613cdf0e10cSrcweir { 0x0008, 0, 0, NULL }, /* 0x08 */ 614cdf0e10cSrcweir { 0x0009, 0, 0, NULL }, /* 0x09 */ 615cdf0e10cSrcweir { 0x000A, 0, 0, NULL }, /* 0x0A */ 616cdf0e10cSrcweir { 0x000B, 0, 0, NULL }, /* 0x0B */ 617cdf0e10cSrcweir { 0x000C, 0, 0, NULL }, /* 0x0C */ 618cdf0e10cSrcweir { 0x000D, 0, 0, NULL }, /* 0x0D */ 619cdf0e10cSrcweir { 0x000E, 0, 0, NULL }, /* 0x0E */ 620cdf0e10cSrcweir { 0x000F, 0, 0, NULL }, /* 0x0F */ 621cdf0e10cSrcweir { 0x0010, 0, 0, NULL }, /* 0x10 */ 622cdf0e10cSrcweir { 0x0011, 0, 0, NULL }, /* 0x11 */ 623cdf0e10cSrcweir { 0x0012, 0, 0, NULL }, /* 0x12 */ 624cdf0e10cSrcweir { 0x0013, 0, 0, NULL }, /* 0x13 */ 625cdf0e10cSrcweir { 0x0014, 0, 0, NULL }, /* 0x14 */ 626cdf0e10cSrcweir { 0x0015, 0, 0, NULL }, /* 0x15 */ 627cdf0e10cSrcweir { 0x0016, 0, 0, NULL }, /* 0x16 */ 628cdf0e10cSrcweir { 0x0017, 0, 0, NULL }, /* 0x17 */ 629cdf0e10cSrcweir { 0x0018, 0, 0, NULL }, /* 0x18 */ 630cdf0e10cSrcweir { 0x0019, 0, 0, NULL }, /* 0x19 */ 631cdf0e10cSrcweir { 0x001A, 0, 0, NULL }, /* 0x1A */ 632cdf0e10cSrcweir { 0x001B, 0, 0, NULL }, /* 0x1B */ 633cdf0e10cSrcweir { 0x001C, 0, 0, NULL }, /* 0x1C */ 634cdf0e10cSrcweir { 0x001D, 0, 0, NULL }, /* 0x1D */ 635cdf0e10cSrcweir { 0x001E, 0, 0, NULL }, /* 0x1E */ 636cdf0e10cSrcweir { 0x001F, 0, 0, NULL }, /* 0x1F */ 637cdf0e10cSrcweir { 0x0020, 0, 0, NULL }, /* 0x20 */ 638cdf0e10cSrcweir { 0x0021, 0, 0, NULL }, /* 0x21 */ 639cdf0e10cSrcweir { 0x0022, 0, 0, NULL }, /* 0x22 */ 640cdf0e10cSrcweir { 0x0023, 0, 0, NULL }, /* 0x23 */ 641cdf0e10cSrcweir { 0x0024, 0, 0, NULL }, /* 0x24 */ 642cdf0e10cSrcweir { 0x0025, 0, 0, NULL }, /* 0x25 */ 643cdf0e10cSrcweir { 0x0026, 0, 0, NULL }, /* 0x26 */ 644cdf0e10cSrcweir { 0x0027, 0, 0, NULL }, /* 0x27 */ 645cdf0e10cSrcweir { 0x0028, 0, 0, NULL }, /* 0x28 */ 646cdf0e10cSrcweir { 0x0029, 0, 0, NULL }, /* 0x29 */ 647cdf0e10cSrcweir { 0x002A, 0, 0, NULL }, /* 0x2A */ 648cdf0e10cSrcweir { 0x002B, 0, 0, NULL }, /* 0x2B */ 649cdf0e10cSrcweir { 0x002C, 0, 0, NULL }, /* 0x2C */ 650cdf0e10cSrcweir { 0x002D, 0, 0, NULL }, /* 0x2D */ 651cdf0e10cSrcweir { 0x002E, 0, 0, NULL }, /* 0x2E */ 652cdf0e10cSrcweir { 0x002F, 0, 0, NULL }, /* 0x2F */ 653cdf0e10cSrcweir { 0x0030, 0, 0, NULL }, /* 0x30 */ 654cdf0e10cSrcweir { 0x0031, 0, 0, NULL }, /* 0x31 */ 655cdf0e10cSrcweir { 0x0032, 0, 0, NULL }, /* 0x32 */ 656cdf0e10cSrcweir { 0x0033, 0, 0, NULL }, /* 0x33 */ 657cdf0e10cSrcweir { 0x0034, 0, 0, NULL }, /* 0x34 */ 658cdf0e10cSrcweir { 0x0035, 0, 0, NULL }, /* 0x35 */ 659cdf0e10cSrcweir { 0x0036, 0, 0, NULL }, /* 0x36 */ 660cdf0e10cSrcweir { 0x0037, 0, 0, NULL }, /* 0x37 */ 661cdf0e10cSrcweir { 0x0038, 0, 0, NULL }, /* 0x38 */ 662cdf0e10cSrcweir { 0x0039, 0, 0, NULL }, /* 0x39 */ 663cdf0e10cSrcweir { 0x003A, 0, 0, NULL }, /* 0x3A */ 664cdf0e10cSrcweir { 0x003B, 0, 0, NULL }, /* 0x3B */ 665cdf0e10cSrcweir { 0x003C, 0, 0, NULL }, /* 0x3C */ 666cdf0e10cSrcweir { 0x003D, 0, 0, NULL }, /* 0x3D */ 667cdf0e10cSrcweir { 0x003E, 0, 0, NULL }, /* 0x3E */ 668cdf0e10cSrcweir { 0x003F, 0, 0, NULL }, /* 0x3F */ 669cdf0e10cSrcweir { 0x0040, 0, 0, NULL }, /* 0x40 */ 670cdf0e10cSrcweir { 0x0041, 0, 0, NULL }, /* 0x41 */ 671cdf0e10cSrcweir { 0x0042, 0, 0, NULL }, /* 0x42 */ 672cdf0e10cSrcweir { 0x0043, 0, 0, NULL }, /* 0x43 */ 673cdf0e10cSrcweir { 0x0044, 0, 0, NULL }, /* 0x44 */ 674cdf0e10cSrcweir { 0x0045, 0, 0, NULL }, /* 0x45 */ 675cdf0e10cSrcweir { 0x0046, 0, 0, NULL }, /* 0x46 */ 676cdf0e10cSrcweir { 0x0047, 0, 0, NULL }, /* 0x47 */ 677cdf0e10cSrcweir { 0x0048, 0, 0, NULL }, /* 0x48 */ 678cdf0e10cSrcweir { 0x0049, 0, 0, NULL }, /* 0x49 */ 679cdf0e10cSrcweir { 0x004A, 0, 0, NULL }, /* 0x4A */ 680cdf0e10cSrcweir { 0x004B, 0, 0, NULL }, /* 0x4B */ 681cdf0e10cSrcweir { 0x004C, 0, 0, NULL }, /* 0x4C */ 682cdf0e10cSrcweir { 0x004D, 0, 0, NULL }, /* 0x4D */ 683cdf0e10cSrcweir { 0x004E, 0, 0, NULL }, /* 0x4E */ 684cdf0e10cSrcweir { 0x004F, 0, 0, NULL }, /* 0x4F */ 685cdf0e10cSrcweir { 0x0050, 0, 0, NULL }, /* 0x50 */ 686cdf0e10cSrcweir { 0x0051, 0, 0, NULL }, /* 0x51 */ 687cdf0e10cSrcweir { 0x0052, 0, 0, NULL }, /* 0x52 */ 688cdf0e10cSrcweir { 0x0053, 0, 0, NULL }, /* 0x53 */ 689cdf0e10cSrcweir { 0x0054, 0, 0, NULL }, /* 0x54 */ 690cdf0e10cSrcweir { 0x0055, 0, 0, NULL }, /* 0x55 */ 691cdf0e10cSrcweir { 0x0056, 0, 0, NULL }, /* 0x56 */ 692cdf0e10cSrcweir { 0x0057, 0, 0, NULL }, /* 0x57 */ 693cdf0e10cSrcweir { 0x0058, 0, 0, NULL }, /* 0x58 */ 694cdf0e10cSrcweir { 0x0059, 0, 0, NULL }, /* 0x59 */ 695cdf0e10cSrcweir { 0x005A, 0, 0, NULL }, /* 0x5A */ 696cdf0e10cSrcweir { 0x005B, 0, 0, NULL }, /* 0x5B */ 697cdf0e10cSrcweir { 0x005C, 0, 0, NULL }, /* 0x5C */ /* in SJIS this is A5 (YEN SIGN), but for compatibiliy with ascii, we use 0x5C like MS CP392 */ 698cdf0e10cSrcweir { 0x005D, 0, 0, NULL }, /* 0x5D */ 699cdf0e10cSrcweir { 0x005E, 0, 0, NULL }, /* 0x5E */ 700cdf0e10cSrcweir { 0x005F, 0, 0, NULL }, /* 0x5F */ 701cdf0e10cSrcweir { 0x0060, 0, 0, NULL }, /* 0x60 */ 702cdf0e10cSrcweir { 0x0061, 0, 0, NULL }, /* 0x61 */ 703cdf0e10cSrcweir { 0x0062, 0, 0, NULL }, /* 0x62 */ 704cdf0e10cSrcweir { 0x0063, 0, 0, NULL }, /* 0x63 */ 705cdf0e10cSrcweir { 0x0064, 0, 0, NULL }, /* 0x64 */ 706cdf0e10cSrcweir { 0x0065, 0, 0, NULL }, /* 0x65 */ 707cdf0e10cSrcweir { 0x0066, 0, 0, NULL }, /* 0x66 */ 708cdf0e10cSrcweir { 0x0067, 0, 0, NULL }, /* 0x67 */ 709cdf0e10cSrcweir { 0x0068, 0, 0, NULL }, /* 0x68 */ 710cdf0e10cSrcweir { 0x0069, 0, 0, NULL }, /* 0x69 */ 711cdf0e10cSrcweir { 0x006A, 0, 0, NULL }, /* 0x6A */ 712cdf0e10cSrcweir { 0x006B, 0, 0, NULL }, /* 0x6B */ 713cdf0e10cSrcweir { 0x006C, 0, 0, NULL }, /* 0x6C */ 714cdf0e10cSrcweir { 0x006D, 0, 0, NULL }, /* 0x6D */ 715cdf0e10cSrcweir { 0x006E, 0, 0, NULL }, /* 0x6E */ 716cdf0e10cSrcweir { 0x006F, 0, 0, NULL }, /* 0x6F */ 717cdf0e10cSrcweir { 0x0070, 0, 0, NULL }, /* 0x70 */ 718cdf0e10cSrcweir { 0x0071, 0, 0, NULL }, /* 0x71 */ 719cdf0e10cSrcweir { 0x0072, 0, 0, NULL }, /* 0x72 */ 720cdf0e10cSrcweir { 0x0073, 0, 0, NULL }, /* 0x73 */ 721cdf0e10cSrcweir { 0x0074, 0, 0, NULL }, /* 0x74 */ 722cdf0e10cSrcweir { 0x0075, 0, 0, NULL }, /* 0x75 */ 723cdf0e10cSrcweir { 0x0076, 0, 0, NULL }, /* 0x76 */ 724cdf0e10cSrcweir { 0x0077, 0, 0, NULL }, /* 0x77 */ 725cdf0e10cSrcweir { 0x0078, 0, 0, NULL }, /* 0x78 */ 726cdf0e10cSrcweir { 0x0079, 0, 0, NULL }, /* 0x79 */ 727cdf0e10cSrcweir { 0x007A, 0, 0, NULL }, /* 0x7A */ 728cdf0e10cSrcweir { 0x007B, 0, 0, NULL }, /* 0x7B */ 729cdf0e10cSrcweir { 0x007C, 0, 0, NULL }, /* 0x7C */ 730cdf0e10cSrcweir { 0x007D, 0, 0, NULL }, /* 0x7D */ 731cdf0e10cSrcweir { 0x007E, 0, 0, NULL }, /* 0x7E */ /* in SJIS this is 0x0203E (SPACING OVERSCORE), but for compatibiliy with ascii, we use 0x7E (TILDE) like MS CP392 */ 732cdf0e10cSrcweir { 0x007F, 0, 0, NULL }, /* 0x7F */ 733cdf0e10cSrcweir { 0x005C, 0, 0, NULL }, /* 0x80 */ /* APPLE additons over SJIS, we convert this like apple, because I think, this gives better result, than we take a replacement char */ 734cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_81 }, /* 0x81 */ 735cdf0e10cSrcweir { 0, 0x4F, 0xF1, aImplDBCSToUniTab_SJIS_82 }, /* 0x82 */ 736cdf0e10cSrcweir { 0, 0x40, 0xD6, aImplDBCSToUniTab_SJIS_83 }, /* 0x83 */ 737cdf0e10cSrcweir { 0, 0x40, 0xBF, aImplDBCSToUniTab_SJIS_84 }, /* 0x84 */ 738cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x85 */ /* We convert this as double byte */ 739cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x86 */ /* We convert this as double byte */ 740cdf0e10cSrcweir { 0, 0x40, 0x9C, aImplDBCSToUniTab_MS932_87 }, /* 0x87 */ 741cdf0e10cSrcweir { 0, 0x9F, 0xFC, aImplDBCSToUniTab_SJIS_88 }, /* 0x88 */ 742cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_89 }, /* 0x89 */ 743cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8A }, /* 0x8A */ 744cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8B }, /* 0x8B */ 745cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8C }, /* 0x8C */ 746cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8D }, /* 0x8D */ 747cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8E }, /* 0x8E */ 748cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8F }, /* 0x8F */ 749cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_90 }, /* 0x90 */ 750cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_91 }, /* 0x91 */ 751cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_92 }, /* 0x92 */ 752cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_93 }, /* 0x93 */ 753cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_94 }, /* 0x94 */ 754cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_95 }, /* 0x95 */ 755cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_96 }, /* 0x96 */ 756cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_97 }, /* 0x97 */ 757cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_98 }, /* 0x98 */ 758cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_99 }, /* 0x99 */ 759cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9A }, /* 0x9A */ 760cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9B }, /* 0x9B */ 761cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9C }, /* 0x9C */ 762cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9D }, /* 0x9D */ 763cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9E }, /* 0x9E */ 764cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9F }, /* 0x9F */ 765cdf0e10cSrcweir { 0x00A0, 0, 0, NULL }, /* 0xA0 */ /* APPLE additons over SJIS, we convert this like apple, because I think, this gives better result, than we take a replacement char */ 766cdf0e10cSrcweir { 0xFF61, 0, 0, NULL }, /* 0xA1 */ 767cdf0e10cSrcweir { 0xFF62, 0, 0, NULL }, /* 0xA2 */ 768cdf0e10cSrcweir { 0xFF63, 0, 0, NULL }, /* 0xA3 */ 769cdf0e10cSrcweir { 0xFF64, 0, 0, NULL }, /* 0xA4 */ 770cdf0e10cSrcweir { 0xFF65, 0, 0, NULL }, /* 0xA5 */ 771cdf0e10cSrcweir { 0xFF66, 0, 0, NULL }, /* 0xA6 */ 772cdf0e10cSrcweir { 0xFF67, 0, 0, NULL }, /* 0xA7 */ 773cdf0e10cSrcweir { 0xFF68, 0, 0, NULL }, /* 0xA8 */ 774cdf0e10cSrcweir { 0xFF69, 0, 0, NULL }, /* 0xA9 */ 775cdf0e10cSrcweir { 0xFF6A, 0, 0, NULL }, /* 0xAA */ 776cdf0e10cSrcweir { 0xFF6B, 0, 0, NULL }, /* 0xAB */ 777cdf0e10cSrcweir { 0xFF6C, 0, 0, NULL }, /* 0xAC */ 778cdf0e10cSrcweir { 0xFF6D, 0, 0, NULL }, /* 0xAD */ 779cdf0e10cSrcweir { 0xFF6E, 0, 0, NULL }, /* 0xAE */ 780cdf0e10cSrcweir { 0xFF6F, 0, 0, NULL }, /* 0xAF */ 781cdf0e10cSrcweir { 0xFF70, 0, 0, NULL }, /* 0xB0 */ 782cdf0e10cSrcweir { 0xFF71, 0, 0, NULL }, /* 0xB1 */ 783cdf0e10cSrcweir { 0xFF72, 0, 0, NULL }, /* 0xB2 */ 784cdf0e10cSrcweir { 0xFF73, 0, 0, NULL }, /* 0xB3 */ 785cdf0e10cSrcweir { 0xFF74, 0, 0, NULL }, /* 0xB4 */ 786cdf0e10cSrcweir { 0xFF75, 0, 0, NULL }, /* 0xB5 */ 787cdf0e10cSrcweir { 0xFF76, 0, 0, NULL }, /* 0xB6 */ 788cdf0e10cSrcweir { 0xFF77, 0, 0, NULL }, /* 0xB7 */ 789cdf0e10cSrcweir { 0xFF78, 0, 0, NULL }, /* 0xB8 */ 790cdf0e10cSrcweir { 0xFF79, 0, 0, NULL }, /* 0xB9 */ 791cdf0e10cSrcweir { 0xFF7A, 0, 0, NULL }, /* 0xBA */ 792cdf0e10cSrcweir { 0xFF7B, 0, 0, NULL }, /* 0xBB */ 793cdf0e10cSrcweir { 0xFF7C, 0, 0, NULL }, /* 0xBC */ 794cdf0e10cSrcweir { 0xFF7D, 0, 0, NULL }, /* 0xBD */ 795cdf0e10cSrcweir { 0xFF7E, 0, 0, NULL }, /* 0xBE */ 796cdf0e10cSrcweir { 0xFF7F, 0, 0, NULL }, /* 0xBF */ 797cdf0e10cSrcweir { 0xFF80, 0, 0, NULL }, /* 0xC0 */ 798cdf0e10cSrcweir { 0xFF81, 0, 0, NULL }, /* 0xC1 */ 799cdf0e10cSrcweir { 0xFF82, 0, 0, NULL }, /* 0xC2 */ 800cdf0e10cSrcweir { 0xFF83, 0, 0, NULL }, /* 0xC3 */ 801cdf0e10cSrcweir { 0xFF84, 0, 0, NULL }, /* 0xC4 */ 802cdf0e10cSrcweir { 0xFF85, 0, 0, NULL }, /* 0xC5 */ 803cdf0e10cSrcweir { 0xFF86, 0, 0, NULL }, /* 0xC6 */ 804cdf0e10cSrcweir { 0xFF87, 0, 0, NULL }, /* 0xC7 */ 805cdf0e10cSrcweir { 0xFF88, 0, 0, NULL }, /* 0xC8 */ 806cdf0e10cSrcweir { 0xFF89, 0, 0, NULL }, /* 0xC9 */ 807cdf0e10cSrcweir { 0xFF8A, 0, 0, NULL }, /* 0xCA */ 808cdf0e10cSrcweir { 0xFF8B, 0, 0, NULL }, /* 0xCB */ 809cdf0e10cSrcweir { 0xFF8C, 0, 0, NULL }, /* 0xCC */ 810cdf0e10cSrcweir { 0xFF8D, 0, 0, NULL }, /* 0xCD */ 811cdf0e10cSrcweir { 0xFF8E, 0, 0, NULL }, /* 0xCE */ 812cdf0e10cSrcweir { 0xFF8F, 0, 0, NULL }, /* 0xCF */ 813cdf0e10cSrcweir { 0xFF90, 0, 0, NULL }, /* 0xD0 */ 814cdf0e10cSrcweir { 0xFF91, 0, 0, NULL }, /* 0xD1 */ 815cdf0e10cSrcweir { 0xFF92, 0, 0, NULL }, /* 0xD2 */ 816cdf0e10cSrcweir { 0xFF93, 0, 0, NULL }, /* 0xD3 */ 817cdf0e10cSrcweir { 0xFF94, 0, 0, NULL }, /* 0xD4 */ 818cdf0e10cSrcweir { 0xFF95, 0, 0, NULL }, /* 0xD5 */ 819cdf0e10cSrcweir { 0xFF96, 0, 0, NULL }, /* 0xD6 */ 820cdf0e10cSrcweir { 0xFF97, 0, 0, NULL }, /* 0xD7 */ 821cdf0e10cSrcweir { 0xFF98, 0, 0, NULL }, /* 0xD8 */ 822cdf0e10cSrcweir { 0xFF99, 0, 0, NULL }, /* 0xD9 */ 823cdf0e10cSrcweir { 0xFF9A, 0, 0, NULL }, /* 0xDA */ 824cdf0e10cSrcweir { 0xFF9B, 0, 0, NULL }, /* 0xDB */ 825cdf0e10cSrcweir { 0xFF9C, 0, 0, NULL }, /* 0xDC */ 826cdf0e10cSrcweir { 0xFF9D, 0, 0, NULL }, /* 0xDD */ 827cdf0e10cSrcweir { 0xFF9E, 0, 0, NULL }, /* 0xDE */ 828cdf0e10cSrcweir { 0xFF9F, 0, 0, NULL }, /* 0xDF */ 829cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E0 }, /* 0xE0 */ 830cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E1 }, /* 0xE1 */ 831cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E2 }, /* 0xE2 */ 832cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E3 }, /* 0xE3 */ 833cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E4 }, /* 0xE4 */ 834cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E5 }, /* 0xE5 */ 835cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E6 }, /* 0xE6 */ 836cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E7 }, /* 0xE7 */ 837cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E8 }, /* 0xE8 */ 838cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E9 }, /* 0xE9 */ 839cdf0e10cSrcweir { 0, 0x40, 0xA4, aImplDBCSToUniTab_SJIS_EA }, /* 0xEA */ 840cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xEB */ /* We convert this as double byte */ 841cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xEC */ /* We convert this as double byte */ 842cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_ED }, /* 0xED */ 843cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_EE }, /* 0xEE */ 844cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xEF */ /* We convert this as double byte */ 845cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF0 */ /* EUDC Range */ 846cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF1 */ /* EUDC Range */ 847cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF2 */ /* EUDC Range */ 848cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF3 */ /* EUDC Range */ 849cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF4 */ /* EUDC Range */ 850cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF5 */ /* EUDC Range */ 851cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF6 */ /* EUDC Range */ 852cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF7 */ /* EUDC Range */ 853cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF8 */ /* EUDC Range */ 854cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF9 */ /* EUDC Range */ 855cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_FA }, /* 0xFA */ 856cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_FB }, /* 0xFB */ 857cdf0e10cSrcweir { 0, 0x40, 0x4B, aImplDBCSToUniTab_MS932_FC }, /* 0xFC */ 858cdf0e10cSrcweir { 0x00A9, 0, 0, NULL }, /* 0xFD */ /* APPLE additons over SJIS, we convert this like apple, because I think, this gives better result, than we take a replacement char */ 859cdf0e10cSrcweir { 0x2122, 0, 0, NULL }, /* 0xFE */ /* APPLE additons over SJIS, we convert this like apple, because I think, this gives better result, than we take a replacement char */ 860cdf0e10cSrcweir { 0x2026, 0, 0, NULL } /* 0xFF */ /* APPLE additons over SJIS, we convert this like apple, because I think, this gives better result, than we take a replacement char */ 861cdf0e10cSrcweir}; 862cdf0e10cSrcweir 863cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 864cdf0e10cSrcweir 865cdf0e10cSrcweirstatic ImplUniToDBCSHighTab const aMS932DBCSHighTab[256] = 866cdf0e10cSrcweir{ 867cdf0e10cSrcweir { 0x00, 0xF7, aImplUniToDBCSTab_SJIS_00 }, /* 0x00 */ 868cdf0e10cSrcweir { 1, 0, NULL }, /* 0x01 */ 869cdf0e10cSrcweir { 1, 0, NULL }, /* 0x02 */ 870cdf0e10cSrcweir { 0x91, 0xC9, aImplUniToDBCSTab_SJIS_03 }, /* 0x03 */ 871cdf0e10cSrcweir { 0x01, 0x51, aImplUniToDBCSTab_SJIS_04 }, /* 0x04 */ 872cdf0e10cSrcweir { 1, 0, NULL }, /* 0x05 */ 873cdf0e10cSrcweir { 1, 0, NULL }, /* 0x06 */ 874cdf0e10cSrcweir { 1, 0, NULL }, /* 0x07 */ 875cdf0e10cSrcweir { 1, 0, NULL }, /* 0x08 */ 876cdf0e10cSrcweir { 1, 0, NULL }, /* 0x09 */ 877cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0A */ 878cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0B */ 879cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0C */ 880cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0D */ 881cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0E */ 882cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0F */ 883cdf0e10cSrcweir { 1, 0, NULL }, /* 0x10 */ 884cdf0e10cSrcweir { 1, 0, NULL }, /* 0x11 */ 885cdf0e10cSrcweir { 1, 0, NULL }, /* 0x12 */ 886cdf0e10cSrcweir { 1, 0, NULL }, /* 0x13 */ 887cdf0e10cSrcweir { 1, 0, NULL }, /* 0x14 */ 888cdf0e10cSrcweir { 1, 0, NULL }, /* 0x15 */ 889cdf0e10cSrcweir { 1, 0, NULL }, /* 0x16 */ 890cdf0e10cSrcweir { 1, 0, NULL }, /* 0x17 */ 891cdf0e10cSrcweir { 1, 0, NULL }, /* 0x18 */ 892cdf0e10cSrcweir { 1, 0, NULL }, /* 0x19 */ 893cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1A */ 894cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1B */ 895cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1C */ 896cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1D */ 897cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1E */ 898cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1F */ 899cdf0e10cSrcweir { 0x10, 0x3E, aImplUniToDBCSTab_SJIS_20 }, /* 0x20 */ 900cdf0e10cSrcweir { 0x03, 0xD4, aImplUniToDBCSTab_MS932_21 }, /* 0x21 */ 901cdf0e10cSrcweir { 0x00, 0xBF, aImplUniToDBCSTab_MS932_22 }, /* 0x22 */ 902cdf0e10cSrcweir { 0x12, 0x12, aImplUniToDBCSTab_SJIS_23 }, /* 0x23 */ 903cdf0e10cSrcweir { 0x60, 0x73, aImplUniToDBCSTab_MS932_24 }, /* 0x24 */ 904cdf0e10cSrcweir { 0x00, 0xEF, aImplUniToDBCSTab_SJIS_25 }, /* 0x25 */ 905cdf0e10cSrcweir { 0x05, 0x6F, aImplUniToDBCSTab_SJIS_26 }, /* 0x26 */ 906cdf0e10cSrcweir { 1, 0, NULL }, /* 0x27 */ 907cdf0e10cSrcweir { 1, 0, NULL }, /* 0x28 */ 908cdf0e10cSrcweir { 1, 0, NULL }, /* 0x29 */ 909cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2A */ 910cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2B */ 911cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2C */ 912cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2D */ 913cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2E */ 914cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2F */ 915cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_30 }, /* 0x30 */ 916cdf0e10cSrcweir { 1, 0, NULL }, /* 0x31 */ 917cdf0e10cSrcweir { 0x31, 0xA8, aImplUniToDBCSTab_MS932_32 }, /* 0x32 */ 918cdf0e10cSrcweir { 0x03, 0xCD, aImplUniToDBCSTab_MS932_33 }, /* 0x33 */ 919cdf0e10cSrcweir { 1, 0, NULL }, /* 0x34 */ 920cdf0e10cSrcweir { 1, 0, NULL }, /* 0x35 */ 921cdf0e10cSrcweir { 1, 0, NULL }, /* 0x36 */ 922cdf0e10cSrcweir { 1, 0, NULL }, /* 0x37 */ 923cdf0e10cSrcweir { 1, 0, NULL }, /* 0x38 */ 924cdf0e10cSrcweir { 1, 0, NULL }, /* 0x39 */ 925cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3A */ 926cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3B */ 927cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3C */ 928cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3D */ 929cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3E */ 930cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3F */ 931cdf0e10cSrcweir { 1, 0, NULL }, /* 0x40 */ 932cdf0e10cSrcweir { 1, 0, NULL }, /* 0x41 */ 933cdf0e10cSrcweir { 1, 0, NULL }, /* 0x42 */ 934cdf0e10cSrcweir { 1, 0, NULL }, /* 0x43 */ 935cdf0e10cSrcweir { 1, 0, NULL }, /* 0x44 */ 936cdf0e10cSrcweir { 1, 0, NULL }, /* 0x45 */ 937cdf0e10cSrcweir { 1, 0, NULL }, /* 0x46 */ 938cdf0e10cSrcweir { 1, 0, NULL }, /* 0x47 */ 939cdf0e10cSrcweir { 1, 0, NULL }, /* 0x48 */ 940cdf0e10cSrcweir { 1, 0, NULL }, /* 0x49 */ 941cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4A */ 942cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4B */ 943cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4C */ 944cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4D */ 945cdf0e10cSrcweir { 0x00, 0xFC, aImplUniToDBCSTab_SJIS_4E }, /* 0x4E */ 946cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_4F }, /* 0x4F */ 947cdf0e10cSrcweir { 0x05, 0xFB, aImplUniToDBCSTab_SJIS_50 }, /* 0x50 */ 948cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_51 }, /* 0x51 */ 949cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_52 }, /* 0x52 */ 950cdf0e10cSrcweir { 0x00, 0xFA, aImplUniToDBCSTab_SJIS_53 }, /* 0x53 */ 951cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_SJIS_54 }, /* 0x54 */ 952cdf0e10cSrcweir { 0x04, 0xFE, aImplUniToDBCSTab_SJIS_55 }, /* 0x55 */ 953cdf0e10cSrcweir { 0x06, 0xFF, aImplUniToDBCSTab_SJIS_56 }, /* 0x56 */ 954cdf0e10cSrcweir { 0x00, 0xFC, aImplUniToDBCSTab_SJIS_57 }, /* 0x57 */ 955cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_SJIS_58 }, /* 0x58 */ 956cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_SJIS_59 }, /* 0x59 */ 957cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_5A }, /* 0x5A */ 958cdf0e10cSrcweir { 0x09, 0xFF, aImplUniToDBCSTab_SJIS_5B }, /* 0x5B */ 959cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_SJIS_5C }, /* 0x5C */ 960cdf0e10cSrcweir { 0x07, 0xFE, aImplUniToDBCSTab_SJIS_5D }, /* 0x5D */ 961cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_SJIS_5E }, /* 0x5E */ 962cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_SJIS_5F }, /* 0x5F */ 963cdf0e10cSrcweir { 0x0E, 0xFB, aImplUniToDBCSTab_SJIS_60 }, /* 0x60 */ 964cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_61 }, /* 0x61 */ 965cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_62 }, /* 0x62 */ 966cdf0e10cSrcweir { 0x01, 0xFA, aImplUniToDBCSTab_SJIS_63 }, /* 0x63 */ 967cdf0e10cSrcweir { 0x06, 0xFE, aImplUniToDBCSTab_SJIS_64 }, /* 0x64 */ 968cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_SJIS_65 }, /* 0x65 */ 969cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_66 }, /* 0x66 */ 970cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_67 }, /* 0x67 */ 971cdf0e10cSrcweir { 0x01, 0xFA, aImplUniToDBCSTab_SJIS_68 }, /* 0x68 */ 972cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_69 }, /* 0x69 */ 973cdf0e10cSrcweir { 0x02, 0xFB, aImplUniToDBCSTab_SJIS_6A }, /* 0x6A */ 974cdf0e10cSrcweir { 0x04, 0xF3, aImplUniToDBCSTab_SJIS_6B }, /* 0x6B */ 975cdf0e10cSrcweir { 0x08, 0xF3, aImplUniToDBCSTab_SJIS_6C }, /* 0x6C */ 976cdf0e10cSrcweir { 0x04, 0xFC, aImplUniToDBCSTab_SJIS_6D }, /* 0x6D */ 977cdf0e10cSrcweir { 0x05, 0xFF, aImplUniToDBCSTab_SJIS_6E }, /* 0x6E */ 978cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_SJIS_6F }, /* 0x6F */ 979cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_SJIS_70 }, /* 0x70 */ 980cdf0e10cSrcweir { 0x04, 0xFF, aImplUniToDBCSTab_SJIS_71 }, /* 0x71 */ 981cdf0e10cSrcweir { 0x06, 0xFD, aImplUniToDBCSTab_SJIS_72 }, /* 0x72 */ 982cdf0e10cSrcweir { 0x0A, 0xFE, aImplUniToDBCSTab_SJIS_73 }, /* 0x73 */ 983cdf0e10cSrcweir { 0x03, 0xF8, aImplUniToDBCSTab_SJIS_74 }, /* 0x74 */ 984cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_SJIS_75 }, /* 0x75 */ 985cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_SJIS_76 }, /* 0x76 */ 986cdf0e10cSrcweir { 0x01, 0xFC, aImplUniToDBCSTab_SJIS_77 }, /* 0x77 */ 987cdf0e10cSrcweir { 0x02, 0xFD, aImplUniToDBCSTab_SJIS_78 }, /* 0x78 */ 988cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_79 }, /* 0x79 */ 989cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_7A }, /* 0x7A */ 990cdf0e10cSrcweir { 0x02, 0xF7, aImplUniToDBCSTab_SJIS_7B }, /* 0x7B */ 991cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_7C }, /* 0x7C */ 992cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_SJIS_7D }, /* 0x7D */ 993cdf0e10cSrcweir { 0x01, 0x9C, aImplUniToDBCSTab_SJIS_7E }, /* 0x7E */ 994cdf0e10cSrcweir { 0x36, 0xFC, aImplUniToDBCSTab_SJIS_7F }, /* 0x7F */ 995cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_SJIS_80 }, /* 0x80 */ 996cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_SJIS_81 }, /* 0x81 */ 997cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_82 }, /* 0x82 */ 998cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_SJIS_83 }, /* 0x83 */ 999cdf0e10cSrcweir { 0x03, 0xFF, aImplUniToDBCSTab_SJIS_84 }, /* 0x84 */ 1000cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_85 }, /* 0x85 */ 1001cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_SJIS_86 }, /* 0x86 */ 1002cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_87 }, /* 0x87 */ 1003cdf0e10cSrcweir { 0x05, 0xFE, aImplUniToDBCSTab_SJIS_88 }, /* 0x88 */ 1004cdf0e10cSrcweir { 0x02, 0xF8, aImplUniToDBCSTab_SJIS_89 }, /* 0x89 */ 1005cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_8A }, /* 0x8A */ 1006cdf0e10cSrcweir { 0x00, 0x9A, aImplUniToDBCSTab_SJIS_8B }, /* 0x8B */ 1007cdf0e10cSrcweir { 0x37, 0xFD, aImplUniToDBCSTab_SJIS_8C }, /* 0x8C */ 1008cdf0e10cSrcweir { 0x04, 0xFF, aImplUniToDBCSTab_SJIS_8D }, /* 0x8D */ 1009cdf0e10cSrcweir { 0x08, 0xFE, aImplUniToDBCSTab_SJIS_8E }, /* 0x8E */ 1010cdf0e10cSrcweir { 0x03, 0xFD, aImplUniToDBCSTab_SJIS_8F }, /* 0x8F */ 1011cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_SJIS_90 }, /* 0x90 */ 1012cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_SJIS_91 }, /* 0x91 */ 1013cdf0e10cSrcweir { 0x06, 0xFF, aImplUniToDBCSTab_SJIS_92 }, /* 0x92 */ 1014cdf0e10cSrcweir { 0x02, 0xF8, aImplUniToDBCSTab_SJIS_93 }, /* 0x93 */ 1015cdf0e10cSrcweir { 0x03, 0x81, aImplUniToDBCSTab_SJIS_94 }, /* 0x94 */ 1016cdf0e10cSrcweir { 0x77, 0xE5, aImplUniToDBCSTab_SJIS_95 }, /* 0x95 */ 1017cdf0e10cSrcweir { 0x1C, 0xFB, aImplUniToDBCSTab_SJIS_96 }, /* 0x96 */ 1018cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_97 }, /* 0x97 */ 1019cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_SJIS_98 }, /* 0x98 */ 1020cdf0e10cSrcweir { 0x03, 0xFF, aImplUniToDBCSTab_SJIS_99 }, /* 0x99 */ 1021cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_9A }, /* 0x9A */ 1022cdf0e10cSrcweir { 0x06, 0xF5, aImplUniToDBCSTab_SJIS_9B }, /* 0x9B */ 1023cdf0e10cSrcweir { 0x00, 0xF6, aImplUniToDBCSTab_SJIS_9C }, /* 0x9C */ 1024cdf0e10cSrcweir { 0x03, 0xFD, aImplUniToDBCSTab_SJIS_9D }, /* 0x9D */ 1025cdf0e10cSrcweir { 0x19, 0xFD, aImplUniToDBCSTab_SJIS_9E }, /* 0x9E */ 1026cdf0e10cSrcweir { 0x07, 0xA0, aImplUniToDBCSTab_SJIS_9F }, /* 0x9F */ 1027cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA0 */ 1028cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA1 */ 1029cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA2 */ 1030cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA3 */ 1031cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA4 */ 1032cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA5 */ 1033cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA6 */ 1034cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA7 */ 1035cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA8 */ 1036cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA9 */ 1037cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAA */ 1038cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAB */ 1039cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAC */ 1040cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAD */ 1041cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAE */ 1042cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAF */ 1043cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB0 */ 1044cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB1 */ 1045cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB2 */ 1046cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB3 */ 1047cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB4 */ 1048cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB5 */ 1049cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB6 */ 1050cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB7 */ 1051cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB8 */ 1052cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB9 */ 1053cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBA */ 1054cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBB */ 1055cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBC */ 1056cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBD */ 1057cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBE */ 1058cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBF */ 1059cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC0 */ 1060cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC1 */ 1061cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC2 */ 1062cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC3 */ 1063cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC4 */ 1064cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC5 */ 1065cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC6 */ 1066cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC7 */ 1067cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC8 */ 1068cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC9 */ 1069cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCA */ 1070cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCB */ 1071cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCC */ 1072cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCD */ 1073cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCE */ 1074cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCF */ 1075cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD0 */ 1076cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD1 */ 1077cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD2 */ 1078cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD3 */ 1079cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD4 */ 1080cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD5 */ 1081cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD6 */ 1082cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD7 */ 1083cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD8 */ 1084cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD9 */ 1085cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDA */ 1086cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDB */ 1087cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDC */ 1088cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDD */ 1089cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDE */ 1090cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDF */ 1091cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE0 */ 1092cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE1 */ 1093cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE2 */ 1094cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE3 */ 1095cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE4 */ 1096cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE5 */ 1097cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE6 */ 1098cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE7 */ 1099cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE8 */ 1100cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE9 */ 1101cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEA */ 1102cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEB */ 1103cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEC */ 1104cdf0e10cSrcweir { 1, 0, NULL }, /* 0xED */ 1105cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEE */ 1106cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEF */ 1107cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF0 */ 1108cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF1 */ 1109cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF2 */ 1110cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF3 */ 1111cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF4 */ 1112cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF5 */ 1113cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF6 */ 1114cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF7 */ 1115cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF8 */ 1116cdf0e10cSrcweir { 0x29, 0xDC, aImplUniToDBCSTab_MS932_F9 }, /* 0xF9 */ 1117cdf0e10cSrcweir { 0x0E, 0x2D, aImplUniToDBCSTab_MS932_FA }, /* 0xFA */ 1118cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFB */ 1119cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFC */ 1120cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFD */ 1121cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFE */ 1122cdf0e10cSrcweir { 0x01, 0xE5, aImplUniToDBCSTab_SJIS_FF } /* 0xFF */ 1123cdf0e10cSrcweir}; 1124cdf0e10cSrcweir 1125cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 1126cdf0e10cSrcweir 1127cdf0e10cSrcweirstatic ImplDBCSConvertData const aImplMS932DBCSCvtData = 1128cdf0e10cSrcweir{ 1129cdf0e10cSrcweir aMS932UniLeadTab, 1130cdf0e10cSrcweir aMS932DBCSHighTab, 1131cdf0e10cSrcweir 0x00, 0xFF, 1132cdf0e10cSrcweir 0x40, 0xFC, 1133cdf0e10cSrcweir aImplSJISDBCSEUDCTab, 1134cdf0e10cSrcweir DBCS_EUDC_SJIS_COUNT 1135cdf0e10cSrcweir}; 1136cdf0e10cSrcweir 1137cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 1138cdf0e10cSrcweir 1139cdf0e10cSrcweirstatic ImplTextEncodingData const aImplMS932TextEncodingData 1140cdf0e10cSrcweir = { { &aImplMS932DBCSCvtData, 1141cdf0e10cSrcweir ImplDBCSToUnicode, 1142cdf0e10cSrcweir ImplUnicodeToDBCS, 1143cdf0e10cSrcweir NULL, 1144cdf0e10cSrcweir NULL, 1145cdf0e10cSrcweir NULL, 1146cdf0e10cSrcweir NULL, 1147cdf0e10cSrcweir NULL, 1148cdf0e10cSrcweir NULL }, 1149cdf0e10cSrcweir 1, 1150cdf0e10cSrcweir 2, 1151cdf0e10cSrcweir 2, 1152cdf0e10cSrcweir 128, 1153cdf0e10cSrcweir "euc-jp", 1154cdf0e10cSrcweir "shift_jis", 1155cdf0e10cSrcweir RTL_TEXTENCODING_INFO_MULTIBYTE }; 1156cdf0e10cSrcweir /* WIN/DOS/OS2, SCRIPT_JAPANESE, pc code page 932, mac encoding 1 */ 1157cdf0e10cSrcweir 1158cdf0e10cSrcweir/* ======================================================================= */ 1159cdf0e10cSrcweir 1160cdf0e10cSrcweirstatic ImplDBCSToUniLeadTab const aAPPLEJAPANESEUniLeadTab[256] = 1161cdf0e10cSrcweir{ 1162cdf0e10cSrcweir { 0x0000, 0, 0, NULL }, /* 0x00 */ 1163cdf0e10cSrcweir { 0x0001, 0, 0, NULL }, /* 0x01 */ 1164cdf0e10cSrcweir { 0x0002, 0, 0, NULL }, /* 0x02 */ 1165cdf0e10cSrcweir { 0x0003, 0, 0, NULL }, /* 0x03 */ 1166cdf0e10cSrcweir { 0x0004, 0, 0, NULL }, /* 0x04 */ 1167cdf0e10cSrcweir { 0x0005, 0, 0, NULL }, /* 0x05 */ 1168cdf0e10cSrcweir { 0x0006, 0, 0, NULL }, /* 0x06 */ 1169cdf0e10cSrcweir { 0x0007, 0, 0, NULL }, /* 0x07 */ 1170cdf0e10cSrcweir { 0x0008, 0, 0, NULL }, /* 0x08 */ 1171cdf0e10cSrcweir { 0x0009, 0, 0, NULL }, /* 0x09 */ 1172cdf0e10cSrcweir { 0x000A, 0, 0, NULL }, /* 0x0A */ 1173cdf0e10cSrcweir { 0x000B, 0, 0, NULL }, /* 0x0B */ 1174cdf0e10cSrcweir { 0x000C, 0, 0, NULL }, /* 0x0C */ 1175cdf0e10cSrcweir { 0x000D, 0, 0, NULL }, /* 0x0D */ 1176cdf0e10cSrcweir { 0x000E, 0, 0, NULL }, /* 0x0E */ 1177cdf0e10cSrcweir { 0x000F, 0, 0, NULL }, /* 0x0F */ 1178cdf0e10cSrcweir { 0x0010, 0, 0, NULL }, /* 0x10 */ 1179cdf0e10cSrcweir { 0x0011, 0, 0, NULL }, /* 0x11 */ 1180cdf0e10cSrcweir { 0x0012, 0, 0, NULL }, /* 0x12 */ 1181cdf0e10cSrcweir { 0x0013, 0, 0, NULL }, /* 0x13 */ 1182cdf0e10cSrcweir { 0x0014, 0, 0, NULL }, /* 0x14 */ 1183cdf0e10cSrcweir { 0x0015, 0, 0, NULL }, /* 0x15 */ 1184cdf0e10cSrcweir { 0x0016, 0, 0, NULL }, /* 0x16 */ 1185cdf0e10cSrcweir { 0x0017, 0, 0, NULL }, /* 0x17 */ 1186cdf0e10cSrcweir { 0x0018, 0, 0, NULL }, /* 0x18 */ 1187cdf0e10cSrcweir { 0x0019, 0, 0, NULL }, /* 0x19 */ 1188cdf0e10cSrcweir { 0x001A, 0, 0, NULL }, /* 0x1A */ 1189cdf0e10cSrcweir { 0x001B, 0, 0, NULL }, /* 0x1B */ 1190cdf0e10cSrcweir { 0x001C, 0, 0, NULL }, /* 0x1C */ 1191cdf0e10cSrcweir { 0x001D, 0, 0, NULL }, /* 0x1D */ 1192cdf0e10cSrcweir { 0x001E, 0, 0, NULL }, /* 0x1E */ 1193cdf0e10cSrcweir { 0x001F, 0, 0, NULL }, /* 0x1F */ 1194cdf0e10cSrcweir { 0x0020, 0, 0, NULL }, /* 0x20 */ 1195cdf0e10cSrcweir { 0x0021, 0, 0, NULL }, /* 0x21 */ 1196cdf0e10cSrcweir { 0x0022, 0, 0, NULL }, /* 0x22 */ 1197cdf0e10cSrcweir { 0x0023, 0, 0, NULL }, /* 0x23 */ 1198cdf0e10cSrcweir { 0x0024, 0, 0, NULL }, /* 0x24 */ 1199cdf0e10cSrcweir { 0x0025, 0, 0, NULL }, /* 0x25 */ 1200cdf0e10cSrcweir { 0x0026, 0, 0, NULL }, /* 0x26 */ 1201cdf0e10cSrcweir { 0x0027, 0, 0, NULL }, /* 0x27 */ 1202cdf0e10cSrcweir { 0x0028, 0, 0, NULL }, /* 0x28 */ 1203cdf0e10cSrcweir { 0x0029, 0, 0, NULL }, /* 0x29 */ 1204cdf0e10cSrcweir { 0x002A, 0, 0, NULL }, /* 0x2A */ 1205cdf0e10cSrcweir { 0x002B, 0, 0, NULL }, /* 0x2B */ 1206cdf0e10cSrcweir { 0x002C, 0, 0, NULL }, /* 0x2C */ 1207cdf0e10cSrcweir { 0x002D, 0, 0, NULL }, /* 0x2D */ 1208cdf0e10cSrcweir { 0x002E, 0, 0, NULL }, /* 0x2E */ 1209cdf0e10cSrcweir { 0x002F, 0, 0, NULL }, /* 0x2F */ 1210cdf0e10cSrcweir { 0x0030, 0, 0, NULL }, /* 0x30 */ 1211cdf0e10cSrcweir { 0x0031, 0, 0, NULL }, /* 0x31 */ 1212cdf0e10cSrcweir { 0x0032, 0, 0, NULL }, /* 0x32 */ 1213cdf0e10cSrcweir { 0x0033, 0, 0, NULL }, /* 0x33 */ 1214cdf0e10cSrcweir { 0x0034, 0, 0, NULL }, /* 0x34 */ 1215cdf0e10cSrcweir { 0x0035, 0, 0, NULL }, /* 0x35 */ 1216cdf0e10cSrcweir { 0x0036, 0, 0, NULL }, /* 0x36 */ 1217cdf0e10cSrcweir { 0x0037, 0, 0, NULL }, /* 0x37 */ 1218cdf0e10cSrcweir { 0x0038, 0, 0, NULL }, /* 0x38 */ 1219cdf0e10cSrcweir { 0x0039, 0, 0, NULL }, /* 0x39 */ 1220cdf0e10cSrcweir { 0x003A, 0, 0, NULL }, /* 0x3A */ 1221cdf0e10cSrcweir { 0x003B, 0, 0, NULL }, /* 0x3B */ 1222cdf0e10cSrcweir { 0x003C, 0, 0, NULL }, /* 0x3C */ 1223cdf0e10cSrcweir { 0x003D, 0, 0, NULL }, /* 0x3D */ 1224cdf0e10cSrcweir { 0x003E, 0, 0, NULL }, /* 0x3E */ 1225cdf0e10cSrcweir { 0x003F, 0, 0, NULL }, /* 0x3F */ 1226cdf0e10cSrcweir { 0x0040, 0, 0, NULL }, /* 0x40 */ 1227cdf0e10cSrcweir { 0x0041, 0, 0, NULL }, /* 0x41 */ 1228cdf0e10cSrcweir { 0x0042, 0, 0, NULL }, /* 0x42 */ 1229cdf0e10cSrcweir { 0x0043, 0, 0, NULL }, /* 0x43 */ 1230cdf0e10cSrcweir { 0x0044, 0, 0, NULL }, /* 0x44 */ 1231cdf0e10cSrcweir { 0x0045, 0, 0, NULL }, /* 0x45 */ 1232cdf0e10cSrcweir { 0x0046, 0, 0, NULL }, /* 0x46 */ 1233cdf0e10cSrcweir { 0x0047, 0, 0, NULL }, /* 0x47 */ 1234cdf0e10cSrcweir { 0x0048, 0, 0, NULL }, /* 0x48 */ 1235cdf0e10cSrcweir { 0x0049, 0, 0, NULL }, /* 0x49 */ 1236cdf0e10cSrcweir { 0x004A, 0, 0, NULL }, /* 0x4A */ 1237cdf0e10cSrcweir { 0x004B, 0, 0, NULL }, /* 0x4B */ 1238cdf0e10cSrcweir { 0x004C, 0, 0, NULL }, /* 0x4C */ 1239cdf0e10cSrcweir { 0x004D, 0, 0, NULL }, /* 0x4D */ 1240cdf0e10cSrcweir { 0x004E, 0, 0, NULL }, /* 0x4E */ 1241cdf0e10cSrcweir { 0x004F, 0, 0, NULL }, /* 0x4F */ 1242cdf0e10cSrcweir { 0x0050, 0, 0, NULL }, /* 0x50 */ 1243cdf0e10cSrcweir { 0x0051, 0, 0, NULL }, /* 0x51 */ 1244cdf0e10cSrcweir { 0x0052, 0, 0, NULL }, /* 0x52 */ 1245cdf0e10cSrcweir { 0x0053, 0, 0, NULL }, /* 0x53 */ 1246cdf0e10cSrcweir { 0x0054, 0, 0, NULL }, /* 0x54 */ 1247cdf0e10cSrcweir { 0x0055, 0, 0, NULL }, /* 0x55 */ 1248cdf0e10cSrcweir { 0x0056, 0, 0, NULL }, /* 0x56 */ 1249cdf0e10cSrcweir { 0x0057, 0, 0, NULL }, /* 0x57 */ 1250cdf0e10cSrcweir { 0x0058, 0, 0, NULL }, /* 0x58 */ 1251cdf0e10cSrcweir { 0x0059, 0, 0, NULL }, /* 0x59 */ 1252cdf0e10cSrcweir { 0x005A, 0, 0, NULL }, /* 0x5A */ 1253cdf0e10cSrcweir { 0x005B, 0, 0, NULL }, /* 0x5B */ 1254cdf0e10cSrcweir { 0x005C, 0, 0, NULL }, /* 0x5C */ /* is A5 (YEN SIGN), but for compatibiliy with ascii, we use 0x5C like MS CP392 */ 1255cdf0e10cSrcweir { 0x005D, 0, 0, NULL }, /* 0x5D */ 1256cdf0e10cSrcweir { 0x005E, 0, 0, NULL }, /* 0x5E */ 1257cdf0e10cSrcweir { 0x005F, 0, 0, NULL }, /* 0x5F */ 1258cdf0e10cSrcweir { 0x0060, 0, 0, NULL }, /* 0x60 */ 1259cdf0e10cSrcweir { 0x0061, 0, 0, NULL }, /* 0x61 */ 1260cdf0e10cSrcweir { 0x0062, 0, 0, NULL }, /* 0x62 */ 1261cdf0e10cSrcweir { 0x0063, 0, 0, NULL }, /* 0x63 */ 1262cdf0e10cSrcweir { 0x0064, 0, 0, NULL }, /* 0x64 */ 1263cdf0e10cSrcweir { 0x0065, 0, 0, NULL }, /* 0x65 */ 1264cdf0e10cSrcweir { 0x0066, 0, 0, NULL }, /* 0x66 */ 1265cdf0e10cSrcweir { 0x0067, 0, 0, NULL }, /* 0x67 */ 1266cdf0e10cSrcweir { 0x0068, 0, 0, NULL }, /* 0x68 */ 1267cdf0e10cSrcweir { 0x0069, 0, 0, NULL }, /* 0x69 */ 1268cdf0e10cSrcweir { 0x006A, 0, 0, NULL }, /* 0x6A */ 1269cdf0e10cSrcweir { 0x006B, 0, 0, NULL }, /* 0x6B */ 1270cdf0e10cSrcweir { 0x006C, 0, 0, NULL }, /* 0x6C */ 1271cdf0e10cSrcweir { 0x006D, 0, 0, NULL }, /* 0x6D */ 1272cdf0e10cSrcweir { 0x006E, 0, 0, NULL }, /* 0x6E */ 1273cdf0e10cSrcweir { 0x006F, 0, 0, NULL }, /* 0x6F */ 1274cdf0e10cSrcweir { 0x0070, 0, 0, NULL }, /* 0x70 */ 1275cdf0e10cSrcweir { 0x0071, 0, 0, NULL }, /* 0x71 */ 1276cdf0e10cSrcweir { 0x0072, 0, 0, NULL }, /* 0x72 */ 1277cdf0e10cSrcweir { 0x0073, 0, 0, NULL }, /* 0x73 */ 1278cdf0e10cSrcweir { 0x0074, 0, 0, NULL }, /* 0x74 */ 1279cdf0e10cSrcweir { 0x0075, 0, 0, NULL }, /* 0x75 */ 1280cdf0e10cSrcweir { 0x0076, 0, 0, NULL }, /* 0x76 */ 1281cdf0e10cSrcweir { 0x0077, 0, 0, NULL }, /* 0x77 */ 1282cdf0e10cSrcweir { 0x0078, 0, 0, NULL }, /* 0x78 */ 1283cdf0e10cSrcweir { 0x0079, 0, 0, NULL }, /* 0x79 */ 1284cdf0e10cSrcweir { 0x007A, 0, 0, NULL }, /* 0x7A */ 1285cdf0e10cSrcweir { 0x007B, 0, 0, NULL }, /* 0x7B */ 1286cdf0e10cSrcweir { 0x007C, 0, 0, NULL }, /* 0x7C */ 1287cdf0e10cSrcweir { 0x007D, 0, 0, NULL }, /* 0x7D */ 1288cdf0e10cSrcweir { 0x007E, 0, 0, NULL }, /* 0x7E */ /* in SJIS this is 0x0203E (SPACING OVERSCORE), but for compatibiliy with ascii, we use 0x7E (TILDE) like MS CP392 */ 1289cdf0e10cSrcweir { 0x007F, 0, 0, NULL }, /* 0x7F */ 1290cdf0e10cSrcweir { 0x005C, 0, 0, NULL }, /* 0x80 */ /* APPLE additons over SJIS */ 1291cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_81 }, /* 0x81 */ 1292cdf0e10cSrcweir { 0, 0x4F, 0xF1, aImplDBCSToUniTab_SJIS_82 }, /* 0x82 */ 1293cdf0e10cSrcweir { 0, 0x40, 0xD6, aImplDBCSToUniTab_SJIS_83 }, /* 0x83 */ 1294cdf0e10cSrcweir { 0, 0x40, 0xBF, aImplDBCSToUniTab_SJIS_84 }, /* 0x84 */ 1295cdf0e10cSrcweir { 0, 0x40, 0xF4, aImplDBCSToUniTab_APPLEJAPANESE_85 }, /* 0x85 */ 1296cdf0e10cSrcweir { 0, 0x40, 0xD2, aImplDBCSToUniTab_APPLEJAPANESE_86 }, /* 0x86 */ 1297cdf0e10cSrcweir { 0, 0x40, 0xFA, aImplDBCSToUniTab_APPLEJAPANESE_87 }, /* 0x87 */ 1298cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_APPLEJAPANESE_88 }, /* 0x88 */ 1299cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_89 }, /* 0x89 */ 1300cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8A }, /* 0x8A */ 1301cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8B }, /* 0x8B */ 1302cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8C }, /* 0x8C */ 1303cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8D }, /* 0x8D */ 1304cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8E }, /* 0x8E */ 1305cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_8F }, /* 0x8F */ 1306cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_90 }, /* 0x90 */ 1307cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_91 }, /* 0x91 */ 1308cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_92 }, /* 0x92 */ 1309cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_93 }, /* 0x93 */ 1310cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_94 }, /* 0x94 */ 1311cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_95 }, /* 0x95 */ 1312cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_96 }, /* 0x96 */ 1313cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_97 }, /* 0x97 */ 1314cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_98 }, /* 0x98 */ 1315cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_99 }, /* 0x99 */ 1316cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9A }, /* 0x9A */ 1317cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9B }, /* 0x9B */ 1318cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9C }, /* 0x9C */ 1319cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9D }, /* 0x9D */ 1320cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9E }, /* 0x9E */ 1321cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_9F }, /* 0x9F */ 1322cdf0e10cSrcweir { 0x00A0, 0, 0, NULL }, /* 0xA0 */ /* APPLE additons over SJIS */ 1323cdf0e10cSrcweir { 0xFF61, 0, 0, NULL }, /* 0xA1 */ 1324cdf0e10cSrcweir { 0xFF62, 0, 0, NULL }, /* 0xA2 */ 1325cdf0e10cSrcweir { 0xFF63, 0, 0, NULL }, /* 0xA3 */ 1326cdf0e10cSrcweir { 0xFF64, 0, 0, NULL }, /* 0xA4 */ 1327cdf0e10cSrcweir { 0xFF65, 0, 0, NULL }, /* 0xA5 */ 1328cdf0e10cSrcweir { 0xFF66, 0, 0, NULL }, /* 0xA6 */ 1329cdf0e10cSrcweir { 0xFF67, 0, 0, NULL }, /* 0xA7 */ 1330cdf0e10cSrcweir { 0xFF68, 0, 0, NULL }, /* 0xA8 */ 1331cdf0e10cSrcweir { 0xFF69, 0, 0, NULL }, /* 0xA9 */ 1332cdf0e10cSrcweir { 0xFF6A, 0, 0, NULL }, /* 0xAA */ 1333cdf0e10cSrcweir { 0xFF6B, 0, 0, NULL }, /* 0xAB */ 1334cdf0e10cSrcweir { 0xFF6C, 0, 0, NULL }, /* 0xAC */ 1335cdf0e10cSrcweir { 0xFF6D, 0, 0, NULL }, /* 0xAD */ 1336cdf0e10cSrcweir { 0xFF6E, 0, 0, NULL }, /* 0xAE */ 1337cdf0e10cSrcweir { 0xFF6F, 0, 0, NULL }, /* 0xAF */ 1338cdf0e10cSrcweir { 0xFF70, 0, 0, NULL }, /* 0xB0 */ 1339cdf0e10cSrcweir { 0xFF71, 0, 0, NULL }, /* 0xB1 */ 1340cdf0e10cSrcweir { 0xFF72, 0, 0, NULL }, /* 0xB2 */ 1341cdf0e10cSrcweir { 0xFF73, 0, 0, NULL }, /* 0xB3 */ 1342cdf0e10cSrcweir { 0xFF74, 0, 0, NULL }, /* 0xB4 */ 1343cdf0e10cSrcweir { 0xFF75, 0, 0, NULL }, /* 0xB5 */ 1344cdf0e10cSrcweir { 0xFF76, 0, 0, NULL }, /* 0xB6 */ 1345cdf0e10cSrcweir { 0xFF77, 0, 0, NULL }, /* 0xB7 */ 1346cdf0e10cSrcweir { 0xFF78, 0, 0, NULL }, /* 0xB8 */ 1347cdf0e10cSrcweir { 0xFF79, 0, 0, NULL }, /* 0xB9 */ 1348cdf0e10cSrcweir { 0xFF7A, 0, 0, NULL }, /* 0xBA */ 1349cdf0e10cSrcweir { 0xFF7B, 0, 0, NULL }, /* 0xBB */ 1350cdf0e10cSrcweir { 0xFF7C, 0, 0, NULL }, /* 0xBC */ 1351cdf0e10cSrcweir { 0xFF7D, 0, 0, NULL }, /* 0xBD */ 1352cdf0e10cSrcweir { 0xFF7E, 0, 0, NULL }, /* 0xBE */ 1353cdf0e10cSrcweir { 0xFF7F, 0, 0, NULL }, /* 0xBF */ 1354cdf0e10cSrcweir { 0xFF80, 0, 0, NULL }, /* 0xC0 */ 1355cdf0e10cSrcweir { 0xFF81, 0, 0, NULL }, /* 0xC1 */ 1356cdf0e10cSrcweir { 0xFF82, 0, 0, NULL }, /* 0xC2 */ 1357cdf0e10cSrcweir { 0xFF83, 0, 0, NULL }, /* 0xC3 */ 1358cdf0e10cSrcweir { 0xFF84, 0, 0, NULL }, /* 0xC4 */ 1359cdf0e10cSrcweir { 0xFF85, 0, 0, NULL }, /* 0xC5 */ 1360cdf0e10cSrcweir { 0xFF86, 0, 0, NULL }, /* 0xC6 */ 1361cdf0e10cSrcweir { 0xFF87, 0, 0, NULL }, /* 0xC7 */ 1362cdf0e10cSrcweir { 0xFF88, 0, 0, NULL }, /* 0xC8 */ 1363cdf0e10cSrcweir { 0xFF89, 0, 0, NULL }, /* 0xC9 */ 1364cdf0e10cSrcweir { 0xFF8A, 0, 0, NULL }, /* 0xCA */ 1365cdf0e10cSrcweir { 0xFF8B, 0, 0, NULL }, /* 0xCB */ 1366cdf0e10cSrcweir { 0xFF8C, 0, 0, NULL }, /* 0xCC */ 1367cdf0e10cSrcweir { 0xFF8D, 0, 0, NULL }, /* 0xCD */ 1368cdf0e10cSrcweir { 0xFF8E, 0, 0, NULL }, /* 0xCE */ 1369cdf0e10cSrcweir { 0xFF8F, 0, 0, NULL }, /* 0xCF */ 1370cdf0e10cSrcweir { 0xFF90, 0, 0, NULL }, /* 0xD0 */ 1371cdf0e10cSrcweir { 0xFF91, 0, 0, NULL }, /* 0xD1 */ 1372cdf0e10cSrcweir { 0xFF92, 0, 0, NULL }, /* 0xD2 */ 1373cdf0e10cSrcweir { 0xFF93, 0, 0, NULL }, /* 0xD3 */ 1374cdf0e10cSrcweir { 0xFF94, 0, 0, NULL }, /* 0xD4 */ 1375cdf0e10cSrcweir { 0xFF95, 0, 0, NULL }, /* 0xD5 */ 1376cdf0e10cSrcweir { 0xFF96, 0, 0, NULL }, /* 0xD6 */ 1377cdf0e10cSrcweir { 0xFF97, 0, 0, NULL }, /* 0xD7 */ 1378cdf0e10cSrcweir { 0xFF98, 0, 0, NULL }, /* 0xD8 */ 1379cdf0e10cSrcweir { 0xFF99, 0, 0, NULL }, /* 0xD9 */ 1380cdf0e10cSrcweir { 0xFF9A, 0, 0, NULL }, /* 0xDA */ 1381cdf0e10cSrcweir { 0xFF9B, 0, 0, NULL }, /* 0xDB */ 1382cdf0e10cSrcweir { 0xFF9C, 0, 0, NULL }, /* 0xDC */ 1383cdf0e10cSrcweir { 0xFF9D, 0, 0, NULL }, /* 0xDD */ 1384cdf0e10cSrcweir { 0xFF9E, 0, 0, NULL }, /* 0xDE */ 1385cdf0e10cSrcweir { 0xFF9F, 0, 0, NULL }, /* 0xDF */ 1386cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E0 }, /* 0xE0 */ 1387cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E1 }, /* 0xE1 */ 1388cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E2 }, /* 0xE2 */ 1389cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E3 }, /* 0xE3 */ 1390cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E4 }, /* 0xE4 */ 1391cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E5 }, /* 0xE5 */ 1392cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E6 }, /* 0xE6 */ 1393cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E7 }, /* 0xE7 */ 1394cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E8 }, /* 0xE8 */ 1395cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_SJIS_E9 }, /* 0xE9 */ 1396cdf0e10cSrcweir { 0, 0x40, 0xA4, aImplDBCSToUniTab_SJIS_EA }, /* 0xEA */ 1397cdf0e10cSrcweir { 0, 0x51, 0x7A, aImplDBCSToUniTab_APPLEJAPANESE_EB }, /* 0xEB */ 1398cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xEC */ /* We convert this as double byte */ 1399cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xED */ /* We convert this as double byte */ 1400cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xEE */ /* We convert this as double byte */ 1401cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xEF */ /* We convert this as double byte */ 1402cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF0 */ /* EUDC Range */ 1403cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF1 */ /* EUDC Range */ 1404cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF2 */ /* EUDC Range */ 1405cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF3 */ /* EUDC Range */ 1406cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF4 */ /* EUDC Range */ 1407cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF5 */ /* EUDC Range */ 1408cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF6 */ /* EUDC Range */ 1409cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF7 */ /* EUDC Range */ 1410cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF8 */ /* EUDC Range */ 1411cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0xF9 */ /* EUDC Range */ 1412cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_FA }, /* 0xFA */ /* We use the MS table for better MS compatibility */ 1413cdf0e10cSrcweir { 0, 0x40, 0xFC, aImplDBCSToUniTab_MS932_FB }, /* 0xFB */ /* We use the MS table for better MS compatibility */ 1414cdf0e10cSrcweir { 0, 0x40, 0x4B, aImplDBCSToUniTab_MS932_FC }, /* 0xFC */ /* We use the MS table for better MS compatibility */ 1415cdf0e10cSrcweir { 0x00A9, 0, 0, NULL }, /* 0xFD */ /* APPLE additons over SJIS */ 1416cdf0e10cSrcweir { 0x2122, 0, 0, NULL }, /* 0xFE */ /* APPLE additons over SJIS */ 1417cdf0e10cSrcweir { 0x2026, 0, 0, NULL } /* 0xFF */ /* APPLE additons over SJIS */ 1418cdf0e10cSrcweir}; 1419cdf0e10cSrcweir 1420cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 1421cdf0e10cSrcweir 1422cdf0e10cSrcweirstatic ImplUniToDBCSHighTab const aAPPLEJAPANESEDBCSHighTab[256] = 1423cdf0e10cSrcweir{ 1424cdf0e10cSrcweir { 0x00, 0xF7, aImplUniToDBCSTab_APPLEJAPANESE_00 }, /* 0x00 */ 1425cdf0e10cSrcweir { 1, 0, NULL }, /* 0x01 */ 1426cdf0e10cSrcweir { 1, 0, NULL }, /* 0x02 */ 1427cdf0e10cSrcweir { 0x91, 0xC9, aImplUniToDBCSTab_SJIS_03 }, /* 0x03 */ 1428cdf0e10cSrcweir { 0x01, 0x51, aImplUniToDBCSTab_SJIS_04 }, /* 0x04 */ 1429cdf0e10cSrcweir { 1, 0, NULL }, /* 0x05 */ 1430cdf0e10cSrcweir { 1, 0, NULL }, /* 0x06 */ 1431cdf0e10cSrcweir { 1, 0, NULL }, /* 0x07 */ 1432cdf0e10cSrcweir { 1, 0, NULL }, /* 0x08 */ 1433cdf0e10cSrcweir { 1, 0, NULL }, /* 0x09 */ 1434cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0A */ 1435cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0B */ 1436cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0C */ 1437cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0D */ 1438cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0E */ 1439cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0F */ 1440cdf0e10cSrcweir { 1, 0, NULL }, /* 0x10 */ 1441cdf0e10cSrcweir { 1, 0, NULL }, /* 0x11 */ 1442cdf0e10cSrcweir { 1, 0, NULL }, /* 0x12 */ 1443cdf0e10cSrcweir { 1, 0, NULL }, /* 0x13 */ 1444cdf0e10cSrcweir { 1, 0, NULL }, /* 0x14 */ 1445cdf0e10cSrcweir { 1, 0, NULL }, /* 0x15 */ 1446cdf0e10cSrcweir { 1, 0, NULL }, /* 0x16 */ 1447cdf0e10cSrcweir { 1, 0, NULL }, /* 0x17 */ 1448cdf0e10cSrcweir { 1, 0, NULL }, /* 0x18 */ 1449cdf0e10cSrcweir { 1, 0, NULL }, /* 0x19 */ 1450cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1A */ 1451cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1B */ 1452cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1C */ 1453cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1D */ 1454cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1E */ 1455cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1F */ 1456cdf0e10cSrcweir { 0x10, 0x3E, aImplUniToDBCSTab_SJIS_20 }, /* 0x20 */ 1457cdf0e10cSrcweir { 0x03, 0xE9, aImplUniToDBCSTab_APPLEJAPANESE_21 }, /* 0x21 */ 1458cdf0e10cSrcweir { 0x00, 0xEF, aImplUniToDBCSTab_APPLEJAPANESE_22 }, /* 0x22 */ 1459cdf0e10cSrcweir { 0x12, 0x12, aImplUniToDBCSTab_SJIS_23 }, /* 0x23 */ 1460cdf0e10cSrcweir { 0x60, 0xB5, aImplUniToDBCSTab_APPLEJAPANESE_24 }, /* 0x24 */ 1461cdf0e10cSrcweir { 0x00, 0xEF, aImplUniToDBCSTab_SJIS_25 }, /* 0x25 */ 1462cdf0e10cSrcweir { 0x05, 0x6F, aImplUniToDBCSTab_APPLEJAPANESE_26 }, /* 0x26 */ 1463cdf0e10cSrcweir { 0x76, 0x7E, aImplUniToDBCSTab_APPLEJAPANESE_27 }, /* 0x27 */ 1464cdf0e10cSrcweir { 1, 0, NULL }, /* 0x28 */ 1465cdf0e10cSrcweir { 1, 0, NULL }, /* 0x29 */ 1466cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2A */ 1467cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2B */ 1468cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2C */ 1469cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2D */ 1470cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2E */ 1471cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2F */ 1472cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_APPLEJAPANESE_30 }, /* 0x30 */ 1473cdf0e10cSrcweir { 1, 0, NULL }, /* 0x31 */ 1474cdf0e10cSrcweir { 0x2A, 0xA9, aImplUniToDBCSTab_APPLEJAPANESE_32 }, /* 0x32 */ 1475cdf0e10cSrcweir { 0x00, 0xD4, aImplUniToDBCSTab_APPLEJAPANESE_33 }, /* 0x33 */ 1476cdf0e10cSrcweir { 1, 0, NULL }, /* 0x34 */ 1477cdf0e10cSrcweir { 1, 0, NULL }, /* 0x35 */ 1478cdf0e10cSrcweir { 1, 0, NULL }, /* 0x36 */ 1479cdf0e10cSrcweir { 1, 0, NULL }, /* 0x37 */ 1480cdf0e10cSrcweir { 1, 0, NULL }, /* 0x38 */ 1481cdf0e10cSrcweir { 1, 0, NULL }, /* 0x39 */ 1482cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3A */ 1483cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3B */ 1484cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3C */ 1485cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3D */ 1486cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3E */ 1487cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3F */ 1488cdf0e10cSrcweir { 1, 0, NULL }, /* 0x40 */ 1489cdf0e10cSrcweir { 1, 0, NULL }, /* 0x41 */ 1490cdf0e10cSrcweir { 1, 0, NULL }, /* 0x42 */ 1491cdf0e10cSrcweir { 1, 0, NULL }, /* 0x43 */ 1492cdf0e10cSrcweir { 1, 0, NULL }, /* 0x44 */ 1493cdf0e10cSrcweir { 1, 0, NULL }, /* 0x45 */ 1494cdf0e10cSrcweir { 1, 0, NULL }, /* 0x46 */ 1495cdf0e10cSrcweir { 1, 0, NULL }, /* 0x47 */ 1496cdf0e10cSrcweir { 1, 0, NULL }, /* 0x48 */ 1497cdf0e10cSrcweir { 1, 0, NULL }, /* 0x49 */ 1498cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4A */ 1499cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4B */ 1500cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4C */ 1501cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4D */ 1502cdf0e10cSrcweir { 0x00, 0xFC, aImplUniToDBCSTab_SJIS_4E }, /* 0x4E */ 1503cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_4F }, /* 0x4F */ 1504cdf0e10cSrcweir { 0x05, 0xFB, aImplUniToDBCSTab_SJIS_50 }, /* 0x50 */ 1505cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_51 }, /* 0x51 */ 1506cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_52 }, /* 0x52 */ 1507cdf0e10cSrcweir { 0x00, 0xFA, aImplUniToDBCSTab_SJIS_53 }, /* 0x53 */ 1508cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_SJIS_54 }, /* 0x54 */ 1509cdf0e10cSrcweir { 0x04, 0xFE, aImplUniToDBCSTab_SJIS_55 }, /* 0x55 */ 1510cdf0e10cSrcweir { 0x06, 0xFF, aImplUniToDBCSTab_SJIS_56 }, /* 0x56 */ 1511cdf0e10cSrcweir { 0x00, 0xFC, aImplUniToDBCSTab_SJIS_57 }, /* 0x57 */ 1512cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_SJIS_58 }, /* 0x58 */ 1513cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_SJIS_59 }, /* 0x59 */ 1514cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_5A }, /* 0x5A */ 1515cdf0e10cSrcweir { 0x09, 0xFF, aImplUniToDBCSTab_SJIS_5B }, /* 0x5B */ 1516cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_SJIS_5C }, /* 0x5C */ 1517cdf0e10cSrcweir { 0x07, 0xFE, aImplUniToDBCSTab_SJIS_5D }, /* 0x5D */ 1518cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_SJIS_5E }, /* 0x5E */ 1519cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_SJIS_5F }, /* 0x5F */ 1520cdf0e10cSrcweir { 0x0E, 0xFB, aImplUniToDBCSTab_SJIS_60 }, /* 0x60 */ 1521cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_61 }, /* 0x61 */ 1522cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_62 }, /* 0x62 */ 1523cdf0e10cSrcweir { 0x01, 0xFA, aImplUniToDBCSTab_SJIS_63 }, /* 0x63 */ 1524cdf0e10cSrcweir { 0x06, 0xFE, aImplUniToDBCSTab_SJIS_64 }, /* 0x64 */ 1525cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_SJIS_65 }, /* 0x65 */ 1526cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_66 }, /* 0x66 */ 1527cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_67 }, /* 0x67 */ 1528cdf0e10cSrcweir { 0x01, 0xFA, aImplUniToDBCSTab_SJIS_68 }, /* 0x68 */ 1529cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_69 }, /* 0x69 */ 1530cdf0e10cSrcweir { 0x02, 0xFB, aImplUniToDBCSTab_SJIS_6A }, /* 0x6A */ 1531cdf0e10cSrcweir { 0x04, 0xF3, aImplUniToDBCSTab_SJIS_6B }, /* 0x6B */ 1532cdf0e10cSrcweir { 0x08, 0xF3, aImplUniToDBCSTab_SJIS_6C }, /* 0x6C */ 1533cdf0e10cSrcweir { 0x04, 0xFC, aImplUniToDBCSTab_SJIS_6D }, /* 0x6D */ 1534cdf0e10cSrcweir { 0x05, 0xFF, aImplUniToDBCSTab_SJIS_6E }, /* 0x6E */ 1535cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_SJIS_6F }, /* 0x6F */ 1536cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_SJIS_70 }, /* 0x70 */ 1537cdf0e10cSrcweir { 0x04, 0xFF, aImplUniToDBCSTab_SJIS_71 }, /* 0x71 */ 1538cdf0e10cSrcweir { 0x06, 0xFD, aImplUniToDBCSTab_SJIS_72 }, /* 0x72 */ 1539cdf0e10cSrcweir { 0x0A, 0xFE, aImplUniToDBCSTab_SJIS_73 }, /* 0x73 */ 1540cdf0e10cSrcweir { 0x03, 0xF8, aImplUniToDBCSTab_SJIS_74 }, /* 0x74 */ 1541cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_SJIS_75 }, /* 0x75 */ 1542cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_SJIS_76 }, /* 0x76 */ 1543cdf0e10cSrcweir { 0x01, 0xFC, aImplUniToDBCSTab_SJIS_77 }, /* 0x77 */ 1544cdf0e10cSrcweir { 0x02, 0xFD, aImplUniToDBCSTab_SJIS_78 }, /* 0x78 */ 1545cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_79 }, /* 0x79 */ 1546cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_7A }, /* 0x7A */ 1547cdf0e10cSrcweir { 0x02, 0xF7, aImplUniToDBCSTab_SJIS_7B }, /* 0x7B */ 1548cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_7C }, /* 0x7C */ 1549cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_SJIS_7D }, /* 0x7D */ 1550cdf0e10cSrcweir { 0x01, 0x9C, aImplUniToDBCSTab_SJIS_7E }, /* 0x7E */ 1551cdf0e10cSrcweir { 0x36, 0xFC, aImplUniToDBCSTab_SJIS_7F }, /* 0x7F */ 1552cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_SJIS_80 }, /* 0x80 */ 1553cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_SJIS_81 }, /* 0x81 */ 1554cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_82 }, /* 0x82 */ 1555cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_SJIS_83 }, /* 0x83 */ 1556cdf0e10cSrcweir { 0x03, 0xFF, aImplUniToDBCSTab_SJIS_84 }, /* 0x84 */ 1557cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_85 }, /* 0x85 */ 1558cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_SJIS_86 }, /* 0x86 */ 1559cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_87 }, /* 0x87 */ 1560cdf0e10cSrcweir { 0x05, 0xFE, aImplUniToDBCSTab_SJIS_88 }, /* 0x88 */ 1561cdf0e10cSrcweir { 0x02, 0xF8, aImplUniToDBCSTab_SJIS_89 }, /* 0x89 */ 1562cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_SJIS_8A }, /* 0x8A */ 1563cdf0e10cSrcweir { 0x00, 0x9A, aImplUniToDBCSTab_SJIS_8B }, /* 0x8B */ 1564cdf0e10cSrcweir { 0x37, 0xFD, aImplUniToDBCSTab_SJIS_8C }, /* 0x8C */ 1565cdf0e10cSrcweir { 0x04, 0xFF, aImplUniToDBCSTab_SJIS_8D }, /* 0x8D */ 1566cdf0e10cSrcweir { 0x08, 0xFE, aImplUniToDBCSTab_SJIS_8E }, /* 0x8E */ 1567cdf0e10cSrcweir { 0x03, 0xFD, aImplUniToDBCSTab_SJIS_8F }, /* 0x8F */ 1568cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_SJIS_90 }, /* 0x90 */ 1569cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_SJIS_91 }, /* 0x91 */ 1570cdf0e10cSrcweir { 0x06, 0xFF, aImplUniToDBCSTab_SJIS_92 }, /* 0x92 */ 1571cdf0e10cSrcweir { 0x02, 0xF8, aImplUniToDBCSTab_SJIS_93 }, /* 0x93 */ 1572cdf0e10cSrcweir { 0x03, 0x81, aImplUniToDBCSTab_SJIS_94 }, /* 0x94 */ 1573cdf0e10cSrcweir { 0x77, 0xE5, aImplUniToDBCSTab_SJIS_95 }, /* 0x95 */ 1574cdf0e10cSrcweir { 0x1C, 0xFB, aImplUniToDBCSTab_SJIS_96 }, /* 0x96 */ 1575cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_SJIS_97 }, /* 0x97 */ 1576cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_SJIS_98 }, /* 0x98 */ 1577cdf0e10cSrcweir { 0x03, 0xFF, aImplUniToDBCSTab_SJIS_99 }, /* 0x99 */ 1578cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_SJIS_9A }, /* 0x9A */ 1579cdf0e10cSrcweir { 0x06, 0xF5, aImplUniToDBCSTab_SJIS_9B }, /* 0x9B */ 1580cdf0e10cSrcweir { 0x00, 0xF6, aImplUniToDBCSTab_SJIS_9C }, /* 0x9C */ 1581cdf0e10cSrcweir { 0x03, 0xFD, aImplUniToDBCSTab_SJIS_9D }, /* 0x9D */ 1582cdf0e10cSrcweir { 0x19, 0xFD, aImplUniToDBCSTab_SJIS_9E }, /* 0x9E */ 1583cdf0e10cSrcweir { 0x07, 0xA0, aImplUniToDBCSTab_SJIS_9F }, /* 0x9F */ 1584cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA0 */ 1585cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA1 */ 1586cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA2 */ 1587cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA3 */ 1588cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA4 */ 1589cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA5 */ 1590cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA6 */ 1591cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA7 */ 1592cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA8 */ 1593cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA9 */ 1594cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAA */ 1595cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAB */ 1596cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAC */ 1597cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAD */ 1598cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAE */ 1599cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAF */ 1600cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB0 */ 1601cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB1 */ 1602cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB2 */ 1603cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB3 */ 1604cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB4 */ 1605cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB5 */ 1606cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB6 */ 1607cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB7 */ 1608cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB8 */ 1609cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB9 */ 1610cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBA */ 1611cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBB */ 1612cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBC */ 1613cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBD */ 1614cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBE */ 1615cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBF */ 1616cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC0 */ 1617cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC1 */ 1618cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC2 */ 1619cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC3 */ 1620cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC4 */ 1621cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC5 */ 1622cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC6 */ 1623cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC7 */ 1624cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC8 */ 1625cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC9 */ 1626cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCA */ 1627cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCB */ 1628cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCC */ 1629cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCD */ 1630cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCE */ 1631cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCF */ 1632cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD0 */ 1633cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD1 */ 1634cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD2 */ 1635cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD3 */ 1636cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD4 */ 1637cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD5 */ 1638cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD6 */ 1639cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD7 */ 1640cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD8 */ 1641cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD9 */ 1642cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDA */ 1643cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDB */ 1644cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDC */ 1645cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDD */ 1646cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDE */ 1647cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDF */ 1648cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE0 */ 1649cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE1 */ 1650cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE2 */ 1651cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE3 */ 1652cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE4 */ 1653cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE5 */ 1654cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE6 */ 1655cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE7 */ 1656cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE8 */ 1657cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE9 */ 1658cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEA */ 1659cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEB */ 1660cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEC */ 1661cdf0e10cSrcweir { 1, 0, NULL }, /* 0xED */ 1662cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEE */ 1663cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEF */ 1664cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF0 */ 1665cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF1 */ 1666cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF2 */ 1667cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF3 */ 1668cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF4 */ 1669cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF5 */ 1670cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF6 */ 1671cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF7 */ 1672cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF8 */ 1673cdf0e10cSrcweir { 0x29, 0xDC, aImplUniToDBCSTab_MS932_F9 }, /* 0xF9 */ 1674cdf0e10cSrcweir { 0x0E, 0x2D, aImplUniToDBCSTab_MS932_FA }, /* 0xFA */ 1675cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFB */ 1676cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFC */ 1677cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFD */ 1678cdf0e10cSrcweir { 0x30, 0x44, aImplUniToDBCSTab_APPLEJAPANESE_FE }, /* 0xFE */ 1679cdf0e10cSrcweir { 0x01, 0xE5, aImplUniToDBCSTab_SJIS_FF } /* 0xFF */ 1680cdf0e10cSrcweir}; 1681cdf0e10cSrcweir 1682cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 1683cdf0e10cSrcweir 1684cdf0e10cSrcweirstatic ImplDBCSConvertData const aImplAPPLEJAPANESEDBCSCvtData = 1685cdf0e10cSrcweir{ 1686cdf0e10cSrcweir aAPPLEJAPANESEUniLeadTab, 1687cdf0e10cSrcweir aAPPLEJAPANESEDBCSHighTab, 1688cdf0e10cSrcweir 0x00, 0xFF, 1689cdf0e10cSrcweir 0x40, 0xFC, 1690cdf0e10cSrcweir aImplSJISDBCSEUDCTab, 1691cdf0e10cSrcweir DBCS_EUDC_SJIS_COUNT 1692cdf0e10cSrcweir}; 1693cdf0e10cSrcweir 1694cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 1695cdf0e10cSrcweir 1696cdf0e10cSrcweirstatic ImplTextEncodingData const aImplAPPLEJAPANESETextEncodingData 1697cdf0e10cSrcweir = { { &aImplAPPLEJAPANESEDBCSCvtData, 1698cdf0e10cSrcweir ImplDBCSToUnicode, 1699cdf0e10cSrcweir ImplUnicodeToDBCS, 1700cdf0e10cSrcweir NULL, 1701cdf0e10cSrcweir NULL, 1702cdf0e10cSrcweir NULL, 1703cdf0e10cSrcweir NULL, 1704cdf0e10cSrcweir NULL, 1705cdf0e10cSrcweir NULL }, 1706cdf0e10cSrcweir 1, 1707cdf0e10cSrcweir 2, 1708cdf0e10cSrcweir 2, 1709cdf0e10cSrcweir 128, 1710cdf0e10cSrcweir "euc-jp", 1711cdf0e10cSrcweir "shift_jis", 1712cdf0e10cSrcweir RTL_TEXTENCODING_INFO_MULTIBYTE }; 1713cdf0e10cSrcweir /* MAC, SCRIPT_JAPANESE, pc code page 932, mac encoding 1 */ 1714cdf0e10cSrcweir 1715cdf0e10cSrcweir/* ======================================================================= */ 1716cdf0e10cSrcweir 1717cdf0e10cSrcweirstatic ImplDBCSToUniLeadTab const aJIS0208UniLeadTab[128] = 1718cdf0e10cSrcweir{ 1719cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x00 */ 1720cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x01 */ 1721cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x02 */ 1722cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x03 */ 1723cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x04 */ 1724cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x05 */ 1725cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x06 */ 1726cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x07 */ 1727cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x08 */ 1728cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x09 */ 1729cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0A */ 1730cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0B */ 1731cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0C */ 1732cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0D */ 1733cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0E */ 1734cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0F */ 1735cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x10 */ /* We convert this as double byte */ 1736cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x11 */ /* We convert this as double byte */ 1737cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x12 */ /* We convert this as double byte */ 1738cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x13 */ /* We convert this as double byte */ 1739cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x14 */ /* We convert this as double byte */ 1740cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x15 */ /* We convert this as double byte */ 1741cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x16 */ /* We convert this as double byte */ 1742cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x17 */ /* We convert this as double byte */ 1743cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x18 */ /* We convert this as double byte */ 1744cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x19 */ /* We convert this as double byte */ 1745cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1A */ /* We convert this as double byte */ 1746cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1B */ /* We convert this as double byte */ 1747cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1C */ /* We convert this as double byte */ 1748cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1D */ /* We convert this as double byte */ 1749cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1E */ /* We convert this as double byte */ 1750cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1F */ /* We convert this as double byte */ 1751cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x20 */ /* We convert this as double byte */ 1752cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_21 }, /* 0x21 */ 1753cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_22 }, /* 0x22 */ 1754cdf0e10cSrcweir { 0, 0x30, 0x7A, aImplDBCSToUniTab_JIS0208_23 }, /* 0x23 */ 1755cdf0e10cSrcweir { 0, 0x21, 0x73, aImplDBCSToUniTab_JIS0208_24 }, /* 0x24 */ 1756cdf0e10cSrcweir { 0, 0x21, 0x76, aImplDBCSToUniTab_JIS0208_25 }, /* 0x25 */ 1757cdf0e10cSrcweir { 0, 0x21, 0x58, aImplDBCSToUniTab_JIS0208_26 }, /* 0x26 */ 1758cdf0e10cSrcweir { 0, 0x21, 0x71, aImplDBCSToUniTab_JIS0208_27 }, /* 0x27 */ 1759cdf0e10cSrcweir { 0, 0x21, 0x40, aImplDBCSToUniTab_JIS0208_28 }, /* 0x28 */ 1760cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x29 */ /* We convert this as double byte */ 1761cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x2A */ /* We convert this as double byte */ 1762cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x2B */ /* We convert this as double byte */ 1763cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x2C */ /* We convert this as double byte */ 1764cdf0e10cSrcweir { 0, 0x21, 0x7C, aImplDBCSToUniTab_JIS0208_2D }, /* 0x2D */ 1765cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x2E */ /* We convert this as double byte */ 1766cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x2F */ /* We convert this as double byte */ 1767cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_30 }, /* 0x30 */ 1768cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_31 }, /* 0x31 */ 1769cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_32 }, /* 0x32 */ 1770cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_33 }, /* 0x33 */ 1771cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_34 }, /* 0x34 */ 1772cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_35 }, /* 0x35 */ 1773cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_36 }, /* 0x36 */ 1774cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_37 }, /* 0x37 */ 1775cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_38 }, /* 0x38 */ 1776cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_39 }, /* 0x39 */ 1777cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_3A }, /* 0x3A */ 1778cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_3B }, /* 0x3B */ 1779cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_3C }, /* 0x3C */ 1780cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_3D }, /* 0x3D */ 1781cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_3E }, /* 0x3E */ 1782cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_3F }, /* 0x3F */ 1783cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_40 }, /* 0x40 */ 1784cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_41 }, /* 0x41 */ 1785cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_42 }, /* 0x42 */ 1786cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_43 }, /* 0x43 */ 1787cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_44 }, /* 0x44 */ 1788cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_45 }, /* 0x45 */ 1789cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_46 }, /* 0x46 */ 1790cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_47 }, /* 0x47 */ 1791cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_48 }, /* 0x48 */ 1792cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_49 }, /* 0x49 */ 1793cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_4A }, /* 0x4A */ 1794cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_4B }, /* 0x4B */ 1795cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_4C }, /* 0x4C */ 1796cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_4D }, /* 0x4D */ 1797cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_4E }, /* 0x4E */ 1798cdf0e10cSrcweir { 0, 0x21, 0x53, aImplDBCSToUniTab_JIS0208_4F }, /* 0x4F */ 1799cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_50 }, /* 0x50 */ 1800cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_51 }, /* 0x51 */ 1801cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_52 }, /* 0x52 */ 1802cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_53 }, /* 0x53 */ 1803cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_54 }, /* 0x54 */ 1804cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_55 }, /* 0x55 */ 1805cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_56 }, /* 0x56 */ 1806cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_57 }, /* 0x57 */ 1807cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_58 }, /* 0x58 */ 1808cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_59 }, /* 0x59 */ 1809cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_5A }, /* 0x5A */ 1810cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_5B }, /* 0x5B */ 1811cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_5C }, /* 0x5C */ 1812cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_5D }, /* 0x5D */ 1813cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_5E }, /* 0x5E */ 1814cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_5F }, /* 0x5F */ 1815cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_60 }, /* 0x60 */ 1816cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_61 }, /* 0x61 */ 1817cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_62 }, /* 0x62 */ 1818cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_63 }, /* 0x63 */ 1819cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_64 }, /* 0x64 */ 1820cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_65 }, /* 0x65 */ 1821cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_66 }, /* 0x66 */ 1822cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_67 }, /* 0x67 */ 1823cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_68 }, /* 0x68 */ 1824cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_69 }, /* 0x69 */ 1825cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_6A }, /* 0x6A */ 1826cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_6B }, /* 0x6B */ 1827cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_6C }, /* 0x6C */ 1828cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_6D }, /* 0x6D */ 1829cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_6E }, /* 0x6E */ 1830cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_6F }, /* 0x6F */ 1831cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_70 }, /* 0x70 */ 1832cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_71 }, /* 0x71 */ 1833cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_72 }, /* 0x72 */ 1834cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0208_73 }, /* 0x73 */ 1835cdf0e10cSrcweir { 0, 0x21, 0x26, aImplDBCSToUniTab_JIS0208_74 }, /* 0x74 */ 1836cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x75 */ /* We convert this as double byte */ 1837cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x76 */ /* We convert this as double byte */ 1838cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x77 */ /* We convert this as double byte */ 1839cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x78 */ /* We convert this as double byte */ 1840cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x79 */ /* We convert this as double byte */ 1841cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x7A */ /* We convert this as double byte */ 1842cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x7B */ /* We convert this as double byte */ 1843cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x7C */ /* We convert this as double byte */ 1844cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x7D */ /* We convert this as double byte */ 1845cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x7E */ /* We convert this as double byte */ 1846cdf0e10cSrcweir { 0, 1, 0, NULL } /* 0x7F */ 1847cdf0e10cSrcweir}; 1848cdf0e10cSrcweir 1849cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 1850cdf0e10cSrcweir 1851cdf0e10cSrcweirstatic ImplUniToDBCSHighTab const aJIS0208DBCSHighTab[256] = 1852cdf0e10cSrcweir{ 1853cdf0e10cSrcweir { 0xA2, 0xF7, aImplUniToDBCSTab_JIS0208_00 }, /* 0x00 */ 1854cdf0e10cSrcweir { 1, 0, NULL }, /* 0x01 */ 1855cdf0e10cSrcweir { 1, 0, NULL }, /* 0x02 */ 1856cdf0e10cSrcweir { 0x91, 0xC9, aImplUniToDBCSTab_JIS0208_03 }, /* 0x03 */ 1857cdf0e10cSrcweir { 0x01, 0x51, aImplUniToDBCSTab_JIS0208_04 }, /* 0x04 */ 1858cdf0e10cSrcweir { 1, 0, NULL }, /* 0x05 */ 1859cdf0e10cSrcweir { 1, 0, NULL }, /* 0x06 */ 1860cdf0e10cSrcweir { 1, 0, NULL }, /* 0x07 */ 1861cdf0e10cSrcweir { 1, 0, NULL }, /* 0x08 */ 1862cdf0e10cSrcweir { 1, 0, NULL }, /* 0x09 */ 1863cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0A */ 1864cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0B */ 1865cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0C */ 1866cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0D */ 1867cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0E */ 1868cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0F */ 1869cdf0e10cSrcweir { 1, 0, NULL }, /* 0x10 */ 1870cdf0e10cSrcweir { 1, 0, NULL }, /* 0x11 */ 1871cdf0e10cSrcweir { 1, 0, NULL }, /* 0x12 */ 1872cdf0e10cSrcweir { 1, 0, NULL }, /* 0x13 */ 1873cdf0e10cSrcweir { 1, 0, NULL }, /* 0x14 */ 1874cdf0e10cSrcweir { 1, 0, NULL }, /* 0x15 */ 1875cdf0e10cSrcweir { 1, 0, NULL }, /* 0x16 */ 1876cdf0e10cSrcweir { 1, 0, NULL }, /* 0x17 */ 1877cdf0e10cSrcweir { 1, 0, NULL }, /* 0x18 */ 1878cdf0e10cSrcweir { 1, 0, NULL }, /* 0x19 */ 1879cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1A */ 1880cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1B */ 1881cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1C */ 1882cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1D */ 1883cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1E */ 1884cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1F */ 1885cdf0e10cSrcweir { 0x10, 0x3B, aImplUniToDBCSTab_JIS0208_20 }, /* 0x20 */ 1886cdf0e10cSrcweir { 0x03, 0xD4, aImplUniToDBCSTab_JIS0208_21 }, /* 0x21 */ 1887cdf0e10cSrcweir { 0x00, 0xBF, aImplUniToDBCSTab_JIS0208_22 }, /* 0x22 */ 1888cdf0e10cSrcweir { 0x12, 0x12, aImplUniToDBCSTab_JIS0208_23 }, /* 0x23 */ 1889cdf0e10cSrcweir { 0x60, 0x73, aImplUniToDBCSTab_JIS0208_24 }, /* 0x24 */ 1890cdf0e10cSrcweir { 0x00, 0xEF, aImplUniToDBCSTab_JIS0208_25 }, /* 0x25 */ 1891cdf0e10cSrcweir { 0x05, 0x6F, aImplUniToDBCSTab_JIS0208_26 }, /* 0x26 */ 1892cdf0e10cSrcweir { 1, 0, NULL }, /* 0x27 */ 1893cdf0e10cSrcweir { 1, 0, NULL }, /* 0x28 */ 1894cdf0e10cSrcweir { 1, 0, NULL }, /* 0x29 */ 1895cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2A */ 1896cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2B */ 1897cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2C */ 1898cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2D */ 1899cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2E */ 1900cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2F */ 1901cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_JIS0208_30 }, /* 0x30 */ 1902cdf0e10cSrcweir { 1, 0, NULL }, /* 0x31 */ 1903cdf0e10cSrcweir { 0x31, 0xA8, aImplUniToDBCSTab_JIS0208_32 }, /* 0x32 */ 1904cdf0e10cSrcweir { 0x03, 0xCD, aImplUniToDBCSTab_JIS0208_33 }, /* 0x33 */ 1905cdf0e10cSrcweir { 1, 0, NULL }, /* 0x34 */ 1906cdf0e10cSrcweir { 1, 0, NULL }, /* 0x35 */ 1907cdf0e10cSrcweir { 1, 0, NULL }, /* 0x36 */ 1908cdf0e10cSrcweir { 1, 0, NULL }, /* 0x37 */ 1909cdf0e10cSrcweir { 1, 0, NULL }, /* 0x38 */ 1910cdf0e10cSrcweir { 1, 0, NULL }, /* 0x39 */ 1911cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3A */ 1912cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3B */ 1913cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3C */ 1914cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3D */ 1915cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3E */ 1916cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3F */ 1917cdf0e10cSrcweir { 1, 0, NULL }, /* 0x40 */ 1918cdf0e10cSrcweir { 1, 0, NULL }, /* 0x41 */ 1919cdf0e10cSrcweir { 1, 0, NULL }, /* 0x42 */ 1920cdf0e10cSrcweir { 1, 0, NULL }, /* 0x43 */ 1921cdf0e10cSrcweir { 1, 0, NULL }, /* 0x44 */ 1922cdf0e10cSrcweir { 1, 0, NULL }, /* 0x45 */ 1923cdf0e10cSrcweir { 1, 0, NULL }, /* 0x46 */ 1924cdf0e10cSrcweir { 1, 0, NULL }, /* 0x47 */ 1925cdf0e10cSrcweir { 1, 0, NULL }, /* 0x48 */ 1926cdf0e10cSrcweir { 1, 0, NULL }, /* 0x49 */ 1927cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4A */ 1928cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4B */ 1929cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4C */ 1930cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4D */ 1931cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_JIS0208_4E }, /* 0x4E */ 1932cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_JIS0208_4F }, /* 0x4F */ 1933cdf0e10cSrcweir { 0x05, 0xFB, aImplUniToDBCSTab_JIS0208_50 }, /* 0x50 */ 1934cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_JIS0208_51 }, /* 0x51 */ 1935cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0208_52 }, /* 0x52 */ 1936cdf0e10cSrcweir { 0x01, 0xFA, aImplUniToDBCSTab_JIS0208_53 }, /* 0x53 */ 1937cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_JIS0208_54 }, /* 0x54 */ 1938cdf0e10cSrcweir { 0x04, 0xFE, aImplUniToDBCSTab_JIS0208_55 }, /* 0x55 */ 1939cdf0e10cSrcweir { 0x06, 0xFF, aImplUniToDBCSTab_JIS0208_56 }, /* 0x56 */ 1940cdf0e10cSrcweir { 0x00, 0xFC, aImplUniToDBCSTab_JIS0208_57 }, /* 0x57 */ 1941cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_JIS0208_58 }, /* 0x58 */ 1942cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0208_59 }, /* 0x59 */ 1943cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_JIS0208_5A }, /* 0x5A */ 1944cdf0e10cSrcweir { 0x09, 0xFF, aImplUniToDBCSTab_JIS0208_5B }, /* 0x5B */ 1945cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_JIS0208_5C }, /* 0x5C */ 1946cdf0e10cSrcweir { 0x07, 0xFE, aImplUniToDBCSTab_JIS0208_5D }, /* 0x5D */ 1947cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0208_5E }, /* 0x5E */ 1948cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_JIS0208_5F }, /* 0x5F */ 1949cdf0e10cSrcweir { 0x0E, 0xFB, aImplUniToDBCSTab_JIS0208_60 }, /* 0x60 */ 1950cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0208_61 }, /* 0x61 */ 1951cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0208_62 }, /* 0x62 */ 1952cdf0e10cSrcweir { 0x01, 0xFA, aImplUniToDBCSTab_JIS0208_63 }, /* 0x63 */ 1953cdf0e10cSrcweir { 0x06, 0xFE, aImplUniToDBCSTab_JIS0208_64 }, /* 0x64 */ 1954cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_JIS0208_65 }, /* 0x65 */ 1955cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0208_66 }, /* 0x66 */ 1956cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0208_67 }, /* 0x67 */ 1957cdf0e10cSrcweir { 0x02, 0xFA, aImplUniToDBCSTab_JIS0208_68 }, /* 0x68 */ 1958cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0208_69 }, /* 0x69 */ 1959cdf0e10cSrcweir { 0x02, 0xFB, aImplUniToDBCSTab_JIS0208_6A }, /* 0x6A */ 1960cdf0e10cSrcweir { 0x04, 0xF3, aImplUniToDBCSTab_JIS0208_6B }, /* 0x6B */ 1961cdf0e10cSrcweir { 0x08, 0xF3, aImplUniToDBCSTab_JIS0208_6C }, /* 0x6C */ 1962cdf0e10cSrcweir { 0x0B, 0xFB, aImplUniToDBCSTab_JIS0208_6D }, /* 0x6D */ 1963cdf0e10cSrcweir { 0x05, 0xFF, aImplUniToDBCSTab_JIS0208_6E }, /* 0x6E */ 1964cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_JIS0208_6F }, /* 0x6F */ 1965cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_JIS0208_70 }, /* 0x70 */ 1966cdf0e10cSrcweir { 0x09, 0xFF, aImplUniToDBCSTab_JIS0208_71 }, /* 0x71 */ 1967cdf0e10cSrcweir { 0x06, 0xFD, aImplUniToDBCSTab_JIS0208_72 }, /* 0x72 */ 1968cdf0e10cSrcweir { 0x0A, 0xFE, aImplUniToDBCSTab_JIS0208_73 }, /* 0x73 */ 1969cdf0e10cSrcweir { 0x03, 0xF8, aImplUniToDBCSTab_JIS0208_74 }, /* 0x74 */ 1970cdf0e10cSrcweir { 0x03, 0xFF, aImplUniToDBCSTab_JIS0208_75 }, /* 0x75 */ 1971cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_JIS0208_76 }, /* 0x76 */ 1972cdf0e10cSrcweir { 0x01, 0xFC, aImplUniToDBCSTab_JIS0208_77 }, /* 0x77 */ 1973cdf0e10cSrcweir { 0x02, 0xFD, aImplUniToDBCSTab_JIS0208_78 }, /* 0x78 */ 1974cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_JIS0208_79 }, /* 0x79 */ 1975cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0208_7A }, /* 0x7A */ 1976cdf0e10cSrcweir { 0x02, 0xF7, aImplUniToDBCSTab_JIS0208_7B }, /* 0x7B */ 1977cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_JIS0208_7C }, /* 0x7C */ 1978cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_JIS0208_7D }, /* 0x7D */ 1979cdf0e10cSrcweir { 0x01, 0x9C, aImplUniToDBCSTab_JIS0208_7E }, /* 0x7E */ 1980cdf0e10cSrcweir { 0x36, 0xFC, aImplUniToDBCSTab_JIS0208_7F }, /* 0x7F */ 1981cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_JIS0208_80 }, /* 0x80 */ 1982cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_JIS0208_81 }, /* 0x81 */ 1983cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_JIS0208_82 }, /* 0x82 */ 1984cdf0e10cSrcweir { 0x02, 0xFD, aImplUniToDBCSTab_JIS0208_83 }, /* 0x83 */ 1985cdf0e10cSrcweir { 0x03, 0xFF, aImplUniToDBCSTab_JIS0208_84 }, /* 0x84 */ 1986cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_JIS0208_85 }, /* 0x85 */ 1987cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_JIS0208_86 }, /* 0x86 */ 1988cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_JIS0208_87 }, /* 0x87 */ 1989cdf0e10cSrcweir { 0x05, 0xFE, aImplUniToDBCSTab_JIS0208_88 }, /* 0x88 */ 1990cdf0e10cSrcweir { 0x02, 0xF8, aImplUniToDBCSTab_JIS0208_89 }, /* 0x89 */ 1991cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_JIS0208_8A }, /* 0x8A */ 1992cdf0e10cSrcweir { 0x00, 0x9A, aImplUniToDBCSTab_JIS0208_8B }, /* 0x8B */ 1993cdf0e10cSrcweir { 0x37, 0xFD, aImplUniToDBCSTab_JIS0208_8C }, /* 0x8C */ 1994cdf0e10cSrcweir { 0x04, 0xFF, aImplUniToDBCSTab_JIS0208_8D }, /* 0x8D */ 1995cdf0e10cSrcweir { 0x08, 0xFE, aImplUniToDBCSTab_JIS0208_8E }, /* 0x8E */ 1996cdf0e10cSrcweir { 0x03, 0xFD, aImplUniToDBCSTab_JIS0208_8F }, /* 0x8F */ 1997cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_JIS0208_90 }, /* 0x90 */ 1998cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0208_91 }, /* 0x91 */ 1999cdf0e10cSrcweir { 0x0D, 0xFC, aImplUniToDBCSTab_JIS0208_92 }, /* 0x92 */ 2000cdf0e10cSrcweir { 0x06, 0xE8, aImplUniToDBCSTab_JIS0208_93 }, /* 0x93 */ 2001cdf0e10cSrcweir { 0x03, 0x81, aImplUniToDBCSTab_JIS0208_94 }, /* 0x94 */ 2002cdf0e10cSrcweir { 0x77, 0xE5, aImplUniToDBCSTab_JIS0208_95 }, /* 0x95 */ 2003cdf0e10cSrcweir { 0x1C, 0xFB, aImplUniToDBCSTab_JIS0208_96 }, /* 0x96 */ 2004cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0208_97 }, /* 0x97 */ 2005cdf0e10cSrcweir { 0x01, 0xFE, aImplUniToDBCSTab_JIS0208_98 }, /* 0x98 */ 2006cdf0e10cSrcweir { 0x03, 0xFF, aImplUniToDBCSTab_JIS0208_99 }, /* 0x99 */ 2007cdf0e10cSrcweir { 0x01, 0xFB, aImplUniToDBCSTab_JIS0208_9A }, /* 0x9A */ 2008cdf0e10cSrcweir { 0x06, 0xF5, aImplUniToDBCSTab_JIS0208_9B }, /* 0x9B */ 2009cdf0e10cSrcweir { 0x04, 0xF6, aImplUniToDBCSTab_JIS0208_9C }, /* 0x9C */ 2010cdf0e10cSrcweir { 0x03, 0xFD, aImplUniToDBCSTab_JIS0208_9D }, /* 0x9D */ 2011cdf0e10cSrcweir { 0x1A, 0xFD, aImplUniToDBCSTab_JIS0208_9E }, /* 0x9E */ 2012cdf0e10cSrcweir { 0x07, 0xA0, aImplUniToDBCSTab_JIS0208_9F }, /* 0x9F */ 2013cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA0 */ 2014cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA1 */ 2015cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA2 */ 2016cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA3 */ 2017cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA4 */ 2018cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA5 */ 2019cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA6 */ 2020cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA7 */ 2021cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA8 */ 2022cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA9 */ 2023cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAA */ 2024cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAB */ 2025cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAC */ 2026cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAD */ 2027cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAE */ 2028cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAF */ 2029cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB0 */ 2030cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB1 */ 2031cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB2 */ 2032cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB3 */ 2033cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB4 */ 2034cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB5 */ 2035cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB6 */ 2036cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB7 */ 2037cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB8 */ 2038cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB9 */ 2039cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBA */ 2040cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBB */ 2041cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBC */ 2042cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBD */ 2043cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBE */ 2044cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBF */ 2045cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC0 */ 2046cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC1 */ 2047cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC2 */ 2048cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC3 */ 2049cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC4 */ 2050cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC5 */ 2051cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC6 */ 2052cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC7 */ 2053cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC8 */ 2054cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC9 */ 2055cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCA */ 2056cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCB */ 2057cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCC */ 2058cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCD */ 2059cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCE */ 2060cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCF */ 2061cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD0 */ 2062cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD1 */ 2063cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD2 */ 2064cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD3 */ 2065cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD4 */ 2066cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD5 */ 2067cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD6 */ 2068cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD7 */ 2069cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD8 */ 2070cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD9 */ 2071cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDA */ 2072cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDB */ 2073cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDC */ 2074cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDD */ 2075cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDE */ 2076cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDF */ 2077cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE0 */ 2078cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE1 */ 2079cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE2 */ 2080cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE3 */ 2081cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE4 */ 2082cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE5 */ 2083cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE6 */ 2084cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE7 */ 2085cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE8 */ 2086cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE9 */ 2087cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEA */ 2088cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEB */ 2089cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEC */ 2090cdf0e10cSrcweir { 1, 0, NULL }, /* 0xED */ 2091cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEE */ 2092cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEF */ 2093cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF0 */ 2094cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF1 */ 2095cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF2 */ 2096cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF3 */ 2097cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF4 */ 2098cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF5 */ 2099cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF6 */ 2100cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF7 */ 2101cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF8 */ 2102cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF9 */ 2103cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFA */ 2104cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFB */ 2105cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFC */ 2106cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFD */ 2107cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFE */ 2108cdf0e10cSrcweir { 0x01, 0xE5, aImplUniToDBCSTab_JIS0208_FF } /* 0xFF */ 2109cdf0e10cSrcweir}; 2110cdf0e10cSrcweir 2111cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 2112cdf0e10cSrcweir 2113cdf0e10cSrcweirstatic ImplDBCSToUniLeadTab const aJIS0212UniLeadTab[128] = 2114cdf0e10cSrcweir{ 2115cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x00 */ 2116cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x01 */ 2117cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x02 */ 2118cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x03 */ 2119cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x04 */ 2120cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x05 */ 2121cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x06 */ 2122cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x07 */ 2123cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x08 */ 2124cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x09 */ 2125cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0A */ 2126cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0B */ 2127cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0C */ 2128cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0D */ 2129cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0E */ 2130cdf0e10cSrcweir { 0, 1, 0, NULL }, /* 0x0F */ 2131cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x10 */ /* We convert this as double byte */ 2132cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x11 */ /* We convert this as double byte */ 2133cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x12 */ /* We convert this as double byte */ 2134cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x13 */ /* We convert this as double byte */ 2135cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x14 */ /* We convert this as double byte */ 2136cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x15 */ /* We convert this as double byte */ 2137cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x16 */ /* We convert this as double byte */ 2138cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x17 */ /* We convert this as double byte */ 2139cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x18 */ /* We convert this as double byte */ 2140cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x19 */ /* We convert this as double byte */ 2141cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1A */ /* We convert this as double byte */ 2142cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1B */ /* We convert this as double byte */ 2143cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1C */ /* We convert this as double byte */ 2144cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1D */ /* We convert this as double byte */ 2145cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1E */ /* We convert this as double byte */ 2146cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x1F */ /* We convert this as double byte */ 2147cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x20 */ /* We convert this as double byte */ 2148cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x21 */ /* We convert this as double byte */ 2149cdf0e10cSrcweir { 0, 0x2F, 0x71, aImplDBCSToUniTab_JIS0212_22 }, /* 0x22 */ 2150cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x23 */ /* We convert this as double byte */ 2151cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x24 */ /* We convert this as double byte */ 2152cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x25 */ /* We convert this as double byte */ 2153cdf0e10cSrcweir { 0, 0x61, 0x7C, aImplDBCSToUniTab_JIS0212_26 }, /* 0x26 */ 2154cdf0e10cSrcweir { 0, 0x42, 0x7E, aImplDBCSToUniTab_JIS0212_27 }, /* 0x27 */ 2155cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x28 */ /* We convert this as double byte */ 2156cdf0e10cSrcweir { 0, 0x21, 0x50, aImplDBCSToUniTab_JIS0212_29 }, /* 0x29 */ 2157cdf0e10cSrcweir { 0, 0x21, 0x77, aImplDBCSToUniTab_JIS0212_2A }, /* 0x2A */ 2158cdf0e10cSrcweir { 0, 0x21, 0x77, aImplDBCSToUniTab_JIS0212_2B }, /* 0x2B */ 2159cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x2C */ /* We convert this as double byte */ 2160cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x2D */ /* We convert this as double byte */ 2161cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x2E */ /* We convert this as double byte */ 2162cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x2F */ /* We convert this as double byte */ 2163cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_30 }, /* 0x30 */ 2164cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_31 }, /* 0x31 */ 2165cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_32 }, /* 0x32 */ 2166cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_33 }, /* 0x33 */ 2167cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_34 }, /* 0x34 */ 2168cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_35 }, /* 0x35 */ 2169cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_36 }, /* 0x36 */ 2170cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_37 }, /* 0x37 */ 2171cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_38 }, /* 0x38 */ 2172cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_39 }, /* 0x39 */ 2173cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_3A }, /* 0x3A */ 2174cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_3B }, /* 0x3B */ 2175cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_3C }, /* 0x3C */ 2176cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_3D }, /* 0x3D */ 2177cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_3E }, /* 0x3E */ 2178cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_3F }, /* 0x3F */ 2179cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_40 }, /* 0x40 */ 2180cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_41 }, /* 0x41 */ 2181cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_42 }, /* 0x42 */ 2182cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_43 }, /* 0x43 */ 2183cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_44 }, /* 0x44 */ 2184cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_45 }, /* 0x45 */ 2185cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_46 }, /* 0x46 */ 2186cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_47 }, /* 0x47 */ 2187cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_48 }, /* 0x48 */ 2188cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_49 }, /* 0x49 */ 2189cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_4A }, /* 0x4A */ 2190cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_4B }, /* 0x4B */ 2191cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_4C }, /* 0x4C */ 2192cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_4D }, /* 0x4D */ 2193cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_4E }, /* 0x4E */ 2194cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_4F }, /* 0x4F */ 2195cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_50 }, /* 0x50 */ 2196cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_51 }, /* 0x51 */ 2197cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_52 }, /* 0x52 */ 2198cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_53 }, /* 0x53 */ 2199cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_54 }, /* 0x54 */ 2200cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_55 }, /* 0x55 */ 2201cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_56 }, /* 0x56 */ 2202cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_57 }, /* 0x57 */ 2203cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_58 }, /* 0x58 */ 2204cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_59 }, /* 0x59 */ 2205cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_5A }, /* 0x5A */ 2206cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_5B }, /* 0x5B */ 2207cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_5C }, /* 0x5C */ 2208cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_5D }, /* 0x5D */ 2209cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_5E }, /* 0x5E */ 2210cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_5F }, /* 0x5F */ 2211cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_60 }, /* 0x60 */ 2212cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_61 }, /* 0x61 */ 2213cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_62 }, /* 0x62 */ 2214cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_63 }, /* 0x63 */ 2215cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_64 }, /* 0x64 */ 2216cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_65 }, /* 0x65 */ 2217cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_66 }, /* 0x66 */ 2218cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_67 }, /* 0x67 */ 2219cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_68 }, /* 0x68 */ 2220cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_69 }, /* 0x69 */ 2221cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_6A }, /* 0x6A */ 2222cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_6B }, /* 0x6B */ 2223cdf0e10cSrcweir { 0, 0x21, 0x7E, aImplDBCSToUniTab_JIS0212_6C }, /* 0x6C */ 2224cdf0e10cSrcweir { 0, 0x21, 0x63, aImplDBCSToUniTab_JIS0212_6D }, /* 0x6D */ 2225cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x6E */ /* We convert this as double byte */ 2226cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x6F */ /* We convert this as double byte */ 2227cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x70 */ /* We convert this as double byte */ 2228cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x71 */ /* We convert this as double byte */ 2229cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x72 */ /* We convert this as double byte */ 2230cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x73 */ /* We convert this as double byte */ 2231cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x74 */ /* We convert this as double byte */ 2232cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x75 */ /* We convert this as double byte */ 2233cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x76 */ /* We convert this as double byte */ 2234cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x77 */ /* We convert this as double byte */ 2235cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x78 */ /* We convert this as double byte */ 2236cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x79 */ /* We convert this as double byte */ 2237cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x7A */ /* We convert this as double byte */ 2238cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x7B */ /* We convert this as double byte */ 2239cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x7C */ /* We convert this as double byte */ 2240cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x7D */ /* We convert this as double byte */ 2241cdf0e10cSrcweir { 0, 1, 0, aImplDoubleByteIdentifierTab }, /* 0x7E */ /* We convert this as double byte */ 2242cdf0e10cSrcweir { 0, 1, 0, NULL } /* 0x7F */ 2243cdf0e10cSrcweir}; 2244cdf0e10cSrcweir 2245cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 2246cdf0e10cSrcweir 2247cdf0e10cSrcweirstatic ImplUniToDBCSHighTab const aJIS0212DBCSHighTab[256] = 2248cdf0e10cSrcweir{ 2249cdf0e10cSrcweir { 0xA1, 0xFF, aImplUniToDBCSTab_JIS0212_00 }, /* 0x00 */ 2250cdf0e10cSrcweir { 0x00, 0xF5, aImplUniToDBCSTab_JIS0212_01 }, /* 0x01 */ 2251cdf0e10cSrcweir { 0xC7, 0xDD, aImplUniToDBCSTab_JIS0212_02 }, /* 0x02 */ 2252cdf0e10cSrcweir { 0x84, 0xCE, aImplUniToDBCSTab_JIS0212_03 }, /* 0x03 */ 2253cdf0e10cSrcweir { 0x02, 0x5F, aImplUniToDBCSTab_JIS0212_04 }, /* 0x04 */ 2254cdf0e10cSrcweir { 1, 0, NULL }, /* 0x05 */ 2255cdf0e10cSrcweir { 1, 0, NULL }, /* 0x06 */ 2256cdf0e10cSrcweir { 1, 0, NULL }, /* 0x07 */ 2257cdf0e10cSrcweir { 1, 0, NULL }, /* 0x08 */ 2258cdf0e10cSrcweir { 1, 0, NULL }, /* 0x09 */ 2259cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0A */ 2260cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0B */ 2261cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0C */ 2262cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0D */ 2263cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0E */ 2264cdf0e10cSrcweir { 1, 0, NULL }, /* 0x0F */ 2265cdf0e10cSrcweir { 1, 0, NULL }, /* 0x10 */ 2266cdf0e10cSrcweir { 1, 0, NULL }, /* 0x11 */ 2267cdf0e10cSrcweir { 1, 0, NULL }, /* 0x12 */ 2268cdf0e10cSrcweir { 1, 0, NULL }, /* 0x13 */ 2269cdf0e10cSrcweir { 1, 0, NULL }, /* 0x14 */ 2270cdf0e10cSrcweir { 1, 0, NULL }, /* 0x15 */ 2271cdf0e10cSrcweir { 1, 0, NULL }, /* 0x16 */ 2272cdf0e10cSrcweir { 1, 0, NULL }, /* 0x17 */ 2273cdf0e10cSrcweir { 1, 0, NULL }, /* 0x18 */ 2274cdf0e10cSrcweir { 1, 0, NULL }, /* 0x19 */ 2275cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1A */ 2276cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1B */ 2277cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1C */ 2278cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1D */ 2279cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1E */ 2280cdf0e10cSrcweir { 1, 0, NULL }, /* 0x1F */ 2281cdf0e10cSrcweir { 1, 0, NULL }, /* 0x20 */ 2282cdf0e10cSrcweir { 0x16, 0x22, aImplUniToDBCSTab_JIS0212_21 }, /* 0x21 */ 2283cdf0e10cSrcweir { 1, 0, NULL }, /* 0x22 */ 2284cdf0e10cSrcweir { 1, 0, NULL }, /* 0x23 */ 2285cdf0e10cSrcweir { 1, 0, NULL }, /* 0x24 */ 2286cdf0e10cSrcweir { 1, 0, NULL }, /* 0x25 */ 2287cdf0e10cSrcweir { 1, 0, NULL }, /* 0x26 */ 2288cdf0e10cSrcweir { 1, 0, NULL }, /* 0x27 */ 2289cdf0e10cSrcweir { 1, 0, NULL }, /* 0x28 */ 2290cdf0e10cSrcweir { 1, 0, NULL }, /* 0x29 */ 2291cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2A */ 2292cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2B */ 2293cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2C */ 2294cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2D */ 2295cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2E */ 2296cdf0e10cSrcweir { 1, 0, NULL }, /* 0x2F */ 2297cdf0e10cSrcweir { 1, 0, NULL }, /* 0x30 */ 2298cdf0e10cSrcweir { 1, 0, NULL }, /* 0x31 */ 2299cdf0e10cSrcweir { 1, 0, NULL }, /* 0x32 */ 2300cdf0e10cSrcweir { 1, 0, NULL }, /* 0x33 */ 2301cdf0e10cSrcweir { 1, 0, NULL }, /* 0x34 */ 2302cdf0e10cSrcweir { 1, 0, NULL }, /* 0x35 */ 2303cdf0e10cSrcweir { 1, 0, NULL }, /* 0x36 */ 2304cdf0e10cSrcweir { 1, 0, NULL }, /* 0x37 */ 2305cdf0e10cSrcweir { 1, 0, NULL }, /* 0x38 */ 2306cdf0e10cSrcweir { 1, 0, NULL }, /* 0x39 */ 2307cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3A */ 2308cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3B */ 2309cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3C */ 2310cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3D */ 2311cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3E */ 2312cdf0e10cSrcweir { 1, 0, NULL }, /* 0x3F */ 2313cdf0e10cSrcweir { 1, 0, NULL }, /* 0x40 */ 2314cdf0e10cSrcweir { 1, 0, NULL }, /* 0x41 */ 2315cdf0e10cSrcweir { 1, 0, NULL }, /* 0x42 */ 2316cdf0e10cSrcweir { 1, 0, NULL }, /* 0x43 */ 2317cdf0e10cSrcweir { 1, 0, NULL }, /* 0x44 */ 2318cdf0e10cSrcweir { 1, 0, NULL }, /* 0x45 */ 2319cdf0e10cSrcweir { 1, 0, NULL }, /* 0x46 */ 2320cdf0e10cSrcweir { 1, 0, NULL }, /* 0x47 */ 2321cdf0e10cSrcweir { 1, 0, NULL }, /* 0x48 */ 2322cdf0e10cSrcweir { 1, 0, NULL }, /* 0x49 */ 2323cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4A */ 2324cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4B */ 2325cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4C */ 2326cdf0e10cSrcweir { 1, 0, NULL }, /* 0x4D */ 2327cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0212_4E }, /* 0x4E */ 2328cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0212_4F }, /* 0x4F */ 2329cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_JIS0212_50 }, /* 0x50 */ 2330cdf0e10cSrcweir { 0x03, 0xF7, aImplUniToDBCSTab_JIS0212_51 }, /* 0x51 */ 2331cdf0e10cSrcweir { 0x01, 0xF7, aImplUniToDBCSTab_JIS0212_52 }, /* 0x52 */ 2332cdf0e10cSrcweir { 0x00, 0xF5, aImplUniToDBCSTab_JIS0212_53 }, /* 0x53 */ 2333cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0212_54 }, /* 0x54 */ 2334cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0212_55 }, /* 0x55 */ 2335cdf0e10cSrcweir { 0x05, 0xF7, aImplUniToDBCSTab_JIS0212_56 }, /* 0x56 */ 2336cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_JIS0212_57 }, /* 0x57 */ 2337cdf0e10cSrcweir { 0x03, 0xF3, aImplUniToDBCSTab_JIS0212_58 }, /* 0x58 */ 2338cdf0e10cSrcweir { 0x05, 0xF7, aImplUniToDBCSTab_JIS0212_59 }, /* 0x59 */ 2339cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_JIS0212_5A }, /* 0x5A */ 2340cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_JIS0212_5B }, /* 0x5B */ 2341cdf0e10cSrcweir { 0x0C, 0xF4, aImplUniToDBCSTab_JIS0212_5C }, /* 0x5C */ 2342cdf0e10cSrcweir { 0x01, 0xF9, aImplUniToDBCSTab_JIS0212_5D }, /* 0x5D */ 2343cdf0e10cSrcweir { 0x00, 0xEB, aImplUniToDBCSTab_JIS0212_5E }, /* 0x5E */ 2344cdf0e10cSrcweir { 0x02, 0xFC, aImplUniToDBCSTab_JIS0212_5F }, /* 0x5F */ 2345cdf0e10cSrcweir { 0x07, 0xFD, aImplUniToDBCSTab_JIS0212_60 }, /* 0x60 */ 2346cdf0e10cSrcweir { 0x02, 0xEF, aImplUniToDBCSTab_JIS0212_61 }, /* 0x61 */ 2347cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_JIS0212_62 }, /* 0x62 */ 2348cdf0e10cSrcweir { 0x03, 0xF9, aImplUniToDBCSTab_JIS0212_63 }, /* 0x63 */ 2349cdf0e10cSrcweir { 0x09, 0xFF, aImplUniToDBCSTab_JIS0212_64 }, /* 0x64 */ 2350cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_JIS0212_65 }, /* 0x65 */ 2351cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_JIS0212_66 }, /* 0x66 */ 2352cdf0e10cSrcweir { 0x05, 0xF9, aImplUniToDBCSTab_JIS0212_67 }, /* 0x67 */ 2353cdf0e10cSrcweir { 0x04, 0xFD, aImplUniToDBCSTab_JIS0212_68 }, /* 0x68 */ 2354cdf0e10cSrcweir { 0x06, 0xFE, aImplUniToDBCSTab_JIS0212_69 }, /* 0x69 */ 2355cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_JIS0212_6A }, /* 0x6A */ 2356cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0212_6B }, /* 0x6B */ 2357cdf0e10cSrcweir { 0x02, 0xF4, aImplUniToDBCSTab_JIS0212_6C }, /* 0x6C */ 2358cdf0e10cSrcweir { 0x04, 0xFC, aImplUniToDBCSTab_JIS0212_6D }, /* 0x6D */ 2359cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_JIS0212_6E }, /* 0x6E */ 2360cdf0e10cSrcweir { 0x04, 0xFD, aImplUniToDBCSTab_JIS0212_6F }, /* 0x6F */ 2361cdf0e10cSrcweir { 0x00, 0xFA, aImplUniToDBCSTab_JIS0212_70 }, /* 0x70 */ 2362cdf0e10cSrcweir { 0x03, 0xFE, aImplUniToDBCSTab_JIS0212_71 }, /* 0x71 */ 2363cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_JIS0212_72 }, /* 0x72 */ 2364cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0212_73 }, /* 0x73 */ 2365cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0212_74 }, /* 0x74 */ 2366cdf0e10cSrcweir { 0x06, 0xF9, aImplUniToDBCSTab_JIS0212_75 }, /* 0x75 */ 2367cdf0e10cSrcweir { 0x00, 0xFC, aImplUniToDBCSTab_JIS0212_76 }, /* 0x76 */ 2368cdf0e10cSrcweir { 0x00, 0xFB, aImplUniToDBCSTab_JIS0212_77 }, /* 0x77 */ 2369cdf0e10cSrcweir { 0x05, 0xFF, aImplUniToDBCSTab_JIS0212_78 }, /* 0x78 */ 2370cdf0e10cSrcweir { 0x00, 0xFC, aImplUniToDBCSTab_JIS0212_79 }, /* 0x79 */ 2371cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_JIS0212_7A }, /* 0x7A */ 2372cdf0e10cSrcweir { 0x07, 0xFE, aImplUniToDBCSTab_JIS0212_7B }, /* 0x7B */ 2373cdf0e10cSrcweir { 0x01, 0xF5, aImplUniToDBCSTab_JIS0212_7C }, /* 0x7C */ 2374cdf0e10cSrcweir { 0x03, 0xFA, aImplUniToDBCSTab_JIS0212_7D }, /* 0x7D */ 2375cdf0e10cSrcweir { 0x00, 0x9E, aImplUniToDBCSTab_JIS0212_7E }, /* 0x7E */ 2376cdf0e10cSrcweir { 0x3B, 0xFF, aImplUniToDBCSTab_JIS0212_7F }, /* 0x7F */ 2377cdf0e10cSrcweir { 0x07, 0xFE, aImplUniToDBCSTab_JIS0212_80 }, /* 0x80 */ 2378cdf0e10cSrcweir { 0x03, 0xFF, aImplUniToDBCSTab_JIS0212_81 }, /* 0x81 */ 2379cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_JIS0212_82 }, /* 0x82 */ 2380cdf0e10cSrcweir { 0x00, 0xFC, aImplUniToDBCSTab_JIS0212_83 }, /* 0x83 */ 2381cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_JIS0212_84 }, /* 0x84 */ 2382cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0212_85 }, /* 0x85 */ 2383cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_JIS0212_86 }, /* 0x86 */ 2384cdf0e10cSrcweir { 0x04, 0xFF, aImplUniToDBCSTab_JIS0212_87 }, /* 0x87 */ 2385cdf0e10cSrcweir { 0x01, 0xF7, aImplUniToDBCSTab_JIS0212_88 }, /* 0x88 */ 2386cdf0e10cSrcweir { 0x01, 0xFF, aImplUniToDBCSTab_JIS0212_89 }, /* 0x89 */ 2387cdf0e10cSrcweir { 0x04, 0xFF, aImplUniToDBCSTab_JIS0212_8A }, /* 0x8A */ 2388cdf0e10cSrcweir { 0x05, 0x9F, aImplUniToDBCSTab_JIS0212_8B }, /* 0x8B */ 2389cdf0e10cSrcweir { 0x38, 0xFF, aImplUniToDBCSTab_JIS0212_8C }, /* 0x8C */ 2390cdf0e10cSrcweir { 0x01, 0xFD, aImplUniToDBCSTab_JIS0212_8D }, /* 0x8D */ 2391cdf0e10cSrcweir { 0x01, 0xFA, aImplUniToDBCSTab_JIS0212_8E }, /* 0x8E */ 2392cdf0e10cSrcweir { 0x00, 0xFE, aImplUniToDBCSTab_JIS0212_8F }, /* 0x8F */ 2393cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0212_90 }, /* 0x90 */ 2394cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_JIS0212_91 }, /* 0x91 */ 2395cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0212_92 }, /* 0x92 */ 2396cdf0e10cSrcweir { 0x00, 0xFD, aImplUniToDBCSTab_JIS0212_93 }, /* 0x93 */ 2397cdf0e10cSrcweir { 0x01, 0x84, aImplUniToDBCSTab_JIS0212_94 }, /* 0x94 */ 2398cdf0e10cSrcweir { 0x78, 0xE6, aImplUniToDBCSTab_JIS0212_95 }, /* 0x95 */ 2399cdf0e10cSrcweir { 0x1D, 0xFA, aImplUniToDBCSTab_JIS0212_96 }, /* 0x96 */ 2400cdf0e10cSrcweir { 0x02, 0xFA, aImplUniToDBCSTab_JIS0212_97 }, /* 0x97 */ 2401cdf0e10cSrcweir { 0x07, 0xF6, aImplUniToDBCSTab_JIS0212_98 }, /* 0x98 */ 2402cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_JIS0212_99 }, /* 0x99 */ 2403cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0212_9A }, /* 0x9A */ 2404cdf0e10cSrcweir { 0x00, 0xFF, aImplUniToDBCSTab_JIS0212_9B }, /* 0x9B */ 2405cdf0e10cSrcweir { 0x00, 0xF9, aImplUniToDBCSTab_JIS0212_9C }, /* 0x9C */ 2406cdf0e10cSrcweir { 0x02, 0xFE, aImplUniToDBCSTab_JIS0212_9D }, /* 0x9D */ 2407cdf0e10cSrcweir { 0x02, 0xFF, aImplUniToDBCSTab_JIS0212_9E }, /* 0x9E */ 2408cdf0e10cSrcweir { 0x02, 0xA5, aImplUniToDBCSTab_JIS0212_9F }, /* 0x9F */ 2409cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA0 */ 2410cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA1 */ 2411cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA2 */ 2412cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA3 */ 2413cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA4 */ 2414cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA5 */ 2415cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA6 */ 2416cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA7 */ 2417cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA8 */ 2418cdf0e10cSrcweir { 1, 0, NULL }, /* 0xA9 */ 2419cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAA */ 2420cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAB */ 2421cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAC */ 2422cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAD */ 2423cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAE */ 2424cdf0e10cSrcweir { 1, 0, NULL }, /* 0xAF */ 2425cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB0 */ 2426cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB1 */ 2427cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB2 */ 2428cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB3 */ 2429cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB4 */ 2430cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB5 */ 2431cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB6 */ 2432cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB7 */ 2433cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB8 */ 2434cdf0e10cSrcweir { 1, 0, NULL }, /* 0xB9 */ 2435cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBA */ 2436cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBB */ 2437cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBC */ 2438cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBD */ 2439cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBE */ 2440cdf0e10cSrcweir { 1, 0, NULL }, /* 0xBF */ 2441cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC0 */ 2442cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC1 */ 2443cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC2 */ 2444cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC3 */ 2445cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC4 */ 2446cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC5 */ 2447cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC6 */ 2448cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC7 */ 2449cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC8 */ 2450cdf0e10cSrcweir { 1, 0, NULL }, /* 0xC9 */ 2451cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCA */ 2452cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCB */ 2453cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCC */ 2454cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCD */ 2455cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCE */ 2456cdf0e10cSrcweir { 1, 0, NULL }, /* 0xCF */ 2457cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD0 */ 2458cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD1 */ 2459cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD2 */ 2460cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD3 */ 2461cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD4 */ 2462cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD5 */ 2463cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD6 */ 2464cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD7 */ 2465cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD8 */ 2466cdf0e10cSrcweir { 1, 0, NULL }, /* 0xD9 */ 2467cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDA */ 2468cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDB */ 2469cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDC */ 2470cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDD */ 2471cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDE */ 2472cdf0e10cSrcweir { 1, 0, NULL }, /* 0xDF */ 2473cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE0 */ 2474cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE1 */ 2475cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE2 */ 2476cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE3 */ 2477cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE4 */ 2478cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE5 */ 2479cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE6 */ 2480cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE7 */ 2481cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE8 */ 2482cdf0e10cSrcweir { 1, 0, NULL }, /* 0xE9 */ 2483cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEA */ 2484cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEB */ 2485cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEC */ 2486cdf0e10cSrcweir { 1, 0, NULL }, /* 0xED */ 2487cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEE */ 2488cdf0e10cSrcweir { 1, 0, NULL }, /* 0xEF */ 2489cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF0 */ 2490cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF1 */ 2491cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF2 */ 2492cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF3 */ 2493cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF4 */ 2494cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF5 */ 2495cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF6 */ 2496cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF7 */ 2497cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF8 */ 2498cdf0e10cSrcweir { 1, 0, NULL }, /* 0xF9 */ 2499cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFA */ 2500cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFB */ 2501cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFC */ 2502cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFD */ 2503cdf0e10cSrcweir { 1, 0, NULL }, /* 0xFE */ 2504cdf0e10cSrcweir { 1, 0, NULL } /* 0xFF */ 2505cdf0e10cSrcweir}; 2506cdf0e10cSrcweir 2507cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 2508cdf0e10cSrcweir 2509cdf0e10cSrcweirstatic ImplEUCJPConvertData const aImplEUCJPCvtData = 2510cdf0e10cSrcweir{ 2511cdf0e10cSrcweir aJIS0208UniLeadTab, 2512cdf0e10cSrcweir aJIS0212UniLeadTab, 2513cdf0e10cSrcweir aJIS0208DBCSHighTab, 2514cdf0e10cSrcweir aJIS0212DBCSHighTab 2515cdf0e10cSrcweir}; 2516cdf0e10cSrcweir 2517cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 2518cdf0e10cSrcweir 2519cdf0e10cSrcweirstatic ImplTextEncodingData const aImplEUCJPTextEncodingData 2520cdf0e10cSrcweir = { { &aImplEUCJPCvtData, 2521cdf0e10cSrcweir ImplEUCJPToUnicode, 2522cdf0e10cSrcweir ImplUnicodeToEUCJP, 2523cdf0e10cSrcweir NULL, 2524cdf0e10cSrcweir NULL, 2525cdf0e10cSrcweir NULL, 2526cdf0e10cSrcweir NULL, 2527cdf0e10cSrcweir NULL, 2528cdf0e10cSrcweir NULL }, 2529cdf0e10cSrcweir 1, 2530cdf0e10cSrcweir 3, 2531cdf0e10cSrcweir 2, 2532cdf0e10cSrcweir 128, 2533cdf0e10cSrcweir "euc-jp", 2534cdf0e10cSrcweir "euc-jp", 2535cdf0e10cSrcweir RTL_TEXTENCODING_INFO_ASCII 2536cdf0e10cSrcweir | RTL_TEXTENCODING_INFO_MULTIBYTE 2537cdf0e10cSrcweir | RTL_TEXTENCODING_INFO_MIME }; 2538cdf0e10cSrcweir /* SCRIPT_JAPANESE, pc code page 932, mac encoding 1 */ 2539cdf0e10cSrcweir 2540cdf0e10cSrcweir/* ======================================================================= */ 2541cdf0e10cSrcweir 2542cdf0e10cSrcweir/* !!! JIS - X Encodings not complete !!! */ 2543cdf0e10cSrcweir 2544cdf0e10cSrcweir#define HALFWIDTHKANA_START 0xFF61 2545cdf0e10cSrcweir#define HALFWIDTHKANA_END 0xFF9F 2546cdf0e10cSrcweir 2547cdf0e10cSrcweirstatic sal_uChar const aImplJISX0201Tab[HALFWIDTHKANA_END - HALFWIDTHKANA_START + 1] = 2548cdf0e10cSrcweir{ 2549cdf0e10cSrcweir 0xA1, 0xA2, 0xA3, 0xA4, 0x5A, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 2550cdf0e10cSrcweir 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7, 0xB8, 0xB9, 0xBA, 0xBB, 0xBC, 0xBD, 0xBE, 0xBF, 2551cdf0e10cSrcweir 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 2552cdf0e10cSrcweir 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF, 2553cdf0e10cSrcweir}; 2554cdf0e10cSrcweir 2555cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 2556cdf0e10cSrcweir 2557cdf0e10cSrcweirstatic ImplByteConvertData const aImplJISX0201ByteCvtData = 2558cdf0e10cSrcweir{ 2559cdf0e10cSrcweir NULL, 2560cdf0e10cSrcweir NULL, 2561cdf0e10cSrcweir 0, 0, 2562cdf0e10cSrcweir 0, 0, 2563cdf0e10cSrcweir aImplJISX0201Tab, 2564cdf0e10cSrcweir NULL, 2565cdf0e10cSrcweir NULL, 2566cdf0e10cSrcweir HALFWIDTHKANA_START, HALFWIDTHKANA_END, 2567cdf0e10cSrcweir 0, 0, 2568cdf0e10cSrcweir 0 2569cdf0e10cSrcweir}; 2570cdf0e10cSrcweir 2571cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 2572cdf0e10cSrcweir 2573cdf0e10cSrcweirstatic ImplTextEncodingData const aImplJISX0201TextEncodingData 2574cdf0e10cSrcweir = { { &aImplJISX0201ByteCvtData, 2575cdf0e10cSrcweir NULL, 2576cdf0e10cSrcweir ImplUnicodeToChar, 2577cdf0e10cSrcweir NULL, 2578cdf0e10cSrcweir NULL, 2579cdf0e10cSrcweir NULL, 2580cdf0e10cSrcweir NULL, 2581cdf0e10cSrcweir NULL, 2582cdf0e10cSrcweir NULL }, 2583cdf0e10cSrcweir 1, 2584cdf0e10cSrcweir 1, 2585cdf0e10cSrcweir 1, 2586cdf0e10cSrcweir 128, 2587cdf0e10cSrcweir "euc-jp", 2588cdf0e10cSrcweir "euc-jp", 2589cdf0e10cSrcweir RTL_TEXTENCODING_INFO_MULTIBYTE }; 2590cdf0e10cSrcweir /* SCRIPT_JAPANESE, pc code page 932, mac encoding 1 */ 2591cdf0e10cSrcweir 2592cdf0e10cSrcweir/* ======================================================================= */ 2593cdf0e10cSrcweir 2594cdf0e10cSrcweirstatic ImplDBCSConvertData const aImplJISX0208DBCSCvtData = 2595cdf0e10cSrcweir{ 2596cdf0e10cSrcweir NULL, 2597cdf0e10cSrcweir aJIS0208DBCSHighTab, 2598cdf0e10cSrcweir 0x00, 0xFF, 2599cdf0e10cSrcweir 0x21, 0x7E, 2600cdf0e10cSrcweir NULL, 2601cdf0e10cSrcweir 0 2602cdf0e10cSrcweir}; 2603cdf0e10cSrcweir 2604cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 2605cdf0e10cSrcweir 2606cdf0e10cSrcweirstatic ImplTextEncodingData const aImplJISX0208TextEncodingData 2607cdf0e10cSrcweir = { { &aImplJISX0208DBCSCvtData, 2608cdf0e10cSrcweir NULL, 2609cdf0e10cSrcweir ImplUnicodeToDBCS, 2610cdf0e10cSrcweir NULL, 2611cdf0e10cSrcweir NULL, 2612cdf0e10cSrcweir NULL, 2613cdf0e10cSrcweir NULL, 2614cdf0e10cSrcweir NULL, 2615cdf0e10cSrcweir NULL }, 2616cdf0e10cSrcweir 2, 2617cdf0e10cSrcweir 2, 2618cdf0e10cSrcweir 2, 2619cdf0e10cSrcweir 128, 2620cdf0e10cSrcweir "euc-jp", 2621cdf0e10cSrcweir "euc-jp", 2622cdf0e10cSrcweir RTL_TEXTENCODING_INFO_MULTIBYTE }; 2623cdf0e10cSrcweir /* SCRIPT_JAPANESE, pc code page 932, mac encoding 1 */ 2624cdf0e10cSrcweir 2625cdf0e10cSrcweir/* ======================================================================= */ 2626cdf0e10cSrcweir 2627cdf0e10cSrcweirstatic ImplDBCSConvertData const aImplJISX0212DBCSCvtData = 2628cdf0e10cSrcweir{ 2629cdf0e10cSrcweir NULL, 2630cdf0e10cSrcweir aJIS0212DBCSHighTab, 2631cdf0e10cSrcweir 0x00, 0xFF, 2632cdf0e10cSrcweir 0x21, 0x7E, 2633cdf0e10cSrcweir NULL, 2634cdf0e10cSrcweir 0 2635cdf0e10cSrcweir}; 2636cdf0e10cSrcweir 2637cdf0e10cSrcweir/* ----------------------------------------------------------------------- */ 2638cdf0e10cSrcweir 2639cdf0e10cSrcweirstatic ImplTextEncodingData const aImplJISX0212TextEncodingData 2640cdf0e10cSrcweir = { { &aImplJISX0212DBCSCvtData, 2641cdf0e10cSrcweir NULL, 2642cdf0e10cSrcweir ImplUnicodeToDBCS, 2643cdf0e10cSrcweir NULL, 2644cdf0e10cSrcweir NULL, 2645cdf0e10cSrcweir NULL, 2646cdf0e10cSrcweir NULL, 2647cdf0e10cSrcweir NULL, 2648cdf0e10cSrcweir NULL }, 2649cdf0e10cSrcweir 2, 2650cdf0e10cSrcweir 2, 2651cdf0e10cSrcweir 2, 2652cdf0e10cSrcweir 128, 2653cdf0e10cSrcweir "euc-jp", 2654cdf0e10cSrcweir "euc-jp", 2655cdf0e10cSrcweir RTL_TEXTENCODING_INFO_MULTIBYTE }; 2656cdf0e10cSrcweir /* SCRIPT_JAPANESE, pc code page 932, mac encoding 1 */ 2657