¿Cómo fuerzo a GRUB a mantener el modo de video después de cambiar al sistema operativo?

¿Cómo fuerzo a GRUB a mantener el modo de video después de cambiar al sistema operativo?

Utilizo GRUB como gestor de arranque para mi sistema operativo personalizado. Quiero que ingrese al modo de gráficos por mí para no tener que hacerlo yo mismo en mi sistema. Sin embargo, antes de que GRUB pase el control al sistema operativo, el modo de vídeo vuelve a cambiar al modo de texto de 80x25. Intenté usarlo set gfxpayload=keeppero parece que no hace nada. El modo que elegí (usando set gfxmode=1024x768x24) funciona bien mientras GRUB aún está activo, pero antes de pasar el control al punto de entrada de mi sistema operativo, vuelve al modo de texto. ¿Estoy haciendo algo mal? Y aquí está mi grub.cfgarchivo:

set root=(hd0,1)

set gfxmode=1024x768x24
set gfxpayload=keep

insmod vbe
insmod vga
insmod video_cirrus
insmod gfxterm

set menu_color_normal=red/blue
set menu_color_highlight=green/blue

loadfont /boot/grub/fonts/unicode.pf2

terminal_input console
terminal_output gfxterm

set timeout=1
set default=0

menuentry "Trolololo" {
    multiboot /kernel
    boot
}

Respuesta1

Problema resuelto. Como sugirió Sawdust, analizar el código fuente de GRUB era un camino a seguir ( grub_multiboot_set_consolefunción en grub-2.00/grub-core/loader/multiboot.cel archivo).

El problema era que mi kernel se carga mediante multiboot <filename>comando y Linux se carga (en la mayoría de los casos) mediante linux <filename>comando. La especificación de arranque múltiple requiere que se proporcione información sobre el modo de video preferido en el encabezado de arranque múltiple. Si no se proporciona esa información, GRUB vuelve al modo de texto antes de iniciar el kernel e ignora por completo gfxpayloadla variable.

información relacionada