前掌機時代:計算器、遊戲手錶和Game & Watch

任天堂,這家從1889年就存在的紙牌公司,當你在今天搜尋它的起源時,也許有機會看到橫井軍平開發Game & Watch時的小故事:當橫井在新幹線上看到一個商人無聊地擺弄著自己的計算器時,一個想法在他的腦海中萌生——如果能有一種遊戲裝置像計算器一樣隨身攜帶,這漫長的新幹線旅程也就不會無聊了。

1980年,任天堂的掌機Game & Watch正式發售。

橫井的故事並非憑空捏造,Game & Watch不僅因新幹線上的計算器偶遇而誕生,它在技術上與計算器的發展也密不可分。

前掌機時代:計算器、遊戲手錶和Game & Watch

Game & Watch的系列產品一直賣到1991年

對“過時”技術的當下思考

上世紀70年代前後,液晶顯示屏(LCD)技術已經經過了幾輪簡單的迭代,可用的液晶顯示屏終於面向商業市場推出。夏普、德州儀器等廠商迅速聞到了應用的先機,取代了原有用發光二極體(LED)作為顯示裝置的方案,為旗下的手持計算器配備了這種液晶顯示屏——也就是我們後來熟知的TN-LCD。

前掌機時代:計算器、遊戲手錶和Game & Watch

TN-LCD的原理圖。TN-LCD的出現,滿足了當時電子手錶、計算器和儀表顯示屏等LCD器件的效能要求,從而真正形成了TN-LCD產業時代

在TN-LCD的工作原理中,格外引人注目的是帶有數字圖案的玻璃基板(如上圖中的數字2)。玻璃基板上面有帶氧化銦錫的透明電極,開啟電源後,光線無法透過的區域就會顯示出預先設定好的形狀。

你或許有過這樣的體驗:小時候亂打計算器、來回插拔電池時,顯示屏一瞬間可能會顯示出一連串“8888”,就是電子計算器預設好的圖案(7段數碼管)。這種圖形的實現方法,被橫井軍平巧妙地應用在了後續的開發工作上。

前掌機時代:計算器、遊戲手錶和Game & Watch

一個典型的Game & Watch的LCD螢幕玻璃基板,卡通人物的動作活靈活現,表情栩栩如生,與之相配的遊戲是1983年發售的《Mario’s Cement Factory》

藉助TN-LCD獨特的特性,橫井將角色卡通化預設在玻璃基板上,不僅是動作,甚至表情也能透過一定的藝術化改造表現出來,這無疑給硬體機能捉襟見肘的手持機賦予了在當時看來強大的畫面表現力。

橫井本人多年後回憶自己的開發理念,將它總結為“對‘過時’技術的當下思考”。當時,為爭奪市場,夏普與卡西歐正在進行激烈的價格戰,導致日本計算器用的電子元器件產能過剩,價格低廉。所以,不只是TN-LCD螢幕,Game & Watch在其他硬體選材上也沿用了當時主流的低端計算器配置:處理器選用了夏普的4位處理器“SM-5”系列(早期多是SM-510),整個裝置使用兩枚LR44紐扣電池供電。這樣一來,不僅大大壓低了生產成本,更是保證了產品的穩定性。

解決了硬體上的痛點,在遊戲軟體的開發思路上,橫井與他的小組也有不同於業界的想法:他們極為聰明地迴避了CPU的操作,只使用少量程式碼和成熟的電子配件就能實現複雜的邏輯、控制圖形的操作和顯示。比如在遊戲中最關鍵的邏輯上,與當時主流的Atari 2600等家用機控制X、Y座標精靈圖的思路不同,Game & Watch完全依賴於直接運算。因為“SM-5”系列晶片提供有內嵌的LCD驅動,顯示器是記憶體直接對映的,所以,顯示器RAM地址中的$60至$80,對於程式來說也是直接可以訪問的。

前掌機時代:計算器、遊戲手錶和Game & Watch

Game & Watch使用的處理器SM-510的電路框圖。有趣的是,橫井軍平曾有在夏普公司實習的經歷,他對這塊處理器可能非常熟悉

不想看下面幾段的朋友可以直接跳過,但我想簡單解釋一下原理。

Game & Watch以一個由微處理器生成的多項式程式碼發起,當它開始時,每次都會產生一段相同的輸出流,這些輸出流都會傳入資料選擇器(Demultiplexer)。資料選擇器的下方,控制著多個移位暫存器(Shift Registers),這些暫存器通常可以被用來操作棧中的Bit,彼此同步向左或是向右進行移位。

