webForth
webForth copied to clipboard
Arduino: Dictionaries extending in EEPROM
Idea is to have dictionaries extend in EEPROM rather than RAM -
- [ ] JS: extend the Mem classes to have an EEPROM reserved write area
- [x] C: extend code that decides ROM v RAM to have EEPROM area as well
- [x] Use EEPROM.build(xx) to reserve some of that area
- [x] Instead of switching pointers to Ram, switch to EEPROM on startup -
- [x] Allow switching pointers dynamically, so can test in Ram, then go back to EEPROM and write, then test more in RAM
- [ ] Figure out how to know have EEPROM initialized
- [ ] Make sure to test with EEPROMSIZE 0 or undefined e.g. for Arduino
See
- one of the comments on https://www.facebook.com/groups/FORTHarduino/permalink/803501973853713/
- https://diyprojects.io/esp8266-how-read-write-erase-the-eeprom-calculate-space-needed
- https://arduino-esp8266.readthedocs.io/en/latest/libraries.html#eeprom
- ??? for Arduino which is different from ESP8266
- [x] Think through design - issues ...
- [x] Phase 1: Writing to ROM, variables in RAM
- [x] Phase 2: Writing to EEPROM, variables in RAM
- independent of whether EEPROM has been committed or not.
- [x] Phase 3:
- Operating after booting with EEPROM
JS build - on separate branch
- [x] Add extra memory Eeprom - like Ram and Rom
- [x] Extend Mem class to check it
- [x] define useEprom, like useRam