MAME 0.205 was released on 26 December 2018.
MAMETesters Bugs Fixed
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 tmp68301 device: Improved accuracy of registration and acknowledgment of pending interrupts.
- AJR updated balsente.cpp: Separated emulation (and ROM) of 6VB audio board from driver class.
- AJR updated the f8 core: Fixed LNK instruction by testing carry flag before clearing flags (github #4371).
- AJR updated the z8 core: Overhauled register handling.
- Moved internal internal register file to a separate address space, and added port output registers to debug state.
- Lock out interrupts on reset until EI instruction is executed.
- AJR updated the mbc55x driver: Added 8087 coprocessor.
- AJR updated the x86 core: Step over REP instructions in debugger.
- AJR updated the alphatro driver: Corrected clock frequencies and screen timings, and separated into PAL and NTSC variants.
- AJR updated the tv955 driver: Made keyboard begin to work, and added cursor emulation.
- AJR updated the eepromser driver: Don't change state on soft reset (EEPROMs don't actually have reset lines).
- Bavarese updated rainbow.cpp: Improved monitor auto-detection, fixed palette problems, and cleaned up logging, and updated notes.
- cam900 updated scsp.cpp: Made SCSP emulation better reflect hardware implementation.
- Implemented EXTS mixing and DAC18B output, and removed hard-coded DMA IRQ target device.
- Added save state support, marked as having imperfects sound, and updated to use explicitly sized integer types.
- Cleaned up unused and duplicated code, removed MCFG macros, and reformatted code.
- stvcd.cpp: Implemented device_mixer_interface, allowing CD audio to be routed correctly.
- coolridr.cpp, model2.cpp, model3.cpp: Corrected SCSP and sound CPU clocks, and corrected sound balance.
- stv.cpp: Corrected SCSP clock.
- cam900 provided coolridr.cpp updates:
- Restricted drawing to clipping rectangle and deferred allocating palette memory until start time.
- Reduced code duplication, replaced a bare pointers with an object finder, and improved tags and member names.
- cam900 provided psikyo4.cpp updates:
- Fixed sound routing and reduced runtime tag map lookups.
- Reduced code duplication, eliminated use of ACCESSING_BITS macros, and improved member names.
- cam900 updated prehisle.cpp: Cleaned up code, improved member names, and reduced runtime tag map lookups.
- cam900 provided a seta2.cpp cleanup:
- Deferred allocation of sprite RAM until start time, and reduced use of ACCESSING_BITS macros.
- Made more members protected, reduced unnecessary code, and improved member names.
- cam900 provided a pgm2.cpp and pgm2_memcard.cpp cleanup:
- Made better use of region finders rather than relying on hard-coded sizes and runtime tag map lookups.
- Changed to abbreviated integer types, made use of m_ member prefix consistent, and streamlined handler member signatures.
- Made code prefer explicitly sized integer types, reduced variable scope, and const-qualified more variables.
- Simplified graphics decoding description, reduced use of MCFG macros, improved region names, and updated notes.
- cam900 updated deco32.cpp: Fixed graphical regression in captaven and clones (github #4417), and restricted ACE mixing to cliprect rectangle.
- Celelibi updated sdl_sound.cpp: Re-worked ring buffer code to better encapsulate it and avoid deadlocks.
- David Haywood updated ssv.cpp: Emulated row scroll and plane masking effects.
- David Haywood updated gcpinbal.cpp: Emulated raster interrupts (used for effects in Power Flipper Pinball Shooting).
- David Haywood provided seta2.cpp updates:
- Added preliminary emulation of raster effects and X offset registers.
- Improved tilemap wrapping in 8x8 mode and screen size/visible area/layer offset handling.
- Implemented alternate sprite format flag user by grdians map screen overlay.
- Simplified graphics decoding, and cleaned up code.
- David Haywood updated goldstar.cpp: Added ROM patches to help Fruit Bonus 2010 boot, and improved inputs.
- David Haywood updated the mcs51 core: Added preliminary AppoTech AXC51-CORE disassembler.
- David Haywood updated bus/nes_ctrl: Added Majesco dance mat device (used by the ddrdismx and ddrstraw in nes_vt.cpp).
- Dirk Best updated the amiga driver: Added support for the A2058 memory expansion Zorro card.
- F.Ulivi updated the hp9825 and hp9845 drivers: Split I/O subsystem out of hp9845 driver, added I/O slots to hp9825, and added 98032 GPIO module.
- fenugrec emulated HP 3478 digital multimeter.
- Analog-side 8048 MCU is not dumped or emulated - main ROM patched to work around its absence.
- Some LCD characters are unverified, and LCD annunciators are not rendered.
- HP-IB/IEEE488 interface is not emulated (uses i8291 controller).
- hap fixed some collateral damage from refactoring.
- iq_132 and Robbbert updated snowbros.cpp: Replaced yutnori ROM patch with protection simulation.
- kunikuni updated toypop.cpp: Simplified foreground coordinate calculation.
- Michael Zapf updated the ti99 driver: Raise a fatal error on detecting an over-sized cartridge dump to avoid memory corruption.
- Miodrag Milanovic updated Android support to build with NDK r18b, current Android Studio, and current Gradle (target API version is now 24).
- Nigel Barnes provided nascom1 driver updates:
- Improved parsing of snapshots, and added character ROM snapshot for Sargon Chess.
- Added B-Bug monitor BIOS option.
- Corrected LSW1 links location for Restart address.
- Nigel Barnes provided bbc driver updates:
- Added bus clocks for FDC (8 MHz), 1MHz bus (1 MHz), and Compact expansion port (8 MHz).
- Added Music 2000 and EMR BBC MIDI Interface 1MHz bus devices.
- O. Galibert updated the debugger: Prevent watchpoints from being installed multiple times recursively.
- O. Galibert updated swp30.cpp: Improved sound generation and added save state support.
- O. Galibert updated ymmu100.cpp: Hooked up MIDI ports and added additional logging.
- Phil Bennett updated t10mmc.cpp: Reverted seemingly erroneous change to CD audio commands, and added gain setters for each CD-DA channel.
- Phill Harvey-Smith provided nascom1.cpp updates:
- Fixed Nascom 2/3 keyboard handling so CTRL key combinations work.
- Added correct Nascom 2 NasSys 3 BIOS ROMs for default, AVC and NET versions, and added Nascom 3 CP/M boot v3.2 BIOS ROM.
- R. Belmont and Rob Justice updated the apple3 driver: Attempted to improve font uploading (still not perfect).
- R. Belmont updated the apple2 driver: Added support for version 2 .WOZ floppy image files.
- Robbbert updated the z80ne driver: Corrected error in ROM from when it was transcribed by hand.
- Robbbert updated the vtech2 driver: Added support for French and German, selectable via machine configuration switches.
- Note that it will crash when Reset is selected, logged as MT07180.
- Roberto Fresca updated rulechan.cpp: Cleaned up code, and turned Demo DIP switch on by default.
- Roberto Fresca updated brkthru.cpp: Fixed brkthrut PROM addressing and added notes.
- Ryan Holtz updated e132xs.cpp: Fixex CMPB and SUBC instruction emulation and instruction length flags when using the DRC.
- Ryan Holtz updated midtunit.cpp: Converted video emulation to a device and removed static global variables.
- Also added a DMA blitter graphics viewer that can be enabled with a preprocessor macro.
- Ryan Holtz updated midtunit.cpp, midxunit.cpp: Cleaned up code and converted logging to use logmacro.
- Ryan Holtz updated the tms32031 core: Fixed disassembler and eliminated MCFG macros.
- Ryan Holtz provided a pocketc.cpp cleanup:
- Reduced duplication, improved member names, reduced runtime tag map lookups, and converted logging to use logmacro.
- Removed MCFG macros, made better use of language and framework features, re-formatted code, and cleaned up comments.
- Ryan Holtz updated bgfx and bx to latest upstream code.
- Ryan Holtz updated cave.cpp: Removed MCFG macros and made common configuration blocks into functions.
- shattered updated the pasopia7 driver: Increased keyboard poll rate to 5 kHz - allows de-bounce code to work.
- Sven Schnelle updated the hp_dio bus: Added DMA enable to control register of human interface card.
- Sven Schnelle updated mb87030.cpp: Fixed FIFO behaviour (fixes SCSI on HP9000/382).
- Sven Schnelle updated the m68kfpu core: Added (d16,An) addr mode to WRITE_EA_FPE (used by NetBSD's ps command).
- Thomas Klausner added support for building with clang on FreeBSD/NetBSD, and added a missing header to video/xavix.cpp.
- Vas Crabb, Caps0ff and *=/STARRIDER\=* updated gsword.cpp: Dumped gsword MCU and replaced simulation with preliminary emulation.
- Demoted gsword to MACHINE_NOT_WORKING and MACHINE_IMPERFECT_SOUND as there are issues with credits registering and sound.
- Removed BAD_DUMP flag from josvolly MCU dump - there's no reason to believe the MCUs contain different programs.
- Vas Crabb updated and improved some command-line option descriptions.
- Vas Crabb fixed failure to construct/destruct non-trivial objects that caused crashes when using DRC back-ends.
- Canil Babypet updated goldstar.cpp: Dumped graphics ROMs for Fruit Bonus 2010.
- ClawGrip and Recreativas.org updated balsente.cpp: Added a missing mainboard PAL dump, and improved documentation for Spanish Trivial Pursuit sets.
- ClawGrip updated leapster.xml: Documented some undumped games (there are dozens still missing).
- f205v updated brkthru.cpp: Dumped PALs, added PCB layout and updated notes for darwin.
- Guru updated ymmu100.cpp: Added missing ROMs.
- Heihachi_73 updated aristmk5.cpp: Improved documentation.
- Heihachi_73 updated aristmk6.cpp: Added two BIOS sets, and fixed some PCB locations.
- rfka01 updated the m24 driver: Added BIOS versions v1.1, v1.21 and v1.36, and added additional comments and links.