最近,我开始在NASM和C开发一个操作系统.我已经制作了一个启动加载程序,内核,文件系统等.到目前为止,我直接使用VGA文本模式来写入地址0x000B8000.所以,我决定切换到视频模式而不是文本模式.我选择了最大显示分辨率320×200,但后来我意识到有三个问题.首先,只有256种不同的颜色.其次,分辨率太小.第三,写入地址0x000A0000太慢.我尝试做一些动画,但它非常迟钝,有时它会在下一帧之前等待超过一秒钟.
我在互联网上搜索了一些关于如何切换到更高分辨率的解释,如1920×1080以及如何使用256 * 256 * 256颜色而不是256.我发现的一切都说很难使用更高的分辨率,因为你必须为所有不同类型的显卡开发驱动程序,对于某些卡没有文档,因此我们必须使用逆向工程.