INT 13H 02H: Read Sectors

                                                              [PC] [XT] [AT]
 Expects: AH    02H
          AL    sector count (see notes)
          CH    track (cylinder) number (0-n) <ͻ
          CL    sector number (1-n) < (see notes)
          DL    drive: 0-3=diskette; 80H-81H=hard disk
          DH    head number
          ES:BX caller's buffer address
          0:078 Diskette Parameter Table  (for diskette operations)
          0:104 Hard Disk Parameter Table  (for hard disk operations)
 Returns: AH    BIOS disk error code if CF is set to CY
          ES:BX caller's buffer will contain requested data (if no error)
    Info: This reads the specified sectors into memory at ES:BX.

   Notes:  CX is actually used as a 6-bit and 10-bit field to specify
            sector and cylinder (this is important on hard disks with more
            than 256 cylinders).  CX is laid out as:

                 CH  CL Ŀ
                 1 1 1 1 1 1
            CX: c c c c c c c c C c S s s s s s
                                 > high bits of cylinder number

            Note that this imposes a "hard stop" low-level limit on the
            number of cylinders on a disk (1024).  Some BIOSs may support
            larger values by simulating additional heads and translating
            each request.

           On diskette reads, this function stops a multi-sector read at
            the last sector in a track.

           On hard disks (with XT and AT BIOSes), a multi-sector read
            continues on the next higher head of the same cylinder and if
            necessary, advances to the next higher cylinder on the first

           Parameters are the same as for INT 13H 03H (write sectors).

           Use INT 13H 0aH (extended read to read data+ECC).

See Also: INT 25H (read absolute sectors)
          DOS fn 440dH 61H (IOCTL read track)
          INT 13H: BIOS Disk I/O
          ROM-BIOS Functions