Rebuilding My Athlon XP System from 2003
Jul 31, 2020
The year was 2003 and in October of that year my parents bought me a brand new custom built PC from a nearby computer store. It was the first computer I had that could actually play 3D games that did not use software rendering. This PC was so fast I no longer needed to look at the minimum required specifications for games and I could play the ones I bought that previously did not run.
There was something special about this computer store, though. They installed Mandrakelinux (9.1 at the time) on every system unless you wanted Windows. I had heard of Linux before but this was my first time using it. I was amazed by the fact that there was a free alternative to Windows and it could play games. I wanted to install Mandrake on our Gateway 2000 running Windows 95 back then but my dad wouldn’t let me. I tried it on my own, worse, PC but I could not boot from CD-ROMs which also meant installing Windows was difficult at the time so I gave up.
This new machine was preinstalled with Mandrakelinux 9.2 and Windows XP SP1 - dual boot off a 120GB WD IDE hard drive. The owner had preloaded it with Quake III and Soldier of Fortune, but of course I wanted to run my Windows programs under Linux and so I found Cedega (an early version of Wine). It was so cool being able to do that, but it just didn’t run well enough so I mainly used Windows XP. Later, I ended up wiping the drive and reinstalling Windows many many times due to viruses.
I didn’t just get a new PC but my parents did too. They had a similar setup but with lower specs and only Windows XP.
Specifications
- AMD Athlon XP 3000+ (upgraded from 2500+)
- MSI something (later replaced with MSI KM4AM-V after the original board died)
- 1.5 GB DDR (upgraded from 1 GB)
- BFG Tech GeForce4 4200 Ti 128 MB (upgraded from GeForce2 MX400, later RMA’d and received an FX 5700 when the fan went bad)
- 120 GB WD Hard Drive 7200 RPM
- 40 GB WD Hard Drive 7200 RPM (added later)
- Black CD burner, DVD reader, and floppy drive
- AverMedia TV Tuner
- APEVIA X-Gear Black Steel with blue LED fans and blue cold cathode tube
- 650W power supply (upgraded from 450W, but it was junk and kept crashing the system because it couldn’t provide enough power)
- Microtek 815C 18” (75 Hz)
- Windows XP SP1 / dual boot with Mandrakelinux 9.2
I sold most of these parts on eBay, but I do have the original KM4AM-V motherboard and 2500+ / KT4V from my parents PC. I’ll be using the KM4AM-V from my original custom built PC in this new “retro” gaming PC since it has two SATA I ports.
New Specifications
- AMD Athlon XP 3000+
-
MSI KM4AM-VECS KT600-A
- 2 x 1 GB OCZ DDR 400 (OCZ4002048ELDCPE-K)
- ATI Radeon 9800 PRO 128 MB (I always wanted this card, it was so much faster than my 4200 Ti)
- Samsung 840 PRO 240 GB SSD (Linux)
-
WD 250 GB SATA HDD (Windows XP / 98 SE)PNY 250 GB SSD (Windows XP)
-
Sound Blaster Audigy SE (may not work under Linux)Soundblaster Live! 5.1
- Fractal Design Define R3
-
Corsair HX750Corsair AX1200
- DELL U2412M 24” (works great at 1600x1200 and 4:3 mode)
- Windows XP SP3 /
Windows 98 SE/ Mandrakelinux 10.1
I may upgrade to a 3200+ in the future. The same seller I bought the 3000+ from listed the 3200+ a week or two later for $30. It’s not a huge difference but the board does support it and it would be cool having the best processor for the platform.
Games
Before I started order parts I went over to Archive.org and found that they have tons of old PC games from the 2000s and they’re all direct CD rips. Some are even the Loki Linux versions which is awesome. These are the only ones I could find.
- Soldier of Fortune
- Descent 3
- Heavy Gear II
- Unreal Tournament
- Find a copy of the GOTY ISOs and use
ut-install-436-goty.run
to install it.
- Find a copy of the GOTY ISOs and use
- Quake III Arena
Some games can be found on myabandonware.com and downloaded for free or links to where to buy them.
Linux installers from liflg
can be found here.
Mandrakelinux
I decided to install Mandrake 10.1 first since that was the OS I have a lot of nostalgia for but never got to use that much. I first tried older versions of Mandrake starting with 9.0 and working my way up to 10.1. Each and every one had some issue with reading the CD-ROM or finding the HDD. I would have liked to try out 9.2 for a while but it would require a significant amount of effort and probably requiring more SATA to IDE adapters. Also not all of the hardware was detected when I did get the 9.2 installer to load.
10.1 installed pretty easily once I used my USB DVD drive and an SSD connected with an IDE adapter. SATA just isn’t possible with SSDs because they do not have jumper settings to force it into SATA I mode. The SATA DVD drive I have is not detected under Mandrake - it’s missing a driver or something despite detecting and loading the driver for the controller. At this time I am unable to find Linux drivers for the SATA controller. I’d have to upgrade to Mandriva 2005 or 2006 for it to be supported and then it would be baked into the kernel.
I got 10.1 installed and loaded the NVIDIA drivers for my GeForce2 card that I still had while I waited around for the 9800 PRO to show up. It ran UT99 and SoF pretty well at 1024x768 but anything higher was too laggy.
My 9800 PRO showed up on Wednesday and I installed it immediately. X11 started without complaining which was always an annoying problem I had with Linux back then. X would just not start and I could never get it back if I broke something. Anyway, I searched around on the internet for some old drivers and had a really hard time finding them. I ended up finding old forum posts instead about people having troubles getting it installed. Some posts had direct links to the .rpm
and .run
files which was perfect because I could run over to archive.org and grab them! If that website did not exist this card would never work with older distros of Linux.
Installing the ATI drivers was a huge pain and it was definitely just as bad back then! First I had to uninstall the NVIDIA drivers but of course I forgot to do that, then try the .run
installers which require a newer version of Mandriva and didn’t work, and finally settle on an old .rpm
package. But wait there’s more, run fglrxconfig
several times trying to get it to use fglrx instead of mesa. That seems to be from not having loaded agpgart
or via-agp
. I’m not sure which so if you’re struggling just put both in /etc/modules.preload
and hope it works on reboot.
- Install the kernel source
- Uninstall NVIDIA drivers by executing the
.run
installer with the flag--uninstall
- Uninstall fglrx
rpm -e fglrx
- Download fglrx-4.3.0-3.11.1.i386.rpm
- Install fglrx using:
rpm -ivh --force fglrx-4.3.0-3.11.1.i386.rpm
- Configure X11 - and possibly set it to use the builtin AGP driver:
fglrxconfig
- Rename
XF86Config-4
toXF86Config
- Add
fglrx
to/etc/modprobe.preload
- Reboot
- See if it detects the card instead of mesa with
fglrxinfo
Make sure fglrx compiles and installs correctly. The RPM package will tell you if there was an error.
And four or five hours later of time wasting I have working 3D acceleration for my shiny 9800 PRO under Linux. I tested UT99, SoF, and Descent 3. All worked well at 1600x1200 and UT99 is still playable over the internet - although not many active players.
Game Servers
Most of these old games have Linux dedicated server binaries which makes it easy to setup a server because they can be run inside a docker container. I wasn’t planning on setting up any servers, but I figured I should if I have a retro gaming PC.
- Quake II
- Quake III
- Unreal Tournament
- Return to Castle Wolfenstein
- Battlefield 2
- Soldier of Fortune II
- I had to make my own for this game.
Windows 98 SE
My goal is to first install Windows 98 SE then dual boot Windows XP off the same hard drive once drivers are installed and it isn’t bluescreening every reboot. If this were a modern system, I would use a drive for each operating system. I’ll be using an old MS-DOS boot floppy I bought off eBay in 2001 (or earlier) that I never threw out and an OEM CD-ROM of Windows 98 SE from winworldpc.
And it still boots! But… it does not detect the SATA DVD drive so I’ll have to use an IDE adapter until I get drivers installed.
The maximum disk size that Windows 98 SE will use is approximately 127 GB. However, fdisk only sees up to 60 GB but it will partition the whole thing anyway (16-bit fun). My fdisk version on this boot disk doesn’t see anything over 41865 Mbytes so I’ll just set it to 40000. That should be plenty for all the games I want to install. It leaves about 210 GB for Windows XP which has larger game installs so it works out.
Pro tip: copy the contents of the CD to the hard drive so the install goes faster.
I ran into an issue with copying the CD contents. I’m not sure if it’s the disc (it’s brand new) or the DVD drive. Either way, I completed the install and it went so fast. It was going at a percent per second which is crazy because Windows 98 is one of the slowest installs ever - even in a VM with modern hardware being thrown at it. This makes me wonder if they intentionally slowed down the retail version.
Applying the HIMEMX Fix
Windows 98 does not like more than 1 GB of RAM so a special driver needs to be loaded to limit it to 1 GB otherwise you’ll have to remove some RAM to get it to boot. Follow this short guide on stackoverflow for installing/configuring HIMEMX.
Drivers
Windows 98 does not have any drivers for this system so it is a bit difficult to move the driver files to the hard drive. I’ll be using a FreeDOS flash drive and copying the drivers over. I had to do this with the K4TV system I was tinkering with several months ago.
A few things gave me trouble like the chipset drivers not existing for Windows 98 and the LAN drivers not installing the Client for Microsoft Network. Onto games!
Games
Daemon Tools and Winzip are must haves when installing old games from ISOs.
I began with Spec Ops I and II. Both of which brought back memories of trying different driver options in the installer and downloading Glide DLLs off the internet. I believe I settled on software rendering back then and today it’s a struggle to get either game working.
(this is not sped up, it’s that fast)
Spec Ops I works in software mode but that makes it very difficult to figure out what’s happening in game. I don’t think it has a Direct3D mode so I’d need to find a working wrapper for Windows 98. I tried nGlide but it caused more issues and didn’t work at all. I tried Spec Ops II next which loads the menu if the ISO is mounted but locks up when loading the map after choosing the Direct3D renderer. Software mode loads but it has massive problems and displays an almost entirely grey screen.
This led me to test 3D acceleration, so I installed Quake which ran fine in software mode but GL Quake did not (is that Glide Quake or OpenGL Quake?). I tried Quake III after, which is guaranteed to be 3D accelerated, and it worked perfectly. The 9800 PRO provides a steady 125 FPS at 1600x1200. This card continues to impress.
I’m starting to think none of these old Glide games will work on this system unless I decide to buy a Voodoo card. It could be a lot of fun because I never had a Voodoo card and every game I wanted to play back then required one otherwise you were stuck with software rendering. Hmm…
Windows 98 Conclusion
Windows 98 is pretty fun to use, but almost none of the games I wanted to play work on it. This is more than likely due to the newer 9800 PRO I’m using in the system. I’ll have to find a cheap Voodoo3 on eBay or an old PC being thrown out in a thrift store. I would love to try that card out with these older games that rely on Glide. It’s interesting that I had less trouble getting Loki games working under Mandrake than I did with 98.
Next, I’ll be installing Windows XP which will have great compatibility with games released after 2000. This is the era where I had this system.
Windows XP
Some of the best games were released during this period.
- Battlefield 1942, Vietnam, and 2
- Soldier of Fortune II
- Far Cry
- Half-Life 2, Counter-Strike: Source, Team Fortress 2
- Halo: CE
- The Elder Scrolls: Oblivion
- Counter-Strike
- Call of Duty 1, 2, 4
- GTA III, Vice City, and San Andreas
- World of Warcraft
- Age of Empires II
- Medal of Honor: Allied Assault
- Return to Castle Wolfenstein
It’s been a few weeks since I’ve done anything with the system. This is mostly because the XP upgrade didn’t go as planned. It’s missing a driver and has no option to load one during the upgrade then it gets stuck in an infinite loop. So, 98 will not be used and since hardly any games worked it’s not a huge deal. I have Mandrakelinux installed on a separate SSD, so I’ll still have a second OS like I would have way back then.
I completely forgot that Windows XP does not natively support SATA and I definitely had a few SATA drives when I used XP later on so I must have always installed the driver.
I still remember my XP key! I reinstalled so often that I memorized it. That goes for Soldier of Fortune II as well.
Finally at the desktop! Surprisingly it had the 9800 PRO drivers already. I don’t remember XP ever having GPU drivers but this is a slipstreamed SP3 installation so maybe they were added later.
Drivers
The install went easily so now it’s time to install drivers. Luckily, MSI has all of them still available for download and AMD has the latest 9800 PRO drivers on their website from 2010. The time consuming part will be installing all of the games from CD or ISO.
Games
Now for the fun part. I downloaded tons of games from Archive.org about a month ago so I used those images instead of CDs. I cannot believe how little time it takes to install software on this machine once it is copied onto the hard drive. It used to take a good 20 minutes to install some of these games from CD. I didn’t have a NAS back then and it would have been so much faster to rip the games and install from there instead.
I installed SoF I + II, Halo: CE, GTA III + Vice City, and Counter-Strike while I waited for more games to finish copying. My Counter-Strike disc is v1.0 and was definitely made during a time when CRTs were prevalent. The game only changes resolution when loading the levels and the main menu is stuck at 640x480. You can still find the v1.5 patch online which includes de_dust2!
Upgrades
At this point I decided to order a 3200+ off eBay for $30 and install it in the system. I installed it but then it refused to turn on. The fans would spin for half a second then instantly shut off. I put the 3000+ back in and same story. At this point I figured the power supply may have had an issue, so I tried a different one and poof - the magic smoke came out from the VRMs.
This is really unfortunate because that board had SATA, USB 2.0, and it supported a 400 FSB all of which made it a little more modern. I ended up buying an nForce2 motherboard which had bad caps so it too let the magic smoke out. I settled on a brand new ECS motherboard that supports the 3200+ but does not have a 4-pin CPU connector. This means all of the power comes from the 5v and 3.3v rails on the power supply. Modern power supplies have most of the amps on the 12v because that’s what most things use nowadays.
I’m giving up on the 3200+ for now because the one I had bought was either dead or no board I have supports it. I tried everything possible to get it working but no dice. The 3000+ is good enough and what I had back in the day anyway so I’ll stick with that.
During this time, I replaced the Audigy2 with a Soundblaster Live! 5.1 which should work perfectly under Linux so I don’t need to rely on the terrible onboard audio. I also bought an SIL3512 for SATA support which works perfectly under XP but not Mandrakelinux. I can use an IDE adapter for this so it’s not a huge deal.
And my final update is the 9800 PRO is now dead due to the molex connector nearly disconnecting from the PCB and in my attempt to bend it back something else possibly came off the board or was damaged. So, for now, this project will be on hold until I decide to buy another one or an X800/X850. RIP.