[cc65] Atari TGI drivers, finally

From: Fatih Aygün <cyco1301yahoo.com>
Date: 2009-10-23 17:59:15
A long time ago (I realy can't remember, maybe 3 years), I promised to write these. The first version is finally done. Well, err, let's say I'm a slow coder.
You can download them here: http://atari.isgreat.org/atari-tgi.tar.gz
And here is the included readme file:

*****************************************

== 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.
They are not throughly tested and they are not optimized but they work and 
tgidemo.c does also work (with a small change that is included, namely the 
COLOR_XXX issue described below).

You will need a tool to put them in a disk image or you can modify the
tgi_mode_table.s file to point to a H: device or whatever your emulator uses.

Some of the code is taken from the c64 and apple drivers. I couldn't include
the proper license texts, I assume they are under the same license as Uz's
portions of the cc65 package. If the maintainers agree, my code can also be
included in the cc65 libraries with whatever license they see fit.

== issues ==

* linker symbol __RESERVED_MEMORY__ must be defined to prevent out of memory
  errors. but the numbers in the docs seem to be 1 less then what is actualy
  needed.
* tgidemo.c assumes COLOR_BLACK = 0 and COLOR_WHITE = 1. which is not the case
  for the Atari platform.
* cgetc() tries to manualy remove the cursor from the screen. this causes some
  pixels to be inverted when the function is called.
* bordercolor() changes the background color (except for mode 8).
* modes 9, 10, 11, 14 and 15 may fail on older machines.
* LINE function cannot always handle clipping properly.

== to do ==

* custom LINE function (current implementation uses the S: device DRAW command)
* custom BAR function (there is ample room for optimization)
* faster CIRCLE function
* text output functions
* some ioctl functions to determine the CIO channel used and the exact CIO
  error

*****************************************


      
----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo@musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.
Received on Fri Oct 23 17:59:23 2009

This archive was generated by hypermail 2.1.8 : 2009-10-23 17:59:25 CEST