Mario Kart Wii Gecko Codes, Cheats, & Hacks
Racer Size Modifier [JoshuaMK] - Printable Version

+- Mario Kart Wii Gecko Codes, Cheats, & Hacks (https://mariokartwii.com)
+-- Forum: Cheat Codes (https://mariokartwii.com/forumdisplay.php?fid=51)
+--- Forum: Visual & Sound Effects (https://mariokartwii.com/forumdisplay.php?fid=56)
+--- Thread: Racer Size Modifier [JoshuaMK] (/showthread.php?tid=1222)



Racer Size Modifier [JoshuaMK] - JoshuaMK - 08-15-2019

Racer Size Modifier [JoshuaMK]

This code lets you freely change the size of all characters during a race, at any point in time.

A huge step up from davidevgen's code, which can only be modified when a race is loading. This code also allows higher values than his without causing issues.

(NTSC-U)
C257ADC4 00000008
80BF0260 807F0160
3D808034 618CXXXX
A18C0000 718BYYYY
2C0BYYYY 41820018
718BZZZZ 2C0BZZZZ
40A20010 3C63FFFF
48000008 3C630001
907F0160 00000000

(PAL)
C2581628 00000008
80BF0260 807F0160
3D808034 618CXXXX
A18C0000 718BYYYY
2C0BYYYY 41820018
718BZZZZ 2C0BZZZZ
40A20010 3C63FFFF
48000008 3C630001
907F0160 00000000

(NTSC-J)
C2580FA8 00000008
80BF0260 807F0160
3D808034 618CXXXX
A18C0000 718BYYYY
2C0BYYYY 41820018
718BZZZZ 2C0BZZZZ
40A20010 3C63FFFF
48000008 3C630001
907F0160 00000000

(NTSC-K)
C256F680 00000008
80BF0260 807F0160
3D808033 618CXXXX
A18C0000 718BYYYY
2C0BYYYY 41820018
718BZZZZ 2C0BZZZZ
40A20010 3C63FFFF
48000008 3C630001
907F0160 00000000




Guide

Note: This code makes use of user input. See this guide for reference on filling in values: https://mkwii.com/showthread.php?tid=44

XXXX = Controller Address
YYYY = Grow Button
ZZZZ = Shrink Button



#~~~~~~~#
#Source ASM#
#~~~~~~~#

.set region, '' #Must set region value, or else source will not compile

.if (region == 'E' || region == 'e') # RMCE
.macro controller_address
lis r12, 0x8034
.endm
.elseif (region == 'P' || region == 'p') # RMCP
.macro controller_address
lis r12, 0x8034
.endm
.elseif (region == 'J' || region == 'j') # RMCJ
.macro controller_address
lis r12, 0x8034
.endm
.elseif (region == 'K' || region == 'k') # RMCK
.macro controller_address
lis r12, 0x8033
.endm
.else # Invalid Region
.abort
.endif

#~~~~~~~~~~~~#
#Inject > 8057ADC4#
#~~~~~~~~~~~~#

lwz r5, 0x0260 (r31)
lwz r3, 0x0160 (r31)
controller_address
ori r12, r12, 0x3E80
lhz r12, 0 (r12)
andi. r11, r12, 0x0082
cmpwi r11, 0x0082
beq- grow_xyz
andi. r11, r12, 0x0081
cmpwi r11, 0x0081
bne+ the_end
subis r3, r3, 1
b the_end
grow_xyz:
addis r3, r3, 1
the_end:
stw r3, 0x0160 (r31)



Code Creator: JoshuaMK