📄 int13.txt
字号:
00h WORD number of bytes remaining in table
02h BYTE reserved (0)
03h BYTE reserved (0)
04h WORD (big-endian) defect list length (8*number of defects)
06h 8N BYTEs defect list [array] (see #0173)
Format of Future Domain SCSI defect table C:
Offset Size Description (Table 0172)
00h WORD number of bytes remaining in table
02h BYTE reserved (0)
03h BYTE reserved (0)
04h WORD (big-endian) defect list length (8*number of defects)
06h 8N BYTEs defect list [array] (see #0173)
Format of Future Domain SCSI defect list entry:
Offset Size Description (Table 0173)
00h 3 BYTEs (big-endian) cylinder number of defect
03h BYTE head number of defect
04h DWORD (big-endian) defect bytes from index
--------d-1306-------------------------------
INT 13 - Adaptec AHA-154xA/Bustek BT-542 BIOS - IDENTIFY SCSI DEVICES
AH = 06h
Return: AH = status code (see #0166)
CF clear if successful
AL = first drive supported
(80h nonconcurrent operation, 81h concurrent operation)
CF set on error
Desc: determine the number of the first supported SCSI drive
Note: the return value is 80h when two SCSI drives are supported, 81h if
only one SCSI drive is installed
SeeAlso: AH=08h"PC",#0656 at INT 1A/AX=B102h
--------d-1306-------------------------------
INT 13 - V10DISK.SYS - READ DELETED SECTORS
AH = 06h
AL = number of sectors
CH = cylinder number (bits 8,9 in high bits of CL)
CL = sector number
DH = head
DL = drive
ES:BX -> buffer
Return: AH = status code (see #0166)
Program: V10DISK.SYS is a driver for the Flagstaff Engineering 8" floppies
SeeAlso: AH=02h,AH=07h"V10DISK.SYS"
--------B-1307-------------------------------
INT 13 - FIXED DISK - FORMAT DRIVE STARTING AT GIVEN TRACK (XT,PORT)
AH = 07h
AL = interleave value (XT only)
ES:BX = 512-byte format buffer (see AH=05h)
CH = cylinder number (bits 8,9 in high bits of CL)
CL = sector number
DH = head
DL = drive
Return: AH = status code (see #0166)
Note: AWARD AT BIOS and AMI 386sx BIOS have been extended to handle more
than 1024 cylinders by placing bits 10 and 11 of the cylinder number
into bits 6 and 7 of DH
SeeAlso: AH=05h"FIXED",AH=06h"FIXED",AH=1Ah
--------d-1307-------------------------------
INT 13 - Future Domain SCSI BIOS - FORMAT DRIVE
AH = 07h
AL = interleave (0 = default, 1 = consecutive sectors,
2 - 255 = vendor unique)
DL = hard drive ID
Return: CF set on error
CF clear if successful
AH = status code (see #0166)
SeeAlso: AH=05h"SCSI",AH=06h"SCSI",AH=07h"FIXED"
--------d-1307-------------------------------
INT 13 - V10DISK.SYS - WRITE DELETED SECTORS
AH = 07h
AL = number of sectors
CH = cylinder number (bits 8,9 in high bits of CL)
CL = sector number
DH = head
DL = drive
ES:BX -> buffer
Return: AH = status code (see #0166)
Program: V10DISK.SYS is a driver for the Flagstaff Engineering 8" floppies
SeeAlso: AH=03h,AH=06h"V10DISK.SYS"
--------B-1308-------------------------------
INT 13 - DISK - GET DRIVE PARAMETERS (PC,XT286,CONV,PS,ESDI,SCSI)
AH = 08h
DL = drive (bit 7 set for hard disk)
Return: CF set on error
AH = status (07h) (see #0166)
CF clear if successful
AH = 00h
AL = 00h on at least some BIOSes
BL = drive type (AT/PS2 floppies only) (see #0174)
CH = low eight bits of maximum cylinder number
CL = maximum sector number (bits 5-0)
high two bits of maximum cylinder number (bits 7-6)
DH = maximum head number
DL = number of drives
ES:DI -> drive parameter table (floppies only)
Notes: may return successful even though specified drive is greater than the
number of attached drives of that type (floppy/hard); check DL to
ensure validity
for systems predating the IBM AT, this call is only valid for hard
disks, as it is implemented by the hard disk BIOS rather than the
ROM BIOS
Toshiba laptops with HardRAM return DL=02h when called with DL=80h,
but fail on DL=81h. The BIOS data at 40h:75h correctly reports 01h.
may indicate only two drives present even if more are attached; to
ensure a correct count, one can use AH=15h to scan through possible
drives
for BIOSes which reserve the last cylinder for testing purposes, the
cylinder count is automatically decremented
on PS/1s with IBM ROM DOS 4, nonexistent drives return CF clear,
BX=CX=0000h, and ES:DI = 0000h:0000h
the PC-Tools PCFORMAT program requires that AL=00h before it will
proceed with the formatting
SeeAlso: AH=06h"Adaptec",AH=13h"SyQuest",AH=48h,AH=15h,INT 1E
SeeAlso: INT 41"HARD DISK 0"
(Table 0174)
Values for diskette drive type:
01h 360K
02h 1.2M
03h 720K
04h 1.44M
05h ??? (reportedly an obscure drive type shipped on some IBM machines)
2.88M on some machines (at least AMI 486 BIOS)
06h 2.88M
10h ATAPI Removable Media Device
--------d-1308-------------------------------
INT 13 - V10DISK.SYS - SET FORMAT
AH = 08h
AL = number of sectors
CH = cylinder number (bits 8,9 in high bits of CL)
CL = sector number
DH = head
DL = drive
Return: AH = status code (see #0166)
Program: V10DISK.SYS is a driver for the Flagstaff Engineering 8" floppies
Note: details not available
SeeAlso: AH=03h,AH=06h"V10DISK.SYS"
--------y-130800DLF0-------------------------
INT 13 - SecureDrive - INSTALLATION CHECK
AX = 08000h
DL = F0h
Return: AX = EDCBh for version 1.0-1.2
AX = EDCCh for version 1.3
CX = code segment
DX = data address within code segment
Program: SecureDrive by Mike Ingle <mikeingle@delphi.com> allows you to create
an encrypted partition on your harddisk.
--------B-1309-------------------------------
INT 13 - HARD DISK - INITIALIZE CONTROLLER WITH DRIVE PARAMETERS (AT,PS)
AH = 09h
DL = drive (80h for first, 81h for second)
Return: CF clear if successful
CF set on error
AH = status (see #0166)
Notes: on the PC and XT, this function uses the parameter table pointed at by
INT 41
on the AT and later, this function uses the parameter table pointed at
by INT 41 if DL=80h, and the parameter table pointed at by INT 46 if
DL=81h
SeeAlso: INT 41"HARD DISK 0",INT 46"HARD DISK 1"
--------B-130A-------------------------------
INT 13 - HARD DISK - READ LONG SECTOR(S) (AT and later)
AH = 0Ah
AL = number of sectors (01h may be only value supported)
CH = low eight bits of cylinder number
CL = sector number (bits 5-0)
high two bits of cylinder number (bits 7-6)
DH = head number
DL = drive number (80h = first, 81h = second)
ES:BX -> data buffer
Return: CF clear if successful
CF set on error
AH = status (see #0166)
AL = number of sectors transferred
Notes: this function reads in four to seven bytes of error-correcting code
along with each sector's worth of information
data errors are not automatically corrected, and the read is aborted
after the first sector with an ECC error
used for diagnostics only on PS/2 systems; IBM officially classifies
this function as optional
SeeAlso: AH=02h,AH=0Bh,MEM 0040h:0074h
--------B-130B-------------------------------
INT 13 - HARD DISK - WRITE LONG SECTOR(S) (AT and later)
AH = 0Bh
AL = number of sectors (01h may be only value supported)
CH = low eight bits of cylinder number
CL = sector number (bits 5-0)
high two bits of cylinder number (bits 7-6)
DH = head number
DL = drive number (80h = first, 81h = second)
ES:BX -> data buffer
Return: CF clear if successful
CF set on error
AH = status (see #0166)
AL = number of sectors transferred
Notes: each sector's worth of data must be followed by four to seven bytes of
error-correction information
used for diagnostics only on PS/2 systems; IBM officially classifies
this function as optional
SeeAlso: AH=03h,AH=0Ah,MEM 0040h:0074h
--------B-130C-------------------------------
INT 13 - HARD DISK - SEEK TO CYLINDER
AH = 0Ch
CH = low eight bits of cylinder number
CL = sector number (bits 5-0)
high two bits of cylinder number (bits 7-6)
DH = head number
DL = drive number (80h = first, 81h = second hard disk)
Return: CF set on error
CF clear if successful
AH = status (see #0166)
SeeAlso: AH=00h,AH=02h,AH=0Ah,AH=47h
--------B-130D-------------------------------
INT 13 - HARD DISK - RESET HARD DISKS
AH = 0Dh
DL = drive number (80h = first, 81h = second hard disk)
Return: CF set on error
CF clear if successful
AH = status (see #0166)
Notes: reinitializes the hard disk controller, resets the specified drive's
parameters, and recalibrates the drive's heads (seek to track 0)
for PS/2 35SX, 35LS, 40SX and L40SX, as well as many other systems,
both the master drive and the slave drive respond to the Reset
function that is issued to either drive
not for PS/2 ESDI drives
SeeAlso: AH=00h,INT 21/AH=0Dh
--------B-130E-------------------------------
INT 13 - HARD DISK - READ SECTOR BUFFER (XT only)
AH = 0Eh
DL = drive number (80h = first, 81h = second hard disk)
ES:BX -> buffer
Return: CF set on error
CF clear if successful
AH = status code (see #0166)
Notes: transfers controller's sector buffer. No data is read from the drive
used for diagnostics only on PS/2 systems
SeeAlso: AH=0Ah
--------B-130F-------------------------------
INT 13 - HARD DISK - WRITE SECTOR BUFFER (XT only)
AH = 0Fh
DL = drive number (80h = first, 81h = second hard disk)
ES:BX -> buffer
Return: CF set on error
CF clear if successful
AH = status code (see #0166)
Notes: does not write data to the drive
should be called before formatting to initialize an XT-type
controller's sector buffer
used for diagnostics only on PS/2 systems
SeeAlso: AH=0Bh
--------B-1310-------------------------------
INT 13 - HARD DISK - CHECK IF DRIVE READY
AH = 10h
DL = drive number (80h = first, 81h = second hard disk)
Return: CF set on error
CF clear if successful
AH = status (see #0166 at AH=01h)
SeeAlso: AH=11h
--------B-1311-------------------------------
INT 13 - HARD DISK - RECALIBRATE DRIVE
AH = 11h
DL = drive number (80h = first, 81h = second hard disk)
Return: CF set on error
CF clear if successful
AH = status (see #0166 at AH=01h)
Note: causes hard disk controller to seek the specified drive to cylinder 0
SeeAlso: AH=00h,AH=0Ch,AH=10h,AH=19h"FIXED DISK",MEM 0040h:003Eh
--------B-1312-------------------------------
INT 13 - HARD DISK - CONTROLLER RAM DIAGNOSTIC (XT,PS)
AH = 12h
DL = drive number (80h = first, 81h = second hard disk)
Return: CF set on error
CF clear if successful
AH = status code (see #0166 at AH=01h)
AL = 00h
SeeAlso: AH=13h,AH=14h
--------d-1312-------------------------------
INT 13 - Future Domain SCSI CONTROLLER - STOP SCSI DISK
AH = 12h
DL = hard drive ID
Return: CF set on error
CF clear if successful
AH = status code (see #0166 at AH=01h)
Notes: available at least on the TMC-870 8-bit SCSI controller BIOS v6.0A
if the given drive is a SCSI device, the SCSI Stop Unit command is sent
and either "Disk prepared for shipping" or "Disk Stop command failed"
is displayed
the TMC-950 does not support any Future Domain BIOS calls; instead,
it provides a full CAM implementation (see INT 4F/AX=8100h)
--------d-1312-------------------------------
INT 13 - SyQuest - START/STOP SCSI DISK
AH = 12h
AL = subfunction
00h start disk
01h stop disk
CX = wait flag
00h wait for ready
01h don't wait for ready
DL = hard drive ID (bit 7 for hard disks must be set)
Return: CF set on error
CF clear if successful
AH = status
00h successful
01h invalid function request
80h timeout
SeeAlso: AH=12h"Future Domain",AH=13h"SyQuest"
--------B-1313-------------------------------
INT 13 - HARD DISK - DRIVE DIAGNOSTIC (XT,PS)
AH = 13h
DL = drive number (80h = first, 81h = second hard disk)
Return: CF set on error
CF clear if successful
AH = status code (see #0166 at AH=01h)
AL = 00h
SeeAlso: AH=12h"HARD DISK",AH=14h"HARD DISK"
--------d-1313-------------------------------
INT 13 - SyQuest - READ DRIVE PARAMATERS (for DOS 5+)
AH = 13h
DL = drive ID (bit 7 set for hard disks)
Return: CF set on error
AH = status (07h) (see #0166 at AH=01h)
CF clear if successful
AH = 00h
BL = drive type (AT/PS2 floppies only) (see #0174)
CH = low eight bits of maximum cylinder number
CL = maximum sector number (bits 5-0)
high two bits of maximum cylinder number (bits 7-6)
DH = maximum head number
DL = number of drives
ES:DI -> drive parameter table (floppies only)
Notes: the return values are identical to the standard INT 13/AH=08h, but the
number of drives is not limited to 2, so
scanning all possible drive numbers with the Read DASD Type call
(AH=15h) should generally be preferred to determine the number of
drives attached to the system.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -