STANNIX Solutions for the Real World


Manual: setkeycodes

SETKEYCODES(8)				   System Manager's Manual			      SETKEYCODES(8)

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 conโ€
       sists 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 oneโ€
       self 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)