1 #if !defined(WINKEYBD_H)
4 *Copyright (C) 1994-2000 The XFree86 Project, Inc. All Rights Reserved.
6 *Permission is hereby granted, free of charge, to any person obtaining
7 * a copy of this software and associated documentation files (the
8 *"Software"), to deal in the Software without restriction, including
9 *without limitation the rights to use, copy, modify, merge, publish,
10 *distribute, sublicense, and/or sell copies of the Software, and to
11 *permit persons to whom the Software is furnished to do so, subject to
12 *the following conditions:
14 *The above copyright notice and this permission notice shall be
15 *included in all copies or substantial portions of the Software.
17 *THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18 *EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19 *MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
20 *NONINFRINGEMENT. IN NO EVENT SHALL THE XFREE86 PROJECT BE LIABLE FOR
21 *ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
22 *CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
23 *WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25 *Except as contained in this notice, the name of the XFree86 Project
26 *shall not be used in advertising or otherwise to promote the sale, use
27 *or other dealings in this Software without prior written authorization
28 *from the XFree86 Project.
30 * Authors: Harold L Hunt II
34 * We need symbols for the scan codes of keys.
36 #include "winkeynames.h"
40 #define WIN_KEYMAP_COLS 3
42 /* Rows 160 through 165 correspond to software-generated codes, which
43 * may not be associated with the appropriate scan code.
47 /* count Windows VK, ASCII, ASCII when extended VK */
51 /* 3 */ VK_CANCEL
, 0, KEY_Break
,
61 /* 13 */ VK_RETURN
, 0, KEY_KP_Enter
,
64 /* 16 */ VK_SHIFT
, 0, 0,
65 /* 17 */ VK_CONTROL
, 0, KEY_RCtrl
,
66 /* 18 */ VK_MENU
, 0, KEY_AltLang
,
67 /* 19 */ VK_PAUSE
, KEY_Pause
, 0,
81 /* 33 */ VK_PRIOR
, 0, KEY_PgUp
,
82 /* 34 */ VK_NEXT
, 0, KEY_PgDown
,
83 /* 35 */ VK_END
, 0, KEY_End
,
84 /* 36 */ VK_HOME
, 0, KEY_Home
,
85 /* 37 */ VK_LEFT
, 0, KEY_Left
,
86 /* 38 */ VK_UP
, 0, KEY_Up
,
87 /* 39 */ VK_RIGHT
, 0, KEY_Right
,
88 /* 40 */ VK_DOWN
, 0, KEY_Down
,
92 /* 44 */ VK_SNAPSHOT
, 0, KEY_Print
,
93 /* 45 */ VK_INSERT
, 0, KEY_Insert
,
94 /* 46 */ VK_DELETE
, 0, KEY_Delete
,
139 /* 91 */ VK_LWIN
, KEY_LMeta
, 0,
140 /* 92 */ VK_RWIN
, KEY_RMeta
, 0,
141 /* 93 */ VK_APPS
, KEY_Menu
, 0,
159 /* 111 */ VK_DIVIDE
, 0, KEY_KP_Divide
,
208 /* 160 */ VK_LSHIFT
, KEY_ShiftL
, 0,
209 /* 161 */ VK_RSHIFT
, KEY_ShiftR
, 0,
210 /* 162 */ VK_LCONTROL
, KEY_LCtrl
, 0,
211 /* 163 */ VK_RCONTROL
, KEY_RCtrl
, 0,
212 /* 164 */ VK_LMENU
, KEY_Alt
, 0,
213 /* 165 */ VK_RMENU
, KEY_AltLang
, 0,
221 /* 173 */ VK_VOLUME_MUTE
, 0, KEY_Mute
,
222 /* 174 */ VK_VOLUME_DOWN
, 0, KEY_AudioLower
,
223 /* 175 */ VK_VOLUME_UP
, 0, KEY_AudioRaise
,
224 /* 176 */ VK_MEDIA_NEXT_TRACK
, 0, KEY_NEXTSONG
,
225 /* 177 */ VK_MEDIA_PREV_TRACK
, 0, KEY_PREVIOUSSONG
,
226 /* 178 */ VK_MEDIA_STOP
, 0, KEY_STOPCD
,
227 /* 179 */ VK_MEDIA_PLAY_PAUSE
, 0, KEY_PLAYPAUSE
,
271 /* 223 */ VK_OEM_8
, 0, KEY_RCtrl
,
272 /* at least on Canadian Multilingual Standard layout */
304 /* 255 */ VK_FN
, 0, KEY_Fn
305 /* Most keyboards don't generate a scancode for Fn, but a few do... */
308 #endif /* WINKEYBD_H */