16 #define ROSDATA static __declspec(allocate(".data"))
19 #pragma data_seg(".data")
20 #define ROSDATA static
22 #define ROSDATA static __attribute__((section(".data")))
27#define KNUMS (KBDNUMPAD | KBDSPECIAL)
28#define KMEXT (KBDEXT | KBDMULTIVK)
30#define VK_OEM_NEC_EQUAL 0x92
62 'B',
'N',
'M', VK_OEM_COMMA,
173 {
'0',
KANALOK, {
'0',
'0', 0xff9c, 0xff66} },
174 {
'1',
KANALOK, {
'1',
'!', 0xff87, 0xff87} },
175 {
'3',
KANALOK, {
'3',
'#', 0xff71, 0xff67} },
176 {
'4',
KANALOK, {
'4',
'$', 0xff73, 0xff69} },
177 {
'5',
KANALOK, {
'5',
'%', 0xff74, 0xff6a} },
178 {
'7',
KANALOK, {
'7',
'\'',0xff94, 0xff6c} },
179 {
'8',
KANALOK, {
'8',
'(', 0xff95, 0xff6d} },
180 {
'9',
KANALOK, {
'9',
')', 0xff96, 0xff6e} },
209 { VK_OEM_COMMA,
KANALOK, {
',',
'<', 0xff88, 0xff64} },
210 { VK_OEM_PERIOD,
KANALOK, {
'.',
'>', 0xff99, 0xff61} },
211 { VK_OEM_PLUS,
KANALOK, {
';',
'+', 0xff9a, 0xff9a} },
212 {
VK_TAB, 0, {
'\t',
'\t',
'\t',
'\t'} },
213 {
VK_ADD, 0, {
'+',
'+',
'+',
'+'} },
218 {
VK_SEPARATOR, 0, {
',',
',',
',',
','} },
225 {
VK_BACK, 0, {0x08, 0x08, 0x08, 0x08, 0x7f, 0x7f} },
226 {
VK_CANCEL, 0, {0x03, 0x03, 0x03, 0x03, 0x03, 0x03} },
227 {
VK_ESCAPE, 0, {0x1b, 0x1b, 0x1b, 0x1b, 0x1b, 0x1b} },
234 {
VK_RETURN, 0, {
'\r',
'\r',
'\r',
'\r',
'\n',
'\n'} },
235 {
VK_SPACE, 0, {
' ',
' ',
' ',
' ',
' ',
' '} },
241 {
'2',
KANALOK, {
'2',
'"', 0xff8c, 0xff8c,
WCH_NONE,
WCH_NONE, 0x00, 0x00} },
242 {
'6',
KANALOK, {
'6',
'&', 0xff75, 0xff6b,
WCH_NONE,
WCH_NONE, 0x1e, 0x1e} },
243 { VK_OEM_MINUS,
KANALOK, {
'-',
'=', 0xff8e, 0xff8e,
WCH_NONE,
WCH_NONE, 0x1f, 0x1f} },
261#define vk_master(n, x) { (PVK_TO_WCHARS1)x, n, sizeof(x[0]) }
280 { 0x29,
L"\u534A\u89D2/\u5168\u89D2" },
287 { 0x3b,
L"f\xff65" L"1" },
288 { 0x3c,
L"f\xff65" L"2" },
289 { 0x3d,
L"f\xff65" L"3" },
290 { 0x3e,
L"f\xff65" L"4" },
291 { 0x3f,
L"f\xff65" L"5" },
292 { 0x40,
L"f\xff65" L"6" },
293 { 0x41,
L"f\xff65" L"7" },
294 { 0x42,
L"f\xff65" L"8" },
295 { 0x43,
L"f\xff65" L"9" },
296 { 0x44,
L"f\xff65" L"10" },
298 { 0x46,
L"Scroll Lock" },
312 { 0x54,
L"Sys Req" },
313 { 0x57,
L"f\xff65" L"11" },
314 { 0x58,
L"f\xff65" L"12" },
317 { 0x5d,
L"f\xff65" L"13" },
318 { 0x5e,
L"f\xff65" L"14" },
319 { 0x5f,
L"f\xff65" L"15" },
320 { 0x70,
L"\xff76\xff85" },
327 { 0x1c,
L"Num Enter" },
330 { 0x45,
L"Num Lock" },
334 { 0x49,
L"ROLL DOWN" },
339 { 0x51,
L"ROLL UP" },
344 { 0x5b,
L"Left Windows" },
345 { 0x5c,
L"Right Windows" },
346 { 0x5d,
L"Application" },
387#define NLS_ENTRY(vk, p0, p1, p2, p3, p4, p5, p6, p7) \
388 { (vk), KBDNLS_TYPE_NORMAL, KBDNLS_INDEX_NORMAL, 0, \
389 { p0, p1, p2, p3, p4, p5, p6, p7 }, \
390 { {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0} } }
392#define NOP { KBDNLS_NULL, 0 }
393#define BASE { KBDNLS_SEND_BASE_VK, 0 }
394#define PARAM(vk) { KBDNLS_SEND_PARAM_VK, (vk) }
395#define FUNC(f) { (f), 0 }
434#define NLS_NUMPAD(vk) \
435 NLS_ENTRY(vk, FUNC(KBDNLS_NUMPAD), FUNC(KBDNLS_NUMPAD), FUNC(KBDNLS_NUMPAD), \
436 FUNC(KBDNLS_NUMPAD), FUNC(KBDNLS_NUMPAD), FUNC(KBDNLS_NUMPAD), \
437 FUNC(KBDNLS_NUMPAD), FUNC(KBDNLS_NUMPAD))
#define VK_DBE_ALPHANUMERIC
#define VK_DBE_FLUSHSTRING
#define KBDNLS_HOME_OR_CLEAR
#define VK_DBE_ENTERWORDREGISTERMODE
#define VK_DBE_ENTERIMECONFIGMODE
#define VK_DBE_NOCODEINPUT
#define KBDNLS_HELP_OR_END
PKBDTABLES WINAPI KbdLayerDescriptor()
PKBDNLSTABLES WINAPI KbdNlsLayerDescriptor(VOID)
ROSDATA VK_TO_WCHARS4 keypad_numbers[]
ROSDATA KBDNLSTABLES keyboard_nls_table
ROSDATA VSC_LPWSTR extended_key_names[]
ROSDATA USHORT scancode_to_vk[]
ROSDATA MODIFIERS modifier_bits
ROSDATA VK_TO_WCHARS4 key_to_chars_4mod[]
ROSDATA VSC_LPWSTR key_names[]
#define NLS_ENTRY(vk, p0, p1, p2, p3, p4, p5, p6, p7)
ROSDATA VSC_VK extcode0_to_vk[]
ROSDATA VK_TO_WCHAR_TABLE vk_to_wchar_master_table[]
ROSDATA VK_TO_WCHARS8 key_to_chars_8mod[]
ROSDATA USHORT mouse_vkeys[]
ROSDATA VK_F key_to_function[]
ROSDATA VK_TO_WCHARS6 key_to_chars_6mod[]
ROSDATA VK_TO_BIT modifier_keys[]
ROSDATA VSC_VK extcode1_to_vk[]
ROSDATA KBDTABLES_FE keyboard_layout_table