0.190
-----

Changelog 0.189-0.190 (MAMEUI):

Changes:
- 10 folders (BIOS, CPU, Dumping, Manufacturer, Refresh, Resolution, Screen, Sound, Source and Year) have been made external. MAMEUI will create and refresh  them automatically as needed. This means that MAMEUI will start up even faster on the 2nd and subsequent uses. The new files can be used as input to MAME's internal UI filtering system.
- Lots of work was done to reduce the number of crashes that came with the last few builds.
- Fixed crash when selecting a new background (even when you hit Cancel)
- Fixed crash when unexpected data was found in mameui.ini and mame_g.ini
- Fixed problem where the last machine you had chosen wasn't remembered
- Fixed problem where it didn't remember which software tab you had chosen
- Fixed problem with splitters going crazy when trying to adjust window sizes
- Fixed problem with hide/unhide of the software area not synchronised with the setting
- The new default window size is to fill most of the screen - whatever size it is.
- You can right-click on a game and play the AntoPisa movie mp4 on your default mp4 program
- You can right-click on a game and open the PDF with your default PDF reader program
- 10 of the treeview folders (BIOS, CPU, Dumping, Manufacturer, Refresh, Resolution, Screen, Sound, Source and Year) have been made external. MAMEUI will refresh them as part of the caching process. They are stored in the folders directory.


Note:
- Unable to replicate a reported problem where softlists wouldn't show
- Unable to replicate a reported problem with fullscreen
- The new external folders (ini files) can be used as extra filters in MAME's internal UI.
- If weird stuff happens on the first run of 0.190, try deleting mame_g.ini 
- On the first run, it may take up to 20 seconds to build the cache. On subsequent runs it should start almost instantly.



Changelog 0.189-0.190 (MAME):

MAMETesters Bugs Fixed
----------------------
- 00490: [Sound] (homedata.cpp) hourouki: It is missing voices of "Reach", "Ron" etc. (smf)
- 06658: [Plugins] (mappy.cpp) mappy, mappyj: When using cheats driven by <parameter, left arrow doesn't change displayed value (Carl)
- 06672: [Sound] (starwars.cpp) starwars: Missing/malfunctioning sound (AJR)
- 06673: [DIP/Input] (subsino.cpp) stbsub: Missing dip-switch info. (Diet Go Go Fan)
- 06680: [Sound] (namcos2.cpp) metlhawk: Missing sound (Angelo Salese)
- 06682: [Sound] (cinemat.cpp) qb3: Missing AY-3-8910 sound (AJR)


New working machines
--------------------
Altered Beast (Tiger handheld) [hap, Sean Riddle]
Laser 2001 [cvemu]
Mephisto Modena [yoyo_chessboard, Sandro Ronco]
Mephisto Monte Carlo [Sandro Ronco]
Mephisto Super Mondial II [yoyo_chessboard, Sandro Ronco]
Mephisto Super Mondial [yoyo_chessboard, Sandro Ronco]
R-Zone: Batman Forever [hap, Sean Riddle]
R-Zone: Indy 500 [hap, Sean Riddle]
unknown Italian poker game [caius, AJR, Ivan Vangelista, Roberto Fresca]


New working clones
------------------
Alligator Hunt (World, protected) [Pablo]
Beast Busters (Japan, Version 2, J3) [Layer @ jammaplus]
Big Buck Hunter - Shooter's Challenge (v1.60.01) [Ted Green]
Chuka Taisen (Japan) (P0-025-A PCB) [Pacman70]
Iron Horse (version K) [Coolmod, The Dumping Union]
Kick Off (bootleg) [caius, The Dumping Union]
Lady Master of Kung Fu (set 2, older) [Corrado Tomaselli, The Dumping Union]
Land Breaker (World) / Miss Tang Ja Ru Gi (Korea) (pcb ver 1.0) (AT89c52 protected) [Hammy]
Maniac Square (protected, Version 1.0, Checksum DEEE)
  [Peter Wilhelmsen, Morten Shearman Kirkegaard, Charles MacDonald, David Haywood]
Royal Card / Royal Jackpot (with a third draw)(encrypted) [Roberto Fresca, Team Europe]
Syvalion (US, PS2 Taito Legends 2) [MetalliC, rtw, Zerochan]
Syvalion (World, PS2 Taito Legends 2) [MetalliC, rtw, Zerochan]


Machines promoted to working
----------------------------
Alligator Hunt (Spain, protected) [David Haywood, Darksoft, Morten Shearman Kirkegaard, Peter Wilhelmsen]
Big Buck Hunter - Shooter's Challenge (v1.60.01) [Ted Green]
Big Buck Hunter Call of the Wild (v3.02.5) [Ted Green]
Big Buck Hunter II - Sportsman's Paradise (v2.02.11) [Ted Green]
Glass (Ver 1.1, Break Edition, Checksum 49D5E66B, Version 1994) [Peter Wilhelmsen, Morten Shearman Kirkegaard, David Haywood]
Great Guns [Angelo Salese]
Maniac Square (protected, Version 1.0, Checksum CF2D)
  [Peter Wilhelmsen, Morten Shearman Kirkegaard, Charles MacDonald, David Haywood]
Mazer Blazer (set 1) [Angelo Salese]
Mephisto Mega IV [Sandro Ronco]
Tecmo World Cup '94 (set 1) [Angelo Salese]
Virtual Pool [Ted Green]


Clones promoted to working
--------------------------
Big Buck Hunter - Shooter's Challenge (v1.50.07) [Ted Green]
Glass (Ver 1.0, Break Edition, Checksum C5513F3C) [Peter Wilhelmsen, Morten Shearman Kirkegaard, David Haywood]
Glass (Ver 1.0, Break Edition, Checksum D3864FDB) [Peter Wilhelmsen, Morten Shearman Kirkegaard, David Haywood]
Mazer Blazer (set 2) [Angelo Salese]
Mephisto Monte Carlo IV LE [Sandro Ronco]
Slap Fight (A76 set, GX-006-A PCB) [Corrado Tomaselli, The Dumping Union]
Tecmo World Cup '94 (set 2) [Angelo Salese]


New machines marked as NOT_WORKING
----------------------------------
Cisco/Fisco 400 [TTL] [Andrew Welburn]
Convergent Miniframe [rfka01, R. Belmont]
Gaelco Football [Peter Wilhelmsen, Smitdogg, The Dumping Union]
Gran Trak 10/Trak 10/Formula K [TTL] [Mike Salay]
Gran Trak 20/Trak 20/Twin Racer [TTL] [Ed Fries]
Le Mans [TTL] [teeray]
Nintendo DS [Ryan Holtz]
Qwak!/Quack [TTL] [Ed Fries]
Triumph-Adler alphatronic P3 [Dirk Best, rfka01]


New clones marked as NOT_WORKING
--------------------------------
AEG Olympia Olytext 30 [rfka01]
Bingo Wave [Harcsa Bela, caius]
Ericsson PC [Joakim Larsson Edstrom, Joel Tegner]
Ericsson Portable PC [Joakim Larsson Edstrom, Joel Tegner, FakeShemp]
Guns N Roses (2.00) [Gore Daimon, Guilherme Cobra]
Meteor (Stern, set 2) [Gore Daimon, Guilherme Cobra]
PC/AT 386SX (VGA, MF2 Keyboard) [Carl]
Robot Hunting (bootleg of Death Race) [TTL] [f205v, Any]
Schneider EURO PC II [rfka01]
Schneider EURO XT [rfka01]
Shootout Pool Prize (Export) / Shootout Pool The Medal (Japan) Version B -P [Ordyne]


