aboutsummaryrefslogtreecommitdiff
path: root/unprotbas.1
diff options
context:
space:
mode:
Diffstat (limited to 'unprotbas.1')
-rw-r--r--unprotbas.133
1 files changed, 25 insertions, 8 deletions
diff --git a/unprotbas.1 b/unprotbas.1
index 3b8b832..0036a30 100644
--- a/unprotbas.1
+++ b/unprotbas.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 "UNPROTBAS" 1 "2024-05-18" "0.2.1" "Urchlay's Atari 8-bit Tools"
+.TH "UNPROTBAS" 1 "2024-05-19" "0.2.1" "Urchlay's Atari 8-bit Tools"
.SH NAME
unprotbas \- Unprotect LIST-protected Atari 8-bit BASIC programs
.SH SYNOPSIS
@@ -51,7 +51,7 @@ the terminal).
.INDENT 0.0
.TP
.B \fB\-v\fP
-Verbose operation.
+Verbose operation. TODO: it\(aqs always verbose right now...
.TP
.B \fB\-f\fP
Force the variable name table to be rebuilt, even if it looks OK.
@@ -63,10 +63,24 @@ needed).
.B \fB\-g\fP
Remove any "garbage" data from the end of the file. By default,
it\(aqs left as\-is, in case it\(aqs actually data used by the program.
+.TP
+.B \fB\-c\fP
+Check only. Does a dry run. Loads the program, unprotects it in
+memory, but doesn\(aqt write the result anywhere. In this mode, there
+is no \fBoutput\-file\fP\&.
.UNINDENT
.SH EXIT STATUS
-.sp
-Exit status is zero for success, non\-zero for failure.
+.INDENT 0.0
+.TP
+.B 0
+\fBinput\-file\fP was protected, unprotection was successful.
+.TP
+.B 1
+I/O error, or \fBinput\-file\fP isn\(aqt a valid BASIC program.
+.TP
+.B 2
+\fBinput\-file\fP is already an unprotected BASIC program.
+.UNINDENT
.SH DETAILS
.sp
In the Atari BASIC world, it\(aqs possible to create a SAVEd (tokenized)
@@ -123,10 +137,13 @@ named A through Z, A1 through A9, B1 through B9, etc, etc. It\(aqll
require human intelligence to figure out what each variable is for,
since the names are meaningless.
.sp
-The \fBoutput\-file\fP may be larger than the \fBinput\-file\fP was, since
-some types of variable\-name scrambling shrink the variable name
-table to the minimum size (one byte per name); the rebuilt table
-will be larger.
+The \fBoutput\-file\fP may not be the exact size that the
+\fBinput\-file\fP was. Some types of variable\-name scrambling shrink
+the variable name table to the minimum size (one byte per name), so
+the rebuilt table will be larger. Other types of scrambling leave
+the variable name table at its original size, but \fBunprotbas\fP
+generates only one\- and two\-character variable names, so the rebuilt
+table might be smaller.
.TP
.B Bad next\-line pointer
Generally, this is done with line number 32768. Yes, this line