QEMU/Guests/Windows NT 3.x-4.0 (MIPS): Difference between revisions

From Computernewb Wiki
Jump to navigation Jump to search
m (1 revision imported)
("-global ds1225y.size=8200" arg is no longer needed)
 
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
'''[[How_to_install_Windows_NT_4.0_in_QEMU|< Windows NT 4.0]]''' | '''[[How_to_install_Windows_2000_in_QEMU|Windows 2000 >]]'''
<noinclude>'''[[How_to_install_Windows_NT_4.0_in_QEMU|< Windows NT 4.0]]''' | '''[[How_to_install_Windows_2000_in_QEMU|Windows 2000 >]]'''</noinclude>
{{DISPLAYTITLE:How to install Windows NT on MIPS in QEMU}}

[[File:1650668919_m3smGmwKPx.png|thumb]]
[[File:1650668919_m3smGmwKPx.png|thumb]]
'''Windows NT 4''', along with Windows NT 3.51 and 3.5 can successfully run and install in QEMU's MIPS emulation. Windows NT 3.1 BSODs on setup, so it is not installable. Service Pack 1 was the last supported service pack on MIPS Windows NT 4. Currently, PowerPC and Alpha ports of Windows NT 3.x & 4 do not run in QEMU.
'''Windows NT 4''', along with Windows NT 3.51 and 3.5, can successfully run and install in QEMU's MIPS emulation. Windows NT 3.1 BSODs on setup, so it is not installable. Service Pack 1 was the last supported service pack on MIPS Windows NT 4. Currently, the PowerPC and Alpha ports of Windows NT 3.x & 4 do not run, though there is a currently active project to run PowerPC NT 4 on QEMU.

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


==Notes==
==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.
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.


There are no USB 1.1 drivers for Windows NT 4 MIPS, so proper mouse alignment is impossible, but is not a big deal. <s>The bigger deal comes from the insane memory leaks that QEMU MIPS has when formatting the system partition. This memory leak is actually enough to bring a server with even 64 GB of RAM down to its knees in a matter of seconds.</s> '''UPDATE''': This was fixed in QEMU 2.9.0. If you want to host this, use QEMU 2.9.0 or above. Once you are booted into the OS, the memory leaks are no longer present.
There are no USB 1.1 drivers for Windows NT 4 MIPS, so proper mouse alignment is impossible, but is not a big deal. <s>The bigger deal comes from the insane memory leaks that QEMU MIPS has when formatting the system partition. This memory leak is actually enough to bring a server with even 64 GB of RAM down to its knees in a matter of seconds. Once you are booted into the OS, the memory leaks are no longer present.</s> ('''UPDATE''': This was fixed in QEMU 2.9.0. If you want to use this, use QEMU 2.9.0 or above.)


==Starting up==
==Starting up==
First, download the following file and extract it: http://web.archive.org/web/20150809205748/http://hpoussineau.free.fr/qemu/firmware/magnum-4000/setup.zip
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.
One of the files will be called <code>NTPROM.RAW</code>. Rename this to <code>mipsel_bios.bin</code>.


Open a command prompt and run the following command to create the disk image:
Now we're going to make a hard drive. The maximum size you can make it is 2 gigabytes, but there is really no need to make a beefy hard drive, due to lack of software. 500 MB of space will be just fine.


<pre>qemu-img create -f qcow2 ntmips.img 500M</pre>
<pre>qemu-img create -f qcow2 ntmips.img 2G</pre>


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


Next, start QEMU with the following command:
<pre>qemu-system-mips64el -hda ntmips.img -M magnum -net nic -net user -cdrom win_nt_4_iso.iso -m 128 -global ds1225y.filename=nvram -global ds1225y.size=8200</pre>


<pre>qemu-system-mips64el -hda ntmips.img -M magnum -nic user,model=dp83932 -cdrom win_nt_4_iso.iso -m 128 -global ds1225y.filename=nvram</pre>
Note, do not set the memory to anything other than 128 or 64 MB. The Magnum machine can't run more than 128 MB. Hit enter on "Run Setup".


