虽然 vbeinfo 说 1440x900 分辨率可用,但无法通过 GRUB2 获得该分辨率

虽然 vbeinfo 说 1440x900 分辨率可用,但无法通过 GRUB2 获得该分辨率

我尝试在 1440x900 分辨率的图形模式下使用 GRUB2,但结果总是乱码:我能得到的最高分辨率是 1280x800。

谷歌搜索显示,只要 vbeinfo 列出了分辨率,GRUB2 就可以使用它。但这似乎不是真的:vbeinfo 说 1440x900 可用,但它不起作用。

从 GRUB2 命令行测试它:

set gxfmode=1440x900
terminal_output gfxterm
# -> garbled nonsense

# back to trusty 640x480
terminal_output console

显卡是英特尔GM965。

一旦 Linux 启动,帧缓冲区就会切换到 1440x900。

在 epheminent 的回复和各种实验后添加

vbeinfo列出了两组模式。

第一组从 0x160 到 0x16b,分辨率为 768x480、960x600、1280x800 和 1440x900

然后 - 经过一堆纯文本模式 - 第二组,包含分辨率 1024x768、800x600 和 640x480

第一组模式不受 的影响915resolution。除 1440x900 外,其他模式均可用。

915resolution可以使用GRUB2 >= 1.99 中提供的模块/命令来改变第二组模式的分辨率。

# in /boot/grub/grub.cfg

insmod 915resolution

# 30, 32, 34 all work for me: all that varies is which modes are altered
915resolution 30 1440 900

# setting an impossible resolution changes the mode to "text-only"
# in my case 1280x1024 is not supported
915resolution 30 1280 1024

显然,1440x900 应该可以工作:添加它915resolution只是一种解决方法。

答案1

有一个915分辨率模块使 GRUB 2 能够启用 Intel 的非标准分辨率。它基于用户空间915分辨率它在运行时为这些分辨率添加 VBE 条目;否则它们无法从 BIOS 获得。

相关内容