登入使用能幫助您收藏更多喜歡的好書,
希望大家都能多多登入,管理員在此感激不盡啦!
《紅白機大時代》第20章 破解六千五百零二密碼(下)
  在完成了基礎步驟之後,王秋陽所編撰的6502同顯最大發色數的謎底,也水到渠成。和同色號發色一樣,漸近色號也能夠通過相同的原理完成同屏發色。

  比如死機的花屏顏色,現在已經排除了黑階,灰階兩種色號。如果再人為的製造花屏,電腦會自動尋找剩下的顏色,比如藍屏,紅屏都很正常。

  接下來,就是使用漸近色號,取代原本電腦默認的花屏色號。比如用02色號深藍取代12號湛藍,又比如用07號深紅取代05號正紅。

  隻要在重新Hack遊戲的時候,把五十二種色號全部排選一遍,最後在理論上就能夠使用任何一個色號。這就是6502同顯六十四色號的原理。

  這套匯編理論,也是二十一世紀的百度達人“周哥”完成的。王秋陽曾經用它Hack過好幾款遊戲,記憶尤深,如今也能把它很明晰的描述了出來。

  首先,

  ch_join:;色號(02)進棧

   inc p_stack

   bne ch_join02

   inc p_stack

  ch_join02:

   ldy #$00

   sta (p_stack),y

   rts

  然後,留存進棧數據,到達另一個棧,也就是臨時貯存器’

  get_stack03:;色號出棧到(02’)

   ldy #$00

   lda (p_stack),y

   ldy p_stack

   dey

   sty p_stack

   cpy #$ff

   bne get_stack

   dec p_stack

   rts

  接下來,新色號再次指定入棧條件

  Inftosuf04:

   cmp #12;“’“

   bne inftosuf #12’

   jsr ch_join ;遇“’”時直接入棧’

   jmp inftosuf02 ;返回02循環

  最後,得出棧頂算符優先級別,在(top_lev)中

   ldy #$00

   sty top_lev

   lda (p_stack),y

   cmp #12;“(“

   beq stack_lev06 ;把棧中的“(”設為0級

   cmp #$00

   beq stack_lev06

   ldx #$ff

  如此一來,電腦原本顯示藍屏的色號,就由12替換成02,都是藍屏。

  湛藍的色號是12。

  假設X等於3

  lda $2002, x;

  從內存地址($2002+3)處載入數據,即從$2005處;

  假設Y等於2

  lda $2000, y;

  從內存地址$2002處載入數據

  其中:load和store指令可以采用一個標簽作為基地址。

  通過代碼:

  :.incbin “our.pal“;顯示一個pal文件,

  標簽即為它的首地址lda , x;

  從標簽表示的地址+X處向12載入一個值y.

  於是色號02被鎖死,

但貢獻出12這個色號可以任意使用。  再重複一遍這個步驟,把12色號鎖死,用22色號代替。這個時候02色號將獲得釋放,它和22色號將能夠達到同顯,於是發色數又增加了一款!

  在理論上,6502的五十二款色號,將有一個將永遠無法使用。而實際上,在排選的過程中,可以通過釋放灰階00和10兩個色號,將被鎖死的色號由兩個相同灰階色號中的30取替,就像最開始釋放02的時候一樣。

  這個時候,再進行第二遍排選。

  6502的黑色色號有十一款之多,分別是0D至3D,0E至3E,1F至3F。由此可以相繼貢獻出十款被鎖死,從而取替出十種可使用的彩色色號。

  最後6502鎖定了一款灰階和十款黑色,單片機除了顯示最初不佔用內存,也就是肉眼判定為黑色(0D),白色(灰階20)兩款色號之外,還能使用剩余彩色中的任意二十二款色號。

  這就是FC現在能夠達到的最頂尖的機能。

  “好吧,我對此無話可說。”橫井俊平放下了日志本,感覺好像看了一場大片一樣。他整個人都有些虛脫,但又有一種難言的滿足感。

  “二十四色!能夠真正運用於遊戲中的,可以達到同顯二十四色?黑科技,黑科技,貨真價實的Hack!”

  “這是真的,數據是不會騙人的,我要見見這個人。如果他能夠改良一款遊戲,我和上村先生將有理由說服社長,把目光重新轉移到主機之上!”

  橫井俊平坐了起來,拿起了電話,撥通了冬野美紀的公寓:“喂,美紀醬?是我,橫井叔叔。我,想見見這位寫匯編的人。”

  冬野美紀也並不意外:“您知道不是我寫的?”

  橫井俊平笑了笑:“你別生氣,如果是,橫井叔叔倒會驚訝了。告訴我,這個人在哪兒?”

  冬野美紀說道:“您昨天還請他吃過飯呢。”

  “什麽?真的是他!”

  ……

  九月九日,星期三。

  “您好橫井先生,沒有想到又能有幸受到您的邀請。”

  這天放學,冬野美紀再次將王秋陽約了出來。不過這一回並沒有帶上胖子和夏雨詩,因為這是比較正式的會面,發出邀請的正是橫井俊平。

  王秋陽的劇本很成功。不光是匯編寫得好,一步步將橫井俊平勾搭了出來。同時他也把握住了身邊的機會,以冬野美紀同學的身份,蹭過一頓飯。

  果然,兩人見面沒有那麽生分的感覺, 橫井俊平也不再為王秋陽隻是一個普通大學生感到不必要的震撼了。他掏出了那本日志,微笑著放在了王秋陽的手上。

  “年輕人,你真的把我吸引住了。沒有想到中國的留學生中,竟然還有這樣的人物,隻是你的手段有些不夠漂亮。其實你直接向任天堂投稿,我也會采納你的提案。”

  王秋陽實話實說:“橫井先生請見諒,因為我到底是外國人,如果突然涉及到FC的匯編,恐怕會引起不必要的麻煩。所以才會出此下策。”

  橫井俊平聽了,也明白了王秋陽的意思:“你說得也有道理。美紀啊,你真是認識了一位了不起的年輕人呢!”

  冬野美紀的臉色又是微微發紅,不過目光中頗有些驕傲的神采。

  橫井俊平說道:“現在剛剛放課,想來你們也餓了吧?我們先去吃飯,然後橫井叔叔想和王君好好討論一下FC的發展!王君,你想吃點什麽?”

  王秋陽撓了撓頭,說道:“老是蹭飯,怪讓人不好意思的。橫井先生,如果您不介意,我想吃那個行嗎?”

  現在都還在“黃金周”,大小街道比平時更要熱鬧許多。二人順著王秋陽的手指望去,見街邊有一個手推式的麵包鋪。

  “密瓜包?”橫井俊平有些哭笑不得。中國的男孩喜歡吃甜食嗎?

  王秋陽也有些不好意思,隻說道:“在中國的時候就特別想嘗一嘗日拿芄習耍上б恢泵揮謝帷H緗窶戳蘇飫錚幟抑行呱

  “行,就吃它吧。你要幾個?”

  “六個!”
鍵盤左右鍵 ← → 可以切換章節
章節問題回報:
翻譯有問題
章節內容不符
章節內容空白
章節內容殘缺
上下章節連動錯誤
小說很久沒更新了
章節顯示『本章節內容更新中』
其他訊息