User avatar
cuavas
Posts: 124
Joined: Tue Nov 11, 2014 1:04 pm
Location: Sydney, Australia
Contact: Website

MAME 0.182 has been released!

MAME 0.182

As we approach the 20th anniversary of the first MAME release, we’ve got a really exciting update for you. There’s so much awesome stuff in
this month’s release that there’s no way we can possibly cover it all here. MAME is a team effort, and we’d like to thank everyone who’s
contributed towards making this release as awesome as we think it is. One very exciting addition is support for another version of the East German Poly-Play system, with German and Czech ROM sets providing ten games, six of which are new. Protection on Future Flash/Laser Base has finally been emulated, so you can take a look at Hoei’s take on Missile Command. A dump of the damaged microcontroller (MCU) from Tatakae! Big Fighter makes this title and Sky Robo finally playable. Another eagerly awaited addition is the Hot-B prototype Hangzo.

Serial ports have been hooked up on Race Drivin’ allowing you to link two MAME instances over TCP, reproducing the multi-player experience with linked cabinets. To do this, use a null modem slot device and configure it for 38,400 Baud, 8 data bits, even parity, and 1 stop bit. It would also be possible to connect a MAME instance to a real board set by forwarding the connection to a serial port on the host system.

We’ve received a contributed PortAudio output module and integrated it in this release. This provides a cross-platform low latency audio output solution. Performance should be similar to Steinberg ASIO on Windows 7 or later without the licensing issues, and better than SDL audio on Linux. It can be enabled by setting the sound parameter to portaudio on the command line or in an ini file. Of course, all the other audio output modules are still supported, so if you're happy with your current setup you don’t have to change anything.

Although we haven’t added a huge number of new microcontroller (MCU) dumps in this release, substantial work has gone into improving systems where we already have dumps but the emulation is lacking. MCU emulation was added to Puzznic, Joshi Volleyball and Gladiator. For Puzznic, this places player data at the correct location in RAM and supplies the game with a pseudo-random number sequence rather than a stream of zeros. Joshi Volleyball now behaves better in service mode, allowing coins and inputs to be tested. Gladiator now honours the coinage DIP switches. The MC68705 core has had a complete overhaul, and all drivers using it have been reviewed. This fixes lots of subtle issues: for example Change Lanes will now skip the full memory tests if configured to ignore them in DIP switches, timings have improved in Arkanoid, and the Apple II mouse card is slightly improved. We now emulate the ’705 family well enough to support stand-alone MCU programmer boards.

Other improvements include working sound in Pole Position bootlegs, improved video in Winning Run, preliminary banked 256 colour mode for the NEC PC-9821, kana input on the Sharp X1, a VME bus system with preliminary support for the miniFORCE 2P21 chassis, additional Aristocrat Mark 5 peripheral emulation allowing non-US games to boot, Corvus hard disks for the DEC Rainbow 100, preliminary work on Atari Stunt Cycle (displays the playfield), fixes for the Aussie Byte and Otrona Attaché, and support for octal and binary numbers in debugger expressions.

For more detail on what’s changed, check out the whatsnew.txt file, or grab the source or Windows binaries from the download page straight away.

MAMETesters Bugs Fixed
  • 04907: [Flip Screen/Cocktail] (combatsc.cpp) combatsc, combatscj, combatsct, bootcamp: Score line is not flipped with screen (Angelo Salese)
  • 05313: [DIP/Input] (namcos21.cpp) winrun, winrun91, winrungp,driveyes: Misplaced Controls (Angelo Salese)
  • 05392: [Documentation] (royalmah.cpp) janputer: info about "New Double Bet Mahjong" (Angelo Salese)
  • 06216: [Sound] (ptcsol.cpp) sol20: Audio support (Robbbert)
  • 06422: [Graphics] (rohga.cpp) wolffang: (Japanese Wolf Fang Only) Text at attract mode is cropped (David Haywood)
  • 06460: [Sound] (stlforce.cpp) stlforce: OKI6295 speed is too slow (system11)
  • 06461: [DIP/Input] (pacman.cpp) eeekk: 2P Start Button map is missing (Tafoid)
  • 06464: [Interface] Every system with softlists using the "requirement" sharedfeat: Software list items with the "requirement" sharedfeat don't work (AJR)
  • 06467: [Gameplay] (hh_tms1k.cpp) elecdet: Every suspect gives the same alibi. (hap)
  • 06468: [DIP/Input] (gladiatr.cpp) gladiatr ogonsiro gcastle: Coinage DIP switches have no effect in sets using MCU simulation (Vas Crabb)
