I ran my own blog from November 2006 till October 2014. All posts are still online, but I don't have time to update it anymore. Please note that all images and media files have been removed when the backup was moved to a new host in early 2016. Enjoy!

CP/M - The Father Of MS-DOS And Windows

18. march 2008

CP/M was an operating system created in 1974 by Gary Kildall, and it was the most popular operating system before MS-DOS was born. Ironically MS-DOS itself was a CP/M clone, which also means that some CP/M concepts and technologies can still be found in todays Microsoft Windows operating systems - accessing disks using letters for example (a:, b:, c:,...)

The original CP/M had been written by Gary Kildall as a private project for the 8-bit Intel 8080 / 8085 microprocessor architecture using a minimum of 16kb and a maximum of 64kb RAM. Gary and his wife then created the Digital Research company and launched CP/M as a commercial product, along with the PL/M compiler.


CP/M - an abbreviation for "Control Program for Microcomputers" - introduced a number of new concepts that made it popular. The system itself consisted of three basic elements - the command processor (CCP), the basic disk operating system (BDOS) and the basic input/output system (BIOS), which made it easily portable as manufacturers only had to make changes to the BIOS. CP/M computers only needed a small bootloader in ROM, the OS itself was then loaded from a floppy disk.


The OS also ran on computers using a Zilog Z80 CPU which used an Intel 8080 compatible instruction set - in fact most popular CP/M computers used the Z80 CPU, including the Altair, the Osborne 1, Kaypro portables, MSX, the Apple II (using an optional Z80 board), the Commodore 128, the BBC Micro, the Amstrad CPC and the ZX Spectrum. The Z80 became so popular that many programs started to use proprietary Z80 instructions which made them incompatible with computers using Intel chips.

A large number of well known applications debuted on the CP/M operating system - including WordStar (the first widely used word processor), dBASE, Turbo Pascal (the ancestor of Borland Delphi) and Multiplan (the ancestor of Microsoft Excel).

File names consisted of up to 8 characters, a period, then up to three characters as a file name extension which identified the type of the file - a scheme reused by MS-DOS later on. One of the major weaknesses of the CP/M file system was the lack of a hierarchy - all files were stored on the same level on the disk, which made it had to structure information. CP/M 2. 2 finally provided 16 "user areas" to organize files on a disk, although this didn't really solve the problem. There was no standardized CP/M 5.25" inch floppy disk format, which means that each manufacturer finally used its own format, which made disk format translation programs quite popular.

Unlike UNIX the CP/M system didn't have any security features, any user could read and write any file. It also lacked a standardized graphics support until CP/M 3. 0 with GSX (Graphic System eXtension), although graphics was never a common feature associated with 8-bit CP/M.

When 16 bit computers became more popular Digital Research introduced CP/M-86 for the Intel 8086, followed by CP/M-68k for the Motorola 68000. Programs had to be recompiled to run on the new 16 bit platforms, software written in assembler had to be rewritten from scratch. There was to emulation technology available, which made the transition quite hard. The Atari ST TOS operating system was in fact a CP/M-68k using GEM, the graphical desktop by Digital Research.

IBM wanted to use CP/M-86 as the standard operating system on their new IBM PC. But after problematic negociations between IBM managers and Gary Kildall, IBM finally asked Microsoft chief Bill Gates if it would be possible to use another OS. Bill Gates then purchased a CP/M clone from Seattle Computer Products, renamed it to MS-DOS and offered it to IBM. This is how the Microsoft success story began.

As MS-DOS was a CP/M clone it shared many features with CP/M, although it also offered some real advantages - such as the hierachical FAT file system for example, or the fact that more commands were loaded into RAM making MS-DOS faster than CP/M systems and easier to use on floppy-based computers. CP/M then rapidly lost market share as the microcomputing market moved to the PC platform, and it never regained its former popularity.

Even years after the MS-DOS disaster and the failure of GEM Digital Research continued to improve CP/M-86, and finally it even became fully compatible with MS-DOS again. Many experts even confirmed that CP/M-86 performed better with MS-DOS software than MS-DOS itself. CP/M-86 was then renamed to DR-DOS (Digital Research DOS) and became an offical MS-DOS competitor.

The competition between MS-DOS and DR-DOS became one of the more controversial chapters of microcomputer history. Microsoft offered the best licensing terms to computer manufacturers that committed to selling MS-DOS with every processor they shipped, and they intentionally made Windows display Warnings if a DR-DOS operating system was detected. Such practices led to multiple lawsuits against Microsoft.

At the end, CP/M finally vanished. Gary Kildall died in 1994, Digital Reseach was taken over by Caldera Systems which was then again acquired by the SCO Group.