aboutsummaryrefslogtreecommitdiff
path: root/jindroush
diff options
context:
space:
mode:
Diffstat (limited to 'jindroush')
-rw-r--r--jindroush/Makefile14
-rw-r--r--jindroush/README.txt7
-rw-r--r--jindroush/acvt/Makefile4
-rw-r--r--jindroush/adir/Makefile4
-rw-r--r--jindroush/chkbas/basic_xe.h6
-rw-r--r--jindroush/chkbas/basic_xl.h6
-rw-r--r--jindroush/chkbas/chkbas.cpp2
-rw-r--r--jindroush/man/chkbas.124
-rw-r--r--jindroush/man/chkbas.rst14
9 files changed, 42 insertions, 39 deletions
diff --git a/jindroush/Makefile b/jindroush/Makefile
index 0a11a8f..a4fe4c9 100644
--- a/jindroush/Makefile
+++ b/jindroush/Makefile
@@ -18,15 +18,15 @@ BINS=acvt adir aext bas2boot chkbas chkexe chkrom
W=-Wall -Wno-write-strings
all: libs manpages
- for i in $(BINS); do \
- make -C $$i COPT="$(COPT) $(W)" ; \
+ @for i in $(BINS); do \
+ $(MAKE) --no-print-directory -C $$i COPT="$(COPT) $(W)" ; \
done
manpages:
- make -C man
+ @$(MAKE) --no-print-directory -C man
libs:
- make -C lib COPT="$(COPT) $(W)"
+ @$(MAKE) --no-print-directory -C lib COPT="$(COPT) $(W)"
clean:
make -C lib clean
@@ -54,9 +54,3 @@ install: all
chmod 644 $(DESTDIR)/$(MAN1DIR)/$$i.1 ; \
[ "$(GZIP_MAN)" = "y" ] && gzip -f $(DESTDIR)/$(MAN1DIR)/$$i.1 ; \
done
- ln -sf chkbas $(DESTDIR)$(BINDIR)/listbas
- if [ "$(GZIP_MAN)" = "y" ]; then \
- ln -sf chkbas.1.gz $(DESTDIR)$(MAN1DIR)/listbas.1.gz ; \
- else \
- ln -sf chkbas.1 $(DESTDIR)$(MAN1DIR)/listbas.1 ; \
- fi
diff --git a/jindroush/README.txt b/jindroush/README.txt
index 31d9af9..a085003 100644
--- a/jindroush/README.txt
+++ b/jindroush/README.txt
@@ -29,9 +29,10 @@ I've made to Jindroush's code:
with mode 0600; changed this to 0666 (which will still be affected
by the user's umask).
-- Added "listbas" symlink, to save typing "chkbas -short" over and over
- again.
-
- adir's -dir option now creates the directory if it doesn't exist.
- Wrote man pages for all the utilities.
+
+- Fixed a bug in chkbas: BASIC XL and XE's LEFT$ RIGHT$ MID$ were
+ being printed without the left parenthesis (e.g Left$(A$,3) was
+ coming out as Left$A$,3).
diff --git a/jindroush/acvt/Makefile b/jindroush/acvt/Makefile
index 498e2fc..34f0e41 100644
--- a/jindroush/acvt/Makefile
+++ b/jindroush/acvt/Makefile
@@ -11,22 +11,18 @@ all: release
release:
@$(MAKE) $(PRGNAME) CFLAGS="-c -O2 -Wall -D__CDISK_SAVE__" LDFLAGS=""
- @echo RELEASE: Compiled.
rel_strip: release
@strip $(PRGNAME)
install: rel_strip
cp $(PRGNAME) $(DESTDIR)/$(PREFIX)/bin/
- @echo RELEASE: Installed.
debug:
@$(MAKE) $(PRGNAME) CFLAGS="-c -g -Wall -D_DEBUG -D__CDISK_SAVE__" LDFLAGS="-g"
- @echo DEBUG: Compiled.
clean:
rm -rf *.o $(PRGNAME) $(PRGNAME).exe switches.cpp
- @echo DEBUG: Cleaned.
OBJECTS = acvt.o
diff --git a/jindroush/adir/Makefile b/jindroush/adir/Makefile
index 284add5..cf025be 100644
--- a/jindroush/adir/Makefile
+++ b/jindroush/adir/Makefile
@@ -11,22 +11,18 @@ all: release
release:
@$(MAKE) $(PRGNAME) CFLAGS="-c -O2 -Wall -D__CDISK_SAVE__" LDFLAGS=""
- @echo RELEASE: Compiled.
rel_strip: release
@strip $(PRGNAME)
install: rel_strip
cp $(PRGNAME) $(DESTDIR)/$(PREFIX)/bin/
- @echo RELEASE: Installed.
debug:
@$(MAKE) $(PRGNAME) CFLAGS="-c -g -Wall -D_DEBUG -D__CDISK_SAVE__" LDFLAGS="-g"
- @echo DEBUG: Compiled.
clean:
rm -rf *.o $(PRGNAME) $(PRGNAME).exe switches.cpp
- @echo DEBUG: Cleaned.
OBJECTS = adir.o
diff --git a/jindroush/chkbas/basic_xe.h b/jindroush/chkbas/basic_xe.h
index fc86131..56e0276 100644
--- a/jindroush/chkbas/basic_xe.h
+++ b/jindroush/chkbas/basic_xe.h
@@ -209,9 +209,9 @@ char* aOpsBasicXe[] = {
"ERR", //63
"TAB", //64
"PEN", //65
- "LEFT$", //66
- "RIGHT$", //67
- "MID$", //68
+ "LEFT$(", //66
+ "RIGHT$(", //67
+ "MID$(", //68
};
#define BASICXE_CMD_NUM ( sizeof( aCmdsBasicXe ) / sizeof( aCmdsBasicXe[ 0 ] ) )
diff --git a/jindroush/chkbas/basic_xl.h b/jindroush/chkbas/basic_xl.h
index a97f8a7..97dd627 100644
--- a/jindroush/chkbas/basic_xl.h
+++ b/jindroush/chkbas/basic_xl.h
@@ -203,9 +203,9 @@ char* aOpsBasicXl[] = {
"ERR", //63
"TAB", //64
"PEN", //65
- "LEFT$", //66
- "RIGHT$", //67
- "MID$", //68
+ "LEFT$(", //66
+ "RIGHT$(", //67
+ "MID$(", //68
};
#define BASICXL_CMD_NUM ( sizeof( aCmdsBasicXl ) / sizeof( aCmdsBasicXl[ 0 ] ) )
diff --git a/jindroush/chkbas/chkbas.cpp b/jindroush/chkbas/chkbas.cpp
index a1ad505..aa6b161 100644
--- a/jindroush/chkbas/chkbas.cpp
+++ b/jindroush/chkbas/chkbas.cpp
@@ -222,7 +222,7 @@ int main( int argc, char* argv[] )
fprintf( g_fout, "Constants & pointers:\n" );
fprintf( g_fout, "Start of Name Table (VNT) : %04X\n", wVNT );
fprintf( g_fout, "End of Name Table (VNTE) : %04X\n", wVNTE );
- fprintf( g_fout, "Lenght of Name Table (VNTL) : %04X\n", wVNTL );
+ fprintf( g_fout, "Length of Name Table (VNTL) : %04X\n", wVNTL );
fprintf( g_fout, "Start of Variable Table (VVT) : %04X\n", wVVT );
fprintf( g_fout, "End of Variable Table (VVTE) : %04X\n", wVVTE );
diff --git a/jindroush/man/chkbas.1 b/jindroush/man/chkbas.1
index 1069d6c..f2664f3 100644
--- a/jindroush/man/chkbas.1
+++ b/jindroush/man/chkbas.1
@@ -27,14 +27,12 @@ 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 "CHKBAS" 1 "2024-05-16" "1.10" "Jindroush's Atari 8-bit tools"
+.TH "CHKBAS" 1 "2024-07-10" "1.10" "Jindroush's Atari 8-bit tools"
.SH NAME
chkbas \- check and detokenize Atari BASIC SAVEd files
.SH SYNOPSIS
.sp
chkbas [\fB\-atari\fP] [\fB\-short\fP] [\fB\-verbose\fP] [\fB\-noinverse\fP] [\fB\-tbs\fP | \fB\-bxl\fP | \fB\-bxe\fP] \fBbasic\-file\fP [\fBoutput\-file\fP]
-.sp
-listbas [\fB\-atari\fP] [\fB\-verbose\fP] [\fB\-noinverse\fP] [\fB\-tbs\fP | \fB\-bxl\fP | \fB\-bxe\fP] \fBbasic\-file\fP [\fBoutput\-file\fP]
.SH DESCRIPTION
.sp
\fBchkbas\fP detokenizes Atari 8\-bit BASIC SAVEd files. It lists the BASIC
@@ -47,7 +45,21 @@ standard output. If \fBbasic\-file\fP is anything other than standard
Atari BASIC, the BASIC dialect must be specified (see \fBOPTIONS\fP,
below).
.sp
-\fBlistbas\fP is simply an alias for \fBchkbas \-short\fP\&.
+It\(aqs highly recommended to avoid running \fBchkbas\fP without
+redirecting or piping its output: If the program contains ATASCII
+graphics or inverse characters, they will be printed as\-is to the
+terminal, which can confuse the terminal. For simply reading the code,
+pipe to \fBa8cat\fP(1), thus:
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+$ chkbas \-atari PROGRAM.BAS | a8cat
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
.sp
Sample run, with no options:
.INDENT 0.0
@@ -69,7 +81,7 @@ Input file: HELLO.BAS
Constants & pointers:
Start of Name Table (VNT) : 000E
End of Name Table (VNTE) : 0011
-Lenght of Name Table (VNTL) : 0004
+Length of Name Table (VNTL) : 0004
Start of Variable Table (VVT) : 0012
End of Variable Table (VVTE) : 0021
Length of Variable Table (VVTL) : 0010
@@ -125,7 +137,7 @@ EOL characters (\fB$9B\fP).
.B \fB\-short\fP
Output only the program listing, with lines terminated by the
system default newline character(s), e.g. \fBn\fP on UNIX\-like OSes,
-\fBrn\fP on MS\-DOS or Windows. This is the default for \fBlistbas\fP\&.
+\fBrn\fP on MS\-DOS or Windows.
.TP
.B \fB\-verbose\fP
Program listing will be interspersed with per\-line and per\-statement
diff --git a/jindroush/man/chkbas.rst b/jindroush/man/chkbas.rst
index 2f9e6b7..b6c678f 100644
--- a/jindroush/man/chkbas.rst
+++ b/jindroush/man/chkbas.rst
@@ -15,8 +15,6 @@ SYNOPSIS
chkbas [**-atari**] [**-short**] [**-verbose**] [**-noinverse**] [**-tbs** | **-bxl** | **-bxe**] **basic-file** [**output-file**]
-listbas [**-atari**] [**-verbose**] [**-noinverse**] [**-tbs** | **-bxl** | **-bxe**] **basic-file** [**output-file**]
-
DESCRIPTION
===========
@@ -30,7 +28,13 @@ standard output. If **basic-file** is anything other than standard
Atari BASIC, the BASIC dialect must be specified (see **OPTIONS**,
below).
-**listbas** is simply an alias for **chkbas -short**.
+It's highly recommended to avoid running **chkbas** without
+redirecting or piping its output: If the program contains ATASCII
+graphics or inverse characters, they will be printed as-is to the
+terminal, which can confuse the terminal. For simply reading the code,
+pipe to **a8cat**\(1), thus::
+
+ $ chkbas -atari PROGRAM.BAS | a8cat
Sample run, with no options::
@@ -48,7 +52,7 @@ Sample run, with no options::
Constants & pointers:
Start of Name Table (VNT) : 000E
End of Name Table (VNTE) : 0011
- Lenght of Name Table (VNTL) : 0004
+ Length of Name Table (VNTL) : 0004
Start of Variable Table (VVT) : 0012
End of Variable Table (VVTE) : 0021
Length of Variable Table (VVTL) : 0010
@@ -103,7 +107,7 @@ Output Options
**-short**
Output only the program listing, with lines terminated by the
system default newline character(s), e.g. **\n** on UNIX-like OSes,
- **\r\n** on MS-DOS or Windows. This is the default for **listbas**.
+ **\r\n** on MS-DOS or Windows.
**-verbose**
Program listing will be interspersed with per-line and per-statement