上個世紀80年代的nintendo entertainment system遊戲主機算是被模擬最多的主機了。現在無論手機上,psp上都充斥著它的身影。一些經典的老遊戲仍在繼續發揮著餘熱。
nes內部主要部件有**處理器cpu,圖形處理器ppu,聲音處理器apu,弄清楚這幾塊就基本上搞定了它的執行流程。雖然nes模擬器的源**到處都可以找到,但不弄清楚nes的基本結構直接看原始碼是肯定看不懂的。
說一下cpu,nes有一塊8位的6502 cpu,8bits 說的是每條指令(opcode)的長度,所以它的全部指令數量也不會超過2的8次方 256個。位址線位數是16位,意思可以定址2的16次方,64k的記憶體空間,實際上nes並沒有64k的記憶體。cpu的模擬要實現它那幾種記憶體定址的方式以及每條指令的運算實現,雖然不算太複雜但也比較繁瑣,需要乙份詳細的文件一一對照。
ppu的處理過程相對比較複雜些,首先涉及到pattern table, name table, attribute table , palette, sprite 等一大堆名詞,再者就是0x2000-0x2007這幾個ppu暫存器的讀寫過程也是有點繁瑣,有機會詳細的寫下文件。
apu應該也是比較麻煩的乙個東西,目前的理解是把要裡面幾種聲道給糅合起來。
NES畫素風格的Raspberry
週末小實踐,vue 樹莓派 一言api 一直有個想法,讓樹莓派做後端,實現乙個有趣的網路服務。可是,苦於不會前端,遲遲無法動手。最近由於工作任務需要研究了一下前端。問過前端大佬們,個個都說你得用vue.js,當前最流行 最熱門的前端框架,就用它!聽我的,沒錯!在大佬的指導下,花了半天時間領略到了vu...
給手機安裝NES模擬器,遊戲無限玩
mtk平台手機安裝mrp的nes遊戲模擬器教程和軟體 曾經的我們,在玩紅白機 小霸王 上經典遊戲的時候,經常會因為那些技術嫻熟的人如同行雲流水般的動作而表現出驚嘆和欽佩之情。時光匆匆,遊戲界的一代驕子如今也風光不再,不過好在我們仍有手機nes模擬器 mrp格式 可以懷舊一番 nes遊戲 四 nes遊...
如何寫乙個NES模擬器(二) 顯示命名表
ppu 的記憶體空間如下 位址0x0000 0x1fff 是圖案表,所有螢幕顯示的 點陣 圖案都從這裡獲取。下面是ppu的4個命名表 0x2000 0x2fff 通俗的來說,這4個命名表就是顯示在螢幕上的畫面了。0x3f00起始的16個位元組是背景調色盤,0x3f10起始的16個位元組是精靈調色盤 ...