15 #define ROSDATA static __declspec(allocate(".data"))
18 #pragma data_seg(".data")
19 #define ROSDATA static
21 #define ROSDATA static __attribute__((section(".data")))
35#define KNUMS (KBDNUMPAD | KBDSPECIAL)
36#define KMEXT (KBDEXT | KBDMULTIVK)
39#define CAPKANA (CAPLOK | KANALOK)
68 'B',
'N',
'M', VK_OEM_COMMA,
135 { 0x10, VK_MEDIA_PREV_TRACK |
KBDEXT },
136 { 0x19, VK_MEDIA_NEXT_TRACK |
KBDEXT },
139 { 0x20, VK_VOLUME_MUTE |
KBDEXT },
140 { 0x21, VK_LAUNCH_APP2 |
KBDEXT },
141 { 0x22, VK_MEDIA_PLAY_PAUSE |
KBDEXT },
142 { 0x24, VK_MEDIA_STOP |
KBDEXT },
143 { 0x2E, VK_VOLUME_DOWN |
KBDEXT },
144 { 0x30, VK_VOLUME_UP |
KBDEXT },
145 { 0x32, VK_BROWSER_HOME |
KBDEXT },
164 { 0x65, VK_BROWSER_SEARCH |
KBDEXT },
165 { 0x66, VK_BROWSER_FAVORITES |
KBDEXT },
166 { 0x67, VK_BROWSER_REFRESH |
KBDEXT },
167 { 0x68, VK_BROWSER_STOP |
KBDEXT },
168 { 0x69, VK_BROWSER_FORWARD |
KBDEXT },
169 { 0x6A, VK_BROWSER_BACK |
KBDEXT },
170 { 0x6B, VK_LAUNCH_APP1 |
KBDEXT },
171 { 0x6C, VK_LAUNCH_MAIL |
KBDEXT },
172 { 0x6D, VK_LAUNCH_MEDIA_SELECT |
KBDEXT },
219 {
VK_BACK, 0, {0x08, 0x08, 0x08, 0x08, 0x7f, 0x7f} },
220 {
VK_CANCEL, 0, {0x03, 0x03, 0x03, 0x03, 0x03, 0x03} },
221 {
VK_ESCAPE, 0, {0x1b, 0x1b, 0x1b, 0x1b, 0x1b, 0x1b} },
224 { VK_OEM_102,
KANALOK, {
'\\',
'_', 0xff9b, 0xff9b, 0x1c, 0x1c} },
226 {
VK_RETURN, 0, {
'\r',
'\r',
'\r',
'\r',
'\n',
'\n'} },
227 {
VK_SPACE, 0, {
' ',
' ',
' ',
' ',
' ',
' '} },
232 {
'2',
KANALOK, {
'2',
'\"', 0xff8c, 0xff8c,
WCH_NONE,
WCH_NONE, 0x00, 0x00} },
233 {
'6',
KANALOK, {
'6',
'&', 0xff75, 0xff6b,
WCH_NONE,
WCH_NONE, 0x1e, 0x1e} },
234 { VK_OEM_MINUS,
KANALOK, {
'-',
'=', 0xff8e, 0xff8e,
WCH_NONE,
WCH_NONE, 0x1f, 0x1f} },
241 {
'1',
KANALOK, {
'1',
'!', 0xff87, 0xff87} },
243 {
'3',
KANALOK, {
'3',
'#', 0xff71, 0xff67} },
244 {
'4',
KANALOK, {
'4',
'$', 0xff73, 0xff69} },
245 {
'5',
KANALOK, {
'5',
'%', 0xff74, 0xff6a} },
246 {
'7',
KANALOK, {
'7',
'\'', 0xff94, 0xff6c} },
247 {
'8',
KANALOK, {
'8',
'(', 0xff95, 0xff6d} },
248 {
'9',
KANALOK, {
'9',
')', 0xff96, 0xff6e} },
250 {
'A',
CAPKANA, {
'a',
'A', 0xff81, 0xff81} },
251 {
'B',
CAPKANA, {
'b',
'B', 0xff7a, 0xff7a} },
252 {
'C',
CAPKANA, {
'c',
'C', 0xff7f, 0xff7f} },
253 {
'D',
CAPKANA, {
'd',
'D', 0xff7c, 0xff7c} },
254 {
'E',
CAPKANA, {
'e',
'E', 0xff72, 0xff68} },
255 {
'F',
CAPKANA, {
'f',
'F', 0xff8a, 0xff8a} },
256 {
'G',
CAPKANA, {
'g',
'G', 0xff77, 0xff77} },
257 {
'H',
CAPKANA, {
'h',
'H', 0xff78, 0xff78} },
258 {
'I',
CAPKANA, {
'i',
'I', 0xff86, 0xff86} },
259 {
'J',
CAPKANA, {
'j',
'J', 0xff8f, 0xff8f} },
260 {
'K',
CAPKANA, {
'k',
'K', 0xff89, 0xff89} },
261 {
'L',
CAPKANA, {
'l',
'L', 0xff98, 0xff98} },
262 {
'M',
CAPKANA, {
'm',
'M', 0xff93, 0xff93} },
263 {
'N',
CAPKANA, {
'n',
'N', 0xff90, 0xff90} },
264 {
'O',
CAPKANA, {
'o',
'O', 0xff97, 0xff97} },
265 {
'P',
CAPKANA, {
'p',
'P', 0xff7e, 0xff7e} },
266 {
'Q',
CAPKANA, {
'q',
'Q', 0xff80, 0xff80} },
267 {
'R',
CAPKANA, {
'r',
'R', 0xff7d, 0xff7d} },
268 {
'S',
CAPKANA, {
's',
'S', 0xff84, 0xff84} },
269 {
'T',
CAPKANA, {
't',
'T', 0xff76, 0xff76} },
270 {
'U',
CAPKANA, {
'u',
'U', 0xff85, 0xff85} },
271 {
'V',
CAPKANA, {
'v',
'V', 0xff8b, 0xff8b} },
272 {
'W',
CAPKANA, {
'w',
'W', 0xff83, 0xff83} },
273 {
'X',
CAPKANA, {
'x',
'X', 0xff7b, 0xff7b} },
274 {
'Y',
CAPKANA, {
'y',
'Y', 0xff9d, 0xff9d} },
275 {
'Z',
CAPKANA, {
'z',
'Z', 0xff82, 0xff6f} },
282 { VK_OEM_COMMA,
KANALOK, {
',',
'<', 0xff88, 0xff64} },
283 { VK_OEM_PERIOD,
KANALOK, {
'.',
'>', 0xff99, 0xff61} },
284 { VK_OEM_PLUS,
KANALOK, {
';',
'+', 0xff9a, 0xff9a} },
286 {
VK_TAB, 0, {
'\t',
'\t',
'\t',
'\t'} },
287 {
VK_ADD, 0, {
'+',
'+',
'+',
'+'} },
310#define vk_master(n, x) { (PVK_TO_WCHARS1)x, n, sizeof(x[0]) }
325 { 0x0e,
L"Backspace" },
329 { 0x29,
L"\u534A\u89D2/\u5168\u89D2" },
331 { 0x36,
L"Right Shift" },
335 { 0x3a,
L"Caps Lock" },
347 { 0x46,
L"Scroll Lock" },
360 { 0x53,
L"Num Del" },
361 { 0x54,
L"Sys Req" },
364 { 0x70,
L"\u3072\u3089\u304C\u306A" },
365 { 0x79,
L"\u5909\u63DB" },
366 { 0x7b,
L"\u7121\u5909\u63DB" },
372 { 0x1c,
L"Num Enter" },
373 { 0x1d,
L"Right Control" },
375 { 0x37,
L"Prnt Scrn" },
376 { 0x38,
L"Right Alt" },
377 { 0x45,
L"Num Lock" },
381 { 0x49,
L"Page Up" },
386 { 0x51,
L"Page Down" },
389 { 0x5b,
L"Left Windows" },
390 { 0x5c,
L"Right Windows" },
391 { 0x5d,
L"Application" },
436#define NLS_NONE { KBDNLS_NULL, 0 }
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 VK_F key_vk_to_f[]
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 VK_TO_WCHARS6 key_to_chars_6mod[]
ROSDATA KBDNLSTABLES KbdNlsTables
ROSDATA VK_TO_BIT modifier_keys[]
ROSDATA VSC_VK extcode1_to_vk[]
ROSDATA KBDTABLES_FE keyboard_layout_table
#define KBDNLS_SEND_BASE_VK
#define VK_DBE_ALPHANUMERIC
#define KBDNLS_INDEX_NORMAL
#define KBDNLS_TYPE_TOGGLE
#define VK_DBE_ENTERWORDREGISTERMODE
#define KBDNLS_SEND_PARAM_VK
#define VK_DBE_ENTERIMECONFIGMODE
#define KBDNLS_TYPE_NORMAL
PKBDTABLES WINAPI KbdLayerDescriptor()