A new user has been using RetroBASIC with the 101 BASIC Games sources and noted a number of issues. I have just built version 3.0.6 to address these, and you can download it here:
Change include:
- support for --dartmouth-loops/-l which skips the loop body if the exit condition is met on entry, like FOR I=1 TO 0
- support for \ as a statement separator, used in DEC dilects
- the CLK() function, which returns fractional hours since midnight, from BASIC-PLUS
- fixed an issue in string comparisons
- fixed a crash after early exits and then re-entering FOR loops with the same index var
- fixes a bug that resulted in ?EXTRA IGNORE on numeric INPUTs
- (minor) add the version number to the CLI header line
For those new to the topic, RetroBASIC is an interpreter written in C that (aims to) supports most of the early dialects of BASIC from various platforms. It can run the original Dartmouth dialect including its MAT commands and CHANGE string handling, as well as the HP TS BASIC that was very popular in the early 1970s and introduced the BASIC world to string slicing, and of course the MS variations and the DEC dialects it was based on, like BASIC-PLUS and EDUSYSTEM.
The program also has extensive documentation, and the Reference Manual is exhaustive and can be used as a stand-alone BASIC reference as it lists the differences between dozens (and dozens!) of different dialects.
Enjoy!