Points of Required Attention™
Please chime in on a proposed restructuring of the ROM hacking sections.
Views: 88,488,572
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search 04-26-24 05:00 PM
Guest: Register | Login

0 users currently in ROM Hacking | 4 guests

Main - ROM Hacking - 2 different animation patches Super Mario Bros? New thread | New reply


CKY-9K
Posted on 11-27-07 07:26 AM (rev. 2 of 11-27-07 07:27 AM) Link | Quote | ID: 70738


Pokey
Level: 57

Posts: 239/693
EXP: 1430498
Next: 55430

Since: 06-27-07
From: cKy

Last post: 210 days
Last view: 118 days
I've just posted this down on PocketHeaven but since this relies more on hacking knowledge I guess I'll state it here too.

There's 2 styles of animation technique addons for Super Mario Bros circulating throughout the internet in forms of rom hacks.

The one that isn't supported by PocketNES is mainly in animated american hacks.

Mario Seanons
Balloon Bros (a hack over at acmlm)



I'm not sure if Extra Mario Bros is an american hack but it seems to use the japanese's animation code.


japan animation roms:

Evolution by Machi (hack with yoshi and stuff)

and then the betaworld hacks
http://betaworld.hp.infoseek.co.jp/
which would be:
Tower R E
Bounce


The American patches usually have each a whole seperate sheet of 255 tiles changing, but the Japan patches have segmented areas smaller than a page of tiles.

I personally dumped a version of SMB where the American animation is set for use, without any extra side-effects.
What I've noticed is that with the coding, there's a huuuge blank spot of FF's moving the data located aprox 7000 down to about C000.

____________________








Dwedit
Posted on 11-27-07 11:49 AM Link | Quote | ID: 70741


Red Paratroopa
Level: 30

Posts: 117/162
EXP: 163144
Next: 2725

Since: 03-07-07
From: Chicago

Last post: 3518 days
Last view: 1613 days
Mario Seasons is badly programmed and fails in the newest emulators.
Balloon Bros works in pocketnes.

____________________

CKY-9K
Posted on 11-27-07 05:29 PM (rev. 2 of 11-27-07 05:46 PM) Link | Quote | ID: 70760


Pokey
Level: 57

Posts: 240/693
EXP: 1430498
Next: 55430

Since: 06-27-07
From: cKy

Last post: 210 days
Last view: 118 days
Posted by Dwedit
Mario Seasons is badly programmed and fails in the newest emulators.
Balloon Bros works in pocketnes.


Last time I checked it didn't work.

When I say balloon bros I mean this:
http://acmlm.no-ip.org/board/thread.php?id=907

Not the shitty ass abortion failure hack where there's a balloon on mario and he floats up forever into the sky.

____________________








Drag
Posted on 11-27-07 06:57 PM Link | Quote | ID: 70764


Spike
Dragon
Level: 57

Posts: 691/705
EXP: 1483003
Next: 2925

Since: 02-19-07
From:

Last post: 3928 days
Last view: 3928 days
I did everything in Super Balloon Fight Physics Mario (actually, "Balloon Bros" is a better name for it, now that I think of it) myself. I didn't even know Mario Seasons (is that one of DahrkDaiz's hacks?) did this, or that there were animation hacks available or anything.

That HUGE block of FFs is a side effect of me expanding the rom. To expand the rom, I had to convert it to MMC3. The number of PRG banks *MUST* be a power of two, so I couldn't just add one bank, I had to add two (making it 4).

I tested my hack in nestopia and nintendulator, and I followed the "rules" for the MMC3, so I don't see why it wouldn't work in pocketnes, except if pocketnes was at fault, or if I mixed something up in the ines header, or something.

The way I did the animation is just by bankswitching between 4 frames at regular intervals. Pretty simple. I just did it for fun, I wasn't really aiming for anything in particular.

____________________

CKY-9K
Posted on 11-27-07 08:13 PM Link | Quote | ID: 70769


Pokey
Level: 57

Posts: 242/693
EXP: 1430498
Next: 55430

Since: 06-27-07
From: cKy

Last post: 210 days
Last view: 118 days
Would you mind if I used the animation code for myself?

____________________








Drag
Posted on 11-28-07 12:35 AM Link | Quote | ID: 70800


Spike
Dragon
Level: 57

Posts: 692/705
EXP: 1483003
Next: 2925

Since: 02-19-07
From:

Last post: 3928 days
Last view: 3928 days
If you know how to apply it, sure.

____________________

CKY-9K
Posted on 11-28-07 03:46 AM Link | Quote | ID: 70822


Pokey
Level: 57

Posts: 245/693
EXP: 1430498
Next: 55430

Since: 06-27-07
From: cKy

Last post: 210 days
Last view: 118 days
Yeah I hunted down all the balloon physics coding and reverted it back to normal.

____________________








Dwedit
Posted on 11-28-07 11:32 AM (rev. 4 of 11-28-07 12:24 PM) Link | Quote | ID: 70835


Red Paratroopa
Level: 30

Posts: 118/162
EXP: 163144
Next: 2725

Since: 03-07-07
From: Chicago

Last post: 3518 days
Last view: 1613 days
The reason that hack fails in PocketNES is that the program counter crosses non-adjacent PRG banks.
Most emulators wouldn't have a problem going from PC=BFFF to PC=C000, but pocketnes doesn't emulate the program counter that way, instead, it emulates it as a pointer.

