|
Odamex
Setting the Standard in Multiplayer Doom
|
00001 // Emacs style mode select -*- C++ -*- 00002 //----------------------------------------------------------------------------- 00003 // 00004 // $Id: doomdef.h 1166 2008-10-07 22:42:10Z Nes $ 00005 // 00006 // Copyright (C) 1993-1996 by id Software, Inc. 00007 // Copyright (C) 2006-2010 by The Odamex Team. 00008 // 00009 // This program is free software; you can redistribute it and/or 00010 // modify it under the terms of the GNU General Public License 00011 // as published by the Free Software Foundation; either version 2 00012 // of the License, or (at your option) any later version. 00013 // 00014 // This program is distributed in the hope that it will be useful, 00015 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00017 // GNU General Public License for more details. 00018 // 00019 // DESCRIPTION: 00020 // Internally used data structures for key definitions 00021 // 00022 //----------------------------------------------------------------------------- 00023 00024 #ifndef __DOOMKEYS_H__ 00025 #define __DOOMKEYS_H__ 00026 00027 // 00028 // DOOM keyboard definition. 00029 // This is the stuff configured by Setup.Exe. 00030 // Most key data are simple ascii (uppercased). 00031 // 00032 // SoM: YES I RE-DID ALL OF THIS BY HAND 00033 #define KEY_RIGHTARROW 0x113 00034 #define KEY_LEFTARROW 0x114 00035 #define KEY_UPARROW 0x111 00036 #define KEY_DOWNARROW 0x112 00037 #define KEY_ESCAPE 0x1B 00038 #define KEY_ENTER 0x0D 00039 #define KEY_SPACE 0x20 00040 #define KEY_TAB 0x09 00041 #define KEY_F1 0x11A 00042 #define KEY_F2 0x11B 00043 #define KEY_F3 0x11C 00044 #define KEY_F4 0x11D 00045 #define KEY_F5 0x11E 00046 #define KEY_F6 0x11F 00047 #define KEY_F7 0x120 00048 #define KEY_F8 0x121 00049 #define KEY_F9 0x122 00050 #define KEY_F10 0x123 00051 #define KEY_F11 0x124 00052 #define KEY_F12 0x125 00053 00054 #define KEY_BACKSPACE 0x08 00055 #define KEY_PAUSE 0x14 00056 00057 #define KEY_EQUALS 0x3D 00058 #define KEY_MINUS 0x2D 00059 00060 #define KEY_LSHIFT 0x130 00061 #define KEY_LCTRL 0x132 00062 #define KEY_LALT 0x134 00063 00064 #define KEY_RSHIFT KEY_LSHIFT 00065 #define KEY_RCTRL KEY_LCTRL 00066 #define KEY_RALT KEY_LALT 00067 00068 #define KEY_INS 0x115 00069 #define KEY_DEL 0x7F 00070 #define KEY_END 0x117 00071 #define KEY_HOME 0x116 00072 #define KEY_PGUP 0x118 00073 #define KEY_PGDN 0x119 00074 00075 // new keys: 00076 00077 #define KEY_CAPSLOCK (0x80+0x3a) 00078 #define KEY_SCRLCK (0x80+0x46) 00079 00080 #define KEYP_0 0 00081 #define KEYP_1 KEY_END 00082 #define KEYP_2 KEY_DOWNARROW 00083 #define KEYP_3 KEY_PGDN 00084 #define KEYP_4 KEY_LEFTARROW 00085 #define KEYP_5 '5' 00086 #define KEYP_6 KEY_RIGHTARROW 00087 #define KEYP_7 KEY_HOME 00088 #define KEYP_8 KEY_UPARROW 00089 #define KEYP_9 KEY_PGUP 00090 00091 #define KEYP_DIVIDE '/' 00092 #define KEYP_PLUS '+' 00093 #define KEYP_MINUS '-' 00094 #define KEYP_MULTIPLY '*' 00095 #define KEYP_PERIOD 0 00096 #define KEYP_EQUALS KEY_EQUALS 00097 #define KEYP_ENTER KEY_ENTER 00098 00099 // Joystick and mouse buttons are now sent 00100 // in ev_keyup and ev_keydown instead of 00101 // ev_mouse and ev_joystick. This makes 00102 // binding commands to them *much* simpler. 00103 00104 #define KEY_MOUSE1 0x143 00105 #define KEY_MOUSE2 0x144 00106 #define KEY_MOUSE3 0x145 00107 #define KEY_MOUSE4 0x146 00108 #define KEY_MWHEELUP 0x147 00109 #define KEY_MWHEELDOWN 0x148 00110 00111 #define KEY_JOY1 0x14B 00112 #define KEY_JOY2 0x14C 00113 #define KEY_JOY3 0x14D 00114 #define KEY_JOY4 0x14E 00115 #define KEY_JOY5 0x14F 00116 #define KEY_JOY6 0x150 00117 #define KEY_JOY7 0x151 00118 #define KEY_JOY8 0x152 00119 #define KEY_JOY9 0x153 00120 #define KEY_JOY10 0x154 00121 #define KEY_JOY11 0x155 00122 #define KEY_JOY12 0x156 00123 #define KEY_JOY13 0x157 00124 #define KEY_JOY14 0x158 00125 #define KEY_JOY15 0x159 00126 #define KEY_JOY16 0x15A 00127 #define KEY_JOY17 0x15B 00128 #define KEY_JOY18 0x15C 00129 #define KEY_JOY19 0x15D 00130 #define KEY_JOY20 0x15E 00131 #define KEY_JOY21 0x15F 00132 #define KEY_JOY22 0x160 00133 #define KEY_JOY23 0x161 00134 #define KEY_JOY24 0x162 00135 #define KEY_JOY25 0x163 00136 #define KEY_JOY26 0x164 00137 #define KEY_JOY27 0x165 00138 #define KEY_JOY28 0x166 00139 #define KEY_JOY29 0x167 00140 #define KEY_JOY30 0x168 00141 #define KEY_JOY31 0x169 00142 #define KEY_JOY32 0x16A 00143 #define KEY_HAT1 0x16B 00144 #define KEY_HAT2 0x16C 00145 #define KEY_HAT3 0x16D 00146 #define KEY_HAT4 0x16E 00147 #define KEY_HAT5 0x16F 00148 #define KEY_HAT6 0x170 00149 #define KEY_HAT7 0x171 00150 #define KEY_HAT8 0x172 00151 #define NUM_KEYS 0x173 00152 00153 #endif // __DOOMKEYS_H__