m_Do_Reset: reset, callback not statics (ty @notyourav) (#50)

Co-authored-by: Pheenoh <pheenoh@gmail.com>
This commit is contained in:
Erin Moon 2021-01-02 09:39:15 -06:00 committed by GitHub
parent 8821a84a70
commit 30a10e0352
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 21 additions and 24 deletions

View File

@ -871,13 +871,13 @@ lbl_8009D814:
/* 8009D844 0009A784 38 60 00 01 */ li r3, 1 /* 8009D844 0009A784 38 60 00 01 */ li r3, 1
/* 8009D848 0009A788 3C 80 80 00 */ lis r4, 0x8000 /* 8009D848 0009A788 3C 80 80 00 */ lis r4, 0x8000
/* 8009D84C 0009A78C 38 A0 00 00 */ li r5, 0 /* 8009D84C 0009A78C 38 A0 00 00 */ li r5, 0
/* 8009D850 0009A790 4B F7 7D C5 */ bl reset__6mDoRstFlUll /* 8009D850 0009A790 4B F7 7D C5 */ bl mDoRst_reset__FiUli
/* 8009D854 0009A794 48 00 00 14 */ b lbl_8009D868 /* 8009D854 0009A794 48 00 00 14 */ b lbl_8009D868
lbl_8009D858: lbl_8009D858:
/* 8009D858 0009A798 38 60 00 01 */ li r3, 1 /* 8009D858 0009A798 38 60 00 01 */ li r3, 1
/* 8009D85C 0009A79C 38 80 00 01 */ li r4, 1 /* 8009D85C 0009A79C 38 80 00 01 */ li r4, 1
/* 8009D860 0009A7A0 38 A0 00 01 */ li r5, 1 /* 8009D860 0009A7A0 38 A0 00 01 */ li r5, 1
/* 8009D864 0009A7A4 4B F7 7D B1 */ bl reset__6mDoRstFlUll /* 8009D864 0009A7A4 4B F7 7D B1 */ bl mDoRst_reset__FiUli
lbl_8009D868: lbl_8009D868:
/* 8009D868 0009A7A8 38 60 00 01 */ li r3, 1 /* 8009D868 0009A7A8 38 60 00 01 */ li r3, 1
lbl_8009D86C: lbl_8009D86C:

View File

@ -1254,7 +1254,7 @@ lbl_80257304:
/* 80257304 00254244 38 60 00 00 */ li r3, 0 /* 80257304 00254244 38 60 00 00 */ li r3, 0
/* 80257308 00254248 3C 80 80 00 */ lis r4, 0x8000 /* 80257308 00254248 3C 80 80 00 */ lis r4, 0x8000
/* 8025730C 0025424C 38 A0 00 00 */ li r5, 0 /* 8025730C 0025424C 38 A0 00 00 */ li r5, 0
/* 80257310 00254250 4B DB E3 05 */ bl reset__6mDoRstFlUll /* 80257310 00254250 4B DB E3 05 */ bl mDoRst_reset__FiUli
lbl_80257314: lbl_80257314:
/* 80257314 00254254 83 9F 01 E4 */ lwz r28, 0x1e4(r31) /* 80257314 00254254 83 9F 01 E4 */ lwz r28, 0x1e4(r31)
/* 80257318 00254258 28 1C 00 00 */ cmplwi r28, 0 /* 80257318 00254258 28 1C 00 00 */ cmplwi r28, 0
@ -1882,10 +1882,10 @@ lbl_80257C0C:
lbl_80257C18: lbl_80257C18:
/* 80257C18 00254B58 38 80 00 00 */ li r4, 0 /* 80257C18 00254B58 38 80 00 00 */ li r4, 0
/* 80257C1C 00254B5C 98 8D 8F 81 */ stb r4, lbl_80451501-_SDA_BASE_(r13) /* 80257C1C 00254B5C 98 8D 8F 81 */ stb r4, lbl_80451501-_SDA_BASE_(r13)
.global resetCallBack__6mDoRstFiPv .global mDoRst_resetCallBack__FiPv
/* 80257C20 00254B60 3C 60 80 01 */ lis r3, resetCallBack__6mDoRstFiPv@ha /* 80257C20 00254B60 3C 60 80 01 */ lis r3, mDoRst_resetCallBack__FiPv@ha
.global resetCallBack__6mDoRstFiPv .global mDoRst_resetCallBack__FiPv
/* 80257C24 00254B64 38 03 57 4C */ addi r0, r3, resetCallBack__6mDoRstFiPv@l /* 80257C24 00254B64 38 03 57 4C */ addi r0, r3, mDoRst_resetCallBack__FiPv@l
/* 80257C28 00254B68 90 0D 8F 6C */ stw r0, lbl_804514EC-_SDA_BASE_(r13) /* 80257C28 00254B68 90 0D 8F 6C */ stw r0, lbl_804514EC-_SDA_BASE_(r13)
/* 80257C2C 00254B6C 90 8D 8F 70 */ stw r4, lbl_804514F0-_SDA_BASE_(r13) /* 80257C2C 00254B6C 90 8D 8F 70 */ stw r4, lbl_804514F0-_SDA_BASE_(r13)
/* 80257C30 00254B70 80 6D 86 F8 */ lwz r3, m_Do_Reset_NS_mDoRst_NS_mResetData-_SDA_BASE_(r13) /* 80257C30 00254B70 80 6D 86 F8 */ lwz r3, m_Do_Reset_NS_mDoRst_NS_mResetData-_SDA_BASE_(r13)

View File

@ -582,10 +582,10 @@ dScnPly_c_NS_offReset:
/* 80259C3C 00256B7C 80 6D 86 F8 */ lwz r3, m_Do_Reset_NS_mDoRst_NS_mResetData-_SDA_BASE_(r13) /* 80259C3C 00256B7C 80 6D 86 F8 */ lwz r3, m_Do_Reset_NS_mDoRst_NS_mResetData-_SDA_BASE_(r13)
/* 80259C40 00256B80 90 83 00 04 */ stw r4, 4(r3) /* 80259C40 00256B80 90 83 00 04 */ stw r4, 4(r3)
/* 80259C44 00256B84 98 8D 8F 81 */ stb r4, lbl_80451501-_SDA_BASE_(r13) /* 80259C44 00256B84 98 8D 8F 81 */ stb r4, lbl_80451501-_SDA_BASE_(r13)
.global resetCallBack__6mDoRstFiPv .global mDoRst_resetCallBack__FiPv
/* 80259C48 00256B88 3C 60 80 01 */ lis r3, resetCallBack__6mDoRstFiPv@ha /* 80259C48 00256B88 3C 60 80 01 */ lis r3, mDoRst_resetCallBack__FiPv@ha
.global resetCallBack__6mDoRstFiPv .global mDoRst_resetCallBack__FiPv
/* 80259C4C 00256B8C 38 03 57 4C */ addi r0, r3, resetCallBack__6mDoRstFiPv@l /* 80259C4C 00256B8C 38 03 57 4C */ addi r0, r3, mDoRst_resetCallBack__FiPv@l
/* 80259C50 00256B90 90 0D 8F 6C */ stw r0, lbl_804514EC-_SDA_BASE_(r13) /* 80259C50 00256B90 90 0D 8F 6C */ stw r0, lbl_804514EC-_SDA_BASE_(r13)
/* 80259C54 00256B94 90 8D 8F 70 */ stw r4, lbl_804514F0-_SDA_BASE_(r13) /* 80259C54 00256B94 90 8D 8F 70 */ stw r4, lbl_804514F0-_SDA_BASE_(r13)
/* 80259C58 00256B98 98 9F 01 D4 */ stb r4, 0x1d4(r31) /* 80259C58 00256B98 98 9F 01 D4 */ stb r4, 0x1d4(r31)

View File

@ -431,7 +431,7 @@ exceptionRestart:
/* 8000B7A4 000086E4 38 60 00 00 */ li r3, 0 /* 8000B7A4 000086E4 38 60 00 00 */ li r3, 0
/* 8000B7A8 000086E8 38 80 00 00 */ li r4, 0 /* 8000B7A8 000086E8 38 80 00 00 */ li r4, 0
/* 8000B7AC 000086EC 38 A0 00 00 */ li r5, 0 /* 8000B7AC 000086EC 38 A0 00 00 */ li r5, 0
/* 8000B7B0 000086F0 48 00 9E 65 */ bl reset__6mDoRstFlUll /* 8000B7B0 000086F0 48 00 9E 65 */ bl mDoRst_reset__FiUli
/* 8000B7B4 000086F4 38 60 00 00 */ li r3, 0 /* 8000B7B4 000086F4 38 60 00 00 */ li r3, 0
/* 8000B7B8 000086F8 38 80 00 00 */ li r4, 0 /* 8000B7B8 000086F8 38 80 00 00 */ li r4, 0
/* 8000B7BC 000086FC 38 A0 00 00 */ li r5, 0 /* 8000B7BC 000086FC 38 A0 00 00 */ li r5, 0

View File

@ -1251,7 +1251,7 @@ JASTaskThread* JASDvd_NS_getThreadPointer(void);
// m_Do_Rst // m_Do_Rst
extern "C" { extern "C" {
void getResetData__6mDoRstFv(void); void getResetData__6mDoRstFv(void);
void resetCallBack__6mDoRstFiPv(void); void mDoRst_resetCallBack__FiPv(void);
} }
// additional symbols needed for d_attention.cpp // additional symbols needed for d_attention.cpp

View File

@ -4,10 +4,6 @@
#include "JSystem/JUtility/JUTXfb/JUTXfb.h" #include "JSystem/JUtility/JUTXfb/JUTXfb.h"
#include "dolphin/types.h" #include "dolphin/types.h"
extern "C" {
// void my_OSCancelAlarmAll(void);
}
struct ResetData { struct ResetData {
s32 field_0x0; s32 field_0x0;
u32 field_0x4; u32 field_0x4;
@ -25,8 +21,9 @@ struct ResetData {
struct mDoRst { struct mDoRst {
ResetData* getResetData(); ResetData* getResetData();
static void reset(s32 p1, u32 p2, s32 p3);
static void resetCallBack(int p1, void* p2);
}; };
void mDoRst_reset(int p1, u32 p2, int p3);
void mDoRst_resetCallBack(int p1, void* p2);
#endif #endif

View File

@ -60,8 +60,8 @@ lbl_80007A1C:
/* 80007A28 00004968 40 82 00 1C */ bne lbl_80007A44 /* 80007A28 00004968 40 82 00 1C */ bne lbl_80007A44
/* 80007A2C 0000496C 38 80 00 00 */ li r4, 0 /* 80007A2C 0000496C 38 80 00 00 */ li r4, 0
/* 80007A30 00004970 98 8D 8F 81 */ stb r4, lbl_80451501-_SDA_BASE_(r13) /* 80007A30 00004970 98 8D 8F 81 */ stb r4, lbl_80451501-_SDA_BASE_(r13)
/* 80007A34 00004974 3C 60 80 01 */ lis r3, resetCallBack__6mDoRstFiPv@ha /* 80007A34 00004974 3C 60 80 01 */ lis r3, mDoRst_resetCallBack__FiPv@ha
/* 80007A38 00004978 38 03 57 4C */ addi r0, r3, resetCallBack__6mDoRstFiPv@l /* 80007A38 00004978 38 03 57 4C */ addi r0, r3, mDoRst_resetCallBack__FiPv@l
/* 80007A3C 0000497C 90 0D 8F 6C */ stw r0, lbl_804514EC-_SDA_BASE_(r13) /* 80007A3C 0000497C 90 0D 8F 6C */ stw r0, lbl_804514EC-_SDA_BASE_(r13)
/* 80007A40 00004980 90 8D 8F 70 */ stw r4, lbl_804514F0-_SDA_BASE_(r13) /* 80007A40 00004980 90 8D 8F 70 */ stw r4, lbl_804514F0-_SDA_BASE_(r13)
lbl_80007A44: lbl_80007A44:

View File

@ -19,7 +19,7 @@ void destroyVideo() {
} }
// TODO: cleanup // TODO: cleanup
void mDoRst::reset(s32 p1, u32 p2, s32 p3) { void mDoRst_reset(int p1, u32 p2, int p3) {
mDoCPd_c* pmVar1; mDoCPd_c* pmVar1;
u32 uVar2; u32 uVar2;
DVDState DVar3; DVDState DVar3;
@ -82,14 +82,14 @@ void mDoRst::reset(s32 p1, u32 p2, s32 p3) {
} while (true); } while (true);
} }
void mDoRst::resetCallBack(int p1, void* p2) { void mDoRst_resetCallBack(int p1, void* p2) {
if (/* mResetData */ m_Do_Reset_NS_mDoRst_NS_mResetData->field_0x0 == 0) { if (/* mResetData */ m_Do_Reset_NS_mDoRst_NS_mResetData->field_0x0 == 0) {
if (p1 == -1) { if (p1 == -1) {
cAPICPad_recalibrate(); cAPICPad_recalibrate();
} else { } else {
if (m_Do_Reset_NS_mDoRst_NS_mResetData->field_0x8 != 0) { if (m_Do_Reset_NS_mDoRst_NS_mResetData->field_0x8 != 0) {
lbl_80451501 = false; lbl_80451501 = false;
/* sCallback */ lbl_804514EC = &mDoRst::resetCallBack; /* sCallback */ lbl_804514EC = &mDoRst_resetCallBack;
/* sCallbackArg */ lbl_804514F0 = 0; /* sCallbackArg */ lbl_804514F0 = 0;
return; return;
} }