Re: [轉錄][問題] 電玩模擬器是怎麼寫出來的?

看板Emulator (模擬器)作者 (哼哼)時間17年前 (2008/08/31 10:31), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串2/4 (看更多)
※ 引述《asoedarren (天真歲月陽仲壽)》之銘言: : 這個問題讓我好奇很久了,而且也不知道能去哪問 : 想來想去,我想還是這兒最適合吧,畢竟能寫出模擬器的都是程式高手..... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 其實不見得 : 我想過 : 方法1:廠商有公佈or流出電玩的spec. : 聽說當年GBA模擬器能那麼快寫出來,就是規格外洩 : 但那些規格未知的電玩模擬器是怎麼寫的? 真的要解釋起來很複雜所以用簡單一點的方法說好了 模擬器作者會根據公佈的主機性能去寫出一個可以模擬的方法 例如當年超任的放大縮小馬賽克化功能 因為電腦(硬體)本身沒有類似的功能存在 所就得靠軟體"演"出來 至於GBA的例子除了因為規格太早公佈外 另一方面GBA的一些參數演算法跟前面的GBC差不多 所以有人就直接利用GB模擬器作為基調並參考GBA的規格來寫出假的GBA模擬器 等主機上市跟遊戲的rom被丟出來後再逐一作修改 : 方法2:拆解硬體,然後寫出模擬器 : 覺得這方法根本是天方夜譚 = = 這是必要的 不能瞭解實際的硬體規格 寫出來的效果就會有很大的誤差 像目前正在嘗試破解電儲問題的PSP就是一個好例子 : 方法3:軟體逆向工程 : 例如藉由廠商公佈電玩支援的指令集、API....等 : 然後分析這些指令、API對應到的機碼,藉此寫出模擬器 : 不過這方法是我亂想到的,不知道可行嗎? 可能但實際運用層面很小 廠商如果要這麼做他們可能就會自己開發官版的模擬器 不太需要作這種慈悲為懷的事情 拿石頭砸自己的腳只會痛不會有其他好事發生 其實還是希望有真正的高手來回答這些問題 畢竟我不是專業的模擬器作者科科 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.224.53.131

08/31 11:53, , 1F
GBA應該是最誇張的..沒上市燒錄卡就作好了
08/31 11:53, 1F

08/31 12:11, , 2F
因為架構差不了太多 加上又是用arm7作處理器 所以..
08/31 12:11, 2F

08/31 12:12, , 3F
燒錄卡的話用分析儀看一下卡帶動作就可以作了 不難
08/31 12:12, 3F
文章代碼(AID): #18kWA1vE (Emulator)
文章代碼(AID): #18kWA1vE (Emulator)