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/throw.asm | 39 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 amforth-6.5/common/words/throw.asm (limited to 'amforth-6.5/common/words/throw.asm') diff --git a/amforth-6.5/common/words/throw.asm b/amforth-6.5/common/words/throw.asm new file mode 100644 index 0000000..24877a3 --- /dev/null +++ b/amforth-6.5/common/words/throw.asm @@ -0,0 +1,39 @@ +; ( n -- ) +; Exceptions +; throw an exception + +.if cpu_msp430==1 + HEADER(XT_THROW,5,"throw",DOCOLON) +.endif + +.if cpu_avr8==1 +VE_THROW: + .dw $ff05 + .db "throw",0 + .dw VE_HEAD + .set VE_HEAD = VE_THROW +XT_THROW: + .dw DO_COLON +PFA_THROW: +.endif + .dw XT_DUP + .dw XT_ZEROEQUAL + .dw XT_DOCONDBRANCH + DEST(PFA_THROW1) + .dw XT_DROP + .dw XT_EXIT +PFA_THROW1: + .dw XT_HANDLER + .dw XT_FETCH + .dw XT_RP_STORE + .dw XT_R_FROM + .dw XT_HANDLER + .dw XT_STORE + .dw XT_R_FROM + .dw XT_SWAP + .dw XT_TO_R + .dw XT_SP_STORE + .dw XT_DROP + .dw XT_R_FROM + .dw XT_EXIT + -- cgit v1.2.3