So this is a project a long time in the making, several years actually. Life unfortunately has gotten aggressively in the way several times, but I've always returned to keep on getting on. A lot of people have helped me on these forums over the years which I can't express my appreciation enough for!
JAMMA Custom Arcade Project (JCAP)
is a project with the goal of developing a JAMMA arcade standard compatible game board using the Parallax Propeller 1 (P8X32A) microcontroller upon which a user can implement their own custom arcade game, either from scratch or by using the library of graphics, sound, input, and other drivers developed under the project. Ultimately, the project will provide:
- VGA video driver
- Sprite/tile based graphics driver
- PWM sound driver
- Serialized input driver
- Game engine
- PCB schematic and CAD files
in such a way that a user has everything they need to implement their own arcade game and have a PCB printed to build it on.
A more detailed description can be found in the JCAP readme
Here you can see the current (breadboarded) circuit laydown. It includes the dual P8X32As in the center, with the serialized input system to the East, and the VGA DAC in the Northwest.
This is the power system including AC EMI filter, switching arcade PSU, audio amp, and +5V/+12V/GND distribution blocks.
Here's a simple demo, showcasing movement, rotating color palette animations, sprite animations, and parallax scrolling.
The project is being managed via GitHub, and can be found here.
A progress log/wiki is constantly being updated, and contains a lot of background information that some might find very interesting such as a brief history of arcade games and an analysis of historical video formats:
Currently, JCAP is on pause as a custom IDE is being developed to manage graphical assets...
JCAP Integrated Development Environment (JIDE)
JIDE is a project developed alongside JCAP in order to provide a graphics development application which can integrate with the JCAP framework. This utility features:
* A cross-platform compatible, PyQt-based GUI
* Unique environments for developing tiles, sprites, and tile maps
* A portable, human-readable JSON-based file format for easy portability and sharing
* An extensive list of intuitive graphcics development tools and features
* Pixel-perfect graphics precision
* Integration with JCAP, including programming the system directly via dual serial connection
This portion of the project is the current focus, as neglecting to develop an IDE would ultimately require hand-jamming hex matrices to create graphics assets in memory.
Features are being added daily, and it's expected to be completed in the next month or two.
Here's a short clip of the entire system in action: