当前位置:首页 > 我的书籍 > 正文内容

早期的图形模式和显卡。

Peirre2年前 (2022-11-12)我的书籍318

以前的显示器是CRT也就是玻璃显像管的显示器,现在是液晶显示器。大有不同。

以前的单色显示器有黑白单显,绿色单显,黑白单显好用一点,所以绿色的单显很少见。

黑白的显示色彩用灰度,分辨率是720X348是电视的高分辨PAL显示。

彩色CRT显示是640X480是N制式分辨率,可以显示256种彩色,已经很不错了。

显示器的一屏含的数据量为连续的32K字节空间。

在HGC 灰度图形显示模式下,90X348=31320可读/可写字节。

32K字节分4个区,每区8K(2000H)

第0页: B0000H,B2000H,B4000H,B6000这四个区。

第1页:B8000H... ...

像素点与内存地址之间的关系是:

    ix=(row/4)*90+(row%4)*8192+col/8

ix是像素,row是行,col是列。


我以HGC黑白显示器的卡来举例说明显卡寄存器:

HGC卡的寄存器包括:M6845索引寄存器,M6845数据寄存器,方式寄存器,状态寄存器,页面控制寄存器。

  1. M6845索引寄存器I/O地址为3B4h,是只写寄存器,可以写数据,向数据寄存器R写数据时先写这里(0<=I<=15)

  2. M6845数据寄存器I/O地址为3B5h,共16个寄存器

  3. 方式寄存器I/O地址为3B8h,是只写寄存器。

  4. 状态寄存器I/O地址为3BAh,是只读寄存器。

  5. 页面控制寄存器I/O 端口地址为 03bfh




不同图形模式下的M6845数据寄存器编程数值

--------------------------------------------------------------------------

  索引值  寄存器号        寄存器名           720X348   640X400  模拟CGA 

     0h          R0       水平字符总数             35h          33h           33h

     1h          R1       水平显示字符总数       2dh         28h           28h

     2h          R2       水平同步位置              2eh         29h           29h

     3h          R3       水平同步宽度              07h         07h           0ah

     4h          R4       垂直字符总数              5bh         68h           68h

     5h          R5       垂直总数调整              02h         02h           02h

     6h          R6       垂直显示字符行数        57h        64h           64h

     7h          R7       垂直同步位置               57h        64h           64h 

     8h          R8       隔行扫描方式               02h        02h           02h 

     9h          R9       最大扫描线地址            03h        03h           01h

   0ah         R10      光标起始                       00h       06h           06h

   0bh         R11      光标结束                       01h       07h           07h

   0ch         R12       起始地址(高位)          00h      00h           00h

   0dh         R13      起始地址(低位)          00h       00h          00h

   0eh         R14      光标(高位)                 00h       00h          00h

    0fh         R15      光标(低柆)                 00h       00h          00h

---------------------------------------------------------------------------


方式寄存器是一个只写寄存器:

位0 =1 80X25字符模式  =0 40X25字符模式,HGC字符模式=1

位1 =1  选择HGC单色图形模式

位3 =1  模式改变期可以有视频信号

位5 =1  在字符模式下,高亮属性变成闪烁属性

位7 =1 32K一页,HGC图形模式的两种 720X348,640X400 =0 16K一页,CGA模式

其它位保留 

实际应用HGC单色模式,编程值是8bh


状态寄存器:

位0 =1    屏幕处于显示允许期间

位3 =1    屏上内容正被显示, =0 处于垂直回扫期间

位7 =1    屏上数据正在显示, =0 处于垂直回扫期间

其它位保留 


页面寄存器是一个只写寄存器:

位1  =1 可以使用显示内存第1页,HGC有完整的64K内存

HGC卡模拟CGA 第1页必须可以使用

其它位保留

HGC图形卡方式 值=03时可以使用第1页,值=01时不可以使用第1页(这里有可能只显示1页,说法有误)


以前家里的电脑是286和HGC卡,当测试显卡时,发现数据在0A0000h之下也就是09fff0到09ffff之间写数据会显示屏错。可能值已经安排到这里了。

后来在286中写了代码,后来无保留的卖给了同学,再去同学家,电脑烧掉了。我赠送了电脑带的所有软件磁盘,一到两盒。软件不多,个人使用方便,不包括他。

286.jpg

分享给朋友:

相关文章

看《游戏设计的236个技巧》后感。

看《游戏设计的236个技巧》后感。

今年5月左右买了一本《游戏设计的236个技巧》然后在家通读,一点点的啃。兴趣的不兴趣的都啃光。游戏设计技巧,这本书写得还不错,不过有很多例子,不是举一反三,而是从一到三。它涵盖了一些耐玩的游戏。比如游...

Blend书籍和感想。

Blend书籍和感想。

最近买了几本书 《Blender3D动画角色创作》《VR-Blender物理仿真与游戏特效开发设计》《Blender权威指南》《Blender大师》快速的读了一遍,加上自己的实际操作,谈谈对Blend...

nRF24LE1 相关模块参数和应用分析

nRF24LE1 相关模块参数和应用分析

主要功能•nRF24L01+2.4 GHz收发器(250 kbps,1Mbps和2 Mbps数据速率)•快速微控制器(8051兼容)•16 kB程序存储器(片上闪存)•1 kB数据存储器(片上RAM)...

nRF无线SOC单片机原理与高级应用一书读后感。

nRF无线SOC单片机原理与高级应用一书读后感。

这两天买了一本书内容是介绍nRF单片机的。说实话这本书出来好几年了。我的单片机也买了两年。以前已经看完英文资料,因为英文的理解会不太准确,读得慢,每次阅读次数不多。所以还是买了这本书。这本书读起来不吃...

原本,纯英文资料,开4899端口的,BIOS级的。

原本,纯英文资料,开4899端口的,BIOS级的。

资料AMI_Debug_Remote_Users_Guide.pdf是不是原本,是不是原本!!!昨天http://www.ami.com/ 资料还是可以共享的,今天限制下载http://ww...

找了好久的BIOS和DOS,向量表和数据表。

找了好久的BIOS和DOS,向量表和数据表。

简单说明一下,中断向量在16位地址的内存最初的000:3FF 数据内,4个字节为一个数组地址。编号为0-FFh,分硬中断和软件中断,分BIOS中断和DOS中断,分系统中断和用户中断。实际上书本上有这些...