Via hackster.io, the RetroShield emulates classic 8-bit computers when attached to an Arduino Mega compatible. Available daughtercards can socket 8-bit microprocessors such as the 6502, Z80, or 6809.
The Arduino Mega emulates the RAM, ROM, and I/O devices. It also provides a terminal connection back to the host PC. With this combination, it is possible to emulate vintage computers such as the Apple I or Commodore 64.
Emulated clock speeds are well below the original ~1 MHz with a Mega. Instead, think of this platform as “wire-wrapping in software.”
The RetroShield is developed by Erturk Kocalar of 8 Bit Force and sells for $18 (unassembled.) The kit includes a daughtercard, a socket, header pins, and an LED along with a 6502, Z80, or 6809.
With an Arduino Mega, the emulated RAM runs out quickly on more but the basic assembly program.
Find more information on the RetroShield over on 8 Bit Force’s Tindie store. Read more in the Hackster.io article here.
Adafruit note: this looks like an excellent project to try the Adafruit Grand Central board (with and without headers):
- Arduino Mega 2560 specs: ATmega2560 at 16 MHz, 8 bit, 248K flash, 8KB RAM
- Adafruit Grand Central specs: Cortex M4 core running at 120 MHz, 32 bit, Floating point & Cortex M4 DSP instructions, 1MB flash, 256 KB RAM
Perhaps a Grand Central can approach original processor speeds? We’d like to see!
UPDATE: Code for boards is on GitLab: 6502, Z80, 6809 – Erturk Kocalar’s main GitLab here.
Website is http://www.8bitforce.com/
Hardware is CC ShareAlike 4.0 license, software is MIT license, nice! Great work!
Does the Grand Central have 5V I/O like the Mega256 though? Not sure those old chips will take 3.3V from a modern micro as a high level input.
I’m pretty sure at 120 MHz you can emulate the original chip entirely in software, never mind on a 600 MHz Teensy 4. But where’s the fun in that?
I personally think having the extra RAM and flash opens up the possible classic computers the boards can emulate. While an Apple I is fun for maybe 10 minutes, an Apple II or C64 clone would be very interesting.
The logic levels may be an issue, yes. Many chips can take 3.3 as a high (check the data sheets) but the microprocessor outputs would need a level shift unless the data sheet specifies the inputs of the microcontroller are 5V tolerant.