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

早期的图形模式和显卡。

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

以前的显示器是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

分享给朋友:

相关文章

Intel 64位 和 IA-32位 增补软件开发手册相关图表。(大部分)

Intel 64位 和 IA-32位 增补软件开发手册相关图表。(大部分)

看了相关Intel软件开发手册,感觉到有些图非常有用,现在留图备查,有什么问题可以留言。有很多,并不是十分清楚。这些图和CPU的寄存器,内存,和系统的数据结构相关,还有一些硬件,也就是CPU为中心的计...

来点达芬奇手稿,看看当时发生了什么。【读书记录】

来点达芬奇手稿,看看当时发生了什么。【读书记录】

达芬奇笔记列奥纳多.达.芬奇,各方面集成的天才大师。这些是他的原创手稿。在这里,一起探索大师头脑深处的秘密。都是以前的未解之迷。这辆车靠近火绳钩枪尾部的部分被设定为a,当火绳钩枪的尾部向后移动时,这部...

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

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

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

B站粉丝实时查看器B-BOX,粉丝牌[书籍文摘]

B站粉丝实时查看器B-BOX,粉丝牌[书籍文摘]

今天去图书馆看杂志,发现《无线电》杂志内容今年大变样。很有趣还很生动。和现在的一些新东西共同进步。这里讲到的是B站粉丝实时查看器 B-BOX,原文在《无线电》杂志上。【包看包会系列】bilibili粉...

重翻旧书,温故MFC模块VC windows 编程。

重翻旧书,温故MFC模块VC windows 编程。

MFC模组是微软提供的源码级别模块,开发应用程序得心上手,开发速度很快。很多人初学程序语言,不知道如何上手编第一个应用。也许应用太容易,看不上。太难自己又完不成。实际上,程序只是解决问题的一个工具,也...

这两天忙活,提交一个nrf 单片机的资料。

这两天忙活,提交一个nrf 单片机的资料。

在此处公布一个英文版无线射频51系列单片机资料,型号为nrf24LE1,智能小车,键盘,鼠标上都有使用这个芯片,用途很广。资料下载:nRF24LE1-F16Q48-R_Nordic.pdf简介:是一块...