From ae939a3acb5795c33d082a4a14292888cc7857dc Mon Sep 17 00:00:00 2001 From: Richard Russell Date: Fri, 31 Jan 2025 14:18:26 +0000 Subject: [PATCH] Added RESTORE LOCAL statement --- WHATSNEW.TXT | 8 +++++--- bin/acorn/BBCBASIC.COM | Bin 19200 -> 19200 bytes bin/cpm/BBCBASIC.COM | Bin 18944 -> 18944 bytes src/EXEC.Z80 | 33 ++++++++++++++++----------------- tests/ERRORTST.BBC | Bin 4224 -> 4352 bytes 5 files changed, 21 insertions(+), 20 deletions(-) diff --git a/WHATSNEW.TXT b/WHATSNEW.TXT index bb105a9..fd0c3c8 100644 --- a/WHATSNEW.TXT +++ b/WHATSNEW.TXT @@ -1,4 +1,4 @@ -New features in BBC BASIC (Z80) version 5.00, June 2024: +New features in BBC BASIC (Z80) version 5.00, January 2025: 1. BASIC V statements @@ -54,8 +54,9 @@ New features in BBC BASIC (Z80) version 5.00, June 2024: 4.4 RETURNed parameters from FN/PROC 4.5 Compound assignment (+=, -=, *=, /= etc.) 4.6 Assigning to a sub-string: LEFT$()=, MID$()= , RIGHT$()= -4.7 Hooks for CIRCLE,ELLIPSE,FILL,LINE,MOUSE,ORIGIN,RECTANGLE,SYS,TINT,WAIT -4.8 Hooks for ON, OFF, MODE function, TINT function, WIDTH function +4.7 Hooks for CIRCLE, ELLIPSE, FILL, LINE, ORIGIN, RECTANGLE (graphics) +4.8 Hooks for MOUSE, OFF, ON, SYS, TINT, WAIT (statements) +4.9 Hooks for MODE function, TINT function, WIDTH function 5. Extensions to Acorn's BASIC V, compatible with BB4W, BBCSDL and BBCTTY @@ -67,6 +68,7 @@ New features in BBC BASIC (Z80) version 5.00, June 2024: 5.6 == synonymous with = in comparisons 5.7 DIM a global array inside a FN/PROC (use RETURN) 5.8 DIM var LOCAL -1 returns the stack pointer, even outside a FN/PROC +5.9 RESTORE LOCAL restores local variables without exiting the FN/PROC Note: The token for PUT has changed from &CE in version 3 to &0E in version 5. If this token is present in existing programs it will list as ENDWHILE rather diff --git a/bin/acorn/BBCBASIC.COM b/bin/acorn/BBCBASIC.COM index 28027fa3cdffeef99bf6ee6ef8d65f93309ce073..ff25b59d2293d32cbfd04925c041593717bf3ce1 100644 GIT binary patch delta 91 zcmV-h0HptbmH~j40kCWi0SB{f4nzt8Qj@Y6Mmc#1c+H9*AeaatJ}JX33I2rvH3BH; x{@ejJ0Vv`A>H!P@DBAujC>ko$Wpfw9}M$ v`>$2w-oHBpx(ZiV}k4J8#B_ihfBTx$pb)UzTb diff --git a/bin/cpm/BBCBASIC.COM b/bin/cpm/BBCBASIC.COM index ae7d798ca243e0a0ba9aa805846fe3cad8e8d993..b60c5950d3e494179acad5165819eea83e553ccc 100644 GIT binary patch delta 91 zcmV-h0HptblmUR00kCWj0SB{f4@3$9Qj@Y7Mmc#1c+H9+AeaatJ}JX33jT!wH3BH; x{@ejJ0Vv`A>H!P@DBAujC>ko$Wpfw9}M$ v`>$2w-oHB0JE#Af~|s~k%E=N_sNdT(wi6X>|w4x7^lL(#&$ApW}KgYcnE`6 zECU0>;y5o)A0G{da3CiosY-*P0LVx!D#|ZnSPhcD7Y8JOKrS9ahx_|FIfnRdQvq}L TZwu4_Gc*{U#4&P1lwczPHcKD5 delta 49 zcmZorYEay;fM@ebo;}PeGvZVj*w_}t6~y`ZhlemI#xgK4RK