Physical Project

Arcade Cabinet

A two-player tabletop arcade control panel running LaunchBox/BigBox on a small-form-factor PC, wired up with an Ultimarc I-PAC Ultimate I/O board, Ultimarc joysticks, buttons, a spinner, and a trackball.

The arcade cabinet on a table beneath a TV running the LaunchBox/BigBox arcade UI on the Centipede game
The cabinet in its usual spot, with LaunchBox/BigBox up on the TV — here parked on Centipede.

Overview

What the cabinet is

This is a two-player tabletop arcade control panel built from a Monster Arcades cabinet kit on Etsy, finished in navy with diagonal lime-green stripes and matching T-molding. It runs LaunchBox/BigBox on a small-form-factor PC tucked into the back of the box, with everything routed through an Ultimarc I-PAC Ultimate I/O board for keyboard, gamepad, trackball, and spinner inputs.

The layout is symmetrical for two-player games: joystick and six action buttons per side, four admin buttons in front of each joystick, plus a shared trackball and spinner in the center with coin, start, pause, and exit buttons across the top.

Parts

Main parts and hardware

Computer And Software

  • Small-form-factor PC (currently a PELADN Ryzen 5 5600H mini PC) mounted inside the cabinet
  • LaunchBox with BigBox as the front end for MAME and other emulators
  • Wireless keyboard and HDMI cable stored inside the cabinet for setup and admin

Controls And I/O

  • Ultimarc I-PAC Ultimate I/O controller board
  • Ultimarc joysticks (one per player)
  • Ultimarc illuminated buttons for the two six-button clusters and admin row
  • Ultimarc spinner
  • Ultimarc trackball

Cabinet And Finish

Panel And Drilling

Starting with a drilled, painted panel

The kit ships as a flat panel and a separate plywood box. The first step was painting the panel navy, masking the diagonal stripes in lime green, and wrapping the edge in matching T-molding. From the underside, the panel is just an array of clean holes waiting for the Ultimarc hardware.

Painted control panel with buttons and joysticks dry-fitted in place
The painted control panel dry-fitted with joysticks and buttons before wiring begins.
Underside of the panel showing button mounts and the empty plywood box
The underside of the panel with switch bodies seated, hinged open above the empty plywood box that will house the PC.

Wiring

Running every input back to the I-PAC

Every button, joystick microswitch, trackball axis, and spinner encoder runs back to the I-PAC Ultimate I/O. The board lets the PC see the panel as a keyboard, two gamepads, a mouse for the trackball, and an analog spinner all at once, with per-input mapping configured in the Ultimarc software.

Close-up of the Ultimarc I-PAC Ultimate I/O board with screw terminals wired up
The I-PAC Ultimate I/O is the hub for every input. Color-coded leads run from each terminal block out to a button, joystick, or sensor.
Detailed view of partially completed wiring around the I-PAC board
Daisy-chained grounds and labeled jumpers keep the wiring traceable when something needs to be re-mapped later.
Wider view of the wired panel underside with joysticks, trackball, and spinner installed
The center cluster: trackball, spinner, and the two joystick assemblies all sharing a common ground bus.
Full panel underside showing complete wiring across both player sides
The complete panel underside with both player sides wired in mirrored layouts.
Another full underside view showing all wiring and control hardware
A second pass across the harness, checking that every wire reaches its correct terminal before powering up.
Closer view of finished wiring with cable ties dressing the loom
Cable ties and labeled bundles tame the loom so the panel can still close cleanly into the cabinet.
Wired panel laid flat on a table showing the I-PAC and harnesses
The harness laid flat for a final inspection before the panel goes back onto the cabinet box.
Cabinet open with wired panel and PC starting to land in the box
Panel and box reunited, with the PC bay beginning to take shape inside the cabinet.

PC Bay

A small-form-factor PC tucked inside

The cabinet base doubles as a tidy enclosure for a small-form-factor PC, its power brick, a wireless keyboard receiver, and a coiled HDMI cable. A back-panel cutout exposes the PC's HDMI, Ethernet, and USB ports, plus a lit rocker switch and a power inlet for a standard PC cord. The PC has been upgraded over time and is currently a PELADN Ryzen 5 5600H mini PC.

Inside the PC bay with mini PC, wireless keyboard, and coiled HDMI cable
The everything-you-need bay: mini PC, wireless keyboard, and a coiled HDMI cable that lives with the cabinet.
Cabinet on its side, showing the back panel power inlet, lit switch, and ports
Back panel detail: a lit rocker switch, a panel-mount power inlet, and the PC's HDMI and network ports passed through.

Polishing

Final tidy-up and storage

With everything wired and tested, the last pass was cable management, dressing the harness flat against the panel, and finding homes inside the cabinet for the wireless keyboard and HDMI cable so the whole setup is self-contained when stored.

Cabinet open with tidied wiring and a wireless keyboard inside the bay
Final dress-up of the harness with the wireless keyboard tucked into its spot in the bay.
Cabinet open with coiled HDMI and keyboard stored inside
The cabinet stores its own HDMI cable and keyboard so it can be set up anywhere with a power outlet and a TV.
Closed cabinet from above showing the finished playing surface
The closed cabinet from above, ready for two players.
Finished two-player arcade control panel with joysticks, trackball, spinner, and lit power button
A three-quarter view of the finished panel, showing both joysticks, the six-button clusters, trackball, spinner, and the lit power switch on the back.
Another angle of the cabinet stood up with internal storage visible
Opening the cabinet on the piano hinge, the back of the control panel and PC are easy to access for maintenance, with the HDMI coil and PC sitting clear of the wiring harness above.

Software Configuration

The three layers that make it play

The cabinet runs three layers of software stacked on top of each other: WinIPAC to program the controller board, MAME to actually run the games, and BigBox on top to pull everything into a controller-friendly front end.

WinIPAC

WinIPAC is used to program the I-PAC Ultimate I/O so every button, joystick microswitch, trackball axis, and spinner pulse maps to the correct keyboard or gamepad input. This is a one-time setup — once the mapping is written to the board, the I-PAC remembers it and the PC just sees a normal set of input devices.

WinIPAC V2 configuration utility showing the I-PAC input mapping interface

MAME

MAME does the actual emulation. Most options — video, audio, default input bindings, and global control mappings — are configured once at the MAME level, and every game inherits those defaults. When a specific title needs different controls, DIP switches, or screen orientation, those tweaks live in a small per-game override file rather than disturbing the global config.

MAME also needs a matching ROM set for every game it plays, and ROM definitions evolve with MAME itself — a set dumped for one version often won't load cleanly on a much newer build. The usual approach is to pin a specific MAME version and pair it with a ROM set from the same era so every romset name and CRC lines up. This cabinet runs against an archived MAME 2015 ROM set.

MAME running an arcade game

LaunchBox with BigBox

On top of MAME, LaunchBox with BigBox is the front end. BigBox pulls in cover art, marquees, gameplay videos, and metadata for the collection, presents a controller-friendly navigation, and launches the right MAME command line when a game is picked — so the whole experience from boot to gameplay can be driven entirely from the panel.

BigBox logo