From: Rod Pemberton on

<honiewelle(a)gmail.com> wrote in message
news:7e527151-e5de-4f7f-8fd5-315c8effd73a(a)e6g2000prf.googlegroups.com...
> I am trying to make a small utility which can zero fill a hard drive.
> I have done it with PIO mode but it takes a lot of time doing it.
>
> Now, I am trying to use UDMA mode of the hard drive, but I don't know
> where to start.
>
> I really appreciate if you can give me some guides on doing it.

(I've added alt.os.development or alt.lang.asm to thread.)

UDMA was first defined in the ATA/ATAPI specifications version 4. You can
locate the first seven "working drafts" of ATA (versions 1 to 3) and/or
ATA/ATAPI (versions 4 to 7) specs. by searching for the phrase "Information
technology - AT Attachment". UDMA modes 0,1,2 are ATA/ATAPI-4. UDMA modes
3,4 are ATA/ATAPI-5. UDMA mode 5 is ATA/ATAPI-6. UDMA mode 6 is
ATA/ATAPI-7.

There are also DMA modes. Singleword DMA modes 0,1,2 are ATA. Multimode
DMA mode 0 is ATA. Multimode DMA mode 1,2 are ATA-2.

Also, the ATA and/or ATA/ATAPI specifications define other disk
technologies. IDE is ATA. EIDE is ATA-2. 28-bit LBA is ATA-2. 48-bit LBA
is ATA/ATAPI-6. SATA is ATA/ATAPI-7.


"Yet Another Enhanced IDE/Fast-ATA/ATA-2 FAQ" parts 1 and 2. This document
has PC specific information about ATA/ATAPI, e.g., PC IDE ports. It's not a
standards document.
http://www.faqs.org/faqs/by-newsgroup/comp/comp.sys.ibm.pc.hardware.storage.html

Hale Landis' ATA/ATAPI website with Public Domain ATA/ATAPI code:
http://www.ata-atapi.com/

Doors' IDE code:
http://www.freedoors.org/idework/idework.htm


Rod Pemberton