CP/M — Control Program for Microcomputers — was the first widely
standard operating system for microcomputers. It made software
portable across dozens of incompatible 8080/Z80 machines.
1974 → 1979
Gary Kildall wrote CP/M at Digital Research. CP/M 1.4 arrived in
1976 and CP/M 2.2 — the version this emulator implements — in
1979. It became the default OS for business micros: Altair,
Osborne, Kaypro, Xerox, North Star, Epson and many other 8080/Z80
machines.
Why the Z80?
CP/M was written for the Intel 8080. The Z80 is binary-compatible
with the 8080, cheaper, and adds instructions and registers.
Most CP/M software is plain 8080 code and runs happily on a Z80;
the extra instructions only made some programs faster or more
compact.
The standardization trick
CP/M split the machine into three layers: the BIOS
(hardware-specific), the BDOS (files, console, disk
directory) and the CCP (the A> prompt and
commands). Programs call BDOS through CALL 5 and
never touch the hardware directly. That is why one binary could
run on machines with completely different floppy controllers.
The shared conventions
8.3 filenames, 128-byte records, FCBs, user areas, the transient
program area (TPA), .COM executables and utilities
like PIP, STAT, ED, ASM. These conventions were the “API” that
made an ecosystem possible.
What ran on it
WordStar, dBASE II, SuperCalc, MultiPlan, Turbo Pascal, MBASIC,
FORTRAN, COBOL, assemblers — and games: Sargon, Zork, Adventure,
Nemesis. The 8-bit business machine era was largely a CP/M era.
VisiCalc and SuperCalc
VisiCalc (1979, Dan Bricklin and Bob Frankston) was the first
spreadsheet and the “killer app” of personal computing. It did
have CP/M ports, but they were niche: the HP 125 and Sony SMC-70
versions are the CP/M releases. The mass-market VisiCalc was for
the Apple II, Atari, TRS-80 and IBM PC.
The spreadsheet that actually shipped with CP/M business machines
was SuperCalc (Sorcim, 1980; bundled with the Osborne 1).
A-Prompt does not bundle either, but the Software card links to
the SuperCalc archives; install the zip, run INSTALL,
choose ANSI Standard, save, then run SC.
This machine
64 KB RAM, Z80, TPA 0100h–FBFFh, drives A:–D:,
CP/M 2.2 BDOS and CCP, FCBs, 8.3 files, ADM-3A/VT52/ANSI terminal
profiles and mountable .dsk images.