Inhaltsverzeichnis switch to english version


Amstrad CPC / technical data

Amstrad/Schneider CPC 6128 - data + facts
Brochure CPC 6128 (german only)
Released: 1985
Processor:  Zilog Z80A

The Z80 microprocessor is an 8-bit CPU with a 16-bit address bus capable of direct access of 64k of memory space. Adressing the 128 KB (i.e. in the CPC 6128) was done by bank switching. The Z80 has a language of 252 root instructions and with the reserved 4 bytes as prefixes, acceses an additional 308 instructions. The Z80 was modeled after the Intel 8080 and contains the 78 - 8080 opcodes as a subset to it's language.

Programming features include an accumulator and six eight bit registers that can be paired as 3-16 bit registers. In addition to the general registers, a stack-pointer, program-counter, and two index (memory pointers) registers are provided. While not in the same leauge as the 80486 or 68000 series, the Z80 is extremely useful for low cost control applications. One of the more useful features of the Z80 is the built-in refresh circuitry for ease of design with DRAMs.

The Z80 comes in a 40 pin DIP package. It has been manufactured in A, B, and C models, differing only in maximum clock speed. It also has been manufactured as a stand-alone microcontroler with various configurations of on-chip RAM and EPROM*.
Zilog Z80A
Max. Clock Speed: Z80 - 2.5MHz, Z80A - 4MHz
Power Requirements: Z80 - 60mA, Z80A - 90mA
Operating Temp: 0 - 70 deg C.
Min. Instruction time: 1uS (4MHz)
Max. Instruction time: 5.75uS (4MHz)
No. of Instructions: 158 (78 instructions of 8080 are a subset)
Internal Registers: 14
Stack: RAM
Frequency:  4 MHz
RAM:  128 KByte in 2 banks, each 64 KByte (in Basic 42 KByte free memory)
ROM:  32 KByte + 16 KByte Disk-ROM
Operating System:  AmsDOS on board, CP/M 2.2 on disk, CP/M PLUS on disk
Graphics chipset:  Motorola 6845
Motorola 6845
Text modi:  20 x 25, 40 x 25, 80 x 25
Standard ASCII
Colour palette:  27 colours
Graphics modi:  mode0: 160 x 200 (16 colours),
mode1: 320 x 200 (4 colours),
mode2: 640 x 200 (2 colours)

All of these screenmodes can be extended a little bit further by using 'overscan', a feature that was also used on the Amiga. For example, by using overscan you could extend Mode 0 resolution to 192*264 in 16 colors.

One of the early games for the CPC is Sorcery+ (1985). The programmers had managed to mix two of the available screenmodes:
Sorcery+ (1985)
Here are two additional examples showing that even with a few tricks nice graphics were possible - even with a limited colour palette:
Anarchy (Made)
Soundchip:  General Instruments AY-3-8912, sound sample
General Instruments AY3-8912
Sound:  3 voice channels, 1 noise channel, stereo, built-in speaker
Keyboard:  QWERTY, 74 keys, num-block
Diskdrive:  3", 178 KByte on each disc side (data format), system format: 169 KByte

3 inch disc
I/O:  1 x data bus, 1 x centronics parallelport, 1 x tape, 1 x joystick
specials:  power supplied by screen (green screen or colour screen)
AMSDOS: List of commands:
|A
|B
|CPM
|DIR
|DISC
|DISC.IN
|DISC.OUT
|DRIVE
|ERA
|REN
|TAPE
|TAPE.IN
|TAPE.OUT
|USER
	
Locomotive Basic 1.1: One reason that the AMSTRAD CPC could sustain a community of programmers for so long is that it's Basic was so good. It was written by Locomotive Software, a team who worked for Acorn before hand. It allowed programmers to do nearly everything that the machine's own built-in programs could do, although machine code programmers would later teach the machine new tricks.

Compared to the poor Basic of other 8 bit computers LOCOMOTIVE BASIC 1.1 was quite professional and used a quite common syntax. Taken together Locomotive Basic and CP/M (with its programs like Starwriter) the Amstrad CPC helped lots of AMSTRAD programmers and users to feel familiar to things like GW-BASIC or a DOS-Prompt much earlier than other 8-bit users.

The Amstrad CPC 6128 was the most professional homecomputer for programming in the 1980ies.

List of commands:
ABS
AFTER
AND
ASC
ATN
AUTO
BIN$
BORDER
CALL
CAT
CHAIN
CHAIN MERGE
CHR$
CINT
CLEAR
CLEAR INPUT
CLG
CLOSEIN
CLOSEOUT
CLS
CONT
COPYCHR$
COS
CREAL
CURSOR
DATA
DEC$
DEF FN (Function)
DEFINT
DEFREAL
DEFSTR
DEG
DELETE
DERR
DI
DIM
DRAW
DRAWR
EDIT
EI
ELSE
END
ENT
ENV
EOF
ERASE
ERL
ERR
ERROR
EVERY
EXP
FILL
FIX
FN
FOR
FRAME
FRE
GOSUB
GOTO
GRAPHICS PAPER
GRAPHICS PEN
	
HEX$
HIMEM 
IF
INK
INKEY
INKEY$
INP
INPUT
INSTR
INT
JOY
KEY
KEY DEF
LEFT$
LEN
LET
LINE INPUT
LIST
LOAD
LOCATE
LOG
LOG10
LOWER$
MASK
MAX
MEMORY
MERGE
MID$
MIN
MOD
MODE
MOVE
MOVER
NEW
NEXT
NOT
ON BREAK CONT
ON BREAK GOSUB
ON  GOSUB
ON BREAK STOP
ON ERROR GOTO
ON expr GOTO
ON SQ soundchannel GOSUB
OPENIN
OPENOUT
OR
ORIGIN
OUT
PAPER
PEEK
PEN
PI
PLOT
PLOTR
POKE
POS
PRINT
PRINT SPC
PRINT TAB
PRINT USING
RAD
	
RANDOMIZE
READ 
RELEASE
REM
REMAIN
RENUM
RESTORE
RESUME
RESUME NEXT
RETURN
RIGHT$
RND
ROUND
RUN
SAVE
SGN
SIN
SOUND
SPACE$
SPC
SPEED INK
SPEED KEY
SPEED WRITE
SQ
SQR
STEP
STOP
STR$
STRING$
SWAP
SYMBOL
SYMBOL AFTER
TAB
TAG
TAGOFF
TAN
TEST
TESTR
THEN
TIME
TO
TROFF
TRON
UNT
UPPER$
USING
VAL
VPOS
WAIT
WEND
WHILE
WIDTH
WINDOW
WINDOW SWAP
WRITE
XOR
XPOS
YPOS
ZONE