MAME 0.106u3 was released on 1 June 2006.
The known contributors for this version are, in alphabetical order:
The known contributions for this version are, in the order specified in the whatsnew:
- Roberto Fresca made more fixes/improvements to jalmah.c DIP switches:
- Added flip screen DIP switch.
- Daireika, urashima & mjzoomin:
- Added flip screen DIP switch.
- Fixed test/service DIP switch.
- Fixed complete coinage.
- Lee Mitchell added save state support to the 1942, 1943 and 1945kiii drivers.
- Nathan Woods fixed blitters to work with 15-bit direct RGB modes.
- Nathan Woods refactored the resource tracking code, auto_malloc(), auto_strdup() etc into a separate module, restrack.c.
- Lawrence Gold moved large stack buffers into heap buffers to work better on systems with small stacks.
- Hobbes@Play fixed a subtle auditing issue when both parents and clones had NO_DUMP ROMs in their manifests.
- AtariAce tweaked the MSVC compiler support:
- Removed _MSC_VER specific #pragmas in nec.c
- Removed _MSC_VER specific #include <malloc.h> in winprefix.h
- Changed makefile to bootstrap vconv.exe with cl instead of gcc
- Changed calls to lib to use link /lib instead
- Updated vconv to only use /arch:SSE2 for VC71 and later
- Cleaned up the profiler code in winmain.c
- Removed the direct dependency of MAME on shell32 has been
- Tweaked a couple of preprocessor definitions so we compile as far back as MSVC 5.0
- Brian Troha, Guru, and Yasuhiro Ogawa commited massive DIP switch updates to the following drivers: actfancr, aliens, angelkds, argus, asuka, bwing, compgolf, cop01, dblewing, dec8, dogfgt, dooyong, fuukifg2, homedata, jcross, kaneko16, m92, mainevt, megasys1, metro, ms32, nmk16, paradise, seta, seta2, shisen, snk, ssv, system1, taito_b, taito_f2, taito_l, tecmo, thedeep, thepit, ultraman.
- Aaron Giles added code in the debug build to put random data in allocated memory.
- Aaron Giles removed remaining chunks of x86 assembly code, as well as references to NASM in the makefiles.
- Aaron Giles rewrote the options parsing code to be more flexible and generic. A new core source file options.c provides the ability to add and maintain a database of key/value pairs, which can be queried at runtime. Reconnected all existing frontend options through this code. Bounds checking on options for the old renderer is pretty loose, and several more complicated options have been disconnected as a result. If you are still running with the old renderer, be careful.
- Aaron Giles reorganized fronthlp.c to be one step closer to universal. One more layer of abstraction and hopefully it will be able to move up into the core.
- Aaron Giles added new options to control multiple screens in the new renderer:
- numscreens specifies how many windows to create
- screen0/screen1/... specifies the name of the screen for each window
- resolution0/resolution1/... specifies resolution for each window
- aspect0/aspect1/... specifies aspect ratio for each screen
- view0/view1/... specifies starting view for each screen
- Aaron Giles deprecated osd_skip_this_frame() with the new renderer. osd_update() now returns TRUE if it wants to skip the following frame.
- Aaron Giles added fixes to the new rendering system:
- Enabled new renderer by default
- Fixed crash at startup due to uninitialized memory
- Fixed crash at shutdown due to incorrect shutdown order
- Fixed rendering of 15-bit direct RGB games
- Fixed weird frameskipping issues
- Fixed off-by-one error on visible area
- Added proper clipping of quad primitives
- Optimized the clearing step to avoid redundant drawing
- Brought software-only case up to support all major blending types
- Added support for -filter option
- Reconnected snapshots, though they are unrotated and screen 0 only
- Fixed several UI problems with new video options menu
- More strongly defined the blending modes to produce correct effects
- Added a flag to indicate textures that are of screen bitmaps
New games added or promoted from NOT_WORKING status
New clones added