Benchmarko Logo
Benchmarko Logo

German French Spanish

CPCEMU - Appendix

  1. Appendix
    A.1 Glossary
    A.2 Bibliography
    A.3 Index



A. Appendix


A.1 Glossary

Here some computer terms are explained. I do not claim to give complete or precise definitions. The terms are described with the view to the CPC.

386/33 (AT 386/33)
Short term for PC AT with 80386 processor, clocked with 33 MHz. Because of the "high" clock rate it should be a 386DX with a real 32 bit data bus, not the cheap 386SX with a 16 bit data bus.

AMSDOS (Amstrad DOS)
DOS developed by Amstrad, for the CPC computer.

British computer manufacturer, who has designed the CPC computer.

Storage of files.
Or: One file, including several other.
In »ZIP archives the files are compressed before including them.

ASCII (Abbreviation for: American Standard Code of Information Interchange)
On a computer all characters, numerals are represented internal as numbers. Most computers use ASCII, with the letter "A" coded as 65. »PC and »CPC also use ASCII. In »Locomotive-BASIC you can save an ASCII file by typing SAVE"<filename>",A.

Basis Address
This you have to specify in many »setups if you own a soundcard. CPCEMU looks for an environment variable.

BASIC (Abbreviation for: beginners all purpose symbolic instruction code)
Widely used, easy to learn programming language for home- and personal computers. Former every computer had had his own BASIC dialect. Modern BASIC allows structured programming, so you are not forced to program "spaghetti code" any more. Also the CPCs has its own BASIC, the Locomotive BASIC by a company of the same name.

See File.

Batch File
Contains instructions you normally type in your computer. If you call such a file, the instructions are executed one by one, even if you input them.


Binary File
See File.

BLASTER environment variable
See environment variable.

Home computer by the company Commodore with 64 KB »RAM, very popular. Because of the huge software supply it was the game computer for many years. Later it was pushed aside from the Commodore AMIGA, but despite its old technique it survived longer.

Clock frequency / Clock rate
Clock the processor is connected to. It determines the speed of the processor in a significant way. Todays 486DX2/66 processors are clocked internally with 66 MHz. The Z80A in the »CPC is clocked with 4 MHz, running actually with 3.3 MHz because he has to wait periodically for the screen update.

Command line parameter
Parameter you give in the command line after the file you want to call.

Here: Configure a program for his own needs. You can do that with the setup or a configuration file.

CPC (Abbreviation for: Colour Personal Computer)
Developed by the company Amstrad, was available in different types. Please read the introduction again.

CPC printer port
Centronics interface of the »CPC to connect a printer. Unfortunately the CPC designers were too economic: It has only 7 bits. With a short wire it was possible to extend it to 8. For this the cassette port was misused, not needed when printing.

CPC firmware manual
A book about the »CPC, especially describing the operating system interface of the CPC.

CPC newsgroup
A newsgroup only for the »CPC. It is called comp.os.amstrad.8bit and was created in august 1994.

CP/M Plus (Abbreviation for: control program for microcomputers)
Operating system from the company Digital Research, mainly for 8 bit microcomputers. Widely used until IBM decided to use MS-DOS for its PCs.
CP/M Plus (CP/M 3.0) was the successor of CP/M 2.2 and was included in the software package of the »CPC 6128.

CTRL/SHIFT/ESC (control/shift/escape)
Three finger combination on a »CPC to cause a reset. It is similar to the reset combination CTRL/ALT/Del on a PC. Some programs block such a reset so you have to turn off the computer or use the reset button. The CPCs had no button, but it was easy to build one. In CPCEMU the function key F8 is the reset button.

Character on the screen which shows you the current writing position. Somewhere on the keyboard there are cursor keys to move the cursor around.

Connectors with a special form.

British company offered hardware extensions for the »CPC, e.g. memory extensions.

