Altair BASIC

Altair BASIC（アルテア・ベーシック）は、1975年にビル・ゲイツ、ポール・アレン、モンティ・ダビドフの3人が、設立したばかりの法人マイクロソフト（当時はMicro-Softと表記）名義で開発した、MITS社のAltair 8800やそれ以降のS-100バスコンピュータ上で動作するプログラミング言語BASICのインタプリタである。MITS社とマイクロソフト社の間にかわされた契約に基づいて配布された。当Altair BASICはマイクロソフト社の最初の製品であり、後のMicrosoft BASIC製品群の起源となったものである。 ビル・ゲイツは、彼とポール・アレンが『ポピュラーエレクトロニクス』1975年1月号に掲載されたAltair 8800の記事を読んだとき、コンピュータの価格が間もなく下がり、ソフトウェアの販売が収益性の高いビジネスになるだろうと理解したと後に回想している。ゲイツは、Altair 8800にBASICインタプリタを提供することで、この製品が趣味家にとってより魅力的なものになると考えていた。彼らはMITSの創設者エド・ロバーツに連絡を取り、（まだ作業に取り掛かってすらいないにもかかわらず）彼らがBASICインタプリタを開発していると伝え、デモを見たいかどうか尋ねた。これは、存在しない製品を発表して相手の興味を測る観測気球であった。ロバーツは、数週間後の1975年3月にデモのために彼らと会うことに同意した。 ゲイツとアレンは、インタプリタを開発してテストするためのAltairコンピュータを持っていなかった。しかし、アレンは以前トラフォデータ（英語版）の名称で仕事をしていたときにIntel 8008エミュレータを作成し、PDP-10上で動作させていた。アレンはAltairのプログラマガイドに基づいてこのエミュレータを改良し、ハーバード大学のPDP-10上でインタプリタの開発とテストを行った。大学の資産で商用のソフトウェアが開発されていることを知った大学当局は不満を抱いたが、このような使い方を禁止する規定は大学にはなかった。結局、大学当局から商業行為は学外で行うよう勧告され、ゲイツとアレンはボストンのタイムシェアリングサービスからコンピュータの使用時間を購入してBASICプログラムのデバッグを行った。当初のバージョンは整数演算のみだったが、ハーバード大学の同級生のモンティ・ダビドフが浮動小数点演算も使うべきだとし、自分ならメモリ制限内に収まるようなシステムを書けると主張したので、ゲイツとアレンはダビドフを雇ってそのルーチンを作ってもらった。 独自の入出力システムとラインエディタを持った完成したインタプリタは、わずか4キロバイトのメモリに収まり、さらに、解釈後のプログラムを格納するための十分なメモリ空間が確保されていた。デモの準備として、完成したインタプリタをAltairに読み込ませるために紙テープに保存し、アレンはMITS社のあるアルバカーキへ飛んだ。 アルバカーキ空港への最終アプローチ中、アレンは紙テープをメモリに読み出すためのブートストラッププログラムを書き忘れていることに気付いた。アレンはそれを8080の機械語で書き、飛行機が着陸する前にプログラムを完成させた。プログラムをAltairにロードし、システムのメモリサイズを尋ねるプロンプトが表示されたのを見て初めて、彼らは自分たちのインタプリタがAltairハードウェア上で正しく動作することを知った。その後、誰が最短のブートストラッププログラムを書けるかを賭けて、ゲイツが勝利した。 ロバーツはインタプリタの配布に同意した。また、ゲイツとアレンをMITS社で雇ってメンテナンスと改良を行った。8K BASIC、Extended BASIC、Extended ROM BASIC、Disk BASICなどのアップグレード版が追加されると、オリジナルのバージョンは4K BASICと呼ばれるようになった。 最小のバージョンである4K BASICは4キロバイトのRAMを持つマシンで動作し、プログラムコードエリアには約790バイトの空きしかなかった。このような小さなメモリ空間に収めるために、4Kバージョンには文字列操作やいくつかの一般的な数学関数が入っていなかった。8K BASICバージョンでは、文字列変数とその操作関数、乱数のためのRNDなどの数学関数、ブール演算子、PEEKとPOKEなどが追加された。8Kバージョンは、ホビーパソコン時代のBASICのほとんどのバージョンの基礎となっている。Extended BASICではPRINT USINGや基本的なディスクコマンドが追加され、Disk BASICではさらにディスクコマンドが拡張され、raw I/O機能が可能になった。 1975年10月、4K BASICは150ドル、8K BASICは200ドル、Extended BASICは350ドルで販売された。8KのAltairメモリとAltair IOボードを購入すると、それぞれ60ドル、75ドル、150ドルに値引きされた。配布形式は紙テープまたはカセットテープだった。 彼らの予想通り、Altairはホームブリュー・コンピュータ・クラブなどのホビイストの間で非常に人気となった。また、MITSが選択したBASICインタプリタであるAltair BASICも人気となった。しかし、ホビイリストたちは、誰かが入手したAltair BASICを仲間でコピーして使っており、それが悪いことであるとは思っていなかった。ホームブリュー・コンピュータ・クラブのダン・ソコルは、何らかの手段で入手した販売前のテープから25個のコピーを作り、それをクラブの会合で配布して、受け取った人に更にコピーを作るように促していた。ゲイツは、1976年にホームブリュー・コンピュータ・クラブの会報に『ホビイストたちへの公開状』という文章を寄稿し、この中で、ソフトウェアをコピーする行為は窃盗だとして非難し、人々がお金を払わないソフトウェアの開発の継続はできないと宣言した。多くのホビイストはこの書簡に防御的な反応を示した。 ゲイツ、アレンによるマイクロソフトとMITSとの間の契約条件では、一定額のロイヤルティーを支払った後で、MITSはインタプリタの権利を受け取ることになっていた。しかし、マイクロソフトはMC6800など他のシステム向けにもインタプリタを開発していた。そのため、彼らがMITSからの離脱を決めた際に、ロイヤルティーの全額が支払われたかどうか、他のバージョンにも契約が適用されるかどうかを巡って争いになった。マイクロソフトとMITSは仲裁人に紛争の仲裁を依頼した。仲裁人は、MITSは「最善の努力」でソフトウェアを販売していなかったとして、マイクロソフトに有利な裁決を下した。 BASICインタプリタは、1980年代初頭にMS-DOSに移行するまで、マイクロソフトのビジネスの中核を担っていた。 Microsoft Binary Format（英語版） ^ Raiders of the Lost Altair BASIC Source Code, Andrew Orlowski, 13 May 2001, The Register ^ Altair 8800 BASIC Reference_Manual 1975, Page 3 of PDF, ...and the joint authors of the ALTAIR BASIC interpreter, Bill Gates, Paul Allen and Monte Davidoff, will be glad to assist you. ^ Microsoft Fast Facts: 1975, Posted May 9, 2000, Bill Gates and Paul Allen complete BASIC and license it to their first customer, MITS of Albuquerque, N.M., the manufacturer of the Altair 8800 personal computer. This is the first computer language program written for a personal computer., Gates and Allen’s BASIC officially ships as version 2.0 in both 4K and 8K editions. ^ microsoft's timeline from 1975 - 1990 Archived 2008-05-14 at the Wayback Machine., July 1, Bill Gates' and Paul Allen's BASIC officially ships as version 2.0 in both 4K and 8K editions. ^ Computer_Notes 1975 01 05, Page 14, ALTAIR BASIC, CLAIM: Not just anybody's BASIC, FACT: Not just anybody's BASIC, BY: KEITH BRITTON ,ROBERT MULLEN, Altair BASIC version 2.0 had a serious problem in that a jump out of a FOR.... NEXT loop left garbage on the stack. . Do this too often and the stack would grow relentlessly down from high memory until it ate the program. This has been fixed in version 3.0, according to Paul Allen ^ Computer_Notes 1975 01 05, Page 15, Advert: Altair BASIC] ^ Freiberger, Paul; Swaine, Michael (2000). Fire in the Valley: The Making of the Personal Computer. New York, NY: McGraw-Hill. p. 53. ISBN 0-07-135892-7. https://archive.org/details/fireinvalleymaki00frei_0/page/53  "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." ^ Wallace, James; Jim Erickson (1992). Hard Drive: Bill Gates and the Making of the Microsoft Empire. John Wiley & Sons. pp. 81–83. ISBN 0-471-56886-4. https://archive.org/details/harddrivebillgat00wall_0/page/81  ^ “We have a BASIC”. New Mexico Museum of Natural History and Science. 2012年3月23日時点のオリジナルよりアーカイブ。2007年4月18日閲覧。 ^ Wallace, James; Jim Erickson (1992). Hard Drive: Bill Gates and the Making of the Microsoft Empire. John Wiley & Sons. p. 78. ISBN 0-471-56886-4. https://archive.org/details/harddrivebillgat00wall_0/page/78  ^ “4 Altair Language Systems”. Altair BASIC. 2020年5月12日閲覧。 ^ Altair BASIC. MITS. (25 August 1975). http://www.virtualaltair.com/virtualaltair.com/PDF/AltairBasic_1275.pdf  ^ Altair Basic for the 6800, In January 1978 I purchased Altair 680 Basic from Computer Kits in Berkeley CA. I paid full price, $200, I didn't want Bill Gates to go broke. If you bought an Altair 680B kit with 16 K of RAM for $685 you would get BASIC for free., Michael Holley's SWTPC Collection Home Page ^ Allen, Paul (2011). Idea Man: A Memoir by the Cofounder of Microsoft. New York: Penguin Group. p. 107. ISBN 978-1-59184-537-9. "MITS/Pertec 'materially breached its best efforts obligation...'"  Freiberger, Paul; Swaine, Michael (1999). Fire in the Valley: The Making of the Personal Computer. New York, NY: McGraw Hill. ISBN 0-07-135892-7. https://archive.org/details/fireinvalleymaki00frei_0  Gates, Bill; Nathan Myhrvold; Peter Rinearson (1995). The Road Ahead. New York: Viking. ISBN 0-670-77289-5. https://archive.org/details/roadahead00gate  Cringely, Robert X.. Triumph of the Nerds. PBS, 1996. Bunnell, David (April 1975). “Altair BASIC — Up and Running”. Computer Notes (Altair Users Group, MITS Inc.) 1 (1): 1, 3. オリジナルのMarch 23, 2012時点におけるアーカイブ。. https://web.archive.org/web/20120323162008/http://startup.nmnaturalhistory.org/gallery/notesViewer.php?ii=75_4 2007年4月18日閲覧。.  Altair BASIC 3.2 (4K) - Annotated Disassembly Altair BASIC source disassembly, compiled by Reuben Harris and archived at archive.org Writing an Altair Basic, 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