Release Date

MAME 0.113u2 was released on 15 March 2007.


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:

  • Zsolt Vasvari updated a number of Sega games to use the new video timing code.
  • Nathan Woods created a utility call win_is_gui_application() to determine if the current process is a console or a non-console application. Added a call to direct error output to message boxes if MAME is running as a windows application (such as MAME32). This will allow MAME32 failures to be reported to the user rather than silently fail.
  • Zsolt Vasvari updated the NeoGeo driver to the new video timing code and raw screen parameters.
  • Ville Linde updated the Firebeat driver:
    • Fixed the hardware error in Keyboardmania 2nd mix
    • Added iButton for Keyboardmania
    • Hooked up inputs for Pop'n Music 7
  • Zsolt Vasvari updated the Gridlee and Bally/Sente driver to use new video timing code and raw screen parameters.
  • Nathan Woods created a UTF-8 wrapper for the Win32 API GetModuleFileName().
  • Zsolt Vasvari updated the Voodoo-based games to use the new video timing code and newer MAME timers.
  • Stefan Jokisch committed a cleanup/rewrite of the Ultra Tank driver.
  • Stefan Jokisch updated the Sprint 4 driver. This fixes the gear shift levers which were broken with a recent previous change, and improves a few other bits.
  • Derrick Renaud added back joystick deadzone handling behind a compile-time define as a pattern for other OSD ports.
  • Zsolt Vasvari implemented the mw8080bw interrupt generation more to how the real hardware works (equivalent result as before). Added detailed description of the video timing and the interrupt generation systems.
  • Curt Coder fixed the cdp1869 double width mode (for MESS).
  • David Haywood removed the stupid sprite hack from Riddle of Pythagoras.
  • Zsolt Vasvari updated the Starfire driver to use video timing from schematics.
  • Zsolt Vasvari fixed some more issues in the 8080bw driver:
    • fixed Lupin III crash due to invalid sample.
    • added video timing from mw8080bw. This caused the visible areas of most games to change, so they will fail regression.
    • Shuttle Invaders display is shifted off screen now – but the PCB notes confirm that it’s a different hardware, so it will need its own driver anyhow.
    • created a new file for MB14241, which is the shifter IC used by Invaders hardware games.
  • Aaron Giles renamed mame_file_error to file_error, since it is used throughout the code including the utilities.
  • Aaron Giles added stronger priority boosting when sleeping on Windows in the hopes of getting more consistent frame rates.
  • Aaron Giles added remaining Unicode characters up to 0100h in the built-in font.
  • Aaron Giles added a 'flags' parameter to osd_work_item_queue() and defined one new flag: WORK_ITEM_FLAG_AUTO_RELEASE, which means that the work item should be automatically released when completed.
  • Aaron Giles changed the Windows OSD work code to only allocate events for items when necessary, in order to conserve system resources.
  • Aaron Giles changed the refresh and VBLANK timing parameters throughout the system to be specified in subseconds_t instead of as floating point frequencies.
  • Aaron Giles updated the video timing in the Midway V-unit driver.
  • Aaron Giles changed the gaelco3d driver to use osd_work_items for rendering, allowing multi-CPU systems to shift most of the rendering burden to a second CPU.
  • Aaron Giles moved support for the following options into the core:
    • -state <x>
    • -autosave
    • -playback <file>
    • -record <file>
    • -mngwrite <file>
    • -wavwrite <file>
    • -rotate
    • -ror
    • -rol
    • -autoror
    • -autorol
    • -flipx
    • -flipy
    • -artwork_crop
    • -use_backdrops
    • -use_overlays
    • -use_bezels
    • -brightness <x>
    • -contrast <x>
    • -gamma <x>
    • -pause_brightness <x>
    • -antialias
    • -beam <x>
    • -flicker <x>
    • -sound
    • -samples
    • -volume <x>
    • -ctrlr
    • -log
    • -debug
    • -debugscript <file>
    • -bios <x>
    • -cheat
    • -skip_gameinfo
  • Aaron Giles cleaned up the Food Fight driver, giving it complete memory maps, finished implementing sprite/playfield priorities, and corrected timing - sort of.
  • Aaron Giles cleaned up the initialization paths in mame.c. Tried to organize things a bit more logically. Removed a number of return codes in favor of more descriptive fatalerror messages.
  • Aaron Giles changed the throttling behavior to only throttle on non-skipped frames. This should give a little better performance on games where frameskipping is necessary.
  • Aaron Giles added the srcclean tool to the tools directory. This is the tool that is run over the source before each release to do some minor code tidying.
  • Aaron Giles added a new driver flag VIDEO_SELF_RENDER which indicates that the driver will talk to the renderer on its own in its VIDEO_UPDATE callback. Added the flag to all the laserdisc game drivers. Changed the logic in the core video to only empty screen containers when doing the final render, rather than emptying them at the start of each frame.
  • Aaron Giles changed the pause behavior so that on non-debug builds, we simply keep the most recent list of primitives and re-render that. Debug builds keep the current default behavior which is to run the VIDEO_UPDATE code each frame even while paused in order to help identify issues in the emulation.

Game Support

Clones added

New games marked as GAME_NOT_WORKING