DMA (Abbreviation for: Direct Memory Access)
Direct access to the computer memory without using the processor. Used with disk drives, but to be cheap not implemented in CPCs.
The Soundblaster card can also use a DMA channel, getting digital sound data "through" it.

DOS (Abbreviation for: disk operating system)
Disk oriented operating system, e.g. AMSDOS, DRDOS, MS-DOS. Today it is a synonym for MS-DOS.

DOS Search Path
DOS uses a path along subdirectories to find a file. It is set with the environment variable PATH.

MS-DOS compatible »DOS by the company Digital Research.

E-Mail (Abbreviation for: Electronic Mail)
Using a computer as mail-box.

EMM (Abbreviation for: Expanded Memory Manager)
Similar to EMS.

EMS (Abbreviation for: Expanded Memory System)
Memory extension for the »PC, to get around the 640KB memory limit. With the banking technique other memory pages are mapped in an EMS window. EMS was developed by Lotus, Intel and Microsoft, thus it is called LIM-EMS.
There is hardware-, emulated and simulated EMS. Special memory cards supply hardware EMS, mainly used on old PC XTs. On a PC AT with at least a 80386 processor it is possible to have emulated EMS by using the paging mechanism for banking. This sort is supplied by EMM386.EXE and should be used to speed up CPCEMU. Simulated EMS is too slow, it has to copy the memory pages.

Imitate a system (hard- or software) by another one. The imitating system computes the same results on the same data as the imitated system. CPCEMU emulates a »CPC on a »PC.

The system emulating another one.

Environment variable

Collection of data belonging together. On the »CPC there are files of different types, e.g BASIC files with BASIC programs usually having the extension .BAS, ASCII files with any text, and binary files with any bytes, usually having the extension .BIN. Binary files can contain machine programs or other data.

Format definitions
Definitions of disk formats.

FTP (Abbreviation for: File Transfer Protocol)
A protocol to transfer files in computer networks. Also, the program running this protocol is called FTP.

Parts of a computer you can touch, e.g. periphery like printer, monitor; internal it is the processor and other hardware chips.

Hardware chips
Components inside the computer, e.g. processor, memory chips, floppy disk controller,...
Inside the CPC there are the Z80 processor, the Gate Array, the CRTC 6845 for addressing the screen memory, the PIO 8255 for input/output, the sound chip PSG AY 3-8912, the floppy disk controller FDC 765,...

Hardware scrolling
Moving the screen without having the processor to copy from one part to another. The processor has to modify only the screen base address, the rest is done by a hardware chip.

Fill the memory with special values, so variables are defined.

Connection of a computer to its periphery or from one program to another. Thus there are hard- and software interfaces. The so-called Centronics interface is a parallel interface, transmitting the bits of a byte parallel. With serial interfaces it is necessary to transfer the bits one after another.

An Internet is composed of several sub-networks of computers. Here: The Internet, a worldwide computer network for communication.

If the processor gets a signal with higher priority, it interrupts the running program and calls a special interrupt handler. When finished it continues with the interrupted program. On a PC there are different interrupt signals, e.g. when you press a key, when a timer runs off, when data from the serial interface has arrived (e.g. when you move the mouse), when the soundcard just played its last sample and needs more data, ... The Z80 in the CPC is interrupted 300 times a second.

Interrupt number IRQ (IRQ=Abbreviation for: Interrupt Request)
On a PC, different »interrupts have different numbers. For example, the keyboard interrupt has number 9, the timer interrupt has number 8. If you press a key, the keyboard sends an interrupt request to the processor, so it is informed.

An adapter box to realize any connection between two connectors by using short wires which must be soldered. See also »Wiring Box.

Keyboard handler
A program called when the keyboard generates an »interrupt. The handler gets the number of the key which is pressed or released.

LIM standard (Abbreviation for: Lotus Intel Microsoft)
Memory expansion (»EMS), developed by Lotus, Intel and Microsoft.

