1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 22 /* 23 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 24 * Use is subject to license terms. 25 */ 26 27 #define GI_UG 0x41 /* gi-ug 'A' */ 28 #define D_GI_UG 0x42 /* double gi-ug 'B' */ 29 #define NI_UN 0x44 /* ni-un 'D' */ 30 #define DI_GUD 0x47 /* di-gud 'G' */ 31 #define D_DI_GUD 0x48 /* double di-gud 'H' */ 32 #define RI_UL 0x49 /* ri-ul 'I' */ 33 #define MI_UM 0x51 /* mi-um 'Q' */ 34 #define BI_UB 0x52 /* bi-ub 'R' */ 35 #define D_BI_UB 0x53 /* double bi-ub 'S' */ 36 #define SI_OD 0x55 /* si-od 'U' */ 37 #define D_SI_OD 0x56 /* double si-od 'V' */ 38 #define YI_UNG 0x57 /* yi-ung 'W' */ 39 #define JI_UD 0x58 /* ji-ud 'X' */ 40 #define D_JI_UD 0x59 /* double ji-ud 'Y' */ 41 #define CHI_UD 0x5a /* chi-ud 'Z' */ 42 #define KI_UK 0x5b /* ki-uk '[' */ 43 #define TI_GUT 0x5c /* ti-gut '\' */ 44 #define PI_UP 0x5d /* pi-up ']' */ 45 #define HI_UD 0x5e /* hi-ud '^' */ 46 #define A 0x62 /* a 'b' */ 47 #define AE 0x63 /* ae 'c' */ 48 #define IA 0x64 /* ia 'd' */ 49 #define IYAI 0x65 /* iyai 'e' */ 50 #define E 0x66 /* e 'f' */ 51 #define EA 0x67 /* ea 'g' */ 52 #define IE 0x6a /* ie 'j' */ 53 #define YEA 0x6b /* yea 'k' */ 54 #define O 0x6c /* o 'l' */ 55 #define YO 0x72 /* yo 'r' */ 56 #define U 0x73 /* u 's' */ 57 #define YU 0x77 /* yu 'g' */ 58 #define EU 0x7a /* eu 'z' */ 59 #define I 0x7c /* i '|' */ 60 61 #define GIUG_SIOD 0x43 /* gi-ug and si-od 'C' */ 62 #define NIUN_JIUD 0x45 /* ni-un and ji-ud 'E' */ 63 #define NIUN_HIUD 0x46 /* ni-un and hi-ud 'F' */ 64 #define RIUL_GIUG 0x4a /* ri_ul and gi_ug 'J' */ 65 #define RIUL_MIUM 0x4b /* ri_ul and mi_um 'K' */ 66 #define RIUL_BIUB 0x4c /* ri_ul and bi_ub 'L' */ 67 #define RIUL_SIOD 0x4d /* ri_ul and si_od 'M' */ 68 #define RIUL_TIGUT 0x4e /* ri_ul and ti_gut 'N' */ 69 #define RIUL_PIUP 0x4f /* ri_ul and pi_up 'O' */ 70 #define RIUL_HIUD 0x50 /* ri_ul and hi_ud 'P' */ 71 #define BIUB_SIOD 0x54 /* bi_ub and si_od 'T' */ 72 73 #define O_A 0x6d /* o and a 'm' */ 74 #define O_AE 0x6e /* o and ae 'n' */ 75 #define O_I 0x6f /* o and i 'o' */ 76 #define U_E 0x74 /* u and e 't' */ 77 #define U_EA 0x75 /* u and ea 'u' */ 78 #define U_I 0x76 /* u and i 'v' */ 79 #define EU_I 0x7b /* eu and i '{' */ 80 81 #define ishaninit(c) (c>=0xa4a1&&c<=0xa4be) /* S000 */ 82 #define ishanmid(c) (c>=0xa4bf&&c<=0xa4d3) 83 84 #define INITIAL_SOUND(c) ((KCHAR)(c & 0x7c00) >> 10) 85 #define MIDDLE_SOUND(c) ((KCHAR)(c & 0x03e0) >> 5) 86 #define FINAL_SOUND(c) (c & 0x001f) 87 88 #define BEG_OF_CONSO 0x40 /* S000 */ 89 #define BEG_OF_VOW 0x60 90 91 #define BYTE_MASK 0xff 92 #define BIT_MASK 0x01 93 #define MSB_MASK 0x8000 94 #define K_ILLEGAL 0xffff 95 96 typedef unsigned short KCHAR; 97