MAME 0.119u1 was released on 22 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:
- David Haywood fixed crash/display corruption in System C2 and System 18 games.
- Ernesto Corvi synchronized the MB86233 core with ElSemi's, fixing a few bugs along the way.
- Ernesto Corvi fixed SCALER, SCALERL, and ATANRL opcodes in the i960 core.
- Roberto Fresca updated the gdrawpkr driver:
- Added sound support to "El Grande - 5 Card Draw".
- All CPU and sound clocks derived from #defined crystal values.
- Some minor input cleanups.
- R. Belmont contributed ARM7 core fixes:
- Fixed unaligned reads/writes (again)
- Fixed minimum instruction bytes to account for Thumb mode
- Fixed missing dependency in ARM7 build rule
- Fixed Thumb mode ASR instruction
- Ville Linde added newly-dumped BIOS ROMs and preliminary emulation of the SPU board in Pop'n Music 7 to the Firebeat driver.
- Brian Troha cleaned up input ports in the taito_z.c driver.
- Atari Ace updated the sources to support removing -wno-unused-function. Dead code has been identified with #ifdef UNUSED_FUNCTION to allow for further analysis and potential future removal.
- Wilbert Pol fixed a number of issues in the h6280 CPU core:
- Taking of interrupts is delayed to respect a pending instruction already in the instruction pipeline.
- Added 1 cycle for decimal mode ADC and SBC instructions.
- Changed cycle counts for CSH and CSL instructions to 3.
- Added T flag support to the SBC instruction.
- Fixed ADC T flag to set the Z flag based on the value read.
- Added 3 cycle penalty to ADC, AND, EOR, ORA, and SBC instructions when the T flag is set.
- Fixed cycle count and support for 65536 byte blocks for the TAI, TDD, TIA, TII, and TIN instructions.
- Fixed RDWORD macro in the disassembler.
- Fixed setting of N and V flags in the TST instructions.
- Removed unneeded debug_mmr code.
- Fixed TSB and TRB instructions.
- Added 1 delay when accessing the VDC or VCE areas.
- Implemented low and high speed cpu modes.
- Tomasz Slanina moved the srmp5 (Super Real Mahjong P5) to separate driver (from st0016.c). Preliminary video hw emulation. Not playable, no sound.
- stephh fixed DIP switches in the mario driver.
- Phil Stroffolino contributed a major Namco System 21 update:
- corrections to eprom handling (affects Namco System2 as well)
- scroll fix for sprite emulation in namcoic.c
- working Starblade, Cybersled, Solvalou with full 3d
- graphics should be 100% except for the depth cueing tables, which are internal and need to be reconstructed
- Air Combat is improved, but is locking up in 118s because of incomplete watchdog emulation
- Winning Run hardware is not yet working in this update
- Pierpaolo Prazzoli fixed a regression in undoukai caused by the REGION_CPU1 decoupling from RAM.
- R. Belmont made SCSP fixes:
- Fix writes to the hole in the SCSP address space (0x430 to 0x5ff) to not trash global registers
- Fixed SCSP DMA to not read random memory for its' registers
- Mr. Do! added a minimal built-in layout for showing the lamps in Video Pinball.
- Ernesto Corvi and ElSemi contributed a big Model 2 update. List of remaining problems:
- There's still a glitch on the triangle parser somewhere. Noticeable on the Sega logo in motoraid, the selection arrow in dynamcop's player select screen and many other games. It might be the culprit of the road in daytona looking wacky.
- There's a problem with the z clipping. Some tri's close to the camera are clipped before they should. Some others should be clipped but are not, and are blocking the viewport for a frame or two.
- Sub-windows are not implemented yet. Visible on dynacop's mission select, Sega Rally car select, and others.
- Most decal textures flicker on and off between frames. Maybe a z coordinate float resolution issue after projection?
- Textures wrap by default. They should only wrap when the appropriate flag is set only. Not sure what to do when we're not wrapping.
- Pierpaolo Prazzoli made improvements to the Z180 core:
- added the 2 Programmable Reload Timers
- fixed the Internal I/O Registers remapping
- added logical -> physical memory translation
- disabled loops hack
- removed "extra icount"
- changed interrupts handling. Now they're checked as in Z80 core
- simplified RETN and EI opcodes
- fixed PRT interrupts
- cleared both interrupts flip flops when taking any irq
- added _IFF2 = _IFF1; just before _IFF1 = 0; when taking an NMI
- Pierpaolo Prazzoli removed kludge in 20pacgal which is no longer necessary with proper Z180 emulation. Sound now works as well.
- stephh fixed some Dip Switches and added some extra notes to othunder.c driver. Also added some notes to opwolf.c driver.
- David Haywood began moving the MegaTech/MegaPlay drivers over to the new Genesis core code.
- robiza identified a number of additional new opcodes for Risky Challenge/Gussun.
- Aaron Giles fixed Voodoo video timing according to the manual, including blanking periods and vsync interrupts. This makes Carnevil and some other games run once again at their proper speed.
- Aaron Giles updated Voodoo drawing code to track changes to the front buffer and allow skipping unrendered frames for more even framerates.
- Aaron Giles Fixed hang when attempting to move windows with the debugger active and multithreading enabled.
- Aaron Giles Added preliminary attempt at a new x64 dynamic recompiler for the MIPS 3/4 CPUs. The current version works enough to run a few basic games (kinst, carnevil), but many others fail. Furthermore, this version is already being supplanted by a more advanced version that does register allocation and constant folding. For now it is disabled by default.
- Aaron Giles Fixed a few more 64-bit disassembler problems in i386dasm.c. Also fixed several 64-bit errors in the code generators in x86emit.h.
- Aaron Giles Added support in the debugger memory view for 8-byte chunk sizes. Fixed long-standing bug that failed to show unmapped logical addresses as asterisks. Also added new menu items to the Windows debugger to support viewing logical or physical memory.
- Aaron Giles Removed limitation that tilemap tile widths must be divisible by 2, except in the 4bpp case, where an assert now catches this case.
- Aaron Giles Experimentally changed full screen behavior when using Direct3D so that if -switchres is NOT enabled, then we don't create a fullscreen Direct3D device. This minimizes large graphics card transitions (in particular it does not disable glass in Vista) when you go full screen. If you want the old behavior, run with -switchres and specify a -resolution parameter equal to your desktop screen size.
New games added or promoted from NOT_WORKING status
New clones added
New games marked as GAME_NOT_WORKING