這是歷史版本頁面 — 看 MAME (32-bit) 最新版本

想在家玩老街機遊戲,MAME 能幫上什麼忙

MAME (32-bit) 軟體圖示 MAME (32-bit) 0.188 (32-bit) 資料更新 2017-07-26 閱讀約 5 分鐘

想重溫小時候在街機廳投幣打電動的回憶,上網找了一圈,發現那些經典遊戲幾乎都只能在模擬器上跑。好不容易下載了一個模擬器,打開卻是一堆看不懂的設定,ROM 檔也不知道去哪裡找,搞了半天連遊戲畫面都沒看到,最後只能放棄。

一般人直覺會去搜尋「某某遊戲 下載」,但抓下來的檔案往往不知道該用什麼程式開啟,就算開了也常常黑屏或破音。這類工具的切入點不是「直接給你遊戲」,而是「模擬出當年那台機器的內部硬體」——CPU、音效晶片、顯示晶片全部照原樣模擬,再把你自己準備的遊戲 ROM 丟進去跑。換句話說,它負責把環境做出來,遊戲檔案要自己想辦法。

01MAME 到底能玩哪些遊戲?

它模擬的是大型電玩機台,涵蓋的遊戲範圍很廣,從早期經典到冷門作品都有,官方說明強調連稀有遊戲也包含在內。但要注意,它不提供任何遊戲 ROM,檔案要自己找。能不能跑某個特定遊戲,取決於你有沒有對應的 ROM 檔,以及該遊戲是否已被完整模擬。

02這套軟體要怎麼開始用?

先到官方網站下載安裝,然後準備遊戲 ROM 檔,建議在電腦裡建一個資料夾專門放 ROM,可以依平台或遊戲類型分資料夾整理。開啟程式後,把 ROM 檔拖進視窗或透過指令載入,它就會模擬原始硬體並啟動遊戲。第一次使用會需要摸索一下設定。

03它支援哪些作業系統?

官方資料顯示支援 Windows 7、Windows 8、Windows 10,另外官方說明也提到有 macOS 和 Linux 版本,但這份資料的版本紀錄只涵蓋 Windows 平台。如果你用的是其他作業系統,需要自行到官方網站確認有沒有對應版本。

04遊戲存檔可以保留嗎?

可以。它提供存檔功能,讓你能保存遊戲進度,之後再開來繼續玩。另外也有回放功能,可以在遊戲中倒回之前的操作。這些功能可以透過 MAME 選單或鍵盤快捷鍵來使用,具體按鍵組合需要自己查閱說明。

05手把或搖桿可以接嗎?

可以。它支援鍵盤、滑鼠、遊戲手把,甚至自製控制面板,前提是你有對應的硬體。設定方式是在程式的設定選單裡調整輸入控制,把按鍵對應到你的裝置上。如果你只有鍵盤,也可以直接玩,只是操作手感跟當年街機不同。

06這套軟體適合什麼樣的人?

適合想研究老遊戲硬體運作原理的人,官方說明強調它的核心目的是保存和教學,不只是玩遊戲。也適合對街機遊戲有深厚興趣、願意花時間找 ROM 和設定的人。如果你只是想快速玩到遊戲、不想碰設定,它對你來說可能太複雜。

07新手用這套會不會很挫折?

有可能。官方說明自己就提到「初始設定和配置對初學者可能不太友善」,介面是英文,沒有中文。如果你沒接觸過模擬器,第一次打開可能會不知道從哪裡開始。建議先找網路上的教學文章或影片,照著步驟做會比自行摸索快很多。

08什麼情況不該選這套軟體?

如果你只是偶爾想玩一兩款經典遊戲,不想研究硬體模擬細節,這套軟體對你來說負擔太大。另外,如果你期待打開就能看到遊戲列表、直接點選遊玩,它也不是這種設計。還有,如果你沒有合法取得的 ROM,用它會遇到法律問題,這點要自己注意。

09它跟其他模擬器比起來有什麼不同?

它的重點是「精確模擬原始硬體」,不是只求遊戲能跑,所以對硬體細節的還原度很高。其他模擬器如 Project64 或 Dolphin 分別針對 N64 和 GameCube/Wii,各有各的專門領域。如果你要玩的是街機遊戲,MAME 是主要選擇;如果是家用主機遊戲,應該找對應主機的模擬器。

