DMA reverts to PIO

Wed, 2007-07-11 08:30 by admin · Forum/category:

The stuttering DVD drive or the lame hard disk

Table of contents

for this article

Quick solution

This is the recommended solution. If you're not interested in the details, but just want to fix this problem as quickly as possible:

  1. Click here.
  2. Despite any warnings click on the [Open] or [Execute] buttons as required to execute the file resetdma.vbs. (If you fear that this web site could be malevolent, you can use the manual method instead, which is described below. Or you could download, save, and inspect the program with an editor like the Windows Notepad. It is a script text file.)
  3. If the program found any ATA channel to reset, reboot your computer and test all drives.
  4. If the problem is still not solved, set the offending channel to PIO manually, reboot your computer, set the channel back to DMA, and reboot again.
  5. Please report your results here. Thanks!

Please note that this works only with the Windows drivers. If your device had its own manufacturer's drivers installed, this program cannot fix the problem and will not do anything to them. Instead it will report that no resettable DMA channels were found.

Note also that many CD and DVD drives only use UDMA-2, because their data rate is much lower than that of a hard disk. This is normal and no reason to worry.

If you are interested in the details, read on.

The program tries to reenable DMA in the registry exactly as described below, for all suitable ATA channels. Windows then redetects the DMA status after the next reboot.

If you use the program again after a short while, it may again report that it has reset the channels. This is normal behavior and not a sign of any problem.

General description

This article also applies to Windows 2000. (Peter Frank reported successful application on Windows 2000 with Service Pack 4.)

DMA is an abbreviation for Direct Memory Access, an access method for external devices where the data transfer is not done by the central processor, but by a small special processor called DMA controller. It uses a procedure called cycle stealing, where the central processor memory access cycles are delayed for very short times to intersperse DMA controller memory access cycles. Some newer, faster DMA modes are called UDMA (Ultra DMA).

The alternative, slow and inefficient data transfer mode is called PIO, Programmed Input-Output, where the central processor transfers data byte for byte or word for word. This requires many processor commands for each data word and therefore causes a high and unwanted processor load.

A typical symptom of PIO mode is slow data transfer, accompanied by high processor load, leading, for example, to a choppy video display.

Possible causes for falling back to PIO mode

The most frequent use why a CD or DVD port falls back to PIO mode is a scratched or otherwise unreadable CD or DVD. For example, some newer DVDs, initially from Sony, carry a copy protection scheme that relies on defective sectors. If you try, without using special software, to copy such a DVD (which doesn't work), then this can already trigger the problem.

However, there are a few reasons why a computer may use PIO instead of DMA, particularly when it's the hard disk port that falls back, not a CD/DVD drive port. For example, David Duberman reported in 2005 that some Dell computers have DMA disabled in their BIOS by default for the second hard disk. So it is a good idea to check the BIOS settings first.

2007-05-13 – Jason Paquette confirmed that the BIOS setting in his Dell computer was wrong too and prevented DMA mode. Correcting the BIOS setting immediately enabled the DMA mode.

A not so rare hardware problem is a bad or too long IDE data cable. You need 80-way cables, not the older ones with only 40 wires. With poor cables the device may work, but Windows will probably step down to lower DMA speeds or even to PIO.

A further cause may be waking from standby mode, if one of the involved components does not perform this process correctly.

2007-02-20 – Stefan Welte wrote that on an Elitegroupsystems K7S5A computer all IDE hard disks ran in PIO mode, because automatic device recognition was disabled in the BIOS. (The computer booted from a SCSI disk.) Enabling device recognition solved the problem without any further measures.

2009-06-27 – markvm confirmed again that the BIOS in a Dell computer prevented DMA mode. Please see his comment below. In his case a hard disk was not recognized by the BIOS. After enabling and starting the automatic recognition, everything fell into place nicely, and DMA was automatically enabled by Windows.

2009-11-19 – flemur13013 mentioned again in this comment that setting the disk recognition to "Auto" in the BIOS settings solved his problem of a slow, CPU-gobbling secondary hard disk.

Occasionally a chip set or controller driver is buggy, so check with the manufacturer for updates.

2007-03-01 – Francois Eraud reports one such case in a Sony laptop, regarding an ALI M5229 chip set controller, solved with driver version 4.008.

2008-03-30 – Arran located the elusive drivers for this ALI M5229 controller chip. Please read his comment For those with the ALi M5229 IDE Controller in the comments on one of the next pages.

Other reasons can show up in the event log, so check this first and see if you can find repeated Atapi errors recorded. If so, you likely have a hardware defect. You can use the procedures described on this page, but your computer will probably fall back to PIO mode again and again, until you solve the underlying problem, which may be located inside the device, on the motherboard, or in the IDE data cable and its connectors.

A dramatic example was reported on 2006-12-29 by David Hähningen:

If you (half asleep in the dark and with considerable force) try to put the ATA plug on the hard disk the wrong way around, the gap called "KEYPIN" (pin 20 on the plug) pushes pin 21 of the hard disk socket and bends it aside. (This pin is responsible for DMA requests of the hard disk.)

As the disk can no longer reach the host with its requests, there is a communications problem, and Windows XP switches into PIO mode. A blessing in disguise: You can still save the data, though slower than usual. ;)

Few will succeed in repairing the disk. Just pulling the pin straight may not quite cut it, as the connection to the printed circuit board is probably broken.

2007-02-07 – Carl Kaufmann wrote that he looked for a solution for a computer with an Intel chip set and found the Intel(R) Application Accelerator. As instructed, he first installed the Intel Chip Set Installation Utility, which already solved the problem (as observed in Task Manager). He went on anyway to install the accelerator. After that there was no longer any DMA/PIO choice in the controller options, but everything now works right automatically.

