<!DOCTYPE linuxdoc PUBLIC "-//XFree86//DTD linuxdoc//EN">

<article>

<title>Release Notes for XFree86&tm; 3.3.6
<author>The XFree86 Project, Inc
<date>31 December 1999

<abstract>

This document describes the bugs fixed and the features added in
XFree86 3.3.6 compared with the 3.3.5 release, 
It also includes installation instructions for the binary distributions.
It is strongly recommended that anyone using XFree86 update to version
3.3.6. 

</abstract>

<toc>

<sect> XFree86 and X11R6.3
<p>
XFree86 releases starting with the 3.2A beta are based on the
X Consortium's X11R6.3 (the final release from the X Consortium).

R6.3 is an update to R6.1, and is intended to be compatible with R6.1
and R6 at the source and protocol levels.  Binaries should be
upward-compatible.  X11R6.3 includes some new Xserver extensions:
SECURITY, XC-APPGROUP, XpExtension (print extension), and an updated,
and standardised version of LBX.  X11R6.3 also has new standards,
including RX (X Remote Execution MIME type), and a proxy management
protocol.  X11R6.3 includes support for gzipped fonts.

R6.1 is an update to R6,
and is intended to be compatible with R6 at the source and protocol
levels.  Binaries should be upward-compatible.  X11R6.1 includes some
new Xserver extensions: DOUBLE-BUFFER, XKEYBOARD and RECORD.

What about R6.2?  X11R6.2 is the name given to a subset of X11R6.3,
which has only the print extension and the Xlib implementation of
vertical writing and user-defined character support in addition to
those features included in R6.1.
<p>
<sect> X11R6.4
<p>
In September 1998 The Open Group changed the copyright of X11R6.4
from the non-free copyright used for the initial release of
X11R6.4 back to the old free X Consortium style copyright.
Given the fact that our main development focus is on XFree86-4.0 and that 
the 3.3.x releases are intended mostly to fix some bugs and get out new
drivers to the public, we opted not to include X11R6.4 in XFree86-3.3.x.
<p>
XFree86-4.0 will be X11R6.4 based.
<p>
<sect> OS issues
<p>
Always check the OS specific README files for special requirements or caveats. 
<p>
Users running Linux should note that Elf is now the only binary type 
supported for Linux OSs.  This means
that binaries for ix86/a.out and AXP/ECOFF are not available with this
release.
<p>
Users running FreeBSD 3.0 should note that only ELF binaries are provided
with this release.  a.out shared libraries are also included for compatibility
purposes.

<p> 
<sect> What's new in 3.3.6?
<p>
<itemize>
  <item>Support for ATI Rage128.
  <item>Support for ATI Rage Mobility
  <item>Support for SiS 540/630 and SiS 300
  <item>Support for Silicon Motion Lynx chipsets
  <item>Support for Savage2000
  <item>Support for NVIDIA GeForce
  <item>Support for Intel i810 (not enabled by default as it needs kernel module)
  <item>Fixes to several drivers
</itemize>
<p> 
<sect> What's new in 3.3.5?
<p>
<itemize>
  <item>Support for S3 Savage4 and Savage3D. Limited to Linux/x86 at this point. Please see README.S3V.
  <item>Support for S3 Trio3D/2X.
  <item>Support for DGux.
  <item>Support for QNX.
  <item>Fix bug in Mach64 server on Rage LT and Rage LT Pro.
  <item>Fix SiS driver for 530 and 620.
  <item>Fix the spurious underline problem on NVidia Riva TNT cards.
  <item>Fix the PS/2 mouse problem with later Linux kernels.
  <item>Misc updates and bugfixes in Rendition driver.
  <item>Updates from SuSE and Red Hat, including more keyboards, PAM support, ARM and AXP fixes,
        security fixes.
</itemize>

