GLX Hardware Device Driver for Matrox MGA-G200
Copyright (C) 1999 Wittawat Yamwong

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
WITTAWAT YAMWONG, OR ANY OTHER CONTRIBUTORS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
----------------------------------------------------------------------------

WARNING: THE DRIVER IS IN ALPHA STAGE. USE AT YOUR OWN RISK!

----------------------------------------------------------------------------

The driver is known to work for following graphics cards:
- Millenium G200 and G200SD AGP/PCI 8MB/16MB
- Add other cards here... (Mavel & Mytique)

Environment Variables
=====================
- GLX_NOHW 
	if set, it will disable all hardware acceleration.

- GLX_G200_LOGFILE
	By default all error and debugging messages are written	to standard
	error. If this variable is set to a valid file name, all messages
	will go to this file.

- GLX_G200_LOGLEVEL (default = 1)
	0            => log only error messages.
	1 or not set => error + standard debugging messages
	>1           => more messages

Note: GLX_G200_LOGFILE and GLX_G200_LOGLEVEL are available only if the
driver is compiled with -DMGA_LOG_ENABLED (default)


What The Driver Can And Can't Do
================================
- To enabled hardware acceleration double buffering must be enabled and
  DrawBuffer must be set to GL_BACK.

- 15bpp, 16bpp and 32bpp are supported. Currently only 16 bit depth buffer
  is supported.

- It accelerates rasterization of following primitives:
  1. Flat and gouraud shaded line w/o texture. It doesn't support:
	* Line width other than 1.0
	* Line stipple
	* Antialiased lines
	* Line with textures
	* DrawBuffer != GL_BACK
  2. Accelerated flat and gouraud shaded triangle w/ and w/o texture. If the
     texture is enabled, separate specular color is also supported. The
     hardware acceleration will be DISABLED if one or more of following
     conditions is true:
	* Stipple is enabled
	* DrawBuffer != GL_BACK

- It doesn't support BlendEquation other than GL_FUNC_ADD_EXT.

- Texture.
  * Supports width and height from 1 to 1024. There is no limit in aspect
    ratio.
  * Supported formats: GL_RGB, GL_RGBA, GL_LUMINANCE, GL_INTENSITY,
    GL_LUMINANCE_ALPHA and GL_COLOR_INDEX. The hardware internal format is
    RGB565 or RGBA4444. 32 bit texture is currently not supported.
  * Supports texture environment modes GL_REPLACE, GL_MODULATE and GL_DECAL

- (add more here...)

Note: It will fall back to Mesa's software rendering if the current mode is
not supported by the driver.

--------------------------------------------------------------------------
Wittawat Yamwong <Wittawat.Yamwong@stud.uni-hannover.de>
$Date: 1999/08/09 19:59:37 $
