SmallBASIC Changelog

What's new in SmallBASIC 0.12.13

Sep 12, 2018
  • Added F8 key live edit mode
  • Added solarized color schemes
  • Added window.setSize function
  • F2 key in editor now launched keyword help into updated web site
  • F11 key in editor now toggles fullscreen
  • Fix TLOAD input error handling
  • Fix incorrect file loading with ALT+1-9 command
  • Fix problem with SEQ command
  • Fix trailing spaces with LOCAL command when terminated with comma
  • UNITPATH replaced with SBASICPATH which also works for modules

New in SmallBASIC 0.12.9 (Aug 3, 2017)

  • The changes are:
  • ANDROID: Allow input of special characters
  • ANDROID: Added share command
  • ANDROID: Fix '?' key input using gboard
  • ANDROID: Select alternative font
  • COMMON: Fix compile warnings from clang
  • COMMON: Removed debugging output from RUN (windows build)
  • COMMON: Allow array access via [] characters
  • COMMON: Can now attach SUB/FUNCs as MAP fields
  • COMMON: Clear out of scope CATCH variables
  • COMMON: Create MAP from single line JSON without ARRAY command
  • COMMON: Fix internal error handling long string variables
  • COMMON: Python style here-document
  • COMMON: Update parameter handling for performance
  • UI: Allow input of special characters
  • UI: Added "Save-As" option to the file menu (thanks Josip)
  • UI: CIRCLE drawing is now anti-aliased
  • UI: Fixed cursor when displaying the popup while editing
  • UI: Added menu widget (three vertical dots)
  • UI: Editor display cursor row/col position
  • UI: Improved CIRCLE performance
  • UI: Show unsaved indicator following paste
  • UI: Throw error when invalid .WAV passes to PLAY

New in SmallBASIC 0.12.7 (Sep 22, 2016)

  • Fixed editor cursor flicker issue Fixed editor display issue with escaped quotes Fixed editor find dialog paste support Fixed editor scrolling after paste Fixed editor stability issues with undo/redo Fixed error with textScreen sub-command Fixed infinite loop when printing FUNC with extra args Fixed issue with INSTR (node/1600) Fixed memory access issue with JOIN (node/1586) Fixed memory access issue with SPRINT (node/1594) Fixed memory issue with REPLACE Fixed memory leak with LINPUT command Fixed screen switching when program screen has different font size Fixed memory access issues uncovered with new test all.bas Fixed value of i when FOR loop body not executed (node/1611) Implemented editor now allows run by selection Implemented editor widget now remembers the undo buffer between program runs Implemented editor F10 option to set the command$ variable Implemented editor double click to select word Implemented var pooling Updated ARRAY command to handle 2d arrays Updated MAP handling for performance Updated error message formatting Updated welcome screen

New in SmallBASIC 0.12.6 Runtime (Sep 22, 2016)

  • Fix to prevent const overwriting another const Updated MID and REPLACE for performance POINT(0) and POINT(1) values now reset with each program run POINT(-x, -y) now provides access to the base screen image. For better performance use the IMAGE.SAVE sub command Fixes for unit case sensitivity Fixes for RUN/EXEC Fixed memory handling issues with UNITs Fixed memory issue related to SUB/FUNC pointers Removed TICKSPERSEC Removed BALLOC, MALLOC and VADR keywords. Removed duplicate ENVIRON Removed system constants BPP and VIDADR, OSNAME, LINECHART, BARCHART Added TIMESTAMP to return the modified-datetime of a file Added LSHIFT and RSHIFT bit shift operators SBVER now includes build information TICKS now returns millisecond intervals Refactor eval() for performance Fixed some memory leaks in the ui handler Editor now restores cursor when returning from run Editor now displays the correct filename in the title bar Added "industrial" editor theme from Shian (slot 2) Fixed editor highlighting Runtime errors now show source screen with red error highlighter Form refresh command now takes an boolean arg, true=push ui state to vars The IMAGE argument can now be PNG data stored in an INT array The IMAGE argument can now be x,y,w,h screen corordinates The IMAGE argument can now be a 2-D array of POINTS Updated IMAGE sub-command to save 2-D array of POINT Added window.setFont command to set font size, bold and italic. example: w = window():w.setFont(10, "pt", false, true) TRUE is now always returned as 1 Added file manager to main shell program Fixed problem with escaped chars using FORMAT Fixed problem with XNOR command result Fixed problem with IMP and EQV command result Fixed issues with INKEY command to allow ALT/SHIFT/CTRL states to be returned Fixed capslock handling Fixed issues with TRY/CATCH Fixed using POINT to retrieve IMAGE data Fixed issues with CHAIN Fixed TLOAD to work correctly with TRY/CATCH Fixed XPOS and YPOS to return 0 based values Fixed compiler checking for redundant symbols, for example: let a = 1 2 3

New in SmallBASIC 0.12.2 Runtime (Jan 23, 2016)

  • Implemented loading recent files via ALT+1 .. ALT+9
  • Display list ALT+0 Fix potential editor crash with empty support widget
  • Fix potential crash with debug target
  • Fix restore path to only function when no other arguments supplied

New in SmallBASIC 0.11.20 Runtime (Sep 20, 2015)

  • Editor fixes:
  • Now displays an i-beam/edit cursor
  • Fixed highlighting for numbers and keywords
  • Pressing F1 key for keywords surrounded by punctuation now works correctly
  • Fixed page scrolling with up/down arrow keys
  • Pressing tab at the bottom no longer jumps to the top
  • The editor context menu now includes additional items
  • Added editor bookmark/breakpoint handling
  • Added a basic debugger:
  • Debugging relies on a network socket for communication between the two processes.
  • You may need to accept a firewall warning to allow this communication.
  • The default listening port number is 4000. This can be changed with a startup option, for example:
  • sbasic -p 4001

New in SmallBASIC 0.11.19 Runtime (Aug 21, 2015)

  • Fix display output before DELAY
  • Fix LET command problem found in 32bit linux
  • Removed obsolete/unimplemented keywords WSPLIT, PLOT2, UNLOADLIB
  • Made a few minor performance improvements
  • Fixed PRINT 1/1000 and other floating point rounding issues
  • Fixed problem with 59 char INPUT prompt
  • Added missing PEN(12) support
  • Added multi-item case selection (suggestion by James Grimaldi)
  • SDL: Updated display of file anchor links
  • SDL: Fix drag-drop from explorer to launch programs
  • SDL: Added missing IDE editor

New in SmallBASIC 0.11.18 Runtime (Jun 10, 2015)

  • Pressing the key will now display the launcher when a program has completed. Unlike the BACK menu, option, pressing the key from the launcher will not terminate the application. The + key combination is a short cut to the BACK menu
  • The startup font size is now based on logical point size of 11 points. You may need to change your Zoom setting to account for this change.
  • The window title now correctly displays the BASIC program filename.
  • Fixed a regression with returning system memory information (Command FRE)
  • Workaround for incorrect mouse cursor displayed at startup when double clicking to start