Release Date

MAME 0.192 was released on 29 November 2017.


MAMETesters Bugs Fixed


Machine Support

New working machines


New working clones


Machines promoted to working


Clones promoted to working


New machines marked as MACHINE_NOT_WORKING


New clones marked as MACHINE_NOT_WORKING


Notable new WORKING software list additions


Software list items promoted to working


Notable new NOT_WORKING software list additions


Translations added or modified


Contributions

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

  • Agiri provided ygv608.cpp fixes and improvements:
    • Fixed rotation and scrolling.
    • Added scrolling-by-row (used in NCV1 Xevious Arrangement).
    • Fixed scaling effect (used in NCV2 Pacman Arrangement staff roll).
  • AJR provided mice driver updates - boots into monitor now:
    • Generate Baud rate through 8155 (clock kludge required).
    • Factory settings for DSW7 to configure baud rate, data bits and parity.
    • Hooked up Rx and Tx interrupts.
    • Split into separate sets for each CPU-specific monitor program.
  • AJR updated the i8155 device: Substantially rewrote timer emulation.
  • AJR updated ringking: Fixed misconfigured NMI gate - works again now.
  • AJR updated the isbc8030 driver: Remove hacky and superfluous UI-configurable Baud clock.
  • AJR updated n8080.cpp: Directly set 8035 IRQ line rather than generating fake pulses (restores some sounds in helifire).
  • AJR changed 9615 baud configurations to the nominal 9600 baud now that Z80SIO is more tolerant.
  • AJR made SDL input less eager to generate double-click events when mouse doesn't move between clicks.
  • AJR updated the m68000 core: Reinstated registration of SR for debug expressions.
  • AJR updated the mc68901 device: Improved USART behavior for polled operation.
  • AJR updated teh v9938, v9958 devices: Converted to use RGB32 bitmaps, fixed V9938-onV9938 transparent overlay in meritm.cpp.
  • AJR improved wraparound handling for relative inputs.
  • AJR attempted to fix PPC DRC scheduling bug (MT06615).
  • AJR updated the mc68681 device: Distinguish SCN2681 and MC68681 DUART types.
  • AJR updated the vt220 driver: Hooked up SCN2681 based on schematics.
  • Angelo Salese updated stvvdp1.cpp: Fixed line/polyline drawing (Die Hard Arcade wireframe map).
  • Angelo Salese updated dec0.cpp: Sly Spy updates:
    • Emulated sound protection state machine for Sly Spy and removed ROM patch.
    • First pass at emulating Sly Spy RNG device at $31c00d - used extensively for randomisation, especially with bosses.
  • Angelo Salese updated marinedt.cpp: Rewrote driver from scratch, fixing multiple issues that persisted in previous implementation.
    • Added sea bitmap and flashing when shark appears.
    • Improved sprite/tilemap colors - now more accurate to the references.
    • Fixed priority - both sprite layers are actually above text tilemap.
    • Added player 2 trackball inputs and global coin lockout.
    • Streamlined and improved collision detection (still not perfect, so still marked NOT_WORKING).
  • Angelo Salese updated flower.cpp: Rewrote driver from scratch, fixing multiple issues that persisted in previous implementation.
    • Fixed visible area to 288x224 - fixes leftmost columns (inside the big ship).
    • Corrected background layer priority (outside and inside the big ship).
    • Fixed zoom points for 32x32 sprites.
  • Angelo Salese updated gladiatr.cpp: Added preliminary sound emulation and MCU simulation for inputs in Ping Pong King.
  • Angelo Salese updated cyclemb.cpp: Added preliminary audio for Cycle Maabou/Sky Destroyer.
  • Angelo Salese added/fixed HMC20 and screen raw parameters for multiple drivers.
    • bogeyman.cpp, chanbara.cpp, dec0.cpp, dec8.cpp, firetrap.cpp, mystston.cpp, ssozumo.cpp
  • Angelo Salese updated mainevt.cpp: Fixed sprite shadows for Devastators.
  • Angelo Salese provided chqflag.cpp updates:
    • Improved shadow/highlight code - fixes black rain and lights at dawn.
    • K051937 sets up a register when background should be dimmed - fixes start/end pouring event colors.
    • Fixed dimmed screen condition bug after soft reset.
  • Angelo Salese updated metro.cpp: Added sprite X/Y center point registers and removed screen check hack.
  • Angelo Salese rewrote Imagetek i4100/i4220/i4300 video display processor family and hooked it up to metro.cpp.
  • Barry Nelson updated zx.cpp: Fixed ts1000 display and added extra RAM options.
  • Barry Rodewald updated the attache driver: Added Attache 8:16 ROMs, and revision H BIOS; added preliminary communications between Z80 and 8086.
  • Barry Rodewald updated the fmtowns driver: Separated palette into a 256-colour palette and two 16-colour palettes for each layer - fixes colours in Abel.
  • Brandon Munger updated the r9751 driver: Added more SMIOC commands - disktool is now able to print startup text.
  • CB-Emu updated the mrisc driver: Fixed opening book.
  • Curt Coder updated the cosmac core: Added WAIT/CLEAR input lines.
  • Curt Coder updated the cdp1852 device: Added DO read function.
  • Curt Coder provided tmc600 driver updates:
    • Added Euro bus skeleton, fixed printer handshake, and fixed RAM/ROM region sizes.
    • Implemented video according to actual hardware and fixed cursor blink rate.
    • Implemented TMC-700 real time clock.
  • David Haywood provided pgm2 improvements:
    • Fleshed out driver, creating devices for the Atmel ARM AIC and a derived IGS036 CPU.
    • Emulated IGS037 video hardware - covers sprites (with zooming), tilemaps (including rowscroll), and the priority system.
    • Still marked NOT_WORKING due to missing memory card emulation (requires simulation of undumped MCU).
  • David Haywood and Aaron Giles updated the mpeg_audio device: Use pre-calculated cosine table for DCT decoding - yields significant performance improvement.
  • David Haywood updated the arm7 core: Fixed BLX (LO) thumb opcode in ARM7/9 - return address was offset by one halfword.
  • Dirk Best updated the dsk_dsk format: Don't segfault on empty tracks - fixes einstein 4game.
  • Dirk Best updated the deco146 device: Fully handle sound latch internal to the device.
  • Dirk Best provided einstein updates:
    • Created "Tatung Pipe" bus and converted 80 column device (use -pipe tk02 to use).
    • Added cursor rendering, support for alternate character, and save state support set to the 80 column device.
    • Removed redundant einstei2 driver.
    • Added user port bus interface with support for speech cartridge and mouse.
    • Corrected default floppy drive types, and added support for more types.
    • Added ADC0844 device, emulated analogue joystick, and fixed minor issues with memory map.
    • Marked Einstein 256 ROM dump as bad.
    • Added support for the Silicon Disc RAM drive as a pipe device (appears as drive 3).
    • Fixed Centronics port - printing now works.
    • Hooked up RS232 port.
    • Improved interrupts and add WIP Speculator support.
  • Dirk Best updated the px4 driver: Fixed keyboard input from cold start.
  • Dirk Best updated the floppy device: Added TEAC FD-30A 3 inch floppy drive.
  • Dirk Best added a generic Z80 daisy chain device, for use in drivers with non-Z80 peripherals.
  • Dirk Best updated the midvunit driver: Use ADC0844 device.
  • Dirk Best provided micro3d updates:
    • Use ADC0844 device and fixed throttle regression.
    • Attached RS232 port to monitor port.
  • Dirk Best updated the adc0844 device: Added support ADC0848 variant and made some adjustments to differential mode.
  • Dirk Best updated the 74123 device: Use line handlers for single lines.
  • Dirk Best updated the wave device: Look up speaker count and cassette device relative to owner - fixes cassette speakers inside devices.
  • Dirk Best updated the headonn driver: Fixed colors and added DIP switch info.
  • Dirk Best updated the headon2 driver: Fixed colors and cleaned up.
  • Dirk Best marked spacetrk as imperfect graphics due to missing star field and background gradient.
  • Edstrom updated the via6522 device: Added some interrupt logging.
  • Edstrom updated the prodigy driver: Added clickable layout, making the machine playable; updated keypad logic to use ioport_array.
  • Edstrom updated the t4426 driver: Replaced a bad dump caused by corrosion with a new verified dump.
  • Edstrom updated the epc driver: Fixed load order for newer ROM (now gives same error as older ROM), and set EGA as default as it works.
  • Edstrom updated the z80scc device: Ported improvements from z80sio and cleaned up code.
  • F.Ulivi updated the hp9895 driver: Fixed NMI handling and secondary addressing in PHI chip.
  • F.Ulivi updated the hp85 driver: Added support for I/O slots and emulation of HP82937 module; added support for internal printer.
  • Felipe Sanches fixed metadata fro Brazilian CoCo clones, and renamed LZ Color64 ROMs to document labels and PCB locations.
  • Frank Palazzolo and Robbbert provided trs80dt1 updates:
    • Fixed keyboard key sense to fix key repeat.
    • Switched refresh to 60Hz to match with 60Hz jumper setting.
    • Added temporary hack to get the last three columns to display.
  • Frank Palazzolo updated the i8275 device: Added check to avoid potential buffer overflow.
  • Jean-Francois DEL NERO updated the m68000 core: Added support for 68010/68020/68030 bus error stack frames formats - fixes common CPU type detection routine.
  • Jean-Francois DEL NERO updated the smc91c9x device: Implemented SMC91C9X Ethernet controller connected mode with WinPcap or TUN/TAP tunnel.
  • MetalliC updated cv1k.cpp: Demoted all sets to imperfect timing, set audio output to mono, and documented DIP switches.
  • MetalliC provided ymz77x improvements:
    • Added pan, main volume level, and clip limit control.
    • Emulated YMZ774 chip at feature level used by PGM2-platform games.
  • MetalliC updated the SH3/4 DRC: Mark DRC cache dirty on reset.
  • MetalliC updated the arm7 core: Handle DP-commands ROR <Rs> case where Rs=32/64.
  • Michael Zapf updated the ti99_8 driver: Added Hexbus write timing logic.
  • Nigel Barnes updated the bbcb driver: Added Computer Village 1797 FDC (LVL Dos) - not working.
  • Nigel Barnes updated the electron driver: Added Acorn Plus 1 expansion device, moved cart slots to plus1, and replaced OS ROM with good dump.
  • Nigel Barnes updated the bbc driver: Added ARM Evaluation System co-processor device.
  • Nigel Barnes updated the cfa3000 driver: Added input devices on userport, analogue, and 1MHz bus.
  • Nigel Barnes updated the bbcm driver: Allow switching between internal and external tube ports.
  • Nigel Barnes provided mtx updates:
    • Fully implemented both ROM- and RAM-based memory maps.
    • Added Finnish and Danish keyboard ROMs.
    • Implemented ROM extension board and cartridge slot.
    • Added support for ROM 2 subpages on ROM extension board.
    • Implemented cassette motor control.
  • Nigel Barnes updated the accomm driver: Added CMOS RAM, serial and econet ports, implemented RAM/ROM switching according to manual, and documented full memory map.
  • Patrick Mackinlay provided interpro driver updates:
    • Added basic support for the system bus variously referred to as SR, SR bus, SRX and CBUS.
    • Added initial GT graphics card implementation sufficient to boot the diagnostic monitor in graphics mode.
    • Added high-level emulation of the InterPro keyboard with US English layout.
    • Added support for InterPro 20x0, 24x0 and 27x0 systems.
    • Added support for Ethernet, mouse, and serial DMA.
    • Improved timer, interrupt and DMA handling.
    • improved comments/documentation.
  • Patrick Mackinlay provided bt459 device improvements:
    • Added support for blinking (pixel planes and cursors).
    • Fixed dual-cursor and X Window mode.
    • Corrected screen output alignment.
  • Patrick Mackinlay added device emulating 28F010 Flash memory and family (not compatible with JEDEC Flash protocol).
    • Converted Interpro to use this device.
  • Patrick Mackinlay updated the clipper core: Floating point improvements:
    • Switched to softfloat implementation.
    • Implemented floating point macro instructions.
    • Implemented floating point exceptions and rounding.
  • R. Belmont updated the apple2 driver: Added No-Slot Clock support to //e, //c, and friends.
  • mgcaret and R. Belmont updated the apple2cp driver: Improved "MIG" custom chip handling for apple2cp.
  • mgcaret and R. Belmont updated the apple2cp driver: Corrected MIG RAM size to 2K (was 0.5K).
  • R. Belmont and mgcaret updated the apple2c driver:: Fixed Slinky register return when no expansion RAM is present.
  • R. Belmont updated the ds1315 device: Added support for DS121x parts where the RTC sits in a ROM's address space.
  • R. Belmont updated the arm7 core: ARM v5TE support improvements:
    • Added support for high vector option.
    • Fixed v5 BLX to save the return address in R14.
    • Implemented BLX Rn form.
    • Fleshed out ARM946ES model, added movable DTCM and ITCM support.
  • R. Belmont de-skeletonized the nds driver:
    • Added IPCSYNC.
    • Added WRAM banking and more mirroring.
    • Added timers, interrupt management, partial DMA, and ARM7 halt-until-IRQ.
  • Robbbert updated the ibmpcjr driver: Added quiksilver fast-boot BIOS.
  • Robbbert updated the mmagic driver: Added sound samples.
  • Roberto Fresca provided Aristocrat MK5 updates:
    • Redumped the following sets so they have correct checksums and boot: Adonis (BHG1508, US), Boot Scootin' (GHG1012-02, US), Bumble Bugs (CHG0479-03, US), Cash Chameleon (DHG4078-99, US), Enchanted Forest (JHG0415-03, US), Golden Pyramids (AHG1206-99, US), Magic Garden (AHG1211-99, US), Margarita Magic (EHG1559, US, set 1), Party Gras (BHG1284, US), Sweethearts II (PHG0742-02, US), Sweet Liberty Deluxe (AHG1575, US), The Gambler (EHG0916-02, US), Tropical Delight (PHG0625-02, US).
    • Added BIOS / USA Set Chip v4.04.08.
    • Reformatted the game drivers to be more readable.
  • r09 provided fmtowns driver updates: Fixed kanji ROM offset calculation and scrolling in 16-color mode.
    • Kanji in fixed ROM font now displays correctly, making boot messages intelligible.
    • Scrolling imperfect but better than before - fixes scrolling/positioning issues in multiple games.
  • Ricardo Barreira provided hcd62121 core updates:
    • Made improvements based on experiments with hardware using a CFX-9850G.
    • Fixed mistakes in CL flag calculations, and added more unknown instructions.
    • CFX-9850G is now emulated just accurately enough for most of the RUN mode to work well.
  • Ryan Holtz updated the arm7 core: Added rudimentary instruction prefetch buffer. Fixes GBA NES Classics games.
  • Ryan Holtz updated the gba driver: Made GPIO ports pass ROM through on read by default - fixes Doom 2 and Duke Nukem Advance.
  • Ryan Holtz updated the e132xs core: Reworked all opcodes to reduce runtime branches and unnecessary work - now considerably faster.
  • shattered updated the sm7238 driver: Implemented reverse video, 80/132 column switching, and alternate font.
  • shattered updated the vt240 driver: Fixed palette and screen size fix.
  • smf updated monty.cpp: Wake Monty Plays Scrabble and Master Monty from HALT instruction using reset.
  • smf updated the z80 core: Implemented HALT output and clear HALT condition during reset.
  • smf provided c65 updates:
    • Reordered keys and renamed I/O ports to match system specification.
    • Added caps key and two extra keyboard columns, although only one of them may have made it into hardware.
    • Added support for switching between 40/80 columns with F1 and blink/underline/highlight/reverse attribute.
    • Allow switching between upper case/lower case character ROM with shift+Commodore key.
  • Ted Green the chdman utility: Use DeviceIoControl to get disk length - allows chdman to access physical drives on Windows 10.
  • Vas Crabb added 32- and 64-bit population count utilities.
  • Vas Crabb moved object finder resolution before device_start (github #2759).
  • Vas Crabb added an SDLC consumer device that logs SNA frame headers and data.
  • Vas Crabb updated the kaypro driver: Switched from z80dart to z80sio, hooked up BRG to SIOs, hooked up direct connections from SIOs to RS232 ports.
  • Vas Crabb provided z80sio device updates:
    • Decoupled from device_serial_interface - it can't support synchronous modes, on-the-fly register updates, and other features.
    • Made asynchronous receive behave more like real device: check that start bit persists for half a bit interval, sample data bits mid-interval, handle invalid stop bit as described in Zilog manual, check parity and latch overrun and parity errors.
    • Re-implemented break detection.
    • Implemented SDLC transmission including bit stuffing, transmit CRC, abort, and underrun/end-of-message behaviour.
    • Generalised synchronous transmission to other modes.
    • Completely overhauled interrupt logic - vectors should be correct now.
    • Improved handling of transmit and receive buffers and control lines.
    • Implemented different auto-reset receive errors in MPSC vs SIO.
    • Implemented enough of synchronous reception to pass uts20 loopback tests (not accurate, but helps understanding).
    • Disabled automatic CRC transmission in 1-byte sync mode (necessary to pass uts20 loopback tests).
  • Vas Crabb updated the e132xs core: Templated most Hyperstone register-register and immediate opcode handlers to reduce code duplication.
    • Also fixed behaviour in some corner cases including privileged register traps and SR as source in subtraction.
  • Vas Crabb provided uts20 driver updates - all self-tests now pass without ROM patches:
    • Hacked in permanent loopback on SIO channel A TxD to RxD, and SIO channel B TxD to RxD and WAIT/READY to DCD+RTS.
    • Implement parity poison and NMI on parity error feature.
    • Corrected NVRAM width to four bits.
  • Darksoft and Mitsurugi updated namcops2.cpp: Added dump of Time Crisis 3 V291 I/O board.
  • einstein95 updated the skyskipr driver: Added DIP switch locations.
  • Jim Hernandez updated the vicdual driver: Added sound samples for tranqgun and bonus sound sample for depthch.
  • Reznor007 updated the pntnpuzl driver: Added 8798 MCU dump.
  • rfka01 added Commodore PC 30-III BIOS v2.00 and alternative Ericsson PC BIOS.
  • sjy96525 identified Lives and Demo Sounds DIP switches for Sky Destroyer.
  • sjy96525 corrected years for Spikeout: Final Edition, Ehrgeiz, Golgo 13 Kiseki no Dandou and Daytona USA.
  • sjy96525 fixed failure to boot for Tekken Tag Tournament (World, TEG2/VER.C1, set 2) and Tekken Tag Tournament (US, TEG3/VER.B).
  • sjy96525 corrected inputs for CPS3 multi-game bootlegs - Street Fighter III games and Red Earth / Warzard require six buttons.
  • Guru updated documentation in namcos10.cpp.