Important Notice
The pages on this site contain documentation for very old MS-DOS software,
purely for historical purposes.
If you're looking for up-to-date documentation, particularly for programming,
you should not rely on the information found here, as it will be woefully
out of date.
DSK_READTRACK (1.2)
◄Up► ◄Next► ◄Previous►
────────────────────────────────────────────────────────────────────────────
#define INCL_DOSDEVIOCTL
USHORT DosDevIOCtl(pbBuffer, pbCommand, 0x0064, 0x0008, hDevice)
PBYTE pbBuffer; /* pointer to buffer for data */
PBYTE pbCommand; /* pointer to structure with command */
HFILE hDevice; /* device handle */
The DSK_READTRACK function reads from a track on a specified disk drive. The
track table passed in the call determines the sector number, which is passed
to the disk controller for the operation. When the sectors are odd-numbered
or nonconsecutive, the request is broken into an appropriate number of
single-sector operations, and one sector at a time is read.
Parameter Description
────────────────────────────────────────────────────────────────────────────
pbBuffer Points to the buffer that receives data read from the track.
pbCommand Points to the TRACKLAYOUT structure that contains the information
about the read operation.
hDevice Identifies the disk drive that receives the device-control
function. The handle must have been created previously by using
the DosOpen function.
Return Value
The return value is zero if the function is successful or an error value if
an error occurs.
Comments
The device driver will not correctly read sectors of sizes other than 512
bytes if reading would generate a direct-memory-access (DMA) violation
error. Programs must ensure that this error does not occur.
See Also
DosOpen, DSK_WRITETRACK, TRACKLAYOUT
♦