VOGONS


First post, by philmac

User metadata
Rank Newbie
Rank
Newbie

Hi everyone,

I'm trying to get Windows 98 SE installed and working and hitting a few snags with IDE compatibility mode. I can get Win98 installed on the target drive no problem, but on first bootup I get an error:

"Your multi-function device (Standard Dual PCI IDE Contoller) has some child devices using 32-bit drivers and others using compatability mode drivers. This configuration is not supported, so your computer has been halted to prevent corruption.
After you restart your PC, you will use multi-compatible mode drivers for each child device attached to this multi-function device."

After that, I get the following when I right-click My Computer:

1. Compatibility mode paging reduces overall system performance.
2. Drive C is using MS-DOS compatibility mode file system.

Device manager is showing the child IDE controller devices as running in compatibility mode, and as a result I can't see the CD-ROM drive at all.

Hardware I'm running:

Shuttle SN41G2 (FN45 Motherboard)
512Mb DDR200 RAM
AMD Athlon XP 3000+
ATI Radeon 9600
SB Audigy 2 ZS
Maxtor 120Gb IDE Drive (Win98)
Seagate 500Gb SATA Drive (WinXP)
HP CD-RW IDE.

I have the original driver CDs for the hardware, and have installed drivers for everything (including the nForce2 chipset drivers), but this doesn't resolve the issue. I've also tried replacing the IDE ribbon cables, checking the drive master/slave jumpers, splitting the two IDE devices onto seperate channels, and disabling the SATA controller (temporarily) in case there's a hardware element causing the problem. I've also merged them onto the same ribbon cable (HD as master, CD as slave) and tried turning off all of the other IDE channels in the BIOS. I've finally tried swapping the 120Gb drive for a 20Gb Seagate IDE drive to see if that fixes the issue. No joy.

I've also followed what information I can find about this error online and checked through the troubleshooting steps around loading of drivers in DOS - they aren't relevant here as I have no hardware drivers showing up in CONFIG.SYS or AUTOEXEC.BAT.

None of this seems to make any difference, and the box boots up fine into Windows XP (which is on a seperate drive) and shows no hardware issues there.

I'm using original Microsoft CDs and not using anything other than the original vendor drivers.

Any ideas, or something that I'm missing?

Last edited by philmac on 2020-05-31, 17:00. Edited 1 time in total.

Reply 2 of 9, by philmac

User metadata
Rank Newbie
Rank
Newbie
kolderman wrote on 2020-05-24, 06:52:

Better off using a ide/sata adapter. Compat mode always hit and miss for me.

That's the annoying bit, I've had this hardware running Win98 without issues, albeit 15 years ago.

Only thing that's changed since then is the drives (I was running an 80Gb IDE for 98 and a 160Gb IDE for XP).

Reply 3 of 9, by kolderman

User metadata
Rank l33t
Rank
l33t
philmac wrote on 2020-05-24, 06:55:
kolderman wrote on 2020-05-24, 06:52:

Better off using a ide/sata adapter. Compat mode always hit and miss for me.

That's the annoying bit, I've had this hardware running Win98 without issues, albeit 15 years ago.

Only thing that's changed since then is the drives (I was running an 80Gb IDE for 98 and a 160Gb IDE for XP).

Exactly as I said...hit and miss 😉

Reply 4 of 9, by texterted

User metadata
Rank Member
Rank
Member

See if your drives allow a jumper to be added to enable SATA 1 speeds.

Cheers

Ted

98se/W2K :- Asus A8v Dlx. A-64 3500+, 512 mb ddr, Radeon 9800 Pro, SB Live.
XP Pro:- Asus P5 Q SE Plus, C2D E8400, 4 Gig DDR2, Radeon HD4870, SB Audigy 2ZS.

Reply 5 of 9, by philmac

User metadata
Rank Newbie
Rank
Newbie
texterted wrote on 2020-05-24, 09:56:

See if your drives allow a jumper to be added to enable SATA 1 speeds.

I'm using an IDE drive for Win98, so that won't work. The SATA drive is for XP and I've disabled it anyways during troubleshooting.

