summaryrefslogtreecommitdiff
path: root/src/randomcrap.S
diff options
context:
space:
mode:
Diffstat (limited to 'src/randomcrap.S')
-rw-r--r--src/randomcrap.S41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/randomcrap.S b/src/randomcrap.S
index 0b76ad8..64e98c1 100644
--- a/src/randomcrap.S
+++ b/src/randomcrap.S
@@ -1,4 +1,45 @@
.text
+.global mpPauseFix1
+.global mpPauseFix2
+.extern continueFromMpPauseFix1
+.extern continueFromMpPauseFix2
+
+mpPauseFix1:
+ lis r5, continueFromMpPauseFix1@h
+ ori r5, r5, continueFromMpPauseFix1@l
+ b mpPauseFix
+mpPauseFix2:
+ lis r5, continueFromMpPauseFix2@h
+ ori r5, r5, continueFromMpPauseFix2@l
+ b mpPauseFix
+
+.extern CheckIfSinglePlayer
+
+mpPauseFix:
+ stwu r1, -0x20(r1)
+ mflr r0
+ stw r0, 0x24(r1)
+ stw r31, 0x1C(r1)
+ stw r30, 0x18(r1)
+ mr r31, r3
+ mr r30, r4
+
+ bl CheckIfSinglePlayer
+ cmpwi r3, 1
+ bne DontDoThis
+ mr r3, r31
+ mr r4, r30
+ mtctr r5
+ bctrl
+DontDoThis:
+
+ lwz r30, 0x18(r1)
+ lwz r31, 0x1C(r1)
+ lwz r0, 0x24(r1)
+ mtlr r0
+ addi r1, r1, 0x20
+ blr
+
.global newClimbSounds
.extern StagePtr
newClimbSounds: