Others [PC98] Viper CTR - text help

BlackShadowx

Newbie
Aug 8, 2018
37
52
Okay, So I was working on rev-eng Viper CTR on the PC98,
and have successfully managed to decompress the game's files.
but the problem I'm having is getting the text to display correctly, im told its using the JIS x format.
But i tried a few different hex editors, but they still seem to be garbled on Windows
The image attached are supposed to be wide letters.

Anyone with experience with JP text on the PC98?
 
Last edited:

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Donor
Respected User
Jun 10, 2017
10,396
15,308
The image attached are supposed to be wide letters.
And it is:
FOREVER WITH YOU
PURE DANCE
HITS YOU
BATTLE FIELD in DOYO
BLADE
RACER
REVERSE NOSE

Of course a screenshot can only lead to a guess and it have to be confirmed. But so far each letter is prefixed by # and spaces are represented by ! ! (not sure if being doubled is important of just to force the visual separation). And I guess that numbers prefixed by a # are referencing variables.
 

BlackShadowx

Newbie
Aug 8, 2018
37
52
I attached files if you wanna look through them, im gonna leave this issue for now.
gonna work on identifying the op codes and the data they consume for now.
 

HiEv

Member
Sep 1, 2017
384
779
And I guess that numbers prefixed by a # are referencing variables.
No, those numbers are also text.

Basically, it's a double-byte character set (DBCS), where the first byte indicates what group of characters the second byte displays. For example, if the first byte is # (hex: 23), then it will display the next byte using a set of ASCII characters.

I only vaguely recalled how the system works from back in my old "cracking" days (IIRC, I was one of the first to crack the English release of "Chain: The Lost Footprints" (チェーン 失われた足跡)), but I looked it up, and this is most likely some version of the DBCS. The JIS X 0208 DBCS went through a few revisions, which could be why the character set in the game may not display the same as a modern JIS X 0208 interpreter would display it, if that's what you're doing. Also, there's almost no chance your hex editor is going to know JIS X 0208.

Another reason that the characters may not display the same is because they often used their own copy of the English language characters. For example, instead of using "0123456789", they'd use "0123456789", which, while they might look similar except for the spacing, are actually totally different characters. Heck, even the Japanese (ideographic) space " " is different from the standard ASCII space " ". If you want the same authentic appearance as the original, you will likely have to use those alternate characters.

Hope that helps! :)
 
Last edited:

BlackShadowx

Newbie
Aug 8, 2018
37
52
Thanks for sharing that!
trying to find ways to display the text on windows proved difficult,
but i did manage to find a program to convert from JIS X 0208, called iconv
but its rather annoying I can only feed it a single line, but still some success, looks like i'll have to write something up to automate the text encoding conversion for me
 

BlackShadowx

Newbie
Aug 8, 2018
37
52
Okay, so I didn't have to run my text through any external means,
Java actually had support for JIS X 0208, and was able to display the text. :)
 
  • Like
Reactions: HiEv