Cracking an NES rom without the source code--is it possible?

  • Thread starter Thread starter Aldrich
  • Start date Start date
  • Views Views 1,387
  • Replies Replies 5

Aldrich

Member
Newcomer
Joined
Jun 25, 2017
Messages
12
Reaction score
4
Trophies
0
Age
35
XP
78
Country
United States
I'm sure the answer should be obvious for anyone with experience working with the software, but as a rank amateur I'm in the dark.

As I mentioned in my introductory post, I have a few pipe dreams concerning a handful of nes games and fulfilling those involves some figurative heavy lifting. Before any of that can take place, I need to know if its even possible to work with a rom without having the source code at hand. For one example, what I would like to do is add two extra sprites for each enemy in Earthbound zero/beginnings as a form of pseudo-animation--an attacking sprite and a wounded sprite to be displayed when its the enemy's turn and during the flashing section once they've taken damage. In order to organize and install these new images, how much of the game's code would I need to fully grasp?

EBZ is relatively fortunate as a few tutorial pages exist on romhacking.net's wiki, but I am not sure if these would help matters very much:
http://datacrystal.romhacking.net/wiki/EarthBound_Zero:ROM_map


Again, any sort of advice or guidance is immensely appreciated!
 
Well it may be possible to decompile a game, and add the modified code, then finally recompile.
I'm not any more knowledgeable though. Hopefully someone else will add more information to this post.
 
Yes it is, the catch is that you are going to have to learn how to not only write in low level assembly language, but be able to read it as well, and said assembly language is different for each CPU. In this case, you need to learn 6502 assembly language. Keep in mind that ASM is considered to be the hardest type of programming to learn, especially on systems as primitive as the NES (or C64/Apple2/etc). To give you an idea, you can't multiply, divide, or do a square root unless you do so manually using addition (hint: addition with negative numbers is subtraction).

If you still plan on learning 6502 ASM and doing some romhacking then good luck.
 
Last edited by nl255,
Much obliged to everyone whose responded, I appreciate the tips!It sounds like an uphill struggle, but that just means it'll be more satisfying once I've completed the project.

On a similar note in regards to animation, any clues as to whether it might be possible to add in psi animations to battle? I know the nes only has so many layers as to what it can display, but I imagine its possible to layer one sprite over another without too many issues, or at the very least briefly flicker the enemy sprites out to allow the two frame animation to play.
 
Much obliged to everyone whose responded, I appreciate the tips!It sounds like an uphill struggle, but that just means it'll be more satisfying once I've completed the project.

On a similar note in regards to animation, any clues as to whether it might be possible to add in psi animations to battle? I know the nes only has so many layers as to what it can display, but I imagine its possible to layer one sprite over another without too many issues, or at the very least briefly flicker the enemy sprites out to allow the two frame animation to play.

The folks over at https://forum.starmen.net/forum/Community/PKHack might be able to help, but they do mostly Earthbound hacking, not Mother 1. Ask around there.
 

Site & Scene News

Popular threads in this forum