From a02f8c8ae303034cb2a2d93bec4022616272dd67 Mon Sep 17 00:00:00 2001 From: Ivan Zorin Date: Tue, 21 Nov 2023 01:38:10 +0300 Subject: [PATCH 01/12] Implement optional looping for animated boot logo [#1839] --- source/Core/Drivers/BootLogo.cpp | 58 ++++++++++++++++++++----------- source/Core/Inc/Settings.h | 6 ++++ source/Core/Src/Settings.cpp | 2 +- source/Core/Src/settingsGUI.cpp | 13 +++++-- source/Core/Threads/GUIThread.cpp | 12 +++---- 5 files changed, 60 insertions(+), 31 deletions(-) diff --git a/source/Core/Drivers/BootLogo.cpp b/source/Core/Drivers/BootLogo.cpp index f21b8993c5..f1f5693d85 100644 --- a/source/Core/Drivers/BootLogo.cpp +++ b/source/Core/Drivers/BootLogo.cpp @@ -3,10 +3,11 @@ #include "Buttons.hpp" #include "OLED.hpp" #include "cmsis_os.h" + #define LOGO_PAGE_LENGTH 1024 void delay() { - if (getSettingValue(SettingsOptions::LOGOTime) == 5) { + if (getSettingValue(SettingsOptions::LOGOTime) >= logoMode_t::ONETIME) { waitForButtonPress(); } else { waitForButtonPressOrTimeout(TICKS_SECOND * getSettingValue(SettingsOptions::LOGOTime)); @@ -20,60 +21,75 @@ void BootLogo::handleShowingLogo(const uint8_t *ptrLogoArea) { } else if (ptrLogoArea[0] == 0xAA) { showNewFormat(ptrLogoArea + 1); } + OLED::clearScreen(); OLED::refresh(); } void BootLogo::showOldFormat(const uint8_t *ptrLogoArea) { - OLED::drawAreaSwapped(0, 0, 96, 16, (uint8_t *)(ptrLogoArea + 4)); OLED::refresh(); - - // Delay here until button is pressed or its been the amount of seconds set by the user + // Delay here with static logo until a button is pressed or its been the amount of seconds set by the user delay(); } void BootLogo::showNewFormat(const uint8_t *ptrLogoArea) { - if (getSettingValue(SettingsOptions::LOGOTime) == 0) { + if (getSettingValue(SettingsOptions::LOGOTime) == logoMode_t::SKIP) { return; } + // New logo format (a) fixes long standing byte swap quirk and (b) supports animation uint8_t interFrameDelay = ptrLogoArea[0]; OLED::clearScreen(); - ButtonState buttons = getButtonState(); // Now draw in the frames int position = 1; - do { - + while (getButtonState() == BUTTON_NONE) { int len = (showNewFrame(ptrLogoArea + position)); OLED::refresh(); position += len; - buttons = getButtonState(); if (interFrameDelay) { osDelay(interFrameDelay * 4); } + // 1024 less the header type byte and the inter-frame-delay - if (getSettingValue(SettingsOptions::LOGOTime) > 0 && (position >= 1022 || len == 0)) { - // Delay here until button is pressed or its been the amount of seconds set by the user - delay(); - return; + if (getSettingValue(SettingsOptions::LOGOTime) && (position >= 1022 || len == 0)) { + // Animated logo stops here ... + if (getSettingValue(SettingsOptions::LOGOTime) == logoMode_t::INFINITY) { + // ... but if it's infinite logo setting then keep it rolling over again until a button is pressed + osDelay(4 * TICKS_100MS); + OLED::clearScreen(); + position = 1; + continue; + } + } else { + // Animation in progress so jumping to the next frame + continue; } - } while (buttons == BUTTON_NONE); + + // Static logo case ends up right here, so delay until a button is pressed or its been the amount of seconds set by the user + delay(); + return; + } } + int BootLogo::showNewFrame(const uint8_t *ptrLogoArea) { uint8_t length = ptrLogoArea[0]; - - if (length == 0xFF) { + switch (length) { + case 0: + // End + return 0; + break; + case 0xFE: + return 1; + break; + case 0xFF: // Full frame update OLED::drawArea(0, 0, 96, 16, ptrLogoArea + 1); length = 96; - } else if (length == 0xFE) { - return 1; - } else if (length == 0) { - return 0; // end - } else { + break; + default: length /= 2; // Draw length patches for (int p = 0; p < length; p++) { diff --git a/source/Core/Inc/Settings.h b/source/Core/Inc/Settings.h index c1eef1280a..f46df53bd9 100644 --- a/source/Core/Inc/Settings.h +++ b/source/Core/Inc/Settings.h @@ -92,6 +92,12 @@ typedef enum { AUTO = 2, // Automatic screen orientation based on accel.data if presented } orientationMode_t; +typedef enum { + SKIP = 0, // Skip boot logo + ONETIME = 5, // Show boot logo once (if animated) and stall until a button toggled + INFINITY = 6, // Show boot logo on repeat (if animated) until a button toggled +} logoMode_t; + // Settings wide operations void saveSettings(); bool loadSettings(); diff --git a/source/Core/Src/Settings.cpp b/source/Core/Src/Settings.cpp index 5196f4a48f..e263943ef5 100644 --- a/source/Core/Src/Settings.cpp +++ b/source/Core/Src/Settings.cpp @@ -86,7 +86,7 @@ static const SettingConstants settingsConstants[(int)SettingsOptions::SettingsOp {0, 50, 1, 20}, // PDNegTimeout {0, 1, 1, 0}, // OLEDInversion {MIN_BRIGHTNESS, MAX_BRIGHTNESS, BRIGHTNESS_STEP, DEFAULT_BRIGHTNESS}, // OLEDBrightness - {0, 5, 1, 1}, // LOGOTime + {0, 6, 1, 1}, // LOGOTime {0, 1, 1, 0}, // CalibrateCJC {0, 1, 1, 1}, // BluetoothLE {0, 1, 1, 1}, // PDVpdo diff --git a/source/Core/Src/settingsGUI.cpp b/source/Core/Src/settingsGUI.cpp index 9542b08c9c..8891f53ebe 100644 --- a/source/Core/Src/settingsGUI.cpp +++ b/source/Core/Src/settingsGUI.cpp @@ -837,13 +837,20 @@ static void displayInvertColor(void) { } static void displayLogoTime(void) { - if (getSettingValue(SettingsOptions::LOGOTime) == 0) { + switch (getSettingValue(SettingsOptions::LOGOTime)) { + case logoMode_t::SKIP: OLED::print(translatedString(Tr->OffString), FontStyle::LARGE); - } else if (getSettingValue(SettingsOptions::LOGOTime) == 5) { + break; + case logoMode_t::ONETIME: + OLED::printNumber(1, 3, FontStyle::LARGE); + break; + case logoMode_t::INFINITY: OLED::drawArea(OLED_WIDTH - 24 - 2, 0, 24, 16, infinityIcon); - } else { + break; + default: OLED::printNumber(getSettingValue(SettingsOptions::LOGOTime), 2, FontStyle::LARGE); OLED::print(LargeSymbolSeconds, FontStyle::LARGE); + break; } } diff --git a/source/Core/Threads/GUIThread.cpp b/source/Core/Threads/GUIThread.cpp index 56dc6574c7..a068408701 100644 --- a/source/Core/Threads/GUIThread.cpp +++ b/source/Core/Threads/GUIThread.cpp @@ -30,6 +30,7 @@ extern "C" { #include "USBPD.h" #include "pd.h" #endif + // File local variables extern bool heaterThermalRunaway; @@ -63,14 +64,13 @@ void startGUITask(void const *argument) { performCJCC(); } + uint16_t logoMode = getSettingValue(SettingsOptions::LOGOTime); + uint16_t startMode = getSettingValue(SettingsOptions::AutoStartMode); // If the boot logo is enabled (but it times out) and the autostart mode is enabled (but not set to sleep w/o heat), start heating during boot logo - if (getSettingValue(SettingsOptions::LOGOTime) > 0 && getSettingValue(SettingsOptions::LOGOTime) < 5 && getSettingValue(SettingsOptions::AutoStartMode) > 0 - && getSettingValue(SettingsOptions::AutoStartMode) < 3) { - uint16_t sleepTempDegC; + if (logoMode && logoMode < logoMode_t::ONETIME && startMode && startMode < autoStartMode_t::ZERO) { + uint16_t sleepTempDegC = getSettingValue(SettingsOptions::SleepTemp); if (getSettingValue(SettingsOptions::TemperatureInF)) { - sleepTempDegC = TipThermoModel::convertFtoC(getSettingValue(SettingsOptions::SleepTemp)); - } else { - sleepTempDegC = getSettingValue(SettingsOptions::SleepTemp); + sleepTempDegC = TipThermoModel::convertFtoC(sleepTempDegC); } // Only heat to sleep temperature (but no higher than 75°C for safety) currentTempTargetDegC = min(sleepTempDegC, 75); From 7338a6865210313a5b820863b0f812c2e989fc00 Mon Sep 17 00:00:00 2001 From: Ivan Zorin Date: Tue, 21 Nov 2023 18:22:27 +0300 Subject: [PATCH 02/12] Use half of infinity logo as icon for one-time loop animation setting in the menu --- source/Core/Src/settingsGUI.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/Core/Src/settingsGUI.cpp b/source/Core/Src/settingsGUI.cpp index 8891f53ebe..c551e14d51 100644 --- a/source/Core/Src/settingsGUI.cpp +++ b/source/Core/Src/settingsGUI.cpp @@ -842,7 +842,7 @@ static void displayLogoTime(void) { OLED::print(translatedString(Tr->OffString), FontStyle::LARGE); break; case logoMode_t::ONETIME: - OLED::printNumber(1, 3, FontStyle::LARGE); + OLED::drawArea((OLED_WIDTH - 24 - 2) + 12, 0, 24, 16, infinityIcon); break; case logoMode_t::INFINITY: OLED::drawArea(OLED_WIDTH - 24 - 2, 0, 24, 16, infinityIcon); From 92f74e58810e51f6aad8798bcb780714d1e00cd8 Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Tue, 21 Nov 2023 17:05:23 +0100 Subject: [PATCH 03/12] extend infinity icon --- source/Core/Drivers/Font.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/source/Core/Drivers/Font.h b/source/Core/Drivers/Font.h index 0bd08c82a7..265a7a125e 100644 --- a/source/Core/Drivers/Font.h +++ b/source/Core/Drivers/Font.h @@ -175,11 +175,17 @@ const uint8_t buttonB[] = { // 0xFE, 0x01, 0x79, 0x25, 0x79, 0x01, 0xFE, 0x00, 0x20, 0x20, 0x20, 0x20, 0xDF, 0x07, 0x8F, 0xDF, 0xFF, 0x01, 0xFE, 0x86, 0xDA, 0x86, 0xFE, 0x01, // 0x7F, 0x80, 0xA4, 0xBE, 0xA0, 0x80, 0x7F, 0x00, 0x04, 0x0E, 0x1F, 0x04, 0xFB, 0xFB, 0xFB, 0xFB, 0xFF, 0x80, 0x7F, 0x5B, 0x41, 0x5F, 0x7F, 0x80}; -const uint8_t infinityIcon[] = { +const uint8_t infinityOnce[] = { // width = 24 // height = 16 0x00, 0xc0, 0x70, 0x18, 0x0c, 0x0c, 0x0c, 0x0c, 0x18, 0x10, 0x20, 0x80, 0xc0, 0x60, 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x0c, 0x18, 0x70, 0xc0, 0x00, - 0x00, 0x01, 0x07, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x02, 0x04, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x0c, 0x07, 0x01, 0x00}; + 0x00, 0x01, 0x03, 0x08, 0x04, 0x7e, 0x00, 0x18, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x02, 0x04, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x0c, 0x07, 0x01, 0x00}; + +const uint8_t infinityLoop[] = { + // width = 24 + // height = 16 + 0x00, 0xc0, 0x70, 0x18, 0x0c, 0x0c, 0x0c, 0x0c, 0x18, 0x10, 0x20, 0x80, 0xc0, 0x60, 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x0c, 0x18, 0x70, 0xc0, 0x00, + 0x00, 0x01, 0x1c, 0x22, 0x41, 0x01, 0x71, 0x62, 0x5c, 0x00, 0x03, 0x01, 0x00, 0x02, 0x04, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x0c, 0x07, 0x01, 0x00}; /* * 16x16 icons From 4f5bbcf370034f90088cd52a4b8b95f15681123a Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Tue, 21 Nov 2023 17:11:21 +0100 Subject: [PATCH 04/12] Update settingsGUI.cpp --- source/Core/Src/settingsGUI.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/Core/Src/settingsGUI.cpp b/source/Core/Src/settingsGUI.cpp index c551e14d51..c320835286 100644 --- a/source/Core/Src/settingsGUI.cpp +++ b/source/Core/Src/settingsGUI.cpp @@ -842,10 +842,10 @@ static void displayLogoTime(void) { OLED::print(translatedString(Tr->OffString), FontStyle::LARGE); break; case logoMode_t::ONETIME: - OLED::drawArea((OLED_WIDTH - 24 - 2) + 12, 0, 24, 16, infinityIcon); + OLED::drawArea(OLED_WIDTH - 24 - 2, 0, 24, 16, infinityOnce); break; case logoMode_t::INFINITY: - OLED::drawArea(OLED_WIDTH - 24 - 2, 0, 24, 16, infinityIcon); + OLED::drawArea(OLED_WIDTH - 24 - 2, 0, 24, 16, infinityLoop); break; default: OLED::printNumber(getSettingValue(SettingsOptions::LOGOTime), 2, FontStyle::LARGE); From cf8d6ee78346f6e3dabc454cf79a2d41d64b16ee Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Wed, 22 Nov 2023 00:05:51 +0100 Subject: [PATCH 05/12] Update Font.h --- source/Core/Drivers/Font.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/source/Core/Drivers/Font.h b/source/Core/Drivers/Font.h index 265a7a125e..27db5016af 100644 --- a/source/Core/Drivers/Font.h +++ b/source/Core/Drivers/Font.h @@ -176,16 +176,16 @@ const uint8_t buttonB[] = { // 0x7F, 0x80, 0xA4, 0xBE, 0xA0, 0x80, 0x7F, 0x00, 0x04, 0x0E, 0x1F, 0x04, 0xFB, 0xFB, 0xFB, 0xFB, 0xFF, 0x80, 0x7F, 0x5B, 0x41, 0x5F, 0x7F, 0x80}; const uint8_t infinityOnce[] = { - // width = 24 + // width = 16 // height = 16 - 0x00, 0xc0, 0x70, 0x18, 0x0c, 0x0c, 0x0c, 0x0c, 0x18, 0x10, 0x20, 0x80, 0xc0, 0x60, 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x0c, 0x18, 0x70, 0xc0, 0x00, - 0x00, 0x01, 0x03, 0x08, 0x04, 0x7e, 0x00, 0x18, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x02, 0x04, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x0c, 0x07, 0x01, 0x00}; + 0x00, 0xc0, 0x30, 0x08, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x14, 0x18, 0x1c, 0x00, 0xc0, 0x00, + 0x00, 0x03, 0x08, 0x04, 0x7e, 0x00, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x10, 0x0c, 0x03, 0x00}; const uint8_t infinityLoop[] = { - // width = 24 + // width = 16 // height = 16 - 0x00, 0xc0, 0x70, 0x18, 0x0c, 0x0c, 0x0c, 0x0c, 0x18, 0x10, 0x20, 0x80, 0xc0, 0x60, 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x0c, 0x18, 0x70, 0xc0, 0x00, - 0x00, 0x01, 0x1c, 0x22, 0x41, 0x01, 0x71, 0x62, 0x5c, 0x00, 0x03, 0x01, 0x00, 0x02, 0x04, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x0c, 0x07, 0x01, 0x00}; + 0x00, 0xc0, 0x30, 0x08, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x14, 0x18, 0x1c, 0x00, 0xc0, 0x00, + 0x00, 0x33, 0x48, 0x48, 0x30, 0x48, 0x48, 0x30, 0x00, 0x40, 0x20, 0x20, 0x10, 0x0c, 0x03, 0x00}; /* * 16x16 icons From faf2c6733ed4d48429f05a97ee5fa37c1de15364 Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Wed, 22 Nov 2023 00:07:10 +0100 Subject: [PATCH 06/12] Update settingsGUI.cpp --- source/Core/Src/settingsGUI.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/Core/Src/settingsGUI.cpp b/source/Core/Src/settingsGUI.cpp index c320835286..351c5266ed 100644 --- a/source/Core/Src/settingsGUI.cpp +++ b/source/Core/Src/settingsGUI.cpp @@ -842,10 +842,10 @@ static void displayLogoTime(void) { OLED::print(translatedString(Tr->OffString), FontStyle::LARGE); break; case logoMode_t::ONETIME: - OLED::drawArea(OLED_WIDTH - 24 - 2, 0, 24, 16, infinityOnce); + OLED::drawArea(OLED_WIDTH - 16 - 2, 0, 16, 16, infinityOnce); break; case logoMode_t::INFINITY: - OLED::drawArea(OLED_WIDTH - 24 - 2, 0, 24, 16, infinityLoop); + OLED::drawArea(OLED_WIDTH - 16 - 2, 0, 16, 16, infinityLoop); break; default: OLED::printNumber(getSettingValue(SettingsOptions::LOGOTime), 2, FontStyle::LARGE); From 37420d3ee108fdd4fb5179660d3cce6c62ed6603 Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Wed, 22 Nov 2023 09:20:02 +0100 Subject: [PATCH 07/12] Update Font.h --- source/Core/Drivers/Font.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/Core/Drivers/Font.h b/source/Core/Drivers/Font.h index 27db5016af..9672891cb5 100644 --- a/source/Core/Drivers/Font.h +++ b/source/Core/Drivers/Font.h @@ -175,13 +175,13 @@ const uint8_t buttonB[] = { // 0xFE, 0x01, 0x79, 0x25, 0x79, 0x01, 0xFE, 0x00, 0x20, 0x20, 0x20, 0x20, 0xDF, 0x07, 0x8F, 0xDF, 0xFF, 0x01, 0xFE, 0x86, 0xDA, 0x86, 0xFE, 0x01, // 0x7F, 0x80, 0xA4, 0xBE, 0xA0, 0x80, 0x7F, 0x00, 0x04, 0x0E, 0x1F, 0x04, 0xFB, 0xFB, 0xFB, 0xFB, 0xFF, 0x80, 0x7F, 0x5B, 0x41, 0x5F, 0x7F, 0x80}; -const uint8_t infinityOnce[] = { +const uint8_t RepeatOnce[] = { // width = 16 // height = 16 0x00, 0xc0, 0x30, 0x08, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x14, 0x18, 0x1c, 0x00, 0xc0, 0x00, 0x00, 0x03, 0x08, 0x04, 0x7e, 0x00, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x10, 0x0c, 0x03, 0x00}; -const uint8_t infinityLoop[] = { +const uint8_t RepeatInf[] = { // width = 16 // height = 16 0x00, 0xc0, 0x30, 0x08, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x14, 0x18, 0x1c, 0x00, 0xc0, 0x00, From 00c3d150dd56b56fb3cc96e983053a25634cb381 Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Wed, 22 Nov 2023 09:21:24 +0100 Subject: [PATCH 08/12] Update settingsGUI.cpp --- source/Core/Src/settingsGUI.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/Core/Src/settingsGUI.cpp b/source/Core/Src/settingsGUI.cpp index 351c5266ed..cc6910accc 100644 --- a/source/Core/Src/settingsGUI.cpp +++ b/source/Core/Src/settingsGUI.cpp @@ -842,10 +842,10 @@ static void displayLogoTime(void) { OLED::print(translatedString(Tr->OffString), FontStyle::LARGE); break; case logoMode_t::ONETIME: - OLED::drawArea(OLED_WIDTH - 16 - 2, 0, 16, 16, infinityOnce); + OLED::drawArea(OLED_WIDTH - 16 - 2, 0, 16, 16, RepeatOnce); break; case logoMode_t::INFINITY: - OLED::drawArea(OLED_WIDTH - 16 - 2, 0, 16, 16, infinityLoop); + OLED::drawArea(OLED_WIDTH - 16 - 2, 0, 16, 16, RepeatInf); break; default: OLED::printNumber(getSettingValue(SettingsOptions::LOGOTime), 2, FontStyle::LARGE); From 9bfb36e349976c743acdfb57cffbba95eadc1989 Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Wed, 22 Nov 2023 18:34:25 +0100 Subject: [PATCH 09/12] Update Font.h --- source/Core/Drivers/Font.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/Core/Drivers/Font.h b/source/Core/Drivers/Font.h index 9672891cb5..2971dcb550 100644 --- a/source/Core/Drivers/Font.h +++ b/source/Core/Drivers/Font.h @@ -178,14 +178,14 @@ const uint8_t buttonB[] = { const uint8_t RepeatOnce[] = { // width = 16 // height = 16 - 0x00, 0xc0, 0x30, 0x08, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x14, 0x18, 0x1c, 0x00, 0xc0, 0x00, - 0x00, 0x03, 0x08, 0x04, 0x7e, 0x00, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x10, 0x0c, 0x03, 0x00}; + 0x00, 0xc0, 0xf0, 0x78, 0x1c, 0x0c, 0x0e, 0x06, 0x06, 0x0e, 0x2c, 0x3c, 0x38, 0x3c, 0x00, 0x00, + 0x00, 0x01, 0x08, 0x04, 0x7e, 0x00, 0x00, 0x60, 0x60, 0x70, 0x30, 0x38, 0x1e, 0x0f, 0x02, 0x00}; const uint8_t RepeatInf[] = { // width = 16 // height = 16 - 0x00, 0xc0, 0x30, 0x08, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x14, 0x18, 0x1c, 0x00, 0xc0, 0x00, - 0x00, 0x33, 0x48, 0x48, 0x30, 0x48, 0x48, 0x30, 0x00, 0x40, 0x20, 0x20, 0x10, 0x0c, 0x03, 0x00}; + 0x00, 0xc0, 0xf0, 0x78, 0x1c, 0x0c, 0x0e, 0x06, 0x06, 0x0e, 0x2c, 0x3c, 0x38, 0x3c, 0x00, 0x00, + 0x00, 0x31, 0x49, 0x48, 0x30, 0x48, 0x48, 0x30, 0x00, 0x00, 0x30, 0x38, 0x1e, 0x0f, 0x02, 0x00}; /* * 16x16 icons From 229ae9b30e9ad5fea0ba2b57664c7d346c4eb33c Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Wed, 22 Nov 2023 18:41:02 +0100 Subject: [PATCH 10/12] Update Font.h --- source/Core/Drivers/Font.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/Core/Drivers/Font.h b/source/Core/Drivers/Font.h index 2971dcb550..9548c67600 100644 --- a/source/Core/Drivers/Font.h +++ b/source/Core/Drivers/Font.h @@ -179,7 +179,7 @@ const uint8_t RepeatOnce[] = { // width = 16 // height = 16 0x00, 0xc0, 0xf0, 0x78, 0x1c, 0x0c, 0x0e, 0x06, 0x06, 0x0e, 0x2c, 0x3c, 0x38, 0x3c, 0x00, 0x00, - 0x00, 0x01, 0x08, 0x04, 0x7e, 0x00, 0x00, 0x60, 0x60, 0x70, 0x30, 0x38, 0x1e, 0x0f, 0x02, 0x00}; + 0x00, 0x01, 0x08, 0x04, 0x7e, 0x00, 0x00, 0x60, 0x60, 0x70, 0x30, 0x38, 0x1e, 0x0f, 0x03, 0x00}; const uint8_t RepeatInf[] = { // width = 16 From 8eebb01047778a14000613c114ee3683eaba3aed Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Wed, 22 Nov 2023 18:45:41 +0100 Subject: [PATCH 11/12] Update Font.h --- source/Core/Drivers/Font.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/Core/Drivers/Font.h b/source/Core/Drivers/Font.h index 9548c67600..e8f120f4cb 100644 --- a/source/Core/Drivers/Font.h +++ b/source/Core/Drivers/Font.h @@ -185,7 +185,7 @@ const uint8_t RepeatInf[] = { // width = 16 // height = 16 0x00, 0xc0, 0xf0, 0x78, 0x1c, 0x0c, 0x0e, 0x06, 0x06, 0x0e, 0x2c, 0x3c, 0x38, 0x3c, 0x00, 0x00, - 0x00, 0x31, 0x49, 0x48, 0x30, 0x48, 0x48, 0x30, 0x00, 0x00, 0x30, 0x38, 0x1e, 0x0f, 0x02, 0x00}; + 0x00, 0x31, 0x49, 0x48, 0x30, 0x48, 0x48, 0x30, 0x00, 0x00, 0x30, 0x38, 0x1e, 0x0f, 0x03, 0x00}; /* * 16x16 icons From fac46e21875e1cc1a71648601cc0b138f0c26706 Mon Sep 17 00:00:00 2001 From: Ivan Zorin Date: Thu, 23 Nov 2023 09:34:34 +0300 Subject: [PATCH 12/12] Font.h: remove extra spaces --- source/Core/Drivers/Font.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/Core/Drivers/Font.h b/source/Core/Drivers/Font.h index e8f120f4cb..234baefbd3 100644 --- a/source/Core/Drivers/Font.h +++ b/source/Core/Drivers/Font.h @@ -178,13 +178,13 @@ const uint8_t buttonB[] = { const uint8_t RepeatOnce[] = { // width = 16 // height = 16 - 0x00, 0xc0, 0xf0, 0x78, 0x1c, 0x0c, 0x0e, 0x06, 0x06, 0x0e, 0x2c, 0x3c, 0x38, 0x3c, 0x00, 0x00, + 0x00, 0xc0, 0xf0, 0x78, 0x1c, 0x0c, 0x0e, 0x06, 0x06, 0x0e, 0x2c, 0x3c, 0x38, 0x3c, 0x00, 0x00, 0x00, 0x01, 0x08, 0x04, 0x7e, 0x00, 0x00, 0x60, 0x60, 0x70, 0x30, 0x38, 0x1e, 0x0f, 0x03, 0x00}; const uint8_t RepeatInf[] = { // width = 16 // height = 16 - 0x00, 0xc0, 0xf0, 0x78, 0x1c, 0x0c, 0x0e, 0x06, 0x06, 0x0e, 0x2c, 0x3c, 0x38, 0x3c, 0x00, 0x00, + 0x00, 0xc0, 0xf0, 0x78, 0x1c, 0x0c, 0x0e, 0x06, 0x06, 0x0e, 0x2c, 0x3c, 0x38, 0x3c, 0x00, 0x00, 0x00, 0x31, 0x49, 0x48, 0x30, 0x48, 0x48, 0x30, 0x00, 0x00, 0x30, 0x38, 0x1e, 0x0f, 0x03, 0x00}; /*