25

I tried to install Windows NT4, and I gave it the highest available CPU in QEMU (because that's the default, and of course it's an x64 capable CPU), and it crashed after text mode install. It did not produce a normal panic screen but rather it trashed video memory before transitioning to graphics mode.

The QEMU documentation says that NT4 works with a a pentium CPU; which I trust as far as the guy testing it found that he needed to limit the CPU type down to pentium, but I would not be suprised to find it was the only CPU type tried as NT4 wouldn't know how to get any benefit out of a newer CPU anyway.

Restricting the VM to a Pentium CPU resulted in the install working.

Why did Windows NT4 crash on the emulated x64 CPU?

11
  • 2
    Adding the info which VM you are using might help. @RonJohn Yes but the CPU would not be in 64-bit mode unless the OS has code to enter into 64-bit mode, and therefore an OS not understanding 64-bit mode would not try to enter 64-bit mode to begin with.
    – Justme
    Oct 24, 2023 at 4:26
  • @RonJohn XP also came before AMD64 and they run just fine. I don't think x64 XP was ever released to the public, and Vista was such a failure, so I think most of the AMD64 machines ran 32-bit XP all the way until Windows 7. Oct 24, 2023 at 9:00
  • 3
    @user3528438 x64 XP was absolutely released to the public, Windows XP 64-Bit Edition for Itanium and Windows XP Professional x64 Edition for x86-x64 released April 2002
    – Alan B
    Oct 24, 2023 at 9:40
  • 2
    @RonJohn yes, they still boot in the same way — either BIOS-style boot in 16-bit mode, or UEFI boot. NT4 only supports the former, if the OP got to the text-mode installer that’s not the problem here. Oct 24, 2023 at 12:54
  • 1
    @8bittree: It already works. Grub-EFI never goes to 16 bit mode. But NT4 clearly doesn't write an EFI boot record so it has no choice but to switch to 16 bit mode and load the first sector of the HD if it's going to do anything at all.
    – Joshua
    Oct 26, 2023 at 17:40

1 Answer 1

43

If you’re trying to install Windows NT 4 without Service Pack 6, this could be the result of NT4’s mis-handling of the CPUID instruction. In particular, it would crash on anything after CPU family 7; this isn’t specific to 64-bit CPUs. This is described succinctly in Q238891:

The Windows NT 4.0 kernel currently contains two restrictions that limit the kernel's use to certain processors:

  • A check for a Pentium processor that was never released.

  • A processor bit configuration that limits the maximum processor family to seven.

The result of this is that NT4 pre-SP6 can’t be installed on many CPUs newer than a Pentium III. Ironically, Core-based CPUs identify themselves as family 6, so assuming the description in the KB note is complete, and depending on what is involved in the “check for a Pentium processor that was never released”, this particular bug shouldn’t affect them; but KB notes are prone to being incomplete.

This wasn’t the first time NT used CPUID incorrectly; the October 1992 pre-release can’t be installed because of a bug in its setup of CPUID calls, and the NT 3.1 release doesn’t handle CPUID properly either.

(The issues fixed in NT4 SP6 are listed in Q241211 and Q244690.)

5
  • 1
    The original Core based CPUs IIRC were 'enhanced' P6 processors - so its less ironic, than happenstance. Oct 24, 2023 at 12:55
  • 7
    @JourneymanGeek yes, that’s exactly why they identify as family 6 — the irony in my mind was that (in theory, I haven’t tried) newer CPUs should have less trouble booting NT4 than family 15 CPUs from the turn of the century. Oct 24, 2023 at 12:59
  • I guess if it mattered I could install SP6 and then unlimit the CPU in the VM.
    – Joshua
    Oct 24, 2023 at 13:50
  • 1
    @Joshua yes, if this answer is correct then that should work. I’ve seen reports of people getting NT4 installations working that way on actual hardware (install on another machine, or even in a VM, install SP6, and move to the target system). Installation CDs with SP6 slipstreamed might help. Oct 24, 2023 at 13:58
  • Compare also: <retrocomputing.stackexchange.com/q/19655/15334> Oct 24, 2023 at 18:22

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .