(Topic ID: 266605)

Replacing the M6800 in a Stern MPU100 with an Arduino

By DickHamill

4 years ago


Topic Heartbeat

Topic Stats

  • 282 posts
  • 51 Pinsiders participating
  • Latest reply 3 months ago by DickHamill
  • Topic is favorited by 87 Pinsiders

You

Linked Games

  • Stars Stern Electronics, 1978

Topic Gallery

View topic image gallery

IMG_1511 (resized).jpeg
pasted_image (resized).png
pasted_image (resized).png
pasted_image (resized).png
Stars2021-REV3 (resized).png
IMG_4356 (resized).jpeg
mpu.r30 (resized).png
22BFE879-2B7B-4155-B66E-BC9CEDC3CBEA (resized).jpg
5FCA0E77-1E60-4842-97BF-919E50FFD97E (resized).jpg
Screen Shot 2021-08-01 at 3.46.55 PM (resized).png
IMG_1527 (resized).jpeg
Screen Shot 2021-05-05 at 10.05.48 PM (resized).png
Screen Shot 2021-05-05 at 10.05.14 PM (resized).png
IMG_0162SB (resized).jpg
WAVTriggerBeautyKDS (resized).jpg
WAVTriggerBeauty (resized).jpeg

You're currently viewing posts by Pinsider geeteoh.
Click here to go back to viewing the entire thread.

#28 4 years ago

Nice work. Right up my alley. You provided a lot of good detail. At first glance, the arduino wouldn’t seem fast enough, but you aren’t reading the ROM and interpreting the instructions. I never thought about skipping the ROM and RAM.

Haven’t worked with the nano. Will have to get one. Is there any advantage to tapping into the processor socket instead of the expansion connector so that the IRQ can accessed?

#44 4 years ago

I've been using the WAV Trigger in a S&T replacement board design with some success. I control the WAV Trigger serially after decoding the two nibbles from the -35 MPU board. I found that you cannot use the polyphonic feature on all sounds all the time - or you just get a huge sound mess. This is true of the stock programs. Voices need to play by themselves (one after another) and it sounds best if they stop any sounds (with the exception of the background) from playing.

#46 4 years ago

U11-CB2 is used to signal data coming on the shared solenoid/sound bus. Low edge (signal going from high to low) signals the solenoid board to grab the data. High edge signals the sound board. For the sound board, this is called the SI (Sound Interrupt) line. I believe I got the high/low right. I did all my tests with a logic analyzer connected after the inverter on the sound board. So I am inverting all my notes here.

Once the Sound board sees the transition from low to high (high edge). It immediately grabs the first 4-bits from U11-PA7 through U11-PA4. The data is on the lines for about 130 microseconds. Then the next 4-bits come in. I usually grab the second 4-bits about 300 microseconds after the Sound Interrupt. If I wait 400 microseconds, the data is gone.

Technically, it doesn't matter which bit is MSB or which is the high nibble or the low nibble for the sound address. The sound board calls U11-PB0 as S0 (sound bit 0), U11-PB1 as S1 (sound bit 1), U11-PB2 as S2, and U11-PB3 as S3. The sound board has a S4 (fifth sound bit) but neither my Elektra nor MrMrsPac-Man have that wire in the harness. My guess is that they wanted to use all 6 input inverters in the chip for the Sound Interrupt (SI) and 5 sound bits (S0-4). I read the low nibble first, and the high nibble second.

What's strange is that you would think that there would be a lot of transitions on the solenoid/sound interrupt signal that the sound board would ignore, because there could be a solenoid command with no sound. But there isn't. I think this because all solenoid commands are followed with a valid sound command. But there has to be the opposite - sound commands with no solenoid action. The solenoid board probably has a way to ignore a command - maybe there is a NULL solenoid address. It would be easy for the sound board to do this as there are 256 sound addresses. Just pick one that has no sound. But... it doesn't. All sound interrupts are followed with a valid sound (from the two machines I have tested).

#48 4 years ago

My 2 cents. I really like the simplicity of the DickHamill's Nano addition. A simple board with only a plug in simple micro-controller. It utilizes all the hardware and wiring that is already present in the machine. There is very little you need to make a custom game. It's a simple micro-controller that runs one thread instantly at power-up and can be turned off without a shutdown process.

The raspberry pi path has benefits, with it having more bandwidth to take over other features of the machine (better sound, additional light mods, linking, exporting scores) but it requires more machine modifications - which can be done with many other MPU replacement paths that already exist.

In my little world, I'd like to see individual replacement/upgrade boards for the stock Bally light boards, Bally solenoid boards, and Bally sound boards. Boards which function properly in a stock game, but add stuff for those with upgraded MPUs. Like my S&T sound replacement board. It would be cool to have a stock replacement light board that gave us additional lighting capability (like access to RGB LEDs as well) and relays for external lighting mods. Maybe a solenoid board that could control more items.

#51 4 years ago

I messed up the sound S0-S3 locations on U11. I will fix my post above.

1 year later
#160 2 years ago

Try putting the Load/Run slide switch in the Run position. I've never been able to get them to play sounds in the Load position.

#169 2 years ago

@keith20mm, I'd recommend going off the head phone port on the WAV trigger. I believe the output is lower level here. Run two wires from each of the channels. (Leave ground float for now). Put a 1K resistor in series on each line and tie together after the 1K. Then a 10 MFD in series (you'll have one wire now) and a 2.2K resistor in series after that (just like the other circuits on the sound board before the U4 3340). Then tie in where the other 3 similar circuits are - to the C14/R23 node.

Lots of series caps in this setup (but that's what the sound board used). Should keep from drawing too much current if the levels aren't right.

If you get no sounds, try running the ground on the head phone jack to ground on the sound board.

Promoted items from Pinside Marketplace and Pinside Shops!
$ 69.00
$ 29.00
Boards
RoyGBev Pinball
 
From: $ 1.25
Playfield - Other
Rocket City Pinball
 
From: $ 50.75
Playfield - Other
Rocket City Pinball
 
$ 199.95
From: $ 115.00
Playfield - Protection
Beehive Pinball Co.
 
$ 29.00
Boards
RoyGBev Pinball
 
$ 12.00
Playfield - Toys/Add-ons
UpKick Pinball
 
$ 9.00
Cabinet Parts
Third Coast Pinball
 
From: $ 130.00
Boards
Troxel Repair
 
Wanted
Machine - Wanted
St. Louis, MO
$ 169.00
Hey modders!
Your shop name here

You're currently viewing posts by Pinsider geeteoh.
Click here to go back to viewing the entire thread.

Reply

Wanna join the discussion? Please sign in to reply to this topic.

Hey there! Welcome to Pinside!

Donate to Pinside

Great to see you're enjoying Pinside! Did you know Pinside is able to run without any 3rd-party banners or ads, thanks to the support from our visitors? Please consider a donation to Pinside and get anext to your username to show for it! Or better yet, subscribe to Pinside+!


This page was printed from https://pinside.com/pinball/forum/topic/replacing-the-m6800-in-a-stern-mpu100-with-an-arduino?tu=geeteoh and we tried optimising it for printing. Some page elements may have been deliberately hidden.

Scan the QR code on the left to jump to the URL this document was printed from.