Arcade Software – A Lot of Tedious Work

Choosing a Path

Back when I started this project, I attempted to build an arcade emulator using a small computer called a Raspberry Pi. I got pretty far along in the creation of this device and setting up the arcade software with the emulators, but I quickly learned that this device wasn’t going to be able to accommodate some of the bigger games that I wanted to play, such as PS2. So I scrapped my plans on the Pi and decided to build a full-sized desktop computer instead.

While I began researching and planning for building a computer, I also began looking into the emulation software options available for the Microsoft Windows OS. I found a few good emulator front-ends, but I quickly started to gravitate towards one of them called HyperSpin.

HyperSpin

HyperSpin is a highly customizable front-end interface built to show game artwork and visuals and then launch those games with their emulator counterparts. HyperSpin is normally accompanied by two other applications called HyperHQ and RocketLauncher which acts as an aid to setting up everything within HyperSpin. Both applications are fairly basic in design and not very user-friendly, however they offer incredible versatility if you’re willing to put in the time and effort. Here’s a cluttered screen rundown of the basics and how everything is structured.

Screenshot of generalized structure of HyperSpin setup
A cluttered screen rundown of the basics and how everything is structured

To explain, in the above photo, on the left, you have two folders shown; the HyperSpin folder structure and the place I store my ROMs (the game files). In the HyperSpin folder on the top-left, I’ve identified the more important folders that I typically work with here. Databases houses an XML file containing the list and information of every game for that console, separated by console. Emulators contains the installed emulator binary files for running the ROMs. Media contains all of the artwork and graphics for each console as well as the main menu.

Below the HyperSpin folder you can see the ROMs are separated console by console, but to the right of this is the RocketLauncher interface. This connects the emulator and database XML file within the HyperSpin folder to the game files within the ROMs folder. You can use this software to test launching the games directly via the Games tab within the software. In the upper-middle of the screenshot you can see an edit dialog for the Atari 8-bit (800) console.

In the upper-righthand corner of the screenshot is the HyperHQ settings dialog, this is another settings application that helps tweak how HyperSpin shows its artwork.

Overall, there are A LOT more settings, but this isn’t a tutorial. There are a lot of other settings that I’ll later be needing to deal with as I get closer to having something physical to work with, such as mapping all of the arcade buttons to their respective inputs for the console. Even lighting, marquees, and loading screens can be adjusted through this software.

Setting It Up

First things first, get some games running. Quick Internet searches on this can supply a wealth of game emulation information. From here, I was able to download various emulation software for different console emulation and then I began putting together my library of games to support in my collection.

The next task was to hook up the emulators to HyperSpin. This took a little bit of time, getting all of the software loaded, and then hooking up each emulator through RocketLauncher to HyperSpin. But that wasn’t even the tedious part yet, that title belongs to the vast amounts of artwork that I needed.

As you may know I’m backtracking a bit and making this blog now a year later after I began working on the project. One full year! I just want to put some perspective around the incredible amount of work required in gathering all of this artwork. I started working with setting up HyperSpin in December of 2021. I don’t work everyday on it, but most days, a little bit at a time.

Currently, June 18, 2022, I’ve got the following systems complete:

  • Apple II
  • Atari 400/800
  • Atari 2600
  • Atari 5200
  • Atari 7800
  • Atari Jaguar
  • Atari Jaguar CD
  • Atari Lynx
  • Commodore 64
  • Amiga
  • Nintendo Entertainment System
  • Super Nintendo Entertainment System
  • Nintendo 64
  • Nintendo Game Boy
  • Nintendo Game Boy Color
  • Nintendo Game Boy Advance
  • Nintendo DS
  • Sega Master System
  • Sega Genesis
  • Sega CD
  • Sega 32X
  • Sega Saturn
  • Sega Dreamcast
  • Sega Game Gear
  • Sony PlayStation
  • Sony PlayStation 2
  • Daphne LaserDisc

There’s a glaring issue with the list above, there are no arcade or pinball emulators! They do exist right now and are playable, but I’m still busy working on the artwork for these games. Why so long? Arcade games alone (no pinball or anything else), I have to obtain artwork, video previews, AND ensure the games launch and work for 2,969 games! That total excludes pornographic and mahjong style games, which I’d guess would double that number (yes, there are a lot).

I’m currently going through arcade games to this day, and after that hope to work on getting some pinball games set up. Here is the list of all systems that I still plan to work on after those are done:

  • Pinball tables
  • Nintendo GameCube
  • Sega Model 2
  • NEC TurboGrafx16
  • SNK Neo Geo
  • SNK Neo Geo Pocket Color
  • Panasonic 3DO
  • Microsoft Xbox
  • Microsoft Xbox 360
  • Microsoft DOS
  • Microsoft Windows
  • Sony PSP

Game systems I may consider in the future:

  • Nintendo Wii
  • Nintendo WiiU
  • Nintendo Switch
  • Nintendo 3DS
  • Sony PlayStation 3
  • Sony PlayStation 4

This is going to take me a long while, but at least I can work on this in tandem with the physical cabinet.

What Does it Look Like in the End?

The main screen, system selection:

Arcade cabinet system selection screen
Main menu to select which system you want to play

Sony PlayStation 2 system game selection screen:

Sony PlayStation 2 system game selection screen, currently highlighting LEGO Star Wars The Video Game
Sony PlayStation 2 game selection screen

So as I continue my work on the interface side of things, I’ll begin ordering the hardware!

Let’s build the computer!