BIOS 中断调用 (int 10H)
First Post:
Last Update:
Word Count:
Read Time:
Page View: loading...
Last Update:
Word Count:
538
Read Time:
2 min
Page View: loading...
用于在实模式下在屏幕显示。
使用 ax,bx,cx,dx 传入参数或接收返回值,使用 INT 0x10 调用。
例如:
1 | |
| Func | Code | Args | Ret |
|---|---|---|---|
| 设置显示模式 | AH=00H |
AL:显示模式 |
AL:显示模式表示 / CRT 控制模式字节 |
| 设置文本方式光标 | AH=01H |
CH:行扫描开始;CL:行扫描结束。正常光标为 CX=0607H;CX=0707H 要窄一些;CX=0007 为整块光标。CH 第 5 位通常表示隐藏光标,如 CX=2607H。有些显卡支持 00h-0Fh 的扫描线。有些显卡不支持第 5 位,可以尝试 CX=0706H。 |
|
| 设置光标位置 | AH=02H |
BH:页码;DH:行;DL:列。 |
|
| 获取光标状态 | AH=03H |
BH:页码。 |
AX=0;CH:行扫描开始;CL:行扫描结束;DH:行;DL:列。 |
| 读取光笔位置 | AH=04H |
AH:状态(0:无触发,1:触发);BX:X 像素;CH:Y 像素;CL:像素行模式(0FH-10H);DH:字符 Y;DL:字符 X。 |
|
| 选择活动显示页 | AH=05H |
AL:页码。 |
|
| 向上滚动窗口 | AH=06H |
AL:滚动的行(0:清除,使用 CH,CL,DH,DL);BH:背景色、前景色;CH:高行数;CL:左列数;DH:低行数;DL:右列数。 |
|
| 向下滚动窗口 | AH=07H |
参考 AH=06H。 |
|
| 读光标所在位置的字符和属性 | AH=08H |
BH:页码。 |
AH:颜色;AL:字符。 |
| 在当前光标位置写字符和属性 | AH=09H |
AL:字符;BH:页码;BL:颜色;CX:多次打印字符。 |
|
| 在光标位置写入字符 | AH=0AH |
AL:字符;BH:页码;CX:多次打印字符。 |
|
| 设置背景 / 边框颜色 | AH=0BHBH=01H |
BL:背景/边框颜色。 |
|
| 设置调色板 | AH=0BH |
BL:调色板 ID。 |
|
| 写图形像素 | AH=0CH |
AL:颜色;BH:页码;CX:X;DX:Y。 |
|
| 读图形像素 | AH=0DH |
BH:页码;CX:X;DX:Y。 |
AL:颜色。 |
| 电传打字机输出 | AH=0EH |
AL:字符;BH:页码;BL:颜色。 |
|
| 获取当前显示模式 | AH=0FH |
AH:屏幕字符列数;AL:显示模式;BH:页码。 |
|
| 写字符串 | AH=13H |
AL:写模式;BH:页码;BL:颜色;CX:字符串长度;DH:行;DL:列ES:BP:字符串偏离量。 |