adds x3 commands for refresh types

This commit is contained in:
Justin Mitchell
2026-02-13 15:27:13 -05:00
parent d4eb089e49
commit 6114b80e5d
6 changed files with 44 additions and 9 deletions
+1
View File
@@ -70,6 +70,7 @@ class GfxRenderer {
// Screen ops
int getScreenWidth() const;
int getScreenHeight() const;
void requestResync(uint8_t settlePasses = 0) const { display.requestResync(settlePasses); }
void displayBuffer(HalDisplay::RefreshMode refreshMode = HalDisplay::FAST_REFRESH) const;
// EXPERIMENTAL: Windowed update - display only a rectangular region
// void displayWindow(int x, int y, int width, int height) const;
+2
View File
@@ -38,6 +38,8 @@ void HalDisplay::refreshDisplay(HalDisplay::RefreshMode mode, bool turnOffScreen
einkDisplay.refreshDisplay(convertRefreshMode(mode), turnOffScreen);
}
void HalDisplay::requestResync(uint8_t settlePasses) { einkDisplay.requestResync(settlePasses); }
void HalDisplay::deepSleep() { einkDisplay.deepSleep(); }
uint8_t* HalDisplay::getFrameBuffer() const { return einkDisplay.getFrameBuffer(); }
+3
View File
@@ -36,6 +36,9 @@ class HalDisplay {
void displayBuffer(RefreshMode mode = RefreshMode::FAST_REFRESH, bool turnOffScreen = false);
void refreshDisplay(RefreshMode mode = RefreshMode::FAST_REFRESH, bool turnOffScreen = false);
// Hint the display driver to perform a one-shot full resync on next update.
// Optional settle passes are used by X3 only.
void requestResync(uint8_t settlePasses = 0);
// Power management
void deepSleep();