Table of Contents

Amstrad CPC 464 (1984), Schneider CPC 464 (1985)

Features

Usage

MESS currently supports cpc464 emulation with one “cassette” (cass) device and up to two floppy drives, “floppydisk1” (flop1) and “floppydisk2” (flop2). The former one supports tapes in .wav and .cdt format; the latter ones support disk images in .dsk format.

Also notice that a “snapshot” (dump) feature is available for .sna files and that the “printer” (prin) is emulated as well.

Keyboard

This system requires full keyboard emulation to work correctly. At startup, full keyboard emulation mode is enabled by default. Whilst in full keyboard emulation mode, some key associated functionality may be disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the “Scroll Lock” key (by default).

Floppy Disks

With a disk image loaded, the emulation starts from the BASIC “Ready” prompt. From here you can enter commands to access the disk image

CAT
RUN"filename"

The common programs to run are those with a .BIN or .BAS extension and usually the smaller of the files on the disk image.

On a few games you can type:

RUN"disc

or

RUN"disk

to start the game.

If a directory listing cannot be obtained, then the disc might be copy-protected. In this case, try:

|CPM

“|” is obtained by pressing “shift” and the ”@” key together. Since the keyboard is mapped so the keys are in the roughly same place as on a real Amstrad keyboard, then @ can be found around the ”[”,”@”,”]”,”#” keys of your PC keyboard.

The |CPM command works by loading and executing the first sector on the first track of the disc.

Snapshots

Snapshots, which contain a memory dump, CPU state and hardware state, can be run from a command line interface with the following command:

mess cpc464 -snap "snapshot name"

The snapshot will start automatically.

Expansion devices

Expansion devices are those that are attached to the CPC's 50-pin expansion port. MESS emulates a few of these through its slot device setup.

To use them, use -exp <device name> on the commandline, or select Slot Devices from the TAB menu. Some of the expansion devices have another expansion port on it, and you can attach another expansion device to it, forming a daisy-chain of devices, allowing multiple different expansion devices to be available at once. To add a device to the expansion port on another device, use -exp:<device>:exp <new device>, or you can also still use the Slot Devices menu.

Examples:

mess cpc464 -exp ssa1
Enables SSA-1 speech synthesiser.

mess cpc464 -exp rom -rom1 /path/to/rom/image
Enables ROM Box and mounts a ROM image in the first image slot.

mess cpc464 -exp dkspeech -exp:dkspeech:exp rom -rom1 /path/to/dkspeech.rom
Enables the DK'Tronics speech synthesiser, and attach a ROM Box to it, with the speech ROM mounted in the first slot.

Device name Description
rom Generic ROM Box. Adds 6 image slots for you to mount ROM images. As most ROMs add RSX commands at boot time, you'll need to reset (press F3) before they are usable.
ssa1 Amstrad SSA-1 Speech Synthesiser. Some applications will not detect this, due to issues with the emulation of the SP0256.
dkspeech DK'Tronics Speech Synthesiser. You can mount the ROM version of its software via the “rom” expansion. It is not done for you (yet).
mface2 Romantic Robot Multiface II. Some issues with emulation of this, but is mostly working. Support for revisions 1 and 3 (CPC Plus ver.) are yet to be done.
Miscellaneous

There are a few excellent utilities for creating and maintaining disk images for the Amstrad CPC emulators. Here are just a couple

Others can be found in the FAQ at http://genesis8.free.fr

Known Issues

Runs many disk images and snapshots well.

History and Trivia

The CPC464 was an 8-bit Amstrad computer, produced in 1984, with 64k of RAM and a tape recorder built in.

The Amstrad CPC 464 was one of the most successful computers in Europe. More than two million computers were sold. Despite its ordinary characteristics (like those of the Sinclair Spectrum and often less interesting than those of the others like the Commodore 64 or Atari XL/Xe series) or odd features (like video memory or strange floppy disk format), it was very popular because of its really low price and its interesting commercial concept : all peripherals were sold together (like the Commodore PET that was sold years earlier): CPU/keyboard, tape recorder, monitor (monochrome green or colour).

