diff options
Diffstat (limited to '')
-rw-r--r-- | bugfixes.yaml | 11 | ||||
-rw-r--r-- | src/randomcrap.S | 18 |
2 files changed, 14 insertions, 15 deletions
diff --git a/bugfixes.yaml b/bugfixes.yaml index b60b994..e5e4a9a 100644 --- a/bugfixes.yaml +++ b/bugfixes.yaml @@ -3,12 +3,11 @@ # yaml, hasn't it...
source_files: [../src/randomcrap.S, ../src/music.cpp, ../src/fix38.S, ../src/nullsub.S, ../src/newer.cpp]
hooks:
-# FUCK SKAWO
-# - name: TitleScreenFucker
-# type: branch_insn
-# branch_type: bl
-# src_addr_pal: 0x8010191C
-# target_func: 'TitleScreenFucker'
+ - name: TitleScreenFucker
+ type: branch_insn
+ branch_type: bl
+ src_addr_pal: 0x8010191C
+ target_func: 'TitleScreenFucker'
- name: MPPauseFix1
type: branch_insn
diff --git a/src/randomcrap.S b/src/randomcrap.S index b4e8f02..52b9841 100644 --- a/src/randomcrap.S +++ b/src/randomcrap.S @@ -2,7 +2,7 @@ .global TitleScreenFucker .extern RESTART_CRSIN_LevelStartStruct -.extern SaveFileInstance +.extern SaveFileBuffer TitleScreenFucker: lis r3, RESTART_CRSIN_LevelStartStruct@h ori r3, r3, RESTART_CRSIN_LevelStartStruct@l @@ -10,13 +10,13 @@ TitleScreenFucker: stb r4, 7(r3) # now get the FUCKING WORLD and FUCKING LEVEL - lis r4, SaveFileInstance@h - ori r4, r4, SaveFileInstance@l - lwz r4, 0(r4) - lbz r5, 0x26(r4) + lis r4, SaveFileBuffer@h + ori r4, r4, SaveFileBuffer@l + #lwz r4, 0(r4) + lbz r5, 6(r4) extsb r5, r5 mulli r5, r5, 0x980 - addi r4, r4, 0x6C0 + addi r4, r4, 0x6A0 add r4, r4, r5 # do we need to use Quick Save? get the QS block @@ -30,9 +30,9 @@ quickSaveExists: # now we have the save block in r4 lbz r6, 2(r4) clrlwi. r6, r6, 31 - bne saveIsNotNew + beq saveIsNotNew li r5, 0 - li r6, 9 + li r6, 8 b chosenTitle saveIsNotNew: lbz r5, 0x73A(r4) @@ -43,7 +43,7 @@ chosenTitle: cmpwi r6, 0 bne isntWorld1_1 li r5, 0 - li r6, 9 + li r6, 7 isntWorld1_1: stb r5, 0xC(r3) stb r6, 0xD(r3) |