Return to BSD News archive
Xref: sserve comp.windows.x.i386unix:15626 comp.unix.pc-clone.32bit:8229 comp.unix.bsd:16291 comp.windows.x:76912 comp.answers:9421 news.answers:35935
Newsgroups: comp.windows.x.i386unix,comp.unix.pc-clone.32bit,comp.unix.bsd,comp.windows.x,comp.answers,news.answers
Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!msunews!uwm.edu!news.alpha.net!news.mathworks.com!udel!gatech!swrinde!cs.utexas.edu!utnut!cannon.ecf!steve
From: steve@ecf.toronto.edu (Steve Kotsopoulos)
Subject: X on Intel-based Unix Frequently Asked Questions [FAQ]
X-Nntp-Posting-Host: skule.ecf
Message-ID: <D4sqzG.MzF@ecf.toronto.edu>
Followup-To: poster
Summary: X options for Intel-based Unix (SYSV/386, BSD, Linux, Mach)
Originator: steve@skule.ecf
Sender: news@ecf.toronto.edu (News Administrator)
Reply-To: steve@ecf.toronto.edu
Organization: University of Toronto, Engineering Computing Facility
Date: Thu, 2 Mar 1995 04:54:52 GMT
Approved: news-answers-request@MIT.Edu
Expires: Sat, 1 Apr 1995 00:00:00 GMT
Lines: 594
Archive-name: x-faq/Intel-Unix-X-faq
Last-modified: 1 Mar 1995
This article includes answers to:
I) What options do I have for X software on my Intel-based Unix system?
Free options
Commercial options
II) What is XFree86 and where do I get it?
What is XFree86?
What OSs are supported?
What video hardware is supported?
Who else supports accelerated boards?
What other hardware or software requirements are there?
Where can I get source and binaries for XFree86?
IV) What general things should I know about running XFree86?
Installation directories
Configuration files
Determining VGA dot clocks and monitor modes
Rebuilding/reconfiguring the server from the link kit
V) What OS-specific things should I know about running XFree86?
SVR4
SVR3
BSD
Linux
Mach
VI) What things should I know for building XFree86 from source?
VII) Is there anything special about building clients with XFree86?
BSD compatibility library
ANSICCOPTIONS
VIII) Where to get more information
The latest version of this article is available by anonymous
ftp from ftp.x.org:/contrib/faqs/Intel-Unix-X-faq.Z
This article does NOT include answers to general X questions, since they
are already covered by the X FAQ that is regularly posted by David B. Lewis
<faq%craft@uunet.uu.net>.
For information on X packages for DOS systems, consult the (PC)NFS FAQ
available from seagull.rtd.com:/pub/tcpip/pcnfs.FAQ.v1.2.Z
If you have anything to add or change on this FAQ just let me know.
(especially if you had a problem that someone else was able to help you with)
Send changes to steve@ecf.toronto.edu, please put 'FAQ' somewhere
in the subject line so that my mail filter will put it in the correct folder.
Please do not ask me questions that are not answered in this FAQ. I don't
have time to respond to these individually. Instead, post your question
to the net, and send me the question and answer together when you get it.
Frequently Asked Questions About X on Intel-based Unix (with answers)
=====================================================================
I) What options do I have for X software on my Intel-based Unix system?
Subject: Free options
The BEST option is XFree86, which is an enhanced version of X386 1.2.
Any other version of X386 will be more difficult to compile.
Information on how to obtain it is listed below.
X386 is the port of the X11 server to System V/386 that was done by
Thomas Roell (bugs@xinside.com). It supports a wide variety of SVGA boards.
There are 2 major free versions: X386 1.1 is based on X11R4,
X386 1.2 is included in MIT's X11R5 distribution (ie. you
don't need to patch it into the MIT source any more).
Several other options are available for people running NeXTSTEP on
i486 and Pentium hardware. Information on mouseX, Cub'X and Co-Xist
is available via anonymous ftp from cs.orst.edu in /pub/next/XNeXT.
Subject: Commercial options
1) Metro Link
2213 W. McNab Road
Pompano Beach, FL 33069
(305) 938-0283
Fax: (305) 970-7351
email: sales@metrolink.com
Summary: OS: QNX, SVR3, SVR4.[012], SCO, UnixWare, LynxOS,
DESQview/X, Venix, ISC, Solaris, Pyramid, SunOS
HW: EGA, VGA, SVGA, TIGA, TARGA, 8514/A, Mach,
S3, WD, Fujistu, Matrox, Microfield Graphics, R33020
Other: Motif, OpenLook/XView, XIE Imaging Extension,
Xv Video Extension, Audio Drivers, Multi Media
2) X Inside Incorporated
P O Box 10774
Golden, CO 80401-0610
+1(303)384-9999, (800)XIN-SIDE [800-946-7433]
Fax: +1(303)384-9778
email: sales@xinside.com
Department: Automated Information Services
Email: info@xinside.com
Web: http://www.xinside.com/
Anon-FTP: ftp.xinside.com
Mail lists: majordomo@xinside.com
Summary: OS: AT&T UNIX, BSDI, Esix, FreeBSD, ICL, ISC, Linux,
OnSite, SCO, SINIX-Z, Solaris, UnixWare
HW: Supported graphics board, almost any monitor.
Other: Extensions include MIT-SCREEN-SAVER, MIT-SHM,
Multi-Buffering, SHAPE, XIdle,
XsightExtension.
3) Consensys Corporation
1301 Pat Booker Rd.
Universal City, TX 78148
Phone: 1-800-388-1896
FAX: 1-416-940-2903
email: info@consensys.com
Summary: OS: Consensys V4.2, Consensys' version of
Unix System V Release 4.2
HW: X11R4 server support for VGA, SVGA
Other: MoOLIT, Motif, X11R5 Clients
4) The Santa Cruz Operation, Inc.
p.o. box 1900
Santa Cruz, California 95061
(408) 425 7222, (800) SCO UNIX,
FAX: (408) 458 4227
email: info@sco.com
Summary: OS: ODT 1.1, ODT 2.0, ODT 3.0
HW: X11R5 server support for SVGA, 8514/A, S3, TMS340x0,
GD5426, P9000, ET4000/W32, Mach32, WD90C33, 86C801,
86C805, 86C928, WD90C31, XGA2, QVision, misc. localbus
video systems (see Hardware Compatibility Handbook
for actual card vendors).
Other: Motif
5) Answer Software & Consulting
p.o. box 14171
Columbus, Ohio 43214
614-263-XLAB
email: sales@x4coher.com
Summary: OS: Coherent 4.0.1r72 or greater
HW: works with any VESA compliant video
6) OpenWindows (shipped as part of the Solaris for x86 OS)
SunSoft Inc.
2550 Garcia Ave.
Mountain View, CA 94043
Phone: 415-960-3200
Summary: OS: Solaris for x86, SunSoft's version of SVR4
HW: ATI, Cirrus, S3, 8514, VGA, XGA, Matrox, Weitek, etc.
Complete list of supported cards available by
mailing x86hcl@sun.com.
Other: X11R5 clients, XView, OLIT, DeskSet, Adobe Display
PostScript, XGL (3D Graphics), XIL (Imaging)
7) Mark Williams Company
60 Revere Drive
Northbrook, IL 60062
(800) 636-6700 (U.S.)
(708) 291-6700 (outside U.S.)
Summary: OS: COHERENT 4.2
HW: VGA cards (ATI, Genoa, Paradise, Trident, Tseng, and
Western Digital chip sets), and various mice.
MISC: Port of XFree86-1.2
NOTE: Other commercial vendors (including OS vendors describing
bundled software) are welcome to submit summary information
such as the above.
II) What is XFree86 and where do I get it?
Subject: What is XFree86?
XFree86 is a added-value package for X11R6 that supports several versions
of Intel-based Unix and Unix-like operating systems. XFree86-3.0 was
part of the X11R6 core distribution. XFree86-3.1 consists of many new
features and performance improvements as well as many bug fixes.
The release is available as source patches against the X Consortium X11R6
code, as well as binary distributions for many architectures.
The following items have been added since XFree86 2.1.1 was released in
May 1994:
1) XFree86 is now based on X11R6, including shared library support for
SVR4, Linux, FreeBSD and NetBSD.
2) New configuration file format. One of the biggest changes that you
will notice with the new XFree86 version is that the old Xconfig
file has been replaced by an XF86Config file. For further details,
see the `Important Changes' section below.
3) Support is included for the X Image Extension (XIE).
4) A new accelerated server for boards based on the Weitek P9000
chipset.
5) A new accelerated server for boards based on the AGX chipsets.
6) A new accelerated server for boards based on the Tseng ET4000/W32
series of chipsets.
7) Support for the S3 Vision 864 and 964 chipsets (including boards
like the ELSA Winner 1000Pro and 2000Pro, Number Nine GXE64 and
GXE64Pro, Miro Crystal 20SV).
8) 16bpp support for some Mach32 boards.
9) 16bpp and 32bpp support for P9000 boards.
10) 16bpp and 32bpp support for some S3 boards.
11) Improved Cirrus accelerated support (including 5434), and 16bpp and
32bpp support for some Cirrus boards.
12) Accelerated support for Western Digital WD90C33 boards.
13) Support for the S3 GENDAC, S3 SDAC, AT&T 20C498, STG1700 and TI3025
RAMDACS in the S3 server.
14) Support for the S3 GENDAC, S3 SDAC, ICS2595, and TI3025 programmable
clocks in the S3 server.
15) New SVGA drivers for the AL2101, MX68000/MX68010, Video7, Cirrus
CL6420 chipsets.
16) Significantly updated ATI vgawonder driver, including unaccelerated
support for Mach64 boards.
17) A generic VGA driver for the SVGA server (fixed 320x200 at 8bpp).
18) Dual-headed vga2/mono and vga16/mono servers.
19) Significant updates to the VGA16 code, including a wider range of
banking support.
20) Incorporated the Screen Saver extension into the base server.
21) Support for "green" monitor screen savers in S3 and SVGA servers.
22) Support for the "experimental" LBX code included with X11R6.
Plus a number of other small things. Refer to the CHANGELOG file in the
source distribution for full details.
Also included are a tutorial on monitor timing by Eric Raymond, and the
current X386 mode database and a sample xdm configuration by David Wexelblat.
Subject: What OSs are supported?
SVR4.0:
Esix: 4.0.3A, 4.0.4, 4.0.4.1
Microport: 2.2, 3.1, 4.1, 4.2
Dell: 2.1, 2.2, 2.2.1
UHC: 2.0, 3.6
Consensys: 1.2
MST: 4.0.3 (Load 2.07 and Load 3.02)
ISC: 4.0.3
AT&T: 2.1, 4.0
NCR: MP-RAS
SunSoft: Solaris x86 2.1, 2.4
SVR4.2:
Consensys
Novell UnixWare
SVR3:
SCO: 3.2.2, 3.2.4
Others:
NetBSD 1.0BETA, FreeBSD 1.1.5
BSD/386 1.1
Mach 386
Linux
Amoeba
Minix-386
Note that Esix 3.2D is not supported yet, but anyone should feel
free to submit patches. If you are interested in tackling this,
send mail to xfree86-core@xfree86.org
Subject: What video hardware is supported?
At this time, XFree86 3.1 supports the following accelerated chipsets:
8514/A (and true clones)
ATI Mach8, Mach32
Cirrus CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428, CLGD5429,
CLGD5430, CLGD5434, CLGD6205, CLGD6215, CLGD6225, CLGD6235
S3 86C911, 86C924, 86C801, 86C805, 86C805i, 86C928, 86C864, 86C964
Western Digital WD90C31, WD90C33
Weitek P9000
IIT AGX-014, AGX-015, AGX-016
Tseng ET4000/W32, ET4000/W32i, ET4000/W32p
The Cirrus and Western Digital accelerators are supported in the SVGA
server; the other chipsets each have their own server. A list of some
cards which the accelerated servers have been tested with is included in the
files AccelCards, Devices, and some of the chipset-specific README files.
They may well work on other cards, but we cannot guarantee it.
In addition, the following SVGA chipsets are supported:
Tseng ET3000, ET4000AX, ET4000/W32
Western Digital/Paradise PVGA1
Western Digital WD90C00, WD90C10, WD90C11, WD90C24, WD90C30, WD90C31,
WD90C33
Genoa GVGA
Trident TVGA8800CS, TVGA8900B, TVGA8900C, TVGA8900CL, TVGA9000,
TVGA9000i, TVGA9100B, TVGA9200CX, TVGA9320, TVGA9400CX, TVGA9420
ATI 18800, 18800-1, 28800-2, 28800-4, 28800-5, 28800-6, 68800-3,
68800-6, 68800AX, 68800LX, 88800
NCR 77C22, 77C22E, 77C22E+
Cirrus Logic CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428,
CLGD5429, CLGD5430, CLGD5434, CLGD6205, CLGD6215,
CLGD6225, CLGD6235, CLGD6420
Compaq AVGA
OAK OTI067, OTI077
Advance Logic AL2101
MX MX68000, MX680010
Video 7/Headland Technologies HT216-32
All of the above are supported in both 256 color and monochrome modes, with
the exception of the Advance Logic, MX and Video 7 chipsets, which are only
supported in 256 color mode.
Refer to the chipset-specific README files (currently for Cirrus, Tseng,
Western Digital, ATI, Trident and Video 7) for more information about using
those chipsets.
The monochrome server also supports generic VGA cards, using 64k of video
memory in a single bank, the Hercules monochrome card, the Hyundai HGC1280,
Sigma LaserView, and Apollo monochrome cards. On the Compaq AVGA, only
64k of video memory is supported for the monochrome server, and the GVGA has
not been tested with more than 64k.
The VGA16 server supports memory banking with the ET4000, Trident, ATI,
NCR, OAK and Cirrus 6420 chipsets allowing virtual display sizes up to
about 1600x1200 (with 1MB of video memory). For other chipsets the display
size is limited to approximately 800x600.
NOTE: The Diamond SpeedStar 24 (and possibly recent SpeedStar+) boards are
NOT supported, even though they use the ET4000. The Stealth 32 which
uses the ET4000/W32p is also not supported. Historically the
information required for this support was only available under
non-disclosure. As of September 27, 1994, Diamond has verbally
agreed to provide The XFree86 Project, Inc. with detailed information
about Diamond products. This should permit us to better support
these in future versions of XFree86.
Subject: Who else supports accelerated boards?
This support is available in commercial products several vendors.
See the "Commercial options" section for details.
Subject: What other hardware or software requirements are there?
Obviously, a supported video board and OS are required. To run
X efficiently, 8-12MB of real memory should be considered a minimum.
The various binary releases take 10-40MB of disk space, depending
on the OS (e.g. whether or not it supports shared libraries).
To build from sources, at least 80MB of free disk space will
be required, although 120MB should be considered a comfortable
lower bound. If you are VERY tight on space, look into tinyX.
Subject: Where can I get source and binaries for XFree86?
Source patches are available to upgrade X11R6 PL5 from the X Consortium
to XFree86 3.1. They and binaries for many OSs are available via anonymous
FTP from:
ftp.XFree86.org (under /pub/XFree86/current)
and the following mirror sites:
North America:
xfree86.cdrom.com:/pub/XFree86 (source and binaries)
ftp.bsdi.com:/contrib/X11/XFree86 (source and BSD/386 binaries)
ref.tfs.com:/pub/mirrors/XFree86 (source and FreeBSD binaries)
ftp.iastate.edu:/pub/netbsd/XFree86/XFree86-3.1 (source and NetBSD binaries)
tsx-11.mit.edu:/pub/linux/packages/X11 (Linux binaries and source diffs)
ftp.eecs.umich.edu:/BSD/XFree86 (source and binaries)
sunsite.unc.edu:/pub/X11/XFree86 (source and binaries)
abode.ccd.bnl.gov:/pub/XFree86 (Solaris, SVR4, SCO binaries)
Europe:
ftp.fee.vutbr.cz:/pub/XFree86 (source and binaries)
ftp.gwdg.de:/pub/xfree86 (source and binaries)
ftp.uni-stuttgart.de:/pub/X11/Xfree86 (source and binaries)
ftp.funet.fi:/pub/X11/XFree86 (source and binaries)
ftp.laas.fr:/pub/NetBSD/XFree86-3.1 (NetBSD binaries only)
ftp.unipi.it:/pub/mirrors/XFree86-3.1 (source and binaries)
nova.pvv.unit.no:/pub/XFree86/current (source and binaries)
ftp.demon.co.uk:/pub/xwindows/XFree86 (source and binaries)
Middle East:
orgchem.weizmann.ac.il:/pub/XFree86 (sources and FreeBSD binaries)
Asia/Australia:
x.physics.su.oz.au:/pub/XFree86 (source and binaries)
ftp.iij.ad.jp:/pub/X/XFree86 (source and binaries)
ftp.nectec.or.th:/pub/mirrors/XFree86 (source and binaries)
ftp.edu.tw:/X/XFree86/3.1 (source and binaries)
Please use the closest mirror site where possible.
For the rest of this FAQ, these archive sites will be called $FTP.
Refer to the README file under the specified directory for information on
which files you need to get to build your distribution.
Ensure that you are getting XFree86 3.1 - some of these sites may archive
older releases as well. Each binary distribution will contain a README
file that describes what files you need to take from the archive, and which
compile-time option selections were made when building the distribution.
IV) What general things should I know about running XFree86?
Subject: Installation directories
The top-level installation directory is specified by the ProjectRoot
(/usr/X386, by default) variable in config/site.def. Binaries, include
files, and libraries are installed in $ProjectRoot/{bin,include,lib}.
This can be changed when rebuilding from sources, and can be modified
via symbolic links for those OSs that support them. This directory is
nonstandard, and was chosen this way to allow XFree86 to be installed
alongside a commercial/vendor-supplied X implementation.
Subject: Configuration files
The XFree86 server reads a configuration file ("Xconfig") on startup.
The search path, contents and syntax for this file are documented in
the server manpage, which should be consulted before asking questions.
Subject: Determining VGA dot clocks and monitor modes
David E Wexelblat (dwex@XFree86.Org) maintains a database of known
clock settings for VGA cards and monitor settings.
The database is installed in /usr/X386/lib/X11/etc/modeDB.txt, and
is in the source tree under mit/server/ddx/x386/etc. This database is
also available from him (for the latest copy), and is kept on
ftp.XFree86.Org:/pub/XFree86/current/XF86VidDoc.tar.gz, which is updated
occasionally. Obtain a copy of this database. It just might have the
settings you need. If you create new settings, please send them to
David for inclusion in the database.
If this doesn't help you, the VideoModes.doc (by Eric Raymond) file
with XFree86 contains tutorials on how to come up with these timings.
Also look at the AccelCards file. It has a list of `known-to-work' cards
with additional info like clock chip, clocks, ramdac, etc.
It may be helpful to start with settings that almost work, and use
this description to get them right. When you do, send the information
to David Wexelblat for inclusion in the database.
NOTE: The old 'clock.exe' program is not supported any more, and
is completely unnecessary. If you need to determine dot
clock values for a new board, remove the 'Clocks' line from
your Xconfig file (if present), and start the server. The
server will probe for clocks itself and print them out.
You can use these values to put a 'Clocks' line into your
Xconfig file, which is not necessary, but will speed up
starting the server in the future.
Subject: Rebuilding/reconfiguring the server from the link kit
If you have installed the server Binary Link Kit, it is possible to
reconfigure the drivers and font renderers in the server. This is
fully explained in the README file that is available with the link kit.
V) What OS-specific things should I know about running XFree86?
First of all, the server must be installed suid-root (mode 4755).
Subject: SVR4
Make sure you look at $FTP/README.SVR4.
Why won't my xterm run properly?
If your kernel is not built with the consem module, you should define
CONSEM=no in you environment. Otherwise xterm won't run.
csh users should use 'setenv CONSEM no'
The Esix console driver patch 403019 is known to cause keymapping
problems with XFree86. It recommended that this patch not be
installed. Alternatively they keymap can be fixed with xmodmap.
Subject: SVR3
Make sure you look at $FTP/README.isc, if that's what you are running.
Subject: BSD
Make sure you look at $FTP/[ README.Bsdi README.FreeBSD README.NetBSD ].
Subject: Linux
Make sure you look at $FTP/README.Linux.
You must be running Linux 0.99pl13 or greater, and have the 4.5.26 gcc
jump libraries and ld.so-1.3 installed.
Make sure all the servers XF86_*, xload and xterm are setuid root.
If your kernel doesn't have TCP support compiled in, you'll have to
run the server as "X -pn". The default startup configuration assumes
that TCP is not available. If it is, change the two files
/usr/X386/bin/startx and /usr/X386/lib/X11/xdm/Xservers, removing the
-pn argument to X386.
Make sure /dev/console is either a link to /dev/tty0 or has the major
number 4, minor number 0. Also note that if /dev/console is not
owned by the user running X, then xconsole and xterm will not permit
console output redirection. Xdm will properly change the owner, but
startx won't.
For more detailed information, please read the files README and
X11-HOWTO present with the distribution on tsx-11.mit.edu.
Subject: Mach
Make sure you look at $FTP/README.Mach.
VI) What things should I know for building XFree86 from source?
This section has been removed from the FAQ, since it is
fully explained in $FTP/README and the OS-specific READMEs.
Please look at those files for information on building XFree86.
VII) Is there anything special about building clients with XFree86?
Subject: BSD compatibility library
A lot of clients make use of BSD functions like bcopy(), etc.
The default configuration files are set up to link with libXbsd.a
which contains emulation for bcopy(), bzero(), bcmp(), ffs(), random(),
seed(). A better way of providing the 'b' functions is to include
<X11/Xfuncs.h> in source files that call them. Xfuncs.h provides macro
definitions for these in terms of the SYSV 'mem' functions. If you are
linking with a vendor supplied library which calls some of these
functions, then you should link with libXbsd.a
Subject: ANSICCOPTIONS
This is something that was added to allow a developer to get rid of the
ANSI-ness defined in the default CCOPTIONS without having to rewrite
the entire CCOPTIONS line. For example, with stock MIT, you'd see
something like
CCOPTIONS="-ansi -O2 -fwritable-strings"
and to get rid of the ANSI-ness, the developer would have to put
CCOPTIONS="-O2 -fwritable-strings"
in his Imakefile. With this change, you would see a default of
ANSICCOPTIONS="-ansi"
CCOPTIONS="-O2 -fwritable-strings"
and all the developer would have to put in the Imakefile is:
ANSICCOPTIONS=
to get rid of the ANSI-ness (many X clients will die a horrible death
with -ansi). The effect is even more dramatic in practice, because
CCOPTIONS is actually quite complex. The other issue is that one must
add 'ANSICCOPTIONS=$(ANSICCOPTIONS)' to a PassCDebugFlags definition.
Subject: Where to get more information
Additional documentation is available in the XFree86(1), XF86Config(4/5),
XF86_SVGA(1), XF86_Mono(1), XF86_VGA16(1) and XF86_Accel(1) manual pages.
In addition, several README files and tutorial documents are provided.
These are available in /usr/X11R6/lib/X11/doc in the binary distributions,
and in xc/programs/Xserver/hw/xfree86/doc in the source distribution.
The files README.Config and VideoModes.doc should be consulted for
information on how to set up the XFree86 servers. All supplied documents
and manual pages should be read before contacting the XFree86 team for
assistance.
Documentation on SVGA driver development can be found in the directory
/usr/X11R6/lib/Server/VGADriverDoc in the binary distribution, and in the
directory xc/programs/Xserver/hw/xfree86/VGADriverDoc in the source
distribution.
If you are totally at a loss, you can contact the XFree86 Core Team at
the electronic mail address below.
There is a Usenet news group comp.windows.x.i386unix that contains
mostly discussions about XFree86 and related topics. Many questions can
be answered there.
--------------------------------------------------
XFree86 Contact Information
Ongoing development planning and support is coordinated by the XFree86
Core Team. At this time the Core Team consists of (in alphabetical order):
Robin Cutshaw <robin@XFree86.org>
David Dawes <dawes@XFree86.org>
Marc Evans <marc@XFree86.org>
Dirk Hohndel <hohndel@XFree86.org>
Rich Murphey <rich@XFree86.org>
Jon Tombs <tombs@XFree86.org>
David Wexelblat <dwex@XFree86.org>
Mail sent to <Core@XFree86.org> will reach the core team.
Also, you can access their web server at url http://www.xfree86.org
--------------------------------------------------
Thanks to all the people who already sent me corrections or additions,
especially David Wexelblat (one of the major contributors of updates).
--
Steve Kotsopoulos P.Eng. steve@ecf.toronto.edu
Systems Analyst, Engineering Computing Facility, University of Toronto
http://www.ecf.toronto.edu/ecf/staff/steve/