直接磁盘服务(DirectDiskService—INT13H)
00H—磁盘系统复位0EH—读扇区缓冲区
01H—读磁盘系统状态0FH—写扇区缓冲区
02H—读扇区10H—读驱动器状态
03H—写扇区11H—校准驱动器
04H—检查扇区12H—诊断控制器RAM[/br]05H—格式化磁道13H—控制器驱动器诊断
06H—格式化坏磁道14H—控制器内部诊断
07H—格式化驱动器15H—格式化 函数00H
函数描述:80H~0FFH:硬盘
退出参数:cf = 0 ——操作成功,ah = 00h,否则ah =状态码,请参考函数号01H中的描述
(2)01H的函数描述
函数:读取磁盘系统状态
入口。 80H~0FFH:硬盘
导出参数:ah = 00h,al =状态码,其定义如下:
00H—无错01H—非法命令
02H—找不到地址目标03H—磁盘写保护(软盘)
04H—找不到扇区05H—复位失败(硬盘)
06H—软盘取出(软盘)07H—错误。08H—DMA越界(软盘)09H—DMA超过64K限制[/Br/]0AH—错误的扇区标记(硬盘)0BH—错误的磁道标记(硬盘)[/Br/]0CH—未找到介质类型(软盘)0DH—格式化期间非法的扇区号(硬盘)
0EH— 0FH—DMA仲裁越界(硬盘)[/Br/]10H—不正确的CRC或ECC代码11H—ECC纠正数据错误(硬盘
BBH—未定义错误(硬盘)CCH—写错误(硬盘)
E0H—状态寄存器错误(硬盘)02H
函数描述:读扇区
Entry参数:ah = 02h
Al =扇区数
CH =柱面
CL =扇区
DH =磁头
DL =驱动器80H~0FFH:硬盘
es: bx =缓冲区地址 参见函数号01H中的描述
(4)函数03H
函数描述:写扇区
入口参数:ah = 03h
al =扇区号
ch =柱面
cl =扇区[/br 80H~0FFH:硬盘
es: bx =缓冲区地址
导出参数:cf = 0-操作成功,ah = 00h,al =发送的扇区号,否则,ah =状态 函数04H
函数描述:检查扇区
入口参数:ah = 04h
al =扇区号
ch =柱面
cl =扇区[/br 80H~0FFH:硬盘es: bx =缓冲区地址
导出参数:cf = 0 ——操作成功,ah = 00h,al =要检查的扇区号,否则,ah =状态码,参见函数号01H中的描述
(6),函数 80H~0FFH:硬盘
es: bx =地址域列表的地址
导出参数:cf = 0 —操作成功,ah = 00h,否则ah =状态码,参见函数号01H,函数06H
中的描述
(7)函数描述:格式化坏磁道
入口参数:ah = 06H
al = alternate
ch = cylinder
DH = head
参见函数号01H中的描述
(8)函数07H
函数描述:格式驱动
入口参数:ah = 07h
al =交替
ch =柱面
dl = 80h ~ 0ffh:参见函数号01H中的描述
(9)函数08H
函数描述:读取驱动参数
入口参数:ah = 08h
dl 80H~0FFH:硬盘
导出参数:cf = 1-操作失败,ah =状态码,请参考功能号01H中的描述,否则BL = 01H—360k
= 02h—1.2m
= 03h—720k
= 04h—1.44m
CH =列数的低8位
Cl的第7-6位=列数。DL =驱动器数量
ES: DI =磁盘驱动器参数表地址
(10),函数09H
函数描述:初始化硬盘参数
入口参数:ah = 09h
DL = 80h ~ 0ffh:硬盘(且ah = 00h,否则Ah =状态码,参见函数编号01H,函数0AH
中的描述
(11)函数描述:读取长扇区, 每个扇区自带四个字节的ECC编码
入口参数:ah = 0ah
al =扇区数量
ch =柱面
cl =扇区
DH =磁头
dl = 80h ~ 0ffh:硬盘[ ah = 00h,al =传输的扇区数量,否则Ah =状态码。 参见函数号01H中的描述
(12)function 0BH
函数描述:写长扇区,每个扇区自带4个字节的ECC编码
入口参数:ah = 0bh
al =扇区数
ch =柱面
cl =扇区数
DH =磁头
dl = 80h ~ 0ffh:硬盘[ ah = 00h,al =传输的扇区数,否则Ah = 函数0CH
函数描述:search
入口参数:ah = 0ch
ch =柱面低8位
CL(7-6位)=柱面高2位[/]出口参数:cf = 0 ——操作成功,ah = 00h,否则ah =状态码,请参考函数号01H,函数0DH
中的描述
(14)函数描述:硬盘系统复位
入口参数:ah = 0dh 否则ah =状态码参见函数号01H中的描述
(15)函数0EH
函数描述:读扇区缓冲区
入口参数:ah = 0eh
es: bx =缓冲区的地址
出口参数:cf参见函数号01H中的描述
(16)函数0FH
函数描述:写扇区缓冲区
入口参数:ah = 0fh
es请参见功能号01H、功能10H
中的描述(17)功能描述:读取驱动器状态
入口参数:ah = 10h
DL = 80h ~ 0ffh:硬盘
出口参数:cf = 0-操作成功,ah = 00h,ah参见功能号01H、功能11H
中的描述
(18)功能描述:校准驱动器
入口参数:ah = 11h参见功能号01H中的描述
(19)功能12H
功能描述:控制器RAM诊断
入口参数:ah = 12h
出口参数:cf = 0-操作成功,否则ah =状态码,参见功能号01H中的描述
(20)功能描述:控制器驱动诊断
入口参数:ah = 13h
出口参数:cf = 0-操作为 功能14H
功能描述:控制器内部诊断
入口参数:ah = 14h
出口参数:cf = 0-操作成功,否则ah =状态码,参见功能号01H中的描述[ 80H~0FFH:硬盘
出口参数:cf = 1-操作失败,ah =状态码,参见功能号01H中的描述,否则ah = 00h-未安装的驱动器
= 01H-不支持换行符的软盘驱动器[. CX:DX = 512字节的扇区号
(23),函数16H
函数描述:读盘改变状态
入口参数:ah = 16h
DL = 00h ~ 7FH:软盘
出口参数:cf =参见函数号01H中的描述
(24) 函数17H
函数描述:设置磁盘类型
入口参数:ah = 17h
dl = 00h ~ 7fh:软盘al = 00h—未使用
= 01h— = =02H—360K在1.2M驱动器中
= 03h—1.2M在1.2M驱动器中
= 04h—720K在720K驱动器中
导出参数:cf = 0—操作成功, 函数18H
函数描述:设置格式媒体类型
入口参数:ah = 18h
ch =列数
cl =每道扇区数
dl = Es: di =媒体类型参数表地址,否则,ah =状态码,请参考函数号01H
(26),函数19H
函数描述:磁头保护,仅在PS/2中有效,此处省略
(26
0条评论