MAMEWorld >> News
View all threads Index   Threaded Mode Threaded  

Pages: 1

MASH
MASH
Reged: 09/26/03
Posts: 1775
Loc: Germany
Send PM


MAMEinfo 0.221 :)
#386322 - 05/19/20 08:07 AM


MAMEINFO.DAT

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

* Added Source/Listinfo changes

* Newest Bugs (18th 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.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."





agard
MAME Fan
Reged: 08/04/13
Posts: 331
Send PM


Re: MAMEinfo 0.221 :) new [Re: MASH]
#386325 - 05/19/20 09:00 AM


Thanks for the updated MAMEinfo



VasiliyFamiliya
MAME Fan
Reged: 08/18/17
Posts: 92
Send PM


Re: MAMEinfo 0.221 :) new [Re: MASH]
#386360 - 05/20/20 06:39 AM



> - dgpix.cpp: 'Decrement and branch' goes to 0, not -1. Make some noise
> (cpu\ks0164\ks0164.cpp)

It's interesting to know, is King of Dynast Gear by EZ Graphics the some kind of pirate version of Dyna Gear by Sammy? Neither comments at the top of dgpix.cpp file, nor King of Dynast Gear ArcadeHistory.com trivia says anything about it.



MASH
MASH
Reged: 09/26/03
Posts: 1775
Loc: Germany
Send PM


EZ Graphics new [Re: VasiliyFamiliya]
#386362 - 05/20/20 10:54 AM


> > - dgpix.cpp: 'Decrement and branch' goes to 0, not -1. Make some noise
> > (cpu\ks0164\ks0164.cpp)
>
> It's interesting to know, is King of Dynast Gear by EZ Graphics the some kind of
> pirate version of Dyna Gear by Sammy? Neither comments at the top of dgpix.cpp file,
> nor King of Dynast Gear ArcadeHistory.com trivia says anything about it.


'King of Dynast Gear' (1999) must be a Chinese bootleg of 'Dyna Gear' (1993):




mike20599
MAME Fan
Reged: 09/14/08
Posts: 247
Send PM


No wonder they call themselves EZ Graphics new [Re: MASH]
#386505 - 05/29/20 05:10 AM


Because it's so EZ to steal graphics from another game.



VasiliyFamiliya
MAME Fan
Reged: 08/18/17
Posts: 92
Send PM


Re: No wonder they call themselves EZ Graphics new [Re: mike20599]
#386533 - 05/31/20 04:11 AM


Not graphics only but gameplay also.



Haze
Reged: 09/23/03
Posts: 5245
Send PM


Re: MAMEinfo 0.221 :) new [Re: VasiliyFamiliya]
#386632 - 06/05/20 01:18 PM


> > - dgpix.cpp: 'Decrement and branch' goes to 0, not -1. Make some noise
> > (cpu\ks0164\ks0164.cpp)
>
> It's interesting to know, is King of Dynast Gear by EZ Graphics the some kind of
> pirate version of Dyna Gear by Sammy? Neither comments at the top of dgpix.cpp file,
> nor King of Dynast Gear ArcadeHistory.com trivia says anything about it.

It's an original piece of software, not a direct bootleg of the code, or emulation.

That said, yes, in terms of art assets and overall design, it steals everything from Dyna Gear and reimplements it all in a horribly buggy stripped down kind of way.

I'm amazed they actually copied the linescroll effect for the title screen (so they were clearly using original hardware references as that wasn't emulated in MAME until recently) because so many other bits are missing (notice lack of bones flying around when you kill things etc.)



MASH
MASH
Reged: 09/26/03
Posts: 1775
Loc: Germany
Send PM


MAMEinfo 0.222GIT (18th June) new [Re: MASH]
#386740 - 06/18/20 06:53 PM


MAMEINFO.DAT

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

* Added Source/Listinfo changes

* Newest Bugs (18th June)

