1. IDEs / Compiler
- The Create Application facility will now accept relative file paths in the REM!Icon and REM!Exefile directives (assumed to be relative to the directory containing the BASIC program being 'compiled').
- When debugging, SDLIDE preferentially highlights the line on which a recent error occurred rather than the line currently being executed.
- Search-and-replace, in SDLIDE, no longer misbehaves if the item being replaced begins a line and is followed by a digit (previously this resulted in a spurious line number being introduced).
- The @dir$ variable is set differently according to how the Run Time Engine is called. Specifically, if no BASIC program is specified on the command line @dir$ is now set to the directory containing the Run Time Engine itself (change requested by a user).
- A bug in the Raspberry Pi and 64-bit editions has been fixed. This bug could cause a crash if an undeclared structure was passed as a RETURNed parameter to a FN/PROC, when the name of the formal structure was the same as the name of the passed parameter (this isn't as unlikely as it sounds!).
- The maximum (slowest) setting of *TEMPO has been increased to 10. Previously, if you set it higher than the default value of 5 BBCSDL could crash.
- The 'experimental' 64-bit Linux edition now includes an equally experimental x86-64 assembler. This supports more than 500 mnemonics and over 1000 distinct instruction types; not for nothing is the x86 CPU called a Complex Instruction Set computer!
- The functions for converting a string to lowercase or uppercase in 'stringlib.bbc' and 'fnusing.bbc' have been rewritten to be much faster with long strings.
- The calendar library 'datelib.bbc' has been extended by the addition of the FN_date$() function. This works the same way as the equivalent function in the BB4W library, but supports only English day and month names.
- The timer library 'timerlib.bbc' now supports the 64-bit Linux edition of BBCSDL.
- The program 'brandenburg.bbc' (in the 'sounds' folder) plays Bach's Brandenburg Concerto No. 3 accompanied by an animated 3D rendering of a street organ. The vestigial second movement has been omitted (Phil Wheeler's original 1982 transcription contained it, but it has since been lost).
- The program 'tower.bbc' (in the 'games' folder, desktop platforms only) is a BBCSDL adaptation of the Treasure Tower subgame from David Williams' prizewinning Maizie Bones program. This illustrates how 2D and 3D rendering may be combined to achieve effects that would otherwise need assembler code. Note that although 'tower.bbc' is not included with the mobile editions (Android and iOS) the technique does work on those platforms, with the limitation that the 3D 'canvas' always fills the screen.
- The 'hello.bbc' and 'mandel.bbc' assembly language examples now include x86-64 source code, for the 64-bit Linux edition of BBCSDL. However 'sdldebug.bbc' has not (as yet) been adapted for 64-bit operation.
Please do not complain to me about BBCSDL, however awful you think it is. I can only say that I try my best, despite my current problems.