plusBASIC Release History
- v0.26 (2025-04-30)
- Fixed
Illegal quantity error
in DEF SPRITE (rows,columns),spritle
- Added functions
CURSOROFFSET
, CURSORX
, CURSORY
- Moved bit flag SCRCOLOR from BASYSCTL to SCREENCTL
- Added unit tests to sg.bas (screen graphics)
- v0.25 (2025-04-23)
- Forked s3basic.asm to plusBASIC specific sbasic.asm and inlined into aqplusbas.asm
- Renamed macro
SYNCHK
to SYNCHKC
, added SYNCHKT
- Refactored
rst SYNCHKC
calls to SYNCHKC
or SYNCHKT
- v0.24l (2025-04-15)
- Implemented AqExec load to and run from paged RAM
- Added paged RAM destination to
CALL
- Fixed
PUT SCREEN
generating Illegal quantity error - Replaced UDF hook in
ATN
with direct jump - Replaced UDF hooks in
OUTDO
and TTYCHR
/TTYCH
with direct jump. Moved hook code from AuxROM to SysROM - Ensured that Extended ROM is paged in for direct jumps that replaced UDF hooks
- v0.24k (2025-04-07)
- Updated
AQPLUS
Resource file chunk header formet and AqExec example asm/hello.asm - Implemented RUNing AqExec programs
- Refactored
LINE INPUT
code - Fixed
PLAY SAMPLE
and ^G warm boot infinite loop print_string_immd
now preserves HL- Updated makeinc.py and regenerated assembly include files
- v0.24j (2025-03-28)
- SAVE routines no longer close all files
- Fixed
OPEN
, FILEATTR()
, READ KEYS
- Added
OPEN ... APPEND
, CLOSE #channel
, READ #channel,var$,length
, WRITE #channel,^var$
- Moved
play_sample
to auxiliary ROM, add play_sample
to kernel jump table - Temporarily disable turbo mode during
Ctrl-G
beep and PLAY SAMPLE
- Replaced assembly routine
GET_STRING
with FRMSTR
, added routine PARSTR
- Replaced calls to:
FRMEVL
+CHKSTR
with FRMSTR
FRMPRN
+GETYPE
with FRMPRT
PARCHK
+CHKSTR
with PARSTR
- Renamed fileaux.asm to filemisc.asm
- v0.24i (2025-03-27)
- Replaced UDF hooks 0, 35 through 45 with direct jumps
- Deleted deprecated routine
aux_rom_call
- v0.24h (2025-03-26)
- Moved
FN_KEY
and FN_MOUSE
core code into auxiliary ROM - Renamed kernel routine
key_read_ascii
to key_read
and removed kernel routine stub key_read_scan_code
- Moved kernel routines
key_clear_fifo
, key_read
, and key_set_keymode
from keyread.asm to aqplusbas.asm - Moved kernel routine
key_pressed
from keyread.asm to auxrom/misc.asm and deleted file keyread.asm - Modified
FN_KEY
to take string of keycodes instead of ASCII codes and return position in string of key pressed - Added
REPEAT
and UNTIL
tokens, PAUSE UNTIL
statement, kernel routine bool_setbit_long
- v0.24g (2025-03-16)
- Renamed and added
JOYx()
functions. Allowed controller id as argument to JOYxx()
functions
- v0.24f (2025-03-10)
- Added
OFFSET()
- Moved
move_cursor
into AuxROM, split screen offset calculation code into cursor_offset
. - Moved
DATE
+TIME
, MOUSEx
, JOIN
, and SPLIT
core code into AuxROM.
- v0.24e (2025-03-08)
- Key read logic rewritten to mimic original INKEY$ logic
- Added
CLEAR KEYS
statement, %
binary numeric literals UPRKEY
, UPRKEY$
, LWRKEY
, and LWRKEY$
no longer wait for a keypress- Added
JOYB()
, JOYD()
, JOYK()
, JOYP()
, and JOYxx()
functions
- v0.24d (2025-02-27)
- Added
INC var
and DEC var
- Fixed
ERASE *array
- Added
String length
error - Added
RESET SPRITE
with Empty string
and String length
errors - Fixed
Syntax arror
on negative numbers after DIM var()=
- Moved
_get_rgb
core code and sprite_set_pos
from Extended ROM to Auxiliary ROM
- v0.24c (2025-02-17)
- Added
DEF SPRITE def$=(cols,rows),spritle
- Fixed SET FNKEY rebooting when string is too long
- v0.24b (2025-02-16)
- Fixed
SET TILE TO CHR
statement - Added
SET TILE *array$
- Added
DEF SPRITE def$=^var$
, unimplemented DEF SPRITE def$=(w,h),s
SET SPRITE
generates Empty string error if spritedef = ""- Removed undocumented
OPEN()
function - Moved GETYPE into, added FRMTYP, FRMPRS, FRMPRT, PARTYP, FRMSTR to S3BASIC
- Removed routines parchk_getype, frmeval_getype, skip_frmprn_getype, skip_frmprn_getyp, frmprn_getype
parse_colors
generates Missing Operand error instead of Syntax error- Added routines get_strbuf_addr_no_bc, fretms_addr_len
- v0.24a (2025-02-09)
-Fixed display of plusBASIC version on boot screen
- v0.24 (2025-02-09)
- Color cycle screen skipped if
/system/plusbasic/_skipsplash
exists DEF ATTRLIST
now allows string operands.- Changed all internal graphic kernel calls to use gfx_call instead of aux_call
- Moved ST_SPLIT core code into
basicaux.asm
- Added tests to aqpunit/sg.bas and linked into test chain
- Changed aqpunit/sx.bas to match plusBASIC last user page change
- v0.23u (2025-02-02)
- Fixed PAD$() overwriting string variables
- Added
PRINT @()
, SET CURSOR ON/OFF
, GETCURSOR
- Added
SET BORDER CHR/COLOR
, RESET BORDER
- Added
GETBORDERCHR
, GETBORDERCHR$
, GETBORDERCOLOR
, GETBORDERCOLOR$
- v0.23t (2025-02-01)
- v0.23s (2025-01-26)
- Implemented
UPR()
, UPR$()
, LWR()
, LWR$()
, UPRKEY
, UPRKEY$
, LWRKEY
, LWRKEY$
- Implemented
BIT(string,bit#)
- Added
LONG()
, LONG$()
, FLOAT()
, FLOAT$()
INKEY
. INKEY$
, GETKEY
, GETKEY$
now respect SET BREAK OFF
- Fixed errors in
TRIMDIR$
and TRIMEXT$
- Fixed bug in
RGB()
and RGB$()
with string argument
- v0.23r (2024-12-14)
- Added
PAD$(number,...)
where number is converted to string before padding DEF RGBLIST
, RGB()
, and RGB$()
now accept 3 byte binary string of 8-bit R,G,B values- Added
LEN(*array)
which returns length in bytes of data portion of array. - Added
COPY *array TO ...
, COPY ... TO *array
, and COPY *array TO *array
- ROM load routine executes
esp:boot.bin
instead of /boot/bin
- v0.23q (2024-11-29)
- Removed
SGNINT()
, added INT(string$)
and INT(string$,offset)
RGB()
, RGB$()
, and DEF RGBLIST
now accept 8-bit RGB binary string operands
- v0.23p (2024-11-28)
SET BREAK OFF
causes Ctrl-C to not BREAK out of INPUT- Syntax
OUT! port,byte
allows writing to protected I/O ports - boot.bin modified to identify and execute alternate BASIC ROMs
- Implemented
SGNINT()
function
- v0.23o (2024-10-27)
- SET BREAK OFF disables key checks between BASIC statements
- Fixed Ctrl-D, Ctrl-F, Ctrl-U turbo mode selection
- plusBASIC now executes ROM images via boot.bin
- Set S3 BASIC internal revision date to same as S1/S2
- Removed sys_ver_s3basic and S3BASIC option from
VER()
and VER()
- v0.23n (2024-10-25)
- Added statement
SET TRACK SPEED herz
and function TRACKSPEED
- Added Ctrl-U sets Unlimited Turbo while program is running
- Copied JOY() assembly code to AuxROM routine
read_gamepad
- Embedded SYSROM filename at $2FF0
- v0.23m (2024-10-21)
- Implemented
PAUSE jiffies
- Added
DEF USRINT
, SET USRINT ON/OFF
- v0.23l (2024-10-20)
- Added statement
SET SPEED
and function GETSPEED
- v0.23k (2024-10-19)
- Breaking change
- Keyword
PT3
has been changed to TRACK
READ *var$
now parses quoted strings correctly.- DIM
var$(...)=
requires quoted strings unless string is empty
- v0.23j (2024-10-18)
- Breaking changes
FILL BITMAP BYTE
is now FILL BITMAP BYTES
FILL BYTE
is now FILL BYTES
FILL WORD
is now FILL WORDS
- Added BYTE(), WORD(), and WORD$() functions
- S3 BASIC CONINT routine now allows signed numbers (-256 through 255)
- Fixed DEC() Overflow error when argument is not a literal string
- Fixed ASC$() corrupting argument contents
- var$[...] now returns a temporary so that FRETOP won't get clobbered
- v0.23i (2024-10-09)
- Added ATTR(), ATTR$()
- Implemented GETCOLOR
- v0.23h (2024-09-23)
- Added ENDKEY, FILESTATUS$(), FILEDATETIME$(), FILEATTR(), and FILELEN()
- Added optional position argument to ASC()
- Modified enhanced INPUT to exit on Ctrl-X, Tab, Back-Tab, Cursor-Up, and Cursor-Down
- v0.23g (2024-09-18)
- Fixed get_byte 64 which was causing DEF SPRITE to error on spritle 63
- Added PAD token to bas2baq.py and baq2bas.py
- Added AqExec file support to RUN file
- v0.23f (2024-09-13)
- Added TILEOFFSET()
- Changed
get_color_args
calls to get_screen_colors
and remove get_color_args
routine - Changed
CLEAR COLOR
to CLS COLOR {_fg_,_bg_}
CHR
and ATTR
options to COPY SCREEN TO...
and COPY ... TO SCREEN
- Wrote unit test
cs.baq
to test COPY SCREEN statements - Modified
ss.baq
to use COPY SCREEN and enabled OUT
port restrictions
- v0.23e (2024-09-07)
- Fixed file_load_paged executing random code when loading files over 65535 bytes
- Added test to sl.baq for loading large files to paged RAM
- v0.23d (2024-09-06)
- Fixed PEEKSCREEN() and PEEKCOLOR() for both 40 and 80 column mode
- Refactored screen_read_byte, screen_write_byte, color_read_byte, and color_write_byte
- Rewrote PEEKSCREEN$() PEEKCOLOR$(), color_read_string, and color_write_string
- Added unit tests front end
au.baq
and unit test program ps.baq
- v0.23c (2024-09-01)
- Enabled SET BREAK ON/OFF
- Fixed PEEK$ Syntax error
- Added ASC option to SAVE/LOAD PALETTE.
- Added FAST option to COPY SCREEN TO ... and COPY ... TO SCEEN
- Added
CLEAR COLOR
- Fixed page_read_paged and page_write_paged to return next paged address
- Fixed FILL TILEMAP out of bounds error checking
- Added continuous chain option to unit tests
- v0.23b (2024-08-28)
- Added extended memory addressing (!long) to
- COPY, COMPARE()
- FILL BYTE, FILL WORD,
- LOAD, SAVE
- POKE, PEEK(), PEEK$(), DOKE, DEEK
- PLAY SAMPLE
- Moved gfx/screen.asm to auxrom/screen.asm
- Implemented COPY @page,address TO SCREEN
- Fixed ARGS always returning 0,ARGS$() crashing system.
- Fixed DIR returning wrong file size
- v0.23a (2024-08-26)
- Fixed LOAD BITMAP incorrectly loading 9192 byte legacy bitmaps.
- Fixed unit test for legacy bitmaps
- v0.23 (2024-08-25)
- Fixed ptplay.bin not being loaded
- Fixed RUN rom-files crashing system
- Fixed LOAD FNKEY
- Load pt3play.bin from SD card, then esp: if not found
- v0.22y (2024-08-21)
- Breaking changes
FILL {@page},address,oount,byte
is now FILL BYTE {@page}, address, oount, byte
FILL {@page},address,oount,WORD integer
is now FILL WORD {@page}, address, count, integer
LOAD COLOR
is now LOAD SCREEN ATTR
LOAD DIR ... \*array
now loads filenames onlyLOAD DIR ... *array$,BIN
replaces old LOAD DIR ... \*array
SAVE filespec$,TOK
to SAVE filespec$,BIN
.
- New statements and functions
APPEND filespec$,^var$
BIT(long,bit#)
COPY SCREEN TO @page,address
FILL COLORMAP
JOY$()
PT3FAST
SET FILE ERROR ON/OFF
SET PT3 FAST ON/OFF
- Updated statements and functions
ATN
implemented.CLEAR CURSOR
FRE(_option_)
- -1 - Returns the number of bytes in memory not being used by BASlC as unsigned int.
- 0 - Returns the number of bytes in memory not being used by BASlC as signed int.
- 1 - Returns the total size of string space (as set by the first argument of CLEAR).
- 2 - Returns the top of BAexSIC memory (as set by the second argument of CLEAR).
- "" - Garbage collect and return free string space
INPUT (_col_,_row_),_minlen_,_maxlen_,INT _var_
LOAD CHRSET
- 768 byte file loads to characters 32 to 127 (standard ASCII printable)
- 1024 byte file loads to characters 128 to 255 (high ASCII)
- 2048 byte file loads entire character set
LOAD DIR ... *array$,ASC
loads formatted directory
- Operational changes
CLEAR
, NEW
, and RUN
close all filesLOAD filespec,@page,address
now load more than 64kLOAD BITMAP
generates Error 49 if file size does not exactly match one of the supported formats.LOAD
basic program sets FILE ERROR ONLOAD
binary closes file- Renamed
Disk I/O error
to I/O error
- Statements and functions now respecting SET FILE ERROR OFF
LOAD FNKEYS
SAVE/LOAD PALETTE
LOAD
stringLOAD
arrayLOAD DIR
DEL
MKDIR
CD
and CD$
- Bug fixes
- Syntax error on
LOAD filespec$,@page :
- Syntax error in
SET SPRITE ... PALETTE
- Added unit test front end
au.bas
, chained unit test programs - Updated unit test framework an unit tests
- Restricted kernel page writes to not write past USER_END.
- System IRQ handler now preserves all registers
- v0.22x (2024-05-25)
- Added LOAD TILESET and SAVE TILESET
- Added SET CHRDEF, GETCHRDEF$(), and SAVE CHRSET
- Fixed characters 128 - 255 of default character set being overridden
- INPUT and READ now parse hexademical numbers
- Added DIM var()=list, READ *var
- v0.22w (2024-05-20)
- Added WAIT, SET BREAK ON/OFF
- Implemented RGB(), DEF USR
- Added syntax OUT port,byte|string$;port,byte|string$...
- Syntax {@page,}address,byte;... to POKE, POKE COLOR, POKE SCREEN, and DOKE
-
- ^ operator string substition gives Missing or Too many operands errors.
v0.22v (2024-05-19)
- Added JOIN statement
- Added CLEAR *array
- All statements that write to multiple elements of string array, first zero out the array contents, then do a garbage collecion.
- Fixed DIM causes Syntax error after VARPTR()
- v0.22u
- Added string slicing in the form var$[pos] and var$[start TO end]
- Added Bad range error
- Fixed null string causing String too long error when used as an argument in % string substitution
- v0.22t (2024-05-15)
- v0.22s (2024-05-13)
- Added LOAD BITMAP and SAVE BITMAP
- v0.22r (2024-05-12)
- Added comments starting with apostrophe.
- Fixed silent abort on duplicate line number in LOAD with ASC option.
- v0.22q (2024-05-11)
- Changed DEF TILE TO CHR to SET TILE TO CHR
- Wrote demo program /pbdemo/chrsprite.bas
- v0.22p (2024-05-10)
- Added DEF TILE TO CHR and DEF BYTELIST
- v0.22o (2024-05-09)
- Implemented SAVE SCREEN and LOAD SCREEN statements
- v0.22n (2024-05-08)
- v0.22m (2024-04-28)
- Fixed spaces after escaped string being tokenized.
- v0.22l (2024-04-21)
- Added INMEM function
- Fixed stomping of temporay string in string trimming functions functions.
- v0.22k (2024-03-24)
- Added SAVE filespec$,CAQ to override SET SAVE ASC and SAVE filespec$,TOK to save raw tokenized program.
- Updated load_basic_program accordingly
- v0.22j (2024-03-20)
- v0.22i (2024-03-20)
- Removed LOAD STRING stub from source and README.md. Add LOAD and SAVE ^var$ to README.md.
- v0.22h (2024-03-19)
- Single PSET, PRESET, and POINT(), along with underlying routines.
- Single FILL BITMAP and CLEAR BITMAP along with underlying routines.
- Replaced SET BITMAP?? with COLOR, GETBITMAP?? with POSX, POSY, and COLOR
- Bitmap routines use EXT_FLAGS bits to determine
- Added DRAW token, USE SCREEN stub.
- v0.22g (2024-03-11)
- Added bitmap_read_sysvars, GETBITMAPBC, GETBITMAPBX, and GETBITMAPBY
- Added bitmap_write_color, bitmap_write_xpos, bitmap_write_ypos, and SET BITMAPBC BITMAPBX BITMAPBY
- Added bitmapc_read_sysvars, GETBITMAPCC, GETBITMAPCX, and GETBITMAPCY
- PSETB, PRESETB, POINTB, PSETC, PRESETC, and POINTC update last-x and last-y system variables
- Changed CLEAR BITMAP to CLEAR BITMAPB, matching syntax of other BITMAP keywords
- Added bitmapc_write_color, bitmapc_write_xpos, bitmapc_write_ypos, and SET BITMAPCC BITMAPCX BITMAPCY
- If PSETB color operand not specified, use color from SET BITMAPCC
- Renamed and reorganized several module assembly language files
- Added bitmap_move
- v0.22f (2024-03-09)
- Implemented PSETC, PRESETC, and POINTC
- Fixed Y-coordinate clipping in PSETB, PRESETB, POTNTB
- v0.22e (2024-03-09)
- Implemented POINTB(), added CLEAR BITMAPC and FILL BITMAPC
- v0.22d (2024-03-08)
- Added CLEAR BITMAP, FILL BITMAP.
- Implemented PSETB and PRESETB
- v0.22c (2024-03-06)
- v0.22c (2024-03-06)
- Fixed syntax error on extended functions VER through VARPTR
- v0.22b (2024-03-04)
- v0.22a (2024-03-04)
- v0.22 (2024-03-04)
- Added PT3STATUS, PT3LOOP, SET PT3 ON/OFF and fixed PAUSE PT3 while PT3 LOOP is active
- v0.21z (2024-03-01)
- Added pseudovariable ARGS and ARGS$(0)
- v0.21y (2024-02-25)
- Added SWAP VARS statement, ERASE statement, MID$ statement, and INDEX() function
- v0.21x (2024-02-24)
- Added TRIM$, TRIML$, and TRIMR$ functions
- v0.21w (2024-02-21)
- Added GETCHRSET function
- Improved screen switch/swap
- Fixed 80-column color mode printing
- Tweaked Latin-1 character sets
- v0.21v (2024-02-14)
- Added LOAD DIR filename$,*array$
- LOAD array$ ASC and LOAD DIR start at array index 1, put number of lines in index 0
- Updated read/write page checking to match new memory structure
- v0.21u (2024-02-13)
- Added LOAD filename$,*array$,ASC
- v0.21s (2024-02-13)
- Implemented DEF FNx and FNx
- v0.21r (2024-02-13)
- Added function INSTR, kernel routine str_instr
- v0.21q (2024-02-12)
- Added VARPTR() and STRPTR()
- v0.20p (2024-02-12)
- Replaced SCREEN SAVE, SCREEN RESTORE, and SCREEN SWAP with STASH SCREEN, RESTORE SCREEN, and SWAP SCREEN.
- v0.21o (2024-02-12)
- Removed character ROM data from sysrom binary, makerom script now does a simple copy with concatenate
- v0.21n (2024-02-11)
- Fixed 'Unknown error' bug in SAVE paged binary over 32k in length
- v0.21m (2024-02-11)
- v0.21j (2024-0209)
- Added SAVE/LOAD string arrays
- v0.21h (2024-02-05)
- Modified legal write pages, PLAY SAMPLE allowed pages
- v0.21g (2024-02-03)
- Reactivated JP descramble_rom in files.asm
- v0.21f (2024-02-03)
- Loads ptplay.bin from ESP: instead of SD card
- v0.21e (2024-01-31)
- Added LOOP PT3 [filename]
- v0.21c (2024-01-31)
- Separated pt3player code into loadable module
- v0.21b (2024-01-29)
- Load default and Latin-1 character sets from ESP filesystem
- v0.21a (2024-01-29)
- Added USE CHRSET filename$, changed Ctrl-O to switch to custom chrset, removed Ctrl-P option
- v0.21 (2024-01-27)
- SYSROM loaded in pages 60 through 62 as SoftROM
- v0.20w (2024-01-22)
- Fixed tokenization bug when RUNing BASIC progam files in ASCII format
- v0.20v (2024-01-21)
- Fixed DEF SPRITE [...] x-offset bug
- v0.20u (2024-01-18)
- Added SET SPRITE var$ TILECLIP and debugged str_length
- v0.20s (2024-01-17)
- Added
GET/PUT TILEMAP ... ^var$
, debugged FILL [@page,]address,WORD int
, fixed ASC$()
bug.
- v0.20r (2024-01-16)
- Added TRON and TROFF statements and Extended BASIC jump table. Debugged graphics DEF statements.
- v0.20q (2024-01-14)
- Finalized esp, paged, dos, and file_io jump table entries
- v0.20n (2024-01-13)
- Added syntax
LIST$(NEXT)
, replaced all usage of SBUFF
in paged memory with STRBUF
in main memory
- v0.20m (2024-01-11)
- Added
FILL [@page,] start, count, |byte|WORD int|
, sys_fill_word
, tokens VARS
and WORD
- Fixed spurious
FC error
in GET SCREEN
- Finished
GET TILEMAP
, PUT_TILEMAP
, tilemap_get
, and tilemap_put
- v0.20k (2024-01-08)
- Implemented
SET TILEMAP (x,y)
and tilemap_set_tile
- v0.20j (2024-01-07)
- Allow both
,
and ;
as delimiters in DEF INTLIST
- Fixed
ATTR attrs
and PALETTE palette#
causing syntax error after FILL TILEMAP tile#
.
treated as 0
in hex literal strings and ASC$
function
- v0.20i (2024-01-06)
- Added BASIC functions
FILEEXT$()
, FILEDIR$()
, TRIMDIR$()
, TRIMEXT$()
- Added kernel routines
file_get_ext
, file_trim_dir
, file_get_dir
, file_trim_ext
- Allow unquoted filename operand for
RUN
in direct mode - Added direct mode syntax
DEL file file file...
- Added syntax
LOAD filename$,@page
and SAVE filename$,@page
- Added cartridge diagnostic mode assembly option
- v0.20h (2024-01-02)
- Fixed 8k carts not working
- v0.20g (2023-12-30)
FILL SCREEN
, GET SCREEN
, PUT SCREEN
now work in both 40 column and 80 column mode
- v0.20f (2023-12-30)
- Added optional comma between end-coordinate and fill character in
FILL SCREEN
- v0.20e (2023-12-29)
- v0.20d (2023-12-29)
- Added
DEC()
function, fixed esp_get_version
/VER(0)
/VER$(0)
- v0.20c (2023-12-23)
- Refactored (and hopefully fixed) cartridge boot code
- v0.20b (2023-12-17)
- Fixed bug in init_charram
- v0.20a (2023-12-17)
- Clear BASIC RAM before starting cart. Add IRQ and hook disable, screen reset to hardware cart startup
- v0.20u (2023-12-14)
- Fixed GETPALETTE$, modded file_load_pt3 to stop any running pt3play process
- v0.19t (2023-12-13)
- Replaced RESET PT3 with STOP PT3, added PAUSE PT3 and RESUME PT3
- v0.19s (2023-12-12)
- Fixed CLS when SET COLOR is active
- v0.19r (2023-12-12)
- Fixed PLAY PT3 and RESET PT3
- v0.19q (2023-12-13)
- v0.19p (2023-12-11)
- v0.19n (2023-12-08)
- Added LOAD PALLETE, SAVE PALETTE, RESET PALETTE and RESET SCREEN
- v0.19m (2023-12-08)
- Fixed routine screen_pos_addr which had broken GET SCREEN and PUT SCREEN
- Implemented LOAD PT3 statement
- v0.19j (2023-12-04)
- Fixed printing to screen after SET COLOR
- v0.19i (2023-12-03)
- Converted plusBASIC patches to hooks to increase cartridge compatibility
- v0.19h (2023-12-02)
- Fixed ?Syntax error when RUNning ROM
- v0.19g (2023-12-01)
- Added SET SAVE ASC ON/OFF, preset DAC to $80 to eliminate click at begining of first sample
- v0.19f (2023-11-29)
- Fixed bank 1 not restored after, clicking in play_sample
- v0.19e (2023-11-28)
- Moved Extended BASIC hook routines into Bank 1 ROM
- v0.19d (2023-11-27)
- Moved dos and fileio modules into Aux ROM
- v0.19c (2023-11-26)
- Consolidated 256-byte aligned tables into tables.asm
- Fixed Disk I/O error when trying to LOAD/RUN esp:settings
- v0.19b (2023-11-26)
- DIR now shows 0B instead of B for zero length files.
- v0.19a (2023-11-26)
- Added /r and /t escape sequences
- v0.19 (2023-11-25)
- Added backslash escaped strings
- v0.18y (2023-11-24)
- LOAD and RUN now autodect CAQ vs ASCII when loading BASIC programs. Removed ,ASC option from LOAD.
- v0.18x (2023-11-24)