• Welcome to Smashboards, the world's largest Super Smash Brothers community! Over 250,000 Smash Bros. fans from around the world have come to discuss these great games in over 19 million posts!

    You are currently viewing our boards as a visitor. Click here to sign up right now and start on your path in the Smash community!

Completed UCF v0.73 DOL Mod

Heyzeus_18

Smash Cadet
Joined
Aug 16, 2017
Messages
60
Location
Massachusetts, United States
UCF v0.73
[ Dan Salvato, taukhan, UnclePunch ]
Revision ---- DOL Offset ---- Hex to Replace ---------- ASM Code -
NTSC 1.02 --- 0x800C9A44 ----

D01F002C 7FC3F378
4BFCCAF5 2C030000
40820180 7FC3F378
4800CE65 2C030000
40820170 7FC3F378
4800CEF1 2C030000
40820160 7FC3F378
4800EF15 2C030000
40820150 7FC3F378
4BFC2539 2C030000
40820140 7FC3F378
4BFC2D95 2C030000
40820130 7FC3F378
4BFC3099 2C030000
40820120 7FC3F378
4BFC1B9D 2C030000
40820110 7FC3F378
4BFC1EB5 2C030000
40820100 7FC3F378
4BFC2069 2C030000
408200F0 7FC3F378
4BFC0F0D 2C030000
408200E0 801F2340
2C000000 40820010
C01F002C FC000050
D01F002C 7FC3F378
4BFC7F39 2C030000
408200B8 7FC3F378
48014EB5 2C030000
408200A8 7FC3F378
4800139D 2C030000
40820098 7FC3F378
480000E9 801F2358
2C000000 41820040

->

A09F03E8 2C044000
40820100 808DAEB4
C03F0620 C05F2344
EC2100B2 C044003C
FC011040 4C411382
408200E0 88BF0670
2C050002 408000D4
889F221F 54840739
41A20008 480000C4
3C80804C 60841F78
88A40001 98A1FFF8
4800003C 38A5FFFF
2C050000 40800008
38A50005 3C808046
6084B108 1CA50030
7C842A14 88BF000C
1CA5000C 7C842A14
88A40002 7CA50774
4E800020 38A5FFFE
4BFFFFC5 90A1FFF4
88A1FFF8 4BFFFFB9
8081FFF4 7CA42850
7CA529D6 2C0515F9
40810050 38000001
901F2358 901F2340
889F0007 2C04000A
40A20038 80830010
8084002C 80841ECC
D0040018 80A40018
3D803F80 7C056000
41820010 38A00080
98A40006 4800000C
38A0007F 98A40006
D01F002C 00000000

------------- 0x800998A4 ----

8083002C 80040004
3BE40000 2C00000E
41820008 4800000C
48000099 48000008
48000029 387F0000
38800017 38A00000
4BFE52D9 8001001C
83E10014 38210018
7C0803A6 4E800020
7C0802A6 388000EB
90010004 38A00000
38C00000 9421FFE8
93E10014 93C10010
7C7E1B78 C0228C98
83E3002C FC600890
C0428C9C 4BFCFA8D
7FC3F378 4BFD527D
881F221D 38600001
5060177A 981F221D
8001001C 83E10014
83C10010 38210018
7C0803A6 4E800020
7C0802A6 90010004
9421FFE0 93E1001C
93C10018 7C7E1B78
8063002C 880305F5
2C000001 4082000C
7FC3F378 480924BD
C0228C98 7FC3F378
83FE002C 388000EB

->

8063002C C023063C
C0050314 FC010040
408100D4 3C8042A0
9081FFF4 3C803727
9081FFF8 3C804330
9081FFE4 C0030620
38000000 FC000210
C021FFF4 EC000072
C021FFF8 EC000828
FC00001E D801FFEC
8081FFF0 38840002
6C848000 9081FFE8
C801FFE4 C8228B90
EC000828 C021FFF4
EC000824 2C000000
40820014 38000001
D001FFE0 C0030624
4BFFFFAC C021FFE0
EC210072 EC000032
EC00082A C0228954
FC000840 4C411382
4082003C 88830670
2C040003 40810030
C005002C FC000050
C0230624 FC000840
4080001C 8061001C
38630008 83E10014
38210018 7C6803A6
4E800020 7FC3F378
8083002C 00000000

------------- 0x802662D0 ----

38980000 38600000
C022CC3C C042CC40
C062CA04 C082CC44
C0A2CB90 4813F7E1
38000001 9803004A
3880004A 98030049
98030048 C002CC10
D0030024 D0030028
48140059 4BFF5A1D
806DB610 88030002
2C000003 40800010
2C000000 41820010
48000014 2C00000B
4080000C 38000001
48000008 38000000
2C000000 418200A0
3A400000 C202CA28
56402834 C1E2CC10
7E3C0214 3A3104C4
48000074 806DB620
38810108 88B10008
4CC63182 38C0FFFF
4BDABAA5 80610108
38A100EC 38800000

->

9421FFBC BE810008
7C0802A6 90010040
38600000 38800000
3DC0803A 61CE6754
7DC903A6 4E800421
7C7F1B78 4800005D
7FC802A6 7FE3FB78
C03E0000 C05E0004
48000059 7C8802A6
3DC0803A 61CE6B98
7DC903A6 4E800421
807F005C 3C80FFFF
6084FF0E 90830006
38800001 989F0049
38800001 989F004A
C03E0008 D03F0024
D03F0028 48000024
4E800021 42820000
C40F4000 3D3851EC
4E800021 55434620
76302E37 33000000
80010040 7C0803A6
BA810008 38210044
38980000 00000000
 
Last edited:

DRGN

Technowizard
Moderator
Joined
Aug 20, 2005
Messages
2,178
Location
Sacramento, CA
The authors field is required for parsing (even if you just leave it blank or as "[??]"). The authors are Dan Salvato, taukhan, UnclePunch

Also, there are normally branches for this at those addresses. Do you know what functions you're overwriting?
 
Last edited:

Heyzeus_18

Smash Cadet
Joined
Aug 16, 2017
Messages
60
Location
Massachusetts, United States
The authors field is required for parsing. The authors are Dan Salvato, taukhan, UnclePunch

Also, there are normally branches for this at those addresses. Do you know what functions you're overwriting?
i think i messed up somewhere because it didnt work... idk where i went wrong (im not experinced in melee modding)
 
Last edited:

DRGN

