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

Aldrich

Member
OP
Newcomer
Joined
Jun 25, 2017
Messages
12
Trophies
0
Age
33
XP
68
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!
 

VinsCool

Persona Secretiva Felineus
Global Moderator
Joined
Jan 7, 2014
Messages
14,600
Trophies
4
Location
Another World
Website
www.gbatemp.net
XP
25,207
Country
Canada
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.
 

nl255

Well-Known Member
Member
Joined
Apr 9, 2004
Messages
3,000
Trophies
2
XP
2,792
Country
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,

Aldrich

Member
OP
Newcomer
Joined
Jun 25, 2017
Messages
12
Trophies
0
Age
33
XP
68
Country
United States
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.
 

MrCatFace

Well-Known Member
Member
Joined
Jun 3, 2017
Messages
306
Trophies
0
XP
529
Country
Antarctica
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

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: @salazarcosplay, gta v is down since november 2021