gpt4 book ai didi

c - 切换到更高分辨率

转载 作者:太空狗 更新时间:2023-10-29 17:23:32 25 4
gpt4 key购买 nike

最近,我开始用NASM和C开发操作系统。我已经制作了引导加载程序、内核、文件系统等。目前我直接使用VGA文本模式写入地址0x000B8000 。所以,我决定切换到视频模式而不是文本模式。我选择了最大显示分辨率 320x200,但后来我意识到存在三个问题。首先,只有 256 种不同的颜色。其次,分辨率太小。第三,写入地址 0x000A0000 太慢了。我尝试做一些动画,但它非常滞后,有时在下一帧之前等待一秒以上。

我在互联网上搜索了一些关于如何切换到更高分辨率(例如 1920x1080)以及如何使用 256*256*256 颜色而不是仅仅 256 的解释. 我发现的一切都表明很难使用更高的分辨率,因为您必须为所有不同类型的显卡开发驱动程序,并且对于某些显卡没有文档,因此我们必须使用逆向工程。

我真的很想在我的操作系统中引入高分辨率图形。真的很难还是有什么简单的方法?关于如何解决这个问题有什么建议吗?

最佳答案

几乎每个图形适配器都支持 VESA 帧缓冲区语义,您几乎可以配置每个视频模式。缺点是您不能使用供应商特定的功能(加速图形等)

例如,VESA-Xserver 几乎适用于任何图形适配器(但特定型号的适配器要快得多)

另请参阅:https://en.wikipedia.org/wiki/VESA_BIOS_Extensions

关于c - 切换到更高分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34844039/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com