The goal of this project is to have a LGPL'd Video Bios for Bochs and QEMU.
This VGA Bios is very specific to the emulated VGA card.
It is NOT meant to drive a physical vga card.
The Bochs VBE extension and it's Bochs device backend has been written by Jeroen Janssen (japj).
It impements support for VBE version 2.0.
The Cirrus SVGA extension is designed for the Cirrus emulation in Bochs and QEMU.
The initial patch for the Cirrus extension has been written by Makoto Suzuki (suzu).
The Voodoo Banshee PCI extension is designed for the Banshee emulation in Bochs.
Some parts of the initial version are based on the Cirrus extension code.
2024-06-09 | vruppert | Version 0.9b of the LGPL'd VGABios with several VBE bugfixes released on Github. |
2024-03-03 | vruppert | Version 0.9a of the LGPL'd VGABios with VBE 2.0 protected mode interface for all extensions released on Github. |
2024-01-07 | vruppert | Version 0.8c of the LGPL'd VGABios with some more VBE bugfixes released on Github. |
2023-12-28 | vruppert | Version 0.8b of the LGPL'd VGABios with VBE bugfixes released on Github. |
2023-12-14 | vruppert | LGPL'd VGABios development moved to Github. |
2021-06-03 | vruppert | Version 0.8a of the LGPL'd VGABios with Voodoo Banshee for Bochs and Cirrus support for Bochs and Qemu is available now. This version will be included in the next Bochs release. |
2021-04-12 | vruppert | Added initial version of the LGPL'd VGABIOS for Voodoo Banshee PCI. |
2020-01-03 | vruppert | Version 0.7b of the LGPL'd VGABios with Cirrus support for Bochs and Qemu is available now. This version will be included in Bochs 2.6.11. |
2019-12-29 | vruppert | LGPL'd VGABIOS moved to SVN version control. |
2011-10-30 | vruppert | Version 0.7a of the LGPL'd VGABios with Cirrus support for Bochs and Qemu is available now. This version will be included in Bochs 2.5. |
2009-04-08 | vruppert | Version 0.6c has some improvements and minor bugfixes. |
2008-05-30 | vruppert | Version 0.6b has some improvements and minor bugfixes. |
2006-08-19 | vruppert | Version 0.6a of the LGPL'd VGABios with Cirrus support for Bochs and Qemu is available now. This version is to be included in Bochs 2.3. |
2005-12-29 | vruppert | Version 0.5d is a bugfix release. |
2005-07-07 | vruppert | Version 0.5c is a bugfix release. |
2005-05-24 | vruppert | Here is version 0.5b, with some bugfixes. This version is to be included in Bochs 2.2. |
2005-03-07 | vruppert | Version 0.5a of the LGPL'd VGABios with Cirrus support for Bochs and Qemu is available now. It will be included in the first pre-release of Bochs 2.2. |
2003-11-06 | cbothamy | Version 0.4c is a bugfix release. |
2003-11-04 | cbothamy | Here is version 0.4b, with several improvements and bugfixes. This version is to be included in Bochs 2.1 |
2003-08-17 | cbothamy | Thanks to Volker's effort, we are able to release a 0.4a version to be included in the upcoming Bochs 2.1 |
2002-04-25 | japj |
Latest Changes to the vbe code : |
2002-03-27 | cbothamy | vgabios v0.3a is shipping in Bochs 1.4 release ! |
2002-03-10 | cbothamy | thanks to the great efforts of Jeroen, here is version 0.3a, including a start of implementation of the VESA Bios Extensions. |
2001-11-20 | cbothamy | version 0.2b is a bugfix release. |
2001-11-10 | cbothamy | eventually, here is version 0.2a of the vgabios. You will find bugfixes and new int10 functions implemented, but still no graphic mode working yet. |
2001-05-09 | cbothamy | The first release if the vgabios, labeled version 0.1a is available. |
See the ChangeLog for detailed information.
Go to the download section.
Go to the development home page hosted on savannah.gnu.org
Bochs boot screen | Whatvga showing 24-bpp mode |
To compile the VGA Bios you will need the following packages:
You can get a very basic debugging system: the VGABIOS sends messages to a
usually unused ISA i/o port. The emulator prints the received characters to
log file or console. In Bochs the "unmapped" device plugin must be loaded.
It registers the VGABIOS info port 0x500.
VGABIOS images compiled with the DEBUG symbol set, will use the "printf"
function to write the messages to the info port.
Look at the "testvga.c" file in the archive. This is a minimal Turbo C 2.0
source file that calls a few int10 functions. Feel free to modify it to suit
your needs.
The LGPL'd VGABIOS is known to work with several guest operating systems:
This program has been written by Christophe Bothamy, Jeroen Janssen and Volker Ruppert.
It is protected by the GNU Lesser General Public License, which you should
have received a copy of along with this package.
The VGA Bios has been written without reverse-engineering any existing Bios.
The source code contains code ripped from the LGPL rombios.c of plex86, written
by Kevin Lawton
The source code contains fonts from fntcol16.zip (c) by Joseph Gil avalable at :
ftp://ftp.simtel.net/pub/simtelnet/msdos/screen/fntcol16.zip
The source code is based on information taken from :
You can find the latest release at
http://savannah.gnu.org/projects/vgabios/
For information on plex86, visit the website
http://www.plex86.org/
Please report any bugs, comments, patches for this VGA Bios on
savannah pages.
These fonts are public domain
Links
This home page is located at
http://www.freesoftware.fsf.org/vgabios/
For information on bochs, visit the website
http://bochs.sourceforge.net/
Feedback