The way the histories of CP/M, DOS, Microsoft, and the 8086 intertwine would be worthy of an amazing film if it wasn’t for the fact it would be very hard to make it interesting screen material.
Few OEMs were asking for an 8086 version of CP/M. One that did was SCP – the same company that helped Microsoft design SoftCard. They needed a disk operating system for their 8086 board released in November 1979. In April 1980, after CP/M-86 was still nowhere to be seen, they lost patience and asked their young engineer Tim Paterson to develop a “quick and dirty” OS similar to CP/M that would hopefully boost the sales of their board. That little operating system, officially named 86-DOS, was eventually purchased by Microsoft and renamed MS-DOS. Paterson has stated on multiple occasions that he would never have begun developing it had CP/M‑86 been available on time.
↫ Nemanja Trifunovic
There’s a ton more in this article about CP/M-86 and its gestation period, but this tangled little knot of coincidences always entertains me. It really could’ve been CP/M, and it really could’ve not been Microsoft. This industry is filled to the brim with interesting what-if stories that we barely regard as a worthy footnote, but few are as fascinating as what the world would’ve looked like had CP/M won out over DOS. The entire world would’ve been drastically different, and while nobody can say with a straight face it would be a better world, we’d at least not have the spectres of MS-DOS haunting system administrators, developers, and users the world over.
Of course, they’d be haunted by different spectres, but still.

The more I hear about this story, the more I sadly have to lay most of the responsibility at the feet of Gary Kildall himself.
There is not a lot of evidence that IBM rejected CP/M for technical reasons. So I doubt the state of CP/M-86 was really the deciding factor. You often hear that Killdall missed a key meeting that created an opportunity for Microsoft (off flying his plane somewhere). It is sometimes painted as an unfortunate bit of bad luck. If you dig into it though, he did meet with IBM and it seems more likely that he missed the meeting in question on purpose. Gary Kildall saw the IBM opportunity as a bad deal–giving away too much for too little upside. He thought he had the keys to the kingdom and, at the very least, he was trying to play hardball.
In the end, the good enough, more open, and eventually better operating system won lasting market share. We have seen this movie plot before and since.
The events detailed in this article are important context but not truly explanatory. At least, that is my view.
I wouldn’t say MS-DOS was “more open”. I think MS-DOS and CP/M were equally “open”. Microsoft licensed it to any vendor willing to ship it, just as DRI did with CP/M. It’s just MS-DOS was riding the coat-tails of the unexpected raving success of the IBM PC. Microsoft weren’t shipping a superior product, and MS-DOS wasn’t Any better, or really any worse, than any other operating system at the time. Microsoft just happened to be in the right place at the right time, with a large enough company to make products quick enough and “good enough”.
Most people think Microsoft made their fortune with Windows and MS-DOS. This fortune was built upon a significant foundation of contract software development and BASIC interpreter licenses. BASIC ruled the roost on 8-bit consumer computers, and most likely that BASIC was developed by Microsoft.
@The123king
I am not arguing that DOS was better, at least not at first. And there is no question that MS was at the right place at the right time. My point is that they were not there by accident and DRI not being in that place instead was arguably a conscious choice by DRI.
CP/M included code for the specific hardware it ran on. In contrast, DOS made BIOS calls to a BIOS not written by or controlled by Microsoft. Hardware makers had greater independence with DOS which is part of my “more open” comment.
That said, my calling DOS “more open” comes largely from how accessible MS made it both in terms of cost and licensing. Along the the same theme as not wanting to sell out to IBM for too little, DRI protected access to and pricing of CP/M. They set the license and it was expensive (CP/M-86 cost six times what PC-DOS did–both from IBM). Microsoft on the other hand would license DOS to OEMs for relatively little, let them modify it, and let them distribute the result to end-users. And Microsoft let IBM and the clone makers drive the BIOS and hardware definition. Take the Tandy 1000 for example, whose DOS shipped with custom drivers, utilities, and even applications (DeskMate) not written by Microsoft.
LeFantome,
I would also add they were “open” to meeting customer demands. There are famous anecdotes about them promising an assembler, C compiler, and FORTRAN compiler and whatnot, even though they had zero experience with any of those.
While CP/M was trying to “sell their thing”
Microsoft was willing meet the needs of “IBM’s thing”
@sukru
True.
That said, Microsoft did know dev tools. They wrote an assembler in 1978 and the first PC assembler (MASM) in 1981. And of course, they wrote many of the classic 8-bit BASIC systems like Apple II and Commodore 64 (1976 and 1977). I bet the success of the Commodore 64 had something to do with the way they thought about the potential of the IBM PC deal.
Their biggest “zero experience” item may have been the OS itself though they did resell both Xenix and of course CP/M. They already had the FAT filesystem in 1977 so that was them at least.
LeFantome,
Yes, “zero experience” might have been exaggeration. But you get the point.
They were willing to do what IBM needed, and they were already in the business of tailioring things to other hardware companies.
(Was Commodore before or after IBM deal?)