What it is
MameDuo is a dual-instance arcade launcher built to run two separate game environments at the same time on one piece of hardware and one shared screen.
Finished project
MameDuo.exe is a custom head-to-head arcade frontend that runs two game sessions side by side on a single PC and single display, allowing each player to load and change games independently without interrupting the other side.
MameDuo turns one machine and one screen into a live dual arcade system, where both players can play, swap, and reload games independently without interrupting each other.
Overview
MameDuo is a dual-instance arcade launcher built to run two separate game environments at the same time on one piece of hardware and one shared screen.
Each side operates independently, so the left and right players can launch, reload, and swap games live while the other player keeps playing.
It can run as an independent app or be built into a frontend, giving more flexibility for cabinets, versus displays, and custom dual-play arcade setups.
Full description
Unlike a normal frontend that launches one emulator for one game, MameDuo manages two separate sessions together in real time on one machine and one shared display.
It handles window placement, side-by-side layout, overlays, controls, popups, and live swapping so both players can move between games without breaking the overall experience.
This makes it ideal for a head-to-head cabinet, versus display, or dual-play arcade setup where two users want independent game choice on a single machine.
Because it can work as a standalone executable or be integrated into a frontend flow, it suits both direct end-user installs and larger custom cabinet projects.
Screens
The popup flow supports the live dual-session idea by giving each side a controlled way to change, reload, and manage games without collapsing the other player's session.
This visual direction shows how MameDuo can support a broader battle, versus, or pick-up-and-play experience rather than feeling limited to one rigid arcade presentation style.
Key benefits
It runs two game sessions at once on one PC and keeps everything on a single shared display, reducing the need to build two separate machines for a dual-play setup.
Each side can support independent gameplay and, where enabled, independent system selection, so one player can change games live without stopping the other side.
MameDuo is designed around real-time swapping, not just launching and closing games, which creates a more dynamic arcade battle and pick-up-and-play experience.
Guide reference
Controls
Swap popup
Configuration
MameDuo reads its settings from `config.cfg`. Keep this file in the same folder as the built EXE or script you are running. Edit it with Notepad or another plain text editor, then restart MameDuo for changes to take effect.
Systems
Each supported system has its own section, such as `[arcade]`, `[genesis]`, and `[snes]`. These sections tell MameDuo where to find ROMs, logos, and preview videos for that system.
Get started
Use the H2H guide to understand the finished workflow and feature set. MameDuo can be used as its own app or integrated into a frontend when you want a flexible dual-session arcade experience on one machine.