MAME 0.118u5 was released on 6 September 2007.
The known contributors for this version are, in alphabetical order:
The known contributions for this version are, in the order specified in the whatsnew:
- Ernesto Corvi updated memconv.h to convert from basically any to any widths (8/16/32/64), on both little and big endian. Also added macros to create the stubs for the most commonly used mappings, both in the 1:1 fashion, or the LSB/MSB/LSW/MSW style.
- Ernesto Corvi contributed CuboCD32/Amiga updates:
- Finished implementing the CDROM controller, so now the games boot
- Moved the entire Akiko code to machine/cubocd32.c to make things a little more easier to work with
- Added CDDA audio support to the CDROM controller and driver
- Systems with the AGA chipset no longer connect bit 0 of the CIA that was previously connected to the Overlay pin not connected
- Made BLTDDAT return it's value. This is a readable register which we were not handling.
- Initialized the SERDATR register upon reset to reflect that the transfer buffer/shift reg is empty.
- MASH fixed missing a PLD region in -listxml.
- Atari Ace changed all comparison for CPU and sound chip types to compare against CPU_DUMMY or SOUND_DUMMY instead of 0. Also updated usages of sndti_to_sndnum() so that they use sndti_exists() where appropriate.
- Nathan Woods removed the CHD interface structure. CHDs now rely on the corefile routines to perform file I/O. Updated the rest of the system to handle this reality. A side-effect is that "split" CHDs, which never got much play, have now been deprecated.
- Aaron Giles added a new core library utility module palette.c for managing palettes. Renamed emulator-specific palette code to emupal.c and restructured to live on top of the core library code.
- Aaron Giles added support for attaching palettes to bitmaps in the core. Removed support for the 16-pixel bitmap "safety" zone by default, since most drivers do not need it. Added new function bitmap_alloc_slop() which supports creating bitmaps with caller-specified slop values.
- Aaron Giles removed the gfx_element.colortable element and replaced it with a new element color_base which specifies the global color offset. This breaks an awkward dependency between the palette and graphics code, and removes a lot of odd pointer arithmetic in the system.
- Aaron Giles tagged Machine->pens, Machine->colortable, and Machine->remapped_colortable as const to prevent their abuse. Fixed several abusing drivers, and tagged the remainder for future cleanup.
- Aaron Giles added new colortable management functions in emupal.c. These functions can be used to manage a colortable on top of the core palette in cases where TRANSPARENCY_COLOR is currently used (essentially mapping to a pen mask for TRANSPARENCY_PENS). Updated pacman, mappy, toypop, and several other drivers to use the new functions.
- Aaron Giles vastly simplified the rendering code in docastle.
- Aaron Giles fixed remaining errors and warnings when building under gcc 4.2.1.
- Aaron Giles added new function render_target_set_max_update_rate() which allows the OSD layer to inform MAME of the target's refresh rate (or 0 if there is no maximum). This is used to allow for the dynamic speed adjustment parameter below.
- Aaron Giles added new parameter -refreshspeed (-rs for short) which dynamically adjusts the -speed parameter to keep the effective refresh rate below that of the lowest screen refresh rate.
New games added or promoted from NOT_WORKING status
New clones added
New games marked as GAME_NOT_WORKING