This document is intended to provide answers to the questions most often received by the XFree86[tm] Project's support team (which can be reached at XFree86@XFree86.org). It is also a source of information more recent than the documentation included with the latest release.
Generally, if the information is already available elsewhere, this document will supply a pointer to the information rather than duplicate it. If you don't have access to the World Wide Web, see the section below entitled "Access via Email".
The XFree86 Project is making the information in this document available free of charge in the hope that it will be of use. However, the authors specifically disclaim any liability for any direct, indirect, or consequential damages arising out of its use.
This document is intended to be a source of up-to-date info regarding XFree86, and as such, may change frequently. Make sure you consult a recent copy, before relying on any information contained herein.
Additionally, this FAQ generally assumes that you are using the latest release and, unless otherwise specified, the information contained herein is likely to not be applicable to other releases. Information applicable to beta releases is specifically marked as such. If you are having problems and are not running the latest release, then upgrading is often the answer to your problems. Really. If you have a fairly new card, it is especially important to make sure you are using the latest server release, even if it is a beta version.
The latest version of this document is always available from the XFree86 Web site (http://www.XFree86.org/) or one of its mirrors:
If you are using Xdm to start your X session, see
X Authentication Vulnerability
below.
Last modified: Thu Sep 05 20:17:46 PDT 1996
vgaset
?
xf86config
doesn't know about my card. Is there a more up-to-date version?
XFree86 is a trademark of The XFree86 Project, Inc., a non-profit organization that provides X Window System servers (as well as some supporting materials) for several operating systems on PCs and other microcomputers. The X servers, client programs, documentation, etc. supplied by the XFree86 Project, Inc., are collectively, also known as XFree86. All programs are provided with source code, free of charge.
The XFree86 Project, Inc. is currently funded entirely by donations. If you're interested in making a monetary or equipment donation, see http://www.XFree86.org/donations.html or send Email to BOD@XFree86.org.
A list of current sponsors is available at http://www.XFree86.org/sponsors.html
For more information regarding The XFree86 Project, Inc., see http://www.XFree86.org/corp_profile.html
The latest full release is XFree86 version 3.1.2. It is based on X11R6 and was released at the beginning of August 1995. Version 3.1.2G, a beta release, was released the first week of September 1996, in binary form only.
Since the full release, the following updates have been made available:
xf86config
program
These updates are included in the beta releases.
The newest available version of SuperProbe is 2.10. It is included with the latest beta release. The 2.5 version of SuperProbe is included with the 3.1.2 release of XFree86.
Both SuperProbe and the servers print the version when they start. However, depending on how the server is started, it's output may not normally be visible.
The server will display its version number, if you simply type X -showconfig at a shell prompt (even if you haven't configured it for your card and monitor yet).
The primary site for both SuperProbe and the XFree86 servers and clients is ftp.XFree86.org.
A list of mirror sites is available at: http://www.XFree86.org/3.1.2/ftp.html
Please read the README (or RELNOTES) file, in the directory corresponding to your OS, on the XFree86 ftp site or one of its mirrors (see the previous question). It contains a list of the filenames along with their contents. It also lists which files are required and which are optional.
The latest documentation can be found on http://www.XFree86.org/3.1.2/. Many of the XFree86 specific man pages also available at http://www.XFree86.org/man/. It is also available, in ASCII form, from ftp://ftp.XFree86.org/pub/XFree86/3.1.2/doc/.
See also item G2 regarding documentation for the latest beta release.
No specific release date has been set at this time for the next full release, however it should be before the end of the year. As soon as a more specific date is available, this FAQ will be updated. The date of the next beta release has not been set either.
We don't recommend any particular board or manufacturer (although it would be good to support our sponsors, see http://www.XFree86.org/sponsors.html). In general, the S3 based boards have been the best supported, followed by the ATI based cards, however that is no guarantee that any specific board will work. It is probably best to look through the various "README" files at http://www.XFree86.org/3.1.2/ to see which boards are currently supported and pick one of them.
It is also a good idea to buy from some place that has a liberal return policy or will let you try before you buy. Especially since some manufacturers will sometimes change what RAMDAC or other chips are used on a board without changing the name of the board.
Here are a few problems/bugs/gotchas etc. discovered in the 3.1.2 release:
xf86config
program can generate an invalid
XF86Config file if you have an S3 based card with an IBM 5xx RAMDAC.
You can get an updated binary of the program by downloading the
file named either xf86config.tgz
or
xf86conf.tgz
, depending on your OS, from
ftp.XFree86.org
or one of its mirrors.
Invert_VCLK
,
Early_SC
, and Blank_Delay
in the
Display subsection of the Screen section of the
XF86Config
file. The
XF86Config(4/5) man page
and the xvidtune program use the keywords
InvertVCLK
, EarlySC
, and
BlankDelay
(i.e. without the underscores).
Future versions of the server will ignore underscores and, therefore, will accept both forms.
Vendor
or Model
entries are not
included in the Monitor
sections of the
XF86Config file. The workaround is to include such
entries, even if the Vendor/Model strings are empty ("").
S3MClk
value higher than that reported by the
server at startup. Use as high a value as you can without causing
visible noise on the screen when scrolling a window. Some people
have reported good results with a value of 170
for
Trio64 cards.
The server does not support pixel-multiplexing modes of the RAMDACs (i.e. it can't use high resolutions/clock rates). The screen saver blanks to white, not black. There also appears to be a "slow-death" problem in the server.
Nearly all these items have been corrected in the latest beta release.
Some weaknesses have been found (and exploited!) in the authorization schemes used by Xdm. The X consortium has released fix-13 for X11R6 to correct the problem.
The XFree86 Project, Inc. has released a patch to its source code as well as binaries for many platforms that incorporate the patch. For more complete information see ftp://ftp.XFree86.org/pub/XFree86/3.1.2/README.SECURITY.
This fix is also included in the latest beta release.
Yes, there has been some work done on porting the servers, libraries, and some of the clients to OS/2. This port runs in parallel to the Presentation Manager desktop, similarly to a WinOS/2 fullscreen session (there is no equivalent to a seamless WinOS/2 configuration). See http://borneo.gmd.de/~veit/os2/xf86os2.html for more information.
OS/2 binaries of the latest beta release are available. There will also be a specific FAQ for XFree86/OS2.
No work is being done to create a free port of XFree86 to any version of DOS or Windows. If you need to run X on such a platform you'll need to use one of the available commercial servers.
One of the commercial products, X Appeal, is from an XFree86 sponsor and is a port of the XFree86 servers to MS-DOS. They also have a freely available demo version.
Although it is technically possible to use multiple PCI-based SVGA cards in the same machine, none of the servers currently support this.
The VGA16 and Mono servers are both capable of running both a VGA compatible card and a non-VGA compatible monochrome card in the same machine.
Use the bug report form on our WWW server (http://www.XFree86.org/), or send email to XFree86@XFree86.org. Before sending a bug report, make sure you are using the current release of XFree86. In the bug report, include details of the XFree86 version, server, description of the problem, and some way of repeating it.
For problems in a beta release, see item G3 for information on reporting problems.
In addition to being available from the XFree86 web site (as http://www.XFree86.org/FAQ/), this FAQ will be posted at least monthly to comp.windows.x.i386unix, comp.os.linux.x, comp.answers, and news.answers.
It is also available from the XFree86 FTP site (and mirrors) as ftp://ftp.XFree86.org/pub/XFree86/WWW/htdocs/FAQ/index.html - HTML version and ftp://ftp.XFree86.org/pub/XFree86/WWW/htdocs/FAQ/faq.txt - ASCII text version.
This document is maintained by Joe Moss (joe@XFree86.Org) with contributions from other members of the XFree86 support and beta teams. Particular thanks go to David Dawes for his contributions.
If you have questions or comments regarding XFree86 do not send them directly to me. They should be Emailed to XFree86@XFree86.org (which will cause a copy to be sent to me, as well as the rest of the XFree86 support team). If you have comments regarding this document itself, then you may send them to me. In particular, if you find incorrect or non-functional URLs or any typos herein, please let me know.
If you only have Email access to the net, you should get a copy of the Accessing the Internet by E-Mail FAQ.
If you're in North or South America, send a message to mail-server@rtfm.mit.edu containing only the line:
send usenet/news.answers/internet-services/access-via-emailin the body of the message.
Elsewhere in the world, send mail to mailbase@mailbase.ac.uk with only this line in the message body:
send lis-iis e-access-inet.txt
This document explains how to retrieve stuff from the WWW, Usenet News, etc. via Email. It also explains how to use ftpmail, which you can use to get the latest version of XFree86.
Many of our sponsors supply hardware, software, and services which may be of interest to users of XFree86 servers. The list of our sponsors (http:/www.XFree86.org/sponsors.html), points to the web sites of many of them.
Here are some pointers to other documentation, regarding subjects related to XFree86, that might be useful to readers of this document. These are not published by the XFree86 Project, Inc. and are included here only for reference. Questions or comments regarding any of these items should be directed to their respective authors.
There is a no such thing as THE config file for
a particular card or monitor. The XF86Config
file
you should use is dependent on your card, monitor, operating system,
mouse, keyboard, individual preferences, network setup, available
fonts, etc.
It is not a good idea to exchange XF86Config files. While it may be safe to use certain parts of another's config file, in general, you are better off generating your own.
All of the configuration information we have, is included with
the release.
If you are using 3.1.2, please use the xf86config
utility to generate an XF86Config file for your setup.
For 3.1.2G, you should use the new XF86Setup
program.
This is explained in the
QuickStart Guide which is
included with 3.1.2B and later releases and available at
http://www.XFree86.org/3.1.2G/QuickStart.html
For further information, you could also read the XFree86 configuration guide (available from http://www.XFree86.org/3.1.2/Config.html), and the manual pages XF86Config(4/5) and xvidtune(1).
vgaset
?Simple. Don't use it!
The xvidtune
program, that
is part of the 3.1.2 release, has more capabilities and works properly
with the server extension (XFree86-VidModeExtension
)
included in the 3.1.2 servers.
There are two versions of the "2001" series Stealth64 cards. One is called the "Stealth64 Video 2##1". They use the S3 Trio64V+ chipset and are supported by the S3 server.
The other, known as the "Stealth64 Graphics 2##1", use the ARK 2000PV chipset. There is unaccelerated support for this chipset in the SVGA server. However, the programmable clock chip used on these cards is not currently supported by the SVGA server. Therefore, not all modes the card is capable of, can be used. See item F25 - ICS 5342 Clock Chip for more info on this chip.
For the latest information about Diamond cards, take a look at
http://www.diamondmm.com/.
See also question B8 regarding
the Cards
database.
These cards use the IBM RGB526 RAMDAC (unlike the former Stealth64 Video VRAM cards, which used the TI3026). See item F24 - IBM RGB526 for configuration info.
For the latest information about Diamond cards, take a look at http://www.diamondmm.com/.
That depends on which variation of the Xpression card you have. ATI has used different RAMDACs on different revisions of this card.
If you have an earlier revision (such as those with the STG1702, STG1703, and CH8393 RAMDACs), it should work without problems with the current release (3.1.2).
If you have one with the AT&T 20C408 RAMDAC, see item F22 as well as section G.
If you have one of the new "CT" versions, see item F18.
xf86config
doesn't know about my card. Is there a more up-to-date version?There is a newer version of the Cards
database at
ftp://ftp.XFree86.org/pub/XFree86/3.1.2/doc/Cards.
This should be installed in /usr/X11R6/lib/X11/Cards
.
If you have a recently purchased card, then you should probably get the latest beta release which has an even newer Cards database and support for many newer cards. Updates to the database even more recent than the latest beta can be found in the file ftp://ftp.XFree86.org/pub/XFree86/beta/doc/Cards (if that file is non-existent, then there have not been any updates to the Cards database since the last beta release).
If you still can't find your card listed, you should check if there is a generic entry for cards using the same chipset as yours. If not, see the Chipset Support section of this document to check on the current status of drivers being written and what you can do if your card is unsupported.
If after all of the above, you still are not sure what to do about configuring your card, you can contact us about it.
This usually is due to incorrect parameters in the Monitor section of the XF86Config file.
If the cursor appears to be horizontally offset by several pixels, it is probably due to the same problems that cause the display to be wrapped around. See item D1 below.
If you are experiencing problems with menus not allowing you to select items, try turning NumLock off.
In X11R6 (and newer), the NumLock key is a modifier. Many clients (X programs) haven't yet been updated to the R6 way of doing things. They need to ignore modifiers when looking for button click/release events.
See the answer to the previous question. You can also upgrade to Tk 4.x which ignores modifiers by default.
The 3.1.2G release is based on X11R6.1 which includes the XKB extension and has it enabled by default. This may cause the mappings of some keys on some keyboards to be different than they were in previous releases.
See the XF86Config man page and the sample XF86Config file for some information on setting the key mappings to your liking.
Alternatively, you can disable the XKB extensions by starting the server with the -kb option or by adding the keyword XkbDisable to your XF86Config file.
This problem is usually accompanied by an error message saying that the symbol XkbLookupKeySym was unresolved/not found. It happens when client programs still use the 6.0 versions of the libraries that now have 6.1 versions.
On Linux, FreeBSD, and NetBSD, you need to either reboot or run ldconfig after installing updated libraries.
Most likely, you've specified the wrong protocol for the mouse. Note that newer Logitech mice do not use the Logitech protocol, but instead use Microsoft (or MouseMan) protocol.
For #9 Motion 771, Hercules Terminator 64 Pro, and perhaps other S3 968 cards with IBM RAMDACs: Add the line
Invert_VCLK "*" 0to the Display subsections of your
XF86Config
.
The default setting for this parameter has been changed so that this should not be necessary any more in 3.1.2A and later releases.
For Diamond Stealth Video VRAM: if the server is not recognizing
your card as a Diamond card, add this line to your XF86Config
:
Option "Diamond"
Note: the 3.1.2G release should be better about detecting Diamond cards than previous versions, eliminating the need for this option.
If the above does not work or you don't have one of the listed cards, try running the xvidtune program and adjusting various settings. In particular, if you have a recent S3 based card, adjust the extra S3-specific settings at the bottom.
Try upgrading to version 3.1.2 and/or adding to your
XF86Config
file:
Option "no_block_write"
See also item G4
Corruption of the font cache occurs on some Trio32 based cards. This is caused by a bug in some revisions of the chip. The problem can be avoided by disabling the font cache. This can be done by using a virtual screen size large enough to use nearly all the memory on the card.
A workaround for this bug is included in 3.1.2D and later releases.
This bug occurs in release 3.1.2 and later. Unfortunately, no one is currently working on the Hercules driver, so the only workaround is to use 3.1.1.
This is not a server bug. The server is calling free()
as it should. Most implementations of free()
, however,
merely mark the region of memory as unused and do not actually return
the memory to the OS. The memory should be reused later when the
server tries to malloc()
something (depending on the size
of the request, the amount of memory fragmentation, and the algorithm
used in the malloc()
library).
If you want the server to return the memory to the OS (and thus
reduce the size of the server), the best option is to build from
source using the internal Xalloc feature in 3.1.2
(by defining UseInternalMalloc
to YES
in
the xf86site.def file and recompiling the server).
Linking with a smarter malloc()/free()
implementation
can also help (you should be able to do this with just the LinkKit).
A list of some available malloc()
libraries,
can be found at:
http://www.cs.colorado.edu/homes/zorn/public_html/Malloc.html.
You may also wish to link your client programs with one of these
malloc versions so they'll also use less memory.
The internal Xalloc routines are compiled into the beta release binaries.
In standard X11R6 (and later), in addition to the fonts in "scalable" formats (i.e. Type1, Speedo), bitmap fonts are scaled. This can have the undesirable effect of scaling a bitmap font, even though a Type1 font is available (if the bitmap font is listed first in the path).
Starting with version 3.1.2A of XFree86, by adding the text
:unscaled
to the end of any directory in the font path,
you can turn off scaling of the bitmap fonts in that directory.
This works in both the XF86Config file and the font server's config
file.
While scaling fonts, the server can hang temporarily. If you are requesting a particularly large font, the period during which the server is unresponsive, can be quite noticeable. Font scaling uses floating point math and the effect is particularly obvious, if you do not have a floating point coprocessor (getting one would help immensely).
This problem can be avoided by running the font server (xfs) and indicating in your XF86Config file that the X server should request fonts from the font server. This workaround prevents the X server from temporarily freezing, but doesn't really speed up the time necessary to scale the fonts (so the application requesting the font will still have to wait).
This is most often caused by problems with directly accessing the linear frame-buffer (this often happens with IBM ValuePoint systems, in particular). Try adding Option "nolinear" to the Device section of your XF86Config. If it still occurs, try Option "nomemaccess".
Lockups can also happen, with any server, if the system bus is overclocked. Try some more conservative BIOS settings.
No, this message is only a warning and can safely be ignored - assuming it is the only error message.
There is a problem with the /dev/console device file. As root, you can run these commands to fix it:
cd /dev; ./MAKEDEV console
As explained in the XFree86(1) man page, the -bpp option can be specified on the command line when starting the server. You can specify 15 bpp, for 32768 colors, 16 bpp, for 65536 colors, or either 24 or 32 bpp, for 16.7 million colors.
However, the server is rarely started directly. The two most common ways to start the server are with startx and xdm. For example, to start the server in 16 bpp mode from the command line:
startx -- -bpp 16or to start the server from xdm in 32bpp mode, you would put a line like the following in the Xservers file (in the xdm library directory, typically /usr/X11R6/lib/X11/xdm):
:0 local /usr/X11R6/bin/X -bpp 32
All of the above is dependent on the server having support for your card at higher than 8 bpp.
On Linux/Elf systems, xterm may fail to run (usually with the message: xterm: can't load library 'libncurses.so.3.0'). If you are encountering this problem, you need to install the ncurses 1.9.9e package. If you do not have the /lib/libncurses.so.1.9.9e library on your system, you do not have ncurses 1.9.9e installed. You can pick up this package from: ftp://tsx-11.mit.edu/pub/linux/packages/GCC
The way the newmmio mode communicates with the board requires mapping a large address space. This causes the server to appear to be using many more megabytes of memory than earlier releases which did not support newmmio. The server is not really using significantly more RAM than before.
The chipsets supported by XFree86 3.1.2 are listed in the README file. The list is available via the WWW at: http://www.XFree86.org/3.1.2/README-4.html
This section contains some notes regarding various chips for which support is not included in the current servers and other chipset/card specific notes.
If you have a card which is not currently supported, you have these options:
Check this FAQ periodically. When there is a change in the status of a driver that is under development, this FAQ will be updated to reflect the change.
If you are using a card that uses a programmable clock chip which is not supported by the server, you may be able to get a separate program to program the chip for useful clock frequencies.
Sometimes, others make clock programming programs available on the net that can be called by the server. Also, you may be able to use a video card's driver made for MS-Windows or OS/2 to program the clocks and then warm boot the machine and run XFree86.
You should probably use a monitor that is smart enough to reject frequencies that are beyond its specs, if you plan to try something like this.
The latest beta release is available in binary form only. See Section G for more info. The XFree86 Project does NOT make any alpha releases or source code versions of the beta releases available to anyone except members of the beta test team. If you have access to some currently unsupported hardware, are willing to actively participate in testing and perhaps debugging a server, and would like to join the beta team, then send an email message to XFree86@XFree86.org listing your available hardware and software, as well as any relevant skills you may have.
Often, when there is code being developed for a previously unsupported chipset, a "Call for Beta Testers" will be issued (via a posting to relevant Usenet groups).
These chips do not work with 3.1.2, but the beta releases include support for these chipsets. See the 3.1.2G Trident README file at ftp://ftp.XFree86.org/pub/XFree86/beta/doc/README.trident for more information.
None of the Matrox chipsets are currently supported by XFree86. However work is now starting. See http://www.bf.rmit.edu.au/~ajv/xf86-matrox.html for more information.
Preliminary support for this chipset (including the series 2 cards) is in the current beta release.
There is no support for this specific chipset in the SVGA server,
but we've received a report that it is compatible with the, supported,
CL-GD6235 (at least at 640x480). Add this line to the
Device
section of the XF86Config
file:
chipset "clgd6235"
Support for this chipset is in the current beta release.
The current release has support for the 65545. However it doesn't include support for the programmable clock it uses, and this limits its usefulness when driving an external monitor. The 65546/65548 should be mostly compatible with the 65545, and the driver can be forced to recognise them by using the line:
chipset "ct65545"to the
Device
section of the XF86Config
file.
The current beta release has support for these and other newer C&T chip.
No work has been or is being done on supporting this chipset (but this doesn't rule out the possibility of future development).
None of the chips from Silicon Integrated Systems are supported by the current full release. Support for these chips is in the latest beta release.
This chip (used on the Diamond EDGE 3D 2000 Series) is not currently supported. Work has started on a driver, but we don't know yet when it will be available.
This chip (used on the Diamond EDGE 3D 3000 Series) is not currently supported. Work has started on a driver, but we don't know yet when it will be available.
Boards based on this chip are not supported by the current release. The current beta release contains support for this chipset.
Boards based on this chip (such as the STB Horizon 64) are not supported.
The ViRGE (325) and ViRGE/VX (988) chips are not supported by the current S3 server. Work has started, but we don't have any idea at this point when any code will be ready.
There is no support for the ET6000 at this time. The current beta release contains preliminary support for this chipset.
These versions of the Mach64 chipset include an on-chip RAMDAC and clock generator and do not work with the current (full) release. Additionally, some cards using the "GX-F (GX rev 3)" versions may not work with the current release.
These chips are supported in the latest beta release.
Some support exists for the Mach64 GT, VT, and VT2 chips in the current beta release.
The current version of the server needs to map the video memory aperture into the system's address space. Since this requires 4MB of address space and since ISA bus systems can only address a maximum of 16MB, the Mach64 server can not be used on systems with more that 12MB of RAM. See the Mach64 README files for more information regarding the current capabilities of the server.
Until full support for ISA Mach64 cards is added to the Mach64 server, the SVGA server can be used instead.
The S3 server does not work with 911 and 924 cards that only have .5MB of RAM on the video card. Upgrade the card to 1MB.
These new AT&T chips have started to appear on some S3 and Mach64 cards (for example, some ATI Graphics Xpression cards). They are combination RAMDACs and Clockchips. The current servers were released before these chips were. The Mach64 and S3 servers do not work with these chips.
Support for the 20C408 is being added to the Mach64 server and support for the 20C409 is being added to the S3 server. You can try out the current version of the code by trying the latest beta release.
Support does not currently exist for these RAMDACs. Some code for supporting the ICS 5341 RAMDAC is in the latest beta release of the W32 server.
This RAMDAC is not currently supported. It is, however, compatible with the RGB524 RAMDAC, which is supported by the S3 server. Add this line to your XF86Config file:
Ramdac "ibm_rgb524"
The beta releases also accept the line Ramdac "ibm_rgb526", although it is treated as a RGB524 RAMDAC.
Support for this clock chip will be in the ARK driver in the next release of the SVGA server. You can try out the current version of the code in the latest beta release.
Support for the ICD2061A clock chip has been added to the latest beta release of the W32 server (support for this chip is already included in the S3 server).
Beta releases are now made available to the public as limited time binaries. Release 3.1.2G is the lastest available beta release. It is based on X11R6.1 and is a complete distribution. For information on the release, see the release notes at http://www.XFree86.org/3.1.2G/RELNOTES.html
This section will be expanded as more information (e.g. from the problem reports submitted) becomes available.
That is covered in the Release Notes.
Yes, in addition to the release notes, the 3.1.2G release includes updated documentation files.
If you try the latest beta server release (3.1.2G), please submit a report indicating any problems you encountered (if any). A report form can be obtained from http://www.XFree86.org/3.1.2G/BetaReport It should be emailed to report@XFree86.org
As problems (other than those already mentioned in the release notes) are discovered with 3.1.2G, they will be listed here.
Send comments regarding this page to Joe Moss (joe@morton.rain.com)