* 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 games: Black Hole (EFG Sanremo), Super Motor (prototype) and TwinBee (Bubble System)
- New Working games: Bingo Time, Kick and Run, Tetris + Cherry Master (Corsica, v8.01, set 2), Witch Card (ICP-1, encrypted) and World Class Bowling Tournament (v1.30)
- New Non-Working games: Crazy Balls [TTL], Dardomania (v2.1), Densha de GO 3! Tsukin-hen (V2.03J), High Roller and Jackpot (Ver 16.16L)
- New clones: Air Duel (US location test, M82 hardware), Circus (bootleg), Cleopatra Fortune (Ver 2.1O 1996/09/05, bootleg), Dirt Dash (Rev. DT1 Ver.A, Japan), DonPachi (Japan, Satsuei version), FreeWay (V4.31), Gals Panic (Taiwan, EXPRO-02 PCB), Golden Par Golf (Joystick, V1.0), Hot Blocks - Tetrix II (set 2), Hot Blocks - Tetrix II (set 3), Jackie Chan - The Kung-Fu Master (rev 4?), Jackpot (Ver 1.16L), Karate Dou (Arfyc bootleg), 'Konglongwang - D-Kids VS Alpha Yaosai (China, Ver 2.501) (MDA-C0081)', 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), Police Trainer (Rev 1.3B, Rev 0.3 PCB), Prebillian (bootleg), Raiden II (Spain), Road Fighter (set 3, unencrypted), Shinobi (Datsu bootleg, set 3), Shuffleshot (v1.35), Shuffleshot (v1.38), Street Fighter (Japan, bootleg), 'Super Six Plus II English Mark Darts (Spanish)', Trivia (Questions Series 12 Alt Question Rom), Trivia (Questions Series 14 Alt Question Rom), Trivia (Version 1.03a Sex questions, Alt revision questions), Vampire Savior: The Lord of Vampire (Brazil 970519), Varth: Operation Thunderstorm (bootleg, set 2) and Video Pinball (4 ROMs version)
- New PinMAME games: The Raid (alternate set), Star Wars (1.01), Trebol and Twilight Zone (L-5)
- New drivers: crazybal.cpp, drdmania.cpp, jackpot.cpp, regama.cpp and smotor.cpp
- New devices: 24c512, c219, cxd1180, ds80c320, i8344, i87c51fa, jag_blitter, m24c02, m6512, m68hc705c4a, mbm29lv800b, pcd8572, pic17c43, pic17c44, sab80c535, sed1278_0b, w65c802 and zzzap_audio
- New Clrmamepro: https://mamedev.emulab.it/clrmamepro/#downloads
- CPU
. Analog Devices ADSP21062 'SHARC': Fixed DRC crashes in DEVNOCLEAR debug builds
. 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. Changed default interrupt vector.
. 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.
. Hyperstone: Fixed DRC crashes in DEVNOCLEAR debug builds
. 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).
. MCS-51: Added Dallas DS80C320 HSM, Siemens SAB80C535 and Intel 8344AH RUPI-44 disassemblers (cpu\mcs51\mcs51.cpp)
. Microchip PIC16/17: Added disassembler for PIC17 family and preliminary PIC17C4X emulation. Added a PIC16C70 disassembler.
. Mitsubishi M37710S4: Rename some registers to agree with Mitsubishi documentation. NOP unused SFR area. Actually SFR area 2-9 is external on some chips.
. Motorola Atari Jaguar GPU 'Tom': Added notes of debugging feature. GPU code can be executed out of external RAM. Reference: Midsummer Technical Reference Manual.
. 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 MC6809: Fixed broken ROLD/RORD opcodes (m6809\konami.ops)
. Motorola MC68000: Added exception hook for debugger gex command (m68000\m68kcpu.cpp). Added fmod instruction (m68000\m68kfpu.hxx).
. Motorola MC68HC05Cx: Simplified handler signatures. Added MC68HC705C4A type (m6805\m68hc05.cpp).
. 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.
. Sony PSX CPU: Switched PlayStation CPU over to memory_access_specific
. Texas Instruments TMS9995: Fixed different behaviour of the (MESS) tutor.cpp driver in the DEVNOCLEAR branch
. Texas Instruments TMS32031: Added/Correct notes for internal peripherals and chip family differences. Fixed chip name (no NMOS variant exists) and some descriptions. Fixed Microcomputer mode when 320C30 internal ROM is empty. Reference: TMS320C3x User's Manual.
- SOUND
. Atari CAGE: Fixed [debug] assertion in 'San Francisco Rush' and 'San Francisco Rush: The Rock' (audio\cage.cpp) (ID 07668)
. ICS2115 WaveFront Synthesizer
. Added imperfect_features related to incorrect/unverified interrupt, interpolation and ramping Interpolation issue is most noticeable in Cave PGM hardware game music (sound\ics2115.h).
. Use device_memory_interface for fetch external samples. Use device_memory_interface for later DMA and DRAM interface support. Allow ulaw interpolation (some instrument sound samples in IGS PGM Motherboard sound ROM is u-law). Added notes. Reduced duplications.
. 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.
. Namco 54XX: Increase the length of the Namco 54XX IRQ to fix Bosconian shot sound regression
. OKI ADPCM: Added looped sample support. Allow reading current output without decoding. Fixed initial values and descriptions (sound\okiadpcm.cpp)
. QS1000: Added save state related to loop support (disabled currently)
. N2A03 APU: Correct noise algorithm
. Ricoh RF5C164: Verified default register map (datasheet). Implemented some chip variant differences. Implemented RF5C164 default register map (Reference: RF5C68 Datasheet and Mega CD hardware manual PCM sound source). Use STRUCT_MEMBER for state saving.
. Ricoh RF5C400: Fixed wrong bus width (sound\rf5c400.h)
. SSi TSI S14001A: Zero-fill variables, fixes missing speech in some (MESS) Fidel chess drivers in DEVNOCLEAR builds.
- 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.
. 8042 Keyboard/Mouse Controller: Initilized variable that caused problems for the PCI PC drivers in DEVNOCLEAR builds (machine\8042kbdc.cpp)
. Atari Slapstic: Transfer legacy slapstic handling routines from machine\atarigen.cpp to device. Eliminated address_space argument from legacy read/write handlers (machine\slapstic.cpp).
. 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.
. Added working 74125 and 74126 implementations. These tristate buffers natively support tristate outputs. For use cases with fixed enable inputs the devices support a parameter FORCE_TRISTATE_LOGIC which if being set to 1 makes the device behave like a logic output. Added additional syntax and consistency checks for tristate outputs. Updated the example and added dip implementations including documentation.
. Improved typesafety for source locations. During object creation netlist tracks the source files which provide object creation. This is later used e.g. by nltool to create documentation from source.
. Added missing TTL_74125 definition (netlist\macro\nlm_ttl74xx.h). Added 7421 device.
. Improved timing accuracy for sound devices. Better alignment between netlist_time and attotime.
. Simplified factory call structure. This change will make it a lot easier to add enhanced functionality to the factory infrastructure. Using integral constants also improves linking stability. Improved syntax of generic device descriptors.
. Added tristate support for rom devices. Rom and prom devices now properly support tristate outputs. Native OC output still on the todo list. In addition this commit fixes a number of bugs around dealing with macro level parameters and improves documentation by adding a parameter table. Also srcclean.
. Consolidate 9316-type counters. This needs more attention since for certain compilers there is a considerable performance degregation. It looks like this is only triggered if too many variants are declared in one cpp file and the compiler stops inlining.
. Fixed performance issues and VC2019. For reasons unknown to me compile optimizations do not behave for template code. If the implementation is in separate compile units, the code compiles and performs.
. Better integretation of INT128. Moved penum into own header file (netlist\plib\penum.h).
. Pong (Rev E) [TTL] now peaks at 589% compared to 570% before. Amongst a number of improvements in nl_base.h and the 7493 was touched. Also has some code cleanup and hopefully faster compilation due to extern template declarations.
. Moved configuration entries into netlist namespace and netlist parsing where it belongs. Memory system cleanup.
. Fixed NVCC compile for 10.2. plists.h was splitted into plists.h, pmulti_threading.h and ptimed_queue.h. In addition removed plists.h from a number of files it wasn't used in. Certain minor adjustment needed to be made for CUDA toolkit 10.1 and 10.2.
. Refactored ppmf.h. Make more use of C++. Prepare coexistence of different delegate types. Untangle code. Reduced macro usage. Changed use of NETLIB_DELEGATE macro. The macro now has only one parameter, the local name of the delegate. Use callbacks to access terminals (debugger). Device factory enhancements. Factory elements can now pass additional parameters to device constructors. This makes the design of interface objects like analog callbacks easier. The change also allowed to remove some "deep" calls into the core from the MAME interface in netlist.h. Drop C++11 support. This wasn't working since the last factory changes. Removed it. Basically replace C14CONSTEXPR with constexpr. Moved multiparameter streaming into nl_interface.h. Clang-tidy, header order fixes.
. Enabled UTF7 filenames on windows. Fixed visibility of classes in nlid_system.h and tidy warning for penum. Reduced macro usage and make use of pstring UTF8. Fixed win float exceptions.
. More C++14, use enable_if_t instead of enable_if. Cleaned up the use of memory allocation arenas. Reduced MACRO usage, use std::conditional where possible. ppmf simplification. Arena code maintenance. Fixed MSVC build. MSVC has an issue with SFINAE and overloading resolution. A discussion can be found here: https://stackoverflow.com/questions/31062892/overloading-on-static-in-conjunction-with-sfinae. The previous code compiled with GCC and Clang on all platforms and compilers apart from MSVC. Replaced with double template specialization. Allow selection of base arena for pmempool_arena. Further optimize ppmf.h: Moved towards a pure c++ constexpr solution to derive the optimal pointer to member function solution. All the macro madness is centralized to a compile_info struct with static members. For the time being the evaluation result is compared against the previous approach. Going forward this will be dropped as well as the support for MINGW with GCC <= 4.6. Prepare path to non-virtual update functions.
. Fixed win32 compile and all targets without INT128 support
. Improved static solver performance by 5%. Use a more condensed matrix format for go, gt and Id matrices. In addition, optimize the static compilation code. Make fostrm actually write to file.
. Performance improvement and refactoring: Kid Niki now achieves up to 910% when run with static solvers and with nltool. That is significant better than the 860% we have seen previously. This increase is driven by using a global memory pool in the solver code. In addition the following refactoring and code maintenance work is included. Please excuse the large commit, some of this took interfered with other work and the detail development steps were ugly. GSL support: This commit adds pgsl.h which implements a very limited number of the functionality of the gsl header described in the C++ core guidelines. Clang-tidy fixes. A significant refactoring of palloc.h. Aligned hints were removed, they added complexity without a significant performance gain. Vector operations should better be done on special spans/views. The code has been tested on linux with G++-7, G++-9, Clang-11. On Windows MinGW-10, VS2019 and OSX Clang-11.
. Fixed for some compilers not being CWG 1579 compliant (netlist\nl_setup.cpp). Fixed copy elusion bug on OSX and Clang < 8. Solution discussed with AJR in chat (machine\netlist.cpp and nl_setup.cpp).
. Floppy
. Improved HLD behavior, always activating output at start of type II & III commands. Use attotime::to_string instead of custom time-to-string method and fixed command logging messages (machine\wd_fdc.cpp).
. Improved HLD/HLT handling, fixed FD1771 timings and enable spinup_on_interrupt. Do not delay SEEK with no Verify flag. Improved write protection. set BUSY during initial restore to make it correctly interruptable (machine\wd_fdc.cpp).
. Accept new commands while in busy state, workaround for spurious recursive calls if HLD used for drive motor control, don't change track and data registers during reset (machine\wd_fdc.cpp).
. 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.
. 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.
. Intel 8279 KDC: Keyscan overhaul: Improved handling of multiple key depressions. Emulated debounce cycles (emulation partly disabled due to MAME updating inputs only once per frame). Added switch closed status flag for sensor matrix mode.
. K037122 2D Tilemap: Updated K037122 hardware information. Added screen raw parameters (verified in both 3DFX Voodoo and K037122 display timing parameters).
. K052109 Tilemap Generator: Correct video clocks (drivers\simpsons.cpp and video\k052109.cpp)
. K056230 LANC: Misc demacroization. Documentation updates.
. 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.
. Konami PowerPC Common Functions: Removed 7seg LED hack (machine\konppc.cpp)
. MC6850 ACIA: DRE should read clear in reset and set coming out of reset. Fixes a lockup running UniFlex on the SWTPC09. Tested on hardware, the TDRE flag reads as zero in the reset state and reads as set when taken out of reset, and even if data has been written to the data register while in the reset state.
. 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.
. Namco 50xx/51xx/52xx/53xx/54xx/05xx: set_input_line is synced, don't need extra synchronize.
. NVRAM: Don't save 0byte file (machine\nvram.h, emu\dinvram.h, machine\rp5c01.h and emu\machine.cpp)
. PSX GPU: Initialized a couple of variables that were causing problems in DEVNOCLEAR debug builds
. Signetics SCN2674 AVDC: Delayed commands use display pointer address, not screen 2 address.
. Voltage Regulator: Fixed problem with DAC stream slice update (sound\volt_reg.cpp)
. Z80 SCC Channel: Don't invent data (m_rx_fifo_rp_step). Clear IUS not IP.
- 40love.cpp: Use MB14241 device
- 8080bw.cpp: Periodic timer can't be adjusted (audio\8080bw.cpp)
- aleck64.cpp: Initialized variable that caused problems in DEVNOCLEAR debug builds (machine\n64.cpp)
- atarifb.cpp: Improved interrupts, LED multiplexing and sprite raster effects (ID 01731).
- 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.
. Fixed Road Blasters steering wheel does not auto center. The RoadBlasters steering wheel is very much like the Star Wars yoke, without the vertical (Y) axis (ID 07671)
- cdi.cpp
. Various CD-I changes: Started hooking up the Quizard MCU. Renamed CDI_SLAVE to CDI_SLAVE_HLE in prep for an LLE device. Added more comprehensive notes to the driver. Removed NO_DUMP cdic.bin as the CDIC is apparently not an MCU. Copied SERVO and SLAVE MCUs into cdimono1 set from cdi910 set and marked with BAD_DUMP. Replaced protection HLE with proper MCU hookup. Philips SCC68070: Improved UART Tx/Rx behavior, though it still functions in parallel rather than serial.
. Initial changes to get Quizard 3 and Quizard 4 Rainbow working. More CDIC fixes, (MESS) Hotel Mario now has correct audio (machine\cdicdic.cpp).
- chihiro.cpp
. More precise implementation of rcc and rcp vertex shader instructions. Moved poly_manager dependency to new nv2a_rasterizer class (video\xbox_nv2a.cpp). Fixed "xbox vprogdis" debug command (machine\xbox.cpp). Added placeholder for methods 1e80-1e90 (video\xbox_nv2a.cpp).
. Added debugger command "xbox vdeclaration", used to decode the vertex shader declaration stored at a certain address (machine\xbox.cpp). Some refactoring before modifying vertex data reading (video\xbox_nv2a.cpp).
. Big update to chihiro/xbox 3D graphics: Vertex shader and pixel shader refactoring. Register combiners support multithreading. Corrected reading of vertex attributes. Perspective correct vertex attribute interpolation and texture mapping. Basic support for texture address modes. Secondary color and fog color available as inputs to pixel shader. Interpolate all 4 possible texture coordinates. Corrected order of vertices when drawing quad list primitives. Debug aid to write in a text file the vertex shader disassembly, input and constant registers values. To test the update enable the register combiners with the "xbox nv2a_combiners" debugger command. Try to remove GCC 7.2.0 warning (video\xbox_nv2a.cpp).
. Small 3D update: Read textures with pixel formats X8R8G8B8 and A8. More changes to vertex reading and processing. Corections to negative-w vertices clipping.
- 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.
- cps1.cpp: Fixed scroll offset for various SF2 bootleg sets (video\cps1.cpp)
- dec8.cpp
. Restoring coin-up sound
. Identified 3 bad bits in Captain Silver MCU dump, hooked up MCU.
- dkong.cpp: Use mirror() instead of trampolines in s2650_map
- 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.
- gaelco2.cpp: Fixed analog controls don't work (ID 07675) and audio channels are flipped (ID 07676) (machine\gaelco2.cpp)
- 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.
- gei.cpp: Documented Trivia sets series 12 through 19. Sorted out question ROMs as per documentation results in 3 new clones. Added lots of misc information to various sets. Correct a couple of comments.
- hornet.cpp
. Added screen raw parameters (verified in both 3DFX Voodoo and K037122 display timing parameters)
. Added notes for Silent Scope screen. Fixed raw parameters.
- igs009.cpp: Make use of arrays and templates
- 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)
- maygayv1.cpp: Minor cleanups
- merits.cpp: Updated CPU type and PCB notes
- model3.cpp: Added screen raw parameters
- namcona1.cpp: Replaced Namco C140 sound with C219
- 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.
. Fixed animation glitch in Mach Breakers (ID 07369)
- namcos22.cpp
. Changed SS22 poly/sprite spot a bit better. Mitsubishi M37710S4: NOP unused SFR area. Actually SFR area 2-9 is external on some chips.
. Tweak some analog minmax (acedrvrw, raveracw, ridgera2, ridgerac and victlapw)
- naomi.cpp
. NAOMI2 USA BIOS Rev.C and Korea BIOS Rev.B dumped
. Dumped Namco JYU2/SWP JVS I/O board firmware for Ninja Assault (World, NJA2 Ver.A)
- nbmj8688.cpp: Removed empty debug function
- neogeo.cpp: Neo-Geo documentation updates (driver and hash\neogeo.xml)
- 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
- pgm.cpp
. Added some hardware notes
. Switched Ketsui clones ketarr, ketarr10, ketarr15 and ketarr151 to 4 button inputs.
- phoenix.cpp and naughtyb.cpp: Fixed log messages and only log error by default (sound\tms36xx.cpp and audio\pleiads.cpp)
- 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.) (ID 07269)
. Fixed missing transition graphical zoom/spin effect in Wakakusamonogatari Mahjong Yonshimai (Japan) (ID 06456)
. Demoted 'Star Audition' to MACHINE_NOT_WORKING. Note: Game needs flipscreen hooking up properly with new code to function at all.
. Added notes for hardware configs and emulation issues in some game. Fixed clock for P0-113A PCBs.
- skylncr.cpp: Fixed [debug] assertion (ID 07664). Added arrays, templates and state saving.
- taitowlf.cpp: Updated documentation. Figuring out PCI comms between boards as well as reading the two program roms, u1 and u2, may prove tricky.
- tubep.cpp: Quiet logging and improved soundlatch. Added text and sprite drop shadow (video\tubep.cpp). Fixed "GAME OVER" display is skipped (ID 07620). Marked Tube Panic as MACHINE_IMPERFECT_SOUND. Fixed no sprites on left edge.
- turbo.cpp: Fixed 8279 clock
- twinkle.cpp: Physical aspect ratio should be 16:9. Fixed layout\bmiidx.lay.
- williams.cpp: Fixed colors in Williams games. This fixes color issue introduced by Mystic Marathon changes.
- 280-ZZZAP and Laguna Racer: Updated 280zzzap audio API in preparation for netlist audio. This is only API changes, following the pattern used by cuavas within the past year to update other games in mw8080bw. New netlist-based audio implementation for 280-ZZZAP (audio\nl_280zzzap.cpp), derived from Midway game logic board schematic. The sound generally matches that heard in videos of the machine, though the real machine seems to have more bass and less treble. This may be a cabinet effect or something else, such as a difference in component values. Due to the number of complex components being emulated and the nature of the circuits, this netlist adds a lot of overhead, but it's still fast enough to run at greater than real speed on modern hardware. With minor changes, this implementation should also support 'Laguna Racer'; with somewhat more substantial changes, it would also support 'Super Speed Race'. Both of these games use sound circuits based on those for 280-ZZZAP.
- Alpine Surfer: Demoted game to MACHINE_UNEMULATED_PROTECTION
- Andromeda SS: Correct metadata
- Armed F: Fixed the resolution difference from PCB (ID 07640). Correct game title.
- Basketball: Improved interrupts. Don't change vertical resolution
- Bingo Time: Fixed Bingo Time (Game now playable). Added preliminary sound.
- Biomechanical Toy: Fixed 'Lives' dipswitch setting
- Blood Bros.: Added missing PROMs to clone Blood Bros. (Modular System)
- Bosconian: Increased the length of the Namco 54XX IRQ to fix Bosconian shot sound regression. Fixed tilemap offset problem (ID 00480). Added 'Star Destroyer' sub title to description. Note: Is the screen horizontal resolution maybe 285? PCB videos do show a slightly larger right border though. Bullet vs tilemap offsets are correct when compared with PCB videos (both playfield area, and radar area). Bullet vs sprite offsets are also correct. The radar area is offset by 3 pixels, also confirmed with PCB video when it does the VRAM check.
- Burger Time: Fixed 'Bonus Life' dipswitch values in clones Burger Time (Data East USA) and Burger Time (Midway) (ID 07678)
- 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
- Desert Patrol [TTL]: Fixed netlist (netlist\generated\static_solvers.cpp and machine\nl_dpatrol.cpp)
- Diana Elite: Added disassembler for PIC17 family and preliminary PIC17C4X emulation. Replaced PIC16C55 CPU1 with 'Microchip PIC17C44'.
- 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.
- Dottori Kun: Removed unneeded layout file
- Donkey Kong 3: Changed 'Difficulty' dipswitch string to numbers (ID 07648)
- Fool Race: Changed 'Head On (bootleg on dedicated hardware)' to 'Fool Race', an Italian imitation of Head On by EFG Sanremo (it's not a bootleg). Added 'Lives' dipswitch.
- Galaxian: Fixed manufacturer of clone Galaxian (Irem) (ID 07653)
- Gaplus: Fixed displaying of starfield with reference to PCB. Scrolling speed and direction (ID 00434). Clipping the Display Area (ID 07663). Modified to use sprite color instead of text color with refer to the PCB. Added blinking when the movement of the star changes. Changed 'Bonus Life' default settings to Namco's factory settings (50k/150k/every 150k).
- Golfing Greats: Demoted Golfing Greats and clones to MACHINE_NOT_WORKING
- Grobda: Changed 'Bonus Life' default settings to Namco's factory settings (10k only)
- 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)
- Mouse Trap: Redumped prom 74s288.d6. Updated note regarding prom 74s288.h14.
- Operation Thunder Hurricane: Added I/O M68k stub
- Pengo: Various documentation updates
- Pirate Ship: Fixed Clang build [-Werror,-Wunused-private-field]
- Pong (Rev E) [TTL]: Game now peaks at 589% compared to 570% before. Amongst a number of improvements in nl_base.h and the 7493 was touched. Also has some code cleanup and hopefully faster compilation due to extern template declarations.
- 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.
- Silent Scope: Added notes for Silent Scope screen. Fixed raw parameters.
- The Simpsons: Correct video clocks. Fixed K053260 panning, interrupts and general volume.
- Skins Game: Dumped BIOS 1.01 for clone Skins Game Tournament Edition
- 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
- Super Six Plus II English Mark Darts: Added notes about dipswitches
- 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
- Witch Card: Reversed the NVRAM and set by default to promote clone Witch Card (ICP-1, encrypted) to working status
- 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 capbowl.cpp, headonb.cpp, hyperspt.cpp, itech8.cpp, kchamp.cpp and pengo.cpp
- Dipswitch fixes in btime.cpp, ddenlovr.cpp, gaelco.cpp, headonb.cpp, itech32.cpp, kikikai.cpp, policetr.cpp, seattle.cpp and vegas.cpp
- Description changes of Air Duel (Japan, M72 hardware), Air Duel (World, M82 hardware), Andromeda SS (Japan?) (ID 07652), Armed F (Japan) (ID 05766), Armed F (Fillmore license), Atari 4 Player Football, Atari Basketball, Bio F.R.E.A.K.S (prototype, boot ROM 0.1i), Bosconian - Star Destroyer (*), CART Fury Championship Racing (ver 1.00), Daiku no Gensan (Japan, M72 hardware), Daiku no Gensan (Japan, M82 hardware), Daiku no Gensan (Japan, M84 hardware), Dragon Breed (Japan, M72 hardware), Dragon Breed (World, M72 hardware), Dragon Breed (World, M81 hardware), Flash (Williams, L-1), Flash (Williams, L-2), 'Flash (Williams, T-1) Ted Estes', Fool Race, Gallop - Armed Police Unit (Japan, M72 hardware), Fred Flintstone's Memory Match (*), Hammerin' Harry (US, M84 hardware), Hammerin' Harry (World, M81 hardware), Hyperdrive (ver 1.40, Oct 23 1998), Indiana Jones and the Temple of Doom (cocktail), IPM Invader (set 1), IPM Invader (set 2), Jackie Chan - The Kung-Fu Master (rev 3?), Magic Bomb (Ver. BR4.4, 04/19/02), Mini Golf (Atari, prototype), NBA Showtime Gold / NFL Blitz 2000 (ver 3.0) (SportsStation), Panther (bootleg?), Pengo (set 1 rev C, encrypted), Pengo (set 2, encrypted), Pengo (set 2, rev A, not encrypted), Pengo (set 3, not encrypted), Pengo (set 4, encrypted), Pengo (set 5, encrypted), Pit Boss Superstar (9221-12-01, California version), Police Trainer (Rev 1.3B, Rev 0.5B PCB), Police Trainer (Rev 1.3B Newer, Rev 0.5B PCB), R-Type (Japan, bootleg M82 conversion), R-Type II (Japan, bootleg M82 conversion), Road Fighter (bootleg GX330 conversion), 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), Varth: Operation Thunderstorm (bootleg, set 1), Video Pinball (16 PROMs version), Wayne Gretzky's 3D Hockey (ver 1.3), Witch Card (ICP-1, encrypted), X Multiply (Japan, M72 hardware), X Multiply (World, M81 hardware) and Yie Ar Kung-Fu (bootleg GX361 conversion)
- Renamed (galsnew) to (galsnewu), (galsnewa) to (galsnew), (headonb) to (foolrace), (jchan) to (jchana), (magibomb) to (magibomba), (policetr) to (policetr13) and (roadf3) to (roadfh)
- MAME
. VIDEO RENDERING SYSTEM
. Fixed prescale option does not work properly on D3D renderer. Removed old StretchRect code. All drivers these days punt it to a shader backend anyway, and it's causing issues with -prescale (render\d3d\d3dcomm.h and drawd3d.cpp) (ID 07536)
. Don't do frameskip related calculations at init time (emu\video.cpp). Frameskip setting is now upper frameskip limit when autoframeskip setting was enabled (emu\emuopts.cpp and video.cpp). Show frameskip max value in speed_text (emu\video.cpp).
. MEMORY SYSTEM
. Slight emu\emumem.cpp speedup. Implemented on the 680x0 for now. memory_access_specific is declared and used exactly like memory_access_cache, but does not cache. It does, however, shortcut the virtual call into address_space, so that's one layer of call less. Gives another nice speedup for accesses with bad locality (e.g. anything that's not opcodes), at the expense of having a specifically typed object in the class. Should do well for cpus in general, drivers can keep using the address_space access calls for easier logistics. Masking before dispatch at top level is not needed because it's already done at the global mask level.
. Mask address where absolutely necessary (emu\emumem.cpp). This change fixes the edge case of an unaligned accesses to the top of the space not wrapping around, which was causing at least one driver (Alpine Surfer) to crash.
. Cache and specific change syntax, and are not pointers anymore (emu\emumem.*): Added a template parameter to everything (theoretically the address space width, in practice a level derived from it to keep as much compatibility between widths as possible) so that the shift size becomes a constant. Changed the syntax of declaring and initializing the caches and specifics so that they're embedded in the owner device. Solves lifetime issues and also removes one indirection (looking up the base dispatch pointer through the cache/specific pointer). Protect against savage memsets (emu\emumem.h).
. 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).
. Removed the space for the handlers, it is not needed anymore (emu\devcb.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).
. UI
. Skip -romident matching process and display error message when no files are found (mame\clifront.cpp)
. Only warn about external artwork when it wasn't loaded (ui\info.cpp and emu\render.cpp)
. LUA engine
. Consolidated code for pasing enum strings. Added rom_entry library (mame\luaengine.cpp).
. Setting analog inputs don't work in LUA (emu\ioport.cpp). Fixed set_value for analog inputs. Expose ioport_setting to luaengine.
. Programmable Logic Device (PLD)
. Added GAL20V8 support to the jedutil tool
. jedutil updates: 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 ythe 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. Initial work on supporting the GAL20V8 device. Adding an initial regression test for the GAL20V8. Tweaked the function to print text to handle the end of line character. Fixed some mis-configurations of the GAL20V8 device. Added regression tests for the GAL20V8 device. Fixed the output of the GAL20V8 when viewing a jed in simple mode to properly display outputs as also being inputs for certain pins. Fixed the output of a GAL16V8 device in Simple Mode to mark relevant output pins as providing feedback as documented in the datasheet. Corrected the output feedback state when in simple mode for the GAL16V8 and GAL20V8 devices.
. 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
. First attempt at auto-sort of mame.lst
. First completed pass of commandline parameters. Get the audio latency numbers right and add PortAudio info. FreeSync/GSync information cleanup. Added tip for keyboardprovider (commandline\commandline-all.rst and usingmame\commonissues.rst).
- MAC OS X: Fixed OS X build with Xcode 7 (scripts\src\3rdparty.lua)
- CHDMAN: Support characters outside ASCII in command line arguments. I64 size qualifier is only needed for MSYS64 GCC 9 and earlier (tools\chdman.cpp).
- VGM player: Implemented some features from QuattroPlay by superctr
- 3rdparty: New AsmJit library (https://asmjit.com). Use AsmJit for (cpu\drcbex64.cpp). This is essentially a 1-for-1 substitution of x86emit code with its asmjit equivalent. There are opportunities for refactoring some of the original code using C++ as well as asmjit features, but this first pass simplified identifying and correcting any problems. Selective tests with MIPS3, Hyperstone and SH-4 appear to reproduce existing behaviour but more testing is needed.
- 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)
. Enable option to generate symbols in Release as well as Debug under Visual Studio (this is important because debugging Debug builds is too slow) (scripts\genie.lua)
. Fixed scripts\target\mame\dummy.lua
. Updated Travis CI build environments (travis.yml). Switched Ubuntu build from GCC-9 to GCC-10 and MacOS build from Xcode 11.0 (MacOS 10.14.6) to Xcode 11.5 (MacOS 10.15.4).
- 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)
. Debugger expression and memory access overhaul: Memory references in expressions no longer default to the console's visible CPU if no device name was specified, except when entered through the console itself. Expressions in view windows now use the context of the currently selected device instead. The pcatmem debug command and similar qt mouseover function now produce an error message if the initial address translation fails. Related internal changes: The debugger_cpu class no longer interprets memory accesses. The existing routines have been moved into symbol_table (which used to invoke them as callbacks), and reimplemented in most other places. Thecode duplication is a bit messy, but could be potentially improved in the future with new utility classes. The cheat engine no longer needs to hook into the debugger_cpu class or instantiate a dummy instance of it. The inclusion of debug/express.h within emu.h has been undone. Some debugging structures now need unique_ptr to wrap the resulting incomplete classes; hopefully the performance impact of this is negligible. Another direct consequence is that the breakpoint, watchpoint and registerpoint classes are no longer inside device_debug and have their own source file. The breakpoint list is now a std::multimap, using the addresses as keys to hopefully expedite lookup. The visible CPU pointer has been removed from the debugger_cpu class, being now considered a property of the console instead. Many minor bits of code have been simplified. Fixed crash when attempting to write to memory from debugger (debug\express.cpp).
. Added '-debuglog' option to log debug console output to file. When this option is specified, all console output is echoed to a log file. Some caveats/limitations: The file-open process was copied from -log, so it has the same limits. Filename is hard-coded (debug.log). File is overwritten if it exists. File is opened during emulation initialization. Thus, the file is cleared if you invoke the "Hard Reset" debugger command. Probably some other details I don't know about. Logging works as such: When a string is appended to the scrollback buffer, it is also written to the log file. Some commands forcibly wrap their output (e.g. 'help' to 80 columns). Because this wrapping is done inside the scrollback buffer, the text written to the file is not wrapped. This can be seen with 'help execution'. Eliminated space.device() in watchpoint code (debug\points.cpp).
. Added 'condump' command to export console buffer to a log file. This is another debugger enhancement - it allows you to export the current contents of the debug console window to a file. The filename parsing is based on the 'trace' command, and as such, supports both the "{game}" placeholder, and the ">>" prefix for appending instead of overwriting.
. Allow debugger dump command to dump with byte granularity from address spaces with positive shifts.




