From 52956177d95512198a5f52912c66c10985fe061f Mon Sep 17 00:00:00 2001 From: robojumper Date: Mon, 9 Jun 2025 12:51:33 +0200 Subject: [PATCH] Import a few new EGG symbols from NSMBW --- config/SOUE01/symbols.txt | 17 +++---- include/egg/audio/eggAudioRmtSpeakerMgr.h | 8 ++-- include/egg/gfx/eggDrawPathDOF.h | 4 +- src/egg/audio/eggAudioRmtSpeakerMgr.cpp | 56 +++++++++++------------ src/egg/gfx/eggDrawPathDOF.cpp | 8 ++-- 5 files changed, 47 insertions(+), 46 deletions(-) diff --git a/config/SOUE01/symbols.txt b/config/SOUE01/symbols.txt index fc88f3c2..bddc4300 100644 --- a/config/SOUE01/symbols.txt +++ b/config/SOUE01/symbols.txt @@ -19836,7 +19836,7 @@ __dt__9dSndMgr_cFv = .text:0x8035A460; // type:function size:0x58 @248@__dt__9dSndMgr_cFv = .text:0x8035A550; // type:function size:0x8 __ct__11dSndActor_cFRQ34nw4r3snd18SoundArchivePlayer = .text:0x8035A560; // type:function size:0x3C __dt__Q34nw4r3snd11SoundHandleFv = .text:0x8035A5A0; // type:function size:0x54 scope:weak -__cl__22SoundPropertiesCheckerFRQ34nw4r3snd11SoundHandle = .text:0x8035A600; // type:function size:0x240 +__cl__22SoundPropertiesCheckerFRQ34nw4r3snd11SoundHandle = .text:0x8035A600; // type:function size:0x240 scope:weak __dt__11dSndActor_cFv = .text:0x8035A840; // type:function size:0x58 scope:weak __ct__13dSnd3DActor_cFP15dSndSourceParamUc = .text:0x8035A8A0; // type:function size:0xE8 d_vt_0x34__13dSnd3DActor_cFRCQ34nw4r4math4VEC3 = .text:0x8035A990; // type:function size:0x40 @@ -26502,8 +26502,8 @@ __dt__Q23EGG17PostEffectMaskDOFFv = .text:0x804A2C40; // type:function size:0x40 execute__Q23EGG11DrawPathDOFFv = .text:0x804A2C80; // type:function size:0x9C internalResetForDraw__Q23EGG11DrawPathDOFFv = .text:0x804A2D20; // type:function size:0x324 internalDraw__Q23EGG11DrawPathDOFFUs = .text:0x804A3050; // type:function size:0xCC -internalDrawVariant01__Q23EGG11DrawPathDOFFUs = .text:0x804A3120; // type:function size:0x9A4 -internalDrawVariant2__Q23EGG11DrawPathDOFFUs = .text:0x804A3AD0; // type:function size:0x648 +internalDrawStandard__Q23EGG11DrawPathDOFFUs = .text:0x804A3120; // type:function size:0x9A4 +internalDrawLite__Q23EGG11DrawPathDOFFUs = .text:0x804A3AD0; // type:function size:0x648 FUN_804a4120 = .text:0x804A4120; // type:function size:0x224 FUN_804a4350 = .text:0x804A4350; // type:function size:0xDC SetBinaryInner__Q23EGG11DrawPathDOFFRCQ33EGG28IBinary3Bin = .text:0x804A4430; // type:function size:0x238 @@ -26837,9 +26837,9 @@ detail_SetupSound__Q23EGG21SoundArchivePlayerEGGFPQ34nw4r3snd11SoundHandleUlbPCQ @248@__dt__Q23EGG14SimpleAudioMgrFv = .text:0x804B69C0; // type:function size:0x8 scope:weak setupCallback__Q23EGG18AudioRmtSpeakerMgrFll = .text:0x804B69D0; // type:function size:0x90 shutdownCallback__Q23EGG18AudioRmtSpeakerMgrFll = .text:0x804B6A60; // type:function size:0x8C -fn_804B6AF0__Q23EGG18AudioRmtSpeakerMgrFlPFll_vb = .text:0x804B6AF0; // type:function size:0x84 -fn_804B6B80__Q23EGG18AudioRmtSpeakerMgrFlPFll_v = .text:0x804B6B80; // type:function size:0x7C -fn_804B6C00__Q23EGG18AudioRmtSpeakerMgrFlPFll_v = .text:0x804B6C00; // type:function size:0x48 +add_task__Q23EGG18AudioRmtSpeakerMgrFlPFll_vb = .text:0x804B6AF0; // type:function size:0x84 +doSetup__Q23EGG18AudioRmtSpeakerMgrFlPFll_v = .text:0x804B6B80; // type:function size:0x7C +doShutdown__Q23EGG18AudioRmtSpeakerMgrFlPFll_v = .text:0x804B6C00; // type:function size:0x48 calc__Q23EGG18AudioRmtSpeakerMgrFv = .text:0x804B6C50; // type:function size:0xC4 setupCallbackDirect__Q23EGG18AudioRmtSpeakerMgrFll = .text:0x804B6D20; // type:function size:0x3C shutdownCallbackDirect__Q23EGG18AudioRmtSpeakerMgrFll = .text:0x804B6D60; // type:function size:0x20 @@ -37631,7 +37631,7 @@ __vt__4dCcS = .data:0x805485A8; // type:object size:0xC lbl_805485B8 = .data:0x805485B8; // type:object size:0xC lbl_805485C4 = .data:0x805485C4; // type:object size:0xC __vt__9dSndMgr_c = .data:0x805485D0; // type:object size:0xA8 -__vt__22SoundPropertiesChecker = .data:0x80548678; // type:object size:0xC +__vt__22SoundPropertiesChecker = .data:0x80548678; // type:object size:0xC scope:weak __vt__11dSndActor_c = .data:0x80548684; // type:object size:0x1C scope:weak __vt__23IsCurrentSoundIdChecker = .data:0x805486A0; // type:object size:0x10 __vt__13dSnd3DActor_c = .data:0x805486B0; // type:object size:0x60 @@ -50333,6 +50333,7 @@ lbl_8058F1B8 = .bss:0x8058F1B8; // type:object size:0x10 align:4 data:float lbl_8058F1C8 = .bss:0x8058F1C8; // type:object size:0x28 align:4 data:float lbl_8058F1F0 = .bss:0x8058F1F0; // type:object size:0x20 data:byte @23379 = .bss:0x8058F210; // type:object size:0xC scope:local +...bss.0 = .bss:0x8058F210; // type:label scope:local sInstance__11dLightEnv_c = .bss:0x8058F220; // type:object size:0x5D70 sList__13ActorLighting = .bss:0x80594F90; // type:object size:0xC data:4byte sPlayingEffectsList__14dJEffManager_c = .bss:0x80594FA0; // type:object size:0x18 data:4byte @@ -51988,7 +51989,7 @@ s_tmem_layout__Q23EGG7StateGX = .bss:0x806750C0; // type:object size:0xA8 data:4 s_cacheGX__Q23EGG7StateGX = .bss:0x80675168; // type:object size:0x18 @LOCAL@initialize__Q23EGG7StateGXFUsUs8_GXColor11_GXPixelFmt@sDefaultTexObjData = .bss:0x80675180; // type:object size:0x10 scope:local spBufferTable__Q23EGG13TextureBuffer = .bss:0x80675190; // type:object size:0x200 data:4byte -sTasks__Q23EGG18AudioRmtSpeakerMgr = .bss:0x80675390; // type:object size:0xF0 +sConnectTask__Q23EGG18AudioRmtSpeakerMgr = .bss:0x80675390; // type:object size:0xF0 sMoveParamMgr__Q23EGG12AudioUtility = .bss:0x80675480; // type:object size:0xC lbl_80675490 = .bss:0x80675490; // type:object size:0x10 lbl_806754A0 = .bss:0x806754A0; // type:object size:0x20 data:4byte diff --git a/include/egg/audio/eggAudioRmtSpeakerMgr.h b/include/egg/audio/eggAudioRmtSpeakerMgr.h index 80c8df82..c9699e61 100644 --- a/include/egg/audio/eggAudioRmtSpeakerMgr.h +++ b/include/egg/audio/eggAudioRmtSpeakerMgr.h @@ -30,9 +30,9 @@ public: private: static void setupCallback(s32, s32); static void shutdownCallback(s32, s32); - static void fn_804B6AF0(s32 i, WPADCallback *pCallback, bool); - static void fn_804B6B80(s32 i, WPADCallback *pCallback); - static void fn_804B6C00(s32 i, WPADCallback *pCallback); + static void add_task(s32 i, WPADCallback *pCallback, bool); + static void doSetup(s32 i, WPADCallback *pCallback); + static void doShutdown(s32 i, WPADCallback *pCallback); static void setupCallbackDirect(s32, s32); static void shutdownCallbackDirect(s32, s32); static bool sAudioRmtSpeakerConnectCanncelSw; @@ -42,7 +42,7 @@ private: static u8 sAudioRmtSpeakerWpadVolume; - static AudioRmtSpeakerTask sTasks[0x14]; + static AudioRmtSpeakerTask sConnectTask[0x14]; }; } // namespace EGG diff --git a/include/egg/gfx/eggDrawPathDOF.h b/include/egg/gfx/eggDrawPathDOF.h index 055e603a..8ae49e79 100644 --- a/include/egg/gfx/eggDrawPathDOF.h +++ b/include/egg/gfx/eggDrawPathDOF.h @@ -30,8 +30,8 @@ public: void execute(); private: - void internalDrawVariant01(u16); - void internalDrawVariant2(u16); + void internalDrawStandard(u16); + void internalDrawLite(u16); void afterDraw(u16 x, u16 y, u16 width, u16 height); diff --git a/src/egg/audio/eggAudioRmtSpeakerMgr.cpp b/src/egg/audio/eggAudioRmtSpeakerMgr.cpp index af752d30..cf2828a5 100644 --- a/src/egg/audio/eggAudioRmtSpeakerMgr.cpp +++ b/src/egg/audio/eggAudioRmtSpeakerMgr.cpp @@ -12,39 +12,39 @@ bool AudioRmtSpeakerMgr::sTask; u8 AudioRmtSpeakerMgr::sAudioRmtSpeakerWpadVolume = 0x58; -AudioRmtSpeakerTask AudioRmtSpeakerMgr::sTasks[0x14]; +AudioRmtSpeakerTask AudioRmtSpeakerMgr::sConnectTask[0x14]; void AudioRmtSpeakerMgr::setupCallback(s32 arg1, s32 arg2) { if (arg2 == 0) { - if (sTasks[mTaskFinishCount].mpCallback != nullptr) { - (sTasks[mTaskFinishCount].mpCallback)(arg1, arg2); + if (sConnectTask[mTaskFinishCount].mpCallback != nullptr) { + (sConnectTask[mTaskFinishCount].mpCallback)(arg1, arg2); } sAudioRmtSpeakerWpadVolume = WPADGetSpeakerVolume(); } else { - fn_804B6D80(arg1, sTasks[mTaskFinishCount].mpCallback); + fn_804B6D80(arg1, sConnectTask[mTaskFinishCount].mpCallback); } - sTasks[mTaskFinishCount].field_0x01 = true; + sConnectTask[mTaskFinishCount].field_0x01 = true; } void AudioRmtSpeakerMgr::shutdownCallback(s32 arg1, s32 arg2) { if ((u32)arg2 + 1 <= 1) { - if (sTasks[mTaskFinishCount].mpCallback != nullptr) { - (sTasks[mTaskFinishCount].mpCallback)(arg1, arg2); + if (sConnectTask[mTaskFinishCount].mpCallback != nullptr) { + (sConnectTask[mTaskFinishCount].mpCallback)(arg1, arg2); } } else { - fn_804B6DE0(arg1, sTasks[mTaskFinishCount].mpCallback); + fn_804B6DE0(arg1, sConnectTask[mTaskFinishCount].mpCallback); } - sTasks[mTaskFinishCount].field_0x01 = true; + sConnectTask[mTaskFinishCount].field_0x01 = true; } -void AudioRmtSpeakerMgr::fn_804B6AF0(s32 i, WPADCallback *pCallback, bool enable) { +void AudioRmtSpeakerMgr::add_task(s32 i, WPADCallback *pCallback, bool enable) { BOOL intr = OSDisableInterrupts(); u32 index = mTaskRequestCount; - sTasks[index].mChannel = i; - sTasks[index].field_0x00 = enable; - sTasks[index].mpCallback = pCallback; - sTasks[index].field_0x01 = false; + sConnectTask[index].mChannel = i; + sConnectTask[index].field_0x00 = enable; + sConnectTask[index].mpCallback = pCallback; + sConnectTask[index].field_0x01 = false; if (++mTaskRequestCount >= 0x14) { mTaskRequestCount = 0; } @@ -52,28 +52,28 @@ void AudioRmtSpeakerMgr::fn_804B6AF0(s32 i, WPADCallback *pCallback, bool enable OSRestoreInterrupts(intr); } -void AudioRmtSpeakerMgr::fn_804B6B80(s32 i, WPADCallback *pCallback) { +void AudioRmtSpeakerMgr::doSetup(s32 i, WPADCallback *pCallback) { if (!nw4r::snd::SoundSystem::GetRemoteSpeaker(i).Setup(pCallback)) { - fn_804B6AF0(i, pCallback, true); - sTasks[mTaskRequestCount].field_0x01 = true; + add_task(i, pCallback, true); + sConnectTask[mTaskRequestCount].field_0x01 = true; } } -void AudioRmtSpeakerMgr::fn_804B6C00(s32 i, WPADCallback *pCallback) { +void AudioRmtSpeakerMgr::doShutdown(s32 i, WPADCallback *pCallback) { nw4r::snd::SoundSystem::GetRemoteSpeaker(i).Shutdown(pCallback); } void AudioRmtSpeakerMgr::calc() { if (!sTask) { if (mTaskRequestCount != mTaskFinishCount) { - if (sTasks[mTaskFinishCount].field_0x00) { - fn_804B6B80(sTasks[mTaskFinishCount].mChannel, setupCallback); + if (sConnectTask[mTaskFinishCount].field_0x00) { + doSetup(sConnectTask[mTaskFinishCount].mChannel, setupCallback); } else { - fn_804B6C00(sTasks[mTaskFinishCount].mChannel, shutdownCallback); + doShutdown(sConnectTask[mTaskFinishCount].mChannel, shutdownCallback); } sTask = true; } - } else if (sTasks[mTaskFinishCount].field_0x01) { + } else if (sConnectTask[mTaskFinishCount].field_0x01) { sTask = false; mTaskFinishCount++; if (mTaskFinishCount >= 0x14) { @@ -86,7 +86,7 @@ void AudioRmtSpeakerMgr::setupCallbackDirect(s32 arg1, s32 arg2) { if (arg2 == 0) { sAudioRmtSpeakerWpadVolume = WPADGetSpeakerVolume(); } else { - fn_804B6B80(arg1, setupCallbackDirect); + doSetup(arg1, setupCallbackDirect); } } @@ -97,13 +97,13 @@ void AudioRmtSpeakerMgr::shutdownCallbackDirect(s32 arg1, s32 arg2) { if (arg2 == 0) { return; } - fn_804B6C00(arg1, shutdownCallbackDirect); + doShutdown(arg1, shutdownCallbackDirect); } void AudioRmtSpeakerMgr::fn_804B6D80(s32 i, WPADCallback *pCallback) { WPADDeviceType ty; if (!sAudioRmtSpeakerConnectCanncelSw && WPADProbe(i, &ty) != WPAD_ERR_NO_CONTROLLER) { - fn_804B6AF0(i, pCallback, true); + add_task(i, pCallback, true); } } @@ -115,7 +115,7 @@ void AudioRmtSpeakerMgr::fn_804B6DE0(s32 i, WPADCallback *pCallback) { return; } } - fn_804B6AF0(i, pCallback, false); + add_task(i, pCallback, false); } } @@ -124,7 +124,7 @@ void AudioRmtSpeakerMgr::connectAllByForce() { sAudioRmtSpeakerConnectCanncelSw = false; for (int i = 0; i < 4; i++) { if (WPADProbe(i, &ty) != WPAD_ERR_NO_CONTROLLER) { - fn_804B6B80(i, setupCallbackDirect); + doSetup(i, setupCallbackDirect); } } } @@ -134,7 +134,7 @@ void AudioRmtSpeakerMgr::disconnectAllByForce() { for (int i = 0; i < 4; i++) { WPADProbe(i, &ty); // ignoring result here if (nw4r::snd::SoundSystem::GetRemoteSpeaker(i).IsAvailable()) { - fn_804B6C00(i, shutdownCallbackDirect); + doShutdown(i, shutdownCallbackDirect); } } sAudioRmtSpeakerConnectCanncelSw = true; diff --git a/src/egg/gfx/eggDrawPathDOF.cpp b/src/egg/gfx/eggDrawPathDOF.cpp index b51b64cd..e649fab5 100644 --- a/src/egg/gfx/eggDrawPathDOF.cpp +++ b/src/egg/gfx/eggDrawPathDOF.cpp @@ -123,9 +123,9 @@ void DrawPathDOF::internalDraw(u16 idx) { } if (field_0x20 == 2) { - internalDrawVariant2(idx); + internalDrawLite(idx); } else { - internalDrawVariant01(idx); + internalDrawStandard(idx); } switch (idx) { @@ -141,9 +141,9 @@ void DrawPathDOF::internalDraw(u16 idx) { } } -void DrawPathDOF::internalDrawVariant01(u16 idx) {} +void DrawPathDOF::internalDrawStandard(u16 idx) {} -void DrawPathDOF::internalDrawVariant2(u16 idx) { +void DrawPathDOF::internalDrawLite(u16 idx) { const Screen &screen = GlobalDrawState::getScreen(); const Screen::DataEfb &efb = screen.GetDataEfb(); switch (idx) {