显示器原理及接口&&显示器BIOS编程III(编程部分)

          显示器的文件模式下,IBMPC的显示器屏幕被划分为80行25列。只要显示器处于文本模式。无论其是单色还是彩色,这一点都是相同的。计算机启动的时候,显示器默认的设置就为文本模式。根据显示器的类型,该模式可以相应的有所更改。显示器的类型有MDA、CGA、EGA、VGA。屏幕上的各点可以通过行列坐标进行定位。

 

 

 

1、显示服务(Video Service——INT 10H)
00H —设置显示器模式0CH —写图形象素
01H —设置光标形状0DH —读图形象素
02H —设置光标位置0EH —在Teletype模式下显示字符
03H —读取光标信息0FH —读取显示器模式
04H —读取光笔位置10H —颜色
05H —设置显示页11H —字体
06H、07H —初始化或滚屏12H —显示器的配置
08H —读光标处的字符及其属性13H —在Teletype模式下显示字符串
09H —在光标处按指定属性显示字符1AH —读取/设置显示组合编码
0AH —在当前光标处显示字符1BH —读取功能/状态信息
0BH —设置调色板、背景色或边框1CH —保存/恢复显示器状态

(1)、功能00H

 功能描述:设置显示器模式
入口参数:AH=00H
AL=显示器模式,见下表所示
出口参数:

可用的显示模式如下所列:

 显示模式显示模式属性显示模式显示模式属性 
 00H40×2516色 文本01H40×2516色 文本
 02H80×2516色 文本03H80×2516色 文本
 04H320×2004色05H320×2004色
 06H640×2002色07H80×252色 文本
 08H160×20016色09H320×20016色
 0AH640×2004色0BH保留 
 0CH保留 0DH320×20016色
 0EH640×20016色0FH640×3502(单色)
 10H640×3504色10H640×35016色
 11H640×4802色12H640×48016色
 13H640×480256色 

对于超级VGA显示卡,我们可用AX=4F02H和下列BX的值来设置其显示模式。

 BX显示模式属性BX显示模式属性 
 100H640×400256色101H640×480256色
 102H800×60016色103H800×600256色
 104H1024×76816色105H1024×768256色
 106H1280×102416色107H1280×1024256色
 108H80×60文本模式109H132×25文本模式
 10AH132×43文本模式10BH132×50文本模式
 10CH132×60文本模式 

(2)、功能01H

 功能描述:设置光标形状
入口参数:AH=01H
CH低四位=光标的起始行
CL低四位=光标的终止行
出口参数:

(3)、功能02H

 功能描述:用文本坐标下设置光标位置
入口参数:AH=02H
BH=显示页码
DH=行(Y坐标)
DL=列(X坐标)
出口参数:

(4)、功能03H

 功能描述:在文本坐标下,读取光标各种信息
入口参数:AH=03H
BH=显示页码
出口参数:CH=光标的起始行
CL=光标的终止行
DH=行(Y坐标)
DL=列(X坐标)

(5)、功能04H

 功能描述:获取当前状态和光笔位置
入口参数:AH=04H
出口参数:AH=00h——光笔未按下/未触发,01h——光笔已按下/已触发
BX=象素列(图形X坐标)
CH=象素行(图形Y坐标,显示模式:04H~06H)
CX=象素行(图形Y坐标,显示模式:0DH~10H)
DH=字符行(文本Y坐标)
DL=字符列(文本X坐标)

(6)、功能05H

 功能描述:设置显示页,即选择活动的显示页
入口参数:AH=05H
AL=显示页
对于CGA、EGA、MCGA和VGA,其显示页如下表所列:
模式页数显示器类型
00H、01H0~7CGA、EGA、MCGA、VGA
02H、03H0~3CGA
02H、03H0~7EGA、MCGA、VGA
07H0~7EGA、VGA
0DH0~7EGA、VGA
0EH0~3EGA、VGA
0FH0~1EGA、VGA
10H0~1EGA、VGA
对于PCjr:
AL=80H——读取CRT/CPU页寄存器
81H——设置CPU页寄存器
82H——设置CRT页寄存器
83H——设置CRT/CPU页寄存器
BH=CRT页(子功能号82H和83H)
BL=CPU页(子功能号81H和83H)
出口参数:对于前者,无出口参数,但对PCjr在子功能80H~83H调用下,有:BH=CRT页寄存器,BL=CPU页寄存器

(7)、功能06H和07H

 功能描述:初始化屏幕或滚屏
