alftools is a compressor and decompressor for the ALF archive file
format, as used on the Atari 8-bit computers in the late 1980s.

The latest alftools source is avaailable at:

  https://slackware.uk/~urchlay/repos/alftools

The latest Windows binary release is available at:

  https://slackware.uk/~urchlay/alftools4win/alftools-0.3.2-win64.zip

The ultimate goal of this project is to reimplement the ALF
compression and decompression algorithms on modern systems aka
Linux and anything else that's POSIX-ish. It's also intended to
be a repository of information about the ALF archiver (and UNALF
dearchiver).

Currently, the compressor (alf) and the decompressor (unalf) are
working, and seem pretty bulletproof.

The original LZ.COM/DZ.COM (aka ALF/UNALF) programs for the Atari were
written by Alfred.

This project is by B. Watson (urchlay@slackware.uk).

The rest of this file is a list of the contents of the git repository
or distribution tar/zip file.

Included in both the source and binary distributions:

- README.txt - you're reading it now.

- TODO.txt - plans for the future.

- doc/Arcinfo - describes the format of ARC compressed files. The ALF
  file structure is almost identical to ARC's. This file was taken from
  the arc-5.21q source.

- doc/DZ.COM - the Atari executable of the ALF extractor (aka UNALF).
  This and LZ.COM are the same files as the ones inside the .atr image.

- doc/LZ.COM - the Atari executable of the ALF archiver (aka ALF).

- doc/alf14.atr - bootable DOS 2.0S disk image, with LZ.COM (aka ALF),
  DZ.COM (aka UNALF), and the documentation. This is not the original
  distribution disk: there never was one. Alfred distributed these
  files as an ARC archive on his BBS.

- doc/alf14_doc.txt - the documentation for LZ.COM and DZ.COM, extracted
  from the disk image and converted from ATASCII to standard ASCII.

- doc/fileformat.txt - documents how the ALF file format differs from ARC.

- doc/interview.txt - an email interview with Alfred, author of AlfCrunch
  for the Atari 8-bit.

- doc/review.txt - a review of the original ALFCrunch, from an Atari
  magazine.

- examples/* - ALF files found in the wild.

Included in the source distribution only:

- BUILD.txt - directions for compiling unalf.

- src/ - the source.

- doc/LZDZ.zip - 6502 assembly source for LZ.COM and DZ.COM, by Alfred.
  This isn't the original source (which was for Mac/65), it's been
  split into multiple files and ported to the Six Forks assembler.

- f65/ - "fake 6502" porting layer. Not for the faint of heart. The
  unalf algorithm was ported from a disassembly of the 6502 code,
  using a perl script to convert the 6502 mnemonics to C macros.
  This means I was able to port the code without fully understanding
  how it works...

- testing/alfls - a Perl script that lists the contents of an ALF
  archive. Run it with --help for more information. If you're
  packaging unalf for a distribution, there's no need to include this
  script in the package: I wrote it for testing purposes only. You can
  use "unalf -l" to list .alf files, so this is redundant.

- magic/ - "magic" that allows the file(1) command to identify ALF
  archive files. See magic/MAGIG.txt for details.

Included in the binary distribution only:

- README_Windows.txt.

- alf.exe, unalf.exe, and alfsum.exe - the Windows executables.

- alf.html, unalf.html, alfsum.html - the man pages, converted to HTML.
