• 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 D-pad up/down on CSS to toggle rumble (with cursor shake effect)

Joined
Oct 10, 2011
Messages
1,126
Location
Boise, ID
NNID
dansalvato
Relevant blog post:
http://www.20xx.me/blog/toggling-rumble-the-te-way

Code:
Dpad up/down toggles rumble on CSS [Dan Salvato]
C22608D8 00000019
887F0007 2C030000
40820070 7C972378
57800739 40820010
5780077B 40820034
4800009C 7EE3BB78
38800000 38A0000E
38C00000 38ED9950
3D808037 618C8430
7D8903A6 4E800421
38800001 48000008
38800000 7EE3BB78
3D808015 618CED4C
7D8903A6 4E800421
38800001 989F0007
3C80C040 909F0014
C03F0014 C0428E0C
C01F000C EC01002A
D01F000C FC600850
FC030840 41810008
EC6300B2 D07F0014
4180001C C0828258
FC032040 41810010
38800000 909F0014
989F0007 889F0004
60000000 00000000
Pair with the below codes for best results. Causes controller to rumble when a player selects their character, giving a nice indicator for whether or not rumble is on.
Code:
Rumble when character is selected [Dan Salvato]
C2260C3C 00000008
7E639B78 800D8840
7C801A14 88841CC0
2C040000 41820024
38800000 38A0000E
38C00000 38ED9950
3D808037 618C8430
7D8903A6 4E800421
880DB655 00000000
C2260A58 00000008
7E639B78 800D8840
7C801A14 88841CC0
2C040000 41820024
38800000 38A0000E
38C00000 38ED9950
3D808037 618C8430
7D8903A6 4E800421
38000005 00000000
Code:
Ignore Nametag Rumble Setting [Dan Salvato]
04167810 60000000
 
Last edited:

Noc

Smash Journeyman
Joined
Dec 30, 2008
Messages
225
Location
Galveston, TX
I just tested this on console and it works! One thing I noticed is, just like the 20XX change rumble settings from CSS code, it does not change the rumble setting associated with previously made tags. It's not a big deal though since you can still tell if rumble is truly on by the little rumble that occurs when advancing to the stage select screen and it's likely rare for someone to want to change the rumble setting associated with a tag.
 
Joined
Oct 10, 2011
Messages
1,126
Location
Boise, ID
NNID
dansalvato
I just tested this on console and it works! One thing I noticed is, just like the 20XX change rumble settings from CSS code, it does not change the rumble setting associated with previously made tags. It's not a big deal though since you can still tell if rumble is truly on by the little rumble that occurs when advancing to the stage select screen and it's likely rare for someone to want to change the rumble setting associated with a tag.
Thank you for reminding me of this scenario.

Code:
Ignore Nametag Rumble Setting [Dan Salvato]
04167810 60000000
 

Aerros11

Smash Journeyman
Joined
Sep 5, 2009
Messages
284
How does one inject this C2 code into DOL instead of gecko? o__o'|l
 

Achilles1515

Smash Master
Joined
Jun 18, 2007
Messages
3,211
Location
Cincinnati / Columbus OH
Was it really that easy to find XD?
Thank you~
Or use DRGNs DOL Manager program.

This is a cool code, Dan. The shake effect is really creative.
Fwiw, the D-Pad Up/Down to change rumble settings was just a code by Sham Rock and is not used in the 20XX Hack Pack (I was already using those button toggles as well as using the CSP color changes for other things).
 

Aerros11

Smash Journeyman
Joined
Sep 5, 2009
Messages
284
Or use DRGNs DOL Manager program.

This is a cool code, Dan. The shake effect is really creative.
Fwiw, the D-Pad Up/Down to change rumble settings was just a code by Sham Rock and is not used in the 20XX Hack Pack (I was already using those button toggles as well as using the CSP color changes for other things).
Oh DRGN said in his spoiler section
DRGN said:
not all Gecko codes will work (typically 02 & 04 type codes seem to work, but C2 codes fail).
 

Achilles1515

Smash Master
Joined
Jun 18, 2007
Messages
3,211
Location
Cincinnati / Columbus OH
Oh DRGN said in his spoiler section
It definitely works, just don't use the Gecko codes portion of the program.

