Release Date

MAME 0.69 was released on 31 May 2003.


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:

  • Bryan McPhail fixed a problem with missing 'returns' in the PIC CPU core
  • Nathan Woods made various changes:
    • Minor change to the MESS specific code
    • DriverDataCompareFunc() is now declared with CLIB_DECL
    • Removed strupr() in favor a manual implementation, because it is non-ANSI
    • Minor tweaks within #ifdef MESS code
    • UI code for discrete sound engine now encapsulated within '#if HAS_DISCRETE'
    • Changed some #ifdef MESS specific strings
    • Fixed a potential crash that could occur if the last line in an INI file was not terminated with a CRLF
    • Added osd_rc_write(); which does the reverse as osd_rc_read() (this is only used in the MESS Win32 port)
    • New mame_fputs(), mame_vfprintf() and mame_fprintf() functions (used in osd_rc_write()) above
    • Removed some no longer relevant MESS globals
    • Unicode enabled (i.e. - compiles under #define UNICODE)
    • Added corresponding _msize implementation (this fixes a benign but very subtle bug when debugging with VC)
    • Added ide_controller_init_custom() (used by MESS)
    • Removed private prototypes of crc32(), in favor of #include <zlib.h>
    • Minor tweaks within #ifdef MESS
    • Put #ifndef _STDINT_H around typedefs for uint32_t and uint8_t (apparently these are already defined on the Mac)
    • Put CLIB_DECL in front of a few declarations
  • Andrea Mazzoleni contributed various changes
    • Substitutes in the -listinfo output the strings "nodump" and "baddump" with "flags nodump" and "flags baddump".
    • Substitutes the _HUGE macro with the standard DBL_MAX value
    • Adds a test for the GNU C compiler to skip some POWERPC inline assembler not compatible with the GNU assembler format.
    • Fixes some macros with arguments not used. Otherwise it doesn't compile with gcc 2.95.3.
  • BUT fixed the rom auditing for cases where no good dump is known but a file is found
  • Leon van Rooij contributed improvements and Bug Fixes for the Direct 3D Blitting:
    • -effect same as 0.68 and earlier, no effect on d3d module
    • -zoom or -z (default is 2) select zoom level, works for the ddraw code as well find the smallest display mode that will fit an n times zoomed game image (only used when no display mode is explicitly forced, the d3d code takes the aspect ratio into account, ddraw behaviour is unchanged)
    • -cleanstretch or -cs only strecth to integer ratios, works for the ddraw code as well
    • -d3dfilter or -d3dflt select filtering algorithm (0 is none, 1 bi-linear, 2 flat bi-cubic, 3 gaussian bicubic, 4 anisotropic)
    • -d3deffect behaves exactly the same as -effect, but only affects the d3d module. You can use all -effect parameters, so none, scan25, scan50, scan75, rgb16, rgb6, rgb4, rgb3, and sharp work, they are identical at 2x zoom scan75v and rgb4v also work, and are identical to scan75 adn rgb4 (as the d3d effects are automatically rotated already) Additionally, all effects presets and auto work none affects only the presets now. The presets are renamed, in addition to the -effect presets, they are now:
      • rgbminmask,
      • dotmedmask,
      • rgbmedmask,
      • rgbmicro
      • rgbtiny
      • aperturegrille,
      • dotmedbright,
      • rgbmaxbright
    • -d3dscan scanline intensity, 100 is off
    • -d3dfeedback feedback intensity, 0 is off
    • -d3dsaturate oversaturation intensity, 0 is off
    • -d3dprescale AKA sharp.
    • -d3dcustom custom preset, as before (anyone who wants to customise presets can, everybody else should ignore it)
    • -d3dexpert Normal users should not use this one, basically if you can't read the source to figure out what it does, you have no business using it <g>. Behaves as -effect did in the previous updates, plus some new stuff; disable disables all effects, prescale lets you control prescale explicitly, pixelcounter changes the scanline texture (use mame whatever -z 4 -d3d -cs -flt 0 -d3dexpert pixelcounter), norotate disables rotating effects.
    • It has it's own ini section and it handles priorities itself to ensure correct behaviour. For custom presets, patterns are no longer loaded from the effects directory, the name should just include the path.
    • There are warning messages when you do e.g. -nod3d -d3dscan50, or -d3d -effect sharp (although the latter will work as it has up until 0.68). It tests all hardware capabilities it should (as far as I'm aware, at least).
    • It won't chop textures in 256x256 blocks for old Voodoo cards.
    • -texture_management is now enabled by default as leaving it off seems to have worse consequences for more people than having it on. I haven't added a workaround for cards that can't render to textures yet, other than that, any possible typos, etc. or any suggestions people may have, it should be good for 0.69.
    • Apparently some videocards don't like the DX7 pageflip in combination with a triple buffer. (behaviour when triple buffering is unchanged from 0.67, that goes for the d3d code as well as the ddraw code).
  • Added the USA 2-Slot bios to the NeoGeo Driver (recompile to use) also readded line removed by mistake, fixed coinage bug when using USA Bios
  • Added the Asia Bios to the NeoGeo Driver
  • Fujix fixed the demo sound Dipswitch in sotsugyo
  • BUT fixed the infinite lifes DIP switch in qtono2
  • BUT made various fixes and improvements to Chack'n Pop
  • Paul Priest fixed a bug with -crconly which could cause options.debug_width to become corrupt
  • HobbesAtPlay fixed a problem where a NODUMP rom was reported as found even if it didn't exist in the rompaths
  • Uki corrected colors in Progres & added 3rd Button for Aiming
  • David Haywood fixed the length of proms in Main Event (SNK) TESTDRIVER
  • Toby Broyad fixed the merging of Sets in the Shougi TESTDRIVER
  • MameTesters fixed the name of Mach Breakers (was Match Breakers)
  • Aaron Giles fixed the interrupt being triggered on Non-Existant CPU for TaitoSJ games with no MCU
  • Adds the system option "bios". An integer that is valid where: 0 <= n < 15 ROM loading is now modified so that if any of the 4 bits in ROM_BIOSFLAGSMASK of the rom flags are set, it will only be loaded if the value+1 == options.bios
  • NeoGeo has been modified to take advantage of this as follows:
    • 0 - "sp-s2.sp1" - Europe, 1 Slot (also been seen on a 4 slot) (default)
    • 1 - "sp-s.sp1" - Europe, 4 Slot
    • 2 - "usa_2slt.bin" - US, 2 Slot
    • 3 - "sp-e.sp1" - US, 6 Slot (V5?)
    • 4 - "asia-s3.sp1" - Asia S3 Ver 6
    • 5 - "vs-bios.rom" - Japan, Ver 6 VS Bios
    • 6 - "sp-j2.rom" - Japan, Older
    • Note that using a value >6 and <15 will result in NO bios rom being loaded (And a red screen in NeoGeo's case).
  • Brian Troha corrected the filenames for Steel Gunner 2
  • Angelo Salese removed a graphic rom loading kludge in Yamato,which caused a bad gray square when launching missiles(yamato37b9gre);also fixed crashes in clone yamato2.
  • Removed NeoGeo Memory Card Manager RESET / CALL option from UI, this feature is only available on the AES console and should be in Mess (and probably won't be needed at all with a real AES bios)
  • Changed NeoGeo Framerate to 59fps based on Mametesters report about Kof98 Intro Sync. It would be nice if somebody could give a real accurate measurement of this.
  • Jarek Burczynski fixed a FM bug causing bad sounds in maglord and other games which was introduced in the last release
  • Derrick Renaud updated the discrete sound support:
    • Atari Baseball - added video invert (triples/home runs).
    • Avalanche - changed to discrete sounds adding missing top rocks sound (Aud0 trigger). (and yes the game is supposed to sound horrible)
    • Dominos - added 60Hz ac signal (but it does not seem to affect anything).
    • Drag Race - added discrete sounds.
    • Night Driver - added discrete sounds and video invert during crash. Motor/skid sounds are not 100% correct.
    • Sprint 2 - switched player controls so they lined up under the proper score color.
    • Orbit - added discrete sounds.
    • I also fixed a minor bug in src\sound\discrete.h causing DISCRETE_LOGIC_INVERT not to work.
    • And did minor code cleanup to Basketball.
    • Removed GAME_IMPERFECT_SOUND flag from Circus. If correct samples are used then it is ok, like all sample games. (New accurate samples have been posted at twisty's)
  • BUT fixed the 'no stereo' bug in src\sound\discrete.c
  • Luca Elia corrected the colors in Clash Road

Game Support

New Games supported or promoted from GAME_NOT_WORKING status

New clones added