MAME 0.194

From MAMEDEV Wiki

Release Date

MAME 0.194 was released on 31 January 2018.


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 improvements:
    • Added mosaic effect for Galaga Arrangement Ending/Staffroll.
    • Guessed that R#13 is used for transparent color - fixes 'COLOR TEST' in ND-1 self-test.
    • Fixed a small graphics glitch in Rally-X Arrangement.
  • AJR added option to disable saving NVRAM on exit.
  • AJR added ER1400 serial EAROM device.
  • AJR fixed many disassembler bugs:
    • mc68hc11: Fixed disassembly of instructions with 16-bit operands (immediate or direct).
    • m6809: Fixed disassembly of relative instructions.
    • lc8670: Fixed disassembler to make it not completely broken.
    • mcs48, s2650: Use paged mode for disassembler.
    • lr35902: Fixed disassembly.
  • AJR updated the attache driver: Added RS-232 serial ports.
  • AJR updated the f1gp driver: Fixed getting stuck on "ID CHECK".
  • AJR updated the splash driver: Draw sprites in reverse order (fixes MT6791).
  • AJR fixed masking of signed integer types in debug state.
  • AJR updated the citycon driver: Fix sound CPU speed, and hooked up PSG read (fixed cop car spin sound).
  • AJR updated the tigeroad, f1dream drivers: Added DIP switch locations.
  • AJR updated the tv910 driver: Fix character row format, implemented video attributes, made self-test work, improved keyboard hookup, and added character set switch.
  • AJR updated the vt220 driver: Split into two sets and fixed ROM loading for the earlier version.
  • AJR updated the mcs48 core: Program counter wraps at 11 bits.
  • AJR updated the mcs48 core: More specific emulation of Intel 8021:
    • Separated disassembler for i802x (including unemulated 8022 instructions).
    • Provided separate (though mostly just more limited) 8021 opcode table.
    • Writes to 8021 P0 no longer go through memory space.
  • AJR updated the mcs51 core: Added DPTR, P0, P1, P2 and P3 to debug state registration.
  • AJR and Bavarese updated the dec_lk201 driver: Switched to more sensible natural keyboard assignments for six keys above cursor block.
  • Angelo Salese updated stvvdp1.cpp: Fixed color calculations for non-mode 5 sprites and mode 2 transparent pen.
    • Improves Virtual Hydlide avatar shadow and Scud: the Disposable Assassin.
  • Angelo Salese updated ms32.cpp: Improved and cleaned up tile-tile priorities.
    • Fixes title screen in Suchie Pai 2, Gratia intermissions and Hayaoshi Quiz Nettou Namahousou flame screen during attract.
  • Angelo Salese updated hng64.cpp: Enabled preliminary ROZ floor for Fatal Fury Wild Ambition and Buriki One.
  • Angelo Salese updated snes_snd.cpp: Made TnDIV divide by 256 when setting written is 0, and merged timer counters into a single function.
  • Angelo Salese provided blockout.cpp improvements:
    • Fixed Agress text layer offset, and worked around initial VRAM check.
    • Converted to SCREEN_RAW_PARAMS and fixed visible area for Agress and Block Out.
    • Fixed input labels and hookups, following manual and in-game descriptions.
  • Angelo Salese updated taito_f3.cpp: Removed outdated kludge for Darius Gaiden.
  • Angelo Salese updated x1.cpp: Moved video functions into their own file and improved encapsulation.
  • Barry Rodewald provided some PC AT 2D accelerator updates:
    • s3: Reset hardware pointer colour select is on reading CR45, as per documentation.
    • mach8/mach32: Limit sourcex/y to 11 bits (fixes mach32 detection in bundled win9x drivers).
    • mach32: Mapped hardware pointer registers and got hardware cursor to display (still needs work).
    • mach32: Added 8514/A-compatible DAC registers (fixes I/O port conflict in DOS mach32 utilities, and 8bpp colours under win9x).
    • mach8: Added Scan To X command (used by win9x drivers to write cursor data).
    • mach32: Corrected display of 16bpp video mode in Windows 9x.
  • Brandon Munger updated the r9751 driver: Added keyboard input queue and CBX OS stack tracing.
  • cam900 updated vgmplay: Added HuC6280 stereo output, K054539, dual OKIM6295, NMK112 banking, and QSound support.
  • cam900 updated the qdrmfgp, djmain, konamigq drivers: Moved sample RAM to K054539 address map.
  • cam900 updated the plygonet driver: Added K054321.
  • cam900 moved Sega MultiPCM bank schems to device address map, and converted segas32 and segam1audio to configured banking.
    • Fixes Outrunners, which uses a 0x1800-byte header for 512 samples, and two 512KiB banks for sample data.
  • cam900 updated psikyo4.cpp: Cleaned up YMF278B banking.
  • cam900 converted Data East ACE chip emulation to a device and improved alpha blend/fade/palette effects.
  • cam900 updated the drgnmst driver: Fixed palette (12-bit RGB 4-bit intensity) - fixes fading.
  • cam900 updated rohga.cpp: Improved priority and alpha blending, and removed outdated comments.
  • cam900 removed redundant code from DECO drivers, and demoted games with missing effects to MACHINE_IMPERFECT_GRAPHICS.
  • cam900 updated the dassault driver: Added raw screen parameters.
  • cam900 updated the deco16ic device: Split pf1/pf2 RAM allowing sizes to differ.
  • cam900 updated cninja.cpp: Cleaned up I/O and protection handling.
  • Carl updated plugins/portname: Added preliminary plugin for loading input names from external files.
  • David Haywood updated the blackt96 driver: Hooked up sound and fixed pickup colours.
  • David Haywood provided pgm2 driver improvements:
    • Fixed foreground tilemap size (fixes kov3 boss death sequences).
    • Handle MSB of zooming (used by kov3).
    • Implemented sprite disable bit (fixes stray graphics in kov3 attract mode).
    • Added default SRAM, added speedups and fixed visible area for kov3.
    • Fixed save state support (also affects ARM CPU core).
  • David Haywood added support for Datel Game Booster Playstation peripheral.
  • David Haywood improved free play DIP switch defaults for Grudge Match sets.
    • Default to off for parent set as free play doesn't work, and default to on for older clone as coin mode doesn't work.
  • David Haywood moved sets using different CPUs out of VTech Genesis IQ driver.
  • David Haywood converted Radica Mega Drive-based TV games from software list entries to system drivers.
  • David Haywood updated vii.cpp: Corrected parent/clone relationships and demoted to not working.
  • David Shah added SY-889 ROM and machine, and implemented memory map, DMA, and RGP palette for correct colours.
  • David Shah made multiple improvements to nes_vt driver, including fixes to graphics and memory mapping.
  • dink fixed sample end position in sound/gaelco.cpp - fixes clicking sounds in various games.
  • Dirk Best and Luca Elia added SN54/74166 8-Bit Parallel-In/Serial-Out Shift Register device.
  • Dirk Best updated the asteroid driver: Added coin counters and clarified LEDs.
  • Dirk Best updated the 74153 device: Improved interface.
  • Dirk Best updated the d88_dsk format: Added some safety checks to avoid reading beyond the end of the file.
  • Edstrom updated didact.cpp: Split out of Candela and Esselte 100 computers into their own drivers for clarity.
  • Edstrom and Fredrik Ohrstrom updated the MyBrain 3000/JB-3000/Ericsson PC Step/One improvements:
    • Refactored graphics circuit, added color in 320x200 mode, fixed text scrolling, and added 80-character 640*200 mode.
    • Fixed speed issue by reducing CPU clock by 50% as suggested by RAM waitstates in the schematics.
    • Added support for -ramsize with 128K option and 256K default.
    • Emulated the INT7 pull down and up for the keyboard, and added support for three keyboard variants.
    • Added high-resolution 640*400 mode, and added crude cursor support for 40-character mode.
    • Added monochrome monitor support with palette to match the 525Nm P39 phosphor used in the Ericsson DU4721 monitor.
    • Added printer support.
    • Completed interrupt support, including jumper settings.
    • Fixed crude support for 36*25 color text mode, and added graphics mode 0 (resolution depends on monitor used).
  • endrift and Ryan Holtz updated the gba driver: Use correct initial mapping for movie cartridges - fixes v_sharkt, v_shrek, and v_shrek2.
  • F.Ulivi updated the hp2645 driver: Added RS232 I/O, multiple character sets, beeper, and option switches.
  • Firehawke added verbose logging for configuration file loading.
  • hap updated the hh_sm510 driver: Renamed Game & watch ROM sets to be more immediately recognisable.
  • iq_132 and Robbbert replaced ROM patches with protection simulation for route16, metafox, and maketrax.
  • Heihachi_73 updated aristmk5.cpp: Updated names/descriptions and improved internal artwork for a number of games.
  • Julian Lachniet updated ti85.cpp: Marked ti83p, ti83pse, ti84p, and ti84pse as NOT_WORKING, and added some more ti84p BIOS ROMs.
  • MetalliC updated ymz770.cpp: Updated documentation and tidied up.
  • MetalliC updated pgm2.cpp: Emulated kov3 ROM module communication and removed hack.
  • MetalliC updated pgm2.cpp: Improved simulation using real data, and made fake keys for kov3 V100 and V104.
  • Michael Zapf provided geneve driver updates:
    • v9938 should abort a command when the mode is switched before completion.
    • Added 128K/192K VRAM selection.
    • Converted logging to use logmacro.h helpers.
  • Michael Zapf updated the ti99 driver: Fixed debugger interference with cartridge selection line.
  • Nigel Barnes improved Acorn Electron peripheral emulation:
    • electron_plus1: Added Slogger Expansion 2.00 and 2.01.
    • electron_plus3: Added Advanced 1770 DFS 2.10.
    • electron: Added Rombox and Rombox+ expansion devices, and electron_rom software list.
    • electron: Re-implemented expansion port interface to access full 6502 bus.
    • Re-implemented cartridge slot device, and added several cartridge devices.
  • Nigel Barnes provided BBC Opus FDC updates:
    • bbc_opus8272: Connected TC strobe, device is now working.
    • bbc_opus2791: Added DDOS 3.16 BIOS option.
    • bbc_opus2793: Added DDOS 3.36 BIOS option.
  • Nigel Barnes differentiated between cartridge (cart) and romimage (rom) in generic slots.
  • Nigel Barnes provided dragon_fdc.cpp updates:
    • Added Premier FDC, for DeltaDOS.
    • Dragon FDC has READY line tied, fixes loading issues with Flex and OS9.
  • O. Galibert converted machine configuration builders to member functions of the state classes and simplified prototype.
  • O. Galibert updated the swtpc09, isbc8010b, jtc_es40 drivers: Fixed typos.
  • O. Galibert updated the attache driver: Fixed SIO mapping.
  • O. Galibert replaced list of crystal/resonator/oscillator frequencies with a solution that doesn't require recompiling everything on changes.
  • phulshof added artwork override and fallback options.
  • R. Belmont updated the quickpick5 driver: Hooked up ROM readbacks, improved visible area, hooked up color RAM, and allowed POST to pass.
  • R. Belmont updated the konmedal driver: Allowed shuriboy to display and fully pass POST, and hooked up I/O ports.
  • R. Belmont updated the mac driver: Added preliminary working but imperfect sound for maclc3.
  • R. Belmont and Al Kossow updated the mac driver: Added preliminary support for AE Quadralink 4-port serial.
  • R. Belmont and Al Kossow updated the mac driver: Added support for "BootBug" NuBus remote debugger card.
  • r09 provided FM Towns improvements:
    • Fixed horizontal wrap for bitmap layers.
    • Refactored line drawing, with support for zoom up to *16, and better wrapping.
    • Added support for all sixteen horizontal zoom levels supported by the hardware instead of just 5 (used in Misty and Rayxanber).
    • Simplified the line wrap detection code and added support all use cases including vertical scrolling and layer 1 with sprites.
    • Doubled line size when in single-layer plus high color mode.
    • Made the line wrapping code aware of VRAM page selection.
    • Fixed misplaced bottom lines.
    • Fixed vertical sync flag read from port 0xcff86 - Birdy Soft games now boot.
    • Implemented horizontal sync read from 0xcff86 - later 4th Unit games now boot (based on Barry Rodewald's implementation).
    • Fixed missing pixels in single-layer modes.
    • Fixed CD-ROM regressions that caused some games not to boot (e.g. Emerald Dragon or Indiana Jones and the Last Crusade).
    • Replaced 3dgolfha floppy dump with HxC MFM format dump, allowing copy protection check to pass.
    • Documented all non-working software list items.
  • rfka01 updated the alphatpx driver: Add HSYNC callback - allows P2 series machines to continue to MOS monitor and boot disks.
  • Roberto Fresca provided Lucky Ball 96 updates:
    • Hooked PPI 8255 for I/O, identified ST6265 MCU, and identified VRAM/VDP.
    • Added DAC 08 (not yet wired yet to the PPI 8255 due to troubles with mode 2).
    • Decrypted/unscrambled program ROM.
    • Documented I/O circuitry, PCB layout, edge connector, and DIP switches.
    • Added technical notes.
  • Roberto Fresca updated the miaction, tigerslt drivers: Decrypted programs and palettes.
  • Roberto Fresca updated goldstar.cpp: Expanded maincpu region from 32KiB to 64KiB for lucky8 and derivatives and mapped ROM in 0xC000-0xF7FF range.
  • Roberto Fresca updated the Neraidoula driver: Added notes about tiles from another game inside the graphics ROMs.
  • Roberto Fresca updated funworld.cpp: Updated notes for Jolly Card Italian sets.
  • Ryan Holtz updated the e132xs core: Added recompiler covering opcodes used by supported games.
  • smf added gross hack to fix kof10th save states.
  • smf improved support for unusual Windows build configurations:
    • Added workaround for clang static builds and enabled them again.
    • Don't force -O1 on clang builds.
    • Added -lSDL2main to fix linking with GCC 7.
    • Use dynamic linking for windows SDL builds to work around an apparent linker bug.
    • Fix building with Qt debugger.
  • smf added skeleton Sega network device.
  • smf updated the vamphalf driver: Improved mdig speedup, removed "space" calls, and replaced magic numbers with enumeration constants.
  • smf improved Mr Kicker speedup and standardised the rest apart from except aoh.
  • smf updated the popeye driver: Improved video emulation:
    • Fixed background in popeyej, popeyejo and popeyebl.
    • Fixed horizontal and vertical scroll register behaviour in popeye.
    • Changed function names from game name to the hardware ID the functionality was first used in.
    • Fixed popeye background scrolling when screen is flipped.
    • Implemented tile palette banking on TNX1 hardware (guess based on PROM contents).
    • Implemented sprite priority and clipping according to description in MT03725.
    • Moved protection save state into driver_start() leaving driver init for decryption.
    • Combine sprite PROMs and invert bootleg PROMs in the ROM load.
    • Bank the sprite palette and only update the palette if the bank register changes.
    • Draw background directly into bitmap and include the area above the background buffer.
  • smf fixed Z80 disassembly when $ed, $dd and $fd prefixes are used but the instruction is not valid.
  • Vas Crabb made use of C locale for int/float in XML files.
  • Vas Crabb detected attached debugger on OSX before generating trace/breakpoint trap.
  • Vas Crabb converted zippath directory to a C++ interface.
  • Vas Crabb updated the playch10 driver: Exposed countdown LEDs through output system and added internal layout to display them.
  • Ville Linde updated the k001604 device: Implemented front layer rotate and zoom.
  • webghost009 added GLSL bicubic filter (Catmull-Rom spline), and fixed pixel coordinates and sampling in GLSL bilinear filter.
  • Al Kossow updated the mac driver: Added version 1.3 ROM to BootBug card.
  • Al Kossow updated the tv912c driver: Redumped program ROM.
  • Bavarese updated wd2010.cpp: Use calculated access times typical for MFM drives of that age instead of hard coded values.
  • Bjorn Moser fixed Visual Studio build when path to source contains spaces.
  • Brian Troha updated mosaic.cpp: Add PCB layout for Mosaic and derived CPU/sound from oscillator frequencies.
  • exidyboy updated sorcerer_cass.xml: Updated details for Orb of Halucidon and Air Traffic Controller based on original manuals.
  • f205v updated the gaelco2 driver: Updated documentation based on photos of PCBs.
  • Guru updated c65.cpp: Added some notes and corrected CPU clock.
  • Leezer updated hiscore.dat for current MAME version.
  • Mikejmoffitt updated blockhl.cpp: Restored button 2 and 3 and joystick down inputs for Quarth and Block Hole.
  • MoochMcGee fixed a couple of issues reported by Coverity.
  • Porchy updated Popeye hardware documentation.
  • sjy96525 corrected years for Virtua Fighter 2 and Behind Enemy Lines.
  • Tafoid updated ibm5170.xml: Redumped ku2impact and kotobuki CD into .iso and .bincue and commented the source data.
  • Tafoid updated thepit.cpp: Fixed Lives DIP switches for Intrepid bootleg sets.
  • einstein95 and Tafoid updated gamegear.xml: Fixed NVRAM size for shinfrc2 and clones, allowing games to function properly (MT06845).