DMA on really old Pentium III computer

Y

Yousuf Khan

Just installed XP on a really old computer, which was previously running
Windows ME (yes, we're really pushing towards cutting edge here). It's
being done for a friend who wants to keep making use of an older
computer. It's a P3-500Mhz, which I would guess is a machine from circa
1998/1999. It's one of those machines that doesn't shutdown
automatically, but displays a message saying "It's okay to turn off
power now", which I would guess means that it's not ACPI-compliant.

Anyways, needless to say it's a slow machine, and one of the things I
tried to do to speed it up a bit was to enable DMA mode on it. The "DMA
if available" option was already selected on the controllers, but the
current mode was set to PIO. I found a good description of how to get
the drivers to redetect the drives:

DMA reverts to PIO | Windows Problem Solver
http://winhlp.com/node/10

It basically tells you how to remove a couple of registry keys and
reboot to get it redetected. Did that, but it remained at PIO mode
afterwards. I was hoping to at least get "multi-word DMA" enabled on
this system, if not full UDMA. But it looks like this system is pre-DMA,
which surprised me a bit. I thought at least by the P3-era things were
at least DMA. I think I've had DMA available on Socket 7 Pentium/K6
systems, which must've predated these things.

Yousuf Khan
 
R

Rod Speed

Yousuf said:
Just installed XP on a really old computer, which was previously running Windows ME (yes, we're really pushing towards
cutting edge here).

Hope you superglued your sox on.
It's being done for a friend who wants to keep making use of an older computer. It's a P3-500Mhz, which I would guess
is a machine from circa 1998/1999. It's one of those machines that doesn't shutdown
automatically, but displays a message saying "It's okay to turn off
power now", which I would guess means that it's not ACPI-compliant.

Its more complicated than that last.
Anyways, needless to say it's a slow machine, and one of the things I tried to do to speed it up a bit was to enable
DMA mode on it.

That should happen automatically and does make a dramatic difference.
The "DMA if available" option was already selected on the controllers, but the current mode was set to PIO. I found a
good description of how to get the drivers to redetect the drives:
DMA reverts to PIO | Windows Problem Solver
http://winhlp.com/node/10
It basically tells you how to remove a couple of registry keys and reboot to get it redetected. Did that, but it
remained at PIO mode afterwards.

That may well be because the problem that causes it to turn
DMA off is still there. That can be as basic as a bad cable.
I was hoping to at least get "multi-word DMA" enabled on this system, if not full UDMA. But it looks like this system
is pre-DMA,

No it isnt. It may well not have a lot of control over
the DMA in the bios but it will certainly support DMA.
which surprised me a bit. I thought at least by the P3-era things were at least DMA.

Yes, and P2s too.
I think I've had DMA available on Socket 7 Pentium/K6 systems,
Yes.

which must've predated these things.

Yes.
 
F

Franc Zabkar

Anyways, needless to say it's a slow machine, and one of the things I
tried to do to speed it up a bit was to enable DMA mode on it.

See this MS tech note:
http://support.microsoft.com/kb/159560

Try the Debug procedure with a DOS/Win9x boot diskette.

The above procedure tests for Multiword DMA mode capability. To test
for UDMA modes, change the 1F2 or 172 values to 4x, where x=0,1,2...

See section 7.48.5 (Set transfer mode) of the following document.

Working Draft AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS):
http://www.t13.org/Documents/UploadedDocuments/docs2008/D1699r6a-ATA8-ACS.pdf

- Franc Zabkar
 
Y

Yousuf Khan

Franc said:
See this MS tech note:
http://support.microsoft.com/kb/159560

Try the Debug procedure with a DOS/Win9x boot diskette.

Well, I don't think they have any DOS or Win9x boot diskettes anymore.
It's just Windows XP now.

I should be able to see the same disk error messages on the XP error
log, though shouldn't I?
The above procedure tests for Multiword DMA mode capability. To test
for UDMA modes, change the 1F2 or 172 values to 4x, where x=0,1,2...

Yeah, I remember using this technique back in the Win 9x days on my own
machines.

However, the method for doing the same tests under XP and later
(probably from NT onwards), has changed to this registry-based system.
If one of the DMA modes were available, then it would've displayed it in
the driver properties itself, including which DMA mode was selected.

Yousuf Khan
 
C

calypso

Well, I don't think they have any DOS or Win9x boot diskettes anymore.
It's just Windows XP now.
I should be able to see the same disk error messages on the XP error
log, though shouldn't I?

You should delete primary and secondary controller channels from Device
manager and reboot that computer... It should then detect primary and
secondary controller channel and reinstall it, also discover drives attached
to it...

Procedure goes like this:

Delete controller channel (primary or secondary) on which the boot drive is
_NOT_ connected... Go to device manager and scan for changes... It should
detect that deleted controller channel...

Delete the controller channel on which the boot drive _IS_ connected...
Reboot...

If it fails during boot, just connect drive to the other channel of the
controller and reboot... XP should boot now, and detect the other controller
channel...

Turn off machine and connect the boot drive to the original channel and boot
again...

That should work and the drives should be detected as UDMA capable...


BTW., WinXP has a feature/bug that after 5 retransmissions on the same IDE
channel, they put the drive in PIO mode... :(


--
U kabrioletu planinara bombardira zdrav papagaju nabiju
satima. By runf

Damir Lukic, calypso@_MAKNIOVO_fly.srk.fer.hr
http://inovator.blog.hr
http://calypso-innovations.blogspot.com/
 
R

Rod Speed

Yousuf Khan wrote
Franc Zabkar wrote
Well, I don't think they have any DOS or Win9x boot diskettes anymore.

bootdisk.com does.
It's just Windows XP now.
Nope.

I should be able to see the same disk error messages on the XP error log, though shouldn't I?

Not the same ones, different ones.
Yeah, I remember using this technique back in the Win 9x days on my own machines.
However, the method for doing the same tests under XP and later
(probably from NT onwards), has changed to this registry-based system.

Thats why you use a dos boot disk.
If one of the DMA modes were available, then it would've displayed it
in the driver properties itself, including which DMA mode was selected.

Not if it decides that its getting errors and turns it off.
 
B

bbbl67

You should delete primary and secondary controller channels from Device
manager and reboot that computer... It should then detect primary and
secondary controller channel and reinstall it, also discover drives attached
to it...

That should be unnecessary, all it really requires is a couple of keys
to be removed from the registry which will allow the capabilities to
be redetected during the next reboot. The keys are
MasterIdDataChecksum & SlaveIdDataChecksum which are in subfolders
under the the following hierarchy:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-
E325-11CE-BFC1-08002BE10318}
BTW., WinXP has a feature/bug that after 5 retransmissions on the same IDE
channel, they put the drive in PIO mode... :(

Yeah, I know that's why I deleted those registry entries. If the
machine was capable of operating in DMA mode, then it would have come
up in DMA mode during the next reboot, but it didn't.

Yousuf Khan
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top