New working machines
  • Conic Electronic Basketball [hap, Sean Riddle]
  • Conic Multisport/Tandy Sports Arena [hap, Sean Riddle]
  • Enma Daio (Japan) [rtw, Ryan Holtz, Dullaron, Firebricks, redk9258, W. Perez, Anonymous from Switzerland, Darksoft, Smitdogg, David Haywood, ShouTime, Andy Welburn, The Dumping Union]
  • Gakken Galaxy Invader 1000/Tandy Cosmic 1000 Fire Away [hap, Sean Riddle, Kevin Horton]
  • Hangzo (Japan, prototype) [ShouTime, Smitdogg, David Haywood, Imhotep, Ryan Holtz, hap, Zhivko Dimitrov, spogghi, ANY, Arjen Hoekman, Arcade Addict, krick, Dullaron, Eddie, f205v, rtw, Rod_Wod, Fabien Marsaud, InsertMoreCoins, Jan Stuhler, trap15, Macaw, Team Japump, Brandon Munger, Juan Manuel Gutierrez, abelardator2, Jordi Bosch Creus, haynor666, Nestor Acebo Jimenez, Carl Perry, Jeremy McElroy, Steven Boswell, JJaVMeTaL, Steven LeMaire, Matthew Shultz, Mark Riley has no toaster, Carlos Gutierrez, Bjorn Stahl, Aldo Vittorio De Luca, Bruno Celsi, Philip Zumbrun, cornishdavey, Stefano De Dionigi, motoschifo, Mamesick, Daniel Hitchcock, Patrick Wheeler, bisus, desodeso, Swos, Don Zaucker, Tox Nox Fox, Zak0077, giuppo, Moket, Frankie, robindan77, biasini, Dr_Zero, motoschifo, Mameremember, John Wilke, Sean Sutton, Renato Mucciarelli, Berlioux Julien, Lior Aouate, The Dumping Union]
  • Mattel Dalla$ (J.R. handheld) [hap, Sean Riddle]
  • Mattel Thoroughbred Horse Race Analyzer [hap, Sean Riddle]
  • Motorola MC68705P5 Programmer [Vas Crabb]
  • Poly-Play (ZRE-PP) [SailorSat]
  • Tiger 7 in 1 Sports Stadium [hap, Sean Riddle]
New working clones
  • Atari PC1 [rfka01]
  • Dynamite Duke (Japan, 25JUL89) [Corrado Tomaselli, The Dumping Union]
  • Fidelity Elite Avant Garde (model 6114-2/3/4, set 2) [Berger]
  • Fighting Fantasy (Japan revision ?) [Hammy, The Dumping Union]
  • King of the Monsters 2 - The Next Thing (older) [NeoSD]
  • Motorola MC68705P3 Programmer [Vas Crabb]
  • Motorola MC68705R3 Programmer [Vas Crabb]
  • Motorola MC68705U3 Programmer [Vas Crabb]
  • Poly-Play (ZRE-PP - Czech) [SailorSat]
  • Research Machines RM-380Z, COS 3.4D [zx70]
  • Research Machines RM-380Z, COS 3.4E [zx70]
  • Robo Army (NGM-032 ~ NGH-032) [JacKc]
  • Saulabi Spirits / Jin Saulabi Tu Hon (Korean release of Samurai Shodown II, set 2) [JacKc]
  • Skull Fang (Asia) [coolmod, The Dumping Union]
  • Star Fighter (bootleg of Astro Fighter) [f205v]
Machines promoted to working
  • Novag Diablo 68000 [hap]
  • Novag Super Expert (several versions) [hap, Berger]
  • Novag Super Forte (several versions) [hap, Berger]
  • Future Flash [Morten Shearman Kirkegaard, Samuel Neves, Peter Wilhelmsen, Tomasz Slanina]
  • Force SYS68K/CPU-20 [Joakim Larsson Edstrom]
  • Otrona Attache [zx70]
  • Robo Army (NGM-032 ~ NGH-032) [JacKc]
  • Sky Robo [CAPS0ff, Angelo Salese]
Clones promoted to working
  • Laser Base (set 1) [Morten Shearman Kirkegaard, Samuel Neves, Peter Wilhelmsen, Tomasz Slanina]
  • Laser Base (set 2) [Morten Shearman Kirkegaard, Samuel Neves, Peter Wilhelmsen, Tomasz Slanina]
  • Tatakae! Big Fighter (Japan) [CAPS0ff, Angelo Salese]
New machines marked as NOT_WORKING
  • Ator (Videodens) [AJR, Gonzalo]
  • Bloody Roller (Playbar) [AJR, Akiles500]
  • Compugraphic MCS PowerView 10 [Carl, Al Kossow]
  • Cobra (Playbar) [AJR, Iso Tropia]
  • Happy Fish (V2 PCB, 302-in-1) [The Dumping Union]
  • LINK RM-480Z (set 1) [Robbbert]
  • LINK RM-480Z (set 2) [Robbbert]
  • Mega Bonus Star II (Euro, Millennium Edition) [Roberto Fresca, Team Europe]
  • miniFORCE VME Chassis [Joakim Larsson Edstrom]
  • Slalom Code 0.3 (Stargame) [AJR, Akiles500]
