aboutsummaryrefslogtreecommitdiff
path: root/amforth-6.5/avr8/lib/2evalue.frt
diff options
context:
space:
mode:
Diffstat (limited to 'amforth-6.5/avr8/lib/2evalue.frt')
-rw-r--r--amforth-6.5/avr8/lib/2evalue.frt30
1 files changed, 30 insertions, 0 deletions
diff --git a/amforth-6.5/avr8/lib/2evalue.frt b/amforth-6.5/avr8/lib/2evalue.frt
new file mode 100644
index 0000000..6a1d3aa
--- /dev/null
+++ b/amforth-6.5/avr8/lib/2evalue.frt
@@ -0,0 +1,30 @@
+\ use 2 cells of EEPROM
+\ Author: Erich Wälde
+\ Date: oct 2015
+
+\ #require quotations.frt
+\ #require eallot.frt
+
+: 2@e ( eaddr -- n2 n1 )
+ dup \ -- addr addr
+ cell+ \ -- addr addr+2
+ @e \ -- addr n2
+ swap \ -- n2 addr
+ @e \ -- n2 n1
+;
+: 2!e ( n1 n2 eaddr -- )
+ rot \ -- n2 eaddr n1
+ over \ -- n2 eaddr n1 eaddr
+ cell+ \ -- n2 eaddr n1 eaddr+2
+ !e \ -- n2 eaddr
+ !e \ --
+;
+
+: 2Evalue ( d -- )
+ (value)
+ ehere ,
+ [: @i 2@e ;] ,
+ [: @i 2!e ;] ,
+ ehere 2!e 2 cells eallot
+;
+