What's new

Sega C/C2 - Programming real EPM5032 protection chips

Ape Cosplay

Professional
Joined
Sep 1, 2023
Messages
142
Reaction score
296
Location
Metaverse
Hi all,

a couple of weeks ago my good friend Seb from Rep'Arcade (https://www.rep-arcade.com/) contacted me to see if there was a way to program new protection chips for Sega C/C2 games.
He was in possession of original Thunder Force AC ROMs but the EPLD (EPM5032) was missing.

I had previously reversed that chip in an ATF1502 using an adapter of my own:

1740514783614.png


(Note that I reused that adapter later when I reversed Sega's System 24 protection chips which are also EPM5032s)

That was good enough to run unpatched original code, but not very nice looking.

Now there were a few hurdles on our way:
1) finding obsolete development software supporting Altera's MAX5000 devices
2) sourcing NOS EPM5032 chips in DIP28 (EPM5032DC/EPM5032DI)
3) finding a programmer supporting those devices

1) Software
What you need is Max+ plus II, and of course a valid licence. I tried several versions with no luck, most not working past WinXP (I tried them in a VM), but then I found a V9.3 on the Internet Archive, including a valid license file, and even compatible in Win10 as a bonus:

https://archive.org/details/1999-altera-max-plus-ii-93

Many thanks to Beta vulgaris L. for the upload. :thumbup:

I converted my code to that obsolete version of Verilog, it compiled and fitted in the targeted EPM5032.

1740519731140.png


2) Byuing NOS EPM5032s

My friend Seb in Europe found a seller in Germany. A bit doutful of them being NOS or even functional, we were surprised they were indeed what was claimed upon reception!
I don't know the name of the seller but thanks to them too.

3) Programming EPM5032s
When I reversed those chips, I decided to use an adapter for ATF1502 as I couldn't find a programmer supporting EPM5032s.
But Seb is a very well equipped man, and his DataIO ChipLab fears not programming them, with no adapter required (those chips are peculiar in the sense power pins are in the "middle").
Astonishingly it worked almost perfectly on the first try! With only a few graphic artifacts, but protection mechanism worked, so as other functions of the chip (e.g. generating the 68k clock).
Then 14 versions later, trying to fix timings, we got a perfectly working code!

1740516951617.png


What now? What's next?
We'll be testing a few other games to validate protection equations (they are unique to each game, sometimes even to each region).
The real conondrum is about releasing publicly the files with the guarantee "perfect" conversions will soon pop-up on greedbay and sold as originals...

I guess we could also offer to program chips for the part cost + shipping to people who send pics of their board with the serial (that will limit the number of circulating chips to two per serial if the OG one isn't really missing).
 
Last edited:
Back
Top