Moving Blog soon + Dumper progress

May 13, 2006

After two, more or less, idle weeks I finally continued with the Dragon Quest Monsters Script Dumper. I successfully dumped a whole block of script this time, including all Kanji (last version could only dump 2/3 of them because the rest was stored in another table). I also added some formatting, so it doesn't look like an endless stream of letters anymore. The most annoying thing left in the formatting area are the dakuten. Dakuten are marks which are added to Japanese Kana to make them voiced. The game marks these by putting an control-code before the to be voiced Kana.

Part of the reason why I have been so slow on progress is that I am preparing to move this site. Currently I use wordpress via http://www.wordpress.com The great thing is that I have zero administrationwork to do and the page is running fine and stable. The downside is that I have also zero power over the site. I'd like to have a custom design and maybe some other gimmicks, but to do that I have to manage wordpress myself. I have now found a host for the site, so expect this blog to move sometime in the future. 


Dragon Quest VIII

May 4, 2006

Wow, after several weeks I finally finished Dragon Quest VIII. This game was so amazing and fun. This is without a doubt the best RPG of our current hardware generation and with the upcoming of the Playstation 3 and the Nintendo Wii this will surely remain it. 

 To anyone who hasn't played this game already I strongly advise you get it now. Instant classics have become a rare breed these days πŸ˜‰



Annoying system maintenance

April 25, 2006

Do you know how annoying it is to make a system backup after you haven't done anything like that for years?

I decided I can no longer wait to back up my data, my external HDD likes to make noises sometimes when I switch it on. A year ago I already lost all the data on an external HDD, so I have the pain still burned into my mind. The only problem is that the data is a whopping 160GB of unsorted shit. Before I can burn this stuff to DVDs I'll have to sort the data, that's the worst part of it. I started organizing my music collection. I want to give every single music file a proper ID3 Tag. Since I have a LOT of music this will take ages. Awesome @_@.

 On a sidenote I am still working on the DQM scriptdumper, when I can squeeze some minutes in my time schedule. Now it automatically inserts over half of the Kanji into to the script (they use their own font and are thrown in right between the rest of the script). What I need to add now are some formatting functions. When the control code for a linebreak is encountered the scriptdump should also have a line break there, for example. If I don't do this the script will be pretty much unreadable. This is trivial stuff, but it takes time which is rather short at the moment.


Script-Dumper coming along slowly but steadily

April 17, 2006

I've been working on the script-dumper lately and I am making slow but steady progress. Just a few minutes ago I successfully dumped my first string in the way I wanted it to appear into a textfile.

The frist string

This blog does apparently not support Japanese characters, so I took a picture.

This is a huge step for me, if someone had told me 3 months ago that I would be able to write a working script-dumper on my own, I would have had laughed at him πŸ˜‰

There is still a lot of stuff missing that I need to add before I hold the complete script in my hands, but this was already the most difficult part (at least I think so *cough*).


Small Update

April 10, 2006

I filled most missing blanks in my table and figured out almost all control codes. I don't think I am missing anything vital. I successfully redirected a string to the end of the ROM, so my pointer stuff is working right. At the end of the ROM I have ~150Kb of empty space and I should be able to expand the ROM by a few MB if necessary, so space is not an issue for this translation πŸ™‚ 

I started writing a script-dumper but I am only progressing slowly. I have to relearn a lot of stuff since it's been almost a year since I programmed anything. I am confident though that I'll make it πŸ˜€


Most of my exams are over, progress on DQM

April 4, 2006

Yeah, today I finished my second of three exams. i have a day off now and nothing to do, so I used my good mood to work on Dragon Quest Monsters πŸ™‚

I finally found what I am looking for. The code that loads the text pointers. As it turns out the game uses three offsets to jump through several pointertables until it reaches the current string. I'll have to look into the way the game terminates it's strings and I'm almost ready to write a script dumper πŸ™‚

All that's left are some control codes I need to figure out. Aside from that it all comes down to my rusted programming skills. Let's see if I can still write such a nifty tool πŸ˜‰

On a side note while I messed with the pointer blocks and the offsets I noticed that the very first block contains an English debug menu. It would be interesting to find out how to access that menu in the game. The screenshot below is the result of my experiments with the offsets πŸ˜€

Don't mess with offsets, who knows what you might find ;)


Fun with GBA ASM

March 30, 2006

Today I finally started to investigate the text routine. It’s much more exhausting than I thought and takes a hell lot of time.

I found some interesting parts and got some bits of information about the way the routine handles the text figured out but I apparently only scratched the tip of the iceberg. After I went through the “apparently” short (Read 3 DinA4 pages) long routine, I noticed that something was not going right. The program seemed to skip all BL Opcodes. BL works very much like CALL on other systems and basically jumps to a specified address while remembering the origin in a register. pSXAuthor from the romhacking.net IRC channel made me aware of the fact that debuggers usually have two single step options. One that leaves out calls and one that follows them. Needless to say I used the wrong one all the time >_<

The good news is that I can make more progress now. The bad news is that the routine is MUCH bigger than I initially expected. I don’t know how many own calls and sub-calls every of the sub-routines has (I think I skipped around 20 during my rounds through the routine without tracing into BLs).

I should really suspend further work until my exams are finished but it’s really tempting to continue working on the game now that I got into it^^