-------------------------------BiNary's Jokering Tutorial----------------------
Credit:BiNary
Site:my site which is the tk one. I removed because i believe in following the advertising rules
SKILL: must know how to subroutine first
A.
BNE ---Branching.. BNE stands for branching not equal
usually in templates it would say $jump to jr ra
but pay attention to what it means it says
branch UN equal to jr ra
therefore u need to make it not equal by jumping it to the line right above jr ra
in my example the jr ra will end up being 09abffc8 and the line right above it is 09abffc4
so when typing out the bne it will be
bne t2 t3 $09abffc4
B.
Nops--- just skip these lines when jokering.
and when writing out ur code u can skip these as well
C.
Controller address
--This time we are introducing a controller address which is 0127e1e4 for ftb2
we need to implement the real address and the negative rule
C.1
Real address of controller address
0127e1e4
+
08800000
=
09a7e1e4
C.2
Negative rule
then the negative rule
this is when the last four of the address of any code is bigger than 7F7c and u need to add
0001 to the first 4 of the address
so in the real address of the controller address
09a7e1e4
00007F7c
= bigger therefore + 0001 soo
09a7e1e4
+
00010000
=
09a8e1e4
this also applies to any address that u may use
D.
Button Values
0001 select
0008 start
0010 d-up
0020 d-right
0040 d-down
0080 d-left
0100 left trigger
0200 right trigger
1000 triangle
2000 circle
4000 x
8000 square
E.
The Template
this is the template we are going to use
hook
lui t0 $first 4 of your real address
lui t1 $first 4 of your contoller address
lw t2 $last 4 of controller address(t1)
ori t3 zero $the button value
lui t4 $first 4 of the hex that u want to be on automatically
ori t4 t4 $last 4 of the hex that u want to be on automatically
sw t4 $last 4 of your address(t0)
bne t2 t3 $the full address of the line right before the jr ra *refer to BNE branching*
nop -skip a line
lui t5 $first 4 of the hex that u want to activate when button is pressed
ori t5 t5 $last 4 of the hex that u want to activate when button is pressed
sw t5 $last 4 of ur address(t0)
nop---skip this line
jr ra
Example:
0x00492510 0x20782530 Digit Clan Tags (automatically on)
0x00492510 0x5d73255b Regular Clan Tags (when d-up is pressed)
0x08c92510 ----- real address
---negative rule does not apply so leave it alone
*see negative rule if u dont understand*
----------I'm expecting that you know how to load ur ram and can enter 08800000 as the load adddress
as well as knowing how to get to an address and get ur hook *if u dont read subroutine guide*----
i will start my code at 09abff94
lui t0 $08c9
lui t1 $09a8
lw t2 $e1e4(t1)
ori t3 0 $0010
lui t4 $2078
ori t4 t4 $2530
sw t4 $2510(t0)
bne t2 t3 $09abffc4
nop
lui t5 $5d73
ori t5 t5 $255b
sw t5 $2510(t0)
nop
jr ra
end product scroll below
#Digit Clan tag jokered to D-up
;D-up to see the clan tags
0x0000004c 0x0a6affe5
0x012bff94 0x3c0808c9
0x012bff98 0x3c0909a8
0x012bff9c 0x8d2ae1e4
0x012bffa0 0x340b0010
0x012bffa4 0x3c0c2078
0x012bffa8 0x358c2530
0x012bffac 0xad0c2510
0x012bffb0 0x154b0004
0x012bffb4 0x00000000 <---U can delete this line
0x012bffb8 0x3c0d5d73
0x012bffbc 0x35ad255b
0x012bffc0 0xad0d2510
0x012bffc4 0x00000000 <--U can delete this line
0x012bffc8 0x03e00008
---------The code broken down--------
#Digit Clan tag jokered to D-up
;D-up to see the clan tags
0x0000004c 0x0a6affe5 <--hook that jumps to the first address of routine
0x012bff94 0x3c0808c9 <--lui n 1st 4 of address
0x012bff98 0x3c0909a8 <--lui n 1st 4 of controller address
0x012bff9c 0x8d2ae1e4 <-- lw loads the last 4 of the controller into(t1)
0x012bffa0 0x340b0010 <---button to activate
0x012bffa4 0x3c0c2078 <--lui t4 1st 4 of auto on hex
0x012bffa8 0x358c2530 <--ori t4 of last 4 of auto on hex
0x012bffac 0xad0c2510 <--sw last 4 of ur address(t0)
0x012bffb0 0x154b0004 <--bne to address before jr ra
0x012bffb8 0x3c0d5d73 <--lui t5 1st 4 of hex [ON] by button
0x012bffbc 0x35ad255b <--ori t5 last 4 of hex [ON] by button
0x012bffc0 0xad0d2510 <--sw t5 $last 4 of address(t0)
0x012bffc8 0x03e00008 <--jr ra
Bookmarks