News: 11 March 2016 - Forum Rules, Mobile Version
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia

Author Topic: How to make fireballs in smb1 could ruin the bricks?  (Read 1721 times)

Psyklax

  • Hero Member
  • *****
  • Posts: 517
    • View Profile
    • Psyklax Translations
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #20 on: December 31, 2017, 07:32:47 am »
So you always expand your roms or hack only games with clearly unused bytes like sequences of 00 or $FF?

Yep. :D I'm too scared of messing with whatever's already there.

The code data logger is really useful to get the most of the rom, specially without expanding it. Sometimes you can check the unused code itself to see that there's no way it can be called and is just leftover code. Some other times there are branches that never go to it, and you can analyze that to know if there's a chance it will be used or not.

Tell me more: how can I analyse code to be sure it'll never be used? Having the CDL recording will be useful, sure, but I'd have to play through the entire game and in every possible situation, and even then I wouldn't be sure. As for knowing there are no branches or jumps to it, sure, but how can you search for that?

nesrocks

  • Sr. Member
  • ****
  • Posts: 472
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #21 on: December 31, 2017, 07:45:54 am »
Yes, you need to play the entire game in every possible situation and you still won't be sure. I have only hacked games for small roms so far, so it wasn't a big deal to:
1 - play it all
2 - use judgement to what was used and what wasn't. usually unused bytes that looked like code would be in small chunks, like 5-10 bytes, so it isn't usable anyway.

As for searching, if your routine starts at 0xDE53 a simple search for 2043DE or 4C43DE could give you some confidence that it isn't used, but it could still be partially used or indirectly used, so even then you can't be sure.

Anyway, in my experience, code is usually used. There isn't always a lot of sequencial bytes of unused code, but there are of data, and that is more easily identifiable.

lancuster

  • Jr. Member
  • **
  • Posts: 41
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #22 on: December 31, 2017, 09:20:24 am »
edale, how to compare asm code with machine code? Which program use for that?

nesrocks

  • Sr. Member
  • ****
  • Posts: 472
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #23 on: December 31, 2017, 02:38:48 pm »
I think you forget machine code, just use the disassembly, make the modifications in asm and recompile.

lancuster

  • Jr. Member
  • **
  • Posts: 41
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #24 on: January 06, 2018, 03:19:28 pm »
I think you forget machine code, just use the disassembly, make the modifications in asm and recompile.
Romhacking documents didn't compiled. :(
I successfully fixed the frames of character (but not the enemies), and some of this is remain to fix.
I need to erase "world number" to correct display "get ready" and wanna to fix this tile:


Eden.GT

  • Jr. Member
  • **
  • Posts: 56
  • Hardcore SMB1 Player and Hacker
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #25 on: January 07, 2018, 07:23:25 am »
The direct link to the patch of which fireballs can destroy brick blocks: http://www.geocities.jp/masa_yuu_kaimari/support/BreakBrickb.zip
This patch uses castle loop processing for the data, so you can no longer use that feature upon patching. If using an expanded ROM you can get the code to be inserted in the free space though.

Side effects, according to the author:
· Block fragments can appear at random positions when blocks are hit.
· When striking a hole, part of the screen may change in colour.
· When you hit hidden coin blocks, the used block cannot be seen after coin deposits.
· In rare cases, only hit judgment disappears, and the block sometimes remains visible.
« Last Edit: January 07, 2018, 07:39:21 am by Eden.GT »
Can't I just be treated like a normal person? People react too easily these days.

lancuster

  • Jr. Member
  • **
  • Posts: 41
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #26 on: January 07, 2018, 10:38:59 am »
The direct link to the patch of which fireballs can destroy brick blocks: http://www.geocities.jp/masa_yuu_kaimari/support/BreakBrickb.zip
This patch uses castle loop processing for the data, so you can no longer use that feature upon patching. If using an expanded ROM you can get the code to be inserted in the free space though.

