中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » [原创]DOS的系统杂项服务INT 15H介绍
作者:
标题: [原创]DOS的系统杂项服务INT 15H介绍 上一主题 | 下一主题
whowin
初级用户





积分 174
发帖 37
注册 2006-9-28
状态 离线
『楼 主』:  [原创]DOS的系统杂项服务INT 15H介绍 使用 LLM 解释/回答一下

文章是从我的网志中贴过来的,其中的图片可能过不来,看完整内容,请访问我的网志:
点击进入《DOS编程技术》

00H —开盒式磁带机马达

01H —关盒式磁带机马达

02H —读盒式磁带机

03H —写盒式磁带机

0FH —格式化ESDI驱动器定期中断

21H —读/写自检(POST)错误记录

4FH —键盘截听91H —设备加电自检

80H —设备打开C0H —读取系统环境

81H —设备关闭C1H —读取扩展BIOS数据区地址

82H —进程终止C2H —鼠标图形

83H —事件等待C3H —设置WatcHdog超时

84H —读杆C4H —可编程选项选择

85H —系统请求(SysReq)键

86H —延迟

87H —移动扩展内存块

88H —读取扩展内存大小

89H —进入保护模式

90H —设备等待

91H —设备加电自检

C0H —读取系统环境

C1H —读取扩展BIOS数据区地址

C2H —鼠标图形

C3H —设置WatcHdog超时

C4H —可编程选项选择



(1)、功能00H

功能描述:开盒式磁带机马达

入口参数:AH=00H

出口参数:CF=0——操作成功,否则,AH=状态(86H,若未安装盒式磁带机)

(2)、功能01H

功能描述:关盒式磁带机马达

入口参数:AH=01H

出口参数:CF=0——操作成功,否则,AH=状态(86H,若未安装盒式磁带机)

(3)、功能02H

功能描述:读盒式磁带机

入口参数:

AH=02H

CX=读入的字节数

ES:BX=存放数据的缓冲区地址

出口参数:

CF=0——操作成功,

DX=实际读入的字节数,

ES:BX指向最后一个字节的后面地址,否则,AH=状态码,其值含义如下:

01H —— CRC校验码错

80H —— 非法命令

02H —— 位信号混乱

86H —— 未安装盒式磁带机

04H —— 无发现数据

(4)、功能03H

功能描述:写盒式磁带机

入口参数:

AH=03H

CX=要写入的字节数

ES:BX=已存数据的缓冲区地址

出口参数:

CF=0——操作成功,CX=00H,ES:BX指向最后一个字节的后面地址,

否则,AH=状态码,其值含义如下:

80H —— 非法命令

86H —— 未安装盒式磁带机

(5)、功能0FH

功能描述:格式化ESDI驱动器定期中断,仅在PS/2中有效,在此从略

(6)、功能21H

功能描述:读/写自检(POST)错误记录,仅在PS/2中有效,在此从略

(7)、功能4FH

功能描述:键盘截听,仅在PS/2中有效,在此从略

(8)、功能80H

功能描述:打开设备

入口参数:

AH=80H

BX=设备号

CX=进程号

出口参数:CF=0——操作成功,AH=00H,否则,AH=状态码

(9)、功能81H

功能描述:关闭设备

入口参数:

AH=81H

BX=设备号

CX=进程号

出口参数:CF=0——操作成功,AH=00H,否则,AH=状态码

(10)、功能82H

功能描述:进程终止

入口参数:

AH=81H

BX=进程号

出口参数:CF=0——操作成功,AH=00H,否则,AH=状态码

(11)、功能83H

功能描述:事件等待

入口参数:

AH=83H 若需要事件等待,则:

AL=00H

CX:DX=千分秒

ES:BX=信号量字节的地址

否则,调用参数为AL=01H

出口参数:若调用时,AL=00H,操作成功——CF=0,否则,CF=1

(12)、功能84H

功能描述:读杆

入口参数:

AH=84H

DX=00H——读取开关设置

 =01H——读取阻力输入

