BIOS 中断表
转: http://blog.csdn.net/regionyu/article/details/1708084
INT(hex) | AH | 功能 | 调用参数 | 返回参数 |
10 |
0 |
设置显示方式
|
AL=00 40×25黑白方式 AL=01 40×25彩色方式 AL=02 80×25黑白方式 AL=03 80×25彩色方式 AL=04 320×200彩色图形方式 AL=05 320×200黑白图形方式 AL=06 320×200黑白图形方式 AL=07 80×25单色文本方式 AL=08 160×200 16色图形 (PCjr) AL=09 320×200 16色图形 (PCjr) AL=0A 640×200 16色图形 (PCjr) AL=0B 保留(EGA) AL=0C 保留(EGA) AL=0D 320×200 彩色图形 (EGA) AL=0E 640×200 彩色图形 (EGA) AL=0F 640×350 黑白图形 (EGA) AL=10 640×350 彩色图形 (EGA) AL=11 640×480 单色图形 (EGA) AL=12 640×480 16色图形 (EGA) AL=13 320×200 256色图形 (EGA) AL=40 80×30 彩色文本(CGE400) AL=41 80×50 彩色文本(CGE400) AL=42 640×400 彩色图形(CGE400) |
|
10 | 1 | 置光标类型 | (CH)0-3=光标起始行 (CL)0-3=光标结束行 |
|
10 | 2 | 置光标位置 | BH=页号 DH,DL=行,列 |
|
10 | 3 | 读光标位置 | BH=页号 | CH=光标起始行 DH,DL=行,列 |
10 |
4 |
读光笔位置 |
AH=0 光笔未触发 =1 光笔触发 CH=象素行 BX=象素列 DH=字符行 DL=字符列 |
|
10 | 5 | 置显示页 | AL=页号 | |
10 |
6 |
屏幕初始化或上卷 |
AL=上卷行数 AL=0 整个窗口空白 BH=卷入行属性 CH=左上角行号 CL=左上角列号 DH=右下角行号 DL=右下角列号 |
|
10 |
7 |
屏幕初始化或下卷 |
AL=下卷行数 AL=0 整个窗口空白 BH=卷入行属性 CH=左上角行号 CL=左上角列号 DH=右下角行号 DL=右下角列号 |
|
10 | 8 | 读光标位置的字符和属性 | BH=显示页 | AH=属性 AL=字符 |
10 |
9 |
在光标位置显示字符及属性 |
BH=显示页 AL=字符 BL=属性 CX=字符重复次数 |
|
10 |
A |
在光标位置显示字符 |
BH=显示页 AL=字符 CX=字符重复次数 |
|
10 | B | 置彩色调板(320×200图形) | BH=彩色调板ID BL=和ID配套使用的颜色 |
|
10 |
C |
写象素 |
DX=行(0-199) CX=列(0-639) AL=象素值 |
|
10 | D | 读象素 | DX=行(0-199) CX=列(0-639) |
AL=象素值 |
10 | E | 显示字符 (光标前移) |
AL=字符 BL=前景色 |
|
10 | F | 取当前显示方式 | AH=字符列数 AL=显示方式 |
|
10 |
13 |
显示字符串(适用AT) |
ES:BP=串地址 CX=串长度 DH,DL=起始行,列 BH=页号 AL=0,BL=属性 串:char,char,... AL=1,BL=属性 串:char,char,... AL=2 串:char,attr,char,attr,... AL=3 串:char,attr,char,attr,... |
光标返回起始位置 光标跟随移动 光标返回起始位置 光标跟随移动 |
11 |
设备检验 |
AX=返回值 bit0=1,配有磁盘 bit1=1,80287协处理器 bit4,5=01,40×25BW(彩色板) =10,80×25BW(彩色板) =11,80×25BW(黑白板) bit6,7=罗盘驱动器 bit9,10,11=RS-232板号 bit12=游戏适配器 bit13=串行打印机 bit14,15=打印机号 |
||
12 | 测定存储器容量 | AX=字节数(KB) | ||
13 | 0 | 软盘系统复位 | ||
13 | 1 | 读软盘状态 | AL=状态字节 | |
13 |
2 |
读磁盘 |
AL=扇区数 CH,CL=磁盘号,扇区号 DH,DL=磁头号,驱动器号 ES:BX=数据缓冲区地址 |
读成功:AH=0 AL=读取的扇区数 读失败:AH=出错代码 |
13 |
3 |
写磁盘 |
同上 |
写成功:AH=0 AL=写入的扇区数 写失败:AH=出错代码 |
13 |
4 |
检验磁盘扇区 |
同上(ES:BX不设置) |
成功:AH=0 AL=检验的扇区数 失败:AH=出错代码 |
13 | 5 | 格式化盘磁道 | ES:BX=磁道地址 | 成功:AH=0 失败:AH=出错代码 |
14 | 0 | 初始化串行通讯口 | AL=初始化参数 DX=通讯口号(0,1) |
AH=通读口状态 AL=调制解调器状态 |
14 |
1 |
向串行通讯口写字符 |
AL=字符 DX=通讯口号(0,1) |
写成功:(AH)7=0 写失败:(AH)7=1 (AH)0-6=通讯口状态 |
14 |
2 |
从串行通讯口读字符 |
DX=通讯口号(0,1) |
读成功:(AH)7=0 (AL)=字符 写失败:(AH)7=1 (AH)0-6=通讯口状态 |
14 | 3 | 取通讯口状态 | DX=通讯口号(0,1) | AH=通讯口状态 AL=调制解调器状态 |
15 | 0 | 启动盒式磁带马达 | ||
15 | 1 | 停止盒式磁带马达 | ||
15 |
2 |
磁带分块读 |
ES:BX=数据传输区地址 CX=字节数 |
AH=状态字节 AH=00 读成功 =01 冗余检验错 =02 无数据传输 =04 无引导 |
15 | 3 | 磁带分块写 | DS:BX=数据传输区地址 CX=字节数 |
同上 |
16 | 0 | 从键盘读字符 | AL=字符码 AH=扫描码 |
|
16 |
1 |
读键盘缓冲区字符 |
ZF=0 AL=字符码 AH=扫描码 ZF=1 缓冲区空 |
|
16 | 2 | 读键盘状态字节 | AL=键盘状态字节 | |
17 | 0 | 打印字符 回送状态字节 |
AL=字符 DX=打印机号 |
AH=打印机状态字节 |
17 | 1 | 初始化打印机 回送状态字节 |
DX=打印机号 | AH=打印机状态字节 |
17 | 2 | 取状态字节 | DX=打印机号 | AH=打印机状态字节 |
1A | 0 | 读时钟 | CH:CL=时:分 DH:DL=秒:1/100秒 |
|
1A | 1 | 置时钟 | CH:CL=时:分 DH:DL=秒:1/100秒 |
|
1A | 2 | 读实时钟 | CH:CL=时:分(BCD) DH:DL=秒:1/100秒(BCD) |
|
1A | 6 | 置报警时间 | CH:CL=时:分(BCD) DH:DL=秒:1/100秒(BCD) |
|
1A | 7 | 清除报警 |