Hacking No$GBA assembling instructions?

TwoSpikedHands

Member
OP
Newcomer
Joined
Jul 21, 2017
Messages
13
Trophies
0
Age
27
XP
99
Country
United States
Hello all, hope everyone is well :)

I had a few questions about NO$GBA's debugging functionality. I have learned quite a bit over the past few months trying to mod Tales of Phantasia GBA, including what most of the instructions do and how to trace them around and figure out what does what. I tried today assembling my own instructions into the ROM, and it worked! I was able to make an instruction that heals you after every battle.

Unfortunately, this did not save when i closed out of NO$GBA and reloaded the ROM, which i was expecting it to.

Some of the culprits I was thinking of was:
  • NO$GBA's assembler just doesn't work like that :P and the session isn't really saved to the file
  • The part that I was assembling in was in RAM, not in ROM (If it was in ROM, wouldn't it save for the future instead of being like RAM where it is volatile?)
    • The address that I was writing in was 0x8096F08
Any advice on this would be much appreciated!
 

cearp

瓜老外
Developer
Joined
May 26, 2008
Messages
8,728
Trophies
2
XP
8,518
Country
Tuvalu
I forget how NO$GBA works, but it wouldn't surprise me that it works that way (can't save modifications etc)
Better to just bring up a hex editor and make the modifications there.
I think BGB does let you do that from what I remember though :)

Or better yet, code the instructions and locations in a file and compile them, and patch the rom that way.
That way you can use version control, but importantly see your modifications clearly.
I'm not sure if there's a more recent/convenient way to do that, but I can take a look how I was doing it a few years ago if you'd like (method that I took from some other site)
 
  • Like
Reactions: Flame

TwoSpikedHands

Member
OP
Newcomer
Joined
Jul 21, 2017
Messages
13
Trophies
0
Age
27
XP
99
Country
United States
I forget how NO$GBA works, but it wouldn't surprise me that it works that way (can't save modifications etc)
Better to just bring up a hex editor and make the modifications there.
I think BGB does let you do that from what I remember though :)

Or better yet, code the instructions and locations in a file and compile them, and patch the rom that way.
That way you can use version control, but importantly see your modifications clearly.
I'm not sure if there's a more recent/convenient way to do that, but I can take a look how I was doing it a few years ago if you'd like (method that I took from some other site)
That would be dope! I Understand how to change the instructions, but don't understand how to change the instructions in hex. if you maybe have a link to that it would be amazing!!
Post automatically merged:

I forget how NO$GBA works, but it wouldn't surprise me that it works that way (can't save modifications etc)
Better to just bring up a hex editor and make the modifications there.
I think BGB does let you do that from what I remember though :)

Or better yet, code the instructions and locations in a file and compile them, and patch the rom that way.
That way you can use version control, but importantly see your modifications clearly.
I'm not sure if there's a more recent/convenient way to do that, but I can take a look how I was doing it a few years ago if you'd like (method that I took from some other site)
I checked out BGB as well, unfortunately it only emulates GB and GBC games :(
 
Last edited by TwoSpikedHands,

cearp

瓜老外
Developer
Joined
May 26, 2008
Messages
8,728
Trophies
2
XP
8,518
Country
Tuvalu
That would be dope! I Understand how to change the instructions, but don't understand how to change the instructions in hex. if you maybe have a link to that it would be amazing!!
It's a guide on how to make a hack for some megaman game, but it's the exact guide I used to learn a way to do what I mentioned above with a different gba game (using armips to compile asm and patching that to your rom).
So read through it carefully and it should be very helpful.
https://forums.therockmanexezone.com/intro-to-asm-modding-hooking-t5374.html

I checked out BGB as well, unfortunately it only emulates GB and GBC games :(
Correct, I should have made that clear!
Post automatically merged:

And let us / me know how you get on :)
 
Last edited by cearp,

TwoSpikedHands

Member
OP
Newcomer
Joined
Jul 21, 2017
Messages
13
Trophies
0
Age
27
XP
99
Country
United States
It's a guide on how to make a hack for some megaman game, but it's the exact guide I used to learn a way to do what I mentioned above with a different gba game (using armips to compile asm and patching that to your rom).
So read through it carefully and it should be very helpful.
https://forums.therockmanexezone.com/intro-to-asm-modding-hooking-t5374.html


Correct, I should have made that clear!
Post automatically merged:

And let us / me know how you get on :)
This is AMAZING!!! thanks so much, i'll work on it today and see how it goes
 

TwoSpikedHands

Member
OP
Newcomer
Joined
Jul 21, 2017
Messages
13
Trophies
0
Age
27
XP
99
Country
United States
It's a guide on how to make a hack for some megaman game, but it's the exact guide I used to learn a way to do what I mentioned above with a different gba game (using armips to compile asm and patching that to your rom).
So read through it carefully and it should be very helpful.
https://forums.therockmanexezone.com/intro-to-asm-modding-hooking-t5374.html


Correct, I should have made that clear!
Post automatically merged:

