Rapid Fire [Vega]
#1
Rapid Fire [Vega]

Unlike other RF codes in the past, this one works with any controller. Just fill in your controller address value (XXXX) in the code. Also the code is gives you the ability of when to initiate the RF and when to not. Thus, to fire your items normally, just use w/e button on your controller that is normally required for Item Usage. The ZZZZ values in the code is the button value you choose to initiate the RF. The RF button cannot be the same button that is used for normal Item Usage.

W values (for PAL code only):
4 = Non-GCN controller (Wheel, chuck, classic)
5 = GCN

XXXX values = Controller Address
ZZZZ values = Button for RF

Thread containing XXXX and ZZZZ values -> https://mkwii.com/showthread.php?tid=44

Important: If filling a ZZZZ value for GCN, used the Wavebird ZZZZ values!

R Value is rate of rapid fire (in frames)
2 = Lowest amount possible (fastest the RF can be)

NOTE: This code makes use of memory addresses 0x80000FCC thru 0x80000FCF. Make sure no other codes you have equipped are using those addresses.

Video - https://www.youtube.com/watch?v=CMU1NX4m804

NTSC-U
C251CE8C 00000007
3D808000 816C0FCC
280B000R 41800020
3D608034 A16BXXXX
716BZZZZ 41A20010
60000004 39600000
916C0FCC B01E002C
60000000 00000000
C0000000 00000003
3D808000 816C0FCC
396B0001 916C0FCC
4E800020 00000000

PAL
C2521300 00000007
3D808000 816C0FCC
280B000R 41800020
3D60803W A16BXXXX
716BZZZZ 41A20010
60000004 39600000
916C0FCC B01E002C
60000000 00000000
C0000000 00000003
3D808000 816C0FCC
396B0001 916C0FCC
4E800020 00000000

NTSC-J
C2520C80 00000007
3D808000 816C0FCC
280B000R 41800020
3D608034 A16BXXXX
716BZZZZ 41A20010
60000004 39600000
916C0FCC B01E002C
60000000 00000000
C0000000 00000003
3D808000 816C0FCC
396B0001 916C0FCC
4E800020 00000000

NTSC-K
C250F324 00000007
3D808000 816C0FCC
280B000R 41800020
3D608033 A16BXXXX
716BZZZZ 41A20010
60000004 39600000
916C0FCC B01E002C
60000000 00000000
C0000000 00000003
3D808000 816C0FCC
396B0001 916C0FCC
4E800020 00000000



Code creator: Vega
Code credits: Seeky (Timed Auto Usage)



Source:
1st ASM (C2)

#NTSC-U = 8051CE8C
#PAL = 80521300
#NTSC-J = 80520C80
#NTSC-K = 8050F324

#Check Frame Count
lis r12, 0x8000
lwz r11, 0x0FCC (r12)
cmplwi r11, 2 #2 used for compilation purposes, adjust this to your needs
blt- default_instruction

#Get Controller Button Halfword
lis r11, 0x8033 #NTSC-K GCN used for compilation purposes, adjust this to your needs
lhz r11, 0x6200 (r11)

#Check if desired button for RF has at least been pressed
andi. r11, r11, 0x0800 #GCN Y button used for compilation purposes, adjust this to your needs
beq+ default_instruction

#RF Button pressed+held, initiate Rapid Fire. Flip Item Usage bit high.
ori r0, r0, 0x0004

#Start cooldown period
li r11, 0
stw r11, 0x0FCC (r12)

#Default Instruction
default_instruction:
sth r0, 0x002C (r30) #Default instruction; Store the word containing Item Usage bit to memory

===

2nd ASM (C0)

lis r12, 0x8000 #Set EVA Upper
lwz r11, 0x0FCC (r12) #Get Frame Count
addi r11, r11, 1 #Increment Frame Count
stw r11, 0x0FCC (r12) #Update Frame Count
Reply


Messages In This Thread
Rapid Fire [Vega] - by Vega - 07-18-2021, 10:34 PM

Forum Jump:


Users browsing this thread: 1 Guest(s)