10電腦配備不夠好跑得動嗎?

官方建議配備是雙核心 2 GHz 以上處理器、4 GB 記憶體、OpenGL 3.3 相容顯示卡,硬碟空間至少 100 MB(不含 ROM)。如果你的電腦符合這些條件,基本上可以跑,但實際流暢度還是要看遊戲本身和你的硬體。太舊的電腦可能跑不動較新的遊戲。

1132 位元和 64 位元版本有什麼差別?

這份資料提供的是 32 位元版本,官方也有 64 位元版本。一般來說,64 位元版本在現代系統上執行效率較好,但 32 位元版本在舊系統上也能運作。如果你的 Windows 是 64 位元,建議到官方網站看看 64 位元版本的資訊,再決定要用哪一個。

12遊戲 ROM 要去哪裡找才合法?

官方說明明確表示它不提供任何 ROM,使用者要自己負責取得合法檔案。合法的來源包括:你擁有實體機台或卡帶、自行從原版媒體備份、或遊戲版權方授權提供的下載。網路上很多 ROM 下載站都是盜版,下載前要自己判斷來源是否合法。

下載與官方連結

前往官方網站 下載 MAME (32-bit)

mame0188b_32bit.exe · 50.1 MB · 連結指向軟體原廠

版本紀錄

再看 5 筆

看完整版本清單

這一版改了什麼

What's new in this version:

MAMETesters Bugs Fixed:
- [Sound] (ddenlovr.cpp) funkyfig, funkyfiga: Missing music and partial sound FX
- [Sound] (polepos.cpp) polepos2: Crowd Cheering sounds are messed up at the chequered flag (goal)
- [Save/Restore] (vegas.cpp) sf2049se, sf2049te: Crashes on reload (-str 8) in a staggered -str 20 run
- [Crash/Freeze] All sets in octopus.cpp, zorba.cpp: Fatal Error when using various terminal/printers in slots
- [Crash/Freeze] (ti99_4x.cpp) All sets in ti99_4x.cpp, ti99_4p.cpp: SuperAMS memory expansion card (samsmem) Fatal Error when mounted
- [Interface] Various problems with software loading/unloading: Various problems with software loading
- [Interface] Regression loading softlist items from the command line with changed slot options
- [DIP/Input] (nbmj8891.cpp) chinmoku: DSW B should not exist
- [Crash/Freeze] (rohga.cpp) schmeisr: Exception on exit
- [Crash/Freeze] (itech8.cpp) ninclown: During final boss Twisto the game can potentially crash
- [Misc.] (mc10.cpp) Emulation of the right-shift and rotate instructions (ASR, LSR, ROR) do not correctly modify the overflow flag
- [Sound] (segas32.cpp) kokoroj2: Missing voice in game
- [Sound] (vgmplay.cpp) vgmplay: Attempting to play a .vgm/.vgz file containing 2 X POKEY does not play back correctly

New working machines:
- A-One Arrange Ball/Tandy Zingo/LJN Computer Impulse
- Blades of Steel (Konami handheld)
- Bucky O'Hare (Konami handheld)
- Double Dragon (Tiger handheld)
- Gauntlet (Tiger handheld)
- Go Go Cowboy (English, prize)
- INTELLEC 4/MOD 4
- INTELLEC 4/MOD 40
- Legend (SNES bootleg)
- Milton Bradley Arcade Mania
- Sonic The Hedgehog (Tiger handheld)
- Space Jam (Tiger handheld)

