Xmach(1) X Version 11(Release 5) Xmach(1)
NAME
Xmach - X Window System server for UNIX System V/386
SYNOPSIS
Xmach [:displaynumber] [ option ] ...
DESCRIPTION
Xmach is the generic sample 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.
CONFIGURATIONS
Xmach operates under ISC, SCO, ESIX & AT&T UNIX System V/3.2 and UHC,
ESIX, Dell & AT&T UNIX System V/4.0. The sever supports the DELL DGX High
Performance Graphics Adapter, as well as the ATI Ultra and ATI Advantage
cards. The server also 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
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
The core X11R5 source tree as supplied in the public release was compiled
and tested under ISC 2.2.1 (UNIX System V/3.2), Dell and AT&T UNIX System
V/4.0.
NETWORK CONNECTIONS
Xmach supports connections made using the following reliable byte-
streams:
Unix Domain
Xmach uses /tmp/.X11-unix/Xn as the filename for the socket, where n
is the display number, (SVR4).
TCP/IP
Xmach listens on port htons(6000+n), where n is the display number,
(SVR3 and SVR4).
10/89 Page 1
Xmach(1) X Version 11(Release 5) Xmach(1)
OPTIONS
See the command line switches described in the Xserver(1) manual page.
Xmach does not accept any additional switches.
KEYBOARD
Multiple key presses recognized directly by Xmach 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).
SETUP
Xmach uses the configuration file /usr/Xmach/Xconfig for its initial
setup. This file is composed of the following sections:
General Server Parameters
Keyboard Configuration
Mouse Configuration
Video Mode Setup
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 sample server searches for font
databases.
rgbpath sets the name of RGB color database.
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 shouldn't be used. Following this
keyword the following options can be specified:
autorepeat delay rate
changes the behavior of the autorepeat of the keyboard.
dontzap disallows the use of the Ctrl+Alt+Backspace sequence. This
sequence allows you to terminate the server.
Page 2 10/89
Xmach(1) X Version 11(Release 5) Xmach(1)
servernum
forces the server to handle the numlock key internally. 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 this section
is obsolete since mouse I/O is handled by the xqueue-driver.) The mouse
types available are:
busmouse
logitech
microsoft
mmseries
mouseman
mousesystems
(One should specify busmouse for the Logitech bus mouse.)
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 buttons 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. After
this keyword a variety of options may be specified:
staticgray,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
chipsets are:
et3000
10/89 Page 3
Xmach(1) X Version 11(Release 5) Xmach(1)
et4000
gvga
pvga
clocks clock ...
specifies the dotclocks that are on your graphics board.
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 converted 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
videoram mem
specifies the amount of videoram that is installed on the
graphics board. This is measured in kBytes.
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 resolution of 1152x900. If the mouse
touches the borders of the display the image scrolls accordingly.
This is called panning.
Note that Xmach 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 autodetection mechanism fails, (for example, too high of load on the
machine when you start the server). For cases like this, one should
first run Xmach 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 previously specified modes line, the server
Page 4 10/89
Xmach(1) X Version 11(Release 5) Xmach(1)
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
dotclock), 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.
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/Xmach/lib/X11/rgb"
FontPath "/usr/Xmach/lib/X11/fonts/misc/,:zok:7000"
Keyboard
AutoRepeat 500 5
Xleds 1 2 3
ServerNumLock
DontZap
Logitech "/dev/tty00"
BaudRate 9600
SampleRate 150
Emulate3Buttons
10/89 Page 5
Xmach(1) X Version 11(Release 5) Xmach(1)
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 by placing a
":<hostname>:<tcp_port_number>" into the fontpath. In the above example, the
fontpath "/usr/Xmach/lib/X11/fonts/misc/,:zok:7000" tells Xmach to first try to
locate the font in the local directory /usr/Xmach/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/Xmach/bin/Xmach The X server
/usr/Xmach/lib/X11/Xconfig Server configuration file
/usr/Xmach/lib/X11/etc Additional Xmach support files
/usr/Xmach/bin/* Client binaries
/usr/Xmach/include/* Header files
/usr/Xmach/lib/* Libraries
/usr/Xmach/lib/X11/fonts/* Fonts
/usr/Xmach/lib/X11/rgb.{dir,pag,txt}
Color names to RGB mapping
/usr/Xmach/lib/X11/XErrorDB Client error message database
/usr/Xmach//lib/X11/app-defaults/*
Client resource specifications
/usr/Xmach/man/man?/* Manual pages
/etc/X0.hosts Initial access control list
SEE ALSO
X(1), Xserver(1), xdm(1), xinit(1)
Page 6 10/89
Xmach(1) X Version 11(Release 5) Xmach(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.
AUTHORS
Thomas Roell, roell@informatik.tu-muenchen.de
TU-Muenchen: Server and SVR4 stuff
Mark W. Snitily, mark@zok.sgcs.com
SGCS: SVR3 support, X Consortium Sponsor
... and many more people out there on the net who helped with ideas and
bug-fixes.
Xmach X11R5 source and binaries are available from SGCS. Send email to
mark@zok.sgcs.com or ...!mips!zok!mark for details.
10/89 Page 7