"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."





Jorge
MAME Fan
Reged: 08/08/04
Posts: 89
Send PM


Re: MAMEinfo 0.222GIT (18th June) new [Re: MASH]
#386755 - 06/20/20 04:21 AM


Speaking of mame 0.222, does anyone have a clue when it will be released?



StilettoAdministrator
They're always after me Lucky ROMS!
Reged: 03/07/04
Posts: 6472
Send PM


Re: MAMEinfo 0.222GIT (18th June) new [Re: Jorge]
#386802 - 06/23/20 03:17 AM


> Speaking of mame 0.222, does anyone have a clue when it will be released?

We're shooting for usual release date of last Wednesday of the month, aka June 24 (despite having missed last month's) to get us back "on track". But don't hold us to that - as always, it's ready when it's ready.

- Stiletto



Jorge
MAME Fan
Reged: 08/08/04
Posts: 89
Send PM


Re: MAMEinfo 0.222GIT (18th June) new [Re: Stiletto]
#386813 - 06/23/20 09:48 PM


Thanks!
I guess we'll know for sure tomorrow



Vas Crabb
BOFH
Reged: 12/13/05
Posts: 4463
Loc: Melbourne, Australia
Send PM


Re: MAMEinfo 0.222GIT (18th June) new [Re: Jorge]
#386822 - 06/24/20 10:52 AM


It's probably going to be a day or two late, but definitely by the end of the week.



Jorge
MAME Fan
Reged: 08/08/04
Posts: 89
Send PM


Re: MAMEinfo 0.222GIT (18th June) new [Re: Vas Crabb]
#386846 - 06/25/20 10:58 PM


Let's hope!



Vas Crabb
BOFH
Reged: 12/13/05
Posts: 4463
Loc: Melbourne, Australia
Send PM


Re: MAMEinfo 0.222GIT (18th June) new [Re: Jorge]
#386851 - 06/26/20 05:32 AM


> Let's hope!

No “hope” is necessary. I mean what I said.


Pages: 1

MAMEWorld >> News
View all threads Index   Threaded Mode Threaded  

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