[SeaBIOS] Status of SeaBIOS VGA bios.

Gerd Hoffmann kraxel at redhat.com
Wed Oct 26 09:41:39 CEST 2011


> I started converting the VGA bios from the "lgpl vga bios" project (
> http://savannah.nongnu.org/projects/vgabios/ ) a couple of years ago.
> I converted the base code, but did not have time to convert the "VBE"
> or the "cirrus" code.

qemu uses the lgpl vga bios too, slightly modified version, git tree is
at git://git.qemu.org/vgabios.git

>> I am currently working on a emulated graphic adapter for Xen and I
>> would like to implement a VBE driver for it. This VGA BIOS seems to be
>> a good base for that kind of work. Would that be possible ?
> It should work.  Ideally, someone would complete the port of the "lgpl
> vgabios".  This involves translating the remaining 16bit assembler to
> C code and then doing lots of testing on the result.

Just curious: What kind of graphic adapter do you plan to create?

The vgabios+qemu have two different ways to handle VBE support:  One is
the cirrus emulation, where the vgabios programms the cirrus like real
hardware.  The other one is the bochs vbe support.  That is basically a
side channel which allows the bios to program video modes in a very
simple way using special I/O ports.  All non-cirrus vga cards emulated
by qemu (std, vmware, qxl) support that.

Supporting the bochs vbe interface for one more model is just a matter
of adding a few lines with the PCI IDs to the vgabios.git Makefile.  If
you don't want or don't can go this route it is most likely easier to go
with the C version in the seabios.git tree than touching the vgabios.git
assembly code.


More information about the SeaBIOS mailing list