== atari tgi ==

This package contains cc65 TGI drivers for the Atari platform and custom
versions of some library files to allow them to work. Both the sources and
the binaries are included.

To integrate them fully to the cc65 suit, one needs to change some tgi header
files too.

A driver for each of the standard raster graphics modes of Atari is included.
They are named as "atari{mode}.tgi", e.g. "atari8.tgi" for graphics mode 8.

There are four more drivers named atr8p2.tgi, atr9p2.tgi, atr10p2.tgi and
atr15p2.tgi. They are double paged versions of the standard drivers for
modes 8, 9, 10 and 15, the modes I find the most useful.

Currently the Atari platform needs a linker symbol definition for
__RESERVED_MEMORY__ to protect the graphics memory from the C runtime.

Here is a list of modes and some of their properties including memory
requirements. The memory values from the docs don't work!

mode    resolution      memory(4) pixel aspect ratio
-----   -------------   ------   ------------------
3       40x24x4         1               1:1
4       80x48x2         1               1:1
5       80x48x4         185             1:1
6       160x96x2        1193            1:1
7       160x96x4        3209            1:1
8       320x192x2 (1)   7147            1:1
9       80x192x16 (2)   7147            4:1
10      80x192x9        7147            4:1
11      80x192x16 (3)   7147            4:1
14      160x192x2       3305            2:1
15      160x192x4       7147            2:1

(1) Mode 8 supports 1 hue and 2 separate brightness levels. The hue portion of
    the second palette entry is ignored.

(2) Mode 9 supports 1 hue and 16 separate brightness levels. Palette is not
    supported. One can use bordercolor() from the conio to set the desired
    hue.

(3) Mode 11 supports 16 hues and only 1 brightness level. Palette is not
    supported. One can use bordercolor() from the conio to set the desired
    brightness level for all palette entries.

(4) All double paged drivers need 15339 bytes of __RESERVED_MEMORY__.

== issues ==

* cgetc() tries to manualy remove the cursor from the screen. this causes some
  pixels to be inverted when the function is called.
* modes 9, 10, 11, 14 and 15 may fail on older machines.

== to do ==

* some ioctl function to determine the CIO channel used for graphics.
