Comment by ghaff
7 years ago
Here's the thing though. Engineering workstations existed. There's a good argument that the "right" approach was to use an MC68K and, while you were at it, a "real" operating system whether a Unix or one of the 16-bit operating systems in use on minicomputers at the time. But there's also a good argument that, had you done a more open and mass market-oriented engineering workstation (whatever that meant exactly) at, what?, 2x the price point of an IBM PC--which, remember, didn't even always have a hard disk at the time--you'd not have been competitive with Z80 or 6502 machines.
Even using the 8088 vs. the 8086 was a cost-saving move. A premium IBM PC might well have simply flopped rather than accelerating the industry.
It's not clear to me that at the time the m68k was that much more expensive than x86. It certainly was not by 84/85 when the Atari ST was shipping as a sub-$1000 cheap home computer based around it.
I think the bigger compelling piece for x86 was its continuity with the top-selling 8080/Z80 CP/M machines that were the effective standard at the time. IBM offered both PC-DOS (cheap) and CP/M (expensive), and wasn't sure which was going to win out. And PC-DOS was basically a kind of clone of CP/M, down to the API call names.
There was also the fact that the IBM people working on the original PC had already established familiarity with Intel's architecture through their work on an earlier IBM product, the Datamaster (http://www.oldcomputers.net/ibm5322.html), which used the 8-bit Intel 8085.
David J. Bradley (https://en.wikipedia.org/wiki/David_Bradley_(engineer)) worked on both the Datamaster and the PC projects, and explained the reasoning behind the choice of the 8088 for the latter in an article in the September 1990 issue of Byte (https://archive.org/stream/byte-magazine-1990-09/1990_09_BYT...):
There were a number of reasons why we chose the Intel 8088 as the IBM PC's central processor.
1. The 64K-byte address limit had to be overcome. This requirement meant that we had to use a 16-bit microprocessor.
2. The processor and its peripherals had to be available immediately. There was no time for new LSI chip development, and manufacturing lead times meant that quantities had to be available right away.
3. We couldn't afford a long learning period; we had to use technology we were familiar with. And we needed a rich set of support chips -- we wanted a system with a DMA controller, an interrupt controller, timers, and parallel ports.
4. There had to be both an operating system and applications software available for the processor.
Points 1 and 3 both reference lessons learned from the Datamaster project -- #1 is about the desire for the PC to overcome a limitation the Datamaster's 8-bit CPU had imposed on it, and #3 refers to the fact that the 8086 and 8088 were close cousins of the 8085, so the IBMers wouldn't have to learn a whole new architecture from scratch.
It's not hard to imagine the decision coming down to Bradley (or someone else on the Entry Systems Division team) calling someone they knew at Intel and saying "we need a 16-bit processor as similar to the 8085 as possible that you can deliver in volume tomorrow. Whatcha got?"
Point #4 would definitely have been a concern for the m68k as well. DR's CPM/68k wasn't AFAIK available yet (came a few years later), and Unix would have been expensive and too heavy weight.
They only offered CP/M after Kildal threatened a lawsuit, and at 3x the price. I think it was fairly certain which would win by IBM. That and DOS was mostly compatible, famously porting Visicalc only required changing 3 bytes.
This could be apocryphal (there was free beer at the company meeting), but I think I recall he (Gates) mentioned at the time that the existence of a solid chipset to support the 8088 was something that drove the ultimate decision.
It was not (or not just) for cost-saving reasons. It was due to a cross-licensing agreement between Intel and IBM for technology called Bubble Memory which turned out to be flop, but IBM didn't know at the time that it would flop.
"Next came the 8088, the processor for the first IBM PC. Even though IBM engineers at the time wanted to use the Motorola 68000 in the PC, the company already had the rights to produce the 8086 line (by trading rights to Intel for its bubble memory)"
https://www.ibm.com/developerworks/library/pa-microhist/inde...