1f452095eSAnthony Liguorimap 0x0000041d 2*26b1cbf8SGerd Hoffmann 3*26b1cbf8SGerd HoffmannShift_R 0x36 4*26b1cbf8SGerd HoffmannShift_L 0x2a 5*26b1cbf8SGerd Hoffmann 6*26b1cbf8SGerd HoffmannAlt_R 0xb8 7*26b1cbf8SGerd HoffmannMode_switch 0xb8 8*26b1cbf8SGerd HoffmannISO_Level3_Shift 0xb8 9*26b1cbf8SGerd HoffmannAlt_L 0x38 10*26b1cbf8SGerd Hoffmann 11*26b1cbf8SGerd HoffmannControl_R 0x9d 12*26b1cbf8SGerd HoffmannControl_L 0x1d 13*26b1cbf8SGerd Hoffmann 14*26b1cbf8SGerd Hoffmann# Translate Super to Windows keys. 15*26b1cbf8SGerd Hoffmann# This is hardcoded. See documentation for details. 16*26b1cbf8SGerd HoffmannSuper_R 0xdc 17*26b1cbf8SGerd HoffmannSuper_L 0xdb 18*26b1cbf8SGerd Hoffmann 19*26b1cbf8SGerd Hoffmann# Translate Menu to the Windows Application key. 20*26b1cbf8SGerd HoffmannMenu 0xdd 21*26b1cbf8SGerd Hoffmann 22*26b1cbf8SGerd Hoffmann# 23*26b1cbf8SGerd Hoffmann# Top row 24*26b1cbf8SGerd Hoffmann# 25*26b1cbf8SGerd Hoffmann1 0x2 26*26b1cbf8SGerd Hoffmann2 0x3 27*26b1cbf8SGerd Hoffmann3 0x4 28*26b1cbf8SGerd Hoffmann4 0x5 29*26b1cbf8SGerd Hoffmann5 0x6 30*26b1cbf8SGerd Hoffmann6 0x7 31*26b1cbf8SGerd Hoffmann7 0x8 32*26b1cbf8SGerd Hoffmann8 0x9 33*26b1cbf8SGerd Hoffmann9 0xa 34*26b1cbf8SGerd Hoffmann0 0xb 35*26b1cbf8SGerd HoffmannBackSpace 0xe 36*26b1cbf8SGerd Hoffmann 37*26b1cbf8SGerd Hoffmann# 38*26b1cbf8SGerd Hoffmann# QWERTY first row 39*26b1cbf8SGerd Hoffmann# 40*26b1cbf8SGerd HoffmannTab 0xf localstate 41*26b1cbf8SGerd HoffmannISO_Left_Tab 0xf shift 42*26b1cbf8SGerd Hoffmannq 0x10 addupper 43*26b1cbf8SGerd Hoffmannw 0x11 addupper 44*26b1cbf8SGerd Hoffmanne 0x12 addupper 45*26b1cbf8SGerd Hoffmannr 0x13 addupper 46*26b1cbf8SGerd Hoffmannt 0x14 addupper 47*26b1cbf8SGerd Hoffmanny 0x15 addupper 48*26b1cbf8SGerd Hoffmannu 0x16 addupper 49*26b1cbf8SGerd Hoffmanni 0x17 addupper 50*26b1cbf8SGerd Hoffmanno 0x18 addupper 51*26b1cbf8SGerd Hoffmannp 0x19 addupper 52*26b1cbf8SGerd Hoffmann 53*26b1cbf8SGerd Hoffmann# 54*26b1cbf8SGerd Hoffmann# QWERTY second row 55*26b1cbf8SGerd Hoffmann# 56*26b1cbf8SGerd Hoffmanna 0x1e addupper 57*26b1cbf8SGerd Hoffmanns 0x1f addupper 58*26b1cbf8SGerd Hoffmannd 0x20 addupper 59*26b1cbf8SGerd Hoffmannf 0x21 addupper 60*26b1cbf8SGerd Hoffmanng 0x22 addupper 61*26b1cbf8SGerd Hoffmannh 0x23 addupper 62*26b1cbf8SGerd Hoffmannj 0x24 addupper 63*26b1cbf8SGerd Hoffmannk 0x25 addupper 64*26b1cbf8SGerd Hoffmannl 0x26 addupper 65*26b1cbf8SGerd HoffmannReturn 0x1c localstate 66*26b1cbf8SGerd Hoffmann 67*26b1cbf8SGerd Hoffmann# 68*26b1cbf8SGerd Hoffmann# QWERTY third row 69*26b1cbf8SGerd Hoffmann# 70*26b1cbf8SGerd Hoffmannz 0x2c addupper 71*26b1cbf8SGerd Hoffmannx 0x2d addupper 72*26b1cbf8SGerd Hoffmannc 0x2e addupper 73*26b1cbf8SGerd Hoffmannv 0x2f addupper 74*26b1cbf8SGerd Hoffmannb 0x30 addupper 75*26b1cbf8SGerd Hoffmannn 0x31 addupper 76*26b1cbf8SGerd Hoffmannm 0x32 addupper 77*26b1cbf8SGerd Hoffmann 78*26b1cbf8SGerd Hoffmannspace 0x39 localstate 79*26b1cbf8SGerd Hoffmann 80*26b1cbf8SGerd Hoffmannless 0x56 81*26b1cbf8SGerd Hoffmanngreater 0x56 shift 82*26b1cbf8SGerd Hoffmannbar 0x56 altgr 83*26b1cbf8SGerd Hoffmannbrokenbar 0x56 shift altgr 84*26b1cbf8SGerd Hoffmann 85*26b1cbf8SGerd Hoffmann# 86*26b1cbf8SGerd Hoffmann# Esc and Function keys 87*26b1cbf8SGerd Hoffmann# 88*26b1cbf8SGerd HoffmannEscape 0x1 localstate 89*26b1cbf8SGerd HoffmannF1 0x3b localstate 90*26b1cbf8SGerd HoffmannF2 0x3c localstate 91*26b1cbf8SGerd HoffmannF3 0x3d localstate 92*26b1cbf8SGerd HoffmannF4 0x3e localstate 93*26b1cbf8SGerd HoffmannF5 0x3f localstate 94*26b1cbf8SGerd HoffmannF6 0x40 localstate 95*26b1cbf8SGerd HoffmannF7 0x41 localstate 96*26b1cbf8SGerd HoffmannF8 0x42 localstate 97*26b1cbf8SGerd HoffmannF9 0x43 localstate 98*26b1cbf8SGerd HoffmannF10 0x44 localstate 99*26b1cbf8SGerd HoffmannF11 0x57 localstate 100*26b1cbf8SGerd HoffmannF12 0x58 localstate 101*26b1cbf8SGerd Hoffmann 102*26b1cbf8SGerd Hoffmann# Printscreen, Scrollock and Pause 103*26b1cbf8SGerd Hoffmann# Printscreen really requires four scancodes (0xe0, 0x2a, 0xe0, 0x37), 104*26b1cbf8SGerd Hoffmann# but (0xe0, 0x37) seems to work. 105*26b1cbf8SGerd HoffmannPrint 0xb7 localstate 106*26b1cbf8SGerd HoffmannSys_Req 0xb7 localstate 107*26b1cbf8SGerd HoffmannExecute 0xb7 localstate 108*26b1cbf8SGerd HoffmannScroll_Lock 0x46 109*26b1cbf8SGerd Hoffmann 110*26b1cbf8SGerd Hoffmann# 111*26b1cbf8SGerd Hoffmann# Insert - PgDown 112*26b1cbf8SGerd Hoffmann# 113*26b1cbf8SGerd HoffmannInsert 0xd2 localstate 114*26b1cbf8SGerd HoffmannDelete 0xd3 localstate 115*26b1cbf8SGerd HoffmannHome 0xc7 localstate 116*26b1cbf8SGerd HoffmannEnd 0xcf localstate 117*26b1cbf8SGerd HoffmannPage_Up 0xc9 localstate 118*26b1cbf8SGerd HoffmannPage_Down 0xd1 localstate 119*26b1cbf8SGerd Hoffmann 120*26b1cbf8SGerd Hoffmann# 121*26b1cbf8SGerd Hoffmann# Arrow keys 122*26b1cbf8SGerd Hoffmann# 123*26b1cbf8SGerd HoffmannLeft 0xcb localstate 124*26b1cbf8SGerd HoffmannUp 0xc8 localstate 125*26b1cbf8SGerd HoffmannDown 0xd0 localstate 126*26b1cbf8SGerd HoffmannRight 0xcd localstate 127*26b1cbf8SGerd Hoffmann 128*26b1cbf8SGerd Hoffmann# 129*26b1cbf8SGerd Hoffmann# Numpad 130*26b1cbf8SGerd Hoffmann# 131*26b1cbf8SGerd HoffmannNum_Lock 0x45 132*26b1cbf8SGerd HoffmannKP_Divide 0xb5 133*26b1cbf8SGerd HoffmannKP_Multiply 0x37 134*26b1cbf8SGerd HoffmannKP_Subtract 0x4a 135*26b1cbf8SGerd HoffmannKP_Add 0x4e 136*26b1cbf8SGerd HoffmannKP_Enter 0x9c 137*26b1cbf8SGerd Hoffmann 138*26b1cbf8SGerd HoffmannKP_Decimal 0x53 numlock 139*26b1cbf8SGerd HoffmannKP_Separator 0x53 numlock 140*26b1cbf8SGerd HoffmannKP_Delete 0x53 141*26b1cbf8SGerd Hoffmann 142*26b1cbf8SGerd HoffmannKP_0 0x52 numlock 143*26b1cbf8SGerd HoffmannKP_Insert 0x52 144*26b1cbf8SGerd Hoffmann 145*26b1cbf8SGerd HoffmannKP_1 0x4f numlock 146*26b1cbf8SGerd HoffmannKP_End 0x4f 147*26b1cbf8SGerd Hoffmann 148*26b1cbf8SGerd HoffmannKP_2 0x50 numlock 149*26b1cbf8SGerd HoffmannKP_Down 0x50 150*26b1cbf8SGerd Hoffmann 151*26b1cbf8SGerd HoffmannKP_3 0x51 numlock 152*26b1cbf8SGerd HoffmannKP_Next 0x51 153*26b1cbf8SGerd Hoffmann 154*26b1cbf8SGerd HoffmannKP_4 0x4b numlock 155*26b1cbf8SGerd HoffmannKP_Left 0x4b 156*26b1cbf8SGerd Hoffmann 157*26b1cbf8SGerd HoffmannKP_5 0x4c numlock 158*26b1cbf8SGerd HoffmannKP_Begin 0x4c 159*26b1cbf8SGerd Hoffmann 160*26b1cbf8SGerd HoffmannKP_6 0x4d numlock 161*26b1cbf8SGerd HoffmannKP_Right 0x4d 162*26b1cbf8SGerd Hoffmann 163*26b1cbf8SGerd HoffmannKP_7 0x47 numlock 164*26b1cbf8SGerd HoffmannKP_Home 0x47 165*26b1cbf8SGerd Hoffmann 166*26b1cbf8SGerd HoffmannKP_8 0x48 numlock 167*26b1cbf8SGerd HoffmannKP_Up 0x48 168*26b1cbf8SGerd Hoffmann 169*26b1cbf8SGerd HoffmannKP_9 0x49 numlock 170*26b1cbf8SGerd HoffmannKP_Prior 0x49 171*26b1cbf8SGerd Hoffmann 172*26b1cbf8SGerd HoffmannCaps_Lock 0x3a 173*26b1cbf8SGerd Hoffmann# 174*26b1cbf8SGerd Hoffmann# Inhibited keys 175*26b1cbf8SGerd Hoffmann# 176*26b1cbf8SGerd HoffmannMulti_key 0x0 inhibit 177f452095eSAnthony Liguori 178f452095eSAnthony Liguori# 179f452095eSAnthony Liguori# Top row 180f452095eSAnthony Liguori# 181f452095eSAnthony Liguorisection 0x29 182f452095eSAnthony Liguorionehalf 0x29 shift 183f452095eSAnthony Liguori 184f452095eSAnthony Liguori# 1 185f452095eSAnthony Liguoriexclam 0x2 shift 186f452095eSAnthony Liguori 187f452095eSAnthony Liguori# 2 188f452095eSAnthony Liguoriquotedbl 0x3 shift 189f452095eSAnthony Liguoriat 0x3 altgr 190f452095eSAnthony Liguori 191f452095eSAnthony Liguori# 3 192f452095eSAnthony Liguorinumbersign 0x4 shift 193f452095eSAnthony Liguoristerling 0x4 altgr 194f452095eSAnthony Liguori# 4 195f452095eSAnthony Liguoricurrency 0x5 shift 196f452095eSAnthony Liguoridollar 0x5 altgr 197f452095eSAnthony Liguori# 5 198f452095eSAnthony Liguoripercent 0x6 shift 199f452095eSAnthony Liguori# 6 200f452095eSAnthony Liguoriampersand 0x7 shift 201f452095eSAnthony Liguori# 7 202f452095eSAnthony Liguorislash 0x8 shift 203f452095eSAnthony Liguoribraceleft 0x8 altgr 204f452095eSAnthony Liguori# 8 205f452095eSAnthony Liguoriparenleft 0x9 shift 206f452095eSAnthony Liguoribracketleft 0x9 altgr 207f452095eSAnthony Liguori# 9 208f452095eSAnthony Liguoriparenright 0xa shift 209f452095eSAnthony Liguoribracketright 0xa altgr 210f452095eSAnthony Liguori# 0 211f452095eSAnthony Liguoriequal 0xb shift 212f452095eSAnthony Liguoribraceright 0xb altgr 213f452095eSAnthony Liguori 214f452095eSAnthony Liguoriplus 0xc 215f452095eSAnthony Liguoriquestion 0xc shift 216f452095eSAnthony Liguoribackslash 0xc altgr 217f452095eSAnthony Liguori 218f452095eSAnthony Liguoriacute 0xd 219f452095eSAnthony Liguoridead_acute 0xd 220f452095eSAnthony Liguorigrave 0xd shift 221f452095eSAnthony Liguoridead_grave 0xd shift 222f452095eSAnthony Liguori 223f452095eSAnthony Liguori# 224f452095eSAnthony Liguori# QWERTY first row 225f452095eSAnthony Liguori# 226f452095eSAnthony LiguoriEuroSign 0x12 altgr 227f452095eSAnthony Liguoriaring 0x1a 228f452095eSAnthony LiguoriAring 0x1a shift 229f452095eSAnthony Liguoridead_diaeresis 0x1b 230f452095eSAnthony Liguoridead_circumflex 0x1b shift 231f452095eSAnthony Liguoridead_tilde 0x1b altgr 232f452095eSAnthony Liguori 233f452095eSAnthony Liguori# 234f452095eSAnthony Liguori# QWERTY second row 235f452095eSAnthony Liguori# 236f452095eSAnthony Liguoriodiaeresis 0x27 237f452095eSAnthony LiguoriOdiaeresis 0x27 shift 238f452095eSAnthony Liguoriadiaeresis 0x28 239f452095eSAnthony LiguoriAdiaeresis 0x28 shift 240f452095eSAnthony Liguoriapostrophe 0x2b 241f452095eSAnthony Liguoriasterisk 0x2b shift 242f452095eSAnthony Liguori 243f452095eSAnthony Liguori# 244f452095eSAnthony Liguori# QWERTY third row 245f452095eSAnthony Liguori# 246f452095eSAnthony Liguoriless 0x56 247f452095eSAnthony Liguorigreater 0x56 shift 248f452095eSAnthony Liguoribar 0x56 altgr 249f452095eSAnthony Liguorimu 0x32 altgr 250f452095eSAnthony Liguoricomma 0x33 251f452095eSAnthony Liguorisemicolon 0x33 shift 252f452095eSAnthony Liguoriperiod 0x34 253f452095eSAnthony Liguoricolon 0x34 shift 254f452095eSAnthony Liguoriminus 0x35 255f452095eSAnthony Liguoriunderscore 0x35 shift 256