<p> 
<sect> What's new in 3.3.4?
<p>
<itemize>
  <item>Several security fixes.
  <item>Intel i740 support (donated by Precision Insight).
  <item>SiS 530 and SiS 620 support.
  <item>3Dfx Voodoo Banshee and Voodoo3 support.
  <item>Trident Blade3D, CyberBlade and Cyber9525 support.
  <item>S3 Trio3D support.
  <item>Matrox G400 support.
  <item>NVIDIA Riva TNT2 support and better acceleration for all Riva
	chipsets (donated by NVIDIA).
  <item>Rewritten Cyrix MediaGX support (donated by Cyrix). 
        <bf>Warning: this is reported
        to hang some machines!</bf> If that happens, please use the
        SVGA server in XFree86-3.3.3.1 instead.
  <item>Acceleration for XF68_FBDev on PPC.
  <item>VMWare's DGA-1.1 extension. Note that the next major release of XFree86
        will NOT include DGA-1.1 but the newly developed DGA-2.0 that contains
        significantly more features than DGA-1.1 and will most likely not be
        compatible with DGA-1.1
  <item>Change xterm to use the tty default value for the backspace key.
  <item>Japanese documentation and manpage updates.
  <item>Updates and new hardware support (Acecad flair, Calcomp DrawingBoard)
        for xinput extension.
  <item>Bug fixed for cards with S3 Aurora64V+ (M65) chip, VGA output
        should now work.
</itemize>

<p> 
<sect> What's new in 3.3.3.1?
<p>
<itemize>
  <item>A system clock slowdown caused by 3Dlabs driver has been fixed.
  <item>Drawing bugs with C&amp;T HiQV chips have been fixed.
  <item>Drawing problems in the Cyrix driver have been fixed.
  <item>The Matrox G100/G200 PCI versions should now be fully supported.
  <item>The Mach64 server now supports gamma correction.
  <item>Open Source NVIDIA driver has been provided.
  <item>I128 Rev IV support has been added.
  <item>Another S3V lockup has been fixed.
  <item>A drawing bug in cfb24 has been fixed.
  <item>A problem causing lockups with some Trident cards has been fixed.
  <item>Updates for SCO, FreeBSD, Linux glibc OS support.
  <item>DG/ux support has been added.
  <item>GNU/Hurd support has been added.
  <item>Several XINPUT problems have been addressed.
  <item>DGA relative mouse movement events when XINPUT is defined have
        been fixed, as have DGA-related problems with the NVIDIA and S3V
	drivers.
  <item>The X server now reads Xauthority files using the real user id.
  <item>Several small fixes to core clients.
  <item>A bug in Xlib's handling of KOI8-R has been fixed.
  <item>PC98 cards database, sample config file and XKB handling have
        been fixed.
</itemize>
<p>
<sect> What's new in 3.3.3?
<p>
<sect1> Security fixes
<p>
<itemize>
  <item>Several buffer overrun problem discovered since the release of
	XFree86-3.3.2 have been fixed
  <item>Sanity checks on DISPLAY variable 
  <item>Attempt to stop X connection hijacking (sticky bit for /tmp/.X11-unix)
	Note that this is only a short-term partial solution, and it is
	doesn't help at all for some SYSV based OSs (like Solaris 2.x).
