First, thanks to everyone for all the interest so far! From the outset, our intention was to bring the Cinematronics and Vectorbeam games we love to a larger audience, so it's great to see those ideas validated by the support we've been receiving. We've been very busy and have made a lot of progress since first revealing the project earlier this summer, so we thought it would be a good opportunity to share some of that progress and bring folks up to speed with where we are at.
We first announced the project at the NW Pinball & Arcade show in Seattle this past June., where we prototypes running in 2 Cinematronics cabinets with 5 playable games in each. We showed an updated version of that prototype running in a War of the Worlds cabinet at CAX last month.
At this point, we feel the basic underlying platform is there and demonstrates all the major elements we initially set out to accomplish:
- Implement the Cinematronics CCPU in an FPGA with 100% accuracy. This took some effort to get to. The original schematics included several errors, and Brian had to build a test fixture running an original CCPU and the FPGA in parallel to identify and close all the gaps
- Deploy the FPGA to a board package with I/O and cabling to run in an original, unmodified Cinematronics cabinet, with working voltages, video output to the Vectorbeam display, and a common set of playable controls built around the 'Asteroids interaction model' (Left, Right, Thrust, Fire). This enabled us to play the heart of the Cinematronics catalog, as games like Star Castle and Armor Attack all share a common set of controls
- Ability to boot up and play multiple Cinematronics / Vectorbeam games in a multigame format. The current platform builds each game into the FPGA bitstream, and we with a button combo we can easily switch to and boot right into the next game in a list or carousel. We like this method of switching games because it is simple and lightweight, plus all the C/V games boot directly into the game mode with no startup routine or test screens
This effectively met all the initial goals we had for the project: to produce a low-cost, drop-in replacement for failing (or missing) C/V hardware that could run in an original cabinet with no modifications.
But we aren't done yet. Not even close. We have several other major goals in mind that we think will make this application even better and appealing to a wider audience. We're not ready to talk about all of those plans just yet, but we feel comfortable sharing the following progress.
Video on the Electrohome G05
The circuitry has now been defined to handle the digital to analog conversion of the video signal output from the CCPU to drive an Electrohome G05 monitor. In keeping with our original goal of bringing these games to an expanded audience, we had always wanted to enable playing a set of games with common controls in an Asteroids cabinet. Original C/V cabinets can be hard to come by, and the fact is there are many more surviving Asteroids cabinets available today. Brian has been working to identify a low cost DAC solution that can handle the display requirements, writing the drivers needed to test several candidates on the G05. After evaluating several different options and choosing one with the best cost to performance ration, he feels confident about the DAC we will be using in the final build. Hardware was also added for the Atari edge connector and power supply, and this has been tested in an original Asteroids cabinet.
Game Settings and Options
We also made a progress on the front end to allow for setup and game options on screen. This has been supported in a big way by Timothy at Outerworld Arcade who has been providing code to help out with the project. Timothy has a working menu system that uses the original Star Castle / Solar Quest fonts, and we are building out and testing that now. Our plan at this point is to support freeplay, saving high scores, choosing which games to enable in the carousel, and (ideally) to expose the game specific settings in software. All original C/V games had options enabled through hardware dip switches on the logic board. We are looking to make those configurable on screen so you don't have to open the cabinet to change something. The screenshots below were taken while testing in MAME.
Other Cabinet Configurations
Another area we've made progress on is ensuring the board can operate across a range of original cabinets with different monitor configurations, depending on the game. C/V games were designed to support vectors of variable intensity. Most games had 2 or 16 levels of intensity. The very late games, like War of the Worlds and Solar Quest, had a daughter board on the monitor enabling 64 levels of intensity. What if you want to play Solar Quest with a monitor that only supports 2 levels? We don't want to require everyone to have hardware supporting 64 levels, so we have made sure games can gracefully downgrade their intensity level depending upon which monitor they will be played on. That includes running these games on an Electrohome G05.
Also, several C/V games were designed to operate in cabinets with a mirrored display so their images could be super imposed over a cardboard backdrop. Since we don't want to require folks to install a mirror in their cabinets to play a game like Solar Quest, we have added the logic to mirror the display so it will look and play right in a non-mirrored cabinet. Thanks again to Timothy @ Outerworld Arcade for that.