Fork me on GitHub

MAME 0.287

31 Mar 2026

It’s the end of another month, which means it’s time for another MAME release! As you’d expect, MAME 0.287 includes a wide-ranging array of emulation improvements to a multitude of systems. Interesting changes this month include better Namco System 23 graphics, improved lighting for Sega Model 3, and software-controlled volume control/panning for Philips CD-i (along with improved stability).

The GRiD Compass family has received a keyboard overhaul as well as an initial DAC sound output implementation. The Apple II family now handles tricky raster effects more realistically, as well as getting a substantial software list update (metadata for the MECC collection is in much better shape). And speaking of software lists, a couple of NES prototypes have been added.

As always, you can read about everything that changed this month in the whatsnew.txt file. You can find the source code and 64-bit Windows binary packages linked from our download page.

MAME Testers bugs fixed

  • 06769: [Core] (acorn/bbcm.cpp) bbcm: BCD tests fail on a 65SC02 CPU. (AJR)
  • 08775: [Crash/Freeze] (konami/rungun.cpp) rungun: Changing the difficulty setting causes a fatal error. (jotego)
  • 09203: [Sound] Sound: Persistent popping is audible after a buffer overrun. (hap)
  • 09376: [Graphics] (metro/metro.cpp) vmetal and clones: Elements of the flying ship in stage 6 are misplaced. (cam900)
  • 09395: [Graphics] (misc/sprcros2.cpp) sprcros2, sprcros2a: The background tilemap occasionally shows incorrect tiles. (hap)
  • 09401: [Sound] The SDL 3 sound module does not drop samples on buffer overrun. (R. Belmont)
  • 09402: [Media Support] (sharp/x68k.cpp) x68000: Reading floppy disks does not work. (AJR)
  • 09403: [Color/Palette] (namco/namcos23.cpp) motoxgo: Shinzo is not translucent cyan as he should be. (Ryan Holtz)
  • 09405: [Crash/Freeze] (konami/nemesis.cpp) salamand and clones: The game behaves incorrectly after soft reset. (hap)
  • 09407: [DIP/Input] (snk/bbusters.cpp) bbustersu, bbustersua: DIP switch settings are labelled incorrectly. (Zach S.)
  • 09409: [Timing] (konami/xmen.cpp) xmen6p, xmen6pu: The game runs noticeably faster than it should at some points. (hap)
  • 09410: [Graphics] (namco/namcos2.cpp) marvland: Graphical priorities are incorrect in some places. (cam900)
  • 09411: [Misc.] (galaxian/galaxian.cpp) dingo, dingov: Soft reset appears to have no effect. (hap)
  • 09414: [Documentation] (atari/bzone.cpp) bzone and clones: The title is written without a space in most media. (125scratch)

New working systems

  • MAME 6502 interruptible access unit test [Stuart Inglis]
  • Skat Bierskat Solitaire (F2) [stonedDiscord]
  • Triv III [chaneman]

New working clones

  • Darkstalkers: The Night Warriors (Brazil 940818) [Cassiano Perin, Filipe Nascimento, CPS Raptor Group, SHVB]
  • Express Raider (bootleg) [hammy]
  • Gals Panic 4 (Asia) [f205v, Sean Sutton, Smitdogg, Brian Troha, rtw, The Dumping Union]
  • Ghosts'n Goblins (World? set 2) [Tailsnic Retroworks]
  • Glass (ver 1.0, Break Edition, checksum 13BE832C) [twistedsymphony]
  • Gouketsuji Ichizoku 2 (Japan, Ver. 94.04.08, set 2) [twistedsymphony]
  • Golden Star (Blue version, newer) [anonymous]
  • John Elway's Team Quarterback (rev 1) [coolmod, The Dumping Union]
  • Ms. Pac-Man (Playmark bootleg) [hammy, Trol]
  • Pinball Action (Tecfri, without external display) [Victor Fernandez (City Game)]
  • Power Drift (Japan, Rev A) [lop, Apocalypse]
  • SpecNext Ltd., Victor Trucco, Fabio Belavenuto ZX Spectrum Next: KS1 [holub]
  • SpecNext Ltd., Victor Trucco, Fabio Belavenuto ZX Spectrum Next: KS2 [holub]
  • SpecNext Ltd., Victor Trucco, Fabio Belavenuto ZX Spectrum Next: KS3 [holub]
  • Time Crisis (Japan, TS1 Ver.B) [f205v, Sean Sutton, Smitdogg, rtw, Bill D., Brian Troha, The Dumping Union]

