What's New:
- New games: Chusenoh, Tangram Q and Wantouchable
- New Working games: American Soccer, Gun Champ (newer, Super Shot hardware), Indoor Soccer (set 2), Indoor Soccer (Tecfri license PCB), Jurassic Park (bootleg of Mega Drive version) and Wai Wai Jockey
- New Non-Working games: Arthur's Knights, Cellage, Chibi Maruko-chan - Wanage de Asobo!!, Crayon Shin-chan - Arashi o Yobu! Sushitori Daigassen, Diamond Heart New (v20.0), Dojokko Tsukami (Japan, ver 1.02), Dragon Ball Z - Bucchigiri no Chou Kessen, Dragon Mahjong (Ver 1.20), Dynasty (1992, V5.1G), Fruit Cat (v2.00), Ginga Yakyu, 'Gu, Choki, Pa', Haunted Hunter (Japan, ver 1.00), Hi Lice (V102FA), Honey-Bee (v3.0), Itazura Cockroach (Japan, ver 1.02), Joker Bonus, Lucky 75, Lucky Star, Major Poker 2 (set 1), Mite Shinzeyou, Multi GAME XL, PK Rainbow (v 1.5), PK Turbo Great 2, Pump it Up Extra (Mar 21 2001), Pump it Up The O.B.G: The 3rd Dance Floor (v3.04 - Jun 02 2000), Pump it Up The O.B.G: The Season Evolution Dance Floor (R4/v3.25 - Aug 27 2000), Pump it Up The Premiere 2: The International 2nd Dance Floor (Premiere 2/2002), Pump it Up The Premiere 3: The International 3rd Dance Floor (Premiere 3/2003 - 28th Mar 2003), Pump it Up The Premiere: The International Dance Floor (R6/v4.01 - Feb 22 2001), Pump it Up The PREX 2 (Premiere 2/2003), Pump it Up The PREX 3: The International 4th Dance Floor (X3.2MK3), Pump it Up The PREX: The International Dance Floor (REV2 / 101), Pump it Up The Rebirth: The 8th Dance Floor (Rebirth/2002), Pump it Up: The 2nd Dance Floor (Feb 28 2000), Pump it Up: The Collection (R5/v3.43 - Nov 14 2000), Pump it Up: The Perfect Collection (R5/v3.52 - Dec 18 2000), Rodeo King (Japan, ver 1.00), Ruleta Magica, Satoyama Grand Prix, Toy Shop, 'unknown Banpresto medal game', 'unknown Boram poker game', Wanikko Punch (Japan, ver 1.20), Youkai VS Uchuujin, Yujo Gattai Shishigami-o and Zoids
- New clones: Astro Blaster (French), Big 10 (1986, System Make), Black Beard (US.00, 2005/03/14), Bumba (bootleg of Head On), Cabal (Modular System), Captain X, Carnival (ManilaMatic bootleg), Crisis Zone (World, CSZO2 Ver. B), Double Dragon (Modular System), Falcons Wild - World Wide Poker (Falcon original), Golden Poker Double Up (bootleg, set 5), Gryzor (Modular System), Jack Potten's Poker (set 14, ICP-1 PCB), Jack Potten's Poker (set 15, ICP-1 PCB), Janyou Part II (ver 7.03, July 1 1983, no title screen), Jumanji (V113), Jump Bug (bootleg, set 3), Jungle King (V200PR), Lode Runner III - Majin no Fukkatsu (Japan, rev. C), Mad Motor (prototype, set 2), Magical Kengo 2005 (Ver. USA 1.10), Major Poker 2 (set 2), Major Poker 2 (set 3), Makaimura (Japan Revision B, alt GFX), New Double Bet Mahjong (bootleg of Royal Mahjong, set 2), Ninja Emaki (Tecfri license), Pump it Up Extra (Mar 08 2001), Pump it Up EXTRA + Plus (Premiere 2/2003), Pump it Up The O.B.G: The 3rd Dance Floor (v3.03 - May 07 2000), Pump it Up The Premiere 3: The International 3rd Dance Floor (Premiere 3/2003 - 17th Mar 2003), Pump it Up The Premiere: The International Dance Floor (R6/v4.01 - Feb 22 2001 USA), Pump it Up The PREX 3: The International 4th Dance Floor (INT X3.1MK3), Pump it Up The PREX 3: The International 4th Dance Floor (Korea X3.1MK3), Pump it Up: The 2nd Dance Floor (Dec 27 1999), Real Mahjong Haihai (Japan, bootleg), Ron Jan (set 2), Ron Jan Super (set 2), Ron Jan Super (set 3), Shadow Warriors (Modular System), Super Crowns Golf (Japan, set 2), Tarzan (V103M), Tarzan (V202FA), Thunder Heroes (set 2), Ukiyo Box (Japan, v1.3.7), Wonder Boy - Monster Land (English bootleg set 4), World Rally (US, version 1.0, checksum 75A5) and Yamato (set 1)
- New PinMAME games: Batman Forever (Dutch, 3.02)
- New drivers: banpresto_tomy_h8s.cpp, cabal_ms.cpp, ddragon_ms.cpp, extrema_m27sv.cpp, flashvga2.cpp, gryzor_ms.cpp, guchokipa.cpp, lgtz80.cpp, miteshin.cpp, palsystems_sh2.cpp, shadoww_ms.cpp and vgame.cpp
- New devices: ct1745, efo_sound3, et4kw32i, et4kw32i_vga, fuukitmap, h8s2320, h8s2321, h8s2322, h8s2323, h8s2324, h8s2326, h8s2327, h8s2328, h8s2329, namcoc71, sh_adc_hs, sh_adc_ms, sh_bsc, sh_cmt, sh_dmac, sh_dmac_channel, sh_intc, sh_mtu, sh_mtu_channel, sh_port16, sh_port32, sh_sci, sh7042, sh7042a, sh7043 and sh7043a
- CPU
. Ensoniq ES5510: Removed hack that never could possibly have worked, comparing a uint8_t to a 24-bit constant.
. Hitachi HD63705Z0: Put hd63705 functions in hd63705z0_device class instead of base class (m6805\m6805.cpp)
. Intel I386: Make the SSE opcodes generate the #NM exception used to save/restore the FPU state (i386\i386.h and i386\pentops.hxx)
. MIPS-III: Fixes for IDT-specific instructions (aleck64.cpp, atlantis.cpp, caprcyc.cpp, hng64.cpp, iteagle.cpp, kinst.cpp, kpython.cpp, kpython2.cpp, magictg.cpp, namcops2.cpp, namcos23.cpp, seattle.cpp, vegas.cpp and vp101.cpp)
. Motorola MC6809: Mask PCR-mode addresses in disassembly (m6809\6x09dasm.cpp). Added interrupt vector read callback. Removed fake SWI interrupt line, replacing interrupt callback with exception hook for debugging. Eliminated PC "massaging" for SYNC and similar instructions.
. Motorola MC68000: Changed name of invoked executable to bin/python3 (m68000\m68000gen.py)
. Motorola MC68010/20/30: Stub out the Coprocesor Interface Registers found on '010-'030 so that Mac ROMs can detect if an FPU is present
. NEC V25: Fixed BRG logging message (nec\v25sfr.cpp)
. NEC V60: Simplify operation of DIVX, DIVUX, MOVD, RVBIT and RVBYTE (v60\op12.hxx).
. NSC8105: Small tweak to opcode cycles (m6800\m6800.cpp)
. Philips MX10EXA: Implemented unsigned 16*16 multiply and branch if positive. Fixed flags for unsigned 32/16 divide (cpu\xa\xa_ops.cpp). Confirmed Icescape XA as the same as Fearless Pinocchio. Added some XA opcode groups that get executed with this now (xa\xa_ops.cpp).
. Texas Instruments TMS320C31/2: Added standard IRQ callback (tms32031\tms32031.cpp)
. Toshiba TMP95C063: Correct typo from MAME 0.270 commit (tlcs900\tmp95c063.cpp)
- SOUND
. AY-3-8910A PSG: Pass outputs high-impedance state with mem_mask
. CD/DA: Updates and additions. More flexible API: You can set the start and length separately without forcing unpause/play start/etc. Data tracks are force muted, headphone users are safe. Added forward and reverse fast scan capability (sound\cdda.cpp).
. EFO Sound-3 board: Added emulation of Sound-3 speech synthesizer board to nightmare, cerberup and spain82. Improved propagation of data from latch to speech synthesizer (shared\efo_sound3.cpp).
. SoundBlaster 16: Fixed incorrect OPL3 range and added quick mixer placeholder so that it returns irq/dma settings (isa\sb16.cpp). Moved mixer implementation to own ct1745 device.
. TMS5220: Fixed status read when RSQ is held low. Clean up logging slightly. Further logging refinements.
. Yamaha XT446 synth: Added missing #pragma once (sound\xt446.h)
- DEVICE
. ATAPI CD/DVD-ROM and SCSI CD/HD: Return dummy data for CD-TEXT format TOC read. Fixed bug in track transition. Fixed ATAPI Mode Sense and Mode Select for MSCDEX Mode 2 Form 1 support. T10MMC mode select length does not include the length itself (machine\t10mmc.cpp).
. CD-ROM: Handle track type and serial copy management flags in TOC file input. Fixed issues with CUE, TOC and GDI parsers. Rewrote GDI parser to be more robust and identify more kinds of invalid input. Don't ignore the last line in CUE and TOC files if there is no terminating newline. Use osd_printf_ family functions for output. Changed fprintf(stderr, ...) calls to osd_printf_error (util\cdrom.cpp).
. Floppy
. Set ST0_SE when seeking not ready drive (verified on real hardware) (machine\upd765.cpp)
. Guard against divide by zero errors when the bytes per sector field in the parameter block is not properly set (as on some early PC-DOS disks) (formats\fs_fat.cpp)
. Intel XScale PXA255 Peripherals: Added basic screen visible area configuration (machine\pxa255.cpp)
. Kaneko KC002/VU002 Sprites and Kaneko VIEW2 Tilemaps: Use generic graphics decoding layouts. Also removed unnecessary object finders and use bool rather than int for Boolean variables (kaneko\kaneko_spr.cpp and kaneko_tmap.cpp).
. MIDI: Added MIDI connection selection to MIDI ports (ui\midiinout.cpp)
. Namco 186/187 or C355 (Sprites): Use generic graphics decoding layouts (shared\namco_c355spr.cpp)
. Namco C123 (4x + 2x Tilemaps) and Namco C169 (ROZ): Use generic graphics decoding layouts, use references rather than pointers in delegate parameters (namco\namco_c123tmap.cpp and namco_c169roz.cpp).
. SCSI CD-ROM: Support ZuluSCSI/BlueSCSI Toolbox commands for uploading and downloading files to the MAME share_directory. CD switching commands are not (yet) supported but may be in the future (nscsi\cd.cpp).
. Tseng Labs ET4000AX VGA i/f: Implemented extended start address register. Added ET4KW32I_VGA and hookup overflow high register. Added offset bit 8. Stub ACL/MMU infrastracture. Preliminary HW cursor. MMU placeholders and direct writes (video\pc_vga_tseng.cpp).
- airraid.cpp: Lower quantum after Z80 rewrite
- bnstars.cpp and ms32.cpp: Use generic graphics decoding layouts and cleaned up code. Reduced literal tags and runtime tag lookups. Fixed mahonng switch matrix reading code. Reduced code duplication and cleaned up spacing.
- cclimber.cpp
. Correct xtal value for Top Roller and Yamato. Fixes wrong sound speed in Yamato (ID 07740). Simplify Yamato sound comms.
. Added coin b dipswitch for Yamato and Top Roller. Improved background gradient for Yamato.
. Reorganized some comments (moved TODO to top of driver, removed old embedded changelogs). Moved cclimber_m.cpp contents into main driver and added section headers. Merged driver. Shorthand variable types.
. Added NMI clear to Swimmer. No need for m_sidepen variable.
- changyu.cpp: Hooked up hopper for '999'
- cidelsa.cpp: CDP1852 fixes and enhancements. Fixed clock write handler. Added write handler for automatically clocking 8-bit data into input-mode latch. Added line read handler for SR output (machine\cdp1852.cpp).
- coolpool.cpp: Added VRAM mirror and merged driver files. Fixes Ameri Darts and clones crashing after game completion (ID 05695).
- cps1bl_pic.cpp: Avoid trampoline for okibank, handle MCU port b reads a bit differently.
- docastle.cpp
. Removed main-sub comms hack and hook up SN76489A ready pin. Do main-sub comms a bit differently (defer_access on subcpu was eating cycles) and re-add logging. Merged driver files. Updated some dipswitches. Fixes 'Bonus Credit for Diamond' dipswitch (ID 07071). Shorthand variable types.
. Make idsoccer a subclass. Improved ADPCM emulation in Indoor Soccer. Do adpcm_w edge triggered instead. Fixes clones Indoor Soccer (set 2) and American Soccer both hang with a black screen (ID 05419). Promoted clones Indoor Soccer (set 2), Indoor Soccer (Tecfri) and American Soccer (Japan) to working.
- dynax.cpp
. Correct Mahjong Tenkaigen DIP switches according to the manual and Mahjong Ougon no Hai DIP switch settings
. Improved I/O for Mahjong Tenkaigen and Mahjong Ougon no Hai. Hooked up hopper for Mahjong Tenkaigen and Ougon no Hai. Identified three more DIP switches for Ougon no Hai. Use bookkeeping input type for Analyzer key. Use describe context helper for logging rather than extracting PC.
- dynduke.cpp: Correct OKI rom mapping. Fixes missing sound samples in Dynamite Duke (ID 06435). Use DIPUNUSED for unused dsw. Small cleanup. Take xtals from PCB photo.
- fuukifg2.cpp and fuukifg3.cpp: Extracted common tilemap handling (fuuki\fuukitmap.cpp). Use generic graphics decoding layout and improved naming (it just emulates sprite hardware) (fuuki\fuukispr.cpp).
- galivan.cpp: Split into subclasses
- homerun.cpp: Fixed coin inserted at boot and regression with upd7756 sound. Fixes 'Dynamic Shoot Kyousou' immediately coins up on boot at default coinage DIP switch settings (ID 08897)
- jaguar.cpp: Added [[maybe_unused]] to the speedup functions
- m72.cpp: Split driver state for reduce optional finders. Fixed typename values for boolean flags. Reduced literal tag usages. Fixed naming and spacings. Added notes.
- megadriv_acbl.cpp: Hook up PIC dump for Aladdin (bootleg of Mega Drive version) and Jurassic Park (bootleg of Mega Drive version). Promoted Jurassic Park (bootleg of Mega Drive version) to working.
- midvunit.cpp, seattle.cpp and vegas.cpp: Dumped PICs for blitz, blitz2k, calspeed, crusnwld and roadburn.
- namco: Various Namco 2D driver cleanups and updates: Made some local variables const, use BIT helper for extracting bits, reduce literal tag use. Suppress side effects for debugger reads. Use explicitly sized integers for member variables that are saved. Updated notes. Reduced preprocessor macro usage.
- namcofl.cpp: Reduced main CPU program ROM region size to match address map
- namconb1.cpp: Moved NB2 and Point Blank/Gun Bullet to derived state classes
- namcos1.cpp: Moved quester to a derived state class
- namcos2.cpp: Simplified graphics decoding layout (namco\namcos2.cpp). Use generic graphics decoding layouts (namco\namcos2_roz.cpp). Implemented device_gfx_interface to decode graphics (namco\namcos2_sprite.cpp).
- namcos12.cpp: Align Point Blank 2, clone Gunbarl and Ghoul Panic light guns to current PlayStation visible area.
- namcos12.cpp and namcos23.cpp: Fixed dip switch hookup, added unpopulated buttons and updated IO port documentation on the Namco TSSIO JVS I/O board, based on hardware analysis by Guru (jvs\namcoio.cpp).
- namcos22.cpp: Moved C71 internal ROM and device defines into namco\namco_dsp.cpp. Cleanups: Make some variables constant. Fixed typename value for some bools. Use BIT helper for bitfields. Reduced literal tag usages. Suppress side effects for debugger reads. Simplify gfx decode layouts. Fixed some notes. No need for parentheses when bitshift has higher precendece.
- namcos23.cpp
. Copy over simpler gfxlayout from NamcoS22. Correct subcpu irq1 I/O pin.
. Correct pointrom loading for clone Final Furlong 2 (Japan, FFS1 Ver.A) (after byteswap, old files are identical to parent set)
. Improved texturing in Super System 23 games. Added missing address-map setter.
. Boot fix for Angler King
- play_2.cpp and play_3.cpp: Added emulation of Sound-3 speech synthesizer board to cerberup and spain82 (shared\efo_sound3.cpp)
- quickpick5.cpp
. Removed trampolines to internal scc r/w handlers. Use memory_view. Guard against ttlrom array overflow. Split classes and fixed sprite priority. Lower sound frequency, matches video recording. Correct NVRAM range.
. Added waijockey coinage/payout dipswitches. Correct waijockey tilemap Y alignment (green strip at upper fence matches with arcade cab video recording). Promoted Wai Wai Jockey to working.
- quizpun2.cpp: Better way for stalling maincpu for MCU comms. Fixes Quiz Punch II hangs on a black screen (ID 08943).
- seattle.cpp: Zerofill class variables and use memory_share_creator for NVRAM
- seicross.cpp
. Deobfuscate draw_sprites. Added MCU waitstates and cocktail mode (flip screen).
. Mark color proms as bad dump in clone Radical Radial (Japan)
- snk.cpp
. Added more side effect checks
. Fixed frequency register bit alignment as well as waveform sample bit alignment based on the schematics and observations of running games (sound\snkwave.cpp). Fixes wrong laser/other sounds in Vanguard II and some wrong sounds in Marvin's Maze.
- stfight.cpp: Correct a comparison of an uint16_t with -1
- system1.cpp
. VRAM wait timing was still assuming 20mhz z80 clock from before 0.259 (fixes Pitfall II titlescreen (ID 08954), and allows tokisens overclock hack to be removed).
. Increase quantum for games with MCU, hook up SN76489 ready pin. Fixes digitized speech is pitched too high in Choplifter and clones (ID 05737) and game graphics pause on any digitized speech (ID 07869).
. No need for m_mute_xor variable. Added 2nd coincounter for Noboranka. Added Shooting Master gun adjustment port and fixed rapid fire gun.
. Correct 2nd coincounter and clean up single line comments. Make shtngmst and dakkochn subclasses. No need for m_videomode_prev variable.
. Correct mcu t0 pin. Fixes misaligned graphics on levels 3 & 4 in Choplifter (ID 05782).
- tehkanwc.cpp: Correct refresh rate. Dummy .share is needed, 2 CPUs have access to same RAM. Use raw parameters for screen (verified from unofficial schematics).
- travrusa.cpp
. Revert Traverse USA BIOS option for color proms with exact same rom contents (ID 08842). Small cleanup.
. Assume Shot Rider's Z80 is 6MHz. Fixes race countdown timing is too slow (ID 08970). TODO: Verify maincpu XTAL, 3.072MHz seems too slow. See race countdown at start and overall a lot of frame overflows.
. Make sure to refresh flipscreen when changing the dsw. Fixes flip screen does not work at all for shtrider and shtridera (ID 04989).
- xtom3d.cpp: Added CAT702 roms to 'Pump it Up' games, CD images will be added soon. Test mode seems to lock up in the 2002 & 2003 games, if you build with Clang 18.1.18 on windows. GCC 14.2.0 on Windows & Clang 16 on MacOS/M1 works.
- zodiack.cpp: Use 2 separate soundlatches instead of a shared one and decrease sound NMI frequency for Dog Fight (ID 07520).
- '88 Games: Use memory views rather than trampolines (simplifies memory banking). Also improved names of some member functions and changed single-line comments to C++ line comments.
- Acrobatic Dog-Fight: Determine screen refresh rate from PCB video. Small cleanup. Added dipswitch locations, no need for logmacro for warning messages.
- Aliens: Simplified palette RAM banking. Use a single mapping for main work RAM. Explicitly disable palette access on start.
- Battle Rangers: Combined input ports
- Block Hole: Simplified palette RAM banking. Use a single mapping for main work RAM. Got rid of a literal tag.
- Bomber Man World (Japan) and Undercover Cops: Changed encrypted opcode 0x37 to map to 0x98 (cvtbw) in dynablaster table (bbmanwj, uccops). Title screen sine wave effect loads a byte from a lookup table and scales it. Byte value needs to be sign extended using 'cvtbw', previous encryption table was mapping 0x37 to 'xch aw, cw'.
- Bottom of the Ninth: Use memory views rather than trampoline functions
- Cashline: Fixed year and added notes about the reels
- Castle Of Dracula: Dumped PALs
- Chanbara: Fixed cocktail mode and garbage sprites. Assume YM2203 read is unconnected. Small cleanup. No need to check attr & 0x08. Re-added YM2203 read for now.
- Cherry Master '99: Verified PROMs. Dumped 3 of 4 PLDs.
- Cluedo: Added layout. Widen accusation lamps to make text more readable on 1920x1080 screens protect against gap between upper and lower suspect lamps. Illuminate text instead of the background for the accusation section of the panel.
- Crime Fighters: Use memory view rather than address map bank device. Register member variables for saved states. Improved some member names and turned single-line comments into C++ line comments.
- Enigma II: Increased audiocpu interrupt frequency. Fixes music not playing properly on start tune and between stages (missing two channels) (ID 07777).
- Finalizer: Correct green color PROM decode. Fixes white colour appear purple (ID 03108).
- Gals Panic 3: Added RLE blitter dstaddress (fixes gals gfx issues on 100% clear) (kaneko\kaneko_grap2.cpp)
- Gun Champ: Correct cpu clock. Fixes Super Shot runs way too fast (ID 06472). Fixed clone Gun Champ (newer, Super Shot hardware) gun inputs. Promoted game to working.
- Heavy Unit: Confirmed tiles ROM dump for clone Heavy Unit (Japan, alternate ROM format). Note: For the B73 23 ROM: Two 27C2001 EPROMs were piggybacked and soldered together with a flying wire tied from the socket pin 31 (A18) to the bottom EPROM pin 24 (/OE) and a 7404 inverter input. The bottom EPROM chip was selected when A18=0 and the top EPROM chip was selected when A18=1. However, it's been verified the actual data matches the other sets.
- The House of the Dead: Redumped texture ROM for clone The House of the Dead (prototype)
- Icescape: Dumped IGS027A internal ROM and GG ROMs. Removed obsolete XOR table. Confirmed Icescape XA as the same as Fearless Pinocchio.
- Mad Motor: Dumped PROM (probably related to sprites hardware)
- Master Crane: Fixed ROM sizes, year, comments, etc. Fixed hash for clone Master Crane (set 2) program ROM.
- Ms. Pac-Man: Added side_effects check to dynamic bankswitch. Fixes demonstration play is reset after return from the debugger (ID 08971).
- Mustache Boy: Refresh flipscreen like travrusa/dogfgt. Small cleanups.
- Night Mare
. Added missing sound ROM from another Night Mare dump. Added emulation of Sound-3 speech synthesizer board (shared\efo_sound3.cpp). Added coin counters. Cocktail mode appears to be working. Set joysticks to 4-way.
. CDP1852 fixes and enhancements. Fixed clock write handler. Added write handler for automatically clocking 8-bit data into input-mode latch. Added line read handler for SR output (machine\cdp1852.cpp).
- Ninja Spirit: Dumped MCU
- Pengo: Dumped PROMs for clone Pengo (Marti Colls bootleg on Pac-Man hardware, set 1). Still missing one PROM, that was bad on the dumped PCB.
- PinMAME: Use a known to work on hardware ROM dump for Poker Plus (r_pokrplus). Note: There are three different known dumps for Poker Plus. The 1st one was tested on a real machine and works OK, the 2nd was also tested, but the pinball did not work with it and the 3rd was not tested.
- The Punisher: Hook up newly dumped PIC16C57 for clones The Punisher (bootleg with PIC16C57, set 1) and The Punisher (bootleg with PIC16C57, set 2), giving them working sound.
- Puzzlet: Verified some clocks
- Quasar
. Set VIDEO_ALWAYS_UPDATE because of collision flag in screen update
. Fixed enemies don't shoot (address_map) (ID 08973)
- Red Baron: Changed nosedive sound to noteslide down instead of noteslide up (atari\redbaron.cpp). TODO: Convert to netlist.
- Super Shot: Correct cpu clock
- Thunder Zone: Reduced quantum (still opcode-granularity)
- VS Gong Fight: Correct stupid strcmp. Fixes clone Ring Fighter does not boot (ID 08963).
- Warlords: Redumped sync PROM
- Fixed rom names in cps1bl_pic.cpp, nightmare.cpp and toaplan2.cpp
- Description changes of All Japan Pro-Wrestling Featuring Virtua (T 971123 V1.000) (ID 08946), Ameri Darts (set 1), Ameri Darts (set 2), Ameri Darts (set 3), Batman Forever (Dutch, 4.0), Big 10 (1985, Success), Diamond Heart (v1.06), Dynasty (2009, Ver. 1.02), Falcons Wild - World Wide Poker (Falcon original, protected), The Glob (Pac-Man hardware, Magic Electronics), Lode Runner III - Majin no Fukkatsu (Japan, rev. A), Mad Motor (prototype, set 1), Magic Electronics), Magical Kengo 2005 (Ver. 1.2), Mahjong Ougon no Pai (Japan), Mahjong Ougon no Pai (Japan bootleg set 1, medal), Mahjong Ougon no Pai (Japan bootleg set 2, medal), Mahjong Ougon no Pai (Japan bootleg set 3, medal), Mr. Do! vs. Unicorns (Japan), New Double Bet Mahjong (bootleg of Royal Mahjong, set 1), PK Turbo, PK Turbo (Ver 2.3B2, encrypted), Ron Jan (set 1), Ron Jan Super (set 1), Sector Zone (bootleg), Sector Zone (set 1), Sector Zone (set 2), Super Crowns Golf (Japan, set 1), Thunder Heroes (set 1), Vs. Janshi Brandnew Stars (Ver 1.1, MegaSystem 32 Version), World Rally (version 1.0, checksum 0E56), World Rally (US, version 1.0, checksum 2CC1), World Rally (version 1.0, checksum 3873), World Rally (version 1.0, checksum 8AA2), World Rally (version 1.0, checksum E586), Yamato (set 2) and Zen Nippon Pro-Wres Featuring Virtua (J 971123 V1.000)
- Dipswitch fixes in docastle.cpp, dogfgt.cpp, dynax.cpp, dynduke.cpp, homerun.cpp, igs_fear.cpp, megadriv_acbl.cpp, namcos12.cpp, namcos23.cpp, quickpick5.cpp,sshot.cpp and system1.cpp
- Renamed (sectrzona) to (sectrzon), (sectrzon) to (sectrzona), (yamato) to (yamatou) and (yamato2) to (yamatoa)
- MAME
. VIDEO RENDERING SYSTEM
. Fixed apparent bug in draw_quad_palette16_add (emu\rendersw.hxx)
. Support RGB multiply blending with 16bpp textures. Get rid of obsolete overly specific blend function (emu\rendersw.hxx).
. ROMLOAD: Resolve tags for ROM_COPY relative to current device properly. Tags can contain multiple colon-separated parts. Also, we really don't need tag manipulation code proliferating throughout the codebase (emu\romload.cpp).
. DEVICES
. Don't eat negative cycles with abort_timeslice when icount<0 (emu\diexec.cpp)
. Added retry_access with abort_timeslice for redoing the access at the same point in time + documentation (emu\devcpu.cpp) (cinematronics\leland_a.cpp, misc\quizpun2.cp and universal\docastle_m.cpp)
. LUA engine: Exposing full build version to LUA as emu.app_build (mame\luaengine.cpp)
. INPUT: Guard against automatic integer promotion on arithmetic (emu\input.cpp)
. UI
. Fixed sorting. Clones should match parent on list name and short name, instance name of first part is irrelevant. List names actually need to be compared (ui\selsoft.cpp) (ID 08966).
. Fixed palette viewer if indirect pen exists (ui\viewgfx.cpp)
. Only check for hold/drag conversion on losing pointer if it hasn't already happened (sdl\window.cpp and windows\window.cpp)
. CHDMAN: Added a sink for osd_printf_ family function output (tools\chdman.cpp)
. Mark one path as EXPECTED (emu\schedule.cpp)
. Don't increment coin counter at power-on when initial counter_w input is 1. Added handlers for resetting counters (emu\bookkeeping.cpp).
. Consolidated drivers into single files (cclimber.cpp, coolpool.cpp, docastle.cpp, galivan.cpp and vigilant.cpp)
. Multi-Language: Ukrianian translation updated to actual 0.270. There were minor cosmetic corrections and translating empty problematic strings.
- MAC OS X: Don't use uninitialised NSRect when creating pop-up button. The initial size doesn't really matter because the pop-up button is resized before being added to the container that holds it and the expression field. The disassembly viewer apparently wasn't updated properly like the memory viewer when the auto-sizing code was refactored. Hopefully this will fix the debugger crashing when restoring window positions from configuration (although I would have thought this would cause crashes in more situations if it was the cause of that).
- Compiling
. Enabled -Wno-tautological-compare for BGFX in order to evaluate turning it off for MAME (src\3rdparty.lua)
. Fixed several things using memset on non-trivial objects. In particular, this fixes a delegate getting nuked in cpu\powerpc.
. Cleaned up miscellaneous stuff (namco\vpx3220a.cpp, vigilant.cpp)
. Use 32x32=64-bit multiply inlines (cpu\drcbec.cpp, cpu\i960, mips\mips3.cpp, cpu\sharc and cpu\v60)
. Removed assert(0 <= info->clickcnt) (sdl\window.cpp)
. Fixed build with Clang 19. sol::optional::emplace was broken and depended on the compiler not checking that members exist if the template wasn't instantiated. See ThePHD/sol2#1606 and ThePHD/sol2#1648 (3rdparty\sol2\sol\sol.hpp).
. Started fixing #include guards that don't match the file path. There are still plenty more in src/devices, but it's a start. When there are none left in src/devices and src/mame, a CI task can be added to catch them.
- Debugger: Added callback to allow debugger to break into the middle of wait-type instructions whose execution time is normally indefinite. When this happens, a special message may be printed to the debug console stating the location of the last actual instruction executed before the wait (if there was one). Note that since the callback ignores the current value of the program counter, this special type of debugger break cannot be entered through breakpoints or instruction stepping commands. The callback also leaves no effect on PC history tracking or trace logs (emu\diexec.h and debug\debugcpu.cpp).