</itemize>
<sect1> Bug fixes
<p>
<itemize>
  <item>Fix a serious LBX bug using uninitialized variables.
  <item>Fix some Xlib bugs that cause problems when using XKB in some
        locales (like latin2), add support for iso8859-15, and include
	a couple of basic fonts for iso8859-15
  <item>Fix xf86config to handle more than 10 modes and to be prepared for
        XFCom / XBF servers.
  <item>Lots of xterm changes, see xterm.log.html in the sources.
  <item>Fix problems with high dot clocks in high color depths on Riva128.
  <item>Fix problem in the S3 drivers with disabled onboard S3 chips when
        using S3 cards.
  <item>Fix problems with Cirrus 5480 at high resolutions and jitter that 
        appeared with the 546x's using the BitBLT engine.
  <item>Fix clock limits in some cases in Tseng driver.
  <item>Fix some lockups with ViRGE chips.
  <item>Improved timing calculations for video FIFO in the Mach64 X server.
  <item>Fixed bug in font rendering code in the Mach64 X server.
  <item>Fixed VGA font restoration bug when exiting the Mach64 X server.
  <item>Several XF68_FBDev fixes.
  <item>Fix wrong clock limits for S3 Trio64V+.
  <item>Fix some generic rendering errors in cfb and vga code.
  <item>Fix text restore problems and improve high res 32bpp modes in MGA
        driver; fix 24bpp and 32bpp display problems; disable probing for 
	memory on some MGA chipsets; fix maximum blit size; fix sync on green
	for Mystique.
  <item>Fix problems with Xnest crashing with too many visuals.
  <item>Fixes for 64bit architectures.
  <item>Fix cursor bug in S3V server.
  <item>Fixes for memory probing, max dotclock probing and DPMS display off
        on C&amp;T chipsets.
  <item>Fix LCD detection for CLGD755x and the double mouse bug and the
        blanking bug in the cirrus driver.
  <item>Fix some problems with -quiet flag (where some variables stayed
        uninitialized)
  <item>SuperProbe can detect C&amp;T HiQV chips now, with an exception in the
  case of No-PCI bus connected. The "-no_bios" option of SuperProbe solve this
  situation. 
  <item>The C&amp;T chipsets now use software cursors by default to avoid
  a number of minor problems in certain circumstances. Hardware cursors can
  still be used by adding the "hw_cursor" option to XF86Config.
  <item>EGC server now works on Linux/98. XF98Setup also works with it.
  <item>Fix VT switch problem with MGA server on Linux/98.
</itemize>
<sect1> New Features
<p>
<itemize>
  <item>New driver for Cyrix MediaGX based motherboards.
  <item>New driver for Rendition V1000 and V2x00 chipsets (not accelerated).
  <item>New driver for Weitek P9100 based cards.
  <item>New driver for SiS 5597/98 and SiS 6326; treat SiS 6215 and 6225 as
        6205.
  <item>New server for 3Dlabs based cards using GLINT 500TX and MX (with IBM 
        RAMDAC), Permedia (with IBM RAMDAC), Permedia 2 and Permedia 2v.
  <item>Support for the Matrox G100 and G200 based cards to the MGA
        driver.
  <item>Support for C&amp;T 69000 and 32bpp on 65550 and later.
  <item>Support for NeoMagic notebook chipsets.
  <item>Support for EPSON SPC8110.
  <item>Support for NVidia Riva TNT.
  <item>Acceleration for Trident Image975, Image985, Cyber9397, Cyber9388.
  <item>Support for the new ATI Rage Pro, VT4 and Rage IIC based cards has
        been added.
  <item>24-plane TGA support.
  <item>Config support to build XFree86 on Linux with DECnet transport.
  <item>Support to build XFree86 for FreeBSD/ELF.
  <item>Support for vesafb on Linux/x86.
  <item>LynxOS 3.0 support.
  <item>Updates to SuperProbe.
  <item>New XInput drivers for AceCad ADVANCEDigitizer, MicroTouch TouchPen,
        SGI dial box.
  <item>Add local font directory.
</itemize>
<sect1>Known Problems
<p>
The problems listed here are those known at the time of the release.  See
the <htmlurl name="XFree86 FAQ" url="http://www.xfree86.org/FAQ"> for more
up to date information.
<p>
<itemize>
  <item>There are problems with some Cirrus laptop chipsets (75xx).  The
	driver seems to work for some people, but not others.  Until
	someone with the appropriate hardware can look into
	this, these problems are unlikely to be fixed.  If you wish to
	work on this, please contact us.  We don't need testers, we need
	people willing and able to fix the problems.
  <item>There are problems with some of the Trident laptop chipsets.  The
	driver seems to work in a limited way for some people, but not
	others.  Until someone with the appropriate hardware can look into
	this, these problems are unlikely to be fixed.  If you wish to
	work on this, please contact us.  We don't need testers, we need
	people willing and able to fix the problems.
  <item>SuperProbe command fails to detect some newly supported chips.
        Currently, the probing result with Xserver itself with appropriate
        setting in XF86Config (and maybe option "-probeonly") can be more
        relied on than the result from SuperProbe for newer chips.
        If you are interested in improving the design of SuperProbe's code,
        let's come and join as the member of the XFree86 ``developer team''.
