Megadrive / Genesis core

This page is the home of the Sega Genesis / Megadrive FPGA core ported to Turbo Chameleon 64.

This is an experimental core, and while I do my utmost to make sure it works for everyone and will try to help solve any problems that arise, you run this core entirely at your own risk.

If you’d like to show your appreciation for this core, or motivate me to work on this and other cores in future, donations are welcome at https://paypal.me/robinsonb5 or https://patreon.com/coresforchameleon. Anyone donating £20 or more via PayPal or sponsoring on Patreon at the second tier will be thanked by name in a “Core Supporters” shout-out page in subsequent releases.

Please note: it’s vitally important that you download the correct version of the core for your Chameleon.

FPGAGen for Chameleon V1 hardware: If you have a single mini-DIN socket on the left hand side of your Chameleon, to which a breakout cable attaches for the keyboard and mouse, then you have V1 hardware and need this version:

FPGAGen for Chameleon V2 hardware:  If you have three mini-DIN sockets on the left-hand side, with the keyboard and mouse plugging in directly, you have V2 hardware, and need this version:

Using the core

Flash the .rbf file into your Turbo Chameleon 64 using the chaco utility.

Optionally, copy the autoboot.md ROM to your SD card.

Since the Turbo Chameleon 64 can’t support more than three gamepad buttons via the DB9 ports, the extra buttons are mapped as follows:

Gamepad 1

Gamepad buttonPS/2 keyboardC64 keyboardCDTV controller
StartEnterReturnPlay*
Button ARight shiftRight shiftVolume up*
Button BRight CtrlButton A
Button CRight AltButton B

Gamepad 2

Gamepad buttonPS/2 keyboardC64 keyboardCDTV controller
StartCaps LockRun/StopPlay*
Button ALeft shiftLeft shiftVolume up*
Button BLeft AltButton A
Button CLeft CtrlButton B

* The CDTV controller has a slide-switch which selects whether D-pad and A/B buttons are directed to port 1 or port 2. The core keeps track of which port is selected, and directs the Play and Volume Up events to the same port.

Other keys

FunctionPS/2 keyboardC64 keyboardCDTV controller
MenuF12<- (top left)Power

The built-in scandoubler can be toggled by holding the menu button down for a period of 1 second or more.

Source code can be found at github, as usual – see https://github.com/robinsonb5/fpgagen/tree/demistify

Huge thanks to everyone who’s supported my projects in recent months – it’s very much appreciated.

FPGAGen was originally written by Gregory Estrate, with audio implementation by Jotego. The MiST port by Phoboz and Till Harbaum with massive improvements to graphics / RAM handling by Gyorgy Szombathelyi.