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

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


Cirrus SVGA extension
---------------------

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).


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

Untar the archive, and type make. You should get a "VGABIOS-lgpl-latest.bin"
file. Alternatively, you can use the binary file "VGABIOS-lgpl-latest.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 image 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.


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 info@vruppert.de
You can find the latest release at : http://www.nongnu.org/vgabios/
For any information on bochs, visit the website http://bochs.sourceforge.net/
For any information on qemu, visit the website http://fabrice.bellard.free.fr/qemu/


History
-------
vgabios-0.6c : Apr 08 2009
  - Volker
    . added DPMS support to cirrus vgabios (patch from Gleb Natapov)
    . use VBE LFB address from PCI base address if present
    . added support for a lot more non-standard VBE modes (e.g. widescreen modes)
    . minor bugfixes

vgabios-0.6b : May 30 2008
  - Volker
    . added PCI data structure for the Cirrus VGABIOS images
    . minor bugfixes in biossums utility, VBE support and makefile

vgabios-0.6a : Aug 19 2006
  - Volker
    . added minimal support for the video parameter table (VPT)
    . Cirrus SVGA now supports the "no clear" bit in Cirrus and VESA mode
    . Bochs VBE protected mode interface improved
    . save/restore video state support for Bochs VBE and standard VGA added
    . generate vbetables.h dynamicly
    . VBE video memory increased to 8 MB (VBE dispi ID changed to B0C4)
    . lots of 4bpp VBE fixes (all 4bpp VBE modes now enabled)
    . VGA compatible setup for VBE modes added

vgabios-0.5d : Dec 29 2005
  - Volker
    . Bochs VBE protected mode interface added (based on a patch by malc@pulsesoft.com)
    . biossums utility now supports VGABIOS sizes up to 64 kBytes
    . VGA mode 0x11: all color planes must be enabled in this 2-color VGA mode

vgabios-0.5c : Jul 07 2005
  - Volker
    . BIOS configuration word usually reports initial mode 80x25 color text
    . vgabios function 0x0e (write teletype): linefeed (0x0a) only increments the
      cursor row value

vgabios-0.5b : May 24 2005
  - Volker
    . fixed return value for the default case in the VBE section (non-debug mode)
    . removed unused stuff

vgabios-0.5a : Mar 07 2005
  - Volker
    . Cirrus SVGA extension (initial patches from Makoto Suzuki, improvements
      from Fabrice Bellard)
    . vgabios image size is now exactly 32k with a checksum
    . a lot of vgabios and vbe functions rewritten in assembler
    . dynamicly generated VBE mode info list
    . write character function for CGA and LINEAR8 modes
    . read/write graphics pixel for some graphics modes
    . text scroll feature for some graphics modes
    . VBE 8-bit DAC support

vgabios-0.4c : Nov 06 2003
  - Christophe
    . fix font problem on initial screen of NT4 Loader
    
vgabios-0.4b : Nov 04 2003
  - Volker
    . fix offset of character tables
    . optimizations of CRT controller accesses
    . VBE i/o registers changed to 0x01CE/CF 
      (suggestion from Daniel Gimpelevich)
    . "noclear" flag stored in BIOS area
    . fix character height returned by get_font_info function

vgabios-0.4a : Aug 17 2003
  - Volker
    . VBE mode search rewritten (VBE modes with LFB bit removed)
    . many bugfixes and optimizations
    . write character function implemented for graphics modes
    . support for 15bpp, 16bpp, 24bpp and 32bpp VBE modes added
    . SVGA mode 0x6A added
    . VBE modes 0x102, 0x117, 0x118 and 0x142 (Bochs specific)

vgabios-0.3b : Nov 23 2002
  - Christophe
    . added lfb-mode numbers (patch from mathis)
    . updated the Makefile
    . removed display of copyrights.
    . changed the Copyright string to "LGPL VGABios developers"
  - Volker
    . set the cursor shape depending on the current font height
    . clear BL before calling int 0x10 function 0x1103 in vgabios_init_func
    . added some text font functions
  - Jeroen
    . Forced to new DISPI (0xb0c1) interface (requires latest bochs vbe code)
    . Added multibuffering support
    . Added new DISPI interface for: virt width, height, x offset, y offset
    . Added LFB modes (to be used with the vbe-lfb patch in bochs)
      see VBE_HAVE_LFB in vbe.c (currently default enabled)
    . updated TODO & docs for changes after bochs 1.4

vgabios-0.3a : Mar 10 2002
  - Christophe
    . Fixed bug in function ah=13
  - Jeroen
    . updated vbebios implementation to new api
    . added vbe_display_api documentation
    . added 640x400x8, 640x480x8, 800x600x8, 1024x768
      (>640x480 needs a special bochs patch atm)
    . added 320x200x8 vbe support (uses the standard 320x200x8 vga mode to
      display, this allows for testing & having something on screen as well,
      at least until bochs host side display is up & running)
    . adding lfbprof (vbe) testprogram (+some small fixes to it)
    . merging with vbebios 0.2

vgabios-0.2b : Nov 19 2001
  - Christophe
    . Fixed bug in function ah=13

vgabios-0.2a : Nov 09 2001
  - Christophe
    . Included bugfix from techt@pikeonline.net about grayscale summing
    . Added the "IBM" string at org 0x1e as Bart Oldeman suggested
    . Fixed DS and ES that where inverted in the int10 parameters list!
    . The following have been implemented :
	- function ax=1a00, ax=1a01, ah=1b
	- function ax=1130
    . Added debug messages for unimplemented/unknown functions
      Must be compiled with DEBUG defined. The output is trapped
      by the unknown-ioport driver of plex/bochs (port 0xfff0 is used)

vgabios-0.1a : May 8 2001
  - Christophe
    . First release. The work has been focused only on text mode.
    . The following have been implemented :
	- inits
	- int 10 handler
	- functions ah=00, ah=01, ah=02, ah=03, ah=05, ah=06, ah=07, ah=08
	  ah=09, ah=0a, ah=0e, ah=0f, ax=1000, ax=1001, ax=1002, ax=1003
	  ax=1007, ax=1008, ax=1009, ax=1010, ax=1012, ax=1013, ax=1015
	  ax=1017, ax=1018, ax=1019, ax=101a, ax=101b, ah=12 bl=10,
	  ah=12 bl=30, ah=12 bl=31, ah=12 bl=32, ah=12 bl=33, ah=12 bl=34
	  ah=13