2007-05-15 – John Schumacher confirms:

I thought I was having this problem, but that isn't the case. My BIOS listed Ultra DMA as being disabled on all my drives. I looked for the Advanced Settings tabs for the IDE channels in Device Manager, but the tabs were no longer there. I ran Nero InfoTool, which confusingly listed DMA on for primary and secondary masters, but off for primary and secondary slaves. After doing some more searching, I found out that the Intel Application Accelerator I recently installed is the culprit. Running Intel Application Accelerator confirmed that everything was OK.

The Intel Application Accelerator can also have a quite adverse effect when it is run on an unsuitable processor. If in doubt, uninstall it and retest. (See the comment, Intel Application Accelerator by dkneyle = Ausie Davo.)

The trap

Windows contains a trap in which quite a few computers seem to get caught sooner or later. The trap was described in a Web article whose link no longer works (and also in another one mentioned below):

The crucial paragraphs are:

PIO mode is enabled by default in the following situations:
...
For repeated DMA errors. Windows XP will turn off DMA mode for a device after encountering certain errors during data transfer operations. If more that six DMA transfer timeouts occur, Windows will turn off DMA and use only PIO mode on that device.

In this case, the user cannot turn on DMA for this device. The only option for the user who wants to enable DMA mode is to uninstall and reinstall the device.

Windows XP downgrades the Ultra DMA transfer mode after receiving more than six CRC errors. Whenever possible, the operating system will step down one UDMA mode at a time (from UDMA mode 4 to UDMA mode 3, and so on).
...

Of course, drive firmware being quite complex and certainly containing programming defects of its own, it is not all that difficult to produce such errors. In my case a scratched DVD and later also an unreadable (overburned) CD did the trick, got the drive to choke and Windows to disable DMA for good. Later my hard disk hiccupped just once and also went back to PIO for good.

I had been using my laptop for DVD viewing for years, until I inserted a borrowed and heavily scratched DVD. The player and apparently even the DVD drive choked on it, and when I finally got the DVD to play, I found that playing was jerky and processor load was 100%, roughly half of which was system overhead.

This indicated that the drive had reverted from the usual UDMA (Ultra Direct Memory Access) mode 2 to PIO (Programmed Input Output) mode. No amount of resetting or changing the relevant registry parameters from 1 (try DMA) to 2 (force DMA) helped. Stubbornly the drive kept using PIO mode, and Windows even changed these settings back to 0 (use PIO only).

The following text will refer to the secondary IDE port because that is more often affected, but essentially the same also holds for the primary IDE port, to which the main hard disk is connected in most computers.

Before you begin to work on the problem, log on as Administrator or as a user with administrator rights.

Check Your IDE Port Mode

First check what mode your secondary IDE port is currently working in. Go to Device Manager: right-click on My Computer, select Properties, click on the Hardware tag, click on the Device Manager button, click on the plus sign to the left of IDE ATA/ATAPI Controller, double-click on the secondary IDE channel, click on Extended Settings and check whether it is set to DMA when available. Directly underneath that setting is a grey field that shows the actual working mode of your IDE channel. You want the highest possible DMA or Ultra DMA mode there, and you definitely don't want PIO mode.

If the Extended Settings tab is not there, perhaps another driver is used, probably from the manufacturer of the IDE ATAPI controller. You can still perform a simple test. In the Task Manager activate the option View, Show kernel times. Then put a high load on the device, for example by copying a large file, and check whether the kernel times are minimal (red line). If you observe considerable kernel times, roughly around half of the total load, then the device is running in PIO mode, which is bad. The whole purpose of the DMA mode is to relieve the processor (in kernel mode) of this load.

Assuming the Microsoft IDE ATAPI driver, normally you don't have to use the registry editor, because the normal settings are also available through the properties dialog for the IDE port, but if you want to look at it anyway, the parameter for the secondary IDE port can be found through regedit.exe at

HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\Scsi\Scsi Port 1

It is named Scsi only for historic reasons. Scsi Port 0 is the primary IDE port, to which presumably your hard disk is connected.

After trying various remedies—in vain—I found the abovementioned article and went to work again. I uninstalled the DVD drive in Device Manager and rebooted, but that did not help either.

So I searched for more and better information, then I went on and did the following.

Re-enable DMA using the Registry Editor

This chapter describes the manual way to do what the quick solution at the top of this page does automatically through a script program. If you're not interested in the details, you can back up to the chapter "Quick solution" above and run the script.

My thanks go to my fellow MVP Alexander Grigoriev who taught me this method.

Run REGEDIT. Go to the following key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}

It has subkeys like 0000, 0001, 0002, etc. Normally 0001 is the primary IDE channel, 0002 the secondary, but other numbers can occur under certain circumstances. You have to go through these subkeys and check the DriverDesc value until you find the proper IDE channel.

Delete MasterIdDataChecksum or SlaveIdDataChecksum, depending on whether the device in question is attached as master or slave, but it can't actually hurt to delete both. Reboot. The drive DMA capabilities will be redetected.

Note that many CD and DVD drives only use UDMA-2, because their data rate is much lower than that of a hard disk. This is normal and no reason to worry.

2006-01-19 – Horst Schülke wrote that it is sufficient to empty the content of these values. But you can also delete the values entirely. Windows will automatically recreate them anyway, with new content.

Open Device Manager again and check whether the device is now actually using DMA mode. If so, congratulations, you've made it (at least until the next time Windows disables DMA). If not, you may have to change the IDE channel setting from PIO back to the highest available DMA mode and reboot again.

