X386(1) X386(1)
NAME
X386 - X Window System server for UNIX System V/386
SYNOPSIS
X386 [:displaynumber] [ option ] ...
DESCRIPTION
X386 the advanced display server for the X Window System,
Version 11 Release 5 on i386 hardware. It is normally
started by the xdm(1) daemon or by a script that runs the
program xinit(1) such as startx.
New extensions supported by X386 in X11R5 include X3D-PEX
(PHIGS/+ Extension to X) and XTestExtension1 (Input Syn-
thesis Extension).
CONFIGURATIONS
X386 operates under ISC, SCO, ESIX & AT&T UNIX System
V/3.2 and UHC, ESIX, Dell & AT&T UNIX System V/4.0. The
server supports various classes of popular display
devices, like SuperVGAs, 8514/A clones, WD90C31 based
accellerators and XGA-2 compatible boards (System V/4.x
only).
X386 supports the following popular SuperVGA boards in 256
color mode:
SuperVGA Cards Max Res ChipSet
-------------------------------- -------- -------
Compuadd Hi-Rez card w/1meg 1024x768 ET4000
Diamond SpeedStar 1024x768 ET4000
Diamond SpeedStar 24 1024x768 ET4000
EIZO MD-10 800x600 ET3000
GENOA 5300/5400 800x600 ET3000
GENOA 6400 800x600 GVGA
Optima Mega/1024 1024x768 ET4000
Orchid ProDesigner 800x600 ET3000
Orchid ProDesigner II/1024 1024x768 ET4000
Paradise VGA Professional 640x480 PVGA1A
Paradise VGA 1024 640x480 WD90C00
Sigma Legend 1024x768 ET4000
STB PowerGraph w/1meg 1024x768 ET4000
Swan SVGA equipped with VCO chip 1024x768 ET4000
TRICOM Mega/1024 1024x768 ET4000
TVGA - 8900C 1024x768 TVGA8900C
X386 supports the following 8514/A clones and S3 86C911
based graphics boards:
Cards Max Res ChipSet
-------------------------------- -------- -------
ATI Ultra/Vantage 1024x768 MACH8
ATI Ultra Plus/Pro 1280x1024 MACH32
Diamond Stealth 1024x768 86C911
Diamond Stealth 24 1024x768 86C801
X Version 11 Release 5 1
X386(1) X386(1)
ELSA WINNER 1000 1280x1024 86C928
ELSA WINNER 1280 (Rev D) 1280x1024 82C481
GENOA 1024x768 86C911
Nth Engine/150 1280x1024 82C480
Nth Engine/250 1280x1024 82C481
Number Nine #9GXe 1280x1024 86C928
Orchid F1280 1024x768 86C911
Orchid F1280VA 1024x768 86C801
Paradise 8514 1024x768 WD9500
PixelWorks WhirlWIN 1280x1024 82C480
(Boards based upon the S3 86C911 are also supported in the
1280x1024x16 interlaced mode. All of the resolutions
listed in the above table assume 256 colors per pixel.)
X386 also supports WD90C31 based accelerator boards:
Cards Max Res ChipSet
-------------------------------- -------- -------
Diamond SpeedStar 24X 1024x768 WD90C31
Paradise Accelerator 1024x768 WD90C31
On System V/4.x X386 supports also fully XGA-2 compatible
boards that are compliant with the VESA VXE 1.0. Busmas-
tering is not used and hence also boards that do not use
busmastering can be used as well.
Cards Max Res ChipSet
-------------------------------- -------- -------
Radius MultiView 1024x768 INMOS
NETWORK CONNECTIONS
X386 supports connections made using the following reli-
able byte-streams:
Streams Pseudo Terminal
X386 uses /dev/X/server.n as the filename for streams
pty, where n is the display number; The device being
used is /dev/ptmx. (SVR32, SVR4).
Streams Pipe
X386 uses /dev/Xn[RS] as the filename for streams
pipe, where n is the display number; The device being
used is /dev/spx. (SVR32, SVR4 (only 4.0.4 or
higher).
Unix Domain
X386 uses /tmp/.X11-unix/Xn as the filename for the
socket, where n is the display number. For SVR32 this
uses a streams pipe as emulation via /dev/spx. (SVR32,
SVR4).
TCPIP
X386 listens on port htons(6000+n), where n is the
display number, (SVR3 and SVR4).
X Version 11 Release 5 2
X386(1) X386(1)
OPTIONS
See the command line switches described in the Xserver(1)
manual page.
vtxx forces X386 to use the specified virtual terminal
KEYBOARD
Multiple key presses recognized directly by X386 are:
Ctrl+Alt+Backspace
Immediately kills the server -- no questions
asked. (Can be disabled by specifying "dontzap"
in the configuration file.)
Ctrl+Alt+Keypad-Plus
Change video mode to next one specified in the
configuration file, (increasing video resolution
order).
Ctrl+Alt+Keypad-Minus
Change video mode to previous one specified in the
configuration file, (decreasing video resolution
order).
X386 has also integrated special support for foregin key-
board. The right ALT key is a kind of additional shift
key, who switches between glyph 1 & 2 and glyph 3 & 4 on
a keycap. This key is a troggle key. If you want to lock
this troggle, you have to hold down the right ALT key and
then press the left ALT key. The state of this lock key is
then indicated by the 'scroll lock' led on soeeeee key-
boards. To unlock the right ALT again, press the left ALT
key.
SETUP
X386 uses the configuration file /etc/Xconfig or
/usr/X11/lib/X11/Xconfig for its initial setup. This file is
composed of the following sections:
General Server Parameters
Keyboard Configuration
Mouse Configuration
Video Mode Setup(s)
Table of Known Video Modes
The General Server Parameters section lets you adjust some
generic server parameter which seldom change for a given
site. (The fontpath parameter can also be set from the
command line, see Xserver(1).):
fontpath
sets the search path for fonts. This path is a
comma separated list of directories which the sam-
ple server searches for font databases.
X Version 11 Release 5 3
X386(1) X386(1)
rgbpath sets the name of RGB color database.
sharedmonitor
allows you to use a single monitor for a dual-
headed configuration. If you hit the screen bor-
ders with the mouse the server will physically
switch the video-output to another graphics card.
The results of having specified this behaviour and
not having two drivers specified is undefined and
may crash your machine.
The Keyboard Configuration section starts with a keyword
describing which kind of driver should be used: keyboard
(the normal device) or xqueue (the eventque driver). Note
that the latter one exists only for compatibility with
older releases and for bugs in the asy driver of some
SVR4s. Following these keywords the following options can
be specified:
autorepeat delay rate
changes the behavior of the autorepeat of the key-
board.
dontzap disallows the use of the Ctrl+Alt+Backspace
sequence. This sequence allows you to terminate
the server.
servernum
forces the server to handle the numlock key inter-
nally. The server sends virtual key-events so
applications can use the numberpad.
xleds led ...
makes led available for clients instead of using
the traditional function (Scroll Lock, Caps Lock &
Num Lock)
Similar to above, the Mouse Configuration section starts
with a special keyword, but here we must select the type
of mouse (i.e. it's protocol) that is connected to the
computer. (Using the xqueue driver one of these keyworks
for selecting the mouse type is unecessary, since mouse
I/O is handled by the xqueue-driver.) The mouse types
available are:
busmouse
logitech
microsoft
mmseries
mouseman
mousesystems
ps/2
One should specify busmouse for the Logitech bus mouse.
X Version 11 Release 5 4
X386(1) X386(1)
The logitech driver is only for the C7/S9 mice from Log-
itech. The newer mice made by Logitech have to use either
microsoft or mouseman.
The following options can be specified after this keyword:
baudrate rate
sets the baudrate of the serial mouse to rate. For
mice that allow dynamic speed adjustments (like
logitech) the baudrate is changed in the mouse.
Otherwise the rate is simply set on the computer's
side to allow mice with non-standard rates.
emulate3buttons
enables the emulation of the third mouse button
for mice which only have two physical buttons.
The third button is emulated by pressing both but-
tons simultaneously.
samplerate rate
sets the number of motion/button-events the mouse
sends per second. This is currently only supported
for logitech mice.
The Graphics Driver Setup section starts with the keyword
vga256 if you want to use the SVGA part of X386. To use
the 8514/A part, use wga. For boards using the WD90C31 you
have use wdi and for XGA-2 clones, use xga. Note that you
can specify multiple full Graphics Driver Setup sections
in one Xconfig file. This tells X386 that you have more
than one graphics boards in your system and also multiple
monitors. X386 can drive all boards at the same time (If
there are no hardware conflicts). The first section
relates the to display :0.0, the second one to display
:0.1 and so on. The cursor can be moved between the
screens.
After this keyword a variety of options may be specified:
stat-
icgray,grayscale,staticcolor,pseudocolor,truecolor,directcolor
sets the visual class for the root window of the
screen.
chipset "name"
specifies a chipset so the correct driver can be
used. Possible SVGA chipsets are:
ET3000
ET4000
GVGA
PVGA
TVGA8900C
WD90C00
X Version 11 Release 5 5
X386(1) X386(1)
WD90C11
WD90C30
For the wga driver you can specify here following
8514/A compatible chipset:
82C480
82C481
MACH8
MACH32
86C801
86C805
86C911
86C924
86C928
VESA8514
WD9500
clocks clock ...
specifies the dotclocks that are on your graphics
board.
depth depth
some 8514/As support a special fast 4bpp mode. If
you choose depth 4, this mode will be slected.
This has currently only for the 86C911 a visible
effect. Otherwise the remaining bits of a pixel
are simply unused.
displaysize xdim ydim
sets the display size (internal) to xdim x ydim
(measured in mm).
modes "mode" ...
selects the display modes for this screen. The
first one in the list will be the default display
mode for startup. Internally this list is con-
verted into a circular list. With
Ctrl+Alt+Keypad-Plus and Ctrl+Alt+Keypad-Minus the
current display mode may be changed, and the next
(upward/downward) entry in the list will be used.
vendor "vendorstring"
allows the server to select a special behavior for
*special* hardware. Currently the following
strings are recognized:
legend
Nth Engine/150
Nth Engine/250
WINNER
WhirlWIN
videoram mem
specifies the amount of videoram that is installed
on the graphics board. This is measured in kBytes.
X Version 11 Release 5 6
X386(1) X386(1)
viewport x0 y0
sets the upper left corner of the initial display.
If the virtual resolution is larger than what is
physically displayed, then the initial display
will be centered if viewport is not specified.
virtual xdim ydim
sets the virtual resolution. For example one might
use a display with 800x600, but a virtual resolu-
tion of 1152x900. If the mouse touches the borders
of the display the image scrolls accordingly. This
is called panning. The maximum possible size of
the virtual resolution is dependend upon the
intalled memory on the graphics board. Since one
pixel requires one byte of memory in 256 colors
you have to fullfill the equation: xdim * ydim <
installed video memory. The same is true for the
maximum real resolution. This feature is not sup-
ported by every driver/hardware due to technical
reasons. Accelerated boards generally allow you
only to use 1024x768 as biggest virtual resolution
(give that you have 1MB installed). The rest of
the memory is used by the server to speed up cer-
tain operations.
Note that X386 has some internal capabilities to determine
what hardware it is running on. Thus normally the keywords
chipset, clocks, vendor and videoram don't have to be
specified. But there may be occasions when this autode-
tection mechanism fails, (for example, too high of load on
the machine when you start the server). For cases like
this, one should first run X386 on an unloaded machine,
look at the results of the autodetection (that are printed
out during server startup) and then explicitly specify
these parameters in the configuration file.
The last section is the Table of Video Modes which starts
with the keyword modedb. A list of possible mode-records
follows this keyword. For every mode string in the previ-
ously specified modes line, the server scans the list of
mode-records looking for a matching modename. When a
match occurs, then the dotclock value is compared to those
found on the graphics board. If the dotclock value
matches, then the rest of the values in the mode-record
will be used for that display mode. If there is more than
one matching mode-record (for a given modename and dot-
clock), then the last one matched will be used.
A mode-record consists of seven parts:
modename
is the string that identifies this mode. If one is
not specified, then the modename string of the
last valid mode-record is used.
X Version 11 Release 5 7
X386(1) X386(1)
dotclock
is the dotclock this mode uses. This is the basic
timer for all video signals.
hdisp, hsyncstart, hsyncend, htotal
is the horizontal timing
vdisp, vsyncstart, vsyncend, vtotal
is the vertical timing
interlace
sets interlace display mode.
+hsync, -hsync
selects polarity of HSYNC signal
+vsync, -vsync
selects polarity of VSYNC signal
For details on how to build your own video modes please
refer to the tutorial written by Chin Fang.
A sample config file might look like this:
RGBPath "/usr/X11/lib/X11/rgb"
FontPath "/usr/X11/lib/X11/fonts/misc/,tcp/zok:7000"
Keyboard
AutoRepeat 500 5
Xleds 1 2 3
ServerNumLock
DontZap
Logitech "/dev/tty00"
BaudRate 9600
SampleRate 150
Emulate3Buttons
vga256
Chipset "et4000"
Vendor "legend"
Clocks 25 28 36 62
Virtual 1152 900
ViewPort 0 0
Modes "1024x768" "640x480"
ModeDB
"640x480" 25 640 672 768 800 480 490 492 525
28 640 672 768 800 480 490 492 525
"1024x768" 62 1024 1092 1220 1344 768 786 791 810
Note that a new feature of X11R5 is the ability of the X server
to request fonts from a font server. One specifies a font server
X Version 11 Release 5 8
X386(1) X386(1)
by placing a "tcp/<hostname>:<tcp_port_number>" into the font-
path. In the above example, the fontpath
"/usr/X11/lib/X11/fonts/misc/,tcp/zok:7000" tells X386 to first
try to locate the font in the local directory
/usr/X11/lib/X11/fonts/misc. If that fails, then request the
font from the font server running on machine zok listening for
connections on TCP port number 7000.
FILES
/usr/X11/bin/X386 The X servers
~/Xconifg, /usr/X11/lib/X11/Xconfig, /etc/Xconfig
Server configuration file
/usr/X11/lib/X11/etc/Xconfig.*
sample parts for a configu-
ration file
/usr/X11/lib/X11/etc Additional X386 support
files
/usr/X11/bin/* Client binaries
/usr/X11/include/* Header files
/usr/X11/lib/* Libraries
/usr/X11/lib/X11/fonts/* Fonts
/usr/X11/lib/X11/rgb.{dir,pag,txt}
Color names to RGB mapping
/usr/X11/lib/X11/XErrorDB Client error message
database
/usr/X11//lib/X11/app-defaults/*
Client resource specifica-
tions
/usr/X11/man/cat?/* Manual pages
/etc/X0.hosts Initial access control list
SEE ALSO
X(1), Xserver(1), xdm(1), xinit(1)
BUGS
Starting clients while on another virtual screen may
destroy the contents of the original screen or may even
kill the server. The workaround is to use xrefresh(1) to
refresh the screen.
X Version 11 Release 5 9
X386(1) X386(1)
AUTHORS
Thomas Roell, roell@sgcs.com
Mark W. Snitily, mark@sgcs.com
... and many more people out there on the net who helped
with ideas and bug-fixes.
X Version 11 Release 5 10