Add LATEST and UNLOOP to clean up scripts

This commit is contained in:
David Schmenk committed 2024-01-25 17:46:04 -08:00
1 parent 8d92e854ae
commit a9cadd9fda
13 files changed
+34 -19

No files matched your search

+4 -3
View File
@@ -1,6 +1,7 @@
SRC" plasma.4th"
SRC" conio.4th"
: RESUME> ; ( PLACE HOLDER TO RESUME EXECUTION )
: RESUME> ; INTERPONLY ( PLACE HOLDER TO RESUME EXECUTION )
: ?EXEC ( F -- )
NOT IF ( SKIP CODE IN BETWEEN ?EXEC AND RESUME> )
1 >R
@@ -13,7 +14,7 @@ SRC" conio.4th"
THEN
>R
ENDOF
' ?EXEC OF ( CHECK FOR NESTED ?EXEC )
[ LATEST ] LITERAL OF ( CHECK FOR NESTED ?EXEC )
R> 1+ >R
ENDOF
ENDCASE
@@ -22,7 +23,7 @@ SRC" conio.4th"
THEN
AGAIN
THEN
;
; INTERPONLY
: STRINPUT ( STR -- )
DUP 1+ 255 ACCEPT -TRAILING SWAP C!
+4 -9
View File
@@ -1,24 +1,20 @@
SRC" plasma.4th"
SRC" conio.4th"
0 VARIABLE RESUMEXT
0 VARIABLE EXECXT
: RESUME> ; ( PLACE HOLDER TO RESUME EXECUTION )
' RESUME> RESUMEXT !
: RESUME> ; INTERPONLY ( PLACE HOLDER TO RESUME EXECUTION )
: ?EXEC ( F -- )
NOT IF ( SKIP CODE IN BETWEEN ?EXEC AND RESUME> )
1 >R
BEGIN
BL WORD FIND IF
CASE
RESUMEXT @ OF
' RESUME> OF
R> 1- ?DUP 0= IF ( EXIT IF FINAL RESUME> )
DROP EXIT
THEN
>R
ENDOF
EXECXT @ OF ( CHECK FOR NESTED ?EXEC )
[ LATEST ] LITERAL OF ( CHECK FOR NESTED ?EXEC )
R> 1+ >R
ENDOF
ENDCASE
@@ -27,8 +23,7 @@ SRC" conio.4th"
THEN
AGAIN
THEN
;
' ?EXEC EXECXT !
; INTERPONLY
: STRING CREATE 256 ALLOT DOES> ; ( JUST ALLOCATE THE BIGGEST STRING POSSIBLE )
+3 -3
View File
@@ -28,9 +28,9 @@ SRC" CONIO.4TH"
FMK @ J PLOT
?TERMINAL IF ( if keypressed )
KEY DROP
R> DROP R> DROP ( clean up DO-OKIE )
R> DROP R> DROP
R> DROP R> DROP
UNLOOP ( clean up DO-OKIE )
UNLOOP
UNLOOP
EXIT ( return )
THEN
LOOP