aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--whichbas.rst9
1 files changed, 5 insertions, 4 deletions
diff --git a/whichbas.rst b/whichbas.rst
index 14ec718..472b216 100644
--- a/whichbas.rst
+++ b/whichbas.rst
@@ -29,7 +29,7 @@ Detection Options
**-k**
Keep going. The default is to stop looking at the program if the
- BASIC type gets narrowed down to either Turbo BASIC XL or BASIC XE.
+ BASIC type gets narrowed down to either Turbo BASIC or BASIC XE.
This option also enables **-v** (verbose). It's really only useful
for testing, if you're hacking on **whichbas** itself.
@@ -37,6 +37,8 @@ Detection Options
NOTES
=====
+Atari BASIC programs are detected 100% reliably.
+
Turbo BASIC, BASIC XL, and BASIC XE are all supersets of Atari BASIC.
If you wrote a program using one of them, but didn't use any of the
extra commands or functions, the result is still an Atari BASIC program.
@@ -50,8 +52,6 @@ file changes from **$00** to **$DD**. Non-extended programs are only
identified as BASIC XE if they use any of the extra commands BASIC XE
adds to those found in BASIC XL.
-Atari BASIC programs can be detected 100% reliably.
-
Detection of Turbo vs. BXL/BXE isn't 100% reliable, and probably
never will be. There's too much overlap between the sets of extra
tokens added by each. Programs that don't use very many of the extra
@@ -77,7 +77,8 @@ as Atari BASIC... even though _ in variable names is illegal in Atari
BASIC and pretty much guarantees the program is Turbo/BXL/BXE.
Looking at the variable types could also improve detection, since
-Turbo and BXL/BXE support extended variable types.
+Turbo and BXL/BXE support extended variable types (procedure labels
+for Turbo, string arrays for BXL/BXE).
**whichbas** knows nothing about other BASICs such as Frost BASIC,
BASIC/A+, Altirra BASIC...