0.202 (2018-09-26)
------------------


MAMETesters Bugs Fixed
----------------------
- 05059: [Documentation] Some games have incorrect release year listed. (sjy96525)
- 05881: [Documentation] (whitestar.cpp) rctycn and all clones: Incorrect descriptions. (sjy96525)
- 05904: [Graphics] (sshangha.cpp) sshangha, sshanghaj: Sprite priority bug with the in-game message boxes. (David Haywood)
- 06020: [Color/Palette] (sshangha.cpp) sshangha, sshanghab, sshanghaj: Black sprites in some cutscenes. (David Haywood)
- 06258: [Graphics] (taitogn.cpp) usagi: Weird background color for score recap. (smf)
- 06874: [Gameplay] (seattle.cpp) blitz: Hangs on a black screen if the power-on self test is enabled. (Ted Green)
- 06967: [Crash/Freeze] (msx.cpp) canonv30f: [debug] Assertion Failed! m_entrymap.find(name) == m_entrymap.end() (Robbbert)
- 06991: [Crash/Freeze] (model1.cpp) swa: Crash with access violation after a while. (AJR)
- 06998: [Interface] Software lists title screenshot directories not working. (Robbbert)
- 07021: [DIP/Input] (vtech2.cpp) laser500: Reset key is not mapped. (hap)
- 07074: [Graphics] (skykid.cpp) drgnbstr: The title logo is not displayed correctly. (kunikuni)
- 07076: [Graphics] (psikyo.cpp) tengaij, tengai and maybe more: [possible] Bad glitch graphic on some stages. (cam900)
- 07081: [Crash/Freeze] (amstrad.cpp) cpc6128: Certain disks that work in older releases won't run. (AmatCoder)
- 07085: [Crash/Freeze] (mcr.cpp) Most machines in mcr.cpp, mcr3.cpp: Calling member function with null this pointer. (Vas Crabb)
- 07086: [Crash/Freeze] (r9751.cpp) r9751: [debug] Assertion Failed! Expression: m_functions.empty() (Osso)
- 07087: [Crash/Freeze] (atari400.cpp) a400, a400pal, a800, a800pal: Object finders are not for resources created on start. (Vas Crabb)
- 07089: [Crash/Freeze] Assorted machines: Attempting to bind callbacks to parent of root device. (Vas Crabb)
- 07090: [Crash/Freeze] (astrocde.cpp) tenpindx: Invalid format string in output finder tag. (Vas Crabb)
- 07091: [DIP/Input] (namcos2.cpp) sgunner2, sgunner2j: Coin inputs are not registered. (AJR)
- 07092: [DIP/Input] (targeth.cpp) targeth, targeth10, targetha: Player 2 Y axis is broken, and X axis is inverted. (AJR)
- 07096: [Crash/Freeze] (micro3d.cpp) All sets in micro3d.cpp: Hang during the boot process. (AJR)


New working machines
--------------------
Emma II trainer [Robbbert]
Pitapat Puzzle [David Haywood, ClawGrip, Brian Troha, The Dumping Union]


New working clones
------------------
800 Fathoms (older) [ShouTime, The Dumping Union]
Acorn Electron (Trial) [Centre for Computing History, ABUG]
Botanic (English / Spanish, set 2) [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]
Chouji Meikyuu Legion (Japan ver 1.05, bootleg set 2) [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]
Defend the Terra Attack on the Red UFO (bootleg, set 2) [Siftware, MASH]
Four Trax (Japan) [ShouTime, The Dumping Union]
Frogger (Video Dens, bootleg on Scramble hardware) [ClawGrip, AJR]
Gals Panic 4 (Europe) [nomax, The Dumping Union]
Hard Head 2 (v2.0, Music Program v2.0) [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]
Lucky Ball 96 (Ver 3.01) [Roberto Fresca, Grull Osgo, Daniel Gallimberti]
Lucky Ball 96 (Ver 4.01) [Roberto Fresca, Grull Osgo, Daniel Gallimberti]
Mandanga (bootleg of Mandinga on Galaxian hardware, set 1) [Ivan Vangelista, The Dumping Union]
Mandanga (bootleg of Mandinga on Galaxian hardware, set 2) [Ivan Vangelista, The Dumping Union]
Meteorite (Proel bootleg of Asteroids) [MikeMcBike]
Midnight Landing (Japan) [ShouTime]
Midnight Run: Road Fighters 2 (JAD, Japan v1.10) [ShouTime, The Dumping Union]
Pac-Man (Video Dens, Spanish bootleg on Galaxian hardware) [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]
River Patrol (Japan, unprotected)
  [ShouTime, Henrique Areias Pontes, Dane Biegert, Evan Korzon, Mario Mantese, Smitdogg, The Dumping Union]
