MAME 0.113u2

From MAMEDEV Wiki
Revision as of 12:16, 3 May 2007 by Georg (talk | contribs) (formatting, +category)

Release Date

MAME 0.113u2 was released on 15 March 2007.


Contributors

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


Significant Contributions

Zsolt Vasvari updated a number of Sega games to use the new video timing code. He also updated the NeoGeo, Gridlee, and Bally/Sente drivers to the new video timing code and raw screen parameters. Voodoo-based games were updated to use the new video timing code and newer MAME timers. He 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. Updated Starfire driver to use video timing from schematics. Additionally, he contributed some more 8080bw fixes:

  • 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.

Pierpaolo Prazzoli added very preliminary SSP1610 CPU core.

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. He also created a UTF-8 wrapper for the Win32 API GetModuleFileName().

Ville Linde made several updates to the Firebeat driver:

  • Fixed the hardware error in Keyboardmania 2nd mix
  • Added iButton for Keyboardmania
  • Hooked up inputs for Pop'n Music 7

Stefan Jokisch submitted a major cleanup/rewrite of the Ultra Tank driver. Additionally, he offered an update to Sprint 4. 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.

Curt Coder fixed cdp1869 double width mode (for MESS).

David Haywood removed stupid sprite hack from Riddle of Pythagoras.

Aaron Giles renamed mame_file_error to file_error, since it is used throughout the code including the utilities. He also added stronger priority boosting when sleeping on Windows in the hopes of getting more consistent frame rates. Added remaining Unicode characters up to 0100h in the built-in font. 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. Changed the Windows OSD work code to only allocate events for items when necessary, in order to conserve system resources. Changed refresh and VBLANK timing parameters throughout the system to be specified in subseconds_t instead of as floating point frequencies. Updated video timing in the Midway V-unit driver. Changed gaelco3d driver to use osd_work_items for rendering, allowing multi-CPU systems to shift most of the rendering burden to a second CPU. Moved support for the many command-line options into the core. Cleaned up the Food Fight driver, giving it complete memory maps, finished implementing sprite/playfield priorities, and corrected timing - sort of. Cleaned up 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. Changed throttling behavior to only throttle on non-skipped frames. This should give a little better performance on games where frameskipping is necessary. Added 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.

Added 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. Changed 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