[SeaBIOS] [PATCH] Enable SeaBIOS bootsplash in qemu

Kevin O'Connor kevin at koconnor.net
Sun Aug 1 21:42:35 CEST 2010

These two patches enable qemu to use the recently added SeaBIOS
bootsplash code.  The first patch is for SeaBIOS - it enables finding
the "bootsplash.jpg" file from either CBFS (on coreboot) or fw_cfg (on
QEMU).  The second patch is for qemu - it enables loading a
"bootsplash.jpg" file into fw_cfg from the bios roms directory if the
file is present.

Some notes:

This uses the qemu "rom" interface for loading the jpeg file.  It
seems to work, but I'm not sure if this is strictly correct.

The jpeg viewer in SeaBIOS will look at the image size and try to find
a vesa graphics mode that supports that size.  So, choose images that
are exactly 640x480, 1024x768, etc.  Also, the SeaBIOS viewer has
stripped down support for jpegs - not all valid jpegs will work.  Some
quick tests with the netpbm tools worked okay for me.

SeaBIOS only shows the bootsplash during the interval between vgabios
init and OS execution.  This is generally too short a time to be seen.
Add "-menu boot=on" to the qemu command line to have it shown longer.

Unfortunately, the vgabios doesn't support writing text to the screen
while in a vesa video mode.  So, this means that if a user selects F12
for the boot menu, they can't actually see the boot menu.  This will
need to be fixed in SeaBIOS in a follow up patch.


More information about the SeaBIOS mailing list