This release focuses on SDCard compatibility with Norgate's Pluggy Reloaded and emulator/tools/gtBASIC compatibility
with the Raspberry Pi 400.
Code: Select all
- More fixes for INIReader.h for GCC versions < 8. - Fixed Linux strncpy warning in INIReader.h properly for the Raspberry Pi 400. - Fixed a nasty lazy unsigned cast bug that should have been an explicit check in Operators::handleDualOp(); this was only causing issues for the Raspberry Pi 400 - Fixed compiler warnings and errors for the Raspberry Pi 400, thanks to Maniccyberdog. - Added an SDCard browsing utility and ROM for Norgate's Pluggy Reloaded. - Added more sytax error messages to the BASIC compiler. - Added the SPC$() function to the BASIC compiler, this allows you to generate sequences of spaces, (max 255 within a print statement using a literal count, otherwise max 94). - Added the STRING$() function to the BASIC compiler, this allows you to construct a string from a memory address, e.g. s$ = STRING$(<addr>). - Added the EXEC statement to the BASIC compiler, this allows you to execute vCPU code embedded within ROM, e.g. EXEC <rom address>. - Added literal characters as a shortcut to anywhere you would use the ASC() function, (including static initialisation code), e.g. f = 'A' - Added better name collision detection for ints, consts and arrays. - Added uninitialised arrays as an option, thereby allowing .gt1 files to potentially be much smaller for the exact same code, (this can be crucial when embedding .gt1 files into ROM). The side effect of this change is that previously 'DIM a(9)' would initialise 10 words to 0 in the .gt1 file using DW ASM commands, now your array is initialised with random values. To get the previous functionality, change your code to 'DIM a(9) = 0' - Refactored horribly overloaded function names for Expression::tokenise() and Compiler::parse(). - Fixed ROM addresses in the disassembler and the hex editor from wrapping back to zero incorrectly. - Fixed a sly nasty bug whereby int arrays were needlessly stealing a global int var slot during their construction.