Technowizard
Moderator
Joined
Aug 20, 2005
Messages
2,178
Location
Sacramento, CA
It's formatted incorrectly. For each address that you had set to make a change to the game/DOL, you had static overwrites (i.e. replacing x bytes with x new bytes). So it probably overwrote vanilla functions that the game still needed. What you wanted was to inject each piece of code, which means to have game execution leave a place in the original game code and branch to a new place (where the custom code resides), and then once it's done there, game execution branches back to the original location (+4 bytes, so you're not going back to the original branch instruction and entering an infinite loop).

Try this; should work for all game versions:

Code:
    -==-


Universal Controller Fix v0.73
About: http://www.20xx.me/ucf.html
[Dan Salvato, taukhan, UnclePunch ]
Revision ---- DOL Offset ---- Hex to Replace ---------- ASM Code -
NTSC 1.02 --- 0x800C9A44 ---- D01F002C -> Branch

A09F03E8 2C044000
40820100 808DAEB4
C03F0620 C05F2344
EC2100B2 C044003C
FC011040 4C411382
408200E0 88BF0670
2C050002 408000D4
889F221F 54840739
41A20008 480000C4
3C80804C 60841F78
88A40001 98A1FFF8
4800003C 38A5FFFF
2C050000 40800008
38A50005 3C808046
6084B108 1CA50030
7C842A14 88BF000C
1CA5000C 7C842A14
88A40002 7CA50774
4E800020 38A5FFFE
4BFFFFC5 90A1FFF4
88A1FFF8 4BFFFFB9
8081FFF4 7CA42850
7CA529D6 2C0515F9
40810050 38000001
901F2358 901F2340
889F0007 2C04000A
40A20038 80830010
8084002C 80841ECC
D0040018 80A40018
3D803F80 7C056000
41820010 38A00080
98A40006 4800000C
38A0007F 98A40006
D01F002C 00000000

------------- 0x800998A4 ---- 8083002C -> Branch

8063002C C023063C
C0050314 FC010040
408100D4 3C8042A0
9081FFF4 3C803727
9081FFF8 3C804330
9081FFE4 C0030620
38000000 FC000210
C021FFF4 EC000072
C021FFF8 EC000828
FC00001E D801FFEC
8081FFF0 38840002
6C848000 9081FFE8
C801FFE4 C8228B90
EC000828 C021FFF4
EC000824 2C000000
40820014 38000001
D001FFE0 C0030624
4BFFFFAC C021FFE0
EC210072 EC000032
EC00082A C0228954
FC000840 4C411382
4082003C 88830670
2C040003 40810030
C005002C FC000050
C0230624 FC000840
4080001C 8061001C
38630008 83E10014
38210018 7C6803A6
4E800020 7FC3F378
8083002C 00000000

------------- 0x802662D0 ---- 38980000 -> Branch

9421FFBC BE810008
7C0802A6 90010040
38600000 38800000
3DC0803A 61CE6754
7DC903A6 4E800421
7C7F1B78 4800005D
7FC802A6 7FE3FB78
C03E0000 C05E0004
48000059 7C8802A6
3DC0803A 61CE6B98
7DC903A6 4E800421
807F005C 3C80FFFF
6084FF0E 90830006
38800001 989F0049
38800001 989F004A
C03E0008 D03F0024
D03F0028 48000024
4E800021 42820000
C40F4000 3D3851EC
4E800021 55434620
76302E37 33000000
80010040 7C0803A6
BA810008 38210044
38980000 00000000

NTSC 1.01 --- 0x800C97D0 ---- D01F002C -> Branch

A09F03E8 2C044000
40820100 808DAEB4
C03F0620 C05F2344
EC2100B2 C044003C
FC011040 4C411382
408200E0 88BF0670
2C050002 408000D4
889F221F 54840739
41A20008 480000C4
3C80804C 60841258
88A40001 98A1FFF8
4800003C 38A5FFFF
2C050000 40800008
38A50005 3C808046
6084A428 1CA50030
7C842A14 88BF000C
1CA5000C 7C842A14
88A40002 7CA50774
4E800020 38A5FFFE
4BFFFFC5 90A1FFF4
88A1FFF8 4BFFFFB9
8081FFF4 7CA42850
7CA529D6 2C0515F9
40810050 38000001
901F2358 901F2340
889F0007 2C04000A
40A20038 80830010
8084002C 80841ECC
D0040018 80A40018
3D803F80 7C056000
41820010 38A00080
98A40006 4800000C
38A0007F 98A40006
D01F002C 00000000

------------- 0x800996E0 ---- 8083002C -> Branch

8063002C C023063C
C0050314 FC010040
408100D4 3C8042A0
9081FFF4 3C803727
9081FFF8 3C804330
9081FFE4 C0030620
38000000 FC000210
C021FFF4 EC000072
C021FFF8 EC000828
FC00001E D801FFEC
8081FFF0 38840002
6C848000 9081FFE8
C801FFE4 C8228B88
EC000828 C021FFF4
EC000824 2C000000
40820014 38000001
D001FFE0 C0030624
4BFFFFAC C021FFE0
EC210072 EC000032
EC00082A C022894C
FC000840 4C411382
4082003C 88830670
2C040003 40810030
C005002C FC000050
C0230624 FC000840
4080001C 8061001C
38630008 83E10014
38210018 7C6803A6
4E800020 7FC3F378
8083002C 00000000

------------- 0x80265B34 ---- 38980000 -> Branch

9421FFBC BE810008
7C0802A6 90010040
38600000 38800000
3DC0803A 61CE5A74
7DC903A6 4E800421
7C7F1B78 4800005D
7FC802A6 7FE3FB78
C03E0000 C05E0004
48000059 7C8802A6
3DC0803A 61CE5EB8
7DC903A6 4E800421
807F005C 3C80FFFF
6084FF0E 90830006
38800001 989F0049
38800001 989F004A
C03E0008 D03F0024
D03F0028 48000024
4E800021 42820000
C40F4000 3D3851EC
4E800021 55434620
76302E37 33000000
80010040 7C0803A6
BA810008 38210044
38980000 00000000

NTSC 1.00 --- 0x800C968C ---- D01F002C -> Branch

A09F03E8 2C044000
40820100 808DAEB4
C03F0620 C05F2344
EC2100B2 C044003C
FC011040 4C411382
408200E0 88BF0670
2C050002 408000D4
889F221F 54840739
41A20008 480000C4
3C80804B 6084FDF8
88A40001 98A1FFF8
4800003C 38A5FFFF
2C050000 40800008
38A50005 3C808046
60849140 1CA50030
7C842A14 88BF000C
1CA5000C 7C842A14
88A40002 7CA50774
4E800020 38A5FFFE
4BFFFFC5 90A1FFF4
88A1FFF8 4BFFFFB9
8081FFF4 7CA42850
7CA529D6 2C0515F9
40810050 38000001
901F2358 901F2340
889F0007 2C04000A
40A20038 80830010
8084002C 80841ECC
D0040018 80A40018
3D803F80 7C056000
41820010 38A00080
98A40006 4800000C
38A0007F 98A40006
D01F002C 00000000

------------- 0x800995F8 ---- 8083002C -> Branch

8063002C C023063C
C0050314 FC010040
408100D4 3C8042A0
9081FFF4 3C803727
9081FFF8 3C804330
9081FFE4 C0030620
38000000 FC000210
C021FFF4 EC000072
C021FFF8 EC000828
FC00001E D801FFEC
8081FFF0 38840002
6C848000 9081FFE8
C801FFE4 C8228B88
EC000828 C021FFF4
EC000824 2C000000
40820014 38000001
D001FFE0 C0030624
4BFFFFAC C021FFE0
EC210072 EC000032
EC00082A C022894C
FC000840 4C411382
4082003C 88830670
2C040003 40810030
C005002C FC000050
C0230624 FC000840
4080001C 8061001C
38630008 83E10014
38210018 7C6803A6
4E800020 7FC3F378
8083002C 00000000

------------- 0x80264FB8 ---- 38980000 -> Branch

9421FFBC BE810008
7C0802A6 90010040
38600000 38800000
3DC0803A 61CE4890
7DC903A6 4E800421
7C7F1B78 4800005D
7FC802A6 7FE3FB78
C03E0000 C05E0004
48000059 7C8802A6
3DC0803A 61CE4CD4
7DC903A6 4E800421
807F005C 3C80FFFF
6084FF0E 90830006
38800001 989F0049
38800001 989F004A
C03E0008 D03F0024
D03F0028 48000024
4E800021 42820000
C40F4000 3D3851EC
4E800021 55434620
76302E37 33000000
80010040 7C0803A6
BA810008 38210044
38980000 00000000

PAL 1.00 ---- 0x800CA1E8 ---- D01F002C -> Branch

A09F03E8 2C044000
40820100 808DB0F4
C03F0620 C05F2344
EC2100B2 C044003C
FC011040 4C411382
408200E0 88BF0670
2C050002 408000D4
889F221F 548407BD
41A20008 480000C4
3C80804B 60842FF8
88A40001 98A1FFF8
4800003C 38A5FFFF
2C050000 40800008
38A50005 3C808045
6084BF10 1CA50030
7C842A14 88BF000C
1CA5000C 7C842A14
88A40002 7CA50774
4E800020 38A5FFFE
4BFFFFC5 90A1FFF4
88A1FFF8 4BFFFFB9
8081FFF4 7CA42850
7CA529D6 2C0515F9
40810050 38000001
901F2358 901F2340
889F0007 2C04000A
40A20038 80830010
8084002C 80841ECC
D0040018 80A40018
3D803F80 7C056000
41820010 38A00080
98A40006 4800000C
38A0007F 98A40006
D01F002C 00000000

------------- 0x80099F5C ---- 8083002C -> Branch

8063002C C023063C
C0050314 FC010040
408100D4 3C8042A0
9081FFF4 3C803727
9081FFF8 3C804330
9081FFE4 C0030620
38000000 FC000210
C021FFF4 EC000072
C021FFF8 EC000828
FC00001E D801FFEC
8081FFF0 38840002
6C848000 9081FFE8
C801FFE4 C82280A0
EC000828 C021FFF4
EC000824 2C000000
40820014 38000001
D001FFE0 C0030624
4BFFFFAC C021FFE0
EC210072 EC000032
EC00082A C022894C
FC000840 4C411382
4082003C 88830670
2C040003 40810030
C005002C FC000050
C0230624 FC000840
4080001C 8061001C
38630008 83E10014
38210018 7C6803A6
4E800020 7FC3F378
8083002C 00000000

------------- 0x802669EC ---- 38980000 -> Branch

9421FFBC BE810008
7C0802A6 90010040
38600000 38800000
3DC0803A 61CE6664
7DC903A6 4E800421
7C7F1B78 4800005D
7FC802A6 7FE3FB78
C03E0000 C05E0004
48000059 7C8802A6
3DC0803A 61CE6B54
7DC903A6 4E800421
807F005C 3C80FFFF
6084FF0E 90830006
38800001 989F0049
38800001 989F004A
C03E0008 D03F0024
D03F0028 48000024
4E800021 42820000
C40F4000 3D3851EC
4E800021 55434620
76302E37 33000000
80010040 7C0803A6
BA810008 38210044
38980000 00000000
 

Heyzeus_18

Smash Cadet
Joined
Aug 16, 2017
Messages
60
Location
Massachusetts, United States
It's formatted incorrectly. For each address that you had set to make a change to the game/DOL, you had static overwrites (i.e. replacing x bytes with x new bytes). So it probably overwrote vanilla functions that the game still needed. What you wanted was to inject each piece of code, which means to have game execution leave a place in the original game code and branch to a new place (where the custom code resides), and then once it's done there, game execution branches back to the original location (+4 bytes, so you're not going back to the original branch instruction and entering an infinite loop).

Try this; should work for all game versions:

Code:
    -==-


Universal Controller Fix v0.73
About: http://www.20xx.me/ucf.html
[Dan Salvato, taukhan, UnclePunch ]
Revision ---- DOL Offset ---- Hex to Replace ---------- ASM Code -
NTSC 1.02 --- 0x800C9A44 ---- D01F002C -> Branch

A09F03E8 2C044000
40820100 808DAEB4
C03F0620 C05F2344
EC2100B2 C044003C
FC011040 4C411382
408200E0 88BF0670
2C050002 408000D4
889F221F 54840739
41A20008 480000C4
3C80804C 60841F78
88A40001 98A1FFF8
4800003C 38A5FFFF
2C050000 40800008
38A50005 3C808046
6084B108 1CA50030
7C842A14 88BF000C
1CA5000C 7C842A14
88A40002 7CA50774
4E800020 38A5FFFE
4BFFFFC5 90A1FFF4
88A1FFF8 4BFFFFB9
8081FFF4 7CA42850
7CA529D6 2C0515F9
40810050 38000001
901F2358 901F2340
889F0007 2C04000A
40A20038 80830010
8084002C 80841ECC
D0040018 80A40018
3D803F80 7C056000
41820010 38A00080
98A40006 4800000C
38A0007F 98A40006
D01F002C 00000000

------------- 0x800998A4 ---- 8083002C -> Branch

8063002C C023063C
C0050314 FC010040
408100D4 3C8042A0
9081FFF4 3C803727
9081FFF8 3C804330
9081FFE4 C0030620
38000000 FC000210
C021FFF4 EC000072
C021FFF8 EC000828
FC00001E D801FFEC
8081FFF0 38840002
6C848000 9081FFE8
C801FFE4 C8228B90
EC000828 C021FFF4
EC000824 2C000000
40820014 38000001
D001FFE0 C0030624
4BFFFFAC C021FFE0
EC210072 EC000032
EC00082A C0228954
FC000840 4C411382
4082003C 88830670
2C040003 40810030
C005002C FC000050
C0230624 FC000840
4080001C 8061001C
38630008 83E10014
38210018 7C6803A6
4E800020 7FC3F378
8083002C 00000000

------------- 0x802662D0 ---- 38980000 -> Branch

9421FFBC BE810008
7C0802A6 90010040
38600000 38800000
3DC0803A 61CE6754
7DC903A6 4E800421
7C7F1B78 4800005D
7FC802A6 7FE3FB78
C03E0000 C05E0004
48000059 7C8802A6
3DC0803A 61CE6B98
7DC903A6 4E800421
807F005C 3C80FFFF
6084FF0E 90830006
38800001 989F0049
38800001 989F004A
C03E0008 D03F0024
D03F0028 48000024
4E800021 42820000
C40F4000 3D3851EC
4E800021 55434620
76302E37 33000000
80010040 7C0803A6
BA810008 38210044
38980000 00000000

NTSC 1.01 --- 0x800C97D0 ---- D01F002C -> Branch

A09F03E8 2C044000
40820100 808DAEB4
C03F0620 C05F2344
EC2100B2 C044003C
FC011040 4C411382
408200E0 88BF0670
2C050002 408000D4
889F221F 54840739
41A20008 480000C4
3C80804C 60841258
88A40001 98A1FFF8
4800003C 38A5FFFF
2C050000 40800008
38A50005 3C808046
6084A428 1CA50030
7C842A14 88BF000C
1CA5000C 7C842A14
88A40002 7CA50774
4E800020 38A5FFFE
4BFFFFC5 90A1FFF4
88A1FFF8 4BFFFFB9
8081FFF4 7CA42850
7CA529D6 2C0515F9
40810050 38000001
901F2358 901F2340
889F0007 2C04000A
40A20038 80830010
8084002C 80841ECC
D0040018 80A40018
3D803F80 7C056000
41820010 38A00080
98A40006 4800000C
38A0007F 98A40006
D01F002C 00000000

------------- 0x800996E0 ---- 8083002C -> Branch

8063002C C023063C
C0050314 FC010040
408100D4 3C8042A0
9081FFF4 3C803727
9081FFF8 3C804330
9081FFE4 C0030620
38000000 FC000210
C021FFF4 EC000072
C021FFF8 EC000828
FC00001E D801FFEC
8081FFF0 38840002
6C848000 9081FFE8
C801FFE4 C8228B88
EC000828 C021FFF4
EC000824 2C000000
40820014 38000001
D001FFE0 C0030624
4BFFFFAC C021FFE0
EC210072 EC000032
EC00082A C022894C
FC000840 4C411382
4082003C 88830670
2C040003 40810030
C005002C FC000050
C0230624 FC000840
4080001C 8061001C
38630008 83E10014
38210018 7C6803A6
4E800020 7FC3F378
8083002C 00000000

------------- 0x80265B34 ---- 38980000 -> Branch

9421FFBC BE810008
7C0802A6 90010040
38600000 38800000
3DC0803A 61CE5A74
7DC903A6 4E800421
7C7F1B78 4800005D
7FC802A6 7FE3FB78
C03E0000 C05E0004
48000059 7C8802A6
3DC0803A 61CE5EB8
7DC903A6 4E800421
807F005C 3C80FFFF
6084FF0E 90830006
38800001 989F0049
38800001 989F004A
C03E0008 D03F0024
D03F0028 48000024
4E800021 42820000
C40F4000 3D3851EC
4E800021 55434620
76302E37 33000000
80010040 7C0803A6
BA810008 38210044
38980000 00000000

NTSC 1.00 --- 0x800C968C ---- D01F002C -> Branch

A09F03E8 2C044000
40820100 808DAEB4
C03F0620 C05F2344
EC2100B2 C044003C
FC011040 4C411382
408200E0 88BF0670
2C050002 408000D4
889F221F 54840739
41A20008 480000C4
3C80804B 6084FDF8
88A40001 98A1FFF8
4800003C 38A5FFFF
2C050000 40800008
38A50005 3C808046
60849140 1CA50030
7C842A14 88BF000C
1CA5000C 7C842A14
88A40002 7CA50774
4E800020 38A5FFFE
4BFFFFC5 90A1FFF4
88A1FFF8 4BFFFFB9
8081FFF4 7CA42850
7CA529D6 2C0515F9
40810050 38000001
901F2358 901F2340
889F0007 2C04000A
40A20038 80830010
8084002C 80841ECC
D0040018 80A40018
3D803F80 7C056000
41820010 38A00080
98A40006 4800000C
38A0007F 98A40006
D01F002C 00000000

------------- 0x800995F8 ---- 8083002C -> Branch

8063002C C023063C
C0050314 FC010040
408100D4 3C8042A0
9081FFF4 3C803727
9081FFF8 3C804330
9081FFE4 C0030620
38000000 FC000210
C021FFF4 EC000072
C021FFF8 EC000828
FC00001E D801FFEC
8081FFF0 38840002
6C848000 9081FFE8
C801FFE4 C8228B88
EC000828 C021FFF4
EC000824 2C000000
40820014 38000001
D001FFE0 C0030624
4BFFFFAC C021FFE0
EC210072 EC000032
EC00082A C022894C
FC000840 4C411382
4082003C 88830670
2C040003 40810030
C005002C FC000050
C0230624 FC000840
4080001C 8061001C
38630008 83E10014
38210018 7C6803A6
4E800020 7FC3F378
8083002C 00000000

------------- 0x80264FB8 ---- 38980000 -> Branch

9421FFBC BE810008
7C0802A6 90010040
38600000 38800000
3DC0803A 61CE4890
7DC903A6 4E800421
7C7F1B78 4800005D
7FC802A6 7FE3FB78
C03E0000 C05E0004
48000059 7C8802A6
3DC0803A 61CE4CD4
7DC903A6 4E800421
807F005C 3C80FFFF
6084FF0E 90830006
38800001 989F0049
38800001 989F004A
C03E0008 D03F0024
D03F0028 48000024
4E800021 42820000
C40F4000 3D3851EC
4E800021 55434620
76302E37 33000000
80010040 7C0803A6
BA810008 38210044
38980000 00000000

PAL 1.00 ---- 0x800CA1E8 ---- D01F002C -> Branch

A09F03E8 2C044000
40820100 808DB0F4
C03F0620 C05F2344
EC2100B2 C044003C
FC011040 4C411382
408200E0 88BF0670
2C050002 408000D4
889F221F 548407BD
41A20008 480000C4
3C80804B 60842FF8
88A40001 98A1FFF8
4800003C 38A5FFFF
2C050000 40800008
38A50005 3C808045
6084BF10 1CA50030
7C842A14 88BF000C
1CA5000C 7C842A14
88A40002 7CA50774
4E800020 38A5FFFE
4BFFFFC5 90A1FFF4
88A1FFF8 4BFFFFB9
8081FFF4 7CA42850
7CA529D6 2C0515F9
40810050 38000001
901F2358 901F2340
889F0007 2C04000A
40A20038 80830010
8084002C 80841ECC
D0040018 80A40018
3D803F80 7C056000
41820010 38A00080
98A40006 4800000C
38A0007F 98A40006
D01F002C 00000000

------------- 0x80099F5C ---- 8083002C -> Branch

8063002C C023063C
C0050314 FC010040
408100D4 3C8042A0
9081FFF4 3C803727
9081FFF8 3C804330
9081FFE4 C0030620
38000000 FC000210
C021FFF4 EC000072
C021FFF8 EC000828
FC00001E D801FFEC
8081FFF0 38840002
6C848000 9081FFE8
C801FFE4 C82280A0
EC000828 C021FFF4
EC000824 2C000000
40820014 38000001
D001FFE0 C0030624
4BFFFFAC C021FFE0
EC210072 EC000032
EC00082A C022894C
FC000840 4C411382
4082003C 88830670
2C040003 40810030
C005002C FC000050
C0230624 FC000840
4080001C 8061001C
38630008 83E10014
38210018 7C6803A6
4E800020 7FC3F378
8083002C 00000000

------------- 0x802669EC ---- 38980000 -> Branch

9421FFBC BE810008
7C0802A6 90010040
38600000 38800000
3DC0803A 61CE6664
7DC903A6 4E800421
7C7F1B78 4800005D
7FC802A6 7FE3FB78
C03E0000 C05E0004
48000059 7C8802A6
3DC0803A 61CE6B54
7DC903A6 4E800421
807F005C 3C80FFFF
6084FF0E 90830006
38800001 989F0049
38800001 989F004A
C03E0008 D03F0024
D03F0028 48000024
4E800021 42820000
C40F4000 3D3851EC
4E800021 55434620
76302E37 33000000
80010040 7C0803A6
BA810008 38210044
38980000 00000000
Thats good to know! how can i tell if it should replace the origional code or not?
 

DRGN

Technowizard
Moderator
Joined
Aug 20, 2005
Messages
2,178
Location
Sacramento, CA
You would have to understand what the code does, and know whether anything else in the game uses it.

To do that, you'd usually need to be able to follow assembly. From there, the Community Symbol Map can help, which identifies functions, or at least gives a hint of what each one does. One could also put a breakpoint in Debug Dolphin to see if the code is executed at some point, and try to follow it back through its calling functions. But you can't rely on a breakpoint to definitively know if the code is used, because it might only ever be executed in very specific cases. So really, the only way to know for sure is to have a broader understanding of the game's code and those specific functions. If you're unsure, it's safer to use an injection (though a bit less ideal, since you're using up custom code space). I recommend browsing the resources in this thread to learn more.
 

Heyzeus_18

Smash Cadet
Joined
Aug 16, 2017
Messages
60
Location
Massachusetts, United States
You would have to understand what the code does, and know whether anything else in the game uses it.

To do that, you'd usually need to be able to follow assembly. From there, the Community Symbol Map can help, which identifies functions, or at least gives a hint of what each one does. One could also put a breakpoint in Debug Dolphin to see if the code is executed at some point, and try to follow it back through its calling functions. But you can't rely on a breakpoint to definitively know if the code is used, because it might only ever be executed in very specific cases. So really, the only way to know for sure is to have a broader understanding of the game's code and those specific functions. If you're unsure, it's safer to use an injection (though a bit less ideal, since you're using up custom code space). I recommend browsing the resources in this thread to learn more.
is there a place i can learn asm?
 

DRGN

Technowizard
Moderator
Joined
Aug 20, 2005
Messages
2,178
Location
Sacramento, CA
What's in the resources thread I linked to above is all I know of specifically. And of course, there's the great Google.
 
Top Bottom