skawo |
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. |
Dirbaio |
Posted on 07-27-14, 09:18 pm
|
Super Mario
( ͡° ͜ʖ ͡°) Karma: 10020 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) |
skawo |
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. |
Dirbaio |
Posted on 07-27-14, 09:25 pm
|
Super Mario
( ͡° ͜ʖ ͡°) Karma: 10020 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. |
skawo |
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. |
Stunt_LP |
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 |
skawo |
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.
|
Stunt_LP |
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 |
skawo |
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.
|
ray |
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. _________________________ If you want to support me, you might check out my Patreon Page : ) |
skawo |
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.
|
Stunt_LP |
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 |
ray |
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 : ) |
skawo |
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 |
ray |
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 : ) |
skawo |
Posted on 07-28-14, 10:07 pm
|
Karma: 19757 Posts: 21/1100 Since: 04-02-13 |
Honestly, not sure.
|
Dirbaio |
Posted on 07-28-14, 10:12 pm
|
Super Mario
( ͡° ͜ʖ ͡°) Karma: 10020 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 :| |
ray |
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 : ) |
Tierage |
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?
|
skawo |
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. |