03-05-2022, 11:24 PM
So I do a read bp on the text string I found: 0x802C77F0 ss/cmd/save_e.dat.jeegfsie
It breaks at instruction address: 0x80182E80 when stating the game save process and the next screen is about to load.
The call stack has the following displayed:
LR = 80182e64 b ->0x801A7750
address = 80093ef8 bl ->0x80182E54
address = 8002209c bl ->0x80093EC4
address = 80021b30 bl ->0x80022034
address = 800226c8 bl ->0x80021A78
address = 80022834 bl ->0x8002264C
address = 80151fd8 bctrl
address = 8017ed9c blr
I can see how it made its way from the bottom (more parent).
The code that immediately follows the: 8017ed9c blr
is:
stwu sp, -0x0020 (sp)
mflr r0,
stw r0, 0x24 (sp)
stw r31, 0x24 (sp)
stw r30, 0x24 (sp)
stw r29, 0x24 (sp)
stw r28, 0x24 (sp)
mr r28, r3
bl -> 0x8017B124
I believe this is the prologue (correct me if I'm wrong).
After reading the calling functions guide, there were some posts afterwards that say to hook to the code at the address directly after the blr, which would be: 0x8017EDA0 stwu sp, -0x0020 (sp)
So I wrote this C0 code:
lis r12, 0x8017
ori r12, r12, 0xEDA0
mtlr r12
blr
Obviously I don't want it to constantly run the the save function call. so I tried a C0 based button activator (at the beginning of the code, along with a Gecko button activator. In both cases, the game froze as soon as I tried to activate it.
I also tried activating the code by checking and unchecking the box next to the code in dolphin code manager without any button activators in the code.
Same thing. the game just froze.
Am I way off base?
Thanks in advance!!!!!!!
It breaks at instruction address: 0x80182E80 when stating the game save process and the next screen is about to load.
The call stack has the following displayed:
LR = 80182e64 b ->0x801A7750
address = 80093ef8 bl ->0x80182E54
address = 8002209c bl ->0x80093EC4
address = 80021b30 bl ->0x80022034
address = 800226c8 bl ->0x80021A78
address = 80022834 bl ->0x8002264C
address = 80151fd8 bctrl
address = 8017ed9c blr
I can see how it made its way from the bottom (more parent).
The code that immediately follows the: 8017ed9c blr
is:
stwu sp, -0x0020 (sp)
mflr r0,
stw r0, 0x24 (sp)
stw r31, 0x24 (sp)
stw r30, 0x24 (sp)
stw r29, 0x24 (sp)
stw r28, 0x24 (sp)
mr r28, r3
bl -> 0x8017B124
I believe this is the prologue (correct me if I'm wrong).
After reading the calling functions guide, there were some posts afterwards that say to hook to the code at the address directly after the blr, which would be: 0x8017EDA0 stwu sp, -0x0020 (sp)
So I wrote this C0 code:
lis r12, 0x8017
ori r12, r12, 0xEDA0
mtlr r12
blr
Obviously I don't want it to constantly run the the save function call. so I tried a C0 based button activator (at the beginning of the code, along with a Gecko button activator. In both cases, the game froze as soon as I tried to activate it.
I also tried activating the code by checking and unchecking the box next to the code in dolphin code manager without any button activators in the code.
Same thing. the game just froze.
Am I way off base?
Thanks in advance!!!!!!!