Personal CP/M-86
| Industry | Software, Operating systems |
|---|---|
| Founded | 1970 |
| Founder | Gary Kildall |
| Headquarters | Pacific Grove, California , United States |
| Products | CP/M-86, MP/M-86, Concurrent CP/M-86, Concurrent DOS, Multiuser DOS, REAL/32, FlexOS, DOS Plus, DR DOS |
CP/M-86 represents a now-obsolete variant of the CP/M operating system developed by Digital Research (DR) specifically for the Intel 8086 and Intel 8088 CPUs. It preserved the command structure of CP/M-80, utilizing relocatable executable files formatted as .CMD files. Digital Research also produced a multi-user, multitasking operating system compatible with CP/M-86, known as MP/M-86, which later evolved into Concurrent CP/M-86. Incorporating an emulator to support PC DOS led to the system being renamed Concurrent DOS, which eventually became Multiuser DOS, with its latest iteration called REAL/32. Operating systems such as FlexOS, DOS Plus, and DR DOS trace their origins back to Concurrent DOS.
History
Initially planned for release in November 1979, Digital Research's CP/M-86 encountered several postponements. IBM initially favored CP/M-86 for its personal computer due to its extensive software ecosystem; however, negotiations with Digital Research broke down over IBM’s insistence on a non-disclosure agreement and a one-time payment, conflicting with DRI’s preference for a royalty-based arrangement. Subsequently, IBM collaborated with Microsoft, which acquired 86-DOS (also known as QDOS), adapted it into MS-DOS, and licensed it to IBM as PC DOS. After Digital Research threatened legal action concerning intellectual property rights, IBM agreed to offer CP/M-86 as an alternative operating system on the PC. The majority of CP/M-86 BIOS drivers for the IBM PC were developed by Andy Johnson-Laird.
When the IBM PC launched in August 1981 and became available in October, it shipped with three operating system options: PC DOS, CP/M-86, and UCSD p-System. Digital Research released CP/M-86 for the IBM PC six months following PC DOS’s debut, in spring 1982; porting software from CP/M-80 presented similar challenges for both systems. Additionally, in November 1981, DRI introduced a CP/M-86 version tailored for the IBM Displaywriter.
Certain dual-processor 8/16-bit machines featured specialized variants such as CP/M-86/80 (used on the DEC Rainbow) and CP/M 8-16 (for the CompuPro System 816), enabling native execution of both CP/M-80 and CP/M-86 applications. The Zenith Z-100 supported software designed for both its 8085 and 8088 processors.
As PC clones gained popularity, Microsoft expanded MS-DOS licensing widely. Although technically comparable to CP/M-86—which offered superior memory management but slower execution speed—DOS outpaced it primarily due to pricing differences: IBM charged $240 per copy for CP/M-86 compared to $40 for PC DOS. Surveys indicated that 96.3% of IBM PCs shipped with DOS while only 3.4% included CP/M-86 or Concurrent CP/M-86. Lifeboat Associates, a significant vendor of CP/M software, shifted its focus to DOS by mid-1982. Industry commentators and BYTE magazine attributed Digital Research’s marketing shortcomings to the growing dominance of DOS.
By early 1983, DRI began selling CP/M-86 version 1.1 directly to customers at $60 per copy, promoting it as a gateway to an extensive application library including the Graphics System Extension (GSX). Distribution was broadened through retail outlets. In May 1983, DRI announced DOS-compatible editions of all its programming languages and utilities; while acknowledging PC DOS’s market success, they denied this influenced their decision. Early in 1984, promotions included offering free copies of Concurrent CP/M-86 with the purchase of two applications; these applications used self-booting disks that did not require loading the OS beforehand.
Digital Research also produced Kanji CP/M-86—a Japanese-language edition—collaborating with nine Japanese companies such as Mitsubishi Electric and Sanyo. Later on, Fujitsu incorporated Kanji CP/M-86 into its FM-16 series computers.
Although CP/M-86 and DOS provided comparable capabilities, they were incompatible due to differing system calls and file formats, necessitating separate software versions. Their command-line interfaces offered similar functions but employed different syntax; for example, copying files used PIP TARGET=SOURCE in CP/M-86 versus COPY SOURCE TARGET in DOS.
Initially, both MS-DOS and CP/M-86 operated on non-PC-compatible hardware like Apricot and Sirius systems by standardizing OS calls adapted for each platform’s hardware. However, performance-critical applications bypassed these OS calls to access IBM PC hardware directly, resulting in faster execution of PC-specific software and reinforcing the dominance of IBM-compatible hardware designs. This standardization also restricted memory support to 640 KB despite early MS-DOS and CP/M-86 machines being capable of addressing nearly one megabyte of RAM.
Reception
PC Magazine observed that CP/M-86 appeared, in multiple respects, to be more suitably designed for the PC compared to DOS; nevertheless, its cost—approximately six times greater—deterred users who did not engage in assembly language programming. CP/M-86 demonstrated strengths where DOS showed limitations, and the reverse was also true, with the breadth of application compatibility serving as a crucial element. A notable limitation was CP/M-86's absence of a run-time environment for applications.
Versions
CP/M-86 releases are identified by two version numbers: one indicating the entire operating system (displayed during startup) and another representing the BDOS kernel version. Documented versions include:
| Operating System | BDOS Version | Release Date | Remarks |
|---|---|---|---|
| CP/M-86 1.0 for AST Research | 2.2? | 1981? | |
| CP/M-86 1.0 for Altos ACS 16000/8600 | 2.2? | November 1981 | |
| CP/M-86 Version 1.1 for IBM Displaywriter | 2.2 | November 1981 | |
| CP/M-86 1.0 for Sirius 1/Victor 9000 | 2.2a | 1981/1982 | |
| CompuView CP/M-86 | 2.x? | 1982 | IBM PC hardware compatible; supports disks up to 196 KB |
| IBM CP/M-86 for IBM PC Version 1.0 | 2.2 | April 1982 | Initial launch; disk capacity of 141 KB |
| IBM CP/M-86 Version 1.1 | 2.2 | March 1983 | Introduced hard drive compatibility |
| CP/M-86 Plus Version 3.1 | 3.1 | October 1983 | Designed for Apricot PC; multitasking kernel capable of managing four concurrent tasks |
| Personal CP/M-86 Version 1.0 | 3.1 | November 1983 | Tailored for Siemens PG685 |
| Personal CP/M-86 Version 3.1 | 3.3 | January 1985 | Created for Apricot F-Series; incorporated FAT disk format support compatible with DOS |
| Personal CP/M-86 Version 2.0 | 4.1 | From 1986 onward | For Siemens PC16-20; shares BDOS with DOS Plus 1.2 |
| Personal CP/M-86 Version 2.11 | 4.1 | From 1986 onward | For Siemens PG685 |
All variants under Personal CP/M-86 cite CP/M-86 Plus as their foundation, indicating they derive from its source code.
Several adaptations emerged within Eastern Bloc countries under titles such as SCP1700 (Single User Control Program), CP/K, and K8918-OS, developed by East German companies VEB Robotron Dresden and Energiekombinat Berlin, representing localized versions of the CP/M-86 system.
Legacy
Caldera granted permission for redistribution and modification of all original Digital Research materials, including the source code related to the CP/M family, through Tim Olmstead's "The Unofficial CP/M Web site" beginning in 1997. Following Olmstead’s passing in 2001, Lineo, then custodian of these Digital Research assets, updated and broadened the free distribution license on October 19, 2001.
See also
Further reading
- The Byte Guide to CP/M-86 by Mark Dahmke, McGraw-Hill, 1984, ISBN 978-0-07-015072-0
External links
- The Unofficial CP/M Website – authorized distributor of original Digital Research software
- The comp.os.cpm FAQ
- Intel iPDS-100 Using CP/M - Video