VOGONS


First post, by Sedrosken

User metadata
Rank Member
Rank
Member

Hi,

My Pentium Pro machine kinda chugs under 98 by comparison with NT4, but NT4 just can't run everything 98 can, even with the hacked DX5 from the NT5 beta and NT4SETDX6. The obvious solution here is a dual boot, but I'd prefer to keep everything on my single 128GB SD card. Unfortunately being on an MBR partition table makes things a bit interesting since we all know the limitations of MBR -- 4 partitions total, 3 primary and 1 extended with logical drives under it. 98 -- or more accurately, its underlying DOS -- doesn't really like multiple primaries or living on a partition other than the first one, and NT doesn't seem to much enjoy being installed to a 2GB FAT16 logical drive within a much larger extended partition. NT4, as you may know, requires that its boot files live within the first 8GB of the drive. It gets even better -- NT4's incarnation of NTFS is riddled with jank, to the point that it refuses to work properly on flash storage. Setup hangs during that first reboot where it converts the initial FAT16 volume to NTFS since it can't, y'know, just format to NTFS from the get-go like 2000 can. Not a big deal to me, FAT performs better anyway. My inital plan looked like this:

Primary, active partition -- 2GB, FAT16. Windows 98SE installed here. NTLDR points to BOOTSECT.DOS which starts Windows 98SE.
Primary, inactive partition -- 2GB, FAT16, Windows NT4 installed here.
Primary, inactive partition -- remaining space, FAT32. Communal data/programs volume. NT4 gains access through FastFat32 driver.

After SP6a and FastFat32 is installed, NT4 loses access to the first volume with 98SE on it, which is problematic -- any modifications to boot.ini must be done from an alternate operating system.

Next I tried this:

Primary, active partition -- 2GB, FAT16. Windows 98SE installed here. NTLDR points to BOOTSECT.DOS.
Extended partition, rest of the drive. Logical drive -- 2GB, FAT16. Windows NT4 installed here.
Logical drive -- remaining space, FAT32. Communal data/programs. NT4 does not even know this drive exists in this configuration, but 98/DOS 7.1 is a bit happier.

Yeah, in this setup NT4 didn't even know there was another logical drive at all. Very peculiar.

Now, I have a couple other ideas -- forcibly installing 98SE to D:\Windows in this setup:

Primary, inactive -- 2GB FAT16. NT4 will be installed here.
Primary, active -- rest of the drive, FAT32, 98SE will be installed here.

I feel like this won't work because 98 will insist on being installed to C:, in which case I have to wonder... how does NT react to being installed on the exact same partition as a 9x-class OS? Does it conflict in common directories (specifically, Program Files, and the common directories therein) and they just break each other, or does it get smart and make different folders? Will I have to do some wizardry with TweakUI? Will it even work at all?

Edit: I should clarify that for everywhere I say 98, or 98SE, I mean 98SE with the shell swapped out for the 95 version using 98lite. I have no patience for watching the explorer windows paint because I'm using a web browser for a shell.

Nanto: H61H2-AM3, 4GB, GTS250 1GB, SB0730, 512GB SSD, XP USP4
Rithwic: EP-61BXM-A, Celeron 300A@450, 768MB, GF2MX400/V2, YMF744, 128GB SD2IDE, 98SE (Kex)
Cragstone: Alaris Cougar, 486BL2-66, 16MB, GD5428 VLB, CT2800, 16GB SD2IDE, 95CNOIE

Reply 1 of 7, by dr_st

User metadata
Rank l33t
Rank
l33t

Never mind, I wrote something and then I realized that NT4's NTFS not working properly with flash storage makes it problematic...

Sedrosken wrote on 2020-03-18, 14:20:

Primary, inactive -- 2GB FAT16. NT4 will be installed here.
Primary, active -- rest of the drive, FAT32, 98SE will be installed here.

This is what I would do if you think NT4 will be happy with just 2GB.

Sedrosken wrote on 2020-03-18, 14:20:

98 will insist on being installed to C:

