Why IBM Turned to Microsoft for Basic
There is a widespread opinion that Microsoft’s lucrative 1980 contract with IBM must have involved some kind of foul play. After all, it is hard to believe that the computing mammoth like IBM needed a tiny company such as Microsoft to provide system software for its planned entry-level computer.
As usual, to make an informed conclusion, some wider context is necessary…
Microsoft’s Monopoly on BASIC Interpreters
The critical thing to understand is that Microsoft was a monopoly even before IBM approached it. The market it dominated was small: BASIC interpreters for personal computers, but it was a monopoly, nevertheless.
Microsoft’s core product, the BASIC interpreter, ran on almost all popular personal computers at the time 1, including various TRS models, the Commodore PET, Atari machines, and the Apple II.
The only theoretical alternative was Tiny Basic - a public domain interpreter developed in 1975 as a reaction to Microsoft BASIC which was considered too expensive. Tandy used Tiny Basic to develop the TRS-80’s Level I Basic, but even they switched to Microsoft’s Level II Basic soon after.
Some computer manufacturers opted to develop their own version of BASIC with varying success. The Apple II initially shipped with a BASIC written by Steve Wozniak (later named Integer BASIC as it supported only integer numbers), but it was replaced by Applesoft BASIC which was a derivative of Microsoft BASIC.
British home computer makers were more successful in creating their own versions of BASIC interpreters (Acorn’s excellent BBC BASIC is one such example) or outsourcing its development to local software companies rather than Microsoft (Sinclair contracted Nine Tiles; Amstrad used Locomotive Software). On another hand, Japanese manufacturers almost universally adopted Microsoft BASIC.
From IBM PC BASIC Reference
To cut a long story short: if a company wanted to enter a home computer market in late 1970s and early 1980s, it was expected to include a built-in BASIC i…