version 1 showing authors affecting page license.
.
Rev |
Author |
# |
Line |
1 |
perry |
1 |
SETKEYCODES |
|
|
2 |
!!!SETKEYCODES |
|
|
3 |
NAME |
|
|
4 |
SYNOPSIS |
|
|
5 |
DESCRIPTION |
|
|
6 |
THEORY |
|
|
7 |
OPTIONS |
|
|
8 |
BUGS |
|
|
9 |
SEE ALSO |
|
|
10 |
---- |
|
|
11 |
!!NAME |
|
|
12 |
|
|
|
13 |
|
|
|
14 |
setkeycodes - load kernel scancode-to-keycode mapping table entries |
|
|
15 |
!!SYNOPSIS |
|
|
16 |
|
|
|
17 |
|
|
|
18 |
__setkeycodes__ ''scancode keycode [[scancode keycode ... |
|
|
19 |
]'' |
|
|
20 |
!!DESCRIPTION |
|
|
21 |
|
|
|
22 |
|
|
|
23 |
The __setkeycodes__ command reads its arguments two at a |
|
|
24 |
time, each pair of arguments consisting of a scancode (given |
|
|
25 |
in hexadecimal) and a keycode (given in decimal). For each |
|
|
26 |
such pair, it tells the kernel keyboard driver to map the |
|
|
27 |
specified scancode to the specified keycode. |
|
|
28 |
|
|
|
29 |
|
|
|
30 |
This command is useful only for people with slightly unusual |
|
|
31 |
keyboards, that have a few keys which produce scancodes that |
|
|
32 |
the kernel does not recognize. |
|
|
33 |
!!THEORY |
|
|
34 |
|
|
|
35 |
|
|
|
36 |
The usual PC keyboard produces a series of scancodes for |
|
|
37 |
each key press and key release. (Scancodes are shown by |
|
|
38 |
__showkey -s__, see showkey(1).) The kernel parses this |
|
|
39 |
stream of scancodes, and converts it to a stream of keycodes |
|
|
40 |
(key press/release events). (Keycodes are shown by |
|
|
41 |
__showkey__.) Apart from a few scancodes with special |
|
|
42 |
meaning, and apart from the sequence produced by the Pause |
|
|
43 |
key, and apart from shiftstate related scancodes, and apart |
|
|
44 |
from the key up/down bit, the stream of scancodes consists |
|
|
45 |
of unescaped scancodes xx (7 bits) and escaped scancodes e0 |
|
|
46 |
xx (8+7 bits). It is hardwired in the current kernel that in |
|
|
47 |
the range 1-88 (0x01-0x58) keycode equals scancode. For the |
|
|
48 |
remaining scancodes (0x59-0x7f) or scancode pairs (0xe0 0x00 |
|
|
49 |
- 0xe0 0x7f) a corresponding keycode can be assigned (in the |
|
|
50 |
range 1-127). For example, if you have a Macro key that |
|
|
51 |
produces e0 6f according to showkey(1), the |
|
|
52 |
command |
|
|
53 |
|
|
|
54 |
|
|
|
55 |
__setkeycodes__ e06f 112 |
|
|
56 |
|
|
|
57 |
|
|
|
58 |
will assign the keycode 112 to it, and then loadkeys(1) can |
|
|
59 |
be used to define the function of this key. |
|
|
60 |
!!OPTIONS |
|
|
61 |
|
|
|
62 |
|
|
|
63 |
None. |
|
|
64 |
!!BUGS |
|
|
65 |
|
|
|
66 |
|
|
|
67 |
The keycodes of X have nothing to do with those of Linux. |
|
|
68 |
Unusual keys can be made visible under Linux, but not under |
|
|
69 |
X. |
|
|
70 |
!!SEE ALSO |
|
|
71 |
|
|
|
72 |
|
|
|
73 |
dumpkeys(1), loadkeys(1), showkey(1), |
|
|
74 |
getkeycodes(8). |
|
|
75 |
---- |