1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
16 $FORTH_END_CODE_WORD ;S
26 $FORTH_END_CODE_WORD SP@
36 $FORTH_END_CODE_WORD SP!
44 $FORTH_END_CODE_WORD RP@
53 $FORTH_END_CODE_WORD RP!
56 ;; move value from paremeter stack to execution stack
69 $FORTH_END_CODE_WORD >R
71 ;; move value from execution stack to paremeter stack
82 $FORTH_END_CODE_WORD R>
84 ;; copy value from execution stack to paremeter stack
94 $FORTH_END_CODE_WORD R@
96 $FORTH_CODE_WORD RDROP
103 $FORTH_END_CODE_WORD RDROP
106 $FORTH_CODE_WORD DROP
112 $FORTH_END_CODE_WORD DROP
114 $FORTH_CODE_WORD 2DROP
119 $FORTH_END_CODE_WORD 2DROP
121 $FORTH_CODE_WORD OVER
123 ;; ( n0 n1 -- n0 n1 n0 )
128 $FORTH_END_CODE_WORD OVER
132 ;; ( d0 d1 -- d0 d1 d0 )
133 ;; k8: rewrite on asm?
134 2SWAP 2DUP >R >R 2SWAP R> R> ;S
135 $FORTH_END_WORD 2OVER
137 $FORTH_CODE_WORD SWAP
139 ;; ( n0 n1 -- n1 n0 )
143 $FORTH_END_CODE_WORD SWAP
147 ;; ( d0 d1 -- d1 d0 )
148 ;; k8: rewrite on asm?
150 $FORTH_END_WORD 2SWAP
158 $FORTH_END_CODE_WORD DUP
160 $FORTH_CODE_WORD -DUP
162 ;; ( n -- n n ) if n is not 0
163 ;; ( n -- n ) if n is 0
170 $FORTH_END_CODE_WORD -DUP
172 $FORTH_CODE_WORD 2DUP
180 $FORTH_END_CODE_WORD 2DUP
184 ;; ( n0 n1 n2 -- n1 n2 n0 )
187 ex (sp),hl ;; swap n0 and n1
190 $FORTH_END_CODE_WORD ROT
192 $FORTH_CODE_WORD NROT
194 ;; ( n0 n1 n2 -- n2 n0 n1 )
197 ex (sp),hl ;; swap n0 and n2
201 $FORTH_END_CODE_WORD NROT