Annotation of sys/arch/vax/dec/wskbdmap_lk201.c, Revision 1.1.1.1
1.1 nbrk 1: /* $OpenBSD: wskbdmap_lk201.c,v 1.7 2006/11/27 16:10:41 miod Exp $ */
2: /* $NetBSD: wskbdmap_lk201.c,v 1.4 2000/12/02 16:57:41 ragge Exp $ */
3:
4: #include <sys/types.h>
5: #include <dev/wscons/wsksymdef.h>
6: #include <dev/wscons/wsksymvar.h>
7: #include <vax/dec/wskbdmap_lk201.h>
8:
9: #define KC(n) KS_KEYCODE((n) - MIN_LK201_KEY)
10:
11: static const keysym_t lkkbd_keydesc_us[] = {
12: /* pos command normal shifted */
13: KC(86), KS_Cmd_Screen0, KS_f1,
14: KC(87), KS_Cmd_Screen1, KS_f2,
15: KC(88), KS_Cmd_Screen2, KS_f3,
16: KC(89), KS_Cmd_Screen3, KS_f4,
17: KC(90), KS_Cmd_Screen4, KS_f5,
18: KC(100), KS_Cmd_Screen5, KS_f6,
19: KC(101), KS_Cmd_Screen6, KS_f7,
20: KC(102), KS_Cmd_Screen7, KS_f8,
21: KC(103), KS_Cmd_Screen8, KS_f9,
22: KC(104), KS_Cmd_Screen9, KS_f10,
23: KC(113), KS_Cmd_Debugger, KS_Escape, /* F11 */
24: KC(114), KS_f12,
25: KC(115), KS_f13,
26: KC(116), KS_f14,
27: KC(124), KS_Help,
28: KC(125), KS_Cmd, KS_Execute,
29: KC(128), KS_f17,
30: KC(129), KS_f18,
31: KC(130), KS_f19,
32: KC(131), KS_f20,
33: KC(138), KS_Find,
34: KC(139), KS_Insert,
35: KC(140), KS_KP_Delete,
36: KC(141), KS_Select,
37: KC(142), KS_Prior,
38: KC(143), KS_Next,
39: KC(146), KS_KP_0,
40: KC(148), KS_KP_Decimal,
41: KC(149), KS_KP_Enter,
42: KC(150), KS_KP_1,
43: KC(151), KS_KP_2,
44: KC(152), KS_KP_3,
45: KC(153), KS_KP_4,
46: KC(154), KS_KP_5,
47: KC(155), KS_KP_6,
48: KC(156), KS_KP_Separator,
49: KC(157), KS_KP_7,
50: KC(158), KS_KP_8,
51: KC(159), KS_KP_9,
52: KC(160), KS_KP_Subtract,
53: KC(161), KS_KP_F1,
54: KC(162), KS_KP_F2,
55: KC(163), KS_KP_F3,
56: KC(164), KS_KP_F4,
57: KC(167), KS_Left,
58: KC(168), KS_Right,
59: KC(169), KS_Down,
60: KC(170), KS_Up,
61: KC(171), KS_Shift_R, /* LK 401 */
62: KC(172), KS_Cmd2, KS_Alt_L, /* LK 401 */
63: KC(173), KS_Multi_key, /* right compose */ /* LK 401 */
64: KC(174), KS_Shift_L,
65: KC(175), KS_Cmd1, KS_Control_L,
66: KC(176), KS_Caps_Lock,
67: KC(177), KS_Multi_key, /* (left) compose */ /* LK 401 */
68: KC(178), KS_Cmd2, KS_Alt_R, /* LK 401 */
69: KC(188), KS_Delete,
70: KC(189), KS_Return,
71: KC(190), KS_Tab,
72: KC(191), KS_grave, KS_asciitilde,
73: KC(192), KS_1, KS_exclam,
74: KC(193), KS_q,
75: KC(194), KS_a,
76: KC(195), KS_z,
77: KC(197), KS_2, KS_at,
78: KC(198), KS_w,
79: KC(199), KS_s,
80: KC(200), KS_x,
81: KC(201), KS_less, KS_greater,
82: KC(203), KS_3, KS_numbersign,
83: KC(204), KS_e,
84: KC(205), KS_d,
85: KC(206), KS_c,
86: KC(208), KS_4, KS_dollar,
87: KC(209), KS_r,
88: KC(210), KS_f,
89: KC(211), KS_v,
90: KC(212), KS_space,
91: KC(214), KS_5, KS_percent,
92: KC(215), KS_t,
93: KC(216), KS_g,
94: KC(217), KS_b,
95: KC(219), KS_6, KS_asciicircum,
96: KC(220), KS_y,
97: KC(221), KS_h,
98: KC(222), KS_n,
99: KC(224), KS_7, KS_ampersand,
100: KC(225), KS_u,
101: KC(226), KS_j,
102: KC(227), KS_m,
103: KC(229), KS_8, KS_asterisk,
104: KC(230), KS_i,
105: KC(231), KS_k,
106: KC(232), KS_comma, KS_less,
107: KC(234), KS_9, KS_parenleft,
108: KC(235), KS_o,
109: KC(236), KS_l,
110: KC(237), KS_period, KS_greater,
111: KC(239), KS_0, KS_parenright,
112: KC(240), KS_p,
113: KC(242), KS_semicolon, KS_colon,
114: KC(243), KS_slash, KS_question,
115: KC(245), KS_equal, KS_plus,
116: KC(246), KS_bracketright, KS_braceright,
117: KC(247), KS_backslash, KS_bar,
118: KC(249), KS_minus, KS_underscore,
119: KC(250), KS_bracketleft, KS_braceleft,
120: KC(251), KS_apostrophe, KS_quotedbl,
121: /* remapped Compose key (177) for LK 201 */
122: KC(252), KS_Cmd2, KS_Alt_L, KS_Multi_key
123: };
124:
125: static const keysym_t lkkbd_keydesc_de[] = {
126: /* pos command normal shifted XXXXXXX */
127: KC(178), KS_Cmd2, KS_Mode_switch,
128: KC(191), KS_dead_tilde, KS_dead_circumflex,
129: KC(195), KS_y,
130: KC(197), KS_2, KS_quotedbl,
131: KC(203), KS_3, KS_section,
132: KC(219), KS_6, KS_ampersand,
133: KC(220), KS_z,
134: KC(224), KS_7, KS_slash,
135: KC(229), KS_8, KS_parenleft,
136: KC(232), KS_comma, KS_semicolon,
137: KC(234), KS_9, KS_parenright,
138: KC(237), KS_period, KS_colon,
139: KC(239), KS_0, KS_equal,
140: KC(242), KS_odiaeresis, KS_Odiaeresis,
141: KS_braceright, KS_braceleft,
142: KC(243), KS_minus, KS_underscore,
143: KC(245), KS_dead_acute, KS_dead_grave,
144: KC(246), KS_plus, KS_asterisk,
145: KC(247), KS_numbersign, KS_apostrophe,
146: KC(249), KS_ssharp, KS_question, KS_bar,
147: KC(250), KS_udiaeresis, KS_Udiaeresis,
148: KS_at, KS_backslash,
149: KC(251), KS_adiaeresis, KS_Adiaeresis,
150: KS_bracketright,KS_bracketleft,
151: /* remapped Compose key (177) for LK 201 */
152: KC(252), KS_Cmd2, KS_Mode_switch, KS_Multi_key
153: };
154:
155: static const keysym_t lkkbd_keydesc_de_nodead[] = {
156: /* pos command normal shifted XXXXXXX */
157: KC(191), KS_asciitilde, KS_asciicircum,
158: KC(245), KS_apostrophe, KS_grave,
159: };
160:
161: static const keysym_t lkkbd_keydesc_fr[] = {
162: KC(178), KS_Cmd2, KS_Mode_switch,
163: KC(192), KS_ampersand, KS_1,
164: KC(193), KS_a,
165: KC(194), KS_q,
166: KC(195), KS_w,
167: KC(197), KS_eacute, KS_2, KS_bar,
168: KC(198), KS_z,
169: KC(203), KS_quotedbl, KS_3,
170: KC(208), KS_apostrophe, KS_4,
171: KC(214), KS_parenleft, KS_5,
172: KC(219), KS_section, KS_6, KS_bracketleft,
173: KC(224), KS_egrave, KS_7, KS_bracketright,
174: KC(227), KS_comma, KS_question,
175: KC(229), KS_exclam, KS_8,
176: KC(232), KS_semicolon, KS_period,
177: KC(234), KS_ccedilla, KS_9, KS_braceleft,
178: KC(237), KS_colon, KS_slash,
179: KC(239), KS_agrave, KS_0, KS_braceright,
180: KC(242), KS_m,
181: KC(243), KS_equal, KS_plus,
182: KC(245), KS_minus, KS_underscore,
183: KC(246), KS_dollar, KS_asterisk,
184: KC(247), KS_numbersign, KS_at,
185: KC(249), KS_parenright, KS_degree,
186: KC(250), KS_dead_circumflex, KS_dead_diaeresis,
187: KC(251), KS_ugrave, KS_percent, KS_backslash,
188: /* remapped Compose key (177) for LK 201 */
189: KC(252), KS_Cmd2, KS_Mode_switch, KS_Multi_key
190: };
191:
192: static const keysym_t lkkbd_keydesc_pt[] = {
193: KC(191), KS_backslash, KS_bar,
194: KC(219), KS_6, KS_quotedbl,
195: KC(232), KS_comma, KS_semicolon,
196: KC(237), KS_period, KS_colon,
197: KC(242), KS_ccedilla,
198: KC(247), KS_bracketleft, KS_braceleft,
199: KC(250), KS_dead_acute, KS_dead_grave,
200: KC(251), KS_dead_tilde, KS_dead_circumflex,
201: };
202:
203: #define KBD_MAP(name, base, map) \
204: { name, base, sizeof(map)/sizeof(keysym_t), map }
205:
206: const struct wscons_keydesc lkkbd_keydesctab[] = {
207: KBD_MAP(KB_US, 0, lkkbd_keydesc_us),
208: KBD_MAP(KB_DE, KB_US, lkkbd_keydesc_de),
209: KBD_MAP(KB_DE | KB_NODEAD, KB_DE, lkkbd_keydesc_de_nodead),
210: KBD_MAP(KB_FR, KB_US, lkkbd_keydesc_fr),
211: KBD_MAP(KB_PT, KB_US, lkkbd_keydesc_pt),
212: {0, 0, 0, 0}
213: };
214:
215: #undef KBD_MAP
216: #undef KC
CVSweb