| 1 | /********************************************************************/
|
|---|
| 2 | /* Table to translate from a PM scancode to a general Windows vkey, */
|
|---|
| 3 | /* left-right specific Windows vkey or and extended key flag. */
|
|---|
| 4 | /* */
|
|---|
| 5 | /* NOTE: Windows uses different vkeys for the numpad depending on */
|
|---|
| 6 | /* numlock state. This table assumes numlock is ON. To map */
|
|---|
| 7 | /* this vkey to it's numlock OFF equivalent, use the table */
|
|---|
| 8 | /* 'abNumlockWinVKeyToWinVKey' below. */
|
|---|
| 9 | /********************************************************************/
|
|---|
| 10 | BYTE abPMScanToWinVKey[256][3] =
|
|---|
| 11 | /****************************************************************************/
|
|---|
| 12 | /* Scancode * General vkey * Specific vkey * Ext */
|
|---|
| 13 | /****************************************************************************/
|
|---|
| 14 | /* 0x00 */ { 0x00, 0x00, FALSE
|
|---|
| 15 | /* 0x01 PMSCAN_ESC */ , VK_ESCAPE_W, VK_ESCAPE_W, FALSE
|
|---|
| 16 | /* 0x02 PMSCAN_ONE */ , VK_1_W, VK_1_W, FALSE
|
|---|
| 17 | /* 0x03 PMSCAN_TWO */ , VK_2_W, VK_2_W, FALSE
|
|---|
| 18 | /* 0x04 PMSCAN_THREE */ , VK_3_W, VK_3_W, FALSE
|
|---|
| 19 | /* 0x05 PMSCAN_FOUR */ , VK_4_W, VK_4_W, FALSE
|
|---|
| 20 | /* 0x06 PMSCAN_FIVE */ , VK_5_W, VK_5_W, FALSE
|
|---|
| 21 | /* 0x07 PMSCAN_SIX */ , VK_6_W, VK_6_W, FALSE
|
|---|
| 22 | /* 0x08 PMSCAN_SEVEN */ , VK_7_W, VK_7_W, FALSE
|
|---|
| 23 | /* 0x09 PMSCAN_EIGHT */ , VK_8_W, VK_8_W, FALSE
|
|---|
| 24 | /* 0x0A PMSCAN_NINE */ , VK_9_W, VK_9_W, FALSE
|
|---|
| 25 | /* 0x0B PMSCAN_ZERO */ , VK_0_W, VK_0_W, FALSE
|
|---|
| 26 | /* 0x0C PMSCAN_HYPHEN */ , VK_HYPHEN_W, VK_HYPHEN_W, FALSE
|
|---|
| 27 | /* 0x0D PMSCAN_EQUAL */ , VK_EQUAL_W, VK_EQUAL_W, FALSE
|
|---|
| 28 | /* 0x0E PMSCAN_BACKSPACE */ , VK_BACK_W, VK_BACK_W, FALSE
|
|---|
| 29 | /* 0x0F PMSCAN_TAB */ , VK_TAB_W, VK_TAB_W, FALSE
|
|---|
| 30 | /* 0x10 PMSCAN_Q */ , VK_Q_W, VK_Q_W, FALSE
|
|---|
| 31 | /* 0x11 PMSCAN_W */ , VK_W_W, VK_W_W, FALSE
|
|---|
| 32 | /* 0x12 PMSCAN_E */ , VK_E_W, VK_E_W, FALSE
|
|---|
| 33 | /* 0x13 PMSCAN_R */ , VK_R_W, VK_R_W, FALSE
|
|---|
| 34 | /* 0x14 PMSCAN_T */ , VK_T_W, VK_T_W, FALSE
|
|---|
| 35 | /* 0x15 PMSCAN_Y */ , VK_Y_W, VK_Y_W, FALSE
|
|---|
| 36 | /* 0x16 PMSCAN_U */ , VK_U_W, VK_U_W, FALSE
|
|---|
| 37 | /* 0x17 PMSCAN_I */ , VK_I_W, VK_I_W, FALSE
|
|---|
| 38 | /* 0x18 PMSCAN_O */ , VK_O_W, VK_O_W, FALSE
|
|---|
| 39 | /* 0x19 PMSCAN_P */ , VK_P_W, VK_P_W, FALSE
|
|---|
| 40 | /* 0x1A PMSCAN_BRACKETLEFT */ , VK_BRACKETLEFT_W, VK_BRACKETLEFT_W, FALSE
|
|---|
| 41 | /* 0x1B PMSCAN_BRACKETRIGHT */ , VK_BRACKETRIGHT_W, VK_BRACKETRIGHT_W, FALSE
|
|---|
| 42 | /* 0x1C PMSCAN_ENTER */ , VK_RETURN_W, VK_RETURN_W, FALSE
|
|---|
| 43 | /* 0x1D PMSCAN_CTRLLEFT */ , VK_CONTROL_W, VK_LCONTROL_W, FALSE
|
|---|
| 44 | /* 0x1E PMSCAN_A */ , VK_A_W, VK_A_W, FALSE
|
|---|
| 45 | /* 0x1F PMSCAN_S */ , VK_S_W, VK_S_W, FALSE
|
|---|
| 46 | /* 0x20 PMSCAN_D */ , VK_D_W, VK_D_W, FALSE
|
|---|
| 47 | /* 0x21 PMSCAN_F */ , VK_F_W, VK_F_W, FALSE
|
|---|
| 48 | /* 0x22 PMSCAN_G */ , VK_G_W, VK_G_W, FALSE
|
|---|
| 49 | /* 0x23 PMSCAN_H */ , VK_H_W, VK_H_W, FALSE
|
|---|
| 50 | /* 0x24 PMSCAN_J */ , VK_J_W, VK_J_W, FALSE
|
|---|
| 51 | /* 0x25 PMSCAN_K */ , VK_K_W, VK_K_W, FALSE
|
|---|
| 52 | /* 0x26 PMSCAN_L */ , VK_L_W, VK_L_W, FALSE
|
|---|
| 53 | /* 0x27 PMSCAN_SEMICOLON */ , VK_SEMICOLON_W, VK_SEMICOLON_W, FALSE
|
|---|
| 54 | /* 0x28 PMSCAN_QUOTESINGLE */ , VK_QUOTESINGLE_W, VK_QUOTESINGLE_W, FALSE
|
|---|
| 55 | /* 0x29 PMSCAN_GRAVE */ , VK_GRAVE_W, VK_GRAVE_W, FALSE
|
|---|
| 56 | /* 0x2A PMSCAN_SHIFTLEFT */ , VK_SHIFT_W, VK_LSHIFT_W, FALSE
|
|---|
| 57 | /* 0x2B PMSCAN_BACKSLASH */ , VK_BACKSLASH_W, VK_BACKSLASH_W, FALSE
|
|---|
| 58 | /* 0x2C PMSCAN_Z */ , VK_Z_W, VK_Z_W, FALSE
|
|---|
| 59 | /* 0x2D PMSCAN_X */ , VK_X_W, VK_X_W, FALSE
|
|---|
| 60 | /* 0x2E PMSCAN_C */ , VK_C_W, VK_C_W, FALSE
|
|---|
| 61 | /* 0x2F PMSCAN_V */ , VK_V_W, VK_V_W, FALSE
|
|---|
| 62 | /* 0x30 PMSCAN_B */ , VK_B_W, VK_B_W, FALSE
|
|---|
| 63 | /* 0x31 PMSCAN_N */ , VK_N_W, VK_N_W, FALSE
|
|---|
| 64 | /* 0x32 PMSCAN_M */ , VK_M_W, VK_M_W, FALSE
|
|---|
| 65 | /* 0x33 PMSCAN_COMMA */ , VK_COMMA_W, VK_COMMA_W, FALSE
|
|---|
| 66 | /* 0x34 PMSCAN_PERIOD */ , VK_PERIOD_W, VK_PERIOD_W, FALSE
|
|---|
| 67 | /* 0x35 PMSCAN_SLASH */ , VK_SLASH_W, VK_SLASH_W, FALSE
|
|---|
| 68 | /* 0x36 PMSCAN_SHIFTRIGHT */ , VK_SHIFT_W, VK_RSHIFT_W, FALSE
|
|---|
| 69 | /* 0x37 PMSCAN_PADASTERISK */ , VK_MULTIPLY_W, VK_MULTIPLY_W, FALSE
|
|---|
| 70 | /* 0x38 PMSCAN_ALTLEFT */ , VK_MENU_W, VK_LMENU_W, FALSE
|
|---|
| 71 | /* 0x39 PMSCAN_SPACE */ , VK_SPACE_W, VK_SPACE_W, FALSE
|
|---|
| 72 | /* 0x3A PMSCAN_CAPSLOCK */ , VK_CAPITAL_W, VK_CAPITAL_W, FALSE
|
|---|
| 73 | /* 0x3B PMSCAN_F1 */ , VK_F1_W, VK_F1_W, FALSE
|
|---|
| 74 | /* 0x3C PMSCAN_F2 */ , VK_F2_W, VK_F2_W, FALSE
|
|---|
| 75 | /* 0x3D PMSCAN_F3 */ , VK_F3_W, VK_F3_W, FALSE
|
|---|
| 76 | /* 0x3E PMSCAN_F4 */ , VK_F4_W, VK_F4_W, FALSE
|
|---|
| 77 | /* 0x3F PMSCAN_F5 */ , VK_F5_W, VK_F5_W, FALSE
|
|---|
| 78 | /* 0x40 PMSCAN_F6 */ , VK_F6_W, VK_F6_W, FALSE
|
|---|
| 79 | /* 0x41 PMSCAN_F7 */ , VK_F7_W, VK_F7_W, FALSE
|
|---|
| 80 | /* 0x42 PMSCAN_F8 */ , VK_F8_W, VK_F8_W, FALSE
|
|---|
| 81 | /* 0x43 PMSCAN_F9 */ , VK_F9_W, VK_F9_W, FALSE
|
|---|
| 82 | /* 0x44 PMSCAN_F10 */ , VK_F10_W, VK_F10_W, FALSE
|
|---|
| 83 | /* 0x45 PMSCAN_NUMLOCK */ , VK_NUMLOCK_W, VK_NUMLOCK_W, TRUE
|
|---|
| 84 | /* 0x46 PMSCAN_SCROLLLOCK */ , VK_SCROLL_W, VK_SCROLL_W, FALSE
|
|---|
| 85 | /* 0x47 PMSCAN_PAD7 */ , VK_NUMPAD7_W, VK_NUMPAD7_W, FALSE
|
|---|
| 86 | /* 0x48 PMSCAN_PAD8 */ , VK_NUMPAD8_W, VK_NUMPAD8_W, FALSE
|
|---|
| 87 | /* 0x49 PMSCAN_PAD9 */ , VK_NUMPAD9_W, VK_NUMPAD9_W, FALSE
|
|---|
| 88 | /* 0x4A PMSCAN_PADMINUS */ , VK_SUBTRACT_W, VK_SUBTRACT_W, FALSE
|
|---|
| 89 | /* 0x4B PMSCAN_PAD4 */ , VK_NUMPAD4_W, VK_NUMPAD4_W, FALSE
|
|---|
| 90 | /* 0x4C PMSCAN_PAD5 */ , VK_NUMPAD5_W, VK_NUMPAD5_W, FALSE
|
|---|
| 91 | /* 0x4D PMSCAN_PAD6 */ , VK_NUMPAD6_W, VK_NUMPAD6_W, FALSE
|
|---|
| 92 | /* 0x4E PMSCAN_PADPLUS */ , VK_ADD_W, VK_ADD_W, FALSE
|
|---|
| 93 | /* 0x4F PMSCAN_PAD1 */ , VK_NUMPAD1_W, VK_NUMPAD1_W, FALSE
|
|---|
| 94 | /* 0x50 PMSCAN_PAD2 */ , VK_NUMPAD2_W, VK_NUMPAD2_W, FALSE
|
|---|
| 95 | /* 0x51 PMSCAN_PAD3 */ , VK_NUMPAD3_W, VK_NUMPAD3_W, FALSE
|
|---|
| 96 | /* 0x52 PMSCAN_PAD0 */ , VK_NUMPAD0_W, VK_NUMPAD0_W, FALSE
|
|---|
| 97 | /* 0x53 PMSCAN_PADPERIOD */ , VK_DECIMAL_W, VK_DECIMAL_W, FALSE
|
|---|
| 98 | /* 0x54 PMSCAN_SYSREQ */ , 0x00, 0x00, FALSE
|
|---|
| 99 | /* 0x55 PMSCAN_RESET */ , 0x00, 0x00, FALSE
|
|---|
| 100 | /* 0x56 PMSCAN_EXTRA */ , VK_EXTRA_W, VK_EXTRA_W, FALSE
|
|---|
| 101 | /* 0x57 PMSCAN_F11 */ , VK_F11_W, VK_F11_W, FALSE
|
|---|
| 102 | /* 0x58 PMSCAN_F12 */ , VK_F12_W, VK_F12_W, FALSE
|
|---|
| 103 | /* 0x59 PMSCAN_BACKTAB */ , 0x00, 0x00, FALSE
|
|---|
| 104 | /* 0x5A PMSCAN_PADENTER */ , VK_RETURN_W, VK_RETURN_W, TRUE
|
|---|
| 105 | /* 0x5B PMSCAN_CTRLRIGHT */ , VK_CONTROL_W, VK_RCONTROL_W, TRUE
|
|---|
| 106 | /* 0x5C PMSCAN_PADSLASH */ , VK_DIVIDE_W, VK_DIVIDE_W, TRUE
|
|---|
| 107 | /* 0x5D PMSCAN_PRINT */ , VK_PRINT_W, VK_PRINT_W, FALSE
|
|---|
| 108 | /* 0x5E PMSCAN_ALTRIGHT */ , VK_MENU_W, VK_RMENU_W, TRUE
|
|---|
| 109 | /* 0x5F PMSCAN_PAUSE */ , VK_PAUSE_W, VK_PAUSE_W, FALSE
|
|---|
| 110 | /* 0x60 PMSCAN_HOME */ , VK_HOME_W, VK_HOME_W, TRUE
|
|---|
| 111 | /* 0x61 PMSCAN_UP */ , VK_UP_W, VK_UP_W, TRUE
|
|---|
| 112 | /* 0x62 PMSCAN_PAGEUP */ , VK_PRIOR_W, VK_PRIOR_W, TRUE
|
|---|
| 113 | /* 0x63 PMSCAN_LEFT */ , VK_LEFT_W, VK_LEFT_W, TRUE
|
|---|
| 114 | /* 0x64 PMSCAN_RIGHT */ , VK_RIGHT_W, VK_RIGHT_W, TRUE
|
|---|
| 115 | /* 0x65 PMSCAN_END */ , VK_END_W, VK_END_W, TRUE
|
|---|
| 116 | /* 0x66 PMSCAN_DOWN */ , VK_DOWN_W, VK_DOWN_W, TRUE
|
|---|
| 117 | /* 0x67 PMSCAN_PAGEDOWN */ , VK_NEXT_W, VK_NEXT_W, TRUE
|
|---|
| 118 | /* 0x68 PMSCAN_INSERT */ , VK_INSERT_W, VK_INSERT_W, TRUE
|
|---|
| 119 | /* 0x69 PMSCAN_DELETE */ , VK_DELETE_W, VK_DELETE_W, TRUE
|
|---|
| 120 | /* 0x6A PMSCAN_F23 */ , VK_F23_W, VK_F23_W, FALSE
|
|---|
| 121 | /* 0x6B PMSCAN_F24 */ , VK_F24_W, VK_F24_W, FALSE
|
|---|
| 122 | /* 0x6C PMSCAN_SYSMEM */ , 0x00, 0x00, FALSE
|
|---|
| 123 | /* 0x6D PMSCAN_ERASEEOF */ , VK_EREOF_W, VK_EREOF_W, FALSE
|
|---|
| 124 | /* 0x6E PMSCAN_BREAK */ , VK_CANCEL_W, VK_CANCEL_W, TRUE
|
|---|
| 125 | /* 0x6F PMSCAN_MOVEWIN */ , 0x00, 0x00, FALSE
|
|---|
| 126 | /* 0x70 PMSCAN_NLS3 */ , 0x00, 0x00, FALSE
|
|---|
| 127 | /* 0x71 PMSCAN_HELP */ , VK_HELP_W, VK_HELP_W, FALSE
|
|---|
| 128 | /* 0x72 PMSCAN_TASKMAN */ , 0x00, 0x00, FALSE
|
|---|
| 129 | /* 0x73 PMSCAN_JEXTRA */ , VK_FFC1_W, VK_FFC1_W, FALSE
|
|---|
| 130 | /* 0x73 PMSCAN_B11 , 0x00, 0x00, FALSE */
|
|---|
| 131 | /* 0x74 PMSCAN_JUMP */ , 0x00, 0x00, FALSE
|
|---|
| 132 | /* 0x75 PMSCAN_MINWIN */ , 0x00, 0x00, FALSE
|
|---|
| 133 | /* 0x76 PMSCAN_CLEAR */ , 0x00, 0x00, FALSE
|
|---|
| 134 | /* 0x77 PMSCAN_77 */ , 0x00, 0x00, FALSE
|
|---|
| 135 | /* 0x78 PMSCAN_78 */ , 0x00, 0x00, FALSE
|
|---|
| 136 | /* 0x79 PMSCAN_NLS2 */ , 0x00, 0x00, FALSE
|
|---|
| 137 | /* 0x7a PMSCAN_SIZE */ , 0x00, 0x00, FALSE
|
|---|
| 138 | /* 0x7b PMSCAN_NLS1 */ , 0x00, 0x00, FALSE
|
|---|
| 139 | /* 0x7c PMSCAN_APPLICATION */ , VK_APPS_W, VK_APPS_W, FALSE
|
|---|
| 140 | /* 0x7d PMSCAN_YEN */ , VK_YEN_W, VK_YEN_W, FALSE
|
|---|
| 141 | /* 0x7d PMSCAN_E13 , 0x00, 0x00, FALSE */
|
|---|
| 142 | /* 0x7e PMSCAN_WINLEFT */ , VK_LWIN_W, VK_LWIN_W, FALSE
|
|---|
| 143 | /* 0x7f PMSCAN_WINRIGHT */ , VK_RWIN_W, VK_RWIN_W, FALSE
|
|---|
| 144 | /* 0x80 PMSCAN_PA1 */ , VK_PA1_W, VK_PA1_W, FALSE
|
|---|
| 145 | /* 0x81 PMSCAN_F13 */ , VK_F13_W, VK_F13_W, FALSE
|
|---|
| 146 | /* 0x82 PMSCAN_F14 */ , VK_F14_W, VK_F14_W, FALSE
|
|---|
| 147 | /* 0x83 PMSCAN_F15 */ , VK_F15_W, VK_F15_W, FALSE
|
|---|
| 148 | /* 0x84 PMSCAN_PA2 */ , 0x00, 0x00, FALSE
|
|---|
| 149 | /* 0x85 PMSCAN_PA3 */ , 0x00, 0x00, FALSE
|
|---|
| 150 | /* 0x86 PMSCAN_SPACEBREAK */ , 0x00, 0x00, FALSE
|
|---|
| 151 | /* 0x87 PMSCAN_TABRIGHT */ , 0x00, 0x00, FALSE
|
|---|
| 152 | /* 0x88 PMSCAN_NOOP */ , 0x00, 0x00, FALSE
|
|---|
| 153 | /* 0x89 PMSCAN_F16 */ , VK_F16_W, VK_F16_W, FALSE
|
|---|
| 154 | /* 0x8a PMSCAN_F17 */ , VK_F17_W, VK_F17_W, FALSE
|
|---|
| 155 | /* 0x8b PMSCAN_F18 */ , VK_F18_W, VK_F18_W, FALSE
|
|---|
| 156 | /* 0x8c PMSCAN_F19 */ , VK_F19_W, VK_F19_W, FALSE
|
|---|
| 157 | /* 0x8d PMSCAN_F20 */ , VK_F20_W, VK_F20_W, FALSE
|
|---|
| 158 | /* 0x8e PMSCAN_F21 */ , VK_F21_W, VK_F21_W, FALSE
|
|---|
| 159 | /* 0x8f PMSCAN_F22 */ , VK_F22_W, VK_F22_W, FALSE
|
|---|
| 160 | /* 0x92 */ , 0x00, 0x00, FALSE
|
|---|
| 161 | /* 0x93 */ , 0x00, 0x00, FALSE
|
|---|
| 162 | /* 0x94 */ , 0x00, 0x00, FALSE
|
|---|
| 163 | /* 0x95 */ , 0x00, 0x00, FALSE
|
|---|
| 164 | /* 0x96 */ , 0x00, 0x00, FALSE
|
|---|
| 165 | /* 0x97 */ , 0x00, 0x00, FALSE
|
|---|
| 166 | /* 0x98 */ , 0x00, 0x00, FALSE
|
|---|
| 167 | /* 0x99 */ , 0x00, 0x00, FALSE
|
|---|
| 168 | /* 0x9A */ , 0x00, 0x00, FALSE
|
|---|
| 169 | /* 0x9B */ , 0x00, 0x00, FALSE
|
|---|
| 170 | /* 0x9C */ , 0x00, 0x00, FALSE
|
|---|
| 171 | /* 0x9D */ , 0x00, 0x00, FALSE
|
|---|
| 172 | /* 0x9E */ , 0x00, 0x00, FALSE
|
|---|
| 173 | /* 0x9F */ , 0x00, 0x00, FALSE
|
|---|
| 174 | /* 0xA0 */ , 0x00, 0x00, FALSE
|
|---|
| 175 | /* 0xA1 */ , 0x00, 0x00, FALSE
|
|---|
| 176 | /* 0xA2 */ , 0x00, 0x00, FALSE
|
|---|
| 177 | /* 0xA3 */ , 0x00, 0x00, FALSE
|
|---|
| 178 | /* 0xA4 */ , 0x00, 0x00, FALSE
|
|---|
| 179 | /* 0xA5 */ , 0x00, 0x00, FALSE
|
|---|
| 180 | /* 0xA6 */ , 0x00, 0x00, FALSE
|
|---|
| 181 | /* 0xA7 */ , 0x00, 0x00, FALSE
|
|---|
| 182 | /* 0xA8 */ , 0x00, 0x00, FALSE
|
|---|
| 183 | /* 0xA9 */ , 0x00, 0x00, FALSE
|
|---|
| 184 | /* 0xAA */ , 0x00, 0x00, FALSE
|
|---|
| 185 | /* 0xAB */ , 0x00, 0x00, FALSE
|
|---|
| 186 | /* 0xAC */ , 0x00, 0x00, FALSE
|
|---|
| 187 | /* 0xAD */ , 0x00, 0x00, FALSE
|
|---|
| 188 | /* 0xAE */ , 0x00, 0x00, FALSE
|
|---|
| 189 | /* 0xAF */ , 0x00, 0x00, FALSE
|
|---|
| 190 | /* 0xB0 */ , 0x00, 0x00, FALSE
|
|---|
| 191 | /* 0xB1 */ , 0x00, 0x00, FALSE
|
|---|
| 192 | /* 0xB2 */ , 0x00, 0x00, FALSE
|
|---|
| 193 | /* 0xB3 */ , 0x00, 0x00, FALSE
|
|---|
| 194 | /* 0xB4 */ , 0x00, 0x00, FALSE
|
|---|
| 195 | /* 0xB5 */ , 0x00, 0x00, FALSE
|
|---|
| 196 | /* 0xB6 */ , 0x00, 0x00, FALSE
|
|---|
| 197 | /* 0xB7 */ , 0x00, 0x00, FALSE
|
|---|
| 198 | /* 0xB8 */ , 0x00, 0x00, FALSE
|
|---|
| 199 | /* 0xB9 */ , 0x00, 0x00, FALSE
|
|---|
| 200 | /* 0xBA */ , 0x00, 0x00, FALSE
|
|---|
| 201 | /* 0xBB */ , 0x00, 0x00, FALSE
|
|---|
| 202 | /* 0xBC */ , 0x00, 0x00, FALSE
|
|---|
| 203 | /* 0xBD */ , 0x00, 0x00, FALSE
|
|---|
| 204 | /* 0xBE */ , 0x00, 0x00, FALSE
|
|---|
| 205 | /* 0xBF */ , 0x00, 0x00, FALSE
|
|---|
| 206 | /* 0xC0 */ , 0x00, 0x00, FALSE
|
|---|
| 207 | /* 0xC1 */ , 0x00, 0x00, FALSE
|
|---|
| 208 | /* 0xC2 */ , 0x00, 0x00, FALSE
|
|---|
| 209 | /* 0xC3 */ , 0x00, 0x00, FALSE
|
|---|
| 210 | /* 0xC4 */ , 0x00, 0x00, FALSE
|
|---|
| 211 | /* 0xC5 */ , 0x00, 0x00, FALSE
|
|---|
| 212 | /* 0xC6 */ , 0x00, 0x00, FALSE
|
|---|
| 213 | /* 0xC7 */ , 0x00, 0x00, FALSE
|
|---|
| 214 | /* 0xC8 */ , 0x00, 0x00, FALSE
|
|---|
| 215 | /* 0xC9 */ , 0x00, 0x00, FALSE
|
|---|
| 216 | /* 0xCA */ , 0x00, 0x00, FALSE
|
|---|
| 217 | /* 0xCB */ , 0x00, 0x00, FALSE
|
|---|
| 218 | /* 0xCC */ , 0x00, 0x00, FALSE
|
|---|
| 219 | /* 0xCD */ , 0x00, 0x00, FALSE
|
|---|
| 220 | /* 0xCE */ , 0x00, 0x00, FALSE
|
|---|
| 221 | /* 0xCF */ , 0x00, 0x00, FALSE
|
|---|
| 222 | /* 0xD0 */ , 0x00, 0x00, FALSE
|
|---|
| 223 | /* 0xD1 */ , 0x00, 0x00, FALSE
|
|---|
| 224 | /* 0xD2 */ , 0x00, 0x00, FALSE
|
|---|
| 225 | /* 0xD3 */ , 0x00, 0x00, FALSE
|
|---|
| 226 | /* 0xD4 */ , 0x00, 0x00, FALSE
|
|---|
| 227 | /* 0xD5 */ , 0x00, 0x00, FALSE
|
|---|
| 228 | /* 0xD6 */ , 0x00, 0x00, FALSE
|
|---|
| 229 | /* 0xD7 */ , 0x00, 0x00, FALSE
|
|---|
| 230 | /* 0xD8 */ , 0x00, 0x00, FALSE
|
|---|
| 231 | /* 0xD9 */ , 0x00, 0x00, FALSE
|
|---|
| 232 | /* 0xDA */ , 0x00, 0x00, FALSE
|
|---|
| 233 | /* 0xDB */ , 0x00, 0x00, FALSE
|
|---|
| 234 | /* 0xDC */ , 0x00, 0x00, FALSE
|
|---|
| 235 | /* 0xDD */ , 0x00, 0x00, FALSE
|
|---|
| 236 | /* 0xDE */ , 0x00, 0x00, FALSE
|
|---|
| 237 | /* 0xDF */ , 0x00, 0x00, FALSE
|
|---|
| 238 | /* 0xE0 */ , 0x00, 0x00, FALSE
|
|---|
| 239 | /* 0xE1 */ , 0x00, 0x00, FALSE
|
|---|
| 240 | /* 0xE2 */ , 0x00, 0x00, FALSE
|
|---|
| 241 | /* 0xE3 */ , 0x00, 0x00, FALSE
|
|---|
| 242 | /* 0xE4 */ , 0x00, 0x00, FALSE
|
|---|
| 243 | /* 0xE5 */ , 0x00, 0x00, FALSE
|
|---|
| 244 | /* 0xE6 */ , 0x00, 0x00, FALSE
|
|---|
| 245 | /* 0xE7 */ , 0x00, 0x00, FALSE
|
|---|
| 246 | /* 0xE8 */ , 0x00, 0x00, FALSE
|
|---|
| 247 | /* 0xE9 */ , 0x00, 0x00, FALSE
|
|---|
| 248 | /* 0xEA */ , 0x00, 0x00, FALSE
|
|---|
| 249 | /* 0xEB */ , 0x00, 0x00, FALSE
|
|---|
| 250 | /* 0xEC */ , 0x00, 0x00, FALSE
|
|---|
| 251 | /* 0xED */ , 0x00, 0x00, FALSE
|
|---|
| 252 | /* 0xEE */ , 0x00, 0x00, FALSE
|
|---|
| 253 | /* 0xEF */ , 0x00, 0x00, FALSE
|
|---|
| 254 | /* 0xF0 */ , 0x00, 0x00, FALSE
|
|---|
| 255 | /* 0xF1 */ , 0x00, 0x00, FALSE
|
|---|
| 256 | /* 0xF2 */ , 0x00, 0x00, FALSE
|
|---|
| 257 | /* 0xF3 */ , 0x00, 0x00, FALSE
|
|---|
| 258 | /* 0xF4 */ , 0x00, 0x00, FALSE
|
|---|
| 259 | /* 0xF5 */ , 0x00, 0x00, FALSE
|
|---|
| 260 | /* 0xF6 */ , 0x00, 0x00, FALSE
|
|---|
| 261 | /* 0xF7 */ , 0x00, 0x00, FALSE
|
|---|
| 262 | /* 0xF8 */ , 0x00, 0x00, FALSE
|
|---|
| 263 | /* 0xF9 */ , 0x00, 0x00, FALSE
|
|---|
| 264 | /* 0xFA */ , 0x00, 0x00, FALSE
|
|---|
| 265 | /* 0xFB */ , 0x00, 0x00, FALSE
|
|---|
| 266 | /* 0xFC */ , 0x00, 0x00, FALSE
|
|---|
| 267 | /* 0xFD */ , 0x00, 0x00, FALSE
|
|---|
| 268 | /* 0xFE */ , 0x00, 0x00, FALSE
|
|---|
| 269 | /* 0xFF */ , 0x00, 0x00, FALSE
|
|---|
| 270 | };
|
|---|
| 271 |
|
|---|
| 272 | /***********************************************************/
|
|---|
| 273 | /* Table to translate from a Windows vkey to a PM scancode */
|
|---|
| 274 | /***********************************************************/
|
|---|
| 275 | BYTE abWinVKeyToPMScan[256] =
|
|---|
| 276 | /****************************************/
|
|---|
| 277 | /* Vkey * Scancode */
|
|---|
| 278 | /****************************************/
|
|---|
| 279 | /* 0x00 */ { 0x00
|
|---|
| 280 | /* 0x01 VK_LBUTTON_W */ , 0x00
|
|---|
| 281 | /* 0x02 VK_RBUTTON_W */ , 0x00
|
|---|
| 282 | /* 0x03 VK_CANCEL_W */ , PMSCAN_BREAK
|
|---|
| 283 | /* 0x04 VK_MBUTTON_W */ , 0x00
|
|---|
| 284 | /* 0x05 */ , 0x00
|
|---|
| 285 | /* 0x06 */ , 0x00
|
|---|
| 286 | /* 0x07 */ , 0x00
|
|---|
| 287 | /* 0x08 VK_BACK_W */ , PMSCAN_BACKSPACE
|
|---|
| 288 | /* 0x09 VK_TAB_W */ , PMSCAN_TAB
|
|---|
| 289 | /* 0x0A */ , 0x00
|
|---|
| 290 | /* 0x0B */ , 0x00
|
|---|
| 291 | /* 0x0C VK_CLEAR_W */ , PMSCAN_PAD5
|
|---|
| 292 | /* 0x0D VK_RETURN_W */ , PMSCAN_ENTER
|
|---|
| 293 | /* 0x0E */ , 0x00
|
|---|
| 294 | /* 0x0F */ , 0x00
|
|---|
| 295 | /* 0x10 VK_SHIFT_W */ , PMSCAN_SHIFTLEFT
|
|---|
| 296 | /* 0x11 VK_CONTROL_W */ , PMSCAN_CTRLLEFT
|
|---|
| 297 | /* 0x12 VK_MENU_W */ , PMSCAN_ALTLEFT
|
|---|
| 298 | /* 0x13 VK_PAUSE_W */ , PMSCAN_PAUSE
|
|---|
| 299 | /* 0x14 VK_CAPITAL_W */ , PMSCAN_CAPSLOCK
|
|---|
| 300 | /* 0x15 */ , 0x00
|
|---|
| 301 | /* 0x16 */ , 0x00
|
|---|
| 302 | /* 0x17 */ , 0x00
|
|---|
| 303 | /* 0x18 */ , 0x00
|
|---|
| 304 | /* 0x19 */ , 0x00
|
|---|
| 305 | /* 0x1A */ , 0x00
|
|---|
| 306 | /* 0x1B VK_ESCAPE_W */ , PMSCAN_ESC
|
|---|
| 307 | /* 0x1C */ , 0x00
|
|---|
| 308 | /* 0x1D */ , 0x00
|
|---|
| 309 | /* 0x1E */ , 0x00
|
|---|
| 310 | /* 0x1F */ , 0x00
|
|---|
| 311 | /* 0x20 VK_SPACE_W */ , PMSCAN_SPACE
|
|---|
| 312 | /* 0x21 VK_PRIOR_W */ , PMSCAN_PAGEUP
|
|---|
| 313 | /* 0x22 VK_NEXT_W */ , PMSCAN_PAGEDOWN
|
|---|
| 314 | /* 0x23 VK_END_W */ , PMSCAN_END
|
|---|
| 315 | /* 0x24 VK_HOME_W */ , PMSCAN_HOME
|
|---|
| 316 | /* 0x25 VK_LEFT_W */ , PMSCAN_LEFT
|
|---|
| 317 | /* 0x26 VK_UP_W */ , PMSCAN_UP
|
|---|
| 318 | /* 0x27 VK_RIGHT_W */ , PMSCAN_RIGHT
|
|---|
| 319 | /* 0x28 VK_DOWN_W */ , PMSCAN_DOWN
|
|---|
| 320 | /* 0x29 VK_SELECT_W */ , 0x00
|
|---|
| 321 | /* 0x2A VK_PRINT_W */ , PMSCAN_PRINT
|
|---|
| 322 | /* 0x2B VK_EXECUTE_W */ , 0x00
|
|---|
| 323 | /* 0x2C VK_SNAPSHOT_W */ , 0x00
|
|---|
| 324 | /* 0x2D VK_INSERT_W */ , PMSCAN_INSERT
|
|---|
| 325 | /* 0x2E VK_DELETE_W */ , PMSCAN_DELETE
|
|---|
| 326 | /* 0x2F VK_HELP_W */ , PMSCAN_HELP
|
|---|
| 327 | /* 0x30 VK_0_W */ , PMSCAN_ZERO
|
|---|
| 328 | /* 0x31 VK_1_W */ , PMSCAN_ONE
|
|---|
| 329 | /* 0x32 VK_2_W */ , PMSCAN_TWO
|
|---|
| 330 | /* 0x33 VK_3_W */ , PMSCAN_THREE
|
|---|
| 331 | /* 0x34 VK_4_W */ , PMSCAN_FOUR
|
|---|
| 332 | /* 0x35 VK_5_W */ , PMSCAN_FIVE
|
|---|
| 333 | /* 0x36 VK_6_W */ , PMSCAN_SIX
|
|---|
| 334 | /* 0x37 VK_7_W */ , PMSCAN_SEVEN
|
|---|
| 335 | /* 0x38 VK_8_W */ , PMSCAN_EIGHT
|
|---|
| 336 | /* 0x39 VK_9_W */ , PMSCAN_NINE
|
|---|
| 337 | /* 0x3A */ , 0x00
|
|---|
| 338 | /* 0x3B */ , 0x00
|
|---|
| 339 | /* 0x3C */ , 0x00
|
|---|
| 340 | /* 0x3D */ , 0x00
|
|---|
| 341 | /* 0x3E */ , 0x00
|
|---|
| 342 | /* 0x3F */ , 0x00
|
|---|
| 343 | /* 0x40 */ , 0x00
|
|---|
| 344 | /* 0x41 VK_A_W */ , PMSCAN_A
|
|---|
| 345 | /* 0x42 VK_B_W */ , PMSCAN_B
|
|---|
| 346 | /* 0x43 VK_C_W */ , PMSCAN_C
|
|---|
| 347 | /* 0x44 VK_D_W */ , PMSCAN_D
|
|---|
| 348 | /* 0x45 VK_E_W */ , PMSCAN_E
|
|---|
| 349 | /* 0x46 VK_F_W */ , PMSCAN_F
|
|---|
| 350 | /* 0x47 VK_G_W */ , PMSCAN_G
|
|---|
| 351 | /* 0x48 VK_H_W */ , PMSCAN_H
|
|---|
| 352 | /* 0x49 VK_I_W */ , PMSCAN_I
|
|---|
| 353 | /* 0x4A VK_J_W */ , PMSCAN_J
|
|---|
| 354 | /* 0x4B VK_K_W */ , PMSCAN_K
|
|---|
| 355 | /* 0x4C VK_L_W */ , PMSCAN_L
|
|---|
| 356 | /* 0x4D VK_M_W */ , PMSCAN_M
|
|---|
| 357 | /* 0x4E VK_N_W */ , PMSCAN_N
|
|---|
| 358 | /* 0x4F VK_O_W */ , PMSCAN_O
|
|---|
| 359 | /* 0x50 VK_P_W */ , PMSCAN_P
|
|---|
| 360 | /* 0x51 VK_Q_W */ , PMSCAN_Q
|
|---|
| 361 | /* 0x52 VK_R_W */ , PMSCAN_R
|
|---|
| 362 | /* 0x53 VK_S_W */ , PMSCAN_S
|
|---|
| 363 | /* 0x54 VK_T_W */ , PMSCAN_T
|
|---|
| 364 | /* 0x55 VK_U_W */ , PMSCAN_U
|
|---|
| 365 | /* 0x56 VK_V_W */ , PMSCAN_V
|
|---|
| 366 | /* 0x57 VK_W_W */ , PMSCAN_W
|
|---|
| 367 | /* 0x58 VK_X_W */ , PMSCAN_X
|
|---|
| 368 | /* 0x59 VK_Y_W */ , PMSCAN_Y
|
|---|
| 369 | /* 0x5A VK_Z_W */ , PMSCAN_Z
|
|---|
| 370 | /* 0x5B VK_LWIN_W */ , PMSCAN_WINLEFT
|
|---|
| 371 | /* 0x5C VK_RWIN_W */ , PMSCAN_WINRIGHT
|
|---|
| 372 | /* 0x5D VK_APPS_W */ , PMSCAN_APPLICATION
|
|---|
| 373 | /* 0x5E */ , 0x00
|
|---|
| 374 | /* 0x5F */ , 0x00
|
|---|
| 375 | /* 0x60 VK_NUMPAD0_W */ , PMSCAN_PAD0
|
|---|
| 376 | /* 0x61 VK_NUMPAD1_W */ , PMSCAN_PAD1
|
|---|
| 377 | /* 0x62 VK_NUMPAD2_W */ , PMSCAN_PAD2
|
|---|
| 378 | /* 0x63 VK_NUMPAD3_W */ , PMSCAN_PAD3
|
|---|
| 379 | /* 0x64 VK_NUMPAD4_W */ , PMSCAN_PAD4
|
|---|
| 380 | /* 0x65 VK_NUMPAD5_W */ , PMSCAN_PAD5
|
|---|
| 381 | /* 0x66 VK_NUMPAD6_W */ , PMSCAN_PAD6
|
|---|
| 382 | /* 0x67 VK_NUMPAD7_W */ , PMSCAN_PAD7
|
|---|
| 383 | /* 0x68 VK_NUMPAD8_W */ , PMSCAN_PAD8
|
|---|
| 384 | /* 0x69 VK_NUMPAD9_W */ , PMSCAN_PAD9
|
|---|
| 385 | /* 0x6A VK_MULTIPLY_W */ , PMSCAN_PADASTERISK
|
|---|
| 386 | /* 0x6B VK_ADD_W */ , PMSCAN_PADPLUS
|
|---|
| 387 | /* 0x6C VK_SEPARATOR_W */ , 0x00
|
|---|
| 388 | /* 0x6D VK_SUBTRACT_W */ , PMSCAN_PADMINUS
|
|---|
| 389 | /* 0x6E VK_DECIMAL_W */ , PMSCAN_PADPERIOD
|
|---|
| 390 | /* 0x6F VK_DIVIDE_W */ , PMSCAN_PADSLASH
|
|---|
| 391 | /* 0x70 VK_F1_W */ , PMSCAN_F1
|
|---|
| 392 | /* 0x71 VK_F2_W */ , PMSCAN_F2
|
|---|
| 393 | /* 0x72 VK_F3_W */ , PMSCAN_F3
|
|---|
| 394 | /* 0x73 VK_F4_W */ , PMSCAN_F4
|
|---|
| 395 | /* 0x74 VK_F5_W */ , PMSCAN_F5
|
|---|
| 396 | /* 0x75 VK_F6_W */ , PMSCAN_F6
|
|---|
| 397 | /* 0x76 VK_F7_W */ , PMSCAN_F7
|
|---|
| 398 | /* 0x77 VK_F8_W */ , PMSCAN_F8
|
|---|
| 399 | /* 0x78 VK_F9_W */ , PMSCAN_F9
|
|---|
| 400 | /* 0x79 VK_F10_W */ , PMSCAN_F10
|
|---|
| 401 | /* 0x7A VK_F11_W */ , PMSCAN_F11
|
|---|
| 402 | /* 0x7B VK_F12_W */ , PMSCAN_F12
|
|---|
| 403 | /* 0x7C VK_F13_W */ , PMSCAN_F13
|
|---|
| 404 | /* 0x7D VK_F14_W */ , PMSCAN_F14
|
|---|
| 405 | /* 0x7E VK_F15_W */ , PMSCAN_F15
|
|---|
| 406 | /* 0x7F VK_F16_W */ , PMSCAN_F16
|
|---|
| 407 | /* 0x80 VK_F17_W */ , PMSCAN_F17
|
|---|
| 408 | /* 0x81 VK_F18_W */ , PMSCAN_F18
|
|---|
| 409 | /* 0x82 VK_F19_W */ , PMSCAN_F19
|
|---|
| 410 | /* 0x83 VK_F20_W */ , PMSCAN_F20
|
|---|
| 411 | /* 0x84 VK_F21_W */ , PMSCAN_F21
|
|---|
| 412 | /* 0x85 VK_F22_W */ , PMSCAN_F22
|
|---|
| 413 | /* 0x86 VK_F23_W */ , PMSCAN_F23
|
|---|
| 414 | /* 0x87 VK_F24_W */ , PMSCAN_F24
|
|---|
| 415 | /* 0x88 */ , 0x00
|
|---|
| 416 | /* 0x89 */ , 0x00
|
|---|
| 417 | /* 0x8A */ , 0x00
|
|---|
| 418 | /* 0x8B */ , 0x00
|
|---|
| 419 | /* 0x8C */ , 0x00
|
|---|
| 420 | /* 0x8D */ , 0x00
|
|---|
| 421 | /* 0x8E */ , 0x00
|
|---|
| 422 | /* 0x8F */ , 0x00
|
|---|
| 423 | /* 0x90 VK_NUMLOCK_W */ , PMSCAN_NUMLOCK
|
|---|
| 424 | /* 0x91 VK_SCROLL_W */ , PMSCAN_SCROLLLOCK
|
|---|
| 425 | /* 0x92 */ , 0x00
|
|---|
| 426 | /* 0x93 */ , 0x00
|
|---|
| 427 | /* 0x94 */ , 0x00
|
|---|
| 428 | /* 0x95 */ , 0x00
|
|---|
| 429 | /* 0x96 */ , 0x00
|
|---|
| 430 | /* 0x97 */ , 0x00
|
|---|
| 431 | /* 0x98 */ , 0x00
|
|---|
| 432 | /* 0x99 */ , 0x00
|
|---|
| 433 | /* 0x9A */ , 0x00
|
|---|
| 434 | /* 0x9B */ , 0x00
|
|---|
| 435 | /* 0x9C */ , 0x00
|
|---|
| 436 | /* 0x9D */ , 0x00
|
|---|
| 437 | /* 0x9E */ , 0x00
|
|---|
| 438 | /* 0x9F */ , 0x00
|
|---|
| 439 | /* 0xA0 VK_LSHIFT_W */ , PMSCAN_SHIFTLEFT
|
|---|
| 440 | /* 0xA1 VK_RSHIFT_W */ , PMSCAN_SHIFTRIGHT
|
|---|
| 441 | /* 0xA2 VK_LCONTROL_W */ , PMSCAN_CTRLLEFT
|
|---|
| 442 | /* 0xA3 VK_RCONTROL_W */ , PMSCAN_CTRLRIGHT
|
|---|
| 443 | /* 0xA4 VK_LMENU_W */ , PMSCAN_ALTLEFT
|
|---|
| 444 | /* 0xA5 VK_RMENU_W */ , PMSCAN_ALTRIGHT
|
|---|
| 445 | /* 0xA6 */ , 0x00
|
|---|
| 446 | /* 0xA7 */ , 0x00
|
|---|
| 447 | /* 0xA8 */ , 0x00
|
|---|
| 448 | /* 0xA9 */ , 0x00
|
|---|
| 449 | /* 0xAA */ , 0x00
|
|---|
| 450 | /* 0xAB */ , 0x00
|
|---|
| 451 | /* 0xAC */ , 0x00
|
|---|
| 452 | /* 0xAD */ , 0x00
|
|---|
| 453 | /* 0xAE */ , 0x00
|
|---|
| 454 | /* 0xAF */ , 0x00
|
|---|
| 455 | /* 0xB0 */ , 0x00
|
|---|
| 456 | /* 0xB1 */ , 0x00
|
|---|
| 457 | /* 0xB2 */ , 0x00
|
|---|
| 458 | /* 0xB3 */ , 0x00
|
|---|
| 459 | /* 0xB4 */ , 0x00
|
|---|
| 460 | /* 0xB5 */ , 0x00
|
|---|
| 461 | /* 0xB6 */ , 0x00
|
|---|
| 462 | /* 0xB7 */ , 0x00
|
|---|
| 463 | /* 0xB8 */ , 0x00
|
|---|
| 464 | /* 0xB9 */ , 0x00
|
|---|
| 465 | /* 0xBA VK_SEMICOLON_W */ , PMSCAN_SEMICOLON
|
|---|
| 466 | /* 0xBB VK_EQUAL_W */ , PMSCAN_EQUAL
|
|---|
| 467 | /* 0xBC VK_COMMA_W */ , PMSCAN_COMMA
|
|---|
| 468 | /* 0xBD VK_HYPHEN_W */ , PMSCAN_HYPHEN
|
|---|
| 469 | /* 0xBE VK_PERIOD_W */ , PMSCAN_PERIOD
|
|---|
| 470 | /* 0xBF VK_SLASH_W */ , PMSCAN_SLASH
|
|---|
| 471 | /* 0xC0 VK_GRAVE_W */ , PMSCAN_GRAVE
|
|---|
| 472 | /* 0xC1 VK_FFC1_W */ , PMSCAN_JEXTRA
|
|---|
| 473 | /* 0xC2 VK_YEN_W */ , PMSCAN_YEN
|
|---|
| 474 | /* 0xC3 */ , 0x00
|
|---|
| 475 | /* 0xC4 */ , 0x00
|
|---|
| 476 | /* 0xC5 */ , 0x00
|
|---|
| 477 | /* 0xC6 */ , 0x00
|
|---|
| 478 | /* 0xC7 */ , 0x00
|
|---|
| 479 | /* 0xC8 */ , 0x00
|
|---|
| 480 | /* 0xC9 */ , 0x00
|
|---|
| 481 | /* 0xCA */ , 0x00
|
|---|
| 482 | /* 0xCB */ , 0x00
|
|---|
| 483 | /* 0xCC */ , 0x00
|
|---|
| 484 | /* 0xCD */ , 0x00
|
|---|
| 485 | /* 0xCE */ , 0x00
|
|---|
| 486 | /* 0xCF */ , 0x00
|
|---|
| 487 | /* 0xD0 */ , 0x00
|
|---|
| 488 | /* 0xD1 */ , 0x00
|
|---|
| 489 | /* 0xD2 */ , 0x00
|
|---|
| 490 | /* 0xD3 */ , 0x00
|
|---|
| 491 | /* 0xD4 */ , 0x00
|
|---|
| 492 | /* 0xD5 */ , 0x00
|
|---|
| 493 | /* 0xD6 */ , 0x00
|
|---|
| 494 | /* 0xD7 */ , 0x00
|
|---|
| 495 | /* 0xD8 */ , 0x00
|
|---|
| 496 | /* 0xD9 */ , 0x00
|
|---|
| 497 | /* 0xDA */ , 0x00
|
|---|
| 498 | /* 0xDB VK_BRACKETLEFT_W */ , PMSCAN_BRACKETLEFT
|
|---|
| 499 | /* 0xDC VK_BACKSLASH_W */ , PMSCAN_BACKSLASH
|
|---|
| 500 | /* 0xDD VK_BRACKETRIGHT_W */ , PMSCAN_BRACKETRIGHT
|
|---|
| 501 | /* 0xDE VK_QUOTESINGLE_W */ , PMSCAN_QUOTESINGLE
|
|---|
| 502 | /* 0xDF */ , 0x00
|
|---|
| 503 | /* 0xE0 */ , 0x00
|
|---|
| 504 | /* 0xE1 */ , 0x00
|
|---|
| 505 | /* 0xE2 VK_EXTRA_W */ , PMSCAN_EXTRA
|
|---|
| 506 | /* 0xE3 */ , 0x00
|
|---|
| 507 | /* 0xE4 */ , 0x00
|
|---|
| 508 | /* 0xE5 */ , 0x00
|
|---|
| 509 | /* 0xE6 */ , 0x00
|
|---|
| 510 | /* 0xE7 */ , 0x00
|
|---|
| 511 | /* 0xE8 */ , 0x00
|
|---|
| 512 | /* 0xE9 */ , 0x00
|
|---|
| 513 | /* 0xEA */ , 0x00
|
|---|
| 514 | /* 0xEB */ , 0x00
|
|---|
| 515 | /* 0xEC */ , 0x00
|
|---|
| 516 | /* 0xED */ , 0x00
|
|---|
| 517 | /* 0xEE */ , 0x00
|
|---|
| 518 | /* 0xEF */ , 0x00
|
|---|
| 519 | /* 0xF0 */ , 0x00
|
|---|
| 520 | /* 0xF1 */ , 0x00
|
|---|
| 521 | /* 0xF2 */ , 0x00
|
|---|
| 522 | /* 0xF3 */ , 0x00
|
|---|
| 523 | /* 0xF4 */ , 0x00
|
|---|
| 524 | /* 0xF5 */ , 0x00
|
|---|
| 525 | /* 0xF6 VK_ATTN_W */ , 0x00
|
|---|
| 526 | /* 0xF7 VK_CRSEL_W */ , 0x00
|
|---|
| 527 | /* 0xF8 VK_EXSEL_W */ , 0x00
|
|---|
| 528 | /* 0xF9 VK_EREOF_W */ , PMSCAN_ERASEEOF
|
|---|
| 529 | /* 0xFA VK_PLAY_W */ , 0x00
|
|---|
| 530 | /* 0xFB VK_ZOOM_W */ , 0x00
|
|---|
| 531 | /* 0xFC VK_NONAME_W */ , 0x00
|
|---|
| 532 | /* 0xFD VK_PA1_W */ , PMSCAN_PA1
|
|---|
| 533 | /* 0xFE VK_OEM_CLEAR_W */ , 0x00
|
|---|
| 534 | /* 0xFF */ , 0x00
|
|---|
| 535 | };
|
|---|
| 536 |
|
|---|
| 537 | /* Virtual key codes */
|
|---|
| 538 | #define VK_LBUTTON 0x01
|
|---|
| 539 | #define VK_RBUTTON 0x02
|
|---|
| 540 | #define VK_CANCEL 0x03
|
|---|
| 541 | #define VK_MBUTTON 0x04
|
|---|
| 542 | /* 0x05-0x07 Undefined */
|
|---|
| 543 | #define VK_BACK 0x08
|
|---|
| 544 | #define VK_TAB 0x09
|
|---|
| 545 | /* 0x0A-0x0B Undefined */
|
|---|
| 546 | #define VK_CLEAR 0x0C
|
|---|
| 547 | #define VK_RETURN 0x0D
|
|---|
| 548 | /* 0x0E-0x0F Undefined */
|
|---|
| 549 | #define VK_SHIFT 0x10
|
|---|
| 550 | #define VK_CONTROL 0x11
|
|---|
| 551 | #define VK_MENU 0x12
|
|---|
| 552 | #define VK_PAUSE 0x13
|
|---|
| 553 | #define VK_CAPITAL 0x14
|
|---|
| 554 | /* 0x15-0x19 Reserved for Kanji systems */
|
|---|
| 555 | /* 0x1A Undefined */
|
|---|
| 556 | #define VK_ESCAPE 0x1B
|
|---|
| 557 | /* 0x1C-0x1F Reserved for Kanji systems */
|
|---|
| 558 | #define VK_SPACE 0x20
|
|---|
| 559 | #define VK_PRIOR 0x21
|
|---|
| 560 | #define VK_NEXT 0x22
|
|---|
| 561 | #define VK_END 0x23
|
|---|
| 562 | #define VK_HOME 0x24
|
|---|
| 563 | #define VK_LEFT 0x25
|
|---|
| 564 | #define VK_UP 0x26
|
|---|
| 565 | #define VK_RIGHT 0x27
|
|---|
| 566 | #define VK_DOWN 0x28
|
|---|
| 567 | #define VK_SELECT 0x29
|
|---|
| 568 | #define VK_PRINT 0x2A /* OEM specific in Windows 3.1 SDK */
|
|---|
| 569 | #define VK_EXECUTE 0x2B
|
|---|
| 570 | #define VK_SNAPSHOT 0x2C
|
|---|
| 571 | #define VK_INSERT 0x2D
|
|---|
| 572 | #define VK_DELETE 0x2E
|
|---|
| 573 | #define VK_HELP 0x2F
|
|---|
| 574 | #define VK_0 0x30
|
|---|
| 575 | #define VK_1 0x31
|
|---|
| 576 | #define VK_2 0x32
|
|---|
| 577 | #define VK_3 0x33
|
|---|
| 578 | #define VK_4 0x34
|
|---|
| 579 | #define VK_5 0x35
|
|---|
| 580 | #define VK_6 0x36
|
|---|
| 581 | #define VK_7 0x37
|
|---|
| 582 | #define VK_8 0x38
|
|---|
| 583 | #define VK_9 0x39
|
|---|
| 584 | /* 0x3A-0x40 Undefined */
|
|---|
| 585 | #define VK_A 0x41
|
|---|
| 586 | #define VK_B 0x42
|
|---|
| 587 | #define VK_C 0x43
|
|---|
| 588 | #define VK_D 0x44
|
|---|
| 589 | #define VK_E 0x45
|
|---|
| 590 | #define VK_F 0x46
|
|---|
| 591 | #define VK_G 0x47
|
|---|
| 592 | #define VK_H 0x48
|
|---|
| 593 | #define VK_I 0x49
|
|---|
| 594 | #define VK_J 0x4A
|
|---|
| 595 | #define VK_K 0x4B
|
|---|
| 596 | #define VK_L 0x4C
|
|---|
| 597 | #define VK_M 0x4D
|
|---|
| 598 | #define VK_N 0x4E
|
|---|
| 599 | #define VK_O 0x4F
|
|---|
| 600 | #define VK_P 0x50
|
|---|
| 601 | #define VK_Q 0x51
|
|---|
| 602 | #define VK_R 0x52
|
|---|
| 603 | #define VK_S 0x53
|
|---|
| 604 | #define VK_T 0x54
|
|---|
| 605 | #define VK_U 0x55
|
|---|
| 606 | #define VK_V 0x56
|
|---|
| 607 | #define VK_W 0x57
|
|---|
| 608 | #define VK_X 0x58
|
|---|
| 609 | #define VK_Y 0x59
|
|---|
| 610 | #define VK_Z 0x5A
|
|---|
| 611 |
|
|---|
| 612 | #define VK_LWIN 0x5B
|
|---|
| 613 | #define VK_RWIN 0x5C
|
|---|
| 614 | #define VK_APPS 0x5D
|
|---|
| 615 | /* 0x5E-0x5F Unassigned */
|
|---|
| 616 | #define VK_NUMPAD0 0x60
|
|---|
| 617 | #define VK_NUMPAD1 0x61
|
|---|
| 618 | #define VK_NUMPAD2 0x62
|
|---|
| 619 | #define VK_NUMPAD3 0x63
|
|---|
| 620 | #define VK_NUMPAD4 0x64
|
|---|
| 621 | #define VK_NUMPAD5 0x65
|
|---|
| 622 | #define VK_NUMPAD6 0x66
|
|---|
| 623 | #define VK_NUMPAD7 0x67
|
|---|
| 624 | #define VK_NUMPAD8 0x68
|
|---|
| 625 | #define VK_NUMPAD9 0x69
|
|---|
| 626 | #define VK_MULTIPLY 0x6A
|
|---|
| 627 | #define VK_ADD 0x6B
|
|---|
| 628 | #define VK_SEPARATOR 0x6C
|
|---|
| 629 | #define VK_SUBTRACT 0x6D
|
|---|
| 630 | #define VK_DECIMAL 0x6E
|
|---|
| 631 | #define VK_DIVIDE 0x6F
|
|---|
| 632 | #define VK_F1 0x70
|
|---|
| 633 | #define VK_F2 0x71
|
|---|
| 634 | #define VK_F3 0x72
|
|---|
| 635 | #define VK_F4 0x73
|
|---|
| 636 | #define VK_F5 0x74
|
|---|
| 637 | #define VK_F6 0x75
|
|---|
| 638 | #define VK_F7 0x76
|
|---|
| 639 | #define VK_F8 0x77
|
|---|
| 640 | #define VK_F9 0x78
|
|---|
| 641 | #define VK_F10 0x79
|
|---|
| 642 | #define VK_F11 0x7A
|
|---|
| 643 | #define VK_F12 0x7B
|
|---|
| 644 | #define VK_F13 0x7C
|
|---|
| 645 | #define VK_F14 0x7D
|
|---|
| 646 | #define VK_F15 0x7E
|
|---|
| 647 | #define VK_F16 0x7F
|
|---|
| 648 | #define VK_F17 0x80
|
|---|
| 649 | #define VK_F18 0x81
|
|---|
| 650 | #define VK_F19 0x82
|
|---|
| 651 | #define VK_F20 0x83
|
|---|
| 652 | #define VK_F21 0x84
|
|---|
| 653 | #define VK_F22 0x85
|
|---|
| 654 | #define VK_F23 0x86
|
|---|
| 655 | #define VK_F24 0x87
|
|---|
| 656 | /* 0x88-0x8F Unassigned */
|
|---|
| 657 | #define VK_NUMLOCK 0x90
|
|---|
| 658 | #define VK_SCROLL 0x91
|
|---|
| 659 | /* 0x92-0x9F Unassigned */
|
|---|
| 660 | /*
|
|---|
| 661 | * differencing between right and left shift/control/alt key.
|
|---|
| 662 | * Used only by GetAsyncKeyState() and GetKeyState().
|
|---|
| 663 | */
|
|---|
| 664 | #define VK_LSHIFT 0xA0
|
|---|
| 665 | #define VK_RSHIFT 0xA1
|
|---|
| 666 | #define VK_LCONTROL 0xA2
|
|---|
| 667 | #define VK_RCONTROL 0xA3
|
|---|
| 668 | #define VK_LMENU 0xA4
|
|---|
| 669 | #define VK_RMENU 0xA5
|
|---|
| 670 | /* 0xA6-0xB9 Unassigned */
|
|---|
| 671 | #define VK_OEM_1 0xBA
|
|---|
| 672 | #define VK_OEM_PLUS 0xBB
|
|---|
| 673 | #define VK_OEM_COMMA 0xBC
|
|---|
| 674 | #define VK_OEM_MINUS 0xBD
|
|---|
| 675 | #define VK_OEM_PERIOD 0xBE
|
|---|
| 676 | #define VK_OEM_2 0xBF
|
|---|
| 677 | #define VK_OEM_3 0xC0
|
|---|
| 678 | /* 0xC1-0xDA Unassigned */
|
|---|
| 679 | #define VK_OEM_4 0xDB
|
|---|
| 680 | #define VK_OEM_5 0xDC
|
|---|
| 681 | #define VK_OEM_6 0xDD
|
|---|
| 682 | #define VK_OEM_7 0xDE
|
|---|
| 683 | /* 0xDF-0xE4 OEM specific */
|
|---|
| 684 |
|
|---|
| 685 | #define VK_PROCESSKEY 0xE5
|
|---|
| 686 |
|
|---|
| 687 | /* 0xE6 OEM specific */
|
|---|
| 688 | /* 0xE7-0xE8 Unassigned */
|
|---|
| 689 | /* 0xE9-0xF5 OEM specific */
|
|---|
| 690 |
|
|---|
| 691 | #define VK_ATTN 0xF6
|
|---|
| 692 | #define VK_CRSEL 0xF7
|
|---|
| 693 | #define VK_EXSEL 0xF8
|
|---|
| 694 | #define VK_EREOF 0xF9
|
|---|
| 695 | #define VK_PLAY 0xFA
|
|---|
| 696 | #define VK_ZOOM 0xFB
|
|---|
| 697 | #define VK_NONAME 0xFC
|
|---|
| 698 | #define VK_PA1 0xFD
|
|---|
| 699 | #define VK_OEM_CLEAR 0xFE
|
|---|