New clones marked as NOT_WORKING
  • Eight Ball Champ (Spain, Z-Pinball hardware) [AJR, Iso Tropia]
  • MotorDome (German) [PinMAME]
  • Star Horse Progress (backup data) [any, Lord-Nightmare, MetalliC, rtw, ShouTime]
  • Star Horse Progress (live, Rev A) [any, Lord-Nightmare, MetalliC, rtw, ShouTime]
  • Star Horse Progress (main screens, Rev B) [any, Lord-Nightmare, MetalliC, rtw, ShouTime]
  • Star Horse Progress (sound & backup, Rev A) [any, Lord-Nightmare, MetalliC, rtw, ShouTime]
  • World Kicks (Japan, WK1 Ver.A) [rtw]
New working software list additions
  • archimedes.xml: over 30 games (some protected), and many apps [Nigel Barnes]
  • atom_cass.xml: Backgammon, Cylon Attack, Early Warning, Minefield, Tangled [Nigel Barnes]
  • atom_flop.xml: Galaxians (Aardvark) [Nigel Barnes]
  • ibmpcjr_cart.xml: Fraction Fever [Anna Wu, Justin Kerk]
  • t1000.xml: MS-DOS (Verson 3.20, Tandy version 03.20.21) (Tandy 1000 TX), DeskMate (Tandy 1000), DeskMate II (Tandy 3000), Personal DeskMate, Personal DeskMate 2 (Tandy 1000 HX), Personal DeskMate 2 (Tandy 1000 HX, Alt), Personal DeskMate 2 (Tandy 1000 TX), King's Quest (Tandy), Transylvania (Tandy) [Justin Kerk]
  • x1_cass.xml: 198X-nen, 3D Golf Simulation, Fushigi no Kuni no Alice, Ankokujou, Danchizuma no Yuuwaku, Intelli Janshi - Yonin Mahjong, Ultra Story, Xanadu [r09]
Source Changes

Code: Select all

-Rewrote Namco C148 (interrupt controller) and C193 (SCI) devices. [Angelo Salese]
 * Fixed POS interrupt generation for Winning Run/Winning Run '91/Winning Run Suzuka GP.
 * Fixed trail tachometer drawing in Winning Run.

-deco32.cpp: Added preliminary global volume control for nslasher and fghthist. [Angelo Salese]

-Wrote a device core for the Namco 6-speed gearbox. [Angelo Salese]
 * Used by Driver's Eyes, Ridge Racer DX and Ace Driver.

-Added preliminary banked 256 color mode to PC-9821. [Angelo Salese]

-naomi.cpp: Added inputs for Mars TV. [Angelo Salese]

-Dumped i8751 MCU for Sky Robo / Takatae Big Fighter and added basic hookup to make it work. [CAPS0ff, Angelo Salese]

-punkywil: Added a ridiculously incomplete dump of the CPU ROM. [AJR, Akiles500]

-Z80 daisy chain improvements: [AJR]
 * Use the standard vector for an external IRQ, rather than a bogus one from the last device in the chain.
 * Enabled Z80 daisy chain on Cedar Magnet sound board (fake IRQ still necessary, but vectors are correct now).
 * Source note regarding IM 2 behavior contrary to Zilog datasheet.

-Corrected natural keyboard handling of toggle keys. [AJR]

-break86: Tried to make some sense of the DIP settings in the service manual [AJR]

-Service mode DIP switch adjustments: [AJR]
 * Use the default sequence for the non-toggle service mode/test switch for service mode DIP switch unless the machine has one of
    those as well.
 * Automatically define DIP and configuration switches as toggle fields (makes assigning input codes easier).

-Correctly report size of ROMs over 2GB in XML output. [AJR]

-Cedar Magnet/EFO ZSU improvements: [AJR]
 * Got rid of fake IRQ in Cedar Magnet sound system.
 * Converted the Cedar Magnet board from a base device class to a mix-in interface.
 * Emulated EFO ZSU as main variant of the Cedar Magnet sound board.
 * Hooked up ZSU1 to Skill Flight and Phantom Ship.
 * Modernized ZSU soundlatch/IRQ mechanism.

-More DAC identification and sound stuff. [AJR]
 * Legion and Rygar have YM3526 instead of YM3812 (other Nichibutsu games to be checked).
 * Identified DACs used in most Midway and Williams games.
 * Zektor uses an AY-3-8912, not 8910.
 * Corrected name of Turbo Cheap Squeak board.
 * Hyphenated title of F-14 Tomcat.
 * Corrected Color Computer DAC type and separated single-bit sound.

