3 May 2017

Sega System C2 conversions (Thunder Force AC)

I've been asked by a member on a French forum if I could help him to make his Thunder Force AC conversion to work. I had never worked on the System C2 before so I was a bit curious to discover it.

The member had used the bootleg ROMs for his conversion and experienced colour issues. I preferred to base my work on the original ROMs.

I ran my conversion in MAME and the game would just start normally but then hung at the beginning of stage 1. In fact on this hardware protection is very weak and I quickly found how to patch the game: I reassembled the IC31 & IC32 ROMs together (interleaved odd & even bytes) and modified a jump conditioned by the result sent by the protection chip. At the end I only had to modify a single byte.

I also had a look at other games and the protection didn't appear to be much more complicated: only few instructions to modify or replace with NOP instructions. When protection check fails behaviour of the game can be:
- hanging
- resetting
- missing graphic elements
- wrong colours

[EDIT]

I thought it could be interesting to explain the method I used.

I first ran the original game in MAME (romset tfrceac) so as my "conversion" forcing MAME to use a different protection chip (in this case I used the one of Zunzunkyou No Yabou, romset zunkyou). I use the MAME debugger (e.g. mame -window -debug tfrceac) allowing me to view code execution, place break points, do step by step execution, etc.

I found that the "conversion" jumped at 0x4798, something the original game doesn't do:

004798: 60FE bra $4798

Using MAME disassembler (e.g. dasm tfrceac.txt,0,100000 in the debugger) I made a search for $4798. There are only 2 occurrences:

P.S. : Files IC31 and IC32 have to be interleaved in order to work on the code. One contains odd bytes (LSB) and the other one even bytes (MSB). Once the modification made the file has to be de-interleaved into 2 files.

[EDIT 2]

It's been reported that the hack contained a bug where you never lose lives.

Not sure what you mean, the last version I made has been fully tested and reported as working perfectly by several persons.Maybe you should check your dipswitches.I did hack Zunzunkyou too and all the other System C2 games but never released them as I don't own the hardware to test my work.

Can Bloxeed be used for TFAC? It's on c2 hardware but there's no eprom or socket where 13655 goes. I read on MJMoffit's site that there's no protection for Bloxeed so if I add a socket and the eprom do you think it'll work on this board?Thanks

Bloxeed, Columns and Columns II are System C hardware not C2 thus they lack the audio µP chip. But that's not a problem to use a System C2 board, audio chip is just unused.There are also jumpers to set EPROMs size you might have to move.