MAME v0.184 is released.
MAME stands for
Multiple Arcade Machine Emulator. When used in conjunction with images of the original arcade game’s ROM and disk data,
MAME attempts to reproduce that game as faithfully as possible on a more modern general-purpose computer.
MAME can currently emulate several thousand different classic arcade video games from the late 1970s through the modern era.
What’s news in MAME:
MAMETesters Bugs Fixed
– 04454: [Crash/Freeze] (saturn.cpp) seabass: Black Screen after patents screen (Angelo Salese)
– 06337: [DIP/Input] (mz2500.cpp) mz2500: The HELP key is missing (einstein95)
– 06361: [Cheat System] Cartrdige memory accessed directly with cheats will crash MAME (Pugsy)
– 06492: [Crash/Freeze] (model3.cpp) scud: Crash running scud with -bench 90, regression. (Phil Bennett)
– 06504: [Misc.] (coleco.cpp) coleco and clones, adam: Wrong device interface name (gordon-fish)
– 06512: [Graphics] (seattle.cpp) hyprdriv: Occasionally, when the race starting, the 3D graphic objects start to glitch and
disappear, game become unplayable (R. Belmont)
– 06513: [Crash/Freeze] (gba.cpp) gba: Many previously working gba sl_roms now freeze (R. Belmont)
New working machines
Ampro Computers Little Board/186 [Carl, Al Kossow]
Coleco Quiz Wiz Challenger [hap, Sean Riddle, Rik]
Conic Electronic I.Q. [hap, Sean Riddle]
CXG Chess 2001 [hap, Berger]
Micro Genius IQ-501 [kazblox]
Micro Genius IQ-502 [kazblox]
Shiny Golds [caius, The Dumping Union]
USG/Tandy 2-Player Football [hap, Sean Riddle]
New working clones
2 On 2 Open Ice Challenge (rev 1.2A) [Brian Troha, Sean Sutton, Smitdogg, The Dumping Union]
Chesster Challenger (V1.3) [yovan]
Dendy Classic 2 [kazblox]
Dynablaster / Bomber Man (bootleg, set 3) [Hammy, The Dumping Union]
Fidelity Designer 2100 [hap]
Fidelity The Excellence (model EP12, set 2) [yovan]
Fidelity The Par Excellence (rev. B) [hap]
Flashgal (set 1, Kyugo logo) [Corrado Tomaselli, The Dumping Union]
Gals Panic (MCU Protected, set 2) [Hammy, The Dumping Union]
Granit ‘S’ [hap]
Kishon Chesster [yovan]
Milton Bradley Simon (Rev F) [Sean Riddle]
NBA Play By Play (ver AAB) [alca]
Phoenix (IDI bootleg) [f205v]
Radical Radial (Japan) [ShouTime, The Dumping Union]
Raiden II (Germany) [caius, The Dumping Union]
San Francisco Rush (boot rom L 1.06A) [Andrew Welburn, The Dumping Union]
Shanghai III (US, prototype) [coolmod, The Dumping Union]
Street Fighter II: The World Warrior (World 910129) [Janniz]
Super Crowns Golf (World) [Kevin Eshbach, The Dumping Union]
Machines promoted to working
Novag Constellation Forte (version B) [hap]
Heathkit H-19 [Mark Garlanger]
HP-9845C [f.ulivi, Angus Kueckes]
SM 7238 [shattered]
Clones promoted to working
Heathkit H-19 w/ Super-19 ROM [Mark Garlanger]
Heathkit H-19 w/ Watzman ROM [Mark Garlanger]
New machines marked as NOT_WORKING
Alchemist (01J02046, Venezuela) [Heihachi_73]
Bachelorette Party (BHG1248, US) [Heihachi_73]
Caprice Pro-Action Baseball [hap, Sean Riddle]
Cowboy 8 Ball [PinMAME]
Disco Dancing [PinMAME]
Dream Weaver (0200586V, NSW/ACT) [Heihachi_73]
Eltec Eurocom II V7 [shattered]
Fast Fortune (0100651V, NSW/ACT) [Heihachi_73]
Haunted Hotel [PinMAME]
Jumpin’ Joey (0100383V, NSW/ACT) [Heihachi_73]
King Kong [PinMAME]
Lucky Clover (0300109V, NSW/ACT) [Heihachi_73]
Mammoth Money (0100425V, NSW/ACT) [Heihachi_73]
Penguin Pirate (0100674V, NSW/ACT) [Heihachi_73]
Reel Power (0100400V, NSW/ACT) [Heihachi_73]
Rushin Rooster (0100534V, NSW/ACT) [Heihachi_73]
Silver Wolf (0100673V, NSW/ACT) [Heihachi_73]
Snow Cat (0100405V, NSW/ACT) [Heihachi_73]
Soreike! Anpanman Popcorn Factory (Rev B) [ShouTime, Anonymous Donator, The Dumping Union]
Space Ship [PinMAME]
Subor SB-486 [kazblox]
Thor (0200319V, NSW/ACT) [Heihachi_73]
Thunder Heart (0200333V, NSW/ACT) [Heihachi_73]
Time Machine (LTD, 4 players) [PinMAME]
Trick Shooter [PinMAME]
USG Programmable Baseball [hap, Sean Riddle]
Viking King [PinMAME]
White Force [PinMAME]
Wicked Winnings (0100553V, NSW/ACT) [Heihachi_73]
Wild Angels (0100337V, NSW/ACT) [Heihachi_73]
Yukon Gold (03J00191, NSW/ACT) [Heihachi_73]
Zoofari [R. Belmont, Sean Sutton, Smitdogg, The Dumping Union]
New clones marked as NOT_WORKING
Boot Scootin’ (GHG1008-03, US) [Heihachi_73]
Cash Cat (0100557V, NSW/ACT) [Heihachi_73]
Cash Cat (0100676V, NSW/ACT) [Heihachi_73]
The Chariot Challenge (0100787V, NSW/ACT) [Heihachi_73]
Desert Bloom (0300111V, NSW/ACT) [Heihachi_73]
Dolphin Treasure – Cash Express (AHG1519, US) [Heihachi_73]
Dolphin Treasure – Cash Express (AHG1607, US) [Heihachi_73]
Griffon (Olympia bootleg of Phoenix) [f205v, The Dumping Union]
Harley Davidson (L-2) [PinMAME]
Karnov (Japan, bootleg with NEC D8748HD) [The Iron Goat]
King Galah (0100536V, NSW/ACT) [Heihachi_73]
Loco Loot (0100473V, NSW/ACT) [Heihachi_73]
M82 Display Unit (PAL) [kazblox]
Magic Mask (AHG1549, US) [Heihachi_73]
Magic Touch (0300455V, NSW/ACT) [Heihachi_73]
Mine, Mine, Mine (0400115V, NSW/ACT) [Heihachi_73]
Money Mouse (0300469V, NSW/ACT) [Heihachi_73]
Mountain Money (0100289V, NSW/ACT) [Heihachi_73]
Orchid Mist (0100849V, NSW/ACT) [Heihachi_73]
Oscar (0100348V, NSW/ACT) [Heihachi_73]
OutRun 2 Special Tours (GDX-0014) [Ordyne, The Dumping Union]
Penguin Brothers (Japan, bootleg) [Rod_Wod, Team Europe and The Dumping Union]
Penguin Pays (0100113V, NSW/ACT) [Heihachi_73]
Penguin Pays – Penguin Pucks (EHG1257, US) [Heihachi_73]
Penguin Pirate (0200578V, NSW/ACT) [Heihachi_73]
Pot O’ Gold (U.S. Games, v580F) [deathmock]
PPG Waveterm A [shattered]
Queen of the Nile (0101139V, NSW/ACT) [Heihachi_73]
Queen of the Nile (0101707V, Brazil) [Heihachi_73]
Queen of the Nile (04J00784, Venezuela) [Heihachi_73]
Queen of the Nile – Cash Express (AHG1525, US) [Heihachi_73]
Queen of the Nile – Cash Express (AHG1609, US) [Heihachi_73]
San Francisco Rush: The Rock (Wavenet, boot rom L 1.38, GUTS Aug 19 1997 / MAIN Aug 19 1997) [Andrew Welburn, The Dumping Union]
San Francisco Rush: The Rock (Wavenet, boot rom L 1.38, GUTS Aug 6 1997 / MAIN Aug 5 1997) [Andrew Welburn, The Dumping Union]
Skins Game Tournament Edition [mrsinister]
Super Bucks III (0100711V, NSW/ACT) [Heihachi_73]
Sweethearts II (0200465V, NSW/ACT) [Heihachi_73]
Time Machine (LTD, 2 players) [PinMAME]
Thunder Heart (0200334V, NSW/ACT) [Heihachi_73]
Tropical Delight (0100269V, NSW/ACT) [Heihachi_73]
Time Traveler (set 2) [Ordyne, The Dumping Union]
Unicorn Dreaming (0100813V, NSW/ACT) [Heihachi_73]
Wangan Midnight Maximum Tune 2 (Export) (GDX-0016) [Ordyne, The Dumping Union]
Zephy (alternate set) [PinMAME]
New working software list additions
archimedes: Over 20 games and applications [Nigel Barnes]
bbcb_flop: Disk User coverdisks, Bad Apple and X-Pansions Elevation demos [Nigel Barnes]
bbcm_flop: Enjoy The Silence and Retribution X demos [Nigel Barnes]
c64_cass: speakeasy [Dagarman]
Bivouac, Chuck Yeager’s Advanced Flight Trainer, Double Dragon (5.25″, older), EDITEXTE,
Indianapolis 500: The Simulation (3.5″, newer), Label Magic, Licence to Kill, Multitexte, Pick’n Pile, Prehistorik,
PrintMaster Plus, Rockford, Skweek
Adaptec EZ-SCSI 3.1 German, AMouse Driver Disk v7.0, Borland Eureka 1.0, Borland Paradox 3.01 (German),
Borland Paradox 4.0 (German, 2 versions),
IBM DOS 5.02 (German), MS-DOS 6.22 (German), Windows 3.1 (German), Windows for Workgroups 3.11 (German)
megadriv: TOm and Jerry (Jpn) [ElBarto]
nes: Magic Kid GooGoo [kazblox]
ti74: Maths and Finance cartridges [PockEmul]
vic1001_cass: speakeasy (partial dump) [Dagarman]
New software list additions marked as NOT_WORKING
Ikari Warriors (alt), First Samurai, JetFighter I: The Adventure, Turbo Driver [breiztiger]
-Changed games to use 4-way joysticks. [AJR]
* assault, bagman.cpp (all games except squasitsa), bballs, darktowr, ddungeon, horekid, klax, maddonna, pushman, stoffy, supduck,
toffy, trog (trogpa4 prototype uses different inputs)
-tms1024/tms1025: Added input callbacks and read handler. [AJR]
* docastle.cpp: Read inputs through TMS1025.
-hanaroku: Added NVRAM and hopper. [AJR]
-feversoc: Added coin hopper output (prize hopper doesn’t quite work). [AJR]
-hp9845b: Use standard instance names (and type) for optional ROMs. [AJR]
-merit.cpp: PSG type is AY-3-8912. [AJR]
-Converted screen_device VBLANK callback to devcb_write_line. [AJR]
* Renamed screen_eof_xxx to screen_vblank_xxx in many drivers.
-lastbank: Added coin counters. [AJR]
-Added skeleton device for Video System C7-01 GGA. [AJR]
-taito_z.cpp: Fixed subtle color pen bug in Mexico GP stage for Continental Circus. [Angelo Salese]
-8x300dasm: Corrected JMP target addresses. [Barry Rodewald]
-Work around bug in msys2 C runtime causing garbage on console with DInput controllers. [Brad Hughes]
-abc80: Converted to scanline based rendering, fixed graphics characters, and fixed sound. [Curt Coder]
* Genesis Project demos (abcdemo, hiresinv) are now fully working.
-Ambush: Cleaned up driver state. [Dirk Best]
-ay8910: Added a write handler for the case of bc1=a0 and bc2=a1. [Dirk Best]
-blockade: Rewrote driver: [Dirk Best]
* Removed fake interrupts, rewrote coin handling, corrected CPU type.
* Used screen raw parameters and generic 8x8x1 gfx layout.
-popper: Got some meat back onto the bones: [Dirk Best]
* Made full memory map for main and sub CPUs derived from schematics.
* Added both DIP switches with proper defaults.
* Hooked up interrupt generation logic.
* Decoded character and sprite layout, draw character tilemap.
* Added raw screen parameters (to be verified).
* Hooked up inputs and flip screen.
* Fixed audio hookup.
-HP9845C improvements: [f.ulivi, Angus Kueckes]
* Expanded from 1 to 4 I/O slots.
* Allowed RAM size to be configured with -ram option.
* Implemented HP-9845C driver (color version of the 9845 range of machines).
* Improved 9845C lightpen emulation.
* nanoprocessor: Fixed a subtle bug in interrupt handling.
-n64 updates: [Happy]
* Added short delay between RDP full sync and DP interrupt, allowing RSP IRQ to arrive first.
* Let debugger disassembly windows track RSP PC.
* Flush RSP DRC cache when SP DMA changes IMEM.
* Make element selection in vector load/store RSP DRC C functions consistent with other implementations.
* Fix a minor issue with RDP disassembly listing for Load Block.
-mips3 DRC : Ensure branch delay slot instruction is not virtual instruction before trying to generate code to add it to the block
checksum, fixed FPU register aliasing. [Happy]
-z80sio: Added i8274/upd7201 variants, refactored interrupts, improved logging. [Joakim Larsson Edstrom]
* isbc: Changed to use z80sio.cpp i8274 device instead of z80dart.cpp’s, removed m1_r() workaournd.
-fcisio: Added layout and and RS232 configured for terminals on all 8 serial ports. [Joakim Larsson Edstrom]
-netlist: Added a heap priority queue, fix netlist stats collection, fixed new clang warnings, reduced footprint of extended clock.
-Decoded popper color PROMs. [Joe Magiera, couriersud]
-sdk86.cpp: Fixed ROM loading. [Lord Nightmare]
-pes.cpp: use combined /RS and /WS function since the MCU/CPU can in theory change both lines at once, and since it uses a TMS5220C
it does matter in this case. [Lord Nightmare]
-segas32.cpp: Added uPD7725 DSP with ROM loading to Air Rescue (disabled for now). [Lord Nightmare]
-upd7725: Added preliminary IRQ support, corrected SI/SO bit order, added SIACK/SOACK registers, fixed save state registration,
fixed reset state. [Lord Nightmare]
-Fixed an off-by-one error when loading upd96050 roms for SNES games. [Lord Nightmare]
-potgoldu.cpp: Added undumped MCU as NO_DUMP. [Lord Nightmare]
-konmedal/tsukande: Add clock XTAL definition for the Z80 CPU, divisor is guessed. [Lord Nightmare]
-Heath H19: Fixed keyboard, fixed handling of enable/disable of 25th line, use internal MM5740 ROM, fixed H-19 with Watzman ROM,
fixed Super19. [Mark Garlanger]
-ti99: Various fixes for TI-99/4 (not A). [Michael Zapf]
* Added initializations fixing crash on startup, fixed GROM issues (clock turned off too early).
-geneve: Fixed issue with sector read on HFDC without implied seek (did not check CRC and failed to switch density). [Michael Zapf]
-ti99/geneve: Made bus mouse now separate device, may also be used with evpc. [Michael Zapf]
-ti99/geneve: Fixed jerky mouse movement. [Michael Zapf]
-ti99_8: Fixed debugging for TI-99/8. [Michael Zapf]
-Softlist/slot improvements: [Nathan Woods]
* Fixed an issue where device options (e.g. -cart) were reported as unknown when they actually worked.
* Do more softlist evaluation upfront and use results to drive slot/image setup.
* Added device_slot_interface::has_selectable_options() to determine whether a particular slot has selectable options.
-Added a new addrmap.cpp validity check intended to catch AM_REGION declarations not tied to anything meaningful. [Nathan Woods]
-CoCo: Implemented support for enabling and disabling cartridge-specific sound, made third and fourth floppy drives present by
default. [Nathan Woods]
-CoCo 3: Fixed an issue clearing GIME interrupts (disabling interrupts by writing to $FF92/3 also acknowledges interrupt).
[Nathan Woods, tim lindner, Glen Hewlett]
-6821pia.cpp: changed int to bool where appropriate, changed macros to static functions. [Nathan Woods]
-archimedes: Added JFD floppy format as used by JASPP (Archimedes Software Preservation Project). [Nigel Barnes]
-electron: Added First Byte joystick interface. [Nigel Barnes]
-Made side effect suppression a machine property. [O. Galibert]
-Removed direct update handlers: [O. Galibert]
* a2600, atm (still not working, but less badly), mpf1 (makes step work), mpz80, pentagon, sage2, scorpion, tms32031
-mb86233: Massive disassembler overhaul. [O. Galibert]
-arm7ops.cpp: Advance PC on unimplemented opcodes. [Peter Ferrie]
-apple2: Rewrote language card handling. [Peter Ferrie]
-apple2: Fixed IIe/IIc self-test regression. [R. Belmont]
-apple2: Fixed IIe $C800 arbitration, Zellyn/kqumba tests pass now. [R. Belmont]
-z180: DMA fixes: [R. Belmont]
* Count of 0 means 0x10000, as with other DMA controllers.
* Fixed scheduling so burst mode DMA is always serviced immediately with no CPU ops interleaved.
-gba: Fixed revised copy protection handler to get the right PC (MT6513). [R. Belmont]
-vp101: Added framebuffer, some inputs, ATA, NVRAM, protection cheat; implemented ATA DMA. [R. Belmont]
-MIPS: Added initial support for VR5500 and TX4925 CPUs. [R. Belmont]
-Fixed errors detected by coverity: [shattered]
* argo, unior, x07: CID: 138563-138565 “Overlapping buffer in memory copy”
* pc88va: CID: 138607 “Operands don’t affect result”
* peplus: CID: 138606 “Logical vs. bitwise operator”
* formats/cbm_tap: CID: 138003 “Dereference before null check”
* machine/hdc92x4: CID: 138631 “Operands don’t affect result”
* machine/roc10937: CID: 138793 “Logically dead code”
-tosh1000: Hooked up ROM-DOS. [shattered]
-agat: Split from apple2, implemented basic agat7 hardware. [shattered]
-sm7238: Implemented double-sized characters and smooth scroll. [shattered]
-poisk1: Added more ROMs. [shattered]
-ibm6580: Made memory size configurable and fixed a Coverity finding. [shattered]
-ie15: Converted to a device with frontends (standalone driver and rs232 slot device). [shattered]
-debugger: Print octal addresses in the trace if CPU is octal. [shattered]
-dec_lk201: Added PORT_CHAR/PORT_CODE where missing. [shattered]
-wd_fdc: Tagged command names in debug messages. [shattered]
-Removed tag() argument from logerror() calls in cpu/i86 and floppy code. [shattered]
-bitgraph: Switched from layouts to rotation flags, fixed keyboard. [shattered]
-legacy floppy: Fixed floppy_stp_w. [shattered]
-a7150: De-skeletonized. [shattered]
-t11 cpu: Emulate MFPT instruction; MOV, CLR and SXT read memory before writing to it. [shattered]
-hp_ipc: De-skeletonized. [shattered]
-Commodore LCD: Halved size of character rom region and fixed switching between upper and lower case character sets. [smf]
-Fixed UPD7725 disassembly. [smf]
-zorba keyboard: Mapped remaining keys, documented remaining DIP switches, and added notes on MCU program. [Vas Crabb]
-gotcha/ppchamp/pasha2: Hooked up lamp outputs and add clickable artwork. [Vas Crabb]
-sun3x.cpp: Hooked up keyboard port. [Vas Crabb]
-Fixed natural keyboard mapping for vg9k keyboard (and hence UI paste/autoboot). [Vas Crabb]
* Also fixed key labels and made default mapping match physical layout where possible.
* The “triangle” key isn’t mapped – I don’t know what it does or how to test it.
-Updated GLM to tip of stable branch (0.9.8.5 pre-release) – fixes build with MacPorts clang. [Vas Crabb]
-Make device types self-register: [Vas Crabb]
* MAME now walks all linked device types for -listxml, -romident and -verifyroms whether they’re used or not.
* Made device_creator a variable template.
* Removed screen.h and speaker.h from emu.h and centralised instantiations of screen and speaker finder templates.
* Added basic device validation to -valid checks.
* Substantially sped up -listxml (at least 30% improvement), -verifyroms, and -romident on multiple files.
-Fixed crash on excessive command-line arguments, removed long-dead option. [Vas Crabb]
-ti85.cpp: Convert TI-8x link port to a bus with emulated peripherals, working for TI-82 and TI-85. [Vas Crabb]
* Tee connector, HLE TI-Graph Link, stereo/mono speakers, and raw signal forwarding socket supported.
-Fixed new device validation issues. [Vas Crabb, O. Galibert, AJR]
-triforce.cpp: Fixed Mario Kart 2 ROM loading. [MetalliC]
-naomi.cpp: Dumped and documented 837-14438 hopper controller board (used by Kick’4’Cash and other SWP games).
[big10p, Darksoft, MetalliC]
-Measured Naomi’s MIE MCU speed. [rtw, MetalliC]
-naomi.cpp: Redumped “Noukone Puzzle Takoron (GDL-0042)” and “Virtua Fighter 4 (Rev B) (GDS-0012B)”. [rtw]
-model1: Added dumped internal TGP ROMs. [Caps0ff]
-naomi.cpp: New BIOS dumps:
* “Ferrari F355 Challenge (deluxe, no link)” Export BIOS [Darksoft]
* “Ferrari F355 Challenge (deluxe, no link)” Japan BIOS [Ordyne, The Dumping Union]
* “House of the Dead 2” Japan BIOS [Nomax]
-triforce.cpp: Added security PIC dumps:
* “Mario Kart Arcade GP 2” [Soyandroid, Darksoft]
* “Mario Kart Arcade GP” [Soyandroid]
-taito.cpp: Added program ROMs and corrected title for voleybal. [PinMAME]
-phoenix.cpp: Dumped/redumped PROMs for some of the bootlegs. [f205]
-viper.cpp: Added timekeeper dump for code1db. [ShouTime]
-midwunit.cpp: Redumped “Ultimate Mortal Kombat 3” U2-U5 sound ROMs. [ShouTime]
-Corrected the main crystal in marineb.cpp to 12MHz as seen in PCB photos, cleaned up clock definitions in galaxian driver, moved
ladybugg from galaxold to galaxian driver, use mooncrst_audio for mooncrst in galaxold, made spcwrp use hunchbkg pallette ROMs.
-nes: Added Magic Kid Googoo board (iNES mapper 190). [kazblox]
-Save state fixes for i386/pc_vga/cs4031: [moralrecordings]
* Save cs4031 emulated A20 state, additional i386 attribute registers/flags, and VGA palette configuration.
* Fixed broken VGA port reads on state load.
* Fixed enum range check in i386.
-vicdual: Added nsub gradient simulation (makes black destroyers on the horizon visible). [SailorSat]
-homedata.cpp: Use 8-way joysticks for Reikai Doushi; added button descriptions and DIP locations. [Bad A. Billy]
-Fixed softwarelist cart memory cheats by moving cheat file loading to a later point in startup process. [Pugsy]
-Removed colon from image_interface preventing front-ends from launching ColecoVision software. [gordon-fish]
-ay8910: Added support for clock frequency changes. [tim lindner]
-chihiro.cpp: Redumped Ollie King (GDX-0007). [Ordyne, The Dumping Union]
-konamigx.cpp: Corrected two ROM names and redumped sound ROM for Rushing Heroes. [Smitdogg, The Dumping Union]
-Updated hiscore.dat. [Leezer]
MAME v0.184 Official Binaries
MAME v0.184 Official Binaries x64
MAME v0.184 Official Binaries (debug build)
MAME v0.184 sources