Virtvic handed over his sick Bosconian PCB at a recent event for repair. I’d not seen a Bosconian before so it was interesting to delve into one and it also gave me a chance to redump the PAL chip for the Namco version as the one we have on the PLD Archive is flagged as bad.
On power up the game went through its self test process and displays “RAM OK” and sometimes “ROM OK” then reset itself and the whole process repeats itself.
The game uses 3 x Z80’s all working together which is a little bit of a pain but luckily the MAME debugger makes this a little less painless to aid in fault finding.
In the debugger I could run through the code and see what checks are performed in what order to better narrow down where my issue was.
The memory maps for each CPU are the same apart from the ROM’s for each processor. That means all the RAM is visible to all 3 CPU’s.
CPU 1 does all the RAM tests then it lifts the /RESET pin for the other 2 CPU’s which then do a ROM test for their own ROM’s and stick the result of the ROM test into the shared main RAM.
While this is happening, CPU1 is in a loop constantly checking the RAM area for a value. When the value isnt 0x0 then it either proceeds to boot the game or flags a “ROM #” error depending on which ROM has failed.
Now around 90% of the time the “ROM OK” error didnt show before resetting and I never did see a “ROM #” error.
I pulled all the ROM’s and tested them against MAME but found this to be an undumped version. Overlaying the ROM’s on an existing set I could verify that this version booted fine so they were likely good.
All the CPU’s are socketed and all the pins were also going black so removed them to look for damage and cleaned them up in the process. On replacing the CPU’s the game booted but was very flakey. Messing with the CPU sockets I could get different behaviors so was fairly convinced at this point that the sockets were bad. In hindsight I should have suspected these earlier as they are not the best
I opted to replaced all 3 even though CPU1 socket seemed to be fine.
Next boot up went great and nothing I did would make it crash again