.\" $OpenBSD: wskbd.4,v 1.12 2003/07/09 13:26:20 jmc Exp $ .\" $NetBSD: wskbd.4,v 1.5 2000/03/20 11:51:59 pk Exp $ .\" .\" Copyright (c) 1999 .\" Matthias Drochner. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .Dd February 11, 2003 .Dt WSKBD 4 .Os .Sh NAME .Nm wskbd .Nd generic keyboard support in wscons .Sh SYNOPSIS .Cd "wskbd* at pckbd? console ? mux 1" (PS/2 keyboard) .Cd "wskbd* at ukbd? console ? mux 1" (USB keyboard) .Cd "wskbd* at akbd? console ? mux 1" (Apple ADB keyboard) .Cd "wskbd* at comkbd? console ? mux 1" .Cd "wskbd* at zskbd? console ? mux 1" (Sun serial keyboard) .Cd "wskbd* at hilkbd? console ? mux 1" (HIL keyboard) .Sh DESCRIPTION The .Nm driver handles common tasks for keyboards within the .Xr wscons 4 framework. It is attached to the hardware specific keyboard drivers and provides their connection to .Dq wsdisplay devices and a character device interface. .Pp The common keyboard support consists of: .Bl -bullet .It Mapping from keycodes (defined by the specific keyboard driver) to keysyms (hardware independent, defined in .Pa /usr/include/dev/wscons/wsksymdef.h ) . .It Handling of .Dq compose sequences. Characters commonly not present as separate keys on keyboards can be generated after either a special .Dq compose key is pressed or a .Dq dead accent character is used. .It Certain translations, like turning an .Dq ALT modifier into an .Dq ESC prefix. .It Automatic key repetition .Pf ( Dq typematic ) . .It Parameter handling for .Dq keyboard bells . .It Generation of .Dq keyboard events for use by X servers. .El .Pp The .Nm driver provides a number of ioctl functions to control key maps and other parameters. These functions are accessible through the associated .Dq wsdisplay device as well. A complete list is in .Pa /usr/include/dev/wscons/wsconsio.h . The .Xr wsconsctl 8 utility allows access to key maps and other variables. .Pp The .Em console locator in the configuration line refers to the device's use as input part of the operating system console. A device specification containing a positive value here will only match if the device is in use as system console. (The console device selection in early system startup is not influenced.) This way, the console device can be connected to a known .Nm wskbd device instance. .Pp The .Nm driver traps certain key sequences intended to perform special functions. The .Cm Ctrl+Alt+Esc sequence will initiate the .Xr ddb 4 kernel debugger if the .Dq ddb.console .Xr sysctl 8 variable is set. When attached to a .Xr wsdisplay 4 device, .Cm Ctrl+Alt+Fx switches virtual terminals and the .Cm Shift+PgUp and .Cm Shift+PgDn combinations provide scrollback functionality if the underlying hardware driver supports it. .Sh FILES .Bl -tag -width /usr/include/dev/wscons/wsksymdef.h -compact .It Pa /dev/wskbd* .It Pa /usr/include/dev/wscons/wsksymdef.h .It Pa /usr/include/dev/wscons/wsconsio.h .El .Sh SEE ALSO .Xr akbd 4 , .Xr comkbd 4 , .Xr hilkbd 4 , .Xr intro 4 , .Xr pckbd 4 , .Xr ukbd 4 , .Xr wscons 4 , .Xr wsmux 4 , .Xr zskbd 4 , .Xr wsconsctl 8