aboutsummaryrefslogtreecommitdiff
path: root/amforth-6.5/avr8/words/bm-toggle.asm
diff options
context:
space:
mode:
Diffstat (limited to 'amforth-6.5/avr8/words/bm-toggle.asm')
-rw-r--r--amforth-6.5/avr8/words/bm-toggle.asm18
1 files changed, 18 insertions, 0 deletions
diff --git a/amforth-6.5/avr8/words/bm-toggle.asm b/amforth-6.5/avr8/words/bm-toggle.asm
new file mode 100644
index 0000000..fbbdc21
--- /dev/null
+++ b/amforth-6.5/avr8/words/bm-toggle.asm
@@ -0,0 +1,18 @@
+; ( bitmask byte-addr -- )
+; MCU
+; toggle bits set in bitmask on byte at addr
+VE_BM_TOGGLE:
+ .dw $ff09
+ .db "bm-toggle",0
+ .dw VE_HEAD
+ .set VE_HEAD = VE_BM_TOGGLE
+XT_BM_TOGGLE:
+ .dw PFA_BM_TOGGLE
+PFA_BM_TOGGLE:
+ movw zl, tosl
+ loadtos
+ ld temp0, Z
+ eor temp0, tosl
+ st Z, temp0
+ loadtos
+ jmp_ DO_NEXT