Monster Land English : from Encryption to Decryption...
Posted: March 30th, 2014, 8:40 pm
EDIT 09/25/2014: Here is the link to the Porchy's website downloading section, where you can find the decrypted files on the last page of that section.
And if you want, you can even make a donation to Porchy, so he'll be able to keep-up good work (I won't get any money of this )
===============================================================================================
Hello there. I love Wonder Boy in Monster Land, and I'm sure I'm not the only one here. I made a topic on a french board concerning the recent work I achieved recently on that game (original topic is here, in french unfortunately).
What I want to do here, is to sum up my work, step by step.
As everyone knows, until recently there were no official release English version of the arcade Wonder Boy in Monster Land. That's pretty annoying, but that game has a strong RPG aspect (for an arcade game I mean), with some dialogs, shops, clues etc...
Some bootlegs were released in non-Japanese countries. Here are some samples of them
For those who don't remeber, here is the Japanese title screen
Well it's just a title screen, but translation is not really better
"oh Fighter: Listen...c'mon bro!"
My favorite one:
"You get sword and drug", amazing...
All the dialogs are as bad as those samples. Pretty sad isn't it? But an unexpected miracle happened...
An English version has been release on the Virtual Console Arcade of the Nintendo Wii...with a gorgeous Title screen and a pretty descent translation. That version was confirmed to be 100% genuine by Ryuichi Nishizawa, who's the main programmer and the producer of WBML, and the head of Westone. You can read a very interesting interview here
Besides, some hackers managed to extract a romset from that version, that can be used on Mame...and of course on real hardware. At that point, my choice was made, I wanted to play that official Westone English version of the game on my original Japanese PCB... which happened to suicide as I was starting to work on that issue...
Of course, it was not that easy, some problem showed up...
ROM files size :
The original PCB was designed to be used with 32KB eproms (256Kbit), whereas 2 of the 6 rom files in the Virtual Console romset are 64kB (512kbit) : VC.IC90 and VC.IC91 . Why? That's because of the encryption/decryption method. We can't use them on an original PCB without modifying it.
Basically, rom files have two kinds of content : OPcodes and DATA. OPcodes are instructions, DATA are graphics, sounds etc... Both of them use the same decryption key, but OPcodes need it only once and DATAs need it twice. Besides, inside OPcodes some bytes coding for addresses or variables are encrypted like DATAs. Finally, one of the rom files (the one that has the game program) has those two kinds of info mixed together.
So, why 64KB? Just like the bootleg romsets, that's because to decrypted the game, each ROM has been decrypted first to get instructions bytes readable, then a second time to get DATA-like bytes readable. Then those two 32kbytes files have been put together into a 64 kbyte eprom, so the CPU can work it without any decryption key (that disappeared when the suicide battery is dies).
My work here? I had to take OPcodes and DATA correctly decrypted on the good half of each 64Kbyte rom file, and dump the rest in order to get nice and slim 32kbytes romfiles.
Using a hexadecimal editor, I took a look inside the VC.IC90 and VC.IC91 files, and It appeared that IC91 was only twice the same 32KBytes decrypted file. Nice! On the contrary, IC90 was pretty messy, with DATA and OPcodes together as described before. Well I did all the work manually, it took me almost 2 months and a half. Thankfully, a friend of mine gave me a small DOS-Command program, found on a Japanese website, that maps DATA and OPcodes on the original Japanese encrypted ROM images files, and decrypts them. Japanese IC90 and English IC90 are very similar, but not identical. That Japanese map helped me to map the English IC90, but I couldn't use it directly, neither the decryption DOS program.
At the end I finally got a romset with only 32Kbyte ROM image files that could be used on my PCB without modifying it. The end...? Not really...
And if you want, you can even make a donation to Porchy, so he'll be able to keep-up good work (I won't get any money of this )
===============================================================================================
Hello there. I love Wonder Boy in Monster Land, and I'm sure I'm not the only one here. I made a topic on a french board concerning the recent work I achieved recently on that game (original topic is here, in french unfortunately).
What I want to do here, is to sum up my work, step by step.
As everyone knows, until recently there were no official release English version of the arcade Wonder Boy in Monster Land. That's pretty annoying, but that game has a strong RPG aspect (for an arcade game I mean), with some dialogs, shops, clues etc...
Some bootlegs were released in non-Japanese countries. Here are some samples of them
For those who don't remeber, here is the Japanese title screen
Well it's just a title screen, but translation is not really better
"oh Fighter: Listen...c'mon bro!"
My favorite one:
"You get sword and drug", amazing...
All the dialogs are as bad as those samples. Pretty sad isn't it? But an unexpected miracle happened...
An English version has been release on the Virtual Console Arcade of the Nintendo Wii...with a gorgeous Title screen and a pretty descent translation. That version was confirmed to be 100% genuine by Ryuichi Nishizawa, who's the main programmer and the producer of WBML, and the head of Westone. You can read a very interesting interview here
Besides, some hackers managed to extract a romset from that version, that can be used on Mame...and of course on real hardware. At that point, my choice was made, I wanted to play that official Westone English version of the game on my original Japanese PCB... which happened to suicide as I was starting to work on that issue...
Of course, it was not that easy, some problem showed up...
ROM files size :
The original PCB was designed to be used with 32KB eproms (256Kbit), whereas 2 of the 6 rom files in the Virtual Console romset are 64kB (512kbit) : VC.IC90 and VC.IC91 . Why? That's because of the encryption/decryption method. We can't use them on an original PCB without modifying it.
Basically, rom files have two kinds of content : OPcodes and DATA. OPcodes are instructions, DATA are graphics, sounds etc... Both of them use the same decryption key, but OPcodes need it only once and DATAs need it twice. Besides, inside OPcodes some bytes coding for addresses or variables are encrypted like DATAs. Finally, one of the rom files (the one that has the game program) has those two kinds of info mixed together.
So, why 64KB? Just like the bootleg romsets, that's because to decrypted the game, each ROM has been decrypted first to get instructions bytes readable, then a second time to get DATA-like bytes readable. Then those two 32kbytes files have been put together into a 64 kbyte eprom, so the CPU can work it without any decryption key (that disappeared when the suicide battery is dies).
My work here? I had to take OPcodes and DATA correctly decrypted on the good half of each 64Kbyte rom file, and dump the rest in order to get nice and slim 32kbytes romfiles.
Using a hexadecimal editor, I took a look inside the VC.IC90 and VC.IC91 files, and It appeared that IC91 was only twice the same 32KBytes decrypted file. Nice! On the contrary, IC90 was pretty messy, with DATA and OPcodes together as described before. Well I did all the work manually, it took me almost 2 months and a half. Thankfully, a friend of mine gave me a small DOS-Command program, found on a Japanese website, that maps DATA and OPcodes on the original Japanese encrypted ROM images files, and decrypts them. Japanese IC90 and English IC90 are very similar, but not identical. That Japanese map helped me to map the English IC90, but I couldn't use it directly, neither the decryption DOS program.
At the end I finally got a romset with only 32Kbyte ROM image files that could be used on my PCB without modifying it. The end...? Not really...