BBC Micro

This is a port of the MiST BBC Micro core to the Turbo Chameleon 64 cartridge.

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.

BBC 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:

BBC 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:

Currently supported:

  • Floppy disk images (Master mode only, SSD or DSD format.)
  • MMBEEB SD card images. .MMB files should be renamed to have the extension .VHD – such an image named BBC.VHD in the root of the SD card will be automatically mounted at boot.
  • C64 keyboard
  • CDTV joypad (menus only)
  • Real-time Clock
  • CMOS RAM (saved as part of the config file)

Not yet supported:

  • Joysticks

ROM:

The core requires a ROM file in the root of the SD card, called BBC.ROM
An example ROM file can be found at https://github.com/mist-devel/mist-binaries/tree/master/cores/bbc

Configuration files

Three example configuration files are provided. These contain both menu settings and NVRAM settings (for BBC Master).
When the core starts it will attempt to load the BBC.CFG file from the root
of the SD card.
The supplied BBC.CFG file contains basic settings for a BBC Model B.
The other two config files are for a BBC Master with MMBeeb interface, and a BBC Master with floppy disk emulation.
Configurations can be saved over the top of an existing config file, but it’s not currently possible to create new ones.

Disk Images

Disk images can be mounted from the menu. They can only be accessed in Master mode, and only if the master is configured with a disk drive rather than the MMBEEB interface. To change from one to the other, type the following:

  • *CO. FILE 9 (this enables the disk drive after the next reset.)
  • *CO. FILE 2 (this enables the MMBeeb interface after the next reset.)

Keyboard handling

The keyboard is mapped roughly to match the physical location of keys on a real BBC Micro keyboard.

  • The run/stop key on a the C64 keyboard is used as a modifier, similar to the Fn key on a laptop. Pressing it on its own toggles caps lock.
  • The Commodore key is mapped to Ctrl. This was chosen for keyboard matrix scanning reasons, to allow keyboard combinations such as Ctrl-D-Break to be typed.

Other keys:

FunctionPS/2 keyboardC64 keyboardCDTV controller
MenuF12Run/stop + <Power
BreakPrt ScrnRun/stop + del

Hold the menu button for 1 second or longer to toggle the scandoubler on or off.

Press the middle and right hand buttons on the Chameleon simultaneously to return to the Chameleon C64 core.

Source code for this core can be found at https://github.com/robinsonb5/BBC_DemiSTify/

The core is a port of original work by Mike Sterling with major changes by
Stephen Leary and David Banks, and further improvements by Gyorgy Szombathelyi and Till Harbaum.

The Turbo Chameleon 64 port wraps the MiST core in a compatibility layer (DeMiSTify, by Alastair M. Robinson), and makes very few material changes to the core itself.

Original DeMiSTification by Neurorulez (Neptuno), Rampa069 (UnAmiga Reloaded) and Somhi (DECA), and extended to the TC64 by Alastair M. Robinson