MAME

本页使用了标题或全文手工转换
维基百科,自由的百科全书
MAME
MAME 主菜單 (0.209 標準)
MAME 主菜單 (0.209 標準)
開發者Nicola Salmoria 與 MAME 團隊
首次发布1997年2月5日,​27年前​(1997-02-05
当前版本
  • 0.264 (2024年3月25日;穩定版本)[1]
編輯維基數據鏈接
源代码库 編輯維基數據鏈接
编程语言C++語言[2]
操作系统跨平台
类型模擬器
许可协议BSD license, GNU GPL v2 or later
网站mamedev.org

MAME,全名 Multiple Arcade Machine Emulator(多重大型電玩模擬器)是一套設計給個人電腦使用的軟體應用程式,其目標在於盡可能的忠實且精確地模擬許多街機遊戲,宗旨在於保存遊戲的歷史,並防止古老的遊戲被遺失或遺忘。

MAME 版本[编辑]

MAME 主要是由C語言寫成的跨平台應用程式(從 0.137 版開始支援C++語言),有許多不同平台的衍生版本,官方只发布对应 Windows 平台的執行檔。開發目前是以 Windows 平台的命令列版本為主(在 0.37b14 版之前的開發是以 MS-DOS 平台為主,現已停止發佈),從 0.137 版開始提供 SDL 跨平臺函式庫的 SDLMAME 原始碼(不提供執行檔);其他非官方的衍生版有加入 Windows 圖形使用介面的 MAMEUI,以及 Unix-like 系統的 XMAME、Mac OS X 系統的 MacMAME。

根據 MAME 官方網站描述,第一個公眾 MAME 版本 (0.1) 是在1997年2月5日,由義大利程式設計師 Nicola Salmoria 發佈。目前 MAME 發展至今已超過十年,官方為了紀念十周年這個里程碑,選在2007年2月5日的十週年生日推出新版本 (0.112) 以茲紀念。一直以來,除了 MAME 官方開發團隊致力於程式開發之外,尚有數百名來自全世界的非官方程式設計師參與編寫,目前此開發專案由官方開發團隊核心成員 Angelo Salese[3]負責管理與發佈。

中間更新[编辑]

MAME 除了正式發行的版本之外,在開發團隊官方網站尚有階段性的發佈中間更新,這是介於現時官方正式版和未來正式版之間的最新更新。中間更新是以原始碼差異部分的補綴文件形式發佈,並未提供可執行的檔案,使用者必須自行編譯成執行檔才能使用,或是使用同版號的MAME衍生版本。

MAME 宣告[编辑]

MAME 是一套模擬器:或多或少忠實的重現了部分業務機台的性能,但是沒有軟體的硬體是毫無用處的,所以必須要有 ROM 映像檔配合執行,這種 ROM 檔跟其它任何一種商業軟體一樣都具有版權,因此如果您並不擁有原始機台而去使用它們,乃是違法的行為。不言而喻,這些 ROM 檔不能連同 MAME 一起散佈,將 MAME 和 ROM 映像檔一起散佈的行為已經違反了著作權法,應該盡速向這些作者回報,以便採取適當的法律措施。

軟體費用[编辑]

MAME 是免費的,其原始碼也是免費的,但在2016年3月更改授權許可前不允許銷售。

軟體授權[编辑]

MAME 是公開原始碼的免費軟體(Freeware),雖然使用其軟體及原始碼完全免費,也可以重新分配,但卻不允許銷售,也不允許製成商業產品或是用於商業活動,故不能歸類為標準的開放原始碼(Open source)自由軟體(Free software),因為在某些授權條例上是有所牴觸的,所有授權規範一切依照官方制定的 MAME 授權協議页面存档备份,存于互联网档案馆)為準則。按照理查德·斯托曼的说法,MAME是准自由软件(Semi-free Software)。

不過在特定情況下,無論是修改或是未修改過,且「再次散佈的情形下不得被販售,或者是被用於商業產品及活動」,MAME 即能以原始碼或是執行檔的形式再次散佈。但另外修改過的再次散佈版(衍生版本)必須包含完整的對應原始碼(類似 Copyleft)。參考 MAME 授權協議页面存档备份,存于互联网档案馆)。

MAME已於2015年5月開始更改其授權許可,至2016年3月止已改爲使用BSD licenseGNU GPL v2+,成爲真正的自由軟體

工作原理[编辑]

