第二章 开拓者之歌
完善系统
在MITS公司中,每个好的思路往往都半途而废。
——微软公司合伙创始人比尔·盖茨
计算机业余爱好者必须具备足够的创造能力,才能使用MITS公司的Altair计算机。1975年中期,MITS公司已经能够按时向用户交付计算机产品,组装好的机器只不过是个金属机壳,里面有一个电源部件,用螺钉固定在一个大型电路板的旁边。这块电路板后来称为主板,因为它是计算机中的主要电路板。它上面共有100条金属绞合线,将主板与18个插槽连起来,而这些插槽则用来插入别的电路板。
这18个插槽既表示Altair计算机具备扩充能力,同时又显示出机器的主人无法使用大部分插槽而感到的无奈。无论客户订购了什么部件,发运给客户的计算机只有两个插槽中插上了电路板。一个插槽中插入了CPU的电路板(基本上是英特尔公司的8080芯片和支持电路),另一个插槽中插入了256字节内存的电路板。
Altair计算机还包含一块前面板的电路板,用于控制机壳正面的指示灯和开关。这些指示灯和开关都是输入/输出装置,通过它们,用户可以与计算机进行通信。如果要将前面板的电路板与主板相连接,就要由客户将几十根线路连接起来,这需要好几个小时才能完成,非常麻烦。早期的Altair计算机只包含CPU、很小的内存和一个输入/输出部件,因此它是一种最简单的微型计算机。
与功能比较完善的计算机相比,Altair计算机在某些方面存在着严重的缺陷。比如说,它缺少任何形式的永久性存储器。用户可以将信息输入计算机并对数据进行操作,但是一旦关闭电源,或者从一个任务转到另一个任务,原先输入的数据就消失了。即使临时存储器也极其有限。虽然Altair配有一块内存板,然而它的256字节内存根本没有足够的空间来存放本段落的文字信息。
前面板作为一个输入/输出系统,使用起来很不灵便,它需要一连串烦琐的操作步骤。若要输入信息,用户必须拨动很小的开关,使之接通和断开。拨动一次开关,相当于输入一个信息位。若要读取输出信息,用户必须识别一连串的指示灯闪光。输入和检验一个段落那么长的信息可能需要数分钟,即使经过练习,也要很长的时间。在出现纸带阅读机和盖茨及艾伦开发的BASIC语言之前,Altair计算机用户都必须使用机器语言,通过这种开关与指示灯相结合的方式,与计算机进行通信。
所谓机器语言,是指Altair计算机中的微处理器(即Intel8080)的本机语言。机器语言实际上是一组命令,它采用数字代码的形式,从计算机的CPU那里获取应答信息。代码使CPU能够执行它的一个基本功能,比如将内存的某个存储单元中的内容拷贝到另一个存储单元,或者将数值1与一个存储值相加等等。有些程序员喜欢用机器语言或类似机器语言的某种语言来工作,因为机器语言使他们能够直接控制CPU的操作。这类程序员实际上是真正的黑客。不过,所有程序员都认为,用比较高级的语言进行编程比使用机器语言要容易得多。Altair的BASIC是一种比较高级的语言。但是Altair的BASIC语言需要占用4096字节内存,对于高级语言来说,这样的内存量太小了,然而它却是Altair计算机内存量的16倍。
如果将256字节的内存板插入Altair的18个插槽,并且将盖茨和艾伦的BASIC语言输入计算机系统(这是个极其烦琐的过程,即使不出现操作错误,也需要拨动前面板上的开关3万次),理论上用户能够使高级语言运行。但是,剩下供用户自己的程序使用的内存量就很小了。此外,每当再次启动计算机的时候,都必须重新输入BASIC语言。如果要使BASIC和Altair计算机变得更加有用,必须做两方面的改进。一是提高内存板的存储密度,二是采用能够迅速输入程序的方法。这时MITS公司正在着手解决这两个问题。为了解决这两个问题,MITS公司做了大量的研究工作。
当保罗·艾伦抵达阿尔伯克基时,MITS公司开发的最大硬件项目是4K内存板,这是埃德·罗伯茨设计的,技术员帕特·戈丁准备制造。在计算机术语中,字母K是Kilo(千)的缩写,代表1024,它是最接近2的幂1000的一个数字。因此,4K相当于4096。由于数字计算机使用二进制记数系统,每个数字都用2的幂的总数来表示,因此精确的2的幂尤其适合计算机运行时使用。计算机的容量,比如内存量,或者可显示的最大整数,一般也用2的幂来表示。MITS公司的新型内存板可以存储4000字节以上的信息,因此Altair的BASIC软件存放在该内存板上绰绰有余。
由于4K内存板使得盖茨和艾伦的BASIC语言可以在Altair计算机上运行,因此艾伦特别关注内存板工作的可靠性问题。但是实际上它的运行并不可靠,或者说当内存板与其他电路结合起来运行时,它的可靠性就成了问题。这个问题不仅仅是内存板本身不可靠,而且牵涉到两个或多个电路板一道运行时的性能问题。“它几乎完全是个模拟电路,”艾伦说。“它必须非常准确地加以校准。”
比尔·盖茨和MITS公司的其他工程师开始担心艾伦对他们的工作区的拜访。为了测试他给BASIC语言增加的改进特性,艾伦必须在配有4K内存板的Altair计算机上运行该语言。遗憾的是所有的4K内存板都不能工作。艾伦对程序进行了最新的修改,并将程序键入计算机,这时面板上的所有指示灯亮了起来,这是Altair计算机示意表示试验失败的方法。当技术修正未能使4K内存板实现正常运行之后,一些工程师采用了冗余配置的办法。有一段时间,MITS公司让7台Altair计算机保持不间断运行,目的是使得任何时候都有3台机器处于可靠运行状态之中。罗伯茨后来承认,这种4K动态内存板的性能极差。
事实上,艾伦不必在每次想要使用计算机时都键入所有的BASIC语言。车间中的Altair计算机具有某些隐秘的功能,MITS公司尚不准备向客户发布。例如,它的程序和数据可以存放在纸带上,然后在以后重新装入内存。当艾伦初次向罗伯茨演示BASIC语言时,它是将该语言存放在纸带上再带到MITS公司的。(在一段时期内,纸带是销售该语言的主要载体。)后来比尔·盖茨大骂他和艾伦的这些纸带,因为这些纸带成了人们广泛非法拷贝他们的BASIC语言所用的介质。
纸带作为微机的存储介质,有着许多严重的缺陷。纸带阅读机和穿孔机价格昂贵,甚至比Altair计算机本身还要贵许多。纸带系统的运行速度很慢,效率很低。
MITS公司认为必须开发一种价格低廉的存储设备,并且考虑使用盒式录音机作为存储设备。许多计算机用户已经拥有盒式磁带录音机,如果录音机也能成为Altair计算机的存储设备,岂不是两全其美。但是与磁带机的情况一样,盒式录音机用来存储数据时,速度也很慢,而且使用不灵便。相比之下,IBM公司早就在大型计算机上使用磁盘驱动器进行数据存储。(在磁盘驱动器中,信息存放在使用特殊涂层的高速旋转的塑料盘片表面上的极小磁化区中。磁盘由读/写磁头负责读取信息,而磁盘则能高速而精确定位于磁盘上的任何位置。)虽然磁盘的价格昂贵,但是它解决了磁带存储器存在的主要问题。它们能够高速而方便地进行数据存储和检索。
罗伯茨说服人们相信MITS公司应该在Altair计算机上配备磁盘驱动器。保罗·艾伦表示同意。1975年,当比尔·盖茨也来到阿尔伯克基,以便从事MITS软件的开发时,艾伦请他编写能使Altair计算机与磁盘驱动器进行通信的软件。然而当时盖茨正忙于其他工作,因此他把编写磁盘代码的工作搁置了下来。
MITS公司并不缺少硬件或软件的开发项目。公司正在开发打字机、打印机与盒式磁带录音机之间的接口,同时又在寻找将一种简单的终端与Altair计算机连接起来的方法。MITS还在开发用于控制这些设备的程序、BASIC语言的新版本和对该语言的增强特性,以及其他一些应用程序。此外,所有这些产品都需要文档资料。所有这些工作中最重要的是,MITS公司根据公共关系工作的需要,组织了一个用户大会,出刊了一份新闻通讯。
MITS公司采用的一个非同寻常的产品促销手段是“MITS宣传车”,也叫做蓝鹅宣传车。作为罗伯茨钟爱的周末旅游车的派生产物,蓝鹅宣传车实际上是辆广告车,目的是想激发人们对微型计算机的兴趣。盖茨回忆他在蓝鹅宣传车上的情景时说:“这是通用汽车公司制造的一种住房汽车。我们开着它在全国各地转悠,每到一地,我们就让某个人建立一个计算机俱乐部。而我则是旅途中唱歌跳舞小组的成员。”与MITS公司的其他发明创造一样,蓝鹅宣传车也引来了许多模仿者。总部设在犹他州的斯菲尔(Sphere)公司是MITS公司最早的竞争对手之一,它很快就将“斯菲尔宣传车”开上了大街。
蓝鹅宣传车的促销效果很快就得到了证明。南加州计算机学会是MITS帮助创办的计算机俱乐部之一,该会出版了较早的具有很大影响的微机杂志《SCCS接口》。
创办计算机俱乐部是有许多非常充分的理由的。早期的计算机设备并非总是能够正常工作,软件常常无法使用,或者根本就没有配备软件。虽然计算机的买主通常都是工程设计的业余爱好者,但是很少有人具备全面理解微机所需的全部知识技能。计算机俱乐部鼓励计算机用户之间共享有关的知识。如果不进行互相交流和帮助,计算机产业就不会得到应有的繁荣和发展。
MITS公司不再仅仅依赖于本地人士的创新建议。4月份,MITS建立了自己的全国性计算机俱乐部,举行计算机设计方案的比赛,出版了一份新闻通讯,名叫《计算机通报》。该出版物由戴维·邦内尔创办,埃德·罗伯茨开设了一个半固定专栏,名叫“计算机漫谈”。这一年中,邦内尔将新闻通讯交给安德烈亚·刘易斯负责,后来刘易斯又追随盖茨和艾伦,创办了他们自己的公司。在这份新闻通讯的整个出版史中,相当一部分文章出自盖茨和艾伦之手。
凡是Altair计算机的拥有者,或者是即将获得Altair计算机的用户,均可自由加入Altair计算机俱乐部。与此同时,又涌现出许多并不特别忠于MITS公司的其他计算机俱乐部。南加州计算机学会和加州的霍姆布鲁计算机俱乐部中虽然有许多Altair计算机的用户,但是里面也有不少技术水平很高的计算机业余爱好者,不久他们也开始考虑制造自己的计算机。南加州的霍姆布鲁计算机俱乐部成员特别有兴趣制造自己的计算机,他们很快就生产出一种与MITS公司最重要的产品形成竞争之势的计算机。