From ffeba14c10e1cf7f2936cd9249a352474c0e9526 Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Sun, 19 May 2024 05:11:11 -0400 Subject: unprotbas: exit status 2 for unprotected program; add -c (check only). --- unprotbas.1 | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) (limited to 'unprotbas.1') 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 -- cgit v1.2.3