| 191 | } |
| 192 | |
| 193 | void Storage::write_block(uint16_t loc, const void *src, size_t n) |
| 194 | { |
| 195 | if (loc >= sizeof(_buffer)-(n-1)) { |
| 196 | return; |
| 197 | } |
| 198 | if (memcmp(src, &_buffer[loc], n) != 0) { |
| 199 | init(); |
| 200 | memcpy(&_buffer[loc], src, n); |
| 201 | _mark_dirty(loc, n); |
| 202 | } |
| 203 | } |
| 204 | |
| 205 | void Storage::_timer_tick(void) |
| 206 | { |