I have an old Dell Dimension 2350 sitting around and when I learned that the head of our kids' school, West Sound Academy, didn't have a computer at home, I offered to give her this one.  She was thrilled.  I had used the computer as an experimental box - the latest thing I had on it was Windows Small Business Server 2003, which I thought she wouldn't appreciate, so I figured I'd just reinstall the original XP that came with it from Dell, put an old version of Office on it (I had bought non-upgrade versions of Office 2007 for all my home machines, so the old 2003 is now available for use on this machine - that wouldn't be the case, by the way, if I had bought an upgrade version of Office 2007, and, working for Microsoft, I try to be diligent about obeying licensing terms) and give it to her.

 So I booted up the machine and used the old F12 trick to boot to CD.   I didn't notice at first that this Dimension had two drives on it - a DVD drive and CD - this was made before they typically combined those in a single drive - and so it took me a couple of tries to realize that, duh, I had the CD in the DVD drive and so the BIOS wasn't able to boot because it was looking at the (empty) CD drive.  FIxed that and booted up.  Got through XP setup, accepted the license agreement, and then setup said "Looking for previous versions of Windows..." and promptly blue screened with a REGISTRY_ERROR STOP code.

I tried it again and - a result perhaps of one definition of insanity, repeating the same actions and expecting a different result - and didn't get a different result - I got the same bluescreen.

At that point, I stopped to think a bit and realized what was probably happening.  In general, new software installs over older software just fine - during testing, developers test that case and things like the version numbers of newer components work correctly to overwrite older components of the same name.  But installing older software on a system with a newer version generally doesn't work too well.  For one thing, it probably hasn't been tested - how would it?  When the older version was released, the newer version was just a glint in someone's eye - if that.  So Windows Small Business Server 2003 is newer than Windows XP - and Windows Small Business Server 2003 was what I had installed.  Probably whatever detection logic Windows XP setup was running to look for "previous versions of Windows" was freaking out at the newer version of Windows it found.  In fact, looked at this way, the STOP code made total sense - Windows Server 2003 probably changed the registry format in a way that Windows XP setup couldn't understand and so it was crashing when it found what it thought was a Windows registry file - but it couldn't read it.

It's at this point that my bootable PQDI CD became helpful.  What I needed to do was remove any trace of Windows Small Business Server 2003 from this machine, and to do that I needed to reformat the partition with it installed.  PQDI lets me do that.  I don't think you can get PQDI anymore - but there are probably similar tools out there.  Basically, you want to boot to something that lets you delete the partition on the disk that contains the OS.  Doing that will totally hose your computer - it's no longer bootable - except to the CD with the OS installer, which will then come up, see an apparently blank area on the disk and offer to install to it.  It will no longer look for "previous versions" of Windows because there's no where for them to be.  In fact, this is exactly what worked.  XP setup finished like a charm.

There's one more trick.  The XP distributed with this version is of course "RTM", i.e. the original version Microsoft released back in 2001 or so.   XP SP 2 was a major, major improvement in the security of that system.  IN fact, an pre-XP SP 2 system booted with an Internet connection will probably fairly quickly get infected with some virus.  So I was careful to remove the internet connection (I unplugged the cable) prior to installing XP and on another computer (one running Vista - even more secure than XP SP 2) I downloaded the XP SP 2 service pack and burned it to CD, then installed it on the XP machine prior to connecting it to the Internet.  Most of Windows Update (where you get this stuff from) is designed to install on the machine you're running from, but in this case, I worried that even leaving the XP machine connected to the Internet long enough to connect to Windows Update and download the XP SP 2 service pack could result in problems).  So I went to a special download site for "IT professionals" which lets you get the SP 2 as a single file that you can install from CD.