首頁(yè) 游戲

紅白機(jī)大時(shí)代

第二十五章 曲線救國(guó)的典型案例

紅白機(jī)大時(shí)代 生煎包子 1589 2019-04-26 00:26:00

  對(duì)于任天堂來說,生產(chǎn)出連接兩臺(tái)FC主機(jī)的數(shù)據(jù)線,這再容易不過了。但連接起來不代表它們能夠運(yùn)行,因此需要切實(shí)的匯編來測(cè)試。

  而王秋陽(yáng)提供了能夠測(cè)試兩枚八位元CPU同時(shí)運(yùn)行的運(yùn)算依據(jù),并轉(zhuǎn)換成VerilogHDL語(yǔ)言。橫井俊平現(xiàn)在正用心的將它記在腦子里。

  module memory

  (

  input [15:0] addr,

  inout [15:0] data,

  input rw

  );

  reg [15:0] data_ram[0:16'b1111_1111_1111_1111];

  integer i;

  initial begin

  for (i = 0; i <= 16'b1111_1111_1111_1111; i = i + 1)

  data_ram[i]=$random();

  data_ram[0]=16'b1000000100000000;//mov [ADDR],r0;r0 = 0

  data_ram[1]= 16'b1100000000000000;//ADDR

  data_ram[2]= 16'b1000000010001000;//mov r1,100

  data_ram[3]= 100;//100

  //data_ram[2]= 16'b1110011001000000;

  data_ram[4]= 16'b0010000100010001;//lop:add r2,r1

  data_ram[5]= 16'b1110000011001000;//sub r1,1

  data_ram[6]= 16'b0000000000000001;//1

  data_ram[7]= 16'b1110000000001000;//cmp r1,0

  data_ram[8]= 16'b0000000000000000;//0

  data_ram[9]= 16'b1110011010000000;//jz ext

  data_ram[10]= 16'b0000000000000011;//+3 offset(ext)

  data_ram[11]= 16'b1000000010100000;//mov r4,4

  data_ram[12]= 16'b0000000000000100;

  data_ram[13]= 16'b0110011001100000;//jmp r4(lop)

  data_ram[14]= 16'b1000000100000010;//ext:mov [ADDR],r2

  data_ram[15]= 16'b1100000000000000;//ADDR

  data_ram[16]= 16'b1110011001000000;//jmp $

  data_ram[17]= 16'b1111111111111110;//-2 offset($)

  /*data_ram[0]= 16'b1000000010000000;//mov r0,imm

  data_ram[1]= 16'b0011111111111111;//imm

  data_ram[2]= 16'b0000000001111000;//mov r7,r0

  data_ram[3]= 16'b1000000010011000;//mov r3,0

  data_ram[4]= 16'b0000000000000000;

  data_ram[5]= 16'b1000000010100000;//mov r4,code of jmp r5

  data_ram[6]= 16'b0110011001101000;//jmp r5

  data_ram[7]= 16'b0000000101011100;//mov [r3],r4

  data_ram[8]= 16'b1000000011110000;//mov r6,[0]

  data_ram[9]= 16'b0000000000000000;//[0]

  data_ram[10]= 16'b1000000100000110;//mov [255],r6

  data_ram[11]= 16'b0000000011111111;

  data_ram[12]= 16'b0110011001011000;//jmp r3

  */

  end

  always @(addr or rw or data)

  if (rw)

  data_ram[addr]= data;

  assign data = rw ? 16'hzzzz : data_ram[addr];

  endmodule

  測(cè)試結(jié)果,應(yīng)該是r2從0變化到5050,即1+2+3+……+100=5050。

  add dst,src 將src和dst相加并且送到dst寄存器。

  mov [addr],src 將src的值送到以addr位地址的內(nèi)存單元。

  sub dst,src 將dst減去src并且送到dst中。

  cmp dst,src 將dst減去src 然后不送到dst,只改變標(biāo)志位。

  jz dst 當(dāng)zf=1時(shí),即上次的算術(shù)操作結(jié)果為0,則跳轉(zhuǎn)到dst中。

  這是一段手輸仿真程序,可以完全測(cè)試到兩個(gè)CPU運(yùn)行,甚至可以測(cè)試十六位元CPU。橫井俊平驚訝的發(fā)現(xiàn),這套匯編為研發(fā)十六位芯片,竟然提供了切實(shí)可行的理論依據(jù)。

  這個(gè)時(shí)候,天已經(jīng)快要黑了。

  最后,橫井俊平對(duì)王秋陽(yáng)說道:“任天堂FC的主機(jī),磁碟機(jī)設(shè)計(jì)都相當(dāng)成熟。王君提供了測(cè)試代碼,以現(xiàn)有技術(shù)研發(fā)出這款配件,并不需要太長(zhǎng)時(shí)間!我的意思是,研發(fā)出來之后直接申請(qǐng)新機(jī)型,并且申請(qǐng)專利?!?p>  “申請(qǐng)專利?”王秋陽(yáng)倒是沒有想到這么多。

  橫井俊平說道:“當(dāng)然,王君提供的代碼和新機(jī)型,可是寶貴的財(cái)富,我們?yōu)槿翁焯霉ぷ骺墒切枰S持生活的!只是你現(xiàn)在是作為美紀(jì)的助理,在科樂美工作,所以這項(xiàng)榮譽(yù)暫時(shí)只能以美紀(jì)的名義領(lǐng)受了。當(dāng)然,以我和美紀(jì)的人品,待遇方便你不用擔(dān)心!”

  王秋陽(yáng)笑道:“這沒問題。”

  這款新機(jī)型根本就是揀來的,王秋陽(yáng)原本也沒有想拿來賺錢。研發(fā)雙核FC的大神更沒有想過用它賺錢,王秋陽(yáng)穿越到這個(gè)年代,也完全是出于偶然。

  至于這套匯編,是二十一世紀(jì)電腦達(dá)人李倩發(fā)表于《電子說》網(wǎng)站的共享資源。那時(shí)候十六位元的CPU早成為了地?cái)傌洠髡咄瑯記]有營(yíng)利目的。

  在漢化組待久了,王秋陽(yáng)的思維也和他的團(tuán)隊(duì)一樣云淡風(fēng)清。漢化組習(xí)慣于無(wú)償服務(wù),看到玩家得到快樂就是他們的快樂,沒有人關(guān)心錢的事。

  哪怕王秋陽(yáng)現(xiàn)在真的需要用錢,橫井俊平也幫他搬進(jìn)了這么大的公寓,一年之后任天堂的上村雅志還要支付一百萬(wàn)円的入替金。王秋陽(yáng)已經(jīng)很知足了。

  至于榮譽(yù),王秋陽(yáng)更不放在心上。真正Hack一款游戲出來,玩家追捧,點(diǎn)贊,這就是最大的榮譽(yù)。冬野美紀(jì)原本就是天才,王秋陽(yáng)不介意再給她增加一點(diǎn)光環(huán)。

  “這對(duì)冬野小姐的事業(yè),一定會(huì)有大的幫助吧?”

  不知道為什么,冬野美紀(jì)高興的時(shí)候,在王秋陽(yáng)看來很受用,比自己高興還要舒心。

  更何況,F(xiàn)C遲早會(huì)被中國(guó)盜版。他們現(xiàn)在把機(jī)型設(shè)計(jì)得越完美,中國(guó)人盜版起來就越方便。王秋陽(yáng)這也算是曲線救國(guó)的典型案例了。

  怎么看,王秋陽(yáng)都不吃虧。

  橫井俊平看著王秋陽(yáng)的樣子,當(dāng)真不是裝出來的。不由得感慨道:“貴國(guó)的從業(yè)者,都是這樣無(wú)私的嗎?”

  王秋陽(yáng)笑道:“為國(guó)民服務(wù)嘛!”

  因?yàn)橥跚镪?yáng)和橫井俊平這一交流,就到了晚上,橫井俊平干脆請(qǐng)這些年輕人又吃了一頓晚飯。自從遇上了王秋陽(yáng),他這些日子當(dāng)真是破費(fèi)了許多。

  最后,王秋陽(yáng)把日志本交給了橫井俊平,與他告別。和冬野美紀(jì),胖子,夏雨詩(shī)一同逛回了公寓花園,胖子都不太相信今天發(fā)生的事情。

  “老王,真有你的!我們真的住進(jìn)大公寓了,這不是在做夢(mèng)吧?”

  說著,胖子忍不住對(duì)夏雨詩(shī)道:“雨詩(shī),既然咱們自己有地兒住了,就別麻煩人家了。你搬過來吧?”

  夏雨詩(shī)一口拒絕:“去!我一個(gè)女孩,怎么能和兩個(gè)大男人住一起?再者說了,美紀(jì)還能教我學(xué)日語(yǔ)呢?!?p>  胖子聽了,一臉的生無(wú)可戀。

  王秋陽(yáng)和冬野美紀(jì)走在另一邊,并沒有像胖子和夏雨詩(shī)一樣拌嘴。最后要上樓的時(shí)候,冬野美紀(jì)只說道:“王君,做匯編不要熬得太晚,注意身體。”

  “謝謝你,我會(huì)的!”

按 “鍵盤左鍵←” 返回上一章  按 “鍵盤右鍵→” 進(jìn)入下一章  按 “空格鍵” 向下滾動(dòng)
目錄
目錄
設(shè)置
設(shè)置
書架
加入書架
書頁(yè)
返回書頁(yè)
指南