Systems promoted to working

  • Nokia Data MikroMikko 2 M35D [Curt Coder]

Clones promoted to working

  • Dirt Dash (World, DT2 Ver.B) [Bill D., Brian Troha, The Dumping Union]
  • GRiD Computers Compass II 1129 [Valera Klachkov]
  • GRiD Computers Compass II 1139 [Valera Klachkov]

New systems marked not working

  • 4 Asse (F2) [stonedDiscord]
  • 21 Point [stonedDiscord]
  • Agro's Fantastic Video Game (version 2) [Guru]
  • As [stonedDiscord]
  • Astro (Merkur) [stonedDiscord]
  • Big Winner [stonedDiscord]
  • Bistro [stonedDiscord]
  • Club [stonedDiscord]
  • Circus 2 [Ioannis Bampoulas]
  • Cool Gunman (V1.70) [Caldenza]
  • Cranky Condor [unknown]
  • Disc 4000 [stonedDiscord]
  • Disc Fun [stonedDiscord]
  • Disc II Plus [stonedDiscord]
  • Disc Olympia [stonedDiscord]
  • Disc Royal (DOB) [stonedDiscord]
  • Doppel-Sonne [stonedDiscord]
  • Double [stonedDiscord]
  • Draw Poker HI-LO (Americade) [chaneman]
  • Fruit Dream II [hammy]
  • Full House [stonedDiscord]
  • Futbol (set 1) [Javier Valero, Josep Quingles, Recreativas.org]
  • Golden Jubilar [stonedDiscord]
  • Granada [stonedDiscord]
  • Herz As (F10) [stonedDiscord]
  • Huanqiu Dafuweng [little0]
  • Intel Classic/PCI LP "Entrada" (Intel I420EX Aries chipset) [The Retro Web]
  • Jackpot 4000 [stonedDiscord]
  • Jumbo 400 [stonedDiscord]
  • Jumbo Action [stonedDiscord]
  • Komet [stonedDiscord]
  • Lucky Spin 1999 (Ver. A.1) [Ioannis Bampoulas]
  • Mahjong Sweet Academy Special (Japan, P010B-Y05) [hammy]
  • Max [stonedDiscord]
  • Money [stonedDiscord]
  • Multi [stonedDiscord]
  • Multi Prima [stonedDiscord]
  • Multi Star [stonedDiscord]
  • Mystery Jackpot [stonedDiscord]
  • NEC Electronic Tool PI-ET1 [QUFB]
  • Nun Ran [stonedDiscord]
  • Sesam [stonedDiscord]
  • Super Disc [stonedDiscord]
  • Super Herz As [stonedDiscord]
  • Super Jackpot [stonedDiscord]
  • Super Pro [stonedDiscord]
  • Telly Addicts (New Series) (Bellfruit) (Cobra 3) [James Wallace, blueonesarefaster]
  • Texas Instruments Professional Computer [shattered]
  • Thunder V [unknown]
  • Trio [stonedDiscord]
  • Ultraman Club 3 [unknown]
  • Versus [unknown]
  • Wu Lu Fuxing [little0]
  • Xingyun Caishen [little0]

New clones marked not working

  • 4 Asse (F1) [stonedDiscord]
  • Bonus Spin Bonanza (V1.0G) [Ioannis Bampoulas]
  • Disc Royal [stonedDiscord]
  • Fun Station Spielekoffer 7 Spiele [stonedDiscord]
  • Fun Station Spielekoffer 8 Spiele [stonedDiscord]
  • Futbol (set 2) [Javier Valero, Josep Quingles, Recreativas.org]
  • Futbol (test ROMs) [Javier Valero, Josep Quingles, Recreativas.org]
  • Herz As [stonedDiscord]
  • Herz As (F8) [stonedDiscord]
  • Loto-Play (Z80, set 1) [Javier Valero, Josep Quingles, Recreativas.org]
  • Loto-Play (Z80, set 2) [Javier Valero, Josep Quingles, Recreativas.org]
  • Loto-Play (Z80, set 3) [Javier Valero, Josep Quingles, Recreativas.org]
  • Sequential Circuits Prophet-600 (set 2) [Siftware]
  • Super Multi [stonedDiscord]
  • Tarzan (V201FA, alt encryption) [Ioannis Bampoulas]
  • Trumpf As [stonedDiscord]

