On Tue, May 20, 2008 at 11:16 AM, Gerald Zajac <zajacg@xxxxxxxxxxxxx> wrote: > The S3 video driver has finally been completed. If the time spent > developing the s3savage video driver is included, it has been a very long > road; however, much of it was a learning experience since I knew virtually > nothing about video drivers and video chips before developing the s3savage > driver. > > Anyway, this S3 driver is intended as a REPLACEMENT for the s3savage driver, > and I've chosen the names "s3" and s3.accelerant" for the driver and > accelerant. The attached zip file contains the source code and jam files > for this driver. I believe that the jam files are setup correctly; > however, I have never used them since I do not have a build system for > Haiku that works. > > In addition to supporting the same Savage chips as the s3savage driver, the > S3 driver also supports the S3 Trio64, Trio 3D, and Virge chips. It also > has the following improvements and fixes for the Savage chips: > > 1) The common accelerant code is used for creating the mode list. > 2) Reads EDID info for use in creating the mode list. > 3) Fixed some problems with the Savage 3D, Savage MX, ProSavage, and Savage > 2000 chips. > > #1 applies to all chips handled by this driver, and with regard to #2, all > the Virge and Trio 3D chips also attempt to read the EDID info. Both Trio > 3D chips successfully read the EDID info, but only the Virge VX successfully > reads the EDID info. > > The list of chips supported by this driver is: > > 8811 * Trio64 > 8811 * Trio64 V+ > 8814 Trio64 UV+ > 8901 * Trio64 V2/DX/GX > > 5631 * Virge > 883D * Virge VX > 8A01 * Virge DX/GX > 8A10 * Virge GX2 > 8C01 Virge MX > 8C03 * Virge MX+ > 8904 * Trio 3D > 8A13 * Trio 3D/2X > > 8a20 Savage3D > 8a21 * Savage3D-MV > 8a22 * Savage4 > 8a25 ProSavage PM133 > 8a26 * ProSavage KM133 > 8c10 * Savage/MX-MV > 8c11 Savage/MX > 8c12 * Savage/IX-MV > 8c13 Savage/IX > 8c22 SuperSavage/MX 128 > 8c24 SuperSavage/MX 64 > 8c26 SuperSavage/MX 64C > 8c2a SuperSavage/IX 128SDR > 8c2b SuperSavage/IX 128DDR > 8c2c SuperSavage/IX 64SDR > 8c2d SuperSavage/IX 64DDR > 8c2e * SuperSavage/IXC 64SDR > 8c2f SuperSavage/IXC 64DDR > 8d01 Twister PN133 > 8d02 * Twister KN133 > 8d03 ProSavage DDR > 8d04 * ProSavage DDR-K > 9102 * Savage2000 > > The first column contains the chip ID's, and the second column contains the > chip names. The names preceded by an asterisk, are chips that have actually > been tested. Except for the SuperSavage and the Twister chips, I have > personally tested them under BeOS, Zeta, and Haiku; and with a few > exceptions listed below, they perform quite well. The SuperSavage was > tested by Ronny Wisor and Meanwhile; whereas, the Twister chip was tested > by Rudyk Alexander aka totish. > > The only problems found with the chips are: > > 1) With the Virge VX chip, the hardware cursor disappears when the > resolution is set to 640 x 480. Since Haiku uses a software cursor, this is > only a problem for BeOS and Zeta. > > 2) The Savage 3D and Savage MX chips perform rather poorly. In fact most of > the Trio and Virge chips perform better. If the Savage 3D is stressed, it > sometimes locks up. > > Best regards, > Gerald > > Nice work. Always great to see new/updated drivers. -scottmc