diff options
author | Daniel Friesel <derf@finalrewind.org> | 2016-02-21 11:30:35 +0100 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2016-02-21 11:30:35 +0100 |
commit | d75a6cd36db515a0863a03480d8e5c589a235e22 (patch) | |
tree | 247ba4ce0d3035d132d6a3548a5d9d8154bad1c4 /src | |
parent | 9e68d2ab92a2169478d6ec4b4d1f94026dfcf3dc (diff) |
storage: Add hasData method
Diffstat (limited to 'src')
-rw-r--r-- | src/storage.cc | 8 | ||||
-rw-r--r-- | src/storage.h | 7 |
2 files changed, 15 insertions, 0 deletions
diff --git a/src/storage.cc b/src/storage.cc index 7ee5f4c..98a90f0 100644 --- a/src/storage.cc +++ b/src/storage.cc @@ -190,6 +190,14 @@ void Storage::reset() i2c_write(0, 1, &num_anims); } +bool Storage::hasData() +{ + // Unprogrammed EEPROM pages always read 0xff + if (num_anims == 0xff) + return false; + return true; +} + void Storage::load(uint16_t idx, uint8_t *data) { uint8_t page_offset; diff --git a/src/storage.h b/src/storage.h index b2a4dbf..5366ed9 100644 --- a/src/storage.h +++ b/src/storage.h @@ -40,6 +40,13 @@ class Storage { void reset(); /** + * Checks whether the EEPROM contains animathion data. + * + * @return true if the EEPROm contains valid-looking data + */ + bool hasData(); + + /** * Load pattern from EEPROM. * * @param idx pattern index |