MAME 0.185
From MAMEDEV Wiki
Release Date
MAME 0.185 was released on 26 April 2017.
MAMETesters Bugs Fixed
- 06402: (Interface) UI:: Switch Item Ordering corrupts software list (Nathan Woods)
- 06481: (DIP/Input) (mac128.cpp) All classic Macs: Keyboard input is not working anymore in the emulated macs since version 0.181 (R. Belmont)
- 06516: (DIP/Input) (coolpool.cpp) 9ballsht and clones, coolpool and clones: Can't coin up (O. Galibert)
- 06526: (DIP/Input) (nbmj8891.cpp) club90s: dsw b should not exist (system11)
- 06532: (Save/Restore) (alpha68k.cpp) skysoldr skyadvnt timesold: No Sound (Osso)
- 06534: (Crash/Freeze) (fm7.cpp) fm77av: BASIC doesn't boot (Barry Rodewald)
Machine Support
New working machines
- Acchi Muite Hoi (David Haywood) (Surgeville) (Sean Sutton) (Jred) (Mike Krug) (Smitdogg) (The Dumping Union)
- Fidelity Dame Sensory Challenger (hap) (yovan)
- Fidelity Sensory Chess Challenger 8 (hap) (yovan)
- Galaxy Games StarPak 4 (prototype) (Keith M. Kolmos) (The Dumping Union)
- Novag Presto (hap) (Berger)
- Pirate Ship (Phil Bennett) (R. Belmont) (Jared Bresee)
- TI-2550 III (hap) (Sean Riddle)
- Tekken Card World (ShouTime) (Rob Carr) (The Dumping Union)
- Wireless 60 (Jungle Soft / Kids Station Toys Inc) (RebeccaRGB)
New working clones
- Bionic Commandos (bootleg, set 2) (TeamEurope)
- Gals Panic DX (Asia) (arcademodbios.com)
- Knights of Valour / Sangoku Senki (ver. 100, Hong Kong) (Pasky Junk)
- Mach Breakers (World, MB2) (caius) (Silvio Grazini) (The Dumping Union)
- Martial Masters (ver. 103, 102, 101CN) (kuze) (The Dumping Union)
- Megatack (set 2) (OriginalJohn)
- Novag Octo (hap) (Berger)
- Prehistoric Isle in 1930 (World, bootleg) (The Iron Goat)
- Rastan (World, Earlier code base) (System11) (The Dumping Union)
- Sonic Blast Man (US) (coolmod) (The Dumping Union)
- Street Fighter II': Champion Edition (UPL bootleg) (ShouTime) (The Dumping Union)
- Up Maguila (bootleg of Donkey Kong Jr.) (Asociacion A.R.C.A.D.E.)
Machines promoted to working
- HP 9845T (fulivi) (A.Kueckes)
- Popper (Dirk Best)
- Soreike Kokology Vol. 2 - Kokoro no Tanteikyoku (AJR)
New machines marked as MACHINE_NOT_WORKING
- GI-Classic EX (satellite terminal) (R. Belmont) (Jacob Kesinger) (Surgeville) (Paul Vining) (Smitdogg) (The Dumping Union)
- GI-Classic EX (server) (R. Belmont) (Phil Bennett)
- Gaelco Championship Tuning Race (Mark F.) (Smitdogg) (The Dumping Union)
- Galaxy Play (PinMAME)
- Game & Watch: Boxing (hap) (Sean Riddle)
- Game & Watch: Donkey Kong II (hap) (Sean Riddle)
- MegaTouch XL 6000 (Version r07) (R. Belmont)
- Megatouch XL Gold (Version r01) (R. Belmont) (Smitdogg) (The Dumping Union)
- MegaTouch XL (Italy version R1) (any) (R. Belmont)
- Megatouch XL Super 5000 (Version R5I) (R. Belmont) (Smitdogg) (The Dumping Union)
- Otomedius (ver GGG:J:A:A:2008041801) (R. Belmont) (dopefishjustin) (G. Paziouros) (S. Fauveau) (R. Higashi) (R. Howard) (B. Munger) (S. S. Neilson) (Tormod) (Smitdogg) (The Dumping Union)
- Police Trainer 2 (R. Belmont) (gamerfan) (Mr. CAST) (Smitdogg) (The Dumping Union)
- Ring Riders (Software version v2.2) (Mark F.) (Smitdogg) (The Dumping Union)
- Shark (US Billiards Inc.) (Stiletto) (Siftware)
- Super Derby II (Satellite board) (Charles MacDonald) (The Dumping Union)
- Super Star (Recreativos Franco) (AJR) (Akiles500)
- Unknown 'VIP 2000' game (TeamEurope) (f205v)
- Unknown Poker Game by Chain Leisure (Gerald (COY)) (The Dumping Union)
- Unknown Sega gambling game (M1 Satellite board) (Jacob Kesinger) (Surgeville) (Paul Vining) (Smitdogg) (The Dumping Union)
New clones marked as MACHINE_NOT_WORKING
- Megatouch XL 6000 (Version r02) (R. Belmont) (AeroCityMayor) (Smitdogg) (The Dumping Union)
- MegaTouch XL Gold (Version r00) (R. Belmont)
- MegaTouch XL Super 5000 (Version R5B) (R. Belmont)
- MegaTouch XL Super 5000 (Version R5E) (R. Belmont)
- Rocky (French speech) (PinMAME)
- The Real Ghostbusters (US 3 Players, revision ?) (caius) (The Dumping Union)
- Tokyo Cop (US, dedicated version) (Mark F.) (Smitdogg) (The Dumping Union)
- Tokyo Cop (US, kit version) (Mark F.) (Smitdogg) (The Dumping Union)
- U.S.A. Football (R01u) (PinMAME)
Notable new WORKING software list additions
- BBC Micro Model B cassettes
- 3D-Wars (Demo) (Nigel Barnes)
- Arcade 4 Pack (Nigel Barnes)
- Blockbusters Question Master (Nigel Barnes)
- Children from Space (Nigel Barnes)
- CopyCat III (Nigel Barnes)
- Crazy Cut/Mastermind/Klingon Attack (Nigel Barnes)
- Disk Master (Nigel Barnes)
- Football Director (Nigel Barnes)
- How To Move Programs To Disk (Nigel Barnes)
- Music (Nigel Barnes)
- Predict (Nigel Barnes)
- Pro Word (Nigel Barnes)
- Superior Mover (Nigel Barnes)
- Tape Transfer Software (Nigel Barnes)
- Toccata (Nigel Barnes)
- Tandy Radio Shack Color Computer cartridges
- Dragon 32/64 cassettes: All known cassette dumps (Nigel Barnes)
- Dragon DOS diskettes: All known floppy dumps (Nigel Barnes)
- Dragon FLEX diskettes: FLEX System and other Compusense FLEX releases (Nigel Barnes)
- Dragon OS-9 diskettes
- Dragon Alpha (Professional) diskettes
- Fujitsu FM Towns CD-ROMs
- IBM PC disk images
- IBM PC/AT disk images
- Gods (ArcadeShadow)
- Indiana Jones and the Fate of Atlantis (ArcadeShadow)
- The Legend of Kyrandia (ArcadeShadow)
- Monkey Island 2: LeChuck's Revenge (ArcadeShadow)
- Space Quest V: The Next Mutation (ArcadeShadow)
- Borland Quattro Pro 3.0 (German) (darkstar)
- Borland Quattro Pro 5.0 (German) (darkstar)
- Borland Turbo Basic 1.0 (German) (darkstar)
- Borland Turbo Pascal 4.0 (darkstar)
- Borland Turbo Pascal 6.01 (German) (darkstar)
- IBM PC disk images: Various alternate sets (Justin Kerk)
- IBM PC/AT disk images: Various alternate sets (Justin Kerk)
- Sega MegaDrive/Genesis cartridges
- Nintendo Entertainment System cartridges
- NEC PC-9801 CD-ROMs
- Commodore PET Function ROMs
- PHC-25 cassettes: official releases from Sanyo, Citadelle (Nigel Barnes)
Notable new NOT WORKING software list additions
Contributions
The known contributions for this version are, in the order specified in the whatsnew:
- Couriersud did pstring, pdynlib, pfmtlog refactoring:
- pstring:
- Changed to use std::string for storage (removes allocation code).
- Added support for UTF16LE.
- Renamed size() to mem_t_size() and len() to length(), added size() == length().
- Added empty() and simple compare().
- Simplified pfmtlog, added more C++.
- pdynlib: Added a dynproc type to dynlib to wrap dynamic library calls.
- Fixed two coverty scan issues and various clang warnings.
- pstring:
- Couriersud did Netlist code refactoring:
- More use of C++ features.
- Some CRTP in pfmtlog.
- Demangled code for truthtables.
- Used more constexpr.
- Rewrote main loop.
- Used default constructors and assignment operators were applicable.
- Optimized 7448 and 9316.
- Startup time decreased by 25% to 30% (netlists like pong/kidniki are parsed, analyzed and constructed in around 15 ms).
- Run performance has improved by about 5%.
- Angelo Salese fixed Gun Card logic in Double Dealer.
- AJR renamed the write-only -printer image instance type to -printout (the former conflicts with printer port in several drivers).
- AJR updated the osbexec driver: Added experimental support for RS232C serial ports.
- AJR provided UI input map fixes:
- Fixed a longstanding bug that prevented binding several ORed buttons to any input belonging to a non-root device.
- Fixed a visual glitch when assigning inputs to analog sequences.
- AJR updated decocass.cpp: Corrected missile colors for Highway Chase and Astro Fantasia.
- AJR updated segas24.cpp, segaybd.cpp, segajw.cpp: Use 315-5296 for I/O.
- AJR updated segaxbd.cpp: Rewrote CXD1095 as a device and also add it to megaplay.cpp, megatech.cpp, cyclwarr, and bigfight.
- AJR updated segaybd.cpp, srallyc: Added OKI MSM6253 device.
- AJR added VS9209 I/O device for various Video System games.
- AJR converted Sega Model 1 Sound Board and Z80-based Digital Sound Board to use proper UART-based serial interfaces.
- AJR updated segas32.cpp: Input modernization:
- Use I8255 or MSM6253 devices for most non-JAMMA inputs.
- Separated service and test inputs in Multi-32 and twin-unit sets.
- arescue: Four coins are recognized, not just two.
- ga2: Use MB8421 device for V25 communications.
- orunners: Assign keys to some 2P inputs.
- Use Sega 315-5296 device for primary I/O.
- Restored Coin 2 inputs to f1lap, radm, radr, slipstrm.
- Identified onboard service inputs and restored them to practically all games.
- AJR updated hotrod: Read pedals through MSM6253.
- AJR updated kokoroj2: Corrected inputs, changed name to match title screen.
- Found switch to disable CD and printer, game presumably works now, albeit imperfectly.
- AJR updated the jvs13551 device: Removed identical second halves of overdumped MCU PROMs.
- AJR created device_palette_interface mixin:
- Provides most of the functionality from palette_device besides initialization/decoding routines and RAM interface.
- Updated screen_device and device_gfx_interface to use device_palette_interface rather than palette_device.
- Modified v9938 and v9958 to use device_palette_interface rather than a subdevice.
- caius, Andreas Naive and AJR updated Seibu/TAD PROMs:
- toki: Added dumps of bipolar PROMs. (caius)
- bloodbro: Added dump of bipolar PROM. (Andreas Naive)
- dynduke, raiden, skysmash, cupsoc: Documented undumped PROMs for many sets. (AJR)
- Carl updated the ds1205 device: Added Dallas DS1205 Multikey.
- Dirk Best updated the popper driver: Fixed memory map, finished gfx rendering - game is fully working again.
- Nigel Barnes updated the dgnbeta driver: Added software list with OS-9 system and apps.
- Replaced 5.25" floppies with 3.5", and added sounds.
- Enabled floppy motor.
- Removed tag lookups.
- Luca Elia updated cesblit.cpp: Improved blit coordinates - fixes some missing graphics in e.g. galgame4.
- Nathan Woods created 'util::arbitrary_clock' class template representing a clock with known epoch.
- Converted NTFS filetime code and Imgtool Mac datetime code to use new template.
- Nathan Woods updated the coco driver: Further cleanups in cartridge slot signal handling:
- Attempts to make signals on the CoCo cartridge slot (CART, NMI, HALT) more standardized, particularly the practice of Program Paks tying the CART line to Q.
- Should fix some outstanding bugs in how these signals were passed around when using the CoCo Multi-Pak interface.
- Nathan Woods fixed issue that could cause bogus arguments to be reported incorrectly.
- Example: 'mame -whatever nes' would previously be reported as "Unrecognized argument: nes".
- Nathan Woods did some refactoring in response to MT6531:
- Exposed emu_options image and slot selections as maps, store data that persists across sessions here rather than subverting core_options.
- Overhauled various implementations of get_default_card_software().
- Nathan Woods fixed out of bounds issues in NeoGeo memory access.
- Nathan Woods did miscellaneous cleanups:
- Fixed a pedantic MSVC warning in dipalette.h.
- Made a few random methods 'const'.
- Changed a lookup within the softlist code to use std::find_if().
- Nigel Barnes updated the dragon32 driver: Corrected release year and company of Spanish clones.
- Added joysticks to all machines, Added floppy sounds.
- Nigel Barnes updated the dragon200e driver: Added chargen ROM, not working (possibly MC6847 issue).
- Demoted to MACHINE_NOT_WORKING.
- Nigel Barnes updated the d64plus: Added CRTC with chargen ROM and second screen output, not yet hooked up.
- Demoted to MACHINE_NOT_WORKING.
- Nigel Barnes updated the dgnalpha driver: Added older Boot v0.4 ROM.
- Replaced 5.25" floppy drives with 3.5", and added sounds.
- Nigel Barnes updated the atom driver: Added csw cassette format.
- Nigel Barnes updated the dragon driver: Moved all Dragon cartridges from coco_cart to dragon_cart.
- Nigel Barnes updated the phc25 driver: Added character generator ROM, not yet used.
- Nigel Barnes updated the electron driver: Added Power Software joystick interface.
- Nigel Barnes and O. Galibert updated the bbc driver: Removed the direct update handler (not supposed not to be useful any more).
- O. Galibert updated the ti8* driver: Removed the gross boot hack - breaks the Flash-based models.
- O. Galibert updated the abc80x driver: Removed the direct update handler.
- O. Galibert updated the multiface 2 device: Disabled the direct update handler.
- Device should be overhauled using the by now-reversed PAL information.
- O. Galibert updated the i86 core: Added decrypted opcodes space support.
- O. Galibert removed support for direct updated handlers.
- O. Galibert updated the mlanding driver: Fixed tms32025 memory map.
- O. Galibert updated the tms32026 core: Fixed status register and banking.
- Ted Green updated the voodoo device: Changed multi base address selection to fix funkball textures.
- R. Belmont updated the vp101 driver: Improved support for reduced-cost VP050 version.
- R. Belmont updated the piratesh driver: Fixed to pass POST, which earns it working with imperfect graphics.
- R. Belmont updated the mac driver: Fixed major 0.183 regression in Mac II series.
- R. Belmont updated the megatouch driver: More work clarifying the various versions, thanks to Merit documentation.
- Colin Douglas Howell and R. Belmont updated the apple1 driver: Fixed bug introduced when the cassette was slotified.
- Samuele Zannoli updated the chihiro driver: Added high level simulation of an2131sc - OutRun 2 runs with USB enabled and no patches.
- Vas Crabb turned pstring iterator into a real forward iterator that works with standard algorithms.
- Vas Crabb made the core assume LLVM libc++ if __llvm__ is defined but __GLIBC__ is undefined (fixes bx build with MacPorts clang).
- Vas Crabb applied environment variable substitution to bgfx_path (github issue #2201).
- MetalliC updated the naomi, triforce, chihiro drivers: Converted remaining bad CHD v4 to good v5, track1 and track2 length was restored based on now-known data patterns.
- MetalliC updated naomi.cpp: Export mushik2e/mushi2eo are 3-in-1 Mushiking II, III and III+ games.
- Antoine Mine updated the thomson driver: Fixed regressions to (legacy) floppy support.
- Hans Ostermeyer updated the apollo driver: Fixed SIO regression.
- Happy allowed debugger 'dasm' command to traverse virtual spaces with unmapped holes.
- Happy updated the uml framework: Added case for parameter PTYPE_CODE_LABEL in UML instruction disassembly.
- SailorSat updated the vicdual driver: Added 97269-P-B and 97271-P daughterboards for nsub.
- Confirmed PR-33 and PR-34 on the nsub motherboard - type is MMI 6331 (32*8).
- Added the 97269-P-B daughterboard - gradient is still a simulation, but uses the PROMs (starfield is still missing).
- fulivi and A.Kueckes implemented HP 9845T driver (9845 with HP987080A hardware-accelerated monochrome graphics).
- Fixed a race condition in 45T, added second tape drive (T14), 98035 module default SC is 9 now.
- hphybrid: Hopefully fixed a super-subtle race condition in 9845T video hardware.
- David Haywood updated acchi.cpp: Promoted to working state:
- Added scantimer interrupt, inputs work in game.
- Added video banking.
- Added an NMK112 for sound banking, might not be hooked up correctly, difficult to know without understanding Japanese.
- Oki frequencies etc. need verifying on PCB.
- Jean-Francois DEL NERO updated the mcs51 core: Fixed indirect memory access opcodes dec, inc and xch_a.
- Indirect access can't use SFRs, only extra memory above 0x80.
- htjywf2008 updated the i86 core: Fixed JNL flags test (github issue #2200).
- Brian Troha updated namconb1.cpp: Corrected Coin inputs and added in Coins 3 and 4 as needed.
- RebeccaRGB updated the wirels60 driver: Made P2 IO port optional.
- moralrecordings updated the sblaster device: Save DSP state, fixed incessant popping before first use.
- moralrecordings updated the ymf262 device: Added save state support and slot pointer checks.
- kazblox provided nes improvements:
- Marked edu2k48 as working, added notes about mouse titles.
- Made koko not use battery-backed WRAM as shown in PCB picture.
- waixing.cpp: Slight modernizations - waixing_sgzlz_device now implemented the way CaH4e3 does it, gets some titles working.
- einstein95 fixed Head Panic modesty settings (more modesty means more clothing; nude/bikini pics are displayed after a level when set).
- OzFalcon provided input/service button fixes and cleanups:
- realbrk.cpp: Removed service button hard-coded keycode assignment.
- hanaroku: Use standard hanafuda inputs and key assignments, remove hard-coded IPT_SERVICE assignments.
- aleck64.cpp: Corrected Service/Test Button assignments.
- suprstar: Remove hard-coded keycode assignments.
- ampoker2.cpp: Made various key assignments consistent.
- albazc.cpp: Assigned "Data Clear" to IPT_MEMORY_RESET, changed "Medal In" and "Pay Out" to standard buttons, changed lockout "Key" to PORT_TOGGLE type, corrected "Payout" button to use "IPT_GAMBLE_PAYOUT", corrected IPT_SERVICE assignments, set IPT_SERVICE and Double up buttons as standard assignments, set "Ext In 1" & "Ext In 2" as IPT_OTHER.
- limyz fixed gtrfrk6m boot by correcting Flash card memory size to 32MB, works for gtrfrk5m as well (thanks to @sakamoto-neko).
- rtw updated naomi.cpp: Redumped "Initial D Arcade Stage Ver. 2 (Export) (GDS-0027)".
- Peter Wilhelmsen and The Dumping Union redumped Knights of Valour 3 HD (V105).
- ShouTime documented that Taito's T.T. New York New York ROMs match the Sigma set.
- fink added later SuperMac Spec/8 III V1.3 NuBus ROM.
- Peter Bortas fixed coverity CID 157540 and CID 15741: Missing comma resulting in unintentional string concatenation.
- NekoEd updated the sun4 driver: Added SPARCstation IPX V2.3 and SPARCstation 1 V2.2 boot ROMs.
- Pugsy fixed writes to decrypted opcode memory space.
- Separated EXPSPACE_RAMWRITE and EXPSPACE_OPCODE case statements to allow opcode writes to access the correct memory.
- Example: In flicky this will now disable cat collisions with the main sprite: maincpu.ob@3ac6=c3.