14 #define ROSDATA static __declspec(allocate(".data"))
17 #pragma data_seg(".data")
18 #define ROSDATA static
20 #define ROSDATA static __attribute__((section(".data")))
26#define KNUMS (KBDNUMPAD | KBDSPECIAL)
27#define KMEXT (KBDEXT | KBDMULTIVK)
29#ifndef VK_OEM_NEC_EQUAL
30 #define VK_OEM_NEC_EQUAL 0x92
233 {
VK_BACK , 0 , { 0x0008, 0x0008, 0x0008, 0x0008, 0x007f, 0x007f } },
234 {
VK_CANCEL , 0 , { 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003 } },
235 {
VK_ESCAPE , 0 , { 0x001b, 0x001b, 0x001b, 0x001b, 0x001b, 0x001b } },
238 {
VK_OEM_5 ,
KANALOK , {
'\\',
'|', 0xff70, 0xff70, 0x001c, 0x001c } },
242 {
VK_RETURN , 0 , { 0x000d, 0x000d, 0x000d, 0x000d, 0x000a, 0x000a } },
243 {
VK_SPACE , 0 , {
' ',
' ',
' ',
' ',
' ',
' ' } },
249 {
'2' ,
KANALOK , {
'2',
'"', 0xff8c, 0xff8c,
WCH_NONE,
WCH_NONE, 0x0000, 0x0000 } },
250 {
'6' ,
KANALOK , {
'6',
'&', 0xff75, 0xff6b,
WCH_NONE,
WCH_NONE, 0x001e, 0x001e } },
251 { VK_OEM_MINUS ,
KANALOK , {
'-',
'=', 0xff8e, 0xff8e,
WCH_NONE,
WCH_NONE, 0x001f, 0x001f } },
257 {
'0' ,
KANALOK , {
'0',
'0', 0xff9c, 0xff66 } },
258 {
'1' ,
KANALOK , {
'1',
'!', 0xff87, 0xff87 } },
259 {
'3' ,
KANALOK , {
'3',
'#', 0xff71, 0xff67 } },
260 {
'4' ,
KANALOK , {
'4',
'$', 0xff73, 0xff69 } },
261 {
'5' ,
KANALOK , {
'5',
'%', 0xff74, 0xff6a } },
262 {
'7' ,
KANALOK , {
'7',
'\'', 0xff94, 0xff6c } },
263 {
'8' ,
KANALOK , {
'8',
'(', 0xff95, 0xff6d } },
264 {
'9' ,
KANALOK , {
'9',
')', 0xff96, 0xff6e } },
293 { VK_OEM_COMMA ,
KANALOK , {
',',
'<', 0xff88, 0xff64 } },
294 { VK_OEM_PERIOD ,
KANALOK , {
'.',
'>', 0xff99, 0xff61 } },
295 { VK_OEM_PLUS ,
KANALOK , {
';',
'+', 0xff9a, 0xff9a } },
296 {
VK_TAB , 0 , { 0x0009, 0x0009, 0x0009, 0x0009 } },
297 {
VK_ADD , 0 , {
'+',
'+',
'+',
'+' } },
299 {
VK_DIVIDE , 0 , {
'/',
'/',
'/',
'/' } },
302 {
VK_SEPARATOR , 0 , {
',',
',',
',',
',' } },
322#define vk_master(n, x) { (PVK_TO_WCHARS1)x, n, sizeof(x[0]) }
334 { 0x0e,
L"Backspace" },
338 { 0x29,
L"\x534a\x89d2/\x5168\x89d2" },
340 { 0x36,
L"Right Shift" },
344 { 0x3a,
L"Caps Lock" },
356 { 0x46,
L"Scroll Lock" },
369 { 0x53,
L"Num Del" },
370 { 0x54,
L"Sys Req" },
378 { 0x70,
L"\xff76\xff85" },
385 { 0x1c,
L"Num Enter" },
386 { 0x1d,
L"Right Control" },
388 { 0x37,
L"Prnt Scrn" },
389 { 0x38,
L"Right Alt" },
390 { 0x45,
L"Num Lock" },
394 { 0x49,
L"Page Up" },
399 { 0x51,
L"Page Down" },
402 { 0x5b,
L"Left Windows" },
403 { 0x5c,
L"Right Windows" },
404 { 0x5d,
L"Application" },
#define KBDNLS_SEND_BASE_VK
#define VK_DBE_ALPHANUMERIC
#define VK_DBE_FLUSHSTRING
#define KBDNLS_HOME_OR_CLEAR
#define KBDNLS_INDEX_NORMAL
#define VK_DBE_ENTERWORDREGISTERMODE
#define KBDNLS_SEND_PARAM_VK
#define VK_DBE_ENTERIMECONFIGMODE
#define VK_DBE_DETERMINESTRING
#define VK_DBE_NOCODEINPUT
#define KBDNLS_TYPE_NORMAL
#define KBDNLS_HELP_OR_END
PKBDTABLES WINAPI KbdLayerDescriptor()
PKBDNLSTABLES WINAPI KbdNlsLayerDescriptor(VOID)
ROSDATA VK_TO_WCHARS4 keypad_numbers[]
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[]
ROSDATA VSC_VK extcode0_to_vk[]
ROSDATA USHORT mouse_vk[]
ROSDATA VK_TO_WCHAR_TABLE vk_to_wchar_master_table[]
ROSDATA VK_TO_WCHARS8 key_to_chars_8mod[]
ROSDATA KBDNLSTABLES nls_tables[]
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