1 /* 2 SDL - Simple DirectMedia Layer 3 Copyright (C) 1997-2012 Sam Lantinga 4 5 This library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Library General Public 7 License as published by the Free Software Foundation; either 8 version 2 of the License, or (at your option) any later version. 9 10 This library is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 Library General Public License for more details. 14 15 You should have received a copy of the GNU Library General Public 16 License along with this library; if not, write to the Free 17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 19 Sam Lantinga 20 slouken (at) libsdl.org 21 */ 22 #include "SDL_config.h" 23 24 /* These are the Macintosh key scancode constants -- from Inside Macintosh */ 25 26 #define QZ_ESCAPE 0x35 27 #define QZ_F1 0x7A 28 #define QZ_F2 0x78 29 #define QZ_F3 0x63 30 #define QZ_F4 0x76 31 #define QZ_F5 0x60 32 #define QZ_F6 0x61 33 #define QZ_F7 0x62 34 #define QZ_F8 0x64 35 #define QZ_F9 0x65 36 #define QZ_F10 0x6D 37 #define QZ_F11 0x67 38 #define QZ_F12 0x6F 39 #define QZ_F13 0x69 40 #define QZ_F14 0x6B 41 #define QZ_F15 0x71 42 /* 43 #define QZ_PRINT 0x69 44 #define QZ_SCROLLOCK 0x6B 45 #define QZ_PAUSE 0x71 46 */ 47 #define QZ_POWER 0x7F 48 #define QZ_BACKQUOTE 0x32 49 #define QZ_1 0x12 50 #define QZ_2 0x13 51 #define QZ_3 0x14 52 #define QZ_4 0x15 53 #define QZ_5 0x17 54 #define QZ_6 0x16 55 #define QZ_7 0x1A 56 #define QZ_8 0x1C 57 #define QZ_9 0x19 58 #define QZ_0 0x1D 59 #define QZ_MINUS 0x1B 60 #define QZ_EQUALS 0x18 61 #define QZ_BACKSPACE 0x33 62 #define QZ_INSERT 0x72 63 #define QZ_HOME 0x73 64 #define QZ_PAGEUP 0x74 65 #define QZ_NUMLOCK 0x47 66 #define QZ_KP_EQUALS 0x51 67 #define QZ_KP_DIVIDE 0x4B 68 #define QZ_KP_MULTIPLY 0x43 69 #define QZ_TAB 0x30 70 #define QZ_q 0x0C 71 #define QZ_w 0x0D 72 #define QZ_e 0x0E 73 #define QZ_r 0x0F 74 #define QZ_t 0x11 75 #define QZ_y 0x10 76 #define QZ_u 0x20 77 #define QZ_i 0x22 78 #define QZ_o 0x1F 79 #define QZ_p 0x23 80 #define QZ_LEFTBRACKET 0x21 81 #define QZ_RIGHTBRACKET 0x1E 82 #define QZ_BACKSLASH 0x2A 83 #define QZ_DELETE 0x75 84 #define QZ_END 0x77 85 #define QZ_PAGEDOWN 0x79 86 #define QZ_KP7 0x59 87 #define QZ_KP8 0x5B 88 #define QZ_KP9 0x5C 89 #define QZ_KP_MINUS 0x4E 90 #define QZ_CAPSLOCK 0x39 91 #define QZ_a 0x00 92 #define QZ_s 0x01 93 #define QZ_d 0x02 94 #define QZ_f 0x03 95 #define QZ_g 0x05 96 #define QZ_h 0x04 97 #define QZ_j 0x26 98 #define QZ_k 0x28 99 #define QZ_l 0x25 100 #define QZ_SEMICOLON 0x29 101 #define QZ_QUOTE 0x27 102 #define QZ_RETURN 0x24 103 #define QZ_KP4 0x56 104 #define QZ_KP5 0x57 105 #define QZ_KP6 0x58 106 #define QZ_KP_PLUS 0x45 107 #define QZ_LSHIFT 0x38 108 #define QZ_z 0x06 109 #define QZ_x 0x07 110 #define QZ_c 0x08 111 #define QZ_v 0x09 112 #define QZ_b 0x0B 113 #define QZ_n 0x2D 114 #define QZ_m 0x2E 115 #define QZ_COMMA 0x2B 116 #define QZ_PERIOD 0x2F 117 #define QZ_SLASH 0x2C 118 #if 1 /* Panther now defines right side keys */ 119 #define QZ_RSHIFT 0x3C 120 #endif 121 #define QZ_UP 0x7E 122 #define QZ_KP1 0x53 123 #define QZ_KP2 0x54 124 #define QZ_KP3 0x55 125 #define QZ_KP_ENTER 0x4C 126 #define QZ_LCTRL 0x3B 127 #define QZ_LALT 0x3A 128 #define QZ_LMETA 0x37 129 #define QZ_SPACE 0x31 130 #if 1 /* Panther now defines right side keys */ 131 #define QZ_RMETA 0x36 132 #define QZ_RALT 0x3D 133 #define QZ_RCTRL 0x3E 134 #endif 135 #define QZ_LEFT 0x7B 136 #define QZ_DOWN 0x7D 137 #define QZ_RIGHT 0x7C 138 #define QZ_KP0 0x52 139 #define QZ_KP_PERIOD 0x41 140 141 /* Wierd, these keys are on my iBook under Mac OS X */ 142 #define QZ_IBOOK_ENTER 0x34 143 #define QZ_IBOOK_LEFT 0x3B 144 #define QZ_IBOOK_RIGHT 0x3C 145 #define QZ_IBOOK_DOWN 0x3D 146 #define QZ_IBOOK_UP 0x3E 147