Thursday, December 8, 2011

The new tool and Street Fighter III - 2nd Impact

I'm currently working on a new version of the tool that works directly with ISO files and recognizes automatically the game, so you just enter the filename of the input ISO and the filename of an ISO of the output cartridge and you'll get the game converted. You need to input a second ISO to copy the header and some other data that will remain unchanged from an ISO of the destination cartridge.
The tool should hopefully be ready soon and will be released together with source code.

This will give a lot of options to people who want to develop it further like i.e. using infinite energy, change the country code,etc.

I have asked a colleague to port it to Visual C++ what will make it even easier as you can use the browser and just click on the isos.

Regarding SFIII-2 please notice that this is a very special version. The code itself is still encypted using the keys 0x00000000 and 0x00000000, BUT the data is not. This means that we have mixed encrypted and non encrypted data in consecutive adresses....So how to convert from one system to anouther??

At the moment I am working on a background logging routine that outputs every memory address that has been read in the range 0x06000000-0x06ffffff. With this we can try to identify which part is data and which part is code. The problem is that you have to start the logger and start playing, inserting coins, playing the game to the end, enter the Service menu, Win a battle, lose a battle, to sum up, you have to make sure that all the possible instructions are being run, because if not, my program won't decode them and if we ever happen to execute this instruction, the programm will probably freeze.
I'm trying this logger with SFIII-2 what means that if I have success, one can play SFIII-2 in OTHER systems. If we want the SFIII-2 cartridge to run other games, we have to do exactly the same for the other 5 GAMES(play them to the end, process the log and create a decryption table that will allow us to convert them to the destination cartridge). It may sound easier to say than to do....believe me :)

Last but not least I would like to thank all the people who donate. For me it's a good sign that you like my job and will motivate me on working further. THANK YOU!

2 comments:

  1. Great work! :)

    I have noticed that Warzard/Red Earth will always run as Japan region.

    This appears to be because Warzard/Red Earth looks for the region flag at offset 0x1FEDB in the cart BIOS, where the other five games have it at offset 0x1FECB. The game defaults to Japan since it doesn't find a valid region value.

    Therefore, the Warzard/Red Earth code needs to be patched to read from offset 0x1FECB.

    If using a Warzard/Red Earth cart, then the five other games will need to be patched to read from offset 0x1FEDB.

    ReplyDelete
  2. Awesome work, Thanks for the update! Thats unfortunate about 2nd impact though, such a hassle!

    ReplyDelete