*BSD News Article 21757


Return to BSD News archive

Xref: sserve comp.windows.x.i386unix:3895 comp.unix.pc-clone.32bit:4546 comp.unix.bsd:12700 comp.windows.x:59059 comp.answers:2133 news.answers:12707
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!munnari.oz.au!news.Hawaii.Edu!ames!agate!spool.mu.edu!uwm.edu!cs.utexas.edu!utnut!cannon.ecf!steve
From: steve@ecf.toronto.edu (Steve Kotsopoulos)
Subject: X on Intel-based Unix Frequently Asked Questions [FAQ]
Message-ID: <CE8qxB.Itt@ecf.toronto.edu>
Followup-To: poster
Summary: X options for Intel-based Unix (SYSV/386, 386BSD, Linux, Mach)
Originator: steve@cannon.ecf
Sender: news@ecf.toronto.edu (News Administrator)
Reply-To: steve@ecf.toronto.edu
Organization: University of Toronto, Engineering Computing Facility
Date: Fri, 1 Oct 1993 23:07:59 GMT
Approved: news-answers-request@MIT.Edu
Expires: Mon, 1 Nov 1993 05:00:00 GMT
Lines: 713

Archive-name: Intel-Unix-X-faq
Last-modified: 1 Oct 1993

This article includes answers to:

I) What options do I have for X software on my Intel-based Unix system?
	1. Free options
	2. Commercial options
II) What is XFree86 and where do I get it?
	3. What is XFree86?
	4. What OSs are supported?
	5. What video hardware is supported?
	6. What about accelerated boards?
	7. Why doesn't XFree86 support 16-color VGA modes?
	8. What other hardware or software requirements are there?
	9. Where can I get source for XFree86?
	10. Where can I get binaries for XFree86?
IV) What general things should I know about running XFree86?
	11. Installation directories
	12. Configuration files
	13. Determining VGA dot clocks and monitor modes
	14. Rebuilding/reconfiguring the server from the link kit
V) What OS-specific things should I know about running XFree86?
	15. SVR4
	16. SVR3
	17. 386BSD
	18. Linux
	19. Mach
VI) What things should I know for building XFree86 from source?
VII) Is there anything special about building clients with XFree86?
	20. BSD compatibility library
	21. ANSICCOPTIONS
VIII) Where to get more information
IX)  [Special, for this month only] Preliminary information on XFree86 2.0

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 do not
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?

1. 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 (roell@sgcs.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).
    X386 1.3 is the current commercial offering from SGCS (see below).

    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.

2. Commercial options

     1) Metro Link
	2213 W. McNab Road
	Pompano Beach, FL  33069
	(305) 970-7353
	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) SGCS (Snitily Graphics Consulting Services)
	894 Brookgrove Lane
	Cupertino, CA  95014
	(800) 645-5501, (408) 255-9665
	Fax: (408) 255-9740
	email: info@sgcs.com  or ...!mips!zok!info

	Summary: OS: SVR3.2, SVR4 
		 HW: 8514/A (ATI Ultra), S3 (Diamond Stealth), SVGA
		 Other: Motif, Dual-headed server

     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,
		     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.2
		 HW: Orchid ProDesigner II, Compaq QVision, Paradise
		     Accelerator Board, ET 4000 video card with VESA
		     configuration file, WD90C30 video card with VESA
		     configuration file, IBM XGA.
		 Other: X11R4 clients, XView, OLIT, DeskSet

  NOTE: Other commercial vendors (including OS vendors describing
	bundled software) are welcome to submit summary information
	summary information such as the above.

II) What is XFree86 and where do I get it?