I've found a fix in the File System Properties troubleshooting settings, been through them all and I've found that "Disable protected-mode hard disk interrupt handling" resolves the issue when ticked.

Windows 98 captures the Int13h interrupts and processes them with a 32-bit virtual driver. If your program is having intermittent disk access problems, you may want to turn off this functionality. The program may then handle the Intl3h interrupts. This usually results in slower hard disk access, but it may solve problems with certain programs.

Now the CD drive is showing up, and I'm not getting any controller issues.

It's also now shutting down cleanly (which it wasn't before) 😀

Reply 6 of 9, by texterted

User metadata
Rank Member
Rank
Member

Glad you got it sorted, now for the fun!

Cheers

Ted

98se/W2K :- Asus A8v Dlx. A-64 3500+, 512 mb ddr, Radeon 9800 Pro, SB Live.
XP Pro:- Asus P5 Q SE Plus, C2D E8400, 4 Gig DDR2, Radeon HD4870, SB Audigy 2ZS.

Reply 7 of 9, by Horun

User metadata
Rank l33t++
Rank
l33t++

Good Job philmac ! I am bookmarking this topic as the Win98 drive compatibilty issue comes up often

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 8 of 9, by philmac

User metadata
Rank Newbie
Rank
Newbie
Horun wrote on 2020-05-24, 15:58:

Good Job philmac ! I am bookmarking this topic as the Win98 drive compatibilty issue comes up often

Yeah, it was a pig to get working.

The nVidia nForce drivers CD that came with the Shuttle had bundled copies for Win98/2000/XP. The 2000/XP drivers had their own storage driver for both the PATA and SATA controllers, but no such driver for Win98 (the nVidia guidance just says to use the standard Microsoft driver). I tried to update Win98 to use the Win2k nForce storage driver and got exactly the same issue - compatibility mode, no visible drives.

I've had compatibility mode issues before, with dodgy ribbon cables and drives using CS jumpers (instead of Master/Slave) but never something like this. All the literature I can find states that the setting I've turned on has a performance hit, but it looks like it isn't substantial from the speed everything loads up.

Think I'd forgotten how easy all this became from 2K onwards 😉

EDIT: Final update - after installing all of my games and old software, I thought I'd try enabling protected-mode hard disk interrupt handling and see what happens.

It's all working normally now with no updated drivers. Go figure...

Reply 9 of 9, by philmac

User metadata
Rank Newbie
Rank
Newbie

For anyone else reading this post, root cause is the fact that the Shuttle board has both SATA and IDE controllers present, and Win98 doesn't recognize both. A couple of days after re-enabling everything, it started misbehaving again.

From another post on this forum:

NJRoadfan wrote on 2013-10-02, 13:50:

Technical Background: Intel ICH5 boards predate AHCI, so they normally present on the onboard SATA connectors as a 3rd IDE controller, but at a non-standard hardware address (nevermind that there is official IDE assignments for this setup, just not very supported) . Windows 2000/XP has no problem with this as its IDE driver supports non-standard resource assignments. Windows 98's driver only recongizes IDE devices at the traditional hardware addresses (1F0h/IRQ 14 and 170h/IRQ15). The BIOS legacy setting gives you the option to map in the SATA ports as either the primary or secondary IDE channel and disables the PATA channel normally used. You can't use all three channels in Windows 98 as a result.

It does work in DOS however, since the Int 13h routine in the BIOS supports the drive (so you can boot off of it in "Enhanced" mode). Thats why the Windows 98 install worked fine, but it locked up when starting Windows. Control was passed from Int 13h to Windows' protected mode driver and it chocked.

The AMD motherboard I'm using here also predates AHCI support for SATA (it only supports IDE or RAID), so I suspected that I might have a similar problem here.

I tried setting the IDE controller to "both channels enabled" and changed the SATA controller to "no channels enabled" within Win98 Device Manager (the SATA drives are NTFS so I can't read them in Win98 anyway). This completely fixed the issue and I've now got normal access. It doesn't affect booting into XP (all drives are visible).