MAME 0.99u5

From MAMEDEV Wiki

Release Date

MAME 0.99u5 was released on 29 August 2005.


Contributors

The known contributors for this version are, in alphabetical order:


Specific Contributions

The known contributions for this version are, in the order specified in the whatsnew:

  • Aaron Giles completed the renaming of core structures. Most pervasive change was "struct tilemap" is now just "tilemap".
  • Buddabing added save state support to the Cinematronics vector games.
  • David Haywood added blending to the alt tilemap code in psikyosh.c, fixing the final boss in Sol Divide.
  • Sebasten Hegon made improvements to the Witch/Pinball Champ '95 driver:
    • The games now show some graphics (the palette seems OK) and play some music and sounds.
    • Since the controls are not yet figured out completely, they are still mapped as dipswitches.
    • An NVRAM reset is required the first time you launch Witch (via the associated dipswitch). Pinball Champ seems to automatically do this.
    • The sound part required some patching in sound/es8712.c. I disabled the hardcoded inconditional looping, and made the sound start when writing at offset 0x06 (cf patch). vmetal does not seem to be affected.
    • As far as gameplay is concerned, the ball will freeze (in game and demo mode), and I don't know why. The video hardware is not completely figured out and may be the culprit.
    • The coin in/out mecanism needs some work too.
  • Roberto Fresca made some improvements to Jolly Card:
    • Added extra hardware info (pinouts and dips).
    • Added the correct dipswitch to Jolly Card. Hopper and Points/pulse not tested due to preliminary driver state. The rest are working properly. Remember to delete the nvram and reinitialize to see some changes.
    • Added almost the same dipswitch to Magic Card II (Bulgaria).
  • Aaron Giles made significant changes to the save state system:
    • Added alternate save state pre-/post-load function types that take integer or pointer parameters. Updated several sound cores and other files to take advantage of this.
    • Made state handler registrations track like other scoped resources (timers, memory) so that registrations can occur as late as MACHINE_INIT time.
    • Added logic to detect registrations after MACHINE_INIT time and prevent saves in that case.
    • Added logic to detect when CPUs or sound chips haven't registered anything to save/load. When this happens, info is logged to error.log and saves/loads are disallowed.
    • Allocated timers are now automatically saved and restored as part of the save state. The global time is now restored as well as a bunch of CPU execution state. This should produce more reliable restores.
    • Added logic to defer saves until all anonymous timers have cleared. If a driver uses many anonymous timers it may not be possible to ever successfully save, so the operation will time out after one second.
    • Before restoring, the machine is now reset. This gives a more consistent environment for the load to occur.
    • Re-enabled save state support for YM2151.
    • Added save state support to the classic Namco sound system.
    • Added save state support to the samples sound system.
    • Removed anonymous timer usage in machine/scramble.c.


Game Support

New games added or promoted from NOT_WORKING status


New clones added