Difference between revisions of "CP/M"

From Computer History Wiki
Jump to: navigation, search
(Fixed a typo, added some more info)
Line 9: Line 9:
  
  
CP/M was the inspiration to [[MS-DOS]].  It assigns letters for each drive, however it doesn't use directories.  CP/M was a portable operating system, that was popularized because it was cheap, and was not resource intesnsive, unlike [[Unix]] which had very restrictive licensing.  CP/M was also seen as a popular choice of an OS on the [[S-100]] type machines, although not all machines that ran CP/M had S-100 slots (The [[Commodore 128]] would be a good example of such).
+
CP/M was the inspiration to [[MS-DOS]].  It assigns letters for each drive, however it doesn't use directories.  CP/M was a portable operating system, that was popularized because it was cheap, and was not resource intensive, unlike [[Unix]] which had very restrictive licensing.  CP/M was also seen as a popular choice of an OS on the [[S-100]] type machines, although not all machines that ran CP/M had S-100 slots (The [[Commodore 128]] would be a good example of such).
 +
 
 +
The key to CP/M's portability and success was its division into core applications, CCP (command processor), BDOS and BIOS parts - the BIOS provides functions to the BDOS, and BDOS provides functions to applications. To port CP/M to a new computer platform it's only necessary to write a hardware-specific BIOS with a small set of routines, and a boot loader. A reference BIOS listing which is useful as a starting point can be found in the Digital Research documentation. This relatively simple concept meant that CP/M was quickly ported to a wide range of hardware.
  
 
Without doubt the 'killer' application that CP/M had was [[SuperCalc]] a [[VisiCalc]] clone.  Not to mention there was a port of [[Zork]] to the CP/M z80 platform.
 
Without doubt the 'killer' application that CP/M had was [[SuperCalc]] a [[VisiCalc]] clone.  Not to mention there was a port of [[Zork]] to the CP/M z80 platform.

Revision as of 12:06, 23 November 2012

CP/M was an early OS for microcomputers. It was ported to several CPUs, the most popular ports were for the i8080 and the Z80.


CP/M
Creator: Gary Kildall at Digital Research, Inc.
Architecture: 8080, z80, 8086, 68000
This Version: 3.1


CP/M was the inspiration to MS-DOS. It assigns letters for each drive, however it doesn't use directories. CP/M was a portable operating system, that was popularized because it was cheap, and was not resource intensive, unlike Unix which had very restrictive licensing. CP/M was also seen as a popular choice of an OS on the S-100 type machines, although not all machines that ran CP/M had S-100 slots (The Commodore 128 would be a good example of such).

The key to CP/M's portability and success was its division into core applications, CCP (command processor), BDOS and BIOS parts - the BIOS provides functions to the BDOS, and BDOS provides functions to applications. To port CP/M to a new computer platform it's only necessary to write a hardware-specific BIOS with a small set of routines, and a boot loader. A reference BIOS listing which is useful as a starting point can be found in the Digital Research documentation. This relatively simple concept meant that CP/M was quickly ported to a wide range of hardware.

Without doubt the 'killer' application that CP/M had was SuperCalc a VisiCalc clone. Not to mention there was a port of Zork to the CP/M z80 platform.

commands

The CCP provides a number of resident commands:

TYPE - list a file at the console

DIR - display the disk directory of files

ERA - erase a file or group of files

REN - rename a file

USER - move to a different user area

SAVE - save the contents of the TPA to disk for debugging

The remaining utilities take the form of transient programs which are loaded from disk when required:

ASM - assembler

LOAD - loader

DDT - Dynamic Debugging Tool

ED - line oriented editor

PIP - file copy program

STAT - disk status and statistics (free space, etc.)

DUMP - simple file hex dump

SUBMIT - batch command

XSUB - SUBMIT extension

Generally, at least two hardware dependent programs are supplied by the computer vendor:

FORMAT - Formats a blank disk

SYSGEN - Transfers the operating system between disks and memory

Digital Research, the authors of CP/M, also offer a number of upgraded utilities for CP/M:

MAC - macro assembler

RMAC - relocating macro assembler

LINK - linking loader (linkage editor)

LIB - relocatable module librarian

XREF - cross reference lister