/* Void Main's man pages */

{ phpMan } else { main(); }

Command: man perldoc info search(apropos)  


SETKEYCODES(8)                                          Keyboard Support                                          SETKEYCODES(8)



NAME
       setkeycodes - load kernel scancode-to-keycode mapping table entries

SYNOPSIS
       setkeycodes scancode keycode ...

DESCRIPTION
       The  setkeycodes  command  reads  its  arguments two at a time, each pair of arguments consisting of a scancode (given in
       hexadecimal) and a keycode (given in decimal). For each such pair, it tells the kernel keyboard driver to map the  speci-
       fied scancode to the specified keycode.

       This command is useful only for people with slightly unusual keyboards, that have a few keys which produce scancodes that
       the kernel does not recognize.


THEORY
       The usual PC keyboard produces a series of scancodes for each key press and key release. (Scancodes are shown by  showkey
       -s,  see  showkey(1).)   The  kernel  parses  this  stream  of  scancodes,  and  converts it to a stream of keycodes (key
       press/release events).  (Keycodes are shown by showkey.)  Apart from a few scancodes with special meaning, and apart from
       the  sequence produced by the Pause key, and apart from shiftstate related scancodes, and apart from the key up/down bit,
       the stream of scancodes consists of unescaped scancodes xx (7 bits) and escaped scancodes e0 xx (8+7 bits).  It is  hard-
       wired  in  the  current  kernel  that  in the range 1-88 (0x01-0x58) keycode equals scancode. For the remaining scancodes
       (0x59-0x7f) or scancode pairs (0xe0 0x00 - 0xe0 0x7f) a corresponding keycode can be assigned (in the range 1-127).   For
       example, if you have a Macro key that produces e0 6f according to showkey(1), the command
              setkeycodes e06f 112
       will assign the keycode 112 to it, and then loadkeys(1) can be used to define the function of this key.

       USB keyboards have standardized keycodes and setkeycodes doesn't affect them at all.


2.6 KERNELS
       In  2.6  kernels  key  codes lie in the range 1-255, instead of 1-127.  (It might be best to confine oneself to the range
       1-239.)

       In 2.6 kernels raw mode, or scancode mode, is not very raw at all.  The code returned by showkey -s will change after use
       of setkeycodes.  A kernel bug. See also showkey(1).

OPTIONS
       None.

BUGS
       The keycodes of X have nothing to do with those of Linux.  Unusual keys can be made visible under Linux, but not under X.

       setkeycodes affects only the "first" input device that has modifiable scancode-to-keycode mapping.  If there is more than
       one such device, setkeycodes cannot change the mapping of other devices than the "first" one.


SEE ALSO
       dumpkeys (1), loadkeys (1), showkey (1), getkeycodes (8)





Local                                                      8 Nov 1994                                             SETKEYCODES(8)

Valid XHTML 1.0!Valid CSS!