New working software list items

  • abc1600_flop: ABCenix 5.18 [Curt Coder]
  • abc1600_hdd: ABCenix 5.18 [Curt Coder]
  • apple2_flop_clcracked: 1991-92 MECC Sampler (T-632 version 1.0) (4am crack), Accessing Information Series: MECC Stuff and Fetch (A-138 version 1.0) (4am crack), Accessing Information Series: MECC Trivia Machine (A-139 version 1.1) (4am crack), Business Utilities (A-143 version 1.0) (4am crack), Computers in Teaching (T-612 version 1.1) (4am crack), Displaying Information Series: MECC Graph (A-137 version 1.3) (4am crack), Elementary Volume 1: Mathematics (Games and Drills) (A-702 version 3.4) (4am crack), Elementary Volume 2: Language Arts (A-703 version 3.1) (4am crack), Elementary Volume 4: Math / Science (Ecology, Astronomy, and Arithmetic) (A-705 version 4.2) (4am crack), Elementary Volume 4: Math / Science (Ecology, Astronomy, and Arithmetic) (A-705 version 4.3) (4am crack), Labels, Letters, and Lists (A-144 version 1.0) (4am crack), Labels, Letters, and Lists (A-144 version 1.2) (4am crack), Mathematics Volume 1: Graphing, Logic, and Equations (A-706 version 3.2) (4am crack), MECC Early Learning Series: First-Letter Fun (A-154 version 1.0) (4am crack), MECC Early Learning Series: First-Letter Fun (A-154 version 1.1) (4am crack), MECC Early Learning Series: Paint with Words (A-158 version 1.0) (4am crack), MECC Early Learning Series: Paint with Words (A-158 version 1.3) (4am crack), Sky Lab (A-155 version 1.0) (4am crack), Sky Lab (A-155 version 1.1) (4am crack), Student Stories (A-152 version 1.0) (4am crack), Word Munchers (A-153 version 1.3) (4am crack), Word Munchers (A-153 version 1.4) (4am crack) [4am, A-Noid]
  • apple2_flop_orig: Bluegrass Bluff (A-256 version 1.0) (800K 3.5"), Chemistry: The Periodic Table (A-251 version 1.0) (800K 3.5"), Chemistry: The Periodic Table (A-251 version 1.1) (800K 3.5"), Conquering Math Series: Conquering Math Worksheet Generator (A-260 version 1.0) (800K 3.5"), Conquering Math Series: Conquering Percents (A-210 version 1.0) (800K 3.5"), Conquering Math Series: Conquering Percents (A-210 version 1.1) (800K 3.5"), Conquering Math Series: Conquering Ratios and Proportions (A-209 version 1.1) (800K 3.5"), Conquering Math Series: Decimal Concepts (A-206 version 1.0) (800K 3.5"), Equation Math (A-193 version 1.1) (800K 3.5"), Estimation Collection: Estimation: Quick Solve II (A-259 version 1.0) (800K 3.5"), Exploring Sequences and Series (A-263 version 1.0) (800K 3.5"), EZ Logo: Revised Edition (A-775 version 2.1) (800K 3.5"), Frames: A Reading Comprehension Series: Vacation Nation Travel (A-291 version 1.0) (800K 3.5"), LabelMaker (A-241 version 1.0) (800K 3.5"), The Living Cell (A-278 version 1.0) (800K 3.5"), Mastering Math Series: Diagnostic System (A-149 version 1.2) (800K 3.5"), MECC Copy System / Label Utility (A-7013 version 3.0) (800K 3.5"), MECC Outliner (A-228 version 1.0) (800K 3.5"), MECC Science Inquiry Collection: Cavity Busters (A-284 version 1.0) (800K 3.5"), MECC Science Inquiry Collection: Invisible Bugs (A-218 version 1.0) (800K 3.5"), MECC Science Inquiry Collection: Wood Car Rally (A-214 version 1.1) (800K 3.5"), Sky Lab (A-155 version 1.1) (800K 3.5"), Teacher Option Organizer (A-242 version 1.0) (800K 3.5"), Teacher Option Organizer (A-242 version 1.2) (800K 3.5"), Teaching Scientific Inquiry with Computers (T-638 version 1.0) (800K 3.5"), Time Navigator Around the World (A-277 version 1.0) (800K 3.5"), Time Navigator Leaps Back (A-225 version 1.0) (800K 3.5"), To Preserve, Protect and Defend (A-198 version 1.1) (800K 3.5") [4am, A-Noid]
  • mm2_hdd: Nokia MS-DOS 2.00 Versio 2.21 (Fin) [Curt Coder]
  • nes:
    Galaga (prototype), Magical Puzzle Popils (prototype) [VGHF]
    Galaga (prototype, with recreated graphics) [VGHF, Frank Cifaldi, Rushifell, ndiddy]
    Magical Puzzle Popils (prototype, with recreated sound) [VGHF, Mister Man, ndiddy]
  • spectrum_cass:
    Sooty & Sweep 2 [Dean Hickingbottom, Andy Barker, Darren Melbourne, Steven Brown, The Games That Weren’t]
    Thomas the Tank Engine II: The Race, Thomas the Tank Engine II: The Race (demo) [The Games That Weren’t]
    The Shatered World (incomplete version) [Planeta Sinclair]
    Black Horse, Diseñador de Juegos II (Investronica), Multi-Sports 2: Opera vs. Dinamic, Nonocross (cracked), Oddi the Viking (alt), The Pharaoh's Shadow, Rescate en el Golfo [Spectrum Computing]

