==================================================================================
   G R A P H I X  v4.02 for Freepascal - Date: March 4th, 2001
           Copyright (c) 1999-2001 Michael Knapp
    Graphics-Library for Freepascal - GO32V2, WIN32 and Linux
==================================================================================
  written by Michael Knapp (c) 1999-2001
  contact: mknapp@gmx.at
==================================================================================

Contents:
=========

  1. INTRODUCTION
     1.1. What is it ?
     1.2. Important
     1.3. Copyrights
     1.4. Thanks to ...
  2. OVERVIEW
     2.1. Requirements
     2.2. Features
     2.3. Parts (=Units) of GraphiX
  3. REFERENCE
  4. **VERY** FREQUENTLY ASKED QUESTIONS
     4.1. Why are the colors of images messed up in 8bit modes ?

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

1. INTRODUCTION
===============

  1.1. What is it ?
  ~~~~~~~~~~~~~~~~~
    A Graphics-Library for Freepascal GO32V2, Win32 and Linux supporting a wide range
    of resolutions and color-depths on modern graphics cards

  1.2. Important
  ~~~~~~~~~~~~~~
    - GX/FP 4.0 is now released under LGPL - see LGPL.TXT 

  1.3. Copyrights
  ~~~~~~~~~~~~~~~
    - GraphiX for Pascal (c) Michael Knapp
    - The CHR-Font Object of GXTEXT is based on CHR.PAS (c) Jean-Pierre Planas
    - Inflate-Routine: inflate.c -- Not copyrighted 1992 by Mark Adler
    - All other names are copyrighted by their respective owners

  1.4. Thanks to ...
  ~~~~~~~~~~~~~~~~~~
    ... Ing. Franz Glaser, for helping me 'hitting the web'
    ... S3 Inc., for sending the databooks for the Trio32/64 and ViRGE chips
    ... Peter Gruy, for borrowing me a S3 Trio64V+ and a Tseng ET6000 for developing & testing
    ... Peter Gruy, for torturing his Matrox Millenium II PCI/8MB with GraphiX ;-)
    ... Peter Gruy again, for lending me a CD-ROM with many FLI/FLC files for testing the FLC-player
    ... all users who mailed me suggestions, bug-reports, ...
    ... Jean-Pierre Planas for his BGI-CHR-Font code
    ... Trident Microsystems Inc. too, for sendenig me the databook for the ProVidia9682-Chip
    ... Jean-Pierre Planas again, for some ideas and bugs
    ... Andreas Petersson for borrowing me a Tseng ET6000
    ... every "Bug-Reporter"
    ... Benjamin Kalytta for the ANI-Loader in GXMEDIA
    ... Dennis Heinz for helping me to fix the 15bit-MSVC-Decoder bug

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

