qa.hlp (Table of Contents; Topic list)
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.
Interrupt 26H
   Summary  Notes  Back
──────────────────────────────────────────────────────────────────────────────
 
▀ All registers except the segment registers may be destroyed.
 
▀ When this function returns, the CPU flags originally pushed onto the
  stack by the INT 26H instruction are still on the stack. The stack must
  be cleared by a POPF or ADD SP,2 to prevent uncontrolled stack growth
  and to make accessible any other values that were pushed on the stack
  before the call to INT 26H.
 
▀ Logical sector numbers are obtained by numbering each disk sector sequen-
  tially from track 0, head 0, sector 1, and continuing until the last sec-
  tor on the disk is counted. The head number is incremented before the
  track number. Logically adjacent sectors may not be physically adjacent,
  due to interleaving that occurs at the device-driver level for some disk
  types.
 
▀ The error code is interpreted as follows: The lower byte (AL) is the
  same error code that is returned in the lower byte of DI when an Int
  24H is issued. The upper byte (AH) contains:
 
  80H  if attachment failed to respond
  40H  if seek operation failed
  20H  if controller failed
  10H  if data error (bad CRC)
  08H  if direct memory access (DMA) failure
  04H  if requested sector not found
  03H  if write-protect fault
  02H  if bad address mark
  01H  if bad command
 
▀ [4.0+] When accessing partitions larger than 32 MB under MS-DOS ver-
  sion 4, this function uses a parameter block with the following format:
 
  Bytes       Description
  ═══════     ═════════════════════════
  00H-03H     32-bit sector number
  04H-05H     number of sectors to read
  06H-07H     offset of buffer
  08H-09H     segment of buffer
                                    -♦-