HOME

TheInfoList




Altair BASIC is a discontinued interpreter for the
BASIC programming language BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of General-purpose programming language, general-purpose, high-level programming languages whose design philosophy emphasizes ease of use. The original version was designed by ...
that ran on the MITS
Altair 8800 The Altair 8800 is a microcomputer designed in 1974 by Micro Instrumentation and Telemetry Systems, MITS and based on the Intel 8080 central processing unit, CPU. Interest grew quickly after it was featured on the cover of the January 1975 issue o ...

Altair 8800
and subsequent
S-100 bus The S-100 bus or Altair bus, IEEE 696-1983 ''(withdrawn)'', is an early computer bus In computer architecture In computer engineering, computer architecture is a set of rules and methods that describe the functionality, organization, and ...
computers. It was
Microsoft Microsoft Corporation is an American multinational Multinational may refer to: * Multinational corporation, a corporate organization operating in multiple countries * Multinational force, a military body from multiple countries * Multination ...

Microsoft
's first product (as Micro-Soft), distributed by MITS under a contract. Altair BASIC was the start of the
Microsoft BASIC Microsoft BASIC is the foundation software Software is a collection of instructions that tell a computer A computer is a machine that can be programmed to carry out sequences of arithmetic or logical operations automatically. Modern c ...
product range.


Origin and development

Bill Gates William Henry Gates III (born October 28, 1955) is an American business magnate A business magnate is someone who has achieved great success and enormous wealth through the ownership of multiple lines of enterprise. The term characterist ...
recalls that, when he and
Paul Allen Paul Gardner Allen (January 21, 1953 – October 15, 2018) was an American business magnate A business magnate is someone who has achieved great success and enormous wealth through the ownership of multiple lines of enterprise. The term c ...

Paul Allen
read about the Altair in the January 1975 issue of ''
Popular Electronics ''Popular Electronics'' was an American magazine published by John August Media, LLC, and hosted at TechnicaCuriosa.com. The magazine was started by Ziff-Davis Ziff Davis, LLC, known as Ziff Davis (ZD), is an American digital media and intern ...
'', they understood that the price of computers would soon drop to the point that selling
software Software is a collection of Instruction (computer science), instructions that tell a computer how to work. This is in contrast to Computer hardware, hardware, from which the system is built and actually performs the work. At the low level lang ...

software
for them would be a
profit Profit may refer to: Business and law * Profit (accounting) Profit, in accounting Accounting or Accountancy is the measurement, processing, and communication of financial and non financial information about economic entity, economic en ...
able business. "While walking through Harvard Square one day, Allen spotted the Popular Electronics cover that features the Altair. ... Allen ran to tell Bill that he thought their big break had finally come. Bill agreed." Gates believed that, by providing a BASIC interpreter for the new computer, they could make it more attractive to hobbyists. They contacted MITS founder Ed Roberts, told him that they were developing an interpreter, and asked whether he would like to see a demonstration. This followed the questionable engineering industry practice of a
trial balloon A trial balloon, or kite-flying (used in the UK and elsewhere), is information sent out to the media in order to observe the reaction of an audience. It can be used by companies sending out press releases to judge reaction by customers, or it can b ...
, an announcement of a non-existent product to gauge interest. Roberts agreed to meet them for a demonstration in a few weeks, in March 1975. Gates and Allen had neither an interpreter nor even an Altair system on which to develop and test one. However, Allen had written an
Intel 8008 The Intel 8008 ("''eight-thousand-eight''" or "''eighty-oh-eight''") is an early byte-oriented microprocessor A microprocessor is a computer processor where the data processing logic and control is included on a single integrated circuit, ...

