User blog:RottenBlock/System 3 Compilation, Part 4

Fixed a few more problems today.

I've had to update the decompiler to deal with the way AliceSoft handles gaiji. Gaiji were - and "were" is the key word here - any externally-defined character not part of the Shift-JIS standard. Alicesoft defines them in the GAIJI.DAT file included with a small handful of System 3.0 games, and they range from Latin characters that could be easily replaced to custom glyphs that absolutely can't. The trouble is: gaiji don't exist in modern Shift-JIS, and haven't for years. This means that unless you're localizing in unusual circumstances, your editor is going to overwrite the gaiji codes with whatever modern character your encoding set thinks they are. What we need is for the gaiji to stay as nothing but hex values, so that's what I had it do: gaiji will now be output inside of quotes in the format 0x####, with #### being the hexidecimal code for the complete, two-byte gaiji.

If you must use the text "0x#" just as it appears in a message for some cockamamie reason, a \ character at the front will allow it to be used raw, "\0x#". Be aware: because I don't expect Alicesoft to have included any deliberate use of "0x" in their message text, I haven't checked for any in old-style code (it would mean a lot of code for probably 0 returns). If it turns out that some smartass make a programming joke in the middle of Prostudent G or whatever, you might have to add the \ yourself.

M commands work correctly now in SysEng.

The chunky monospace fonts take up far too much room in small spaces like pop-up boxes and menus, but I really don't think there's anything I can do.

I rushed ahead to take a look at the game's other modes, since they'd be more likely to show problems. Dungeon Mode works fine, but combat has a number of graphical errors that are apparently pre-existing in TTSys (it's not my fault this time!). The green highlight that appears on the stat displays is off by a few pixels, and there are graphical errors when the combat pictures slide around. The former should be easy, while I can't be sure about the latter. I worry about the fact that TODO didn't fix these himself.

On the plus side, the red "pulse" effect when a party member takes Life damage actually works in this version. It was skipped on the emulated one, at least in my experience.