We set the memory to 128 MB of RAM since this is the most supported by the Magnum machine. Only <code>128</code> and <code>64</code> are valid values (it won't boot with any others).
A problem you might notice is that the date is set to the year 2033. The clock also might be set to "8:85:00" or something similar.


==Installation==
This is a bug in the emulation but can be really easily fixed. Just go to "Initialize system", "Set time" and then set the proper date. An important note: If you don't properly set the clock, Windows NT will set the date to January 1, 1601 at 5:00 PM.
When you start the machine a problem you'll likely notice is that the date is set to the year 2033. The clock also might be set to "8:85:00", or something similar. This is a bug in the emulation that can be easily fixed. There are two ways to fix it - the first is to add something like <code>-rtc "base=1995-07-08T11:12:13,clock=vm"</code> to the QEMU command line. The second is to 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 claim the date is invalid and set it to January 1, 1601 at 12:00 AM.


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


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


Next, set the default environment to "Scsi hard disk".
NOTE: If you set the monitor to 1280x1024, the self-test at the BIOS will "fail".


Check the ethernet address if you want internet. Return to main menu.
Next, set the default environment to "Scsi hard disk".

Check the ethernet address if you want internet, although it isn't required.

Return to main menu.


Hit "Exit".
Hit "Exit".
Line 53: Line 52:
When we're done with that, exit and run the following: <code>cd:\mips\setupldr</code>
When we're done with that, exit and run the following: <code>cd:\mips\setupldr</code>


From then on, it installs pretty much exactly like x86 NT. Skip the disk scan, go through the setup, and congratulations, you'll have a working NT MIPS environment!
From then on, it installs pretty much exactly like x86 NT. It's pretty straightforward. Skip the disk scan, go through the setup, and congratulations, you'll have a working NT MIPS environment!


==Software==
==Software==
Windows NT 4 MIPS, surprisingly, has 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
! Browsers !! Editors !! Userlands !! Clients !! Games !! Misc
|-
|-
| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/lynx288-win32-mips.zip Lynx]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/lynx288-win32-mips.zip Lynx]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/edit/metapad-mips.exe Metapad]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/edit/metapad-mips.exe Metapad]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/yori-mips.zip Yori]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/yori-mips.zip Yori]
||[https://vpsland.superglobalmegacorp.com/old/install/WindowsNT4.0-MIPS/irc/0irc_v1232.exe 0irc]
|| [https://vpsland.superglobalmegacorp.com/old/install/WindowsNT4.0-MIPS/irc/0irc_v1232.exe 0irc]
||[http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/Hyperoid-mips.exe Hyperoid]
|| [http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/Hyperoid-mips.exe Hyperoid]
||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/WINIMANT.EXE WinImage]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/WINIMANT.EXE WinImage]
|-
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/browsers/msie301-mips.exe Internet Explorer 3.01]
|| [https://mv.darkok.xyz/files/gvim.exe Vim]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/unix/CSH_MIPS.ZIP C shell (demo)]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/putty-mips-20110304.zip PuTTY]
|| [http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/quake-MIPS.exe Quake1]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/PSYMIP25.ZIP Psych]
|-
||
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/edit/xvi-mips.exe vi]
||
||
|| [http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/quakeworld.exe QuakeWorld]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/wx86.exe wx86]
|-
||
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/edit/mep-mips.exe mep]
||
||
|| [http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/neko98-MIPS.zip Neko98]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/reskit/reskit_nt40.zip Resource Kit]
|-
||
|| [https://mv.darkok.xyz/files/emacs.tar.gz GNU Emacs]
||
||
|| [http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/dungeon-2.5.6-MIPS-win32.zip Dungeon]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/unzip.exe unzip]
|-
||
||
||
||
|| [http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/nethack-3.1.2-MIPS.zip NetHack]
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/aclock-mips-win32.exe aclock]
|-
||
||
||
||
||
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/unix/gzip-1.2.4-mips.exe gzip]
|-
||
||
||
||
||
|| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/unix/tar-1.11.2-mips.exe tar]
|-
|-
||
| [http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/browsers/msie301-mips.exe Internet Explorer 3.01]
||
||[https://ftp.nluug.nl/pub/vim/pc/vim42mips-nt.zip Vim]
||
||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/unix/CSH_MIPS.ZIP C shell (demo)]
||
||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/putty-mips-20110304.zip PuTTY]
||
||[http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/quake-MIPS.exe Quake1]
|| [https://dependencywalker.com/depends10_mips.zip Dependency Walker]
||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/PSYMIP25.ZIP Psych]
|-
|-
|||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/edit/xvi-mips.exe vi]||||
||[http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/quakeworld.exe QuakeWorld]
||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/wx86.exe wx86]
|-
|||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/edit/mep-mips.exe mep]||||||[http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/quakeworld.exe QuakeWorld]
||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/reskit/reskit_nt40.zip Resource Kit]
|-
|||||||||[http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/neko98-MIPS.zip Neko98]
||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/unzip.exe unzip]
|-
|||||||||[http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/dungeon-2.5.6-MIPS-win32.zip Dungeon]
||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/aclock-mips-win32.exe aclock]
|-
|||||||||[http://vpsland.superglobalmegacorp.com/install/WindowsNT4.0-MIPS/games/nethack-3.1.2-MIPS.zip NetHack]
||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/unix/gzip-1.2.4-mips.exe gzip]
|-
|||||||||||[http://tenox.pdp-11.ru/os/winnt_xp/Apps/mips/unix/tar-1.11.2-mips.exe tar]
|}
|}

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



Latest revision as of 16:27, 14 April 2024

< Windows NT 4.0 | Windows 2000 >

Windows NT 4, along with Windows NT 3.51 and 3.5, can successfully run and install in QEMU's MIPS emulation. Windows NT 3.1 BSODs on setup, so it is not installable. Service Pack 1 was the last supported service pack on MIPS Windows NT 4. Currently, the PowerPC and Alpha ports of Windows NT 3.x & 4 do not run, though there is a currently active project to run PowerPC NT 4 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.

There are no USB 1.1 drivers for Windows NT 4 MIPS, so proper mouse alignment is impossible, but is not a big deal. The bigger deal comes from the insane memory leaks that QEMU MIPS has when formatting the system partition. This memory leak is actually enough to bring a server with even 64 GB of RAM down to its knees in a matter of seconds. Once you are booted into the OS, the memory leaks are no longer present. (UPDATE: This was fixed in QEMU 2.9.0. If you want to use this, use QEMU 2.9.0 or above.)

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 start the machine a problem you'll likely notice is that the date is set to the year 2033. The clock also might be set to "8:85:00", or something similar. This is a bug in the emulation that can be easily fixed. There are two ways to fix it - the first is to add something like -rtc "base=1995-07-08T11:12:13,clock=vm" to the QEMU command line. The second is to 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 claim the date is 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 sets up the boot loader. THIS is where the memory leak happens (on QEMU 2.8 and below), but you really don't need anything big for this, just make a 5 MB partition to get it done as fast as possible.

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

From then on, it installs pretty much exactly like x86 NT. It's pretty straightforward. Skip the disk scan, go through the setup, and congratulations, you'll have a working NT MIPS environment!

Software

Windows NT 4 MIPS, surprisingly, has 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 >