Int 13/AH=0Ah

Prev Next Ralf Interrups Categories Contents

------

HARD DISK - READ LONG SECTOR(S) (AT and later)

AH = 0Ah
AL = number of sectors (01h may be only value supported)
CH = low eight bits of cylinder number
CL = sector number (bits 5-0)
high two bits of cylinder number (bits 7-6)
DH = head number
DL = drive number (80h = first, 81h = second)
ES:BX -> data buffer

Return:
CF clear if successful CF set on error AH = status (see #00234) AL = number of sectors transferred

Notes: This function reads in four to seven bytes of error-correcting code along with each sector's worth of information. Data errors are not automatically corrected, and the read is aborted after the first sector with an ECC error. Used for diagnostics only on PS/2 systems; IBM officially classifies this function as optional

BUG: On the original IBM AT BIOS (1984/01/10) this function does not disable interrupts for harddisks (DL >= 80h). On these machines the MS-DOS/ PC DOS IO.SYS/IBMBIO.COM installs a special filter to bypass the buggy code in the ROM (see CALL F000h:211Eh)

See Also: AH=02h - AH=0Bh - MEM 0040h:0074h

Category: Bios - Int 13h - H

------

Prev Next Ralf Interrups Categories Contents