Software list items promoted to working

  • mm2_flop: Nokia MS-DOS 2.00 Versio 2.21 (Fin) [Curt Coder]
  • spectrum_cass: Murder (1983, Rabbit Software) [Spectrum Computing]

New software list items marked not working

  • pcfx: Amateur Teikyou CD-ROM (ISA DOS/V-you), N-nyuu: PC-FXGA Game ga Asoberu Tsukureru Hon, Same Game FX [redump.org]
  • saturn: Prize Fighter: Heavyweight Edition (Japan, prototype 19960418), Prize Fighter: Heavyweight Edition (USA, prototype 19960325) [Josh Fairhurst, Scheming Villains]

Merged pull requests

  • 14588: bfm/bfm_cobra3.cpp: Improved video emulation, replaced disc images, and added a game. [James Wallace, blueonesarefaster]
  • 14732: misc/gametor.cpp: Added some ROMs common to all games on the platform. [ClawGrip]
  • 14814: gridcomp/gridcomp.cpp: Added preliminary DAC sound output. [Valera Klachkov]
  • 14905: dataeast/tumbleb.cpp: Consolidated the driver into a single source file. [TheLostNinja]
  • 14967: dgrm/onetwo.cpp: Moved the driver out of a bucket project, as the PCB has “D.G.R.M.” silkscreened on it. [TheLostNinja]
  • 14973: ussr/korvet.cpp: Improved P8020 Korvet peripheral emulation. [shattered]
  • 14994: kaneko/kaneko16.cpp: Improved titles, added licensees to metadata and tidied code. [cam900]
  • 14997: sinclair/specnext.cpp: Added KS1, KS2 and KS3 hardware variants and v30204 BIOS option. [holub]
  • 15001: nec/pc9821.cpp: Implemented the PC-9821 PEGC planar mode. [BlueRain-debug]
  • 15002: kaneko/kan_pand.cpp: Cleaned up code, updated comments, and cleaned up drivers that use it. [cam900]
  • 15003: cpu/tlcs900/tmp94c241.cpp: Implemented DMA and fixed port reads. [Felipe Sanches]
  • 15004: Improved visual feedback for rotating knobs in various synthesizer layouts. [m1macrophage]
  • 15006: ti/tipc.cpp: Added preliminary Texas Instruments Professional Computer emulation. [shattered]
  • 15010: video/ky3211_ky10510.cpp: Made the TAXAN KY-3211 and KY-10510 sprite systems into separate devices. [cam900]
  • 15014: tvgames: Changed the manufacturer to “Takara Tomy” for three systems. [JimCarlTay]
  • 15015: cpu/tlcs900/tmp94c241_serial.cpp: Made TMP94C241 serial ports a device and implemented I/O interface mode. [Felipe Sanches]
  • 15016: kaneko/kaneko_grap2.cpp, kaneko/galpani3.cpp: Fixed debugger issues and cleaned up code. [cam900]
  • 15017: capcom/gng.cpp: Added a version of Ghosts'n Goblins using mask ROMs. [Tailsnic Retroworks, ClawGrip]
  • 15018: apple2_flop_orig.xml, apple2_flop_clcracked.xml: Added 50 working items and improved metadata. [4am, A-Noid]
  • 15020: cpu/sharc: Hooked up flag pin outputs for the interpreter. [Matthew Daniels]
  • 15022: video/imagetek_i4100.cpp: Fixed tilemap scroll calculation when the image is flipped (fixes MT09367). [cam900]
  • 15023: metro/metro.cpp: Improved descriptions and added explanatory notes. [cam900]
  • 15024: input/input_sdl3.cpp: Don’t use integer_x and integer_y when compiling with older versions of SDL that lack them. [sairuk]
  • 15027: tecmo/pbaction.cpp: Added an additional Tecfri-licensed version of Pinball Action. [Victor Fernandez (City Game), ClawGrip]
  • 15036: nes.xml: Added two partially preserved HAL Laboratory prototypes, as well as reconstructed versions. [ICEknight]
  • 15037: jaleco/jalmah.cpp: Use labels, mask IDs and PCB locations for microcontroller ROM labels. [Sergio Galiano]
  • 15041: nec/piet1.cpp: Added a skeleton driver for the NEC Electronic Tool PI-ET1 PDA. [QUFB]
  • 15045: nakajima/nakajies.cpp: Use an array of memory views. [Wilbert Pol]
  • 15046: adp/adp.cpp: Added three games (not working). [stonedDiscord]
  • 15047: adp/stella8085.cpp: Added 23 games (not working). [stonedDiscord]
  • 15048: saturn.xml: Added two prototypes of Prize Fighter: Heavyweight Edition. [Josh Fairhurst, Screaming Village, David Silva]
  • 15049: kaneko/kaneko16.cpp: Edited metadata for Bonk’s Adventure games. [JimCarlTay]
  • 15051: gridcomp/gridkeyb.cpp: Corrected the GRiD Compass keyboard translation tables. [Valera Klachkov]
  • 15052: adp/stellafr.cpp: Added seventeen games (not working). [stonedDiscord]
  • 15053: adp/adp.cpp: Improved graphics ROM labels for Fun Station Spielekoffer 7 Spiele. [stonedDiscord]
  • 15054: cpu/sh/sh7709s.cpp: Added basic cache/memory access timing simulattion for the SH7709S CPU. [Jesus Ramos]
  • 15055: cpu/sharc: Implemented fixed point clip and saturating arithmetic in the interpreter. [Matthew Daniels]
  • 15058: sinclair/specnext_uart.cpp: Emulated the Spectrum Next UART. [holub]
  • 15059: gaelco/glass.cpp: Added an additional version of Glass. [twistedsymphony, ClawGrip]
  • 15060: adp/adp.cpp: Added Skat Bierskat Solitaire (F2). [stonedDiscord]
  • 15061: gaelco/lotoplay.cpp: Added three Z80-based Loto-Play versions. [Javier Valero, Josep Quingles, Recreativas.org, ClawGrip]
  • 15064: machine/pit8253.cpp: Corrected handling of clock and gate inputs and improved timing. [m1macrophage]
  • 15065: machine/vrender0.cpp: Implemented DMA address update direction, cleaned up code and added notes. [cam900]
  • 15066: sinclair/spectrum.cpp: Fixed debugger issues; sinclair/specnext.cpp, sinclair/sprinter.cpp: Fixed emulation issues. [holub]
  • 15067: konami/rungun.cpp: Fixed interrupt 5 enable source (fixes MT08775). [jotego]
  • 15068: seta/downtown.cpp: Implemented sub CPU reset for Caliber 50. [jotego]
  • 15070: machine/wd1000.cpp: Report the ID not found error condition properly for reads and writes. [Brian Johnson]
  • 15071: osd/sdl3: Fixed issues with implementation of the -attach_window option. [Nathan Woods]
  • 15073: apple/apple2video.cpp: Improved video timing (fixes issues with software using the C019 VBL flag). [arekkusu42]
  • 15074: cpu/sh/sh7709s.cpp: Fixed a bug in memory accessors where UML registers were overwritten before being used. [Jesus Ramos]
  • 15077: adp/stellafr.cpp: Corrected ROMs for Disc Fun, Doppel-Sonne and Multi Multi. [stonedDiscord]
  • 15078: cpu/sh/sh7709s.cpp: Corrected the CPU cycles to bus cycles conversion and improved memory access timings. [Jesus Ramos]
  • 15079: gridcomp/gridcomp.cpp: Added ROMs for the GRiD Compass 1101, 1109 and 1129. [Valera Klachkov]
  • 15080: ensoniq/esq5505.cpp: Added Ensoniq VFX OS version 2.30 as a BIOS option. [Christian Brunschen]
  • 15085: sound/x1_010.cpp: Corrected a register description comment so it matches the code. [Leo Tejada]
  • 15087: cpu/sh/sh7709s.cpp: Improved the bank conflict pre-charge penalty delay. [Jesus Ramos]
  • 15088: cpu/g65816/g65816op.ipp: Always consume three cycles for XBA, irrespective of the M mode flag. [arekkusu42]
  • 15090: gaelco/gaelcof3.cpp: Added three Futbol pinball ROM sets. [Javier Valero, Josep Quingles, Recreativas.org, ClawGrip]
  • 15093: video/x1_020_dx_101.cpp: Refactored the Allumer X1-020/NEC DX-101 video chips as a device. [cam900]
  • 15097: namco/namcos2_sprite.cpp: Fixed sprite masking and added 32-bit RGB bitmap support (fixes MT09410). [cam900]
  • 15098: cpu/sh/sh7709s.cpp: Only updated LRU values greater than the current value on cache hits. [Jesus Ramos]
  • 15099: gridcomp/gridkeyb.cpp: Fixed scan codes when the control key is held. [Valera Klachkov]
  • 15100: render/drawsdl3soft.cpp: Map ARGB pixel formats to equivalent XRGB formats (fixes black screen). [Validation Klachkov]
  • 15101: cpu/sh/sh7604.cpp Fixed issues with VCRB, VCRD and DMAOR registter accesses. [jotego]
  • 15102: osd/sdl3/window.cpp: Report window sizes and pointer positions in device pixel units. [Valera Klachkov]
  • 15103: samsung/spc1000.cpp: Corrected the AY-3-8910 clock frequency to 2 MHz. [Miso Kim]
  • 15104: machine/i8087.cpp: Fixed FSAVE/FRSTOR register saving and restoring. [Valera Klachkov]
  • 15105: philips/cdic.cpp, philips/cdislavehle.cpp: Implemented audio attenuation and improved stability. [Vincent-Halver]
  • 15107: igs/pgm.cpp: Added DIP switch locations and labelled the debug mode DIP switch. [cam900]
  • 15108: Prefer to build against SDL3 libraries reported by pkgconfig on macOS rather than the SDL3 framework. [Mats Engstrom]
  • 15109: spectrum_cass.xml: Added eleven working items and replaced one item with a better dump. [ArcadeShadow]
  • 15110: Added preliminary Intel 82425EX and Cirrus Logic CL-GD5434 devices. [Angelo Salese]
  • 15111: bus/isa/ncr53c400.cpp: Removed a stray leading space in a device description. [ArcadeShadow]
  • 15112: sound/va_eg.cpp: Added an OTA-based envelope generator; sequential/prophet5.cpp: Added the glide circuit. [m1macrophage]
  • 15114: ensoniq/esq5505.cpp: Bind DUART signal handlers with the correct derived class. [Christian Brunschen]
  • 15115: sound/va_eg.h: Corrected a comment about equivalent resistance. [m1macrophage]
  • 15116: sound/ics2115.cpp: Suppress side effects for debugger reads, and cleaned up code. [cam900]
  • 15117: sinclair/specnext.cpp: Separated the video RAM from the main memory and corrected mirroring. [holub]
  • 15121: cpu/m6502: Use interruptible memory accessors for core instruction fetches and data reads/writes. [Stuart Inglis]
  • 15124: apple/apple2gs.cpp: Fixed auxiliary text PAGE2 shadowing. [arekkusu42]