Giter VIP home page Giter VIP logo

PPUC - Pinball Power-Up Controllers

The Pinball Power-Up Controllers are a set of hard- and software designed to repair and enhance the capabilities of classic pinball machines of the 80s and 90s and to drive the hardware of home brew pinball machines. The project is in ongoing development. Visit the PPUC Page for further information. This directory contains the PinMAME related parts, mainly the building blocks to emulate a pinball CPU that drives PPUC I/O boards.

Motivation

We want to enable people to be creative and to modernize old pinball machines using today's technology. Our goal is to establish an open and affordable platform for that. Ideally people will publish their game-specific PPUs so others could leverage and potentially improve them. We want to see a growing library of so-called Pinball Power-Ups (PPUs) and a vital homebrew pinball community.

Licences

The code in this directory and all sub-directories is licenced under GPLv3, except if a different license is mentioned in a file's header or in a sub-directory. Be aware of the fact that your own enhancements of ppuc need to be licenced under a compatible licence.

PPUC uses

Documentation

These components are still in an early development stage and the documentation will grow.

Command Line Options

  • -c path
    • path to config file
    • required
  • -r rom name
    • rom to use, overwrites rom setting in config file
    • optional
  • -s serial device
    • serial device path to use, overwrites serialPort setting in config file
    • optional
  • -d
    • enable debug mode, overwrites debug setting in config file
    • optional
  • -u
    • enable Serum colorization
    • optional
  • -t VALUE
    • Serum timeout in milliseconds to ignore unknown frames
    • optional
  • -p VALUE
    • Serum ignore number of unknown frames
    • optional
  • -i
    • render display in console
    • optional
  • -h
    • help

Compiling

Windows (x64)

platforms/win/x64/build.sh

Windows (x86)

platforms/win/x86/build.sh

Linux (x64)

platforms/linux/x64/build.sh
Ubuntu 23.10 Example
sudo apt install autoconf libtool libudev-dev libpipewire-0.3-dev git
git clone https://github.com/PPUC/ppuc.git
cd ppuc
platforms/linux/x64/build.sh
ppuc/ppuc_pinmame -c examples/t2.yml -n -i

Linux (aarch64)

platforms/linux/aarch64/build.sh

MacOS (arm64)

platforms/macos/arm64/build.sh

MacOS (x64)

platforms/macos/x64/build.sh

Pinball Power-Up Controller's Projects

config-tool icon config-tool

Web-based configuration and management tool for Pinball Power-Up Controller

libdmdutil icon libdmdutil

A cross platform library for performing DMD tasks.

libframeutil icon libframeutil

Some DMD frame utilities used by libzedmd and libdmdutil

libppuc icon libppuc

Cross-platform library for communicating with PPUC i/o boards

libserum icon libserum

Cross platform dynamic library code for Serum file format

miniz-esp32 icon miniz-esp32

This is a reduced version of miniz, modified to use psram if available on an esp32

pinmame icon pinmame

Incubator for PPUC related PinMAME enhancements

rgb_dmd icon rgb_dmd

Display Pinball DMD signals on RGB LED panels using a Teensy Development Board.

vpxtool icon vpxtool

Terminal based frontend and utilities for Visual Pinball

zedmd icon zedmd

A real DMD for virtual pinball machines and PPUC driven real pinball machines

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.