-polepos.cpp: Sound improvements for bootlegs [AJR]
 * Working Spanish/Italian voices in polepos2bi and polepos2bs.
 * DAC for passing car sound in topracern, polepos2bi and polepos2bs.
 * These bootlegs may still be missing explosion sounds.

-skyarmy: Various small improvements: [AJR]
 * Fixed screen flipping in cocktail mode.
 * Re-added second AY-3-8910A that generates explosion sounds.
 * Added coin counter.

-bagmanf: Fixed inputs and shuffled PROMs for better colors (game still tends to crash). [AJR]

-kangaroob: Added proper ROM labels and locations. [AJR]

-newbrain improvements: [Curt Coder]
 * Added character ROM and more accurate video output.
 * Fixed keyboard.
 * Decoded VFD bitstream, and added simultaneous video and VFD display.
 * Fixed CPU clocks and interrupt logic, added layout for VFD-less model, enforced power on reset timer.

cop400 improvements: [Curt Coder]
 * Fixed disassembly of jump instructions and used decimal for LDD/XAD.
 * Fixed instruction timing and time-base counter.
 * Fixed COP444 disassembly.
 * Properly separated COP444L from COP444C.

-advision: Fixed CPU clock; turtles music is now melodic. [Curt Coder]

-OS X Cocoa debugger: Autoscroll log window, improved view scoll behaviour. [Curt Coder]

-74153: Rewrote emulation, only output state when the level changes. [Dirk Best]

-apricot: Use 74153 for the serial clock selector. [Dirk Best]

-gen_latch updates:
 * Added MCFG_GENERIC_LATCH_DATA_PENDING_CB to raise and lower a line automatically as the latch is written and read. [AJR]
   - Makes sound IRQs easier to deliver and reduces the incidence of HOLD_LINE in drivers.
 * Inverted logic (latch_read -> latch_written), fixed initial callback after start. [Dirk Best]

-ashnojoe, crospang, crshrace, dcheese: Latch cleanup. [Dirk Best]

-ddenlovr, expro02, f1gp feversoc, fuukifg2, gaelco: ACCESSING_BITS cleanup. [Dirk Best]

-z80ne: Killed direct update handler. [Dirk Best]

-chdman: Added support for hard disk templates and added some initial ones. [Dirk Best]

-Added A1200 keyboard skeleton device (needs MC68HC05Cx support). [Dirk Best]

-Added HLCD0515/0569 LCD Driver device. [hap]

-TMS0970: Fixed a problem with DDIG line, causing MB Comp IV to be unplayable. [hap]

-hh_tms1k: Fixed wrong button mapping for Codename Sector. [hap]

-VME bus improvements: [Joakim Larsson Edstrom]
 * Added new VME slave board: mzr8300.
 * Added device installers for A16:D8, A16:D16, A24:D8 and A24:D16.
 * mzr8300: hooked up the 7201 correctly and added RS232, now supporting the mzr8105 over VME bus as previously faked.
 * Converted mvme350 board driver to slot device.
 * Force Computers: Converted fcisio1 and fcscsi1 boards to slot devices and added VME interface to fccpu30.
 * Force Computers: Added VME interface to fccpu1, fccpu20 and hk68v10.
 * Added miniFORCE 2P21 chassis.
 * hd63450: Fixed device to find the owner CPU if the top node doesn't have a CPU, like in the case of a VME chassis.
 * fccpu20: Set terminal as default rs232 device, changed crystal value after visual verification to get 9600 Baud.
   - Terminal works but needs to be set to 7bit.
 * fccpu30: Improved documentation.
 * miniFORCE: Added address map info and feature list for three models.
 * fccpu20: Added PCB layout and hooked up the Rx part, terminal is working now.
 * Added fccpu20 to Miniforce as a VME card.
 * fccpu20: Moved all code and documentation to the slot device, promoted to working driver.

-Added MC68153 Bus Interrupter Module device. [Joakim Larsson Edstrom]

-MPCC improvements: [Joakim Larsson Edstrom]
 * Robustification, LOG messages and pinout added.
 * Completed Tx, Rx and serial interface handshake support.

-Added JuliaLang utf8proc as a third party library with wrappers. [Nathan Woods]

-imgtool improvements: [Nathan Woods]
 * Changed charconv from an enumeration to an interface:
   - Added a table-based implementation for simple single-byte endocdings.
   - Added support for ISO-8859-1 Latin 1 and Mac Roman.
 * Use wcout/wcerr in order to support Unicode console output.
 * Fixed recently introduce bug on attribute listings.
 * CoCo/RS-DOS: Miscellaneous cleanups and C++ modernization.

-CoCo: Fixed a recently introduced bug in DMK image creation. [Nathan Woods]

