Arcade Cores

There are now many FPGA cores in existence which replicate retro arcade machine hardware. I have ported some of these to the Turbo Chameleon 64 hardware – both V1 and V2, and download links for the cores can be found below.

A note on ROMs

Since the ROMs that are required to run arcade machines are still copyrighted, I don’t distribute them here, so for cores that require a ROM file on the SD card you’ll need either to track down an existing ROM file for the MiST version of each core, or create your own from a MAME romset and the .mra file supplied with the core. You can do this using the excellent mra-tools utility, which can be found here. (The repository contains a ready-to-run Windows build – and it’s easy to build on Linux.)


The arcade cores can be played with a CDTV remote, a C64 joystick or with the keyboard.

Coin and Start buttons are mapped as per MAME, so 5, 6, 7 and 8 on the PS/2 keyboard, C64 keyboard or CDTV remote will insert a coin, while 1, 2, 3 or 4 on the various input devices are mapped to the start buttons.

Up to three joysticks can be imitated on the keyboard

  • W, A, S & D with L. Ctrl and L.Alt as fire buttons,
  • I, J, K &L with B & N as fire buttons,
  • cursor keys with R. Alt and R. Ctrl as fire buttons.

The core files

Each core has two versions – one intended for Chameleon V1 hardware and one intended for Chameleon V2 hardware – make sure you use the correct version of the core for your device!


This core supports multiple games, and .mra files for those games can be found in the “meta” directory of the zipfile. In combination with the correct MAME ROM files, the mra-tools utility mentioned earlier can be used to generate both a .ROM file and a .ARC file for these games. The .ARC file contains the ROM’s filename as well as details of any DIP switches supported by the game. When converting the ROM files, you should supply the -A argument to mra-tools to request creation of the .ARC file, like so:

./mra -A <game>.mra

Please note, Pacman hardware uses a monitor in portrait format, and this core
does the same. Rotating the game field isn’t possible on the Turbo Chameleon
64 hardware. (The earlier Pacman core which supported portrait mode worked by
patching and hacking the game’s ROM; this core isn’t able to do the same.)

Moon Patrol


Insert coins by pressing ‘5’ on the PS/2 keyboard, the C64 keyboard or the “play” button on a CDTV controller.

F12 on the PS/2 keyboard, ‘<-‘ on the C64 keyboard or “power” on the CDTV controller will bring up a minimal OSD from which you can set the difficulty/free play DIP switch settings, and also enable the “Cheat” DIP (though I haven’t yet figured out how to activate the cheat!)

The CDTV pad can control George or Lizzie, depending on the port switch, or from the C64’s own joystick ports if you have a two-button controller.

All three characters can be controlled from a PS/2 keyboard, or with the
Docking Station, again if you have a two-button controller.

  • George’s keys: WSAD, left ctrl, alt, shift, caps lock
  • Lizzie’s keys: IKJL, B, N
  • Ralph’s keys: Cursor keys, right ctrl, alt, shift, enter