aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2025-11-23 05:56:23 -0500
committerB. Watson <urchlay@slackware.uk>2025-11-23 05:56:23 -0500
commit3548661f21b658b2fa66e30d835f1ba252d4ee6b (patch)
tree4cdda18a01b05486382c068037eab2c8bd9fda74
parentff9bf758b9d49eca3a79f88908824e6a25540108 (diff)
downloadunalf-3548661f21b658b2fa66e30d835f1ba252d4ee6b.tar.gz
Fix "unknown error" (means truncated), move "junk at EOF" to warnings section of man page.
-rw-r--r--src/Makefile2
-rw-r--r--src/asmcode.c4
-rw-r--r--src/extract.c4
-rw-r--r--src/unalf.115
-rw-r--r--src/unalf.rst13
5 files changed, 22 insertions, 16 deletions
diff --git a/src/Makefile b/src/Makefile
index 68d6244..57d389e 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -35,7 +35,7 @@ STRIP=yes
#
### No user-serviceable parts below.
-VERSION=0.1.0
+VERSION=0.2.0
CFLAGS=-DVERSION='"$(VERSION)"' -Wall -I../f65 $(COPT)
diff --git a/src/asmcode.c b/src/asmcode.c
index bee7752..831ba1c 100644
--- a/src/asmcode.c
+++ b/src/asmcode.c
@@ -2,7 +2,7 @@
#include "addrs.h"
extern void chksum_err(void);
-extern void unknown_err(void);
+extern void truncated_err(void);
extern void stack_underrun(void);
extern void stack_overrun(void);
@@ -210,7 +210,7 @@ L770F:
jmp(L779B);
/* ---------------------------------------------------------------------------- */
L7712:
- unknown_err(); /* exits! */
+ truncated_err(); /* exits! */
/* ---------------------------------------------------------------------------- */
L771C:
tay();
diff --git a/src/extract.c b/src/extract.c
index b2ee615..305cd4a 100644
--- a/src/extract.c
+++ b/src/extract.c
@@ -181,8 +181,8 @@ void chksum_err(void) {
fprintf(stderr, "%s: checksum error on %s\n", self, out_filename);
}
-void unknown_err(void){
- fprintf(stderr, "%s: fatal: unknown error (L7712)\n", self);
+void truncated_err(void){
+ fprintf(stderr, "%s: fatal: compressed data is truncated, EOF before end marker\n", self);
exit(1);
}
diff --git a/src/unalf.1 b/src/unalf.1
index 5ca8547..7b4f8ea 100644
--- a/src/unalf.1
+++ b/src/unalf.1
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
-.TH "UNALF" 1 "2025-11-22" "0.1.0" "Urchlay's Atari 8-bit Tools"
+.TH "UNALF" 1 "2025-11-23" "0.1.0" "Urchlay's Atari 8-bit Tools"
.SH NAME
unalf \- extract Atari 8-bit ALF archives
.\" RST source for unalf(1) man page. Convert with:
@@ -266,6 +266,14 @@ or its first two bytes don\(aqt match the \fIALF\fP signature \fB0x1a\fP \fB0x0f
Generally means the archive is corrupt. Valid ALF files should never
cause these errors.
.TP
+.B \fBfatal: compressed data is truncated, EOF before end marker\fP
+Self\-explanatory. The ALF file ends before the compressed data does.
+.UNINDENT
+.SS Warnings
+.sp
+\fBunalf\fP will continue after these messages occur.
+.INDENT 0.0
+.TP
.B \fBjunk at EOF (ignored)\fP
Usually this is caused by the .alf file being stored on a CP/M disk
at some time, or by a dumb file transfer protocol. Either way, the
@@ -275,11 +283,6 @@ Usually, the padding characters are \fB0x1a\fP, aka ASCII control\-Z.
If you see this message, you can ignore it. It\(aqs intended to let
you know that this .alf file can\(aqt be appended to by the
\fBLZ.COM\fP (aka \fBALF.COM\fP) Atari utility.
-.UNINDENT
-.SS Warnings
-.sp
-\fBunalf\fP will continue after these messages occur.
-.INDENT 0.0
.TP
.B \fBchecksum error on\fP \fI<file>\fP
The archive is corrupt. If \fI<file>\fP is a text file, it may be
diff --git a/src/unalf.rst b/src/unalf.rst
index a1b8abe..f88973d 100644
--- a/src/unalf.rst
+++ b/src/unalf.rst
@@ -222,6 +222,14 @@ Fatal errors
Generally means the archive is corrupt. Valid ALF files should never
cause these errors.
+**fatal: compressed data is truncated, EOF before end marker**
+ Self-explanatory. The ALF file ends before the compressed data does.
+
+Warnings
+--------
+
+**unalf** will continue after these messages occur.
+
**junk at EOF (ignored)**
Usually this is caused by the .alf file being stored on a CP/M disk
at some time, or by a dumb file transfer protocol. Either way, the
@@ -232,11 +240,6 @@ Fatal errors
you know that this .alf file can't be appended to by the
**LZ.COM** (aka **ALF.COM**) Atari utility.
-Warnings
---------
-
-**unalf** will continue after these messages occur.
-
**checksum error on** *<file>*
The archive is corrupt. If *<file>* is a text file, it may be
partially readable. If it's an executable or other binary file, it's