0.185
-----


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)


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 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 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]


New working software list additions
-----------------------------------
bbcb_cass:
  3D-Wars (Demo), Arcade 4 Pack, Blockbusters Question Master, Children from Space, CopyCat III,
  Crazy Cut/Mastermind/Klingon Attack, Disk Master, Football Director, How To Move Programs To Disk, Music, Predict, Pro Word,
  Superior Mover, Tape Transfer Software, Toccata [Nigel Barnes]
coco_cart: Super LOGO [Nigel Barnes]
dragon_cass: All known cassette dumps [Nigel Barnes]
dragon_flop: All known floppy dumps [Nigel Barnes]
dragon_flex: FLEX System and other Compusense FLEX releases [Nigel Barnes]
dragon_os9: OS-9, BASIC09, C, Dynacalc, Pascal, RMS, Stylograph [Nigel Barnes]
dgnalpha_flop: OS-9, NitrOS9, C, Dynacalc, Pascal, RMS, Stylograph, etc. [Nigel Barnes]
fmtowns_cd:
  F-BASIC386 Compiler v1.1 L21, Dennou Ehon - Kyouryuu no Sekai, Hyper Oku no Hosomichii, Soko-ban Perfect,
  Youjuu Senki 2 - Reimei no Senshi [r09]
ibm5150:
  Golden Axe, Home Alone, Prince of Persia v1.0 [ArcadeShadow]
ibm5170:
  Gods, Indiana Jones and the Fate of Atlantis, The Legend of Kyrandia, Monkey Island 2: LeChuck's Revenge,
  Space Quest V: The Next Mutation [ArcadeShadow]
  Borland Quattro Pro 3.0 (German), Borland Quattro Pro 5.0 (German), Borland Turbo Basic 1.0 (German),
  Borland Turbo Pascal 4.0, Borland Turbo Pascal 6.01 (German) [darkstar]
ibm5150, ibm5170: Various alternate sets [Justin Kerk]
megadriv: Zhan Qi - Chinese Battle Chess (Tw) [system11]
nes: Adan y Eva [No-Intro], AV Super Real Pachinko [Frank Cifaldi]
pc98_cd:
  Jorougumo - Jubaku no Dorei-tachi, Ms. Detective File #1 - Iwami Ginzan Satsujin Jiken, Youjuu Senki 2 - Reimei no Senshi [r09]
pet_rom: KeyChip [Andy Grady]
phc25_cass: official releases from Sanyo, Citadelle [Nigel Barnes]


New NOT_WORKING software list additions
--------------------------------------- 
gameboy: Song of the Pipa / Magic Ball [James, TeamEurope, Tauwasser]
pce_tourvision: Dragon Egg! [system11]


Source Changes
--------------
-pstring, pdynlib, pfmtlog refactoring: [Couriersud]
 * 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.

-Netlist code refactoring: [Couriersud]
 * 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%.

-Fixed Gun Card logic in Double Dealer. [Angelo Salese]

-Renamed the write-only -printer image instance type to -printout (the former conflicts with printer port in several drivers). [AJR]

-osbexec: Added experimental support for RS232C serial ports. [AJR]

-UI input map fixes: [AJR]
 * 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.

-decocass.cpp: Corrected missile colors for Highway Chase and Astro Fantasia. [AJR]

-segas24.cpp, segaybd.cpp, segajw.cpp: Use 315-5296 for I/O. [AJR]

-segaxbd.cpp: Rewrote CXD1095 as a device and also add it to megaplay.cpp, megatech.cpp, cyclwarr, and bigfight. [AJR]

-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]

-segas32.cpp: Input modernization: [AJR]
 * 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.

-hotrod: Read pedals through MSM6253 [AJR]

-kokoroj2: Corrected inputs, changed name to match title screen. [AJR]
 * Found switch to disable CD and printer, game presumably works now, albeit imperfectly.

-jvs13551: Removed identical second halves of overdumped MCU PROMs. [AJR]

-Created device_palette_interface mixin: [AJR]
 * 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.

-Seibu/TAD PROM stuff:
 * 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]

-ds1205: Added Dallas DS1205 Multikey. [Carl]

-popper: Fixed memory map, finished gfx rendering - game is fully working again. [Dirk Best]

-dgnbeta: Added software list with OS-9 system and apps. [Nigel Barnes]
 * Replaced 5.25" floppies with 3.5", and added sounds.
 * Enabled floppy motor.
 * Removed tag lookups.

-cesblit.cpp: Improved blit coordinates - fixes some missing graphics in e.g. galgame4. [Luca Elia]

-Created 'util::arbitrary_clock' class template representing a clock with known epoch. [Nathan Woods]
 * Converted NTFS filetime code and Imgtool Mac datetime code to use new template.

-coco: Further cleanups in cartridge slot signal handling: [Nathan Woods]
 * 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.

-Fixed issue that could cause bogus arguments to be reported incorrectly. [Nathan Woods]
 * Example: 'mame -whatever nes' would previously be reported as "Unrecognized argument: nes".

-Refactoring in response to MT6531: [Nathan Woods]
 * 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().

-Fixed out of bounds issues in NeoGeo memory access. [Nathan Woods]

-Miscellaneous cleanup: [Nathan Woods]
 * 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().

