From cf34d0519e63dd00e8a14cd443674ba08370e245 Mon Sep 17 00:00:00 2001 From: Raphael Coeffic Date: Mon, 23 May 2022 09:10:17 +0200 Subject: [PATCH] fix: simulcd for color screens without VERTICAL_INVERT --- radio/src/targets/simu/simulcd.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/radio/src/targets/simu/simulcd.cpp b/radio/src/targets/simu/simulcd.cpp index 96beb27d2..f87c85c9c 100644 --- a/radio/src/targets/simu/simulcd.cpp +++ b/radio/src/targets/simu/simulcd.cpp @@ -25,7 +25,7 @@ #include #include -bool simuLcdRefresh = true; +bool simuLcdRefresh = false; void toplcdOff() {} @@ -49,16 +49,15 @@ void lcdRefresh() #else +#include + #if defined(LCD_VERTICAL_INVERT) static pixel_t _LCD_BUF1[DISPLAY_BUFFER_SIZE] __SDRAM; static pixel_t _LCD_BUF2[DISPLAY_BUFFER_SIZE] __SDRAM; -#endif pixel_t* simuLcdBuf = _LCD_BUF1; pixel_t* simuLcdBackBuf = _LCD_BUF1; -#include - // Copy 2 pixels at once to speed up a little static void _copy_rotate_180(uint16_t* dst, uint16_t* src, const rect_t& copy_area) { @@ -135,6 +134,9 @@ static void _copy_area(uint16_t* dst, uint16_t* src, const rect_t& copy_area) px_src += copy_area.w; } } +#else +pixel_t* simuLcdBuf = nullptr; +#endif static void simuRefreshLcd(lv_disp_drv_t * disp_drv, uint16_t *buffer, const rect_t& copy_area) { @@ -200,8 +202,10 @@ static void simuLcdExitHandler(lv_disp_drv_t* disp_drv) void lcdInit() { +#if defined(LCD_VERTICAL_INVERT) memset(_LCD_BUF1, 0, sizeof(_LCD_BUF1)); memset(_LCD_BUF2, 0, sizeof(_LCD_BUF2)); +#endif lcdSetWaitCb(simuLcdExitHandler); lcdSetFlushCb(simuRefreshLcd);