New working clones:
- Act-Fancer Cybernetick Hyper Weapon (World revision 3)
- Bubble Bobble (prototype on Tokio hardware)
- Cobra-Command (World/US revision 4)
- Deco Cassette System Multigame (ROM based)
- Explorers of Space
- Fidelity Excel 68000 Mach III
- Fidelity Excel 68000 Mach II (rev. C+)
- Game & Watch: Egg
- Golden Poker Double Up (bootleg)
- HP 85
- Kageki (World)
- Logger (Rev.2)
- Nu, pogodi!
- Operation Wolf (Japan, SC)
- Player's Edge Plus (PP0006) Standard Draw Poker
- Return of the Invaders (bootleg no MCU set 3)
- Silk Worm (prototype?)
- Solar Assault (ver JAA)
- [ShouTime, pablopelos, Dullaron, Paul Vining, Jason Wible, Surgeville, Sean Sutton, David Mercer, John Cunningham, Smitdogg,
- The Dumping Union]
- Solar Assault Revised (ver JAA)
- Space Invaders (Nas Corp bootleg)
- Street Fighter II: The World Warrior (Japan 911210, CPS-B-17)
- Super Triv (English questions)
- Taisen Idol-Mahjong Final Romance 2 (Japan, newer)
- Tetris (v341R)
- The Ninja Warriors (World, earlier version)
- Xevious 3D/G (World, XV32/VER.A)

Machines promoted to working:
- Alphatronic PC
- Black Touch '96
- Explorer (DECO Cassette) (US)
- Game & Watch: Mickey Mouse
- Mega Double Poker (conversion kit, version 2.3 MD)
- Ron II Mah-Jongg
- The Roulette (Visco)
- Touch & Go (World)
- World Rally 2: Twin Racing

Clones promoted to working:
- Frogger (bootleg on Amigo? hardware)
- Mega Double Poker (conversion kit, version 2.1 MD)
- Sega Ninja (315-5113)
- Touch & Go (Non North America)
- Touch & Go (earlier revision)

New machines marked as NOT_WORKING:
- Abnormal Check
- Ai-mode - Pet Shiiku
- Block Pong-Pong
- Casino Strip
- Casino Strip IX
- Casino Strip VIII
- Dam Dam Boy
- MAC Jungle
- Mahjong Gal-pri - World Gal-con Grandprix (Japan)
- Mahjong Hanafuda Cosplay Tengoku 6 - Junai-hen (Japan)
- Mahjong Mogitate
- Need for Speed - 4 Cab Link (2 Discs) (v1.0.1 Rev B)
- Need for Speed GT (Hard Drive+2 Discs) (v1.1.0 Rev C)
- Nichibutsu DVD Select (Japan)
- Percussion Freaks 4th Mix (G*A25 VER. AAA)
- PokoaPoka Onsen de CHU - Bijin 3 Shimai ni Kiotsukete! (Japan)
- Renai Mahjong Idol Gakuen (Japan)
- Sharp FontWriter FW-700 (German)
- Super Derby II
- Tsuugakuro no Yuuwaku (Japan)
- VG Pocket Mini (VG-1500)
- VG Pocket (VG-2000)
- Virtua Striker 4 (Export) (GDT-0014)
- Virtua Striker 4 Ver.2006 (Japan) (Rev B) (GDT-0020B)
- VT330
- WaiWai Drive
- War: The Final Assault (EPROM 1.91 Apr 13 1999, GUTS 1.3 Apr 7 1999, GAME Apr 7 1999)
- World Kicks PCB (World, WKC2 Ver.A)
- Yamaha TG100

New clones marked as NOT_WORKING:
- Beat the Clock (with flasher support)
- Commodore PC 10
- Dirty Harry (LF-2)
- Fighting Vipers (Revision B)
- Motocross Go! (MG2 Ver. A, set 2)
- New Super Triv III
- Tazz-Mania (Rodmar bootleg)
- Triv Five Special Edition

New working software list additions:
- abc80_flop: ABCDatastorm
- coco_flop: Pacman (z80 to 6809 Transcoded - v1.01) (512kb)
- gameboy: Sachen 4 in 1 (Euro, 4B-003)

ibm5150:
- Le Manoir de Mortevielle
- Battle Chess, Blades of Steel, Castlevania, Double Dribble, Earl Weaver Baseball, Future Wars - Adventures in Time,
- Gamer's Edge Sampler - Catacomb and Dangerous Dave, Hardball 2, Heroes of the Lance, John Madden Football, King's Bounty,
- Lakers vs Celtics and the NBA Playoffs, Links - Championship Course - Bountiful Golf Course, Links - The Challenge of Golf,
- Mean Streets, Monopoly v2.00 (Shareware), Monty Python's Flying Circus, Ninja Gaiden II, Nova 9, Over the Net, Pharaoh's Pursuit,
- Secret of the Silver Blades, Speedball II, Street Fighting Man, Super C, Superstar Ice Hockey, Superstar Indoor Soccer,
- Superstar Indoor Sports, Superstar Outdoor Soccer, The Cycles, Top 10 Solid Gold Volume II, Wings of Fury, Zool