-Created a new debugger command 'tracesym': [Nathan Woods]
 * Shorthand for 'tracelog' that uses default format string.

-Added a facility allowing logerror output to be captured in traces. [Nathan Woods]
 * The third parameter to the debugger 'trace' is now a list of '|' delimited options to support this.

-Acorn Archimedes updates: [Nigel Barnes]
 * Added Diagnostic Test ROMs to aa310.
 * Renamed Archimedes 3000 -> BBC A3000.
 * Single FDD installed by default, other bay usually contains HDD.
 * Removed tape control input port.
 * Added apd_dsk: new floppy format 'Archimedes Protected Disk'.

-mc68681: Added preliminary support for SC28C94 QUART, fixed channel C/D transmission. [R. Belmont]

-gba, vcs80: Removed deprecated direct update handlers. [R. Belmont]

-68230pit updates: [R. Belmont]
 * Don't forget all externally driven line states when the DDR changes.
 * Return proper port values when line states are pushed instead of pulled.

-Pyon Pyon Jump: Documented board 7908B pinout and #1/#2 DIP switches. [Roberto Fresca]

-Gran Premio F1 (Spanish bootleg of Pole Position II) updates: [Arcade Hacker, Rockman, Roberto Fresca]
 * Redumped some faulty devices (the former speech ROM has bit6 fixed).
 * Added proper bipolar PROMs dumps.
 * Documented 'A'/'B'/'C' board edge connectors.

-New driver for Mega Bonus Star II (Euro, Millennium Edition): [Roberto Fresca]
 * Derived machine and started a proper memory map, the game starts to show attract mode.
 * Changed the romset name according to the real game name.
 * Video hardware work to fix the video reels.
 * Inputs worked out from scratch.
 * Added references for Z86C15 MCU.

-Mega Bonus Star II (Euro, Millennium Edition) notes: [Roberto Fresca, Team Eurpoe]
 * Added more documentation, tech notes, and M48T12 timekeeeper dump for preservation and further analysis.

-Mega Bonus Star II (Euro, Millennium Edition): Added GAL dump. [Team Europe]
 * Added unknown Zilog DIP40 IC diagram, looks as a Z8 family MCU.

-Added decapped MCU dump for the original quizard. [TeamEurope]

-aristmk5: Added SPI and hopper emulation, allowing non-US games to boot. [Sandro Ronco]

-midzeus: Changed waveram viewer to use V key to fix conflict with game controls. [Ted Green]

-Added decapped dump of the d8751 on quizard4 sets (not hooked up yet). [Team Europe, David Haywood]
 * Also fixed fixed flags on quizard3 and 4 game versions that never worked past coin-up.

-Taito 68705 refactoring: [David Haywood]
 * Renamed the buggychl_mcu_device (machine/buggychl.cpp) to taito68705interface.cpp because a number of drivers used it.
 * Refactored that device to use the new 68705 core with built-in peripherals.
 * Refactored some other drivers, including tokio, daikaiju, flstory, lkage, nycaptor and lsasquad, to use it.
 * Moved 68705 timer logic out of arkanoid driver and into 68705 core.

-stv.cpp: Cleaned up comments, BAD_DUMP flags and set descriptions based on recent Print Club 2 set redumps, and added preconfigured
 NVRAM to non-corrupt set. [David Haywood]

-Added a preconfigured NVRAM to tangtang in esd16.cpp so it won't boot with invalid settings. [David Haywood]

-Added a dump of one of the HNG64 TMP87PH40AN I/O chips. [CAPS0ff]
 * This came from a sample OTP chip that was purchased for testing/analysis, not one of the chips actually taken from a HNG64 unit!
 * The chip had no protection and read out without issue.
 * It isn't clear if this is the driving, shooting or fighting MCU type.

-stuntcyc logic emulation: [Ryan Holtz]
 * Added netlist.
 * Fixed some NOR gates that should have been NANDs, fixes the playfield.

-netlist improvements: [Couriersud]
 * ROMs now specify an identifier in the netlist to load data from a source_t implementation.
 * Added "-r" option to nltool to pass path to a folder containing ROM files.
 * setup_t is owned by netlist_t; stop being complicated.
 * Removed gnd() method, simplified further.
 * Fixed seldom-used conditional build options including OPENMP.
 * Increased readability of timed queue code.
 * Reamed connect_late to connect.
 * Register nets where they are created.
 * Preparatory work for automatically generated include files for devices.
   - nltool now is able to create all defines from the factory definitions.
 * Added code to remove devices connected only to rail terminals.
 * Refactored reverse polish notation evaluator into own its source files.
 * Added function parameter to current and voltage sources VS and CS (e.g. to produce a sine wave).
 * Changed code to allow devices to optionally be treated as dynamic or timestepping devices.
 * Converted warnings and fatal log messages to constants.
 * Assume string literals are UTF8 in netlist code.