British company which wrote the »BASIC of the »CPCs.

Mailing list
A service from me, for which I add your email address to a list. So you will be informed about news concerning CPCEMU.

Special bus architecture by IBM.

MS-DOS (Abbreviation for: Microsoft Disk Operating System)
Operating system, developed by the company Microsoft for 16 bit processors (8086). The most popular operating system for the PC. Still in use on the 32 bit processors 80386 and 80486.

Multi Modes
Programming technique to have different screen modes simultaneously on the screen. The screen mode is changed during a screen refresh more than one time. On the CPC you get zones with high resolution, few colours and low resolution, many colours.

Multiface II (Abbreviation for: Multipurpose Interface)
A hardware extension for the CPC. Allows to interrupt any program at any time to analyze or save it.
Developed by the British company Romantic Robot.

Number representations
Depending on the selected base, there are different representations for the same number. Well known is the decimal representation with basis 10 and digits 0 to 9. Computers use the binary representation (base 2) with digits 0 and 1. Programmers like the hexadecimal representation with base 16, because 16 is a power of 2 (2 powered with 4). Then the representations can be easily computed into each other. Besides a byte needs only 2 digits (0 to 9, A to F) in the hexadecimal notation.

OS (Abbreviation for: Operating System)
A program needed to use the computer. It provides basic functions to application software. New operating systems do complicated tasks like program scheduling in multitasking systems, ...

OS/2 DOS box
A window under the 32 bit operating system OS/2 by IBM, where you can run DOS programs. The so-called DOS compatibility box.

The border surrounding the writable area on the screen. On a PC it is very small but you can change its colour, e.g. in CPCEMU with "BORDER 10". On the CPC the overscan is much wider, so programmers have looked for possibilities to write to it. With a programming trick it is possible to write to the whole screen. This programming technique is called overscan.

Variable with a fixed meaning, the behaviour of the program relies on it.

PC (Abbreviation for: Personal Computer)
Computer with a microprocessor as processor (or CPU=central processing unit). Today a synonym for the IBM PC with 8086 or 8088 processor. PC AT (advanced technology) are computers with a 80286, 80386 or 80486 processor.

PC AT (advanced technology)
PC computer with a 80286, 80386 or 80486 prozessor.

PEEKs and POKEs:
»BASIC instructions to modify the memory directly. "PEEK(<address>)" is used to read a byte from memory, "POKE <address>,<number>" modifies the memory. Programs with many PEEKs and POKEs are hard to understand, but sometimes it is necessary to break through the limits of BASIC, especially if the BASIC only has few instructions.

Program by PK-Software to decompress ZIP files.

RAM (Abbreviation for: Random Access Memory)
Memory chip. Memory of the computer.
The CPCs have 64KB RAM (kilo bytes) or 128KB. With hardware extensions they could have up to 576KB RAM.

ROM (Abbreviation for: read-only-memory).
Memory chip. Memory that can only be read but not changed. It is available directly after switching on the computer. The CPCs have 16KB ROM »OS, 16KB ROM »BASIC and 16KB ROM for the AMSDOS.

ROM Image
File with the contents of a »ROM. If you read out a ROM and write the bytes into a file you will get a ROM image.

Serial Interface to connect monitors or printers to the computer. (RS 232 C).

German company, which sold the Amstrad CPCs under its label in Germany.

Screen mode

Changing »parameters of a program, so it behaves differently. You can tell the setup, that you have a soundcard, that you want to use a joystick, ...

A big software archive in the USA. The SimTel Software Repository is maintained by Coast to Coast Telecommunications, Inc. (CCT) on its host computer on the Internet located at SimTel.Coast.NET. This archieve is mirrored (copied) to other sides. One mirror site is Oakland University located at OAK.Oakland.Edu. One German SimTel mirror is

