电子游戏模拟器

模擬電子遊戲機及其遊戲的模擬器程式。通常情況下，遊戲機模擬器能打破原遊戲機硬體的限制，提供諸如非原生手把的支援、遊戲速度控制、效能與畫質增強等功能。在為已停產的舊遊戲機開發自製程式或新遊戲的過程中，模擬器也起著重要作用。

## 工作原理

模擬器包含很多組件：分別模擬原始機器中央處理器 CPU、圖形處理器 GPU、音效卡等晶片的組件，以及把原機器的輸入裝置（如按鈕、搖桿等）對映到電腦的鍵盤等輸入裝置的組件，並將這些組件整合起來，構成完整的模擬器。

由於平台間底層系統、處理器、記憶體、架構等軟硬體差異，要使模擬器能流暢執行遊戲，模擬器的效能要求通常比原遊戲機的效能高很多。

除任天堂 Virtual Console 等遊戲機廠商官方的模擬器之外，模擬器一般不附帶有著作權的 ROM 映像及遊戲程式，因此使用者需要自行提供 ROM 檔案、ISO 映像等形式的遊戲資料與程式碼，才能進行相關的模擬操作。ISO 映像檔案是光碟資料的副本，可以使用普通的光碟機進行提取。而 ROM 檔案源於原遊戲機的 ROM 晶片或者 ROM 卡匣，需要使用專門的程式或工具從原遊戲機上提取下來（這個過程一般稱之為「dump」或「rip」）。提取 ROM 操作較為複雜，因而普通消費者和模擬器愛好者更傾向於非法通過網際網路免費取得遊戲，而不是合法地購買與提取遊戲內容。在原遊戲機平台和遊戲停產後數十年，大多數遊戲公司仍保留其著作權。為了解決提取映像的困難、避開著作權的問題，一些遊戲卡匣專用配接器（Retrode 等）問世了，這種配接器能讓模擬器直接存取卡匣上的資料。

**dump**

將儲存在電路板、磁盤、光盤等介質上的數據，用工具讀取出來，以檔案的形式轉存至電腦，這一過程被稱為「dump」。

dump 生成的 ROM 檔案，如同儲存在電腦里的一款款遊戲，可以脫離原始載體而運行。

## 背景與歷史

20 世紀 90 年代中期，個人電腦的效能提升迅速，這使得通過軟體模擬早期遊戲機的想法變得可行。在這個時期，網際網路上出現了一些未授權、非商業用途的遊戲機模擬器，儘管這些模擬器不太完整且容易出現程式錯誤。公布了硬體技術規範的廠家少之又少，程式設計師只得通過逆向工程分析演繹得出遊戲機的具體運作方式。開發者常將任天堂的遊戲機作為研究物件，當時比較先進的模擬器能較為完整地模擬紅白機、超級任天堂與 Game Boy。這個時期「音速小子之父」中裕司也為 Mega Drive 設計了紅白機模擬器，雖然該模擬器沒有發布，但這可能是首個在遊戲機上模擬其他平台的模擬器。

隨著模擬器的流行，模擬器的開發速度加快了，一定程度上也促進了 ROM 修改與遊戲漢化翻譯社群的發展，使得執行國外的遊戲變得容易，更多使用者也隨之接觸到模擬器。

### 法律問題

很多模擬器的出現，實際上是為了儲存很多年前原始的遊戲程式，並在不同的裝置上執行。隨著電腦與網際網路的發展，模擬器開發者的技能水平得以不斷提高，模擬器發布速度越來越快。任天堂 64、PlayStation、Game Boy Advance 等第五和第六世代遊戲機模擬器在遊戲機產品仍銷售時就已經能進行模擬操作。遊戲機製造商試圖通過法律途徑阻止非官方的模擬器，但大多數都失敗了。 （頁面存檔備份，存於網際網路檔案館）

根據法律先例，在美國、英國等大多數國家開發與使用模擬器是合法的，但根據國家著作權法與《伯爾尼公約》，未經授權分發受著作權保護的程式碼仍是違法的。

在美國，根據 Lewis Galoob Toys 與任天堂美國法庭判例，只要是合法擁有遊戲機，提取遊戲機 BIOS 檔案的行為符合法律中的合理使用。為了減少類似的事件發生，高階級模擬（HLE）方式被更多開發者採用，使模擬器在沒有 BIOS 檔案的情況下進行模擬操作。

在中國，模擬和破解等行為處於法律的灰色地帶。發佈與收集遊戲、製作模擬器和破解 ROM 都是網路高手熱衷的工作。隨著模擬器的發展，遊戲 ROM 也在以極快的速度漢化，中國大陸的網站成為模擬器與 ROM 的儲存基地之一。

## 應用

### 官方使用

由於玩家對懷舊遊戲的需求日益增長，現代遊戲機也加入了模擬功能。其中最著名的就是任天堂的 Virtual Console，它允許使用者在平台上購買和模擬執行為舊款遊戲機設計的遊戲。儘管可執行的遊戲數目較少，但 Virtual Console 能模擬的遊戲平台覆蓋較廣，有紅白機、超級任天堂、Game Boy 家族、任天堂 64、任天堂 DS 等任天堂自家的平台，也包括 SEGA 的 Master System、Mega Drive、NEC 的 PC Engine、SNK 的 Neo Geo 等其他廠商的遊戲平台。為擴大 Virtual Console 的遊戲庫並提高相容性，任天堂給每個遊戲搭配了最佳化過的客製化模擬器，但仍缺少非官方模擬器提供的畫質增強等功能。

