0.215 2019-10-29
----------------

Changes:

- You can access the overclocking and autofire settings without having to cheat.


MAMETesters Bugs Fixed
----------------------
- 04531: [Sound] (segas32.cpp) f1en: Engine noise loops/resets. (Tafoid)
- 07025: [Graphics] (model1.cpp) vr: Graphical glitches. (O. Galibert)
- 07026: [Gameplay] (model1.cpp) vr: Gameplay calculation and physics issues. (O. Galibert)
- 07372: [Crash/Freeze] X11 Lightgun input module crashes if X11 display is not available. (George McMullen)
- 07437: [Gameplay] (x68k.cpp) x68000 [nemesis]: Background tiles appear in foreground in Nemesis 90 Kai. (Carl)
- 07438: [Graphics] (m72.cpp) imgfightj, mrheli, nspiritj: "For use in Japan" messages are not displayed correctly. (Angelo Salese)
- 07442: [DIP/Input] (gaelco.cpp) biomtoy, biomtoya, biomtoyb, biomtoyc, bioplayc: Lives DIP switch mis-labelled. (girosintornillos)
- 07444: [DIP/Input] (seta.cpp) blandia, blandiap: Lives DIP switch mis-labelled. (girosintornillos)
- 07445: [DIP/Input] (model2.cpp) sgt24h, overrevb: Accelerator and brake pedals are reversed. (VasiliyFamiliya)
- 07447: [Graphics] (cninja.cpp) cninja and clones: Incorrect graphical priorities between level 4 bosses. (Ivan Vangelista)
- 07448: [Gameplay] (taito_z.cpp) sci, scia, scij, scin, sciu: Shifting gears activates turbo. (girosintornillos)
- 07452: [Crash/Freeze] (eprom.cpp) eprom, eprom2: The control test will not load. (AJR)
- 07454: [Plugins] (dooyong.cpp) flytiger: Use of high score plugin causes incorrect attract mode behaviour. (Carl)
- 07456: [Crash/Freeze] (segas16b.cpp) eswat: Emulator crashes with segmentation fault. (smf)
- 07457: [DIP/Input] (m107.cpp) dsoccr94: Coin 3 and coin 4 inputs are mapped incorrectly. (MetalGod)
- 07463: [DIP/Input] (mystwarr.cpp) metamrph and clones, viostorm and clones: Coin 3 and 4 inputs are not connected. (Zach S.)
- 07465: [Crash/Freeze] (interpro.cpp) ip2000: Emulator crashes if mouse is moved during startup. (Patrick Mackinlay)
- 07469: [Graphics] (vboy.cpp) vboy: Sprite elements are cut off on the right. (Robbbert)