3. What is XFree86?

   XFree86 is an enhanced version of X386 1.2, which was distributed with
   X11R5.  This release consists of many bug fixes, speed improvements, and
   other enhancements. The release is available as source patches against the
   MIT X11R5 code, as well as binary distributions for many architectures.

   Here are the highlights of the enhancements:

    1) The SpeedUp package from Glenn Lai is an integral part of XFree86,
       selectable at run-time via the Xconfig file.  Some SpeedUps require
       an ET4000 based SVGA, and others require a virtual screen width of
       1024.  The SpeedUps suitable to the configuration are selected by
       default.  With a high-quality ET4000 board (VRAM), this can yield
       up to 40% improvement of the xStones benchmark over X386 1.2.
    2) The fX386 packages from Jim Tsillas are included as the default
       operating mode if SpeedUp is not selected.  This mode is now
       equivalent in performance to X386 1.1b (X11R4), and approximately
       20% faster than X386 1.2.
    3) A monochrome server that supports bank-switching of available SVGA
       memory to allow virtual screens up to 1600x1200.
    4) Support for the Hercules mono card has been added to the monochrome
       server, and with it the ability to support a "two headed" server -
       one VGA, and one Hercules.
    5) SVR3 shared libraries, tested under ISC SVR3 2.0.2, 2.2 and 3.0.1;
       SCO 3.2.2, 3.2.4.
    6) Support for Linux, 386BSD, Mach, SVR4.2, SCO, Amoeba, and Minix-386.
    7) Support for LOCALCONN.  This support is for both SVR3.2 and SVR4.
       For SVR4.0.4 with the 'Advanced Compatibility Package', local
       connections from SCO XSight/ODT clients are supported.
    8) Drivers for ATI, Trident, NCR, Compaq, and Cirrus SVGA chipsets.
       Refer to the files README.ati and README.trident for details about
       the ATI and Trident drivers.
    9) Support for compressed bitmap fonts has been added (Thomas
       Eberhardt's code from the contrib directory on export.lcs.mit.edu).
   10) Type1 Font code from MIT contrib tape has been included, and is
       compile-time selectable.  There are contributed Type1 fonts in the
       contrib directory on export.lcs.mit.edu.
   11) New configuration method which allows the server's drivers and font
       renderers to be reconfigured from both source and binary
       distributions.
   12) A new tutorial on how to develop correct video card and monitor
       timing data, written by Eric Raymond (derived from previous
       documentation and a lot of experimentation).
   13) Greatly improved support for international keyboards, including
       implementation of the Compose key functionality found on many
       vendor servers.
   14) Many enhancements in error handling and parsing of the Xconfig
       configuration file.  Error messages are much more informative and
       intuitive, and more validation is done.  There are many new options
       that can be enabled in the Xconfig file.

   The following key features were added with the release of XFree86 1.3
   (they were not in XFree86 1.2):

    0) The server binary names have been changed from 'X386' and
       'X386mono' to 'XF86_SVGA' and 'XF86_Mono'.  This is not
       particularly important, but may confuse people at first.
    1) MIT public fixes to X11R5 up to fix-25 have been incorporated
    2) Support for the following operating systems has been added:
		SCO SVR3 3.2.2 and 3.2.4
		ISC 2.0.2
		Amoeba
		Minix-386
    3) Support for the following SVGA chipsets has been added:
		Western Digital 90C3x
		Cirrus 542x
		Trident 8800CS, 8900B, 8900CL
		NCR 77C22, 77C22E
		Compaq AVGA
       We believe that the ET4000/W32 will also work with this release.
    4) For SVR3/4, the local connection mechanism used is selectable at
       run-time, rather than compile time.
    5) For 386BSD, the server now determines the console driver at
       run-time, removing the need for separate server binaries.
    6) Support for building Linux shared libraries is integrated into the
       source kit.
    7) The server Link Kit now includes driver sources, which allows for
       modification and addition of new drivers, without requiring the
       server source tree.
    8) The interface between the server and the drivers has been fully
       documented, and a stub driver is included.
    9) A preliminary version of the 'SuperProbe' program is included.
       This is a Unix-based program designed to detect and identify
       installed video hardware.
   10) The binary package is no longer required to exist in /usr/X386.
       Support for a $XWINHOME environment variable has been added to all
       hard-coded paths.
   11) PEX is now supported in the XFree86 source tree, and has been
       ported to Linux.
   12) The Hercules code has been fixed for Linux, 386BSD, Mach and SCO.
   13) The handling of the "overscan" region of the display has been
       dramatically improved.  This should prevent the area of the display
       outside the raster from changing to odd colors when colormap
       changes are made.
   14) Support has been added to handle mice that can switch between
       Microsoft and MouseSystems modes via toggling of DTR for OSs that
       provide a mechanism for manipulating RS-232 control leads.
   15) Support for a banked operation has been added to the ET3000 driver
       in the monochrome server.

       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.