出口参数:CF=1H——操作失败,否则,

 DX=00H时,AL=开关设置(位7~4)

 DX=01H时,AX、BX、CX和DX分别为A(x)、A(y)、B(x)和B(y)的值

(13)、功能85H

功能描述:系统请求(SysReq)键

入口参数:

AH=85H

AL=00H——键按下

 =01H——键放开

出口参数:CF=0——操作成功,AH=00H,否则,AH=状态码

(14)、功能86H

功能描述:延迟

入口参数:

AH=86H

CX:DX=千分秒

出口参数:CF=0——操作成功,AH=00H

(15)、功能87H

功能描述:从常规内存和扩展内存之间移动扩展内存块

入口参数:

AH=87H

CX=移动的字数

ES:SI=GDT(Global Descriptor Table)的地址,其结构定义如下:

偏移量存储的信息

00h-0Fh保留,但现全为0

10h-11h段的长度(2CX-1或更大)

12h-14h24位源地址

15h访问权限字节(其值为93h)

16h-17h保留,但现全为0

18h-19h段的长度(2CX-1或更大)

1Ah-1Ch 24位目标源地址

1Dh访问权限字节(其值为93h)

1Eh-2Fh保留,但现全为0

出口参数:CF=0——操作成功,AH=00H,否则,AH=状态码,其含义如下:

  01H —— RAM奇偶错

   02H —— 异常中断错

  03H —— 20号线门地址失败

(16)、功能88H

功能描述:读取扩展内存大小

入口参数:AH=88H

出口参数:AX=扩展内存字节数(以K为单位)

(17)、功能89H

功能描述:进入保护模式,CPU从实模式进入保护模式

入口参数:

AH=89H

BH=IRQ0的中断号

BL=IRQ8的中断号

ES:SI=GDT的地址(参见功能号87H)

出口参数:

CF=1——操作失败,AH=0FFH,

否则,AH=00H,CS、DS、ES和SS都是用户定义的选择器

(18)、功能90H

功能描述:设备等待

入口参数:

AH=90H

AL=驱动器类型,具体的驱动器类型定义如下:

=00H~7FH——串行再重用设备

=80H~0BFH——可重入式设备

=0C0H~0FFH——等待访问设备,没有自检功能

00h — 磁盘

02h — 键盘

80h — 网络

FDh — 软盘马达启动01h — 软盘

03h — 点设备(Pointing Device)

FCh — 硬盘复位

FEh — 打印机

ES:BX=对驱动器类型80H~0FFH的请求块地址

出口参数:CF=1——操作失败,否则,AH=00H

(19)、功能91H

功能描述:设备加电自检

入口参数:

AH=91H

AL=00H~7FH——串行再重用设备

 =80H~0BFH——可重入式设备

出口参数:AH=00H

(20)、功能0C0H

功能描述:读取系统环境

入口参数:AH=0C0H

出口参数:成功CF=0并且AH=0,ES:BX=配置表地址,配置表的定义如下:

偏移量含义说明

00h-01h表的大小(字节数)

02h系统模型

03h系统子模型

04hBIOS版本号

05h配置标志,其各位为1时的说明如下:

  位7—DMA通道3使用

  位6—存在从属8259

  位5—实时时钟有效

  位4—键盘截听有效

  位3—等待外部事件有效

  位2—扩展BIOS数据区

  位1—微通道设施

  位0—保留

06h-09h保留

(21)、功能C1H

功能描述:读取扩展BIOS数据区地址,仅在PS/2中有效,在此从略

(22)、功能C2H

功能描述:鼠标图形,仅在PS/2中有效,在此从略

(23)、功能C3H

功能描述:设置WatcHdog超时,仅在PS/2中有效,在此从略

(24)、功能C4H

功能描述:可编程选项选择,仅在PS/2中有效,在此从略



更多关于DOS编程的文章看我的网志

点击进入《DOS编程技术》

Last edited by whowin on 2008-5-9 at 11:47 AM ]


2008-5-9 11:34
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: