forth: Forth-ify "OVER"

This commit is contained in:
Virgil Dupras 2020-03-30 07:58:16 -04:00
parent 9cfddea940
commit 09cd25df29
4 changed files with 13 additions and 18 deletions

Binary file not shown.

View File

@ -952,25 +952,10 @@ DUP:
push hl
jp next
; ( a b -- a b a )
.db "OVER"
.dw $-DUP
.db 4
OVER:
.dw nativeWord
pop hl ; B
pop de ; A
call chkPS
push de
push hl
push de
jp next
.fill 112
.fill 132
.db "_bend"
.dw $-OVER
.dw $-DUP
.db 5
; Offset: 06ee
.out $

View File

@ -98,7 +98,7 @@
BEGIN
( We take advantage of the fact that char MSB is
always zero to pre-write our null-termination )
OVER ! ( a )
_c OVER ! ( a )
1 _c + ( a+1 )
C< ( a c )
DUP _c WS?

View File

@ -31,6 +31,16 @@ CODE ROT
BC PUSHqq, ( A )
;CODE
( a b -- a b a )
CODE OVER
HL POPqq, ( B )
DE POPqq, ( A )
chkPS,
DE PUSHqq, ( A )
HL PUSHqq, ( B )
DE PUSHqq, ( A )
;CODE
( a b -- a b a b )
CODE 2DUP
HL POPqq, ( B )