Arcade Hardware · Volume 1
Real Boards, Not Emulators — What an Arcade Game Board Expects From a Gun, and Where This Dive Draws the Line
The four things a cabinet's game board can be waiting for (an optical pulse timed to its own video, two potentiometer voltages, a JVS I/O board on RS-485, or the maker's own USB device), why a modern USB light gun speaks none of them, and the converter each one needs

1.1 What this dive covers, and what it leaves to the emulation dives
Every other dive in Platform Support puts the project’s gun in front of a computer that runs the game in software: a Windows PC (PC (Windows)), a Linux box or Raspberry Pi (Linux and Retro Distros), or an FPGA (MiSTer FPGA). In all of them the gun is a USB device and the host has a driver for it.
This dive is about the other case: the original arcade board in a cabinet, running the game it was built for, with no computer in between that the builder controls. That board does not take USB mice. It expects whatever its makers wired to it: a light sensor timed against its own video, two potentiometers, a JVS I/O board, or a specific USB device of its maker’s design. Getting the project’s gun (the OpenFIRE-based Pico gun of Our Firmware) to work there is a hardware problem, not a configuration problem.
The line is drawn like this:
Table 1 — The line is drawn like this
| Question | This dive | Elsewhere |
|---|---|---|
| Running House of the Dead 4 in TeknoParrot on a PC | PC (Windows) Vol 5 | |
| Running House of the Dead 4 on a real Sega Lindbergh in its cabinet | Yes (Volume 3) | |
| A PC or Pi put inside a JAMMA cabinet in place of the board | Only where the cabinet’s wiring matters (Volume 5) | The emulation dives |
| The history and parts lists of the original arcade guns | Arcade Light Guns | |
| Why a CRT gun cannot see an LCD | CRT Timing | |
| Repairing an original arcade gun | Arcade Light Guns Vol 6 |
Nothing in this dive has been built or measured by the project yet. It is a reference for the day a cabinet arrives.
1.2 The gun as a cabinet would see it: nothing it recognises
The project’s gun presents itself to a host as one USB device with vendor ID 0xF143: a keyboard, an absolute mouse whose X and Y run from 0 to 32767, a gamepad, and a USB serial port for game-driven recoil commands (Open-Source Firmware Vol 6; Linux and Retro Distros Vol 1 lists the three input nodes by name). It computes its own aim from the infrared emitters at the screen, inside the gun (IR Point Tracking). So it already knows where it points, as a number, which is the one thing most arcade boards of the 1980s and 1990s never received from their guns.
An arcade board can use none of that directly:
- No arcade board before the PC era has a USB host port. The JVS boards have USB-shaped connectors that are not USB at all (Volume 2).
- An optical board does not want a position. It wants a pulse at the instant its own scanning beam passes the aim point, and it works out the position itself from its own timing (Volume 4).
- A positional board wants two voltages from potentiometers on a mount.
- A JVS board wants an I/O board to answer RS-485 polls, and it takes the gun’s position as analogue channels or through JVS’s own light-gun function (Volume 2).
Every route in this dive therefore puts a converter between the gun and the board: something with a USB host that reads the gun as any computer would, and on its other side speaks whatever the board expects. The gun itself does not change.
1.3 Three generations of cabinet wiring
JAMMA (1985). The Japan Amusement Machine and Marketing Association’s standard put a whole game on one board with a 56-way edge connector at 0.156 in pitch: +5 V for the logic, +12 V for sound, analogue RGB video with negative composite sync, one speaker, coin, service, test and tilt, and two joysticks with three buttons and a start button each.1 A JAMMA cabinet can take any JAMMA board. What the standard does not have is a gun: there are no pins for a sensor, a potentiometer or a solenoid. Gun games of the JAMMA years carried their guns on extra harnesses of their own (the Point Blank schematic in Arcade Light Guns Vol 2 runs six wires per gun on harness J16, beside the edge connector), which is why a gun board is never simply “a JAMMA board”.
JVS (1996). The JAMMA Video Standard moved the controls off the game board onto a separate I/O board, reached over RS-485 on USB-style connectors, with video on a 15-pin D-sub, audio on RCA and power on JST VL connectors.21 Sega’s NAOMI service manual (1st printing February 2001) is explicit that the two standards do not mix: it calls the edge-connector standard “Old JAMMA STANDARD”, warns that “Using it with the non-JVS-compatible cabinet may cause an overheating and fire”, and says that to fit a NAOMI into a JAMMA cabinet one must “prepare the modification parts (power supply, I/O board, audio amplifier, etc.)”.2 Its CN5 is “STANDARD I/O (SERIES A TYPE) Connected to I/O BD via. USB Cable.”2
PC-based boards (2000s on). Sega’s Lindbergh and RingEdge, Namco’s System ES series and Taito’s Type X family are PCs in arcade form, and most of them still talk to the cabinet through a JVS I/O board. Sega’s Primeval Hunt manual (2008) lists the error “I/O Device Not Found. The LINDBERGH board’s I/O board cannot be found” and “JVS I/O board does not fulfill the game spec … Use an I/O board that provides the proper input/output for the game.”3 Some later cabinets bypass JVS for the gun: Raw Thrills’ Aliens Armageddon rifle carries a camera on a 12-conductor USB harness (Arcade Light Guns Vol 4).