New working machines
--------------------
Capcom 3-in-1 (1942, Commando, Ghosts'n Goblins) (JAKKS Pacific TV Game, Game-Key Ready) (29 MAR 2005 B) [Sean Riddle, David Haywood, anonymous]
Disney Princesses (JAKKS Pacific TV Game, Game-Key Ready) [Sean Riddle, David Haywood, anonymous]
Super Dead Heat [Phil Bennett, David Haywood]


New working clones
------------------
19XX: The War Against Destiny (Euro 960104) [redsupra, smf]
Beastorizer (USA, Jun 21 1997) [jordigahan, ClawGrip]
Bomberman (Version 6.6) [caius, The Dumping Union]
Buggy Boy/Speed Buggy (cockpit, rev. B) [pacman70, Asayuki]
Dragon Breed (Japan, M72 PCB version) [Jorge Silva]
Hard Head (bootleg, set 3) [jordigahan, Heckler, ClawGrip]
Megatouch III Turnier Edition (9255-30-50 R0F, Bi-Lingual GER/ENG version) [Kevin Eshbach, Brian Troha, The Dumping Union]
P-47 - The Freedom Fighter (World, bootleg) [jordigahan, Heckler, ClawGrip]


New machines marked as NOT_WORKING
----------------------------------
Advance Bright Ltd Ping Pong / Table Tennis / Super Ping Pong (PP1100, ABL TV Game) [David Haywood, Morten Shearman Kirkegaard, Peter Wilhelmsen]
Conny TV Virtual Tennis [David Haywood, Morten Shearman Kirkegaard, Peter Wilhelmsen]
El Dorado [TeamEurope]
The Flintstones (LX-3) [PinMAME]
Care Bears TV Games (JAKKS Pacific TV Game, Game-Key Ready) [Sean Riddle, David Haywood, anonymous]
Kursaal Darts [jordigahan, ClawGrip]
Rollamatic 5-Line Special (Barcrest) (MPU3) [Darran, The Dumping Union]
TaiKee Rockstar Guitar / Guitar Rock (PAL) [David Haywood, Morten Shearman Kirkegaard, Peter Wilhelmsen]
Terrific Lake [PinMAME]
Top Sound (French) [PinMAME]
Play Vision Who Wants to Be a Millionaire (Play Vision, Plug and Play, UK) [David Haywood, Morten Shearman Kirkegaard, Peter Wilhelmsen]
Vortex (Island Design) [unknown]


New clones marked as NOT_WORKING
--------------------------------
Bank Robbery (Ver. 1.23) [Siftware]
Derby Owners Club World Edition (Rev A) [Fluffy]
Vs. Super Mario Bros. (bootleg with Z80, set 3) [jordigahan, ClawGrip]



Source Changes
--------------
-ins8250: Only clear transmitter holding register empty interrupt on reading IIR if it's the highest priority pending interrupt.
 [68bit]

-bus/ss50/mps2.cpp: Connected RS-232 control lines. [68bit]

-machine/ie15.cpp: Cleaned up RS-232 interface. [68bit]

-bus/rs232: Delay pushing initial line state to reset time. [68bit]

-bus/rs232/null_modem.cpp: Added configuration option for DTR flow control. [68bit]

-tv990.cpp: Improved cursor position calculation. [68bit]

-tilemap.cpp: Improved assert conditions, fixing tilemap viewer, mtrain and strain in debug builds. [AJR]

-spbactn.cpp: Use raw screen timing parameters for spbactn. [AJR]

-laz_aftrshok.cpp: Added aftrshok DIP switch documentation from the manual. [AJR]

-ELAN RISC II updates: [AJR]
 * Identified CPU type used by vreadere as ePG3231.
 * Added preliminary port I/O handlers and callbacks.
 * Added stub handlers and state variables for interrupt controller, timers, synthesizer, UART and SPI.
 * Fixed TBRD addressing of external data memory.
 * Fixed calculation of carry flag for normal adder operations.
 * Implemented multi-byte carry/borrow for applicable registers.
 * Implemented signed multiplication option.
 * Added internal stack buffer for saving PCH during calls/interrupts.

-alpha68k_n.cpp: Replaced sstingry protection simulation with microcontroller emulation. [AJR]

-sed1330: Implemented character drawing from external ROM, fixed display on/off command, and fixed screen area definition. [AJR]

-tlcs90: Separated TMP90840 and TMP90844 disassemblers. [AJR]

-z180 updates: [AJR]
 * Split Z180 device into subtypes; HD647180X now implements internal PROM, RAM and parallel ports.
 * Added internal clock dividers adjust CPU clocks in many drivers to compensate.
 * Reduced logical address width to 16 bits.

-h8: Made debug PC adjustment and breakpoints actually work. [AJR]

-subsino2.cpp: Added save state support and cleaned up code a little. [AJR]

-gaelco.cpp: Adjusted bigkarnk YM3812 clock so pitch matches reference recording. [AJR]

-stadhero.cpp: Made stadhero stage music selection and various other things more random. [AJR]

-acorn_vib: Made ACIA transmit/receive clocks selectable using MC14411. [AJR]

-hitme.cpp: Renamed m21 to mirco21 to resolve name collision. [AJR]

-Emulated ADC0804 and added device to various drivers (fixes "WRONG CONTROL IO" in citybomb service mode). [AJR]

-tmnt.cpp: Added glfgreat analog controls and ADC, and removed spurious fourth button. [AJR]

-megasys1.cpp: Added p47b ADPCM sample playback using additional Z80. [AJR]

-cps1.cpp, segas16b.cpp: Fixed unsafe bitmap usage in video update routines that could cause memory corruption. [AJR]

-bus/isa: Added Music Quest PC MIDI Card [AJR, VOGONS Vintage Driver Library]

-rd100.cpp: Added preliminary keyboard inputs. [AJR]

-Separated V50/V53 common peripherals and former device from V33 base, and add V40 type for future use. [AJR]

-m72.cpp: Fixed sample-related communications on 8751-protected games. [AJR]

-Added Fujitsu FR disassembler and skeleton CPU device. [AJR]

-hvyunit.cpp: Fix hvyunit coin counters. [AJR]

-hh_sm510.cpp: Re-scanned gnw_mmouse display. [algestam]

-snes.cpp: Change screen resolution for pseudo-hires mode, and run HDMA at vertical position zero. [AmatCoder]
 * Fixes graphics in Judge Dredd and Vortex.

-alpha68k.cpp updates: [Angelo Salese]
 * Added opaque tile support for V board (fixes title screen clipping effects for Sky Adventure).
 * Removed hack for priest priority in Sky Adventure level 1 as this is an original game bug.
 * Merged sprite drawing code with SNK 68k sprite device.
 * Simulated screen banking for Gold Medalist starter pistol shot on dash events.
 * Fixed missing status bar and "start/hurry up" graphics for player 1 in Gold Medalist.
 * Removed unemulated protection flag from Gold Medalist clones.

-alpha68k.cpp, snk68.cpp: Moved palette code to a common device using the same scheme as the Neo Geo palette. [Angelo Salese]
 * Produces more accurate colors, especially visible on dithered backgrounds.

-markham.cpp: Improve Strength & Skilld master interrupt firing and row scroll (fixes missing sprites regression in stages 2 and 3).
 [Angelo Salese]

-Synchronized with upstream GENie, bx, bgfx and bimg. [Belegdol]

-Fixed Visual Studio 2019 build issues. [Belegdol]

-Switched Travis CI build to Xcode 11. [Belegdol]

-Build bgfx with OpenGL ES rather than OpenGL when building without X11 on Linux and BSD. [Belegdol]

-ay8910.cpp: Converted Sunsoft 5B 6630B sound hardware to a device. [cam900]

-nmk16spr.cpp: Converted NMK 16-bit sprite hardware to a device. [cam900]
 * Implemented priority drawing and sprite limits, and added notes.
 * Adapted nmk16.cpp and powerins.cpp to use new device.

-powerins.cpp: Derived clocks from crystals present on boards and added raw screen timing parameters. [cam900]

-ninjaw.cpp, warriorb.cpp: Added subwoofer and corrected sound routing. [cam900]

-mos6581.cpp: Added save state support. [cam900]

-sid.cpp, sidenvel.cpp, sidvoice.cpp: Improved save state support and cleaned up code. [cam900]

-ymf278b.cpp: Implemented FM DO2 output scaling. [cam900]

-ymf262.cpp: Added notes. [cam900]

-tmap038.cpp: Converted 038 tilemap generator chip to a device. [cam900]
 * Adapted cave.cpp and mcatadv.cpp to use the new device, and cleaned up code.

-mcatadv.cpp: Fixed tilemap flicker when debugging functionality is enabled. [cam900]

-argus.cpp: Fix repeated spelling error in comments. [cam900]

-megasys1.cpp: Fixed missing semicolon. [Christian Groessler]

-gamate.cpp: Made initial RAM fill better match hardware power-up state. [Christian Groessler]

-audio/irem.cpp: Fixed a number of kidniki audio issues. [Couriersud]
 * Added jumper J4 as a compile-time option, fixed a number of resistor and capacitor values, and fixed a barrier.

-Netlist system updates: [Couriersud]
 * Added support for line markers to the netlist preprocessor and parser.
 * Added include processing to the netlist preprocessor, and reorganised plib code so this can be better utilised.
 * Simplified netlist library code and improved performance.
 * Moved netlists out of driver sources and organised netlists according to functionality.
 * Added an extended validation mode to nltool for identifying certain kinds of issues.
 * Removed some hints from pong now that performance has improved..

-chelnov.cpp: Added microcontroller dump for chelnov and hooked it up, replacing simulation. [Dirk Best, TeamEurope, Brian Troha]
 * Programs for other regions created by patching the dumped World region microcontroller program.

-firetrap.cpp: Add microcontroller dump for firetrap and hook it up, replacing simulation. [Dirk Best, TeamEurope, Brian Troha]
 * Program for US region created by patching the dumped Japan region microcontroller program.

-i8251.cpp, pit8253.cpp, isa/ega.cpp, isa/mda.cpp: Modernized debug logging. [Edstrom]

-m6801.cpp: Added more logging and reduced unnecessary serial transmit output updates. [Edstrom]

-mc6845.cpp: Added more logging and reduced warning spam at startup when register values are inconsistent. [Edstrom]

-isa/mda.cpp: Added Ericsson Monochrome HR Graphics Board 1070. [Edstrom]

-Moved Ericsson PC from pc.cpp to new source file eispc.cpp and added serial keyboard. [Edstrom]

-hp9825.cpp: Added support for external ROM cartridges to HP9825B and HP9825T. [F.Ulivi]

-hp9885.cpp: Added missing postamble when writing sectors on disk. [F.Ulivi]

-Lua engine updates: [feos]
 * Added callback after a batch of sound samples are generated.
 * Greatly reduced compiler memory usage by adding user type members after construction.

-Always re-generate version.cpp if top-level makefile changes. [feos]

-Start AVI recording after devices have been started so initial screen refresh rate is used rather than fixed 60Hz. [feos]

-goldstar.cpp: Decrypted pkrmast and its clone. [Ioannis Bampoulas, Ivan Vangelista]

-goldstar.cpp: Decrypted super972. [Ivan Vangelista]

-squale.cpp: Connected the EF9365 video controller IRQ output to the 6809 IRQ input for Apollo 7 Squale. [Jean-Francois DEL NERO]

-wd_fdc.cpp: Improved interrupt request reset logic based on WD1772 and VG93 (1793 clone) decaps. [MetalliC]

-Fixed clang compilation error on targets where stream size is larger than long int. [Nathan Woods]

-model1.cpp: Fixed issues with TGP interface emulation. [O. Galibert]

-emumem_het.cpp, emumem_heu.cpp: Hold additional reference for in-flight handlers (fixes MT07456). [O. Galibert, smf]

-apple3.cpp: Corrected number row key layout (fixes pasting and natural keyboard mode). [pahandav]

-ppcdrc.cpp, sh2.cpp, sh4.cpp: Fixed issues causing fast RAM accesses to bypass the debugger. [Phil Bennett]

-tms34020: Implement SETCDP and CLIP opcodes. [Priit Laes]

-apple2gs.cpp: Allow slot interrupt requests to be dispatched. [R. Belmont, Peter Ferrie]

-apple3.cpp: Suppress $C800 switching on debugger accesses. [R. Belmont, Rob Justice]

-osd/sdl: Added support for RRGGBB00 pixel format used by ARM Mali GPUs. [R. Belmont]

-fmtowns_cd.xml updates: [r09]
 * Replaced a number of entries with better dumps from the redump.org database.
 * Added parent/clone relationships for Windows 3.1 revisions.
 * Updated the list of missing dumps.

-fmtowns.cpp updates: [r09]
 * Removed SCSI controller from first-generation models and the Marty as these machines lack it.
 * Corrected CPU types for FM-Towns II SJ and FM-Towns II MX.
 * Corrected user-selectable RAM size options.
 * Mapped packed video RAM at 0x00b00000 for 386SX-based models (fixes graphical issues on FM-Towns II UX and FM-Towns Marty).
 * Configured FM-Towns Marty with one floppy drive and 2MB of RAM.
 * Fixed crashes when 1MB ROM or a single floppy drive is selected.
 * Dumped and added ROMs from a first-generation FM-Towns Model 2.

-hcd62121: Implemented exclusive OR with indirect addressing. [Ricardo Barreira]
 * Used by cfx9850 for zoom menu in graph mode.

-cfx9850.cpp: Corrected RAM size to 32kB and added mirroring. [Ricardo Barreira]

-super80.cpp, super80_cass.xml: Fine-tuned software compatibility flags. [Robbbert]

-Removed unnecessary offset attribute from some software lists. [Robbbert]

-trs80dt1: Added RS-232 and Centronics parallel ports, and promoted to working. [Robbbert]

-pes.cpp: Modernised and cleaned up code, and fixed regressions caused by years of neglect. [Robbbert]

-mkit09.cpp: Improved inputs for mkit09a and got it to start and run. [Robbbert]

-Added covers to images that can be displayed in system selection UI. [Robbbert]

-imagedev/avivideo.cpp: Added an image device to provide looping uncompressed AVI frames as input. [Ryan Holtz]

-vino.cpp: Adapted to support both avivideo_image_device and picture_image_device. [Ryan Holtz]

-cdi.cpp: Switched SERVO and SLAVE microcontrollers to use the correct device type with internal memory maps. [Ryan Holtz]

-snes.cpp updates:
 * Added clock divider for original Super FX chip (fixes game speed in Star Fox, Stunt Race FX, Vortex, and others). [Ryan Holtz]
 * Corrected video RAM size to 64kB (fixes graphics in Yoshi's Island and possibly others). [Ryan Holtz, byuu]
 * Fixed PPU background layer drawing based on higan ppu-fast. [Ryan Holtz, byuu]
 * Adjusted horizontal blanking timing interval to the most common case (fixes off-by-one parallax in Yoshi's Island). [byuu]

-supracan.cpp updates: [Ryan Holtz]
 * Implemented sprite-to-sprite masking.
 * Removed sound CPU boot hack and fixed sound CPU reset/halt behavior.
 * Implemented controller input shift register protocol and removed non-existent parallel inputs in main CPU memory space.
 * Removed non-existent player 3 and player 4 inputs.
 * Added save status support and converted logging to use logmacro.h.

-bgfx: Do texture format conversion via a full-screen GPU pass. [Ryan Holtz]

-screen: Added support for changing horizontal width mid-frame and hooked it up to the SNES driver. [Ryan Holtz]
 * Fixes dkongcu intro and others.

-bus/dmv: Added K012 and C3282 hard disk interfaces. [Sandro Ronco]

-netlist: Fixed issue with 1x1 matrix (affected gamemachine.cpp and breakout.cpp systems). [Tafoid]

-Converted osd_printf_* family of functions to use util::string_format semantics. [Vas Crabb]

-minimaws: Added support for identifying ROM/disk dumps on command line or through web UI. [Vas Crabb]

-srcclean: Improved handling of some kinds of C preprocessor abuse. [Vas Crabb]

-Improved performance of makedep.py, reducing the time taken to bootstrap a SOURCES= build. [Vas Crabb]

-apple2_flop_orig.xml: Replaced Drol with new working dump. [4am, Firehawke]

-m72.cpp Dumped 8751 microcontrollers for airduelm72 and dbreedm72j, replacing simulation.
 [Caius, Jorge Silva, TeamEurope, The Dumping Union]

-wardner.cpp: Corrected ROM labels for the Wardner set, and added PCB locations to all sets. [Brian Troha]

-playch10.cpp: Corrected BIOS PPU ROM loading. [brizzo]

-rbmk.cpp: Decapped and dumped AT89C51 microcontroller for rbspm. [Caps0ff, EdHunter]

-lucky37.cpp: Decapped and dumped microcontrollers for lucky21, lucky21d and lucky37. [Caps0ff, TeamEurope]

-changyu.cpp: Decapped and dumped microcontroller for changyu2. [Caps0ff, TeamEurope]

-lwings.cpp: Measured CPU clock and video timings on an original sectionz PCB. [Corrado Tomaselli]

-exedexes.cpp: Measured CPU clocks and video timings, and verified sound chip clocks. [Corrado Tomaselli]

-sidepckt.cpp: Corrected ROM labels and added PCB locations. [Corrado Tomaselli, Brian Troha, The Dumping Union]

-nmk16.cpp: Re-dumped the tile graphics ROM for Macross II (Korea). [Darksoft, hammy]

-chihiro.cpp, naomi.cpp: Improved software documentation, particularly title consistency. [f205v]

-Added MIDI floppy software list to some IBM PC drivers. [FakeShemp]

-bus/ata: Added skeleton PleXCombo PX-320A DVD/CD-RW Drive device. [Firmware HQ]

-gsword.cpp: Measured microcontroller clocks for gsword. [Guru]

-dec8.cpp: Verified all clocks for Ghostbusters. [Guru]

-lwings.cpp: Measured main CPU clock on a bootleg sectionza PCB. [Guru]

-m90.cpp: Updated documentation and IC locations. [hammy]

-aristmk5.cpp: Fixed error in cashcatnz layout. [Heihachi_73]

-spartanxtec.cpp: Added some IC locations, and added placeholders for undumped PLDs. [jordigahan]

-galivan.cpp: Re-dumped dangarj audio CPU ROMs. [Layer]

-triforce.cpp: Re-dumped "Triforce DIMM Updater (3.17) (GDT-0011)" to replace previous bad dump. [MajorPBX]

-seta.cpp: Switched jjsquawk to use three buttons (third button is used in the sound test). [Mike Moffitt]

-Fixed building with GCC versions that report a non-numeric version suffix. [MoochMcGee]

-at.cpp updates: [rfka01]
 * Added ht12a BIOS option head12a01.
 * Added at386sx BIOS options dell386sx, a3286a3886, ald93c308, intel and v514.
 * Added ct386sx BIOS options m345000, dtk386sx and solutions.
 * Added at386 BIOS options ssbc386at, opwb, 386atj7, vt386vt, l8949, acer310, kmxc02, frx521, frxs3b, 495sx, eemi and topcat.
 * Added alim1429 BIOS options revb, alim142901, alim142902 and asaki.
 * Added frxc402 BIOS option frximp.
 * Added opti495xlc BIOS options op82c495xlc and mao13.
 * Added hot409 BIOS option hot409v11.
 * Sorted systems by chipset and motherboard, and updated comments, including RAM and cache information.

-dec0.cpp: Decapped and dumped the 8751 microcontroller for Dragonninja (Japan revision 1). [TeamEurope, Brian Troha]

-karnov.cpp: Verified the Atomic Runner (Japan) 8751 microcontroller dump. [TeamEurope, Brian Troha]

-segas16b.cpp: Replaced microcontroller simulation with dumped program for Altered Beast (set 6) (8751 317-0076).
 [TeamEurope, Brian Troha]

-dec8.cpp: Replaced hand-crafted microcontroller program with program dump for The Real Ghostbusters sets.
 [TeamEurope, Brian Troha, The Dumping Union]

-firetrap.cpp: Replaced hand-crafted microcontroller program with program dump for Fire Trap (US).
 [TeamEurope, Brian Troha, The Dumping Union]

-karnov.cpp: Replaced hand-crafted microcontroller program with program dump for Chelnov - Atomic Runner (US).
 [TeamEurope, Brian Troha, The Dumping Union]

-segas16a.cpp: Replaced microcontroller simulation code with program dump for the Quartet sets.
 [TeamEurope, Brian Troha, The Dumping Union]

-segas16b.cpp: Replaced microcontroller simulation with program dump for Dynamite Dux (set 1) (8751 317-0095).
 [TeamEurope, Brian Troha, The Dumping Unionn]

-pc98.xml, svi318_cass.xml: Corrected some spelling errors in titles and labels. [Zoe Blade]

-Updated comments, and corrected spelling, grammar and typographical errors in comments and documentation. [Zoe Blade]
