Marble Madness "Bank Switch Error" Fix

DogP

Well-known member
Joined
Sep 3, 2001
Messages
13,753
Reaction score
1,811
Location
Virginia
Hey,

Just wanted post this in case someone else comes across this problem. My Marble Madness was working just fine for a long time, then out of the blue one day it booted to "Bank Switch Error". Searching around, everyone seemed to point to a bad Slapstic... which of course sucks, because there's no replacements available. Luckily, Marble Madness is compatible with the Roadblasters chip, which is cheaper/easier to find... but still not cheap. So, I started looking into how they work, and possibly making a replacement.

Then, I figured that I'd try testing the Slapstic with the logic probe, and surprisingly, it seemed to be working (looked similar to what was happening in the log in mame w/ LOG_SLAPSTIC defined in slapstic.c ). But, looking at the schematics, I figured that an error caused by a bad Slapstic would be the same as an error caused by the ROMs that the Slapstic drives. Probing them found one pin that never changed on chip 13A. I dumped the ROM, and yep... one bit was stuck high. This was a 23128, which has a compatible pinout with a 27C128. I burned the good file to a 27C128, replaced it, and the game came right back up.

So... I just wanted to document that before putting all bets on a bad Slapstic, dump the Slapstic ROMs (13A and 14A on a MM board). I wish I had done that from the start (would have taken no more than 5 mins), before spending all that time trying to figure out how to bypass or recreate the Slapstic, though I guess at least now I understand how a Slapstic works :p .

DogP
 
Nice thread :)

It's always great to read how different people track down problems.

One question: What did you probe with? A logic probe or an oscilloscope?

RJ
 
It would be cool if someone could come up with a set of ROMS for the System 1 games that didn't require the Slapstick. Like they did for Gauntlet and Gauntlet II.
 
One question: What did you probe with? A logic probe or an oscilloscope?

I was just using a logic probe... initially just to check if the slapstic outputs ever change. I figured a dead slapstic would likely be stuck high, low, or somewhere in between... when I saw them changing, I figured something was up (and it started in bank 3, which is correct). So, I checked the address pins coming in, clock, enable, and they all were toggling as well. That told me enough to suspect elsewhere... like to the next part in line... the slapstic ROMs.

If that didn't answer my question, I was planning on hooking up the logic analyzer, logging the boot sequence up to the error, and compare it with the MAME debug output to find out where it was going wrong.

It would be cool if someone could come up with a set of ROMS for the System 1 games that didn't require the Slapstick. Like they did for Gauntlet and Gauntlet II.

Yes... I had looked into that, but there didn't seem to be an easy way to do that. Running Gauntlet and Marble Madness in MAME with debugging and slapstic logging showed a lot of differences... and what they did for Gauntlet doesn't appear that it'd work for Sys1. While you may be able to modify the ROMs to work without the slapstic, it'd be a LOT of work, and probably require several ROMs to be changed.

The easier thing seemed to be to recreate the slapstic in a CPLD. I started that last night... but decided to investigate whether it's actually bad today... sorry ;) . Maybe one of my other slapstics will die some day and I'll finish it :p.

DogP
 
It would be cool if someone could come up with a set of ROMS for the System 1 games that didn't require the Slapstick. Like they did for Gauntlet and Gauntlet II.

Gauntlet / Gauntlet II don't use the slapstick to bank program ROMs, only the gfx roms -- that's why that hack significantly easier.

Why not try it yourself, instead of expecting others to do the work for you?
 
Back
Top Bottom