VOGONS


First post, by Kordanor

User metadata
Rank Member
Rank
Member

Heyho!
I saw Phils video from 11 years ago regarding DMA, and I activated it right away in Windows before even installing all the rest of the drivers and first thought everything was fine..
https://www.youtube.com/watch?v=gyY6WdaXnxU

But later I noted a couple of slowdowns, the benchmarks were all fine, even the Crystal Disk Benchmark was pretty good, but every time it was loading something the mouse was stuttering.

I disabled DMA and yes, the Mouse Stuttering was gone. But also the crystalmark benchmark of my drive was now just 5MB/s instead of 25MB/s.

I checked in BIOS and there DMA was actually still disabled. So I activated it.

However then Windows wont boot anymore. So I disabled it in the BIOS again.
I installed two different types drivers for the board (both times the file was called "infinst" something, one was this one: https://theretroweb.com/motherboards/s/msi-865gm3-ls#driver )
However, that did not change anything (and this oen also resultet in an error after the first reboot)

So I am wondering if you got any other ideas.

What I am using:

Pentium 4 @3GHz
Board: MSI 865GM3-LS
also known as: MS-7073 Ver 1
Hard Drive: SD Adapter with a Sandisk Extreme Pro
Using Win98SE

Reply 1 of 6, by onethirdxcubed

User metadata
Rank Newbie
Rank
Newbie

Try disabling the SATA ports in the BIOS or setting them to Legacy/IDE mode. Also consider trying an actual hard drive, the SD to IDE adapters may not have good compatibility with all chipsets.

Reply 2 of 6, by ott

User metadata
Rank Newbie
Rank
Newbie
onethirdxcubed wrote on 2025-10-03, 01:25:

Try disabling the SATA ports in the BIOS or setting them to Legacy/IDE mode. Also consider trying an actual hard drive, the SD to IDE adapters may not have good compatibility with all chipsets.

Agreed, i865's SATA ports work fine in legacy mode (Compatible Mode), tested on ASUS P4P800-VM(i865G)/120GB SATA SSD/Win98SE.

Reply 3 of 6, by Kordanor

User metadata
Rank Member
Rank
Member

For testing I completely disabled SATA, but it still gets stuck as before once I enable DMA Transfer (with the drive in widows set either way).

Generally:
Drive set to Normal | BIOS set to DMA Disable -> Runs normally / Stutter of curstor when crystalDisk benchmark is running. Benchmark scores of 5.5 MB/s
Drive set to DMA | BIOS set to DMA Disable -> Stutter on Boot, Stutter when starting crystalDisk benchmark, but NO stutter during benchmark. Benchmark scores of 25.6 MB/s
Drive set to Normal | BIOS set to DMA Enable -> Hangs
Drive set to DMA| BIOS set to DMA Enable -> Hangs

Reply 4 of 6, by Kordanor

User metadata
Rank Member
Rank
Member

Solved the issue:
Apparently it makes a difference which IDE Port you use. IDE2 does not work in combination with DMA. Or maybe it always checks IDE1 first and if that is not ok (no drive connected), it just hangs.
If the drive is connected to IDE Port 1, it is identified every single time, whether it is set to DMA or not. (seems like it was automatically disabled once during testing. If DNA is activated in BIOS but not on the drive it stuttered though, basically reverse to what happened before). Now in that instance it also doesnt matter if SATA is set to auto.

I am still going to test whether my other drives are affected now in any way and if this is "stable" or if it automatially disables itself again after reboots and so on. But this seemed to be the main issue.

Reply 5 of 6, by wierd_w

User metadata
Rank Oldbie
Rank
Oldbie

More than likely the port configuration in the registry has the max speed value capped at PIO4, because it had a burp with reads at some point.

This is a little known behavior that I would think would be more well known, given its prevalence, but win9x has a coded behavior to detect if the IDE controller misbehaves at higher speeds, and then automatically downthrottle until it becomes stable, and then sits like a mother hen on that detected speed, even if this is in error for some reason, or the cause is later fixed (like moving to 80 conductor cable with real IDE, etc.)

https://learn.microsoft.com/en-us/answers/que … uck-in-pio-mode

Related issue that affects the whole system is the 'noide' and 'badide' flags in the registry, if present. Since at least the master port remains able to do DMA, that suggests its the checksum test that has triggered, and flagged the channel as being unreliable for DMA, for whatever reason.

In addition to the "Number of failed reads" stored in the keys cited by the article, there is also a key in there that sets the speed directly,

Reply 6 of 6, by nfraser01

User metadata
Rank Member
Rank
Member

What a great thread!