Bill Gates - Before He Was Famous
Written by Historian   
Article Index
Bill Gates - Before He Was Famous
Implementing Basic
Bill Gates - Programmer

Implementing Basic

Bill Gates coded the interpreter but of course there would have been a great deal of cross fertilization between the two projects. Gates had already written a Basic interpreter for the PDP-10 so he didn't have to look up the theory and was free to concentrate on the difficult task of squeezing the language into 4KBytes with enough space left over to run a program.

This task was so difficult that many claimed it was impossible. The ingenuity of the coding serves to mark the high point of a particular type of programming that virtually no longer exists - hand-crafted resource-limited programming.

To fit a complete Basic interpreter into 4KBytes, all most Altair owners could afford, and leave some space for the Basic code was difficult. Even after corners were cut such as only using integer arithmetic and single letter variables the task wasn't easy. All commands had to be stored as single byte tokens and lots of space saving tricks had to be deployed.



Paul and Bill at work


The finished interpreter was delivered to MITS by Paul Allen as a paper tape. The program was untried on a real 8080 let alone on the actual Altair computer. Things were so tight that on the plane Allen realized that they had failed to write a bootstrap loader for the tape! He sketched one out on paper before falling asleep. Later Bill Gates and he would compete to see who could write the shortest bootstrap!

A bootstrap loader is a small program that it manually keyed into computer, using the banks of switches on the front panel, that simply reads in another much longer program from a device such as a paper tape. You really want the bootstrap to be small because you have to key it in, as a list of binary numbers, each time you want to run the bigger program. 

The chances of the tape working when loaded into the machine would have been set at close to zero by any right thinking programmer - but it worked!

They also had to form a company. It was Paul Allen who came up with its  name name - combining Micro(processor) and Soft(ware) but it was Bill Gates who was the senior partner - being designated President while Allen was Vice President.

MITS signed up Microsoft and for a while Bill Gates and Paul Allen were more or less part of the MITS operation to make the Altair useful by writing code. However things didn't go smoothly because the MITS operation was less than professional and failed to promote the Basic for other machines to use.

This seems reasonable - after all licensing Altair Basic to other manufactures simply produced more competition and controlling it became the most direct way of ensuring that the Altair remained the top of the microcomputer market.


This is a short video showing the Altair and the paper tape containing the original Basic. Keep watching because it eventually gets to its subject matter:


Microsoft Goes Forward

It took some time before Microsoft managed to break away from the influence of MITS and not before Bill Gates became very angry at the way his beloved Basic was being pirated by all and sundry.

In the end most of Microsoft's early revenues came not from selling individual copies of Basic to enthusiasts but from making custom ROMs for the huge number of home computers that were being produced. ROMs are much more difficult to pirate and so a steady flow of cash became available and Microsoft just grew and grew.



Microsoft 1978 - Bill Gates front left and Paul Allen front right

This isn't to say that Microsoft just drifted along picking up projects at random. You only have to look at its record of early success to see that there was a mind that excelled at strategy behind it. When most of Microsoft's cash came from languages they licensed Unix to be resold as Xenix.

Even then they didn't do the conversion work but sub-contracted to SCO, a small west coast firm. When the Apple II became a success and they had very little code for its 6502 processor they designed a plug-in Z80 card for it and licensed CP/M. Incidentally this represents one of Microsoft's few early forays into the hardware world.

OS Rights

When asked to do the operating system for the new IBM PC in 1980, Microsoft bought outright an operating system from Seattle Computer Products that would save a year in development time. To be more accurate it was Allen who purchased the rights to  "Quick and Dirty Operating System," or QDOS, from its developer Tim Paterson. Microsoft rebranded QDOS as MS-DOS and, at the same time as supplying it to IBM, reserved rights to it for Microsoft.

At the time IBM thought that they were getting sole rights to the OS called PCDOS, and indeed they were, but Microsoft also retained the right to sell a version of PCDOS called MS-DOS. At the very start there was a perception that MS-DOS was some how not quite PCDOS - but this soon faded as cheap PC clones became available all running MS-DOS.



The move not only made MS-DOS the industry standard it also made sure that IBM didn’t have the stranglehold on the industry that it would have had if Microsoft had sold MS-DOS outright. PC-DOS was also sold fairly cheaply compared to the other two operating systems that IBM offered - UCSD P, and CP/M 86. Gates was very clear that more or less giving it away was well worth it in terms of licensing deals to come!

When IBM attempted to gain a stranglehold on the market by reinventing the PC but this time with proprietary hardware it also wanted some proprietary software but strangely it still asked Microsoft to develop it in partnership.




The difference was that IBM had a bigger share and its OS/2 was going to be different from Microsoft’s OS/2. As things turned out both the PS/2 and OS/2 failed and Microsoft’s Windows became the number one operating system. Gates claims to have tried to interest IBM in Windows but his attempts fell on deaf ears.

“In May 1990, the last weeks before the release of Windows 3.0, we tried to reach an agreement with IBM for it to license Windows to use on its own personal computers. We told IBM that we thought that although OS/2 would work over time, for the moment Windows was going to be a success and OS/2 would find its niche slowly.”

Although the split with IBM caused them to produce their own version of OS/2 to compete with Windows, Microsoft made money on every copy of OS/2 IBM sold! When OS/2 had to be Windows compatible to stand a chance of survival Microsoft moved the goal posts by releasing Windows 3.1 and removing real mode support.








Last Updated ( Thursday, 18 October 2018 )