Plex86/Bochs VGABios
--------------------

The goal of this project is to have a LGPL'd Video Bios in plex86
and bochs.
This VGA Bios is very specific to the emulated VGA card.
It is NOT meant to drive a physical vga card.


Install
-------
To compile the VGA Bios you will need :
- gcc
- bcc
- as86
- ld86

Untar the archive, and type make. You should get a "vgabios.bin" file.
Alternatively, you can use the binary file "vgabios-XXX.bin", i have
compiled for you.

Edit your plex86/bochs conf file, and modify the load-rom command in the
VGA BIOS section, to point to the new vgabios.bin file.


Debugging
---------
You can get a very basic debugging system: messages printed by the vgabios.
You have to register the "unmapped" device driver in plex86 or bochs, and make
sure it grabs port 0xfff0.

Comment the #undef DEBUG at the beginning of vgabios.c. 
You can then use the "printf" function in the bios. 


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.
The VGA Bios in its current version has been very little tested.


Copyright and License
---------------------
This program has been written by Christophe Bothamy
It is protected by the GNU Lesser Public License, which you should
have 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 rombios.c of plex86, written
by Kevin Lawton <kevin2001@yahoo.com>

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

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


Feedback
--------
Please report any bugs, comments, patches for this VGA Bios to cbothamy@free.fr

You can find the latest release at : http://cbothamy.free.fr/projects/vgabios/

For any information on plex86, visit the website http://www.plex86.org/
For any information on bochs, visit the website http://bochs.sourceforge.net/
