Release Date

MAME 0.87u1 was released on 29 September 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:

  • Brad Oliver removed options.color_depth (obsolete anyway)
  • Bryan McPhail made some compiler Fixes for VC
    • C99 fix in suprgolf.c
    • fixed warnings under VC in m37710op.h
    • fixed warnings under VC in ppc.c
    • fixed warnings under VC in ppc403.c
  • Bryan McPhail added a default eeprom to Recalhorn to prevent crash
  • Bryan McPhail fixed the Mametesters bug sotsugyo069u3gre; sotsugyo: On the result screen (the one that appears when finishing a stage i.e after the first two trials), zeroes don't appear at all.
  • Andrew Gardner modified tilemap.c so roz and RGB_DIRECT can be used together
  • Pierpaolo Prazzoli fixed I/O addresses in Hyperstone and so removed the hack from vamphalf driver
  • R. Belmont updated the i960 core:
    • Added support for the following opcodes: nor, addc, subc, atanr, sinr, cosr, tanr, atanrl, logrl, sinrl, cosrl, and tanrl.
    • Added those and some others to the disassembler.
    • Added parens for the compiler warning.
    • Fixed stt to only store 3 words instead of 4.
    • Added logepr and cvtri.
    • Fixed cmpr and cmprl - they were comparing garbage instead of the correct registers.
    • Added disassembly for movrl.
    • Added scanbit.
    • Rewrote flushreg, it was *totally* wrong before. HOTD now runs, among others.
    • Added hack to divo so divide by zero doesn't crash MAME (some games read back 0 from the not-yet-existing DSP and do this).
    • More disassembler improvements.
    • Fixed some errors in interrupt handling. Solves corrupt graphics in fvipers and crashes in fvipers, schamp, and dynamcop.
    • Added REMR opcode.
  • R. Belmont updated the SegaIC24: add 32-bit access methods for char and tile RAM.
  • Barry Rodewald made some INP changes: Basically, reading/writing analog port data every single time interpolate_analog_port() isn't a good idea, especially since it's called every time readinputport() is. I've just moved the analogue port reading/writing into the for loop, so analogue ports are only read/written if the port is actually is analogue.
  • smf made a ZN1/ZN2 big endian fix

Game Support

New clones added

New games marked as GAME_NOT_WORKING