-mario: Hooked up Luigi walking sound in netlist sound implementation. [Couriersud]
 * Driver now uses netlist audio implementation instead of discrete implementation.
 * The previous emulation has not been removed yet because it still contains a lot of documentation.

-netlist: Added LM747, LM747A and 2N2565. [Vas Crabb]

-gsword.cpp updates: [Vas Crabb]
 * Split out gsword and josvolly functionality from base driver class.
 * Identified josvolly "AA 007" chip as NECD8255A for reading input ports as shown by CAPS0ff die shot.
 * Hooked up josvolly MCUs for communication between CPUs, improves test mode behaviour.
 * Added DIP locations to josvolly based on test mode.
 * Named unknown DIP settings after the location they control in main RAM.
 * Identified josvolly cabinet type DIP switch.
 * Removed obsolete josvolly MCU simulation.

-gladiatr.cpp improvements: [Vas Crabb]
 * Separated gladiatr and ppking state classes.
 * Hooked up all four MCUs in gladiatr sets, games now honour coinage settings.
 * Eliminated tagmap lookups on input read.
 * Add bootleg MCU dumps to all gladiatr sets as BAD_DUMP, removed MCU simulation, and updated notes.

-m6805: refactoring and improvements [Vas Crabb]
 * Moved 68705 devices into their own file, Made P3, P5, R3 and U3 variants and made them load bootstrap ROMs.
 * MC68705R3 bootstrap ROM is believed to be identical to U3, but a dump is required for confirmation.
 * Implemented EPROM control (saves contents using NVRAM mechanism).
 * Implemented differences for open drain I/O ports.
 * Re-implemented timer/counter - supports MOR-controlled mode, correct count direction, and correct start/reset states.
 * Fixed state of input lines being lost on reset.
 * Use symbolic names for I/O registers in disassembly.
 * Exposed more more internal registers through the state interface - shows contents of registers that can't be read as memory.
 * Reduced massive amounts of redundancy by templating opcode handlers and replaced the epic switch statement with a dispatch table.
 * Turned a lot of macros into inline methods so they can be scoped down.
 * Fixed timings for a few instructions and added a table with CMOS instruction timings.
 * Corrected affected flags in comments on opcode handlers (actual code was correct).
 * Removed unnecessary flag calculation tables.
 * Added compile-time configurable logging for onboard MC68705 peripherals to help debug issues.
 * Completely eliminated the concrete 68705-without-peripherals class.
 * Use MC68705P3 core for bub68705, changela, maxaflex, mexico86, qix.cpp, taitosj.cpp and tstrike/ddungeon/darktowr, simulate
    synchronous latches better.
 * Use MC68705R3 core for pipeline.
 * Use MC68705P5 core for pitnrun.
 * Use MC68705P5 core for quizpun, MCU now gets timer interrupts correctly (still not working).

-taito68705interface improvements: [Vas Crabb]
 * Added abstract base class with latch logic written for arkanoid/puzznic.
 * Removed non-obvious mcu_status_r and semaphore_r members and moved to drivers (varies by system).
 * Got rid of the unnecessary hacks for bigevglf, it doesn't need anything special.
 * Folded Slap Fight functionality into common device class.
 * Used common device for maniach, maniach2, renegade, retofinv and xsleena.
 * Added device for arkanoid/puzznic MCU setup, replacing glue in arkanoid and simulation in puzznic.
 * Removed leftover crud from driver state classes.

-hotsmash, pbillian: Cleanup: [Vas Crabb]
 * Did bare minimum work to extricate hotsmash/pbillian from superqix_state.
 * Migrated to M68705P5 core instead of in-driver peripherals.
 * Reduced tagmap lookups.

-stfight.cpp: Fixed ADPCM control. [Vas Crabb]
 * Used MC68705P5 core rather than in-driver peripherals.
 * Latch ADPCM counter on the correct edge.
 * Remove unused members, eliminate function statics, and fix up save state registration.
 * Reduced runtime tagmap lookups.

-tigeroad.cpp: Cleanup and modernisation: [Vas Crabb]
 * Split out bballs and pushman state classes.
 * Used new MC68705R3 core for pushman, make communication with host CPU believable.
 * Used derived memory maps rather than installing handlers in init members.
 * Simplified bballs protection MCU simulation using pushman hookup as a guide.

-a2bus/mouse.cpp: Simplification and cleanup: [Vas Crabb]
 * Used new MC68705P3 core and removed obsolete glue.
 * Made comment styles consistent, eliminated device timers altogether, and de-duplicated code for updating X and Y axes.
 * The card works before and after the change, but by default axes are only mapped to inc/dec keys, not host mouse.

-taito_l.cpp: Split giant state class up into family tree, reduced tagmap lookups. [Vas Crabb]

