Release Date

MAME 0.142u5 was released on 6 Juny 2011.


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:

  • Ryan Holtz and Ashura-X provided an internal HLSL cleanup - removed aux texcoords, restored software vertex processing due to low-end cards not doing hardware vertex processing, removed unnecessary tristrip->trilist splitting. Restores D3D functionality on integrated chipsets and marginal cards.
  • smf converted PlayStation GPU to a device.
  • Tafoid added PORT_NAME to buttons to better illustrate actual use in Atari System 1 and Atari G1 drivers.
  • Tom Clayton updated inptport.c - Keyboard chars initialization fix.
  • O. Galibert updated konicdev: Turned the 053250 into a modern device.
  • Angelo Salese provided more accurate pixel clocks for Sega Saturn / ST-V.
  • Angelo Salese moved SCSP to main irq function into an external write line function, fixes sound regression in Groove on Fight and Intro Don Don.
  • Angelo Salese fixed an ST-V window effect bug when it's in double interlace mode, fixes a graphic bug with Virtua Mahjong.
  • Oliver Stoneberg fixed Sega Saturn / ST-V start-up crash that was happening on some ends.
  • ElBarto updated megatech.c: added some verified labels.
  • smf made PlayStation GPU split 4 point polygons into triangles.
  • f205v provided a documentation update for Naomi.
  • Lord Nightmare and Neill Corlett updated the TMS52xx core: Minor updates to the comments and the disabled-by-default pulse excitation code to better match how hardware would probably work.
  • Ryan Holtz and Bat Country Entertainment provided HLSL updates:
    • Switched to point-sampling through most of the shader chain to avoid non-intentional pixel smearing.
    • Corrected alignment and scaling on the shadow mask and scanlines; dramatically reduces rainbow banding at non-oversampled resolutions.
  • Angelo Salese fixed a rather silly bug with SCU DSP execute flag.
  • Angelo Salese moved SMPC intback command inside a timer, removes a kludge for SMPC mask irq.
  • Lord Nightmare changed name of sn76489 variant used in Sega Master System and Megadrive/Genesis from SMSIII to the more technically accurate SEGAPSG, as the PSG in question was not only used on the mark 3 units.
  • Lord Nightmare switched SEGA System E to use the SEGAPSG sn764xx variant, as it uses two SEGA 315-5124 VDPs which have the SEGAPSG integrated. Should slightly improve sound.
  • Carl updated the i286 core - enabling 287 emulation by trapping when needed.
  • Carl updated idectrl - Clears error status on driver initialization.
  • Curt Coder added HD6345 CRTC-II variant to mc6845.c.
  • Carl updated idectrl - implemented verify no retry command.
  • Carl update the i86 core - Fixed imul instruction.
  • Aaron Giles provided a low-level input upgrade. Classes now exist for input_codes, input_items, input_devices, and input_seqs. Also created an input_manager class to hold machine-global state and made it accessible via machine.input(). Expanded the device index range (0-255, up from 0-16), and the OSD can now specify the device index explicitly if they can better keep the indexes from varying run-to-run.
  • Ryan Holtz, Bat Country Entertainment, austere and SoltanGris42 provided HLSL updates:
    • Added the ability to render screenshots at arbitrary resolutions.
    • Added the ability to record AVI videos (albeit with no audio) at arbitrary resolutions.
    • Added a 43-tap-wide FIR-based NTSC filter with tunable Y, I and Q frequency response.
    • Updated scanlines to have a user-tunable pixel-height ratio in addition to the current screen-height ratio.
    • Fixed a VRAM leak that was causing many dynamic-resolution drivers to run out of memory mid-run.
  • Carl implemented IRQ callbacks for the mc146818 RTC.
  • O. Galibert updated the memory system: Store legacy object and handler together in the same structure.
  • O. Galibert updated the memory system: Pass the legacy object/handler as a set_delegate parameter.
  • O. Galibert updated the memory system: Merge width-conversion functions together from the same source width.
  • O. Galibert updated the memory system: Build a structure with all possible delegate sizes.
  • O. Galibert updated the memory system: Separate delegates for the main access and the subaccesses.
  • O. Galibert updated the memory system: Split the subaccesses delegation information per-slot.
  • O. Galibert updated the memory system: Make the memdump file include a description of every subunit.
  • O. Galibert updated the memory system: Add utility methods to clean up colliding subunit masks and testing if any are remaining.
  • O. Galibert updated the memory system: Combine the map_range and handler_read/write() operations into one.
  • O. Galibert updated the memory system: Proxy the handler entry access when adding handlers.
  • O. Galibert updated the memory system: Tuck the unitmask into the proxy.
  • O. Galibert updated the memory system: Split the map_range function into a fixed entry mapping one and a dynamically allocating entry one.
  • O. Galibert updated the memory system: Make the proxy manage a list of handlers instead of a unique one.
  • O. Galibert updated the memory system: Add a handler copy function which works on subunits-only handlers.
  • O. Galibert updated the memory system: Finally allow different handlers on different subunits of the same address.
  • O. Galibert updated the memory system: Implement depopulate_unused().
  • Angelo Salese added SKIT_F0 opcode to the uPD7801/uPD7810 CPU core.
  • Alex Jackson updated the nec disassembler - Only display "byte/word ptr" when it's actually needed to resolve ambiguity (same as the i386 disassembler).
  • RetroRepair added ROM dump from motor drive board for Sega Touring Car Championship.
  • MamePlus Team, Mamesick and Fabio Priuli updated emuopts: added confirm_quit option (defaults to off). when on, pressing ESC you are prompted with a 'confirm quit' screen rather than directly quit emulation.
  • Alex Jackson updated the i86 core: fix initial CS on reset.
  • O. Galibert updated the memory system: Change the gc into a refcounter, for speed reasons.
  • Aaron Giles fixed inverted check on anonymous timers prior to saving state. Also fixed bug where we fail to ignore the permanent non-expiring anonymous timer. Added code to log timers, and we now log them at each save attempt as well as at restore time. Should fix most recent save state releated regressions.
  • Johnboy started to work on Neogeo ROM naming, mostly removal of .bin extension in favour of chiplabel.socketlabel convention.
  • J. Wallace added echo emulation to the OkiM6376 sound chip.

Game Support

New games added or promoted from NOT_WORKING status

New clones added

New games marked as GAME_NOT_WORKING