Star Castle (cocktail) [Brent Walker]
Tehkan World Cup (1986 year hack) [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]
The Simpsons (4 Players Asia) [Leonard Oliveira]
Toki no Senshi - Chrono Soldier (MC-8123, 317-0040) [ShouTime]
TouchDown Fever 2 (bootleg) [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]
Vendetta (World, 4 Players, ver. ?) [Jorge Silva]
WEC Le Mans 24 (v2.01) [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]


Machines promoted to working
----------------------------
Air Combat 22 (Rev. ACS1 Ver.B, Japan) [hap]
Cart Fury [Ted Green]
Jugend+Technik CompJU+TEr [Robbbert]


Clones promoted to working
--------------------------
Jugend+Technik CompJU+TEr (EMR-ES 1988) [Robbbert]
Jugend+Technik CompJU+TEr (ES 2.3) [Robbbert]
Jugend+Technik CompJU+TEr (ES 4.0) [Robbbert]
Lucky Ball 96 (Ver 3.50 - 616) [Roberto Fresca, Grull Osgo]
Lucky Ball 96 (Ver 3.50 - 623) [Roberto Fresca, Grull Osgo]
Lucky Ball 96 (Ver 3.50 - 626) [Roberto Fresca, Grull Osgo]
Lucky Ball 96 (Ver 3.50 - 627) [Roberto Fresca, Grull Osgo]
Stop Thief (Electronic Crime Scanner) (patent) [Mike]


New machines marked as NOT_WORKING
----------------------------------
Hazeltine 1420 Video Display Terminal [AJR]
Hazeltine 1552 [Al Kossow]
Jongputer [yukaritamura]
Lee Data 1214D Display Terminal [Al Kossow]
MIPS Magnum R4000 (big) [Patrick Mackinlay]
MIPS Magnum R4000 (little) [Patrick Mackinlay]
Nvidia nForce PC (CRUSH11/12) [Samuele Zannoli]
Video 21 [MikeMcBike, Robbbert, hap, David Haywood]


New clones marked as NOT_WORKING
--------------------------------
Acorn Briefcase Communicator [Centre for Computing History, ABUG]
Acorn Communicator (Italian) [Centre for Computing History, ABUG]
Acorn Communicator (prototype) [Centre for Computing History, ABUG]
Diner (LF-2) French [PinMAME]
The House of the Dead (prototype) [Andy Geezer]
Wyse WY-75 [Robbbert]


New working software list additions
-----------------------------------
c64_flop: Bill Budge: Pinball Construction Set, JingleDisk - Holiday Musical Story with Computer Animation [FakeShemp]
camplynx_cass: Super Air Raid [Nigel Barnes]
fmtowns_cd:
  Super Real Mahjong PII & PIII +, The Visitor [DamienD, Tokugawa Corporate Forums]
  Teito Taisen, Teitoku no Ketsudan II, Zoku Youjuu Senki - Suna no Mokushiroku [r09, redump.org]
fmtowns_flop: Daisenryaku III '90 Map Collection Vol. 1 [r09]
ibm5150:
  2630 Fourier Analyzer (Demo), Easy-PC Demonstrator for Printed Circuit Boards and Schematics,
  Mitt forsta ordbehandlingsprogram (Swe), Ranger 1 (Demo), The Great International Paper Airplane Construction Kit
  [FakeShemp, Justin Kerk]
ibm5170: Heimdall, Heimdall 2: Into the Hall of Worlds [ArcadeShadow]
interpro: Intergraph Mechanical Software [Brian Ekins]
uzebox: Babylon Tower, Bomber, Bugz, Fifteen Puzzle, Holey Moley, Joyrider [ArcadeShadow]


New NOT_WORKING software list additions
---------------------------------------
bbc_flop_6502: P-System [Nigel Barnes]
bbcm_cart: Smart Cartridge [Centre for Computing History, ABUG]


Translations added or modified
------------------------------
Korean [Neius]


