GALAXY 2021 - new code for a Stern classic
Over the past year and a half, I've been rewriting Bally/Stern early solid state pinball machines. I plug an Arduino into J5 so the machine can dual-boot between old code and new. I've just wrapped up GALAXY2021. It's available from GitHub now.
Before I forget - all thanks go to sethbenjamin (on pinside) who loaned me his GALAXY and gave me complete creative freedom to do whatever I wanted. Let me know if you have a Solid State game and you want new rules.
Video of game play features:
Why:
The early Bally/Stern games were great shooters that were limited by the software. I wanted to play new rules on my machine without altering the original hardware so I could easily remove my mod when I wanted to move the machine.
How:
The Arduino MEGA 2560 has a ton of I/O pins and has tons of space for code. I've written a library of functions for the Lamps, Switches, Solenoids, Displays, and different sound cards. With a simple daughter card, the Arduino can control the MPU. The daughter card plugged into J5 (when turned on) Halts the 6800, takes over control signals, a few address lines, and the data lines. Then, the Arduino operates much like 6800 except it's faster and has more code space. The hardware for this project is a bunch of wires and a few connectors. It can be built by hand, but there are also kits and Gerber files available for people who want a PCB.
The theory behind the mod is described on my blog: http://ikehamill.com/2020/03/21/replacing-the-m6800-with-an-arduino-nano/
Instructions are on GitHub pages: https://ballysternos.github.io/
!!!EDIT!!! links have changed:
Code is here: https://github.com/RetroPinUpgrade/SolarSystem23
Schematics are here: https://github.com/RetroPinUpgrade/ExampleMachine/tree/main/Schematics
Theory is here: https://www.pinballrefresh.com/blog/controlling-a-stern-mpu-100-with-an-arudino-nano
If you have questions about building/ordering boards, let me know. At the moment, I don't sell anything but I would be happy to help you get in contact with someone who does.
Machines:
So far, I've released
* Stars 2020/2021
* Black Jack 2020
* Trident 2020
* Meteor 2021
* Silverball Mania 2021
bluebomber created FlashGordon2021
All the code can be found here: https://github.com/orgs/BallySternOS/repositories?type=all
Parts:
For this build, I'm using the Arduino MEGA 2560 clone in a small form-factor.
* MEGA clone by ACEIRMC - https://www.amazon.com/gp/product/B08M3WV6LX/
* Bag of headers - https://www.amazon.com/gp/product/B01MQ48T2V/
* Switch - https://www.amazon.com/gp/product/B0799LBFNY/
* Connector for switch - https://www.amazon.com/gp/product/B01DUC1O68/
* Wire for WAV Trigger - https://www.amazon.com/gp/product/B0789F523N/
* WAV Trigger - https://www.amazon.com/gp/product/B0108LU05A/
* 22 Gauge Wire for switch - https://www.amazon.com/gp/product/B07RVLGCXK/
For a board, you can wire your own prototype, get a kit, or order your own PCB from Gerber files. Here are schematics and files (USE V3 FILES):
https://github.com/BallySternOS/BallySternOS/tree/master/Schematics
This mod works with the original MPU (Stern MPU200) and the Alltek replacement. At the moment, it doesn't work with Weebly MPUs.
GAMEPLAY
========
These new rules bear almost no similarity to the original GALAXY code. It's very much much mission based, where the original was just a matter of lighting and hitting things. To each their own. This is an alternative, but it's built so that the operator can easily switch back and forth and play the machine however they want.
Skill Shot: GALAXY2021 has one main skill shot - the top saucer. While waiting for the ball to be plunged, the game will loop rally music and the lights at the saucer will cycle. Landing the ball in the saucer awards 10x the value of the light when the ball lands.
There's a second (undisclosed) skill shot as well.
Missions: GALAXY2021 has 8 normal missions and 1 super mission. The eight missions are based on the planet lights on the playfield. Landing the ball in the GALAXY turnaround will select a mission based on how many GALAXY rollovers have been collected so far. From left to right, the missions have 1, 2, or 3 legs. They build in complexity and award potential. Finishing 3 missions lights Extra Ball. Finishing 5 lights Special. Finishing 7 starts the super mission (Sun Special). The number of completed missions is shown in the 1s digit of the score display.
Side Quests: At any time during non-mission play, a side quest can be qualified and started. The four side quests are Refuel, Pirate Encounter, Welcoming Passengers, and Collecting Cargo. Refuel is a spinner goal, Pirate Encounter is the star standups, Welcoming Passengers involves the GALAXY rollovers, and Cargo deal with the drop targets. Once a side quest is qualified (by competing goals related to the shots listed previously), it is started with the top saucer. Side quests come with +1X playfield multiplier. Stacking multiple side quests grants more time, and up to 5X playfield. Side quest timers are paused during missions, so carrying one or more side quests into a mission brings more scoring opportunities and also brings in any playfield multipliers.
Scores are scrolled to show scores up to 1 billion points.
Completing all the planetary missions resets the player's rank (shown in the 1s digit) so the player can repeat the process and never run out of gameplay.
The game features over 250 sounds, songs, and callouts. The soundtrack is replaceable and three soundtracks can be loaded at once and controlled through a coin door adjustment. All coin door adjustments are announced through the sound card, so the lack of display capability isn't as much of an issue.
Other features:
* Ball Save
* Progressive Saucer (increases in value temporarily each time you hit it)
* Drop target sharp shooter mode
* Scrolling scores
* Free Play
* WAV Trigger Sounds & Multiple Soundtracks
* Lots of flashing lights
This is all free and non-destructive. You can still play the old rules with the flip of a switch. If you put these rules on your GALAXY, please post a video.