aboutsummaryrefslogtreecommitdiff
path: root/src/alf.rst
diff options
context:
space:
mode:
Diffstat (limited to 'src/alf.rst')
-rw-r--r--src/alf.rst107
1 files changed, 107 insertions, 0 deletions
diff --git a/src/alf.rst b/src/alf.rst
new file mode 100644
index 0000000..fbfd2c6
--- /dev/null
+++ b/src/alf.rst
@@ -0,0 +1,107 @@
+.. RST source for alf(1) man page. Convert with:
+.. rst2man.py alf.rst > alf.1
+
+.. include:: ver.rst
+
+.. |date| date::
+
+===
+alf
+===
+
+-------------------------------
+create Atari 8-bit ALF archives
+-------------------------------
+
+:Manual section: 1
+:Manual group: Urchlay's Atari 8-bit Tools
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+alf [**--help**] [**-a** | **-o** ] *alf-file* *file* [*file* ...]
+
+DESCRIPTION
+===========
+
+**alf** creates *ALF* archives.
+
+*ALF* is a compressed archive format similar to **arc**\(1), though
+not compatible with it. It was used on the Atari 8-bit platform
+beginning in the late 1980s. The Atari executables are **LZ.COM**
+for the compressor and **DZ.COM** for the decompressor. **alf** is a
+rewrite of **LZ.COM** for modern operating systems, with added features.
+
+By default, the *alf-file* is created, and the *file*\s are compressed
+and added to it. If *alf-file* already existed, it is backed up by adding
+a **~** to the filename.
+
+OPTIONS
+=======
+
+-a
+ Append to *alf-file*. The files are added to the end of the archive. Be
+ careful not to add a file with the same name as as existing member of
+ the archive.
+
+-o
+ Overwrite *alf-file* if it exists; do not make a **~** backup.
+
+EXIT STATUS
+===========
+
+0
+ Success.
+
+1
+ Fatal error (I/O or bad command-line arguments).
+
+NOTES
+=====
+
+This **alf** is *intended* to be 100% compatible with the original
+Atari **LZ.COM** aka **ALF.COM**, with the following differences:
+
+- There is no interactive mode. The file to create and the files to add
+ must be given as command-line arguments.
+
+- **LZ.COM** always appends to a file that already exists. This **alf**
+ overwrites (making a backup) by default, and can append with the **-a**
+ option.
+
+Note that **alf** is a complete reverse-engineered rewrite in C, *not*
+a port of the original 6502 code as **unalf** is. It's still being
+tested, and may still contain bugs.
+
+Performance is *horrible*, O(n^2) or worse. This shouldn't be a real
+problem on modern multi-GHz CPU, especially since most Atari 8-bit
+files are small (usually under 64KB). Compressing a 1.3MB text file
+takes 5 seconds on the author's (rather modest) Intel i7 workstation.
+A 50KB file takes 0.2 seconds, which is more typical of the files
+you'd actually use this with.
+
+COPYRIGHT
+=========
+
+The original AlfCrunch (**DZ.COM** and **LZ.COM**) for the Atari 8-bit
+was released into the Public Domain. **alf** contains no code from
+AlfCrunch.
+
+**alf** is released under the WTPFL: Do WTF you want with this.
+
+AUTHOR
+======
+
+The original AlfCrunch for the Atari 8-bit was written by Alfred, who
+can be reached via the AtariAge.com forums with the username "Alfred".
+
+This **alf** was written by B. Watson <urchlay@slackware.uk>.
+
+SEE ALSO
+========
+
+**unalf**\(1), **alfls**\(1)
+
+.. include:: manftr.rst