This structure is used in DOS interrupts INT 25H and INT 26H when reading
or writing on drives having more than 65535 sectors (usually 32M).  This
is used in DOS 4.0+.

AbsDiskIORec
Offset Size Contents
                                                                     
+0      4  lStartSect   logical sector number to start read/write
+4      2  wSectCnt     number of sectors to read/write
+6      4  pBuffer      FAR addr of data buffer
10               Length of an AbsDiskIORec structure

lStartSect  is a logical sector number.  For instance, sector 0 is the
Boot Sector.  To convert a cluster  number (as obtained from
the FAT or a Directory Entry) into a logical sector number
use:

RootDirSectors = wSecSize / (wRootEntries * 32)
FatSectors     = bFatCnt * wFatSects
DataStart      = wResSects + FatSectors + RootDirSectors

where wSecSize et.al are obtained from the BootSectorRec or
other source.  An easier method is to use DOS fn 32H to obtain
a Drive Parameter Block (DPB) and use the wFirstData field as
an aid to the conversion.

wSectCnt  desired number of sectors to read/write.  On INT 25H reads, be
sure that the buffer at pBuffer is large enough to hold the
data.  Sectors are usually 512 bytes, but you should always
use DOS fn 32H (or other fn) to check the sector size.

Presumably, you could transfer up to 65535 sectors (usually
32M) at one time, but conventional  memory constraints will
typically limit the transfer to about 1024 (400H) sectors at
once (512K).

pBuffer  is the FAR address of the buffer to receive the disk data
(INT 25H) or containing the data to write (INT 26H).

- -

AbsDiskIORec