CPC-em - A freeware Amstrad CPC emulator
Version 0.1

Introduction
~~~~~~~~~~~~

CPC-em attempts to emulate an Amstrad CPC 464, which was sold in the mid to
late 80's, and was particularly popular in Europe.
Amstrad had allowed emulator authors to distribute the CPC ROMs with emulators,
and the CPC 664 ROMs are included (same as 464 ROMs but BASIC 1.1).

Requirements
~~~~~~~~~~~~

386 (At least a P200 to be usable)
2mb RAM (?)

What it emulates
~~~~~~~~~~~~~~~~

Z80        - Using MZ80 by Neil Bradley.
Gate Array - ROM banking and the palette are emulated
CRTC       - Uses registers R12 and R13 (address registers). Scrolling has 
             minor bugs though... 
8255 PIA   - Just the bare minimum plus vsync. Tape not emulated yet.
PSG        - Just the keyboard register.
Keyboard   - Mapped as closely as possible.

What it doesn't emulate
~~~~~~~~~~~~~~~~~~~~~~~

Modes 0+2
Sound
Overscan
Multi-mode type effects
Tape
Disc

To run
~~~~~~

Just type cpc-em. F10 quits.
BASIC seems to work fine, but you can't load anything easily.
To load something, use CPCExt to dump it from a .dsk file, then put it on the
command line. Then it will give you a hex number, which is the run address.
Then, once the CPC has booted, press F11. If the file is a BASIC file, type
RESTORE, then RUN. If it's a BIN file, CALL the run address (remembering the
& in front of the hex number).

An example - loading CHUCK.BIN (which happens to be Chuckie Egg) :

Type : cpc-em chuck.bin
Run address : 9A97
Press F11
Type : CALL &9A97

Keys :
~~~~~~

F8 - screenshot (CPCDUMP.PCX)
F10 - quit
F11 - load file
F12 - change mode 2 emulation method

Keyboard mapping
~~~~~~~~~~~~~~~~

Most of the keys are where you expect them to be, but there are exceptions. F1
and F2 are keys that I haven't found a place for yet (if you can help me, do
so please, I don't have a real CPC), the numeric keypad isn't emulated at all,
and on some keyboards, the backslash is one of the keys next to enter.

Known problems
~~~~~~~~~~~~~~

Scrolling has minor bugs
It's slow (but I haven't optimised it at all yet)
Some keys on the CPC keyboard don't work yet (or have been mapped to weird
places)

Tested stuff
~~~~~~~~~~~~

BASIC 1.0 (works)
BASIC 1.1 (works)

The 6128 ROMs seem to work, but I haven't included them because I am not sure
about how well they work.

Thanks
~~~~~~

Neil Bradley for MZ80
DJ Delorie for DJGPP
Amstrad for making the CPC
My mate Dan, for getting me into the CPC
Emulators Unlimited, for hosting the emulator.

Tom Walker
tommowalker@hotmail.com

Rules for e-mailing me
~~~~~~~~~~~~~~~~~~~~~~

I decided to write this section after the response I got from B-em.

The Main Rule :
No Spam.

I am not interested in winning kitchen knives, lots of money, seeing porn, or
anything else. If you are going to e-mail me, actually e-mail me about the
emulator. I would actually like some feedback from this that isn't spam.
