gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

ASM > Breakpoints in Rascalboy Advance

#74220 - KaioShin - Fri Mar 03, 2006 4:46 pm

I am trying to find the way in which a commercial game stores its text (for a translation). I know exactly where some of the text is stored. So I wanted to make a trace while running the game up to the point where the line of text shows up and stop it through a breakpoint when that specific memory address is being read.

I have no idea how tracing and using breakpoints with VBA works, I am totally confused with that GDB stuff, when someone could point me in the right direction on how to use that I'd be grateful.
The only emulator I found which supported (or lets say claims to support) the stuff I need is Rascalboy Advance. The readme however does not contain a single line on how to use the debugger.

The tracing seems only to work when I go through the code in single step mode as soon as I let the emu run by itself it stops recording. Anyone knows if this can be continued? The breakpoints are even worse though. I can only click on an line in the code viewer and then click on "toggle breakoint" There is no option on what to do with it, like break on read oo break on write. It looks as if the breakpoint is only triggered when the PC reaches that address. The readme claims that I should be able to find every feature I need, I just don't seem to find it.

If someone could tell me how to use that feature or how to do what I want to with another emulator (VBA?) I'd be very grateful.

btw: I am new here, I hope you have no objections regarding working with commercial games, I couldn't find a thread with rules.

#74232 - Miked0801 - Fri Mar 03, 2006 7:08 pm

Is the text stored uncompressed on the ROM?

#74234 - KaioShin - Fri Mar 03, 2006 7:17 pm

Miked0801 wrote:
Is the text stored uncompressed on the ROM?


Yes it is. At least everything I found is uncompressed and easily accessible. I need to know how the text is stored in order to properly dump it without missing out something.

#74247 - waruwaru - Fri Mar 03, 2006 8:15 pm

KaioShin wrote:
Miked0801 wrote:
Is the text stored uncompressed on the ROM?


Yes it is. At least everything I found is uncompressed and easily accessible. I need to know how the text is stored in order to properly dump it without missing out something.


If it's decompressed, can't you just run something like string to pull everything out?
_________________
DSLua - a scripting language for your DS!

#74250 - KaioShin - Fri Mar 03, 2006 8:25 pm

Its uncompressed but not in ASCII or Unicode. It has 2 tables, one with Kana and some latin letters and one with Kanji. Things won't work like that and I can't reinsert them this way. Since the textlength will change I'll have to change all the pointers to the strings. That is why I need to find the text routine so I know how to handle the pointers when I re-insert the translated text back in.
For the re-insertion to work I have to rearrange the whole text-storeing system. I will later also need the text routine to alter how it draws the windows on the screen. I'll have to expand the menus so it does not say "Inv. Sta. Set. For." and such messed up menu options.

#74280 - Miked0801 - Sat Mar 04, 2006 12:54 am

So now you are indeed commercial ROM hacking and not just poking around. Good luck.