Use the add new code function in the tools tab and it will be an inject code. The first line of Dans gecko code is
C22608D8

This means the RAM address it is being hooked into is 802608D8.

Use that RAM address as the inject address. Copy the entire code except for the first two lines

C22608D8 00000019

And then change the very last line from 00000000 to 48000000.

Put that in his program as the code to inject. Apply it to your DOL. Done.
 
Last edited:

DRGN

Technowizard
Moderator
Joined
Aug 20, 2005
Messages
2,179
Location
Sacramento, CA
It definitely works, just don't use the Gecko codes portion of the program.

Use the add new code function in the tools tab and it will be an inject code. The first line of Dans gecko code is
C22608D8

This means the RAM address it is being hooked into is 802608D8.

Use that RAM address as the inject address. Copy the entire code except for the first two lines

C22608D8 00000019

And then change the very last line from 00000000 to 48000000.

Put that in his program as the code to inject. Apply it to your DOL. Done.
You don't actually have to change the last line; you can leave it as 00000000 (changing them to 48000000 for any you've already done won't hurt anything or make any difference though).

This definitely saved a few headaches.
Was this explained anywhere D:?

That was so easy.
OMG @__@ Thank you again~
Yeah. A little buried though. It's in the second post, in the "Converting Gecko Codes" spoiler. But thanks for pointing this out. I'll add a note where I first mention Gecko codes in the first post that they can be converted and that that little guide is down there.
 
Last edited:

Aerros11

Smash Journeyman
Joined
Sep 5, 2009
Messages
284
DRGN DRGN , yah I found it right after Achilles told me how to do it. It was a little buried but all in all easy to find. And your thread should've been the first place I looked. Even tatatat0 and myougi ended up messaging me with questions on how I added geckos to dol.

Your program is awesome btw~
(b'--')b
 
Last edited:

jacob91

Smash Cadet
Joined
Feb 4, 2005
Messages
39
Hi, I posted this a couple places elsewhere, and have gone a few days without any help or feedback.

I'm trying to make a simple hack and am having trouble getting the syntax correct or am making some mistake in getting the flash white on successful L-cancel to function.

For reference, I edited the injection codes text file with the following code added:

-==-



Flash White on successful L-cancel
- Character flashes white upon successful L-Cancel
[Geuse]
Version -- DOL Offset ------ Hex to Replace -------
1.02 ------ 0x8A280 ----- C00600E8 -> 4BF76F60
----------- 0xBCD28 ----- 387F0488 -> 4BF444C8

C00600E8 39E000D4
99E30564 48089098
387F0488 89FE0564
2C0F00D4 41820008
480BBB2C 39E00091
99FE0564 3DE0C200
91FE0518 91FE051C
91FE0520 91FE0524
3DE00000 91FE0528
91FE052C 91FE0530
3DE0C280 91FE0534
3DE0800C 61EF0150
7DE903A6 4E800420
480BBB08

-==-
Unfortunately, the above didn't seem to work at all. Can anyone help me figure out how it should be written into the text file to properly function when loaded?

I've looked everywhere I can for answers and I would really appreciate it if someone more familiar with this subject could help me to figure out what I need to do.
 

Punkline

Dr. Frankenstack
Joined
May 15, 2015
Messages
423
tufferugli tufferugli requested some help porting this to PAL, so I’ve commented the ASM, made some ports, and converted it all into DOL mods for MCM.

To make it easier to port, 2 floating points originally loaded from rtoc were changed to instead be built from immediates placed in the stack redzone. One of the constants "0.8" has been approximated as "0.797". There should otherwise be no differences.

Let me know if there are any problems with the ports:

 
Last edited:

tufferugli

Smash Rookie
Joined
Oct 14, 2018
Messages
15
tufferugli tufferugli requested some help porting this to PAL, so I’ve commented the ASM, made some ports, and converted it all into DOL mods for MCM.

To make it easier to port, 2 floating points originally loaded from rtoc were changed to instead be built from immediates placed in the stack redzone. One of the constants "0.8" has been approximated as "0.797". There should otherwise be no differences.

Let me know if there are any problems with the ports:

it now behaves like the ntsc one, thank you!
 
Top Bottom