Pages: 123 »
Posted on 07-27-14, 09:11 pm (rev. 7 by  skawo on 08-01-14, 11:45 am)


Karma: 19757
Posts: 7/1100
Since: 04-02-13
Decompress overlays 9_0 and 9_9 using some old revision of NSMBe (as the newest one at the time of the posting can't do that).
Open the rom in a hex editor
Use the search function to find the values on the left. Replace them with the values on the right.

Disable other main menu buttons (this means you can only get into the File Select screen by pressing A)

5C009F150010D015011081120010C015 -> 5C009F150010D015011081120000A0E3
040093E5520AFEEB -> 040093E50000A0E1


Disable titlescreen cutscene (timer is at x21C7AFC, x200A4DC is where the jump to "Check if B pressed" is done)

2183E00BB220D2E1 -> 2183E00B0000A0E1

This is for the US rom.

EDIT: Updated the titlescreen cutscene skip, because the old one broke the opening scene.
This makes the game think you're constantly pressing B on the titlescreen.
Posted on 07-27-14, 09:18 pm
Super Mario
( ͡° ͜ʖ ͡°)

Karma: 10010
Posts: 4093/4457
Since: 06-08-11
Cool!

Maybe you'd want to take a look at NSMBe ASM patch compiler/injector: tutorial How ASM hacks are setup. It makes writing hooks that modify game's functions or add your own code really easy.

Also the address 0x021C7AFC is in the heap, it won't be constant. (Heap starts at 0x021901E0 in US rom)
Posted on 07-27-14, 09:20 pm


Karma: 19757
Posts: 8/1100
Since: 04-02-13
Indeed. It's a timer that increases by 1 each frame and is checked by the game each frame on the titlescreen. If it's big enough, the cutscene starts.
I just made it increase by 0.
Posted on 07-27-14, 09:25 pm
Super Mario
( ͡° ͜ʖ ͡°)

Karma: 10010
Posts: 4094/4457
Since: 06-08-11
I mean that the address won't always be constant. It's probably a field in the titlescreen actor class (or another one), which is dynamically allocated. It can get allocated in another place in the heap depending on the order of stuff.

Anyway if you've modified the code that modifies it, it should be good

You may also want to check out the IDA Pro DB in the uploader, it has many stuff already documented.
Posted on 07-27-14, 09:27 pm


Karma: 19757
Posts: 9/1100
Since: 04-02-13
I mean that the address won't always be constant. It's probably a field in the titlescreen actor class (or another one), which is dynamically allocated. It can get allocated in another place in the heap depending on the order of stuff.


Oh, I see. That's indeed possible.
Posted on 07-28-14, 05:08 pm
Red Cheep-cheep
Permanently Banned: Rereged

Karma: 13
Posts: 152/214
Since: 03-04-13
How can I insert this into the ROM?
_________________________
Thanks
~~~Stunt_LP~~~
ASM Hack we're making in the moment:
- Info Block from SMW
It will be shared with the community
Posted on 07-28-14, 05:16 pm


Karma: 19757
Posts: 17/1100
Since: 04-02-13
First decompress all the overlays within the rom, open it in a hex editor like Hex Workshop, press Ctrl+F, paste the code from the left, press find. It should find one instance of it in the rom, change it to what's on the right and save.
Posted on 07-28-14, 05:27 pm
Red Cheep-cheep
Permanently Banned: Rereged

Karma: 13
Posts: 154/214
Since: 03-04-13
I decompressed it but it says that it can't find the code.
_________________________
Thanks
~~~Stunt_LP~~~
ASM Hack we're making in the moment:
- Info Block from SMW
It will be shared with the community
Posted on 07-28-14, 05:30 pm


Karma: 19757
Posts: 18/1100
Since: 04-02-13
I should perhaps mention that the latest NSMBe cannot decompress overlays.
Posted on 07-28-14, 05:32 pm
Roy Koopa


Karma: 4011
Posts: 2621/2722
Since: 06-26-11
Posted by skawo
I should perhaps mention that the latest NSMBe cannot decompress overlays.


Actually dirbaio added a button for it once, after  Freeze and I requested it. No idea why he removed it.
_________________________
See a lots of creative DS Hacking here
If you want to support me, you might check out my Patreon Page : )
Posted on 07-28-14, 05:35 pm


