Upgrading through Windows NT; Windows XP Pro

No more NetBEUI

While without fail Windows XP may have been the most popular version of Windows ever, it did remove the OS/2 subsystem, something I had grown used to having around.

But without fail the MS-DOS and DPMI environments were still in place.

Windows XP of course also entered the home market with the aptly named Windows XP Home edition, which was limited to a single processor and couldn’t join any domains.  For the sake of my upgrade path, the ‘workstation’ versions became PRO with Windows 2000 & XP, so that is what I’ve upgraded to is XP Pro, without the slipstreamed SP1/2/3.

Faster, more reliable!


Unfortuanatly right now this is the end of the road, XP doesn’t upgrade correctly from Windows 2000 and it leaves me with a black screen at best, or a BSOD related to Bug Check 0x19: BAD_POOL_HEADER … Error code was 20 so … there you go.

10 thoughts on “Upgrading through Windows NT; Windows XP Pro

  1. I’m running into the same problem with VirtualBox. Seems that multiple upgrades takes its toll on something related to video drivers or likely the registry. If I install the VBox additions in 2000 (after fixing the same stupid permissions problems), I can see the final XP setup screen asking about setting automatic updates. After that it tries to log in and just…. hangs. No lockups or BSODs though.

    I’m going to give it a shot on real hardware, but something tells me I’m going to run into the same issue.

    • I think it’s the upgrade from 3.1 to 3.5 that breaks the whole thing. I’m somewhat sure that ignoring 3.1 will give far better results. I think 3.1 sets security on some part of the registry that later versions need.

      • Sure enough, NT 3.1 was the problem. Started with NT 3.51 and now up to Windows 7. After 2000, upgrades wipe out custom themes and wallpaper for the most part.

        • It kind of figures, NT 3.5 was really first ‘feature complete’ version of NT, 3.1 was really more of a get it the out the door already kind of release with that wonky Spider TCP/IP.

  2. Out of curiosity, is there a solution to fix the issues with upgrading to XP? I wanted to try to “upgrade through Windows NT” as well but I’m encountering the same issues (either BSODs during Windows XP setup, or the upgrade completes but the system hangs after logging into XP (just freezes on a blank screen with no taskbar or desktop icons)). I know excluding NT 3.1 from the upgrade path resolves this issue but I was curious to know if there was a way to fix this issue while still including NT 3.1.

    • I vaguely recall it being something in the registry, but I forget what.

      The only way to find it would be diffing the registry from 3.5 to 3.51 and it should be hiding in there somewhere.

      • Oh, okay! Thank you, I’ll have to compare a fresh NT 3.1 registry with a fresh NT 3.5 registry when I get a chance.

        If it really is a registry problem, I wonder if it’s something to do with the permissions to modify/access the registry, or if it’s a value within a registry key.

      • So I tried looking through the NT 3.1 and NT 3.5 registries and nothing really stuck out that seemed like it would cause an issue upgrading NT 3.1 to XP. I tried modifying some values in the NT 3.1 registry but none of those edits made NT 3.1 go to XP, it still produces those same problems. I’m wondering if it’s a deeper underlying issue with the registry, or if there was just a key/value hidden deep in NT 3.1’s registry that I missed.

        The one thing I did notice was that an NT 3.5 registry hive *does* load into NT 4.0’s REGEDT32 utility but an NT 3.1 registry hive (as well as a registry hive from an install of NT 3.1 that has been upgraded to NT 3.5) *doesn’t* load into NT 4.0’s REGEDT32, producing an error instead. Unfortunately, that makes diffing the NT 3.1 and NT 3.5/3.51 registry a much more tedious process than I was initially expecting since I was going to load a hive from NT 3.1 and a hive from NT 3.5 into NT 4.0 then use a piece of software that compares two loaded hives. But now that a NT 3.1 hive refuses to load into NT 4.0, that option is gone.

        I solved a different registry issue with this NT Upgrade Path where, if you start at NT 3.5 instead of NT 3.1, XP would work fine but Vista would fail to complete the upgrade from XP (the install log complains about the SAM registry hive for some reason) and one solution I found to work was deleting the SAM hive in Windows 2000 (the last OS which doesn’t care if the SAM hive is deleted since it’s recreated at logon. The only caveat is that all user data and user accounts are deleted so you only have the barebones Administrator account remaining). I managed to get up to Windows 8 this way from NT 3.5.

        But THIS registry issue with NT 3.1 to XP has me stumped. Would you happen to know what specific registry keys/values (or any other registry issues) in NT 3.1 have been causing the issues with XP? I’d completely understand if you don’t have the answer and aren’t willing to look into it anymore since it has been over 10 years now since you did this project and you have a lot more recent projects going on now, I was just curious since I really wanted to figure out a solution to this issue in the NT Upgrade Path project and play around with the results (plus I really wanted to learn about the ins and outs and why/how such an issue exists) and you’re one of the few people who documented the “NT Upgrade Path” in such detail.


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.