</itemize>

<sect>XFree86 and Open Source Software
<p>
XFree86 public releases in general follow the Open Source Software definition
as set forth at <htmlurl name="http://www.opensource.org/osd.html"
url="http://www.opensource.org/osd.html">. 
This definition is actually a subset of our requirements.
<p>
All code in XFree86 3.3.6 satisfies the Open Source Software definition.
<p>

<sect>Installing the XFree86 3.3.6 Release
<p>
The XFree86 3.3.6 binaries are distributed as a full release.
<!--
, and as an
update to the 3.3.5 release.  For information about upgrading from 3.3.5
to 3.3.6 see section <ref id="upgrade"
name="Updating XFree86 3.3.5 to XFree86 3.3.6">.
-->

NOTE: the X servers are no longer installed setuid root.  If you are
starting your X servers with startx/xinit, or something similar, you
will need a copy of the setuid Xwrapper, and an updated xinit.  These
can be found in Xbin.tgz.

What follows is a list of the XFree86 3.3.6 components.  There may be
some variations in this for some OSs.

The following are required for all new installations, or when upgrading
from a version older than 3.3:
<quote>
<verb>
preinst.sh      Pre-installation script
postinst.sh     Post-installation script
extract         XFree86 extraction utility
Xbin.tgz        Clients, run-time libs, and app-defaults files
Xdoc.tgz        Documentation
Xfnts.tgz       75dpi, misc and PEX fonts
Xlib.tgz        Data files required at run-time
Xman.tgz        Manual pages
Xset.tgz        XF86Setup utility
Xjset.tgz       XF86Setup utility (if you prefer the Japanese version)
XVG16.tgz       16 colour VGA server (XF86Setup needs this server)
Xcfg.tgz        sample config files for xinit, xdm
</verb>
</quote>

The following are required when upgrading from version 3.3 or later:

<quote>
<verb>
preinst.sh      Pre-installation script
postinst.sh     Post-installation script
extract         XFree86 extraction utility
Xbin.tgz        Clients, run-time libs, and app-defaults files
Xdoc.tgz        Documentation
Xlib.tgz        Data files required at run-time
Xman.tgz        Manual pages
Xset.tgz        XF86Setup utility
Xjset.tgz       XF86Setup utility (if you prefer the Japanese version)
XVG16.tgz       16 colour VGA server (XF86Setup needs this server)
</verb>
</quote>

While it isn't essential to update the standard fonts, this version does
include some minor fixes to some of them, as well as the addition of
two basic ISO 8859-15 fonts.  If you want to upgrade the standard fonts you
will also need:

<quote>
<verb>
Xfnts.tgz       75dpi, misc and PEX fonts
</verb>
</quote>

NOTE: Be very careful about installing Xcfg.tgz over an existing
installation if you have customised your xinit and/or xdm config files.
Installing Xcfg.tgz will overwrite any existing files.  If you do have
customised files, there is no need to install Xcfg.tgz.

NOTE: The bitmap fonts distributed with this release are compressed using
gzip rather than compress.  This means that you will probably want to
remove the old versions (after backing them up).  The Xservers and font
server in releases prior to 3.2A cannot read gzipped fonts, so keep a copy
of the old fonts if you wish to run older servers.

