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/msp430/words/does.asm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 amforth-6.5/msp430/words/does.asm (limited to 'amforth-6.5/msp430/words/does.asm') diff --git a/amforth-6.5/msp430/words/does.asm b/amforth-6.5/msp430/words/does.asm new file mode 100644 index 0000000..235fae7 --- /dev/null +++ b/amforth-6.5/msp430/words/does.asm @@ -0,0 +1,20 @@ +;C DOES> -- change action of latest def'n +; COMPILE (DOES>) +; dodoes ,JMP ; IMMEDIATE +; Note that MSP430 uses a JMP, not a CALL, to DODOES. + IMMED(XT_DOES,5,"does>",DOCOLON) + DW XT_COMPILE,XT_DODOES + DW XT_COMPILE,4030h ; compile a machine jump instruction + DW XT_COMPILE,dodoes + DW XT_EXIT + +; runtime part of does> + HEADLESS(XT_DODOES,DOCOLON) + DW XT_R_FROM + DW XT_NEWEST + DW XT_CELLPLUS + DW XT_FETCH + DW XT_FETCH + DW XT_NFA2CFA + DW XT_STOREI + DW XT_EXIT -- cgit v1.2.3