diff options
author | Daniel Friesel <derf@finalrewind.org> | 2016-01-19 19:59:51 +0100 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2016-01-19 19:59:51 +0100 |
commit | abf69bd53f86300d263d3abeeae81a9e1c3cd5c0 (patch) | |
tree | 7936114f76c040ac3203a59641c3056b7e65e195 /src/system.cc | |
parent | cd52b9a6b0272466f414ce4802ce50a0ec38dd29 (diff) |
support scrolling arbitrary strings.
Diffstat (limited to 'src/system.cc')
-rw-r--r-- | src/system.cc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/system.cc b/src/system.cc index 09c0f53..340615d 100644 --- a/src/system.cc +++ b/src/system.cc @@ -12,11 +12,10 @@ System rocket; -extern volatile uint8_t disp[8]; - void System::loop() { static uint8_t i = 0; + char modem_char; // both buttons are pressed if ((PINC & (_BV(PC3) | _BV(PC7))) == 0) { // naptime! @@ -70,9 +69,13 @@ void System::loop() } while (modem.buffer_available()) { - disp[i++] = modem.buffer_get(); - if (i == 8) + modem_char = modem.buffer_get(); + display.string[i++] = modem_char; + if (i == 127) { + i = 0; + } else if (modem_char == 0) { i = 0; + } } } |