• Please review our updated Terms and Rules here

INT 13 Reference

Erik

Site Administrator
Staff member
Joined
Apr 27, 2003
Messages
3,588
Location
San Jose, CA
INT 13 programming interface. Details for each command can be found on
Ralf Brown\'s Interrupt List
[h="2"] INT 13 Supported Functions [/h]
align="center" border="1" cellpadding="3" cellspacing="0" width="95%"
|
-
| AH = 00h || Reset Disk Drives || No actual ATA command sent to drive, always returns success (see 0dh)
|
-
| AH = 01h || Check Drive Status || returns status of last operation
|
-
| AH = 02h || Read Sectors From Drive
|
-
| AH = 03h || Write Sectors To Drive
|
-
| AH = 04h || Verify Sectors
|
-
| AH = 08h || Get Drive Parameters
|
-
| AH = 09h || Initialize Disk Controller || Not Required. Already done by controller, returns success
|
-
| AH = 0Ch || Move Drive Head To Cylinder || No actual ATA command sent to drive, always returns success
|
-
| AH = 0Dh || Reset Disk Drives || No means of actually resetting an ATA drive with this controller
|
-
| AH = 15h || Read Drive Type
|
-
| AH = 19h || Park Heads || Parking is done by the drive automatically
[h="2"] INT 13 Unsupported Functions [/h]
These function calls return status in AH=01 and CY flag is set, signaling that the routine is unsupported by XT-IDE BIOS.
align="center" border="1" cellpadding="3" cellspacing="0" width="95%"
|
-
| AH = 05h || format track(s) || not used on IDE devices
|
-
| AH = 06h || format track(s) & set bad sector map || not used on IDE devices
|
-
| AH = 07h || format drive starting at track || not used on IDE devices
|
-
| AH = 0Ah || read long || read and return CRC data. Does anyone use this?
|
-
| AH = 0Bh || write long || write with CRC data. Does anyone use this?
|
-
| AH = 0Eh || read sector buffer (XT only) || no idea what this is supposed to do
|
-
| AH = 0Fh || write sector buffer (XT only) || no idea what this is supposed to do
|
-
| AH = 10h || check if drive ready || maybe this should be supported? Never seen it used
|
-
| AH = 11h || recalibrate drive || not used on IDE devices
|
-
| AH = 12h || controller RAM diagnostics || not used on IDE devices
|
-
| AH = 13h || Drive Diagnostics || not used on IDE devices
|
-
| AH = 14h || perform internal diagnostics || not used on IDE devices
|
-
| AH = 16h || floppy only
|
-
| AH = 17h || set format type (floppy)
|
-
| AH = 18h || set format type (HDD) || not used on IDE devices
|
-
| AH = 1Ah || ESDI, unused
|
-
| AH = 1Bh || ESDI, unused
|
-
| AH = 1Ch || ESDI, unused
|
-
| AH = 1Dh || IBM Cache, unused
|
-
| AH = 1Eh || unused
|
-
| AH = 1Fh || Syquest, unused
|
-
| AH = 20h || unused
|
-
| AH = 26-40 || unused
[h="2"] INT 13 Future Supported Functions [/h]
These function calls currently return status in AH=01 and CY flag is set, signaling that the routine is unsupported by XT-IDE BIOS. Support for these functions may or may not be forthcoming, depending on user requirements
align="center" border="1" cellpadding="3" cellspacing="0" width="95%"
|
-
| AH = 21h || read multiple
|
-
| AH = 22h || write multiple
|
-
| AH = 23h || set features
|
-
| AH = 24h || set multiple mode
|
-
| AH = 25h || get drive ID data
[h="2"] Enhanced INT 13 Supported Functions [/h]
These function calls are used only by operating systems that have Enhanced INT 13 support, such as FreeDOS, MS-DOS 7 (DOS that comes with MS Windows 95 and higher).
EINT13 calls allow for drives up to over 2TB in size.
align="center" border="1" cellpadding="3" cellspacing="0" width="95%"
|
-
| AH = 41h || check extensions present
|
-
| AH = 42h || read sectors
|
-
| AH = 43h || write sectors
|
-
| AH = 44h || verify sectors
|
-
| AH = 47h || Extended seek || No actual ATA command sent to drive, always returns success
|
-
| AH = 48h || get drive parameters
[h="2"] Enhanced INT 13 Unsupported Functions [/h]
These function calls return status in AH=01 and CY flag is set, signaling that the routine is unsupported by XT-IDE BIOS.
align="center" border="1" cellpadding="3" cellspacing="0" width="95%"
|
-
| AH = 45h || lock/unlock drive || no removable drive support
|
-
| AH = 46h || eject drive || no removable drive support
|
-
| AH = 49h || removable media eject || no removable drive support
|
-
| AH = 4ah-4d || reserved
|
-
| AH = 4eh || set hardware configuration || No need to change PIO modes
 
Back
Top