afapack - tools for Alien Flash
-------------------------------
(...but *not* "Alien Flash Tools")

(c) 2011 Hannu Nuotio <nojoopa@users.sf.net>


1. Intro
--------

afapack is a pack of (alternative) tools for the Alien Flash cartridge.

afapack consists of:
 - "aftool", PC side command line toolset.
    See README_tool and COPYING_tool.

 - "afgui", PC side GUI toolset.
    See README_gui, COPYING_tool and COPYING_fltk.

 - "afminitools", C64 side alternative firmware.
    See README_fw and COPYING_fw.

For more info on Alien Flash, see:
http://t-winkler.net/dokuwiki/doku.php?id=en:af:start

To see what's new in this version, see NEWS.
For building instructions, see INSTALL.

Thanks to Stingray for creating the hardware and testing these programs.


2. Why?
-------

You may have noticed the "Alien Flash Terminal Transfer pack" link
via the above URL. It contains programs that perform similar things
as aftool and afgui. However, the "Alien Flash Terminal Transfer pack"
programs are:

 - win32 only
 - closed source
 - split into four (rather large) executables
 - dealing only with .bin/.prg/.d64 -> _conv conversions, hence...
 - requiring yet another (included) executable for .crt->.bin
 - and another (included) executable for sending to the cart
 - ...

aftool and afgui are focused on working directly with .crt files.
In addition, they have:

 - source available
 - support for USB transfers (CRT, PRG & D64 and some extras)
 - support for injecting and extracting data from a .crt
 - support for "applying" AFTT (_conv) files to a .crt
 - a variety of handy functions (or feature bloat)

You may have noticed the lack of "Alien Flash Tools" link via the
above URL. The original firmware is not (at the time of writing)
available for download. Hence: afminitools.


3. Usage
--------

Currently aftool is more fully featured than afgui.
See the other README_* files for specific info. Common things follow...


3.1. USB transfers
------------------

Be sure to be in USB mode on the C64 side before attempting any USB transfers!

There are a variety of USB drivers built in aftool and afgui. Most of them
require FTDI SIO drivers and the FT232R chip set to VCP ("Virtual COM port")
mode.

The drivers are:

 - win32
    * Needs VCP mode and FTDI drivers.

 - linux
    * Needs VCP mode and FTDI drivers ("fdti_sio.ko"?).
      WARNING: untested!

 - ftdi
    * Needs libftdi and libusb, can (in theory) switch from/to VCP mode,
      FTDI driver must _not_ be active (try "rmmod ftdi_sio.ko" in Linux).
      WARNING: didn't seem to work on Windows, untested otherwise!

 - ftd2xx
    * Needs FTD2XX.DLL.
      Unfinished, broken, apparently needs MSVC to link.

 - dummy
    * Not a real driver. Doesn't touch USB, but can dump "sent" bytes to
      a file; useful for debugging.


4. Future
---------

Testing, fix ftdi.
Perhaps more drivers & ports. OSX, anyone?
