- World Rally
- Alligator Hunt
- World Rally 2
- Touch & Go
- Maniac Square
- TH Strikes Back
- Glass
- Target Hits
This program actually patches main CPU's code. If the battery dies, the DS5002 no longer makes the correct patches and the game won't run. Typical symptoms of a dead battery are a "COPROCESSOR NOT READY" message :
Until some time ago it was possible to revive only World Rally since Gaelco itself released the code of this game to be re-injected onto the DS5002 MCU.Then two smart guys, Peter Wilhelmsen and Morten Shearman Kirkegaard, devised a way to back-up DS5002 firmware of all boards via FPGA, this is the original document explaining their work:
Backing Up Firmware from Dallas Semiconductor DS5002FP
Some time ago I tried to desuicide a TH Strikes Back but I falied using the standard procedure hence Peter Wilhelmsen himself kindly explained me how to correctly perform it.Taking as example TH Strikes Back if you look at the MAME source:
https://github.com/mamedev/mame/blob/4e089ae32e8335034b2412a2d478e278fd29832d/src/mame/drivers/thoop2.cpp#L332
You will see: DS5002FP_SET_MON( 0x79 ) which means the special register MCON is set to 0x79 (lowest bit signifies if protected/locked or not), MCON is responsible for partitioning of code/data boundaries.
I will not cover here the preliminary setup on how to connect the PCB to a PC via RS232 or USB to UART adapter, there are many tutorials on the net.
Working on the terminal program on your PC these are the steps to repair most boards that does not use the entire memory as code (like World Rally 1) :
- 'U' command (without quotation marks) to unlock the MCU.The game should answer ''UNLOCKED'
- 'L' then upload/paste the intel hex file.
- 'W MCON <value>' (for TH Strikes Back 'W MCON 79') to write the special register
- 'R' to read the status of NV SFRs, you should see MCON now set to 78 (lowest bit not set because its not yet locked)
- 'Z' to lock the MCU
A big thanks again to Peter Wilhelmsen for his work and precious help.Thanks to him now we are able to revive our boards.
And a posthumous thanks to his friend/collegue Morten Shearman Kirkegaard who sadly passed away some months ago :
Farewell Morten Kirkegaard
This little guide is dedicated to his memory.
Great work, thank you very much for your contribution to the preservation of the arcade's heritage.
ReplyDeleteHi. I am having problems with this motherboard. A few months ago it was working perfectly, but a few weeks ago I had "Coprocessor bad".
ReplyDeleteHere in my twitter account I have taken the pictures: https://twitter.com/Tailsnic_Retro/status/1272218777845936128
Whenever I turn on again the game, the error is still happening. The MCON value is always F8, and I have set the new battery and all the contacts are in good continuity.