0.212 2019-08-03
----------------


MAMETesters Bugs Fixed
----------------------
- 00349: [Graphics] (shaolins.cpp) kicker: Graphical artefacts after going through service mode tests. (Angelo Salese)
- 02060: [Graphics] (aerofgt.cpp) spinlbrk, spinlbrku, spinlbrkj: Incorrect graphics priorities. (Mamesick)
- 04159: [DIP/Input] (segas24.cpp) sgmast, sgmastc, sgmastj: Swing power input doesn't work correctly. (Angelo Salese)
- 06677: [Interface] MAME may crash when selecting a new machine if current machine has empty image slots. (AmatCoder)
- 06756: [Interface] (nascom1.cpp) nascom2, nascom1: Cassette records no signal. (Robbbert)
- 07098: [Sound] (itech32.cpp) gt3d, gt97, gt98, gt99, gt2k, gtclassc: Incorrect sounds play during gameplay. (AJR)
- 07188: [DIP/Input] (zr107.cpp) jetwave and clones: Analog controls do not respond in game. (Hydreigon)
- 07357: [Crash/Freeze] (taitojc.cpp) All sets in taitojc.cpp: Reset loop after startup screen. (AJR)
- 07362: [Crash/Freeze] (vii.cpp) jak_spdm, jak_pooh, others: [debug] DRC assertion failure. (Ryan Holtz)
- 07370: [Crash/Freeze] (namconb1.cpp) sws95, sws96, sws97: Crash during attract mode. (hap)
- 07373: [Gameplay] (iteagle.cpp) gtfore02, gtfore03, gtfore04, gtfore05, gtfore06 and clones: Games fail to boot. (Samuele Zannoli)
- 07377: [Crash/Freeze] Crash or segmentation fault when removing some slot cards. (AmatCoder)
- 07385: [Interface] (wrally.cpp) wrally: Coin inputs are don't work. (O. Galibert)


New working machines
--------------------
The Boat [AJR, Roberto Fresca, TeamEurope, The Dumping Union]
Double Joker Poker (CGI) [Stu, hammy, The Dumping Union]
Super 21 [Roberto Freeze, Grull Osgo, TeamEurope]
Tangerine/ETI Space Invasion (ETI) [Nigel Barnes]


New working clones
------------------
Dragon World 3 EX / Zhongguo Long 3 EX / Dungfong Zi Zyu 3 EX / Chuugokuryuu 3 EX (ver. 101CN) [GC8TECH]
F1 Super Lap (World, Unprotected) [Corral Tomaselli, The Dumping Union]
New Lucky 8 Lines (set 7, W-4, encrypted) [TeamEurope]
Royal Casino (D-2608208A1-1, Smaller Board, set 2) [TeamEurope, The Dumping Union]
Teenage Mutant Ninja Turtles - Turtles in Time (4 Players ver UEA) [Stephan Suys]
Wyvern F-0 [jordigahan, ClawGrip, The Dumping Union]
Zip & Zap (Less Explicit) [system11, The Dumping Union]


Clones promoted to working
--------------------------
Street Fighter II: The World Warrior (RK, bootleg) [hammy, ClawGrip]


New machines marked as NOT_WORKING
----------------------------------
Bingo Time [TeamEurope]
Bonanza Enterprises' Joker Poker [TeamEurope, The Dumping Union]
Cue (Prototype) [The Sanctum, PinMAME]
Kodai Ouja Kyouryuu King - Mezame yo! Arata-naru Chikara!! (Japan, Ver 4.000) (MDA-C0061) [SauraphaganaxRex, MetalliC]
Lucky 21 [TeamEurope]
Lucky 21-D [TeamEurope]
Lucky 25 [TeamEurope]
Lucky 37 [TeamEurope]
unknown Chang Yu Electronic gambling game 1 [TeamEurope]
unknown Chang Yu Electronic gambling game 2 [TeamEurope]


