e4a4a9800d
It's a bit more inconvenient in terms of register protection (BC is much more generally useful than IY), but it makes tight spots such as next and execute much faster, so I think it's worth it.
17 lines
320 B
Plaintext
17 lines
320 B
Plaintext
CODE ROT ( a b c -- b c a )
|
|
HL POP, ( C ) DE POP, ( B ) IY POP, ( A ) chkPS,
|
|
DE PUSH, ( B ) HL PUSH, ( C ) IY PUSH, ( A )
|
|
;CODE
|
|
CODE DUP ( a -- a a )
|
|
HL POP, chkPS,
|
|
HL PUSH, HL PUSH,
|
|
;CODE
|
|
CODE ?DUP
|
|
HL POP, chkPS,
|
|
HL PUSH,
|
|
HLZ, IFNZ, HL PUSH, THEN,
|
|
;CODE
|
|
CODE DROP ( a -- )
|
|
HL POP,
|
|
;CODE
|