Outils pour utilisateurs

Outils du site


back2root:ibm-pc-ms-dos:interrupts:int_13:int_13_02

Table des matières

INT 0x13 - 0x02 - Read Disk Sectors

Request/Call:

reg value descr
AH 0x02
AL var number of sectors to read (1-128 dec.)
CH var track/cylinder number (0-1023 dec., see below)
CL var sector number (1-17 dec.)
DH var head number (0-15 dec.)
DL var drive number (0=A:, 1=2nd floppy, 80h=drive 0, 81h=drive 1)
ES:BX var pointer to buffer

Return:

reg descr
CF 0 : succesfull
1 : error
AH status (see INT 13,01)
AL number of sectors read

Notes & Comments

  • BIOS disk reads should be retried at least three times and the controller should be reset upon error detection
  • be sure ES:BX does not cross a 64K segment boundary or a DMA boundary error will occur
  • many programming references list only floppy disk register values
  • only the disk number is checked for validity
  • the parameters in CX change depending on the number of cylinders; the track/cylinder number is a 10 bit value taken from the 2 high order bits of CL and the 8 bits in CH (low order 8 bits of track):
bit descr
0-5 sector number
6-7 high order 2 bits of track/cylinder
8-15 low order 8 bits of track/cyl number

Back

back2root/ibm-pc-ms-dos/interrupts/int_13/int_13_02.txt · Dernière modification : 2023/01/19 21:55 de frater