summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kamek_pal.x3
-rw-r--r--poweruphax.yaml6
-rw-r--r--src/poweruphax.S10
3 files changed, 19 insertions, 0 deletions
diff --git a/kamek_pal.x b/kamek_pal.x
index 0079576..5ca1042 100644
--- a/kamek_pal.x
+++ b/kamek_pal.x
@@ -296,6 +296,7 @@ SECTIONS {
createHeap__7fBase_cFUiPv = 0x80162930;
heapCreated__7fBase_cFv = 0x801629F0;
Delete__7fBase_cFv = 0x80162650;
+ findNextUninitialisedProcess__7fBase_cFv = 0x80162AF0;
hasUninitialisedProcesses__7fBase_cFv = 0x80162B60;
onDraw__7fBase_cFv = 0x80162310;
_Z15fBase_c__DeletePv = 0x80162650;
@@ -1361,6 +1362,8 @@ SECTIONS {
continuePlumberSetPowerupTexture = 0x800CA71C;
doneSettingThePowerupTexture = 0x800D483C;
doneSettingThePowerupTexture2 = 0x80141574;
+
+ continueToadPowerupSet = 0x800BCFD4;
continuePlumberSetPowerupTextureDebug = 0x800CA6B4;
diff --git a/poweruphax.yaml b/poweruphax.yaml
index 4b454aa..3a9aa21 100644
--- a/poweruphax.yaml
+++ b/poweruphax.yaml
@@ -207,6 +207,12 @@ hooks:
# branch_type: b
# src_addr_pal: 0x800CA6B0
# target_func: 'PlumberSetPowerupTextureDebug'
+
+ - name: FixToadPowerup
+ type: branch_insn
+ branch_type: b
+ src_addr_pal: 0x800BCFB0
+ target_func: 'ToadPowerupFix'
- name: FixPowerupScale_First
type: branch_insn
diff --git a/src/poweruphax.S b/src/poweruphax.S
index f8d1c2a..cf6ecb6 100644
--- a/src/poweruphax.S
+++ b/src/poweruphax.S
@@ -612,6 +612,16 @@ gotHammerStatus:
+.extern continueToadPowerupSet
+.global ToadPowerupFix
+ToadPowerupFix:
+ lis r8, PowerupTextures@h
+ ori r8, r8, PowerupTextures@l
+ slwi r9, r4, 2
+ lfsx f1, r8, r9
+ fadds f31, f31, f1
+ b continueToadPowerupSet
+
.data