1.4 Four interfaces a game board can expect

Table 2 — 1.4 Four interfaces a game board can expect
| Interface | What the board sends and receives | Example boards (manual or source) | Converter needed | Volume |
|---|---|---|---|---|
| Optical (CRT-timed) | Sends video sync; receives a pulse when the gun’s sensor sees the beam | Operation Wolf, Lethal Enforcers, Point Blank’s position PCB, Virtua Cop’s gun-sensor board. (Time Crisis 2 and 3 are optical too, but their timing is done in a JVS gun I/O board, so the JVS route below replaces it) | A pulse synthesiser that counts the board’s sync and fires at the aim point. No arcade product found | 4 |
| Positional (potentiometers) | Supplies about 5 V to each pot; reads the wiper through an ADC | Operation Thunderbolt (ADC0808), Terminator 2 (ADC0844), Aliens Armageddon fixed gun | A ratiometric DAC replacing each pot | 4 |
| JVS | Polls an I/O board on RS-485; the gun arrives as analogue channels or through the light-gun function | NAOMI, Chihiro, Lindbergh, RingEdge, Namco System 246/256, Taito Type X+ and X2 | An I/O board emulator: OpenJVS on a Raspberry Pi | 2, 3 |
| Native USB (PC board) | Expects the maker’s own USB gun or camera | Raw Thrills’ Aliens Armageddon deluxe | None published; the game would have to run elsewhere | 6 |
The table hides one important fact that Volume 2 develops: on JVS boards the “gun” the game sees is already a number, produced by the cabinet’s own gun electronics. Sega’s infrared gun-sense board and Namco’s gun I/O board do the sensing and hand the game board a position. A converter that hands over a position of its own, from any gun, is therefore enough. That is why the JVS generation is by far the easiest place to put a modern gun into real hardware, and why Volume 3 is the centre of this dive.
1.5 The converter is the product
Each interface needs its own converter, but all of them share a front end: a USB host that enumerates the gun, reads its absolute mouse reports and buttons, and opens its serial port to send recoil commands. That front end is exactly what a Raspberry Pi running Linux already is, and it is what OpenJVS uses (Volume 3). The proposal this dive works towards (AH-1, Volume 6) is one converter design with one front end and three possible back ends:
Table 3 — Each interface needs its own converter, but all of them share a front end: a USB host that enumerates the gun, reads its absolute mouse reports and buttons, and opens its serial port to send recoil commands. That front end is exactly what a Raspberry Pi running Linux already is, and it is what OpenJVS uses (Volume 3). The proposal this dive works towards (AH-1, Volume 6) is one converter design with one front end and three possible back ends
| Back end | Output | Parts | Status in this dive |
|---|---|---|---|
| JVS | RS-485 + sense line to the game board | FTDI USB-RS-485 adapter or OpenJVS HAT; OpenJVS | Documented, open source, working on many boards (Volume 3) |
| Positional | Two buffered voltages per gun, ratiometric to the board’s own pot supply | MCP4728 quad DAC (Volume 4) | Designed here from the ADC datasheets’ needs; not built anywhere found |
| Optical | A pulse per frame on the board’s sensor input, timed from its composite sync | Sync separator + timer-capable MCU (Volume 4) | Principle demonstrated for consoles; no arcade implementation found |
The gun stays the same gun in every case. That matters for the project: the private firmware fork (Our Firmware) does not need an “arcade mode”, and every bench result from the PC dives carries over.
1.6 Sinden, GUN4IR and AimTrak on real boards
The comparison guns (Open-Source Firmware Vol 1 surveys them) meet the same wall, with differences that matter more in a cabinet than on a desk:
Table 4 — The comparison guns ([Open-Source Firmware Vol 1](/light-guns/building-the-electronics/open-source-firmware/vol-1/) surveys them) meet the same wall, with differences that matter more in a cabinet than on a desk
| Gun | What it needs in a cabinet | Fit with a real board |
|---|---|---|
| The project’s OpenFIRE gun | IR emitters at the screen; the converter | Computes its aim in the gun; appears to the converter as a standard absolute mouse, so OpenJVS’s generic device handling applies (Volume 3) |
| GUN4IR | IR emitters; the converter | OpenJVS ships device files for it (“arduino-llc-gun4ir-pro-micro-p1” and “-p2”), with the warning that its composite USB device may appear as several players4 |
| AimTrak | One IR bar near the top of the screen; the converter | OpenJVS’s guide documents it: “Aimtraks should be plug and play”5; but Ultimarc says the bar “will not work if the bar is located on the top of a cabinet which has a marquee” (Open-Source Firmware Vol 1), which is most cabinets |
| Sinden | A white border in the picture, and its own software on a host computer | The aim is computed on the host from the camera’s video (Border Tracking), and a real board’s video has no border. It needs a video processor that draws one (Border Tracking Vol 6) plus a Linux host running Sinden’s software in the converter. The hardest of the four in a cabinet |
The project’s gun is, by construction, the easiest of the four to put on a real board: it needs no software on the converter beyond reading a mouse, and its emitters can sit anywhere on the bezel the cabinet allows (IR Point Tracking Vol 3).
1.7 Where the rest lives
Table 5 — 1.7 Where the rest lives
| Volume | Covers |
|---|---|
| 2 · JAMMA and JVS | The two wiring standards, the JVS packet and command set, the sense line, and how Sega’s and Namco’s gun electronics reach the game board |
| 3 · OpenJVS | A Raspberry Pi as the cabinet’s I/O board: hardware, mapping the gun, per-game notes, and two limits found in its source |
| 4 · Pre-JVS boards | Replacing potentiometers with a DAC; what faking an optical pulse would take |
| 5 · Cabinet I/O, power and recoil | Coin, start, lamps, the cabinet’s 24 V, and getting the game’s recoil to the gun |
| 6 · CRT and LCD cabinets, and where it runs | Which cabinets keep working on an LCD, the board-by-board table, and the proposed decisions |
1.8 What could not be verified
- The JAMMA connector facts here are from the encyclopaedia summary and its cited pinout charts; the 1985 standard itself was not read.
- Whether any converter of the kind described in 1.5 has been built for a positional or optical arcade board. Searches on 2026-10-24 found none; absence from search is not proof.
- Sinden’s Linux software running alongside OpenJVS on one Raspberry Pi has not been documented anywhere found.
Sources
Footnotes
-
Wikipedia, “Japan Amusement Machine and Marketing Association” (JAMMA connector and JVS sections, citing the JAMMA/AAMA pinout charts), https://en.wikipedia.org/wiki/Japan_Amusement_Machine_and_Marketing_Association — read 2026-10-24. ↩ ↩2
-
Sega Enterprises, NAOMI Service Manual, manual no. 420-6620-01, 1st printing February 2001, sections 1–2 (JVS note, cabinet, connectors CN1–CN5), Internet Archive
manualzilla-id-6037988— read 2026-10-24. ↩ ↩2 ↩3 -
Sega, Primeval Hunt DX service manual (2008), error code table, Internet Archive
primevalhuntdx— read 2026-10-24. ↩ -
OpenJVS project,
docs/openjvs/devices/arduino-llc-gun4ir-pro-micro-p1, GPL-3.0, commit 649ee2f (15 May 2025), https://github.com/OpenJVS/OpenJVS — read 2026-10-24. ↩ -
OpenJVS project,
docs/guide.md(“AimTrak”), same commit — read 2026-10-24. ↩
Comments (0)