xref: /386bsd/usr/X386/lib/X11/etc/README (revision a2142627)
1
2                         README for XFree86 2.0
3                         ----------------------
4Contents
5--------
6    1) What is XFree86?
7    2) What's new in XFree86 2.0?
8    3) XFree86 features
9    4) Systems XFree86 has been tested on
10    5) Supported video-card chip-sets
11    6) Where to get more information
12    7) Bugs known fixed in XFree86 vs stock X11R5
13    8) Known bugs in XFree86
14    9) Credits
15   10) Contact information
16   11) Source and binary archive sites
17
181 - What is XFree86?
19--------------------
20XFree86 is a port of X11R5 that supports several versions of Intel-based
21Unix and Unix-like operating systems.  The XFree86 servers are derived
22from X386 1.2, which was the X server distributed with X11R5.  This
23release consists of many new features and performance improvements as well
24as many bug fixes.  The release is available as source patches against the
25MIT X11R5 code, as well as binary distributions for many architectures.
26
27XFree86 2.0 is a major step forward in capability compared to previous
28XFree86 releases.  There is a massive amount of new code, including
29several completely new servers, and many other enhancements.  The vast
30majority of this code was developed by a handful of developers, listed
31in the credits section, below.  All XFree86 users owe a large debt of
32gratitude to these individuals.  The performance of the XFree86 2.0
33accelerated servers is on a par with commercial servers for most of
34the supported hardware; a $200 graphics accelerator now gives
35workstation-class performance.  This has been a difficult release to
36complete, and not everything we hoped to get done for it is done.  But
37we expect that there is enough here to satisfy the hungriest freeware
38user.
39
40Note that while the source and installation trees retain the 'X386'
41name (for simplicity of maintenance of the source tree), there is no
42connection between XFree86 and the commercial X386 product sold by SGCS.
43The XFree86 Core Team maintains technical contacts with SGCS in an effort
44to keep user-affecting changes to the workings of the products from
45diverging too radically.  There is no direct involvement of either group
46in the workings of the other.
47
482 - What's new in XFree86 2.0?
49------------------------------
50The following items have been added since XFree86 1.3 was released in
51June 1993:
52
53    1) Support for the following accelerated chipsets has been added:
54		IBM 8514/A and true compatibles
55		ATI Mach8, Mach32
56		S3 86C911, 86C924, 86C801, 86C805, 86C928
57		Cirrus 5426, 5428
58		WD 90C31
59       (see the file AccelCards for information on which specific cards
60       have been tested).
61    2) Support for the following SVGA chipsets has been added:
62		Cirrus 62x5
63		OAK OTI067, OTI077
64    3) A 16 colour generic VGA server (this server is still experimental
65       but quite usable at this stage).
66    4) Support for "banked dumb monochrome" boards.  Currently the
67       Hyundai HGC1280 is supported.
68    5) Support for the following operating systems has been added:
69		OSF/1
70		BSD/386 1.0
71		NetBSD 0.9
72		FreeBSD 1.0
73       In addition, an OS porting layer has been defined inside the
74       device-dependent layer of the server to make further OS ports
75       simpler and to ensure that all future servers are supported
76       on all OS platforms.
77    6) Support for the syscons driver (with VT switching) for 386BSD,
78       FreeBSD and NetBSD.
79    7) Support for the Hitachi Puma Plus tablet as an input device.
80    8) The SuperProbe program introduced with XFree86 1.3 has been updated
81       to detect many more chipsets and to be more reliable overall.
82    9) A new README.Config file is included with step-by-step instructions
83       for setting up the Xconfig file.  This file includes a list of
84       generic video mode settings which should provide working modes
85       for most video displays.
86   10) Several dozen bug fixes for problems detected and reported for
87       XFree86 1.3.
88   11) Hard limits for the maximum dot-clock frequency used are introduced.
89       These provide a rudimentary means of protecting the graphic boards
90       from overclocking. (See the Known Bugs section for some more details).
91
92Plus a number of other small things.  Refer to the CHANGELOG file in the
93source distribution for full details.
94
953 - XFree86 Features
96--------------------
97Here is a list of the other significant features that XFree86 adds over
98stock X386 1.2 (X11R5):
99
100    1) New servers to support S3, ATI and 8514 accelerated hardware, and
101       support for Cirrus and Western Digital accelerated hardware in
102       the SVGA server.
103    2) The SpeedUp package from Glenn Lai is an integral part of the
104       SVGA server, selectable at run-time via the Xconfig file.  Some
105       SpeedUps require an ET4000 based SVGA, and others require a
106       virtual screen width of 1024.  The SpeedUps suitable to the
107       configuration are selected by default.  With a high-quality
108       ET4000 board, this can yield up to 40% improvement of the Xstones
109       benchmark over X386 1.2.
110    3) The fX386 packages from Jim Tsillas are included as the default
111       operating mode of the SVGA server if SpeedUp is not selected.
112       This mode is now equivalent in performance to X386 1.1b (X11R4),
113       and approximately 20% faster than X386 1.2.
114    4) A monochrome server that supports bank-switching of available SVGA
115       memory to allow virtual screens up to 1600x1200.
116    5) Support for the Hercules mono card in the monochrome server, and
117       with it the ability to support a "two headed" server - one mono
118       VGA, and one Hercules.
119    6) Support for Hyundai HGC1280 monochrome graphics card in the
120       monochrome server.
121    7) An (experimental) 16-color VGA server is included, which supports
122       generic VGA hardware.
123    8) SVR3 shared libraries, tested under ISC SVR3 2.0.2, 2.2, 3.0.1 and
124       4.0; SCO 3.2.2, 3.2.4.
125    9) Support for Linux, 386BSD, NetBSD, FreeBSD, BSD/386, Mach, OSF/1,
126       SVR4.2, SCO, Amoeba, and Minix-386. Including Linux shared libraries.
127   10) Support for LOCALCONN.  This support is for both SVR3.2 and SVR4.
128       For SVR4.0.4 with the 'Advanced Compatibility Package' and on
129       SVR4.2, local connections from SCO XSight/ODT clients are supported.
130   11) Drivers for ATI, Trident, NCR, Compaq, Cirrus, and OAK SVGA chipsets.
131       Refer to chipset-specific README files for details about these
132       drivers.
133   12) Support for compressed bitmap fonts has been added (Thomas
134       Eberhardt's code from the contrib directory on ftp.x.org).
135   13) Type1 Font code from MIT contrib tape has been included, and is
136       compile-time selectable.  There are contributed Type1 fonts in the
137       contrib directory on ftp.x.org.
138   14) New configuration method which allows the server's drivers and font
139       renderers to be reconfigured from both source and binary
140       distributions.
141   15) Greatly improved documentation and configuration databases are
142       included.
143   16) A new tutorial on how to develop correct video card and monitor
144       timing data, written by Eric Raymond (derived from previous
145       documentation and a lot of experimentation).
146   17) Greatly improved support for international keyboards, including
147       implementation of the Compose key functionality found on many
148       vendor servers.
149   18) Many enhancements in error handling and parsing of the Xconfig
150       configuration file.  Error messages are much more informative and
151       intuitive, and more validation is done.  There are many new options
152       that can be enabled in the Xconfig file.
153
1544 - Systems XFree86 has been tested on
155--------------------------------------
156    SVR4.0:
157	Esix: 4.0.3A, 4.0.4
158	Microport: 2.2, 3.1, 4.1, 4.2
159	Dell: 2.1, 2.2
160	UHC: 2.0, 3.6
161	Consensys: 1.2
162	MST: 4.0.3 (Load 2.07 and Load 3.02)
163	ISC: 4.0.3
164	AT&T: 2.1, 4.0
165	NCR: MP-RAS
166
167    SVR4.2:
168	Consensys
169	Univel UnixWare
170
171    SVR3:
172	Interactive: 2.0.2, 2.2, 3.0, 4.0
173	SCO: 3.2.2, 3.2.4
174	AT&T: 3.2.2
175
176    Others:
177	386BSD 0.1, NetBSD 0.9, FreeBSD 1.0
178	BSD/386 1.0
179	Mach 386
180	OSF/1
181	Linux 0.99pl13
182	Amoeba
183	Minix-386
184
1855 - Supported video-card chipsets
186---------------------------------
187At this time, XFree86 2.0 supports the following accelerated chipsets:
188
189    8514/A (and true clones)
190    ATI Mach8, Mach32
191    Cirrus CLGD5426, CLGD5428
192    S3 86C911, 86C924, 86C801, 86C805, 86C928
193    Western Digital WD90C31
194
195The Cirrus and Western Digital accelerators are supported in the SVGA
196server; the other chipsets each have their own server.  A list of cards
197on which the accelerated servers have been tested is included in the file
198AccelCards.  They may well work on other cards, but we cannot guarantee it.
199Linux and BSD users of the XS3 server are referred to the README.XS3
200file for information on the differences between XS3 and the XFree86 S3
201server. Xconfig files must be changed when using XF86_S3 instead of XS3.
202
203In addition, the following SVGA chipsets are supported:
204
205    Tseng ET3000, ET4000AX, ET4000/W32
206    Western Digital/Paradise PVGA1
207    Western Digital WD90C00, WD90C10, WD90C11, WD90C30, WD90C31
208    Genoa GVGA
209    Trident TVGA8800CS, TVGA8900B, TVGA8900C, TVGA8900CL, TVGA9000
210    ATI 28800-4, 28800-5, 28800-a
211    NCR 77C22, 77C22E
212    Cirrus Logic CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428,
213		 CLGD6205, CLGD6215, CLGD6225, CLGD6235
214    Compaq AVGA
215    OAK OTI067, OTI077
216
217All of the above are supported in both 256 color and monochrome modes,
218with the exception of the ATI and Cirrus chipsets, which are only
219supported in 256 color mode.
220
221Refer to the chipset-specific README files (currently for Tseng, Western
222Digital, ATI, and Trident) for more information about using those chipsets.
223
224The monochrome server also supports generic VGA cards, using 64k of video
225memory in a single bank, the Hercules card, and the Hynudai HGC1280 card.
226On the Compaq AVGA, only 64k of video memory is supported for the monochrome
227server, and the GVGA has not been tested with more than 64k.
228
229XFree86 2.0 includes an experimental 16-color generic VGA server.  This
230server has not been as extensively tested and debugged as the others, but
231it should work rather well (but slowly) on most hardware.  At this time,
232it does not support banking, hence display is currently limited to 64k
233of memory (approximately 800x600).
234
235  Note
236  ----
237It appears that some of the SVGA card manufacturers are going to
238non-traditional mechanisms for selecting pixel-clock frequencies.  To
239avoid having to modify the server to accommodate these schemes XFree86 1.2
240added support for using an external program to select the pixel clock.
241This allows programs to be written as new mechanisms are discovered.
242Refer to the README.clkprog file for information on how these programs
243work, if you need to write one.  If you do develop such a program, we
244would be interested in including it with future XFree86 releases.
245
246NOTE: The Diamond SpeedStar 24 (and possibly recent SpeedStar+) boards are
247      NOT supported, even though they use the ET4000. The same is valid
248      for all of Diamond's S3 boards. The reason for this is that
249      Diamond has changed the mechanism used to select pixel clock
250      frequencies, and will only release programming information under
251      non-disclosure.  We are not willing to do this (as it would mean
252      that source cannot be provided).  We have had discussions with
253      Diamond over this, and they do not intend to change this policy.
254      Hence we will do nothing to support Diamond products going forward
255      (i.e. don't send us a program to run to set their clocks).  XFree86
256      DOES NOT SUPPORT DIAMOND HARDWARE.  It is possible to make some
257      of it work, but we will not assist in doing this.
258
2596 - Where to get more information
260---------------------------------
261Additional documentation is available in the XFree86(1), Xconfig(4/5),
262XF86_SVGA(1), XF86_Mono(1), XF86_VGA16(1), XF86_Accel(1) and XF86keybd(1)
263manual pages.  In addition, several README files and tutorial documents are
264provided.  These are available in /usr/X386/lib/X11/etc in the binary
265distributions, and in mit/server/ddx/x386 and ddx/x386/etc in the source
266distribution.
267
268The files README.Config and VideoModes.doc should be consulted for
269information on how to set up the XFree86 servers.  All supplied documents
270and manual pages should be read before contacting the XFree86 team for
271assistance.
272
273Documentation on SVGA driver development can be found in the directory
274/usr/X386/lib/Server/VGADriverDoc in the binary distribution, and in the
275directory mit/server/ddx/x386/VGADriverDoc in the source distribution.
276
277If you are totally at a loss, you can contact the XFree86 Core Team at
278the electronic mail address below.
279
280There exists a Usenet news group comp.windows.x.i386unix that contains
281mostly discussions about XFree86 and related topics. Many questions can
282be answered there. The answers to common questions are found in the
283corresponding FAQ.
284
2857 - Bugs known fixed in XFree86 vs stock X11R5
286----------------------------------------------
287    1) Server now traps and exits cleanly if unexpected signals are
288       received (a core is still generated for debugging).  There is an
289       Xconfig option to disable this trapping.
290    2) VT switching (on OS's that support the feature) is more robust.
291       The server will no longer crash nor will the screen get corrupted
292       as a result of starting or exiting clients while switched away.
293       Also, the screen saver is turned off when switching back so you
294       don't return to a blank screen.  These changes also ensure that xdm
295       shuts down cleanly, and allow multiple servers to be active
296       simultaneously
297    3) Many bugs in the frame buffer code have been fixed.
298    4) The use of xdm with xqueue under SVR4 has been fixed.
299    5) The maximum number of server connections is now correctly
300       determined for SVR4 by making use of getrlimit().
301    6) The default pointer button mapping has been fixed.
302    7) xterm no longer tries to open /dev/tty[psr]?? for SVR4.  This
303       speeds up the startup time for xterm, as well as keeping it from
304       using the wrong pty's on SVR4.0.4.
305    8) xconsole fixed to use /dev/osm (SVR4 and some SVR3.2) for OS messages.
306    9) A bug with XDM-AUTHORIZATION-1 which caused strange problems with
307       some hardware has been fixed.
308   10) The xman scroll bug has been fixed.
309   11) Improved the accuracy of the server's probe for pixel clock
310       frequencies
311   12) Redefined the handling of the numeric keypad, so that it works
312       correctly with Xt-based applications (translation problems
313       resolved).
314   13) Plugged security risk related to suid-root execution of the server.
315
3168 - Known bugs in XFree86
317-------------------------
318    1) There are some problems with some of the 'xset fp' operations (in
319       particular 'xset fp rehash').  These seem to be caused by memory
320       allocation/deallocation problems in the server's font code.  We
321       believe that we have worked around this problem, but have not yet
322       solved the root cause.
323    2) While not strictly a bug, there is currently a limitation on the
324       dot-clock frequencies allowed in the S3 and Mach32 servers.  For
325       S3 cards with the Bt485 RAMDAC (e.g. #9 GXe), the limit is 85Mhz.
326       For Mach32 boards, the limit is 80Mhz.  There is some special
327       programming required to use these RAMDACs at higher dot-clocks,
328       and we were not able to get it fully developed in time.  We intend
329       to release a patch with these updates in the near future.
330
331We welcome reports of bugs sent to the electronic mail address listed
332below.
333
3349 - Credits
335-----------
336XFree86 was originally put together by:
337       David Dawes <dawes@physics.su.oz.au>
338       Glenn Lai <glenn@cs.utexas.edu>
339       Jim Tsillas <jtsilla@damon.ccs.northeastern.edu>
340       David Wexelblat <dwex@goblin.org>, <dwex@aib.com>
341
342386BSD, FreeBSD, NetBSD  support by:
343       Rich Murphey <Rich@Rice.edu>
344Original 386BSD port by:
345       Pace Willison
346       Amancio Hasty Jr <hasty@netcom.com>
347Mach 386 support by:
348       Robert Baron <Robert.Baron@ernst.mach.cs.cmu.edu>
349Linux support by:
350       Orest Zborowski <orestz@microsoft.com>
351SCO Unix support by:
352       David McCullough <davidm@stallion.oz.au>
353Amoeba support by:
354       Kees Verstoep <versto@cs.vu.nl>
355Minix-386 support by:
356       Philip Homburg <philip@cs.vu.nl>
357OSF/1 support by:
358       Marc Evans <Marc@Synergytics.Com>
359BSD/386 support by:
360       Hans Nasten <nasten@everyware.se>
361       Paul Vixie <paul@vix.com>
362SVR3 shared libraries by:
363       Thomas Wolfram <wolf@prz.tu-berlin.de>
364Linux shared libraries by:
365       Dirk Hohndel <hohndel@informatik.uni-wuerzburg.de>
366
367Original accelerated code by:
368       Kevin Martin <martin@cs.unc.edu>
369       Rik Faith <faith@cs.unc.edu>
370       Jon Tombs <jon@gtex02.us.es>
371S3 accelerated code by:
372       Jon Tombs <jon@gtex02.us.es>
373       David Wexelblat <dwex@goblin.org> <dwex@aib.com>
374       David Dawes <dawes@physics.su.oz.au>
375       Amancio Hasty <hasty@netcom.com>
376Mach32 accelerated code by:
377       Kevin Martin <martin@cs.unc.edu>
378       Rik Faith <faith@cs.unc.edu>
379       Mike Bernson <mike@mbsun.mlb.org>
380       Mark Weaver <Mark_Weaver@brown.edu>
381Mach8, 8514 accelerated code by:
382       Kevin Martin <martin@cs.unc.edu>
383       Rik Faith <faith@cs.unc.edu>
384       Tiago Gons <tiago@comosjn.hobby.nl>
385       Hans Nasten <nasten@everyware.se>
386       Scott Laird <lair@midway.uchicago.edu>
387Cirrus accelerated code by:
388       Simon Cooper <scooper@vizlab.rutgers.edu>
389       Bill Reynolds <bill@goshawk.lanl.gov>
390Western Digital accelerated code by:
391       Mike Tierney <floyd@pepsi.eng.umd.edu>
392
39316 color VGA server by:
394       Gertjan Akkerman <akkerman@dutiba.twi.tudelft.nl>
395
396ATI SVGA driver by:
397       Rik Faith <faith@cs.unc.edu>
398Trident SVGA driver by:
399       Alan Hourihane <alanh@metro.co.uk>
400NCR SVGA driver by:
401       Stuart Anderson <Stuart.Anderson@ColumbiaSC.NCR.COM>
402		with the permission of NCR Corporation
403Cirrus SVGA driver by:
404       Bill Reynolds <bill@goshawk.lanl.gov>
405       Hank Dietz <hankd@ecn.purdue.edu>
406Compaq SVGA driver by:
407       Hans Oey <hans@mo.hobby.nl>
408Oak SVGA driver by:
409       Steve Goldman <sgoldman@encore.com>
410
411Configurable MFB and Hercules driver by:
412       Davor Matic <dmatic@Athena.MIT.EDU>
413Banked Dumb Monochrome and Hyundai drivers by:
414       Pascal Haible <haible@izfm.uni-stuttgart.de>
415
416X386 1.2, and moral support from:
417       Thomas Roell <roell@informatik.tu-muenchen.de>
418       Mark Snitily <mark@sgcs.com>
419
420Other contributors:
421       Joerg Wunsch <joerg_wunsch@tcd-dresden.de> (ET3000 banked mono)
422       Bob Crosson <crosson@cam.nist.gov> (video mode documentation)
423       Thomas Eberhardt <thomas@mathematik.uni-Bremen.de> (compressed fonts)
424       Eric Raymond <esr@snark.thyrsus.com> (new video mode documentation)
425
426       and an entire horde of beta-testers around the world!
427
42810 - Contact information
429------------------------
430Ongoing development planning and support is coordinated by the XFree86
431Core Team.  At this time the Core Team consists of (in alphabetical order):
432
433       Robert Baron <Robert.Baron@ernst.mach.cs.cmu.edu>
434       David Dawes <dawes@physics.su.oz.au>
435       Dirk Hohndel <hohndel@informatik.uni-wuerzburg.de>
436       Glenn Lai <glenn@cs.utexas.edu>
437       Rich Murphey <Rich@Rice.edu>
438       Jon Tombs <jon@gtex02.us.es>
439       David Wexelblat <dwex@goblin.org>, <dwex@aib.com>
440       Thomas Wolfram <wolf@prz.tu-berlin.de>
441       Orest Zborowski <orestz@microsoft.com>
442
443E-mail sent to <xfree86@physics.su.oz.au> will reach the Core Team.
444
44511 - Source and binary archive sites
446------------------------------------
447Source patches based on X11R5 PL25, from MIT, and as an upgrade from
448XFree86 1.3 are available via anonymous FTP from:
449
450       ftp.x.org (under /contrib/XFree86)
451       ftp.physics.su.oz.au (under /XFree86)
452       ftp.win.tue.nl (under /pub/XFree86)
453       ftp.prz.tu-berlin.de (under /pub/pc/src/XFree86)
454
455Refer to the README file under the specified directory for information on
456which files you need to get to build your distribution (which will depend
457on whether this is a new installation or an upgrade from an earlier
458version of XFree86).
459
460Binaries are available via anonymous FTP from:
461
462       ftp.physics.su.oz.au            - SVR4 binaries
463                under /XFree86/SVR4
464       ftp.win.tue.nl                  - SVR4 binaries
465                under /pub/XFree86/SVR4
466       ftp.tcp.com                     - SVR4 binaries
467                under /pub/SVR4/XFree86
468       stasi.bradley.edu               - SVR4 binaries
469                under /pub/XFree86/SVR4
470       stasi.bradley.edu               - SVR3 (SCO) binaries
471                under /pub/XFree86/sco
472       ftp.physics.su.oz.au            - SVR3 (SCO) binaries
473                under /XFree86/SCO
474       blancmange.ma.utexas.edu        - SVR3 (ISC) binaries
475                under /pub/ISC
476       ftp.prz.tu-berlin.de            - SVR3 (ISC) binaries
477                under /pub/pc/isc/XFree86
478       tsx-11.mit.edu                  - Linux binaries
479                under /pub/linux/packages/X11
480       ftp.unipi.it                    - Linux binaries
481		under /pub/linux/XFree86_2.0
482       XFree86.cdrom.com               - FreeBSD binaries
483		under /pub/XFree86/FreeBSD/XFree86-2.0
484       gil.physik.rwth-aachen.de       - FreeBSD binaries
485		under /pub/XFree86
486       agate.berkeley.edu              - NetBSD 0.9 binaries
487		under /pub/NetBSD/ports
488       sun-lamp.cs.berkeley.edu        - NetBSD 0.9 binaries
489		under /pub/NetBSD/ports
490       ftp.cs.mcgill.ca	               - NetBSD 0.9 binaries
491	        under /pub/NetBSD/XFree86
492       ftp.cs.uwm.edu                  - Mach386 binaries
493                under /i386
494
495Ensure that you are getting XFree86 2.0 - some of these sites may archive
496older releases as well.  Each binary distribution will contain a README
497file that describes what files you need to take from the archive, and
498which compile-time option selections were made when building the
499distribution.
500
50123 October, 1993
502
503$XFree86: mit/server/ddx/x386/README,v 2.8 1993/10/24 13:43:59 dawes Exp $
504