I've released version
1.25a of
BBC BASIC for SDL 2.0 - the cross-platform programming language for Windows, MacOS, Linux, Raspberry Pi OS, Android, iOS and in-browser. The changes in this version are as follows:
- BASIC Interpreter / Run Time Engine
PAGE may now be lowered without generating an error. This is dangerous in general, but in limited memory environments (e.g. the Raspberry Pi Pico) it can be useful, as it was on the original BBC Micro.
Implemented a new SUM operator which performs modulo-2^64 addition, i.e. overflows are ignored. Using this operator modulo-2^64 subtraction and multiplication functions can be written:
DEF FNsub64(a%%,b%%)=a%%SUMNOTb%%SUM1
DEF FNmul64(a%%,b%%)LOCALA%,B%:A%=a%%AND&7FFFFFFF:B%=b%%AND&7FFFFFFF
=A%*B%SUM((a%%>>31)*B%<<<31)SUM(A%*(b%%>>31)<<<31)SUM((a%%>>31AND3)*(b%%>>31AND3)<<<62)
- IDEs and Utilities
No changes (other than the version number of SDLIDE.bbc being updated).
- Libraries
stringlib.bbc modified so that FN_binary() and FN_tobase() accept 64-bit integers.
- Example Programs
There are no changes to the example programs in this release.
This version may be downloaded, for all the supported platforms, from the
usual location. The
GitHub repository has been updated (used to build the MacOS, Raspberry Pi, Android, iOS, 64-bit Linux and in-browser editions, currently).