Searching For Text

Hoagie

New Member
Hello again all,

After being able to dig through all the Lunar:MS files and pull out text and pointer I was giddy with text search delight. Unfortunetly it quickly faded as I attempted to find the dialog in two of my other disks.

Based on the suggestion by CyberWarriorX in the following thread:

http://litespeedcomputers.com/sx....;t=5683

... I made an ISO image of all the files I could (some I could not add, which appear to be CD Audio tracks). I then opened those ISOs up into a HEX editor and started searching. I failed.


I made an image of "Grandia: Digital Museum" and did a search for "gido" (bytes: 83 4d 83 68) to no avail. I also found a few "gi" and "do" katakana under different codes; I did another search for those (bytes: 85 e5 85 f2) -- still no luck.

I also made an image of "Macross: Do You Remember Love?" (side scrolling shooter). I looked for "san" (bytes: 82 b3 82 f1) and again found nothing.


So I'm wondering if there are alternate ways in which some games actually render their text? I figure that these games are putting the text up as some sort of sprite, instead of simple text (like in Lunar: Magic School). Is this something that is commonly done on the Saturn, or am I perhaps missing something that would allow me to yet locate the text for these games (perhaps)?

Many thanks (again)!

Hoag
 

CyberWarriorX

New Member
... I made an ISO image of all the files I could (some I could not add, which appear to be CD Audio tracks). I then opened those ISOs up into a HEX editor and started searching. I failed.

Yeah, probably because the text in those games weren't in shift-jis. I can't confirm Grandia: DM, but Macross: DYRL's text is -not- in shift-jis. Macross uses another common text format. Not sure what to call it, but basically what they do is add characters to a font file as they appear in the game, then reference them accordingly starting at 0x0000(or in macross' case, 0x0001). Here, i'll show you what i'm talking about.

Here's the font for the first mission:

http://www.emuxhaven.net/~translationnext/temp/mes01.gif

You can find it under mes01.bin on the disc. All the other fonts follow the same format(which is a type of 8x8, 4 tiled 4BPP font). If you really want to view it, get my tilemod2 4bpp module at TN and set the dimensions to 8x8, and the columns to 2.

As you can see from the picture, they basically added each character as they moved through the text, only adding when it's a new character. So in turn you just have to create an appropriate table. For instance, this is what my table looks like:

http://www.emuxhaven.net/~translationnext/temp/macm1.tbl

As you may have noticed there's 5 I missed, but oh well. 0x0000 is the new line code, and 0x00FF would be the end of paragraph code.

So I'm wondering if there are alternate ways in which some games actually render their text?

Yes, unfortunately there's several variations. But, the two most common types are either shift-jis, or the one I just tried to explain. Another remotely common one is a type of extended ascii. Basically it's ascii, but any characters above 0x7F(I think) is kana. I've only see it used for some non-dialogue stuff(for instance Langrisser III's 8x8 text that's used for stats, etc.)

This is why I usually suggest you look for the font -first-, then you can usually figure out what format the text is in just by looking at it.

I figure that these games are putting the text up as some sort of sprite, instead of simple text (like in Lunar: Magic School). Is this something that is commonly done on the Saturn, or am I perhaps missing something that would allow me to yet locate the text for these games (perhaps)?

Actually, in a way you're right. Some games draw text as sprites, yet others use a type of tiled image using the vdp2. It really just depends on the game(or in Langrisser's case, company).

Cyber Warrior X
 

Hoagie

New Member
Thanks CyberWarriorX! I don't totally understand how it is working at this point, but I haven't really dug around enough yet. Gotta find time to do that.


While looking over your site I noticed you were using (or looked like you were using) an Emulator for your screen caps. May I ask which one you use?

Will I need to learn how to create a Saturn ROM file in order to use them, or can I run it off the CD?

Many thanks!

Hoag
 

CyberWarriorX

New Member
I don't totally understand how it is working at this point, but I haven't really dug around enough yet.

Yeah, I was basically like that around a year ago as well. As soon as you understand how the basic formats work, approaches generally taken, etc. you should be fine.

While looking over your site I noticed you were using (or looked like you were using) an Emulator for your screen caps. May I ask which one you use?

Well, I think for most of the captures I actually used my video capture card. Though if I use an emulator, it's always SSF(though satourne is starting to get really nice, but aside from the debugger, etc. SSF beats it in all other aspects).

Will I need to learn how to create a Saturn ROM file in order to use them, or can I run it off the CD?

Hrm? A Rom file? You mean an iso? If you're serious about using an emu, yes. Just create an iso, get daemontools and install it(if you haven't already) and mount it.

If you plan on using a real saturn make sure you have a working commlink/action replay setup, and go to the part in the game were the text gets displayed. Do a basic search for what original was in the file you modified. If you're lucky, you should find the file totally intact in memory. If only part of it is there, just upload that section from the modified file over it. Then just continue playing, you should see the changes(unless of course it's already transfered the data to another part in memory. Graphic data is bad for that). For more information see my hacking doc entitled "Saturn Hacking - 'CAR' method explained".

Cyber Warrior X
 
Top