BIOS系统服务 —— 键盘服务

来源:互联网 发布:kiss me睫毛膏 知乎 编辑:程序博客网 时间:2024/05/21 16:21

6 键盘服务(Keyboard Service——INT 16H)

00H10H —从键盘读入字符03H —设置重复率

01H11H —读取键盘状态04H —设置键盘点击

02H, 12H —读取键盘标志05H —字符及其扫描码进栈

 

(1)       功能00H10H

 

功能描述:从键盘读入字符

入口参数:AH00H——读键盘

10H——读扩展键盘,可根据0000:0496H单元的内容判断:扩展键盘是否有效

出口参数:AH=键盘的扫描码

AL=字符的ASCII

 

(2)       功能01H11H

 

功能描述:读取键盘状态

入口参数:AH01H——检查普通键盘

11H——检查扩展键盘

出口参数:ZF1——无字符输入,否则,AH=键盘的扫描码,ALASCII码。

 

(3)       功能02H12H

 

功能描述:读取键盘标志

入口参数:AH02H——普通键盘的移位标志

12H——扩展键盘的移位标志

出口参数:AL=键盘标志(02H12H都有效),其各位之值为1时的含义如下: 7INS开状态位3ALT键按下

6CAPS LOCK开状态位2CTRL键按下

5NUM LOCK开状态位1—左SHIFT键按下

4SCROLL LOCK开状态位0—右SHIFT键按下

AH=扩展键盘的标志(12H有效),其各位之值为1时的含义如下:

7SysReq键按下位3—右ALT键按下

6CAPS LOCK键按下位2—右CTRL键按下

5NUM LOCK键按下位1—左ALT键按下

4SCROLL键按下位0—左CTRL键按下

 

(4)       功能03H

 

功能描述:设置重复率

入口参数:AH03H 对于PC/ATPS/2AL05H

BH=重复延迟

BL=重复率

对于PCjrAL00H——装入缺省的速率和延迟

01H——增加初始延迟

02H——重复频率降低一半

03H——增加延迟和降低一半重复频率

04H——关闭键盘重复功能

05H——设置键盘重复率最大化

 

出口参数:无

 

(5)       功能04H

 

功能描述:设置键盘点击

入口参数:AH04H AL00H——关闭键盘点击功能

01H——打开键盘点击功能

出口参数:无

 

(6)       功能05H

 

功能描述:字符及其扫描码进栈

入口参数:AH05H

CH=字符的描述码

CL=字符的ASCII

出口参数:CF1——操作成功,AL00H,否则,AL01H