In November 2000, I began to wonder if it was time to build a new computer. My STEP Thermodynamics Celeron 366, overclocked to 550, had served me well for over a year.
However, new video cards had come on the market which supported a new feature called Full Scene Anti-Aliasing (FSAA), and this feature has been getting rave reviews from many gaming enthusiasts.
Also, my old Celeron was starting to show its age by totally freezing whenever I drove GPL or other racing sims for more than a few minutes. Ouch! A big fan blowing through the side of the open case proved to be a temporary solution, but clearly something more permanent would need to be done.
After various struggles and hassles attempting to upgrade the old machine, I wound up building a shiny new AMD Thunderbird 900-based computer with a Voodoo5 video card and one of the hottest motherboards on the market.
The results are fantastic, but I encountered a number of problems along the way. Judging by the number of questions I get when I mention it in the VROC chat, the configuration I chose to build is along the lines of what many people are considering, so I decided to write up my experience.
I hope this article will help other people avoid some of the pitfalls I encountered, and help more people to enjoy the fabulous new-look GPL that the new hardware makes possible.
FSAA means blending each pixel with those around it to smooth out the jagged edges that typify non-FSAA computer-drawn images. The result can be almost photo-realistic. (See the white paper and examples on the technology page at 3Dfx for details.)
One of the nice things about FSAA is that it works with any game. Unlike other video hardware advances like hardware transform & lighting, FSAA doesn't require the game be written to take advantage of it. This means that us GPL enthusiasts can make full use of FSAA.
The problem with FSAA is that it takes more CPU power to perform all the calculations necessary when FSAA is enabled. Not sure if it was worth the investment to build an entirely new computer just to get FSAA, I bought a Voodoo5 5500 and tried installing it in my Celeron. This is a very nice card. I tried it first with FSAA turned off, and there was a noticeable improvement over my old Voodoo3 3500. The images on the screen seemed sharper, and I seemed to get slightly better frame rate too.
However, when I turned on FSAA, frame rate tanked. There are two modes of FSAA, 2x (in which each pixel is blended with a pixel on each side of it) and 4x (in which each pixel is blended with four pixels around it). At 4x and my usual 1024x768 resolution, GPL ran in the 20 fps range - undriveable, in my opinion. The images looked great, but there just weren't enough of them. I also tried 2x and lower resolutions, but couldn't find a combination that gave acceptable frame rate (steady 36 fps) and looked significantly better than my non-FSAA resolution of 1024x768.
It was clear that I needed more CPU power to take advantage of FSAA.
I first tried upgrading my existing computer to a Celeron 600, overclocked to 900, again from STEP Thermodynamics. However, I have an early ASUS P2B motherboard, and it did not take kindly to the new-generation ("Coppermine") Celeron II. At default voltage and default 66 mhz FSB clock rate, it wouldn't even boot. Boosting the voltage got it to boot at 66 mhz, and it was stable at this speed (giving 600 mhz) but it was never stable at 100 mhz FSB/900 mhz.
I sent it back to STEP and they sent me another one, which unfortunately produced the same results. They said that while most motherboards work fine with the Coppermine Celerons, some P2B's don't seem to be able to handle them. It appears I was unlucky enough to have one of these.
After some deliberation, I bought the parts to build a new Athlon-based computer from a local computer store, the PC Authority in Manchester, NH. The best price/performance point seemed to be an AMD Thunderbird 900.
For the motherboard, I decided on an Abit KT7-RAID, which has gotten very high marks from Anand Tech for overclocking, even though I didn't plan to overclock, because this board has an ISA slot, and I figured I needed that so I could use my PDPI L4 (more on this later). This board also has a screamingly fast hard drive controller.
The Thunderbird, motherboard, case, fans, 128 mb of PC133 memory, and 45 gb Western Digital hard drive, plus the Voodoo 5, a SoundBlaster Live! Value, and a 3COM network card added up to about $950. I already had a CD-ROM drive, floppy drive, keyboard and mouse in my spares stash, and I swapped some stuff around to free up a monitor.
Note: The latest AMD processors, including the Thunderbirds, draw a lot of power and put out a lot of heat. It's extremely important to have a good power supply, at least 300 watts, and plenty of ventilation. I'm using an Enlight 300 watt power supply and EN-7237 case, with two auxiliary fans in the case, one at the bottom front and one just under the power supply at the rear.
My first attempt at ramping up the new beast ended in disaster. I used what I thought would be a clever techniqe of cloning the hard drive from my old Celeron (using a package called DriveCopy) and just slapping the new clone into the new machine.
Wrong.
At first, the machine wouldn't even boot properly. I had to power it off and on twice with the back panel switch before it would even power up. Finally I found that it was necessary to disable 4x AGP in the BIOS (the Voodoo5 doesn't support 4x AGP); after that, it powered up just fine, and actually booted into Windows.
But horror of horrors, the new machine hung up every time I tried to get it to see the Logitech FF wheel and pedals. I tried a lot of different things before finally reading the motherboard instructions (duh) and discovering that the VIA chipset on the KT7-RAID needs its own special collection of drivers. I mean, whoever heard of drivers for the motherboard??
After a little digging, I found some excellent sites with information on the KT7 motherboard and the VIA chipset (see especially the ABIT KT7 FAQ and the Windows 98 installation section of the VIA FAQ). I was able to download the latest drivers from the VIA Drivers page.
I decided to stick with Windows 98, even though Windows 98 SE and Windows ME have better support for the VIA chipset, because I have the impression that Windows 98 is the most stable of the three. Also, I already own a copy of Windows 98, and I found that Microsoft seems to be charging what I felt was an exorbitant amount for Windows ME.
I formatted the C: partition on my new drive (fortunately I have developed the habit of putting GPL, most programs, my downloads, and all my other good stuff was on a D: partition, so all that stuff remained intact), installed Windows 98, installed the VIA drivers, and proceeded with the rest of the install.
According to the VIA FAQ, the VIA chipset drivers needed to be installed immediately after installing Windows 98, so I downloaded them onto another computer, put them on floppies, and copied them to the hard drive on the new computer.
Even though the motherboard, sound card and video card came with software on CD's, I wound up downloading the latest software from the various manufacturer Web sites. Fortunately, I've got a cable modem, because the Voodoo5 software is 8.5 mb, the Logitech Wingman 3.62 software is almost 10 mb, and the latest SoundBlaster LiveWare tool suite is almost 30 mb!
I did use the Voodoo5 drivers from the CD initially, but during my tuning phase I upgraded to the latest beta version from VoodooSource. This cured a problem with an artifact which appeared in GPL at higher resolutions (a line of crushed textures along the left side and across the top).
The only trouble I encountered was again with the Logitech FF wheel; the system would hang when I tried to access them. Eventually I discovered that this was because the standard gameport needs to be installed in order for the Logitech FF driver to work, even though it doesn't actually use the game port.
Poking through the Device Manager, I found one "Unknown PCI Input Device" that had no drivers. I tried having it manually install a driver from the SoundBlaster driver folder I'd unzipped earlier, and lo and behold, it found its driver! I suspect the game port driver may not have been installed because at that point I had only installed the SoundBlaster driver, and not the entire SoundBlaster LiveWare tools suite.
Once the game port driver was installed, the Logitech wheel worked fine. Note, however, that the older Logitech drivers may have a problem with very fast CPU's (about 800 mhz and above). The symptom is that the computer hangs when you try to get the drivers to see the wheel, either when you install the drivers (with the wheel already plugged in) or when you plug the wheel into the USB port after installing the drivers.
If you encounter this problem, you can either use the latest 3.62 drivers from Logitech, or, if you have older drivers, you can install the Logitech Speed Patch, available here.
Note that some people seem to find that the Speed Patch works great, while others have reported that the 3.62 drivers from Logitech or the Wingman Team do the trick. One person reported that he installed the 3.62 driver, but that didn't work, so he went back to the 3.30 driver and Speed Patch, but that didn't work, so he tried the 3.62 driver again, and now it worked!
I wound up with the 3.62 drivers, although I had installed the older drivers and the speed patch while struggling with the system hangs I was getting prior to discovering the missing game port driver.
Originally I had planned on using my PDPI L4 digital game port to run my CH Pedals. This is a combination that works well on my old computer, because the L4 saves CPU cycles and generates more precise outputs compared to a standard game port.
However, along the way I was advised that just having a card in the ISA slot causes a 15% hit in system performance, apparently because the ISA card slows down the system bus. Also I learned that the KT7's design makes the ISA card and the USB controller share an interrupt, and some people advised that it is not a good idea to use an ISA card and the USB controller at the same time in that motherboard.
Another issue is that PDPI has apparently gone out of business. With the evolution of hardware away from the ISA standard toward PCI cards and USB devices, it seems like perhaps the L4's day is done.
I actually tried the L4 in the new computer at one point during my struggles with the system hangs, but wound up putting it back in the old Celeron computer just so I'd have something to drive on while sorting out the new system.
As it turned out, my benchmarks showed a very minimal hit when I installed the CH Pedals on the SoundBlaster's game port, only about 2 to 3 fps at 800x600 and only 1 fps at 1024x768.
At this point, I'm still using this configuration, although I am considering getting a set of high quality pedals wired into my Logitech wheel unit, either by Thomas Enterprises or by M. T. Pedals. This would eliminate the small frame rate hit from using the game port.
Another intriguing idea is a device that will allow analog game controllers to be plugged into a USB port, currently under development by Sim-Addicts.
Mindful of the problems I'd already had at various points along the way with this new project, I started with very conservative settings in the new computer's BIOS, figuring I'd tweak things up a little at a time as I went along. Hard drive settings were at "Safe Defaults", and the memory was running at 100 mhz even though the KT7 allows it to run at 133 on a 100 mhz FSB setting.
I benchmarked the new compter's performance at several points along the way, and compared various configurations, including 4x and 2x at 1024x768 and 800x600, with mirrors at varying levels of detail. I found that GPL did not run very well at 4x and 1024x768; frame rate was about 25 fps.
I carefully did all the BIOS tweaks described at VoodooSource Tweaks, but didn't find any real improvement in frame rate in GPL. However, as I mentioned above, the new driver did cure an artifact that appeared in higher resolutions.
The biggest significant frame rate improvement came from George Smiley's Glide Wrapper from the GPLEA Utility Page. Cutting standard mirrors to every third frame gave a 3 to 5 fps improvment. One small disadvantage of the Glide Wrapper, though, is that on my system it causes flickering mouse trails on GPL's menus.
After fairly extensive fiddling, I found that I preferred 4x FSAA at 960x720 resolution, with mirrors every third frame, and detail in mirrors cut to Cars Only. All other graphics options are on. This gives 36 fps just about all the time, and it looks fantastic. It took a few minutes to get used to seeing the mirrors at 12 fps but now I hardly notice it.
Also, I am running with Mark Ide's gorgeous period-authentic 3D wheels from the GPL Tyre Barn. I tried these on my old computer but had to give them up due to frame rate considerations.
In races online with the new rig, I found that I was getting significant pauses every couple of laps, lasting anywhere from a few tenths of a second to as much as a second, and sometimes preceeded by a second or so of frame stuttering. I figured this was GPL doing something with memory and the hard drive, since I've got my replay length set to 60 mb, so I went back into the BIOS and enabled IDE Prefetch Mode, IDE HDD Block Mode, and Master Drive Ultra DMA, all of which were disabled by the Safe Defaults setting I started with. This has all but eliminated the pauses; now at worst I get perhaps a couple of tenths of a second pause once in a great while.
Finally, I tweaked up the memory to 133 mhz (DRAM Clock on the Soft Menu page in the BIOS). This seems to have further improved the frame rate, though I haven't yet calibrated the actual benefit, if any, by a benchmark.
When I started the project, I had significant reservations because it looked to me like I was going to be spending the best part of a thousand bucks for only one feature: Full Scene Anti-Aliasing. Could one feature be worth that much?
I talked this over with Steve Smith, and he pointed out that the newer tracks tend to need more CPU power, as well as the various graphical enhancements like 3D wheels, GPLEA paint jobs, fancy instrument panels, etc. After some deliberation, and keeping in mind that my current computer was over two years old, I decided to go ahead.
I encountered a lot of hassles along the way - many of them my own fault for not doing the research and reading the manual first - but now that the machine is up and running, I'm really glad I built this new screamer.
GPL looks absolutely fantastic on the new machine with 4x FSAA at 960x720. The Voodoo5 driver allows you to configure a "demo" key which swaps back and forth between FSAA on and off (though it doesn't actually stop doing the calculations, so there's no frame rate benefit to turning it off this way).
The difference is almost staggering. After racing with FSAA turned on for a while, and then turning it off, it's difficult to believe that I used to consider that jagged, squirmy display really good!
Sadly, 3dfx recently announced the sale of most of its assets to nVidia, and the dissolution of the company. While nVidia makes great cards, the Voodoo5 seems to be particularly well suited to GPL. Steve Smith, who has both a Voodoo5 and an nVidia card, greatly prefers the look of the V5, and most reviewers seem to feel that the Voodoo5's FSAA implementation looks better than nVidia's.
However, future sims such as NASCAR 4 and World Sports Car are likely to make use of the nVidia GeForce series' hardware Transform & Lighting feature. This can produce dramatic improvements in frame rate. Unofficial estimates put the improvement in one upcoming sim as high as 40%.
But GPL can't make use of this feature, since the game's display engine has to be written to take advantage of it. If GPL is your priority, then the Voodoo5 would seem to be the best choice at the moment. For future sims, the GeForce seems to be the way to go - especially once the Voodoo5 supply dries up.
If you are upgrading from an older 3dfx card to a Voodoo5, you may encounter difficulties due to conflicts between the older drivers and the new card's drivers.
See the Spy's Corners section at SimRacing Mag for information on removing the old drivers and on working around certain problems. Click on Spy's Corners on the left and then pull down the various All Corners dropdown menus from the bar at the top to find the articles on 3dfx cards and drivers.
Also, Eric recommends using Grant Reeve's Direct3D rasterizer rather than Glide for optimum frame rate in GPL with FSAA turned on. I haven't yet tried this but plan to check it out sometime soon.
Here are some links I found useful during the construction and development of my Thunderbird, or learned about since: