How to install Windows NT on MIPS in QEMU

From Computernewb Wiki
Jump to navigation Jump to search

< Windows NT 4.0 | Windows 2000 >

Windows NT 4, along with Windows NT 3.51 and 3.5, can be successfully ran and installed on QEMU's MIPS emulation. Windows NT 3.1 BSODs on the setup, so it is not installable. Microsoft dropped support for MIPS after Windows NT 4.0 Service Pack 1, so that is the last supported service pack on this version. The PowerPC and Alpha ports of Windows NT 3.x & 4 currently do not run on QEMU.

While these instructions are for NT 4, they will work the same for NT 3.51 and NT 3.5.

Notes

  • While it is very cool to see and play with a non x86 Windows environment, it's not very usable - programs made for x86 Windows NT do not run without wx86, and there were virtually no commercial products made for Windows NT 4 MIPS. So, it is really more of a curiosity than a usable OS.
  • On versions of QEMU below 2.9.0, there is a huge memory leak that will occur during the ARCINST while formatting the system partition. This memory leak is severe enough that it'll bring even a server with 64 GB of RAM to its knees in a matter of seconds. It is highly recommended to use version 2.9.0 or higher to avoid this issue.
  • Windows NT 3.5 doesn't work on all host systems for some reason, and crashes during the "Saving configuration..." portion of the text-mode setup with a BSOD. I don't know why this only happens on some systems, but there's no fix other than using a different PC.
  • There are no USB 1.1 drivers available for this version, so proper mouse alignment is sadly impossible.
  • Sound cards are not emulated yet.

Starting up

First, download the following file and extract it somewhere: http://web.archive.org/web/20150809205748if_/http://hpoussineau.free.fr/qemu/firmware/magnum-4000/setup.zip

One of the files will be called NTPROM.RAW. Rename this to mipsel_bios.bin.

Open a command prompt and run the following command to create the disk image:

qemu-img create -f qcow2 ntmips.img 2G

The Magnum machine doesn't support more than 2 GB of space, so don't go over this.

Next, start QEMU with the following command:

qemu-system-mips64el -hda ntmips.img -M magnum -nic user,model=dp83932 -cdrom win_nt_4_iso.iso -m 128 -global ds1225y.filename=nvram

We set the memory to 128 MB of RAM since this is the most supported by the Magnum machine. Only 128 and 64 are valid values (it won't boot with any others).

Installation

When you first start the machine, the date may be set to the year 2033 and the clock also might be set to "8:85:00" or something similar. This is a bug in the emulation that can be fixed via the following:

  • Using QEMU 6.2.0 or above which fixes this bug
  • Add -rtc "base=1995-07-08T11:12:13,clock=vm" to the command line arguments
  • Go to "Initialize system", "Set time", and set the proper date.

An important note: If you don't properly set the clock, Windows NT will mark the date as invalid and set it to January 1, 1601 at 12:00 AM.

Now we'll set the environment variables. Choose the following variables:

  • Select monitor resolution: 1024x768 or 1280x1024
  • Select floppy size: 3.5 1.44 M
  • Is there a second floppy: No
  • Enter SCSI Host ID (0 - 7): 7

Next, set the default environment to "Scsi hard disk".

Check the ethernet address if you want internet. Return to main menu.

Hit "Exit".

Now when it restarts, hit "Run a Program".

Type the following in: cd:\mips\arcinst

This sets up our system partition, and will set up the boot loader. THIS is where the memory leak happens (on QEMU 2.8 and below). You really don't need anything big for this, a 5-6 MB partition will be enough.

When we're done with that, exit and then run the following: cd:\mips\setupldr

This will boot into the text-mode setup, and if you've ever installed x86 NT (or 2000, XP etc), the installation is pretty much exactly the same. Select the largest partition as the installation drive, format it as FAT or NTFS (you may have to wait a few seconds during the disk convert before rebooting; it will usually halt at "converting file system" after the conversion is completed). Skip the disk scan, install the TCP/IP protocol if you want internet, and congratulations - you'll have a working NT MIPS environment!

To send Ctrl Alt Delete to login, press Ctrl+Alt+3 in the QEMU window, then enter sendkey ctrl-alt-delete. Press ctrl+alt+1 to go back.

Software

Windows NT 4 MIPS, surprisingly, has had quite a bit of software ported over to it. Below are links to ported softwares and original software designed for the system.

Browsers Editors Userlands Clients Games Misc
Lynx Metapad Yori 0irc Hyperoid WinImage
Internet Explorer 3.01 Vim C shell (demo) PuTTY Quake1 Psych
vi QuakeWorld wx86
mep Neko98 Resource Kit
GNU Emacs Dungeon unzip
NetHack aclock
gzip
tar
Dependency Walker

Some of the download links don't work, you'll need to right click the link and click "Save link as..."

This is due to a recent change in policy in browsers such as Chrome regarding HTTP links

< Windows NT 4.0 | Windows 2000 >