To fix the hack for pocketnes: (edited)
* Move 0010-400F to 8010.
* Move 4010-800F to 0010
change these:
002F: 03 >> 01
0099: 01 >> 05
F90C: 02 >> 00
F914: 00 >> 04

____________________

CKY-9K
Posted on 11-28-07 06:13 PM (rev. 2 of 11-28-07 06:23 PM) Link | Quote | ID: 70847


Pokey
Level: 57

Posts: 247/693
EXP: 1430498
Next: 55430

Since: 06-27-07
From: cKy

Last post: 210 days
Last view: 118 days
Thanks I'll try.

____________________








Drag
Posted on 11-28-07 07:02 PM Link | Quote | ID: 70848


Spike
Dragon
Level: 57

Posts: 693/705
EXP: 1483003
Next: 2925

Since: 02-19-07
From:

Last post: 3928 days
Last view: 3928 days
Posted by Dwedit
The reason that hack fails in PocketNES is that the program counter crosses non-adjacent PRG banks.

Would this cause problems on a real NES, or is this just a PocketNES quirk or something?

____________________

Dwedit
Posted on 11-28-07 07:18 PM Link | Quote | ID: 70849


Red Paratroopa
Level: 30

Posts: 119/162
EXP: 163144
Next: 2725

Since: 03-07-07
From: Chicago

Last post: 3518 days
Last view: 1613 days
It's a quirk that affects PocketNES and Loopynes, and any other emulator which represents the program counter as a pointer, and does not check for crossing page boundaries. It happens to work fine in almost all cases, since almost no games which do bankswitching have code run off the edge from one bank to a non-adjacent bank. On slow systems, it's a significant emulation speedup trick. PC's don't need to use that kind of optimization, so almost no PC emulators have problems.

____________________

Dr. Hell
Posted on 11-28-07 07:22 PM Link | Quote | ID: 70850


Lakitu
Level: 52

Posts: 244/552
EXP: 1026501
Next: 57339

Since: 03-02-07
From: Pittsburgh, PA

Last post: 5034 days
Last view: 4991 days
Ah, so that's probably why my hack didn't work on PcketNES either. I was always kind of wondering about that.

Drag
Posted on 11-28-07 07:41 PM Link | Quote | ID: 70852


Spike
Dragon
Level: 57

Posts: 695/705
EXP: 1483003
Next: 2925

Since: 02-19-07
From:

Last post: 3928 days
Last view: 3928 days
Ah, I see what you mean. It's not really good to have code cross boundaries. Well, it's not that it isn't good, but it tends to be a little tricky to manage when you're dealing with bankswitching.

In this case, I had to do funky stuff with the banks in order to have the rom be readable in SMB level editors, but that was mostly for the people that didn't want to apply my patch over and over.

____________________

Dwedit
Posted on 11-29-07 12:30 AM Link | Quote | ID: 70861


Red Paratroopa
Level: 30

Posts: 120/162
EXP: 163144
Next: 2725

Since: 03-07-07
From: Chicago

Last post: 3518 days
Last view: 1613 days
There's also another alternative to rearranging the banks: Put a jump from the code around BFFF to C000. That would eliminate the runover and possibly make it work better with editors?

____________________

CKY-9K
Posted on 11-29-07 07:02 AM Link | Quote | ID: 70869


Pokey
Level: 57

Posts: 248/693
EXP: 1430498
Next: 55430

Since: 06-27-07
From: cKy

Last post: 210 days
Last view: 118 days
Certaintly doesn't work with SMB utility.

____________________








Hamtaro126
Posted on 11-29-07 03:57 PM Link | Quote | ID: 70882


Cheep-cheep
Level: 33

Posts: 41/194
EXP: 212842
Next: 16337

Since: 05-02-07
From: Shelton, WA

Last post: 2473 days
Last view: 2316 days
How does Mario Seasons have 2 animation codes? One for Underground/Lava and One with Outside/Water? I wanted to animate SMB 2 ways depending on Seperate level Types.

Animations:

Ground/Water::
1, Sprites 1, 2, BG 3, 4, 5, 6.

UnderGround/Bowser's Castle:
3: Sprites 5, 6, BG 7, 8, 9, 10.

Title (If possible):
Sprites 1, 1, BG 0, 0, 0, 0.

____________________
Mah boi, romhacking is what all true warriors strive for!

I wonder what's for dinner?

frantik
Posted on 12-01-07 03:36 AM Link | Quote | ID: 70977


Red Koopa
Level: 28

Posts: 35/139
EXP: 127408
Next: 3930

Since: 10-09-07

Last post: 4489 days
Last view: 4483 days
Disch was just schooling me on mappers and how to animate in SMB recently.. he even made a patch which he says should be 100% compatible with original NES hardware. It uses CNROM/Mapper 3

The this post
http://www.romhacking.net/forum/index.php/topic,4882.msg79153.html#msg79153

After you apply the animation patch you will need to add on 3 more banks of chr-rom onto the end of the rom. this will cause it to stop loading in SMBUtil so apply the animation patch to a copy for testing purposes. You can then just apply patches onto the animated rom, making sure to update all the graphics frames if you modify any of the graphics


Main - ROM Hacking - 2 different animation patches Super Mario Bros? New thread | New reply

Acmlmboard 2.1+4δ (2023-01-15)
© 2005-2023 Acmlm, blackhole89, Xkeeper et al.

Page rendered in 0.028 seconds. (339KB of memory used)
MySQL - queries: 117, rows: 153/154, time: 0.018 seconds.