wscons - console access
option WSEMUL_SUN
option WSEMUL_NO_VT100
option WSEMUL_DEFAULT="xxx"
option WS_KERNEL_FG=WSCOL_XXX
option WS_KERNEL_BG=WSCOL_XXX
option WSDISPLAY_COMPAT_PCVT
option WSDISPLAY_COMPAT_SYSCONS
option WSDISPLAY_COMPAT_USL
option WSDISPLAY_COMPAT_RAWKBD
wsdisplay* at ...
wskbd* at ... mux N
wsmouse* at ... mux N
pseudo-device wsmux [count]
The wscons driver provides support for machine-independent
access to the
console.
wscons is made of a number of cooperating modules, in particular
+o Hardware support for display adapters, keyboards and
mice; see
wsdisplay(4), wskbd(4), and wsmouse(4).
+o Input event multiplexor; see wsmux(4).
+o Terminal emulation modules (see below).
+o Compatibility options to support control operations and
other lowlevel
behaviour of existing terminal drivers (see below).
Terminal emulations [Toc] [Back]
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 always available.
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 by default
on sparc and
sparc64 architectures, or if
option 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 (as far
as present on
the actually used keyboard).
ANSI colors are also supported on this emulation, if
the TERM environment
variable is set to rcons-color.
This emulation is sufficient for full-screen applications.
vt100 is available by default, but can be disabled with
option WSEMUL_NO_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:
+o VT52 support, 132-column-mode, smooth scroll,
light background,
keyboard autorepeat control, external
printer support,
keyboard locking, newline/linefeed switching: Escape sequences
related to these features are ignored or answered
with standard
replies. (DECANM, DECCOLM, DECSCLM, DECSCNM, DECARM,
DECPFF, DECPEX, KAM, LNM)
+o Function keys are not reprogrammable and fonts
can not be
downloaded. DECUDK and DECDLD sequences will be
ignored.
+o Neither C1 control set characters will be recognized nor will
8-bit keyboard codes be delivered.
+o The ``DEC supplemental graphic'' font is approximated by the
ISO-latin-1 font, though there are subtle differences.
+o The actual rendering quality depends on the underlying graphics
hardware driver. Characters might be missing
in the
available fonts and be substituted by more or
less fitting replacements.
Depending on the keyboard used, not all function
keys might be
available.
In addition to the plain VT100 functions, the following features
are supported:
+o ANSI colors
+o 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 allows selecting one of the
described
terminal options as the default choice. The default goes
into 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 running X servers
or other
programs using low-level console driver functions which were
written
specifically for other console drivers to run on OpenBSD
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 getting raw XT keyboard
scancodes from
PC keyboards as needed by i386 X
servers.
WSDISPLAY_COMPAT_PCVT Emulates enough of the OpenBSD /
i386 ``pcvt''
driver to make X servers work.
WSDISPLAY_COMPAT_SYSCONS Emulates enough of the i386
FreeBSD
``syscons'' driver to make X
servers work.
Useful with FreeBSD binary emulation.
Linux/i386 X servers do usually run if the first two options
are enabled
together with the OpenBSD 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:
option WS_KERNEL_FG=WSCOL_XXX
option WS_KERNEL_BG=WSCOL_XXX
option WS_KERNEL_COLATTR="(WSATTR_XXX | WSATTR_YYY)"
option WS_KERNEL_MONOATTR="(WSATTR_XXX | WSATTR_YYY)"
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/ttyC0). ``WS_KERNEL_FG''
and
``WS_KERNEL_BG'' set the foreground / background used
on color displays.
The ``WSCOL_XXX'' arguments are colors as defined in
/usr/include/dev/wscons/wsdisplayvar.h. ``WS_KERNEL_COLATTR'' and
``WS_KERNEL_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.
option 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 as X servers controlling a virtual
screen. To avoid a non-responsive application locking
the whole
console system, a screen switch will be rolled back if
the user application
does not respond to a screen switch request
within some
time. This option sets the timeout (in seconds); the
default value
is 5 seconds.
intro(4), wsdisplay(4), wskbd(4), wsmouse(4), wsmux(4), wsconscfg(8),
wsconsctl(8), wsfontload(8), wsmoused(8)
OpenBSD 3.6 July 26, 1998
[ Back ] |