這是歷史版本頁面 — 看 MAME (64-bit) 最新版本
想玩懷舊街機遊戲,MAME 能做些什麼
你最近是不是突然很想玩小時候在雜貨店或大機台前投幣玩過的那幾款街機遊戲?可能是格鬥、射擊或大型電玩,但現在這些機台早就消失,網路上找到的遊戲畫面又模糊不清,不然就是下載到來路不明的檔案,根本不知道怎麼開始。你只是想重溫那個手感,卻卡在「不知道從哪裡找遊戲」和「找到之後怎麼跑起來」這兩步之間。
一般人會先想到去抓模擬器,但模擬器百百種,有的只支援特定主機,有的設定複雜到要改一堆參數,還有的根本跑不動。更麻煩的是,就算模擬器裝好了,遊戲 ROM 要放哪裡、怎麼設定按鍵、畫面為什麼是黑的,這些問題沒人解釋,最後只能放棄。這類工具真正的切入點,是模擬原始機台的硬體,讓舊遊戲在現代電腦上重現,但前提是你得先搞懂它的基本邏輯,才有辦法順利玩到遊戲。
01MAME 是什麼?它能玩哪些遊戲?
MAME 是一套模擬大型電玩機台的開源軟體,官方說明指出它收錄超過一萬個遊戲 ROM,涵蓋動作、射擊、格鬥、益智等多種類型。它不只是一套遊戲,而是模擬當年機台的硬體,讓那些老遊戲能在現代電腦上跑。要注意的是,軟體本身不附遊戲,你需要自行準備 ROM 檔,而且 ROM 的合法性取決於你是否擁有原版遊戲,這點要自己確認。
02它怎麼做到畫面跟聲音跟以前一樣?
它的做法是盡可能精確模擬原始機台的硬體元件,包括處理器、顯示晶片和音效晶片,所以畫面、聲音和操作感會貼近原版。官方說明強調這種精確度是它的核心目標,不是只把畫面放大或套濾鏡。不過,精確模擬的代價是某些遊戲可能需要額外的 BIOS 檔才能正常執行,這在官方 FAQ 中有提到,你需要在網路上找對應的 BIOS 並放進指定資料夾。
03可以自己設定按鍵嗎?我想用搖桿玩。
可以。官方功能說明提到,它提供控制設定,你可以把鍵盤、遊戲手把或搖桿對應到機台的按鍵。設定方式是從主選單進入控制選項,逐項指定你要用的輸入裝置。如果你用的是大型搖桿,通常會被辨識為遊戲手把,設定起來不難。但要注意,不同遊戲的按鍵配置可能不同,你可能需要針對每款遊戲個別調整,這在初次設定時會花一點時間。
04玩到一半可以存檔嗎?我怕打不過。
可以。它支援儲存遊戲狀態,讓你可以隨時暫停並存檔,之後再從同一個進度繼續。另外還有倒帶功能,玩到一半失手可以往回退幾秒,重新挑戰。這兩個功能對練技術很有幫助,尤其是那種一失誤就要重來的關卡。使用方式很直覺,從選單或快捷鍵就能觸發,不需要額外設定。
05畫面在現在的螢幕上會不會很模糊?
它支援高解析度顯示,可以將遊戲畫面縮放到現代螢幕的原始解析度,官方說明指出這樣能維持視覺品質。你也可以套用圖形濾鏡來調整畫面,讓像素看起來更平滑或更接近舊螢幕的質感。不過,實際效果取決於你的螢幕和顯示卡,如果你的顯示卡不支援 OpenGL 3.3 以上,可能無法使用某些顯示功能,這在系統需求中有提到。
06我只有一台普通電腦,跑得動嗎?
官方列出的系統需求是雙核心 2 GHz 以上處理器、4 GB 記憶體、100 MB 可用空間,以及 OpenGL 3.3 相容的顯示卡。以這個標準來看,近十年的電腦大多符合。但要注意,某些較新的遊戲或需要大量模擬的機台可能對效能要求更高,實際跑起來順不順,還是要看你執行的遊戲和電腦配備。如果你只是玩早期的 2D 遊戲,一般文書機應該沒問題。
07我完全沒碰過模擬器,會不會很難上手?
官方說明強調它的介面設計以簡單和易用為目標,主選單乾淨直覺,可以快速瀏覽遊戲庫和調整設定。但官方 FAQ 也坦承,初始設定對新手可能有點門檻,尤其是要搞懂 ROM 檔要放哪裡、BIOS 是什麼、為什麼有些遊戲開了沒畫面。如果你願意花一點時間看教學或社群討論,通常一兩個小時內可以搞定。如果完全不想碰設定,這套軟體可能不適合你。
08我收藏了很多舊遊戲光碟,可以用它玩嗎?
官方資料沒有提到支援光碟讀取或實體媒體的功能,它主要設計是讀取 ROM 檔,也就是從機台或卡帶中抽取出來的檔案。如果你有舊光碟,可能需要先轉成 ROM 格式,但這部分官方沒有提供相關說明,你需要自行確認轉檔工具和格式相容性。如果你的遊戲是大型電玩機台,通常沒有光碟,而是用 ROM 晶片,這點要特別注意。
09我想跟朋友線上對戰,它支援嗎?
官方說明明確指出,它本身沒有內建線上多人功能。不過,官方 FAQ 提到有第三方工具可以做到線上連線對戰,但這些方法需要額外的設定和網路知識,不是裝好就能用。如果你只是想跟朋友在同一台電腦輪流玩,那沒問題;但如果是想透過網路連線對戰,你得另外找工具,而且不一定每款遊戲都支援。
10我只有手機,可以用它玩嗎?
官方說明指出,這套軟體主要設計給桌面系統,也就是 Windows、macOS 和 Linux。雖然有 Android 版本,但那是另外的變體,不是這套 64 位元版本。官方 FAQ 也提到,手機版本可能有特定的需求和限制,你需要在安裝前確認相容性。如果你主要是用手機玩,建議先查清楚 Android 版的支援狀況,再決定要不要裝。
11我擔心法律問題,用 ROM 會不會違法?
官方 FAQ 說得很清楚:軟體本身是合法的,因為它是模擬器,不侵犯著作權。但 ROM 的合法性取決於你所在的地區,以及你是否擁有原版遊戲。如果你有原版機台或卡帶,在某些地區可能可以合法使用 ROM;如果沒有,下載 ROM 可能違反著作權法。官方建議你查閱當地法律再決定,這部分沒有標準答案,你要自己判斷。
12我比較想玩任天堂或 PS 的遊戲,它適合嗎?
官方說明指出,MAME 的目標是模擬大型電玩機台,不是家用主機。如果你想玩的是任天堂或 PlayStation 的遊戲,這套軟體幫不上忙,你應該找對應的模擬器,例如 Dolphin Emulator 或 Project64 這類專門模擬特定主機的工具。MAME 的遊戲庫雖然超過一萬款,但都是街機遊戲,這點要先確認清楚,才不會裝了之後發現遊戲類型不對。
下載與官方連結
mame0186b_64bit.exe · 52.4 MB · 連結指向軟體原廠
版本紀錄
- 2026-07-31 MAME 0.289 (64-bit) 83.6 MB
- 2026-05-29 MAME 0.288 (64-bit) 81.9 MB
- 2026-03-31 MAME 0.287 (64-bit) 97.1 MB
再看 5 筆
- 2026-02-25 MAME 0.286 (64-bit) 96.6 MB
- 2026-01-30 MAME 0.285 (64-bit) 96.3 MB
- 2025-12-31 MAME 0.284 (64-bit) 96 MB
- 2025-11-29 MAME 0.283 (64-bit) 95.7 MB
- 2025-10-31 MAME 0.282 (64-bit) 95.2 MB
這一版改了什麼
What's new in this version:
MAMETesters Bugs Fixed:
- 00599: [DIP/Input] (m72.cpp) poundfor: You can't move the arrows on the menu screens to choose the other boxer or game (AJR)
- 06103: [Documentation] (taitopjc.cpp) optiger: The correct description is "Operation Tiger (Ver 2.14 O)" (sjy96525)
- 06540: [Crash/Freeze] (hh_tms1k.cpp) bshipb: [debug] Assert when starting emulation (Robbbert)
- 06541: [Crash/Freeze] (laserbat.cpp) laserbat, lazarian: [debug] Assert when starting emulation (Robbbert)
- 06542: [Crash/Freeze] (toratora.cpp) All set in toratora.cpp: [debug] Assert when starting emulation (Robbbert)
- 06544: [Crash/Freeze] (didact.cpp) can09: [debug] Assert when starting emulation (Robbbert)
- 06547: [Crash/Freeze] (tv990.cpp) All sets in tv990.cpp: [debug] Assert when starting emulation (Robbbert)
- 06555: [Crash/Freeze] (apple2.cpp) All sets in apple2.cpp, apple2e.cpp: Mounting ezcgi9938 or ezgui9958 into any slot causes
- Fatal Error (AJR)
- 06558: [Interface] agat7 and others: mame -verifyroms not working for agat7 and 129 other sets (Nathan Woods)
- 06560: [Crash/Freeze] (coco3.cpp) All sets in coco12.cpp, coco3.cpp: Loading cartridges from softlists locks up emulator
- Nathan Woods)
- 06575: [Debugger] DEBUGGER: MAME crashes when given the 'symlist' command in the debugger (Nathan Woods)
- 06587: [Sound] (model1.cpp) vf: Loss of Sound (AJR)
- 06589: [Graphics] (namcos1.cpp) puzlclub: Title Screen corruption (Ivan Vangelista)
- 06591: [Interface] (ksys573.cpp) All sets in ksys573.cpp: Exception when attempting -listxml (Nathan Woods)
New working machines:
- Fidelity Sensory Chess Challenger 6 [hap, yoyo_chessboard]
- Game & Watch: Mario's Cement Factory [hap, Sean Riddle, JonasP]
- Gunstar Heroes (Mega Play) [colour thief, brizzo]
- Hashire Patrol Car (J 990326 V1.000) [BillD, ShouTime, rtw, Sean Sutton, Smitdogg, MetalliC, The Dumping Union]
- Jang Taku (V 1.3) [system11, The Dumping Union]
- Jockey Club II (v1.12X, older hardware) [Luca Elia, Gerald (COY), ANY]
- Minitel 2 [Jean-Francois DEL NERO]
- Novag Constellation Forte (version A) [Berger]
- Player's Edge Plus (PS0629) Double Hot Peppers Slots [Brian Troha]
- Revenger '84 (newer) [Andrew Welburn, Craig Anstett, Angelo Salese]
- Space Cyclone
- David Haywood, Nicolas Francfort, Sean Sutton, Tourniquet, ShouTime, Anonymous Donator, ranger_lennier, David Stevens,
- Mr. Goodwraith, John Wilke, Paul Vining, Ryan Gatto, rtw, Jan Stuhler, Rod_Wod, Elliott Kipper, Greg Stout, *=/STARRIDER=*,
- Ross Esposito, Paul Gaulton, Chris Heflin, Anonymous Donator from Switzerland, Fabien Marsaud, Surgeville, krick, B2K24,
- Anonymous Donator from Italy, David Jorge, Andrea Babich, Ciacchi Stefano, Mucci, gamez fan, Brian Troha, VFR750P, anonymous,
- Mr. Anonymous from Outer Space, InsertMoreCoins, Game Preservation Society, dax_PL, Russell Howard, Peter Wilhelmsen,
- Sebastien Monassa, f205v, Smitdogg, Gerald (COY), Brian Sutherland, The Dumping Union]
- Zone 60 (Jungle Soft / Ultimate Products (HK) Ltd) [RebeccaRGB]
New working clones:
- Bagman (Taito) [ShouTime, The Dumping Union]
- Bucky O'Hare (ver JAA) [ShouTime, The Dumping Union]
- Cadillacs and Dinosaurs (Asia TW 930223) [yuic]
- Captain Silver (Japan, revision 1) [Apocalypse, The Dumping Union]
- Craft II+ [Datassette, R. Belmont]
- Dottori-Man Jr. [hap]
- Heathkit H-19 w/ ULTRA ROM [Mark Garlanger]
- Jackal (bootleg, Rotary Joystick) [f205v, The Iron Goat]
- Jockey Club II (v1.01, older hardware) [Luca Elia, Gerald (COY), ANY]
- Jockey Club II (v1.10X, older hardware) [Luca Elia, Gerald (COY), ANY]
- Jockey Club II (v2.03X RC, older hardware, prototype) [Luca Elia, Gerald (COY), ANY]
- Jockey Club II (v2.00, newer hardware) [Luca Elia, Gerald (COY), ANY]
- Jockey Club II (v2.01X, newer hardware) [Luca Elia, Gerald (COY), ANY]
- Jockey Club II (v2.04, newer hardware) [Luca Elia, Gerald (COY), ANY]
- Jockey Club II (v2.20X, newer hardware) [Luca Elia, Gerald (COY), ANY]
- King of Boxer (Japan) [ShouTime, The Dumping Union]
- Mahjong Yarou [BET] (Japan, set 2) [system11, The Dumping Union]
- Mandinga (bootleg of Amidar) [Josele Fernandez]
- Mega Force (US) [ShoutTime, The Dumping Union]
- MegaTouch XL 6000 (Version r04) [arbee]
- Mouse Trap (version 4, bootleg) [f205v]
- Nebulous Bee [Ivan Vangelista]
- Nibbler (rev 7) [CraftyMech]
- Ojanko Club (Japan, set 2) [Yasuhiro Ogawa]
- Pang (bootleg, set 5) [Gerald (COY), ShinobiZ]
- Penky (Italian) [ShouTime, The Dumping Union]
- Phoenix (Hellomat Automaten bootleg) [unknown]
- Rastan Saga (Japan Rev 1) [Michel BLANCO]
- Real Mahjong Haihai (Japan, older) [system11, The Dumping Union]
- Shiritsu Justice Gakuen: Legion of Heroes (Japan 971216) [ShouTime, The Dumping Union]
- Space War (Leisure and Allied) [Kaizen]
- Space Wipeout [Andrew Welburn]
- Speak & Spell (Spanish, prototype) [hap, Sean Riddle, David Viens]
- Star Sweep (World, STP2/VER.A) [Coolmod/Bill D]
- Super Street Fighter II: The Tournament Battle (Asia 931005) [idc/Team Avalaunch]
- Tatacot (JA 951128 V1.000) [BillD, ShouTime, Sean Sutton, Anonymous Donator, Smitdogg, The Dumping Union]
- Top Landing (Japan) [ShouTime, The Dumping Union]
- Touchmaster 2000 (v4.XX3 Spanish Evaluation) [Brian Troha, The Dumping Union]
- Touchmaster 3000 (v5.02 Spainish) [Brian Troha, The Dumping Union]
- Touchmaster 3000 (v5.XX Standard AMOA Evaluation) [Brian Troha, The Dumping Union]
- Wonder Boy (set 6, 315-5179) [Mathieu Patard]
Machines promoted to working:
- 7 Smash [David Haywood]
- Contra (handheld) [hap, Sean Riddle]
- Game & Watch: Boxing [hap, Sean Riddle]
- Game & Watch: Donkey Kong II [hap, Sean Riddle, Reinier]
- Game & Watch: Mickey & Donald [hap, Sean Riddle, O. Galibert]
- Gradius (handheld) [hap, Sean Riddle]
- Heated Barrel (World version 3) [O. Galibert, Angelo Salese, David Haywood, Tomasz Slanina, David Graves]
- Legionnaire (World) [O. Galibert, Angelo Salese, David Haywood, Tomasz Slanina, David Graves]
- Lone Ranger (handheld) [hap, Sean Riddle]
- Mahjong Yarou [BET] (Japan, set 1) [Guru, Ivan Vangelista]
- MegaTouch XL (Version R1, prototype?) [R. Belmont]
- MegaTouch XL 6000 (Version r07) [R. Belmont]
- Microman Battle Charge (J 990326 V1.000) [MetalliC]
- Poker Genius [AJR]
- Technical Bowling (J 971212 V1.000) [MetalliC]
- Teenage Mutant Ninja Turtles (handheld) [hap, Sean Riddle]
- Top Gun (handheld) [hap, Sean Riddle]
Clones promoted to working:
- Galaxy Wars (Taito) [Kaizen]
- Heated Barrel (Electronic Devices license) [O. Galibert, Angelo Salese, David Haywood, Tomasz Slanina, David Graves]
- Heated Barrel (US) [O. Galibert, Angelo Salese, David Haywood, Tomasz Slanina, David Graves]
- Heated Barrel (World old version) [O. Galibert, Angelo Salese, David Haywood, Tomasz Slanina, David Graves]
- Heated Barrel (World version 2) [O. Galibert, Angelo Salese, David Haywood, Tomasz Slanina, David Graves]
- Jockey Club II (v1.00, older hardware) [Luca Elia, Gerald (COY), ANY]
- Jockey Club II (v2.05, newer hardware) [Luca Elia, Gerald (COY), ANY]
- Legionnaire (Japan) [O. Galibert, Angelo Salese, David Haywood, Tomasz Slanina, David Graves]
- Legionnaire (US) [O. Galibert, Angelo Salese, David Haywood, Tomasz Slanina, David Graves]
- MegaTouch XL 6000 (Version r02) [R. Belmont]
- T.T. Defender [ShouTime]
New machines marked as NOT_WORKING:
- A-Plan [Guru]
- Acorn Communicator [R. Belmont]
- Betting Zoo - Mr. Cashman (0251064, US) [Heihachi_73]
- BPM Microsystems BP-1200 [Lord Nightmare]
- Buccaneer (0252523, US) [Heihachi_73]
- Canyon Rose (AHG1463, US) [Heihachi_73]
- Chrysler Electronic Voice Alert (11-function) [hap, Sean Riddle, David Viens]
- Cyber Arcade 120-in-1 [David Haywood]
- Diamond Destiny (AHG1533, US) [Heihachi_73]
- Dragon Treasure (Rev B) (GDS-0030B) [f205v, rtw]
- Dream Hunting (US) [ShouTime, The Dumping Union]
- Football Power [ArcadeHacker, The Dumping Union]
- Fortune Fever (BHG1566, US) [Heihachi_73]
- Hog Wild (US) [ShouTime, The Dumping Union]
- InterAct 32-in-1 [David Haywood]
- InterAct 8-in-1 [David Haywood]
- Jumping Beans (0100161V, NSW/ACT) [Heihachi_73]
- Lexibook Compact Cyber Arcade [David Haywood]
- Mushiking The King Of Beetles 2004 Second (Japan) [f205v, rtw]
- One For All (0101503V, New Zealand) [Heihachi_73]
- Quest of D Oukoku no Syugosya Ver. 3.02 [ShouTime]
- Quest of D The Battle Kingdom [ShouTime]
- Return of the Samurai (10117211, NSW/ACT) [Heihachi_73]
- Royal King Jang Oh 2 (v4.00 1984 Jun 10th) [system11, The Dumping Union]
- Scatter Magic III (0452569, US) [Heihachi_73]
- Shoot Away II [R. Belmont, Surgeville, Sean Sutton, Smitdogg, The Dumping Union]
- Sweet Liberty Deluxe (AHG1575, US) [Heihachi_73]
- V-Dog (prototype) [David Haywood]
- Wild Coyote (AHG1515, US) [Heihachi_73]
- dreamGEAR 75-in-1 [David Haywood]
- dreamGEAR My Arcade Portable Gaming System (DGUN-2561) [David Haywood]
- dreamGEAR Wireless Motion Control with 130 games (DGUN-2500) [David Haywood]
New clones marked as NOT_WORKING:
- Bachelorette Party (BHG1579, US) [Heihachi_73]
- Big Ben (20126911, NSW/ACT) [Heihachi_73]
- Big Red (1J009211, NSW/ACT) [Heihachi_73]
- Capcom Vs. SNK 2 Mark Of The Millennium 2001 (GDL-0008)
- rtw, Eunice Rodriguez, Surgeville, Jacob Kesinger, Smitdogg, The Dumping Union]
- Cash Crop (0300447V, NSW/ACT) [Heihachi_73]
- Dragon Treasure (Rev A) (GDS-0030A) [f205v, rtw]
- Dynamite Jack (CHG1562, US) [Heihachi_73]
- Enchanted Forest - Cash Express (CHG1536, US) [Heihachi_73]
- Geisha - Jackpot Carnival (0351033, US) [Heihachi_73]
- Helen of Troy (1J008311, NSW/ACT) [Heihachi_73]
- Inca Sun (DHG1577, US) [Heihachi_73]
- King Penguin (20109021, NSW/ACT) [Heihachi_73]
- Koala Mint (CHG1573, US, set 2) [Heihachi_73]
- Loco Loot (AHG1513, US) [Heihachi_73]
- Margarita Magic (EHG1559, US, set 2) [Heihachi_73]
- Mountain Money (BHG1465, US) [Heihachi_73]
- Mountain Money - Cash Express (AHG1629, US) [Heihachi_73]
- Party Gras (AHG1568, US) [Heihachi_73]
- Peacock Magic (0151352, US) [Heihachi_73]
- Penguin Pays (0300113V, NSW/ACT) [Heihachi_73]
- Pompeii (0151158, US) [Heihachi_73]
- Queen of the Nile (0301059V, Holland) [Heihachi_73]
- Queen of the Nile Special Edition (20102811, NSW/ACT) [Heihachi_73]
- Special Forces Elite Training (v01.02.00) [ShouTime, R. Belmont, The Dumping Union]
- Star Trek: Voyager (stand-up version 1.002) [ShouTime, The Dumping Union, R. Belmont]
- Sun & Moon (0251303, US) [Heihachi_73]
- Super Bucks II (0300006V, NSW/ACT) [Heihachi_73]
- Teenage Mutant Ninja Turtles (1.04) Germany [PinMAME]
- Thrill Drive 2 (ver JAA) [ShouTime, The Dumping Union]
- Toucan Tango (0301388V, Holland) [Heihachi_73]
- Unicorn Dreaming (BHG1584, US) [Heihachi_73]
- Wild Thing (0201176V, NSW/ACT) [Heihachi_73]
New working software list additions:
- cgenie_cass: Colour Frog, Synthesizer (TCS), Colour-Zap Ver 1.0 (TCS), DIG-BOY (TCS) [Juergen Buchmueller]
ibm5150:
- Arkanoid 2: Revenge of Doh, Crime Wave, Prince of Persia (5.25", v1.1), Operation Wolf, Terminator 2: Judgment Day [ArcadeShadow]
- Ferrari Formula One, Savage [breiztiger]
- ibm5170: Dark Seed, The Secret of Monkey Island [ArcadeShadow]
- ibm5150, ibm5170: Many IBM PC-DOS sets [Justin Kerk]
- t1000: MS-DOS (Version 2.11, Tandy version 02.11.24), MS-DOS (Verson 3.30, Tandy Version 03.30.20) [Justin Kerk]
- z80ne_cass: 27 known titles in 1200, 600 and 300 Baud variants [Reagan Roush]
- z80ne_flop: 39 known titles [Reagan Roush]
New NOT_WORKING software list additions:
- gba_ereader: Doubutsu no Mori Card-e (Series 1 and Series 2 cards) [Shideravan]
Translations added or modified:
- Hungarian [Lothar Serra Mari]
Source Changes:
- seibucop.cpp: Fixed Legionnaire / Heated Barrel scenery walking bug (a different 138e is used). [Angelo Salese]
- epos.cpp: Several changes to The Dealer, Revenger '84 and Beastie Feastie hardware: [Angelo Salese]
- Fixed RAM based colors.
- Added backup RAM support.
- Added flip screen support.
- m14.cpp: Revised PT Reach Mahjong, making it actually work: [Angelo Salese]
- Added ball and paddle screen drawing, green background as per flyer pictures, and flip screen support.
- Added reach button and updated input labels.
- k054321: Implemented as a device. [O. Galibert, Phil Bennett]
- z180: Fixed obvious typo detected by Coverity, thanks Coverity. [O. Galibert]
- Added a mechanism for devices to generate clocks for other devices: [AJR]
- Made set_unscaled_clock and set_clock_scale not call notify_clock_changed unless the device has been started.
- Made owner-derived clocks update whenever the owner's clock changes, including at configuration time.
- Add clock_update_delegate type to represent device-generated clock outputs that may be dynamically modified.
- Model implementation of this is the CLK output in I8085A.
- Partially rewrote uPD4701 device and hooked it up to a few Sega games. [AJR]
- Added uPD4701A device to cabal (trackball sets), calibr50, eaglshot, horshoes, poundfor and wwallyj. [AJR]
- segae.cpp: Added PPI and coin counters. [AJR]
- Made MC-8123 into a device. [AJR]
- megatech.cpp: Fixed Free Play regression. [AJR]
- arabfgt: Replaced protection MCU simulation with emulation of actual program. [AJR]
- taito_l.cpp: More MB8421, less HOLD_LINE (fixes sound in evilston). [AJR]
- acommand: Use tilemap device. [AJR]
- daytona: Added feedback driver board (including ROM). [AJR]
- fresh: Added some sound. [AJR]
- liberate.cpp: All PSGs are AY-3-8912A. [AJR]
- mrflea: Use PPIs for interboard communication and PIC for sub interrupt. [AJR]
- model1.cpp: Worked around race condition that caused vf to lose sound. [AJR]
- Causes swa to show an error message before booting normally due to poor I/O board emulation.
- Fixed bug that permanently disabled some UI search strings when they were cleared. [AJR]
- Copy longname, manufacturer, year, filetype, etc. for image info in all softlisted cases. [AJR]
- Made -listroms display a user-friendly message when no ROMs are required. [AJR]
- Improvements to romcmp: [AJR]
- Identify plain ASCII text files as such.
- If a ROM has the same data in each half, print the hashes for that.
- Avoid buffer overruns.
- For calculating address masks, don't assume file size to be a power of 2.
- Replace linenoise-ng with a simpler port that uses a different UTF-8 parser. [Carl]
- plugins/console: Improved suggested completions. [Carl]
- luckgrln.cpp: Added DIPs and layout for 7smash, promoted to working. [David Haywood]
- Preliminary steps for basic VT03 (NES clone) support: [David Haywood]
- Allowed derived classes to extend the PPU functionality to support the basic modes.
- Added VT03 PPU variant and machine driver.
- Moved mc_dgear from nes.xml to this driver and added several dumps.
- Added some support for cybar120 extended sprite addressing.
- mitchell.cpp: Fixed NVRAM saving. [David Haywood]
- scyclone.cpp updates - promoted to working: [David Haywood]
- Added sprite colours and preliminary starfield (no twinkle, uncertain star positions).
- Documented probably hardware collision feature.
- Added preliminary flipscreen support.
- Added sound - discrete section missing.
- Added save state support.
- ojankohs: Rewrote input handling: [Dirk Best]
- Added missing player 2 controls.
- Verified and removed non-existent keys from games.
- Added DIP switch locations to all games and identified some unknown DIP switches.
- Cleaned up and corrected code, and removed runtime tagmap lookups.
- Hooked up PPI(s) for chinsan, igspoker, jackie, megaphx, thief and upscope. [Dirk Best]
- chinsan: Merged with mayumi driver, general improvements and cleanup: [Dirk Best]
- Cleaned up inputs and added flip flop and statistics buttons.
- Identified coinage and demo sound DIP switches.
- Set YM2203 clock to a more likely 10MHz/8.
- Hooked up interrupt enable, flip screen and NVRAM.
- thief: Verified XTALs and cleaned up machine configurations. [Dirk Best]
- megaphx: Replaced PIC16C54 MCU simulation with emulation using existing dump. [Dirk Best]
- Also cleaned up DIP switches, added DIP locations, and added documentation.
- Added new SN54/74166 8-Bit Parallel-In/Serial-Out Shift Register device. [Dirk Best]
- ym2203: Fixed crash on fatal errors. [Dirk Best]
- emupal: Added error handling and allowed palette region name to be overridden. [Dirk Best]
- Replaced some custom palette initialisation functions with appropriate standard callbacks. [Dirk Best]
- ui: Added ability to select different tilemap categories in tilemap viewer with page up/down keys. [Dirk Best]
- via6522 updates, adds support for external clock: [Joakim Larsson Edstrom]
- Refactored shifter, adding support for more features and fixing a few bugs.
- Tuned shifter IRQ timing to be more cycle accurate.
- Fixed the flank timer value, which improves but doesn't completely fix the vectrex regression.
- z80scc: Implemented Reset Tx Interrupt Pending Command (fixes virtpool). [Joakim Larsson Edstrom]
- Added support for Seiko S-29X90 16-bit EEPROMs. [Luca Elia]
- Seta ST-0020 updates: added 4 tilemaps and switchable resolution - ST-0032 video on par with ST-0020. [Luca Elia]
- jclub2.cpp: Jockey Club II updates: [Luca Elia]
- Split sets by software revision.
- Added default EEPROMs and documented the procedure.
- Finished I/O and added layout for on-screen keyboards.
- Added sound communication.
- Fixed backgrounds and colors.
- Added hopper-like mode to ticket dispenser device. [MetalliC]
- ti99: Improvements to peripheral handling: [Michael Zapf]
- Rearranged bus/ti99 subtree, moved classes into namespaces, moved ti99 stuff from ti99x to ti99/internal.
- Split big, all-in-one gromport.cpp into separate device files, introducing "gromport" as a bus of its own.
- Added console connector "ioport" with PEB as slot option - PEB now needs to be plugged into TI-99/4/4A/8.
- Added hack to fish hashpath option out of INI files prior to softlist evaluation. [Nathan Woods]
- Fixed issue in image identification code accessing an empty vector when the hashed data length is zero. [Nathan Woods]
- CoCo: Made 6883 SAM control the root device clock, and changed CoCo devices to use derived clocks. [Nathan Woods]
- Cleanups to ram_device: [Nathan Woods]
- Expose specific options, removing the burden of parsing RAM strings from clients.
- Moved validation of command line arguments out of device_validity_check().
- imgtool updates: [Nathan Woods]
- Cleaned up validity code and transitioned to std::wcerr as Windows doesn't like mixing std::wc(out|err) with printf.
- Fixed issue with 'listfilters' command.
- Extremely basic fix to the imgtool <-> CHD HD bridge (really nees much more work).
- Simplified CHD metadata load since C++11 allows writing to a std::string directly.
- Windows options fixes: [Nathan Woods]
- Removed redundant ";global_inputs".
- Disambiguated "yiqp" abbreviation - YIQ phase count is now "yiqpc" (YIQ pixel clock scaling is still "yiqp").
- Auxiliary verb handling cleanup: [Nathan Woods]
- Fixed a bug where resolved slot/image options would choke -romident.
- Fixed crash when -romident is not supplied any arguments.
- Converted verb handlers to take arguments as a vector of strings.
- Fixed regression preventing -listslots/-listmedia working when slot options are specified.
- Don't strip spaces/quotes from command line arguments, only INI option values. [Nathan Woods]
- Fixed an issue that could cause problems when loading reset_on_load devices from software lists at runtime. [Nathan Woods]
- Miscellaneous cleanup and modernisation: [Nathan Woods]
- Polished up traces of slot options menu's pre-C++ heritage and moved completely private code to an anonymous namespace.
- Created device_slot_interface::slot_name() to wrap pattern of taking the tag and removing the initial colon.
- Changed running_machine::schedule_[load|save]() to take 'std::string &&' instead of 'const char *'.
- Converted running_machine::saveload_schedule to scoped enum.
- Changed 'int ignore_warnings' parameter on core_options::parse_ini_file() to 'bool ignore_unknown_options'.
- Retired min/max in attotime.h in favor of std::[min|max]().
- cgenie: Fixed loading ROMs from softlist in floppy interface. [Nigel Barnes]
- wicat: Added floppy drive and attached software list (not working). [Nigel Barnes]
- z180: Added support for DREQ and TEND signals, and fixed dma0 count and DREQ handling. [BartmanAbyss]
- Fixed two software loading bugs: [Robbbert]
- Fatal error on reset if either a multipart softlist item was loaded, or a single-part item was loaded into a system with more
- than one slot of the same media type.
- Fatal error on non-existent images specified in INI files (bad image is ejected, restoring previous behaviour).
- xbox/chihiro updates: [Samuele Zannoli]
- Migrated PCI devices to new PCI bus framework.
- Made USB peripherals slot devices.
- seattle, vegas: Updated drivers to new PCI bus system. [Ted Green]
- iteagle: Added save state support. [Ted Green]
- vrc5074: Added new Nile 4 System Controller device. [Ted Green]
- Fixed graphics decode issues and improved palette generation in Dodge Man and Battle Cross. [Tomasz Slanina]
- hcd62121: Improved rotate and shift instructions; identified COM and PORT registers; fixed unidasm configuration. [Wilbert Pol]
- H8 improvements: [BartmanAbyss]
- Fixed nstruction eepmov.b (used r4h instead of r4l).
- Added support for non-autorequest DMA (DREQ edge, DREQ level).
- Added support for H8/300H to h8_dma (previously only H8/300S supported).
- Added DMA channels and RTMCSR register to H8/3002.
- Added (partial) correct register mappings to HD6345. [BartmanAbyss]
- hp9845: Added Support for HPI floppy format used for HP-formatted 8" floppy disks. [F.Ulivi, A.Kueckes]
- hp9895: Fixed a segfault when emulating the HP9845 drive (caused by rounding errors). [F.Ulivi]
- hp9845: Display improvements and softkey support: [F.Ulivi]
- Improved text video of 45C, improved graphic cursors of 45C and 45T, and implemented softkeys for 45C and 45T.
- hp9845: Fixed a system freeze when loading memory tester from tape. [F.Ulivi]
- starshp1: Removed hack to restore correct behavior when ships explode. [Frank Palazzolo]
- N64 RSP DRC: Wrap PC to 12 bits in a few more places. [Happy]
- Added support for French Minitel 2 Terminal: [Jean-Francois DEL NERO]
- Added support for TS9347 display processor variant.
- Fixed visible area.
- Fixed random crash in EF9345/TS9347 when drawing characters at right or bottom border.
- Fixed 6800 invalid instruction length/program counter behavior and renamed invalid opcodes. [Jean-Francois DEL NERO]
- This makes goupil g1 Basic work.
- Fixed audio sample ROM mapping and corrected title of Pata Pata Panic. [Katsuhiko Kagami]
- Previously called "Acchi Muite Hoi" based on incorrect auction description.
- InterPro improvements - ip2800 boots to FDM prompt with many memdiag test failures: [Patrick Mackinlay]
- Fixed CPU/MMU ssw bug.
- Added preliminary nscsi support.
- Added preliminary MMU address translation.
- Expanded memory maps for several devices.
- Improved IRQ and DMA handling (still not working properly).
- Stubbed out more SGA registers, added SRARB.
- Added NCR53C94 support to ncr5390.cpp.
- Added start/stop unit command to t10spc.cpp.
- Fixed issue with the Emscripten port where the emulation would continue to run while paused. [Steven Hugg]
- CoCo: Added support for Games Master Cartridge developed by John Linville as slot device. [Tim Lindner]
- Netlist library updates: [Couriersud]
- Changed Solver.PARALLEL parameter definition - 0: no parallelism; 1: one processor parallel; >1: solve n subnets in parallel.
- Refactored OPENMP - all OPENMP operations are now templatized in pomp.h.
- Added 16-bit Galois LFSR generator (used to simulate thermal junction noise in Cheeky Mouse).
- cheekyms: Added netlist-based discrete audio emulation, replacing the placeholder DACs. [Vas Crabb, Couriersud]
- Thanks to Sam Grech for supplying high-quality scans of the schematics.
- monymony, jackrabt: Added netlist for analog processing in melody section of 1B11132 sound board. [Vas Crabb]
- Added a crude TTL Schmitt trigger model that allows input to source current.
- Thanks to Couriersud for fixing a rather stupid typo in the tromba (trumpet) section of the netlist.
- Cassa (bass drum) is currently disconnected as it causes issues with current simulation.
- Mixing melody with speech and SFX is done outside the netlist, and relative levels are probably wrong.
- Wide-ranging modernisation/cleanup: [Vas Crabb]
- Moved static data (short name, full name, source file) out of devices and into device types.
- Moved state class out of MACHINE_CONFIG_START, eliminating need for MACHINE_CONFIG_FRAGMENT and MACHINE_CONFIG_DERIVED_CLASS.
- Made game drivers add machine configuration in the same way as any other device.
- Added support for machine configuration in device members, allowing many internal handlers to be made protected or private.
- Moved many constants used internally by devices out of headers and into source files.
- Converted many constants to scoped enums, and reduced scope of many constants and types.
- Made many callback setters forward the parameter
- Cleaned up many names that are reserved because they begin with _[A-Z] or contain two consecutive underscores.
- Gave many devices more descriptive names, and renamed some device types and classes with overly generic names.
- Untangled fantasy sound and Microprose 3D noise from the driver state classes.
- Converted DECO BSMT2000 ready callback from a function pointer to a device delegate.
- Made many devices use object finders for subdevices rather than doing tagmap lookups later.
- Started to disentangle TI-99 from TI-990 and organised stuff by bus type.
- Made some TI-99 buses use slot/card interfaces properly.
- Turned some of the FM, SID, SCSP DSP, EPIC12 and Voodoo cores into idiomatic C++.
- Factored out some boilerplate for YM chips with PSG.
- Made Z180 table allocation/setup a bit safer.
- Improved encapsulation of Z80DART channels and SNES PPU.
- Converted generic keyboard and terminal to use a device delegate rather than WRITE8 since space/offset/mask aren't relevant.
- Made terminal device dynamically allocate buffer so derived devices (e.g. teleprinter) can specify size.
- Started to break out common parts of Samsung ARM SoC devices.
- Consolidated and de-duplicated forward declarations in src/emu, and removed some obsolete ones.
- Added #include guards to many headers that were missing them, and made many existing ones consistent.
- Removed rarely used output and PTY interfaces from emu.h prefix header.
- Improvements to auxiliary verbs: [Vas Crabb]
- Added support for device sets to -listroms (e.g. mpu401 or m68705p3).
- Added support for multiple names/patterns to -listroms, -verifyroms and -listxml.
- Added check that device short names don't exceed 32 characters in -validate.
- Made -listxml instantiate slot devices as children of slots rather than the root device.
- Improved performance of device type walk by at least two thirds.
- Converted many devices to use machine configuration in member functions. [Vas Crabb, Ivan Vangelista]
- exidy.cpp: Added PROMs from bootleg to mtrap sets as bad dumps. [f205v, Ivan Vangelista]
- Added preliminary Sharp SM590 CPU core. [Lord Nightmare, hap]
- QSound/DL-1425: Updated ROM and comments with corrections from recent decap. [Lord Nightmare, Siliconpr0n, superctr, Quench]
- Williams Special Chip 1/2: Added pinout diagram, clarified abbreviations, and fixed comments about SC1 vs SC2 behavior.
- Sean Riddle, Lord Nightmare]
- Irem audio: Replaced generic latch with more accurate emulation: [Lord Nightmare]
- Fixed missing D7 on sound latch, made device_reset clear latch; fixed case where sound CPU interrupt could be cleared in error.
- epos.cpp updates: [Lord Nightmare]
- Corrected ROM names/comments and added rom types based on PCB pictures
- Noted that revngr84 is a newer set than revenger based on ROM numbering
- Implemented Tristar 9000 hardware AY-3-8910 port A 'multiplexer'
- Switched Tristar 8000 hardware to use AY-3-8912 as shown on schematics
- BP1200: Mostly traced out the SM48D socket module. [Lord Nightmare]
- Added a note and flag indicating that Williams' Mayday has unemulated protection that is currently hacked around. [Lord Nightmare]
- Cleaned up GENie Lua scripts and corrected some header file names. [dankan1890]
- Made software list menu appear if appropriate when starting a machine from the Favorites menu. [dankan1890]
- scyclone.cpp: Redumped bad ROM, dumped PROMs. [ShouTime]
- williams.cpp: Redumped defenderj bad ROM, game now works. [ShouTime]
- stv.cpp: Documented mask ROM version of epr_17951a BIOS. [ShouTime, The Dumping Union]
- Added Japan Dreamcast flash dump. [rtw]
- segas18.cpp: Dumped later version of Shadow Dancer sound CPU ROM, documented main program EPR labels. [rtw]
- by68701.cpp: Added missing ROM dump for flashgdnp1. [PinMAME]
- aristmk4, aristmk5, aristmk5: Added more sets and improved documentation. [Heihachi_73]
- Many dumps were corrupted by being transfered to a UNIX system using FTP mode A
- Updated Taito Power JC and Taito Type Zero descriptions. [sjy96525]
- Added working controls for War: Final Assault and Road Burners. [sjy96525]
- Improved Critter Crusher / Tatacot Gun Control [sjy96525]
- hh_tms1k.cpp: Fix spelling error in cnbaskb description. [Dagarman]
- xbox: Replaced bad dump of MCPX 1.0 ROM with checksums with correct checksums. [Mark Riley]
- Amiga: Use correctly sized boot ROMs for the A1000 (mask ROMs are much larger than the content). [Guru]
- royalmah.cpp: Redumped mjyarou and verified it only has one Z80. [Guru]
- dsoccr94: removed redundant DIP switches. [Bad A. Billy]
- r9751: Added terminal keyboard callback. [Brandon Munger]
- Updated lua engine documentation. [Dan Amador]
- Updated hiscore.dat. [Leezer]
- Removed the minimum sleep time constraint in video_manager::throttle_until_ticks