And let us / me know how you get on :)
Thank you SO MUCH for this guide.... The last time I attempted to mod this game was in 2017, and today was the very first time I have been able to get anything really concrete done. I just figured out how to load any text box into RAM into any NPC. I'm not quite to the point where I can change the stuff in ROM, but that is coming VERY soon.

Next time I post - fully custom textboxes for NPCs will be done

receptionistswordsman.png
 
  • Like
Reactions: cearp

cearp

瓜老外
Developer
Joined
May 26, 2008
Messages
8,728
Trophies
2
XP
8,518
Country
Tuvalu
Great progress and very glad to hear it!
How I have found text in roms:
  1. Go to some place where you can enter text (probably a name entry screen)
  2. Find that in ram, by searching for changing values when you change the text (can try entering 0 then 1, or Y then Z, and searching for an increase of 1)
  3. So you can type TESTING and you should see byte for T, byte for E, byte for S... etc
  4. Take note of what bytes match text
  5. Search the rom for text you know exists in the rom, using those bytes :)
It won't be as simple as that if the text is compressed, but I've been lucky enough that the games I've looked at have stored the text nicely :D
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BakerMan @ BakerMan:
    i said i was sleeping...
  • BakerMan @ BakerMan:
    sleeping with uremum
  • K3Nv2 @ K3Nv2:
    Even my mum slept on that uremum
  • TwoSpikedHands @ TwoSpikedHands:
    yall im torn... ive been hacking away at tales of phantasia GBA (the USA version) and have so many documents of reverse engineering i've done
  • TwoSpikedHands @ TwoSpikedHands:
    I just found out that the EU version is better in literally every way, better sound quality, better lighting, and there's even a patch someone made to make the text look nicer
  • TwoSpikedHands @ TwoSpikedHands:
    Do I restart now using what i've learned on the EU version since it's a better overall experience? or do I continue with the US version since that is what ive been using, and if someone decides to play my hack, it would most likely be that version?
  • Sicklyboy @ Sicklyboy:
    @TwoSpikedHands, I'll preface this with the fact that I know nothing about the game, but, I think it depends on what your goals are. Are you trying to make a definitive version of the game? You may want to refocus your efforts on the EU version then. Or, are you trying to make a better US version? In which case, the only way to make a better US version is to keep on plugging away at that one ;)
  • Sicklyboy @ Sicklyboy:
    I'm not familiar with the technicalities of the differences between the two versions, but I'm wondering if at least some of those differences are things that you could port over to the US version in your patch without having to include copyrighted assets from the EU version
  • TwoSpikedHands @ TwoSpikedHands:
    @Sicklyboy I am wanting to fully change the game and bend it to my will lol. I would like to eventually have the ability to add more characters, enemies, even have a completely different story if i wanted. I already have the ability to change the tilemaps in the US version, so I can basically make my own map and warp to it in game - so I'm pretty far into it!
  • TwoSpikedHands @ TwoSpikedHands:
    I really would like to make a hack that I would enjoy playing, and maybe other people would too. swapping to the EU version would also mean my US friends could not legally play it
  • TwoSpikedHands @ TwoSpikedHands:
    I am definitely considering porting over some of the EU features without using the actual ROM itself, tbh that would probably be the best way to go about it... but i'm sad that the voice acting is so.... not good on the US version. May not be a way around that though
  • TwoSpikedHands @ TwoSpikedHands:
    I appreciate the insight!
  • The Real Jdbye @ The Real Jdbye:
    @TwoSpikedHands just switch, all the knowledge you learned still applies and most of the code and assets should be the same anyway
  • The Real Jdbye @ The Real Jdbye:
    and realistically they wouldn't

    be able to play it legally anyway since they need a ROM and they probably don't have the means to dump it themselves
  • The Real Jdbye @ The Real Jdbye:
    why the shit does the shitbox randomly insert newlines in my messages
  • Veho @ Veho:
    It does that when I edit a post.
  • Veho @ Veho:
    It inserts a newline in a random spot.
  • The Real Jdbye @ The Real Jdbye:
    never had that i don't think
  • Karma177 @ Karma177:
    do y'all think having an sd card that has a write speed of 700kb/s is a bad idea?
    trying to restore emunand rn but it's taking ages... (also when I finished the first time hekate decided to delete all my fucking files :wacko:)
  • The Real Jdbye @ The Real Jdbye:
    @Karma177 that sd card is 100% faulty so yes, its a bad idea
  • The Real Jdbye @ The Real Jdbye:
    even the slowest non-sdhc sd cards are a few MB/s
  • Karma177 @ Karma177:
    @The Real Jdbye it hasn't given me any error trying to write things on it so I don't really think it's faulty (pasted 40/50gb+ folders and no write errors)
  • DinohScene @ DinohScene:
    run h2testw on it
  • DinohScene @ DinohScene:
    when SD cards/microSD write speeds drop below a meg a sec, they're usually on the verge of dying
    DinohScene @ DinohScene: when SD cards/microSD write speeds drop below a meg a sec, they're usually on the verge of dying