Provided by: kbd_2.7.1-2ubuntu1_amd64 bug

NAME

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

SYNOPSIS

       setkeycodes [options] 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 specified 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).  To these scancodes  or  scancode
       pairs,  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.

       Some older kernels might hardwire a low scancode range to the equivalent keycodes; setkeycodes will  fail
       when you try to remap these.

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

       -C, --console=DEV
              the console device to be used.

       -V, --version
              print version number.

       -h, --help
              print this usage message.

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.

SEE ALSO

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

kbd                                              24 October 2024                                  SETKEYCODES(8)