MAME 0.141u3
From MAMEDEV Wiki
Release Date
MAME 0.141u3 was released on 28 February 2011.
Contributors
The known contributors for this version are, in alphabetical order:
- Aaron Giles
- Alex Jackson
- Andreas Naïve
- Andrew Gardner
- Angelo Salese
- Atari Ace
- Barry Rodewald
- Belegdol
- Cah4e3
- Chackn
- Curt Coder
- cgwg
- D. Edwardson
- David Haywood
- destruk
- Deunan Knute
- Dirk Best
- Enik
- f205v
- Fabio Priuli
- Falcone
- gamerfan
- Gerald (COY)
- Gnoppi
- Grull Osgo
- Guru
- Hans Ostermeyer
- hap
- Harmony
- Irongiant
- john666
- Kevin Eshbach
- Lord Nightmare
- Luca Elia
- M. Ponweiser
- M. Viste
- Mariusz Wojcieszek
- Michael Zapf
- Miodrag Milanovic
- O. Galibert
- Paratech
- pSXAuthor
- R. Belmont
- R. Mucciarelli
- ranger_lannier
- Rob Ragon
- Roberto Fresca
- Roberto Malone
- robiza
- Sandro Ronco
- smf
- Smitdogg
- T. Petersen
- Tafoid
- Team Japump
- The Dumping Union
- Tomasz Slanina
- TrevEB
- W. Belk
- Yohji
Specific Contributions
The known contributions for this version are, in the order specified in the whatsnew:
- Angelo Salese rewrote IOX key matrix device implementation, used by Super Real Mahjong Part 2/3.
- Angelo Salese removed ROM patches and added working player 2 inputs in Super Real Mahjong Part 3.
- Belegdol fixed compiling on GCC 4.6 prerelease.
- Alex Jackson added information screen output for any game known to have bad or missing data in order to better inform the user as to the reason their emulation may not work as expected.
- Angelo Salese removed ROM patch in Super Real Mahjong Part 2.
- Angelo Salese cleaned up iox implementation in Speed Attack.
- Angelo Salese Rewrote Speed Attack video routines from scratch, also fixed screen flipping in it.
- Aaron Giles defined new macro ALLOW_SAVE_TYPE which can be used to declare enums as valid save types on a case-by-case basis. Updated the cosmac CPU core to do this for its mode and state enums, which were previously failing.
- Andrew Gardner added a new sound device: Oki MSM9810:
- Added and hooked up volume table.
- Added preliminary ADPCM2 support.
- Added sub-table lookups.
- Added OPT command.
- Implemented on-chip interpolation & status read.
- Implemented PAN command and stereo mixing.
- hap provided destroyr.c driver minor improvements:
- Proper addressmap masks.
- Added 30132-01.k4 rom, duplicate of 30132-01.f4.
- Added version O1 romset, dumped by Siftware.
- Miodrag Milanovic added shortname to devices in order to make ROM loading per device possible.
- O. Galibert updated the ksys573 and Naomi drivers: Device-ified the security flashes and the dallas id chip.
- Lord Nightmare fixed the interpolation coefficient shifts for the tms5xxx chips based on results of simulating the circuit from the patent.
- Aaron Giles turned mame_file into emu_file and is now a class. It is required to pass a core_options object to the constructor, along with a search path. This required pushing either a running_machine or a core_options through some code that wasn't previously ready to handle it. emu_files can be reused over multiple open/close sessions, and a lot of core code cleaned up nicely as things were converted to them.
- Aaron Giles created a file_enumerator class for iterating over files in a searchpath. This replaces the old mame_openpath functions.
- Aaron Giles changed machine->options() to return a reference.
- Aaron Giles removed public nvram_open() and fixed jchan/kaneko16 to stop directly saving NVRAM.
- Aaron Giles removed mame_options() calls; options can only be queried from the running_machine, or by passing them along.
- Aaron Giles added core_options to device_validity_check() so they can be used to validate things.
- R. Belmont updated chdman: experimental incomplete .nrg disc image import.
- Fabio Priuli took the first (small) step towards driver class for megadrive-based drivers
- Barry Rodewald fixed LLDT * reg, LTR and LMSW instructions, and added preliminary implementations of VERR, VERW and LAR in the i386 CPU core.
- David Haywood updated megadriv.c: Rewritten SegaCD/MegaCD emulation.
- David Haywood updated cdrom.h: Added alt lba_to_msf conversion needed by SegaCD/MegaCD.
- pSXAuthor and R. Belmont replaced PSX SPU with a much more complete implementation.
- Atari Ace eliminated global/static variables in a number of Konami/Sega drivers by introducing/using driver_device classes.
- Atari Ace eliminated global/static variables in a aristocr / atlus / bfm / bmc / capcom/ cinemat / dataeast drivers by introducing/using driver_device classes.
- Atari Ace converted atarirle to a device.
- R. Belmont corrected SPU IRQ notification in all drivers. Fixes streaming audio in Simpsons Bowling.
- Angelo Salese implemented address readback position registers in rf5c68 sound core.
- Curt Coder added HD6301 subtype to the M6800 CPU core.
- Curt Coder made the symbols file be deleted if defined when invoking clean target.
- Curt Coder used the common MC68901 device in micro3d.c.
- Roberto Malone, [[Yohji], Smitdogg and The Dumping Union updated salarymc: CD redumped.
- Andrew Gardner updated the sigmab98 driver: added preliminary sound to the Sammy medal games.
- Michael Zapf updated tms9928a.c: Fixed colors in multicolor mode.
- Dirk Best updated the i386 core: Changed READ/WRITEPORT macros to inline functions to properly support aligned vs. unaligned writes. Fixes regressions in MESS for all drivers using the PCI bus and possibly others.
- Miodrag Milanovic made possible to add input ports to device, names are formed as sub tags from parent device tag.
- Andrew Gardner and Lord Nightmare upated the OKI MSM9810 core: Added preliminary ADPCM2 support.
- pSXAuthor, Harmony and R. Belmont updated the PSX driver: added DMA mode used for CD transfers on home system, fixed DMA bug that caused home system to freeze.
- Aaron Giles provided a hash generation and general cleanup. New class hash_collection holds and manages a collection of hashes, and can be built from an internal format string which is stored with each ROM. Also compacted the form of the hash strings used for ROMs, and fixed verification/hashing of non-ZIPped files.
- Fabio Priuli updated snes_snd.c: fixed save state error.
- hap updated circus.c: Improved interrupt handling: circus generates them the same way as ripcord (based on sprite-bg collision), robotbwl doesn't generate interrupts at all.
- Tafoid updated DIPS and Dip Locations based on documents posted by Laschek at KLOV.
- cgwg updated the SDL port: GLSL now works for all pixel formats; fixed memory leak on textures
- Atari Ace eliminated statics/globals in drivers jpm / kaneko / maygay / meadows / merit / metro / midcoin / midw8080 / midway / msx / namco.
- Atari Ace converted dooyong / edevices / eolith / exidy / gaelco / gottlieb / igs / itech / jaleco drivers to driver_device.
- Atari Ace decoupled some entagled drivers:
- Removed unneeded #include lines (gal3.c galaxold.c asic65.c).
- Split part of the driver include into a separate multi-driver include file (audio/exidy.h audio/exidy440.h audio/wiping.h machine/segag80.h).
- Moved code to a new file/include to be referenced in multiple drivers (ms32crpt.* ch opwolf.c rainbow.c).
- Duplicated some code (palette related) between drivers (mainsnk rollrace sslam)
- Moved a driver specific routine to a generic device file (atarimo).
- Cleaned up a few include files (cubocd32 cidelsa metalmx seicross thoop2).
- Tomasz Slanina fixed sound issues in Pollux, Gulf Storm and The Last Day.
- Sandro Ronco updated LH5801 CPU core:
- Added IO_SPACE and updated all access in ME1 memory for use it.
- Implemented interrupts.
- Fixed the flags in the ROL/ROR/SHL/SHR opcodes.
- Fixed decimal add/sub opcodes.
- Barry Rodewald updated the i386 core: Fix for exceptions that require the return address to point to the instruction at fault.
- Aaron Giles fixed disassembler override hook.
- R. Belmont fixed reads for 32-bit handlers on 64-bit CPUs too.
- Roberto Zandona provided Amiga fixes:
- Removed additional 2 cycles, in move operation, for non-Agnus registers.
- Set to #0 the start cycle in the copper operation.
- smf provided PSX updates:
- Fixed DICR handling.
- Removed non existant root counter 3 IRQ.
- Ignore root counter stop when reset is also set.
- Removed custom root counters in Konami 573 driver.
- smf updated the DS2401 device: Fixed timer intervals.
- Angelo Salese corrected the background color in Rougien.
- Hans Ostermeyer provided M680x0 updates:
- Instruction cache emulated on '020 and later.
- Fixed interaction between MMU and bfextu/bfexts/bfins.
- Added fsgldiv, fsglmul, and fscc FPU instructions.
- Fixed fault address in stack frame.
- Fixed supervisor violation bit in MMU status register.
- Add fmovem modes 1 and 3.
- Various other MMU fixes.
- Team Japump fixed ROM name and driver description for blkdrgon.
- O. Galibert made DEVICE_SELF work in ports.
- Lord Nightmare and Enik added specific support for the fact that setting frequency to 0 does not behave as if frequency was set to 0x400 on the Sega-manufactured PSG clone chips, whereas it does on the original TI-made ones. Fixes Sega Master System 'Vigilante' music.
- Miodrag Milanovic modified video update system:
- Screen update function is now per screen device (it was before but was attached to machine driver).
- MCFG_VIDEO_UPDATE -> MCFG_SCREEN_UPDATE
- MCFG_VIDEO_EOF -> MCFG_SCREEN_EOF
- EOF is now executed for all screens, so for all existing it is defined just for one screen. This part will be updated in future.
- Screen update function is now per screen device (it was before but was attached to machine driver).
- David Haywood refactored the CD32 code base to eliminate duplicate code between MAME and MESS.
- Curt Coder added overloaded input_port_read() for reading device owned input ports.
- hap fixed global flipscreen.
- Andreas Naïve, Olivier Galibert, Deunan Knute, Cah4e3 and R. Belmont updated the Naomi driver: implemented live M2/M3 decryption and decompression & removed trojaned data from more games.
- Deunan Knute and R. Belmont updated the Naomi driver: DMA on-the-fly decompression+XOR support.
- Fabio Priuli provided softlist wip code to add more info nodes.
- Luca Elia provided a seta2.c update:
- Horizontal clipping of "tilemap" sprites.
- Shadows emulation.
- Smitdogg and The Dumping Union updated the sigmab98 driver: added sammymdl BIOS and hardware info.
- Mariusz Wojcieszek updated pangofun.c and pcat_dyn.c to use common PC emulation.
- R. Belmont updated the AICA core: Correct slotmon readback. Streaming sounds now advance in e.g. capsnk.
- Atari Ace converted nichibut/nintendo/nix drivers to use a driver_device.
- Aaron Giles fixed attotime max() function to not be a copy of min(). Fixes several regressions in the scheduler after the recent attotime object conversion.
Game Support
New games added or promoted from NOT_WORKING status
- Pye-nage Taikai
- Hae Hae Ka Ka Ka
- Taihou de Doboon
- Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAB)
- Guilty Gear X 1.5
- Tetris Fighters
- Brasil 86
- Brasil 87
- Brasil 89
- Brasil 93
- Reel'N Quake
New clones added
- Whirlwind (LG-3)
- Real Mahjong Gold Yumehai / Super Real Mahjong GOLD part.2 (BET version of Super Real Mahjong Part 3)
- Video Hustler (Dynamo Games)
- Hot Memory (V1.1, Germany)
- Pigskin 621AD (rev 2.0 7/06/90)
- Wild West C.O.W.-Boys of Moo Mesa (ver UA, set 1)
- Bubble Pong Pong (clone of Miss Bubble 2)
- Knights of Valour 2 / Sangoku Senki 2 (ver. 101, 101, 100HK)
- Monopoly (3.01)
- Monopoly (2.51)
- Monopoly (2.33)
- Austin Powers (3.01)
- Austin Powers (3.00)
- Austin Powers (2.01)
- Maverick (Display Rev. 4.00)
- Cut The Cheese (Redemption)
- Cut The Cheese Deluxe (Redemption)
- Night Rider (rev. 21)
- Eight Ball Deluxe (rev. 14)
- Lord Of The Rings, The (9,8,7,401)(En,Sp,Ger,Fr,It)
- Elvis (4.00,3.03,3.02) (En,Sp,It,Fr,Ger)
- Ripley's Believe It or Not! (3.10,3.02,3.00) (En,Sp,It,Fr,Ger)
- Sharkey's Shootout (2.07) (En,Ger,Fr,It)
- Terminator 3: Rise of the Machines (2.05) (En,Sp,Fr,It)
- Playboy (3.03,3.00) (En,Sp,Fr,It,Ger)
- Roller Coaster Tycoon (7.01,4.00) (En,Sp,Fr,It,Ger)
- Magic Train (Clear NVRAM ROM?)
New games marked as GAME_NOT_WORKING
- GunMania (GL906 VER. JAA)
- Fighting Mania (QG918 VER. EAA)
- Fighting Mania (QG918 VER. AAA)
- Punch Mania: Hokuto No Ken (GQ918 VER. JAB)
- Punch Mania: Hokuto No Ken (GQ918 VER. JAB, ALT CD)
- Fighting Mania (QG918 VER. KAA)
- Fighting Mania (QG918 VER. UAA)
- Punch Mania 2: Hokuto No Ken (GQA09 JAA
- DrumMania 4th Mix (G*A25 VER. JAA)
- DrumMania 5th Mix (G*B05 VER. JAA)
- Guitar Freaks 7th Mix (G*B17 VER. JAA)
- Martial Beat (Martial Beat (G*B47 VER. JBA)
- DrumMania 7th Mix power-up ver. (G*C07 VER. JBA)
- DrumMania 7th Mix (G*C07 VER. JAA)
- Guitar Freaks 8th Mix power-up ver. (G*C08 VER. JBA)
- Guitar Freaks 8th Mix (G*C08 VER. JAA)
- DrumMania 8th Mix (G*C38 VER. JAA)
- Guitar Freaks 9th Mix (G*C39 VER. JAA)
- DrumMania 9th Mix (G*D09 VER. JAA)
- Guitar Freaks 10th Mix (G*D10 VER. JAB)
- Guitar Freaks 10th Mix (G*D10 VER. JAA)
- Guitar Freaks 10th Mix eAmusement (G*D10 VER. JBA)
- DrumMania 10th Mix (G*D40 VER. JAA)
- Initial D Arcade Stage Ver. 2 (Japan) (Rev. B) (GDS-0026B)
- Initial D Arcade Stage Ver. 2 (Export) (GDS-0027)
- Initial D Arcade Stage Ver. 3 (Japan) (Rev. C) (GDS-0032C)
- The Rumble Fish 2
- Point Blank 3 (GNN2 Ver. A)
- Uchuu Daisakusen: Chocovader Contactee (CVC1 Ver. A)