Interrupt 13 functions used in the Windows MBR and the operating system boot programs are briefly discussed. This is an addendum to the MBR and boot code web pages.
For additional information and other functions see the references at the end of this document.
This function resets both the diskette and the fixed disk controllers. It reinitializes the drive parameters and sets the Read/Write heads to cylinder 0.
On input:
On output:
This function reads disk sectors using CHS format. This can be either a floppy diskette or a hard disk.
On input, the CHS values are contained in the following registers:
On output, the data that is read is placed in the location specified by ES:BX.
Status of the read operation is contained in the following registers:
This function returns the disk-drive parameters of the drive number specified in DL. This can be either a floppy diskette or a hard disk. DL reports the number of disk drives attached to the disk controller.
On input:
On output: (See Int 13/AH=08h for additional parameters.)
This function checks whether the IBM/MS INT 13 Extensions are installed and supported.
On input:
On Output:
This function reads disk sectors using LBA format and is one of the IBM/MS INT 13 Extensions.
On input, the CHS values are contained in the following registers:
Status of the read operation is contained in the following registers:
| Offset | Size | Description |
|---|---|---|
| 00h | 1 byte | 10h (size of packet) |
| 01h | 1 byte | reserved (0) |
| 02h | 2 bytes | number of blocks to transfer |
| 04h | 4 bytes | transfer buffer address |
| 08h | 8 bytes | starting absolute block number (LBA) |
For more information on Interrupt 13 extensions as well as other interrupts:
If you have comments or suggestions, email me at Ray Knights
This page was created on 18 December 2000, last updated on 2 September 2003.