DRAFT |
SDL Keycode Lookup Table
Keycodes for keys with printable characters are represented by the character byte in parentheses. Keycodes without character representations are determined by their scancode bitwise AND-ed with 1<<30 (0x80000000).
Decimal Value |
Hex Value (Char) |
SDL_Keycode Constant |
0 |
0x00 ('\0') |
SDLK_UNKNOWN |
8 |
0x08 ('\b') |
SDLK_BACKSPACE |
9 |
0x09 ('\t') |
SDLK_TAB |
13 |
0x0D ('\r') |
SDLK_RETURN |
27 |
0x1B ('\033') |
SDLK_ESCAPE |
32 |
0x20 (' ') |
SDLK_SPACE |
33 |
0x21 ('!') |
SDLK_EXCLAIM |
34 |
0x22 ('\"') |
SDLK_QUOTEDBL |
35 |
0x23 ('#') |
SDLK_HASH |
36 |
0x24 ('$') |
SDLK_DOLLAR |
37 |
0x25 ('%') |
SDLK_PERCENT |
38 |
0x26 ('&') |
SDLK_AMPERSAND |
39 |
0x27 ('\'') |
SDLK_QUOTE |
40 |
0x28 ('(') |
SDLK_LEFTPAREN |
41 |
0x29 (')') |
SDLK_RIGHTPAREN |
42 |
0x2A ('*') |
SDLK_ASTERISK |
43 |
0x2B ('+') |
SDLK_PLUS |
44 |
0x2C (',') |
SDLK_COMMA |
45 |
0x2D ('-') |
SDLK_MINUS |
46 |
0x2E ('.') |
SDLK_PERIOD |
47 |
0x2F ('/') |
SDLK_SLASH |
48 |
0x30 ('0') |
SDLK_0 |
49 |
0x31 ('1') |
SDLK_1 |
50 |
0x32 ('2') |
SDLK_2 |
51 |
0x33 ('3') |
SDLK_3 |
52 |
0x34 ('4') |
SDLK_4 |
53 |
0x35 ('5') |
SDLK_5 |
54 |
0x36 ('6') |
SDLK_6 |
55 |
0x37 ('7') |
SDLK_7 |
56 |
0x38 ('8') |
SDLK_8 |
57 |
0x39 ('9') |
SDLK_9 |
58 |
0x3A (':') |
SDLK_COLON |
59 |
0x3B (';') |
SDLK_SEMICOLON |
60 |
0x3C ('<') |
SDLK_LESS |
61 |
0x3D ('=') |
SDLK_EQUALS |
62 |
0x3E ('>') |
SDLK_GREATER |
63 |
0x3F ('?') |
SDLK_QUESTION |
64 |
0x40 ('@') |
SDLK_AT |
91 |
0x5B ('[') |
SDLK_LEFTBRACKET |
92 |
0x5C ('\\') |
SDLK_BACKSLASH |
93 |
0x5D (']') |
SDLK_RIGHTBRACKET |
94 |
0x5E ('^') |
SDLK_CARET |
95 |
0x5F ('_') |
SDLK_UNDERSCORE |
96 |
0x60 ('`') |
SDLK_BACKQUOTE |
97 |
0x61 ('a') |
SDLK_a |
98 |
0x62 ('b') |
SDLK_b |
99 |
0x63 ('c') |
SDLK_c |
100 |
0x64 ('d') |
SDLK_d |
101 |
0x65 ('e') |
SDLK_e |
102 |
0x66 ('f') |
SDLK_f |
103 |
0x67 ('g') |
SDLK_g |
104 |
0x68 ('h') |
SDLK_h |
105 |
0x69 ('i') |
SDLK_i |
106 |
0x6A ('j') |
SDLK_j |
107 |
0x6B ('k') |
SDLK_k |
108 |
0x6C ('l') |
SDLK_l |
109 |
0x6D ('m') |
SDLK_m |
110 |
0x6E ('n') |
SDLK_n |
111 |
0x6F ('o') |
SDLK_o |
112 |
0x70 ('p') |
SDLK_p |
113 |
0x71 ('q') |
SDLK_q |
114 |
0x72 ('r') |
SDLK_r |
115 |
0x73 ('s') |
SDLK_s |
116 |
0x74 ('t') |
SDLK_t |
117 |
0x75 ('u') |
SDLK_u |
118 |
0x76 ('v') |
SDLK_v |
119 |
0x77 ('w') |
SDLK_w |
120 |
0x78 ('x') |
SDLK_x |
121 |
0x79 ('y') |
SDLK_y |
122 |
0x7A ('z') |
SDLK_z |
177 |
0xB1 ('\177') |
SDLK_DELETE |
-2147483591 |
0x80000039 |
SDLK_CAPSLOCK |
-2147483590 |
0x8000003A |
SDLK_F1 |
-2147483589 |
0x8000003B |
SDLK_F2 |
-2147483588 |
0x8000003C |
SDLK_F3 |
-2147483587 |
0x8000003D |
SDLK_F4 |
-2147483586 |
0x8000003E |
SDLK_F5 |
-2147483585 |
0x8000003F |
SDLK_F6 |
-2147483584 |
0x80000040 |
SDLK_F7 |
-2147483583 |
0x80000041 |
SDLK_F8 |
-2147483582 |
0x80000042 |
SDLK_F9 |
-2147483581 |
0x80000043 |
SDLK_F10 |
-2147483580 |
0x80000044 |
SDLK_F11 |
-2147483579 |
0x80000045 |
SDLK_F12 |
-2147483578 |
0x80000046 |
SDLK_PRINTSCREEN |
-2147483577 |
0x80000047 |
SDLK_SCROLLLOCK |
-2147483576 |
0x80000048 |
SDLK_PAUSE |
-2147483575 |
0x80000049 |
SDLK_INSERT |
-2147483574 |
0x8000004A |
SDLK_HOME |
-2147483573 |
0x8000004B |
SDLK_PAGEUP |
-2147483571 |
0x8000004D |
SDLK_END |
-2147483570 |
0x8000004E |
SDLK_PAGEDOWN |
-2147483569 |
0x8000004F |
SDLK_RIGHT |
-2147483568 |
0x80000050 |
SDLK_LEFT |
-2147483567 |
0x80000051 |
SDLK_DOWN |
-2147483566 |
0x80000052 |
SDLK_UP |
-2147483565 |
0x80000053 |
SDLK_NUMLOCKCLEAR |
-2147483564 |
0x80000054 |
SDLK_KP_DIVIDE |
-2147483563 |
0x80000055 |
SDLK_KP_MULTIPLY |
-2147483562 |
0x80000056 |
SDLK_KP_MINUS |
-2147483561 |
0x80000057 |
SDLK_KP_PLUS |
-2147483560 |
0x80000058 |
SDLK_KP_ENTER |
-2147483559 |
0x80000059 |
SDLK_KP_1 |
-2147483558 |
0x8000005A |
SDLK_KP_2 |
-2147483557 |
0x8000005B |
SDLK_KP_3 |
-2147483556 |
0x8000005C |
SDLK_KP_4 |
-2147483555 |
0x8000005D |
SDLK_KP_5 |
-2147483554 |
0x8000005E |
SDLK_KP_6 |
-2147483553 |
0x8000005F |
SDLK_KP_7 |
-2147483552 |
0x80000060 |
SDLK_KP_8 |
-2147483551 |
0x80000061 |
SDLK_KP_9 |
-2147483550 |
0x80000062 |
SDLK_KP_0 |
-2147483549 |
0x80000063 |
SDLK_KP_PERIOD |
-2147483547 |
0x80000065 |
SDLK_APPLICATION |
-2147483546 |
0x80000066 |
SDLK_POWER |
-2147483545 |
0x80000067 |
SDLK_KP_EQUALS |
-2147483544 |
0x80000068 |
SDLK_F13 |
-2147483543 |
0x80000069 |
SDLK_F14 |
-2147483542 |
0x8000006A |
SDLK_F15 |
-2147483541 |
0x8000006B |
SDLK_F16 |
-2147483540 |
0x8000006C |
SDLK_F17 |
-2147483539 |
0x8000006D |
SDLK_F18 |
-2147483538 |
0x8000006E |
SDLK_F19 |
-2147483537 |
0x8000006F |
SDLK_F20 |
-2147483536 |
0x80000070 |
SDLK_F21 |
-2147483535 |
0x80000071 |
SDLK_F22 |
-2147483534 |
0x80000072 |
SDLK_F23 |
-2147483533 |
0x80000073 |
SDLK_F24 |
-2147483532 |
0x80000074 |
SDLK_EXECUTE |
-2147483531 |
0x80000075 |
SDLK_HELP |
-2147483530 |
0x80000076 |
SDLK_MENU |
-2147483529 |
0x80000077 |
SDLK_SELECT |
-2147483528 |
0x80000078 |
SDLK_STOP |
-2147483527 |
0x80000079 |
SDLK_AGAIN |
-2147483526 |
0x8000007A |
SDLK_UNDO |
-2147483525 |
0x8000007B |
SDLK_CUT |
-2147483524 |
0x8000007C |
SDLK_COPY |
-2147483523 |
0x8000007D |
SDLK_PASTE |
-2147483522 |
0x8000007E |
SDLK_FIND |
-2147483521 |
0x8000007F |
SDLK_MUTE |
-2147483520 |
0x80000080 |
SDLK_VOLUMEUP |
-2147483519 |
0x80000081 |
SDLK_VOLUMEDOWN |
-2147483515 |
0x80000085 |
SDLK_KP_COMMA |
-2147483514 |
0x80000086 |
SDLK_KP_EQUALSAS400 |
-2147483495 |
0x80000099 |
SDLK_ALTERASE |
-2147483494 |
0x8000009A |
SDLK_SYSREQ |
-2147483493 |
0x8000009B |
SDLK_CANCEL |
-2147483492 |
0x8000009C |
SDLK_CLEAR |
-2147483491 |
0x8000009D |
SDLK_PRIOR |
-2147483490 |
0x8000009E |
SDLK_RETURN2 |
-2147483489 |
0x8000009F |
SDLK_SEPARATOR |
-2147483488 |
0x800000A0 |
SDLK_OUT |
-2147483487 |
0x800000A1 |
SDLK_OPER |
-2147483486 |
0x800000A2 |
SDLK_CLEARAGAIN |
-2147483485 |
0x800000A3 |
SDLK_CRSEL |
-2147483484 |
0x800000A4 |
SDLK_EXSEL |
-2147483472 |
0x800000B0 |
SDLK_KP_00 |
-2147483471 |
0x800000B1 |
SDLK_KP_000 |
-2147483470 |
0x800000B2 |
SDLK_THOUSANDSSEPARATOR |
-2147483469 |
0x800000B3 |
SDLK_DECIMALSEPARATOR |
-2147483468 |
0x800000B4 |
SDLK_CURRENCYUNIT |
-2147483467 |
0x800000B5 |
SDLK_CURRENCYSUBUNIT |
-2147483466 |
0x800000B6 |
SDLK_KP_LEFTPAREN |
-2147483465 |
0x800000B7 |
SDLK_KP_RIGHTPAREN |
-2147483464 |
0x800000B8 |
SDLK_KP_LEFTBRACE |
-2147483463 |
0x800000B9 |
SDLK_KP_RIGHTBRACE |
-2147483462 |
0x800000BA |
SDLK_KP_TAB |
-2147483461 |
0x800000BB |
SDLK_KP_BACKSPACE |
-2147483460 |
0x800000BC |
SDLK_KP_A |
-2147483459 |
0x800000BD |
SDLK_KP_B |
-2147483458 |
0x800000BE |
SDLK_KP_C |
-2147483457 |
0x800000BF |
SDLK_KP_D |
-2147483456 |
0x800000C0 |
SDLK_KP_E |
-2147483455 |
0x800000C1 |
SDLK_KP_F |
-2147483454 |
0x800000C2 |
SDLK_KP_XOR |
-2147483453 |
0x800000C3 |
SDLK_KP_POWER |
-2147483452 |
0x800000C4 |
SDLK_KP_PERCENT |
-2147483451 |
0x800000C5 |
SDLK_KP_LESS |
-2147483450 |
0x800000C6 |
SDLK_KP_GREATER |
-2147483449 |
0x800000C7 |
SDLK_KP_AMPERSAND |
-2147483448 |
0x800000C8 |
SDLK_KP_DBLAMPERSAND |
-2147483447 |
0x800000C9 |
SDLK_KP_VERTICALBAR |
-2147483446 |
0x800000CA |
SDLK_KP_DBLVERTICALBAR |
-2147483445 |
0x800000CB |
SDLK_KP_COLON |
-2147483444 |
0x800000CC |
SDLK_KP_HASH |
-2147483443 |
0x800000CD |
SDLK_KP_SPACE |
-2147483442 |
0x800000CE |
SDLK_KP_AT |
-2147483441 |
0x800000CF |
SDLK_KP_EXCLAM |
-2147483440 |
0x800000D0 |
SDLK_KP_MEMSTORE |
-2147483439 |
0x800000D1 |
SDLK_KP_MEMRECALL |
-2147483438 |
0x800000D2 |
SDLK_KP_MEMCLEAR |
-2147483437 |
0x800000D3 |
SDLK_KP_MEMADD |
-2147483436 |
0x800000D4 |
SDLK_KP_MEMSUBTRACT |
-2147483435 |
0x800000D5 |
SDLK_KP_MEMMULTIPLY |
-2147483434 |
0x800000D6 |
SDLK_KP_MEMDIVIDE |
-2147483433 |
0x800000D7 |
SDLK_KP_PLUSMINUS |
-2147483432 |
0x800000D8 |
SDLK_KP_CLEAR |
-2147483431 |
0x800000D9 |
SDLK_KP_CLEARENTRY |
-2147483430 |
0x800000DA |
SDLK_KP_BINARY |
-2147483429 |
0x800000DB |
SDLK_KP_OCTAL |
-2147483428 |
0x800000DC |
SDLK_KP_DECIMAL |
-2147483427 |
0x800000DD |
SDLK_KP_HEXADECIMAL |
-2147483424 |
0x800000E0 |
SDLK_LCTRL |
-2147483423 |
0x800000E1 |
SDLK_LSHIFT |
-2147483422 |
0x800000E2 |
SDLK_LALT |
-2147483421 |
0x800000E3 |
SDLK_LGUI |
-2147483420 |
0x800000E4 |
SDLK_RCTRL |
-2147483419 |
0x800000E5 |
SDLK_RSHIFT |
-2147483418 |
0x800000E6 |
SDLK_RALT |
-2147483417 |
0x800000E7 |
SDLK_RGUI |
-2147483391 |
0x80000101 |
SDLK_MODE |
-2147483390 |
0x80000102 |
SDLK_AUDIONEXT |
-2147483389 |
0x80000103 |
SDLK_AUDIOPREV |
-2147483388 |
0x80000104 |
SDLK_AUDIOSTOP |
-2147483387 |
0x80000105 |
SDLK_AUDIOPLAY |
-2147483386 |
0x80000106 |
SDLK_AUDIOMUTE |
-2147483385 |
0x80000107 |
SDLK_MEDIASELECT |
-2147483384 |
0x80000108 |
SDLK_WWW |
-2147483383 |
0x80000109 |
SDLK_MAIL |
-2147483382 |
0x8000010A |
SDLK_CALCULATOR |
-2147483381 |
0x8000010B |
SDLK_COMPUTER |
-2147483380 |
0x8000010C |
SDLK_AC_SEARCH |
-2147483379 |
0x8000010D |
SDLK_AC_HOME |
-2147483378 |
0x8000010E |
SDLK_AC_BACK |
-2147483377 |
0x8000010F |
SDLK_AC_FORWARD |
-2147483376 |
0x80000110 |
SDLK_AC_STOP |
-2147483375 |
0x80000111 |
SDLK_AC_REFRESH |
-2147483374 |
0x80000112 |
SDLK_AC_BOOKMARKS |
-2147483373 |
0x80000113 |
SDLK_BRIGHTNESSDOWN |
-2147483372 |
0x80000114 |
SDLK_BRIGHTNESSUP |
-2147483371 |
0x80000115 |
SDLK_DISPLAYSWITCH |
-2147483370 |
0x80000116 |
SDLK_KBDILLUMTOGGLE |
-2147483369 |
0x80000117 |
SDLK_KBDILLUMDOWN |
-2147483368 |
0x80000118 |
SDLK_KBDILLUMUP |
-2147483367 |
0x80000119 |
SDLK_EJECT |
-2147483366 |
0x8000011A |
SDLK_SLEEP |