Merge pull request #204 from robojumper/egg-symbols-2025-06-09

Import a few new EGG symbols from NSMBW
This commit is contained in:
robojumper
2025-06-09 12:58:56 +02:00
committed by GitHub
5 changed files with 47 additions and 46 deletions
+9 -8
View File
@@ -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__Q23EGG11DrawPathDOFFRCQ33EGG28IBinary<Q23EGG11DrawPathDOF>3Bin = .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
+4 -4
View File
@@ -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
+2 -2
View File
@@ -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);
+28 -28
View File
@@ -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;
+4 -4
View File
@@ -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) {