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