I'm trying to use GRUB2 in graphical mode with 1440×900 resolution, but the result is always garbled nonsense: the highest resolution I can get is 1280×800.
Word is from googling that long as vbeinfo lists a resolution, GRUB2 can use it. This doesn't seem to be true: vbeinfo says that 1440×900 is available but it doesn't work.
Testing it from the GRUB2 command line:
set gxfmode=1440x900
terminal_output gfxterm
# -> garbled nonsense
# back to trusty 640x480
terminal_output console
The graphics card is an Intel GM965.
Once linux boots the framebuffer switches to 1440×900.
Added after epheminent's reply and various experiments
vbeinfo
lists two sets of modes.
The first set runs from 0x160 to 0x16b, with resolutions 768×480, 960×600, 1280×800 and 1440×900
Then – after a bunch of text-only modes – the second set, containing resolutions 1024×768, 800×600, and 640×480
The first set of modes aren't altered by 915resolution
. They all work except 1440×900.
The resolution of modes in the second set can be altered using the 915resolution
module / command available in 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
Clearly, 1440×900 should just work: adding it with 915resolution
is just a workaround.
Best Answer
There is a 915resolution module which enables GRUB 2 to enable Intel's non-standard resolutions. It is based off of the userspace 915resolution which adds VBE entries at runtime for these resolutions; they're not otherwise available from BIOS.