diff options
Diffstat (limited to 'jindroush')
-rw-r--r-- | jindroush/Makefile | 14 | ||||
-rw-r--r-- | jindroush/README.txt | 7 | ||||
-rw-r--r-- | jindroush/acvt/Makefile | 4 | ||||
-rw-r--r-- | jindroush/adir/Makefile | 4 | ||||
-rw-r--r-- | jindroush/chkbas/basic_xe.h | 6 | ||||
-rw-r--r-- | jindroush/chkbas/basic_xl.h | 6 | ||||
-rw-r--r-- | jindroush/chkbas/chkbas.cpp | 2 | ||||
-rw-r--r-- | jindroush/man/chkbas.1 | 24 | ||||
-rw-r--r-- | jindroush/man/chkbas.rst | 14 |
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 |