Remove one of the 2 indirection layers for EMIT

2 was overkill
This commit is contained in:
Virgil Dupras 2020-05-02 10:26:34 -04:00
parent 443ed754e9
commit 446a58006d
6 changed files with 6 additions and 8 deletions

View File

@ -1,5 +1,5 @@
(cont.)
RAMSTART INITIAL_SP +55 EMITPTR override
RAMSTART INITIAL_SP +55 RESERVED
+02 CURRENT +57 readln's variables
+04 HERE +59 blk's variables
+06 C<? +5b z80a's variables
@ -10,7 +10,7 @@ RAMSTART INITIAL_SP +55 EMITPTR override
+2e BOOT C< PTR
+4e INTJUMP
+51 CURRENTPTR
+53 EMITPTR
+53 (emit) over.
(cont.)

View File

@ -12,6 +12,5 @@
( setup interrupt )
0xc3 0x4e RAM+ C! ( c3==JP, 4e==INTJUMP )
['] ~ACIA 0x4f RAM+ !
['] (emit) 0x53 RAM+ ! ( 53==EMITPTR )
(im1) ;

View File

@ -3,8 +3,7 @@
LIT< (parse) (find) DROP (parse*) !
CURRENT @ 0x2e RAM+ ! ( 2e == BOOT C< PTR )
0 0x08 RAM+ ! ( 08 == C<* override )
LIT< (emit) (find) DROP 0x53 RAM+ ! ( 53 == EMITPTR )
0 0x55 RAM+ ! ( 55 == EMITPTR override )
0 0x53 RAM+ ! ( 53 == (emit) override )
( 0c == C<* )
LIT< (boot<) (find) DROP 0x0c RAM+ !
( boot< always has a char waiting. 06 == C<?* )

View File

@ -1,6 +1,6 @@
: EMIT
( 0x53==EMITPTR 0x55==override )
85 RAM+ @ DUP NOT IF DROP 83 RAM+ @ THEN EXECUTE ;
( 0x53==(emit) override )
83 RAM+ @ DUP IF EXECUTE ELSE DROP (emit) THEN ;
: (print)
BEGIN

Binary file not shown.

View File

@ -16,7 +16,7 @@ H@ 256 /MOD 2 PC! 2 PC!
( Update LATEST )
PC ORG @ 8 + !
," CURRENT @ HERE ! "
," : (emit) 0 PC! ; CURRENT @ 83 RAM+ ! "
," : (emit) 0 PC! ; "
," : KEY 0 PC@ ; "
422 470 XPACKR
," ' KEY 12 RAM+ ! "