Source Changes
--------------
-pipibibsbl: Fixed clocks - they're different to original. [AJR]

-Moved imperfect graphics flag from drivers to PSX GPU device. [AJR]

-m6502: Made SET instruction in Mitsubishi M740 subfamily actually affect execution (fixes MT07091). [AJR]

-m79152pc: Implemented cursor, scrolling support, and some video attributes. [AJR]

-froggervd: Patched program ROMs, allowing game to work. [AJR]

-imds2: Split out emulation of I/O controller board as separate device. [AJR]
 * Also identified and added more IOC firmware revisions.

-z80dart: Fixed miscellaneous bugs. [AJR]
 * Default RxD to 1 to avoid spurious break condition.
 * Corrected CTS level in RR0 after "Reset External/Status Interrupt" command.
 * Allow immediate de-assertion of RTS output when nothing is being transmitted.

-pcd.cpp: Fixed pcx display. [AJR]

-tzx_cass.cpp: Finish a block with a 1 ms minimum pause when specified pause length is zero. [AmatCoder]

-dsk_dsk.cpp: Read sectors with deleted mark set. [AmatCoder]

-Apply scanline effect before defocus effect, and moved scanline effect into separate shader. [anikom15]

-bbusters.cpp: Fixed beast Busters sprite priority and converted to single-pass drawing. [Bryan McPhail, Daniel Filner]

-megatech.cpp: Added cart label numbers from manual. [Bryan McPhail]