Side effects, according to the author:
· Block fragments can appear at random positions when blocks are hit.
· When striking a hole, part of the screen may change in colour.
· When you hit hidden coin blocks, the used block cannot be seen after coin deposits.
· In rare cases, only hit judgment disappears, and the block sometimes remains visible.
I already have a patch with the same effects and the same bugs. I've only want to fix sprites on black screen, wanna fix phrase "get ready" and want make breakable all of blocks, except of pipes and flagpole (now ALL is breakable). Current version (patch): http://dropmefiles.com/KEWPv
« Last Edit: January 07, 2018, 10:50:26 am by lancuster »

Eden.GT

  • Jr. Member
  • **
  • Posts: 56
  • Hardcore SMB1 Player and Hacker
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #27 on: January 08, 2018, 01:25:00 am »
I already have a patch with the same effects and the same bugs. I've only want to fix sprites on black screen, wanna fix phrase "get ready" and want make breakable all of blocks, except of pipes and flagpole (now ALL is breakable). Current version (patch): http://dropmefiles.com/KEWPv

So I tested your hack out, and the green-blue title screen looks kind of sloppy, so I'm offering you the change if you want.
And really, using U1's music patches for your hack? I suggest some original music. I know you may not have a perfect pitch, but what would you change the overworld and other music to if you have the choice?
Can't I just be treated like a normal person? People react too easily these days.

lancuster

  • Jr. Member
  • **
  • Posts: 41
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #28 on: January 08, 2018, 02:01:08 pm »
So I tested your hack out, and the green-blue title screen looks kind of sloppy, so I'm offering you the change if you want.
And really, using U1's music patches for your hack? I suggest some original music. I know you may not have a perfect pitch, but what would you change the overworld and other music to if you have the choice?
Example? :D
I don't know how to write music on NES :-\

edale

  • Jr. Member
  • **
  • Posts: 88
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #29 on: January 10, 2018, 09:25:32 pm »
edale, how to compare asm code with machine code? Which program use for that?
I have absolutely no idea. I don't know machine code, and I don't know ASM. What I am good at is digging around for the raw data that more experienced/knowledgeable people can use. The only mod I've ever personally made was done 10% with a tool, and 90% through raw hex editing of the ROM.

lancuster

  • Jr. Member
  • **
  • Posts: 41
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #30 on: January 21, 2018, 06:44:34 am »
There is a patch that allows you to break bricks/blocks under water?

Eden.GT

  • Jr. Member
  • **
  • Posts: 56
  • Hardcore SMB1 Player and Hacker
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #31 on: January 21, 2018, 08:18:20 pm »
There is a patch that allows you to break bricks/blocks under water?

Yes, there're two patches, actually. One of them only change two bytes of the whole ROM:
Change $5CED and $5CEE's default values ($F0, $13) to $EA, $EA.

From the SMB disassembly:

bcs SolidOrClimb         ;if player collided with solid metatile, branch
                          ldy AreaType                ;otherwise check area type
                           beq NYSpd                   ;if water level, branch ahead
« Last Edit: January 21, 2018, 08:23:23 pm by Eden.GT »
Can't I just be treated like a normal person? People react too easily these days.

lancuster

  • Jr. Member
  • **
  • Posts: 41
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #32 on: January 22, 2018, 05:55:02 am »
Eden.GT, thanks, all is working. :)

January 23, 2018, 11:59:16 am - (Auto Merged - Double Posts are not allowed before 7 days.)
I did a screen move to the next level(where Mario himself goes forward) as ordinary level. What the numbering a bit off. How to disable the numbering in this case, in this level?
« Last Edit: January 23, 2018, 11:59:17 am by lancuster »

lancuster

  • Jr. Member
  • **
  • Posts: 41
    • View Profile
Re: How to make fireballs in smb1 could ruin the bricks?
« Reply #33 on: January 30, 2018, 12:21:47 pm »
Does anyone know how to change the properties of the coins to "killing coins"?
And how to find properties of other blocks to make them like bricks?