From d00a92eb232b03cc5e19a33c407c0f0efd50b784 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Fri, 21 Sep 2018 22:00:43 +0200 Subject: ... --- forth/main.fs | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 forth/main.fs (limited to 'forth/main.fs') diff --git a/forth/main.fs b/forth/main.fs new file mode 100644 index 0000000..bfbf81e --- /dev/null +++ b/forth/main.fs @@ -0,0 +1,34 @@ +-io +marker -io \ define ports + +$0023 constant PB +$0023 constant pinb +$0024 constant ddrb +$0025 constant portb + +$0026 constant PC +$0026 constant pinc +$0027 constant ddrc +$0028 constant portc + +$0029 constant PD +$0029 constant pind +$002a constant ddrd +$002b constant portd + +-init +marker init + +: bv ( bit -- mask ) 1 swap lshift ; +: pin ( bit base-addr -- ) bv swap 2dup 1+ mclr ; +: port ( bit base-addr -- ) bv swap 1+ 2dup mset 1+ ; +: set ( mask addr -- ) mset ; +: clr ( mask addr -- ) mclr ; +: init + PB #3 port 2constant servo + PB #5 port 2constant led + PD #2 pin 2constant sr + PD #3 pin 2constant sc + PD #4 pin 2constant sl +; +: get ( mask addr -- bool ) c@ invert and 0= ; -- cgit v1.2.3