reset dma on xp help me

Discussion in 'other software & services' started by mantra, Oct 6, 2009.

Thread Status:
Not open for further replies.
  1. mantra

    mantra Registered Member

    Joined:
    Jan 25, 2005
    Posts:
    6,194
    hi
    i have a question about reset the dma on xp
    i found a script resetdma.vbs found here http://winhlp.com/node/10


    well it should reset the dma in this reg key
    Code:
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}
    ]


    but i found the values to delete also here
    Code:
    HKEY_LOCAL_MACHINE\system\[B]controlset001[/B]\control\class\{4d36e96a-e325-11ce-bfc1-08002be10318}
    and
    Code:
    HKEY_LOCAL_MACHINE\system\[B]controlset002\[/B]control\class\{4d36e96a-e325-11ce-bfc1-08002be10318}\0004\
    i use the bold to point out controlset001 & controlset002 , the script doesn't reset them , and in many sites there is not mention aobut them

    well
    what should i do? delete the values in controlset001 & controlset002 ?

    does somebody used the script?
    thanks
     
    Last edited: Oct 6, 2009
  2. majoMo

    majoMo Registered Member

    Joined:
    Aug 31, 2007
    Posts:
    994
    The CurrentControlSet subkey is really a pointer to one of the ControlSetXXX keys.:
    The most valuable and reliable control set is CurrentControlSet. If you need to modify system settings in the Registry, CurrentControlSet is the best subkey to choose because you know that it is the correct control set. You also know that if your modifications harm your system configuration, you will still be able to boot using the last known good control set.
     
  3. tgell

    tgell Registered Member

    Joined:
    Nov 12, 2004
    Posts:
    1,097
    Got this from a site I can no longer link to: Helped me.

    Also, Device manager may show the drive in UDMA, but it may be in PIO. If the setting reads UDMA, change it to PIO, then OK out from the properties card. Then open the properties card again, change back to UDMA and OK out. See if that helps

    registryeditor.jpg

    Go to..

    [HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\Scsi\Scsi Port 0]

    [HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\Scsi\Scsi Port 1]


    Notes: These keys are called SCSI solely for historic reasons; SCSI Port 0 is actually IDE1 and SCSI Port 1 is IDE2.



    Modify..

    DMAEnabled = 1 (DWORD value)

    Notes: This is usually set to zero after a PIO failback. Some systems may change your “1” to a “3” after a reboot - it seems to depend on how heavy your computer is already with DMA-enabled hardware. One of my machines’ drives default to DMA3 and doesn’t seem to act any differently, but I can’t find a reference to this behaviour anywhere online.. shrug.. The machine in question is bristling with lots of tacked on hardware: 2 HDDs, CD, DVD, 3D video with TV-Out, wireless keyb/mouse, onboard sound, network, 4 USB devices.



    Go to..
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\0001]

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


    Notes: 0001 is the key for IDE2 and 0002 is the key for IDE1, go figure. The string associated to MatchingDeviceId will tell you for sure what you’re looking at (ie: “primary_ide_channel” or “secondary_ide_channel”. If you don’t know what those basic nuts & bolts terms are, I really really really think you should stop what you’re doing RIGHT NOW.) Also, you don’t need to remember that entire long-winded numbered key, 4D36-etc… I just scan the fourth octet of the first dozen Class keys for “6A” (as underlined in the blue text above).



    Delete..

    MasterIdDataCheckSum

    SlaveIdDataCheckSum


    Notes: If you don’t see a checksums associated with a particular slot, then there’s no device detected. If you can’t work out which slot goes with which drive, well, that gives me misgivings about you messing about in RegEdit, but it doesn’t matter if you simply delete all the checksums in the 0001 and 0002 keys (there can be a max of two devices for IDE1, two for IDE2). At the next login, WinXP will notice something is up when the detected devices don’t match the checksum flags and the device’s capabilities will be re-examined.



    Delete..

    MasterDeviceDetectionTimeout

    SlaveDeviceDetectionTimeout


    Notes: Delete these keys if present, if you have a device that is not detecting or doesn’t already have a checksum associated with it. If there’s a timeout=1 flag, Windoze doesn’t bother detecting for a device in that slot at login. Again, this is just a detection flag, so it doesn’t matter if you delete them willy-nilly; if there truly is no device there, the timeout key will simply be recreated at next login. If you still have access to a hard drive that has a timeout flag like this, chances are it’s running in the crippled “Dos Compatibility Mode” where XP is basically fudging your connection to it in real time. I think you are told this under Device Manager > Disk Drives > (appropriate device) > General Properties tab, and also with a warning message at login. If it is a newly installed device, you may have also forgotten to assign a partition and/or drive letter to it using the Microsoft Management Console: Start > right-click My Computer > Manage > Storage folder > Disk Management console. Not recommended for n00bs! Very dangerous!



    Create..

    ResetErrorCountersOnSuccess = 1 (DWORD value)

    Notes: If this flag is present, the running tally of device access failures is reset to zero after every successful access. (I mentioned earlier that a transfer mode downgrade is triggered after a sixth cummulative failure.) Hopefully, this will lengthen the time before your next PIO failback as you’ll need six consecutive failures to trigger it.

    ADDENDUM – Microsoft finally released a "patch" for the failback behaviour. However, after minimal scrutiny all this atapi.sys upgrade really does is change the trigger requirement of six cummulative fails to six consecutive, which is what we've been doing for ages with this reseterrorcounters flag anyway.

    Reboot..
     
    Last edited: Oct 6, 2009
  4. mantra

    mantra Registered Member

    Joined:
    Jan 25, 2005
    Posts:
    6,194
    thanks
    so it's useless to delete the values in controlset001 & controlset002
    because after a reset of CurrentControlSet i got different values between CurrentControlSet <-> and controlset001 & controlset002
    that's is weird
     
  5. mantra

    mantra Registered Member

    Joined:
    Jan 25, 2005
    Posts:
    6,194
    thanks tgell very kind
    i don't know if it work with xp sp2 or do i need sp3?
    i have an original genuine xp sp2 version
    where can i download this patch?
    is working ?
    i mean is worth to be installed?

    thanks again
     
  6. Greg S

    Greg S Registered Member

    Joined:
    Mar 1, 2009
    Posts:
    1,039
    Location:
    A l a b a m a
    I don't know about the scripts but in the past I have went into device manager and uninstalled the contoller, re-booted allowing windows to re-install the controller and reset DMA. It's been awhile and on a old drive but at the time, if I remember right, I had to do this because of x number of crashes which placed it in PIO mode. Supposedly at the time it was one of MS's safety features but memory is a little sketchy on it.

    Edit: sorry, I had this up in a tab for some time and didn't notice the above posted info about the six crashes, either way I guess my memory was better than I thought.
     
  7. tgell

    tgell Registered Member

    Joined:
    Nov 12, 2004
    Posts:
    1,097
  8. jonyjoe81

    jonyjoe81 Registered Member

    Joined:
    May 1, 2007
    Posts:
    829
    Getting back to DMA mode in Windows XP

    But first check and make sure it's required. Open control panel/system/hardware/device manager/IDE ATA ATAPI controllers.


    CD-ROM and DVD-ROM 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.

    Following is the mechanism that has worked for me, please try it at your own risk, it involves hacking the registry:

    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.
     
  9. mantra

    mantra Registered Member

    Joined:
    Jan 25, 2005
    Posts:
    6,194
    thanks
    but i haven't ResetErrorCountersOnSuccess = 1 in my registry , i mean i should add manually :mad:
     
  10. mantra

    mantra Registered Member

    Joined:
    Jan 25, 2005
    Posts:
    6,194
    thanks
    but which numbers should MasterIdDataChecksum SlaveIdDataChecksum have?
     
  11. tgell

    tgell Registered Member

    Joined:
    Nov 12, 2004
    Posts:
    1,097
    If you have SP2, it is already taken care of. No need to add to registry.
     
  12. tgell

    tgell Registered Member

    Joined:
    Nov 12, 2004
    Posts:
    1,097
    Just delete MasterIdDataChecksum SlaveIdDataChecksum under each key.

    The post I gave was for the manual way. If you have used the script, you should be good to go.
     
Thread Status:
Not open for further replies.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.