Bugs found so far in XFree86/OS2 3.1.2D
Last updated 12 May 96 09:58 CET (DST)
These HTML pages can be downloaded from SET.GMD.DE (/pub/misc/XFree86OS2/html) by FTP.
Bug fixes below are collected in /pub/misc/XFree86OS2/fixes at the same site.
If you came here by a notice of this URL in some newsgroup article:
Here is the toplevel of the XFree86/OS2 pages.
There is also a mailing list available.
Note: If possible, I will provide fixes as fast as possible on this page.
The main archive for the distribution is ftp.xfree86.org. If appropriate,
I'll also update the distribution files at this site. Maintainers are urged to
mirror ftp.xfree86.org for this software.
Generally, please ensure, that you have NO HARDWARE CONFLICTS, and that your
system runs stable in general. Flaky hardware and improper OS/2 configuration
may hide various effects or cause problems that wouldn't be there otherwise.
Don't expect that XFree86/OS2 can turn an instable OS/2 into a stable one.
List of recent files
The following is the list of recent file dates and sizes from the main
archive at ftp.xfree86.org/pub/XFree86/beta/OS2. If your archives or files
differ from that, you have old versions (likely from some other archive).
Obtain the recent files!
-rw-r--r-- 2 veit xf86-alp 3547 Mar 10 03:07 00README.1ST
-rw-r--r-- 2 veit xf86-alp 971287 Mar 10 03:07 312D8514.zip
-rw-r--r-- 2 veit xf86-alp 1045977 Mar 10 03:08 312DAGX.zip
-rw-r--r-- 2 veit xf86-alp 1027486 Mar 10 03:09 312DI128.zip
-rw-r--r-- 2 veit xf86-alp 1033589 Mar 10 03:09 312DMa32.zip
-rw-r--r-- 2 veit xf86-alp 1070741 Mar 10 03:10 312DMa64.zip
-rw-r--r-- 2 veit xf86-alp 976130 Mar 10 03:11 312DMa8.zip
-rw-r--r-- 2 veit xf86-alp 658612 Mar 10 03:11 312DMono.zip
-rw-r--r-- 2 veit xf86-alp 1051723 Mar 10 03:12 312DP9K.zip
-rw-r--r-- 2 veit xf86-alp 103311 Mar 10 03:12 312DPEX.zip
-rw-r--r-- 2 veit xf86-alp 1138048 Mar 10 03:13 312DS3.zip
-rw-r--r-- 2 veit xf86-alp 1199978 Mar 10 03:14 312DSVGA.zip
-rw-r--r-- 2 veit xf86-alp 669683 Mar 10 03:15 312DVG16.zip
-rw-r--r-- 2 veit xf86-alp 980855 Mar 10 03:15 312DW32.zip
-rw-r--r-- 2 veit xf86-alp 109868 Mar 10 14:48 312Dbase.zip
-rw-r--r-- 2 veit xf86-alp 2224341 Mar 11 12:23 312Dbin.zip
-rw-r--r-- 2 veit xf86-alp 113692 Mar 10 03:17 312Ddoc.zip
-rw-r--r-- 2 veit xf86-alp 1709238 Mar 10 03:19 312Df100.zip
-rw-r--r-- 2 veit xf86-alp 531339 Mar 10 03:19 312Dfcyr.zip
-rw-r--r-- 2 veit xf86-alp 3077649 Mar 10 03:22 312Dfnon.zip
-rw-r--r-- 2 veit xf86-alp 1755559 Mar 11 12:20 312Dfnts.zip
-rw-r--r-- 2 veit xf86-alp 1130890 Mar 10 03:24 312Dfscl.zip
-rw-r--r-- 2 veit xf86-alp 2136356 Mar 10 03:25 312Dman.zip
-rw-r--r-- 2 veit xf86-alp 1067602 Mar 15 07:25 312Dprog.zip
-rw-r--r-- 2 veit xf86-alp 986245 Mar 10 03:26 312Dvfb.zip
-rw-r--r-- 2 veit xf86-alp 5999 Mar 15 09:04 LATEST.OS2
-rw-r--r-- 2 veit xf86-alp 23853 Mar 10 17:44 README.OS2
-rw-r--r-- 1 marineau xf86-alp 540522 Mar 11 12:34 S3128514.zip
-rw-r--r-- 1 marineau xf86-alp 610354 Mar 11 12:34 S312AGX.zip
-rw-r--r-- 1 marineau xf86-alp 594262 Mar 11 12:34 S312I128.zip
-rw-r--r-- 1 marineau xf86-alp 599245 Mar 11 12:34 S312Ma32.zip
-rw-r--r-- 1 marineau xf86-alp 633370 Mar 11 12:34 S312Ma64.zip
-rw-r--r-- 1 marineau xf86-alp 544382 Mar 11 12:34 S312Ma8.zip
-rw-r--r-- 1 marineau xf86-alp 572472 Mar 11 12:34 S312Mono.zip
-rw-r--r-- 1 marineau xf86-alp 616498 Mar 11 12:34 S312P9K.zip
-rw-r--r-- 1 marineau xf86-alp 698507 Mar 11 12:34 S312S3.zip
-rw-r--r-- 1 marineau xf86-alp 746698 Mar 11 12:34 S312SVGA.zip
-rw-r--r-- 1 marineau xf86-alp 583422 Mar 11 12:34 S312VG16.zip
-rw-r--r-- 1 marineau xf86-alp 546396 Mar 11 12:34 S312W32.zip
-rw-r--r-- 2 veit xf86-alp 35568 Mar 10 03:27 X11OS2.FAQ
-rw-r--r-- 2 veit xf86-alp 2580 Mar 10 03:27 announce.txt
-rw-r--r-- 2 veit xf86-alp 359399 Mar 10 03:27 emxrt.zip
BTW: the S312* files are small versions of the X servers, which do not
contain the rarely used PEX, XI and XIE extension, but are otherwise
functionally equivalent. These files are mentioned incorrectly in the docs
You must apply these fixes or obtain a new distribution file.
Archives with a date of 11 March or newer should no longer have these problems.
- Superprobe crashes with a SIGILL, gdb displays routine outp().
- Obtain the following
The recent 312Dbase.zip file is fixed.
- "A non-recoverable error occurred. The process ended."
crash with SYS2070 when started from the command line.
- Xmu.dll is broken in early distributions of 312Dbin.zip.
Obtain the following, now official replacement for /XFree86/lib/Xmu.dll.
The recent 312Dbin.zip is fixed.
Annoying, but harmless, likely to be fixed in the next version, use workaround
for now, if available.
- "Couldn't open default PEX font file Roman_M"
- Should no longer occur with the recent 312Dbin.zip file.
- SET TMP=F:\ won't let the server start up.
- It seems to be a problem if the TMP path ends with a backslash. Omit
a trailing backslash, or adjust startx.cmd accordingly. This will be analyzed.
- Popuplog files appear under C:\popuplog.os2, even if the boot drive
is not C:.
- Fixed in the next version.
- "Xlib: Maximum number of clients reached"
- A maximum of 10 or 11 concurrent socket connections are accepted. Fixed in
the next version.
- xterm: no app-defaults e.g. in the CTRL-Right-Mouse menu.
- Obtain the new Xmu.dll.
Should no longer happen with recent distribution.
- Password visible with OS/2 FTP in xterm.
- Appears to be a problem of FTP which does not understand that it does not
have KBD/VIO available there. A real Unix ftp which reads and writes to stdio
only should work. Note: might also require fixes to EMX getpass().
- Black screen when CTRL-ESC during server shutdown.
- Will be analyzed, could be a race condition. Don't be so impatient for
now, but wait until the server goes down. This may need up to 10-15 sec
on a slow system (well, what is a slow system...?)
- Error message "Couldn't open compiled keymap file /XF"
- It was already mentioned in the docs that XKB does not work yet. Set a
XkbDisable in your XConfig file and/or reply with NO to the
question of xf86config whether you want to use XKB. Use a Xmodmap file
if you need one.
- xmkmf -a does not work.
- Obtain the following fixed xmkmf.cmd.
- Include header files missing in 312Dprog.zip.
- Obtain the following plug-in fix for include files
to be installed after an old 312Dprog.zip file. 312Dprog.zip has been
updated at ftp.xfree86.org.
- CTRL-C in an xterm that was started with
has obscure side effects, including shutting down the server inadvertently.
- This is a complex effect, resulting from difficulties with and implementation
of signals in OS/2. We are investigating how to fix this. Maybe in the
- startx passes command line arguments incorrectly to xinit
- Obtain the following fix for startx.cmd.
This will also correct the problem with the shell, mentioned below.
- xvidtune does not work.
- Fixed in the next version. You might try to start the
server as follows:
startx -- -allowNonLocalXvidtune (needs the fixed startx.cmd).
Passing the same option in the XConfig file does not work.
- REXX0041 error when running xinitrc.cmd
- The following fix for xinitrc.cmd
should correct this problem.
- HSWITCH causes server to hang.
- Don't use the HSWITCH utility program for switching between sessions in
XFree86, it is an incompatible application which makes use of direct KBD
calls (see also FAQ).
- X11 incompatible with SIO?
- I have a single report that starting XFree86 while a PPP connection built
over Ray Gwinn's SIO drivers could break the connection. I haven't been able
to reproduce this with sio153.zip on my system; it works fine IMHO.
I have contacted Ray Gwinn on this problem. He also has no good idea. If someone
has a problem with SIO when starting or running XFree86, please send me a
detailed report (including config.sys, hardware config, error.log, etc.).
- X0.hosts is ignored.
- It is not ignored, but parsed incorrectly. Fixed in the next version.
For now, edit the file as recommended, then run the
utility on it. Editors that can manage the file afterwards are emacs, uemacs,
and cedit, for instance.
- Makefile generated by imake only works from X11ROOT drive.
Include files not found during compile when porting software.
- Fixed in the next version. So far, port your software on the same drive
you also have the /XFree86 code tree on.
- The xauth authentification mechanism does not seem to work.
- Will be analyzed.
- In some cases, Xserver does not display gray background after some seconds.
- Normally it is started, but goes to background for some yet unknown
reason. Get the window list with CTRL-ESC, and select the server process to
go to foreground.
- 4OS/2 switches back to the PM session, when started.
- Yes, this is what it makes 4OS/2 not so nice. Other than that, it appears to
work in most cases (32 bit version 2.51). You may also try out the X11SHELL
environment variable mentioned below, but be sure to get the fix there as well.
- xmkmf -a fails with \INDIR not found.
- Copy the program \XFree86\bin\indir.cmd into the root directory of the
drive where you build apps for now. Fixed in the next version.
- -probeonly in xf86config does not work.
- We attempt to fix this. For now, add "Clocks" lines manually. This should
affect some VLB S3 cards only.
- xf86MapVidMem FAILED! in xf86log.os2 when starting the server.
- Will be analyzed in more detail, but the real reason appears to be that
OS/2 runs out of DevHlpVMAlloc pages. This happens when the server attempts
to find out the location of the video memory on some VLB cards. Try to find
out the real physical address of the memory; Some video setup program coming
with your card may allow you to specify the base address manually. Add the
following option to the Device section of your XConfig file:
where 0x12345678 must be of course replaced by the real physical address.
- SYS0447 when starting a program in an xterm.
- This is what you usually get with unsupported 16 bit apps that use Kbd* and Vio*
functions (see also FAQ). Unfortunately, some of the more popular apps are
written this way by IBM :-(, including telnet and ftp.
- Even with X11SHELL set, sometimes the shell from OS2_SHELL is used.
- No fix yet, but likely corrected in the next version. If you have a
Unix shell as OS2_SHELL, and now have problems to run REXX commands, try to
ADDRESS CMD to your REXX script.
- makedepend problems
- Makedepend implicitly checks for a directory d:/emx/include, it does not
accept C_INCLUDE_PATH settings that contain two or more directories separated
by semicolons, furthermore rare problems exist with #ifdefs continued in the next line with a backslash.
Get the following fixed makedepend.exe.
- xf86config scrolls more than 25 lines.
- This causes some text and some selections (e.g. on the RAMDAC page) become
invisible in command windows setup to 25 lines. Obtain the following
fix for xf86config.exe. This is BETA code: please report
any bugs you find with this version.
- bitmap and other Xt clients don't work correctly.
- There are two problems: Resources are not found, unless you run the client
from the X11ROOT drive, and some buttons and menus do not work. This will be
fixed in the next version. As a temporary workaround, convert the resource files
corresponding to the client with the
fixcrlf.exe utility, found
in the /XFree86/lib/X11/etc directory.
- X -probeonly does not work
- This is a Unixism left in the code. Under Unix, there is usually a
file link (some kind of an alias name) for the Xserver, so that it is reachable
under the name "X". This does not exist here. If you really need this probeonly
function, copy the XF86_*.exe file to X.exe in the \XFree86\bin directory.
After that operation, you may delete it again to save disk space.
May appear with XFree86 on other platforms as well, no idea when this will
- There exists a general hardware conflict between certain
S3-based cards and COM4.
- This is a deficiency of S3 cards, unfortunately. If this happens, the only
workaround known is to disable the COM4 port.
- Superprobe misdetects the videocard.
- Double check that you really have the hardware which was sold to you
We have found one case where Superprobe was right, and the dealer was lying.
If you are right, this turned out to be almost always a problem with
Superprobe, not with OS/2 or XFree86/OS2. Please send the output of Superprobe
from now on directly to firstname.lastname@example.org with a detailed
description of what this card really is.
- After exit, Superprobe or the X server switch to a 40-char font or otherwise
corrupt the screen (colored blocks).
- I have seen this besides the reported ET4000/W32p rev.A for various
other cards as well when starting a or returning to a full-screen session,
unrelated to Superprobe or XFree86. I suspect a bug in the OS/2 video drivers or a
non-standard use of font maps or text screens. Usually, a "mode co80"
and/or a "clear" will make the problem go away. OS/2 2.11 does not have this
- SYS0008 error when running XFree86
- This error is so unspecific that no good explanation exists. There has been
a report that using
detach program rather than the recommended
start/n/min program would help, but this might have other side
effects. If you get this error, send me the complete output of
of the currently running system, so that I can attempt to track this down.
- XFree86 writes on the PM screen or writes on WinOS/2, or vice versa.
- Diamond cards are notorious for that. This is very often a bug in OS/2 and/or
WinOS/2 video drivers. Check if newer drivers help.
- Crash when clicking on gray background
- You likely have a Cirrus card. Enable the following option in your XConfig file:
- WD90C24, WD90C31 video corruption after switching from WPS
- This was reported to happen on IBM Thinkpad 755CD systems, but may also
occur on other systems with the above boards. Add the following to the Device section of your XConfig file:
- XFree86/OS2 hangs Japanese OS/2 version
- According to a report from Japan, you have to set the US code page 437
for the session in which you want to start XFree86/OS2. The reason is unclear,
because XFree86 does not use code pages at all, but it is possible that this
operation will disable certain language extensions of the keyboard.
Things that are not a bug
(but candidates for the FAQ...)
- Some fonts look ugly.
- This is not really a bug, but a problem with 75 DPI fonts. Try 100 DPI
fonts with higher resolutions.
- Cannot connect to localhost with IAK.
- Be sure that your \tcpip\etc\hosts file has a newline at the end.
- AUDIT: ... client rejected from IP 188.8.131.52.."
- This can have multiple reasons, mostly an incorrect IAK or TCP/IP
setup or outdated TCP/IP DLLs (make sure you have the recent fixes or CSDs installed).
It is not a problem with XFree86. Get assistance in the newsgroups
to get your setup okay.
- Other problems with connecting from and to other hosts.
- There are unlimited ways how you can set up your network wrong. I have
meanwhile so many success reports that a problem with XFree86 concerning
networking is highly unlikely. Seek assistance in the newsgroups concerning
your network setup.
- "Unable to load font `fixed'" and after that "TRANS(...)... 61".
- This is not a bug with networking.
FontPath lines for the fonts you don't have
installed from the XConfig file, by placing a
# symbol at the
beginning of the lines. If you have installed the minimal configuration only,
you only have the following font paths:
# FontPath "/XFree86/lib/X11/fonts/100dpi/:unscaled"
# FontPath "/XFree86/lib/X11/fonts/Type1/"
# FontPath "/XFree86/lib/X11/fonts/Speedo/"
# FontPath "/XFree86/lib/X11/fonts/100dpi/"
You may also try out the fix for xf86config.exe
which should fix the font paths automatically. This is BETA code: please report any other problems that you encounter with this fix.
- ALT-GR (right ALT on some European keyboards) does not work.
- Add the following lines to your /XFree86/lib/X11/xinit/.Xmodmap
add Mod1 = Alt_L
add Mod2 = Mode_switch
- SYS2070 when having PMX installed and /tcpip/dll before
/XFree86/lib in the LIBPATH
- This is a name clash between PMX and XFree86 libraries. I think
adding SET BEGINLIBPATH=drive:\XFree86\lib to STARTX.CMD should make PMX
and XFree86 live happily together. Anyone to confirm this?
- Multiple beeps when running a client you compiled yourself.
- You must compile and link with multi-threaded libraries. Or use
the Imakefile which is typically available which serious X11 code.
A simple Imakefile for compiling a single source file
consists of the following line only:
- Man pages are unreadable
- This is because they were formatted for a line printer which does bold
printing by overwriting. Fixed in the next version. You can use an emacs
macro to reformat the text, or apply the program
col -b (available
from 4.4BSD, for instance) on the man pages for now. In near future,
from the contrib kit will be available.
- PTYP0 device is not ready message on startup.
- You have an old version of EMX.DLL floating around in your system. Ensure
your version is at least emx09b fix1 or later. If the EMXREV utility names
any component with a revision less than 40, it is outdated.
- Font path component expected in error log, but directory exists.
- You must put double quotes around the path string specified in the FontPath lines.
Same holds for various other strings in the XConfig file as well.
- Shutdown from twm does not work.
- The last client in xinitrc.cmd is not started with
If this client is terminated, the whole X system normally shuts down. In the
default xinitrc.cmd file, this last client is the login xterm,
not twm, so exit from its menu will terminate twm itself, but not the
- TMP dir must be on HPFS.
- Some programs write temporary files into a directory specified by the
TMP environment variable and, as usual with Unix, do not obey FAT 8.3 filename
rules. Therefore the TMP directory must reside on a HPFS, LINUX, or NFS
Mistakes in the documentation
- 312Dlib.zip seems to be missing.
- This is a bug in the documentation. Such a file does not exist for
XFree86/OS2. Documentation corrected in the next version.
- The file tcpstart.cmd is normally not existing in the IAK.
- Create one and put it in your startup folder or run it with RUN= from
CONFIG.SYS. Or manage otherwise that the loopback configuration is running
before X11 is started.
- inetd seems to be missing in IAK.
- Ignore that, you don't need it for XFree86.
- Where is a termcap.x11, as mentioned in the docs?
- This was actually an example. EMX or emacs should come with a
termcap file which is sufficient. But if you don't have one, you can use
this termcap file.
Inaccuracies or omissions from the XFree86 beta docs
- ET4000W32 server says "hibit: initial state high".
- Add the following line to the
Section Device for
your accelerated card (there is more than one of these sections in the file):
- xf86MapVidMem FAILED with SPEA/V7 Mirage P64 VLB, Trio64 chip
- Add the following line to the
Section Device for
your accelerated card (there is more than one of these sections in the file):
- Cirrus CL-GD5428 may crash system
- Try out the following line in the
Section Device in
- Obviously there is no documentation for the Number 9 Imagine-128 video card.
- There is general documentation for the I128 card in the man pages; this
man page applies to all accelerated video cards obviously. It looks as if there
are no specific options for the card for now the user should know.
Useful hints and tricks
The following are not bugs, but comments and hints, partly from other people.
Added here without warranty.
Send reports to: Holger.Veit@gmd.de
- How to set the shell correctly
- (Holger Veit) Currently, only CMD.EXE is a supported shell for xterm.
You can force CMD.EXE to be used, even if you have SHELL or OS2_SHELL set to other shells,
if you specify the X11SHELL variable, and get the following fix for startx.cmd:
The search order for a suitable shell is the following:
- Compressing executables and DLLs
- According to email@example.com, you can use LXlite 1.01, available
from hobbes.nmsu.edu, to compress the executables and DLLs of XFree86/OS2
to save disk space. This should give a reduction of 30-70% in file size.
This is supported for Warp and derived systems (Connect, Server) only, not with
OS/2 2.11; therefore, this and the use of /EXEPACK:2 won't become default
in the distribution files.