Draft:Installing Windows NT on PowerPC

Back to Windows build FAQ

This page provides instructions on installing builds of Windows NT compiled against the PowerPC CPU architecture. Windows NT 3.51 and Windows NT 4.0 were compiled for the PowerPC architectures, as did an OEM release of Windows NT 3.5 build 807.

Overview and processor support[edit source]

IBM ported Windows NT to PowerPC starting from early to mid 1993, tracking the upstream sources. The earliest available build of this port is Windows NT 3.5 build 807, and it was fully merged upstream during development of Windows NT 3.51.

The earliest builds of the port only support PowerPC 601 processors; PowerPC 603 support was added during Windows NT 3.51 development (sometime before build 896), and PowerPC 603e support was added sometime after Windows NT 3.51 build 944 (partial support exists by then, but it targets prototype silicon with a processor version number of 4; the released processors use version 6).

By Windows NT 3.51 build 1057.1, the NT kernel itself can successfully boot on PowerPC processors later than officially supported, although during Windows NT 4.0 development an overzealous check was added in the bootloaders that needs to be patched (by firmware or manually) to run on a PowerPC 750FX or any PowerPC G4 (the last officially supported processor being the PowerPC 740, still in development under codename Arthur (and preliminary name PowerPC 613) at that time, but the majority of the 7xx range share the same processor version number of 8).

Support for the Windows NT PowerPC port was dropped by Microsoft on 6 February 1997 shortly after the release of Windows NT 4.0 Service Pack 2 due to a decrease in adoption rates for the CPU architecture, exacerbated by the increasing dominance of Intel's x86 CPU architecture.[1]

As of writing, the only emulator that can run Windows NT for PowerPC is a fork of DingusPPC, which supports the required little-endian mode (MSR_LE), emulating a tray-loading Bondi Blue Apple iMac G3, with a third-party boot loader implementing the ARC firmware specification, hardware abstraction layer and required drivers.

Installation guide[edit source]

Windows NT 3.51 build 944 and earlier[edit source]

Currently incompatible with emulation, due to the only supported emulated systems including an unsupported processor (released some years after these builds were compiled).

Windows NT 3.51 build 1057 and later[edit source]

Prerequisites[edit source]

The following requirements used in order to install these versions under emulation are as follows:

  • A copy of dingusppc-nt[a]
  • The required ROMs:
    • The imacboot.u3 system boot ROM (available as part of the MAME ROM set in imac.zip)
    • 113-32900-004_Apple_MACH64.bin, the PCI graphics card support ROM
  • The latest release of maciNTosh, which includes the needed ARC firmware and drivers
  • A Windows NT build's installation media, compiled against the PowerPC architecture. Supported PowerPC builds of Windows NT include the following:
  • An ISO image file editor, such as PowerISO
  • A tool capable of creating raw hard disk images; the qemu-img utility included as part of QEMU will be used as part of this tutorial

Precautions[edit source]

  • Ensure you have the required emulator, ROMs and disc images located inside of a single directory for convenience.

Instructions[edit source]

Create a raw hard disk image of a size that must be less than or equal to 2GB. The associated qemu-img command line arguments are as follows:

qemu-img create -f raw hd.img 2G

Modify the Windows NT build's installation media to add the drivers.img ramdisk image from nt_arcfw_grackle.iso[b] into the root directory.

Launch the emulator using the following command:

dingusppc -m imacg3 -b imacboot.u3 --gfxmem_size=6 --mon_id=MacRGB19in --rambank1_size=128 --hdd_img=hd.img --cdr_img=nt_arcfw_grackle.iso

If dropped into a debugger console, invoke the go command to start machine emulation. This must be done for every startup, including subsequent system reboots.

When the Macintosh startup chime is played, the C key must be held down in order to boot into CD media. The screen should fill grey then start booting into the ARC firmware. Release the C key when the screen fills back to black from grey.

Upon reaching the ARC firmware menu for the first time, the hard disk must be partitioned for the first time; use the arrow keys and Enter to select the Run firmware setup option, followed by the Repartition disk for NT installation in the next sub-menu. Define the largest possible size for the system partition as displayed by the partitioning utility, and finish partitioning.[c]

Exit and restart the emulator with the following command-line arguments:

dingusppc -m imacg3 -b imacboot.u3 --gfxmem_size=6 --mon_id=MacRGB19in --rambank1_size=128 --hdd_img=hd.img --cdr_img=<path to installation media>

Do not hold any key down during the boot process, as the emulated system should boot into the ARC firmware on its own. If the message "drivers.img ramdisk loaded" is not displayed in the ARC console, ensure that the disc image being used contains the needed drivers.img file for installation.

Invoke the Windows NT setup boot loader by selecting the Run a program option and entering the path cd:\ppc\setupldr into the prompt. During initialization, setup will request the needed hardware abstraction layer and necessary drivers:

  • When asked for a hardware abstraction layer, select the "Other" option, hit the Enter key and select the Apple iMac G3 (tray-loading) option.
  • When asked to specify mass storage drivers, more than one driver must be loaded. Press the S key, select the "Other" option, press Enter when asked for a disk and choose the Mac I/O IDE Controller driver. Repeat the same steps and select the PowerMac General HID & Storage driver.
  • When asked to select a video adapter driver, select the "Other" option, hit the Enter key and select the appropriate driver for the version of Windows NT that is being installed. Choose the Open Firmware Frame Buffer driver if installing Windows NT 4.0; otherwise, select the Open Firmware Frame Buffer (NT 3.x) driver.

The Windows operating system will boot into the setup process on its own. Proceed through installation as normal until asked to specify input options; specify the keyboard and mouse as XT/AT/Enhanced Keyboard (83-104 keys) and No Mouse or Other Pointing Device, respectively. When asked to partition disks, select the C: drive and format as preferred. Do not install any networking drivers or create an Emergency Repair Disk during the GUI phase of the installation process, if prompted.

Post-installation notes[edit source]

  • Use the Ctrl+Alt+Backspace hotkey to bypass the secure attention screen (Ctrl+Alt+Del) prompt.
  • Some 32-bit x86 applications can be run if the Motorola SoftWindows 32 for PowerPC software emulator is present in a Windows NT 4.0 installation.

Bugs and quirks[edit source]

  • The real-time clock is not yet emulated and so Windows will believe the date is somewhere during 2040.
  • Emulation may appear to hang at some points during disk access. Moving the mouse in the emulated system will cause it to continue (including during text setup).

Notes[edit source]

  1. Must be compiled from source if the host machine is not running Windows.
  2. Included as part of maciNTosh; the respective download page features a symbol pack and the aforementioned ISO image packaged inside of a ZIP archive.
  3. Setting up a Mac system partition is not required to install Windows NT.

References[edit source]

  1. Thurrott, Paul. Windows NT for PowerPC is no more, Windows IT Pro. 7 February 1997.