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