A huge number of programs and peripherals were developed for this machine. It ran AmsDos (Amstrad's Operating System). AmsDos was completely embedded in the Basic using so-called RSX commands starting with |, but it could not format disks, you needed a special application for that. The 464 also could use CP/M 2.2 or 3.0 when used with an external Floppy disk unit (3” Hitachi, 180 KB / face). A lot of great CP/M software was adapted for the Amstrad CPC.

About 42 KB RAM was available for the user, the video memory and the ROM were mapped on the same addresses with a dedicated chip to switch the memory banks automatically.

Notice that the first Amstrad CPC prototype, called “Arnold”, which gave the name ROLAND (Arnold acronym) to several CPC games, was built around a 6502 processor and only later the CPU was changed to a Z80.

A few months later, the CPC series would be completed with a computer which offered a built-in floppy disk unit: the CPC 664.

The Schneider CPC-464 was produced in Germany by Schneider Rundfunkwerke. It was first marketed successfully in Germany, then in France and Spain and maybe other European countries.

It was basically the same machine as the Amstrad CPC-64 with a less colorful case and keyboard and some slight hardware differences, like better quality back connectors.

OSes and Add-Ons

(info from Ekkehard Morgenstern): AMSDOS could be run only with Amstrad's 3” floppy disk drive. CP/M could be run either with 3” floppy disk drives or other drives available on the market. (I had a 5 1/4” Vortex disk drive with 704K capacity)

Actually CP/M was pretty good compared to MS-DOS, but of course it was only 8 bit. Interesting was that the Z80 processor was downwards compatible to the 8080 processor and hence allowed the 8-bit CP/M to be run without changes. But when programming in assembly language, you had to use the 8080 instruction set which had different mnemonics than the Z80's.

There was a lot of cool add-on hardware for the CPC. I had a MAXAM module which had a built-in editor, assembler and disassembler in ROM. This made it fairly easy to write BASIC and assembly mixed programs. (It would've been better though if the Locomotive BASIC would've had the ability to mix BASIC and assembly, like the BBC computer did)

Locomotive BASIC was surprisingly fast at the time and had even software interrupts, with which it was possible to react to hardware interrupts that were passed to the BASIC interpreter. Hence you could write programs that behaved like multitasking apps. The language also had an advanced sound architecture containing commands to define different wave-forms.

The tape drive routines in ROM had variable baud rate parameters, and so it was possible to store programs at 19200 baud or higher. However, this could lead to read errors of course, which was used as a copy protection by many programs sold on tape.

Amstrad CPC vs. Schneider CPC

(info from Lyall Moffitt): This document lists the differences between the English CPC's and the German CPC's. The original distributor in Germany was Schneider GmbH. The machines distributed by Schneider had the Schneider logo on them. (The monitors and some peripherals were also re-branded as “Schneider” e.g. Schneider DDI-1). Later CPCs were distributed by Amstrad and had the Amstrad logo on them.

The three models distributed by Schneider were:

Early German CPC's show “Schneider 64K Microcomputer …” or “Schneider 128K microcomputer …” on start-up. Later CPC's showed “Amstrad 64k Microcomputer …” or “Amstrad 128K microcomputer …”. The start-up name is defined by option links on the P.C.B. German CPC464's and CPC664's have P.C.B. edge connectors like the English CPC's. German CPC6128's have real connectors, instead of the P.C.B. edge of the English CPC's. This was done to reduce RF emissions. The printer is a 36-way female centronics type, the Expansion is a 50-way female centronics type and the second disc drive is a 34-way female centronics type. All the other connectors are the same. (joystick, stereo sound, monitor and power). All German CPC's have internal metal shield covering the circuit board. This is used to reduce RF emissions. Therefore the German CPC's are much heavier than the English CPC's. Internally, all German CPC's were identical to the English CPC's. The P.C.B. was identical. The quick reference “sheet” on the top of the CPC6128 and CPC664 disc drive is also in German. The computer information, printed on the base of the computer is also in German.

(info from old-computers.com)

Links

Other Emulators