Windows NT 4 - WORKING on ao486!
Posted: Tue Feb 15, 2022 5:56 pm
Hello all,
Following on from getting Linux working in this thread: viewtopic.php?f=13&t=4006&e=1, I have been continuing to look at getting Windows NT to boot on ao486. Today I finally got it to run!
Here are the problems I have had to solve to get it booted:
Problem: NT won't read the hard disks.
Solution: I found a driver which works here: http://alter.org.ua/en/soft/win/uni_ata/
Problem: NT won't read floppy disks.
Workaround: Not solved, but avoided. I have performed a "floppyless" installation of NT from DOS. This also required injecting the above hard disk driver into the setup files to avoid needing to provide it on a floppy during the setup process.
Problem: NT setup crashes with an "unable to initialize graphics" error
Solution: This is due to the ao486 BIOS, and happens in Bochs as well if you use this BIOS image there. I have compiled a new build of the BIOS from more recent source which avoids this error.
Problem: Newer BIOS images (see above) can't read hard disks on MiSTer/ao486
Solution: I have found that one of the "retired" fields in the IDE IDENITFY command is actually required by newer BIOS images (the current image works around this). I have added the missing field.
Problem: NT setup goes blank when selecting the video mode and does not recover
Solution: Just press cancel! It will save a 16-color 640*480 mode instead. Windows will complain about this again on first full boot, but just hit cancel again.
However, I have caused one new problem:
Problem: My new versions of the BIOS and IDE code do not work under DOS, so this is not a patch which can just be released and used by all MiSTer users. I am still working on solving this.
So... it's early days but it's running! So far I've caused one blue screen by trying to access the floppy drive (seriously, what's up with that?), and I need to find a better fix for BIOS/IDE so this can be released more broadly. More to come!
Alex
Following on from getting Linux working in this thread: viewtopic.php?f=13&t=4006&e=1, I have been continuing to look at getting Windows NT to boot on ao486. Today I finally got it to run!
Here are the problems I have had to solve to get it booted:
Problem: NT won't read the hard disks.
Solution: I found a driver which works here: http://alter.org.ua/en/soft/win/uni_ata/
Problem: NT won't read floppy disks.
Workaround: Not solved, but avoided. I have performed a "floppyless" installation of NT from DOS. This also required injecting the above hard disk driver into the setup files to avoid needing to provide it on a floppy during the setup process.
Problem: NT setup crashes with an "unable to initialize graphics" error
Solution: This is due to the ao486 BIOS, and happens in Bochs as well if you use this BIOS image there. I have compiled a new build of the BIOS from more recent source which avoids this error.
Problem: Newer BIOS images (see above) can't read hard disks on MiSTer/ao486
Solution: I have found that one of the "retired" fields in the IDE IDENITFY command is actually required by newer BIOS images (the current image works around this). I have added the missing field.
Problem: NT setup goes blank when selecting the video mode and does not recover
Solution: Just press cancel! It will save a 16-color 640*480 mode instead. Windows will complain about this again on first full boot, but just hit cancel again.
However, I have caused one new problem:
Problem: My new versions of the BIOS and IDE code do not work under DOS, so this is not a patch which can just be released and used by all MiSTer users. I am still working on solving this.
So... it's early days but it's running! So far I've caused one blue screen by trying to access the floppy drive (seriously, what's up with that?), and I need to find a better fix for BIOS/IDE so this can be released more broadly. More to come!
Alex