2 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
3 SOFTWARE CORPORATION ("PARALLAX"). PARALLAX, IN DISTRIBUTING THE CODE TO
4 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
5 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
6 IN USING, DISPLAYING, AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
7 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
8 FREE PURPOSES. IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
9 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES. THE END-USER UNDERSTANDS
10 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.
11 COPYRIGHT 1993-1998 PARALLAX SOFTWARE CORPORATION. ALL RIGHTS RESERVED.
14 * $Source: /cvs/cvsroot/d2x/arch/ggi/include/key_arch.h,v $
17 * $Date: 2002-02-15 07:18:00 $
19 * Header for keyboard functions
21 * $Log: not supported by cvs2svn $
22 * Revision 1.1 2000/01/17 05:58:38 donut
23 * switched from multiply reimplemented/reduntant/buggy key.c for each arch to a single main/key.c that calls the much smaller arch-specific parts. Also adds working emulated key repeat support.
25 * Revision 1.2 1999/07/10 02:59:06 donut
28 * Revision 1.19 1994/10/24 13:58:12 john
29 * Hacked in support for pause key onto code 0x61.
31 * Revision 1.18 1994/10/21 15:17:10 john
32 * Added KEY_PRINT_SCREEN
34 * Revision 1.17 1994/08/31 12:22:13 john
37 * Revision 1.16 1994/08/24 18:53:50 john
38 * Made Cyberman read like normal mouse; added dpmi module; moved
39 * mouse from assembly to c. Made mouse buttons return time_down.
41 * Revision 1.15 1994/08/18 14:56:16 john
42 * *** empty log message ***
44 * Revision 1.14 1994/08/08 10:43:24 john
45 * Recorded when a key was pressed for key_inkey_time.
47 * Revision 1.13 1994/06/17 17:17:28 john
48 * Added keyd_time_last_key_was_pressed or something like that.
50 * Revision 1.12 1994/04/29 12:14:19 john
51 * Locked all memory used during interrupts so that program
52 * won't hang when using virtual memory.
54 * Revision 1.11 1994/02/17 15:57:14 john
55 * Changed key libary to C.
57 * Revision 1.10 1994/01/31 08:34:09 john
58 * Fixed reversed lshift/rshift keys.
60 * Revision 1.9 1994/01/18 10:58:17 john
61 * *** empty log message ***
63 * Revision 1.8 1993/10/16 19:24:43 matt
64 * Added new function key_clear_times() & key_clear_counts()
66 * Revision 1.7 1993/10/15 10:17:09 john
67 * added keyd_last_key_pressed and released for use with recorder.
69 * Revision 1.6 1993/10/06 16:20:37 john
70 * fixed down arrow bug
72 * Revision 1.5 1993/10/04 13:26:42 john
73 * changed the #defines for scan codes.
75 * Revision 1.4 1993/09/28 11:35:20 john
78 * Revision 1.3 1993/09/20 18:36:43 john
79 * *** empty log message ***
81 * Revision 1.1 1993/07/10 13:10:39 matt
92 #define ARCH_KEY_0 GIIUC_0
93 #define ARCH_KEY_1 GIIUC_1
94 #define ARCH_KEY_2 GIIUC_2
95 #define ARCH_KEY_3 GIIUC_3
96 #define ARCH_KEY_4 GIIUC_4
97 #define ARCH_KEY_5 GIIUC_5
98 #define ARCH_KEY_6 GIIUC_6
99 #define ARCH_KEY_7 GIIUC_7
100 #define ARCH_KEY_8 GIIUC_8
101 #define ARCH_KEY_9 GIIUC_9
103 #define ARCH_KEY_A GIIUC_A
104 #define ARCH_KEY_B GIIUC_B
105 #define ARCH_KEY_C GIIUC_C
106 #define ARCH_KEY_D GIIUC_D
107 #define ARCH_KEY_E GIIUC_E
108 #define ARCH_KEY_F GIIUC_F
109 #define ARCH_KEY_G GIIUC_G
110 #define ARCH_KEY_H GIIUC_H
111 #define ARCH_KEY_I GIIUC_I
112 #define ARCH_KEY_J GIIUC_J
113 #define ARCH_KEY_K GIIUC_K
114 #define ARCH_KEY_L GIIUC_L
115 #define ARCH_KEY_M GIIUC_M
116 #define ARCH_KEY_N GIIUC_N
117 #define ARCH_KEY_O GIIUC_O
118 #define ARCH_KEY_P GIIUC_P
119 #define ARCH_KEY_Q GIIUC_Q
120 #define ARCH_KEY_R GIIUC_R
121 #define ARCH_KEY_S GIIUC_S
122 #define ARCH_KEY_T GIIUC_T
123 #define ARCH_KEY_U GIIUC_U
124 #define ARCH_KEY_V GIIUC_V
125 #define ARCH_KEY_W GIIUC_W
126 #define ARCH_KEY_X GIIUC_X
127 #define ARCH_KEY_Y GIIUC_Y
128 #define ARCH_KEY_Z GIIUC_Z
130 #define ARCH_KEY_MINUS GIIUC_Minus
131 #define ARCH_KEY_EQUAL GIIUC_Equal
132 #define ARCH_KEY_DIVIDE GIIUC_Slash
133 #define ARCH_KEY_SLASH GIIUC_BackSlash
134 #define ARCH_KEY_COMMA GIIUC_Comma
135 #define ARCH_KEY_PERIOD GIIUC_Period
136 #define ARCH_KEY_SEMICOL GIIUC_Semicolon
138 #define ARCH_KEY_LBRACKET GIIUC_BracketLeft
139 #define ARCH_KEY_RBRACKET GIIUC_BracketRight
141 #define ARCH_KEY_RAPOSTRO GIIUC_Apostrophe
142 #define ARCH_KEY_LAPOSTRO GIIUC_Grave
144 #define ARCH_KEY_ESC GIIUC_Escape
145 #define ARCH_KEY_ENTER GIIK_Enter
146 #define ARCH_KEY_BACKSP GIIUC_BackSpace
147 #define ARCH_KEY_TAB GIIUC_Tab
148 #define ARCH_KEY_SPACEBAR GIIUC_Space
150 #define ARCH_KEY_NUMLOCK GIIK_NumLock
151 #define ARCH_KEY_SCROLLOCK GIIK_ScrollLock
152 #define ARCH_KEY_CAPSLOCK GIIK_CapsLock
154 #define ARCH_KEY_LSHIFT GIIK_ShiftL
155 #define ARCH_KEY_RSHIFT GIIK_ShiftR
157 #define ARCH_KEY_LALT GIIK_AltL
158 #define ARCH_KEY_RALT GIIK_AltR
160 #define ARCH_KEY_LCTRL GIIK_CtrlL
161 #define ARCH_KEY_RCTRL GIIK_CtrlR
163 #define ARCH_KEY_F1 GIIK_F1
164 #define ARCH_KEY_F2 GIIK_F2
165 #define ARCH_KEY_F3 GIIK_F3
166 #define ARCH_KEY_F4 GIIK_F4
167 #define ARCH_KEY_F5 GIIK_F5
168 #define ARCH_KEY_F6 GIIK_F6
169 #define ARCH_KEY_F7 GIIK_F7
170 #define ARCH_KEY_F8 GIIK_F8
171 #define ARCH_KEY_F9 GIIK_F9
172 #define ARCH_KEY_F10 GIIK_F10
173 #define ARCH_KEY_F11 GIIK_F11
174 #define ARCH_KEY_F12 GIIK_F12
176 #define ARCH_KEY_PAD0 GIIK_P0
177 #define ARCH_KEY_PAD1 GIIK_P1
178 #define ARCH_KEY_PAD2 GIIK_P2
179 #define ARCH_KEY_PAD3 GIIK_P3
180 #define ARCH_KEY_PAD4 GIIK_P4
181 #define ARCH_KEY_PAD5 GIIK_P5
182 #define ARCH_KEY_PAD6 GIIK_P6
183 #define ARCH_KEY_PAD7 GIIK_P7
184 #define ARCH_KEY_PAD8 GIIK_P8
185 #define ARCH_KEY_PAD9 GIIK_P9
186 #define ARCH_KEY_PADMINUS GIIK_PMinus
187 #define ARCH_KEY_PADPLUS GIIK_PPlus
188 #define ARCH_KEY_PADPERIOD GIIK_PDecimal
189 #define ARCH_KEY_PADDIVIDE GIIK_PSlash
190 #define ARCH_KEY_PADMULTIPLY GIIK_PAsterisk
191 #define ARCH_KEY_PADENTER GIIK_PEnter
193 #define ARCH_KEY_INSERT GIIK_Insert
194 #define ARCH_KEY_HOME GIIK_Home
195 #define ARCH_KEY_PAGEUP GIIK_PageUp
196 #define ARCH_KEY_DELETE GIIK_Delete
197 #define ARCH_KEY_END GIIK_End
198 #define ARCH_KEY_PAGEDOWN GIIK_PageDown
199 #define ARCH_KEY_UP GIIK_Up
200 #define ARCH_KEY_DOWN GIIK_Down
201 #define ARCH_KEY_LEFT GIIK_Left
202 #define ARCH_KEY_RIGHT GIIK_Right
204 #define ARCH_KEY_PRINT_SCREEN GIIK_PrintScreen
205 #define ARCH_KEY_PAUSE GIIK_Pause