Many thanks to Tomáš Souček, Peter Götz, Alex Vaillant, and Cory Culbertson for piecing together the following information:

There are three keys that work together:

MasterDeviceTimingMode
MasterDeviceTimingModeAllowed
UserMasterDeviceTimingModeAllowed

Each bit in these values means a transfer mode that the device may or may not be capable of. Somewhere at MS some of these bits can be looked up.

MasterDeviceTimingMode:

This is the actual mode the device is running at.

MasterDeviceTimingModeAllowed:

This entry may be the problem child. Peter wrote: "Normally not present in XP, it is created as a reaction to errors. This entry has absolute priority." However, there are doubts whether this is the absolute truth. It is still not entirely clear where this entry comes from. Erasing it or setting it to a DWORD value of 0xFFFFFFFF, rebooting, re-enabling DMA mode, and rebooting again seems to have solved the problem in some cases.

UserMasterDeviceTimingModeAllowed:

This entry contains the user's setting, manually entered in the advanced device properties. Has the same structure as MasterDeviceTimingMode. This entry appears when the user sets a limited mode manually, such as PIO only.

Another key that seems to create the problem is MasterIdDataChecksum.

All these parameters also exist for the slave drive as SlaveDeviceTimingMode, etc.

More information is needed. If you know anything, please click on Add new comment at the end of this article and write it down.

Alternative Method—Uninstalling the Port

1. Uninstall the secondary IDE port

Attention: Do this only if you use the Microsoft IDE driver that comes with Windows or if you have the driver on hand, because otherwise you may find yourself unable to reinstall the proper driver.

To uninstall the port along with its driver, open Device Manager as follows. Right-click on My Computer, select Properties, click on the Hardware tag, click on the Device Manager button, click on the plus sign to the left of IDE ATA/ATAPI Controller, right-click on Secondary IDE Channel, click on Uninstall. Deactivating is not enough.

Reboot to make the changes active and permanent.

After booting Windows will automatically reinstall the IDE channel and the DVD (or CD) drive. This Plug-n-Play process can take a little while, so give it a minute after the boot process finishes.

2. Check or reactivate DMA

But this may not always be not enough, because unfortunately Windows does not always automatically activate DMA on a DVD or CD drive. You have to check and, if necessary, tell Windows to try to use DMA first. It is possible that Windows XP with Service Pack 2 re-enables DMA automatically on reboot, but I have not tested this yet.

To re-enable DMA, go to Device Manager again. Right-click on My Computer, select Properties, click on the Hardware tag, click on the Device Manager button, click on the plus sign to the left of IDE ATA/ATAPI Controller, double-click on the secondary IDE channel, click on Extended Settings and change the relevant setting from PIO only to DMA when available.

On Windows NT and 2000 you now have to reboot a second time, but Windows XP applies the change instantly. Then you can go to the same place in Device Manager again and check whether the device is now actually using DMA mode. If so, all is well.

Note that many CD and DVD drives only use UDMA-2, because their data rate is much lower than that of a hard disk. This is normal and no reason to worry.

3. Driver is not intended for this platform

If you keep getting the following error message, please read on:

There is a problem installing this hardware.

IDE channel

An error occurred during the installation of the device. Driver is not intended for this platform.

2005-03-30 – Johannes B. wrote: The reason for this error is often that Daemon Tools or Alcohol 120% are installed. In this case the solution described below would not work. But when you uninstall these programs and then restart Windows, it will then install the device drivers without any further problems.

If these programs are not installed, then one possible way out is to rename C:\WINDOWS\system32\drivers\atapi.sys (or a similar path on your computer) to something like atapi.old.

If that's not possible, you can try it from the repair console (boot from the Windows install CD and select the repair console).

If Windows always automatically recreates atapi.sys, you can try renaming it in safe mode or from a command line window or you can try to rename or remove it in the driver cache as well.

Desensitize Your Computer's IDE Channels

There's a bit more to it. The following article offers a way to reduce the incidence of this problem, although it still doesn't solve it altogether.

IDE ATA and ATAPI Disks Use PIO Mode After Multiple Time-Out or CRC Errors Occur
http://support.microsoft.com/kb/817472/

Do read this article because it contains a useful long-term workaround. But you have to go through the procedure described here to re-enable DMA first.

Assuming you've done that, insert the ResetErrorCountersOnSuccess registry values mentioned in this article into both the primary and the secondary IDE port registry keys as described.

Unfortunately this is only a half solution, because when you enter an unreadable DVD, you will get 6 errors in a row, and the IDE channel will revert to PIO mode, but at least when you pull out the DVD in time and then insert a good one, the error counter will be reset and it will at least be a bit more difficult for Windows to hobble your IDE drive.

A little warning: One user reported that by mistakenly putting the value into the parent key, rather than into one of the 0000, 0001, 0002, etc., subkeys, he was accused by Microsoft's Genuine Advantage check of using a pirated copy of Windows and therefore denied online updates.

Emails

Useful info on re-enabling DMA. No more jerky video from primary slave! Thank you

Thank you for a very helpful article. After applying your fix I saw a 10x speed improvement!

Don't mention it!!! After months of trouble-free operation, DVD playback suddenly started to crap out on me, and your site was the only one I could find that remedied this problem. I had been trying to fix it for several weeks when I found it, and boy was I happy. I'm the one who needs to thank *you*!!! Thank you!!! :)

Thank you for the great page on DMA/PIO issues. I had a problem caused by Daemon tools that you covered on your page. Without your work I might never have solved this problem. I intend on donating again after my next paycheck.