-i8251: Made receive more reliable, cleaned up a little. [Vas Crabb]

-zorba improvements: [Vas Crabb]
 * Created emulated keyboard device using MC68705P3 core.
   - Identified 88 of 96 matrix keys, 6 of 8 DIP switches, and 3 of 6 outputs.
 * Connected IEEE-488, RS232 and Centronics ports.
 * Hooked up all IRQ sources and connected PIT to USARTs.

-m6805evs: Added proper memory map in comment and note that it needs CPU core support for the 68HC705 family. [Vas Crabb]

-Added logmacro.h inspired by Edstrom's log macros. [Vas Crabb]
 * Should be #included after other headers and after optionally #defining VERBOSE, usage samples in z80scc.cpp and m68705.cpp.

-arkanoid: Confirmed MCU reset also resets semaphore flags. [Lord Nightmare, Vas Crabb]

-debugger: Use 0o prefix for octal numbers, 0b for binary numbers, and allow uppercase radix characters. [shattered, Vas Crabb]

-superqix.cpp: Deprotected an original Japan/World Super Qix 8751 MCU, and verified that the presumed B03 // 03 MCU dump is correct.
 [Lord Nightmare]

-arkanoid.cpp: Fixed watchdog to match PCB tracing and update some comments. [Lord Nightmare]

-Zorba keyboard: Fixed F4 in natural keyboard mode. [Robbbert]

-Enabled rm380z34d and rm380z34e. [Robbbert]

-Added support for earlier COS versions on the RM380Z. [zx70]
 * Earlier versions had only a 40 column display and the cassette tape interface.

-Made the RTC chip react on the Aussie Byte. [zx70]

-Scrollup fix for the TMS9927 family. [zx70]
 * Avoid reconfiguring all the CRTC parameters on any cursor shape change, which was resetting the scroll counter.
 * Fixes scrollup for the Otrona Attache.

-pc_dsk: Support 360K images with 512-byte header, found in some softlist entries. [Justin Kerk]
 * Also support 1.44MB images with 1024-byte footer.

-pc_dsk: Assume a smaller gap size to allow 400K disk images to load. [Justin Kerk]
 * Fixes e.g. ikari and marble from the ibm5150 softlist.

-tandy1t: Distinguish between models using 90-key Tandy and standard 101-key "Enhanced" AT keyboard layouts. [Justin Kerk]
 * Also unmapped Hold key on the 90-key layout by default to avoid freezing the emulated system when switching UI modes.

-atvtrack improvements - game code running now as it should: [MetalliC]
 * Extracted CPU initial boot from FPGA bitsream.
 * Implemented NAND Flash erase and program commands.
 * Hooked GPU IRQs control.
 * Added basic simulation of GPU's internal CPU for game init speedup.
 * Documented IO-port multiplexing.

-naomi docs update: [MetalliC]
 * Dead or Alive 2 Millenium now parent of DoA2 set.
 * Renamed Star Horse sets for consistency.

-Researched and documented NAOMI ROM board type 171-7885A master/slave features. [rtw, MetalliC]

-IBM 6580 Displaywriter de-skeletonization. [shattered]

-i8255: In read_pc(), also return data from output latch. [shattered]

-ImageDisk loader: Don't crash on tracks with no data. [shattered]

-TeleDisk loader: Accept images produced from 8" SSSD disks. [shattered]

-imagedev/floppy: Added 'dskchg_writable' property (for Sony Microfloppy drives). [shattered]

-imagedev/floppy: Added has_trk00 property, initially for IBM 6360 8-inch drives. [shattered]

-imagedev/floppy: Inhibit reading until drive has spun up. [Michael Zapf]
 * This affects drives/controllers that do not use the READY line.
 * Still an over-simplified solution; requires a proper implementation of a spin-up ramp.
 * Stepping is allowed during spin-up until further evidence from real drives.

-formats/wd177x_dsk: Allow override of build_sector_description, like nec765_dsk. [shattered]

-polyplay: Added a German version of ZRE-PP based polyplay and a Czech ROM. [SailorSat]
 * Modernized/devicified the polyplay driver.
 * Documented differences in hardware.
 * Added newer ZRE-PP board (SIO not yet hooked up).
 * Added a Czech export version with the new menu.
 * Fixed undocumented Z80 CTC 'on-the-fly' mode switch; internal timer didn't stop.
 * Added new polyplay2 romset; german version with 10 games (6 new ones).
 * Renamed Czech version to polyplay2c and made a clone of polyplay2.

-harddriv: Hooked up the first serial port as an RS232 device to enable linking. [SailorSat]
 * This allows one to link up two Race Drivin' using null-modem and bitbanger (38400 8E1).