ibm5170:
- B-17 Flying Fortress, Body Blows, Corncob Deluxe, DOS/V (multiple versions), Dune, Global Conquest, King's Quest V, Lightspeed,
- MS-DOS (Version 6.22, Brazilian Portuguese), Star Trek - 25th Anniversary
- pce_tourvision: Doraemon - Nobita no Dorabian Night, Majin Eiyuu Den Wataru
- x68k_flop: Chourensha 68k (v1.00)

New NOT_WORKING software list additions:
- ibm5150: Boulder Dash Construction Kit
- ibm5170: IBM Personal Computer DOS (Version J5.00/V) (Japanese), PC-DOS (multiple sets using XDF disk format)

Source Changes:
- z8: Fixed disassembly of DECW RR opcode, added more control registers to state for debugger
- Added support for experimental overclocking of sound devices through UI sliders with -cheat enabled
- ym2151, ymf271, namco: Added support for dynamic changes to clock frequency
- Fixed scheduler overflow when a device executes for more cycles than there are in a second
- nibbler, levers: Changed joysticks to 4-way as documented in manuals
- megadpkr: Hooked up 68705P5 MCU, figured out banking, and added timekeeper RAM and inputs
- colt: Fixed colors
- vgmplay enhancements: [AJR]
- Added support for YMZ280B and YMF271
- Fixed clock speed for dual POKEY
- Produce error message when nonexistent file is specified
- froggeram: Fixed PPI accesses allowing sound emulation to work
- listxml enhancements: [AJR]
- Match arguments against device names as well as driver names
- Allowed DTD output for -listxml, -listsoftware and -getsoftlist to be suppressed with -nodtd option
- gunfront: Corrected "Upright Controls" DIP switch - OFF is Single, and should not be the default
- mrdo: Load protection PAL data (not used at the moment)
- mastboy: Changed parallel EEPROM type to "EAROM" (rather than generic NVRAM)
- MC6800: Fixed LSR/ROR/ASR overflow flag generation (N XOR C)
-funystrp: Added serial EEPROM for high score entries
- ygv608.cpp: Added CRTC function, turned IRQs into handler callbacks, added border color
- blackt96.cpp improvements: [Angelo Salese]
- Added flip screen and coin counter support
- Reimplemented text layer as tilemap
- Added notes, promoted game to MACHINE_IS_INCOMPLETE - bugs like the timer not decrementing are actually caused by sloppy coding
- cvs.cpp: Kludged a protection check in Superbike that was resetting the machine under certain conditions
- Also demoted to MACHINE_UNEMULATED_PROTECTION since game can lock indefinitely under a particular condition
- Wrote a new device container for Nichibutsu sound hardware, used by csplayh5.cpp and niyanpai.cpp
- Standardized button layout for PCE bootlegs
- Fixed screen misalignment regression in Bionic Commando
- Added sound samples to PT Reach Mahjong
- socrates: Reimplemented keyboard MCU simulation as a separate timer-driven function
- Fixes issues with super painter and a few other games not recognizing keyboard input
- Also eliminated anonymous timers and keyboard tagmap lookups, and added savestate support
- arkanoid.cpp: Added machine definition for Akranoid bootleg with 68705P3 and AY-3-8910, matching real hardware
- Also added notes about which sets bootlegs are derived from dectalk.cpp: Removed unnecessary driver init and replaced with machine_start, eliminated anonymous timers, and added savestate support
- taitocchip.cpp: Hooked up the four 'ASIC RAM' shared bytes/semaphores/command registers between external CPU and the C-chip, got rid of hack for megablast
- Implemented DIP switches and tweaked inputs for Bubble Bobble prototype so that the stage editor works
- missb2 updates: [Lord Nightmare]
- Fixed OKI read/write bitswap so what seem to be the correct sound effects are played
- Replaced the corrupt OKI ROM dump with the bublpong OKI ROM - all non-corrupted areas are identical
- Added watchdog
- retofinv.cpp: Added original Taito 68705 MCU dump
- Moved bootleg 68705 MCU to its own set, renamed sets to make it more obvious which are bootlegs
- Verified XTAL, dividers, and SN76489A type from PCB pictures
- Added missing original color PROMs and allowed video/retofinv.cpp to use either those or the single bootleg color PROM
- Added correct palette weighting for all dec8 games
- Made DECO RM-C3 into a device used by dec8 and karnov.cpp games
- Fixed colours in Crude Buster (verified against real hardware); added documentation to cbuster.cpp
- pc9801: Moved cbus to bus and added WIP mpu401 support
- plugins/cheat updates: [Carl]
- Poll for setting hotkeys
- Link simple cheats
- Added Motorola MC14411 Bit Rate Generator device
- fccpu1 updates
- Updated LOG system and replaced CLOCK_SIGNAL_HANDLER with real MC14411 BRG device
- Added machine configuration for baud rates for all three serial ports using MC14411 device
- Added newer version of firmware Force Debugger v1.1
- 68340: Added configuration macros and callbacks for 8-bit ports A and B, updated LOG system
- sda5708: Added layout support and state saving
- sda5708: Added layout with generated bezels and program snippet to redo it as a comment
- dbox: Added sda5708 matrix display layout (displays version number on start but hangs shortly thereafter)
- ti99: Changed Hexbus chaining; moved Hexbus up one level (from bus/ti99 to bus)
- Overhauled MAME options handling
- The new options system is more dynamic and should detect errors earlier
- The slot menu now shows updated options in response to selections made by the user
- Added a menu listing existing state files displayed when choosing a position to save/load
- Any position may be selected with keyboard 0-9/A-Z or joystick buttons
- Existing positions may be selected using UI navigation controls
- Made the length parameter for debugger 'load' command optional (defaults to length of file), converted code from stdio to iostream
- MC6847: Fixed "Semigraphics 6" mode on CoCo/MC-10 (issue reported by Jim Gerrie)
- Displays "stripes" for video bytes $00-$7F because INT/EXT is asserted but A/S is not, and there is no external ROM
- Cleaned up the MC-10 driver
- Fixed regression in ROM loading that resulted in not all actual hashes being printed on mismatch
- sdl: Added SDL_WINDOW_BORDERLESS for fullscreen, required by some Linux window managers
- dvdisasm: Simplified by decoupling information creation and display rendering
- debugcpu: Eliminated direct() from read_opcode
- options: Set the value when setting the default as before
- mameopts: Don't lose the system inipath when looking for hashpath
- dimemory: Lifted cap on number of address spaces per device, renamed AS_DECRYPTED_OPCODES to AS_OPCODES
- Fixed media option numbering with custom instance names (github issue 2468)
- cbuster.cpp: Added a x3 hack to the YM2203 clock frequency to fix incorrect pitch
- Improved -romident performance by dynamically allocating large arrays at device_start time
- m377xx: Added preliminary M37720 support
- alphatro improvements
- Added correct banking and partial floppy support
- Corrected motor on and FDC reset
- Corrected number of driver (real machine only has two), and fixed B: drive
- output: Fleshed out network output provider to have the same capabilities as legacy Win32 provider
- Messages are of form "verb = value1"; "hello = 1" on successful connection, "mamerun = 0" on shutdown
- Send "send_id = n" to query IDs where n=0 means machine shortname, and n=1-? are output node names
- Rewrote MCS-40 (4004/4040) emulation/disassembly
- Added support for all 4040 features besides interrupts
- Split address/status, RAM/ROM ports, and program memory into separate address spaces
- Emulated 8-clock instruction cycle, interruptible at any point, bus signals exposed
- Converted inputs to input lines, added callbacks for chip select outputs and 4008/4009/4289 signals
- Made disassembly output closer to what ASL accepts as input
- Allowed 4-bit registers to be set independently through the debugger
- Added INTELLEC 4 driver with support for MOD 4 and MOD 40 variants
- Supports TTY, PROM programmer, and all front-panel debugging features using clickable artwork
- Supports PROM, program/data storage and high-speed paper tape reader cards
- Updated flicker to use new MCS-40 core and improved emulation
- Re-implemented I/O based on how hardware actually works (wasn't possible with previous 4004 core)
- Corrected flicker RAM size, removed NVRAM, and connected playfield lamps and operator adjustments
- Added save state support
- Layout system improvements
- Made scripts do substantial validation of layouts at build time
- Drop views that don't validate at runtime rather than entire layouts to help machines with terminals connected by default
- Cleaned up serial, matrix keyboard and TI-8x link protocol interfaces
- Switched to delegate timers and moved state registration to post-start, making implementations a bit less error-prone
- Made device_memory_interface own its address space objects
- Made parent/clone loops raise a fatal error rather than hanging in a loop appending to a string
- Made internal UI list missing/incorrect files when audit fails
- Cocoa debugger improvements
- Save/restore window positions/sizes/splits/scrolling/expressions/focus (excluding device info viewer)
- Fixed scroll jump on clicking a memory/disassembly view that's been scrolled while unfocused
- Made XML file a specialisation of data node that can be easily managed with smart pointers, and added a method for copying a data node/subtree into a different tree
- Fixed fatal error on selecting a software part with internal UI, and made software parts menu sort by name
- Cleaned up Gaelco protection MCU interface device

hh_sm510 artwork updates:
- Added background vector graphics to gnw_ml102
- Improved gnw_mw56 SVG screen and added background graphics
- Improved gnw_jr55 LCD segments
- Added background graphics to nupogodi.svg
- Added background graphics to gnw_dm53.svg
- segas16b.cpp: Replaced goldnaxe2 317-0122 i8751 bad dump with working redump from undamaged chip and removed simulation code
- segas32.cpp: Redumped kokoroj2 sound data ROM
- Improved WD2010 emulation
- Better feedback on cylinder positions, almost all checks pass except low level tests expecting manufacturer or diagnostic tracks
- Added Commodore D9060 82S137 PROM dumps
- r9751: Added preliminary SMIOC device with 8237 DMA controllers and RS-232 ports
- Added an external panel for the Ensoniq VFX family of keyboards, with a websocket interface and an HTML/Javascript implementation that can be served over HTTP
-Fixed QT 5.5.1 for Ubuntu 14.04 "Trusty Tahr" (allows Travis CI build to complete)
- naomi.cpp: Dumped earlier Sega Gun Board firmware
- opwolf, opwolfa, opwolfj, opwolfjsc, opwolfu: Added C-chip dumps (game-specific EPROM still bad)
- Touch & Go, World Rally 2, TH Strikes Back: Dumped DS5002FP security modules, replaced simulation
- Created Taito C-chip device and used in asuka.cpp, opwolf.cpp, rbisland.cpp, taito_f2.cpp, taito_x.cpp and volfied.cpp
- srdarwin: Replace MCU simulation with internal ROM dump
- Using real dump for srdarwin, and hand-modified version to satisfy srdarwinj
- Fixes incorrect behaviour for 6th boss (no longer skips first form)
- Split decocass state class up so that the dongle types aren't polluting base class
- Also added support for bootleg multigame and fixed regression caused by change in draw order
- tehkanwc.cpp: Fixed DIP switches for tehkanwcd (different setup to other sets); added DIP switch locations for all sets in driver
- Identified DIP switches for a number of DECO Cassette sets
- Irem M62 cleanups
- Split PROM regions up by function (legacy from when MAME only allowed a single PROM region per system)
- Made use of multiple palettes and gfxdecode structures
- upd7810, upd7811: Added internal address maps
- gaelco/ds5002fp updates
- Made ds5002fp store battery-backed internal RAM and SFR registers as NVRAM
- Made SFR defaults configurable in ROM loading like NVRAM defaults
- Made external SRAM persistent as well (some games store scores etc. in it)
- Cleaned up Touch & Go dump and added preconfigured internal RAM
- Created device for Gaelco protection module and removed remaining simulation code
- Decrypted SEGA_315_5133 used by 'seganinja' set
- Shares identical code with other sets, just encryped with a different key
- Add DIP switches to Tsukande Toru Chicchi
- Initial HP series 80 emulation
- Working HP-85A with 16kB RAM, including Capricorn CPU, keyboard, CRT text/graphics modes, timers, and beeper
- DC100 cassette, extension ROMs, I/O modules, and integrated printer are not supported
- ITT3030: Corrected 70-track drive type, and added 35-track drive type and format definition
- Added Commodore PC10-III ROM dumps collected by German vintage computer forum users
- Added original Commodore PC 10/PC 20/ PC 30 in two BIOS variants
- Fixed default DIP switch settings for Parodius
- Enhanced Emscripten support
- Fixed save/load support and scheduled exit
- Improved main loop, simplified integration points, and made JavaScript entry points static members of running_machine
- Exposed soft_reset, hard_reset, exit load and save functions, allowing more control of emulation session from JavaScript
- Fixed #include path with USE_LIBSDL on macOS
- Hooked up ibm5150 softlist to compc and europc drivers; changed europc to use single built-in 3.5" drive
- snk.cpp: Added PAL dumps to victroad
- wolfpack: Fixed missing Torpedo trail
- z80scc: Added basic wait/DMA request support, renamed WRDY to WREQ to match datasheet

ncr5390 improvements:
- Improved initiator transfer information logic
- Split transfer count/counter
- Added rudimentary 53C90A/53C94 support
- Reworked initiator transfer information state machine, should now support all SCSI phases
- Improved handling of DMA/non-DMA commands
- Added an undocumented hack to make InterPro work
- Implemented interrupt status flag in status register for 53C90A (critical for InterPro)
- Improved tcounter and DMA/DRQ handling
- Corrected tcounter and transfer count zero handling (based on transfers to/from SCSI bus, not DMA)
- Prevent fifo over/underrun, requires restarting state machine from dma_r()/dma_w()
- Corrected bus/function complete with FIFO (interrupt only when it empties, but state detected based on SCSI bus)
- Clear status, istatus and sequence when reading istatus (not status) with active interrupt
- Tweaked DRQ behaviour - only assert if there is insufficient data in FIFO
- nscsi_hd: Corrected INQUIRY command handling when a non-zero LUN is requested
- interpro: Got SCSI working and other improvements
- Reworked DMA, added eth registers
- Improved 5390 device, removed legacy 539x SCSI stuff
- Passes all iogadiag tests if bus error hack is enabled
- Implemented basic serial DMA
- Switched to ncr53c94
- Initial preparation for Ethernet implementation
- Implemented timer-based DMA
- Implemented i82586 Ethernet MAC, ~90% complete
- Improved wheel board on Midway Seattle and Vegas, and added layout for sf2049
- sun1: Replaced console hack with upd7201 device
- chihiro.cpp: Added Quest of D Firmware Update DVD dump
- freekick.cpp: Dumped color PROMs for Omega (Nihon System), correcting the colors
- Redumped Time Limit color PROMs
- shootaw2: Added dumped EEPROM image
- Added skeleton driver for Yamaha TG100 MIDI module
- H8/520 CPU is not implemented, sound chip is Yamaha YMW258-F (likely to be identical to Sega MultiPCM)
- Game Boy/Super Game Boy improvements
- Added Super Chinese Land 1.2.3' to MBC1 Collection check code
- Fixed MMM01 zero-adjust logic for ROM bank
- Fixed Super Game Boy VRAM transfers and removed border ha
- Fixed various code style and comment issues
- macpci: Added more Pippin ROM sets
- retofinv.cpp: Added DIP switch locations and documented edge connectors
- wrally.cpp: Added World Rally PCB layout
- targeth.cpp: Added PCB layout, defined CPU clocks in terms of OSC/resonator, corrected OKI clock, and corrected Target Hits v1.1 program ROM labels
- stv.cpp: Corrected Taiwan BIOS label
- sms.xml updates
- Fix The Terminator by adding their on-cart RAM
- Added notes for games with SK-1100 keyboard support
- Corrected Great Baseball (Euro, USA, Bra) release year
- Corrected Teddy Boy Blues (Jpn, Ep-MyCard, Prototype) and Ghost House (Sega Card, Prototype) interface types
- kinst.cpp: Updated hardware info
- abcheck: Added default EEPROM so the game boots without going into service mode first
- Updated compiling instructions for Fedora Linux
- Updated hiscore.dat
- Added -output option to documentation with description of available choices
- megasys1.cpp: Added information regarding R&T (Rod-Land Prototype)
- SDL sound: Fill buffer with silence on underrun