You ROCK! Your write-up on Windows setting DMA back to PIO saved me. I was about to take a 12 gauge to my computer. My DVD player wouldn't work for SHIT (stuttering, dropping frames, etc.). I uninstalled my secondary IDE controller, re-booted, & problem solved. THANKS!

Your DMA reverts to PIO page relieved me from horrible sound stututustuttuttering. [...] Hard disk went from PIO mode back to Ultra DMA mode 5 when I uninstalled primary IDE channel in device manager and XP reinstalled it. Thanks.

I love you...
no i don't—but I'm really greatfull that you published this site [...] as I was quite desperate and 24 hours mentally down because my harddisk only managed 2,2 MB/sec (now, thanks to you: 66,2)
best wishes!

Wonderful Dude,
I just want you to know that your posts on how to fix choppy DVD players saved my butt tonight. I love the fact that I can go and search for an answer on the internet, and a good soul such as yourself will have taken the time to post such a clear and excellent series of solutions. [...]
THANK YOU THANK YOU THANK YOU!

I just wanted to thank you for the information [on this page]. After noticing that my laptop's CD/DVD drive started exhibiting the dreaded "choppy playback" from nowhere (probably caused by trying to read a poorly burned homework assignment handed out by one of my professors a dozen times) I found your advice after a quick search on how to correct the problem. After a few minutes of reading, using the provided script, and rebooting, my drive successfully reverted back to DMA mode from PIO.
Just wanted to give my thanks and have myself counted among the satisfied visitors who were able to fix the issue without any problems. I especially appreciated the down-to-earth explanations for and solution to the playback choppiness. CDs/DVDs play like a dream again, and that really makes my day.

I also wanted to thank you. I almost despaired. For no discernible reason all movies from my DVD drive became jerky. Cleaning the registry and scanning for viruses were also unsuccessful. I was already resigned to the thought of returning the laptop to the manufacturer, because I thought the drive was broken. Luckily there is the Internet and dedicated people like you, who help with good tips.
Many thanks for your work; the article is truly excellent. You're my savior, unthinkable now that I had almost reinstalled the computer.
I hope that many, who have the same problem, find your article.

Thank you very much for your online help to my DMA problem (DMA reverts to PIO). I had been banging my head against the wall for a few weeks before I found your site. The .vbs program worked perfectly to fix my infuriating iTunes & audio distortion problems. For this, I have donated $10 to your site.

Comments, discussion

To add a comment, you have to have an account and be logged on. If you don't have an account yet, please click on: Create new account

AttachmentSize
Typical symptom: PIO mode (see comment 761). JPG image30.33 KB
Average: 3.9 (212 votes)

DMA to PIO

Thu, 2010-02-04 13:46 by capal4321

Thanks for the solution. I could reset the transfer mode to DMA but when I reboot, it reverts to PIO. The DVD drive is a TSSTcorp CDDVDW SH S222A.
I had 2 dvd writers and both were having the same problem and I have tried changing the ide cable (did not make a difference).

It is always the Secondary IDE Channel.
Motherboard is EVGA GeForce 9300 Series
CPU Intel Core 2 2800 MHz
Bios Phoenix 6.00 PG

I am lost as to what to do. Any ideas.
Thanks,
Michael

Which drivers?

Thu, 2010-02-04 17:41 by admin

Are the drivers those that came with Windows or does this motherboard require third-party IDE drivers?

The most likely explanation, if you already swapped the cable and the drive, is that the controller or something related on the motherboard is defective.

An emergency solution would be to connect the DVD drive to the primary IDE channel, along with the hard disk. That is not ideal, but should work reasonably well.

Of course there is also a small risk that both cables or both drives were defective.

revert to pio

Mon, 2010-02-08 12:53 by capal4321

Thanks for reply.
The drivers are from windows. I am not sure if the motherboard require third party ide drivers. I have tried, swapping cables, drives and even reducing my hard disks from 2 to one hard disk.
I actually have the following:

2 primary ide channels
2 secondary ide channels
2 standard dual channel PCI ide controller

The problem occurs on the 2nd secondary ide channels.
The primary ide channels, I believe are related to the sata connections.

I connected a blu-ray drive (external through usb) and that seems to work fine without cranking up the cpu / interrupts.

I believe the drives and the cable are okay., maybe it is the ide port on the motherboard. There is already another fault on the mobo, ie, the cpu fan does not work when connected to the fan port for the cpu.

Thanks again for your help.

Dvd running slow using up all CPU ,SIMILAR TO recent fix

Thu, 2010-02-04 18:07 by BassPlayer2112

I will try doing what you told someone else to do , the real problem i have is even mor than that , whenever i use U-Torrent or watch a you tube flick , sometimes my PC will just restart itself without warning , it just shuts down, i used a duster & cleaned out my insides & checked all connections & i still have these problems , ran malaware ,registry cleaners ,,virus scan , u name it , no luck , i can say though this started after updating WiNdows TO PACK ((I THINK sp3)) ,,

I guess my DVD drive writer issue which makes using the PC impossible & also takes 1.25 hrs to burn 2gb to dvd , my dvd drive was on average burning at 18-22x .

Any suggestions would be highly appreciated & if u like music ,, i have about 5000 shows of all bands from Barry Manilow to Rush ,Mettalica,Zep ,u name it ,, i'd be more than happy to invite u into my server to download any show u wish , i just want the PC working normal again,,

thank u for your time
John in North NJ

Dell BIOS -- remote access

Wed, 2010-02-03 13:54 by JoeGrant

This article has been tremendously helpful. It deals with exactly the problem I have: a second hard-drive installed in a Dell Optiplex GX260 which is running in PIO mode. I am very grateful to winhlp.com, and to Google who got me here.

But of course, I am greedy: I want more.

