Suspension Length Modifier [JoshuaMK]
#1
Suspension Length Modifier [JoshuaMK]

(NTSC-U)
C2590B08 00000008
3D808034 618CXXXX
A18C0000 83430188
718BYYYY 280BYYYY
41820018 718BZZZZ
280BZZZZ 40820014
3F5AFFFF 48000008
3F5A0001 93430188
C0230188 00000000
04590B14 60000000

(PAL)
C259732C 00000008
3D808034 618CXXXX
A18C0000 83430188
718BYYYY 280BYYYY
41820018 718BZZZZ
280BZZZZ 40820014
3F5AFFFF 48000008
3F5A0001 93430188
C0230188 00000000
04597338 60000000

(NTSC-J)
C2596CAC 00000008
3D808034 618CXXXX
A18C0000 83430188
718BYYYY 280BYYYY
41820018 718BZZZZ
280BZZZZ 40820014
3F5AFFFF 48000008
3F5A0001 93430188
C0230188 00000000
04596CB8 60000000

(NTSC-K)
C2585384 00000008
3D808033 618CXXXX
A18C0000 83430188
718BYYYY 280BYYYY
41820018 718BZZZZ
280BZZZZ 40820014
3F5AFFFF 48000008
3F5A0001 93430188
C0230188 00000000
04585390 60000000



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 Suspension
ZZZZ = Shrink Suspension



#~~~~~~~#
#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 > 80590B08#
#~~~~~~~~~~~#

controller_address
ori r12, r12, 0x3E80
lhz r12, 0 (r12)
lwz r26, 0x0188 (r3)
andi. r11, r12, 0x0082
cmplwi r11, 0x0082
beq lengthen
andi. r11, r12, 0x0081
cmplwi r11, 0x0081
bne the_end
subis r26, r26, 1
b store
lengthen:
addis r26, r26, 1
store:
stw r26, 0x0188 (r3)
the_end:
lfs f1, 0x0188 (r3)

#~~~~~~~~~~~#
#Write > 80590B14#
#~~~~~~~~~~~#

nop



Code Creator: JoshuaMK
Was lucky enough to be one of few to learn proper ASM. Now I'm writing codes that I hope amaze!  Tongue
Reply
#2
This code is cool lol. After increasing the suspension, i started to turn (in auto), now the kart is stuck tilted counter clockwise partially underneath the road lol.

You might want to add a note that the suspension changes take awhile. At first, I thought the code wasn't doing anything.
Reply
#3
I'm just going to increase the speed. I set it to 7000 but I found that too slow. I was going to change it, but I had already made the post so I couldn't change it.
Was lucky enough to be one of few to learn proper ASM. Now I'm writing codes that I hope amaze!  Tongue
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)