BIOS如何初始化屏幕?

问题描述

BIOS如何初始化屏幕?我正在寻找一个我一直在网上搜索的答案,但是找不到东西...但是,我已经找到了一个网站!但是,它说here已将初始化为地址C000h。视频卡真的硬连接到内存地址C000h吗?请提前启迪我和TY ...:D

解决方法

视频卡真的硬连线到内存地址C000h吗?

您在谈论视频BIOS,而不是屏幕内存?

在早期的IBM计算机(例如“ PC”,“ XT”或“ AT”)中,128K地址范围从C000h:0hD000h:FFFFh(这是线性地址范围{{ 1}}至C0000h)用于“板载” BIOS不支持的附加卡的固件(BIOS)。

此地址范围的前32K(DFFFFhC0000h)保留给板载BIOS不支持的视频卡;其余的96K可以用于其他类型的卡(例如SCSI硬盘控制器或支持从网络引导的网卡)。

BIOS如何初始化屏幕?

对于带有板载视频卡的计算机,此操作由BIOS本身完成。在“ IBM PCjr”(1983年出售的计算机)的技术参考手册中,您将找到这种BIOS的源代码。

BIOS启动计算机时,它将搜索固件在上述128K地址范围内的附加卡。

它检测视频卡的固件并运行该固件。

视频卡具有自己的固件的原因很简单:

特别是对于提供超过VGA(640x480像素为16种颜色,320x200像素为256种颜色)的视频卡,初始化顺序取决于制造商。

因此,对于现代计算机,您不能回答“通用”问题:“ BIOS如何初始化屏幕?”,但是您只能回答对于特定制造商如何完成此问题。

但是,我怀疑大多数视频卡的固件都会将其置于类似于VGA卡的状态,将其置于BIOS视频模式3(80x25文本),并用空格字符填充视频内存(因此屏幕为空),然后将文本光标置于左上角。