I support the computer in question via remote control ( I use pcAnywhere 11.5, the computer runs Windows XP Pro ). So I can only work on the computer while Windows is running.

Does anyone know of any clever piece of Windows software that can display the content of the (Phoenix, 04/28/03) BIOS, take note of changes to be made, and somehow record those changes so that they will be applied when the computer is shut down and restarted? I don't really believe that it is possible. But there are lots of people doing impossible things out there.

Having the problem

Wed, 2010-02-03 02:39 by igmuska

IDE #1 ERROR upon cold boot

I've been suffering this problem for months now. Then recently I found this site and applied the vbs script last night. And it worked, I could watch a movie without the stutter, and even burned a DVD. Then I restarted my laptop again and back to the sad state, PIO Mode Only in the secondary IDE controller.
I tried the script again, no success, I tried the recommendations in the article, no success...Toshiba tech support said that I should reinstall WinXP from their OEM disk. But I told him without the CD/DVD, that would be impossible. He replied Press C upon cold boot, that forces the laptop to use CD/DVD???
Info:
Toshiba Tecra M3
Matshita DVD-RAM UJ-830S

Awesome!

Sun, 2010-01-31 17:54 by smogo

Another satisfied "customer"...!

The Quick Solution totally rules. Not only did it fix the audio stutter, but it sorted out all the other WinXP slowness problems I'd suddenly become plagued with. I'm not sure what caused the fallback to PIO in the first place... it was very possibly when Windows Installer failed on repeated occasions, when I was trying to install MS Office Live Meeting.

THANK YOU!!!!!

hippochips's picture

Success!

Sun, 2010-01-24 06:39 by hippochips

My Windows XP loading bar screen went from 3:50 minutes to 16 seconds...no exaggeration. Prior to this, I had run dozens of hard drive scans, malware programs, virus scans, etc. I reformatted all three of my hard drives (backing up first of course). I'd tried not using AHCI and didn't use my RAID configuration this time (and did not install the Intel Application Accelerator). Nevertheless, the problem came back 1 month later. People gave me advice: you have a virus, you don't have enough RAM, you need to clean up your startup folder, your hard drive is corrupted, check your mouse, maybe its your audio card...but I just knew all of these were wrong. I was literally about to buy a new computer before I came upon this post. I figured I'd give it a try. I don't know who you are or how you figured this out, but I'm another grateful person you helped. Thanks.

Glad to hear

Sun, 2010-01-24 17:21 by admin

I'm admin or Hans, but some other people contributed important findings to this solution. I wrote the quick fix program.

I created and operate this web site. It is pretty much a one-man show.

Fixed, maybe for good. My story.

Thu, 2010-01-21 01:36 by Nuwanda

I scratched a disc, inserted it, and it failed to initialise.

As expected , my secondary IDE channel had been set back to PIO. I uninstalled that channel, rebooted, and reset the channel to DMA. Back to normal.

I applied the fix as outlined in step 8 of the article. Since I've got XP-SP3 I didn't need to download and install the hotfix, I just made the registry edit.

I tried the same scratched disc again. No reset to PIO.

So, I ejected and reinserted the disc a total of 7 times, checking the mode after each time. It remained on DMA.

So, this must be a permanent fix?? I was under the impression that 6 *consecutive* read failures would cause it to drop back to PIO even after the fix. But no, all seems fine.

Consecutive

Thu, 2010-01-21 21:36 by admin

My assumption is that with the sensitivity fix, as soon as the drive manages to read just one sector properly, the counter is reset.

I don't know exactly how that works, but perhaps the driver does not try to read the same defective sector six times in succession, but goes to the next sector instead.

Another point is that CDs and DVDs use forward error correction (deliberate redundancy in the data), so even a scratched sector has a chance to be read correctly.

Fixed slow HDD problems caused by XP SP3 upgrade

Wed, 2010-01-20 03:58 by oldcorollas

After updating to XP SP3, internal drive and internal to external drive file copying became stupidly slow.. roughly 10mins/gig. Did all the tweaks i could find, and made things better, but file save and transfer still stupidly slow.
other symptoms were slow image updating after resize in Paint shop pro, and odd mouse problem where cursor would have a tiny glitch every second when moving. nothing untoward was found using system explorer etc. Boot time was also much slower than previously and seemed to hang badly. optimized with bootvis but still stupidly slow.
also, sound was glitchy.. during the initial fanfare when booting, and also when trying to use say, vid or skype while doing anything else....

Device manager indicated that NONE of the drives had been demoted to PIO, but the symptoms were all there. RAM was 1.5gigfree, and minimal paging file..
set to PIO, reboot, set back, still crap.
uninstalled SP3 and STILL crap (>-<)

ran resetdma.vbs and suddenly boot time was back to normal, file transfer was back to the usual 1gig/min, both internall and externally.. sound perfect, cursor no longer glitching

THANK YOU SO MUCH for fixing microsofts shittiness!!!!!!!!!!!!
(^-^)

Great

Wed, 2010-01-20 07:37 by admin

Interesting that Device Manager did not show PIO mode. Normally it shows that. One more irritation to be aware of.

PIO was not reported..

Wed, 2010-01-20 08:36 by oldcorollas

yup, I had checked early on and it was definitely not in PIO mode, so had dismissed it until finding this page!
after runnign the script, the config in device manager has not changed, but the drive is 100% happier!

I think perhaps this could be one of the big reasons many people report SP3 slowing their "system" and increased boot times.....
thanks again :)

Problem was always there

Wed, 2010-01-20 18:44 by admin

Generally the PIO problem has always been there, at least in Windows XP, not only since Service Pack 3.