-dragon32: Corrected release year and company of Spanish clones. [Nigel Barnes]
 * Added joysticks to all machines, Added floppy sounds.

-dragon200e: Added chargen ROM, not working (possibly MC6847 issue). [Nigel Barnes]
 * Demoted to MACHINE_NOT_WORKING.

-d64plus: Added CRTC with chargen ROM and second screen output, not yet hooked up. [Nigel Barnes]
 * Demoted to MACHINE_NOT_WORKING.

-dgnalpha: Added older Boot v0.4 ROM. [Nigel Barnes]
 * Replaced 5.25" floppy drives with 3.5", and added sounds.

-atom: Added csw cassette format. [Nigel Barnes]

-dragon: Moved all Dragon cartridges from coco_cart to dragon_cart [Nigel Barnes]

-phc25: Added character generator ROM, not yet used. [Nigel Barnes]

-electron: Added Power Software joystick interface. [Nigel Barnes]

-bbc: Removed the direct update handler (not supposed not to be useful any more). [Nigel Barnes, O. Galibert]

-ti8*: Removed the gross boot hack - breaks the Flash-based models. [O. Galibert]

-abc80x: Removed the direct update handler. [O. Galibert]

-multiface 2: Disabled the direct update handler. [O. Galibert]
 * Device should be overhauled using the by now-reversed PAL information.

-i86: Added decrypted opcodes space support. [O. Galibert]

-Removed support for direct updated handlers. [O. Galibert]

-mlanding: Fixed tms32025 memory map. [O. Galibert]

-tms32026: Fixed status register and banking. [O. Galibert]

-voodoo: Changed multi base address selection to fix funkball textures. [Ted Green]

-vp101: Improved support for reduced-cost VP050 version. [R. Belmont]

-piratesh: Fixed to pass POST, which earns it working with imperfect graphics. [R. Belmont]

-mac: Fixed major 0.183 regression in Mac II series [R. Belmont]

-megatouch: More work clarifying the various versions, thanks to Merit documentation. [R. Belmont]

-apple1: Fixed bug introduced when the cassette was slotified. [Colin Douglas Howell, R. Belmont]

-chihiro: Added high level simulation of an2131sc - OutRun 2 runs with USB enabled and no patches. [Samuele Zannoli]

-Turned pstring iterator into a real forward iterator that works with standard algorithms. [Vas Crabb]

-Assume LLVM libc++ if __llvm__ is defined but __GLIBC__ is undefined (fixes bx build with MacPorts clang). [Vas Crabb]

-Apply environment variable substitution to bgfx_path (github issue #2201). [Vas Crabb]

-naomi, triforce, chihiro: Converted remaining bad CHD v4 to good v5, track1 and track2 length was restored based on now-known data
 patterns. [MetalliC]

-naomi.cpp: Export mushik2e/mushi2eo are 3-in-1 Mushiking II, III and III+ games. [MetalliC]

-thomson: Fixed regressions to (legacy) floppy support [Antoine Mine]

-apollo: Fixed SIO regression. [Hans Ostermeyer]

-Allow debugger 'dasm' command to traverse virtual spaces with unmapped holes. [Happy]

-uml: Added case for parameter PTYPE_CODE_LABEL in UML instruction disassembly. [Happy]

-vicdual: Added 97269-P-B and 97271-P daughterboards for nsub. [SailorSat]
 * 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).

-Implemented HP 9845T driver (9845 with HP987080A hardware-accelerated monochrome graphics). [fulivi, A.Kueckes]
 * 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.

-acchi.cpp: Promoted to working state: [David Haywood]
 * 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.

-mcs51: Fixed indirect memory access opcodes dec, inc and xch_a. [Jean-Francois DEL NERO]
 * Indirect access can't use SFRs, only extra memory above 0x80.

-i86: Fixed JNL flags test (github issue #2200). [htjywf2008]

-namconb1.cpp: Corrected Coin inputs and added in Coins 3 and 4 as needed. [Brian Troha]

-wirels60: Made P2 IO port optional. [RebeccaRGB]

-sblaster: Save DSP state, fixed incessant popping before first use. [moralrecordings]

-ymf262: Added save state support and slot pointer checks. [moralrecordings]

-nes improvements: [kazblox]
 * 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.

-Fixed Head Panic modesty settings (more modesty means more clothing; nude/bikini pics are displayed after a level when set).
 [einstein95]

Input/service button fixes and clenups: [OzFalcon]
 * 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.

-Fixed gtrfrk6m boot by correcting Flash card memory size to 32MB, works for gtrfrk5m as well (thanks to @sakamoto-neko). [limyz]

-naomi.cpp: Redumped "Initial D Arcade Stage Ver. 2 (Export) (GDS-0027)". [rtw]

-Redumped Knights of Valour 3 HD (V105). [Peter Wilhelmsen, The Dumping Union]

-Documented that Taito's T.T. New York New York ROMs match the Sigma set. [ShouTime]

-Added later SuperMac Spec/8 III V1.3 NuBus ROM. [fink]

-Fixed coverity CID 157540 and CID 15741: Missing comma resulting in unintentional string concatenation. [Peter Bortas]

-sun4: Added SPARCstation IPX V2.3 and SPARCstation 1 V2.2 boot ROMs. [NekoEd]

-Fixed writes to decrypted opcode memory space. [Pugsy]
 * 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.
