Git Product home page Git Product logo

cpc464's Introduction

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:

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:

cpc464's People

Contributors

bernhardsturm avatar

Watchers

 avatar  avatar

Forkers

southarsch

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.