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/common/words/find-xt.asm | 55 ++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 amforth-6.5/common/words/find-xt.asm (limited to 'amforth-6.5/common/words/find-xt.asm') diff --git a/amforth-6.5/common/words/find-xt.asm b/amforth-6.5/common/words/find-xt.asm new file mode 100644 index 0000000..0ed50b8 --- /dev/null +++ b/amforth-6.5/common/words/find-xt.asm @@ -0,0 +1,55 @@ +; ( c-addr len -- 0 | xt -1 | xt 1 ) +; Tools +; search wordlists for an entry with the xt from c-addr/len + +.if cpu_msp430==1 + HEADER(XT_FINDXT,7,"find-xt",DOCOLON) +.endif + +.if cpu_avr8==1 +VE_FINDXT: + .dw $ff07 + .db "find-xt",0 + .dw VE_HEAD + .set VE_HEAD = VE_FINDXT +XT_FINDXT: + .dw DO_COLON +PFA_FINDXT: +.endif + .dw XT_DOLITERAL + .dw XT_FINDXTA + .dw XT_DOLITERAL + .dw CFG_ORDERLISTLEN + .dw XT_MAPSTACK + .dw XT_ZEROEQUAL + .dw XT_DOCONDBRANCH + DEST(PFA_FINDXT1) + .dw XT_2DROP + .dw XT_ZERO +PFA_FINDXT1: + .dw XT_EXIT + +.if cpu_msp430==1 + HEADLESS(XT_FINDXTA,DOCOLON) +.endif + +.if cpu_avr8==1 + +XT_FINDXTA: + .dw DO_COLON +PFA_FINDXTA: +.endif + .dw XT_TO_R + .dw XT_2DUP + .dw XT_R_FROM + .dw XT_SEARCH_WORDLIST + .dw XT_DUP + .dw XT_DOCONDBRANCH + DEST(PFA_FINDXTA1) + .dw XT_TO_R + .dw XT_NIP + .dw XT_NIP + .dw XT_R_FROM + .dw XT_TRUE +PFA_FINDXTA1: + .dw XT_EXIT -- cgit v1.2.3