Karma: 19757
Posts: 19/1100
Since: 04-02-13
The button to do it one overlay at a time is there, but it just doesn't do anything.
Posted on 07-28-14, 05:54 pm
Red Cheep-cheep
Permanently Banned: Rereged

Karma: 13
Posts: 155/214
Since: 03-04-13
If I decompress it in a older version it writes "Unable to decompress. Maybe that file is already in it's decompressed form." But it still doesn't work.
_________________________
Thanks
~~~Stunt_LP~~~
ASM Hack we're making in the moment:
- Info Block from SMW
It will be shared with the community
Posted on 07-28-14, 09:52 pm
Roy Koopa


Karma: 4011
Posts: 2623/2722
Since: 06-26-11
For some reason it can't find an instance of it when searching in a HEX editor I am using US Rom and decompressed the overlays before.
_________________________
See a lots of creative DS Hacking here
If you want to support me, you might check out my Patreon Page : )
Posted on 07-28-14, 09:59 pm (rev. 1 by  skawo on 07-28-14, 10:00 pm)


Karma: 19757
Posts: 20/1100
Since: 04-02-13
Button stuff should be at x141A5C0 and x141A504
TS CS stuff should be at xBE60

If they're not there then either the overlays aren't decompressed or the ROM is somehow different
Posted on 07-28-14, 10:07 pm
Roy Koopa


Karma: 4011
Posts: 2624/2722
Since: 06-26-11
Weird, it is not there. Could the reason be that I have an ASM hack in my ROM? (Which is actually pretty huge)
_________________________
See a lots of creative DS Hacking here
If you want to support me, you might check out my Patreon Page : )
Posted on 07-28-14, 10:07 pm


Karma: 19757
Posts: 21/1100
Since: 04-02-13
Honestly, not sure.
Posted on 07-28-14, 10:12 pm
Super Mario
( ͡° ͜ʖ ͡°)

Karma: 10010
Posts: 4102/4457
Since: 06-08-11
Posted by ray
Could the reason be that I have an ASM hack in my ROM? (Which is actually pretty huge)


As long as your hack doesn't modify this precise bit of code (which is very very unlikely) you should still see this hex string and be able to replace it.

You have to decompress ALL overlays though. The ASM patcher only decompresses the overlays it needs to patch your code.

The codes skawo said are probably in Overlay 9 (Titlescreen overlay) so maybe decompressing that one will be enough to find the stuff

Anyway if you're combining this with other ASM patches I suggest you convert this to .s patches and apply them with the rest of the patch. Otherwise you're going to have trouble, because the editor restores unmodified copies of the overlays and binaries when applying your hack again, so it doesn't apply the hack over itself (would break things) so it's maybe reverting your changes :|
Posted on 07-28-14, 10:24 pm
Roy Koopa


Karma: 4011
Posts: 2625/2722
Since: 06-26-11
Seems like I'm just kinda stupid. Tried it again and suddenly it worked :DD
_________________________
See a lots of creative DS Hacking here
If you want to support me, you might check out my Patreon Page : )
Posted on 07-29-14, 10:26 am


Karma: 1733
Posts: 207/657
Since: 05-14-14
I can't find anything that I want to find in overlay9_0 after searching multiple times. Though this may be a stupid question, would it be okay if someone uploaded an overlay9 with the titlescreen change in place?
Posted on 07-29-14, 11:18 am (rev. 1 by  skawo on 07-29-14, 11:21 am)


Karma: 19757
Posts: 22/1100
Since: 04-02-13
It wouldn't be overlay9_0, it'd probably be overlay9_9.

EDIT: In fact, I just looked, and indeed it is there.
Pages: 123 »