I don't know whether SP3 introduced the misreporting of the DMA/PIO state.

It solved my issues with DVD DL Burning

Wed, 2010-01-13 21:26 by SliceA1A

My DVD DL Burner was running on PIO despite my best efforts to turn it to DMA but after running your script it solved the problem! Before DL burning was choppy and often failed, now it's smooth and successful! Thank you!

This Fixed an Audio Streaming Issue I Was Having!!! :-)

Mon, 2010-01-11 23:35 by Snowsharkeus

I was having some serious stuttering, slowing, skipping, and popping issues when streaming music through Winamp, Rhapsody, and even Windows Media Player. I spent quite a bit of time over several weeks periodically Google-searching for a solution. Finally found this link (http://hothardware.com/cs/forums/t/31197.aspx) on hothardware.com. It included a link to this forum, and I tried the Quick Solution at the top. It worked!! I don't know why it worked, but it worked, and I ame extremely happy!! I've been streaming music for the past 48 hours without any issues whatsoever! Thank you very much!!!! :-)

Good to hear

Tue, 2010-01-12 20:00 by admin

Thanks for reporting! Yes, the little "quick solution" helper can be a godsend.

Simply spoken, it erases accumulated bad information from Microsoft's drivers' registry. It doesn't help with other drivers, but it doesn't do any harm.

Revert back to PIO

Thu, 2010-01-07 15:07 by passegua

I used the VBS script and the hard disk started working faster.
But when I reboot I find it again slow using again PIO.
How could I I fix permanently the DMA mode ?
Thanks.
I use Windows XP SP3 on a HP pavilion DV6000

Read before you write

Thu, 2010-01-07 17:56 by admin

CRDOM in PIO mode

Mon, 2009-12-28 15:36 by jwlabno

Well, in my case it was PIO

Problem: DVDs started burning slower (16 to 20 minutes instead of around 10) and over time increasing to 1.5hr!

Other symptoms: Jerky mouse, laptop heating up, and fan running at top speed, nothing could run against Nero, buffer constantly jumping between 20% and a 100%

Solution: Checked both primary and secondary IDE as described above. Found secondary in PIO. Unnecessarily, but confirmed through BIOS (F2 on bootup) that DVD is indeed on secondary IDE. Using standard microsoft driver - so removed secondary IDE and restarted the system. Driver loaded itself and burning back at 8-10min, whoa.

Cause: Several bad dvd's aborted half way through reading. I had some bad scratched dvd's i wanted to re-burn and a few times I ran out of patience when the drive got stuck and turned off the laptop. I also had a couple of abortedf burns - in similar fashion (I am not a very patient man). The place I buy my dvds advised that they had a batch of bad media, the dvd's were not working at all or getting stuck after burning process started. A few of those reboots over the top slowed the drive and having no idea (until this post), with buffer constantly running down to 20% and back up to 100% I thought it was something in my system. I cleaned the lens, cleaned the hd, defragged, cleaned memory and startup programs. Nothing worked - until i read this post about PIO. So thank you for excellent help.

Thanks for reporting

Mon, 2009-12-28 22:50 by admin

This is probably the most typical case of the problem.

I'm beginning to wonder why so few people seem to use the quick solution above. That takes only four mouse clicks, i.e. a few seconds, to fix the computer, plus a reboot.

Slow SATA HD (seen as IDE) and drive change - my experience

Sun, 2009-12-13 13:14 by DaveDave

I have a pair of SATA hard drives that Windows displays as IDEs (no RAID or AHCI drivers).

One drive was bad sectoring and that one was showing the PIO mode. And using say Atto's Bench32 confirmed slow access (6 - 7 MBytes/Sec vs up to 100MBytes at the drive edge).

I manually added the ResetErrorCountersOnSuccess registry value (as per MS Article ID: 817472), more as a future belt-and-braces fix, not sure if it contributed to the problem going away when ...

I cloned the old drive too a new one (different make, Windows detected new hardware after startup) and after Windows (XP) had finished the install I found that the DMA mode was now selected; I didn't change any other registry settings or manually uninstall the drivers etc.

It would be useful to have a background utility that ocasionally checks the drive speed!

SATA seen as IDE

Sun, 2009-12-13 17:20 by admin

Thanks for reporting!

I wasn't aware of this. My main computer has a SATA controller in its NVIDIA nForce4 chip set, and so I have a separate SATA controller user interface in Device Manager, where I can, among other things, enable and disable Native Command Queueing (NCQ).

The motherboard also has two genuine IDE ports, which show up as usual in Device Manager.

Does anybody else know more about SATA disks showing up as IDE disks in Device Manager? SATA is an enhanced version of ATA, so there is some similarity.

Step # 6 (Re-enable DMA using the Registry Editor) worked for me

Sat, 2009-12-05 12:41 by Rondon

Thanks! After reinstalling the Intel chipset drivers on my lappie I finally was able to go UDMA using step #6.

Windows XP DMA reverts to PIO

Sun, 2009-11-29 07:49 by Harree

I tried heaps of the above suggestions and the only thing that works for Windows XP is to uninstall the drive , then reboot.
Windows will reinstall the drive on start up. It will advise you of the installation and ask you to reboot again to complete the installation. When restarted you will find your drive in DMA mode. Till next time.

Secondary slave device 1 current transfer mode says Not Applicab

Fri, 2009-11-27 20:00 by anuli

With ur help I could reset dma in secondary device 0 to ultra mode 2. Slave IDDataCheckSum is missing in secondary registry as well as upper & lower filters.

Slow PIO mode 2nd IDE disk - sony Vaio BIOS fix

Thu, 2009-11-19 17:45 by flemur13013

Hi - thanks for the website and info.

Here's some info for others: I added a 2nd IDE disk to a previously working-fine sony RX850 dekstop, and it used 90%+ Interrupts CPU and was noticeably slow (using 'HDtach' for testing, and doing backups).

This didn't work:
- Uninstalling IDE drivers / rebooting
- the VBS script here / rebooting.

This worked:
- Getting into the BIOS and setting the detection of the 2nd disk to 'Auto' !!!

Thanks!

BIOS setting

Thu, 2009-11-19 19:15 by admin

Thanks for this info. This problem was mentioned some time ago already, so it may not be as rare as one might think. I'll mention it in the main article.

The Trap and The Cause-PIO mode triggered

Tue, 2009-11-03 04:38 by Greatful1

Let's say you like to copy DVD's. Many protected DVD's have built-in errors to prevent easy copies.
The "Attempt" to copy, not "play" the DVD will trigger this problem.
When you "play" the DVD, it skips around the built-in formatted errors.
I think the manufacturers should be shot, but that's a different discussion.
So...If you copy protected DVD's (or CD's I presume), keep the reset tool handy!
BTW: Worked great for me. Thanks for the time-effort.
Donation on the way....:-)

