Linux GGI Graphics
                                    by
                              Jason McMullan

Introduction
------------

       The dynamic GGI libarary (libggi-dynamic) is a flexible
interface library for drawing. It provides an opaque interface
to the display's acceleration functions, and has been designed
such that porting to other display types (X, Win32, etc) is
easy. The code is still alpha, so expect things to break overnight...

What Is Known To Work
---------------------

       - VGA 1bit, 16color, 8bit, and ModeX
       - text-16, linear-1bit and linear-8bit frame buffers
       - up to 16bit ramdacs

Future directions
-----------------

       Once event handling is finished in Linux KGI, I will
place it in libggi-dynamic. Once libggi-dynamic can handle
mouse and keyboard events, expect these feature to follow:

       - SVGAlib wrapper (ELF only)
       - Quake wrapper (minimal Xlib calls)
       - PPM display (frame dumping)
       - Thread Safety

How To Install And Use
----------------------

       In the libggi-dynamic directory, do:

       $ make
       $ su
       # make install

       For some demos of libggi code, see demos/demo.c and
demos/saver.c

How It Works
------------

       libggi-dynamic consists of a stub-lib (libggi.a) and
a multitude of dynamic drivers. The dynamic libraries are
selected from a `display' dynamic library, such as display-kgi
or display-X11. The display dynamic library then load the
dynamic libs needed for the requested mode, taking hints
from the graphics device if necessary.

--
Jason McMullan - Research Programmer, Robotics Institute, CMU