A multi-monitor Virtual Pinball Suite for Linux.
Yes! You can use on single monitor 🙃
ASAPCabinetFE.mp4
"As Simple As Possible".
Tip
Grab precompiled builds from Releases or Actions page for the fastest start.
Please refer to the User's Manual
Copy/paste like a senior systems administrator who has meticulously tested the Ctrl+C and Ctrl+V functionality for three years before committing it to production.
sudo apt-get install git findutils -y -qq
git clone https://github.com/surtarso/ASAPCabinetFE.git ASAPCabinetFE-src
cd ASAPCabinetFE-src
git lfs install && git lfs pull
cat apt-packages.txt | xargs sudo apt-get install -y
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build . -j$(nproc)
cmake --install .
cd ~/ASAPCabinetFE
./ASAPCabinetFECopy/paste like an overcaffeinated trench-coat-wearing coder whose keyboard is sticky with energy drink residue and whose one true source is an outdated Wiki page.
sudo pacman -Syu --noconfirm git findutils
git clone https://github.com/surtarso/ASAPCabinetFE.git ASAPCabinetFE-src
cd ASAPCabinetFE-src
git lfs install && git lfs pull
cat pacman-packages.txt | xargs sudo pacman -S --needed --noconfirm
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build . -j$(nproc)
cmake --install .
cd ~/ASAPCabinetFE
./ASAPCabinetFEUNTESTED arm64 build
(I do NOT own a Mac and I just made it compile and link without errors, if you are a Mac person and interested in this, feel free to jump in as I have no real way to test this right now)
# Install Homebrew if you don't have it:
# /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
git clone https://github.com/surtarso/ASAPCabinetFE.git ASAPCabinetFE && cd ASAPCabinetFE
git lfs install
git lfs pull
brew update
cat brew-packages.txt | xargs brew install
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${HOME}/ASAPCabinetFE -DCMAKE_PREFIX_PATH="$(brew --prefix)" -DCMAKE_FIND_ROOT_PATH="$(brew --prefix)" -DCMAKE_OSX_ARCHITECTURES="arm64" ..
cmake --build . -j$(sysctl -n hw.logicalcpu)
cmake --install .| Topper/DMD without Metadata | Topper/DMD with Metadata |
|---|---|
![]() |
![]() |
- Full screen multi monitor display of table playfield, backglass, topper and DMD.
- Tailored to mimic Visual Pinball X cabinet setup for seamless transitions.
- Use
VPinballX.inifor size and position auto-configuration. - Sort tables by title, type, manufacturer, year or author.
- Navigate tables with titles and/or wheels and marquees.
- Support for ambience, per-table music and launch sounds.
- Extended settings for many display configuration arrangements.
- Keybind friendly and joystick support.
- Extremely lightweight, blazing fast and fully customizable.
- No need to download artpacks, generate your own.
- Multiple animations to indicate your missing media or to use as default.
- Procedural generated DMDs with table title or manufacturer logos based on metadata info. (see Legal)
- Use you own 128x32 real DMD images (animations not yet implemented)
- Fully compatible with VPX Standalone v10.8.0 and v10.8.1
| The Editor |
|---|
![]() |
- Spreadsheet view of all owned tables.
- Row recolor on successful and failure launches for easy ID.
- Easily filter tables by any characteristics.
- View complete table metadata and art with a single click.
- Fuzzy search and play hotkey making tests super fast.
- Open root or specific folders straight from the editor.
- Lists user owned media (images, videos and sounds).
- Lists table specific files as INIs, VBSs, B2Ss.
- Lists table specific extras as altColor, altSound etc.
- Mark tables you have overrided metadata.
- Advanced menu for file operations (delete, backup, override metadata).
- Manage media cache with a single click.
- Create custom table overrides for display and matching.
- Advanced menu for VpxTool --flags.
- Use VPin to retrieve table file metadata.
- Match metadata with VPSDb API with visual feedback.
- Browse VPSDb to find and download new tables.
- Automatically apply or update table patches from vpx-standalone-scripts.
- Download media from the Vpin Media Database and Launchbox Database.
- Update check and notifications to keep you up to date.
- Update online databases on the fly.
Note
Check the User's Manual for more details.
Make sure you have `git` and `xargs` available (
Debian)
sudo apt-get update
sudo apt-get install git findutils -yClone the Repository
git clone https://github.com/surtarso/ASAPCabinetFE.git ASAPCabinetFE-src
cd ASAPCabinetFE-src
git lfs install
git lfs pull🐞 Build and Run (Debug)
For debugging, build with the Debug configuration to include symbols and run directly from the build folder.
cmake -DCMAKE_BUILD_TYPE=Debug -B build -S .
cmake --build build -j$(nproc)
cd build
./ASAPCabinetFE
# or ./ASAPCabinetFE-Editor🕹️ Build and Install (Release)
cmake -DCMAKE_BUILD_TYPE=Release -B build -S .
cmake --build build -j$(nproc)
cmake --install buildRun and configure your paths:
cd ~/ASAPCabinetFE
./ASAPCabinetFE
# or ./ASAPCabinetFE-EditorBuilt something cool? Share it with us in the Discussions!
We’re dreaming big! Help us bring these features to life:
- DOF support.
- Real DMD connection.
- Highscore tracking.
- Multi-launchers.
- In-game video recording.
- Media manipulation.
- Attract Mode.
- Custom collections.
- CLI automation.
- Tournaments. (maybe)
- Flatpak packaging.
- Integration of VPXGUITools for table management. (--editor)
The new editor is almost ready and can be beta tested with the latest release! Use it's own binary ASAPCabinetFE-Editor or start with ASAPCabinetFE --editor (or -e for short) to open it up. Please report any issues or suggestions! (some functionalities are not yet implemented)
ASAPCabinetFE-Editor.mp4
Example showing fuzzy search keyboard grab and table launching.
- Contributions are very welcome! Check the TODO list, open issues or pull requests to help improve this app—every bit helps.
- Contributions to
128x32logos are highly appreciated. Open pull requests to theassets/img/dmd_still/folder. - If you're a Dear ImGui wizard, please contribute to UI polishing as I'm a complete loser for it, sorry.
- We're looking for a MacOS maintainer to add/keep/test the
__APPLE__blocks. (Thanks @herrMirto!) - You can find the documentation here or by typing
doxygenon the project root, and opening docs/index.html.
- Visual Pinball X team.
- VPin / VPXTool team.
- Virtual Pinball Database team.
- Vpin Media Database team.
- Launchbox Database team.
- VPForums / VPUniverse team.
- A BIG THANK YOU to @jsm174 @francisdb @superhac @Toxieainc @MikedaSpike.
- And a special thanks to Snortt for bearing with me thru all of this.
- Thanks everyone who helped making Visual Pinball X for Linux a reality. Really, you guys rock!
If you need help installing and configuring Visual Pinball X check out my wiki page.
Join the Discussions page for questions and ideas!
“All trademarks and logos are the property of their respective owners and are used only for identification purposes. This project is not affiliated with or endorsed by any company whose logo appears here. Manufacturer logos appear in low-resolution form strictly for identification of the associated tables.”