4. What OSs are supported?

    SVR4.0:
	Esix: 4.0.3A, 4.0.4
	Microport: 2.2, 3.1, 4.1, 4.2
	Dell: 2.1, 2.2
	UHC: 2.0, 3.6
	Consensys: 1.2
	MST: 4.0.3
	ISC: 4.0.3
	AT&T: 2.1, 4.0
	NCR: MP-RAS

    SVR4.2:
	Consensys
	Univel UnixWare

    SVR3:
	Interactive: 2.0.2, 2.2, 3.0
	SCO: 3.2.2, 3.2.4
	AT&T: 3.2.2

    Others:
	386BSD 0.1, NetBSD 0.8
	Mach 386
	Linux
	Amoeba
	Minix-386

    A set of patches to support XFree86 1.3 on BSDI's BSD/386 is available
    from the following sites:

	ftp.physics.su.oz.au:/XFree86/bsdi-1.3-unoff
	export.lcs.mit.edu:/contrib/XFree86/bsdi-1.3-unoff

    This is contributed code, and not part of the official 1.3 release.
    These patches will be integrated into XFree86 2.0, hence 2.0 will
    have native support for BSD/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@physics.su.oz.au

5. What video hardware is supported?

   At this time, XFree86 1.3 supports the following SVGA chipsets:
    
    Tseng ET3000, ET4000
    Western Digital/Paradise PVGA1
    Western Digital WD90C00, WD90C10, WD90C11, WD90C30, WD90C31
    Genoa GVGA
    Trident TVGA8800CS, TVGA8900B, TVGA8900C, TVGA8900CL, TVGA9000
    ATI 28800-4, 28800-5, 28800-a [18800-1 reportedly works too]
    NCR 77C22, 77C22E
    Cirrus Logic CLGD5420, CLGD5422, CLGD5424, CLGD5426
    Compaq AVGA
    
    All of the above are supported in both 256 color and monochrome modes,
    with the exception of the ATI and Cirrus chipsets, which are only
    supported in 256 color mode.

    Refer to the chipset-specific README files (currently for Tseng, Western
    Digital, ATI, and Trident) for more information about using those chipsets.

    The monochrome server also supports generic VGA cards, using 64k of video
    memory in a single bank, and the Hercules card.  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.

    It appears that some of the SVGA card manufacturers are going to
    non-traditional mechanisms for selecting pixel-clock frequencies.  To
    avoid having to modify the server to accommodate these schemes XFree86 1.2
    added support for using an external program to select the pixel clock.
    This allows programs to be written as new mechanisms are discovered.
    Refer to the README.clkprog file for information on how these programs
    work, if you need to write one.  If you do develop such a program, we
    would be interested in including it with future XFree86 releases.

    If you are purchasing new hardware for the purpose of using XFree86,
    it is suggested that you purchase an ET4000-based board such as the
    Orchid ProDesigner IIs.  Avoid recent Diamond boards; XFree86 will not
    work with them, because Diamond won't provide programming details.
    In fact, the XFree86 project is actively not supporting new Diamond
    products, as long as such policies remain in effect.  Contributions
    of code will NOT be accepted (because of the potential liabilities).
    If you would like to see this change, tell Diamond about it.

    Some people have asked if XFree86 would work with local bus or EISA
    video cards. Theoretically, the means of communication between the
    CPU and the video card is irrelevant to Xfree86 compatibility. It
    could be ISA, EISA, or local bus.  What should matter is the chipset
    on the video card.  Unfortunately, the developers don't have a lot
    of access to EISA or VLB machines, so this is largely an untested
    theory.  However, we have yet to see any reports of things not
    working on one of these buses and we have several reports of Xfree86
    working fine on them.

6. What about accelerated boards?

    At this point, XFree86 does not support any accelerated chipsets.
    These include the S3 86Cxxx, the ATI Mach8 and Mach32, the IBM 8514/A,
    the new Western Digital chipset (on the Diamond SpeedStar 24X), the new
    Cirrus and Tseng chipsets, and TIGA (TI 340x0).  This support is available
    in commercial products from SGCS and MetroLink (for SVR3 and SVR4).
    Some of these will be supported in XFree86 2.0.

    An S3 server is available for 386BSD and Linux.  Contact
    <hasty@netcom.com> for 386BSD or <???> for Linux.

    A beta 8514/A server is available for Linux. Contact <martin@cs.unc.edu>.
    Note: these servers are NOT part of XFree86.

7. Why doesn't XFree86 support 16-color VGA modes?

    The reason that this is not supported is the way VGA implements the
    16-color modes.  In 256-color modes, each byte of frame buffer memory
    contains 1 pixel.  But the 16-color modes are implemented as bit-
    planes.  Each byte of frame- buffer memory contains 1 bit from each
    of each of 8 pixels, and there are four such planes.  The MIT frame-
    buffer code is not designed to deal with this.  If VGA handled
    16-color modes by packing 2 4-bit pixels into each byte, the MIT code
    could be modified to support this (or it already may; I'm not sure).
    But for the VGA way of doing things, a complete new frame-buffer
    implementation is required.  Some beta testers are looking into this,
    but nothing is yet available from the project.

8. What other hardware or software requirements are there?

    Obviously, a supported SVGA board and OS are required.  To run
    X efficiently, 12-16MB 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.

9. Where can I get source for XFree86?

    Source patches for the current version (1.3, based on X11R5 PL25
    from MIT), are available via anonymous FTP from:
		export.lcs.mit.edu (under /contrib/XFree86)
		ftp.physics.su.oz.au (under /XFree86)
		ftp.win.tue.nl (under /pub/XFree86)
    (For the rest of this FAQ, these 3 location 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 (which will
    depend on whether this is a new installation or an upgrade from an
    earlier version of XFree86).

10. Where can I get binaries for XFree86?

    Binaries are available via anonymous FTP from:
		ftp.physics.su.oz.au            - SVR4 binaries
			under /XFree86/SVR4
		ftp.win.tue.nl                  - SVR4 binaries
			under /pub/XFree86/SVR4
		ftp.tcp.com                     - SVR4 binaries
			under /pub/SVR4/XFree86
		stasi.bradley.edu               - SVR4 binaries
			under /pub/XFree86/SVR4
		stasi.bradley.edu               - SVR3 (SCO) binaries
			under /pub/XFree86/sco
		blancmange.ma.utexas.edu        - SVR3 (ISC) binaries
			under /pub/ISC
		ftp.prz.tu-berlin.de            - SVR3 (ISC) binaries
			under /pub/pc/isc/XFree86
		tsx-11.mit.edu                  - Linux binaries
			under /pub/linux/packages/X11
		agate.berkeley.edu              - 386BSD binaries
			under /pub/386BSD/0.1-ports/XFree86-1.3
		gatekeeper.dec.com              - 386BSD binaries
			under /pub/BSD/386bsd/0.1-ports/XFree86-1.3
		wuarchive.wustl.edu             - 386BSD binaries
			under /mirrors4/386bsd/0.1-ports/XFree86-1.3
		XFree86.cdrom.com               - 386BSD binaries
			under /pub/XFree86/XFree86-1.3
		ftp.cs.uwm.edu                  - Mach386 binaries
			under /i386

    Ensure that you are getting XFree86 1.3 - 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?

11. 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.

12. 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.

13. Determining VGA dot clocks and monitor modes

    David E Wexelblat (dwex@mtgzfs3.att.com) 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
    export.lcs.mit.edu in ~/contrib/X386.modeDB.Z, 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.
    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.

14. 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).

15. 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.

16. SVR3

    Make sure you look at $FTP/README.ISC, if that's what you are running.

17. 386BSD

    Make sure you look at $FTP/README.386BSD.

    Also, a separate 386BSD FAQ is maintained by Richard Murphey
    <Rich@Rice.edu>.  The latest version should be available in the
    file XFree86-1.2-386BSD-FAQ at the following ftp sites:

	agate.berkeley.edu:/pub/386BSD/0.1-ports/XFree86-1.2
	wuarchive.wustl.edu:/mirrors4/386bsd/0.1-ports/XFree86-1.2
	grasp.insa-lyon.fr:pub/386BSD/0.1-ports/XFree86-1.3

18. Linux

    You must be running Linux 0.99pl10 or greater, and have the 4.4 gcc
    jump libraries installed.

    Make sure the binaries XF86_SVGA, XF86_mono, 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.

    When running xdm from rc.local, you will need to provide it with
    a tty, for example "xdm < /dev/console &".

    For more detailed information, please read the file README present
    with the distribution on tsx-11.mit.edu.

19. 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?

20. 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

21. 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.

VIII) Where to get more information

    Additional documentation is available in the XFree86(1) and XF86keybd(1)
    manual pages.  In addition, several README files and tutorial documents
    are provided.  These are available in /usr/X386/lib/X11/etc in the binary
    distributions, and in mit/server/ddx/x386 and ddx/x386/etc in the source
    distribution.

    Documentation on SVGA driver development can be found in the directory
    /usr/X386/Server/VGADriverDoc in the binary distribution, and in the
    directory mit/server/ddx/x386/VGADriverDoc in the source distribution.

    If you are totally at a loss, you can contact the XFree86 Core Team at
    xfree86@physics.su.oz.au.