Oh, that's terrible!

Tue, 2009-11-03 09:01 by admin

First of all, thanks a lot for your donation! A little money to support this web site is always very welcome. As a tiny reward you now have your own, personal blog here.

I know the DVD copy protection schemes, but it never dawned on me that simply trying to copy such a DVD could easily trigger this DMA step-down towards PIO defect. Now that you've said it, it seems pretty obvious.

Thanks a lot, I'm now mentioning this in the first paragraph of the chapter linked here.

We should also mention that an attempt to copy one of these copy-protected DVDs will fail anyway, unless special software is used.

One of the more evil copy protection schemes, introduced by Sony, consists of liberally sprinkling defective sectors all over the DVD and design the IFO DVD structure definition files such that a DVD player will skip over them. Needless to say, only software that understands the DVD data structure is able to do that. Even some older DVD ripping software that relies on ignoring and skipping errors after they are detected may well trip our problem.

IDE-4008.exe driver

Wed, 2009-10-28 22:27 by jdoherty76

I tried everything in this thread to reset my drive from PMI but to no avail. Finally I noticed someone discuss the chipset ALI M5229 and driver IDE-4000. This is the same chipset I have on my Sony Vaio. I installed this and it appears to work a treat. Question when I look in device manager under IDE ATA/ATAPI controllers there is a subtab that is called ALI Ultra IDE controller properties and the general tab has the following:

No drivers are installed for this device.

If you are having problems with this device, click Troubleshoot to start the troubleshooter.

The driver tab looks okay...So I cannot confirm whether or not I am in DMA mode or not but my PC is certainly responding a lot faster than previously. Is this correct? should I see the advanced tab with the mode I am running? (similair to the way it was before I installed this driver)

One other question if I wanted to uninstall/rollback this driver how would I return to the previous driver I had as I did not take a note of it. Help and advice as always appreciated. Thanks JD

This was my fix - sony vaio laptop on xp sp2

Sat, 2009-12-05 23:25 by chilismaug

I tried the vbs and registry fixes to no avail. MS also has a kb #817472 hotfix for XP SP1, but I am on SP2 and that did not work. I think the SP2 had already made those registry key fixes.

I had upgraded to a larger hard drive - silly me. The Sony uses the ALi IDE driver and apparently the same problem bemoaned below by the HP user is at work. I found that 4800 driver installer and ran it. After several reboots, Windows gave its default startup sound without any fluttering, which is another symptom of the loss of DMA. I also noticed the login response was a little snappier.

As described by jdoherty76, my Device manager also no longer displays the IDE sub-entries for the primary/secondary channels but it works so no worries. Now I can actually play MP3s and run other programs at the same time. Hooray!

ALI driver

Wed, 2009-10-28 22:54 by admin

I don't know the ALI driver, so I cannot tell. It looks though as if it isn't installed perfectly. It may still work. You could measure the speed to find out, using a disk speed test.

There is a button to roll back a driver. Don't know where exactly it is in Vista, but it shouldn't be difficult to find. In XP it is on the driver tab and says "Installed driver".

update to ATI Driver thread

Thu, 2009-10-29 08:26 by jdoherty76

Actually upon re-reading my original post I don't think it was very clear. Since installing the new driver I don't have a prinary and secondary IDE channel properties box. Not sure if this is correct or not but laptop does appear to be performing a lot quicker than previously. thanks JD

Quick Solution doesn`t work

Mon, 2009-10-26 23:06 by Internetagentur...

Hi, the quick solution doesn`t work. Whats wrong? Did any one got another quick solution for me?

Please read before writing

Tue, 2009-10-27 10:11 by admin

The article explains in detail when and why the quick solution does and does not work.

Please Help 10 20 2009 Same DMA/PIO Problems

Wed, 2009-10-21 00:45 by tneve

Help needed, Please. DMA - PIO problems. Windows XP (build 2600: Service Pack 3), Computer 8 Intel CPU 1.601GHz, Chip Set Intel unknown(Dev=25c0). PCI Latency Timer 0. Hard Disk Performance for C-Drive (HDD Test) Results C-Drive Read 2357KB/S - Write 2051KB/S.

In my Device Manager under: + IDE ATA/ATAPI controllers, I have written down the current settings for you to please review. I am not sure what I need to do, or how to applie the Text from the link to your solution. Please if you could, advise me of any recommendations on how to proceed to correct the problem, or to speed up this C-Drive of a HD Video Eiting System. The C-Drive speeds are too slow to edit with. Please advise to email: Mike@tneve.com Thank you . Please See Setting Below:

