Skip to content

Improve CFrontEndUI PAL matching - #563

Open
encounter wants to merge 1 commit into
mainfrom
codex/pal-frontend
Open

encounter wants to merge 1 commit into
mainfrom
codex/pal-frontend

Conversation

@encounter

Copy link
Copy Markdown
Member

No description provided.

@decomp-dev

decomp-dev Bot commented Sep 22, 2026

Copy link
Copy Markdown

Report for GM8E01_02 (c6f6394 - ad163d5)

No changes

Report for GM8P01_00 (c6f6394 - ad163d5)

📈 Matched code: 71.87% (+0.62%, +24428 bytes)
Total data: 861405 bytes (-4 bytes)
📈 Matched data: 74.45% (+0.19%, +1616 bytes)

✅ 81 new matches
Unit Item Bytes Before After
main/MetroidPrime/CFrontEndUI .rodata +1496 89.66% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SLanguageSelectFrame::SLanguageSelectFrame() +496 0.00% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SFrontEndFrame::SetStrings() +404 0.00% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::ProcessUserInput(const CFinalInput&, CArchitectureQueue&) +403 70.83% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SLanguageSelectFrame::Update(float, CSaveGameScreen*) +396 0.00% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SFusionBonusFrame::SetStrings() +396 0.00% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SFusionBonusFrame::FinishedLoading() +352 40.14% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::StartStateTransition(CFrontEndUI::EScreen) +285 63.58% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SNewFileSelectFrame::SetStrings() +260 0.00% 100.00%
main/MetroidPrime/CPauseScreenFrame SOptionsFrontEndFrame::ProcessUserInput(const CFinalInput&, CSaveGameScreen*) +260 0.00% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SFrontEndFrame::FinishedLoading() +254 46.28% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SNewFileSelectFrame::SetupFrameContents() +230 78.65% 100.00%
main/MetroidPrime/CPauseScreenFrame CQuitGameScreen::Draw() const +228 0.00% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SetTitlePosition(CGuiFrame&) +216 0.00% 100.00%
main/MetroidPrime/CSaveGameScreen CSaveGameScreen::DoAdvance(CGuiTableGroup*) +209 73.45% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SNewFileSelectFrame::ClearFrameContents() +168 82.99% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SNewFileSelectFrame::FinishedLoading() +148 88.85% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SNewFileSelectFrame::StartTextAnimating(CGuiTextPane*, const rstl::basic_string<wchar_t, rstl::char_traits<wchar_t>, rstl::rmemory_allocator>&, float) +144 0.00% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SLanguageSelectFrame::DoSelectionChange(CGuiTableGroup*, int) +132 0.00% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SNewFileSelectFrame::EnterErase() +130 73.81% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SLanguageSelectFrame::~SLanguageSelectFrame() +128 0.00% 100.00%
main/MetroidPrime/CPauseScreenFrame SOptionsFrontEndFrame::Draw() const +104 0.00% 100.00%
main/MetroidPrime/CGameHintInfo CHintOptions::EnsureHintNextTime() +104 0.00% 100.00%
main/MetroidPrime/CFrontEndUI TNonStaticCallback2<CFrontEndUI::SLanguageSelectFrame, CGuiTableGroup* const, const int>::Function(const void*, const void*, CGuiTableGroup*, int) +100 0.00% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SLanguageSelectFrame::DoCancel(CGuiTableGroup*) +92 0.00% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SNewFileSelectFrame::ResetFrame() +91 64.53% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::CFrontEndUI() +90 90.23% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SNewFileSelectFrame::ActivateNewGamePopup() +89 86.84% 100.00%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SLanguageSelectFrame::SetTableColors() +88 0.00% 100.00%
main/MetroidPrime/CFrontEndUI TNonStaticCallback1<CFrontEndUI::SLanguageSelectFrame, CGuiTableGroup* const>::Function(const void*, const void*, CGuiTableGroup*) +84 0.00% 100.00%

...and 51 more new matches