-mips3: Fixed DMULT/DMULTU behaviour (GitHub #3718). [Bryan Perris]

-lethalj.cpp, artmagic.cpp: Reduced run-time tag map lookups, and improved function and region naming. [cam900]

-raiden2.cpp, r2dx_v33.cpp: Corrected Oki M6295 clock and pin 7 level for zeroteam, nzerotea, and zerotm2k. [cam900]

-legionna.cpp: Corrected metadata for denjinmk. [cam900]

-psikyo.cpp, dreamwld.cpp: Fixed tilemap rowscroll effects. [cam900]

-Improved PC-FX sound: [cam900]
 * huc6230: Fixed PSG, converted ADPCM update to timer callback, and implemented CD-DA volume control.
 * huc6272: Fixed CD-DA output.

-yunsun16.cpp: Reduced code duplication, run-time tag map lookups and unused members, and simplified tilemap scanning code. [cam900]

-funybubl.cpp cleanup: [cam900]
 * Cleaned up member and region naming, and reduced run-time tag map lookups.
 * Corrected Oki M6295 clock and converted sample space to memory bank.
 * Corrected palette size and converted to use palette decoder member.
 * Converted VRAM to use address map bank device, and converted drawing to use tilemap system.

-sshangha.cpp: Fixed Oki M6295 clock and pin 7 level. [cam900]

-nmg5.cpp: Converted bitmap layer to use a MAME bitmap, reduced need for ACCESSING_BITS, and reduced code duplication. [cam900]

-neogeo.cpp, neopcb.cpp: Eliminated register_postload, and eliminated some MCFG macro usage. [cam900]

-neogeocd.cpp: Re-worked to better match MAME code conventions. [cam900]

-crospang.cpp: Fixed tile banking - should fix bugs in bestri. [David Haywood]

-raiden2.cpp: Organised Raiden 2 and Raiden DX set by code revision. [David Haywood]

-seta001: Removed a sprite drawing kludge. [David Haywood]

-sshanghai.cpp: Improved video mixing and palette handling. [David Haywood]

-fuukifg2.cpp, fuukifg3.cpp: Fixed tilemap buffer offset. [David Haywood]

-Started converting Namco C65 and C68 to devices. [David Haywood]

-namcos2.cpp, namcos21.cpp: Use configured banking for audio CPU program. [David Haywood]

-namcos2.cpp: Separated C123, C169, C355 and ROZ drawing emulation from driver class. [David Haywood]

-namcos21.cpp: Split into three drivers for different configurations, and moved DSP emulation to a device. [David Haywood]

-opwolf: Removed C-chip simulation and cleaned up code. [Dirk Best]

-opwolfb: Inputs are read by Z80 and written to shared RAM. [Dirk Best]

-galaxian.cpp updates: [kazblox]
 * Improved machine configuration and video sync in Take Off, Explorer, and Amigo (set 2).
 * Marked Explorer and Amigo (set 2) as having imperfect sound emulation.
 * Marked Take Off as having incorrect colors
 * Fixed Jump Bug starfield limit.
 * Fixed bullet size in Scramble.
 * Derived jungsub clocks from the L-1200-2 pixel clock, as the Subelectro 113 board has no crystals.
 * Improved SF-X and Monster Zero background drawing.
 * Converted to use MCFG_SCREEN_VBLANK_CALLBACK rather than MCFG_DEVICE_VBLANK_INT_DRIVER.
 * Changed turpins to derive from Super Cobra rather than Scramble.
 * Added sound program ROMs from Amidar to Mandinga, marked as bad dump.
 * Improved protection simulation for The End and Scramble.

-mimonscr: Fixed video RAM mirror address - score is now displayed correctly. [kazblox]

-pacland.cpp: Improved sprite priority and drawing at screen edges. [kunikuni]

-sn76496.cpp: Made NCR8496 and PSSJ-3 noise generator behaviour match hardware tests.
 [Lord Nightmare, Qbix, ValleyBell, NewRisingSun]

-williams.cpp: Fixed Speed Ball inputs. [MASH]

-bbcb: Added AMS 3" Microdrive Disc System and Microware DDFS FDC floppy controller options (latter is not working). [Nigel Barnes]

-bbc: Added Acorn Bitstik and Bitstik 2 analogue controllers. [Nigel Barnes]

-acorn_fdc, atom_discpack: Set READY on HEAD_LOAD. [Nigel Barnes]

-emumem: Fixed I/O ports and memory banks in internal maps. [O. Galibert]

-interpro: Fixed network emulation. [Patrick Mackinlay]
 * osdnet, dinetwork: Fixed time travel issues.
 * taptun: Pad short frames and append frame check sequence on Windows.
 * clipper: Fixed bugs in carry flag handling.
 * i82586: Improved interrupt handling, implemented serialisation delays, fixed transmit bug, and added reset handling.

-apple2e.cpp: Corrected I/O intercepts to match hardware behaviour. [Peter Ferrie]

-apple2e: Fixed issues with cards in slots 1 and 2 that use the $C800 space. [R. Belmont, Peter Ferrie]

-decstation improvements: [R. Belmont]
 * Emulated accelerated quasi-blitter enough to get a working console.
 * Added LANCE Ethernet controller.
 * Started implementing IRQ handling in gate array.

-z8: Fixed numerous bugs, including detection of stack type, JP and CALL with indirect register addressing, and DA. [Robbbert]

-luckybal.cpp updates: [Roberto Fresca, Grull Osgo]
 * Implemented banking and I/O multiplexing.
 * Added DIP switch locations, and added pinout and I/O connections to notes.

-Added preliminary AMD LANCE Ethernet controller device. [Ryan Holtz]

-sun4.cpp updates: [Ryan Holtz]
 * Ignore writes to ASIs used by unemulated write-through cache controller.
 * Fixed DMA and MMU page fault handling.
 * Trigger memory access exceptions on access to undefined memory types.
 * Added SBus slots with support for bwtwo, cgthree and cgsix cards.
 * Added an alternate FCode PROM for the bwtwo framebuffer.
 * Added a skeleton Artecon SB300P 3-serioal/1-parallel SBus card device.
 * Corrected timekeepr type.
 * Added sun4c MMU device implementing S4-buffer, S4-cache and S4-MMU functionality.

-sparc: Fixed TBR masking on traps and interrupts, and refactored CPU/MMU interface for better performance. [Ryan Holtz]

-nscsi_cd: Return data from correct offset when initiating read at a block that isn't on a sector boundary. [Ryan Holtz]

-timekpr.cpp: Fixed issue that could cause updates to be missed. [Ryan Holtz]

-Added skeleton SunPC 5x86 Accelerator, SunSwift 10/100 Ethernet + Fast Wide SCSI, and TurboGX+ SBus card devices.
 [Ryan Holtz, Andrew Liles]

-32x: Improved audio FIFO behaviour and corrected DAC resolution. [smf]

-NES APU: Removed read/write trampolines and corrected channel enable reset state. [smf]

-vgmplay updates: [smf]
 * Added support for Sega 32X sound.
 * Added support for Y8950, YM2608, YM2610 and YM2612 sample playback.
 * Added support for C6280, SN76496 and YM2203 sample playback.
 * Automatically enable NES APU and Sega 32X channels in bad rips missing the enable commands.
 * Assume default header size if header size read from file is invalid.
 * Fixed off-by-one error in bounds check on PCM write.

-emumem: Fixed unmapped read values with subunits. [smf]

-mcr68: Mapped 6840 on lower data bits on all games - matches schematics for blasted. [smf]

-PSX GPU: Implemented textured dot rendering, transparent dots and line, and semi-transparent (STP) drawing. [smf]

-tandy1t.cpp: Improved keyboard simulation (improves behaviour in t100tx MS-DOS BASIC). [smf]

-zn.cpp: Hooked up Primal Rage 2 watchdog. [smf, coolmod]

-powervr2.cpp: Store different polygon types into separate lists, and ignore alpha value for opaque polygons. [snickerbockers]

-zsg2.cpp: Properly reset emphasis filter state at key-on (fixes popping in raystorm song 12). [superctr]

-nereid: Implemented palette read-back, and fixed save states. [Sven Schnelle]

-topcat: Implemented interrupts, cursor register read-back, plane enable, pixel placement rules, and other fixes. [Sven Schnelle]

-i8291: Set BO bit only if receiver is ready, fix MJMN bit, reset EOI flag when in TIDS, and implemented DCAS. [Sven Schnelle]

-voodoo_pci: Return different values for PCI configuration register 0x40 depending on GPU type (fixes MT06874). [Ted Green]

-coco12.cpp, coco3.cpp: Use CLEAR or CTRL as second shift, allowing more punctuation to be typed in natural keyboard mode.
 [Tim Lindner]

-Re-wrote serial mouse emulation: [Vas Crabb]
 * Simplified code and eliminated timers.
 * Split Microsoft mouse into separate two-button (Microsoft), three-button (Logitech), and click wheel devices.
 * Made Mouse Systems mouse behaviour better match early Mouse Systems models.
 * Added "rotatable" Mouse Systems mouse support (untested due to lack of software).
 * Added Sun mouse support, currently hacked to run at 9,600 Baud to work around a separate issue.

-Fixed issue where dual-screen systems could be incorrectly displayed with 4:3 aspect ratio. [Vas Crabb]

-neogeo.cpp: Dumped sp1-u4 BIOS from a US 4-slot MVS. [ack]

-seta2.cpp: Added P0-113A PCB layout and note about undumped version of Guardians using this board. [Brian Troha]

-vamphalf.cpp: Re-dumped Cool Minigame Collection (Italy). [caius, Brian Troha]

-suprnova.cpp: Verified PLD dumps. [caius]

-tumbleb.cpp: Improved documentation for tumbleb2 set. [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]

-namcos2.cpp: Dumped PLDs for rthun2j. [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]

-m72.cpp: Dumped PAL for rtype2j. [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]

-slapfght.cpp: Re-dumped getstarb1, updated ROM labels, and added placeholder for undumped protected PAL.
 [ClawGrip, Roberto Fresca, Recreativas.org, The Dumping Union]

-valtric: Re-dumped text ROM vt_07.bin and corrected size. [ClawGrip]

-fmtowns_cd.xml: Dumped Branmarker 2 Extra Disc. [DamienD, Tokugawa Corporate Forums]

-Corrected and improved documentation in konamigx.cpp, konamim2.cpp, and wecleman.cpp. [f205v]

-f1superb: Changed title to match manual and title screen. [f205v]

-vegas.cpp: Updated flags to better reflect emulation status. [Hydreigon]

-Updated hiscore.dat for recent changes in MAME. [Leezer]

-ibmpc.cpp: Verified dump of 08/16/82 revision of IBM 5160 (PC/XT) BIOS. [MicroCoreLabs]

-digel804.cpp: Dumped Celectronic Berlin/Digelec Promicron 2000 programmer v2.3 BIOS. [MikeMcBike]

-chihiro.cpp: Brute forced security key for Quest of D Oukoku no Syugosya. [Peter Wilhelmsen, Morten Shearman Kirkegaard]

-vastar.cpp: Dumped PROMs for dogfightp. [ShouTime]

-Corrected metadata for Chess Challenge 2, Dirt Dash, and Heuk Sun Baek Sa. [sjy96525]

-taitogn.cpp: Removed redundant flag from Usagi. [sjy96525]

-Added abbreviated forms of some command-line options to documentation. [Wellington Uemura]