MAME 由多個元件組成,包含:中央處理器模擬器,用以模擬各種街機中的 CPU 裝置;輸入系統模擬,用以模擬各種街機輸入設備,例如按鈕、搖桿、光線槍和其他控制器的輸入系統;街機顯示和聲音的模擬器。MAME 唯一不包含的是 ROM 映像,也就是原始街機遊戲中的軟體。在 MAME 運行時,就如同多年前的原本遊戲在運行,只不過是在不同的設備上,以模擬原始設備的方式運行罷了。

ROM 的定義[编辑]

在大多數的街機中,遊戲資料(包含了執行的程式、圖形及音效等)都是儲存於遊戲機板上的唯讀記憶體Read-Only Memory)晶片裡(因此這些資料被簡稱為 ROM),當然也有採用其他儲存媒介的,像是卡匣磁片硬碟光碟鐳射光碟等。將儲存於其中的遊戲資料讀出後儲存成為一般電腦使用的檔案格式,這個過程稱為轉儲或吸出(dumping)。因為大多數遊戲資料都是儲存於唯讀記憶體,漸漸地不管這些檔案原先是被儲存於怎樣的媒介,吸出後的檔案都通稱為 ROM 映像檔或 ROM。

在要執行某一特定的遊戲時,MAME 就需要這些吸出自原始街機的整組檔案,這一整組的檔案稱之為「ROM 集合」,但是礙於法規 MAME 不會自帶這些檔案。

ROM 存放形式[编辑]

  1. 一般的 ROM 集合。將一個遊戲中所包含的全部吸出資料後,以壓縮方式存放於一個內定名稱的 ZIP 格式壓縮檔(也可以未壓縮方式存放於同名的資料夾)。
  2. CHD 的 ROM 集合。只針對遊戲中包含硬碟、光碟的大型儲存媒介,將單一媒介中的資料吸出為映像檔後,再壓縮為單一 CHDCompressed Hunks of Data)格式的壓縮檔。

ROM 集合類型[编辑]

  1. 原作版遊戲 ROM 集合,又稱之為主版本。這些 ROM 檔包含供遊戲執行所需要的所有資料,但不包含 BIOS 檔案。
    MAME 開發團隊會訂定每種遊戲的原作版,通常都是挑選最新的版本當成原作版,如果有多種區域版本的話,則通常挑選世界版或是美國版。
  2. 仿製版遊戲 ROM 集合,又稱之為子版本。與原作版本有差異的版本,或是變體版(例如 Street Fighter II TurboStreet Fighter II Champion Edition 的變體版)。包含有:替換版 (alternate)、盜版 (bootleg)、駭客版 (hack)、解密版 (decrypted)、衍生版 (derivative)、開發版 (prototype)、複製版、相容版、授權版、變體版、新舊版、各種區域版、各種語言版等。
    通常會被歸類為仿製版和原作版此兩者相依性關係的遊戲,主要原因在於這些遊戲的 ROM 結構有雷同的內容,所以便將其中之一個歸類為該另一個遊戲的子版本。仿製版的遊戲一定會有一個原作版,原作版遊戲卻不一定帶有仿製版、而有些原作版遊戲還帶有一個以上的仿製版。
  3. BIOS 的 ROM 集合,這是通用於標準化的街機系統(例如 NeoGeo),主要用於啟動硬體,然後交由遊戲軟體接管系統。

ROM 取得管道[编辑]

  1. 如果擁有實際的街機遊戲基版及 EPROM 吸出工具,可自行讀出這些 ROM 檔案。
  2. 部分像是 CapcomAtari 公司提供自家已淘汰的老舊街機遊戲 ROM 販賣服務,採個別販售或是包含於其他產品中。
  3. 還有一些 ROM 集合因為遊戲的版權持有人開放了在非商業行為下的自由散佈權利,這些集合可以在 MAME 網站页面存档备份,存于互联网档案馆)上取得(例如 Robby Roto)。

外部連結[编辑]

官方網站[编辑]

衍生版本[编辑]

相關資料[编辑]

引用資料[编辑]

  1. ^ Release MAME 0.264. 2024年3月26日. 
  2. ^ 存档副本. [2011-06-26]. (原始内容存档于2013-02-20). 
  3. ^ MAME | Multiple Arcade Machine Emulator. Mamedev.org. 2011-04-05 [2011-04-11]. (原始内容存档于2018-10-05).