It won't. I've installed Win98SE on partitions other than C: many times before, and haven't encountered a single issue. My main Win98SE PC has always had Windows itself (and Documents, and Program Files) on G:. Only the boot files need to be on the first partition.

But you need to install Win98 first (on D:), then NT (on C:), so that NTLDR manages the Win9x bootsector (since Win9x can't manage the NT boot sector, as far as I know).

Sedrosken wrote on 2020-03-18, 14:20:

how does NT react to being installed on the exact same partition as a 9x-class OS? Does it conflict in common directories (specifically, Program Files, and the common directories therein) and they just break each other, or does it get smart and make different folders? Will I have to do some wizardry with TweakUI? Will it even work at all?

Don't go there, just don't. I don't know about NT, but 2K/XP tries to create different folders, except there is no way to know that long-term something won't break.

Last edited by dr_st on 2020-03-18, 15:40. Edited 1 time in total.

https://cloakedthargoid.wordpress.com/ - Random content on hardware, software, games and toys

Reply 2 of 7, by Sedrosken

User metadata
Rank Member
Rank
Member

Yech, I was hoping there was some other way. I have this slight OCD thing about Windows running from the C: drive, always... Oh well. I'll just have to suck it up and get on with my life. And no, 9x cannot interfere with NTLDR in any way outside of simply deleting it or futzing about with boot.ini.

The idea is to have everything that can run properly under NT do so from a directory on the 98 drive (FastFat32 gives NT4 access to FAT32 volumes, ensuring space isn't a concern) and for everything NT just can't handle (including DOS), 98 will spring into action. Configuring DOS mode is going to be a little... heroic, with the PATH in particular probably being a winding beast, but everything should work out...

Nanto: H61H2-AM3, 4GB, GTS250 1GB, SB0730, 512GB SSD, XP USP4
Rithwic: EP-61BXM-A, Celeron 300A@450, 768MB, GF2MX400/V2, YMF744, 128GB SD2IDE, 98SE (Kex)
Cragstone: Alaris Cougar, 486BL2-66, 16MB, GD5428 VLB, CT2800, 16GB SD2IDE, 95CNOIE

Reply 3 of 7, by loblolly986

User metadata
Rank Newbie
Rank
Newbie
Sedrosken wrote on 2020-03-18, 14:20:

Edit: I should clarify that for everywhere I say 98, or 98SE, I mean 98SE with the shell swapped out for the 95 version using 98lite. I have no patience for watching the explorer windows paint because I'm using a web browser for a shell.

Hey, someone with better-than-average taste in software. 😀

Both of the partition arrangements you tried should have been fine. Also, I'm incredulous about the notion that NT 4's NTFS is "full of jank" - it has performed swimmingly for me on the physical systems (with speedy 7200 RPM SATA HDDs) and VMs I've installed it on. The file security, fault tolerance, and compression features make it a no-brainer, aside from the difficulty in repairing the NT installation if it is the only OS installation with NTFS support on the system. I'm assuming you're using the SD card in an adapter to simulate an IDE drive, so unless your IDE controller isn't working that well with the SD card I would think things would be fine.

I will point out a few things that may get at what's causing problems:

- I would recommend using the Winternals FAT32 driver (re-released as Sysinternals freeware in 2002; download here) over the "fastfat32" package floating around; the Winternals solution does not replace the original FAT drivers and as a bonus includes programs to check for (but not repair) errors on FAT32 partitions. It is possible the hacked fastfat.sys and fs_rec.sys files you're using introduce bugs not present in the originals.

- Early versions of the Microsoft ATAPI driver can not access more than the first 7.8 GiB of a drive. I've managed to get by creating and installing on a partition in NT Setup when there are no existing partitions occupying space beyond the first 7.8 GiB, but if there are then problems can arise. A workaround for this would be to load Alter's UniATA driver (which supports LBA48) in Setup and install the OS with it instead of the Microsoft ATAPI driver. You'll need to use Setup boot floppies instead of booting from the CD to accomplish this, since this allows you to have Setup only load the disk driver(s) you specify, instead of loading everything and the ATAPI driver being detected as compatible and chosen regardless of UniATA having been inserted into the mix. If you don't have the floppies or they are no longer fully functional, you can make a new set by running winnt /ox from the CD's i386 folder in DOS.

- The Microsoft ATAPI driver by default uses the slow PIO transfer mode; enabling basic DMA support requires changing a registry setting or using the DMACHECK utility. UniATA, however, supports all DMA and UDMA modes and automatically picks the best one supported by your hardware.

The last two UniATA versions (0.47 and 047a) were packaged incorrectly with a bunch of extraneous files in the packages' root Release_Dist directory, so I'm attaching a floppy image I use for UniATA 0.47a with all that cleaned up to match earlier versions, ready to be written to a floppy and used with NT Setup.

Attachments

  • Filename
    BusMaster_v47a_img.zip
    File size
    277.31 KiB
    Downloads
    52 downloads
    File license
    Fair use/fair dealing exception

Reply 4 of 7, by Sedrosken

User metadata
Rank Member
Rank
Member

Thanks for the image -- I'm sure it'll come in handy sometime, even for completely unrelated projects -- and this converter works fine with everything else I've used it with. It's worth noting that I'm not using my built-in IDE channels for anything but my DVD-RW drive and my Zip100 drive, since they have issues with running in any DMA mode and working with any drive over 8GB. It's a PIIX3, only supports up to WDMA so performance wouldn't be outstanding anyway. I'm using a Promise Ultra66, loading the driver from floppy during the first part of setup. If it's not using the Microsoft-provided ATAPI driver to access the boot drive, then it should be working fine with drives over 7.8GB then, so that's good to know. Running ATTO Disk Benchmark suggests that it is in UDMA-66 mode, since performance is comparable to the same benchmark running under 98SE.

Thanks also for linking to the Wininternals' FAT32 driver. I was a bit skeptical of replacing my FastFat driver as well, but when everything seemed to just work I wrote it off as being inconsequential but you may well be right, it might have been introducing instability that wasn't there before.

Maybe I was a bit harsh in judging the NT4 incarnation of NTFS, but when the installer can't format to it directly and must format in FAT16 first to then convert it, I say something's wrong. When said conversion process just... doesn't work on the storage device I use and have otherwise no problems with, it also doesn't leave a great taste in my mouth... Like I said, for my application (retrogaming) it doesn't make much sense anyway -- FAT16 performs better, or at least so I've heard.

Nanto: H61H2-AM3, 4GB, GTS250 1GB, SB0730, 512GB SSD, XP USP4
Rithwic: EP-61BXM-A, Celeron 300A@450, 768MB, GF2MX400/V2, YMF744, 128GB SD2IDE, 98SE (Kex)
Cragstone: Alaris Cougar, 486BL2-66, 16MB, GD5428 VLB, CT2800, 16GB SD2IDE, 95CNOIE

Reply 5 of 7, by aha2940

User metadata
Rank Member
Rank
Member

Why not using a separate boot manager, and hide the partitions according to your needs? I have used masterbooter (https://github.com/nagydjol/masterbooter/blob … er/mrbooter.txt) and it can hide partitions on the fly, so that both OSs see their partition as C:, no problem at all.

Reply 6 of 7, by Lylat1an

User metadata
Rank Member
Rank
Member

I apologize if I'm too late, but if you're using an SD card for your OSes why not use separate SD cards for each, and use a front panel IDE adapter to physically swap them and use an internal drive for the 'communal' partition?

SD to IDE adapters that fit in a 3.5" floppy bay exist, but they're quite expensive. However, you can get CF card to IDE adapters like that relatively cheap, you just need another fairly inexpensive adapter to use SD cards in them.

I swap CF cards containing DOS and Windows 98SE in my retro game PC. I'm waiting on a CF to SD adapter to arrive because my CF cards are getting old.

Reply 7 of 7, by chinny22

User metadata
Rank l33t++
Rank
l33t++

I'd go with Lylat1an and the different SD card for different OS method. It's what I do with my PPro PC I've a NT3.51, NT4, WIn98 card and swap out for which OS I'm experemnting with that day and the other OS's are nice and safe from my tampering.

Or if you dont want to mess around with multiple cards what about adding a second hard drive? c:\ could still go to Win98 and the primary partition on the second drive should keep NT happy?
MS fixed the ATAPI in SP4, althouhg its bassicly the same fix as already mentoned jsut using in house MS patch

ftp://ftp.microsoft.com/bussys/winnt/winnt-un … atapi/ATAPI.EXE and copy the file to a blank floppy disk.
Run Atapi.exe on the diskette and the new Atapi.sys file will be extracted to the diskette. Label the disk "ATAPI Service Pack 4 IDE Driver." or something along those lines
Boot from the three setup disks supplied with Windows NT Server as per normal.
When asked if you would like setup to detect your mass storage devices, press S so that detection is skipped and you specify a mass storage device.
When setup list devices found, which should list none, press S again and insert the Microsoft ATAPI Service Pack 4 IDE Driver disk and press ENTER twice. After setup reads the disk and list the Microsoft ATAPI Service Pack 4 IDE driver, press ENTER to accept the driver.
Setup will now list Microsoft ATAPI Service Pack 4 IDE Driver as an installed driver. If you have additional drivers for other mass storage devices, press S, if not, press ENTER to continue through setup.
Setup should continue as per normal but it may prompt you to insert the disk labeled "Microsoft ATAPI Service Pack 4 IDE Driver Support Disk" at the copy phase after you have chosen or formatted a partition on a hard drive.
If you are using Microsoft Small Business Server 4.0 or 4.0a, follow these instructions:

Download the updated ATAPI.SYS from Microsoft's FTP server ftp://ftp.microsoft.com/bussys/winnt/winnt-un … atapi/ATAPI.EXE and copy the file to a blank floppy disk.
Run Atapi.exe on the disk and the new Atapi.sys file will be extracted to the disk. Label the diskette "ATAPI Service Pack 4 IDE Driver."
Copy an updated file to Small Business Server (SBS) disk 2. To do this, rename the file Winnt.sif to Winnt.bak on disk 2. Then copy the Winnt.sif from the I386 folder on SBS CD 1 to SBS disk 2.
Boot from the modified SBS setup disks.
When the computer is booting off of disk 1 and the message "Setup is inspecting your hardware configuration..." is displayed, press F6 on the keyboard. NOTE: This is at a black screen and no visible indicators occur when you press F6.
When prompted, insert the modified disk 2 into the computer. The next screen that appears will prompt you to specify a mass storage drivers. To do that, press the S key and then arrow down to the listing of OTHER.
Insert the Microsoft ATAPI Service Pack 4 IDE Driver disk and press ENTER twice.
After setup reads the disk and list the Microsoft ATAPI Service Pack 4 IDE driver, press ENTER to accept the driver.
Setup will now list "Microsoft ATAPI Service Pack 4 IDE Driver" as a installed driver. If you have any more drivers for other mass storage devices, press S; if not, press ENTER to continue through setup. NOTE: Because we are using a modified version of Winnt.sif, you will be prompted to insert disks 2 and 3 several times.
Make sure you format or convert the partition to NTFS as SBS requires it.
Setup should continue through normally but it will prompt you to insert the disk labeled "Microsoft ATAPI Service Pack 4 IDE Driver Support Disk" at the copy phase after you have chosen or formatted a partition on a hard drive.
Running ATAPI.EXE creates the files below:

atapi.sys
Disk1
oemsetup.inf
readme.txt
txtsetup.oem
The NT 4.0 SP4 atapi.sys file is neither necessary nor supported for Windows Terminal Server Edition. If you try to use it, you may get a message to the effect that you don't have the necessary component installed. As long as you stick to the 2GB/8GB install limits, this extension is not necessary.

Apparently, Microsoft refuses to support booting NT from any partition bigger than 8 GB for SCSI. The newer Adaptec 2940U2W cards are set up so that NT cannot be booted if the partition is larger than 8 GB, but unfortunately the older Adaptec cards still allow this largely undocumented "mistake" to occur.

and yeh having NT on c:\ and 98 on d:\ wont hurt anything but totally get wanting it the other way around