CPCbox

An Amstrad CPC 8-bit computer emulator, created in JavaScript for the Web Platform.

The CPC (short for Colour Personal Computer) is a series of 8-bit home computers produced by Amstrad between 1984 and 1990.

It was designed to compete in the mid-1980s home computer market dominated by the Commodore 64 and the Sinclair ZX Spectrum computers. It successfully established itself primarily in the United Kingdom, France, Spain, Germany, Denmark, Greece and Australia.

About 3 million Amstrad CPC computer units were sold throughout its commercial lifetime.

More information about the Amstrad CPC computer series can be found on this Wikipedia article.

CPCbox is an Amstrad CPC emulator. What it means is that CPCbox replicates the inner workings of the Amstrad CPC 8-bit computer hardware so that you can use any software that was made for this computer and run it with the same results as on the real hardware.

Features

CPCbox runs directly on your web browser, without requiring any plugin. You don't have to download, decompress, install & update a CPC emulator anymore. CPCbox renders all those menial and time consuming work unnecessary.

CPCbox is a good choice to watch demos thanks to the quality of its audio and video renderings and because of its very precise Z80 and chipset emulation.

Retro-gamers will be pleased too as CPCbox features a very intuitive and functional user interface, so that they are just seconds away from playing their favorite 8-bit CPC games.

Requirements

CPCbox supports the latest web standards promoted by the W3C and the WHATWG organizations. As such, it is compatible with all the recent web browsers that support those standards.

Unfortunately, CPCbox uses an old sound API that has been deprecated and removed from browsers a long time ago. That's why sound is disabled with current browsers. If you really need to enable sound, the best option is to use CPCbox with Firefox v26.0.

The CPC doesn't automatically run software you insert on its drives. At startup, you're just welcomed with a basic prompt. It's up to you to type commands to communicate with the CPC.

Load tape images

  1. Reset the CPC.
  2. Insert a .WAV tape image in the tape deck.
  3. Switch to tape mode by typing |TAPE⏎
  4. Type RUN"⏎
  5. Press the Play button on the tape deck

Warning: Loading software on tape takes minutes in CPCbox (as well as on real CPC hardware), instead of seconds on disc. Fortunately, almost every CPC game and software ever released elso exists on floppy disc. So, if you just want quick access to CPC games and softwares, consider using disc images instead.

Load disc images

  1. Reset the CPC.
  2. Insert a .DSK disc image into Drive A.
  3. Type CAT⏎
  4. The list of files contained in that disc appeared on the screen. Usually, you have to pick the program to run among the .BAS (or eventually .BIN) files.
  5. You can run that program by typing RUN" followed by the name of the file. For example: RUN"DISK⏎

Tip 1: If you get a "Disc error" after the CAT command, it probably means that this disc is in CP/M format. You can run those discs by typing |CPM⏎

Tip 2: The '|' character only exists on English and Spanish CPC. The equivalent character is 'ù' on French CPC and 'ø' on Danish CPC.

This is a simplified history of CPCbox releases. I'm only highlighting the most significant steps here.

Build 2012-11-12

  • Added tape deck emulation.

Build 2012-09-01

  • Added CPC firmware & brand name selection.

Build 2012-03-31

  • Emulates CRTC Type 0 & Type 2 chips.

Build 2012-03-27

  • Added settings panel.
  • Added monochrome monitors rendering.
  • Emulates the external floppy drive B.
  • Implemented 512KB RAM extension.

Build 2012-01-08

  • Emulates the analog PLL behaviour of the CRT monitor.

Build 2011-06-21

  • Added AY sound chip emulation.

Build 2011-03-12

  • Successfully passed the Zexall Z80 test suite.

Build 2011-02-17

  • Added support for ZIP archives.

Build 2010-11-27

  • Added primitive emulation of floppy disc drive.

Build 2010-09-14

  • Added CPC joystick emulation.

Build 2010-09-07

  • First release.

The CPC still federates a large number of users, retrogamers and developers. CPCbox is proud to help them by making the CPC as simple and accessible as possible.

Blog coverage

They talk about CPCbox:

Greetings

Amstrad ROMs are © copyright Amstrad plc and are distributed with their kind permission. Thanks to Cliff Lawson and Amstrad for making this project possible.

I also want to thank the individuals and communities behind the following websites. The information I found there was invaluable to develop CPCbox:

  • CPCWiki: the largest Amstrad CPC wiki. Lots of information about the CPC.
  • Grimware: the best place to grasp the internals of how the CPC works.
  • Quasar Net: online version of the fanzine Quasar CPC. High quality technical articles there.
  • CPCtech: Kevin Thacker's CPC website. Contains interesting documents and resources.
  • WikiTI: the best synthetic resource about the Z80.

Competition

Here are some other CPC emulators that I found interesting for one reason or another:

  • ACE: the most accurate Amstrad CPC/Plus emulator ever made. Sadly only for MorphOS users.
  • WinAPE: a good Amstrad CPC/Plus emulator for Windows users. Great IDE for developers.
  • SugarBox: a new and promising Amstrad CPC emulator for Windows users.
  • JavaCPC: a good multi-platform Amstrad CPC emulator created in Java.
  • Roland: an Amstrad CPC emulator created in Javascript. Useful for fair comparison purposes with CPCbox ;)

Contact

By e-mail: admin@cpcbox.com