事實上,對於計算機的未來,他們誰也不及比爾·蓋茨看得更清楚。
1974年的一天,蓋茨的朋友保羅·艾倫看到了一本名為《大眾電子學》的雜誌,在它的封麵上印著一幅牛郎星(阿爾塔)8800計算機圖片。一個長方形的金屬盒子,前麵有觸發開關和顯示燈。有一句廣告詞是:突破!世界第一台微型電子計算機,敢與商用型媲美!
看到這一廣告詞,保羅·艾倫立刻買了一份,並去告訴蓋茨一個個人計算機時代的奇跡就要出現了。他們搞BASIC的機會來了。
過了一個星期,比爾·蓋茨和保羅·艾倫給羅伯茨公司打電話,自稱是西雅圖交通數據公司的代表,說他們研讀了《大眾電子》雜誌上那篇介紹阿爾塔家用計算機的文章,他們已經開發了一種BASIC語言,隻要作一點小小改動,就可以把它用到阿爾塔8800上,問羅伯茨對此是否有興趣。但羅伯茨沒有理會。
沒過多久,他又收到比爾·蓋茨一封信,說他們已經研製出了一種BASIC語言翻譯器,可以在所有使用8080微處理器的計算機上使用。他們願意通過羅伯茨的公司,出售拷有這個軟件的合式磁帶或磁盤。每套軟件收費0.5美元。
比爾·蓋茨和保羅·艾倫既已誇下海口,就得拿出東西來,而且他們心裏很清楚,在這個時候,一定還有別的人有同他們一樣的想法,在做同他們一樣的工作。他們隻好加緊為阿爾塔8800設計BASIC語言。一連8個星期,比爾·蓋茨沒有去上課,也沒工夫再去玩牌。他和保羅·艾倫夜以繼日地呆在計算機旁,要為阿爾塔8800機編程,要為這種機器編程,首先應當具備一台這樣的機器。可是比爾·蓋茨現在是一個窮學生,保羅·艾倫也不過才做了打工仔,擁有自己的計算機隻是一種奢望。就連羅伯茨本人,也隻有一台供在各地巡回展出的樣機。
無奈,隻好再次采用迂回戰術,在他們已經十分熟悉的PDP-10型計算機上模擬阿爾塔的微處理器,而PDP-10型計算機在哈佛大學裏是不難找到的。
由大衛·奧斯本寫的一本8080芯片詳細說明書,加上《大眾電子》上那篇文章,這幾乎是他們唯一的參考資料。這位奧斯本也非等閑之輩,他後來也成了美國計算機革命中的風雲人物。保羅·艾倫憑借多年積累的豐富技術知識和熟練的操作技巧,用了兩個星期的時間,在PDP-10型計算機上做出了阿爾塔處理器的模擬器,比爾·蓋茨則為該機的BASIC語言編製了設計要領。
對計算機稍有涉獵的人都知道,內存空間的大小是計算機的一個重要指標。我們今天所使用的個人計算機,其內存一直在逐年擴大,後來普遍都安裝2M、4M、8M,甚至16M、32M字節的內存,而當時的阿爾塔8800僅有4K字節內存。如果我們知道要1000K才相當於1M,那麼,4K字節的內存是個多大的概念就可想而知了。比爾·蓋茨要使他編製的BASIC語言在4K字節內存的計算機上使用,顯然是一件難度很大的工作。他得克服一係列技術方麵的困難,還要同時間競爭,因為一定還有不少別的公司也在為這種計算機開發BASIC語言。不過,比爾·蓋茨在軟件開發方麵已不是初出茅廬的新手,他積累了相當豐富的編碼經驗,因此做起這一項創造性的工作來仍是信心百倍。
比爾·蓋茨後來回憶說:“為阿爾塔編寫BASIC真是令人精疲力竭。當我思考的時候,我時常前後搖晃或踱步,因為這樣有助於我把精力集中在一個想法上,排除幹擾。1975年冬天,我在宿舍裏做了大量的搖晃和踱步。我和保羅·艾倫睡得很少,可謂夜以繼日。我常常睡在書桌旁或地板上。好些日子既不吃東西也不會見任何人。”
他們廢寢忘食地幹了兩個月,BASIC語言的編寫已經基本完成。他們再次給羅伯茨打電話,說他們已經成功地在阿爾塔上應用了BASIC語言,而實際上他們直到那時,別說沒有見過阿爾塔8800計算機,就連英特爾公司的8080微處理器也不曾一見。
這一次,羅伯茨仍然半信半疑,要他們親自到阿爾伯克基表演他們的程序。
二月底的一天,約定去阿爾伯克基會見羅伯茨的日子來到了。他們決定讓保羅·艾倫前往微型儀器遙測係統公司,比爾·蓋茨則在哈佛等他的消息。前一天晚上,保羅·艾倫回家睡覺,以便養精蓄銳,對付談判--他們實在太辛苦了。比爾·蓋茨為了萬無一失,又熬了個通宵,把程序仔細檢查了一遍,天剛一亮,保羅·艾倫就拿上程序,搭出租車去了機場,坐第一個航班去波士頓。他對會談不抱多大希望,因為他不知道他們開發的軟件究竟有沒有毛病。當飛機快要到達波士頓時,他突然想起忘了為阿爾塔8800編一段進入BASIC語言的代碼,隻好在飛機上立即補做這個工作。