遊戲依賴多個這樣的移位暫存器一起進行工作,這些暫存器中的每一個Bit都與LCD上的元素有所關聯,$60至$80分別被對映在了微處理器的a1~a16、b1~b16以及H1~H4上。這些Bit並沒有儲存具體的位置資訊,它們使用硬連線來確定位置之間的衝突。

比如在遊戲畫面中,一個遊戲角色擁有3個可能的位置,它們在RAM中分別對應$62上的Bit 2、$6D上的Bit 1以及$6B上的Bit 2。遊戲程式碼並不知道螢幕上任何可見遊戲物件的具體座標,子程式只是在這一行第一個位置$62上的Bit 2開始進行偏移,與CF位進行比較,然後繼續將RAM地址移動到下一位,呼叫相應的子程式交換要訪問的位。這樣迴圈往復,直到線路可以連通。

同樣的,遊戲中還有其他移位暫存器,用於碰撞檢測等內容,原理也大致類似。團隊中的成員都在有限的條件下創造新的想法,比如,由於微處理器支援外接晶體振盪器新增時鐘功能,這樣可以將對應的遊戲速度相應加快,同時還並不影響使用者的輸入速度,給加入高難度的快速遊戲模式提供了可能。

趁熱打鐵

1980年,任天堂終於推出了第一批Game & Watch遊戲,藉助TN-LCD所呈現的卡通遊戲畫面和低廉的價格,一時間,市面上幾乎沒有任何可能的競爭對手。第一批上市的6款遊戲,立刻被搶購一空,因其包裝上的銀色外殼,也被玩家親切的稱為“銀”系列。

當然,如此顯著的成功不可能不引起其他電子巨頭的注意,原本就率先使用LCD生產電子錶的卡西歐也發現了商機,Game & Watch的簡單可複製性,促使卡西歐在同年推出了真正的遊戲“Watch”——CASIO GM-10遊戲手錶,為原有的電子手錶提供了一片專門可以用來進行太空飛船射擊的區域,隨時可以讓佩戴者來一局星戰冒險。

前掌機時代:計算器、遊戲手錶和Game & Watch

Game & Watch“銀”系列的早期遊戲《Flagman》(1980年),舉旗子的形象在任天堂的後續遊戲《任天堂明星大亂鬥》中出現過——Mr。 Game & Watch

前掌機時代:計算器、遊戲手錶和Game & Watch

市場極好的反應和銷售額給了任天堂十足的信心,橫井等人又加班加點完成了3款遊戲。任天堂對原有工藝積極做出改進,為原有的LCD螢幕上增加了一層彩色圖案的透明塑膠,用以裝飾只有黑白影象的顏色,這種廉價又方便的做法填補了這類遊戲缺乏背景的技術空白。區別於上一系列Game & Watch的金色外殼,這些遊戲被稱為“金”系列。

1981年,面對市場上蜂擁而至的競爭者,任天堂決定將原有的LCD顯示屏兩邊擴大,以寬屏為系列賣點再次發售新遊戲。不同於之前只是做技術革新,這次任天堂在遊戲內容上也著實下了功夫。

以《OCTOPUS》為例,作為最先推出的兩款寬屏遊戲之一,它最初由出石武宏進行程式製作,迦納誠進行設計,他們把日本漫畫《蛸の八ちゃん》裡的章魚形象用在了遊戲裡,設計了有趣的冒險場景。寬屏讓遊玩變得更容易,寬闊的空間也更容易設計場景。

玩家擁有3次機會,控制船上的潛水員下海,從章魚的眼皮子底下奪取沉船寶箱的財寶。每從包廂裡抓取一次寶藏得1分,回到船上再得4分,每增加到100分時章魚觸手的速度會突然變慢。遊戲分為兩種模式,GAME B的觸手速度會更快,遊玩起來輕鬆上癮。

前掌機時代:計算器、遊戲手錶和Game & Watch

1981年推出的寬屏遊戲《OCTOPUS》大獲成功,銷量超過25萬套

前掌機時代:計算器、遊戲手錶和Game & Watch

《蛸の八ちゃん》(昭和10年刊)是由田河水泡創作的冒險漫畫,以章魚為主人公,因其滑稽和有趣的故事,在日本本土有很大的影響力

任天堂趁熱打鐵, 一口氣在接下來一年內釋出了近10款遊戲。在1981年下半年,更是藉助之前與迪士尼日本等動畫公司的合作關係,相繼推出了以米老鼠、大力水手、史努比為題材的作品,大大擴充套件了市場認可度。

到1991年停產時,Game & Watch一共發售了近60款遊戲,總銷量超過了8100萬,這一掌機銷售紀錄直到2003年才被橫井軍平策劃的另一臺掌機Game Boy打破。那又是另外一個故事了。