New clones marked as NOT_WORKING
--------------------------------
Black Tiger (Modular System) [Juan Romero, Recreativas.org, ClawGrip]
Casino Poker (Ver PM88-01-21, German) [TeamEurope]
Gold Strike (Barcrest) (MPU5) (V1.00, Spanish, Bilso S.A.) [jordigahan, ClawGrip, Recreativas.org]
Legend of Hero Tonma (Gaelco bootleg, Modular System) [ArcadeHacker, Recreativas.org, ClawGrip]
Photo Y2K 2 / Chaoji Bi Yi Bi 2 / Dajia Lai Zhao Cha 2 / Real and Fake 2 Photo Y2K (ver. 100, Japanese Board) [GC8TECH]
Video Hustler (bootleg, set 4) [f205v]


Translations added or modified
------------------------------
Turkish [Kadir Eksi]


Source Changes
--------------
- tilemap: Added note about misleading variable names. [68bit]
- m68040: Stop CINV DATA instruction from causing F-line exception. [AJR]
- wy100.cpp: Added keyboard, preliminary character display, and serial ports. [AJR]
- wy50kb: Fixed incorrect mapping for F4 key. [AJR]
- i8275: Calculate refresh rate from software-configured parameters. [AJR]
- Fixed calculation of TMS34010/020 shifted memory addresses for debugger save and load commands (fixes GitHub #5309). [AJR]
- Added disassembler and skeleton CPU device for CompactRISC CR16B architecture. [AJR]
- z8: Fixed calculation of half carry flag - Z8671 BASIC no longer prints "12" when the result is 18. [AJR]
- m37710: Added internal clock divider. [AJR]
- itech32.cpp: Use generic latch device for sound communications, and added second latch to 68EC020 systems. [AJR]
- cw7501, cdr4201: Added preliminary Creative CD-R 4210 and Panasonic CW-7501 SCSI CD-ROM devices. [AJR, Metropoli BBS Archive, Dirk Best]
- mcs51 disassembler updates: [AJR]
  * Restored some 8052 special-function register and bit names for more advanced models.
  * Added a few more T2-related names to disassembler.
  * Added i8xc51fx and i8xc51gb disassemblers with additional special-function register and bit names.
  * Removed i80c51 from unidasm (differences from i8051 are not significant).
- poly88, poly8813: Added S-100 bus. [AJR]
  * Moved Video Terminal Interface and additional RAM to S-100 cards, and added skeleton disk controller card.
- i8155: Update port outputs on mode change. [AJR]
- dsk_dsk.cpp: Corrected sector size for some copy-protected tracks (fixes MT06716). [AmatCoder]
- namcos2.cpp: Removed ROZ optimization hack as it caused missing backgrounds in Phelios. [Angelo Salese]
- usgames.cpp: Changed drawing to use 6845 row update callback - fixes screen alignment. [Angelo Salese]
- seibucop.cpp: Fixed flipped sprite alignment in macro $C480 - improves SD Gundam Rainbow stage 3 mid-boss. [Angelo Salese]
- nemesis.cpp updates: [Angelo Salese]
  * Changed machine configurations to use raw screen parameters.
  * Fixed raster interrupt generation for Hyper Crash (fixes coin insertion and gameplay glitches).
- taito_en.cpp: Improved MB87078 divider ratios - fixes regression with Taito F3 volume control being too quiet. [Angelo Salese]
- senjyo.cpp: Fixed long-standing regression in background pixel layer width/enable handling. [Angelo Salese]
- pgm.cpp: Added notes, improved metadata, and cleaned up code. [cam900]
- dooyong.cpp updates: [cam900]
  * Added tilemap attribute callback, implemented tilemap ROM limits, and added support for masked tilemap priority.
  * Updated notes and metadata.
- nmk16.cpp updates: [cam900]
  * Moved Afega-specific code to a derived state class.
  * Invalidate tilemaps when RAM bank is changed.
  * Cleaned up twinactn Oki sound ROM bank switching.
  * Changed Afega games to mono sound output and fixed sound output balance.
  * Derive clock frequencies from crystals/oscillators found on boards.
- cps1.cpp: Moved palette initialization into machine configuration. [cam900]
- deco32.cpp: Reduced runtime tag map lookups and cleaned up code. [cam900]
- seta2.cpp: Verified sound tempo and pitch, and CPU clock frequency. [cam900]
- pgmprot_igs027a_type3.cpp: Corrected ARM7 CPU clock frequency for killbldp. [cam900]
- vamphalf.cpp updates: [cam900]
  * Don't change screen resolution and refresh rate when changing flip screen state.
  * Restricted sprite drawing to clipping rectangle.
  * Reduced duplication, added notes, and cleaned up code.
- qvt103.cpp: Implemented basic screen rendering. [Dirk Best]
- att630.cpp: Implemented screen rendering, and added more information to address map. [Dirk Best]
- falco5220.cpp: Identified keyboard addresses, and implemented RAM banking and preliminary graphics. [Dirk Best]
- bionicc: Correctly hooked up microcontroller, fixed audio CPU non-maskable interrupt source, and removed hacks. [Dirk Best]
- 1943.cpp: Replaced microcontroller simulation with emulation. [Dirk Best, Brian Troha, TeamEurope, The Dumping Union]
- 315_5124: Adjusted horizontal screen positions based on new research. [Enik Land, Charles MacDonald]
- k573dio: Fixed played sample count reporting. [Eric Vidal]
- Added an ultra-low-latency mode for PortAudio sound output module. [Eric Vidal]
- luaengine.cpp: Added accessors for snapshot target size, screen refresh interval, and snapshot bitmap. [feos]
- Disable UI startup screens when using the dummy video output module. [feos]
- MIDI: Fixed reception of several System Common messages. [Golden Child, R. Belmont]
- Added a sensorboard device mainly meant for chess piece simulation, and updated all chess drivers to use it. [hap, Sandro Ronco]
- i386: Added hardware breakpoint support. [MoochMcGee]
- Moved UI colors and menu metrics into MAME UI manager class. [Nathan Woods]
- mc6847.cpp: Respond to changes in the video artifact configuration. [Nathan Woods]
- Lua engine updates: [Nathan Woods]
  * Exposed effective frame skip from video manager.
  * Exposed sound manager and natural keyboard objects.
  * Added support for saving snapshots to absolute paths.
  * Added ability to set input sequences on I/O port fields and exposed more properties.
  * Exposed more device_image_interface properties and fields.
  * Separated plugin options from core options, simplified boot.lua and made enabling/disabling non-existent plugins fatal.
  * Added support for multiple semicolon-separated paths in the -pluginspath option.
  * Added support for profiling Lua.
  * Added ability to disable UI input from Lua.
- Moved the clipboard paste function from the MAME UI manager to the natural keyboard class. [Nathan Woods]
- Added an option to skip showing the file manager for mandatory slots on start. [Nathan Woods]
- mindset updates: [O. Galibert]
  * Added floppy drives and LEDs.
  * Implemented more video features, including 80-column mode, and improved blitter.
  * Implemented I/O traps and display VRAM lookup.
- mindset: Added mouse and joystick inputs, improved palette, and added more register details. [O. Galibert, Al Kossow]
- ncd16: Fixed BERT QLC mode work, allowing terminal to boot. [O. Galibert]
- floppy: Added initial implementation of weak zone emulation. [O. Galibert]
- via6522: Changed most users to install handlers using map delegate. [O. Galibert]
- i186: Fixed bug in end-of-interrupt write handling. [O. Galibert]
- mk14: Added original SCIOS V1 monitor as a BIOS option. [Nigel Barnes]
- Overhauled microtan.cpp driver: [Nigel Barnes]
  * Added TANBUG V3.1, TANBUG V.3B, TUGBUG V1.1 and TANBUG V1 monitor ROMs as BIOS options.
  * Replaced XBug with original 0.75MHz version (fixes cassette loading).
  * Added Micron system (MT65 and Tanex boards only).
  * Implemented the Microtan motherboard backplane and moved Tanex to slot device.
  * Implemented additional Tanbus expansion cards.
  * Added Space Invasion (ETI) and preliminary Microtan 6809 System emulation.
- Added SeeQ 8003 Ethernet data link controller device. [Patrick Mackinlay]
- Added Weitek WTL3132 floating-point coprocessor device. [Patrick Mackinlay]
- nscsi_cd: Made SGI CD-ROM identify as hard disk (SGI Personal Iris depends on this). [Patrick Mackinlay]
- pockstat: Modernized logging and machine configuration, and cleaned up code. [Ryan Holtz]
- Removed MACHINE_CONFIG_START/MACHINE_CONFIG_END and almost all remaining MCFG macros. [Ryan Holtz]
- midtunit: Added debugger commands for logging DMA drawing bitmaps in PNG format and metadata in JSON format. [Ryan Holtz]
- debugcon: Added helpcustom command to display help for custom debugger command registered by devices. [Ryan Holtz]
- SGI Newport graphics updates: [Ryan Holtz]
  * Split out XMAP9, CMAP, VC2, and RB2 to separate devices.
  * Merge popup, overlay and CID planes into a single buffer to better reflect hardware behavior.
- Removed support for TEXFORMAT_PALETTEA16 (16-bit indexed with alpha). [Ryan Holtz]
- scc68070: Moved Quizard microcontroller simulation to cdi.cpp, and modernized logging. [Ryan Holtz]
- tascr30: Added display, inputs and SmartBoard. [Sandro Ronco]
- De-unrolled pixel-drawing loops in various devices and drivers. [shattered]
- Made layout format more flexible and deprecated artwork "layer" concept. [Vas Crabb]
- nemesis.cpp: Improved Bubble System interrupt sources and timings, and expanded notes. [ArcadeHacker, Lord Nightmare]
- toki_ms.cpp: Dumped missing PROM for tokims. [ArcadeHacker, Recreativas.org, ClawGrip]
- naomi.cpp: Dumped "Sammy Atomiswave MPSYSTEM" four-cabinet splitter device. [Brian Hargrove]
- mpu5.hxx: Added PIC microcontroller dump to m5gstriks (not properly hooked up). [Caps0ff, jordigahan, ClawGrip]
- rbisland.cpp: Dumped the Rainbow Islands - Extra Version C-chip data EPROM. [Caps0ff, Kevin Eshbach]
- Added dump and skeleton device for Philips CDD2000 CD-R. [Cyberia/2 Filebase]
- cps1.cpp: Re-dumped sf2rk. [hammy, Clawgrip]
- cps1.cpp: Dumped full ROM set for sf2m6. [hammy, The Dumping Union]
- zr107, gticlub, nwk-tr, hornet: Changed default DIP switch settings and changed input descriptions. [Hydreigon]
- Added dump and skeleton device for Caravalle CD-R N820s. [I-Shou University File Server]
- bfm_ad5.cpp, bfm_sc5.cpp: Dumped PLDs from the Bellfruit Scorpion Five main PCB and ISS Adder 5 Video Card. [jordigahan, ClawGrip]
- hiscore.dat: Updated for latest changes in MAME. [Leezer]
- model2.cpp: Dumped correct sound ROMs for Sega Rally DX sets. [Mattia Negri]
- system1.cpp: Re-dumped Choplifter microcontroller, allowing ROM patches to be removed. [Porchy]
- wyvernf0.cpp: Dumped and hooked up 68705 microcontroller. [Sean Riddle, jordigahan, ClawGrip, David Haywood]
- cps1.cpp: Dumped CDT 21 ROM for dinoa [SHVB].
- konmedal.cpp: Dumped color PROMs for Fuusen Pentai [TeamEurope, SpinalFeyd].