IX)  [Special, for this month only] Preliminary information on XFree86 2.0

This was recently posted to comp.windows.x.i386unix by David E. Wexelblat:

Subject: Preliminary information on XFree86 2.0...

Just to frustrate you (:->), here's some pre-release information on
XFree86 2.0.  We currently plan to release 2.0 at the end of October,
barring any unforseen problems.  Here's a list of what's definitely
in (i.e the code is in the base and tested), on top of the 1.3 feature
list:

	- OS support:
		- BSDI BSD/386
		- OSF/1
		- NetBSD, FreeBSD
			(including VT switching with syscons)
	- New hardware supported:
		- VGA: Generic 16-color
		- SVGA: Oak 067/057
		- Monochrome: Sigma Designs LView, Hyndai HGC-1280
		- Accelerated hardware:
			- Cirrus 542{6,8}
			- Western Digital WD90C31
			- IBM 8514/A
			- ATI Mach-8, Mach-32
			- S3 911/924, 801/805, 928
	- Input devices:
		- Hitachi Puma Plus digitizer
		- Support OS mouse driver for SCO
	- Lots and lots of bug fixes

The Cirrus and WD accelerated support is incorporated in the SVGA server.
The 8514, Mach-8, Mach-32, and S3 each have their own servers (for now;
we will likely merge these for 2.1).  The 16-color server is still 
experimental; it has known bugs, and does not support banking yet.

For the Mach-32 and S3 servers, linear framebuffer access is supported
for EISA and VLB cards for OSs that support such access (currently
Linux, SVR4, Mach, OSF/1, BSD/386 and SVR3 (with the installation of 
a device driver to support this access, which will be included)).  On
ISA bus cards, and OSs that don't support the linear framebuffer access,
the normal 64k VGA window is used.

We will be supplying a list of know working accelerated cards (i.e. those
that the beta testers are using).  All of the ATI Ultra boards should
be supported, and S3 boards from Actix, #9, ELSA, and STB are known to
work (there may be others, but I haven't compiled the list yet).  

We have just completed our 5th beta-test release since 1.3 was released
in June; there have been 28 alpha releases.  So far.  There will be
one more beta before the final code freeze, and an unknown number of
alphas.

We have been making extensive use of the MIT X Test Suite with these
servers.  The accelerated servers are know to have the same pass/fail
cases as the SVGA server has (there were bugs in the MIT X11R5 server;
we haven't gone out of our way to fix them, but we don't fail anything
that passes in the MIT code).

There may be other features added before 2.0, but they will not be 
significant.  We are hoping to add one or two more SVGA chipset drivers,
but we haven't seen the code for them yet.

Please do not bombard us with questions; we are working very hard to
complete this release, and get it out when we say it will be out.  Between
now and then, Jon Tombs will be leaving the scene (headed for a location
without net access), and I will be changing jobs and moving.  This is
a very hectic time, but we believe that people will be quite pleased
with the results when the release is made.

	--------------------------------------------------

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):

       Robert Baron <Robert.Baron@ernst.mach.cs.cmu.edu>
       David Dawes <dawes@physics.su.oz.au>
       Dirk Hohndel <hohndel@informatik.uni-wuerzburg.de>
       Glenn Lai <glenn@cs.utexas.edu>
       Rich Murphey <Rich@Rice.edu>
       Jon Tombs <Jon has moved, and doesn't have email any more>
       David Wexelblat <dwex@mtgzfs3.att.com>
       Thomas Wolfram <wolf@prz.tu-berlin.de>
       Orest Zborowski <obz@Kodak.com>

    E-mail sent to <xfree86@physics.su.oz.au> will reach all of the Core Team.

	--------------------------------------------------

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.           mail:   steve@ecf.toronto.edu
Systems Analyst                     bitnet: steve@ecf.UTORONTO.BITNET
Engineering Computing Facility      uucp:   uunet!utai!ecf!steve
University of Toronto               phone:  (416) 978-5898