NAME
wscons
- workstation console access
SYNOPSIS
options WSEMUL_SUN
options WSEMUL_VT100
options WSEMUL_NO_DUMB
options WSEMUL_DEFAULT="xxx"
options WS_DEFAULT_FG=WSCOL_XXX
options WS_DEFAULT_BG=WSCOL_XXX
options WS_DEFAULT_COLATTR="(WSATTR_XXX | WSATTR_YYY)"
options WS_DEFAULT_MONOATTR="(WSATTR_XXX | WSATTR_YYY)"
options WS_KERNEL_FG=WSCOL_XXX
options WS_KERNEL_BG=WSCOL_XXX
options WS_KERNEL_COLATTR="(WSATTR_XXX | WSATTR_YYY)"
options WS_KERNEL_MONOATTR="(WSATTR_XXX | WSATTR_YYY)"
options WSCOMPAT_USL_SYNCTIMEOUT=nnn
options WSDISPLAY_COMPAT_PCVT
options WSDISPLAY_COMPAT_SYSCONS
options WSDISPLAY_COMPAT_USL
options WSDISPLAY_COMPAT_RAWKBD
options WSKBD_EVENT_AUTOREPEAT
options WSKBD_USONLY
wsdisplay* at ...
wskbd* at ... mux N
wsmouse* at ... mux N
pseudo-device wsmux N
DESCRIPTION
The
wscons
driver provides support for machine independent access to the console.
wscons
is made of a number of cooperating modules, in particular
-
hardware support for display adapters, keyboards and mice, see
wsdisplay(4),
wskbd(4),and
wsmouse(4)
-
input event multiplexor, see
wsmux(4)
-
terminal emulation modules (see below), and
-
compatibility options to support control operations and other low-level
behaviour of existing terminal drivers (see below)
Terminal emulations
wscons
does not define its own set of terminal control sequences and special keyboard
codes in terms of
termcap(5).
Instead a
``terminal emulation''
is assigned to each virtual screen when the screen is created. (See
wsconscfg(8).)
Different terminal emulations can be active at the same time on one display.
The following choices are available:
- dumb
-
This minimal terminal support is available unless the kernel option
options WSEMUL_NO_DUMB
was specified at build time. No control sequences are supported besides
the ASCII control characters. The cursor is not addressable. Only ASCII
keyboard codes will be delivered, cursor and functions keys do not work.
- sun
-
The
``sun''
console emulation is available if
options WSEMUL_SUN
was specified at kernel build time. It supports the control sequences of
SUN
machine consoles and delivers its keyboard codes for function and
keypad keys in use.
This emulation is sufficient for full-screen applications.
- vt100
-
is available with the kernel compile option
options WSEMUL_VT100.
It provides the most commonly used functions of
DEC VT100
terminals with some extensions introduced by the
DEC VT220
and
DEC VT320
models. The features of the original
VT100
which are not or not completely implemented are:
In addition to the plain
VT100
functions are supported:
-
ANSI colors.
-
Some
VT220
-like presentation state settings and -reports (DECRSPS), especially
tabulator settings.
In most applications,
wscons
will work sufficiently as a
VT220
emulator.
The
WSEMUL_DEFAULT
kernel option is used to select one of the described terminal options
as the default choice. The default takes effect at kernel startup, i.e.
for the operating system console or additional screens allocated
through the
WSDISPLAY_DEFAULTSCREENS
option (see
wsdisplay(4)),
or if no emulation type was passed to the
wsconscfg(8)
utility.
Compatibility options
these options allow X servers and other programs using low-level
console driver functions which were written specifically for other
console drivers to run on
NetBSD
systems. The options are in particular:
- WSDISPLAY_COMPAT_USL
-
Support the protocol for switches between multiple virtual screens on
one display as used by most PC-UNIX variants.
- WSDISPLAY_COMPAT_RAWKBD
-
Allows to get raw XT keyboard scancodes from PC keyboards as needed
by i386 X servers.
- WSDISPLAY_COMPAT_PCVT
-
Emulates enough of the
NetBSD/i386
``pcvt''
driver to make X servers work.
- WSDISPLAY_COMPAT_SYSCONS
-
Emulates enough of the
FreeBSD
``syscons''
driver to make X servers work. Useful with
FreeBSD
binary emulation.
Linux/i386 X servers usually run successfully if the first two options are
enabled together with the
NetBSD
Linux binary emulation.
(To have programs looking for device special files of other console drivers
find the
wscons
driver entry points, symlinks are a helpful measure.)
Other options
- options WS_DEFAULT_FG=WSCOL_XXX
- ,
- options WS_DEFAULT_BG=WSCOL_XXX
- ,
- options WS_DEFAULT_COLATTR="(WSATTR_XXX | WSATTR_YYY)"
-
and
- options WS_DEFAULT_MONOATTR="(WSATTR_XXX | WSATTR_YYY)"
-
allow to make default console output appear in specific colors and
attributes.
``WS_DEFAULT_FG''
and
``WS_DEFAULT_BG''
set the foreground / background used on color displays. The
``WSCOL_XXX''
arguments are colors as defined in
src/sys/dev/wscons/wsdisplayvar.h
.
``WS_DEFAULT_COLATTR''
and
``WS_DEFAULT_MONOATTR''
are additional attribute flags used on color or monochrome displays,
respectively.
The arguments are defined in the same header file.
Whether the attributes
are supported or not depends on the actually used graphics adapter.
These options are ignored by the
``dumb''
terminal emulation.
- options WS_KERNEL_FG=WSCOL_XXX
- ,
- options WS_KERNEL_BG=WSCOL_XXX
- ,
- options WS_KERNEL_COLATTR="(WSATTR_XXX | WSATTR_YYY)"
-
and
- options WS_KERNEL_MONOATTR="(WSATTR_XXX | WSATTR_YYY)"
-
allow to make console output originating from the kernel appear differently
than output from user level programs (via
/dev/console
or the specific tty
device like
/dev/ttyE0
).
Their meaning is the same as their
`WS_DEFAULT_*'
counterparts.
- options WSCOMPAT_USL_SYNCTIMEOUT=nnn
-
The virtual screen switching protocol enabled by
``WSDISPLAY_COMPAT_USL''
uses a somewhat complex handshake protocol to pass control to user programs
such as X servers controlling a virtual screen. In order
to prevent a non-responsive
application from locking the whole console system,
a screen switch will be rolled
back after a 5 second timeout if the application does not respond.
This option can be used to specify in seconds a different timeout value.
- options WSKBD_EVENT_AUTOREPEAT
-
If set, this option enables auto repeat even in event mode.
The auto repeat will generate key down events while the key is pressed.
- options WSKBD_USONLY
-
In order to strip down the space usage of wscons,
all keymaps except the US english one can be removed from the kernel
with this option, which results in a space gain of about 10kB.
SEE ALSO
wsdisplay(4),
wskbd(4),
wsmouse(4),
wsmux(4),
wsconscfg(8),
wsconsctl(8),
wsfontload(8),
wscons(9)