MAMEWorld >> News
Previous thread Previous  View all threads Index   Next thread Next   Flat Mode Flat  

MASH
MASH
Reged: 09/26/03
Posts: 1775
Loc: Germany
Send PM
MAMEinfo 0.221GIT + 0.222GIT (17th May)
05/17/20 11:36 AM


MAMEINFO.DAT

* Updated to MAME 0.221GIT + 0.222GIT - http://git.redump.net/mame/log/

* Added Source/Listinfo changes

* Newest Bugs (17th May)

* Added/Fixed 'Recommended Games'

* Fixed Mameinfo.dat infos





Download at: http://mameinfo.mameworld.info/

MAME Testers at: https://mametesters.org/view_all_set.php?sort=last_updated&dir=DESC&type=2

Ashura-X's Nightly MAME builds: http://ashura.mameworld.info/nightlybuilds/builds.html



0.222GIT

- New Working games: Bingo Time, Kick and Run and Tetris + Cherry Master (Corsica, v8.01, set 2)
- New Non-Working games: Dardomania (v2.1), TwinBee (Bubble System) and World Class Bowling Tournament (v1.30)
- New clones: Circus (bootleg), Cleopatra Fortune (Ver 2.1O 1996/09/05, bootleg), Dirt Dash (Rev. DT1 Ver.A, Japan), FreeWay (V4.31), Golden Par Golf (Joystick, V1.0), 'Konglongwang - D-Kids VS Alpha Yaosai (China, Ver 2.501) (MDA-C0081)', Hot Blocks - Tetrix II (set 2), Hot Blocks - Tetrix II (set 3), Magic Bomb (Ver. A3.1A), Magic Bomb (Ver. AA.72D, 14/11/05), Magic Bomb (Ver. AB4.2, 11/10/01), Magic Bomb (Ver. AB4.5A, 07/10/02), Magic Bomb (Ver. L3.5S), Pit Boss Superstar (9221-12-02, Minnesota version), Prebillian (bootleg), Shinobi (Datsu bootleg, set 3), Shuffleshot (v1.35), Shuffleshot (v1.38), Street Fighter (Japan, bootleg), Vampire Savior: The Lord of Vampire (Brazil 970519) and Video Pinball (4 ROMs version)
- New PinMAME games: Twilight Zone (L-5)
- New drivers: drdmania.cpp
- New devices: 24c512, c219, cxd1180, jag_blitter, m24c02, m6512, pcd8572 and sed1278_0b
- New Clrmamepro: https://mamedev.emulab.it/clrmamepro/#downloads
- CPU
. DEC T11: More accurate emulation of interrupt acknowledgment. Added PF and HLT interrupts. This is accurate behavior for the T11, but it makes some of the driver changes a bit more awkward than they probably should be, given that one device is standing in for every CPU vaguely related to the PDP-11 family. Galaxy Game obviously wasn't written for a T11, and the BK-0010's K1801VM1 doesn't look like a lot like the T11 either.
. Hitachi HD6309: Removed 0x20 opcode (m6809\hd6309.ops). Note $1020 is an illegal opcode on the 6309. On the 6809 it is a rarely used form of LBRA. I tested on a real 6309 and $1020 vectors to Illegal.
. Intel 8085A
. Stop in debugger after an interrupt is taken, not immediately before.
. Interrupt updates: Eliminated special-casing and three-in-one loading of CALL (and JMP) vectors in favor of fetching each byte in succession like a normal instruction. Added INTA callback, called only when INTR (and not any other interrupt) is acknowledged. Enforce that TRAP (NMI) must be held at a high level until acknowledgment.
. Intel 8086: Correct a fortuitously harmless typo in state registration (i86\i86.cpp). Updated m_prev_ip (and therefore CURPC) after taking interrupt. Added exception hook for debugger gex command.
. Intel 8086/80186/80286: Don't automatically clear IRQ state upon acknowledgment (i86\i86.cpp). Added byte registers to debugger state and improved tracking of previous PC for debugger. Added exception hook for debugger gex command.
. Intel 80186: Initialized variable as needed to avoid timing regression in some leland.cpp games in debug devnoclear builds (i86\i186.cpp)
. Intel 80286: Don't clear INT state upon acknowledgment and added exception hook for debugger (i86\i286.cpp). Updated m_prev_ip (and therefore CURPC) after taking interrupt.
. Intel i960KB: Added missing opcodes. Rewrote disassembler (i960\i960dis.cpp). Added partial support for all IAC messages (i960\i960.cpp).
. Mitsubishi M37710S4: Rename some registers to agree with Mitsubishi documentation
. Motorola MC6801
. Clear OCF when output compare register is rewritten, not read from. Fixed #define TOH.
. Removed hack, the real cause of (MESS) Coleco Adam locking up at boot was fixed recently with TCSR_OCF clear. TCSR upper 3 bits are read-only.
. Motorola MC68000: Added exception hook for debugger gex command (m68000\m68kcpu.cpp). Added fmod instruction (m68000\m68kfpu.hxx).
. NEC Vxx: Added exception hook for debugger gex command. Added byte registers to debugger state. Improved tracking of previous PC for debugger. Use more NEC register names.
- SOUND
. K053260 KDSC: Fixed panning, interrupts and general volume for The Simpsons.
. Namco C352: Allow byte accessing. Modernized save states. Added notes. Use shorter/correct type/argument values.
- DEVICE
. 6522 VIA: Correct vocabulary, raise cb2 on shift in to make open-collector work correctly. Don't lose sync on edge count when the serial clock is external.
. Discrete Netlist
. Fixed Clang-tidy warnings. Fixed some windows build issues in build\makefile. Improved const-awareness and tidy changes. Identified a number of code locations which could accept const arguments.
. Added 74163 4-bit counter, 74393 device and unit test.
. More code maintenance. Make some calls private which were public before. Eliminated functions which would be executed only once. Make terminal reference functions in twoterm.h return const. Clearly identify the use cases which need a non-const ref to terminals.
. Fixed "--cmd=listdevices". Broken for quite a while this is now working again (prg\nltool.cpp). Fixed documentation build on windows in makefile. Documentation should be created on Windows using make mingw PARAMS=doc. Admittedly this is ugly and the makefile needs to be changed to use something like "make HOSTOS=windows doc".
. Fixed some edge cases in static compile. Comes with a new version of static_solvers.cpp.
. Stub implementation of 566 VCO. Added NE566 to netlist.lua. Fixed output stage on NE566
. Added the NE566 as a macro device. The device can be found in nlm_other.cpp. Removed nld_ne566.*. Added SYS_SW, SYS_SW2 and SYS_COMP. These are single switch, alternating switch and a analog comparator with digital outputs. Renamed RES_SWITCH to SYS_SW. Added example ne566.cpp in netlist/examples.
. nld_log now writes out last value at end of run
. Fixed polarity issue in CCCS device. Note: This affects all use cases of CCCS.
. Faster LM3900 model (macro\nlm_opamp.cpp)
. Unknown parameters really should be fatal. Unknown parameters like Solver.ABCD now will cause a fatal error to be generated. Fixed unknown parameter on ne566 and VS 2019 build.
. Fixed a long standing bug in proxy/family code. This never materialized because proxies were always connected to GND in existing netlists (netlist\nl_base.h).
. Added simple ZDIODE model. The model is driven by three additional model parameters: NBV, IBV, BV. Example code how to define a typical 7.5V Zener diode: ZDIODE(ZD, "D(BV=7.5 IBV=0.01 NBV=3)") or NET_MODEL("A1234 D(BV=7.5 IBV=0.01 NBV=3)") ZDIODE(ZD, "A1234")
. Changed license for netlists in examples to CC0 (public domain). Moving over to Clang-tidy-11 and enabling more warnings.
. Adding prandom.h (PseudoRandom Number Generator (Mersenne Twister))
. Added two noise sources. The two sources act as voltage sources, though noise may also be injected as conductivy or current noise. SYS_NOISE_MT_U: Mersenne Twister uniform noise and SYS_NOISE_MT_N: Mersenne Twister normal noise. nld_sys_noise is templated: Using NETLIB_NAME(sys_noise_mt_u) = NETLIB_NAME(sys_noise);. Thus the approach is scalable. The implementation is state save aware, and thus reproducible results are guaranteed. An example use case is provided as well, see examples/noise.cpp.
. Restructered the save state system. This change makes state saving contract based. Objects which need to save state need to have the following template member: template void save_state(ST &st) { /* Example */ st.save_item(m_p, "m_p"); st.save_item(m_buf, "m_buf"); }. This member function is called when the object is passed to the state manager save function.
. Fixed two nlwav bugs. First one corrupted wav files produced on windows. The second one produced wrong sample integration results.
. New nlwav functionality: nlwav now supports 16 and 32 bit integer format (wav16s, wav32s) as well as 32 bit float format (wav32f). The "wav" format is no longer supported. Added support for high and low pass filtering the wav output. Dynamic volume adjustment (use "-a 0") --hpboost can suppress spikes at the beginning of the file (<10ms). The addition of the float format simplifies debugging significantly since it covers the whole dynamic format. Added nlwav to the local VS 2019 build.
. Added elif processing to preprocessor (plib\ppreprocessor.cpp)
. Moved nld_power_pins to nl_base.h. This removes a large number of dependencies on nlid_system.h.
. Reduced the usage of NETLIB_CONSTRUCTOR_DERIVED to implement dip package objects. This aligns the programmatic approach with the approach used in the macro folder, i.e. using netlists. Untangle model definition and interpretation as well. This changes are a first step in aligning models and families and thus simplify the source further.
. Fixed VCCS definition (netlist\analog\nld_fourterm.h)
. Removed family_setter. Naming alignment and family becomes model. Architecture cleanups. Reviewed reset logic. Pass truthtable family as string to factory. This is another set of changes on the path to align logic families and models. As a side effect, the object model now makes a clear distinction between analog models and logic models. The number of macros in nl_base.h has decreased significantly due to these changes.
. Provided more information for warning on connecting two terminals already on the same net
. Logic devices now support model parameter. This a big forward to allow reuse of code. Still a longer way to go but the foundation there. Also brings quite a number of simplifications and dead code removal.
. Added undef support to the preprocessor. Added support for empty #defines to preprocessor. Added detection and reporting of re-definitions (netlist\plib\ppreprocessor.cpp)
. Extended functionality and code cleanup: Working macro level parameters. Simplified code significantly. Fixed a number of hidden issue. Dead code removal. It is now possible to define netlist level parameters (see example). The code also has been prepared to allow something along the lines of LIBENTRY_MODEL(DM74LS00_DIP, DM7400_DIP, "LS74XX") to define a LS version on top of an DM7400_DIP bare TTL implementation. This however will need more efforts to existing devices to honour some timing adjustment in the model definition. It will already honour different output specifications between LS series and bare TTL if connected to analog components.
. Code cleanup to better separate the following stages: Parsing, setup and run. In addition preliminary native tristate support was added. Not yet production ready, please don't use it.
. Added 74377/74378/74379 devices to netlist. Re-do the 74377/8/9 as macros. Added devices CD4013, CD4069 and CD4070.
. Fixed Breakout SLOW_BUT_ACCURATE
. Rewrote rom devices from scratch. This is a rewrite from scratch for rom devices. It uses a generic template to implement rom devices which is used together with a description struct to define a rom device. This leads to highly efficient code since all information is available at compile time. This is also a step forward to support tristate outputs. All rom devices covered by this approach have tristate or open collector outputs and thus all code changes to support tristate outputs can now be made consistently in one file.
. GP9001 VDP: Fixed GP9001 sprite drawing, fixes Truxton II sprites flicker or disappear during certain parts of the game (ID 07642).
. Hitachi HD44780 A00 LCD Controller: Allow function set register to be updated again right after changing the data length. Allow function set register to be updated again right after changing the data length.
. Keyboard
. Fixed typos in PORT_CHAR definitions (machine\keyboard.cpp)
. Fixed for UI Paste with the Default Serial Terminal (emu\natkeyboard.cpp). This fixes the ability for one to use UI Paste with the Default Serial Terminal. Without this fix, 8 characters @^&()\:" cannot be pasted from the UI.
. I2C Memory: Created i2cmem sub classes for all used device types, fixed the buffer sizes that were wrong, removed the methods for modifying the data & buffer sizes and changed the drivers to use the correct types.
. Intel 8156 RAM, I/O & Timer: Allow writes to port registers to alter latches whether or not output mode is configured. Turn logging back off.
. Intel 8259 PIC
. Z80/8085 slave PICs need 32 bit vectors. Emulated three-cycle acknowledge for non-8086 mode (machine\pic8259.h).
. Moved recently-introduced inta_call hack down into the only Z80-based driver that still needs it. The hardware-accurate way of synthesizing multiple INTA pulses in a Z80 system (which involves rerouting what would otherwise be normal memory reads) is not so simple and deservedly rare.
. K052109 Tilemap Generator: Correct video clocks (drivers\simpsons.cpp and video\k052109.cpp)
. K056230 LANC: Misc demacroization. Documentation updates.
. Motorola MC6845 CRTC: Max visible lines might not be what really is displayed, see 8088mph (ibm5150.xml Software list).
. Namco C140
. Updated data bus behavior and support 12 bit PCM. Verified from Assault (namcos2.c) schematics. Added/Updated notes. Use shorter/correct type values. Fixed address/data bus bits and modernized save states. Fixed spacing. Reduced unnecessary lines and duplicates. Moved little endian interface in c140.h. Moved bankswitch behaviors in each drivers. Reduced noisy sound regression in previous commit remain in vgmplay for compatiblity. Implemented some features from QuattroPlay by superctr. Splitted sound stream update and host interface.
. Fixed C140 input clock source according to crystal for gal3.cpp and namcos21*.cpp. Added notes.
. Signetics SCN2674 AVDC: Delayed commands use display pointer address, not screen 2 address.
. Z80 SCC Channel: Don't invent data (m_rx_fifo_rp_step). Clear IUS not IP.
- atarisy1.cpp: Some of the BIOS roms were wrong (136032.105.l13, 136032.115.j10 and 136032.107.b2) (ID 07656). Clone Road Blasters (cockpit, rev 1) also expects LSI BIOS.
- chihiro.cpp: More precise implementation of rcc and rcp vertex shader instructions (video\xbox_nv2a.cpp)
- chihiro.cpp, naomi.cpp and triforce.cpp: Eliminated get_read_ptr (machine\naomigd.cpp)
- cischeat.cpp
. Added OKI mirrors to Arm Champs II, fixing missing/erratic sounds.
. Fixed Scud Hammer/Arm Champs II irq and refresh rate to be measured 59.17 Hz instead of 30. Moved armchmp2 specific I/Os into own state machine, and demoted it to MNW because the arm input not exactly understood and not supposed to require user input at POST anyway.
- dec8.cpp
. Restoring coin-up sound
. Identified 3 bad bits in Captain Silver MCU dump, hooked up MCU.
- ertictac.cpp (Archimedes): Switched Erotictac driver and (MESS) Archimedes 310 over to use machine\pcf8583.cpp, which is not currently based on i2cmem.cpp but might be worth merging in the future.
- gaiden.cpp, tecmo16.cpp, suprnova.cpp
. Moved delayed sprite drawing function into screen_vblank
. Use generic gfx layout in suprnova.cpp. Fixed CPU clock related to XTAL. Use device for screen.
- jaguar.cpp: Moved I/O handlers to specific maps, untangle register array usage, to be completed. Nuke duplicate I/O accesses, rename to iobus_r/w, make go_w to be an actual line. Fixed addqmod & subqmod modulo mask for DSP. Refactor TOM to host CPU function, and fix GPU irq lv 3 when a GPU object is encountered. Fixes mutntpng and atarikrt booting. Fixed Jaguar irq line to 2, trusted. Start reworking the blitter. Relicensed to BSD.
- kikikai.cpp: Hooked up Kick and Run MCU. Split up kikikai class.
- leland.cpp: Initialized variable as needed to avoid timing regression in some Leland games in debug devnoclear builds (i86\i186.cpp)
- model3.cpp: Added screen raw parameters
- namconb1.cpp: Reduced duplicates. Moved virtuals under protected. Use shorter/correct type values and fixed spacing. Converted sprite bank delaying behavior into unique_ptr. Removed unnecessary device.
- naomi.cpp: NAOMI2 USA BIOS Rev.C and Korea BIOS Rev.B dumped
- peplus.cpp: Fixed regression in peps0615 introduced in MAME 0.220, the game writes to the page buffer then sends a spurious start condition before the stop condition that writes the buffer.
- peyper.cpp: Simplified handler signatures and mask SL for reads
- redalert.cpp
. Audio updates (audio\redalert.cpp): More accurate emulation of 555-based IRQ timing. Use 6821 PIA device to generate sound IRQ in Demoneye-X. Simplify handler signatures.
. Various fixes
. Fixed Panther input labels, marked maincpu ROMs as bad and volum (sic) lever is vertical not horizontal. Reduced input defs. Added communication hand-shake and fixed audio mapping, emits a few sounds.
. Better Demoneye-X colors. Added bitmap layer. Fixed drawing order and tile banking.
- seattle.cpp and vegas.cpp: Input cleanups
- seta2.cpp
. Further work on zooming: Y zoom improvements. Fixed yzoom issue. Improved Penguin Brothers, break Guardians. Test Guardian improvement. Minor adjustment.
. Improved x enlarge cases (Penguin Brothers end of level and attract modes of Deer/Trophy/Turkey Hunting games etc.)
. Demoted 'Star Audition' to MACHINE_NOT_WORKING. Note: Game needs flipscreen hooking up properly with new code to function at all.
- turbo.cpp: Fixed 8279 clock
- williams.cpp: Fixed colors in Williams games. This fixes color issue introduced by Mystic Marathon changes.
- Alpine Surfer: Demoted game to MACHINE_UNEMULATED_PROTECTION
- Andromeda SS: Correct metadata
- Bingo Time: Fixed Bingo Time (Game now playable). Added preliminary sound.
- Biomechanical Toy: Fixed 'Lives' dipswitch setting
- Circus / Acrobat TV: Added (bootleg) proms to 'Circus / Acrobat TV' and clone Springboard (bootleg of Circus)
- Crush Roller: Fixed Crush Roller and clone Make Trax constantly added coins to the coin counter in the background (ID 07591)
- Deal 'Em: Fixed gfxdecode color amount
- Dirt Dash: Redumped bad pointrom dt1ptrm1.16j from a different PCB (one was internally bad on the Dirt Dash DT2 Ver.A PCB). Updated documentation with many changes including measuring DSP and MCU clocks.
- Donkey Kong 3: Changed 'Difficulty' dipswitch string to numbers (ID 07648)
- Galaxian: Fixed manufacturer of clone Galaxian (Irem) (ID 07653)
- Hanafuda Hana Gokou: Corrected DIPs as per DIP sheet and added DIP locations
- Hot Blocks: Replaced Intel 8088 CPU1 with NEC V20 and YM2149 and with AY-3-8910A
- Magic Train: Fixed 'Double Up' dipswitch and 'Stop 2/3' PORT_NAMEs (ID 07634) (ID 07635)
- Operation Thunder Hurricane: Added I/O M68k stub
- Raiden II: Added U0342 PAL to Raiden II and clones (see https://twitter.com/neSneSgB/status/1232115385303879680).
- Shuffleshot: Added gfx1 roms from clone (v1.38) to parent set Shuffleshot (v1.40) and clone Shuffleshot (v1.39). Note: They match programs internal checksum values.
- The Simpsons: Correct video clocks. Fixed K053260 panning, interrupts and general volume.
- Snap Jack: Fixed year info (ID 07629)
- SOS Game: Screen color was inverted
- Space War (Leijac Corporation): Fixed parent/clone relationship (ID 06898)
- Street Fighter: Added I8751 dump to clones Street Fighter (Japan) (protected), Street Fighter (US, set 2) (protected) and Street Fighter (World) (protected), removed the protection HLE.
- Super Shot: Correct cpu type
- Tetris + Cherry Master (Corsica, v8.01, set 2): Fixed rom loading (Game now playable)
- TX-1: Adjusted analog steering
- Virtua Striker 4 (Japan, Rev E): Replaced clone 'Virtua Striker 4 (Japan, Rev C) (GDT-0013C)' GDROM dump with RAW/2352
- World Class Bowling: Dumped user1 rom wcb_prom0_v1.30t for clone World Class Bowling Tournament (v1.30) (Game now playable)
- Fixed rom names in itech8.cpp
- Dipswitch fixes in ddenlovr.cpp, gaelco.cpp, itech32.cpp, kikikai.cpp, seattle.cpp and vegas.cpp
- Description changes of Andromeda SS (Japan?) (ID 07652), Bio F.R.E.A.K.S (prototype, boot ROM 0.1i), CART Fury Championship Racing (ver 1.00), Flash (Williams, L-1), Flash (Williams, L-2), Flash (Williams, T-1) Ted Estes, Hyperdrive (ver 1.40, Oct 23 1998), Indiana Jones and the Temple of Doom (cocktail), IPM Invader (set 1), IPM Invader (set 2), Magic Bomb (Ver. BR4.4, 04/19/02), NBA Showtime Gold / NFL Blitz 2000 (ver 3.0) (SportsStation), Panther (bootleg?), Pit Boss Superstar (9221-12-01, California version), SOS Game (ID 07651), Tiger-Heli (US) (ID 07198), Tiger-Heli (Japan), Tiger-Heli (bootleg set 1), Tiger-Heli (bootleg set 2), Tiger-Heli (bootleg set 3), Tiger-Heli (bootleg set 4), Time Warp (Williams, L-2), Time Warp (Williams, L-3), Time Warp (Williams, T-2), Vapor TRX (GUTS Jul 2 1998 / MAIN Jul 18 1998), Vapor TRX (GUTS Apr 10 1998 / MAIN Apr 10 1998), Video Pinball (16 PROMs version) and Wayne Gretzky's 3D Hockey (ver 1.3)
- Renamed (magibomb) to (magibomba)
- MAME
. DEVICE
. Removed colon as a patch seperator (emu\diimage.cpp)
. Initialized a couple of variables, fixes numerous bugs in devnoclear debug build with BIOS roms in devices (emu\device.cpp).
. Timer system
. Added to_string() to get a human-readable version of the time (emu\attotime.cpp)
. Periodic timers are not adjustable, be a little more affirmative about it (machine\timer.h).
. LUA engine: Consolidated code for pasing enum strings
. Programmable Logic Device (PLD): Added GAL20V8 support to the jedutil tool
. Misc demacroization (machine\k056230.cpp, drivers\model2.cpp, stv.cpp, machine\315-5838_317-0229_comp.cpp and pgmprot_orlegend.cpp)
. Moved some RC timing macros out of the core (machine\rescap.h; drivers\bfm_sc1.cpp, bfm_sc2.cpp, capbowl.cpp, gottlieb.cpp, lockon.cpp, mpu3.cpp and mpu4.cpp)
. Simplified many handlers and READ/WRITE macros removal
- VGM player: Implemented some features from QuattroPlay by superctr
- Compiling
. Fixed GCC 10 uninitialized (modules\vzdos.cpp) struct warning and GCC 10 fix for sqlite3 (scripts\genie.lua)
. Get rid of missing end-group warning for MinGW (scripts\genie.lua)
- Debugger
. Refocus debugger on CPU when one of its watchpoints is hit (debug\debugcpu.cpp). This solution may be less than ideal for some multiprocessing environments where CPUs share spaces, but it prevents the focus from shifting unpredictably to whichever CPU happens to be next in line to execute (e.g. when synchronization for a soundlatch write aborts the original CPU's timeslice).
. Added PC to debugger exception hit message (debug\debugcpu.cpp)
. Added optional condition parameter to debugger gex command
. Fixed focus command (debug\debugcpu.cpp)
. Fixed debugger regression with systems such as fi6845/fi8275 where a DMAC or other non-focusable executing device is scheduled first of all (debug\debugcpu.cpp)




0.221

- New games: Anime Champ (GCA07 VER. JAA), Goori Goori, Great Bishi Bashi Champ (GBA48 VER. JAB), Gulun.Pa! (Japan 931220 L) (prototype) and Speed Race (Seletron / Olympia)
- New Working games: Atom (bootleg of Bombjack Twin), Lady Gum, Professor Trivia (set 1), Professor Trivia (set 2) and Sangokushi II (bootleg)
- New Non-Working games: EuroPlay 2001, Happy Skill (Italy, V611IT), Master's Fury, Montana Super Draw (4436-05, U5-0), Pacman BALL (PMB2 Ver.A.), Scorpion DX and unknown Recreativos Franco slot machine
- New clones: Alligator Hunt (protected, prototype?), Big Run (11th Rallye version, US?), Cobra-Command (Japan, bootleg), Crazy Bonus 2002 (Ver. 1, set 3), DoDonPachi Dai-Ou-Jou (Japan, 2002.04.05 Master Ver, location test), Final Fight (bootleg with single OKI), Frantic Fred (Release 2), Front Line (AA1, 4 PCB version), G.I. Joe (US, UAA), Galaxy X (bootleg of Galaxian), Gun.Smoke (Germany, censored), Jumping Break (set 2), Jurassic 99 (Cadillacs and Dinosaurs bootleg with EM78P447AP), Koutetsu Yousai Strahl (Japan, bootleg), The Mah-jong (Japan, set 2), Mario Kart Arcade GP (Japan, MKA1 Ver.C, update), Metal Slug 5 (bootleg), Mighty Monkey (U.Games bootleg), Moon Cresta (Nichibutsu USA, encrypted), Pang! 3 (bootleg, set 3), Perfect Billiard (bootleg), Pro Tennis (Japan), Raiden Fighters 2 - Operation Hell Dive (Switzerland), Route 16 (Sun Electronics), Space Invaders Part II (Taito, smaller ROMs), Street Fighter II: The World Warrior (World 910411), Super Contra (set 2), T.A.N.K (bootleg, 8-way joystick), Touchmaster 5000 (v7.11 U.K.), Turbo (encrypted, program 1363-1365 rev C), Vanguard (Germany), Warriors of Fate (bootleg), Warriors of Fate (bootleg with PIC16C57) and X-Men (4 Players ver UEB)
- New PinMAME games: Striker Xtreme (1.00)
- New drivers: goori.cpp, meritsdx.cpp, rfslots8085.cpp and startouch.cpp
- New devices: ad_59mc07, ad_60mc01, atarisac, atariscom, hd6435208, hd6475348, hd6805s1, mm58274c, n8097bh, neocart_mslug5b, p8798, s_dsp, s_smp, tc0090lvc, upd7001, upd72067, upd7811, upd78c10 and ym2414
- CPU
. ADChips SE3208: Use callbacks for interrupt acknowledgment
. AM9517A: Assert EOP during rather than after final DMA transfer. uPD765 may not care much about the timing of this signal, but other devices (notably NCR5380) expect it to occur simultaneously with the read/write strobe. This *might* break drivers/devices that expect EOP to be continuously active as it was previously emulated, rather than pulsed. Those likely need to latch the edge of EOP or one of the ACK signals.
. Intel I386: Added alias for fstp st(i) (cpu\i386\x87ops.hxx)
. Intel P8x9x: Added more device types, some with 16-bit buses. Implemented quasi-bidirectional port structure (cpu\mcs96\i8x9x.cpp). Location 0 is just 0 (mcs96\mcs96d.cpp). Fixed EXTINT and added some very preliminary HSI stuff. Implemented HSO CAM status flags in IOS0 (cpu\mcs96\i8x9x.cpp).
. Motorola MC6800: Removed unneeded 6800ops workaround
. Motorola MC68000
. Don't iterate to save arrays. Eliminated legacy prepost registration (m68000\m68000.h).
. Pload does an explicit table walk (m68000\m68kmmu.h)
. Motorola MC68010: Correct DBcc timings. This fix prevents certain Marble Madness clones (e.g. marble2) from watchdog resetting while cheksumming the ROM (m68000\m68k_in.lst and m68kops.cpp).
. Motorola MC68705: Added more documentation of mask ROM versions. Added HD6805S1 device for future use.
. Motorola MC68HC05: Support M68HC705C8A internal banked RAM (cpu\m6805\m68hc05.cpp). Only reset due to NCOP when it's enabled.
. NEC uPD7810/11: Nominally distinguish NMOS and CMOS device types
. NEC Vxx: Added 8080 mode (nec\nec80inst.hxx)
. Signetics 2650: Get the vector from the IRQ ack request, removed use of set_input_line_and_vector and HOLD_MODE. Fixed interrupt-related regressions in 2650-based games.
. Zilog Z8000/Z8002
. Clean up reset sequence (don't read program space at device_reset time). Use callbacks to vector all external interrupts; correct data pushed during acknowledgment. For NMI and NVI, a vector is read from the bus but merely stored on the stack (most Z8000 systems seem to just leave the bus open here). For VI, the vector offset calculation has been changed for the Z8001: the low byte is multiplied by 2, not 4, so AD0 generally must be driven low.
. Fixed unreliable order of operations in operand calculation for certain instruction modes (z8000\z8000cpu.h)
. Memory access refinements. Implemented byte smearing for memory and I/O writes. More accurately handle unaligned word I/O without breaking PCOS-M24.
. Z8001: Expanded address space to 23 bits
. Z8002: Correct width of I/O space (16-bit, not 8-bit). Documented pinout.
. Zilog Z80180: Internalized certain registers and make clock divider software-selectable
- SOUND
. Atari C012294 POKEY and Yamaha YM2414 OPZ: Modernized struct saving
. Discrete Sound: Documented DISCRETE_FILTER1 and DISCRETE_FILTER2 better (sound\disc_flt.hxx)
- DEVICE
. 7474 TTL: Changed output to deliver either 0 or 1, not -1.
. 74161 TTL: Fixed state machine and made TC signal asynchronous
. 74543 TTL: Added octal registered transceiver
. Atarigen and Atariscom (General functions for Atari games)
. Separated various drivers from atarigen_state (machine\atarigen.cpp; drivers\arcadecl.cpp, eprom.cpp, klax.cpp, shuuz.cpp, toobin.cpp and vindictr.cpp)
. Moved interrupt handling down into drivers (machine\atarigen.cpp; atarig1.cpp, atarig42.cpp, atarigt.cpp, atarigx2.cpp, atarisy1.cpp, atarisy2.cpp, blstroid.cpp, cyberbal.cpp, gauntlet.cpp, rampart.cpp, skullxbo.cpp and xybots.cpp)
. Eliminated ATARI_CLOCK_xxxMHz macros in favor of standard XTAL constants (machine\atarigen.cpp)
. Separated 'Atari Sound Communications' from machine\atarigen.cpp. Moved IRQ handling to audio\atarijsa.cpp (not a property of the actual device)
. DECO 55 / 56 / 74 / 141 Tilemap Generator: Added notes of Locked 'n Loaded PCBs. Fixed transparency/transmask handling in custom draw case.
. DECO BAC06 Tilemap
. Fixed flagsmap handling. Reduced unnecessary values.
. Updated drawing behavior. Use tile callback. Converted pen masking into set_transmask behavior. Added notes. Reduced duplicates and unneeded values.
. DCS Audio: Removed some dummy_space() calls. Fixed reset control. Changed DCS reset control to active low in Midway drivers (atlantis.cpp, kinst.cpp, midvunit.cpp, seattle.cpp, vegas.cpp, midtunit.cpp, midwunit.cpp and midxunit.cpp).
. Discrete Netlist
. Fixed parsing of netlists by nltool. Reduced memory allocation calls in non-core code. Performance improvement.
. Fixed netlist syntax errors (machine\nl_dpatrol.cpp). Fixed standalone build and doxygen mainpage (netlist\build\makefile and netlist\documentation\mainpage.dox.h).
. Improved performance up to 65% on audio netlists. This commit introduces precompiled static solver code. Due to additional optimizations the compiler can use because the detail calculation steps for the solution are known e.g. the kidniki netlist sees a 100% speed increase. In all environments (windows/*nix/osx) the source for the static solver code can be created using bash lib\netlist\nl_create_mame_solvers.sh. This will create lib\netlist\generated\static_solvers.cpp which is compiled into the mame binary. The script is just a temporary workaround. The intention is that nltool whill be able to create this file with one call. There are other improvements in this commit speeding up the processing of timestep and dynamic calculations.
. Documented alternative approach to CD4016. The CD4016 is an analog switch IC. Document an experimental approach to implement the analog switch as a 3 terminal element which is completely being dealt with as part as the linear system. The intention was to improve convergence when the switch is in a feedback loop. One example are two-opamp tridiagonal wave generators. Unfortunately the approach did not work out and in addition was performing far worse than the net-separating original code. Also updated comment in nld_generic_models.h.
. Fixed linking order of netlist. Moved netlist between dasm and utils,expat,... link statements. This fixes the resolution of symbols in netlist code which may be used in machine\netlist.cpp. Changed tested on Ubuntu, Windows and MacOSX. Removed a FIXME in plib\pmain.cpp.
. Added parameter to split_paragraphs to allow passing in a custom line end string (plib\poptions.cpp). Basename function now accepts a suffix to remove (plib\putil.cpp). Move macros where they belong. Fixed a macro expansion bug. Fixed alternative LM3900 implementations (macro\nlm_opamp.cpp).
. nltool usage and static compile changes. This commit simplifies the creation of static solvers. For this to happen the following changes were made: nltool does no longer support the "-f netlist_file.cpp" option. All parts of netlist which used the option now expect the file to be specified after all other options. The static compile command now supports an "--output" option to specify the file to be created and accepts multiple input files. To be create the static solver file for MAME use the script provided or: nltool --cmd static --output=src\lib\netlist\generated\static_solvers.cpp. Updated documentation and examples provided by nltool --help.
. Removed code duplication. Clang-tidy, srcclean and pedantic warnings fixed. Code maintenance on plib\pfunction.cpp.
. Compile time improvement and code maintenance. Added a define NL_USE_ACADEMIC_SOLVERS and disabled it in the build. This will not compile in solvers which are either illustrative or only perform for large sparse matrices like GMRES.
. Simplified object structure a bit
. Code maintenance and edge case fixes. "Edge cases" are compiles were the floting point type used for the core may be different from the one used by solvers, e.g. double/float. This does not happen in MAME, here currently this is always double/double. Since floats are better suited for GPUs whose double performance is limited it was time to review the code. This commit fixes warnings about type conversions and precision loss. In addition there is better support for INT128 and FLOAT128. The MAT solver has seen some minor performance increases.
. Fixed a segfault happening only under for certain netlists (netlist\nl_setup.cpp). This seems to be a compiler/standard library issues.
. Documentation update (netlist\documentation\mainpage.dox.h, primer_1.dox.h and test1-50r.svg)
. Documented trapezoidal capacitor integration (netlist\analog\nld_generic_models.h)
. Improved readability. The purpose is to make clear what is actually done and to reduce usage of calls to update.
. Unify solver calls. Calls to the solver used different paths. These changes unify these calls and provide a common call for discontinuous state changes on analog components (change_state).
. Epson RTC-65271 RTC: Added intrq_r method to query interrupt state. Use existing interrupt flag for intrq_r (machine\rtc65271.cpp).
. Floppy: Save INTRQ and DRQ states (machine\wd_fdc.cpp). Case of the missing floppies solved (isa\fdc.cpp).
. Hitachi HD63484 ACRTC: Simplified and unified handlers. The actual bus interface makes no provision for the upper/lower byte masking performed by the previous implementation.
. MC6850 ACIA: Prevent transmission of a spurious character following master reset
. Microchip PIC16: Added PIC16 generic disassembler with extended instructions (tools\unidasm.cpp)
. MOS 6551 ACIA: Clear IRQ state upon hardware reset. Not doing this at device_start time avoids a race condition in digel804 that was causing the Z80 interrupt to be raised in advance of machine_start.
. Namco Custom
. Namco custom chip improvements. Wire up reset lines on Namco custom chips. Removed debug logging.
. Emulated Namco 51xx via low level cpu. Previously, this was using high-level emulation. This had some game-specific hacks.
. Emulated Namco 06xx the NMI and chip select lines more accurately. Three control bits are used for the clock divider. Clarify timer delay is zero.
. Fixed MB88xx MCU interrupt handling. m_nf is basically the IF flag. It should be set when the int line is active (when its low). Only trigger an int when the line was previously high.
. Removed quantum hacks in galaga and polepos. With the better Namco custom chip emulation, this doesn't seem to be required anymore.
. PC hardware: Fixed faulty EOP propagation that broke floppy disk loading (machine\genpc.cpp)
. PCI: Fixed 'Fatal error: install_ram_generic: In range cdcdcdcc-9b9b9b98 mirror 0, start address is after the end address' for pcipc in devnoclear debug builds (machine\pci.cpp).
. PLA: Allow reparsing after device started (machine\pla.cpp)
. Taito Ensoniq Sound System: Removed obsolete workaround for M68000 reset issue (audio\taito_en.cpp)
. Taito TC0030CMD (C-Chip): Fixed typo in taito_cchip_device (upd7811->upd78c11)
. Z80 SCC Channel: Test the correct bit
- 2mindril.cpp, 3x3puzzl.cpp, alpha68k.cpp, alpha68k_n.cpp and crystal.cpp: Added DIP locations
- 39in1.cpp: Added notes about actual PCB boot process and unimplemented DIPs
- 8080bw.cpp: Updated hardware info
- atarisy1.cpp
. Removed TMS5220C and VIA from configuration in marble and peterpak. Downgrade indytemp to MACHINE_IMPERFECT_SOUND with note on regression.
. Correct DBcc timings in MC68010 CPU. This fix prevents certain Marble Madness clones (e.g. marble2) from watchdog resetting while cheksumming the ROM (m68000\m68k_in.lst and m68kops.cpp).
- atarisy1.cpp, atarisy2.cpp, gauntlet.cpp: Modernization. Use generic latch devices for sound communications. More accurate handling of programmed sound resets. Added the other LS259 to gauntlet.cpp. Correct watchdog timeouts for all three drivers. General code cleanup.
- atarisy2.cpp: Fixed regression with soft reset (VBLANK interrupt wasn't being cleared). Octalized T11 CPU map as in Atari docs. Fixed regression in APB clones.
- btime.cpp, shadfrce.cpp, shangkid.cpp and taitosj.cpp: Added DIP locations and verified DIPs
- cave.cpp
. Log unimplement videoregs. Added notes. Fixed sprite position handling related to videoregs and tilemap offsets in Poka Poka Satan (video\tmap038.cpp).
. Implemented hardware sprite limitation and added notes (video\cave.cpp)
- chihiro.cpp: Some adjustments. Differentiate between object classes. Added simple blitting to show xbox error screen (includes\xbox_nv2a.h and video\xbox_nv2a.cpp). Set dma_get to 0 when FIFO is enabled (video\xbox_nv2a.cpp).
- chihiro.cpp, naomi.cpp and triforce.cpp: Added DIMM SDRAM configuration register (machine\naomigd.cpp)
- cninja.cpp
. Correct sound routes for PCBs without stereo sound output. Reduced unused gfx layout. Updated Mutant Fighter and clones year (ID 07615).
. Correct 8bpp tilemap drawing behavior in Robocop 2 (same data in both tilemap RAM for tilegen[1], only tile bank is different in 8bpp tile).
- cps1.cpp
. Added cps-b-03 id register
. Added PLD dumps and gfx mappers to many games
- csplayh5.cpp: Converted the gal16v8b.jed files to binary format (sengomjk, nuretemi and konhaji)
- cubo.cpp: Eliminated deprecated machine().device calls (machine\akiko.cpp)
- cyberbal.cpp: Fixed interrupt-related regression. Converted sound board into JSA-derived device
- ddealer.cpp, nmk16.cpp, powerins.cpp and quizpani.cpp
. Use scrolldx for tilemap shifting in some NMK hardwares
. Fixed visible area in quizpani.cpp (same as nmk16.cpp?)
. Use generic gfx layout in patapata.cpp and ddealer.cpp
- dec0.cpp: Reduced duplicates. Moved shared video_start under protected section.
- dec8.cpp
. Dumped PROM for the original Cobra-Command PCB
. Correct Super Real Darwin's MCU label & PCB location
- dfruit.cpp, lastbank.cpp and taito_l.cpp
. Device-fied TC0090LVC for taito_l.cpp. Reduced duplicates.
. Implemented bitmap layer for Cachat
. Taito TC0090LVC and TC0091LVC: Use callback for tilemap offset and external bankswitching. Implemented device_reset needs for taito_l.cpp driver. Restrict bitmap and sprite drawing behavior into cliprect (machine\tc009xlvc.cpp).
. Reduced unnecessary trampolines for dfruit.cpp and lastbank.cpp
. Fixed offset for Gemcrush flipped screen
- dgpix.cpp: 'Decrement and branch' goes to 0, not -1. Make some noise (cpu\ks0164\ks0164.cpp)
- equites.cpp:
. Dumped Alpha-8505 MCU for Bingo Time. Note: Needs more work, possibly by someone who knows how Bingo plays. Added skeleton device for the Bingo Time sound board (Alpha Denshi 60MC01 sound board). Dedicated inputs for Bingo Time. Seems mostly playable except for the missing sound.
. Use the new Alpha-8505 MCU for Gekisou (Japan), High Voltage and Koukou Yakyuu, seems to work.
. Deviceified sound board emulation (Alpha Denshi 59MC07 sound board). Also added skeleton device for the Bingo Time sound board (Alpha Denshi 60MC01 sound board).
- fcrash.cpp and cps1bl_pic.cpp: Make some of the bootlegs not use the brightness values as some don't have the h/w for it on the real pcbs (the 74ls07's and resistor arrays/dacs are unpopulated).
- gaelco2.cpp: Added notes
- galaga.cpp and polepos.cpp
. Removed quantum hacks. With the better Namco custom chip emulation, this doesn't seem to be required anymore. Fixed bootlegs. For both, set sub & sub2 reset lines. Wire up 51xx cs and rw lines for galaga bootlegs.
. Fixed clone Battles (set 1) crashed at start. Sounds are missing though, to be investigated.
. Append, not set, the reset line to the latch in polepos.cpp
- gstriker.cpp, pcktgal.cpp and wc90b.cpp: Added PAL's dumps to twcup94, pcktgalb, twcup90b1, twcup90b2, twcup90ba, twcup90bb, twcup94a, twcup94b, vgoalsca and vgoalsoc
- homerun.cpp: Updated hardware info, TODO list and DIPs.
- kikikai.cpp: Added MCU dump to Kick and Run, not yet working. Updated comments.
- konamigx.cpp
. Rework dipswitches for all games and added DIP locations. Fixed sprite DMA transfers for type 3/4 right monitor, and fixed right screen protection in Rushing Heroes and Run & Gun 2. This makes dual monitor 4 players play possible (and enabled by default).
. Fixed clone Golfing Greats 2 inputs
- konamim2.cpp: Fixed some deprecations (drivers\konamim2.cpp and machine\3dom2.cpp/h). Removed last remaining use of driver_data().
- ksys573.cpp: Removed the MB89371 UART from the 573 memory map as it's clearly not correct, however 'Great Bishi Bashi Champ (GBA48 VER. JAB)' does initialize it at another address.
- lsasquad.cpp: Added DIP locations
- mcr.cpp: Simplified handler signatures
- mcr3.cpp: Simplified handler signatures. Splitted MCR3 state class a little.
- namcos23.cpp: Less MCU Log
- nmk16.cpp
. Use timer for sprite DMA behavior. Reduced duplicates. Added notes.
. Implemented Saboten Bombers vertical scrolling, noticeable when explosion occurs. Fixed hardware configuration. Fixed Saboten Bombers sprite delay. Reference: https://www.youtube.com/watch?v=lljCeUfCMDQ
- nss.cpp, sfcbox.cpp and snesb.cpp
. Splitted audio\snes_snd.cpp/h (S-SMP and S-DSP) into machine\s_smp.cpp and sound\s_dsp.cpp
. Converted both memory handler into device_memory_interface. Internalized ROM region of S-SMP. Use callback for S-DSP interface.
. Splitted internal and external memory space. Converted WRAM into shared_ptr. Reduced #define macros (sound\s_dsp.cpp).
. Converted WRAM into shared_ptr
- nycaptor.cpp, route16.cpp and timeplt.cpp: Added DIP locations and improved documentation
- playch10.cpp: Fixed Player1 labels to match function
- polepos.cpp: Make ROM region tags explicit. Correct mirroring and update notes.
- psikyo.cpp: Updated driver and minor cleanup drawing behavior. Moved dynamic tilemap size behavior into TILEMAP_MAPPER_MEMBER. Correct notes and VRAM/Sprite LUT data type. Converted drawing behavior into bitmap_rgb32. Reduced unnecessary gfx layout.
- rpunch.cpp: Updated drawing behaviors and misc updates. Use pdrawgfx for sprite priority. Use bitmap_ind16 for drawing framebuffer behavior. Fixed notes and variable names. Use set_rom_bank for upd bankswitching. Reduced unnecessary includes. Fixed spacing and address map related to framebuffer exists. Use shorter/correct type values. Simplify handlers. Cleanup gfx layouts. Use shorter type value.
- segas32.cpp
. Wrap back layer colors on 512 boundaries, fixes Arabian Fight and Soreike Kokology erratic black pens.
. Pinpoint transparency pen, more accurate guess wrt Title Fight. Added mixer reading missing from multi32 map. Updated TODO (video\segas32.cpp).
. Fixed 'AS-1 Controller' program rom loading (makes the logo to appear on POST)
. Redumped Rad Rally sound roms (ID 07616)
- shaolins.cpp: Added hardware info, corrected DIPs and rom labels.
- snk.cpp
. Major documentation overhaul
. Dumped 2x rotary joystick decoding proms for Victory Road and added some prom labels
- ssv.cpp: New device (NEC uPD7001 A/D Converter). Splitted state class up a bit.
- stv.cpp: Moved all commands into functions. Moved communication interface to device_memory. Moved note on top, make some basic QA (machine\stvcd.cpp).
- taitosj.cpp: Consistency and better documentation of 4 PCB vs 5 PCB sets
- terracre.cpp: Added DIP locations. Corrected ROM labels. Added notes.
- yunsun16.cpp: IRQ modernization
- Air Walkers: Fixed rom loading. Fixes polygons and textures. Redumped a couple of Air Walkers's rom.
- Bad Lands: Use generic communications latches. Added mirroring to M6502 map. Clean up various handlers.
- Big Karnak: Added PCBs ASCII layout for clone Big Karnak (Modular System)
- Bombjack Twin: Adjusted offsets for clone Atom (bootleg of Bombjack Twin), also removed MACHINE_NOT_WORKING flag since it is playable, with maybe some smal GFX and sound glitch.
- Carrera: Dumped BPROM of clone Bomberman (Version 6.6) and verified it matches the one from Carrera (Version 6.7)
- Dark Seal: Cleanup gfxdecode layout. Correct palette entries.
- Deal 'Em: Adjusted CRTC clock to make refresh rate more reasonable. Fixed tile background colors. Use tilemap system to draw. Added screen raw parameters.
- Dirt Dash: Mark pointroms as bad
- DoDonPachi III: Added redumped sprite rom b04401w064.u1. NOTE: b04401w064.u1 on all the other ddpdoj sets was found to be corrupt (doesn't match checksum on ROM) this was redumped and replaced in the sets, exept for in the bootleg set, which is based around the corrupt dump.
- Drift Out: Updated clocks and rom labels for clone Drive Out (bootleg). Added UM5100 voices.
- Express Raider: IRQ cleanup
- Filetto: Identified UM5100 sound chip control ports (8923S-UM5100 is a HC55536 with ROM hook-up). Added UM5100 voices.
- Golfing Greats: Fixed inputs
- Great Swordsman
. Decapped, dumped and hooked up AA-017 microcontroller, fixes coin handling. Confirmed microcontroller roles/locations.
. Updated clone Great Swordsman (Japan?) with new AA-017 dump and updated notes.
- Gun Fight: New netlist-based audio implementation for Gun Fight, derived from Midway audio schematics. Sound checked against several YouTube videos and seems to match, apart from acoustic effects of cabinet. Removed the old sample-based sound, which is no longer necessary (The samples for that version were actually from the newer game Boot Hill and didn't match Gun Fight's sound hardware; they even included Boot Hill's funeral march tune!). Although the netlist version has much greater overhead, performance is still acceptable on modern hardware.
- Ken Sei Mogura: Verified PAL
- Lady Gum: Fixed driver (Game now playable)
- Long Beach: Crop right side of screen. Small cleanup.
- Lord of Gun: Added a default EEPROM
- Mad Donna: Correct rom labels and PCB locations for the Mad Donna parent set
- Mad Motor: Cleanup gfx layouts
- Magic Bomb: Added preliminary decryption. Marked maincpu rom1 as bad dump.
- Malzak
. Added default NVRAM to clone Malzak II so that it boots in version II as intended.
. Converted playfield to tilemap. Improved playfield colors. Added playfield tile bank, base mixing and priority. Misc cleanups.
- Match It: Verified clocks for Match It and Sichuan II clones. Updated ROM labels and added PALs placeholders for clone Sichuan II.
- Mirage Youjuu Mahjongden: Use pri_callback for sprite priority
- Moon Patrol: Added missing PROM dump to Moon Patrol and clone Moon Patrol (Williams)
- Naomi DIMM Firmware Updater (2.13): Redumped GDROM, previous dump had bad audio track.
- Parallel Turn: Added DIP locations
- Paint 'N Puzzle: Connect MCU to 93C46 EEPROM
- Pocket Gal: Added proper ADPCM reset bit routing, fixes annoying whistle heardable from title screen and on other places.
- Power Instinct: Reduced duplicates related to nmk16.cpp. Moved subclass into nmk16.h (Similar hardware design). Added notes. Simplified handlers. Use screen raw params for bootlegs. Fixed state.
- Pro Tennis (DECO Cassette): Verified DIPs
- Quake Arcade Tournament: Updated PC specs
- Quiz Panicuru Fantasy: Fixed visible area (same as nmk16 ?)
- Raiden II: Converted the JEDEC files to binary format
- Renegade: Fixed sprite vertical alignment and added irq acks. Demoted also driver to MACHINE_IMPERFECT_SOUND given it has clear sound issues. Moved around irq sources (NMI -> vblank, IRQ -> coin triggers), added coin counter.
- Route 16: Added missing MCU region to the Route 16 original sets, corrected PROM type on the newly dumped set.
- Run and Gun: Fixed graphic/sprite offsets (selection screen) (ID 07617)
- Space Stranger
. Measured CPU clock. Replaced I8080 CPU1 with I8080A. Added PCBs layout and DIP locations.
. Expanded hardware notes, updated layout to match pics. Added preliminary sound support via samples.
- Star Wars Arcade: Improved analog range for throttle
- Super Shanghai Dragon's Eye: Cleanup gfxdecode layout. Correct palette entries. Both chip and PCB hasn't any stereo sound output. Correct sound output routes.
- Super Tarzan: Completed decryption of the program rom
- Tarzan Chuang Tian Guan: Hopefully completed decryptions for 'Tarzan Chuang Tian Guan (V109C, set 1)' and clone Tarzan (V107). The former probably needs just the correct parameters for the IGS0031 protection, the latter has additional IGS0029 protection. Sprites rom hasn't been decrypted yet.
- Trivia Quiz: Hook up question ROMs. Fixed address map. Added NVRAM (Game now playable).
- unknown 1980 poker game: Identified some inputs
- Warriors of Fate
. Removed sprite artifacts in clone Sangokushi II (bootleg) (Game now playable)
. Removed EEPROM device in clones Sangokushi II (bootleg) and Warriors of Fate ('sgyxz' bootleg) (real PCBs have 3x8pos dipsw and no EEPROM)
- Wheels Runner: Updated game to use measured clocks and added the 2x SN76489A sound. Better description of components.
- Zhaoji Fengdou: Added PCB ASCII layout
- Input port: Correct the double key assignment acceleration and shifting in bigrun, buggyboy, buggyboyjr, buggychl, changela, f1gpstar, f1gpstr2, pdrift, pdriftl, polepos, polepos2, terracre.cpp and tx1
- Fixed rom names in gsword.cpp, ksys573.cpp, oneshot.cpp, snk.cpp, taito_f2.cpp, terracre.cpp, tmaster.cpp and wiping.cpp
- Dipswitch fixes in 2mindril.cpp, 39in1.cpp, 3x3puzzl.cpp, alpha68k.cpp, alpha68k_n.cpp, btime.cpp, cps1.cpp, crystal.cpp, decocass.cpp, konamigx.cpp, lbeach.cpp, pgm.cpp, pturn.cpp, lsasquad.cpp, nycaptor.cpp, route16.cpp, shadfrce.cpp, shangkid.cpp, sstrangr.cpp, taitosj.cpp, toaplan1.cpp, timeplt.cpp and triviaquiz.cpp
- Description changes of Big Run (11th Rallye version, Europe?), Elevator Action (EA, 5 PCB version, 1.1), Elevator Action (BA3, 4 PCB version, 1.1), Front Line (FL, 5 PCB version), Jumping Break (set 1), Kick Off - Jaleco Cup (Japan), Kick Off - World Cup (bootleg), Magic Bomb (Ver. BR4.4), The Mah-jong (Japan, set 1), Missile Attack (U.Games bootleg of Missile Command), Pac Man (U.Games bootleg of Puck Man), Pocket Gal (Yada East bootleg), Route 16 (Centuri license, set 1), Route 16 (Centuri license, set 2), Route 16 (Centuri license, set 3, bootleg?), Space Invaders Part II (Taito, bigger ROMs), Super Contra (set 1), The Tin Star (TS, 5 PCB version) and The Tin Star (A10, 4 PCB version)
- Renamed (elevator) to (elevatora), (elevator4) to (elevator), (franticf) to (franticfa), (frontlin) to (frontlina), (mooncrstu) to (mooncrstuu), (route16a) to (route16b), (route16) to (route16a), (tinstar) to (tinstara), (tinstar2) to (tinstar), (turbod) to (turboe), (turboc) to (turbod), (turbob) to (turboc), (xmen) to (xmenu) and (xmene) to (xmen)
- MAME
. VIDEO RENDERING SYSTEM: Initialization outer box darkened/less distracting (emu\render.cpp)
. MEMORY SYSTEM: Fixed memdump command causes MAME crash (MAME 0.209: Removed obsolete alignement limit (emu\emumem.cpp) and correct start/end on big endian (emu\emumem_mud.cpp)) (ID 07560). Removed obsolete logging (emu\emumem_hedw.ipp).
. ROM loading cleanup: More flexible constructors for path_iterator and emu_file. More straightforward system/device ROM loading and software loading when using ROM loader. Proper parent walk when searching for identical CHDs with different names from software list. Fixed hangs if software item parents form a loop. Fixed layouts being loaded from bogus empty paths. Note that there are changes in behaviour: For software list ROMs/disks, MAME will now search the software path before searching the machine path. The search path for the owner of the software list device is used, which may not be the driver itself. MAME will no longer load loose CHDs from the media path - it's just too unwieldy with the number of supported systems. MAME will no longer search archives above the top level of the media path.
. DEVICE
. Eliminated pulse_input_line_and_vector (emu\diexec.cpp; cvs.cpp, galaxold.cpp, scramble.cpp and zac_2.cpp)
. Don't clear the input queue on reset (emu\diexec.cpp). This fixes problems where devices are input line changes are missed because a device was reset. One case is at startup, where one device's output is wire to another's input. During start the first device adds, eg, a RESET assertion to the second. When that device starts, it resets itself and clears the pending RESET assertion.
. LUA engine: Enhancing LUA video:begin_recording() function with optional format parameter.
. Get rid of a temporary that clang 10 doens't like (emu\mconfig.h)
. UI
. Removed auto pause (ui\about.cpp). NOTE: Inconsistent with other Tab menu entries including the fullscreen popup for selecting new machine, and also a bug where it refuses to unpause when closing About popup with Tab.
. Removed clock freqs trailing 0s on machine info screen (ui\devopt.cpp and info.cpp)
. Simplified cpu handlers (cpu\ccpu\ccpu.cpp, cop400.cpp, es5510.cpp, h6280.cpp, mcs48.cpp, mn10200.cpp, ppc.cpp, st62xx.cpp, tlcs870.cpp, tlcs900.cpp and upd7810.cpp)
. Simplified machine handlers (machine\315_5195.cpp, 315_5296.cpp, 315_5338a.cpp, 315_5649.cpp, 3dom2.h, 40105.cpp, 6532riot.cpp, 6821pia.cpp, 68230pit.cpp, 74153.cpp, 74161.cpp, 8042kbdc.cpp, alpha8201.cpp, am53cf96.cpp, c117.cpp, cdp1852.cpp, cedar_magnet_flop.cpp, cedar_magnet_plane.h, cedar_magnet_sprite.h, decocass.cpp, decopincpu.cpp, ds2404.cpp, gaelco_ds5002fp.h, gaelco3d.cpp, i8214.cpp, i8257.cpp, k053252.cpp, k054321.cpp, ldvp931.cpp, m1comm.cpp, m2comm.cpp, mathbox.cpp, mb89352.cpp, mb89363b.cpp, mie.cpp, model1io.cpp, model1io2.cpp, mos6530.cpp, mpu401.cpp, msm6253.cpp, namco06.cpp, namco50.cpp, namco51.cpp, namco53.cpp, namco65.cpp, namco68.cpp, namcoio.cpp, nb1412m2.cpp, nmk004.cpp, pcecommn.cpp, pcshare.cpp, r10696.cpp, ra17xx.cpp, s2636.cpp, s32comm.cpp, serflash.cpp, st0016.cpp, tait8741.h, taito68705interface.cpp, taitosjsec.cpp, tms6100.cpp, tms9901.cpp, upd4701.cpp, upd7004.cpp, v3021.cpp, vs9209.cpp, wpc.cpp, wpc_lamp.cpp, wpc_out.cpp, wpc_pic.cpp, wpc_shift.cpp and z80scc.cpp)
. Simplified video handlers (video\airraid_dev.cpp, alpha68k_palette.cpp, antic.cpp, arcadia.cpp, atarivad.cpp, bfm_adr2.cpp, bfm_dm01.cpp, combatsc.cpp, contra.cpp, deco_ace.cpp, decocomn.cpp, decodmd1.cpp, decodmd2.cpp, decodmd3.cpp, decrmc3.cpp, dynax_blitter_rev2.cpp, edevices.cpp, flkatck.cpp, gtia.cpp, hcastle.cpp, k007121.cpp, k007342.cpp, k007420.cpp, k051733.cpp, kan_pand.cpp, ladybug.cpp, namco_c116.cpp, namco_c123tmap.cpp, namcos2.cpp, naughtyb.cpp, orca40c.cpp, phoenix.cpp, rpunch.cpp, seta001.cpp, snk6502.cpp, stfight_dev.cpp, tia.cpp, vsystem_gga.cpp, wpc_dmd.cpp and ygv608.cpp)
. Simplified audio handlers (audio\arcadia.cpp, atarijsa.cpp, cage.cpp, cps3.cpp, csd.cpp, dsbz80.cpp, efo_zsu.cpp, exidy.cpp, exidy440.cpp, flower.cpp, galaxian.cpp, gottlieb.cpp, hyprolyb.cpp, irem.cpp, laserbat.cpp, namco52.cpp, nichisnd.cpp, phoenix.cpp, pleiads.cpp, rax.cpp, s11c_bg.cpp, segag80r.cpp, segam1audio.cpp, segasnd.cpp, sente6vb.cpp, snk6502.cpp, t5182.cpp, taito_en.cpp, taito_zm.cpp, tiamc1.cpp, timeplt.cpp, trackfld.cpp, wpcsnd.cpp and zaccaria.cpp)
. Programmable Logic Device (PLD): New device for jedutil and rom name changes: Initial support for viewing the logic equations of the PLS100, 82S100, PLS101 and 82S101. Added support to view the the logic equations of the PALCE22V10 device. Improved the documentation on the Magix game and the undumped PAL's (security fuses blown). Added PAL22V10 as another device that is equivalent to the PALCE22V10 device. Added initial registration test for the PALCE22V10/PAL22V10 devices. Adding PAL22V10 combinatorial regression test data. Updated jedutil with a new command that will take a JED file and list the devices that the JED file could represent.
. Work around deprecation warning - Removing something in 3.9 when the replacement was only added in 3.2 is typical of Python's disregard for stability (scripts\build\msgfmt.py)
. Added template save/load code (emu\save.cpp)
. attotime::zero is not a valid arugment for as_hz et al (emu\attotime.h)
. Re-Implemented SHA-1 and get rid of the two third-party implementations (util\hashing.cpp)
. Reduced dependencies on libemu (lib\formats\*.cpp)
. Software List: Start adding validation for data areas (emu\softlist_dev.cpp). Fixed the errors found by adding validation to software list data areas. Most of them seem to be simple copy-paste errors hidden by the fact that the default device_image_interface loader ignores the data area size (as opposed to the "ROM" loader). Validate ROM labels.
. Fixed smartquotes by disabling them: While smartquotes are somewhat configurable, it's better if we don't use them at all. Makes sure there are no hidden pit traps for the users (docs\source\conf.py).
. Fixed assert when starting empty driver - the empty driver magically has no search path, and hence can't have any ROM data regions (emu\drivers\empty.cpp)
. hiscore.dat update (plugins\hiscore\hiscore.dat)
. Refactoring of AVI/MNG recording code: Initial refactor of AVI/MNG movie recording, consolidation of copy and paste code, hiding of AVI/MNG behind interfaces. Extracted recording specific code out of emu\video.cpp and put into emu\recording.cpp. Took the opportunity to move slightly more logic out of video.cpp into recording.cpp. Consolidated frame counting logic.
- MAC OS X
. Use Arial Unicode MS as the default font (fixes missing glyphs in many layouts) and fixed deprecation warnings
. Avoid crashing in OS X debugger when a nonexistent disassembly or memory view is selected (which may happen automatically with .cfg files)
- VGM player
. Added multiple spectrogram visualization modes (sound\vgm_visualizer.cpp). Fixed DC offset issue and added more visualization modes.
. Added rate controls and hold button (drivers\vgmplay.cpp)
. Added recent Project2612 releases consisting of many New and Updated entries (hash\vgmplay.xml)
- Compiling
. Removed last remaining uses of generic_space() and many dummy_space() calls
. Fixed some Clang-tidy-10 warnings
. Revert "Fixed some modernize-use-equals-default clang-tidy warnings" from MAME 0.218
. Fixed hang with Emscripten's "upstream" backend (scripts\genie.lua)
. Fixes for Clang 10.0.0 misleading indentation and XOR used as a pow warnings (src\3rdparty.lua, cpu\z8000\z8000ops.hxx and machine\stvcd.cpp). Fixed VS2019_Clang with LLVM 10.0. Fixed stray character (src/3rdparty.lua).
. Centralised instantiation of more of the util::strformat engine (util\strformat.cpp)
- Debugger
. Fixed some deprecations (debugger\qt\debuggerview.cpp)
. QT debugger: Added '#define horizontalAdvance width' to QT debugger (debugger\qt\debuggerview.cpp and memorywindow.cpp)
. Misc fixes for bugs that showed up in devnoclear debug builds (cpu\lr35902\lr35902.cpp/h, machine\ds1994.cpp, tc009xlvc.cpp, drivers\megaphx.cpp, machine\inder_sb.cpp and taitosjsec.cpp)
. Make expressions octal for applicable address spaces in disassembly view. General cleanup (debug\express.cpp, debugcpu.cpp): Changed default base from hardcoded macro to dynamic parameter for parsed_expression. Changed symbol table parameters and variables to references or std::reference_wrapper. Removed the (unused) ability to construct a parsed_expression without a symbol table. Eliminated symbol_table &table and void *memory_param arguments from callbacks (superfluous now that std::function can bind everything necessary). Eliminated globalref pointer from symbol_table. Added explicitly defaulted move constructor and move assignment operator.




"Theory is when you know everthing but nothing works. Practice is when everything works but no one knows why.
In our lab, theory and practice are combined: nothing works and no one knows why."









Entire thread
Subject Posted by Posted on
* MAMEinfo 0.220 :) MASH 04/06/20 06:40 PM
. * MAMEinfo 0.221GIT + 0.222GIT (17th May) MASH  05/17/20 11:36 AM
. * Re: MAMEinfo 0.221GIT + 0.222GIT (17th May) Janez  05/17/20 02:10 PM
. * Re: MAMEinfo 0.221GIT + 0.222GIT (17th May) StilettoAdministrator  05/19/20 07:53 AM

Extra information Permissions
Moderator:  John IV, Robbbert, Tafoid 
1 registered and 279 anonymous users are browsing this forum.
You cannot start new topics
You cannot reply to topics
HTML is enabled
UBBCode is enabled
Thread views: 1073