“想當年,我們決定每算一道新題,就得打開機箱重新接一遍電線……”一位DEC工程師仰天長嘆。
“想當年,我們每接完一遍電線就得滿樓道溜達,看看那里開始冒煙……”另一位DEC工程師仰天長嘆。
“想當年,我們每當發現什么地方冒煙的時候,就得抱著滅火器沖進去救火……”第三位DEC工程師仰天長嘆。
“想當年,我們每次滅完火之后,都必須全體出動,人手一把鑷子捉臭蟲……”最后一位DEC工程師仰天長嘆。
“是啊,是啊。”范含接茬,“那真是萬惡的舊社會啊!我們這些產業鏈底層的勞動人民真是生活在水深火熱之中啊……”
“咳……”所有人一起長嘆。
處理完了FEEE的麻煩之后,范含和奧爾森的主要精力就放在了“FOR”上面。如何將一個皮包公司填滿,確實是個重大的問題。
數學圈內開始有訂貨了,單子還不少,要求倒是大同小異。簡單到了一句話:一個對數學家友好的計算環境。
說起來容易做起來難,范含心里知道這個要求有多過分,但是表面上還不能顯出來。
至今為止,有資格稱得上是“對數學家友好的計算環境”也不過寥寥幾個而已。范含用的最多的就是Mathematica,其次就是Matlab。至于Maple,功能比較單一,見了Mathematica之后就幾乎沒用過。最后就是SAS,數萬美元一套的東西,好倒是很好,就是范含不想用。就算摸透了又能怎樣?出來工作的公司,有幾個能買得起?學會了也不過是屠龍術罷了。后來,發現一個開源的軟件SciLab,處處都向Matlab看齊,相當不錯。至于寫項目當中,萬一碰到科學計算的部分,都是掛上GNU的GSL模塊實現,LGPL協議,可以盡管放心大膽的用。
對此,奧爾森根本就沒有意見,嗯了一聲之后就讓范含“看著辦”。
Mathematica那種圖形界面的集成環境現在是別指望了,就是Matlab,也只不過勉強可以寫寫文本界面的那種交互形式。問題在于,目前DEC的計算機沒一個范含看的上眼的,一想起自己即將給這些規格歪七扭八的東西寫軟件,心里就有抵觸情緒。就目前來說,任何一個客觀、公正、中立的程序員,對于實現平臺的選擇都可以做出唯一的決定:IBMSystem360。
這種建議根本就不會提出來。不要說奧爾森絕對不會答應,就是范含自己也不愿意。雖然說向IBM宣戰并不是自己的本意,不過既然已經吹出來了,再去點頭哈腰的舔IBM屁股,自己的骨頭還沒那么賤。
另外,FEEE僅僅是麻煩結束了,卻仍然是前途未卜。仙童散伙,德州儀器撤出之后,FEEE的工作人員幾乎都是奧爾森幫忙招聘的,有些人甚至就是從DEC直接扯過來的。正因為如此,勉強維持經營是可以的,但是想擴大規模,趁現在還沒出現競爭對手的時候勇往直前,肯定是力不從心。
別的不說,就是新產品開發這一項就足夠范含頭疼的。
目前的“Squares”機型根本就沒有中央處理器(CPU),雖然有一堆處理器,不過僅僅能應付方塊類型的益智游戲,代碼都是用電路固定住的,沒有任何改進的余地。
范含之所以僅僅開發方塊類益智游戲還有另外一層原因。因為這種游戲不需要人工智能,僅僅有一個隨機數發生器就足夠了。別的類型的游戲多多少少需要管一管NPC的所作所為,只用電路實現不太容易。
黑白棋、五子棋之類的游戲對于人工智能的要求非常高,現在的條件下,就是大機器上面也未必能編出有資格和玩家一較長短的程序。射擊類、動作類游戲稍微簡單點,但是也必須處理畫面上每一個單元的行為,盡管這種行為可能相當簡單。
想要開發新的游戲,目前的體系結構必須全盤推翻。新的游戲機肯定是一臺有處理器,有內存的真正的計算機,不管名字叫做什么。
這么說來,至少有兩種計算機需要重新設計,一種為了數學家,一種為了玩家。
范含對于硬件一知半解,挑大梁是挑不了的。所以,再三強烈要求奧爾森派一群內行過來幫忙。自己最多在旁邊出出主意,關鍵時刻提示一下,估計效果會好得多。
奧爾森那邊也不好辦,DEC里面許多人都指責他“公私不分”,借職務之便利用DEC的人力物力去支持他私人控股的公司。在商界,這樣的指責是很嚴重的,一個處理不好,被攆下臺都有可能。
最終決定,數學界的訂單由FOR單獨接下。FOR承擔全部責任,但是僅僅負責計算機的設計,具體生產必須委托DEC代工。FEEE的業務仍然由FOR負責設計,但是全部的采購計劃都必須交給DEC,如果需要購買德州儀器或者其他公司的零件,委托DEC全權代理。
這個方案非常苛刻,如果不是FOR和FEEE共同的股東奧爾森與DEC的特殊關系,范含根本就不想簽署。隨便哪一家公司都不會像這樣把自己綁在一棵樹上吊死。不過實在是沒辦法,誰讓這幾家之間都有裙帶關系呢。
唯一的好處,就是奧爾森可以名正言順的派人過來了。
名義上“FOR”處于中心地位,統攬規劃大權。但是實際上,這個所謂的“FOR”只有范含一個人而已。奧爾森不管具體的事,藍藍只是掛了個名,真正所有工作都砸到范含一個人身上。于是,四個DEC的工程師被奧爾森威逼利誘的趕到洛杉磯給范含當“顧問”。
現在的美國西海岸并不是十分有吸引力,相比東邊繁華的新英格蘭地區,確實像是窮鄉僻壤。只有到了后來,日本經濟發達起來,加上硅谷漸漸成為經濟增長新動力,這種情況才會改變。
在四個工程師看來,這次調動根本就是充軍發配,一個個毫無例外的全都耷拉著臉。
四個人說是給范含當顧問,但范含覺得事實應該相反才對,他們干正事,自己旁邊打雜就成了。只是自己不先動手,他們確實是沒什么事好干。簡單的交代一下工作之后,大家又都閑下來了。
為了調動同志們工作的積極性,范含主動在FOR內部開展了“憶苦思甜”運動。
這些工程師都是老資格,都經歷過“先知”馮·諾伊曼布道之前的黑暗時代,倒起苦水來那是一套一套的。范含雖然自認為心理承受能力較強,卻仍然被他們嚇了好幾跳。當年的艱苦環境實在是自己這樣的晚輩們所不能想象的。
委屈說夠了,下面就是對于自己身處這個時代表示一下由衷的喜悅了。
“到如今,我們也可以脫下工作服,換上白大褂了。放下烙鐵,拿起卡片打洞了……”工程師甲高興的說。
“到如今,我們也可以不用走來走去,坐下來干活了。不再長雞眼,改長痔瘡了……”工程師乙高興的說。
“到如今,我們也可以住在距離機房一英里以內,天天上門了。不用找人簽字蓋章,只要半夜排隊就成了……”工程師丙高興的說。
“到如今,我們也可以沒事踹機箱兩腳,發發牢騷了。不會因為機器三天兩頭的壞,從而被抓走盤問了……”工程師丁高興的說。
“是啊,是啊。”范含接茬,“這都是托了肯尼迪總統的福啊!哎?不對!現在要感謝約翰遜總統了……啊哈哈哈……”
“……”
呵呵,沒人兒理我……
“總之,我們應該珍惜這大好時光,一步一個腳印的干出一番事業來?”范含總結。
眾人點頭同意,只是情緒看起來好像還不是很高漲。
不管了,范含繼續下一步議程。
“大家看看這三個方案。”范含拿出十八本“小冊子”,“來,每人一份。”
眾人接過,入手沉甸甸的。
昨天范含家里的老式打印機足足響了一天,才把這三個方案打出六份來。
上上個星期開始,范含抱著家里的電傳打字機足足敲了半個月,才把這三個方案輸入到計算機里面。
現在可知道沒有“電子版”的痛苦了,有一陣子范含甚至會經常摸摸后脖頸子,期待那里能找到四個洞,隨便哪個都可以拉根電線接在機器上。真要如此,就像《GhostintheShell》那樣直接聯網算了,省得自己手打輸入太痛苦。
三個方案彼此之間沒有任何關系……那是當然了……分別是Zilog的Z80、Motorola的68000和Intel的8086芯片的手冊。
最早的微處理器應該是1971年Intel推出的4004,含2300個晶體管,字長為4位,時鐘頻率為108KHz,每秒執行6萬條指令,外觀尺寸是3毫米乘4毫米。這個小倒是足夠小,不過性能實在不怎么樣。本來就是為了計算器(不是計算機!)預備的東西,能算算算術題就已經不錯了。
1972年愚人節,Intel發布8008,一款8位的微處理器。1974年,同樣是愚人節那天,Intel發布改進后的8080,這是真正大紅大紫的第一款微處理器。再后來,Zilog公司對8080進行擴展,推出自己的產品Z80。直到今天,Z80仍然是8位處理器的巔峰之作,還在各種場合大賣特賣。范含這一代人,玩過Z80的實在不少,許多人都是從寫Z80代碼開始進入計算機這行的。
任天堂的著名“紅白機”用的是6502處理器。這款游戲機上面有多少大作范含已經數不過來了。原來玩模擬器的時候,ROM總是找不齊。每次以為自己的收藏已經足夠多了的時候,總是會在一個偶然的機會里,從互聯網的某個角落里面發現一款新的FC游戲。這就證明了8位處理器在電子游戲的洪荒時代還是很有活力的,至少當前在游戲機上面的應用非常有前途。
但是范含山珍海味見多了,對6502實在提不起興趣。記憶里最流行的八位處理器應該就是z80。后來任天堂在家用游戲機市場敗給Sony之后,就是靠了幾乎壟斷掌上游戲機市場才能堅持下來。這款掌機,GB和后來的GBC用的就是z80處理器。范含毫不懷疑,紅白機上面的游戲絕對可以在z80體系上實現。所以,在這個時候抄出Z80的意思就是為了一段時間內不用操心FEEE的發展問題。
游戲機的事情解決了,剩下的就是考慮數學界那邊的要求。數學家是無論如何不能得罪的,切記!切記!
用來應付數學計算的處理器就不能這么簡單了,至少也得是16位的。這方面的例子范含一下子就想到了Motorala的68k系列。同樣也是至今仍然大賣特賣的處理器,同樣也是當年無限風光的架構。蘋果的Macintosh系列機型,用的就是這款處理器。
1984年1月24日,蘋果發布了第一款圖形用戶界面的個人電腦,這給業界和普通用戶帶來的震撼是不言而喻的。Acrobat專家TedPadova說:“為了避免一時沖動,我一直等到1月26日才買了第一臺Macintosh機器”。
既然能夠應付圖形用戶界面的需要,其性能應該是不用懷疑的。唯一的問題就是可擴展性方面。由于體系結構內部的限制,想要不斷的與時俱進實在是困難。就是因為這個原因,蘋果后來的機型不得不轉向PowerPC體系,這個體系也是Motorola和IBM合作開發的。
為了保證今后發展的動力,范含不得已準備了第三份材料,描述了Intel8086的架構。不過范含對原始材料作了一些修改,把8086的20根地址線改為16根。
作為16位的處理器,一般來說應該有16根地址線才對,這樣一來能夠尋址*k內存。現在的PDP-8滿打滿算也不過是32k,雖然每個字是12位的。但是在8086的時代,*k顯得不夠用了,Intel就簡單的增加了4根地址線,最大可以尋址1MB。
為了多出來的這四根線,寫起程序來就費勁了。當年范含總是不停的提醒自己,“左移四位”,“左移四位”,煩著呢。本來這就是權宜之計,到后來Intel自己不也是主動改成平面指針結構了么?32位字長,32位地址,多簡單。
寫材料的時候,范含把重點放在了指令集上面。打字的時候并不是原封不動的從BROM里面抄出來,那要抄到什么時候?當然是“詳略得當”,不過,其他內容可以一筆帶過,唯獨指令集的部分,除了原來就有的東西之外,范含還加進去不少自己的理解和其他資料中相關的部分。
對程序員而言,不管芯片造成什么樣,值得關心的僅僅就是有什么指令能用而已。在這一點上面范含的頭腦比較冷靜,沒有盲目試圖一步到位的開發精簡指令集芯片。
RISC是和編譯技術緊密結合起來的,爭取發揮處理器的全部能力,現在還沒到那步。如果一個簡單的功能都需要幾十條更簡單的指令倒來倒去,煩也煩死了,尤其是在大部分代碼都需要用匯編直接寫的今天。
畢竟寫程序的是人不是機器,人的精力是有限的,不能把大部分時間放到一些例行公事上面。就像漢諾塔游戲,規則是預定的,先挪哪一個,挪到什么地方去,都是板上釘釘的事。盤子少點還好辦,一多起來往往就亂套,記不住哪個是哪個了。所以這個漢諾塔才能被好事者做成“游戲”,專門拿來考驗人的耐心和記憶力。
四位工程師看著材料陷入了沉思。
提出這樣的草案僅僅是一個嘗試,范含也沒指望現在就能造出東西,畢竟摩爾定律在那兒擺著呢。摩爾定律的直線筆直,一方面是對現實發展的高度概括,另一方面也證明了業界并沒有浪費時間。善有善報,惡有惡報,不是不報,時候不到。真要造出指甲蓋大小的“微處理器”,再等十年吧!
只不過……
誰說沒槍頭就捅不死人?(周星馳,《唐伯虎點秋香》)
誰規定CPU只能造成指甲蓋大小?
按照范含的計算,以現在的技術水平,做成巴掌大小應該是沒問題的。
以前還在上學的時候,就聽說BJ某校計算機系的某位師哥,畢業設計就是實現8086的指令集。在用了無數現成的組件和可編程芯片之后,擺滿一整張桌子的“CPU”造好了。這可是真正的一塊完全可以跑起來DOS的“CPU”。
所以,信心還是十足的。
看著工程師們有點拘謹,范含一頓好生撫慰。
簡而言之,就是鼓勵他們增加新的指令,凡是常見任務,并且需要幾十上百條匯編語句才能實現的功能,一律可以當成指令來用。其實就是借鑒這些老工程師的經驗完善這些處理器的設計。
凡是領會了“熱力學第二定律”重要思想的人都能明白,破壞比起建設來更容易。
如果什么都沒有,憑空設計出一套體系,真是難如登天。歷史上的諸多公司,包括Intel、Zilog、Motorola他們,開發的體系架構并不是無懈可擊的。
相反,如果已經有了一份現成的東西,雞蛋里挑骨頭還是易如反掌的。現實中的技術論壇,到處都有無數大白小白們到處炫耀自己如何發現某產品的缺陷。倒不是說他們說的不對,而是說,把事先預防問題和馬后炮式的發現問題看得一樣簡單是不對的。
經過了短暫的適應之后,工程師們開始進入狀態了,每天都討論得熱火朝天。范含又無所事事了,成天給諸位沏茶倒水,和藍藍打情罵俏。
大約一個星期,范含見勢不妙,趕緊叫停。范含提出的每種方案都被批倒批臭了,按照他們的想法,每種CPU都應該有兩千多條指令才行。
刪,還得往下刪。
范含和工程師們把所有“指令”分成三種,“最常用”、“次常用”和“能用庫函數實現的”。最常用的指令準備直接放進處理器核心;次常用的指令做成ROM,以微代碼的形式提供,對于程序員來說是一樣的,等待今后半導體技術發展之后在放進核心;至于最后一種,只能說抱歉了。
經過這么一改,看起來像是個提案,不像胡說八道了。
不過,為了不打擊工程師們的積極性,范含鼓勵每個人把希望處理器實現的功能都作為建議寫出來放在最后。于是乎,接下來的幾天成了專業人士們的“意淫”時間。
“雖然編程是枯燥的,調試是辛苦的,但是理想卻是遠大的。”DEC工程師某如是說,“哼!等咱有了浮點指令,他媽的想算正弦算正弦,想算余弦算余弦。一算就兩遍,算對一遍,算錯一遍!”
-------
(昨天本來是中秋節,想把本章寫成中秋特別篇,沒想到一查日歷,1967年的中秋節正是九一八,作者實在不知道,華人那天到底是應該高興呢還是不高興。于是就算了。)
(大家猜一猜,主角為數學家量身定做的計算機應該是什么樣子?沒有標準答案,凡是沾點邊的就有精華,現在作者還剩二百多個……)
-------
經過修正的提案和原來相比,簡直是面目全非。為了保險起見,范含連同原本一起打包寄給DEC總部。同時還有一封信:“敬請斧正”。原信為傳統豎式信紙,中文行楷,毛筆手寫……落款處蓋上一個名諱大印,另外還有十七八個閑章,都是打發巴杜瓦到唐人街現刻的……當然,為了照顧收信人,藍藍翻的譯文附在后面。
信寄走了之后,好久沒有回音。直到有一天,范含實在忍不住了,打電話過去問。
“已經開工了。”奧爾森說,“我以為你早就知道了呢。”
“我怎么知道?”范含說,“一直都沒有消息。”
“是么。”奧爾森說,“那就是我忘了告訴你了。”
“咳……”范含說,“怎么樣?有什么問題?”
“沒有,一點意見都沒有。”奧爾森說,“材料一到,公司里所有人都閉嘴了。”
“不會吧,總不會鴉雀無聲吧?”范含說,“難道是你高壓政策強制推行下去的?”
“當然不是,我什么都沒管。”奧爾森說,“這回你算幫了我一個大忙,現在對于我們的合作沒人敢有意見了。”
“那就好,”范含問,“什么時候能出原型?”
“八位的那款處理器大約一個月,”奧爾森回答,“剩下的兩款最早也得明年。”
“怎么同時開始了?”范含很奇怪,“信里不是已經提到了,簡單的那款先干,有浮點處理器的那個以后再說么?”
“誰舍得呀?”奧爾森說,“反正我是哪個都不想放著。”
“時間來不及呀。”范含說,“數學家們等著用呢。”
“那也應該先干第三個啊,”奧爾森說,“畢竟有浮點處理單元,正是數學家需要的。”
“哎呀……”范含說,“這么一來,相應的軟件寫起來也會麻煩多了,到頭來還是來不及嘛。再說了,現在的數學家都用特殊制造的硬件處理一些專門問題,我們只要留出接口,盡可能利用現有的東西就成了。”
“那你的意思是說……”奧爾森還是有點不甘心,“最后那個不著急?”
“就是不著急。”范含肯定地說,“對了,你們用的是哪個方案?原始版本還是修訂過的?”
“當然是修訂過了的。”奧爾森說,“那幾個工程師已經向我們匯報過了。”
“哎……”范含一時氣結,這么一來,自己的BROM里面的好多代碼算是沒用了。
“怎么了?”奧爾森不明白,“修訂得很合理呀?這邊的人成天邊干邊夸你呢。”
“沒什么,”范含只好說,“我就是擔心進度而已。”
“用不著擔心,”奧爾森說,“就算是原來的版本也快不了多少。不過,原始的版本確實也相當不錯,我都不信是你自己一人單槍匹馬干出來的。”
“我自己也不信,”范含厚著臉皮說,“我對硬件根本就是一外行,全都是從數學家的角度猜測需要什么指令的。”
“這樣才好嘛,旁觀者清。”奧爾森說,“我們這些家伙恐怕老早就被繞進去了,都不知道真正用計算機的想要什么了。”
“要是這樣,先暫停后面一個,”范含說,“估計什么時候能出原型?”
“不好說,爭取十月份吧,”奧爾森說,“其實也快不了多少,你知道就算有十個女人也不能在一個月里生孩子。”
“嗯。”范含心說,我是知道的,嘴上說,“那就盡快吧。”
-------
硬件的事已經定下來,估計就改不了了,范含也不想改。
和自己直接相關的就是代碼,BROM里面有不少這些CPU的匯編代碼,還有一些內嵌許多匯編語句的C代碼,現在看來都用不上了。
以前早就猜到會有這么一天,再也不能借著“前人”的工作成果濫竽充數下去了。但是沒想到這一天來得實在太快,自己現在的事業還沒有起飛。現在除了一套發展前途死路一條的“Squares”機型,一個C語言的設定,別的還什么都沒有。
這么早就混不下去了,實在沒想到。如果前一陣決定回頭去當作家,應該還來得及,前途應該也很光明,諾貝爾獎什么的都是小菜一碟,指日可待呀。但是現在,已經不可能收手了,自己的事業完蛋還是小事,把奧爾森他們這些朋友涮了一道可是大事。
不過,自己又不是沒有本事只會混的家伙,當初既然選擇進了這一行,就是為了轟轟烈烈折騰一番。老人家教導我們說,世上怕就怕認真二字。只要認真起來,這兩個小Case只不過前進路上兩顆小小的絆腳石罷了。步子大點兒,一腳跨過去,說不定連拌都拌不著。
最近舒服日子過慣了,艱苦樸素的傳家寶就丟到一邊了。以前看著星移斗轉寫代碼的勁頭呢?范含暗下決心,自己一定不會辜負天打雷劈的期望,吃大苦,流大汗,因陋就簡,大干快上,為了建設有范含特色的資本主義計算機事業而奮斗。
“兩個好消息。”范含和DEC工程師甲乙丙丁四人說,“先聽哪一個?”
“無所謂,反正都是好消息。”
“第一個好消息是,”范含說,“我們的提案總部那邊已經開始無異議執行了,在座諸位都被通報表揚了。”
“哇哈哈哈……”
“第二個好消息是,”范含繼續說,“奧爾森托我給你們帶個話兒,只要您幾位肯幫我完成這兩個項目,就有帶薪休假三個月的干活!”
“哇哈哈哈……”
很好,士氣高漲,很好。
“一個好消息,一個壞消息。”范含跟巴杜瓦說,“先聽哪一個?”
“無所謂,”巴杜瓦說,“不管先聽哪一個,我肯定都是被侮辱和被損害的主兒。”
“看來你已經覺悟了。”范含說。
“那是。”巴杜瓦說,“少廢話,說吧。”
“好消息是,”范含說,“最近我必須全力工作,不會再出門滿世界找事,你也不需要給我當司機、郵遞員、清潔工、接線生和哨兵了。”
“真的?!”巴杜瓦喜出望外。
“壞消息是,”范含繼續說,“最近我必須全力工作,不會再有時間干點旁門左道,當然也不會有時間幫你捏造報告了。”
“怎么會是這樣?!”巴杜瓦情緒消沉。
很好,士氣低落,很好。
“一個壞消息,還有一個壞消息。”范含跟藍藍說,“先聽哪一個?”
“無所謂,”藍藍說,“反正你一向沒好話,狗嘴里吐不出象牙來。”
“真讓人傷心啊……”范含故作傷心狀,“沒想到你對我的評價竟然是這樣?!”
“我形容事實而已,”藍藍說,“少羅嗦,有話快說,有那啥快放!”
“第一個壞消息是,”范含說,“這次的時間緊,任務重,你肯定需要努力工作了。”
“我什么時候不努力了?”藍藍說,“倒是你,成天吊兒郎當,臟活累活都扔給我干!”
“另一個壞消息是,”范含說,“這次的時間緊,任務重,我可能連每天晚上和你唯一的娛樂都沒有了。”
“啊呸!”藍藍說,“誰信啊?!你真是范含么?不會是外星人冒充的吧?”
“我實話實說嘛。”范含解釋。
“是誰每天九點不到就打著哈欠跟我說‘困了’的?”藍藍問。
“是我。”范含承認,“確實是困了么,我的生物鐘就是這個樣子。”
“那是誰每天困完了之后還去洗個澡坐沙發上看電視啊?”藍藍又問。
“是我。”范含承認,“人類是很奇妙的,我的生物鐘比較古怪。”
“那又是誰每天看完電視之后還打著哈欠跟我說‘這回是真困了’的?”藍藍還問。
“是我。”范含承認,“這個你不會不信吧,就是真困了,我可沒撒謊。”
“是啊,你是沒撒謊啊。”藍藍說,“沒想到就是這種德行的一個人居然會說,工作忙得沒時間那啥?”
“真的嘛,”范含說,“這回真的是很忙。”
“好啊,”藍藍說,“我看你能堅持幾天。”
“就算堅持不住也沒什么嘛,”范含邊往外走邊說,“這才是男兒本色。”
藍藍一腳把范含踹出門外。
-------
先動手的是游戲機,范含遞交了CPU的提案之后,就把所有其他硬件的設計都委托給了DEC,實際上就是拜托奧爾森多操心。FOR和FEEE畢竟也是奧爾森的產業,這個根本不用范含囑咐。
從德州儀器定做的視頻芯片有了升級版,可以控制320*240的屏幕上面的每一個點,仍然可以同時顯示16種顏色,總共支持256種預定義的顏色。另外還單獨定做了一塊音頻芯片,矩形波兩音,三角波一音,雜波一音。這個音像規格比起任天堂的紅白機來說,稍微高了一點,估計實現的游戲效果應該不會比紅白機差。
當然,在開發的時候,這些東西還是作為外設,連在PDP-8上面。
新開發的第一個游戲就想好了,泡泡龍。這款游戲是極少數能讓女孩子揚眉吐氣的益智游戲之一。
方塊類游戲基本上都是大老爺們的天下,不要說高手都是清一色的男性,普通人玩起來都是男孩子占先。畢竟這種游戲對于計算的要求比較高,對于直覺的需要很少。范含當年帶著方塊游戲到處踢館的時候,靠的就是這種反應能力和計算速度,往往在下一個構件沒出現之前就已經構思好了處理方式,兩只手只要機械的輸入指令就行了。
但是泡泡龍不同,圓的氣泡,還能彈在墻壁上反射,運動路線并不是橫平豎直的。有時候必須依賴的就是對空間的直覺。玩這個游戲基本上是個女孩子就比男的強。范含原來不信邪,曾經狂妄的向美眉們挑戰,結果連連慘敗,請了無數頓飯。
有一關,頂上一個吊燈型的氣泡云彩,只要第一發能擊中吊燈根部就可以將氣泡全滅。范含屢試屢敗,就讓給旁邊的一個美眉玩。結果該美眉順手將準星搖到右邊,一步到位,再發射,一炮打響。氣泡撞到右邊墻壁上,反彈到左邊墻壁,再擊中天花板,最后彈到目的地。正個過程一氣呵成,令范含大驚失色。
泡泡龍本來是日本“Taito”公司的產品,最早是個動作類型的游戲,一只雄性泡泡龍吐著泡泡消滅敵人,一路上過關斬將,直搗黃龍,最終拯救了一只雌性的泡泡龍。在1994年,Taito在他們的“B-System”主機上推出了第一款我們稱為“泡泡龍”的益智游戲,名叫“PuzzleBobble”,可以看作是動作類游戲的外傳。結果該游戲迅速竄紅,原來的反而沒什么人玩了。Taito公司再接再厲,于1995、1996和1998年在改進型的“F3-System”主機上推出了第二代、第三代和第四代。
這個游戲沒什么變種,所有版本都是大同小異,僅僅是關卡數量和質量的差別,還有美工的水平而已。所以范含并沒有考慮什么后顧之憂,全力以赴開發好引擎,具體的關卡設計找別人負責就是了。
等到DEC把游戲機相關硬件開發完畢,造出原型機運到洛杉磯之后,游戲已經基本完工。范含是用C語言寫的,這個游戲的代碼也成為了公司內部的C語言教學范本。然后就是用委托DEC針對該處理器開發的C翻譯器翻成匯編語言,再請程序員們優化就算搞定了。
藍藍對這個游戲愛不釋手那是肯定的了,沒想到UCLA的幾個教授也專門過來表示對這個游戲感興趣。原來他們有幾個心理學的課題,專門研究兩性心理差異。相關人員對于方塊類和泡泡龍游戲如此明顯的性別針對性感到好奇,就特地來一趟,看看是否有合作的可能。
肯定是可能的了,范含來者不拒。
UCLA有個要求,希望能夠實現方塊類游戲和泡泡龍的雙人對戰,通過調整一些獎勵參數使得參與測試男女兩名志愿者基本上可以打成平手。通過大量的志愿者獲得的這些參數有可能會對于今后的研究有重要意義。
范含拒絕了直接修改機型的建議,因為這在商業上幾乎沒有任何意義。但是,范含承諾可以公開一些技術細節,使得通過附加設備實現機器之間的連線。順便暗示UCLA的人可以借此機會把局域網技術開發出來。當然,范含提供了一些Ethernet的資料權當自己的“設想”,并且鼓勵他們不要考慮任何“成本”方面的問題,只要技術上出色就行。
有了UCLA幫忙宣傳,加上自己的努力,新款游戲機估計肯定可以吸引大量女性玩家。根據“Squares”機型用戶的反饋信息,在所有的玩家中,女性的比例僅僅占到5%左右。范含要求廣告部門專門強調,為了那半邊天,FEEE特意開發這個新款游戲。
至于游戲機的命名,范含一點猶豫都沒有,就叫做“Kervin”。這是范含為了紀念中國模擬器先驅,英年早逝的李可文。雖然現在的時代他還沒有出世,但是……就當表達了自己的一份心意吧。
-------
FEEE的事情告一段落了,剩下的就看銷售人員怎么運作了。范含的工作重點轉移到了數學家們這邊。
以目前的發展水平,想在通用計算機上面運行數學軟件,幾乎就是癡人說夢。如果僅僅是為了通用計算機開發一堆軟件包、函數庫什么的,又沒有足夠的理由說服用戶購買自己的硬件。最后的可能一定是被用戶強迫著把軟件移植到IBMSystem360上面,這絕對不是范含期望看到的場面。
看來只剩下一條路了,就是結合硬件造出專用的計算機,除了數學環境之外沒有別的功能的計算機。當年的AppleII型機,就是啟動后直接進入ROMBasic,一個解釋型Basic環境。所有事情,包括讀寫外部設備都是在這個環境下進行。也沒聽到用戶有什么抱怨。
所以,范含拿定了主意,準備以68k架構開發一個數學工作站,一旦啟動就會直接進入“ROMMatlab”……呵呵呵……嘿嘿嘿……
-------
(第拾肆章完)
-------
注:
0,感謝各位讀者的參與!答案見本章最后一段,凡是和答案沾點邊的書評都加了精華。
1,李可文,男,網名Kervin,北京人,1979年9月18日生,2004年6月30日畢業于北京大學,同年7月1日因病去世。著名的DreamNes,DreamGB,DreamGBA的開發者,中國游戲界模擬界的知名人士,Mop網站的資深管理員。
知道此事的讀者別嫌我多嘴,不知道的讀者請去Google或Baidu搜索“李可文”。
本文中作者將主角第一臺真正的游戲機命名為“Kervin”,就是為了紀念這位優秀的程序員。作者比可文年紀大不了多少,要寫“謹以此文紀念……”之類的話還嫌分量不夠。總之,但愿看過本章的讀者能夠記住這個名字,作者的目的就算達到了。
2,任天堂紅白機的處理器是6502,不是z80,這是作者的錯誤。感謝書友“jaobec”和“4fb”。文中打算改為主角對于6502看不上眼,改用z80。另外,主角想起任天堂重新奪回失地的GameBoy用的就是z80,這樣一來也可以和后面紀念可文的情節連起來。
3,關于SAS,作者好像記得當年聽誰說過可以零售,售價數萬美元。要么就是作者記錯了。書友“jack_jack”提出現在只租不賣應該也是對的。把“買不起”改為“用不起”……不就可以蒙混過關了么?