Odamex
Setting the Standard in Multiplayer Doom
common/doomkeys.h
Go to the documentation of this file.
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__
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends