diff --git a/radio/src/gui/128x64/lcd.h b/radio/src/gui/128x64/lcd.h index e6aadc74a..7c148d72a 100644 --- a/radio/src/gui/128x64/lcd.h +++ b/radio/src/gui/128x64/lcd.h @@ -273,9 +273,11 @@ inline display_t getPixel(uint8_t x, uint8_t y) return 0; } - display_t * p = &displayBuf[y / 2 * LCD_W + x]; - return (y & 1) ? (*p >> 4) : (*p & 0x0F); + display_t pixel = displayBuf[(y / 8) * LCD_W + x]; + display_t mask = 1 << (y & 7); + return ((pixel & mask) ? 0xf : 0); } + const char * writeScreenshot(); void drawShutdownAnimation(uint32_t index); diff --git a/radio/src/gui/128x64/view_main.cpp b/radio/src/gui/128x64/view_main.cpp index fdcef2143..ccff992c2 100644 --- a/radio/src/gui/128x64/view_main.cpp +++ b/radio/src/gui/128x64/view_main.cpp @@ -584,9 +584,13 @@ void menuMainView(event_t event) } // And ! in case of unexpected shutdown +#if defined(LOG_TELEMETRY) || defined(WATCHDOG_DISABLED) + lcdDrawChar(REBOOT_X, 0*FH, '!', INVERS); +#else if (unexpectedShutdown) { lcdDrawChar(REBOOT_X, 0*FH, '!', INVERS); } +#endif #if defined(GVARS) && !defined(PCBSTD) if (gvarDisplayTimer > 0) {