0.136 ----- MAMETesters Bugs Fixed ---------------------- - 03603: [DIP/Input] karnov, karnovj: incorrect difficulty dipswitch (Tafoid) - 03604: [DIP/Input] oscar, oscaru, oscarj1, oscarj2: Incorrect difficulty dipswitch (Tafoid) - 03142: [DIP/Input] All drivers using PORT_CHANGED callbacks: Input port callback functions are not triggered correctly during INP playback. (mahlemiut) - 03493: [Gameplay] spacedxo: The game reboots itself after title screen (Fabio Priuli) - 03608: [Multisession] scontra, scontraj: Tile/graphic corruption on multiple launches of Super Contra (Fabio Priuli) - 03611: [Crash/Freeze] 1943, 1943j, 1943kai: Crash when starting 1943 in Service Mode (Fabio Priuli) - 03598: [Original Reference] plotting, flipull: YM2203 speed adjustment (Tafoid) - 03593: [Graphics] captaven & clones: Intro text scrolls from wrong direction (Pierpaolo Prazzoli) - 03596: [Crash/Freeze] All sets in konamigv.c, mitchell.c: Attempt to register save state entry after state registration is closed (Aaron Giles) - 03597: [Original Reference] outrun, outrunra, outruno, outrundx, outrunb: Incorrect vsync speed on Outrun (Tafoid) Source Changes -------------- hng64 improvements: [Andrew Gardner] - RoadsEdge & XRally polygons are now visible. - Improved geometry chunk type 0x2e. - Fleshed out the 'chunk type bits' a little. This will be verified against type 0x24. - Xrally and roadedge hng64 screens no longer run at 10fps. - Fixed polygon lookup in driving games. Changed behavior of -watchdog option to act like a real watchdog. It now specifies the number of seconds after the last video update that will cause auto-termination of MAME. Also modified it to output a message when the watchdog triggers the exit. [Aaron Giles] Updated windows.txt to reflect this option and the debugger_font options which were never previously documented. [Aaron Giles] EEPROM changes: [Aaron Giles] - Fixed auto EEPROM region to properly handle 16-bit data. - Changed EEPROM device to initialize EEPROM at NVRAM load time rather than init time, giving DEVICE_INIT handlers a chance to muck with the data first. - Removed _NODEFAULT_ forms of EEPROM driver macros. If you need to add default data, follow the MDRV_EEPROM_ADD() with MDRV_EEPROM_DATA(). - Updated remaining drivers to the new EEPROM device code. Many of them now require a default EEPROM to be loaded along with the ROMs, rather than hard-coded data in the driver - Exposed an address space for EEPROM devices, meaning the memory is now visible in the debugger and can be accessed via expressions - Updated all systems that muck directly with EEPROM memory to use memory accessors instead on the EEPROM address space. - Removed old EEPROM implementation cb2001: added many new opcodes [robiza] Split ADC1038, Konami 033906 and Konami 056230 emulation from gticlub.c and konppc.c. Also, converted them to be devices and updated PPC Konami games to use the new code. [Fabio Priuli] Added a bunch of new protection handlers for Spark Man [Angelo Salese] sub.c - Put in board XTAL and came up with some seeming better clock speed approximations until board readings can be done. [Tafoid] mcr.c - Sets tron3 and tron4 don't appear to have a valid working cocktail mode video or controls (upright player2 works fine). Flagged as GAME_NO_COCKTAIL. [Tafoid] subs.c - Added DIP LOCATIONS. [Tafoid] Updated qdrmfgp.c to use Konami video devices. [Fabio Priuli] Cleaned up a bunch of things in the gladiatr.c driver [Angelo Salese] Removed sysconfig section from game_driver struct. Made compatible_with attribute available for MAME too (with NULL value set in GAMEL macro). [Miodrag Milanovic] Added preliminary device version of Konami video ICs used in PowerPC games (001005, 001006, 001604 and 037122). [Fabio Priuli] Converted all Taito custom I/O and video ICs to devices and updated all drivers to use them. [Fabio Priuli] Simplified bloodbro gfx decoding and removed unnecessary DRIVER_INIT. Marked two weststry sprite ROMs as BAD_DUMP [David Haywood] Converted Namco IO chips 56xx, 58xx and 59xx to be devices and converted gaplus.c, mappy.c and toypop.c to use the new code. [Fabio Priuli] Allow any device memory (not just CPU's) to be accessed via debug expressions. Removed support in the expression engine for EEPROM- specific accesses. [Aaron Giles] Converted Fujitsu MB87078 Volume Controller to be a device and updated taito_b.c to use the new code (it's the only driver emulating this chip atm). [Fabio Priuli] merit.c - Fixed what might be a copy/paste error in two sets (trvwz3h, trvwz3v) where two roms had the same filename in the same romset. [Tafoid] Renamed tilemap -> tilemap_t, as the name 'tilemap' is too commonly used for statics and structure members, and some compilers (esp. C++ compilers) don't allow that. [Aaron Giles] Fix for INP recording ports that have changed notification. Also prevents new inputs from affecting recorded inputs during playback. [mahlemiut] Updated srcclean to remove "invisible spaces" immediately preceding tabs. [Atari Ace] Cleaned up braces in the code so that they are properly balanced. [Atari Ace] Optimized RDP implementation further with more flattened branches. [Harmony] Converted a number of vector opcodes to the RSP DRC core. [Harmony] Unrolled and optimized a number of vector opcodes in the interpreter RSP core. [Harmony] Extended the devtempl.h file to support device address spaces. [Aaron Giles] cmmb.c - Identified and marked Service Mode DIP. [Tafoid] Converted the NMK112 to be a device and updated drivers using it accordingly. [Fabio Priuli] Added GAME_SUPPORTS_SAVE flag to psikyosh.c, since the conversion to eeprom devices fixed the remaining issues with save states. [Fabio Priuli, Aaron Giles] Changed Caveman Ninja driver to use Partial Updates for Raster Effects instead of buffering scanline data [David Haywood] Changed Deco32 driver to use Partial Updates for Raster Effects instead of buffering scanline data (but left Dragon Gun using the buffering, because the video rendering code is far too slow with 224 partial updates for now) [David Haywood] Commented out some harmful and suspicious looking interrupt generation in NamcoND1 driver until it's being properly verified; fixes Game Options menu in NCV2 test mode. [David Haywood] adp.c improvements: [Angelo Salese] - Fixed some minor quirks - Improved Backgammon memory map - Implemented RAMDAC for Fun Land Deluxe Fixed error in codegen for drol/dror opcodes in the x86 back-end. [Aaron Giles] Re-implemented misaligned memory handling in the RSP DRC as before. [Aaron Giles] Explicitly sign-extend 32-bit indexes for load/loads/store on 64-bit machines to prevent overflow issues. Fixes DRC crash in mtetrisc. [Aaron Giles] Fixed a few DRC-ized vector load/store opcodes in the RSP core. [Harmony] Hardware multiplication and division on the SNES takes 8 machine cycles to complete. [Wilbert Pol] Fixed x86 HLT instruction handling [Phill Harvey-Smith] Made LA Girls and clone of Play Girls. It's clearly a bootleg hardware clone. Title & background change, but the demo play and block arrangement are identical. Added info from the Guru's website about the reported manufacture company and year for LA Girls. Added a note about Tube-it having the copyright and manufacture info removed. [Brian Troha] Added additional information to the dipswitches and configurations sections in the -listxml output [Oliver Stoneberg] Changed Green Beret sound chip to SN76489 and indicated that the bootleg has an undumped PAL and PROMs [Kevin Eshbach] New games added or promoted from NOT_WORKING status --------------------------------------------------- Final Fight (Japan, hack) [bonky0013, JacKc, Fabio Priuli] New clones added ---------------- Spark Man (v 2.0, set 2) [Stefan Lindberg] (Not Working) Cherry Master I (ver.1.01) (various bootleg? sets) [David Haywood] Block (Game Corporation bootleg, set 3) [David Haywood] Multi Fish (030124) [MetalliC] Shaolin's Road (bootleg) [Kevin Eshbach] New games marked as GAME_NOT_WORKING ------------------------------------ Cycle Mahbou [Angelo Salese, Chack'n, Team Japump, Dumping Union] Race Drivin' Panorama [David Haywood] Metal Maniax (prototype) [David Haywood] 0.135u4 ------- MAMETesters Bugs Fixed ---------------------- - 03583: [Core] Windows Debug: Stack crawl is not generated anymore (Firewave) - 03588: [Sound] mystston, myststono: Music is faster than original PCB (Kold666) - 03589: [Graphics] mystston, myststono: VSYNC does not match original PCB (Kold666) - 03592: [Original Reference] outrun, outrunra, outruno, outrundx, outrunb: Master clock is incorrect (Tafoid) - 00400: [Graphics] combascb: Graphic issues on the "players" screen as scrolling problems on 1st stage. (Fabio Priuli) - 03575: [Crash/Freeze] block2: [debug] Memory Leak in Debug (Fabio Priuli) - 03569: [Crash/Freeze] escounts: Access Violation after OK (Phil Bennett) - 03444: [Debugger] Registered ram blocks registered with save state cannot be viewed with debugger (Aaron Giles) - 03567: [Crash/Freeze] trvquest: Access Violation after OK (Fabio Priuli) - 03574: [Crash/Freeze] All sets in drivers using s2636 video chip: [debug] assert: src/emu/video/s2636.c:320: offset < 8 (Fabio Priuli) - 03570: [Crash/Freeze] kf2k3pcb: Access Violation after OK (Fabio Priuli) Source Changes -------------- Added driver data struct to: [Fabio Priuli] - airbustr.c - cvs.c - 8080bw.c and mw8080bw.c - 88games.c, combatsc.c and rockrage.c - psikyo4.c and psikyosh.c Added driver data struct and save states to: [Fabio Priuli] - djboy.c - toratora.c and sf.c - neogeo.c - cps1.c, cps2.c and fcrash.c - cbasebal.c, chinsan.c, mitchell.c and quasar.c - malzak.c - battlnts.c, bladestl.c, crshrace.c and contra.c - f1gp.c, fastlane.c, flkatck.c, hcastle.c, labyrunr.c and suprslam.c - psikyo.c and pgm.c Removed old index-based DISCRETE_ADJUSTMENT and then renamed the newer DISCRETE_ADJUSTMENT_TAG to replace it. Updated all callers. [Aaron Giles] Removed all uses of input_port_by_index(), and removed the function. [Fabio Priuli, Aaron Giles] Added saves to 6522via.c. This fixes problems of gameplan.c and trvquest.c games with -autosave. [Fabio Priuli] Enabled GAME_SUPPORTS_SAVE flag to dday.c because some of the core changes have fixed the sound problem at loading. [Fabio Priuli] Imported SAA5050 emulation from MESS and made it a device. Updated malzak.c to use it, removing the almost identical implementation in the driver. [Fabio Priuli] Added TILE_GET_INFO_DEVICE and SET_TILE_INFO_DEVICE macros to tilemap.c. [Fabio Priuli] Made MB14241 Shifter IC a device and moved its source to emu/machine. Updated mw8080bw.c and 8080bw.c accordingly. Also converted fgoal.c to use this implementation in place of its own version. [Fabio Priuli] Enhanced the UML opcodes for LOAD, LOADS, and STORE to support arbitrary scaling factors. Previously, specifying a size implied a scaling factor equal to the size (i.e., specifying DWORD meant the index was scaled by 4). This is still the default. However, now you can specify the scale explicitly for other cases. For example, you can specify DWORD_x1 to fetch a DWORD but don't scale the index at all, or BYTE_x8 to fetch a BYTE while scaling the index by 8. Updated all backends to make this work. [Aaron Giles] Konami devic-fication and improvements: [Fabio Priuli] - Added device versions of all the Konami custom ICs currently emulated in machine/konamiic.c and video/konamiic.c - Updated combatsc.c, contra.c, crshrace.c, f1gp.c, fastlane.c, flkatck.c, hcastle.c, labyrunr.c and suprslam.c to use the new code. - Moved k056800 sound device to emu/sound and removed the old code; updated gticlub.c, hornet.c, nwk-tr.c, ultrsprt.c and zr107.c to use this implementation - Updated 88games.c, battlnts.c, bladestl.c and rockrage.c to use new devices - Updated asterix.c and moo.c to use the new devices. - Converted aliens.c, blockhl.c, crimfght.c and gbusters.c to use Konami video devices - Updated parodius.c, simpsons.c, thunderx.c, vendetta.c and xexex.c to use the new video devices - Updated overdriv.c to use the Konami video devices - Updated gradius3.c, mainevt.c & gijoe.c to use Konami video devices - Updated ajax.c, bottom9.c, chqflag.c, rollerg.c, spy.c, surpratk.c to use Konami video devices - Updated dbz.c, lethal.c, metro.c, rungun.c, tail2nos.c, tmnt.c, ultraman.c, wecleman.c, xmen.c & zr107.c to use Konami video devices instead of konamiic.h code - Updated bishi.c and djmain.c to use Konami video devices - Updated plygonet.c to use Konami video devices and input_port_write for eepromdev_read_bit - Updated asterix.c, gijoe.c, hornet.c, lethal.c, moo.c, overdriv.c, rungun.c, vendetta.c, xexex.c & xmen.c to use eeprom device - Updated konamigx.c, tmnt.c and mystwarr.c to use eeprom device Fixed tilemaps so they can be initialized at device start time. [Aaron Giles] Added redumped roms to coolridr. [David Haywood] Fixed crash on exit for systems with no tilemaps. [Aaron Giles] Added warning messages for auto_malloc, timer, and save state allocations done after init time. These should be fixed when detected, and will soon be disallowed entirely. Fixed many cases in the code where this was being done. [Aaron Giles] Converted Taito F3 sound to a separate machine driver which is imported into games that use it. [Aaron Giles] Converted the balsente driver to driver_data structure. [Aaron Giles] Some more Atari driver shuffling. Added atarigen_init() function which allocates all timers and registers for save states. Updated all drivers to call it. Converted some drivers to use device timers. [Aaron Giles] Changed ticket.c into a device, updated all users. [Aaron Giles] CIA6526: fixed FLAG handling and slight interface cleanup. [Curt Coder] Moved SNES timer allocation to MACHINE_START. [Fabio Priuli] Koi Koi Part 2: written an hardcoded table (disabled by default), concluded that a color prom is currently undumped. Also documented a bunch of unused ports [Angelo Salese] Carrera: fixed colors [Angelo Salese] Sky Army: cleaned up the driver, also removed the GAME_WRONG_COLORS flag since the colors actually seems correct according to the references. [Angelo Salese] Trivia Madness: Improved graphics & colors [Angelo Salese] Super Rider: improved bitplane order and colors [Angelo Salese] Preliminary RSP recompiler, with all vector ops stubbed out to C functions for now. [Harmony] sbowling.c - Added proper COINAGE selections as well DIP LOCATIONS to the driver. Added mapping for button 1 which is used to allow change from curve to straight throw. Replaced clock speeds with XTAL values. [Tafoid] Re-implemented 3d rasterization in the hng64 driver as a FIFO system. [Andrew Gardner] ggconnie.c - Added DIP LOCATIONS to match those showing in service mode. Added game year to source from title screen. [Tafoid] Added preliminary decryption to Victor 5, Victor 21 and Cross Bingo [David Haywood] Decoded Cross Bingo proms [Angelo Salese] hexa.c - Added DIP LOCATIONS as well as assigned XTAL for the clock speeds, using those from Arkanoid, since the boards are nearly identical in many aspects. [Tafoid] RSP recompiler improvements / optimizations: [Harmony] - Split SATURATE_ACCUM into a signed and unsigned version to reduce stack usage. - Corrected an issue with the 0h variants of VMRG, VAND, VNAND, VOR, VNOR, VXOR and VNXOR. - Slightly optimized unaligned reads and writes - Optimized unaligned dword reads - Corrected an issue where badly-written RSP programs could jump to invalid addresses Added new profiler bucket for DRC recompilation. [Aaron Giles] luckgrln: Implemented CRT Controller hook-up [Angelo Salese] gomoku.c, sspeedr.c - Added DIPS and changed clock values to XTAL [Tafoid] nitedrvr.c, tourtabl.c - Changed clock values to XTAL [Tafoid] Added new option "numprocessors" (see windows.txt for an explanation). [couriersud] Optimized N64 RDP renderer by using function pointers to function variants that eliminate costly branches. [Harmony] Minor drc improvments: [Aaron Giles] - simplified RSP's misaligned memory accesses - removed now-unnecessary shifts from direct memory accesses in mips3/powerpc drcs - optimized AND with 0xff/0xffff/0xffffffff cases for x86/x64 - added rudimentary memory/register tracking in x86 backend to remove redundant loads cb2001 improvements: [robiza] - added ay8910 and 8255ppi devices - added some info about relation between cmast91 and cb2001 - added many opcodes Fixed sprite-tilemap priorities in Super Slams [Angelo Salese] Worked around protection in sranger, srangerw and srangerb [Angelo Salese] Converted 7474, 74148, and 74153 TTL implementations to devices. [Aaron Giles] More rom name corrections for the merit.c driver [Brian Troha] Added Guru's board notes to the Outrun/Super Hang-on Driver. [Guru] Converted the ds2404 to a device. [Aaron Giles] Removed deprecated core function decodegfx() [Christophe Jaillet] Removed the global "includes" include and instead specify the "includes" path in all #include occurences. [Oliver Stoneberg] Eliminated the use of generic.colorram and generic.videoram in several drivers [Atari Ace] Fixed Brick Zone parent set bitplane graphics [Angelo Salese] Fix megadrive emulation to use the SMSIII version of the sn76489 sound chip. [Lord Nightmare, DFJustin] Added save states to ics2115 sound device. [Fabio Priuli] Changed EEPROM usage in many drivers to use the new device version. [Aaron Giles, Fabio Priuli] Removed auto-init hack from some Konami games. Hold down F2 and reset (via F3) to initialize the EEPROM, like all the other Konami games. [Fabio Priuli] Cleaned up EEPROM device implementation a bit. [Aaron Giles] Added flickering effect in Super Slams title screen [Angelo Salese, Guru] Fixed sprite bank bit in Spark Man [Angelo Salese] Converted gaelco3d.c to use eeprom device code. [Fabio Priuli] Spark Man: Refactored the protection, implemented thrash protection that's used after the title screen. [Angelo Salese] EEPROM device now looks for a matching memory region to fetch the default values from. Fixed bug in ROM loader that would change the memory region flags to match devices with no address bus. Updated groundfx to use the new default loading scheme. [Aaron Giles] Reworked the hng64 polygon chunk recovery code to be more crash-proof. Documented what's known about the 3d data much better. Fixed vertex ROM loading for fatfurwa and buriki. [Andrew Gardner] Converted rtc65271 to a device. [Aaron Giles] Added "new" command -listdevices (or -ld) to list the devices attached to a driver. I notice that MESS has a command with the same name; hopefully the behaviors can be combined eventually. [Aaron Giles] Got rid of explicit resource tracking for state saving. Now we just use the auto_ allocators, since registration is restricted to initialization. [Aaron Giles] Moved machine->gfx initialization out of the video module and into drawgfx. We now call this before devices are initialized, so that devices can dynamically append to the machine->gfx as needed. [Aaron Giles] i386 improvements: [Barry Rodewald] * minimal implementation of the LSL protected mode instruction * fixed the REP instruction when used with a segment prefix. Updated readme for Race Drivin' Compact. [Guru] Fixed a couple of edge case parsing bugs in srcclean.c. [Atari Ace] Fixed some unbalanced quotes/braces lurking in the source (mostly in disabled code). [Atari Ace] Added a new CPU core for the PIC 16c62x series of processors. [Samuele Zannoli] New games added or promoted from NOT_WORKING status --------------------------------------------------- Shark Party (Italy, v1.3) [David Haywood, Angelo Salese] Victor 5 [David Haywood, Angelo Salese] Victor 21 [David Haywood, Angelo Salese] Poker Carnival [David Haywood, Angelo Salese] New clones added ---------------- Hyper Street Fighter 2: The Anniversary Edition (USA 040202) [Artemio Urbina, David Haywood] ST-V BIOS 1.11 [2 sets - Japan and Taiwan] [XingXing] Blood Bros. (set 3) [Dlfrsilver] Caveman Ninja (bootleg) [Dlfrsilver] (NOT WORKING) Pipi & Bibis / Whoopee!! (Z80 sound cpu, set 2) [Dlfrsilver] Mortal Kombat 4 v1.0 (not working) [xrodney, HobbyRoms, Patrick McCarron] New games marked as GAME_NOT_WORKING ------------------------------------ Happy 6-in-1 [XX] 0.135u3 ------- MAMETesters Bugs Fixed ---------------------- - 03565: [Color/Palette] astrof, astrof2, astrof3: blue background is supposed to be black (David Haywood) - 03557: [Sound] All sets in namcos12.c: Music is slower than original (Phil Bennett) - 03561: [Crash/Freeze] robokid, robokidj, robokidj2: Segmentation Fault after OK (Fabio Priuli) - 03562: [Crash/Freeze] fcombat: Segmentation Fault after OK (Fabio Priuli) - 03560: [Crash/Freeze] missb2, saiyugoub1, saiyugoub2: Driver Data Struct Issues (Fabio Priuli) - 03559: [Crash/Freeze] All sets in viper.c, subsino.c and coolridr.c: Segmentation Fault before OK (Fabio Priuli) Source Changes -------------- Kusayakyu improvements [Angelo Salese] - fixed color prom hook-up, tilemap color offsets and tilemap flipping - fixed sound and tweaked the frequencies in the driver Tron: Hooked up cocktail (P2) fire button so that it can be used in-game and in test mode. [Tafoid] Added driver data struct and save states to: [Fabio Priuli] - gberet.c, ddrible.c, gaelco.c, trackfld.c, hyperspt.c, yiear.c - hnayayoi.c, hanaawas.c, higemaru.c, himesiki.c and sonson.c - galspnbl.c, gcpinbal.c, ginganin.c, go2000.c, goal92.c, goindol.c, good.c, gotcha.c, gotya.c, gstream.c, gumbo.c, gundealr.c, hitme.c, holeland.c & homerun.c - glass.c & homedata.c - fromance.c, fromanc2.c, ikki.c, imolagp.c, inufuku.c - jack.c - jangou.c, jantotsu.c, jollyjgr.c and jongkyo.c - kangaroo.c, karnov.c, kchamp.c, kickgoal.c, kingobox.c, kncljoe.c, koikoi.c, kopunch.c, ksayakyu.c and kyugo.c - ladybug.c, ladyfrog.c, lastduel.c, lwings.c, redclash.c and yunsung8.c - laserbas.c, laserbat.c, lastfght.c, lazercmd.c and lemmings.c Added driver data struct to: [Fabio Priuli] - galivan.c, jailbrek.c, sbasketb.c - alpha68k.c, amspdwy.c, gng.c, gunsmoke.c, hotblock.c - aerofgt.c and gyruss.c - hyprduel.c - pipedrm.c - ironhors.c - jackal.c - lasso.c Changed CDP1869 PAL/NTSC signal to use devcb. [Curt Coder] Converted cabal, mappy, toypop and zaxxon to use driver_data structure [Atari Ace] Fixed CP1610 disassembler. [Robbbert] Cool Riders improvements: [Angelo Salese, David Haywood] - fixed regression - hooked up what it looks like a ROM->to->VRAM transfer... - slightly improved booting - some hooks to allow FBI logo drawing - basic DMA hooked up - fixed program ROM memory map loading as per the service mode item - allow it to draw RAM-based chars, starts to show correct gfxs - fixed paletteram and implemented basic inputs - implemented DMA vram transfers - added Guru readme - hooked up videoram reading in drawing functions - some hook-ups for the text blitter Wink: Fixed colors [Angelo Salese] Mostly resolved mix of intel and motorola notation in tms32025 disassembler [Lord Nightmare] Cosmic: fixed cosmica2 romset rom split and names to match romset as described in mameinfo, which it matches (except for one rom which mameinfo is probably wrong about). The romset uses a different rom daughterboard to the other cosmica romsets, and different sized roms. [Lord Nightmare] Added shared driver data struct to 40love.c, bking.c, buggychl.c and msisaac.c (they use the same mcu emulation) [Fabio Priuli] Added preliminary HNG64 additive tilemap blending [David Haywood] Fixed srcclean handling of embedded comments within strings [Atari Ace] PCB documentation updates: [Kevin Eshbach] * Added the board xtal's for Battlantis, Contra and Pandora's Palace * Corrected the MCU dump for Pandora's Palace * Added indication of an undumped PAL for Contra/Gryzor * Added PAL dumps for Cruis'n USA - rev L4.1 * Added information on the PROM from the 2 Board version of Congo Bongo Noraut Poker driver improvements: [Roberto Fresca] * Added new technical notes. * Added Kimble Z80 hardware support. * Added Prologic-Noraut hardware support. * Added proper discrete sound support to Kimble games, and Prologic-Noraut Joker Poker. * Slightly adjusted the visual area. This can be wrong and must be rechecked. * Relocated the hardware notes and layouts to ROM_LOAD section, so can be seen/maintained in a cleaner way. * Fixed the default lamps state. Cleaned-up several drivers; added missing prototypes and removed dead ones, marked non-exported functions as static and removed cases of #include "deprecat.h" [Atari Ace] Aleck 64: Implemented player 2 inputs [Angelo Salese] Added a PCB layout for M.Kramer's Black Jack Poker, based on a hi-res pic. Also added undumped devices as NO_DUMP. [Roberto Fresca] Added common driver data struct to timeplt.c, tutankhm.c, junofrst.c, pooyan.c, rallyx.c and rocnrope.c (these drivers all use audio/timeplt.c). As a side effect, we now have save states in junofrst.c and rallyx.c. [Fabio Priuli] Converted atari drivers over to using driver_data for the most part. Some shared systems still exist with globals, but this tackles the atarigen module and the variables local to each driver. [Aaron Giles] Added validity check that AM_BASE_MEMBER and AM_SIZE_MEMBER items point within the bounds of the driver_data structure. [Aaron Giles] Fixed DMADAC wrapping behavior. [Tim Schuerewegen] Added Driver Configuration to astrof.c to emulate common wire hack which causes black background [David Haywood] Aleck 64: Worked around hard-locks at start-up. [Angelo Salese] Identified Semicom's Dream World hardware as a copy of Psikyo's 68020 hardware (it was already known that their older platforms were copied from Snow Bros, and Tumble Pop) [David Haywood] i386 core improvements: [Barry Rodewald] * Fixed EIP displacement when executing FPU instructions with no 80387 present * Added 32-bit implementations of SLDT and STR Converted Kaneko Pandora sprite chip to be a MAME device and updated drivers accordingly. [Fabio Priuli] Added tilemap_create_device() function which lets you create a tilemap from within a device, and be passed that device in your callback. [Aaron Giles] Converted Signetics 2636 video chip to be a MAME device and updated drivers using it accordingly. [Fabio Priuli] Memory system changes: [Aaron Giles] - Memory banks are now referenced by tag rather than index. Changed all memory_bank_* functions to specify a tag. Bulk-converted existing banks to be tagged "bank##" in order to ensure consistency. However, going forward, the tags don't matter, so please name them something useful. - Added AM_BANK_READ/AM_BANK_WRITE macros to let you specify bank tags. Also changed AM_ROMBANK and AM_RAMBANK macros to accept tags as well. - Added new functions memory_install_read_bank_handler and memory_install_write_bank_handler to install banks by tag name, similar to input ports. - Changed internals of memory system to dynamically allocate all banks. The first time a bank with an unknown tag is installed, a new bank object is created and tracked internally. - Removed SMH_* macros entirely. In their place are a series of expanded macros and new memory installation helpers. Some mappings below (not all are new): AM_READ(SMH_RAM) -> AM_READONLY AM_WRITE(SMH_RAM) -> AM_WRITEONLY AM_READWRITE(SMH_RAM, SMH_RAM) -> AM_RAM AM_READ(rhandler) AM_WRITE(SMH_RAM) -> AM_RAM_READ(rhandler) AM_READ(SMH_RAM) AM_WRITE(whandler) -> AM_RAM_WRITE(whandler) AM_DEVREAD(tag, rhandler) AM_WRITE(SMH_RAM) -> AM_RAM_DEVREAD(tag, rhandler) AM_READ(SMH_RAM) AM_DEVWRITE(tag, whandler) -> AM_RAM_DEVWRITE(tag, whandler) AM_READ(SMH_ROM) -> AM_ROM AM_WRITE(SMH_ROM) -> (was a no-op) AM_READ(SMH_NOP) -> AM_READNOP AM_WRITE(SMH_NOP) -> AM_WRITENOP AM_READWRITE(SMH_NOP, SMH_NOP) -> AM_NOP For dynamic memory handler installation of the various types, use the new functions: memory_unmap_read() memory_unmap_write() memory_unmap_readwrite() -- unmaps a section of address space memory_nop_read() memory_nop_write() memory_nop_readwrite() -- nops a section of address space - Cleaned up the internals of the address_map_entry structure, and also normalized the way the address map macros work to remove a lot of redundancy. - Renamed functions: memory_install_read/write_port_handler to memory_install_read/write_port - Memory shares are now specified by tag instead of index. The AM_SHARE() macro now takes a tag parameter. All existing shares have been bulk renamed to "share##". However, the name does not matter, so please use descriptive tags going forward. - Added tag validation for bank and share tags. - Added flag to tagmap_add functions that optionally will replace existing objects if a duplicate is found. - Internal code shuffling. Address maps initialized internally now call the same installation handlers that drivers do for dynamic installation. Cleaned up some parameter ordering and error detection. - Added new functions: memory_install_ram() to assign a un-named bank to a region and specify a pointer to where the RAM lives. If this is called in the DRIVER_INIT function or MACHINE/SOUND/VIDEO_START functions, then it is permissible to specify NULL, in which case the memory system will allocate memory and register it for save states. memory_install_rom() is like the above except that it only installs a read handler. memory_install_writeonly() is like the above except that it only installs a write handler. - Updated several instances in the code that were assigning banks to these sorts of static RAM regions and simplified the code. - Apply mirrors and global masks at address map detokenizing time rather than later. New games added or promoted from NOT_WORKING status --------------------------------------------------- Top Shooter [Mariusz Wojcieszek] LA Girl [Tomasz Slanina, Guru] Noraut Joker Poker (Prologic HW) [Roberto Fresca, Alan Griffin] New clones added ---------------- Domino Block ver.2 [Guru] Tower of Druaga (Manufactured by Sidam) [Corrado Tomaselli] Invasion (4 bootleg sets) [f205v, ANY] Head On (Sidam bootleg, set 2) [f205v, ANY] Head On 2 (Sidam bootleg) [f205v, ANY] Arkanoid (bootleg on Block hardware, set 2) [f205v, ANY] Gals Panic (Korea, EXPRO-02 PCB) [Guru] Strikers 1945 (Hong Kong, Bootleg) [David Haywood, Brian Troha, Dumping Union] Fighting Fantasy (bootleg with 68705) [f205v] (not working) Phantom (Spectar bootleg) [Team Europe & rades] Panzar (Spectar bootleg) [f205v] Fatsy Gambler (Video Hustler bootleg) [f205v] Fitter (bootleg) [f205v] Vs. Super Mario Bros. (bootleg with Z80) (2 sets) [f205v, Dante Profeta] (not working) New games marked as GAME_NOT_WORKING ------------------------------------ White Tiger - 3VXFC5342 (New Zealand) [Heihachi_73] Magic Mask (A - 09/05/2000, Export) [Heihachi_73] Geisha (A - 05/03/01, New Zealand) [Heihachi_73] Kimble Double HI-LO (z80 version) [Roberto Fresca, Alan Griffin] Fast Draw (poker conversion kit)? [Roberto Fresca] Draw Poker HI-LO (unknown, rev 1) [Roberto Fresca, Dumping Union] Draw Poker HI-LO (unknown, rev 2) [Roberto Fresca, Dumping Union] Video Stars [Andrew Welburn] 0.135u2 ------- MAMETesters Bugs Fixed ---------------------- - 03553: [Crash/Freeze] extdwnhl: Game does not start (Phil Bennett) - 03544: [DIP/Input] mgdh, sdmg2: The joystick function missed in mgdh and sdmg2 (Luca Elia) - 03547: [Graphics] mgdh,sdmg2: Donden graphics in mgdh and sdmg2 are inaccurate (Luca Elia) - 03546: [Documentation] nkishusp: Black screen after the game start. (Luca Elia) - 03540: [Sound] glpracr3, hvnsgate, raystorm: Missing sound. (Phil Bennett) - 03545: [Graphics] tekken3, tektagt: Tekken games do not proceed into attract mode after initial screen (Phil Bennett) - 03542: [Sound] Sets/Drivers using YM2610: Missing sounds (Phil Bennett) Source Changes -------------- Added driver data structs to: [Fabio Priuli] - beaminv.c - cball.c and capbowl.c - changela.c, circus.c and circusc.c - crgolf.c and clayshoo.c - decocass.c - docastle.c, dotrikun.c, cloud9.c and destroyr.c - cheekyms.c - embargo.c - ddragon.c, ddragon3.c and fgoal.c - bwing.c - dday.c - dcheese.c - flyball.c - freekick.c Added driver data and save state support to: [Fabio Priuli] - blmbycar.c - zerozone.c, yunsun16.c, dominob.c, dogfgt.c and bogeyman.c - blockout.c and bigevglf.c - chaknpop.c - albazg.c - chinagat.c, esd16.c, f-32.c, fcombat.c, finalizr.c - fantland.c and firetrap.c - btime.c and scregg.c - fitfight.c, flstory.c and funkybee.c - fuukifg2.c and fuukifg3.c Added save state support to: [Fabio Priuli] - 2mindril.c, ashnojoe.c, bigfghtr.c, bublbobl.c, cchance.c, champbwl.c, missb2.c - compgolf.c, champbas.c, copsnrob.c, cop01.c, cosmic.c, cntsteer.c, dacholer.c and dec8.c - armedf.c, calorie.c, canyon.c, chanbara.c, citycon.c, commando.c, crospang.c & cultures.c - astrocorp.c - ddayjlc.c, ddealer.c, deniam.c, discoboy.c, diverboy.c, dorachan.c, dragrace.c, dreamwld.c, dribling.c, drmicro.c, drtomy.c - dynadice.c, dwarfd.c, dunhuang.c, enigma2.c, epos.c, drgnmst.c and egghunt.c - equites.c, exedexes.c, exerion.c and exprraid.c - funybubl.c, galaxi.c, gaiden.c and rocnrope.c Removed some rogue occurrences of 'x1snd' resulting from device tag mass-change. [Phil Bennett] drw80pkr.c updates: [Jim Stolis] - Added Save State Support - Added Preliminary Dip Switch Settings - Corrected CPU Clock Value - Corrected Sound (Now Works) - Narrowed Down More IO R/W Areas tms7000: Fixed disassembly of PCREL addressing mode. [Wilbert Pol] Added device support to the input system. Internally this replaces PORT_CUSTOM/PORT_CHANGED, backward compatibility is achieved with an internal dummy device. Added output lines (IPT_OUTPUT), which can be written using new input_port_write* functions or directly from a memory map using AM_WRITE_PORT converted adc083x to use io lines. [smf] ADC devices updates: [smf] - adc08x chips are all hooked up using input/output ports - reversed racing force steering wheel input and gas pedal, which is enough to get the game to boot. - reversed steering wheel input on winding heat, the usa cabinets are however hooked up the other way. - renamed adc0831_interface to adc083x_interface. - fixed adc083x gnd input - removed stray call logerror from adc083x.c - fixed default adc083x sars value - adc083x reset only affects outputs Added set name to -romident. [smf] Updated ddr 3rd mix plus protection to remove display corruption. [smf] RDP Updates: Fixed TMEM size, removed separate tlut, fixed tlut uploads [angrylion] hng64 updates: - Added preliminary hook-up for multi-byte chain mode for sprites, used by Buriki One and the two Samurai Shodown games [David Haywood, Angelo Salese] - Fixed back plane color, thus giving characteristic blue background for POST screen [Angelo Salese] - Improved Dual Port emulation, fixing the POST errors about it [Angelo Salese] - Implemented "simple" scroll register layout [David Haywood] - Implemented "complex" scroll register layout [David Haywood] - Corrected sprite end boundary, fixes credit messages in Buriki One [Angelo Salese] - Fixed scrolling text in Buriki One attract mode [Angelo Salese] - Hooked up global bpp switch for sprites, HW doesn't seem capable of doing per-sprite bpp switch, fixes coin credit text in Buriki One [Angelo Salese] - Implemented V-Blank register, fixes palette uploading in Samurai Shodown 1 & 2 [Angelo Salese] - Fixed sprite wrap-around [David Haywood] - Implemented irq 11, used by the racing games for network check, currently crashes due to an invalid parameter inside the 3d packets [Angelo Salese] - Added 16x16 / 8x8 tilemap mode select, fixes one scene in Extreme Rally and transition layer in Fatal Fury WA (squares on title screen) [David Haywood] - Added alt layout for the roz, fixes Roads Edge graphics before the title screen [David Haywood] - Implemented sprite clearance capability, fixes garbage gfxs as seen in Samurai Shodown 64 1 & 2 [Angelo Salese] - Implemented x/y sprite global offsets, used by Samurai Shodown 64 1 ranking screen [David Haywood] - Hooked-up backup ram [Angelo Salese] - Documented some sprite findings [Angelo Salese] - Re-implemented zooming in Fatal Fury WA, and added alternative zooming mode used by the other games, they have some precision bugs though [Angelo Salese] - Implemented preliminary additive blending [David Haywood] - Slight optimization to the tile dirty marking [David Haywood] - Better documentation of mosaic and floor modes [David Haywood] - Implemented sprite disable bit [David Haywood] - Implemented dynamic visible area [Angelo Salese] - Start to document 3d / framebuffer video registers, implemented a quick hook-up that fixes Buriki One 3d model colors minus one case [Angelo Salese] - Implemented screen disable when the visible area regs are equal to zero and fixed back layer [Angelo Salese] Updated the albazg driver to use hanafuda standard inputs, eeprom device, and memory_set_bank in place of memory_set_bankptr. [Fabio Priuli] System 23 update [Naibo Zhang] - Corrected memory mapping of palette RAM and handling of palette data. Power-On Self Test now shows correct colors. - Changed Panic Park from SS23 to S23 game. Galaxian3 update [Naibo Zhang] - Fleshed out skeleton driver. Each CPU board passes many self-tests - Master and slave CPU comms hooked up Designated Puzzle Bang Bang (vamphalf.c) as Korean version. For this set the title and language cannot be change. [Brian Troha] Added new module tagmap which is a simple hashed string map. Updated device and input port lists to use the tagmap for tag searches. Also removed the whole "quark" thing from the validity checker in favor of using the tagmaps. [Aaron Giles] Added Intel 8008 and National Semiconductor SC/MP CPU cores. [Miodrag Milanovic] INS 8060 SC/MP II support (using clock divider 2), main model renamed to INS 8050 SC/MP. [Miodrag Milanovic] Updated the astrocorp.c and groundfx.c drivers to use EEPROM device. [Fabio Priuli] Added support for SCSI command 0x2a (Write w/ 32-bit LBA), upped input buffer size in WD33C93 controller [Harmony] Hooked up eepromdev.c using PORT_READ_LINE_DEVICE/ PORT_WRITE_LINE_DEVICE in groundfx.c. Output ports are now affected by IP_ACTIVE_HIGH/IP_ACTIVE_LOW (eepromdev.c has active low cs). The previous value for callbacks in inptport.c is now tracked per field. This saves recalculating it for PORT_CHANGED & conditional fields wouldn't always get updated correctly. Tidied up eepromdev.c interface. [smf] Added sprites list stop to igs017.c. Implemented joystick mode in mgdh and sdmg2 [Luca Elia] Fixed audio output lengths in aviio.c. [CDiFan] Added memory_install_write_port_handler & memory_install_readwrite_port_handler to be consistent with installing handlers. [smf] CDP1869 changes: [Curt Coder] - converted page RAM functions to use devcb - added pull interface for predisplay Switched from linear interpolation to antialiased point sampling when upconverting low-frequency sound streams. This should de-muffle low-frequency streams, treating them has having hard edges at sample boundaries. [Aaron Giles] Converted the following drivers to use EEPROM device: deco156.c, eolith.c, eolith16.c, limenko.c, taito_f3.c, taito_z.c, taito_b.c, taitojc.c, toaplan2.c and kaneko16.c. [Fabio Priuli] Implemented use of per tile colour lookup ROM in Portraits, colour decode is still wrong [David Haywood] CF clear after binary operations on Intel 8008 CPU core. [Miodrag Milanovic] Improvements to Noraut Poker driver: [Roberto Fresca] * A lot of work in memory maps and machine driver stuff. * Improved Inputs / DIP switches for some games. * Added lamps support / layouts to new working games. * Added preliminary support to Kimble hardware. * Added support to CGI's Credit Poker 30x games. * Added new (and fixed old) technical notes. * Renamed norautpn descripion to Noraut Deluxe Poker (bootleg). * Added a placeholder for tpoker2's undumped 68705 MCU. * Reorganized the driver, plus some clean-ups. * Renamed kimblejp to kimbldhl. Changed game description to Kimble Double Hi-Lo. * Added specific memory map & machine driver to Kimble Double Hi-Lo. * Fix the Kimble Double Hi-Lo CPU type. * Added notes about the code obfuscation and PPI's handling/offsets. Added Magic Card Jackpot and Magic Lotto Export to Impera Magic Card driver. Also added PCB layouts, hardware description and technical notes. Changed the bipolar prom dumps to serial I2C bus EEPROM. [Roberto Fresca] Made DEVCB_INPUT_PORT(tag) work for write callbacks. [smf] Fixed regression in magicard.c driver [Angelo Salese] Introduced a generic_pointers structure within machine that is designed to hold generic pointers that are commonly used. Moved generic_nvram, videoram, colorram, spriteram*, paletteram* pointers there. Added AM_BASE_GENERIC and AM_SIZE_GENERIC macros for initializing generic pointers in memory maps. Also added AM_BASE_SIZE_GENERIC to set both base and size in one step. [Aaron Giles] Moved global variables out of machine/generic and into a private data structure hanging off of the running_machine. Added newly-needed machine parameters to coin_counter_w, coin_lockout_w, and coin_lockout_global_w. Also added machine parameter to set_led_state. [Aaron Giles] Added interface functions to get the number of dispensed tickets and to increment the count, to remove the need for direct access to these global variables. Also added functions to get the current count on a particular coin counter and to determine the lockout state. [Aaron Giles] Intel 8255A: clear input latch after reading it. [Curt Coder] Actually use the speaker interface if provided. [Curt Coder] Purged remaining globals from video/generic.c and audio/generic.c. [Aaron Giles] Fixed i386 REP prefix to use segment:SI when address size is 16-bit (ie: when using OUTSB or OUTSW). [Barry Rodewald] Removed limited use of spriteram_3 global. [Atari Ace] Added AM_BASE_SIZE_MEMBER() macro for specifying both base and size structure members at once. Updated all cases where this could be used. [Aaron Giles] Cleaned up many driver data structs: [Fabio Priuli] * dropped almost completely the use of generic sizes with struct members * reduced as much as possible accesses to cputag calls during emulation (they are now mainly concentrated at MACHINE_START & DRIVER_INIT) Joker's Wild: bypassed the rng test [Angelo Salese] Joker's Wild: implemented bare minimum to allow it to go into gameplay and fixed tilemap graphics [Angelo Salese] Memory regions now use a tagmap for lookups. [Aaron Giles] New games added or promoted from NOT_WORKING status --------------------------------------------------- Submarine [Volker Hann, Team Europe, David Haywood, Angelo Salese] Noraut Deluxe Poker (console) [Roberto Fresca, ByteMaster] Noraut Joker Poker (original) [Roberto Fresca, ByteMaster] Noraut Red Hot Joker Poker (alt HW) [Roberto Fresca, ByteMaster] Mainline Double Joker Poker [Roberto Fresca, ByteMaster] Double Joker Poker (45%-75% payout) [Roberto Fresca, ByteMaster] Royal on Ten (Noraut Deluxe hack) [Roberto Fresca, ByteMaster] Credit Poker (ver.30c, standard) [Roberto Fresca, ByteMaster] Iron (SNES bootleg) [Tomasz Slanina, Volker Hann & Team Europe] New clones added ---------------- Cannon Ball (bootleg on Crazy Kong hardware) (set 3, no bonus game) [Volker Hann, Team Europe] X-Men (4 Players ver EBA) [Irongiant] Wizard of Wor (with German Language ROM) [Volker Hann] Gorf (program 1, with German Language ROM) [Volker Hann] Super Puzzle Fighter II Turbo (Hispanic 960531) [Artemio Urbina, David Haywood] New games marked as GAME_NOT_WORKING ------------------------------------ The King of Fighters Neowave (Japan) [Cah4e3] Final Furlong (FF2 Ver. A) [Guru] Dragon Chronicles (DC001 Ver. A) [Guru] Netchuu Pro Yakyuu 2002 (NPY1 Ver. A) [Guru] Soul Calibur II (SC23 Ver. A) [Guru] Soul Calibur II (SC21 Ver. A) [Guru] Tekken 4 (TEF3 Ver. C) [Guru] Tekken 4 (TEF2 Ver. A) [Guru] Tekken 4 (TEF1 Ver. A) [Guru] Mobile Suit Z-Gundam: A.E.U.G. vs Titans (ZGA1 Ver. A) [Guru] Capcom Fighting Jam (JAM1 Ver. A) [Guru] Quiz and Veriety Suku Suku Inufuku 2 (IN2 Ver. A) [Guru] Mobile Suit Z-Gundam: A.E.U.G. vs Titans DX (ZDX1 Ver. A) [Guru] Soul Calibur III (SC31001-NA-A) [Guru] Kinnikuman Muscle Grand Prix (KN1 Ver. A) [Guru] Taiko No Tatsujin 9 (TK91001-NA-A) [Guru] Tekken 5.1 (TE51 Ver. B) [Guru] Airline Pilots (Rev. A) [f205v] Sega Tetris [Guru] Noraut unknown set 1 (console) [Roberto Fresca, ByteMaster] Noraut unknown set 2 (console) [Roberto Fresca, ByteMaster] Noraut Joker Poker (V3.011a) [Roberto Fresca, Alan Griffin] Poker / Black Jack (Model 7521) [Roberto Fresca] Kimble Double Hi-Lo [Roberto Fresca, Alan Griffin] DRHL Poker (v.2.89) [Roberto Fresca, Siftware] Magic Card Jackpot (4.01) [Roberto Fresca, Team Europe, krick & The Dumping Union] Magic Lotto Export (5.03) [Roberto Fresca, Team Europe, krick & The Dumping Union] 0.135u1 ------- MAMETesters Bugs Fixed ---------------------- - 03535: [Documentation] 3stooges: P1-P2-P3 button does not match documentation (input (this game)) (David Haywood) - 02734: [Crash/Freeze] videocba, videodad, blckjack: Crash immediately after OK (Firewave) - 00941: [Sound] tp84: The startup 'tune' no longer sounds like the original game after the fixes to the SN76496 sound core. (Lord Nightmare) - 03494: [Gameplay] batridc, batrid, batridk, batridu: 'Guest Player', 'Special Course', 'Player Select' dipswitch settings reversed (Fabio Priuli) - 02155: [DIP/Input] mole: Incorrect buttons mapping. (M.A.S.H.) - 03498: [Graphics] sengekis, sengekisj: Missing graphic layer in Stages 3 and 5 (David Haywood) - 03509: [Graphics] galpans2, galpans3, panicstr: Input test screen shows zoomed in text (David Haywood) Source Changes -------------- Updated LFO information in YMF271 core. [Brian Troha, Nicola Salmoria] Fixed parent relationship between sbrkout3 and sbrkout. [Lord Nightmare] Removed some magic numbers from machine/psx.c, replaced with #defines. [Harmony] Change to consistently use Intel notation for hex values in TMS32010 disassembler, rather than a mix of Motorola and Intel notation. [Lord Nightmare] Z80: Check for NOP in interrupt mode 0. This allows code like ei / halt / di to work correctly. A better solution would be to implement full support for arbitrary opcodes in mode 0. [Dirk Best] igs017.c update [Luca Elia] - Merged in some IGS031 based games (igs_m68.c, tarzan.c) - Implemented tiles flip x and video disable - Added hopper simulation to mgcs - Decrypted mgdh Almost complete decryption of starzan and tarzana [iq_132] Documented presence of Namco customs on the Pole Position bootleg (Top Racer) sets. Removed Namco devices from bootlegs which don't have them. [David Haywood] Added save state support to plygonet.c and the DSP56156 CPU core. [Andrew Gardner] Updated SN76489/A to have correct PRNG waveforms (a 0 bit was missing at the beginning, and beginning of SN76489 waveform was all 1s instead of 0s as measured on hardware). Added SN94624 (same as SN76489). [Lord Nightmare, plgDavid (David Viens)] IGS blitter based games update [Luca Elia] - Renamed driver to igs011.c and cleaned it up - Renamed some sets according to chinese title - Implemented hopper in lhb, lhb2, wlcc - Decrypted ryukobou i386 core fixes: [Barry Rodewald] * Added Nested Task flag, and I/O Privilege flags. They aren't implemented in any way, but can now be set or reset. Can be used to detect a 80386 or later CPU. * Implemented ENTER instruction. * Made IRQ vectors treated as 8 bytes when in protected mode, and made the addresses pushed onto the stack 32-bit if the gate descriptor used is a 386 interrupt or trap gate (also when in protected mode, will always be 16-bit if in real mode). Fixes to default mapping as well as comment/information fixes for Mole Attack [M.A.S.H./Tafoid] Identify puyoj set as Rev B and correct various rom names. [Smitdogg, Dumping Union] Improved Super Nova sprite shrinking, used by Gals Panic S2 and Sengeki Striker. [David Haywood] Improved dips in Mahjong Vegas. [nightsoil] Added emulation of background graphics (blitter), sound and inputs to skimaxx.c [Luca Elia] Refactored Z80, i8237, and i8257 DMA to use devcb. [Curt Coder] Fixed RGB555 palette RAM format in Soccer Superstars [Angelo Salese] Allowed child CPUs to be used in read8/write8 callbacks. [Curt Coder] Jaleco Mega System 32 update: [David Haywood] * Added correct RAM sizes as per Charles McDonald's notes * Implemented priority in the same manner as tetrisp2 * Add shadows via custom mixing (gametngk and tetrisp / tp2m32 are much improved) * Added the alt tilemap layout used by f1superb for the backgrounds * Added f1superb notes and IRQ generation code from nuapete Tournament Solitaire (pcat_dyn) improvements [luigi30]: * Added newer version of toursol, renamed existing to toursol1 and the new one is now toursol * Set toursol date to 1995 * Set toursol CPU speed to 40MHz Many improvements to konamigx rendering, specifically improving Soccer Superstars and Rushing Hero. [David Haywood, Angelo Salese] Implemented input buffer copy protection in Rushing Heroes, game is now somewhat playable with heavy gfx glitches [Angelo Salese] Fixed Konami GX type 4 protection seed $d15, used to protect a sprite bank in Run & Gun 2 / Slam Dunk 2 [Angelo Salese] Fixed sprite ROM loading in Slam Dunk 2 [David Haywood] Added missing BLTZAL opcode to the RSP core. [angrylion] Control fix for Strike Gunner S.T.G. to allow a 3rd button mapping for each player - thus allowing for the feature of merging ships in 2 player games. [Tafoid] Marked cosmic alien colors as wrong, added TODO to the driver for fixing colors. Added new XTAL value for cosmic alien and switched driver to use it. [Lord Nightmare] Fixed colors in Greyhound games [Mariusz Wojcieszek] Restored Final Gorodi and Wyvern Wings to working. [Brian Troha] Fixed gfx decoding and hooked up mc6845 in the Forte Card driver [Angelo Salese] Removed dual layout, added Map base video register and fixed transparent issues in the Jackpot Cards driver [Angelo Salese] MC680x0 update: [R. Belmont] - Reworked PMMU/core interface so PMMU now sees all cop 0 instructions - Improved disassembly of PMMU instructions - Preliminary 68LC040 support - Fixed disassembly for EC/LC variants of '030/'040 Patched NVRAM check in Jackpot Cards, makes the game playable but you cannot save settings so it's not yet working. [Angelo Salese] Trashed the old pre-accurate-clocking STEP based sample averaging scheme from sn76489 and friends, vastly simplifying the code. Made the output bipolar rather than only above the 0 line. Added missing statement to the get_safe_token function for the recently added SN94624. [Lord Nightmare] Many N64 RDP fixes. [angrylion, Ziggy, Gonetz, Orkin, DrgnMndd, Harmony] Cleaned up toaplan2 V25 support, enabled Batsugun V25 and added decryption table info for the other games [David Haywood] Improved the V25S memory map in Batsugun, now CPUs starts to communicate properly, needs to find & implement the irq that clears the RAM flag and decrypt the relative opcodes in that. [Angelo Salese] More Greyhound improvements: [Mariusz Wojcieszek] - added dip switches for Super Poker - improved inputs in Sports Authority Expanded some sound chip tags to specifically indicate they are sound chips (generally, "ay" becomes "aysnd", "fm" becomes "fmsnd", etc) [Aaron Giles] MIPS3 TLB fixes: [Aaron Giles] - now properly generating TLB fill exceptions under correct circumstances - TLB exceptions no longer trash low 4 bits of Context - exceptions with the EXL bit set always go to vector 0x180 - fixed bug in vtlb code that caused us to lose track of previously registered fixed page ranges - fixed MIPS3 behavior that would not clear out invalid page ranges from the VTLB under certain circumstances - added support for TLB sizes less than 48 entries - fix TLBMOD exceptions so they also properly set BadVAddr Added NCR7496 variant to sn76496.c. Updated comments to show which chips are currently verified. Cleaned up comments. [Lord Nightmare] Fixed the 64-bit crashing issues in N64 [Harmony] Fixed out-of-bounds array accesses in the peplus and videopkr drivers [Oliver Stoeneberg] Merged findout.c and getrivia.c into gei.c [Mariusz Wojcieszek] Fixed broken DRC logging. [Aaron Giles] Fix PowerPC 603 translation so it doesn't get stuck in an infinite loop after the first fixup. [Aaron Giles] Added driver data struct and save state support to pandoras.c, marineb.c, m10.c, m14.c, m52.c, m57.c, m58.c, m62.c, m63.c, travrusa.c, adp.c, n8080.c, atarifb.c, astinvad.c, avalnche.c, battlex.c, carjmbre.c, popper.c, spaceg.c, bankp.c, battlane.c, blockade.c, blueprnt.c, brkthru.c bsktball.c, hexa.c [Fabio Priuli] Added driver data struct to espial.c, zodiack.c, 4enraya.c, 1942.c, 1943.c, ace.c, albazc.c, arabian.c, aeroboto.c, astrof.c, ambush.c angelkds.c, arkanoid.c. [Fabio Priuli] Replaced model3.c fatalerror() calls with development-friendly logerror() calls. Also allows dayto2pe to boot again. [Phil Bennett] hng64: Improved the Samurai Shodown 64 2 i/o simulation comms, now inputs works and enters into proper gameplay. [Angelo Salese] Merged some include files and merged audio/fghtbskt.c in drivers/m63.c. [Fabio Priuli] Got rid of SN76496's R->OldNoise since it causes problems for gamegear/sms. Changed noise taps accordingly. Redid change to gamegear/sms for XOR vs XNOR, now verified by Justin Kerk. Verified gamegear noise taps thanks to sample provided by Justin Kerk. Add stereo sound support to sn76496.c for gamegear. [Lord Nightmare, Justin Kerk] Added a MDRV_EEPROM_NODEFAULT_ADD macro for drivers which do not need default data size / data. [Fabio Priuli] Updated 20pacgal to use EEPROM device. Proper save state support still needs some work (to handle the rom banking mechanism). [Fabio Priuli] Updated galgbios to use EEPROM_NODEFAULT. [Fabio Priuli] Added PORT_CUSTOM(eepromdev_bit_r) for EEPROM devices. [Fabio Priuli] Fixed wrong order parameters in memset (spotted by Beledgol). [Fabio Priuli] Verified/changed clocks and vsyncs on the following games: Aerofighters (only vsync), Power Spikes, Turbo Force (only vsync), Guzzler/Swimmer (same pcb), Exerion and Karate Champs Vs. [Corrado Tomaselli] hng64: rewrote the MCU simulations, basically to be more clean than before [Angelo Salese] hng64: improved MCU simulation and added inputs in Beast Busters 2nd Nightmare, it can now reach gameplay mode too [Angelo Salese] hng64: removed Program Counter-based routines in Samurai Shodown 64 1/2, this fixes the first episode that can now be coined up, however it hangs soon after that [Angelo Salese] Renamed drw80pkr to drw80pk2. Appears to be later version and MN jurisdiction specific. [Jim Stolis] Replaced drw80pkr with older dump from [Team Europe]. Added various graphics improvements and corrected colors to drw80pkr. Game boots much farther and cleaner. Additional graphics/memory cleanup and preliminary input support [Jim Stolis] hng64: work-around to get to the character screen in Samurai Shodown 64, hangs again after it [Angelo Salese] Added driver_data struct to appoooh.c and boxer.c. Also merged boxer video emulation into drivers/boxer.c. [Fabio Priuli] Added dual screen output to the Konami GX Type 3/4 games [David Haywood] Fixed possible NULL pointer dereference in video/dec0.c [Oliver Stoneberg] Added save states to bionicc.c. [Fabio Priuli] New games added or promoted from NOT_WORKING status --------------------------------------------------- Mahjong Super Da Man Guan II [Luca Elia, Pierpaolo Prazzoli, Guru, Xing Xing] Mahjong Man Guan Da Heng [Luca Elia, Guru, The Dumping Union] Touche Me [David Haywood, Justin Kerk, JacKc, Sez, The tECHIDNA, Smitdogg, The Dumping Union] Skimaxx [Luca Elia, Phil Bennett] Dream 9 Final [Angelo Salese, David Haywood] Soccer Superstars [David Haywood, Angelo Salese] Rushing Heroes [David Haywood, Angelo Salese] Run & Gun 2 [David Haywood, Angelo Salese] Super Poker [Mariusz Wojcieszek] GEI Multi Game [Mariusz Wojcieszek] Sport Authority [Mariusz Wojcieszek] Oh! Paipee [Takahiro Nogi] Tougenkyou [Takahiro Nogi] New clones added ---------------- Super Street Fighter II: The New Challengers (Hispanic 930911) [Artemio] Silent Scope (JZD) (not working) [Guru} Tarzan (V107) (not working) [iq_132] Mahjong Ryukobou (Japan, V030J) [Luca Elia, Guru, Dyq, Bnathan] Ultimate Tennis (Japan) [David Haywood, Aaron Giles, N. Alston, Smitdogg, The Dumping Union] The Big Breakfast (5 sets) [AGEMAME Development] Gals Panic S - Extra Edition (Korea) [Choi Sung Ho] Light Bringer (Ver 2.20 1994/04/08) [Choi Sung Ho] Mad Crusher (Japan) [David Haywood, Andrew Welburn] Cosmic Alien (first version) [Andrew Welburn, Lord Nightmare] Dungeons & Dragons: Shadow over Mystara (Hispanic 960223) [Artemio Urbina, David Haywood] Mega Man 2: The Power Fighters (Hispanic 960712) [Artemio Urbina, David Haywood] Last Duel (Japan) [Chack'n, Team Japump!!!] Joker Poker (Version 16.04BI 10-19-88, Joker Poker ICB 9-30-86) [Mariusz Wojcieszek] Joker Poker (Version 16.03BI 5-10-85, Poker No Raise ICB 9-30-86) [Mariusz Wojcieszek] Amuse (Version 30.08 IBA) [Mariusz Wojcieszek] R-Type II (Japan, revision C) [Andrew Welburn] Popeye Man (hack) [Team Japump!!!] Steraranger (Moon Cresta bootleg) [Siftware] New games marked as GAME_NOT_WORKING ------------------------------------ Super Tarzan [f205v, Mirko Buffoni, iq_132] Mahjong Nenrikishu SP [Guru, Dyq, Bnathan] Print Club 2 (U 970921 V1.000) [Guru, Angelo Salese] Print Club 2 Vol. 3 (U 990310 V1.000) [Guru, Angelo Salese]