I've had this CP/M History file since the 80's. For you old pharts like myself that remember the CP/M days, you may or may not find this interesting. But it does show just how underhanded MS was in it's stolen code and the eventual death of CP/M, which was by far superior to MS's OS at the time. Unfortunately this file got trashed long ago, and when I recovered it the first headers that gave credit to the author were munged, and it's been so long ago that I can't remember where I got it. But I do know it was from a credible source, originating from a magazine. Happy reading...
Quote
If many people today know of CP/M at all, they think of it as "the predecessor to DOS". Here's the real story of the birth, life and death of this once dominant operating system.
Birth
"Necessity is the mother of invention" the old saying goes. And its true; but as we all know it takes two to make a baby and in the case of CP/M the father was a man named Gary Kildall, who in 1975 was working as a consultant to Intel (inventors of the 8080 chip which at that time powered the majority of non-Apple microcomputers).
Kildall's task at Intel that year was to design and develop a language called PL/M for the 8080 chip, to be used as a systems development language. At the time, the chips themselves barely existed and Intel was just then starting to design a computer system that used the 8080. The plan was for Gary to use the 8080 emulator Intel had running on their big PDP-10 minicomputer, but he preferred to work directly on the 8080 itself, in part because by working on his own machine at home he could avoid the 50 mile drive to Intel to work every day. The only 8080-based computer Intel had available was called "Intellec-8", but it didn't have any software or disk storage attached to it. So Kildall obtained a used test floppy drive free from Shugart Associates, attached it to the Intellec-8 with a controller designed by his friend John Torode, and wrote a primitive operating system for it which he called CP/M.
CP/M was developed on Intel's 8080 emulator under DEC's TOPS-10 operating system, so naturally many parts of CP/M were inspired by it, including the eight character filenames with a three-character extension that every MS-DOS/Windows 3.X user still lives with today.
Developing and debugging an operating system is a tough job, and it always takes longer than you thought it would (probably because if you were realistic about estimating the true time and effort it will take, you wouldn't have the heart to begin). By the end of 1975, Kildall at last had CP/M version 1.0 ready and had started on PL/M, but Intel was no longer interested in the systems development language by that time. Gary offered CP/M to them, but the company saw no potential in it and declined to market it.
By 1976, the world was moving onward and upward. Intel was so busy selling bucketloads of 8080 chips to the many small and growing computer manufacturers that it didn't miss a dubious opportunity to get into the software business one bit. Many of these new companies had neither the time nor expertise to write their own proprietary operating systems (as the first pioneers in the field, or tried to do, with little success). A company called IMSAI, which built a very successful 8080-based system, had just started marketing their own floppy disk system, and needed some software to use it -- fast. They heard about Kildall and his CP/M, and contacted him.
They wanted it, and he wanted to sell it, but the trouble was CP/M was written to only use "standard" IBM-compatable soft-sectored floppy disks. IMSAI had a different, incompatible flavor of floppy. At this point, most ordinary programmers would simply have changed the operating system to use the different format and sold it, but Gary Kildall had a better idea. What he did was separate out the parts of CP/M version 1 that addressed the specific format of the diskettes, and placed them in a separate module he called the BIOS, for Basic Input/Output System. That way, the system could easily be adapted to new hardware without having to rewrite or even revise the complex heart of the software.
His decision to "do it right", even though it took extra time and effort, led to the establishment of CP/M as the first cross-platform operating system. Other new hardware startups need not write their own software, they could buy CP/M and adapt it themselves to their unique hardware. Further, because CP/M operated the same way on every 8080-based computer, other software developers were also relieved of the necessity of adapting their software products to each new machine -- they could write to be compatable with CP/M, and let it take care of the details of doing the I/O.
Kildall was an engineer, not a businessman, but he could recognize a gold mine when he saw one. He rapidly formed his own company, called Intergalactic Digital Research, to market and further develop CP/M and other products such as his abandoned PL/M.
Life
The company's seminal product was CP/M 2.0, which fully separated the three components of the operating system into logical pieces: the CCP (console command processor); the BDOS (Basic Disk Operating System); and the BIOS. Only the BIOS need be provided by anyone to get CP/M running on a new machine, the CCP and BDOS would be unchanged. CP/M 2.0 was quite buggy, and was quickly followed by 2.1 as a fix-up release. However, 2.1 was limited in its internal capacity to small floppy drives, and by 1977, hard drives were coming on the scene. CP/M version 2.2 added expanded disk formatting tables which could allow access to up to 8 (eight) megabytes per drive in up to 8 (eight) total drives. It was version 2.2 that became the megahit that dominated microcomputing almost from its outset.
It was CP/M's adaptability that gave it appeal and launched it on the road to success, but any operating system that had that characteristic might have succeeded in a similar way, given the right timing and some luck. But CP/M was more than just lucky -- it was good. It packed a surprizing amount of power in a tiny package, and did so in a simple, clean logical way. Many of its critics bemoaned its sometimes cryptic commands (rightly) and also its lack of powerful features. But it must be remembered that CP/M was designed in an age when it was a rare, high-end computer owner that could afford the thousands of dollars it took to fill up the whole 64K of the 8080's address space. The entire operating system took only 8K of the computer's memory, and would run in a mere 16K of total memory with room left over for any of its system development utilities to run. More features would have swelled the system to the point where decently featured applications would have had no room to execute.
And it was the applications that moved this operating system out of the realm of the computer enthusiasts and into the hands of "real users" (people who don't care if their computers are powered by hamsters, so long as they run their necessary applications reliably). The first real "killer app" for CP/M was probably WordStar, a word processing program that became very widely used. Also famous was the first microcomputer database application, dBASE II. These and many, many other applications and utilities eventually made CP/M a useful tool for a wide range of ordinary people.
By 1978, CP/M 2.2 had been ported to nearly every 8080 and Z80 based microcomputer built. In the end, more that 500,000 computers would be sold with CP/M as their operating system. It so dominated the microcomputer world by 1980 that it seemed hardly conceivable that any other operating system would ever be used on Intel-based computers.
Death
By 1981, the apogee of the CP/M orbit, a new generation of Intel microprocessors was on the horizon -- the 8086 and 8088 16-bit chips, which could address an incredible 1 megabyte of memory. This seemed at the time more than anyone could ever figure out a use for, so Digital Research focused much of their attention on producing CP/M 3.0 for the dominant 8080/Z80 platform. There were plans of course to port CP/M to the new 16-bit chips with a version called CP/M-86, but it was not a priority at the time.
But IBM planned on entering the microcomputer market in a serious way in 1981, and the computer giant had its own priorities and a great deal of money and marketing power to back them up. IBM chose the new 8088 chip as the heart of their new PC, and of course they needed an operating system to run on it. Instead of writing their own, as they generally did with a new machine, time and the demands of the market led them to Digital Research's door to license the ubiquitous CP/M for the new IBM-PC.
As the now-famous story goes, Gary Kildall was not there to open that door when IBM came calling -- an avid amateur pilot, he was flying his private plane on a business trip to the Bay area. His wife and business partner, confronted with IBM's imposing code of secrecy and nondisclouse agreements, refused to sign even enough for talks to begin. Rebuffed by what they considered arrogance, the IBMer's went elsewhere -- to Seattle and another small young software firm called Microsoft. A deal was struck there, and as they say, the rest is history.
While DR did finally announce CP/M 3.0, a more full featured successor to the successful 2.2, the upgrade was only for 8080/Z80 based systems which were no longer seen as the coming thing by the public. And CP/M-86 was ported to the IBM-PC, but by that time IBM was practically giving away the new PC-DOS operating system. Except for a diehard core of those that loved it for what it was, CP/M began rapidly to vanish from the land of living operating systems.
But like a ghost from the past, CP/M refuses completely to die. It's familar A> prompt is echoed in the MS-DOS prompt, which is still a part of the Windows and OS/2 DOS boxes today. At a deeper level, the first 36 DOS system calls mirror their CP/M counterparts with a strange concurrance. There were and still are rumors that the original code of MS-DOS 1.0 was copied from CP/M by its designer (who worked for a company called Seattle Computer Products from which it was purchased by Microsoft). Long after the dust had settled, Gary Kildall himself told several interviewers "Ask Bill [Gates] why the string in function 9 is terminated by a dollar sign. Ask him, because he can't answer, only I know that.".









Elite

Online TrID file identifier
SeqBox