📈 17 improvements in unmatched items
Unit Item Bytes Before After
main/MetroidPrime/CFrontEndUI CFrontEndUI::Draw() const +1075 0.00% 99.96%
main/MetroidPrime/CFrontEndUI CFrontEndUI::Update(float, CArchitectureQueue&) +686 75.33% 99.94%
main/MetroidPrime/CFrontEndUI .data +235 88.24% 97.87%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SLanguageSelectFrame::ProcessUserInput(const CFinalInput&, CSaveGameScreen*) +171 0.00% 99.53%
main/MetroidPrime/CPauseScreenFrame CQuitGameScreen::CQuitGameScreen(EQuitType) +163 0.00% 99.98%
main/MetroidPrime/CSaveGameScreen CSaveGameScreen::SetUIText() +97 63.87% 71.32%
main/MetroidPrime/CPauseScreenFrame CQuitGameScreen::FinishedLoading() +83 86.15% 99.97%
main/MetroidPrime/CGBASupport CGBASupport::IsReady() +31 0.00% 13.69%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SNesEmulatorFrame::SNesEmulatorFrame() +27 89.73% 95.60%
main/MetroidPrime/CSaveGameScreen CSaveGameScreen::SelectUIType() const +25 79.86% 87.85%
main/MetroidPrime/CPauseScreenFrame .data +3 45.17% 45.90%
main/MetroidPrime/CFrontEndUI CFrontEndUI::SNesEmulatorFrame::SetMode(CFrontEndUI::SNesEmulatorFrame::EMode) 0 27.98% 28.04%
main/MetroidPrime/CFrontEndUI CFrontEndUI::StartSlideShow(CArchitectureQueue&) 0 99.91% 99.97%
main/MetroidPrime/CMainFlow CMainFlow::SetGameState(EClientFlowStates, CArchitectureQueue&) 0 99.98% 99.99%
main/MetroidPrime/CCredits CPlayMovie::CPlayMovie(CPlayMovie::EWhichMovie) 0 91.32% 91.32%
main/MetroidPrime/CPauseScreenFrame COptionsScreen::ProcessInput(const CFinalInput&) 0 75.27% 75.29%
main/MetroidPrime/CSaveGameScreen CSaveGameScreen::Update(float) 0 99.97% 99.98%
📉 2 regressions in unmatched items
Unit Item Bytes Before After
main/MetroidPrime/CFrontEndUI .sdata2 -26 61.82% 20.00%
main/MetroidPrime/CFrontEndUI .sdata +33 88.89% 70.83%

Report for GM8E01_00 (c6f6394 - ad163d5)

No changes

Report for GM8E01_01 (c6f6394 - ad163d5)

No changes

Report for GM8E01_48 (c6f6394 - ad163d5)

No changes

Report for GM8J01_00 (c6f6394 - ad163d5)

📈 Matched code: 15.79% (+0.07%, +2644 bytes)

✅ 8 new matches
Unit Item Bytes Before After
main/MetroidPrime/main CGameState::~CGameState() +13 95.78% 100.00%
main/MetroidPrime/main CSystemState::CSystemState(const CSystemState&) +9 96.41% 100.00%
main/MetroidPrime/main CSystemState::operator=(const CSystemState&) +9 93.83% 100.00%
main/MetroidPrime/main CGameArchitectureSupport::CGameArchitectureSupport(COsContext&) +1 99.99% 100.00%
main/MetroidPrime/main CMain::StreamNewGameState(CInputStream&, int) +1 99.93% 100.00%
main/MetroidPrime/main CSystemState::~CSystemState() +1 99.94% 100.00%
main/MetroidPrime/CPauseScreenFrame SOptionsFrontEndFrame::Update(float, const CSaveGameScreen*) +1 99.99% 100.00%
main/MetroidPrime/CMemoryCardDriver CMemoryCardDriver::WriteBackupBuf() +1 99.88% 100.00%
📈 11 improvements in unmatched items
Unit Item Bytes Before After
main/MetroidPrime/CFrontEndUI CFrontEndUI::Update(float, CArchitectureQueue&) +686 75.33% 99.94%
main/MetroidPrime/Player/CGameState CGameState::CGameState() +12 97.59% 99.99%
main/MetroidPrime/main CMain::CheckReset() +1 86.83% 86.85%
main/MetroidPrime/main CGameGlobalObjects::CGameGlobalObjects(COsContext&, CMemorySys&) 0 95.35% 95.37%
main/MetroidPrime/main CMain::RsMain(int, const char* const*) 0 99.99% 99.99%
main/MetroidPrime/main CMain::RefreshGameState() 0 86.54% 86.62%
main/MetroidPrime/CCredits CPlayMovie::CPlayMovie(CPlayMovie::EWhichMovie) 0 91.32% 91.32%
main/MetroidPrime/CMemoryCardDriver CMemoryCardDriver::BuildNewFileSlot(int) 0 99.88% 99.93%
main/MetroidPrime/CMemoryCardDriver CMemoryCardDriver::BuildExistingFileSlot(int) 0 99.89% 99.91%
main/MetroidPrime/CMemoryCardDriver CMemoryCardDriver::ImportPersistentOptions() 0 96.25% 96.39%
main/MetroidPrime/CMemoryCardDriver CMemoryCardDriver::ExportPersistentOptions() 0 97.43% 97.57%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant