15#define ROSDATA static __declspec(allocate(".data"))
18#pragma data_seg(".data")
21#define ROSDATA static __attribute__((section(".data")))
27#define KNUMS KBDNUMPAD|KBDSPECIAL
28#define KMEXT KBDEXT|KBDMULTIVK
37 VK_OEM_MINUS, VK_OEM_PLUS,
VK_BACK,
54 'B',
'N',
'M', VK_OEM_COMMA,
103 { 0x10, VK_MEDIA_PREV_TRACK |
KBDEXT },
104 { 0x19, VK_MEDIA_NEXT_TRACK |
KBDEXT },
106 { 0x20, VK_VOLUME_MUTE |
KBDEXT },
107 { 0x21, VK_LAUNCH_APP2 |
KBDEXT },
108 { 0x22, VK_MEDIA_PLAY_PAUSE |
KBDEXT },
109 { 0x24, VK_MEDIA_STOP |
KBDEXT },
110 { 0x2E, VK_VOLUME_DOWN |
KBDEXT },
111 { 0x30, VK_VOLUME_UP |
KBDEXT },
112 { 0x32, VK_BROWSER_HOME |
KBDEXT },
130 { 0x65, VK_BROWSER_SEARCH |
KBDEXT },
131 { 0x66, VK_BROWSER_FAVORITES |
KBDEXT },
132 { 0x67, VK_BROWSER_REFRESH |
KBDEXT },
133 { 0x68, VK_BROWSER_STOP |
KBDEXT },
134 { 0x69, VK_BROWSER_FORWARD |
KBDEXT },
135 { 0x6A, VK_BROWSER_BACK |
KBDEXT },
136 { 0x6B, VK_LAUNCH_APP1 |
KBDEXT },
137 { 0x6C, VK_LAUNCH_MAIL |
KBDEXT },
138 { 0x6D, VK_LAUNCH_MEDIA_SELECT |
KBDEXT },
163 {
'5', 0, {0x1045,
'%' } },
164 {
'7', 0, {0x1047, 0x101b} },
165 {
VK_TAB, 0, {
'\t' ,
'\t' } },
166 {
VK_ADD, 0, {
'+' ,
'+' } },
176 {
'S', 0, {0x1035, 0x1080, 0x13} },
177 {
'M', 0, {0x102c, 0x1033, 0x0d} },
178 {
VK_BACK, 0, {
'\b' ,
'\b' , 0x7f} },
185 {
'3', 0, {0x1043, 0x100b,
WCH_NONE, 0x1076} },
186 {
'6', 0, {0x1046,
'/' ,
WCH_NONE,
'^' } },
187 {
'8', 0, {0x1048, 0x1002,
WCH_NONE, 0x1062} },
188 {
'Q', 0, {0x1006, 0x1096, 0x11 , 0x1065} },
189 {
'W', 0, {0x1010, 0x1098, 0x17 , 0x1068} },
191 {
'X', 0, {0x1011, 0x100c, 0x18 , 0x106a} },
192 {
'V', 0, {0x101c, 0x1020, 0x16 , 0x1074} },
193 {
'B', 0, {0x1018, 0x1092, 0x02 , 0x1072} },
198 {
'1', 0, {0x1041, 0x100d,
WCH_NONE, 0x100e , 0x1079} },
199 {
'2', 0, {0x1042, 0x1078,
WCH_NONE, 0x1075 ,
'@' } },
200 {
'4', 0, {0x1044,
'$' ,
WCH_NONE, 0x104e , 0x1023} },
201 {
'9', 0, {0x1049,
'(' ,
WCH_NONE,
'|' , 0x2018} },
202 {
'0', 0, {0x1040,
')' ,
WCH_NONE, 0x1074 , 0x2019} },
203 { VK_OEM_MINUS, 0, {
'-' ,
'*' ,
WCH_NONE, 0x108a ,
'_' } },
204 { VK_OEM_PLUS, 0, {
'=' ,
'+' ,
WCH_NONE, 0x108b , 0x109f} },
205 {
'E', 0, {0x1014, 0x108e, 0x05 , 0x106e , 0x1077} },
206 {
'R', 0, {0x1019, 0x1097, 0x12 , 0x1073 , 0x1029} },
207 {
'T', 0, {0x1021, 0x107f, 0x14 , 0x1024 , 0x102a} },
208 {
'Y', 0, {0x1015, 0x109a, 0x19 , 0x104c , 0x106f} },
209 {
'U', 0, {0x1000, 0x109b, 0x15 , 0x1060 , 0x1009} },
210 {
'I', 0, {0x1004, 0x1081, 0x09 , 0x104d , 0x108f} },
211 {
'O', 0, {0x101e, 0x1025, 0x0f , 0x108d , 0x1026} },
212 {
'P', 0, {0x1005, 0x100f, 0x10 , 0x1064 , 0x1067} },
215 {
'A', 0, {0x1031, 0x1017, 0x01 ,
WCH_NONE, 0x1071} },
216 {
'D', 0, {0x102d, 0x102e, 0x04 , 0x1084 , 0x1088} },
217 {
'F', 0, {0x1039, 0x1086, 0x06 , 0x1050 , 0x1055} },
218 {
'G', 0, {0x105d, 0x107e, 0x07 , 0x1051 , 0x1056} },
219 {
'H', 0, {0x1037, 0x1036, 0x08 , 0x1052 , 0x1057} },
220 {
'J', 0, {0x1034, 0x1032, 0x0a , 0x1053 , 0x1058} },
221 {
'K', 0, {0x102f, 0x1082, 0x0b , 0x1054 , 0x1059} },
222 {
'L', 0, {0x1030, 0x1083, 0x0c , 0x1085 , 0x1087} },
225 {
'Z', 0, {0x1016, 0x1007, 0x1a , 0x1070 , 0x1066} },
226 {
'C', 0, {0x1001, 0x1003, 0x03 , 0x1061 , 0x1063} },
227 {
'N', 0, {0x100a, 0x1093, 0x0e , 0x108c , 0x1099} },
228 { VK_OEM_COMMA, 0, {0x101a, 0x101d,
WCH_NONE,
',' ,
'<' } },
229 { VK_OEM_PERIOD,0, {
'.' , 0x105f,
WCH_NONE,
'.' ,
'>' } },
249#define vk_master(n,x) { (PVK_TO_WCHARS1)x, n, sizeof(x[0]) }
263 { 0x0e,
L"Backspace" },
268 { 0x36,
L"Right Shift" },
272 { 0x3a,
L"CAPLOK Lock" },
284 { 0x46,
L"Scroll Lock" },
297 { 0x53,
L"Num Del" },
298 { 0x54,
L"Sys Req" },
317 { 0x1c,
L"Num Enter" },
318 { 0x1d,
L"Right Ctrl" },
320 { 0x37,
L"Prnt Scrn" },
321 { 0x38,
L"Right Alt" },
322 { 0x45,
L"Num Lock" },
326 { 0x49,
L"Page Up" },
332 { 0x51,
L"Page Down" },
335 { 0x54,
L"<ReactOS>" },
337 { 0x5b,
L"Left ReactOS" },
338 { 0x5c,
L"Right ReactOS" },
339 { 0x5d,
L"Application" },
ROSDATA VSC_LPWSTR extended_key_names[]
ROSDATA USHORT scancode_to_vk[]
ROSDATA VK_TO_WCHARS1 keypad_numbers[]
ROSDATA MODIFIERS modifier_bits
ROSDATA VK_TO_WCHARS4 key_to_chars_4mod[]
ROSDATA VSC_LPWSTR key_names[]
ROSDATA VSC_VK extcode0_to_vk[]
ROSDATA VK_TO_WCHAR_TABLE vk_to_wchar_master_table[]
ROSDATA VK_TO_WCHARS3 key_to_chars_3mod[]
ROSDATA VK_TO_WCHARS5 key_to_chars_5mod[]
ROSDATA VK_TO_WCHARS2 key_to_chars_2mod[]
ROSDATA VK_TO_BIT modifier_keys[]
ROSDATA VSC_VK extcode1_to_vk[]
ROSDATA KBDTABLES keyboard_layout_table
PKBDTABLES WINAPI KbdLayerDescriptor()