You are here:Home»KB»PC»Windows Family»CD-ROM, DVD-ROM and HDD drives can revert to using PIO mode, despite being set to use DMA if Available
Saturday, 20 February 2010 12:08

CD-ROM, DVD-ROM and HDD drives can revert to using PIO mode, despite being set to use DMA if Available

Written by

Read the following articles first

DMA reverts to PIO - The stuttering DVD drive or the lame hard disk

Troubleshooting: Enabling/Checking DMA in Windows Vista, XP, 2000, Me, 9x


CD-ROM, DVD-ROM and Hard drives can revert to using PIO mode, despite being set to use “DMA if Available.” Here’s how to make Windows XP redetect the DMA capabilities of the drives.

This behaviour occurs with the following conditions:

  • Windows XP is the operating system
  • A CD-ROM or DVD-ROM drive, which is known to support DMA mode now works only in PIO mode.
  • The drive controller is set to use “DMA if available” but reports to be only in PIO mode.
  • 6 or more CRC errors occur in one session

Other symptoms might be:

  • the PC takes a lot longer to load
  • Crackling sound epecially when trying to watch a video.
  • High CPU might be present because PIO does not use a CPU offload technique like DMA

Then try these solutions below. (This assumes you had the right drivers on in the first place.)


  • Go into device manager
  • Select the primary / secondary channel, select properties
  • make sure 'DMA if available' option is selected
  • delete the primary and secondary channel
  • delete the controller
  • reboot

An additonal reboot might be required to iniate the DMA mode


  • change the controller type to standard IDE controller

  1. Open RegEdit
  2. Find the following KEY:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\000x
     
  3. The last four digits will be 0000, 0001, 0002, 0003, and so on.
  4. Under each key, delete all occurences of the following values:

    MasterIdDataChecksum
    SlaveIdDataChecksum

     
  5. Reboot the computer. Windows will now redetect DMA settings.

  1. Edit the key

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\0000
     
  2. Then add a new DWORD value called

    EnableUDMA66
    with a value of 1.
     

Or Save the text  below as a .reg file and execute it

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\0000]
“EnableUDMA66”=dword:00000001

Read 859 times Last modified on Tuesday, 22 November 2011 19:54