aboutsummaryrefslogtreecommitdiff
path: root/amforth-6.5/avr8/words/n_to_r.asm
diff options
context:
space:
mode:
Diffstat (limited to 'amforth-6.5/avr8/words/n_to_r.asm')
-rw-r--r--amforth-6.5/avr8/words/n_to_r.asm23
1 files changed, 23 insertions, 0 deletions
diff --git a/amforth-6.5/avr8/words/n_to_r.asm b/amforth-6.5/avr8/words/n_to_r.asm
new file mode 100644
index 0000000..9efdaa6
--- /dev/null
+++ b/amforth-6.5/avr8/words/n_to_r.asm
@@ -0,0 +1,23 @@
+; ( x-n .. x-1 n -- ) (R: -- x-n .. x-1 n)
+; Stack
+; move n items from data stack to return stack
+VE_N_TO_R:
+ .dw $ff03
+ .db "n>r",0
+ .dw VE_HEAD
+ .set VE_HEAD = VE_N_TO_R
+XT_N_TO_R:
+ .dw PFA_N_TO_R
+PFA_N_TO_R:
+ movw zl, tosl
+ mov temp0, tosl
+PFA_N_TO_R1:
+ loadtos
+ push tosh
+ push tosl
+ dec temp0
+ brne PFA_N_TO_R1
+ push zl
+ push zh
+ loadtos
+ jmp_ DO_NEXT