From d80736ab6e8e3cad2f1a30c6eaba2d6883dbe967 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sat, 26 Aug 2017 20:31:40 +0200 Subject: Remove AmForth --- .../common/lib/hardware/i2c-eeprom-block.frt | 77 ---------------------- 1 file changed, 77 deletions(-) delete mode 100644 amforth-6.5/common/lib/hardware/i2c-eeprom-block.frt (limited to 'amforth-6.5/common/lib/hardware/i2c-eeprom-block.frt') diff --git a/amforth-6.5/common/lib/hardware/i2c-eeprom-block.frt b/amforth-6.5/common/lib/hardware/i2c-eeprom-block.frt deleted file mode 100644 index 22351fb..0000000 --- a/amforth-6.5/common/lib/hardware/i2c-eeprom-block.frt +++ /dev/null @@ -1,77 +0,0 @@ -\ -\ I2C EEPROM driver for BLOCK wordset -\ -\ call i2c.ee.blockinit to activate the driver -\ for the BLOCK words. - -#require blocks.frt -#require bounds.frt -#require i2c-eeprom.frt -#require ms.frt - -\ select a eeprom module. -\ the pages differ in size. -\ do not overrun them -#16 constant 24c08 -#16 constant 24c16 -#32 constant 24c32 -#32 constant 24c64 -#64 constant 24c128 -#64 constant 24c256 -#128 constant 24c512 -#256 constant 24c1024 - -\ runtime configurable parameters, taken from or -\ calculated in i2c.ee.blockinit. Never change them directly -variable i2c.ee.hwid -variable i2c.ee.pagesize -variable i2c.ee.pages/block - -: i2c.ee.read-page ( addr len page hwid -- ) - dup i2c.begin - swap i2c.ee.pagesize @ * i2c.ee.send-addr - i2c.restart \ repeated start - i2c.rd i2c.tx - 1- bounds over >r ?do i2c.rx i c! loop - i2c.rxn r> c! \ last byte - i2c.end -; - -: i2c.ee.load-buffer ( a-addr u -- ) \ BLOCK API - 1- i2c.ee.pages/block @ * \ start address - i2c.ee.pages/block @ bounds ?do - dup i2c.ee.pagesize @ i i2c.ee.hwid @ i2c.ee.read-page - i2c.ee.pagesize @ + - loop drop -; - -: i2c.ee.write-page ( addr len page hwid -- ) - i2c.begin - i2c.ee.pagesize @ * i2c.ee.send-addr - bounds ?do i c@ i2c.tx loop - i2c.end 5 ms \ make sure the eeprom gets ready again -; - -: i2c.ee.save-buffer ( a-addr u -- ) \ BLOCK API - 1- i2c.ee.pages/block @ * \ start address - i2c.ee.pages/block @ bounds ?do - dup i2c.ee.pagesize @ i i2c.ee.hwid @ i2c.ee.write-page - i2c.ee.pagesize @ + - loop drop -; - -\ adjust the page size and update the #pages per block buffer -: i2c.ee.setpagesize ( 24cxx -- ) - blocksize over / i2c.ee.pages/block ! - i2c.ee.pagesize ! -; - -\ for turnkey -\ does not initialize TWI/I2C interface! (i2c.init.default) -: i2c.ee.blockinit ( pagesize hwid -- ) - block:init - ['] i2c.ee.load-buffer is load-buffer - ['] i2c.ee.save-buffer is save-buffer - i2c.ee.hwid ! - i2c.ee.setpagesize -; -- cgit v1.2.3