2. OVERVIEW
===========

  2.1. Requirements
  ~~~~~~~~~~~~~~~~~
    * Freepascal 1.0.4
    * x86-System with
      - GO32V2 ... MS-DOS-compatible OS
      - WIN32 .... Windows95/98/2000/NT4 with DirectX3
      - Linux .... i386 Linux with SVGAlib installed
    * absolute minimum
      - 386SX+387
      - 4MB RAM
      - ISA-SVGA-graphics card with 8bit DAC, 512KB, VESA 1.2
    * minimum
      - 486SX, 486DX, 486DX2, 486DX4
      - 16MB RAM
      - VLB- or PCI-SVGA-graphics card with 8/15/16/24/32bit-DAC, 2MB, LFB, VESA 2.0
    * recommended
      - AMD K5 - Cyrix 6x86 - Intel Pentium
      - 32MB RAM
      - PCI-SVGA-graphics card with 8/15/16/24/32bit-DAC, 4MB, VESA 2.0
    * optimum
      - AMD K6/K7 - Cyrix 6x86MX - IDT Winchip C6 - Intel Pentium MMX/II/III
      - 64MB RAM
      - PCI- or AGP-SVGA-graphics card with 8/15/16/24/32bit-DAC, 8MB, VESA 2.0

  2.2. Features
  ~~~~~~~~~~~~~
    = supported resolutions:
      - all resolutions

    = supported color modes
      - 8bit  (3:3:2)
      - 15bit (5:5:5)
      - 16bit (5:6:5)
      - 24bit (8:8:8)
      - 32bit (8:8:8:8)

    = supported drawing methods & techniques (GO32V2)
      - VGA-Window
      - Linear Frame Buffer
      - Hardware Acceleration
      - Double Buffering
      - Virtual Buffer Management

    = supported standard/hardware (GO32V2)
      - VESA (1.2, 2.0) .............. bank, LFB
      - 3Dfx Voodoo 3 (and Banshee) .. bank, LFB
      - ARK Logic .................... bank, LFB
      - Cirrus Logic (5420 - 5485) ... bank, LFB
      - Matrox (2x64W, 1x64SG) ....... bank, LFB, hardware
      - S3 (Vision, Trio, ViRGE) ..... bank, LFB, hardware
      - Trident Microelectronics ..... bank, LFB, hardware
      - Tseng Labs (not ET3000) ...... bank, LFB

    = supported instruction sets
      - 8086/80186/80286/80386-instruction set
      - MMX-instruction set is used on MMX-capable-processors
        (Pentium MMX, Pentium II, AMD K6, AMD K6-2, ...)

    = successfully tested on:
      - Cirrus Logic GD5426, 1024KB, VLB
      - Cirrus Logic GD5428, 1024KB, VLB
      - Elsa Victory Erazor (Riva 128), VBE3.0, 4096KB (by R. Ehlers)
      - Matrox Millenium (2064W), 4096KB, PCI
      - Matrox Millenium II (2164W), 8192KB, PCI
      - Matrox Mystique 220 (1164SG), 2048KB, PCI
      - S3 Trio64V+, 1024KB, PCI
      - S3 Vision864, 2048KB, VLB
      - S3 ViRGE/DX, 4096KB, PCI
      - Trident 9000i, 512KB, ISA
      - Trident 9440AGi, 1024KB, VLB
      - Tseng ET4000W32, 1024KB, ISA
      - Tseng ET6000, 2304KB, PCI
      - Elsa Victory Erazor (Riva 128), VBE3.0, 4 MB
      - nVidia Riva-TNT-16MB, AGP, VBE3.0, 4MB
      - nVidia Riva-TNT2-Ultra 32MB, AGP, VBE3.0, 4MB
      - 3Dfx Voodoo 3, PCI, VBE 3.0, 16MB

    = loading-support for image formats
      - BMP - Windows Bitmap - 1bit, 4bit, 8bit, 16bit, 24bit and 32bit - uncompressed, RLE4, RLE8
      - GIF - Graphics Interchange Format - 4bit and 8bit
      - CUR - Windows Cursor - 1bit, 4bit, 8bit and 24bit - all sizes  - uncompressed, RLE4, RLE8
      - ICO - Windows Icons - 1bit, 4bit, 8bit and 24bit - all sizes  - uncompressed, RLE4, RLE8
      - JPG - JPEG Image Format - grayscale, RGB - standard/extended/progressive huffmann encoded (SOF0/SOF1/SOF2)
      - PCX - Zsoft Paintbrush - 1bit, 4bit, 8bit, 8bit-grayscale and 24bit
      - PNG - Portable Network Graphics - all types (PNG Specification ver 1.0)
      - PBM/PGM/PPM - Portable Bitmap/Gray/Pixel Map - ASCII & Binary
      - TGA - Truevision Targa - 8bit, 16bit, 24bit and 32bit uncompressed & RLE, bottom-up and top-down
      - TIF - Tagged Image Format - bilevel, indexed, RGB, CMYK - uncompressed, packbits and LZW

    = saving-support for image formats
      - BMP - Windows Bitmap - 24bit
      - PPM - Portable Pixel Map - ASCII
      - TGA - Truevision Targa - 24bit uncompressed

  2.3. Parts (Units) of GraphiX - Filelist
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  GraphiX - Source
  ----------------
    gxtype.pp
    graphix.pp
    gxgo32v2.ppi
    gxwin32.ppi
    gxlinux.ppi
    gximg.pp
    gx2d.pp
    gxmouse.pp
    gx3d.pp
    gx3dtype.pp
    gxmedia.pp
    gximeff.pp
    gxpci.pp
    gxcrt.pp
    gxcrtext.pp
    gxerror.pp
    gxhw_ati.pp
    gxhw_ark.pp
    gxhw_cir.pp
    gxhw_trd.pp
    gxhw_tsg.pp
    gxhw_mga.pp
    gxhw_vdo.pp
    gxhw_s3.pp
    gxtext.pp
    gxvbe.pp
    gxbase.pp
    gxmdecod.pp
    graphixb.ppi
    graphixl.ppi
    graphixm.ppi
    gxglobal.cfg
    gxlocal.cfg
    gxsup.pp
    gxmem.pp 
    gxvidmem.pp
    gxvga.pp
    gxvgalib.pp
    gxdd.pp
    gxttf.pp
    gxdrw.pp
    
  GraphiX - Font-Files
  --------------------
    bold.chr
    font1.fnt
    font2.fnt
    font3.fnt
    font4.fnt
    font5.fnt
    font6.fnt
    font7.fnt
    fontvga.fnt
    fontsvga.fnt
    fontega.fnt
    fontfix1.fnt
    fontfix2.fnt
    avalonb.ttf
  
  GraphiX - Information/Documentation
  -----------------------------------
    readme.txt
    gxfp.txt
    gxfp.htm
    gxfp.tph
    lgpl.txt

  GraphiX - Demos  
  ---------------
    landscap.pas
    gxdemo.pas
    gxdemo1.pp
    gxdemo2.pp
    gxdemo3.pp
    gxdemo4.pp
    gxdemo5.pp
    gxdemo6.pp
    gxdemot.pp
    graphix1.gif
    graphix2.jpg
    gxtex8.jpg
    gxmask2.jpg
    gximgcb.gif
    gxmedcb.gif
    gxmenu.bmp
    gxmenu2.bmp
    gxmp2.bmp
    gxlogo.gif

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

3. REFERENCE
============

   GXFP.TPH - Turbo Pascal Help - Reference
   GXFP.HTM - HTML - Refence
   GXFP.TXT - Simple Text Refernce

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

4. VERY FREQUENTLY ASKED QUESTIONS
==================================

  4.1. Why are the colors of images messed up in 8bit modes ?
  -----------------------------------------------------------
       GraphiX handles the 8bit indexed modes as RGB modes
       3 bit red, 3bit green and 2bit blue -  while loading,
       the palette of 8bit images is 'adjusted' to the fixed RGB
       colors - the result is are 'messed up' colors
       ==> GraphiX is designed for 15/16/24/32bit RGB modes
       and 8bit is just an 'emergency' mode, but it supports all
       features of GraphiX too

==================================================================================
                              E N D   O F   F I L E
==================================================================================
