Add words "'S" and "S0"

This commit is contained in:
Virgil Dupras 2020-04-21 07:45:23 -04:00
parent ae14c55feb
commit 446ce574cd
4 changed files with 23 additions and 5 deletions

10
blk/046
View File

@ -9,8 +9,8 @@ SWAP a b -- b a
2DUP a b -- a b a b 2DUP a b -- a b a b
2OVER a b c d -- a b c d a b 2OVER a b c d -- a b c d a b
2SWAP a b c d -- c d a b 2SWAP a b c d -- c d a b
PICK Pick nth item from stack. "0 PICK" = DUP, 'S Returns current stack pointer, not counting the
"1 PICK" = OVER. push it's making right now.
ROLL Rotate PSP over n items. "1 ROLL" = SWAP, S0 Returns address of PSP TOS. When PSP is empty,
"2 ROLL" = ROT. 0 is noop. 'S == S0
(cont.)

7
blk/047 Normal file
View File

@ -0,0 +1,7 @@
(cont.)
PICK Pick nth item from stack. "0 PICK" = DUP,
"1 PICK" = OVER.
ROLL Rotate PSP over n items. "1 ROLL" = SWAP,
"2 ROLL" = ROT. 0 is noop.

Binary file not shown.

View File

@ -433,6 +433,17 @@ CODE 2DROP
chkPS, chkPS,
;CODE ;CODE
CODE S0
RAMSTART LDHL(nn), ( RAM+00 == INITIAL_SP )
HL PUSHqq,
;CODE
CODE 'S
HL 0 LDddnn,
SP ADDHLss,
HL PUSHqq,
;CODE
CODE AND CODE AND
HL POPqq, HL POPqq,
DE POPqq, DE POPqq,