From 02e4995165362c933deced2b8147fb80d7c13369 Mon Sep 17 00:00:00 2001 From: Markus Kalkbrenner Date: Tue, 13 Jan 2026 11:19:46 +0100 Subject: [PATCH 1/3] 192x64 fix --- src/DMD.cpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/DMD.cpp b/src/DMD.cpp index ce5358d..8143ef4 100644 --- a/src/DMD.cpp +++ b/src/DMD.cpp @@ -1026,11 +1026,12 @@ void DMD::SerumThread() if (m_altColorPath[0] == '\0') strcpy(m_altColorPath, Config::GetInstance()->GetAltColorPath()); flags = 0; + // At the moment, ZeDMD HD and RGB24DMD are the only devices supporting 64P frames. Not requesting 64P // saves memory. if (m_pZeDMD) { - if (m_pZeDMD->GetWidth() == 256) + if (m_pZeDMD->GetHight() == 64) flags |= FLAG_REQUEST_64P_FRAMES; else flags |= FLAG_REQUEST_32P_FRAMES; @@ -1040,7 +1041,18 @@ void DMD::SerumThread() { for (RGB24DMD* pRGB24DMD : m_rgb24DMDs) { - if (pRGB24DMD->GetWidth() == 256) + if (pRGB24DMD->GetHeight() == 64) + flags |= FLAG_REQUEST_64P_FRAMES; + else + flags |= FLAG_REQUEST_32P_FRAMES; + } + } + + if (m_levelDMDs.size() > 0) + { + for (LevelDMD* pLevelDMD : m_levelDMDs) + { + if (pLevelDMD->GetHeight() == 64) flags |= FLAG_REQUEST_64P_FRAMES; else flags |= FLAG_REQUEST_32P_FRAMES; @@ -1053,6 +1065,8 @@ void DMD::SerumThread() if (m_pPixelcadeDMD) flags |= FLAG_REQUEST_32P_FRAMES; #endif + if (!flags) flags |= FLAG_REQUEST_32P_FRAMES; + m_pSerum = (name[0] != '\0') ? Serum_Load(m_altColorPath, m_romName, flags) : nullptr; if (m_pSerum) { From af3de32a13e811e998ca894b2eef2cf80d2df058 Mon Sep 17 00:00:00 2001 From: Markus Kalkbrenner Date: Tue, 13 Jan 2026 12:40:25 +0100 Subject: [PATCH 2/3] updated libserum --- platforms/config.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platforms/config.sh b/platforms/config.sh index af2b1ec..5a5edeb 100755 --- a/platforms/config.sh +++ b/platforms/config.sh @@ -3,7 +3,7 @@ set -e LIBZEDMD_SHA=cb969273720234df2f11f2fd7c81fe375f83cfe2 -LIBSERUM_SHA=188f45d375e47b0f21c8df3c4ff1a24cf8ec9c3b +LIBSERUM_SHA=75852af0eaa614436d366a5ff5c7283654941b26 LIBPUPDMD_SHA=124f45e5ddd59ceb339591de88fcca72f8c54612 if [ -z "${BUILD_TYPE}" ]; then From 9763539dc0794ec1c9728801170b17a31cfeb16c Mon Sep 17 00:00:00 2001 From: Markus Kalkbrenner Date: Tue, 13 Jan 2026 13:50:56 +0100 Subject: [PATCH 3/3] fixed typo --- platforms/config.sh | 2 +- src/DMD.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/platforms/config.sh b/platforms/config.sh index 5a5edeb..d2995c7 100755 --- a/platforms/config.sh +++ b/platforms/config.sh @@ -3,7 +3,7 @@ set -e LIBZEDMD_SHA=cb969273720234df2f11f2fd7c81fe375f83cfe2 -LIBSERUM_SHA=75852af0eaa614436d366a5ff5c7283654941b26 +LIBSERUM_SHA=2da4ca73fb4f30f99b998345ff42cf426180fd57 LIBPUPDMD_SHA=124f45e5ddd59ceb339591de88fcca72f8c54612 if [ -z "${BUILD_TYPE}" ]; then diff --git a/src/DMD.cpp b/src/DMD.cpp index 8143ef4..eb8956a 100644 --- a/src/DMD.cpp +++ b/src/DMD.cpp @@ -1031,7 +1031,7 @@ void DMD::SerumThread() // saves memory. if (m_pZeDMD) { - if (m_pZeDMD->GetHight() == 64) + if (m_pZeDMD->GetHeight() == 64) flags |= FLAG_REQUEST_64P_FRAMES; else flags |= FLAG_REQUEST_32P_FRAMES;