New working software list additions
-----------------------------------
apple2: Thief [san inc. & TRex]
apple2_cass: Color Demosoft / Little Brickout, Lords of Karma, Startrek / Starwars [Dagarman]
archimedes: SCSI Support Disc [Nigel Barnes]
bbcb_flop: ArcPinball [Nigel Barnes]
c128_cart: VizaWrite 128 [terror]
hp85_rom: Assembler ROM, I/O ROM, Matrix ROM, Service ROM, Service ROM (fixed) [F.Ulivi]
ibm5150:
  Concurrent PC DOS 3.2, Concurrent PC DOS 4.1, Concurrent DOS XM 6.0, Concurrent DOS XM 6.01, Concurrent DOS XM 6.21 [Justin Kerk]
ibm5170:
  Freddy Pharkas, Frontier Pharmacist [ArcadeShadow]
  Wing Commander II - Special Operations 1, Wing Commander II - Special Operations 2 [breiztiger]
  Concurrent DOS 386 2.0, Concurrent DOS 386 3.01 [Justin Kerk]
kayproii: Digital Keyboards' Synergy Host Control System [shattered]
laser2001_cart: Salora Disk Drive [cvemu]
pce_tourvision: Bomberman 93, Die Hard, Hit The Ice, Knight Rider Special [system11]
spectrum_cass: Currah MicroSpeech Demo, Fuller Box Orator Demonstration, Shadow of the Unicorn, Spectrum Voice Chess [Nigel Barnes]


Translations added or modified
------------------------------
Dutch [Jos van Mourik]
Italian [Tharabas17]
Spanish [A. Viloria]
Turkish [Kadir Eksi]


Source Changes
--------------
-Added new AM9513 System Timing Controller device. [AJR]

-Improved 28XX parallel EEPROM emulation: [AJR]
 * Emulated direct manipulation of /OE line for read/write mode control.
 * Added special handling for data polling before a write has completed.
 * Allow optional configuration to lock EEPROM after each write, as often used by Atari.
 * Replaced Atari EEPROM interface devices with base device - to use old NVRAM files, rename them from eeprom_eeprom to eeprom.

-dblewing: Modernized soundlatch; improved IRQ arbitration for (hopefully) fewer dropped sound commands. [AJR]

-cninjabl2: Fixed sound banking. [AJR]

-z8 improvements: [AJR]
 * Made data space optional.
 * Fixed stack pop semantics.
 * Mask addresses for external memory accesses based on P0 control bits.
 * Fixed C flag polarity for CP/SBC/SUB, and actually subtract with carry in SBC (lets amerihok pass initial checksum).
 * Fixed interrupts.

-megaplay: Routed start buttons through BIOS, still not working properly. [AJR]

-quizpun2: Emulate COP402 MCU. [AJR]

-COP400 overhaul: [AJR]
 * Rewrote execution control logic to fetch each byte of an instruction separately in one pass of the main loop.
   - Provides EEPROM-compatible timing for the SIO shift register, allowing the 93C46 on quizpun2 to be read and written properly.
 * Added M pseudo-register (internal RAM referenced by B) to debugger state.
 * Added T register to debugger state on devices where it only affects SKT.
 * Display SIO state in binary when it is defined as a shift register.
 * Allowed skipped instructions and the SKIP flag to be debugged using a compile-time switch (disabled by default).

-weststry: Prevent mistimed interrupts that were killing sound. [AJR]

-rs232: Added 9615 Baud rate actually used by a number of systems. [AJR]

-Fixed Lunar Lander Language ROM - now passes self-test (built from source). [Andrew Welburn]

-gstriker.cpp updates: [Angelo Salese]
 * Added MCU simulation to clone romset twrldc94a.
 * Added buffered spriteram (sprites being ahead 2 frames).
 * Fixed tournament logic for Tecmo World Cup '94.
 * Improved mb60553 zooming alignment (mostly noticeable in Tecmo World Cup '94).
 * Added rotation to mb60553 core (used by V Goal Soccer during football field display).

-ninjaw.cpp: Changed to saner interleave CPU timings, attempted to fix missing enemies bug in Ninja Warriors. [Angelo Salese]

-rockrage.cpp: Fixed priorities and text tile banking for Rock N Rage. [Angelo Salese]
 * Fixes stage 1 boss eyes flashing and Shena display inside the bubble at stage 5 boss.

-mb_vcu.cpp updates: [Angelo Salese]
 * Added multi-layer drawing.
 * Improved layer clearing for Mazer Blazer, fixed layer clearing for Great Guns.
 * Added collision detection feature, specific to Mazer Blazer.

-mazerbla.cpp: Added backup RAM, fixed lightgun inputs for Great Guns. [Angelo Salese]

-itech8.cpp: Ninja Clowns improvements: [Angelo Salese]
 * Fixed palette read accesses, fixes many color bugs.
 * Fixed 0x40000-0x7ffff constant area, program ROM now checksums correctly.
 * Moved vblank IRQ generation - fixes frames per second jerkiness.

-model2.cpp: Fixed luma overflow (Virtua Striker flag colors). [Angelo Salese]

-ymf271.cpp: Added slot end status bits (fixes at least missing shots samples for Desert War). [Angelo Salese]

-saturn.cpp: Fire a VDP1 IRQ when an illegal sprite opcode is encountered (fixes Sexy Parodius booting). [Angelo Salese]

-pce_cd.cpp: Fixed few bogus CD-ROM state bugs (fixes booting for Snatcher). [Angelo Salese]

-ladyfrog.cpp: Added missing DAC sound chip (fixes death scream in Touche Me). [Angelo Salese]

-flstory.cpp: Merged memory maps and fixed gfx bank default (fixes Onna Sanshirou POST messages). [Angelo Salese]

-bigevglf.cpp: Added DAC (cup in, crowd applauses samples). [Angelo Salese]

-buggychl.cpp updates: [Angelo Salese]
 * Fixed sound timer IRQ frequency (fixes enter initials BGM tempo).
 * Fixed background pen and clipping enable (fixes title screen and stage 3 graphics).
 * Fixed inputs, namely accelerator being analog now.

-vicdual.cpp: Added sound samples to Borderline. [Angelo Salese, Corrado Tomaselli]

-ioport.cpp: Fixed a longstanding INP playback desync bug caused by a rand() call in the MAME core. [Angelo Salese, hap]

-leland: Fixed missing DAC sounds in later Ataxx-era audio. [Barry Rodewald]

-vamphalf.cpp: Added idle skipping speedup hack for coolminii. [Brian Troha]

-luaengine: Added translation support. [Carl]

-altos8600: Added serial board. [Carl]

-c64_cart.xml: Added accompanying disk to 4040+Fast Hack'em cartridge. [Curt Coder]

-Demoted Megaplay to not working. [David Haywood]

-Demoted Panic Road to not working  - playtesting shows that the collisions aren't right. [David Haywood]

-floppy: Added drive LED callback. [Dirk Best]

-Added Data East IRQ Controller device used by games in the cninja and deco32 drivers. [Dirk Best]

-pktgaldx: Added vblank interrupt acknowledge. [Dirk Best]

-deco32 improvements and cleanups: [Dirk Best]
 * Emulated LC7535-based volume control for Dragon Gun board based games.
 * Added DSW3 and DIP switch locations to Captain Avenger.

-deco156: Cleaned up palette. [Dirk Best]

-Fixed ROM size for Tank (atarittl.cpp) based on recent verification dump. [Ed Fries]

-Miscellaneous Master System/Game Gear fixes: [Enik Land]
 * Corrected author of the SMS multipad device hardware.
 * Map upper addresses of the SMS2/GG memory map unused by devices to RAM (fixes 'shero' GG game).
 * Added PCB info for 'termntr' and fixed mapper of 'jangpun2' entries of the SMS software list.
 * Fixed a soft reset bug in the mapper code for the '4pak' entry of the SMS software list.
 * Remove two obsolete comments from the period when MESS didn't support BIOS selection.
 * Changed two comments to document that player inputs on GG aren't disabled even in SMS mode.

-hp85: Added support for optional ROM cartridges and started a software list. [F.Ulivi]

-a2arcadebd: Added port mirrors so all programs on the test disk work. [Golden Child]

-apple2: Added preliminary support for the Synetix SuperSprite card. [Golden Child, R. Belmont]

-segasp.cpp: Dumped original CF card for "Dinosaur King - Operation: Dinosaur Rescue". [Hellfromabove]

-dbox: Added 29F800B flash boot device, hooked up RS232/modem ports. [Joakim Larsson Edstrom]

-mc68681: Added the DUART-compatible 68340 serial module. [Joakim Larsson Edstrom]

-68340tmu: Fixed MCR register enum error, silenced some logerror spam by turning them into LOGx statements. [Joakim Larsson Edstrom]

-68340 improvements: [Joakim Larsson Edstrom]
 * Deskeletonized the serial module as a device derived from the DUART device (defined in mc68681.cpp).
 * Fixed SIM module read register bug and added informative chip select logic LOG messages.
 * Simplified code by making the timer module implementation a device with two independent instances.

-Implemented Candela PAL-driven address map (fixes several BASIC commands). [Joakim Larsson Edstrom]

-upd7725: Ignore DPL field if destination is DP, and ignore RPDCR bit if destination is RP. [Jonas Quinn]

-Added support for viewing PLS100/82S100/PLS101/82S101 equations to jedutil. [Kevin Eshbach]

-Adding PAL dumps from Guzzler (Swimmer Conversion). [Kevin Eshbach]

-dccons.cpp: Virginized DC Flash ROM dumps to fresh factory state and documented Dreamcast Flash ROM structure. [MetalliC]

-Return a reference from corestr.cpp calls to avoid unnecessary string copies. [Nathan Woods]

-Added validation checks for PORT_CHAR character values. [Nathan Woods]

-Made -validate verb report an error if no drivers match pattern. [Nathan Woods]

-Attempted to sanitize/rationalize UTF-8 command line arguments are accessed. [Nathan Woods]
 * Also fixes a bug in imgtool where non-7 bit ASCII was not being handled correctly under Windows.

-spectrum: Added expansion slot and devices, removed Kempston Joystick Interface from driver. [Nigel Barnes]
 * Working devices: Currah MicroSlot, Currah MicroSource, Currah MicroSpeech, Didaktik Melodik, Fuller Box,
    Kempston Joystick Interface, Mikro-Plus (Shadow of the Unicorn), Protek Joystick Interface, ZX Interface 2.
 * Non-working devices: ZX Interface 1.
 * Thanks to Thomas Busse for preliminary work on Currah MicroSpeech.

-spec128: Added expansion slot and devices, removed Kempston Joystick Interface from driver. [Nigel Barnes]
 * Working devices: Kempston Joystick Interface, Mikro-Plus (Shadow of the Unicorn), Protek Joystick Interface,
    Spectrum +2 Test Software, ZX Interface 2.
 * Non-working devices: ZX Interface 1.

-tube_casper: Corrected CPU clock to 4MHz. [Nigel Barnes]

-m68k: Fixed abcd/sbcd/nbcd to pass 68k-bcd-verifier. [notaz]

-upd765: Added support for i82072 including sense interrupt status logic and motor on/off logic. [Patrick Mackinlay]

-i82586: Fixed 82586 initialisation. [Patrick Mackinlay]

-clipper interrupt handling fixes: [Patrick Mackinlay]
 * Improved interrupt vector handling.
 * Fixed C300 interrupt entry and stack frame.
 * Fixed pushw where source register is same as stack register.

-apple2e: Don't update 80-column screen immediately on page switch. [Peter Ferrie]

-psi98: Added basic stub layout with drive LEDs. [rfka01]

-unkitpkr improvements: [Roberto Fresca]
 * Improved the input system and mapped remaining inputs, hooked the AY8912 port and rerouted the DIP switches there.
 * Added technical notes about the hacked code.
 * Added proper palette resnet.
 * Confirmed the bipolar PROM dump, it matches the Wall Crash one.

-Royal Jackpot improvements: [Roberto Fresca]
 * Added proper inputs/DIP switches and default NVRAM, changed game description and promoted to working.
 * Added the three missing PLDs as NO_DUMP.
 * Added a DIP switches table from manual and implemented default positions from factory.
 * Added some notes about the third draw feature.

-arm7: Added ARM946ES variant, fixed up CPU ID values. [Ryan Holtz]

-cgc7900: Attached keyboard and serial port, and force cold boot. [shattered]

-Corrected regions/titles for Namco System 22 and System 23 games. [sjy96525]

-Implemented program counter break point to PlayStation CPU, and re-added PlayStation EXE, CPE and PSF loading. [smf]

-Added named constants for INS8250 registers/bits (LSR/MCR/LSR). [Sven Schnelle]

-HP HIL: Pass through commands between devices. [Sven Schnelle]

-HP9000/300 improvements: [Sven Schnelle]
 * Added HIL keyboard support.
 * Fixed detection of DIO cards.
 * Disabled DMA controller workaround (caused ROM to use unimplemented DMA functionality, now falls back to PIO).
 * Added SN76494 sound device.

-hp9k_3xx: Hooked up keyboard/sound to HP9000/332, added 98603 ROM card. [Sven Schnelle]

-hp16500: Connected HIL MLC. [Sven Schnelle]

-tourvis: Added new BIOS dump, clarified BIOS names, and updated several games with newly discovered ID codes. [system11, Tafoid]

-iteagle: Set medium resolution as default for virtpool and remove MACHINE_IMPERFECT_GRAPHICS. [Ted Green]

-Cleaned up and optimised common code: [Vas Crabb]
 * Made natural keyboard prefer lower shift states and eliminated O(n) character lookup.
 * Turned most ROM entry accessor macros into templates and made them work on tiny_rom_entry/rom_entry pointers/references.
 * Started adding iterable class wrappers for specific types of ROM entries.
 * Added support for C++ output streams to logmacro.h using LOG_OUTPUT_STREAM macro.
 * Improved -listxml performance by another 10% or so.

-Made ROM BIOS reported in -listxml output match what ROM loading does. [Vas Crabb]

-buggychl: Removed NMI trampolines and added mirrors to memory map. [Lord Nightmare]

-grchamp.cpp: Improved sound CPU commuication. [Lord Nightmare]

-taitosj: Improved sound CPU communication and added mirrors to sound CPU memory map. [Lord Nightmare]

-upd7725: Fixed OV1 and S1 flag calculation. [AWJ, Lord Nightmare]

-superqix.cpp updates: [Lord Nightmare]
 * Implemented 8751 port2 latch and fixed semaphores.
 * Replaced pending communication hacks with scheduler synchronization barriers.
 * Split up state class, consolidated port2 handling, and removed unnecessary trampolines.
 * Traced out correct clock divider for CPU and MCU from PCB.
 * Added emulation of the 8031 bootleg MCU port 3 output latch.

-Fixed corrupt bytes in two MC68705 dumps after re-analyzing raw dump data. [Lord Nightmare, ShouTime]

-retofinvb3: Fixed colors. [Lord Nightmare]

-hexion.cpp: Fixed INT_TIME callback from K053252 CCU (fixes music speed), fixed music pitch for hexionb. [Lord Nightmare]

-notetaker.cpp: Updated notes, and added PROMs typed from source listings.  [Lord Nightmare]

-Updated hiscore.dat. [Leezer]

-tnzs.cpp: Corrected ROM PCB locations and added Guru-Readme for the P0-25-A PCB. [Guru]