由於 Xbox 不同世代間的硬體差異，新世代的 Xbox 並不原生相容舊世代 Xbox 的遊戲。然而，微軟通過軟體模擬的方式實現對一些暢銷遊戲的向下相容。需要注意的是，Xbox One 對 Xbox 360 的向下相容功能並不額外收費，如果已經購買了支援的遊戲，則可直接在 Xbox One 上執行。

索尼的 PlayStation 3 及之後的遊戲機通過軟體模擬的方式執行首代 PlayStation 的遊戲。PlayStation 3 的早期型號搭載了 PlayStation 2 的硬體晶片，因而能直接執行 PS2 遊戲；不過後來，PlayStation 3 去除了 PS2 的 Emotion Engine 晶片，改用硬軟體混合模擬；最終，索尼移除了所有的 PS2 晶片。與任天堂 Virtual Console 類似，索尼將 PS2 遊戲與模擬器打包，在 PlayStation Store 上售賣。

一些商業遊戲開發商也使用模擬器為新遊戲機發行舊版遊戲。SEGA 發布了數個音速小子系列等經典遊戲合集。在 Virtual Console 發布之前，任天堂也採用這種方式，為 Game Boy Advance 製作了紅白機移植遊戲系列 Famicom Mini。

### 其他應用

儘管模擬的主要目的是讓舊款遊戲在新平台上執行，但模擬器也提供了不少無法在原始平台上實現的功能。

#### ROM 修改

載入遊戲的過程對於大部分遊戲機模擬器來說必不可少，大部分使用者會將實體版遊戲（卡匣或光碟）提取製成映像檔案，便於後續模擬器讀取。映像里的遊戲檔案容易修改，再加上模擬器的協助，對於業餘程式設計師和遊戲愛好者們來說修改遊戲更方便，他們熱衷於翻譯遊戲、重寫對話、修復原始遊戲錯誤，甚至是為 3D 遊戲製作高解析度紋理包。

#### 增強體驗

模擬器能改進原遊戲機已有的功能，提供附加功能，以此改善遊戲體驗。大部分模擬器能提升遊戲畫質（使用反鋸齒、高解析度彩現、各向異性過濾等圖形增強）。一些模擬器可以提高音訊效能（通過減少延遲和使用更好的資料插值演算法），即時存檔，降低啟動和載入時間，有的模擬器能直接跳過遊戲機的啟動畫面。此外，有的模擬器提供線上多人遊戲功能，甚至還具備遊戲調速功能。

#### 繞過區域限制

由於一些原因，一些遊戲廠商為其遊戲機設定區域限制。這項限制令人生厭，因為有的遊戲在 PAL 與 NTSC 版本中的體驗並不一致，有些差異令人費解。而且部分遊戲沒有在全球發售，並不能在未發行的地區玩到，比如一些只在日本發行的遊戲。

雖然遊戲機經修改可以繞過區域限制，但可能會由於機器的輸出設計造成一系列問題，例如異常的顯示或者不能以正常速度執行。模擬器有獨立的顯示輸出模組，這些問題也不復存在。

#### 遊戲作弊與寬熒幕更新檔

大多數模擬器支援遊戲機專用的作弊碼（如 GameShark、Action Replay 等），有的還允許使用者從選單中切換作弊碼。許多模擬器的除錯程式也能輔助玩家製作自己的作弊碼。寬熒幕更新檔也是基於作弊碼而產生，一些遊戲通過修改記憶體中設定的輸出寬高比，使得為非寬熒幕設計的遊戲能以寬熒幕的比例輸出，不會出現圖像拉伸的問題。

#### TAS 競速

TAS 競速是遊戲機模擬器衍生出來的一種應用。

## 常見的模擬器軟體

### 大型電玩模擬器

* MAME （模擬卡普空 CPS、NEOGEO 及其他）
* Finalburn Alpha / FinalBurn Neo （模擬卡普空 CPS、NEOGEO）
* Kawaks （模擬卡普空 CPS、NEOGEO）
* Nebula （模擬卡普空 CPS、NEOGEO）
* NeoRAGEx （模擬 NEOGEO）
* Callus（模擬卡普空 CPS）

### 家用機模擬器

* VirtuaNES（模擬 FC 紅白機）
* Gens（模擬 Mega Drive）
* MagicEngine（模擬 PC Engine）
* Snes9x（模擬 SFC 超級任天堂）
* ZSNES（模擬 SFC 超級任天堂）
* VBJin（模擬 Virtual Boy）
* Project64（模擬任天堂 64）
* Dolphin（模擬 Gamecube 與 Wii）
* Cemu（模擬 Wii U）
* Bleem!（模擬 PlayStation）
* ePSXe（模擬 PlayStation）
* PCSX2（模擬 PlayStation 2）
* RPCS3（模擬 PlayStation 3）
* Chankast（模擬 Dreamcast）
* nullDC（模擬 Dreamcast）
* Cxbx（模擬 Xbox）

### 掌機模擬器

* VisualBoy（模擬 Game Boy）
* VisualBoyAdvance（模擬 Game Boy 與 Game Boy Advanced）
* NO$GBA（模擬 Game Boy Advanced 與任天堂 DS）
* iDeaS（模擬任天堂 DS）
* DeSmuME（模擬任天堂 DS）
* Drastic（模擬任天堂 DS）
* PPSSPP（模擬 PlayStation Portable）
* Citra（模擬任天堂 3DS）

## 參見

* 虛擬機器
* 遊戲機模擬器列表

## 備註

## 參考資料

## 外部連結