A memory dump completed by internal states of the »hardware chips.
It contains a complete momentary state description of the computer. If the snapshot is reloaded, the computer is set back to the state described in the snapshot. Thus it is similar to a real snapshot, only inside the computer.

Programs of a computer system.

Soundcard of the company Creative Labs.

The Sinclair Spectrum is a home computer developed by the company Sinclair.

Turbo Pascal compiler
Pascal is a higher programming language which allows structured programming, today used in many schools. If one talks about Pascal, he means mostly Turbo Pascal, even if this is only an extended Pascal by the company Borland. The Turbo Pascal compiler is particular fast because it compiles the program in one pass.

Useful program.

VGA (Abbreviation for: Video Graphics Array)
Graphics standard on the PC. Successor of CGA (Colour Graphics Adapter), MCGA (Multi Colour Graphics Adapter) and EGA (Enhanced Graphics Adapter). Extended to SVGA (Super VGA) with higher resolution.

VGA-BIOS (Abbreviation for: VGA Basic Input Output Operating System)
The operation system for the »VGA graphics card.

Something you can put on DOS.

Wiring box
A adapter to realize any connection between two connectors by using short wires.
In comparison to the jumper box, the wires need not be soldered.

An 8 bit processor developed by the company Zilog. It is upwards compatible to Intels 8080 and was very popular. In the »CPC there is the Z80A which is clocked with 4 MHz.

Z80 instructions
Machine instructions which the »Z80 understands. They are only number columns, so to remember them more easily mnemonics were introduced, which are translated by an assembler into binary code. The instruction LD A,B loads register A with the contents of register B and is the same as the binary code 0x78.

A special process to compress files. The »archives have the extension ZIP.



A.2 Bibliography

The CPC manual is indispensable for CPC beginners:

  • Spital Ivor and Perry, Roland and Poel, William and Lawson,Cliff: CPC 6128 Benutzerhandbuch, Schneider Computer Division 1985, Originalausgabe © 1985 (my one contains 1895) by AMSOFT, AMSTRAD Consumer Electronics plc and Locomotive Software Ltd.

An excellent commented ROM listing, with starting chapters dealing especially with the software side of the CPC:

  • Janneck, Jörn W. und Mossakowski,Till: ROM-Listing CPC 464/664/6128,

    Markt & Technik Verlag 1986

On the contrary: unfriendly composed, rarely commented, dealing more with the hardware side:

  • Brückmann, Englisch, Gertis: CPC 464 Intern mit kommentiertem ROM-Listing, Data Becker 1985

Good to learn C, with many exercises:

  • Kellay, Al and Pohl, Ira: A Book on C, Second Edition, 1990 by Benjamin/Cummings Publishing Company, Inc.

The C++ standard book:

  • Stroustrup, Bjarne: Die C++ Programmiersprache, 2. Auflage, Addison-Wesley, 1992

Another nice C++ book:

  • Eckel, Bruce: C++ Inside & Out, 1993 by Osborne McGraw-Hill

Hints, how to write an understandable and good manual, gives:

  • Boedicker, Dagmar: Handbuch-Knigge, Software Handbücher schreiben und beurteilen. Wissenschaftsverlag 1990



A.3 Index

The numbers behind the entries show you the chapter where they are described.

(not complete)
#ENDIF 4.2
#IFCPC 4.2
22DISK 5.1.2
Adapter, parallel 5.2
BLASTER Environment 2.3.2
Cassette 3.2.2
Configuration file 4.2
CPC 1.3
CPC Newsgroup 6.2
Debug Menu 7.3
Disk 3.2.1
Disk Image 3.2.1
EMS_EI 4.2
EMS Memory 2.3.1
Function key 3.1
Keyboard 3.1
Menus 3.2.1
Multi Mode 4.1
Setup menu 4.1
Snapshot 3.2.3
Soundblaster 2.3.2
VSYNC Bit 4.1



© Marco Vieth, Mai 1998

MV, 04.03.2006 20:51:46