Download Bochs Driver
Plex86/Bochs LGPL VGABios
News
Bochs IRC Chat Transcripts The Bochs community held an IRC open discussion chat on Sunday, February 1, 2004. We talked about current and future developments.Here are some transcripts of earlier conversations: October 13, 2002, April 7, 2002, June 19, 2001, May 30, 2001. Bochs at ISCA-35. Fixed compatibility with blit-only GOP (e.g. OVMF Bochs) Fixed ignoring # in DeviceProperty and NVRAM Delete; Renamed Block to Delete in ACPI,DeviceProperties, and NVRAM; Added MacBookPro16,2 and MacBookPro16,3 model codes; Added PCI device scanning policy support (e.g. VIRTIO) Improved playback performance in AudioDxe. Bochs is a highly portable open source IA-32 (x86) PC emulator written in C, that runs on most popular platforms. Bochs project includes emulation of the Intel x86 CPU, common I/O devices, and a. Windows 10 Img File For Bochs.
To access your CDROM in DOS, you must download an IDE CDROM driver. Bochs emulates a very generic CDROM drive, and several drivers are known to work. This section describes how to set up your config.sys and autoexec.bat to enable the CDROM.
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. |
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.
Development
Go to the development home page hosted on savannah.gnu.org
Screenshots
Not yet available :-(
Download
Version | Source Code | Binary for Bochs VBE / Archive with all binaries (*) | Binary for Bochs VBE with debug | Binary for Cirrus emulation | Binary for Cirrus emulation with debug |
---|---|---|---|---|---|
latest | via SVN | VGABIOS-lgpl-latest.bin | VGABIOS-lgpl-latest.debug.bin | VGABIOS-lgpl-latest.cirrus.bin | VGABIOS-lgpl-latest.cirrus.debug.bin |
0.7b | vgabios-0.7b.tgz | vgabios-0.7b-bin.tgz (*) | - | - | - |
0.7a | vgabios-0.7a.tgz | vgabios-0.7a.bin | vgabios-0.7a.debug.bin | vgabios-0.7a.cirrus.bin | vgabios-0.7a.cirrus.debug.bin |
0.6c | vgabios-0.6c.tgz | vgabios-0.6c.bin | vgabios-0.6c.debug.bin | vgabios-0.6c.cirrus.bin | vgabios-0.6c.cirrus.debug.bin |
0.6b | vgabios-0.6b.tgz | vgabios-0.6b.bin | vgabios-0.6b.debug.bin | vgabios-0.6b.cirrus.bin | vgabios-0.6b.cirrus.debug.bin |
0.6a | vgabios-0.6a.tgz | vgabios-0.6a.bin | vgabios-0.6a.debug.bin | vgabios-0.6a.cirrus.bin | vgabios-0.6a.cirrus.debug.bin |
0.5d | vgabios-0.5d.tgz | vgabios-0.5d.bin | vgabios-0.5d.debug.bin | vgabios-0.5d.cirrus.bin | vgabios-0.5d.cirrus.debug.bin |
0.5c | vgabios-0.5c.tgz | vgabios-0.5c.bin | vgabios-0.5c.debug.bin | vgabios-0.5c.cirrus.bin | vgabios-0.5c.cirrus.debug.bin |
0.5b | vgabios-0.5b.tgz | vgabios-0.5b.bin | vgabios-0.5b.debug.bin | vgabios-0.5b.cirrus.bin | vgabios-0.5b.cirrus.debug.bin |
0.5a | vgabios-0.5a.tgz | vgabios-0.5a.bin | vgabios-0.5a.debug.bin | vgabios-0.5a.cirrus.bin | vgabios-0.5a.cirrus.debug.bin |
0.4c | vgabios-0.4c.tgz | vgabios-0.4c.bin | vgabios-0.4c.debug.bin | - | - |
NOTE: Versions prior to 0.4c are no longer available for download.
Introduction
The goal of this project is to have a LGPL'd Video Bios for Plex86 and Bochs.
This VGA Bios is very specific to the plex86/bochs emulated VGA card.
It is NOT meant to drive a physical vga card.
You will probably fry it if you try. You have been warned.
Installation
To compile the VGA Bios you will need the following packages:
- make
- gcc (for 'biossums', 'vbetables-gen' and VGABIOS preprocessing)
- dev86 (bcc, as86)
Alternatively, you can use one of the precompiled binary files present inthe archive.
Edit your bochs config file, and modify the 'vgaromimage' directive to pointit to the VGABIOS image you want to use.
Debugging
Bochs Windows
You can get a very basic debugging system: the VGABIOS sends messages to ausually unused ISA i/o port. The emulator prints the received characters tolog 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.
Testing
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.
In its current state, the VGABios has been very little tested. What is knowto work:
- MS-Dos
- FreeDos
- Win95
- Various kind of linuxes in text mode
Copyright and License
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 shouldhave received a copy of along with this package.
Reverse Engineering
The VGA Bios has been written without reverse-engineering any existing Bios.
Acknowledgment
The source code contains code ripped from the LGPL rombios.c of plex86, writtenby 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
These fonts are public domain
Bochs Os
The source code is based on information taken from :
- Kevin Lawton's vga card emulation for Bochs/Plex86
- Ralf Brown's interrupts list avalaible at http://www.cs.cmu.edu/afs/cs/user/ralf/pub/WWW/files.html
- Finn Thogersons' VGADOC4b available at http://home.worldonline.dk/~finth/
- Michael Abrash's Graphics Programming Black Book
- Francois Gervais' book 'programmation des cartes graphiques cga-ega-vga' edited by sybex
- DOSEMU 1.0.1 source code for several tables values and formulas
Links
You can find the latest release at http://savannah.gnu.org/projects/vgabios/
This home page is located athttp://www.freesoftware.fsf.org/vgabios/
For information on plex86, visit the website http://www.plex86.org/
For information on bochs, visit the website http://bochs.sourceforge.net/
Download Bochs Driverpack
Feedback
Download Bochs Drivers
Please report any bugs, comments, patches for this VGA Bios on savannah pages.