Release Date

MAME 0.202 was released on 26 September 2018.

MAMETesters Bugs Fixed

Machine Support

New working machines

New working clones

Machines promoted to working

Clones promoted to working

New machines marked as NOT_WORKING

New clones marked as NOT_WORKING

New working software list additions

Software list items promoted to working

New NOT_WORKING software list additions

Translations added or modified


The known contributions for this version are, in the order specified in the whatsnew:

  • AJR updated the pipibibsbl driver: Fixed clocks - they're different to original.
  • AJR moved imperfect graphics flag from drivers to PSX GPU device.
  • AJR updated the m6502 core: Made SET instruction in Mitsubishi M740 subfamily actually affect execution (fixes MT07091).
  • AJR updated the m79152pc driver: Implemented cursor, scrolling support, and some video attributes.
  • AJR updated the froggervd driver: Patched program ROMs, allowing game to work.
  • AJR updated the imds2 driver: Split out emulation of I/O controller board as separate device.
    • Also identified and added more IOC firmware revisions.
  • AJR updated the z80dart device: Fixed miscellaneous bugs.
    • Default RxD to 1 to avoid spurious break condition.
    • Corrected CTS level in RR0 after "Reset External/Status Interrupt" command.
    • Allow immediate de-assertion of RTS output when nothing is being transmitted.
  • AJR updated pcd.cpp: Fixed pcx display.
  • AmatCoder updated tzx_cass.cpp: Finish a block with a 1 ms minimum pause when specified pause length is zero.
  • AmatCoder updated dsk_dsk.cpp: Read sectors with deleted mark set.
  • anikom15 made MAME apply scanline effect before defocus effect, and moved scanline effect into separate shader.
  • Bryan McPhail updated megatech.cpp: Added cart label numbers from manual.
  • Bryan Perris updated the mips3 core: Fixed DMULT/DMULTU behaviour (GitHub #3718).
  • cam900 updated lethalj.cpp, artmagic.cpp: Reduced run-time tag map lookups, and improved function and region naming.
  • cam900 updated raiden2.cpp, r2dx_v33.cpp: Corrected Oki M6295 clock and pin 7 level for zeroteam, nzerotea, and zerotm2k.
  • cam900 updated legionna.cpp: Corrected metadata for denjinmk.
  • cam900 updated psikyo.cpp, dreamwld.cpp: Fixed tilemap rowscroll effects.
  • cam900 improved PC-FX sound:
    • huc6230: Fixed PSG, converted ADPCM update to timer callback, and implemented CD-DA volume control.
    • huc6272: Fixed CD-DA output.
  • cam900 updated yunsun16.cpp: Reduced code duplication, run-time tag map lookups and unused members, and simplified tilemap scanning code.
  • cam900 provided a funybubl.cpp cleanup:
    • Cleaned up member and region naming, and reduced run-time tag map lookups.
    • Corrected Oki M6295 clock and converted sample space to memory bank.
    • Corrected palette size and converted to use palette decoder member.
    • Converted VRAM to use address map bank device, and converted drawing to use tilemap system.
  • cam900 updated sshangha.cpp: Fixed Oki M6295 clock and pin 7 level.
  • cam900 updated nmg5.cpp: Converted bitmap layer to use a MAME bitmap, reduced need for ACCESSING_BITS, and reduced code duplication.
  • cam900 updated neogeo.cpp, neopcb.cpp: Eliminated register_postload, and eliminated some MCFG macro usage.
  • cam900 updated neogeocd.cpp: Re-worked to better match MAME code conventions.
  • David Haywood updated crospang.cpp: Fixed tile banking - should fix bugs in bestri.
  • David Haywood updated raiden2.cpp: Organised Raiden 2 and Raiden DX set by code revision.
  • David Haywood updated the seta001 device: Removed a sprite drawing kludge.
  • David Haywood updated sshanghai.cpp: Improved video mixing and palette handling.
  • David Haywood updated fuukifg2.cpp, fuukifg3.cpp: Fixed tilemap buffer offset.
  • David Haywood updated namcos2.cpp, namcos21.cpp: Use configured banking for audio CPU program.
  • David Haywood updated namcos2.cpp: Separated C123, C169, C355 and ROZ drawing emulation from driver class.
  • David Haywood updated namcos21.cpp: Split into three drivers for different configurations, and moved DSP emulation to a device.
  • Dirk Best updated the opwolf driver: Removed C-chip simulation and cleaned up code.
  • Dirk Best updated the opwolfb driver: Inputs are read by Z80 and written to shared RAM.
  • kazblox provided galaxian.cpp updates:
    • Improved machine configuration and video sync in Take Off, Explorer, and Amigo (set 2).
    • Marked Explorer and Amigo (set 2) as having imperfect sound emulation.
    • Marked Take Off as having incorrect colors
    • Fixed Jump Bug starfield limit.
    • Fixed bullet size in Scramble.
    • Derived jungsub clocks from the L-1200-2 pixel clock, as the Subelectro 113 board has no crystals.
    • Improved SF-X and Monster Zero background drawing.
    • Changed turpins to derive from Super Cobra rather than Scramble.
    • Added sound program ROMs from Amidar to Mandinga, marked as bad dump.
    • Improved protection simulation for The End and Scramble.
  • kazblox updated the mimonscr driver: Fixed video RAM mirror address - score is now displayed correctly.
  • kunikuni updated pacland.cpp: Improved sprite priority and drawing at screen edges.
  • MASH updated williams.cpp: Fixed Speed Ball inputs.
  • Nigel Barnes updated the bbcb driver: Added AMS 3" Microdrive Disc System and Microware DDFS FDC floppy controller options (latter is not working).
  • Nigel Barnes updated the bbc driver: Added Acorn Bitstik and Bitstik 2 analogue controllers.
  • Nigel Barnes updated the acorn_fdc, atom_discpack devices: Set READY on HEAD_LOAD.
  • O. Galibert updated the emumem API: Fixed I/O ports and memory banks in internal maps.
  • Patrick Mackinlay updated the interpro driver: Fixed network emulation.
    • osdnet, dinetwork: Fixed time travel issues.
    • taptun: Pad short frames and append frame check sequence on Windows.
    • clipper: Fixed bugs in carry flag handling.
    • i82586: Improved interrupt handling, implemented serialisation delays, fixed transmit bug, and added reset handling.
  • Peter Ferrie updated apple2e.cpp: Corrected I/O intercepts to match hardware behaviour.
  • R. Belmont and Peter Ferrie updated the apple2e driver: Fixed issues with cards in slots 1 and 2 that use the $C800 space.
  • R. Belmont provided decstation improvements:
    • Emulated accelerated quasi-blitter enough to get a working console.
    • Added LANCE Ethernet controller.
    • Started implementing IRQ handling in gate array.
  • Robbbert updated the z8 core: Fixed numerous bugs, including detection of stack type, JP and CALL with indirect register addressing, and DA.
  • Roberto Fresca and Grull Osgo provided luckybal.cpp updates:
    • Implemented banking and I/O multiplexing.
    • Added DIP switch locations, and added pinout and I/O connections to notes.
  • Ryan Holtz added preliminary AMD LANCE Ethernet controller device.
  • Ryan Holtz provided sun4.cpp updates:
    • Ignore writes to ASIs used by unemulated write-through cache controller.
    • Fixed DMA and MMU page fault handling.
    • Trigger memory access exceptions on access to undefined memory types.
    • Added SBus slots with support for bwtwo, cgthree and cgsix cards.
    • Added an alternate FCode PROM for the bwtwo framebuffer.
    • Added a skeleton Artecon SB300P 3-serial/1-parallel SBus card device.
    • Corrected timekeeper type.
    • Added sun4c MMU device implementing S4-buffer, S4-cache and S4-MMU functionality.
  • Ryan Holtz updated the sparc core: Fixed TBR masking on traps and interrupts, and refactored CPU/MMU interface for better performance.
  • Ryan Holtz updated the nscsi_cd device: Return data from correct offset when initiating read at a block that isn't on a sector boundary.
  • Ryan Holtz updated timekpr.cpp: Fixed issue that could cause updates to be missed.
  • Ryan Holtz and Andrew Liles added skeleton SunPC 5x86 Accelerator, SunSwift 10/100 Ethernet + Fast Wide SCSI, and TurboGX+ SBus card devices.
  • smf updated the 32x driver: Improved audio FIFO behaviour and corrected DAC resolution.
  • smf updated the NES APU device: Removed read/write trampolines and corrected channel enable reset state.
  • smf provided vgmplay updates:
    • Added support for Sega 32X sound.
    • Added support for Y8950, YM2608, YM2610 and YM2612 sample playback.
    • Added support for C6280, SN76496 and YM2203 sample playback.
    • Automatically enable NES APU and Sega 32X channels in bad rips missing the enable commands.
    • Assume default header size if header size read from file is invalid.
    • Fixed off-by-one error in bounds check on PCM write.
  • smf updated the emumem API: Fixed unmapped read values with subunits.
  • smf updated the mcr68 driver: Mapped 6840 on lower data bits on all games - matches schematics for blasted.
  • smf updated the PSX GPU device: Implemented textured dot rendering, transparent dots and line, and semi-transparent (STP) drawing.
  • smf updated tandy1t.cpp: Improved keyboard simulation (improves behaviour in t100tx MS-DOS BASIC).
  • smf and coolmod updated zn.cpp: Hooked up Primal Rage 2 watchdog.
  • snickerbockers updated powervr2.cpp: Store different polygon types into separate lists, and ignore alpha value for opaque polygons.
  • superctr updated zsg2.cpp: Properly reset emphasis filter state at key-on (fixes popping in raystorm song 12).
  • Sven Schnelle updated the nereid device: Implemented palette read-back, and fixed save states.
  • Sven Schnelle updated the topcat device: Implemented interrupts, cursor register read-back, plane enable, pixel placement rules, and other fixes.
  • Sven Schnelle updated the i8291 device: Set BO bit only if receiver is ready, fix MJMN bit, reset EOI flag when in TIDS, and implemented DCAS.
  • Ted Green updated the voodoo_pci device: Return different values for PCI configuration register 0x40 depending on GPU type (fixes MT06874).
  • Tim Lindner updated coco12.cpp, coco3.cpp: Use CLEAR or CTRL as second shift, allowing more punctuation to be typed in natural keyboard mode.
  • Vas Crabb re-wrote serial mouse emulation:
    • Simplified code and eliminated timers.
    • Split Microsoft mouse into separate two-button (Microsoft), three-button (Logitech), and click wheel devices.
    • Made Mouse Systems mouse behaviour better match early Mouse Systems models.
    • Added "rotatable" Mouse Systems mouse support (untested due to lack of software).
    • Added Sun mouse support, currently hacked to run at 9,600 Baud to work around a separate issue.
  • Vas Crabb fixed issue where dual-screen systems could be incorrectly displayed with 4:3 aspect ratio.
  • ack updated neogeo.cpp: Dumped sp1-u4 BIOS from a US 4-slot MVS.
  • Brian Troha updated seta2.cpp: Added P0-113A PCB layout and note about undumped version of Guardians using this board.
  • caius and Brian Troha updated vamphalf.cpp: Re-dumped Cool Minigame Collection (Italy).
  • caius updated suprnova.cpp: Verified PLD dumps.
  • ClawGrip updated the valtric driver: Re-dumped text ROM vt_07.bin and corrected size.
  • f205v corrected and improved documentation in konamigx.cpp, konamim2.cpp, and wecleman.cpp.
  • f205v updated the f1superb driver: Changed title to match manual and title screen.
  • Hydreigon updated vegas.cpp: Updated flags to better reflect emulation status.
  • Leezer updated hiscore.dat for recent changes in MAME.
  • MicroCoreLabs updated ibmpc.cpp: Verified dump of 08/16/82 revision of IBM 5160 (PC/XT) BIOS.
  • MikeMcBike updated digel804.cpp: Dumped Celectronic Berlin/Digelec Promicron 2000 programmer v2.3 BIOS.
  • ShouTime updated vastar.cpp: Dumped PROMs for dogfightp.
  • sjy96525 corrected metadata for Chess Challenge 2, Dirt Dash, and Heuk Sun Baek Sa.
  • sjy96525 updated taitogn.cpp: Removed redundant flag from Usagi.
  • Wellington Uemura added abbreviated forms of some command-line options to documentation.