1 // This may look like C code, but it is really -*- C++ -*- 2 3 // ------------------------------------------------------------------ 4 // The Goldware Library 5 // Copyright (C) 1990-1999 Odinn Sorensen 6 // Copyright (C) 1999-2000 Alexander S. Aganichev 7 // ------------------------------------------------------------------ 8 // This library is free software; you can redistribute it and/or 9 // modify it under the terms of the GNU Library General Public 10 // License as published by the Free Software Foundation; either 11 // version 2 of the License, or (at your option) any later version. 12 // 13 // This library is distributed in the hope that it will be useful, 14 // but WITHOUT ANY WARRANTY; without even the implied warranty of 15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 // Library General Public License for more details. 17 // 18 // You should have received a copy of the GNU Library General Public 19 // License along with this program; if not, write to the Free 20 // Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, 21 // MA 02111-1307, USA 22 // ------------------------------------------------------------------ 23 // $Id: gkbdcode.h,v 1.1 2011/02/18 19:46:01 stas_degteff Exp $ 24 // ------------------------------------------------------------------ 25 // GCUI: Golded+ Character-oriented User Interface. 26 // Define mnemonic symbols for full set of PC-Compatible non-display 27 // control and extended keycodes. 28 // ------------------------------------------------------------------ 29 30 #ifndef __gkbdcode_h 31 #define __gkbdcode_h 32 33 34 // ------------------------------------------------------------------ 35 // Notes and Caveats (from the original TCXL 6.0 TCXLCOD.H file) 36 // 37 // 1. The keycode symbols suffixed with 'G' and marked in the 'G' 38 // column are the "Grey" keys around the numeric keypad or in a 39 // separate cursor-key cluster on "enhanced" keyboards. Those 40 // marked in the 'N' column are on numeric keypad. 41 // 2. The keycodes marked in the 'E' column are only available on 42 // "enhanced" 101/102-key keyboards with extended keyboard BIOS 43 // support enabled. The extended BIOS returns keycodes containing 44 // 0xE0 to distinguish duplicated keys, which are marked in the 45 // 'T' column. 46 // 3. If an "enhanced" keyboard and extended BIOS is detected, the 47 // DEFAULT is to enable extended BIOS support and translation of 48 // any duplicate extended keycodes. 49 // 4. Keycodes are ordered by character-code, then scan-code. 50 // 5. Control-Break, which has an actual keycode of 0x000 is 51 // returned as 0xFFFF. 52 // 6. The ASCII control-code names are shown in square brackets. 53 // 7. The Key_M_??? mouse-return codes are those returned by 54 // _MouGet(). 55 // ------------------------------------------------------------------ 56 57 #include <gdefs.h> 58 59 60 // ------------------------------------------------------------------ 61 62 #define Key_Lsr '<' 63 #define Key_Gtr '>' 64 #define Key_Multi '*' 65 #define Key_Plus '+' 66 #define Key_Minus '-' 67 68 69 // ------------------------------------------------------------------ 70 //- Normal key -------- N G E T - 71 #define Key_0 '0' // <0> - - - - 72 #define Key_1 '1' // <1> - - - - 73 #define Key_2 '2' // <2> - - - - 74 #define Key_3 '3' // <3> - - - - 75 #define Key_4 '4' // <4> - - - - 76 #define Key_5 '5' // <5> - - - - 77 #define Key_6 '6' // <6> - - - - 78 #define Key_7 '7' // <7> - - - - 79 #define Key_8 '8' // <8> - - - - 80 #define Key_9 '9' // <9> - - - - 81 82 #define Key_A 0x1E61 // <a> - - - - 83 #define Key_B 0x3062 // <b> - - - - 84 #define Key_C 0x2E63 // <c> - - - - 85 #define Key_D 0x2064 // <d> - - - - 86 #define Key_E 0x1265 // <e> - - - - 87 #define Key_F 0x2166 // <f> - - - - 88 #define Key_G 0x2267 // <g> - - - - 89 #define Key_H 0x2368 // <h> - - - - 90 #define Key_I 0x1769 // <i> - - - - 91 #define Key_J 0x246a // <j> - - - - 92 #define Key_K 0x256b // <k> - - - - 93 #define Key_L 0x266c // <l> - - - - 94 #define Key_M 0x326d // <m> - - - - 95 #define Key_N 0x316e // <n> - - - - 96 #define Key_O 0x186f // <o> - - - - 97 #define Key_P 0x1970 // <p> - - - - 98 #define Key_Q 0x1071 // <q> - - - - 99 #define Key_R 0x1372 // <r> - - - - 100 #define Key_S 0x1F73 // <s> - - - - 101 #define Key_T 0x1474 // <t> - - - - 102 #define Key_U 0x1675 // <u> - - - - 103 #define Key_V 0x2F76 // <v> - - - - 104 #define Key_W 0x1177 // <w> - - - - 105 #define Key_X 0x2D78 // <x> - - - - 106 #define Key_Y 0x1579 // <y> - - - - 107 #define Key_Z 0x2C7A // <z> - - - - 108 #define Key_StrG 0x372A // <*> - G - - 109 #define Key_PlsG 0x4E2B // <+> - G - - 110 #define Key_Com 0x332C // <,> - - - - 111 #define Key_MinG 0x4A2D // <-> - G - - 112 #define Key_Dot 0x342E // <.> - - - - 113 #define Key_BS 0x0E08 // <BS> - - - - 114 #define Key_5Num 0x4C00 // <Cent> N - E - 115 #define Key_Del 0x5300 // <Del> N - - - 116 #define Key_DelG 0x53E0 // <Del> Grey - G E T 117 #define Key_Dwn 0x5000 // <Down> N - - - 118 #define Key_DwnG 0x50E0 // <Down> Grey - G E T 119 #define Key_End 0x4F00 // <End> N - - - 120 #define Key_EndG 0x4FE0 // <End> Grey - G E T 121 #define Key_Ent 0x1C0D // <Enter> - - - - 122 #define Key_EntG 0xE00D // <Enter> Grey - G E T 123 #define Key_Esc 0x011B // <Esc> - - - - 124 #define Key_F1 0x3B00 // <F1> - - - - 125 #define Key_F2 0x3C00 // <F2> - - - - 126 #define Key_F3 0x3D00 // <F3> - - - - 127 #define Key_F4 0x3E00 // <F4> - - - - 128 #define Key_F5 0x3F00 // <F5> - - - - 129 #define Key_F6 0x4000 // <F6> - - - - 130 #define Key_F7 0x4100 // <F7> - - - - 131 #define Key_F8 0x4200 // <F8> - - - - 132 #define Key_F9 0x4300 // <F9> - - - - 133 #define Key_F10 0x4400 // <F10> - - - - 134 #define Key_F11 0x8500 // <F11> - - E - 135 #define Key_F12 0x8600 // <F12> - - E - 136 #define Key_Home 0x4700 // <Home> N - - - 137 #define Key_HomeG 0x47E0 // <Home> Grey - G E T 138 #define Key_Ins 0x5200 // <Ins> N - - - 139 #define Key_InsG 0x52E0 // <Ins> Grey - G E T 140 #define Key_Lft 0x4B00 // <Left> N - - - 141 #define Key_LftG 0x4BE0 // <Left> Grey - G E T 142 #define Key_PgDn 0x5100 // <PgDn> N - - - 143 #define Key_PgDnG 0x51E0 // <PgDn> Grey - G E T 144 #define Key_PgUp 0x4900 // <PgUp> N - - - 145 #define Key_PgUpG 0x49E0 // <PgUp> Grey - G E T 146 #define Key_Rgt 0x4D00 // <Right> N - - - 147 #define Key_RgtG 0x4DE0 // <Right> Grey - G E T 148 #define Key_Space 0x3920 // <Space> - - - - 149 #define Key_Tab 0x0F09 // <Tab> - - - - 150 #define Key_Up 0x4800 // <Up> N - - - 151 #define Key_UpG 0x48E0 // <Up> Grey - G E T 152 #define Key_Quo 0x2827 // <'> - - - - 153 #define Key_Min 0x0C2D // <-> - - - - 154 #define Key_Sls 0x352F // </> - - - - 155 #define Key_Smi 0x273B // <;> - - - - 156 #define Key_Equ 0x0D3D // <=> - - - - 157 #define Key_Lbr 0x1A5B // <[> - - - - 158 #define Key_Bsl 0x2B5C // <\> - - - - 159 #define Key_Rbr 0x1B5D // <]> - - - - 160 #define Key_Grv 0x2960 // <`> - - - - 161 162 // ------------------------------------------------------------------ 163 //- Shift key --------- N G E T - 164 #define Key_S_0 0x0B29 // <0 )> - - - - 165 #define Key_S_1 0x0221 // <1 !> - - - - 166 #define Key_S_2 0x0340 // <2 @> - - - - 167 #define Key_S_3 0x0423 // <3 #> - - - - 168 #define Key_S_4 0x0524 // <4 $> - - - - 169 #define Key_S_5 0x0625 // <5 %> - - - - 170 #define Key_S_6 0x075E // <6 ^> - - - - 171 #define Key_S_7 0x0826 // <7 &> - - - - 172 #define Key_S_8 0x092A // <8 *> - - - - 173 #define Key_S_9 0x0A28 // <9 (> - - - - 174 #define Key_S_A 0x1E41 // <A> - - - - 175 #define Key_S_B 0x3042 // <B> - - - - 176 #define Key_S_C 0x2E43 // <C> - - - - 177 #define Key_S_D 0x2044 // <D> - - - - 178 #define Key_S_E 0x1245 // <E> - - - - 179 #define Key_S_F 0x2146 // <F> - - - - 180 #define Key_S_G 0x2247 // <G> - - - - 181 #define Key_S_H 0x2348 // <H> - - - - 182 #define Key_S_I 0x1749 // <I> - - - - 183 #define Key_S_J 0x244a // <J> - - - - 184 #define Key_S_K 0x254b // <K> - - - - 185 #define Key_S_L 0x264c // <L> - - - - 186 #define Key_S_M 0x324d // <M> - - - - 187 #define Key_S_N 0x314e // <N> - - - - 188 #define Key_S_O 0x184f // <O> - - - - 189 #define Key_S_P 0x1950 // <P> - - - - 190 #define Key_S_Q 0x1051 // <Q> - - - - 191 #define Key_S_R 0x1352 // <R> - - - - 192 #define Key_S_S 0x1F53 // <S> - - - - 193 #define Key_S_T 0x1454 // <T> - - - - 194 #define Key_S_U 0x1655 // <U> - - - - 195 #define Key_S_V 0x2F56 // <V> - - - - 196 #define Key_S_W 0x1157 // <W> - - - - 197 #define Key_S_X 0x2D58 // <X> - - - - 198 #define Key_S_Y 0x1559 // <Y> - - - - 199 #define Key_S_Z 0x2C5a // <Z> - - - - 200 #define Key_S_Quo 0x2822 // <' "> - - - - 201 #define Key_S_Com 0x333C // <, >> - - - - 202 #define Key_S_Min 0x0C5F // <- _> - - - - 203 #define Key_S_Dot 0x343E // <. <> - - - - 204 #define Key_S_Sls 0x353F // </ ?> - - - - 205 #define Key_S_Smi 0x273A // <; :> - - - - 206 #define Key_S_Equ 0x0D2B // <= +> - - - - 207 #define Key_S_Lbr 0x1A7B // <[ {> - - - - 208 #define Key_S_Bsl 0x2B7C // <\ |> - - - - 209 #define Key_S_Rbr 0x1B7D // <] }> - - - - 210 #define Key_S_Grv 0x297E // <` ~> - - - - 211 #define Key_S_5Num 0x4C35 // S <Cent 5> N - - - 212 #define Key_S_F1 0x5400 // S <F1> - - - - 213 #define Key_S_F2 0x5500 // S <F2> - - - - 214 #define Key_S_F3 0x5600 // S <F3> - - - - 215 #define Key_S_F4 0x5700 // S <F4> - - - - 216 #define Key_S_F5 0x5800 // S <F5> - - - - 217 #define Key_S_F6 0x5900 // S <F6> - - - - 218 #define Key_S_F7 0x5A00 // S <F7> - - - - 219 #define Key_S_F8 0x5B00 // S <F8> - - - - 220 #define Key_S_F9 0x5C00 // S <F9> - - - - 221 #define Key_S_F10 0x5D00 // S <F10> - - - - 222 #define Key_S_F11 0x8700 // S <F11> - - E - 223 #define Key_S_F12 0x8800 // S <F12> - - E - 224 #define Key_S_Tab 0x0F00 // S <Tab> - - - - 225 #if !defined(__UNIX__) || defined(__USE_NCURSES__) 226 #define Key_S_Ins 0xD200 // S <Ins> Grey - G E T 227 #define Key_S_Lft 0xCB00 // S <Left> Grey - G E T 228 #define Key_S_PgDn 0xD100 // S <PgDn> Grey - G E T 229 #define Key_S_PgUp 0xC900 // S <PgUp> Grey - G E T 230 #define Key_S_Rgt 0xCD00 // S <Right> Grey - G E T 231 #define Key_S_Up 0xC800 // S <Up> Grey - G E T 232 #define Key_S_Dwn 0xD000 // S <Down> Grey - G E T 233 #define Key_S_End 0xCF00 // S <End> Grey - G E T 234 #define Key_S_Home 0xC700 // S <Home> Grey - G E T 235 #define Key_S_Del 0xD300 // S <Del .> N - - - 236 #else 237 #define Key_S_Home 0x4737 // S <Home 7> N - - - 238 #define Key_S_HomeG 0x47E0 // S <Home> Grey - G E T 239 #define Key_S_Ins 0x5230 // S <Ins 0> N - - - 240 #define Key_S_InsG 0x52E0 // S <Ins> Grey - G E T 241 #define Key_S_Lft 0x4B34 // S <Left 4> N - - - 242 #define Key_S_LftG 0x4BE0 // S <Left> Grey - G E T 243 #define Key_S_PgDn 0x5133 // S <PgDn 3> N - - - 244 #define Key_S_PgDnG 0x51E0 // S <PgDn> Grey - G E T 245 #define Key_S_PgUp 0x4939 // S <PgUp 9> N - - - 246 #define Key_S_PgUpG 0x49E0 // S <PgUp> Grey - G E T 247 #define Key_S_Rgt 0x4D36 // S <Right 6> N - - - 248 #define Key_S_RgtG 0x4DE0 // S <Right> Grey - G E T 249 #define Key_S_Up 0x4838 // S <Up 8> N - - - 250 #define Key_S_UpG 0x48E0 // S <Up> Grey - G E T 251 #define Key_S_Dwn 0x5032 // S <Down 2> N - - - 252 #define Key_S_DwnG 0x50E0 // S <Down> Grey - G E T 253 #define Key_S_End 0x4F31 // S <End 1> N - - - 254 #define Key_S_EndG 0x4FE0 // S <End> Grey - G E T 255 #define Key_S_Del 0x532E // S <Del .> N - - - 256 #define Key_S_DelG 0x53E0 // S <Del> Grey - G E T 257 #endif 258 259 // ------------------------------------------------------------------ 260 //- Control key ------- N G E T - 261 #define Key_C_2 0x0300 // C <2 @> [NUL] - - - - 262 #define Key_C_A 0x1E01 // C <A> [SOH] - - - - 263 #define Key_C_B 0x3002 // C <B> [STX] - - - - 264 #define Key_C_C 0x2E03 // C <C> [ETX] - - - - 265 #define Key_C_D 0x2004 // C <D> [EOT] - - - - 266 #define Key_C_E 0x1205 // C <E> [ENQ] - - - - 267 #define Key_C_F 0x2106 // C <F> [ACK] - - - - 268 #define Key_C_G 0x2207 // C <G> [BEL] - - - - 269 #define Key_C_H 0x2308 // C <H> [BS] - - - - 270 #define Key_C_I 0x1709 // C <I> [HT] - - - - 271 #define Key_C_J 0x240A // C <J> [LF] - - - - 272 #define Key_C_K 0x250B // C <K> [VT] - - - - 273 #define Key_C_L 0x260C // C <L> [FF] - - - - 274 #define Key_C_M 0x320D // C <M> [CR] - - - - 275 #define Key_C_N 0x310E // C <N> [SO] - - - - 276 #define Key_C_O 0x180F // C <O> [SI] - - - - 277 #define Key_C_P 0x1910 // C <P> [DLE] - - - - 278 #define Key_C_Q 0x1011 // C <Q> [DC1] - - - - 279 #define Key_C_R 0x1312 // C <R> [DC2] - - - - 280 #define Key_C_S 0x1F13 // C <S> [DC3] - - - - 281 #define Key_C_T 0x1414 // C <T> [DC4] - - - - 282 #define Key_C_U 0x1615 // C <U> [NAK] - - - - 283 #define Key_C_V 0x2F16 // C <V> [SYN] - - - - 284 #define Key_C_W 0x1117 // C <W> [ETB] - - - - 285 #define Key_C_X 0x2D18 // C <X> [CAN] - - - - 286 #define Key_C_Y 0x1519 // C <Y> [EM] - - - - 287 #define Key_C_Z 0x2C1A // C <Z> [SUB] - - - - 288 #define Key_C_StrG 0x7200 // C <*> Grey - G E - 289 #define Key_C_PlsG 0x9000 // C <+> Grey - G E - 290 #define Key_C_Min 0x0C1F // C <- _> - - - - 291 #define Key_C_MinG 0x8E00 // C <-> Grey - G E - 292 #define Key_C_6 0x071E // C <7 &> [RS] - - - - 293 #define Key_C_Brk 0xFFFF // C <Break> Grey - - - - 294 #define Key_C_BS 0x0E7F // C <BS> [RUB] - - - - 295 #define Key_C_5Num 0x8F00 // C <Cent 5> N - E - 296 #define Key_C_Del 0x9300 // C <Del 2> - - E - 297 #define Key_C_DelG 0x93E0 // C <Del> Grey - G E T 298 #define Key_C_Dwn 0x9100 // C <Dwn 2> - - E - 299 #define Key_C_DwnG 0x91E0 // C <Dwn> Grey - G E T 300 #define Key_C_End 0x7500 // C <End 1> N - - - 301 #define Key_C_EndG 0x75E0 // C <End> Grey - G E T 302 #define Key_C_EntG 0xE00A // C <Enter> Grey - G E T 303 #define Key_C_Ent 0x1C0A // C <Enter> [LF] - - - - 304 #define Key_C_F1 0x5E00 // C <F1> - - - - 305 #define Key_C_F2 0x5F00 // C <F2> - - - - 306 #define Key_C_F3 0x6000 // C <F3> - - - - 307 #define Key_C_F4 0x6100 // C <F4> - - - - 308 #define Key_C_F5 0x6200 // C <F5> - - - - 309 #define Key_C_F6 0x6300 // C <F6> - - - - 310 #define Key_C_F7 0x6400 // C <F7> - - - - 311 #define Key_C_F8 0x6500 // C <F8> - - - - 312 #define Key_C_F9 0x6600 // C <F9> - - - - 313 #define Key_C_F10 0x6700 // C <F10> - - - - 314 #define Key_C_F11 0x8900 // C <F11> - - E - 315 #define Key_C_F12 0x8A00 // C <F12> - - E - 316 #define Key_C_Home 0x7700 // C <Home 7> N - - - 317 #define Key_C_HomeG 0x77E0 // C <Home> Grey - G E T 318 #define Key_C_Ins 0x9200 // C <Ins 0> - - E - 319 #define Key_C_InsG 0x92E0 // C <Ins> Grey - G E T 320 #define Key_C_Lft 0x7300 // C <Left 4> N - - - 321 #define Key_C_LftG 0x73E0 // C <Left> Grey - G E T 322 #define Key_C_PgDn 0x7600 // C <PgDn 3> N - - - 323 #define Key_C_PgDnG 0x76E0 // C <PgDn> Grey - G E T 324 #define Key_C_PgUp 0x8400 // C <PgUp 9> N - - - 325 #define Key_C_PgUpG 0x84E0 // C <PgUp> Grey - G E T 326 #define Key_C_Rgt 0x7400 // C <Right 6> N - - - 327 #define Key_C_RgtG 0x74E0 // C <Right> Grey - G E T 328 #define Key_C_Tab 0x9400 // C <Tab> - - E - 329 #define Key_C_Up 0x8D00 // C <Up 8> - - E - 330 #define Key_C_UpG 0x8DE0 // C <Up> Grey - G E T 331 #define Key_C_Lbr 0x1A1B // C <[ {> [ESC] - - - - 332 #define Key_C_Bsl 0x2B1C // C <\ |> [FS] - - - - 333 #define Key_C_Rbr 0x1B1D // C <] }> [GS] - - - - 334 335 // ------------------------------------------------------------------ 336 //- Alt key ----------- N G E T - 337 #define Key_A_0 0x8100 // A <0 )> - - - - 338 #define Key_A_1 0x7800 // A <1 !> - - - - 339 #define Key_A_2 0x7900 // A <2 @> - - - - 340 #define Key_A_3 0x7A00 // A <3 #> - - - - 341 #define Key_A_4 0x7B00 // A <4 ^> - - - - 342 #define Key_A_5 0x7C00 // A <5 %> - - - - 343 #define Key_A_6 0x7D00 // A <6 %> - - - - 344 #define Key_A_7 0x7E00 // A <7 &> - - - - 345 #define Key_A_8 0x7F00 // A <8 *> - - - - 346 #define Key_A_9 0x8000 // A <9 (> - - - - 347 #define Key_A_A 0x1E00 // A <A> - - - - 348 #define Key_A_B 0x3000 // A <B> - - - - 349 #define Key_A_C 0x2E00 // A <C> - - - - 350 #define Key_A_D 0x2000 // A <D> - - - - 351 #define Key_A_E 0x1200 // A <E> - - - - 352 #define Key_A_F 0x2100 // A <F> - - - - 353 #define Key_A_G 0x2200 // A <G> - - - - 354 #define Key_A_H 0x2300 // A <H> - - - - 355 #define Key_A_I 0x1700 // A <I> - - - - 356 #define Key_A_J 0x2400 // A <J> - - - - 357 #define Key_A_K 0x2500 // A <K> - - - - 358 #define Key_A_L 0x2600 // A <L> - - - - 359 #define Key_A_M 0x3200 // A <M> - - - - 360 #define Key_A_N 0x3100 // A <N> - - - - 361 #define Key_A_O 0x1800 // A <O> - - - - 362 #define Key_A_P 0x1900 // A <P> - - - - 363 #define Key_A_Q 0x1000 // A <Q> - - - - 364 #define Key_A_R 0x1300 // A <R> - - - - 365 #define Key_A_S 0x1F00 // A <S> - - - - 366 #define Key_A_T 0x1400 // A <T> - - - - 367 #define Key_A_U 0x1600 // A <U> - - - - 368 #define Key_A_V 0x2F00 // A <V> - - - - 369 #define Key_A_W 0x1100 // A <W> - - - - 370 #define Key_A_X 0x2D00 // A <X> - - - - 371 #define Key_A_Y 0x1500 // A <Y> - - - - 372 #define Key_A_Z 0x2C00 // A <Z> - - - - 373 #define Key_A_Quo 0x2800 // A <' "> - - E - 374 #define Key_A_PlsG 0x4E00 // A <+> Grey - G E - 375 #define Key_A_Com 0x3300 // A <, <> - - E - 376 #define Key_A_Min 0x8200 // A <- _> - - - - 377 #define Key_A_MinG 0x4A00 // A <-> Grey - G E - 378 #define Key_A_Dot 0x3400 // A <. >> - - E - 379 #define Key_A_Sls 0x3500 // A </ ?> - - E - 380 #define Key_A_Smi 0x2700 // A <; :> - - E - 381 #define Key_A_Equ 0x8300 // A <= +> - - - - 382 #define Key_A_BS 0x0E00 // A <BS> - - E - 383 #define Key_A_5Num 0x4C00 // A <Cent 5> N - E - 384 #define Key_A_Del 0xA300 // A <Del> - - E - 385 #define Key_A_DelG 0xA300 // A <Del> Grey - G E - 386 #define Key_A_Dwn 0xA000 // A <Dwn> - - E - 387 #define Key_A_DwnG 0xA000 // A <Dwn> Grey - G E - 388 #define Key_A_End 0x9F00 // A <End> - - E - 389 #define Key_A_EndG 0x9F00 // A <End> Grey - G E - 390 #define Key_A_EntG 0xA600 // A <Enter Grey - G E - 391 #define Key_A_Ent 0x1C00 // A <Enter> - - E - 392 #define Key_A_Esc 0x0100 // A <Esc> - - E - 393 #define Key_A_F1 0x6800 // A <F1> - - - - 394 #define Key_A_F2 0x6900 // A <F2> - - - - 395 #define Key_A_F3 0x6A00 // A <F3> - - - - 396 #define Key_A_F4 0x6B00 // A <F4> - - - - 397 #define Key_A_F5 0x6C00 // A <F5> - - - - 398 #define Key_A_F6 0x6D00 // A <F6> - - - - 399 #define Key_A_F7 0x6E00 // A <F7> - - - - 400 #define Key_A_F8 0x6F00 // A <F8> - - - - 401 #define Key_A_F9 0x7000 // A <F9> - - - - 402 #define Key_A_F10 0x7100 // A <F10> - - - - 403 #define Key_A_F11 0x8B00 // A <F11> - - E - 404 #define Key_A_F12 0x8C00 // A <F12> - - E - 405 #define Key_A_Home 0x9700 // A <Home> - - E - 406 #define Key_A_HomeG 0x9700 // A <Home> Grey - G E - 407 #define Key_A_Ins 0xA200 // A <Ins> - - E - 408 #define Key_A_InsG 0xA200 // A <Ins> Grey - G E - 409 #define Key_A_Lft 0x9B00 // A <Left> - - E - 410 #define Key_A_LftG 0x9B00 // A <Left> Grey - G E - 411 #define Key_A_PgDn 0xA100 // A <PgDn> - - E - 412 #define Key_A_PgDnG 0xA100 // A <PgDn> Grey - G E - 413 #define Key_A_PgUp 0x9900 // A <PgUp> - - E - 414 #define Key_A_PgUpG 0x9900 // A <PgUp> Grey - G E - 415 #define Key_A_Rgt 0x9D00 // A <Right - - E - 416 #define Key_A_RgtG 0x9D00 // A <Right Grey - G E - 417 #define Key_A_Tab 0xA500 // A <Tab> - - E - 418 #define Key_A_Up 0x9800 // A <Up> - - E - 419 #define Key_A_UpG 0x9800 // A <Up> Grey - G E - 420 #define Key_A_Lbr 0x1A00 // A <[ {> - - E - 421 #define Key_A_Bsl 0x2B00 // A <\ |> - - E - 422 #define Key_A_Rbr 0x1B00 // A <] }> - - E - 423 #define Key_A_Grv 0x2900 // A <` ~> - - E - 424 425 // ------------------------------------------------------------------ 426 //- Mouse KeyCode Returns ------- 427 #define Key_M_Scn 0xD4 // Scan-code 428 #define Key_M_Clk 0x30 // Single-click keycodes 429 #define Key_M_ClkL 0xD431 // Left-button 430 #define Key_M_ClkR 0xD432 // Right-button 431 #define Key_M_ClkM 0xD434 // Middle-button 432 433 #define Key_M_DClk 0x20 // Double-click keycodes 434 #define Key_M_DClkL 0xD421 // Left-button 435 #define Key_M_DClkR 0xD422 // Right-button 436 #define Key_M_DClkM 0xD424 // Middle-button 437 438 #define Key_M_Prs 0x30 // Single-press keycodes 439 #define Key_M_PrsL 0xD431 // Left-button 440 #define Key_M_PrsR 0xD432 // Right-button 441 #define Key_M_PrsM 0xD434 // Middle-button 442 #define Key_M_Rel 0x40 // Single-release keycodes 443 #define Key_M_RelL 0xD441 // Left-button 444 #define Key_M_RelR 0xD442 // Right-button 445 #define Key_M_RelM 0xD444 // Middle-button 446 447 #define Key_M_Mov 0x50 // Mouse motion keycodes 448 #define Key_M_Up 0xD450 // Motion [Up] 449 #define Key_M_Dwn 0xD451 // Motion [Down] 450 #define Key_M_Lft 0xD452 // Motion [Left] 451 #define Key_M_Rgt 0xD453 // Motion [Right] 452 453 454 // ------------------------------------------------------------------ 455 // Goldware internal keycodes 456 457 #define Key_Tick 0x0200 // Timer tick 458 #define Key_Auto 0xFD00 // Auto macro 459 #define Key_Macro 0xFE00 // Macro 460 461 462 // ------------------------------------------------------------------ 463 464 #endif 465 466 // ------------------------------------------------------------------ 467