The following X servers are for PC/AT based hardware (i.e., typical
Intel ix86 based PCs).  Choose at least one which
matches your hardware, as well as the VGA16 server.  The VGA16 server is
required by the new configuration utility (XF86Setup).
A list showing which X server is required for a range of video cards can
be found at <htmlurl name="http://www.xfree86.org/cardlist.html"
url="http://www.xfree86.org/cardlist.html">.
<quote>
<verb>
X3DL.tgz        3Dlabs server
X8514.tgz       8514/A server
XAGX.tgz        AGX server
XI128.tgz       I128 server
XMa32.tgz       Mach 32 server
XMa64.tgz       Mach 64 server
XMa8.tgz        Mach 8 server
XMono.tgz       Mono server
XP9K.tgz        P9000 server
XS3.tgz         S3 server
XS3V.tgz        old S3 ViRGE server (please use SVGA server)
XSVGA.tgz       SVGA server
XVG16.tgz       16 colour VGA server (XF86Setup needs this server)
XW32.tgz        ET4000/W32, ET6000 server
</verb>
</quote>
The following X servers are available for Alpha hardware:
<quote>
<verb>
XMa64.tgz       Mach 64 server
XMono.tgz       Mono server (generic driver only)
XP9K.tgz        P9000 server
XTGA.tgz        DEC 21030 (TGA) server
XS3.tgz         S3 server
XS3V.tgz        old S3 ViRGE server (please use SVGA server)
XSVGA.tgz       SVGA server (Matrox Millennium and S3 ViRGE drivers only)
</verb>
</quote>
The following X servers are for PC98 hardware. Note that PC98 is a 
Japanese computer standard and has nothing to do with Win98, or the 
Intel and Microsoft PC98 specification. If you have a PC98 machine,
choose one which suits your hardware.  If you don't know what a PC98 machine
is, you don't need any of these.  These servers <bf>will not run</bf>
on "normal" PCs, so don't even try them if you don't have a Japanese PC98
machine.
A list showing which X server is required for a range of PC98 video cards
and computers can
be found at <htmlurl name="http://www.xfree86.org/cardlist98.html"
url="http://www.xfree86.org/cardlist98.html">.
<quote>
<verb>
X9NS3.tgz       PC98 NEC(S3) server
X9SPW.tgz       PC98 PCSKB-PowerWindow(S3) server
X9LPW.tgz       PC98 PowerWindowLB(S3) server
X9EGC.tgz       PC98 EGC(generic) server
X9GA9.tgz       PC98 GA-968V4/PCI(S3 968) server
X9GAN.tgz       PC98 GANB-WAP(cirrus) server
X9480.tgz       PC98 PEGC-480(generic) server
X9NKV.tgz       PC98 NKV-NEC(cirrus) server
X9WS.tgz        PC98 WABS(cirrus) server
X9WEP.tgz       PC98 WAB-EP(cirrus) server
X9WSN.tgz       PC98 WSN-A2F(cirrus) server
X9TGU.tgz       PC98 TGUI server
X9MGA.tgz       PC98 MGA server
X9SVG.tgz       PC98 CLGD755x server
X9set.tgz       PC98 XF98Setup utility
</verb>
</quote>
The following are optional.
<quote>
<verb>
Xf100.tgz       100dpi fonts
Xfcyr.tgz       Cyrillic fonts
Xfnon.tgz       Other fonts (Chinese, Japanese, Korean, Hebrew)
Xfscl.tgz       Scalable fonts (Speedo and Type1)
Xfsrv.tgz       Font server and config files
Xprog.tgz       X header files, config files and compile-time libs
Xnest.tgz       Nested X server
Xvfb.tgz        Virtual framebuffer X server
Xprt.tgz        X Print server
Xps.tgz         PostScript version of the documentation
Xhtml.tgz       HTML version of the documentation
Xjdoc.tgz       Documentation in Japanese
Xjhtm.tgz       HTML version of the documentation in Japanese
Xlkit.tgz       X server LinkKit
Xlk98.tgz       X server LinkKit for PC98 servers
</verb>
</quote>

If you already have a version of XFree86 installed, <bf>MAKE A BACKUP OF</bf>
<tt>/usr/X11R6</tt> <bf>BEFORE DOING ANYTHING ELSE</bf>.  The standard
installation procedure will overwrite your existing version of XFree86.

