我正在编写在加载任何操作系统之前以实模式运行的代码。我的程序的一部分涉及将信息转储到视频显示器,而标准的 80x25 文本模式并没有削减它。
许多版本的 Windows 和其他操作系统似乎可以毫无问题地切换到更大的文本模式,我认为是 43 行,当它们显示内核恐慌时。我知道更大的文本模式已经存在了很长时间,所以我希望至少有一种标准模式。
这里有一个相当大的 BIOS 视频模式列表:
http://www.columbia.edu/~em36/wpdos/videomodes.txt
不幸的是,相同的模式编号似乎在芯片组之间的含义差异很大。
曾几何时,我似乎记得曾经使用一种名为 VESA BIOS 的东西以独立于设备的方式访问 Super VGA 图形模式,但我似乎还记得涉及必须加载的 DOS TSR。这不是一个选项在这里,因为 DOS 没有运行。
我正在寻找一种可以在最广泛的硬件上运行的模式,包括 VMware ESXi 中的虚拟视频适配器。更改模式的代码也需要紧凑,所以我希望一个简单的 Int 10h 可以做到。
有任何想法吗?Windows 和 VMware 内核恐慌是如何做到的?