-HP9895 dual-floppy drive WIP: [F.Ulivi]
 * Added draft of HP9895 floppy drive, PHI passes POST.
 * 9895 now talks through ieee488!
 * Cosmetic fixes to 9895-related source files.

-gaelco: Dumped "Biomechanical Toy (Ver. 1.0.1884)" sound roms, fixes audio in this version. [ShouTime]

-Verified that Plump Pop uses the same M-Chip as extermination and Dr. Toppel; added and corrected labels, locations and chip types
 for several ROMs/PROMs as well as updated notes, based on PCB pictures. [ShouTime]

-segae.cpp: Fixed incorrect Opa Opa ROM labels. [ShouTime]

-Updated PortAudio library and added audio output module. [inte alls]
 * Provides low-latency audio output on Windows 7 or later and Linux.

-ppcdrc.cpp: Clear two LSBs of the branch target address. [maximumspatium]
 * Fixes an issue preventing Power Macintosh 6100 from starting up.

-x1.cpp: Added kana input support. [r09]
 * Added all kana and kana+shift key combinations.
 * Changed the kana key into a toggle, like in real hardware.
 * Added some missing keys that exist on the actual X1 keyboard.

-taito_f3: Fixed missing graphics on state load. [moralrecordings]

-Added write line member for terminal count line of upd765. [Patrick Mackinlay]

-retofinv.cpp: Added comment about developer (thanks to TCRF and GDRI). [Stiletto]

-Added the Sonic 3 proto lock-on chips to the relevant Sonic 3 proto sets. [einstein95]

-cvs.cpp: Only show popmessage on unknown writes if VERBOSE is defined. [system11]

-a78_slot: Fixed broken 144k + POKEY@450 emulation. [Mike Saarna, trebor]
 * Bentley Bear's Crystal Quest and Donkey Kong PK-XM no longer crash.

-DEC Rainbow 100 updates: [Bavarese]
 * Enabled Corvus hard drives (Patched CP/M 1.x only, requires DRCDUTIL.TD0 driver disk from Maslin archive).
   - See section CORVUS HARD DISK for patch instructions.
   - DOS 2.x and CP/M 2.2 were once supported too, but drivers appear to be lost.
 * Added info about 6 and 20 MB Corvus drives and how to format/use them under CP/M 1.x.

-aztarac.cpp: Verified and corrected labels/locations and added newly dumped video board PROMS. [Andrew Welburn, Tafoid]

-ms32.cpp: Corrected ROM names for Best Bout Boxing. [Corrado Tomaselli, The Dumping Union]

-pse.cpp: Redumped bazookabr. [f205v]

-Corrected tilemap colors in Stadium Hero. [Bryan McPhail, Guru]

-armedf.cpp: Verified and corrected clocks for Sky Robo / Tatakae! Big Fighter. [Guru]

-hng64: Documented I/O CPU clock. [Guru]

-pacman.cpp: Added readme for Number Crash. [Guru]

-jollyjgr.cpp: Updated readme and corrected clocks for Jolly Jogger. [Guru]

-hiscore.dat: Updates [Leezer]

-Added handy ROM filename discrepancy spotter scripts. [Zoe Blade]
 * Identifies identical ROMs that have different names in parent and clone sets.

-Updated V.Smile software list: [Fake Shemp]
 * Split into three lists: regular V.Smile, V.Smile Motion, and V.Smile Baby (Motion and Baby lists not hooked up yet).
 * Updated with a bunch of new-found carts and been restructured to indicate which carts are undumped.
 * Documented cart internals more thoroughly - descriptions now list PCB types, chip placements/labels, etc. if available.
 * Added previously missed dumps, fixed some typos.

-Added more software list documentation based off new dumps. [Fake Shemp]
 * Carts for a2600, megadriv, n64 and snes got redumped recently by TeamEurope; added newfound information to the softlists.
 * Removed syvalionp2 as it's simply a bad dump of syvalionp.

-pc.cpp updates: [rfka01]
 * Added Atari PC1 and corrected name of Atari PC3.
 * Gave standard pccga five slots, so machines with combo cards can have hard disks as well until combo cards are emulated.
 * Reordered MCFG and ROM entries to match the machine list at the bottom of the file.
 * Derived NCR PC4i configuration from VGA PC and corrected number of slots.
 * Made 720K drives standard for laptops which have them.
 * Added info on Zenith Supersport, Bondwell Pro28, and Atari PCs.
 * Added info on several already emulated systems in the header.
 * Added detailed information on Data General One, Commodore PC-1, Commodere PC10-III and PC20-III, Zenith SuperSport,
    Siemens Sicomp PC16-05, NCR PC4i, Olivetti M15, Sharp PC-7000, Sanyo MBC-16, Atari PC-3, Eagle 1600, VTech Laser Turbo XT
    and XT/3.

Return to “Announcements”