If you are installing from scratch, create a directory called
<tt>/usr/X11R6</tt>, then extract the required <tt>.tgz</tt> files.
If you don't have enough space in <tt>/usr</tt> for this, create a
directory elsewhere and create a symbolic link to it.
E.g., if you create a directory in <tt>/home</tt>:
<tscreen><verb>
	mkdir /home/X11R6
	ln -s /home/X11R6 /usr
</verb></tscreen>

The next step is to run the pre-installation script.  This script makes
some preliminary checks of your system.  For some OSs, it may tell you
to install new versions of some system components before proceeding with
the installation.  This script may also remove some outdated files and
symbolic links from a previous installation that could cause problems.

For the purposes of these installation instructions, it is assumed that
you have downloaded all the files to the <tt>/var/tmp</tt> directory.
If you've put them in another directory, that's fine -- just replace
all occurrences of ``<tt>/var/tmp</tt>'' with the name of that directory.

To run the pre-installation script, go to <tt>/usr/X11R6</tt> and run it:
<tscreen><verb>
	cd /usr/X11R6
	sh /var/tmp/preinst.sh
</verb></tscreen>

The next step is to make the installation utility executable.  To do this,
make sure the `extract' file is in the same directory as all the X*.tgz
files, and run the following from that directory:

<tscreen><verb>
	chmod 755 extract
</verb></tscreen>

The installation utility ``extract'' is used to unpack the .tgz files
that make up the XFree86 distribution.  The .tgz files are gzipped
tar files.  However, ``tar'' in its standard form on most OSs is not
well-suited to the task of installing XFree86.  The extract utility is
a modified version of GNU tar 1.12 built with the options required to
make it suitable for installing XFree86.  The source for extract is
available from the same place you got the XFree86 distribution.

It is strongly recommended that you use the provided extract utility to
unpack the XFree86 distribution.  If you choose to ignore this and use
something else, we don't want to hear from you if you run into problems.
It is also important that you do not rename the extract utility.  If
renamed, it behaves just like the normal GNU tar.

To extract the XFree86 binaries, run the following as <bf>root</bf>:
<tscreen><verb>
	cd /usr/X11R6
	/var/tmp/extract /var/tmp/X*.tgz
</verb></tscreen>

Once the required <tt>.tgz</tt> files have been extracted, run the post
installation script:
<tscreen><verb>
	cd /usr/X11R6
	sh /var/tmp/postinst.sh
</verb></tscreen>

For OSs which use ldconfig, you may need to run ldconfig or reboot to
complete the installation.  The postinst.sh script should run ldconfig
correctly for you if you are using Linux, FreeBSD, NetBSD or OpenBSD.
For other OSs that use ldconfig, check how it normally gets run at boot time.

Once the installation is complete, you should run the one of the
configuration utilities (<tt>XF86Setup</tt> or <tt>xf86config</tt>) to
configure the X server.  This is essential for a new installation but
optional for an existing installation.  Refer to the
<htmlurl name="QuickStart document" url="QuickStart.html"> for configuration
information.

<!--
<sect>Updating XFree86 3.3.5 to XFree86 3.3.6<label id="upgrade">
<p>
The following is required to update an XFree86 3.3.5
installation to XFree86 3.3.6:
<quote>
<verb>
extract              XFree86 extraction utility
X336upd.tgz          XFree86 3.3.6 update
Xdoc.tgz             XFree86 3.3.6 documentation
X{SERVER}.tgz        3.3.6 Server update from the Servers or PC98_Servers
		     directory.
                     You must select the appropriate SERVER file for the
		     server that you are currently running (i.e. XI128.tgz).
</verb>
</quote>

First make the extract utility executable by running:
<tscreen><verb>
	chmod 755 extract
</verb></tscreen>
To update your installation to 3.3.6, run the following as
<bf>root</bf>:
<tscreen><verb>
	cd /usr/X11R6
	/var/tmp/extract /var/tmp/X336upd.tgz
	/var/tmp/extract /var/tmp/X{SERVER}.tgz
</verb></tscreen>
-->

<verb>
$XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/RELNOTE.sgml,v 3.59.2.82 1999/12/31 14:10:41 robin Exp $
</verb>

</article>
