Release Date

MAME 0.78u5 was released on 18 January 2004.


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:

  • Derrick Renaud made discrete sound system updates:
    • Discrete Sound Changes
      • fixed/added more documentation of functions at top of discrete.h
      • DISCRETE_RCFILTER - fixed bug that allowed module to use nodes not available to it. Can't beleive it did not crash before.
    • New Discrete Modules Added
      • DISCRETE_CRFILTER - high pass R/C filter.
      • DISCRETE_COUNTER - Presettable up/down counter, external clock with selectable count edge.
      • DISCRETE_COUNTER_FIX - Presettable up/down counter with bult-in frequency generator.
      • DISCRETE_ONESHOT - Fixed it. Added selectable: edge trigger; re-trigger; output active state.
      • DISCRETE_ONESHOTR - Same as DISCRETE_ONESHOT but with reset.
    • Game Driver Changes
      • poolshrk - Discrete sound emulation added.
      • bsktball - changed bounce sound to use DISCRETE_CRFILTER.
  • Nicola Salmoria updated the Gameplan driver:
    • rewritten using machine/6522via.c and machine/6532riot.c, which weren't available at the time it was created. This fixed the gfx problems and bad sound.
    • vidhrdw/gameplan.c is no longer needed.
    • machine/6532riot: added PA7 adge detect and irq callback
    • machine/6522via: fixed port writes so that pins set as input are pulled high. This is required by the gameplan games and is confirmed by the 65422 data sheet. Added support for CA2 pulse handshake.
  • Phil Stroffolino updated the System 21 driver:
    • hooked up preliminary support for System21's "depth bias" feature, used as a corrective factor when sorting polygons by representative z value. It's not perfect, but a step in the right direction.
    • improved polygon colors in CyberSled
    • better parsing of CyberSled's display list; title screen and ingame graphics now appear and are mostly correct
    • hooked up CyberSled input ports; they can be configured with the usual mechanism: hold the 'service' key while flipping the test dipswitch
    • added near-plane clipping for System21's flat-shaded polygons
    • hooked up the view transform, used in Starblade to tilt the screen when player is targeting the edges of the playfield
    • hooked up a private (placeholder) implementation of zdrawgfx() for C355 sprite rendering, adding sprite-tilemap orthogonality for all games using that chip. This fixes MAMEtesters bug ptblank056gre.
    • C355 sprite rendering no longer relies on game-specific hacks for XY placement or cropping
    • some rudimentary work has been done for "Winning Run '91"; this game runs on prototype System21 hardware, and as such is quite different from the other titles. It uses a 3rd 68k CPU to render graphics to a bitmap layer (there is no sprite chip), but still appears to rely on DSPs for 3d graphics.
    • updated System21 notes/comments.
  • Fixed warning messages on decocass.c, tnzs.c, cvs.c
  • Fixed raiga sound
  • Fixed gsword bad ram message
  • smf added support USB Keyboard LEDs, which only affects windows nt/2000/xp
    • led_mode ps/2 is the default and uses DeviceIOControl
    • led_mode usb uses keybd_event()
    • There might be a way of using DeviceIOControl to change the led's on usb keyboards, but I can't find it. Using keybd_event() may have problems restoring on exit, but at least it does work.
  • smf added -state to the windows version. The code was already in the core to handle it, all this patch does is allows you to set options.savegame Not sure how reliable it is, it worked for galaxian.
  • R. Belmont fixed a discrete sound system crash with -nosound

Game Support

New games added or promoted from NOT_WORKING status

New clones added