From 67d25d837ac55f28a366c0a3b262e439a6e75fc3 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sat, 19 Aug 2017 12:15:28 +0200 Subject: Add AmForth --- amforth-6.5/avr8/words/dodo.asm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 amforth-6.5/avr8/words/dodo.asm (limited to 'amforth-6.5/avr8/words/dodo.asm') diff --git a/amforth-6.5/avr8/words/dodo.asm b/amforth-6.5/avr8/words/dodo.asm new file mode 100644 index 0000000..3b88694 --- /dev/null +++ b/amforth-6.5/avr8/words/dodo.asm @@ -0,0 +1,25 @@ +; ( limit start -- ) (R: -- loop-sys ) +; System +; runtime of do +;VE_DODO: +; .dw $ff04 +; .db "(do)" +; .dw VE_HEAD +; .set VE_HEAD = VE_DODO +XT_DODO: + .dw PFA_DODO +PFA_DODO: + ld temp2, Y+ + ld temp3, Y+ ; limit +PFA_DODO1: + ldi zl, $80 + add temp3, zl + sub tosl, temp2 + sbc tosh, temp3 + + push temp3 + push temp2 ; limit ( --> limit + $8000) + push tosh + push tosl ; start -> index ( --> index - (limit - $8000) + loadtos + jmp_ DO_NEXT -- cgit v1.2.3