入口参数:AH=06H——向上滚屏,07H——向下滚屏
AL=滚动行数(0——清窗口)
BH=空白区域的缺省属性
(CH、CL)=窗口的左上角位置(Y坐标,X坐标)
(DH、DL)=窗口的右下角位置(Y坐标,X坐标)
出口参数:

(8)、功能08H

 功能描述:读光标处的字符及其属性
入口参数:AH=08H
BH=显示页码
出口参数:AH=属性
AL=字符

(9)、功能09H

 功能描述:在当前光标处按指定属性显示字符
入口参数:AH=09H
AL=字符
BH=显示页码
BL=属性(文本模式)或颜色(图形模式)
CX=重复输出字符的次数
出口参数:

(10)、功能0AH

 功能描述:在当前光标处按原有属性显示字符
入口参数:AH=0AH
AL=字符
BH=显示页码
BL=颜色(图形模式,仅适用于PCjr)
CX=重复输出字符的次数
出口参数:

(11)、功能0BH

 功能描述:设置调色板、背景色或边框
入口参数:AH=0BH
设置颜色:BH=00H,BL=颜色
选择调色板:BH=01H,BL=调色板(320×200、4种颜色的图形模式)
出口参数:

(12)、功能0CH

 功能描述:写图形象素
入口参数:AH=0CH
AL=象素值
BH=页码
(CX、DX)=图形坐标列(X)、行(Y)
出口参数:

(13)、功能0DH

 功能描述:读图形象素
入口参数:AH=0DH
BH=页码
(CX、DX)=图形坐标列(X)、行(Y)
出口参数:AL=象素值

(14)、功能0EH

 功能描述:在Teletype模式下显示字符
入口参数:AH=0EH
AL=字符
BH=页码
BL=前景色(图形模式)
出口参数:

(15)、功能0FH

 功能描述:读取显示器模式
入口参数:AH=0FH
出口参数:AH=屏幕字符的列数
AL=显示模式(参见功能00H中的说明)
BH=页码

(16)、功能10H

 功能描述:颜色中断。其子功能说明如下:
功能号 子功能名称功能号 子功能名称
00H — 设置调色板寄存器01H — 设置边框颜色
02H — 设置调色板和边框03H — 触发闪烁/亮显位
07H — 读取调色板寄存器08H — 读取边框颜色
09H — 读取调色板和边框10H — 设置颜色寄存器
12H — 设置颜色寄存器块13H — 设置颜色页状态
15H — 读取颜色寄存器17H — 读取颜色寄存器块
1AH — 读取颜色页状态1BH — 设置灰度值

(17)、功能11H

 功能描述:字体中断。其子功能说明如下:
子功能号子功能名称
00H装入用户字体和可编程控制器
10H装入用户字体和可编程控制器
01H装入8×14 ROM字体和可编程控制器
11H装入8×14 ROM字体和可编程控制器
02H装入8×8 ROM字体和可编程控制器
12H装入8×8 ROM字体和可编程控制器
03H设置块指示器
04H装入8×16 ROM字体和可编程控制器
14H装入8×16 ROM字体和可编程控制器
20H设置INT 1Fh字体指针
21H为用户字体设置INT 43h
22H为8×14 ROM字体设置INT 43H
23H为8×8 ROM字体设置INT 43H
24H为8×16 ROM字体设置INT 43H
30H读取字体信息

(18)、功能12H

 功能描述:显示器的配置中断。其子功能说明如下:
功能号    功能名称 功能号   功能名称
10H — 读取配置信息20H — 选择屏幕打印
30H — 设置扫描行31H — 允许/禁止装入缺省调色板
32H — 允许/禁止显示33H — 允许/禁止灰度求和
34H — 允许/禁止光标模拟35H — 切换活动显示
36H — 允许/禁止屏幕刷新

(19)、功能13H

 功能描述:在Teletype模式下显示字符串
入口参数:AH=13H
BH=页码
BL=属性(若AL=00H或01H)
CX=显示字符串长度
(DH、DL)=坐标(行、列)
ES:BP=显示字符串的地址
AL=显示输出方式
 0——字符串中只含显示字符,其显示属性在BL中。显示后,光标位置不变
 1——字符串中只含显示字符,其显示属性在BL中。显示后,光标位置改变
 2——字符串中含显示字符和显示属性。显示后,光标位置不变
 3——字符串中含显示字符和显示属性。显示后,光标位置改变
出口参数:

(20)、功能1AH

 功能描述:读取/设置显示组合编码,仅PS/2有效,在此从略

(21)、功能1BH

 功能描述:读取功能/状态信息,仅PS/2有效,在此从略

(22)、功能1CH

 功能描述:保存/恢复显示器状态,仅PS/2有效,

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值