19682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall/* 29682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall SDL - Simple DirectMedia Layer 39682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall Copyright (C) 1997-2012 Sam Lantinga 49682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall 59682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall This library is free software; you can redistribute it and/or 69682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall modify it under the terms of the GNU Lesser General Public 79682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall License as published by the Free Software Foundation; either 89682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall version 2.1 of the License, or (at your option) any later version. 99682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall 109682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall This library is distributed in the hope that it will be useful, 119682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall but WITHOUT ANY WARRANTY; without even the implied warranty of 129682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 139682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall Lesser General Public License for more details. 149682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall 159682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall You should have received a copy of the GNU Lesser General Public 169682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall License along with this library; if not, write to the Free Software 179682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 189682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall 199682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall Sam Lantinga 209682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall slouken@libsdl.org 219682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall*/ 229682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall 239682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall/* These are the Macintosh key scancode constants -- from Inside Macintosh */ 249682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall 259682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_ESCAPE 0x35 269682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F1 0x7A 279682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F2 0x78 289682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F3 0x63 299682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F4 0x76 309682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F5 0x60 319682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F6 0x61 329682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F7 0x62 339682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F8 0x64 349682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F9 0x65 359682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F10 0x6D 369682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F11 0x67 379682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_F12 0x6F 389682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_PRINT 0x69 399682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_SCROLLOCK 0x6B 409682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_PAUSE 0x71 419682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_POWER 0x7F 429682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_BACKQUOTE 0x32 439682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_1 0x12 449682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_2 0x13 459682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_3 0x14 469682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_4 0x15 479682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_5 0x17 489682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_6 0x16 499682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_7 0x1A 509682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_8 0x1C 519682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_9 0x19 529682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_0 0x1D 539682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_MINUS 0x1B 549682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_EQUALS 0x18 559682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_BACKSPACE 0x33 569682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_INSERT 0x72 579682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_HOME 0x73 589682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_PAGEUP 0x74 599682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_NUMLOCK 0x47 609682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP_EQUALS 0x51 619682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP_DIVIDE 0x4B 629682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP_MULTIPLY 0x43 639682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_TAB 0x30 649682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_q 0x0C 659682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_w 0x0D 669682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_e 0x0E 679682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_r 0x0F 689682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_t 0x11 699682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_y 0x10 709682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_u 0x20 719682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_i 0x22 729682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_o 0x1F 739682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_p 0x23 749682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_LEFTBRACKET 0x21 759682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_RIGHTBRACKET 0x1E 769682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_BACKSLASH 0x2A 779682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_DELETE 0x75 789682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_END 0x77 799682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_PAGEDOWN 0x79 809682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP7 0x59 819682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP8 0x5B 829682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP9 0x5C 839682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP_MINUS 0x4E 849682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_CAPSLOCK 0x39 859682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_a 0x00 869682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_s 0x01 879682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_d 0x02 889682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_f 0x03 899682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_g 0x05 909682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_h 0x04 919682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_j 0x26 929682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_k 0x28 939682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_l 0x25 949682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_SEMICOLON 0x29 959682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_QUOTE 0x27 969682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_RETURN 0x24 979682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP4 0x56 989682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP5 0x57 999682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP6 0x58 1009682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP_PLUS 0x45 1019682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_LSHIFT 0x38 1029682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_z 0x06 1039682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_x 0x07 1049682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_c 0x08 1059682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_v 0x09 1069682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_b 0x0B 1079682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_n 0x2D 1089682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_m 0x2E 1099682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_COMMA 0x2B 1109682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_PERIOD 0x2F 1119682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_SLASH 0x2C 1129682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#if 0 /* These are the same as the left versions - use left by default */ 1139682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_RSHIFT 0x38 1149682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#endif 1159682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_UP 0x7E 1169682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP1 0x53 1179682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP2 0x54 1189682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP3 0x55 1199682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP_ENTER 0x4C 1209682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_LCTRL 0x3B 1219682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_LALT 0x3A 1229682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_LMETA 0x37 1239682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_SPACE 0x31 1249682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#if 0 /* These are the same as the left versions - use left by default */ 1259682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_RMETA 0x37 1269682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_RALT 0x3A 1279682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_RCTRL 0x3B 1289682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#endif 1299682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_LEFT 0x7B 1309682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_DOWN 0x7D 1319682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_RIGHT 0x7C 1329682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP0 0x52 1339682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_KP_PERIOD 0x41 1349682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall 1359682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall/* Wierd, these keys are on my iBook under Mac OS X */ 1369682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_IBOOK_ENTER 0x34 1379682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_IBOOK_LEFT 0x3B 1389682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_IBOOK_RIGHT 0x3C 1399682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_IBOOK_DOWN 0x3D 1409682c8870b8ff5e4ac2e4c70b759f791c6f38c1fJesse Hall#define MK_IBOOK_UP 0x3E 141