From e5e09f0f1e66c7c904e80c4da75fa805cd5e6c2b Mon Sep 17 00:00:00 2001 From: robojumper Date: Sat, 2 Aug 2025 09:25:15 +0200 Subject: [PATCH] ninja apply --- config/SOUE01/symbols.txt | 48 ++++++++++++++++++++++----------------- include/d/d_dvd_unk.h | 6 ++--- src/d/d_dvd_unk.cpp | 5 ++-- 3 files changed, 33 insertions(+), 26 deletions(-) diff --git a/config/SOUE01/symbols.txt b/config/SOUE01/symbols.txt index 6adab5b6..653052ca 100644 --- a/config/SOUE01/symbols.txt +++ b/config/SOUE01/symbols.txt @@ -27846,7 +27846,7 @@ fontMgrIndex = .rodata:0x804DDFF0; // type:object size:0x14 scope:local @LOCAL@createLayoutResHeap__5dHeapFUlPQ23EGG4Heap@name = .rodata:0x804DE114; // type:object size:0x31 scope:local @LOCAL@createFontHeap__5dHeapFUlPQ23EGG4Heap@name = .rodata:0x804DE148; // type:object size:0x22 scope:local @LOCAL@createHBMHeap__5dHeapFUlPQ23EGG4Heap@name = .rodata:0x804DE16C; // type:object size:0x1C scope:local -lbl_804DE188 = .rodata:0x804DE188; // type:object size:0x60 +@LOCAL@executeProc__13dPadManager_cFv@procs = .rodata:0x804DE188; // type:object size:0x60 scope:local @26290 = .rodata:0x804DE1E8; // type:object size:0xA scope:local data:string ...rodata.0 = .rodata:0x804DE1E8; // type:label scope:local @26295 = .rodata:0x804DE1F4; // type:object size:0xC scope:local data:string @@ -28240,10 +28240,10 @@ sReplacementSequences = .rodata:0x804E39E0; // type:object size:0x10 scope:local sUpperCaseChars = .rodata:0x804E39F0; // type:object size:0x240 scope:local data:2byte sMsgWindowFlags = .rodata:0x804E3C30; // type:object size:0x1004 scope:local @LOCAL@symbolToFontIdx__15dTagProcessor_cFl@index = .rodata:0x804E4C34; // type:object size:0x1C scope:local data:string -lbl_804E4C50 = .rodata:0x804E4C50; // type:object size:0x18 -lbl_804E4C68 = .rodata:0x804E4C68; // type:object size:0xC data:string -lbl_804E4C74 = .rodata:0x804E4C74; // type:object size:0xC data:string -lbl_804E4C80 = .rodata:0x804E4C80; // type:object size:0xC data:string +@LOCAL@execute__17NandResultTrackerFv@procs = .rodata:0x804E4C50; // type:object size:0x18 scope:local +@4322 = .rodata:0x804E4C68; // type:object size:0xC scope:local data:string +@4323 = .rodata:0x804E4C74; // type:object size:0xC scope:local data:string +@4324 = .rodata:0x804E4C80; // type:object size:0xC scope:local data:string lbl_804E4C90 = .rodata:0x804E4C90; // type:object size:0x18 lbl_804E4CA8 = .rodata:0x804E4CA8; // type:object size:0x10 align:4 data:float lbl_804E4CB8 = .rodata:0x804E4CB8; // type:object size:0x10 align:4 data:float @@ -30787,17 +30787,23 @@ special_00__10dFontMng_c = .data:0x8050D40C; // type:object size:0x11 scope:glob @4045 = .data:0x8050D420; // type:object size:0x9 scope:local data:string @4046 = .data:0x8050D42C; // type:object size:0xF scope:local data:string __vt__14dHeapAllocator = .data:0x8050D440; // type:object size:0x14 -lbl_8050D458 = .data:0x8050D458; // type:object size:0xC data:string -lbl_8050D464 = .data:0x8050D464; // type:object size:0x10 -lbl_8050D474 = .data:0x8050D474; // type:object size:0x10 -lbl_8050D484 = .data:0x8050D484; // type:object size:0x10 -lbl_8050D494 = .data:0x8050D494; // type:object size:0xC data:string -lbl_8050D4A0 = .data:0x8050D4A0; // type:object size:0xC data:string -jumptable_8050D4AC = .data:0x8050D4AC; // type:object size:0x7C scope:local -lbl_8050D528 = .data:0x8050D528; // type:object size:0x30 -jumptable_8050D558 = .data:0x8050D558; // type:object size:0x54 scope:local -lbl_8050D5AC = .data:0x8050D5AC; // type:object size:0x24 -jumptable_8050D5D0 = .data:0x8050D5D0; // type:object size:0x44 scope:local +@11471 = .data:0x8050D458; // type:object size:0xC scope:local data:string +...data.0 = .data:0x8050D458; // type:label scope:local +@11472 = .data:0x8050D464; // type:object size:0xE scope:local data:string +@11499 = .data:0x8050D474; // type:object size:0xF scope:local data:string +@11525 = .data:0x8050D484; // type:object size:0xF scope:local data:string +@10312 = .data:0x8050D494; // type:object size:0xC scope:local data:string +@10313 = .data:0x8050D4A0; // type:object size:0xC scope:local data:string +@11568 = .data:0x8050D4AC; // type:object size:0x7C scope:local +@11603 = .data:0x8050D528; // type:object size:0xC scope:local data:string +@11682 = .data:0x8050D534; // type:object size:0xC scope:local data:string +@11683 = .data:0x8050D540; // type:object size:0xC scope:local data:string +@11684 = .data:0x8050D54C; // type:object size:0x9 scope:local data:string +@11686 = .data:0x8050D558; // type:object size:0x54 scope:local +@11785 = .data:0x8050D5AC; // type:object size:0xC scope:local data:string +@11786 = .data:0x8050D5B8; // type:object size:0xC scope:local data:string +@11787 = .data:0x8050D5C4; // type:object size:0xC scope:local data:string +@11789 = .data:0x8050D5D0; // type:object size:0x44 scope:local __vt__13dPadManager_c = .data:0x8050D614; // type:object size:0xC lbl_8050D620 = .data:0x8050D620; // type:object size:0xC data:string lbl_8050D62C = .data:0x8050D62C; // type:object size:0xC data:string @@ -31106,7 +31112,7 @@ __vt__17NandRequestThread = .data:0x80510B30; // type:object size:0x18 __vt__16NandRequestWrite = .data:0x80510B48; // type:object size:0xC __vt__17NandRequestCreate = .data:0x80510B54; // type:object size:0xC __vt__16NandRequestCheck = .data:0x80510B60; // type:object size:0xC -lbl_80510B70 = .data:0x80510B70; // type:object size:0x18 +@LOCAL@ModeProc_Error__17NandResultTrackerFv@sMessages = .data:0x80510B70; // type:object size:0x14 scope:local __vt__32MyFlagManager<15ItemflagManager> = .data:0x80510B88; // type:object size:0x3C scope:weak __vt__33MyFlagManager<16StoryflagManager> = .data:0x80510BC4; // type:object size:0x3C scope:weak __vt__33MyFlagManager<16EnemyflagManager> = .data:0x80510C00; // type:object size:0x14 scope:weak @@ -39237,7 +39243,7 @@ lbl_80571C48 = .sdata:0x80571C48; // type:object size:0x8 g_CurrentScreenTo4x3WidthScale__6dGfx_c = .sdata:0x80571C50; // type:object size:0x4 align:4 data:float lbl_80571C58 = .sdata:0x80571C58; // type:object size:0x8 data:byte m_current_ex__Q24dPad4ex_c = .sdata:0x80571C60; // type:object size:0x4 data:4byte -lbl_80571C68 = .sdata:0x80571C68; // type:object size:0x8 +@LOCAL@ModeProc_Calibrating__13dPadManager_cFv@s_messages = .sdata:0x80571C68; // type:object size:0x8 scope:local OBTAINED_ITEM_ID = .sdata:0x80571C70; // type:object size:0x4 data:4byte sCurrentSword__17daPlayerActBase_c = .sdata:0x80571C74; // type:object size:0x1 data:byte lbl_80571C78 = .sdata:0x80571C78; // type:object size:0x8 data:4byte @@ -41344,7 +41350,7 @@ s_ExecuteControlFlags__7dBase_c = .sbss:0x805750C0; // type:object size:0x4 data s_DrawControlFlags__7dBase_c = .sbss:0x805750C4; // type:object size:0x4 data:4byte s_NextExecuteControlFlags__7dBase_c = .sbss:0x805750C8; // type:object size:0x4 data:4byte sInstance__16dDvdDriveError_c = .sbss:0x805750D0; // type:object size:0x4 data:4byte -sInstance__Q27dDvdUnk7FontUnk = .sbss:0x805750D8; // type:object size:0x8 data:4byte +sInstance__Q27dDvdUnk7FontUnk = .sbss:0x805750D8; // type:object size:0x4 data:4byte pDynamicNameTable = .sbss:0x805750E0; // type:object size:0x4 data:4byte nDynamicNameTable = .sbss:0x805750E4; // type:object size:0x4 data:4byte pDMC__4dDyl = .sbss:0x805750E8; // type:object size:0x4 data:4byte @@ -41507,7 +41513,7 @@ sInstance__14dTimeAreaMgr_c = .sbss:0x805753C0; // type:object size:0x4 data:4by TIMESHIFT_TRANSITION_BORDER_COLOR = .sbss:0x805753C4; // type:object size:0x1 data:byte CURR_TIMESHIFT_STONE_ACTIVE = .sbss:0x805753C8; // type:object size:0x8 data:4byte sInstance__17NandRequestThread = .sbss:0x805753D0; // type:object size:0x8 data:4byte -sInstance__17NandResultTracker = .sbss:0x805753D8; // type:object size:0x8 data:4byte +sInstance__17NandResultTracker = .sbss:0x805753D8; // type:object size:0x4 data:4byte sInstance__16SceneflagManager = .sbss:0x805753E0; // type:object size:0x4 data:4byte sTempFlags__16SceneflagManager = .sbss:0x805753E8; // type:object size:0x8 sInstance__15TBoxflagManager = .sbss:0x805753F0; // type:object size:0x4 data:4byte @@ -43008,7 +43014,7 @@ lbl_80576FF8 = .sdata2:0x80576FF8; // type:object size:0x4 align:4 data:float lbl_80576FFC = .sdata2:0x80576FFC; // type:object size:0x4 align:4 data:float lbl_80577000 = .sdata2:0x80577000; // type:object size:0x4 align:4 data:float lbl_80577004 = .sdata2:0x80577004; // type:object size:0x4 align:4 data:float -lbl_80577008 = .sdata2:0x80577008; // type:object size:0x4 align:4 data:float +@11566 = .sdata2:0x80577008; // type:object size:0x4 scope:local align:4 data:float lbl_80577010 = .sdata2:0x80577010; // type:object size:0x4 align:4 data:float lbl_80577014 = .sdata2:0x80577014; // type:object size:0x4 align:4 data:float lbl_80577018 = .sdata2:0x80577018; // type:object size:0x4 align:4 data:float diff --git a/include/d/d_dvd_unk.h b/include/d/d_dvd_unk.h index 10aa6cb2..04a06789 100644 --- a/include/d/d_dvd_unk.h +++ b/include/d/d_dvd_unk.h @@ -4,9 +4,9 @@ #include "common.h" #include "egg/core/eggHeap.h" -// This file is related to errors that are -// displayed on the screen, using a backup font -// included in the DOL. +// TODO - rename when NSMBW figures out their type; +// they too apparently have a type with a ResFont at 0x00, +// which will be revealed when NSMBW function 80107090 is cracked namespace dDvdUnk { diff --git a/src/d/d_dvd_unk.cpp b/src/d/d_dvd_unk.cpp index e0225142..60a344f3 100644 --- a/src/d/d_dvd_unk.cpp +++ b/src/d/d_dvd_unk.cpp @@ -17,10 +17,11 @@ #include "rvl/NAND/nand.h" #include "toBeSorted/nand_result_tracker.h" -namespace dDvdUnk { - +// included asset #include "d/dol_backup_error_font.inc" +namespace dDvdUnk { + FontUnk *FontUnk::sInstance; void FontUnk::create(EGG::Heap *heap) {