Release Date

MAME 0.133u3 was released on 20 August 2009.


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:

  • Yasuhiro Ogawa provided further ROM name fixes and driver name changes:
    • Renamed digdugb to digdug1 (it's a rev1, not a bootleg).
    • Renamed digduga1 to digdugat1.
  • Angelo Salese provided SNES updates:
    • Fixed direct color gfxs in mode 7.
    • Fixed direct color gfxs in mode ¾.
    • Fixed a vram out-of-bounds bug.
    • Fixed a blending bug involving main/sub color maths.
    • Fixed interlace mode gfxs when not in gfx modes 5/6.
    • Fixed a GDMA boundary bug.
    • Made the OAM address reset more accurate.
    • Fixed HDMA mid-frame inits.
    • Added clip colors to black window function.
    • Converted color clipping to use struct entries.
    • Made dynamic H resolutions to be called only at vblank start and and fixed gfx mode switching 1/5 and 5/1.
    • Made the gfx mode switches more accurate.
    • Corrected a bunch of SPC registers behaviour.
    • Improved joypad read/write handling and fixed a serial port quirk.
    • Fixed serial port for player 2 as well.
    • Improved cart mode 20 reserved access behaviour.
    • Added OBJ interlace support.
  • Angelo Salese updated the ST-V driver: Improved timer 1 irq behaviour. Pebble Beach still have issues with gameplay start though (writes lots of garbage for whatever reason, really worked for random chances before).
  • Brian Troha corrected name from Devil's Island to Devil Island. Filled in year for Fruit Bonus 2006 SE & Bug Fever.
  • couriersud provided a discrete sound update:
    • Removed global variable discrete_current_context.
    • discrete_info is now passed instead of device, we may get device by using disc_info->device.
    • Added DISCRETE_IMPORT(*block): imports another discrete block.
    • Added DISCRETE_REMOVE(node1, node2): removes a range of nodes.
    • Added DISCRETE_REPLACE: next node replaces existing node, thus preserving run order.
    • Added DISCRETE_NOP(node): does nothing, to be replaced.
    • Added a prescanning stage to build final block list after execution of the above.
    • The additions provide an easy way to document subtle difference between boards.
    • Please see audio/galaxian.c for an example.
  • couriersud provided Galaxian sound updates:
    • Moon Cresta and Galaxian now have their respective schematics emulated, i.e. Moon Cresta has a slightly different mixing stage.
    • Cleaned up driver, added some section titles and comments, removed old code.
    • Removed emu_timer, this was causing a stream of stream_updates only updating 3 samples.
    • Replaced with discrete timer module DSS_TIMER now.
    • Use DISCRETE_NOTE for pitch generation; it is more accurate (within the one ms where the pitch changes :-) ) and saves a node.
    • Use DISCRETE_BITS_DECODE and save 2 nodes.
  • Eke-Eke and Nemesis provided YM2612/3834 updates:
    • Split YM2612/3834 to a separate file to avoid disturbing other OPN chips.
    • SSG-EG, envelope, LFO, and CSM behavior all improved to better match tested behavior on real YM2612 chips.
  • couriersud provided DSS_COUNTER updates:
    • Clock_node no longer needs to be static for DISC_CLK_IS_FREQ.
    • Rewrote inc/dec logic to avoid loop.
  • couriersud added DISCRETE_BIT(S)_DECODE:
    • Decodes individual bits from input values.
    • Updated drivers which had macro DISCRETE_BITSET (which was a bit misleading).
    • This should be slightly faster than using DISCRETE_TRANSROM.
  • couriersud provided discrete sound enhancements:
    • Put some life into RCDISC5 enable mode. This now acts as a switch between R and C. Capacitor voltage will be preserved if disabled.
    • Made galaxian use the above. Saved 2 nodes and increased accuracy.
    • Added DISC_LFSR_FLAG_OUTPUT_SR_SN1 flag to shift register noise generator. This will output the value of the shift register to sub-node 1. This is needed for future bzone discrete sound emulation. BTW: RCDISC5 will be used as well.
    • Left a note on RCDISC3 on what is needed to be implemented for bzone.
    • Optimized the LFSR a bit. LFSRs running at high frequency (> sample_freq) should benefit.
  • Charles MacDonald and Lord Nightmare verified and fixed deniam.c M68K, Z80, YM3812 and OKIM6295 clocks and OKI pin 7 for logic pro and logic pro 2. Fixed visible area on logic pro and logic pro 2 to match real PCBs. Add comment about what ym3812 clone is used. Add note about missing graphical effect in logic pro (screen dim on coin insert) and marked as IMPERFECT_GRAPHICS. Add note about 4 pixels at left edge of screen.
  • Aaron Giles made an attempt to define an I64FMT string that can be used for printf'ing 64-bit integers. This is defined to be "I64" on MSVC and recent mingw compilers, and "ll" for all others. Updated all instances of 64-bit prints to use the new macro.
  • gregf and hap added spacwalk extended time setting and DIP locations.
  • Aaron Giles merged 5110intf into tms5110, and 5220intf into tms5220.
  • hap provided Z80 changes:
    • Fixed X/Y flags in CCF/SCF/BIT, ZEXALL is happy now.
    • Simplified DAA, renamed MEMPTR (3.8) to WZ (same temp register as the officially named WZ in the 8080), added TODO.
  • hap provided 8085 changes:
    • Fixed cycle deduction on unconditional CALL / RET, it took about half too many cycles.
    • Added cycle tables and cleaned up source layout. This was done very carefully, it should be errorfree.
    • Removed HLT cycle eating (earlier, HLT after EI could theoretically fail).
    • Fixed parity flag on add/sub/cmp. Bug was caused by z80 overflow detection accidentally left in.
    • Renamed temp register XX to official name WZ.
    • Renamed flags from Z80 style S Z Y H X V N C to S Z X5 H X3 P V C and fixed X5 / V flags where accidentally broken due to flag names confusion.
  • Aaron Giles added rgbaint_shr operations to the rgbutils. rgbvmx needs to be updated. (Nobody is using them yet.)
  • kanikani provided taito_z DIPSW fixes.
  • Wilbert Pol added support TMS1000 family models TMS1000/1070/1100/1200/1270/1300. Added support for configuration of output PLA to the tms0980/tms1000 interface.
  • Roberto Lavarone implemented transparent mode access for some 6845 model sy6845.
  • Corrado Tomaselli verified clocks + Vsyncs on Downtown, Caliber 50 and Xmen (2-4 players).
  • Corrado Tomaselli changed to mono both Downtown and Caliber 50: these pcbs don't have a stereo connector.
  • Corrado Tomaselli verified and added correct xtals values for cps1 boards. Added correct xtal and divisor for OKI6295 taken from Forgotten Worlds schematics.
  • David Haywood decrypted several tables from the B-Rap Boys ROM.

Game Support

New games added or promoted from NOT_WORKING status

New clones added

New games marked as GAME_NOT_WORKING