CPC464 Emulator with Raspberry Pi
If you want to build your own 1984 CPC464 Z80-8Bit-Emulator on a dedicaded machine, then follow this instructions:
What will I get?
You will end up with e bootable CPC464 (or CPC464+ or CPC6128) machine. Turning your power switch to on, and after a few seconds (yes, it is not as quick as the original machine), you are taken back to the year 1984. You can use old original games on disc or tape (tape and disc drive will be emulated, too). You can even plug in an old Joystick, and game like 1984 all over again. Or you can teach your kids (or yourself) good old BASIC.
Who does it work?
The emulator runs on Raspberry Pi hardware. So all you need is a spare monitor, and a keyboard, and off you go.
Let's Start
The Hardware
You will need a Raspberry Pi 4 as this model offers sufficient performance for our emulator. If you plan to build a fully independent system, then here is the list:
- Raspberry Pi 4 Model B, Starter Kit
- AOC 22" Display
- Raspberry Keyboard, German
- HDMI-Cable
- Joystick RetroBit
- Speaker Hama Sonic Mobil 185
Total cost approx: CHF 300.-
The Software
The Raspberry Pi 4 comes with an SD card with Noobs pre-installed. We will use this system as our host platform. For the emulator we will use the Caprice32 CPC Emulator from Colin Pitrat. In order to use the emulator on a Raspberry Pi we have to compile it according to the manual from Colin Pitrat (it compiles on a Pi4 as well):
Compile the Emulator
Debug behavior and release behavior when locating configuration file If you compile Caprice32 yourself with plain make, behavior is debug-oriented. By default at run-time it will look for cap32.cfg in the current directory of the process that launches it, not in the executable location as stated in the documentation. To get the documented behavior, use APP_PATH like in the examples below.
If you compile Caprice32 yourself with plain make, behavior is
debug-oriented. By default at run-time it will look for cap32.cfg
in the current directory of the process that launches it, not in the
executable location as stated in the documentation. To get the
documented behavior, use APP_PATH
like in the examples below.
From Git
git clone https://github.com/ColinPitrat/caprice32.git
cd caprice32
make APP_PATH="$PWD"
./cap32
From releases
Download a release from https://github.com/ColinPitrat/caprice32/releases. Decompress it and then from a terminal in the resulting directory:
make APP_PATH="$PWD"
./cap32
The Configuration
Configure the CPC-Emulator
The following config file is adapted to the Raspberry Pi envionement https://github.com/bernhardsturm/cpc464/blob/main/cap32.cfg
As we have a Swiss-German-Keyboard, some changes to the Key-Configuration is needed, too: https://github.com/bernhardsturm/cpc464/blob/main/keymap_de_linux.map
Boot the CPC-Emulator
In order to boot directly into the emulator, we have to set the following commands
The Documentation
Here you will find the complete CPC464 manual as a PDF. Print it, and bind it to a book. This will give you a very good introduction into BASIC programming:
Games
This is a good source for a lot of good games: