This page is the home of the Ben0109’s Master System core, ported from the MiST version 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.
Master System 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:
- SMS_TC64v1_20210424.zip – improvements to audio quality, upstream fixes and menu reorganisation.
- SMS_TC64v1_20210315.zip – initial port.
SMS 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:
- SMS_TC64v2_20210424.zip – improvements to audio quality, upstream fixes and menu reorganisation.
- SMS_TC64v2_20210315.zip – initial port.
Using the core
Flash the .rbf file into your Turbo Chameleon 64 using the chaco utility.
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 button | PS/2 keyboard | C64 keyboard | CDTV controller |
---|---|---|---|
Start | Enter | Return | Play* |
Select | Right shift | Right shift | Volume up* |
Button A | Right Ctrl | Button A | |
Button B | Right Alt | Button B |
Gamepad 2
Gamepad button | PS/2 keyboard | C64 keyboard | CDTV controller |
---|---|---|---|
Start | Caps Lock | Run/Stop | Play* |
Select | Left shift | Left shift | Volume up* |
Button A | Left Alt | Button A | |
Button B | Left Ctrl | Button 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
Function | PS/2 keyboard | C64 keyboard | CDTV controller |
---|---|---|---|
Menu | F12 | <- (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/SMS_MiSTer
Huge thanks to everyone who’s supported my projects in recent months – it’s very much appreciated.
The SMS core was originally writen for the Papilio platform by Ben0109 – see http://fpga-hacks.blogspot.de. The MiST port contains contributions from Till Harbaum, Alexey Melnikov, theflynn49, Gyorgy Szombathelyi, GreyRogue, Shane Lynch, Enforcer831, kitrinx, SegaSnatcher, Yimmers, blue212, SegaSnatcher and Alastair Robinson