Intel 8008
emulator In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithm of an algorithm (Euclid's algorithm) for calculating the greatest c ...
for their previous venture,
Traf-O-Data Traf-O-Data was a business partnership between Bill Gates William Henry Gates III (born October 28, 1955) is an American business magnate, software developer, investor, author, landowner and philanthropist. He is a co-founder of Microsof ...
, that ran on a
PDP-10 Digital Equipment Corporation Digital Equipment Corporation (DEC ), using the Digital, was a major American company in the from the 1960s to the 1990s. The company was co-founded by and in 1957. Olsen was president until forced to resi ...
time-sharing In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes and development of both computer hardware , hardware and softw ...
computer. Allen adapted this emulator based on the Altair programmer guide, and they developed and tested the interpreter on Harvard's PDP-10. Harvard officials were not pleased when they found out, but there was no written policy that covered the use of this computer. Gates and Allen bought computer time from a timesharing service in Boston to complete their BASIC program debugging. When fellow Harvard student
Monte Davidoff Monte Davidoff (; born 1956) is an American American(s) may refer to: * American, something of, from, or related to the United States of America, commonly known as the United States The United States of America (USA), commonly known as the ...
stated he believed the system should use
floating-point arithmetic In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes and development of both computer hardware , hardware and soft ...
instead of the integer arithmetic of the original versions, and claimed he could write such a system that could still fit within the memory limits, they hired Davidoff to write the package. The finished interpreter, including its own
I/O In computing, input/output (I/O, or informally io or IO) is the communication between an information processing system, such as a computer, and the outside world, possibly a human or another information processing system. Information, Inputs are t ...
system and
line editor In computing, a line editor is a text editor A text editor is a type of computer program A computer program is a collection of instructions that can be executed by a computer to perform a specific task. A computer program is usually writ ...
, fit in only four
kilobytes The kilobyte is a multiple of the unit byte The byte is a unit of digital information that most commonly consists of eight bit The bit is a basic unit of information in computing Computing is any goal-oriented activity requiring, benefi ...
of memory, leaving plenty of room for the interpreted program. In preparation for the demo, they stored the finished interpreter on a
punched tape file:PaperTapes-5and8Hole.jpg, Five- and eight-hole punched paper tape file:Harwell-dekatron-witch-10.jpg, Paper tape reader on the Harwell computer with a small piece of five-hole tape connected in a circle – creating a physical program loop P ...

punched tape
that the Altair could read, and Paul Allen flew to
Albuquerque
Albuquerque
. While on final approach into the Albuquerque airport, Allen realized that they had forgotten to write a
bootstrap Bootstrapping is a self-starting process that is supposed to proceed without external input. Bootstrapping, bootstrap, or bootstraps may also refer to: * Bootstrap (front-end framework), a free collection of tools for creating websites and web app ...
program to read the tape into memory. Writing in 8080 machine language, Allen finished the program before the plane landed. Only when they loaded the program onto an Altair and saw a prompt asking for the system's memory size did Gates and Allen know that their interpreter worked on the Altair hardware. Later, they made a bet on who could write the shortest bootstrap program, and Gates won.


Versions and distribution

Roberts agreed to distribute the interpreter. He also hired Gates and Allen to maintain and improve it, causing Gates to take a leave of absence from Harvard. The original version would retroactively be known as 4K BASIC when they added upgraded versions, including 8K BASIC, Extended BASIC, Extended ROM BASIC, and Disk BASIC. The smallest version, 4K BASIC, could run within a 4k RAM machine, leaving only about 790 bytes free for program code. In order to fit the language into such a small space, the 4K version lacked string manipulation and a number of common mathematical functions. These were added into the 8K BASIC version, which had string variables and manipulation functions, a larger set of math functions including RND for random numbers, Boolean operators, and PEEK and POKE. The 8K version is the basis for most versions of BASIC during the
home computer Home computers were a class of s that entered the market in 1977 and became common during the 1980s. They were marketed to consumers as affordable and accessible computers that, for the first time, were intended for the use of a single nontech ...

home computer
era. Extended BASIC added PRINT USING and basic disk commands, while Disk BASIC further extended the disk commands to allow raw I/O. In October 1975, 4K BASIC sold for $150, 8K BASIC for $200, and Extended BASIC for $350 (equivalent to $, $, and $ in , respectively). The prices were discounted to $60, $75, and $150 respectively for those who purchased "8K of Altair memory, and an Altair I/O board". The language versions were distributed on paper tape or cassette tape. As they expected, the Altair was very popular with hobbyists such as the
Homebrew Computer Club The Homebrew Computer Club was an early computer hobbyist group in Menlo Park, California Menlo Park is a city located at the eastern edge of San Mateo County within the San Francisco Bay Area of California in the United States. It is border ...
. Altair BASIC, as MITS' preferred BASIC interpreter, was also popular. However, the hobbyists took a "share-alike" approach to software and thought nothing of copying the BASIC interpreter for other hobbyists. Homebrew member Dan Sokol was especially prolific; after somehow obtaining a pre-market tape of the interpreter, he made 25 copies and distributed them at the next Homebrew meeting, urging recipients to make more copies. Gates responded in 1976 with a strongly worded
Open Letter to Hobbyists The Open Letter to Hobbyists is a 1976 open letter An open letter is a letter Letter, letters, or literature may refer to: Characters typeface * Letter (alphabet) A letter is a segmental symbol A symbol is a mark, sign, or word that ...
that accused the copiers of
theft Theft is the taking of another person's property Property is a system of rights that gives people legal control of valuable things, and also refers to the valuable things themselves. Depending on the nature of the property, an owner of pr ...

theft
and declared that he could not continue developing computer software that people did not pay for. Many hobbyists reacted defensively to the letter. Under the terms of the purchase agreement, MITS would receive the rights to the interpreter after it had paid a certain amount in royalties. However, Microsoft had developed versions of the interpreter for other systems such as the
Motorola 6800 The 6800 ("''sixty-eight hundred''") is an 8-bit In computer architecture, 8-bit integer (computer science), integers or other data#Uses of data in computing, data units are those that are 8 bits wide (1 octet). Also, 8-bit central proces ...

Motorola 6800
. When they decided to leave MITS, a dispute arose over whether the full amount had been paid and whether the agreement applied to the other versions. Microsoft and MITS took the dispute to an arbitrator who, much to Roberts' surprise, decided in favor of Microsoft based on MITS failure to market the software with their "best efforts". BASIC interpreters remained the core of Microsoft's business until the early 1980s, when it shifted to
MS-DOS MS-DOS ( ; acronym for Microsoft Disk Operating System, also known as Microsoft DOS) is an operating system An operating system (OS) is system software that manages computer hardware, computer software, software resources, and provides commo ...
.


See also

*
Microsoft Binary Format In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes and development of both computer hardware , hardware and software ...


References


Further reading

* * * Cringely, Robert X.. '' Triumph of the Nerds''. PBS, 1996. *


External links


Altair BASIC 3.2 (4K) - Annotated Disassembly


compiled by Reuben Harris and archived at archive.org

Interview with Bill Gates, Interviewer: David Allison (DA), Division of Computers, Information, & Society, National Museum of American History, Smithsonian Institution
History of Microsoft Video: Bill Gates Talks about Altair Basic
(Lisa Feigenbaum) 24 Jun 2009, The Visual Basic Team, MSDN Blogs {{BASIC 1975 software Discontinued Microsoft BASICs BASIC programming language family