1st item listed is:

Intel 631xESB/6321ESB Ultra ATA storage Controller - 269E
PCI bus 0, device 3, function1
working properly.
Driver Version: 8.2.0.1011 - Date 11/5/2006 Microsoft Windows Hardware Compatibility
No conflicts listed

2nd item listed is : General Tab

Primary IDE Channel
Device type: IDE ATA/ATAPI controllers
Manufacture: (Standard IDE ATA?ARAPI controllers)
Location: Primary Channel
Status - Working Properly

Advance Tab Settings:

Device 0
Device Type: Auto Detection
Transfer Mode: DMA if available
Current Transfer Mode: PIO Mode

Device 1
Device Type: Auto Detection
Transfer Mode: DMA if available
Current Transfer Mode: Ultra DMA Mode 2

Driver Provider: Microsoft
Date: 7/1/2001
Version: 5.1.2600.2180

I Thank you in advance for your knowledge and your kindness to help. If you need additional information please let me know.

Mike
Mike@tneve.com

Quick solution

Wed, 2009-10-21 14:52 by admin

Just perform the quick solution. That will probably solve the problem.

kaz's picture

Quick solution link

Fri, 2009-10-23 18:10 by kaz

I think his problem and it was mine too was that clicking the quick solution link only opens a page of text and doesn't do anything after that. Is it supposed to run a program? I was able to solve my PIO problem with the help of this page and following the directions in this link though.

http://support.microsoft.com/kb/817472

I installed the MS hotfix then edited my registry with the instructions provided and that did the trick.

Quick Solution Link

Tue, 2009-12-29 17:49 by lotsmorewine

I had the same problem with the link using Firefox, but it worked fine with Internet Explorer. I thought I'd trashed my laptop after running with a very intermittent, temporary power supply. Symptoms included very high CPU usage, slow loading, slow running and stuttering audio. I didn't understand what the underlying problem was, but the quick solution seems to have cured them all! Thank you very much.

Ah, Firefox does it differently!

Tue, 2009-12-29 20:58 by admin

Sorry, I had never tested the link in Firefox. Will add instructions to the main article.

Thanks a lot for drawing my attention to this problem.

Quick solution

Fri, 2009-10-23 22:09 by admin

Yes, the link you mention is already mentioned in the main article, in the chapter Desensitize Your Computer's IDE Channels.

The Quick solution link gives you a Visual Basic Script (vbs) program. Every normal, up-to-date Windows XP installion contains the Windows Script Host (wscript.exe and cscript.exe in the system32 folder) that is needed to run that program. If your Windows does not run it, then something is wrong. My first guess would be that automatic updates are switched off or failing and the current service pack is not installed either, which is a dangerous proposition.

On a normal Windows installation, if you click the Quick solution link, you get a first question asking whether you want to download the file, then a second one whether you want to run it, then a third announcement from the program itself that explains what the program is about to do and still gives you an opportunity to cancel. Answer all three questions in the affirmative, and the DMA-PIO problem is instantly solved.

Alternatively you can download the file, store it with the filename resetdma.vbs, then examine and run it.

kaz's picture

system32 folder seems like the problem

Sat, 2009-10-24 15:01 by kaz

I ran winver and it says i have Build 2600.xpsp_sp3 so that seems up to date. Then I ran msconfig and made sure The automatic updates service was enabled which it was. Then I checked the system32 folder in the i386 file and found only NTDLL.DLL and an SMSS application. No sign of the wscript.exe or cscript.exe. Is this a problem?

My PIO issues are fixed for now but will missing the Windows Script Host cause other issues?

Thanks.

No Windows Script Host

Sat, 2009-10-24 16:21 by admin

Please read this article.

Apart from our quick solution program you may not need WSH any time soon, so there may not be any urgency to install it.

WOWZERS!!!

Tue, 2009-10-20 01:45 by capsize

My friend, thank you thank you thank you!!!

This laptop was about 1 minute from being smashed until I found your post.

I used the procedure of identifying the port mode, which I found to be PIO. I deleted the 2 registry entries described above, rebooted and confirmed that the mode was now running in UltraDMA5, and was able to watch a streaming video without the stuttering and skipping Such an easy fix, but its been about 2 years of a search, and dealing with the frustration.

I, as everyone else had, figured it was some kind of malware or driver fault. Nope. it was PIO (Pain Inthe O-hole). :)

It also boots much faster now too.

THANK YOU!!!

Thanks . I am going to recomend this site to all I know!

Mon, 2009-08-31 13:33 by Surya

I have been having this problem of stuttering audio from CD and now because of this script its solved. This site means what it says. Great days are ahead of you people, keep it up. And thanks once again.

thank

Mon, 2009-08-31 12:11 by defo

Thank you for script. Problems in 3dmax and Photoshop is over!

The script is very helpful in

Tue, 2009-10-13 05:33 by careertargetph

The script is very helpful in my part.

Audio and video skipping, stuttering, slow xp boot/ start up

Thu, 2009-08-27 08:28 by audioskipper

I've Exhausted almost all sources!!!!!!!!! but found A SOLUTION FINALLY..

I had this very same problem just recently, and I even reformatted twice and I tried everything in this site i have ran though all the comments, and a dozen more on other sites but none of it worked, but I kept on searchign online until I stumbled onto this site and VOILA!!!!!!! it was just one simple thing and wow i mean WOW i can finally watch and listen smoothly and start up well.

Here is the UNDENIABLY helpful site (at least it was for me). I hope it will help others who have had the same problem.

http://www.thesycon.de/deu/latency_check.shtml

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.