From 2c5f3ae24c564838bfc07de9cb69a000156f6842 Mon Sep 17 00:00:00 2001 From: RocketRobz Date: Tue, 28 Jan 2025 01:34:35 -0700 Subject: [PATCH] DSi-based themes: Fix progress bar length sometimes being longer than 192px --- quickmenu/arm9/source/graphics/graphics.cpp | 1 + quickmenu/arm9/source/main.cpp | 2 -- romsel_dsimenutheme/arm9/source/graphics/graphics.cpp | 3 ++- romsel_dsimenutheme/arm9/source/main.cpp | 2 -- 4 files changed, 3 insertions(+), 5 deletions(-) diff --git a/quickmenu/arm9/source/graphics/graphics.cpp b/quickmenu/arm9/source/graphics/graphics.cpp index e0cbd8e7c8..30dcc49e51 100644 --- a/quickmenu/arm9/source/graphics/graphics.cpp +++ b/quickmenu/arm9/source/graphics/graphics.cpp @@ -706,6 +706,7 @@ void vBlankHandler() if (whiteScreen) { glBoxFilled(0, 0, 256, 192, RGB15(31, 31, 31)); if (showProgressBar) { + if (progressBarLength > 192) progressBarLength = 192; int barXpos = 31; int barYpos = 169; glBoxFilled(barXpos, barYpos, barXpos+192, barYpos+5, RGB15(23, 23, 23)); diff --git a/quickmenu/arm9/source/main.cpp b/quickmenu/arm9/source/main.cpp index fee0d19892..8dc7883589 100644 --- a/quickmenu/arm9/source/main.cpp +++ b/quickmenu/arm9/source/main.cpp @@ -2958,7 +2958,6 @@ int dsClassicMenu(void) { for (u32 address=0;address 192) progressBarLength = 192; } nor = true; } else if (*(u16*)(0x020000C0) == 0x4353 && romSize > 0x1FFFFFE) { @@ -2980,7 +2979,6 @@ int dsClassicMenu(void) { s2RamAccess(false); curPtr += 0x8000; progressBarLength = ((curPtr-ptr)+0x8000)/(romSize/192); - if (progressBarLength > 192) progressBarLength = 192; } else { break; } diff --git a/romsel_dsimenutheme/arm9/source/graphics/graphics.cpp b/romsel_dsimenutheme/arm9/source/graphics/graphics.cpp index d633028d74..4f8ff77d9e 100644 --- a/romsel_dsimenutheme/arm9/source/graphics/graphics.cpp +++ b/romsel_dsimenutheme/arm9/source/graphics/graphics.cpp @@ -1195,6 +1195,7 @@ void vBlankHandler() { glSprite(ms().rtl() ? 16 : 224, 152, GL_FLIP_NONE, &tex().progressImage()[progressAnimNum]); } if (showProgressBar) { + if (progressBarLength > 192) progressBarLength = 192; int barXpos = ms().rtl() ? 256 - 19 : 19; int barYpos = 157; if (ms().theme == TWLSettings::EThemeSaturn) { @@ -1202,7 +1203,7 @@ void vBlankHandler() { barYpos += 12; } extern int getFavoriteColor(void); - int fillColor = tc().progressBarUserPalette() ? progressBarColors[getFavoriteColor()] : tc().progressBarColor(); + const int fillColor = tc().progressBarUserPalette() ? progressBarColors[getFavoriteColor()] : tc().progressBarColor(); if (colorTable) fillColor = colorTable[fillColor]; if (ms().rtl()) { glBoxFilled(barXpos, barYpos, barXpos-192, barYpos+5, tc().darkLoading() ? RGB15(6, 6, 6) : RGB15(23, 23, 23)); diff --git a/romsel_dsimenutheme/arm9/source/main.cpp b/romsel_dsimenutheme/arm9/source/main.cpp index 81d4820afe..652a9c882a 100644 --- a/romsel_dsimenutheme/arm9/source/main.cpp +++ b/romsel_dsimenutheme/arm9/source/main.cpp @@ -2073,7 +2073,6 @@ int dsiMenuTheme(void) { for (u32 address=0;address 192) progressBarLength = 192; } nor = true; } else if (*(u16*)(0x020000C0) == 0x4353 && romSize > 0x1FFFFFE) { @@ -2095,7 +2094,6 @@ int dsiMenuTheme(void) { s2RamAccess(false); curPtr += 0x8000; progressBarLength = ((curPtr-ptr)+0x8000)/(romSize/192); - if (progressBarLength > 192) progressBarLength = 192; } else { break; }