1
0
Fork 0

add instant-restart, fast-forward, skip-intro-cutscenes

This commit is contained in:
sup39 2022-04-25 19:25:58 +09:00
commit 8b4d6e715a
12 changed files with 162 additions and 0 deletions

View file

@ -0,0 +1,6 @@
020ecde2 00000258
28400D50 00000204
020ecde2 00000960
28400D51 00000208
020ecde2 000012C0
E0000000 00000000

View file

@ -0,0 +1,10 @@
C20EAFA0 00000009
3C608040 A0A30D50
28050808 40A20030
3C60817F 38A00001
98A300B3 98A30100
3C60803E 84A3600E
90A30004 3C60800E
6063B3F8 7C6803A6
4E800020 2C000002
60000000 00000000

View file

@ -0,0 +1,13 @@
$ Skip intro cutscenes (v0.1.0, 2022/03/10) [sup39]
28400D50 00000028
C20ECF14 00000005
899A0064 2C0C0001
4182000C B01A004C
48000010 3863000F
907A0054 3B800000
60000000 00000000
040ec5d4 60000000
28400D51 00000024
040ECF14 b01a004c
040ec5d4 418204ec
E0000000 00000000

View file

@ -0,0 +1,6 @@
0227950E 00000258
283F5428 00000204
0227950E 00000960
283F5429 00000208
0227950E 000012C0
E0000000 00000000

View file

@ -0,0 +1,10 @@
C227768C 00000009
3C60803F A0A35428
28050808 40A20030
3C60817F 38A00001
98A300B3 98A30100
3C60803E 84A3A8EE
90A30004 3C608027
60637AE4 7C6803A6
4E800020 2C000002
60000000 00000000

View file

@ -0,0 +1,13 @@
$ Skip intro cutscenes (v0.1.0, 2022/04/25) [sup39]
283F5428 00000028
C2279640 00000005
899A0064 2C0C0001
4182000C B01A004C
48000010 3863000F
907A0054 3B800000
60000000 00000000
04278D00 60000000
283F5429 00000024
04279640 B01A004C
04278D00 418204EC
E0000000 00000000

View file

@ -0,0 +1,10 @@
C22979E4 00000009
3C608040 A0A34454
28050808 40A20030
3C60817F 38A00001
98A300B3 98A30100
3C60803F 84A3970E
90A30004 3C608029
60637E3C 7C6803A6
4E800020 2C000002
60000000 00000000

View file

@ -0,0 +1,13 @@
$ Skip intro cutscenes (v0.1.0, 2022/04/25) [sup39]
28404454 00000028
C2299990 00000005
899A0064 2C0C0001
4182000C B01A004C
48000010 3863000F
907A0054 3B800000
60000000 00000000
04299050 60000000
28404455 00000024
04299990 B01A004C
04299050 418204EC
E0000000 00000000

10
PAL/instant-restart.txt Normal file
View file

@ -0,0 +1,10 @@
C228F87C 00000009
3C608040 A0A3BBF4
28050808 40A20030
3C60817F 38A00001
98A300B3 98A30100
3C60803E 84A310CE
90A30004 3C608028
6063FCD4 7C6803A6
4E800020 2C000002
60000000 00000000

View file

@ -0,0 +1,13 @@
$ Skip intro cutscenes (v0.1.0, 2022/04/25) [sup39]
283FBBF4 00000028
C2291828 00000005
899A0064 2C0C0001
4182000C B01A004C
48000010 3863000F
907A0054 3B800000
60000000 00000000
04290EE8 60000000
283FBBF5 00000024
04291828 B01A004C
04290EE8 418204EC
E0000000 00000000

35
README.md Normal file
View file

@ -0,0 +1,35 @@
# supSMS misc. code
## List of codes
||NTSC-J 1.0|NTSC-J 1.1|NTSC-U|PAL|
|-|:-:|:-:|:-:|:-:|
|[Instant restart](#instant-restart)|◎|◎|||
|[Fast forward](#skip-intro-cutscenes)|◎|◎|||
|[Skip intro cutscenes](#skip-intro-cutscenes)|◎|◎|||
◎: tested by sup39
: tested by others
: untested
## Usage
### Instant restart
- press `Y + D-Pad Up` to restart without pausing + exit area
You can change the `0808` in the 3rd line to the button input value you want.
### Fast forward
- press `B + D-Pad Down` to fast forward 4x
- press `B + D-Pad Up` to fast forward 8x (Note: this may cause lag)
This code handles QFT (but not SGT) properly.
### Skip intro cutscenes
- press `R + D-Pad Up` to enable
- press `R + D-Pad Down` to disable
This code do not skip any frames but *fast forward* them.
Therefore, objects will still move as regular in the intro cutscenes,
but without being rendered on the screen.
This code also handles QFT (but not SGT) properly just like the [Fast forward](#fast-forward) code.
Note: **You may want to disable it when you are in secret stage and Bowser fight.**

23
src/instant-restart.s Normal file
View file

@ -0,0 +1,23 @@
.set C2, 48 + updateGameMode__12TMarDirectorFv
.set aInput, 0 + mPadStatus__10JUTGamePad
.set aArea, 14 + gpApplication
.set aBL, 1160 + updateGameMode__12TMarDirectorFv
.L_C2:
lis r3, aInput@ha
lhz r5, aInput@l(r3)
cmplwi r5, 0x801
bne+ .L_done
lis r3, 0x817F
li r5, 0x1
stb r5, 0xB3(r3)
stb r5, 0x100(r3)
lis r3, aArea@ha
lwzu r5, aArea@l(r3)
stw r5, 4(r3)
lis r3, aBL@h
ori r3, r3, aBL@l
mtlr r3
blr
.L_done:
cmpwi r0, 0x2