MAME/0.87
From GamerWiki
A warts and all look through the history of MAME as described by the MAME Dev team themselves through their releases.
Contents |
Version 0.87 "Pretty SPI / Hyperstone starts working"
Released: 2004-09-21
General Improvements
- Small update to the Kaneko drivers [Sebastien Volpe]
- correct dipswitches for bonkadv
- galpanib protection moved to machine\kaneko16.c, and sandscrp uses it
- merged read/write memory maps for the 3 galpanic sets
- Support 16 Joystick buttons [Norix]
- 8-way input fix for some mappy.c games (grobda, motos, phozon)
- These games were set to 4-way input in the previous update. [anonymous]
- Various Improvements [Angelo Salese]
- vamphalf.c
- improvements to vamphalf making it almost playable* it actually is now playable thanks to further improvements from others (see below)
- yumefuda.c
- temporarly patched eeprom check,fixed the graphics bankswitching & added sound in Yumefuda.I don't have added controls yet so it isn't playable.
- acommand.c
- Preliminary driver for Alien Command.Doesn't work yet...
- gstriker.c
- Very preliminary MCU emulation for World Cup '94.Hangs in various places since I don't have worked on them yet...
- Implements the LEDs in "copsnrob" [Stefan Jokisch]
- Fixed res_net.h related crash in Strike Bowling [Jarek Burczynski]
- Improvements to Paint and Puzzle, game is almost playable [Nicola Salmoria]
- Taito F3 Improvements [Bryan McPhail]
- Recalhorn now up to a playable standard. This game exposed some bugs in the way the sprite renderer handled the special command bits (ie, the sprite list jump command occurs _after_ the current sprite has been processed, not before, plus bankswitch & global positioning flags can be set on the same sprite - they aren't exclusive, all makes perfect sense from a hardware point of view). These fixes really should be put into taito_f2 and hybrid f3 games as well, though I doubt it will make any visual difference.
- Command War is playable too, except for the fact a layer doesn't seem to disappear when in the fighting sequence, and it's offset by 8 pixels in the movement sequence.
- Rohga driver Improvements [Bryan McPhail]
- Rohga - Despite massive amounts of time spent on writing trojan's to probe the protection this still isn't complete. The game hangs at the end of level 5. A quick look at decoprot.c should reveal just how nasty this game is... Graphics emulation is complete but the priority register never seems to be written properly (protection?) so some things look wrong.
- Schmeiser Robo - Not working 100%. The game puts graphics info through the protection chip so in this case the game looks wrong even though the gameplay is actually running correctly. Uses a strange double buffer feature of the protection chip that the Deco games don't (seem to) use.
- Truco Clemente driver [Ernesto Corvi]
- This is as good I could get it working...
- Problems:
- Wrong Colors
- Audio is not 100% yet, I think.
- The board is definitely a conversion of some other board. My guess is a Pacman-style board, since some of the addresses match (watchdog, etc). Maybe somebody more familiar with those type of boards can figure out if they used the same color proms (I tried the MsPacman ones, and didn't match).
- SPI background Decryption improvements [Ville Linde]
- Fixed mrtnt colours (verified to use pacman proms) [vernimark]
- Hyperstone core fixes [Tomasz Slanina, Pierpaolo Prazzoli]
- Tomasz Slanina
- Added "undefined" C flag to shift left instructions
- Pierpaolo Prazzoli
- Added interrupts-block for delay instructions
- Fixed get_emu_code_addr
- Added LDW.S and STW.S instructions
- Fixed floating point opcodes
New Clones supported or promoted from GAME_NOT_WORKING status
- Super Pang (Japan) [Nicola Salmoria]
- set was decrypted, game now working
New Games supported or promoted from GAME_NOT_WORKING status
- Wizz Quiz [Pierpaolo Prazzoli]
- Miss Bingo [Brian Troha]
- Recalhorn [Brian McPhail]
- may crash on hi-score screen
- Command War [Brian McPhail]
- still some clipping / layer problems
- Vamp 1/2 [Angelo Salese, Pierpaolo Prazzoli]
- first working hyperstone based game
- Truco Clemente [Ernesto Corvi]
- some graphical problems (see notes above)
New Non-Working games / clones supported
- Alien Command [Angelo Salese]
- parts of the hardware still unemulated
- Schmeiser Robo [Bryan McPhail]
- protection issues
Version 0.87u1
Released: 2004-09-29
General Improvements
- Minor Compiler fixes [Brad Oliver]
- Removed options.color_depth (obsolete anyway) [Brad Oliver]
- Compiler Fixes for VC [Bryan McPhail]
src\drivers\suprgolf.c - C99 fix src\cpu\m37710\m37710op.h - Fixed warnings under VC src\cpu\powerpc\ppc.c - Fixed warnings under VC src\cpu\powerpc\ppc403.c - Fixed warnings under VC
- Added default eeprom to Recalhorn to prevent crash [Bryan McPhail]
- Fixed Mametesters bug sotsugyo069u3gre [Bryan McPhail].
- sotsugyo: On the result screen (the one that appears when finishing a stage i.e after the first two trials), zeroes don't appear at all.
- Modified tilemap.c so roz and RGB_DIRECT can be used together [Andrew Gardner]
- Fixed I/O addresses in Hyperstone and so removed the hack from vamphalf driver [Pierpaolo Prazzoli]
- Yumefuda update (eeprom etc.) [Gondos, Pierpaolo Prazzoli]
- fixed some gfx in tmmjprd [Pierpaolo Prazzoli]
- i960 updates [R.Belmont]
- Added support for the following opcodes: nor, addc, subc, atanr, sinr, cosr, tanr, atanrl, logrl, sinrl, cosrl, and tanrl.
- Added those and some others to the disassembler.
- Added parens for the compiler warning.
- Fixed stt to only store 3 words instead of 4.
- Added logepr and cvtri.
- Fixed cmpr and cmprl - they were comparing garbage instead of the correct registers.
- Added disassembly for movrl.
- Added scanbit.
- Rewrote flushreg, it was *totally* wrong before. HOTD now runs, among others.
- Added hack to divo so divide by zero doesn't crash MAME (some games read back 0 from the not-yet-existing DSP and do this).
- More disassembler improvements.
- Added NAND, EDIV, SCALER, SCALERL, ROUNDR, ROUNDRL, EXPRL, MOVRE, and CPYSRE opcodes.
- Fixed some errors in interrupt handling. Solves corrupt graphics in fvipers and crashes in fvipers, schamp, and dynamcop.
- Added REMR opcode.
- SegaIC24 update [R.Belmont]
- Add 32-bit access methods for char and tile RAM.
- Grand Champion sound fix [Justin Szczap]
- INP changes [Barry Rodewald]
- Basically, reading/writing analog port data every single time interpolate_analog_port() isn't a good idea, especially since it's called every time readinputport() is. I've just moved the analogue port reading/writing into the for loop, so analogue ports are only read/written if the port is actually is analogue.
- Dynagears dip fix [Derrick Renaud]
- ZN1/ZN2 big endian fix [smf]
- SPI decryption improvements (for rf2_2k) [Ville Linde]
New Clones supported or promoted from GAME_NOT_WORKING status
- Painted Lady (Splash) (Ver 1.3 US) [Manuel Abadia]
New Non-Working games / clones supported
- Tatsumi Driver [Bryan McPhail]
- playable to a degree, but not really working properly
- Incredibly complex hardware! These are all different boards, but share a similar sprite chip (TZB215 on Apache 3, TZB315 on others). Other graphics (road, sky, bg/fg layers) all differ between games.
- Todo:
- Sprite rotation
- Finish road layer (Round Up 5)
- Implement road layer (Apache 3, Cycle Warriors)
- BG layer(s) (Cycle Warriors)
- BG layer (Round Up 5) - May be driven by missing VRAM data
- Round Up 5 always boots with a coin inserted
- Round Up 5 doesn't survive a reset
- Dip switches
- Various other things..
- Sega Model 2 Driver [R.Belmont]
- (see model2.c for list of games)
- Tilemaps, sound, and inputs working to varying degrees in various games. Most of the games at least start up, although some don't and some crash.
Version 0.87u2
Released: 2004-10-06
- i960 updates [R.Belmont]
- Added spanbit
- Fixed error noted by ElSemi in spanbit and scanbit
- Added non-queued interrupts to support games with the interrupt table in ROM (this fixes the colors and hanging in Sky Target, and Pilot Kids will need it too)
- Added the ability for read/write handlers to declare themselves "noburst", for memory regions which don't auto-increment the address on i960 bulk transfers
- General cleanup of the interrupt handling to remove duplicated code. There should be no functional difference
- model2 updates [R.Belmont]
- Properly mapped 'unplaced' ROMs for Daytona and Desert Tank
- Added calls to i960 noburst support for the timer and interrupt control registers
- Updated game status with latest knowledge
- Noted that Last Bronx boots now
- VF2 reparent: 2.1 is parent, ver. B and original are children
- SHA1s for lastbexp, doa, and pltkids
- Removed unnecessary code patch from DOA
- Added Martin Marietta co-credit for Desert Tank
- Added EPL Productions co-credit for Behind Enemy Lines
- "Sonic Championship" renamed to "Sonic The Fighters"
- Virtual On is "Cyber Troopers" (two words) on the title screen, not "Cybertroopers"
- Zero Gunner changed from (Jap) to (Japan)
- Mapped framebuffer RAM (used by Last Bronx)
- Fixed non-32 bit writes to the interrupt registers
- Fixed serial hardware mapping
- Temporary hack to keep HOTD from freezing until I properly implement the timers
- Split the 2O/2A/2B/2C drivers better. von now prints "MODEL 2BCRX" correctly
- Hack to make Last Bronx run while I track down an i960 core bug that's haunting it
- Patch from ElSemi for Zero Gunner crashing
- Patched Daytona busywait for the TGPs (not sure how it worked without this before)
- Fixed 68000 ROM load for skytargt
- Fixed thinko in the interrupt register handling (still no help for Last Bronx, but the wrong way was definitely hurting it worse)
- Fixed issue on big-endian machines
- Added framework so the DSP program uploads are now handled correctly
- C352 Pitch adjustment [R.Belmont, Cap]
- Analog Port Fixes [Derrick Renaud]
- downtown - Both analog controls were set to player 1.
- eterm - Crashed, due to inc/dec buttons not being defined for the analog ports.
- Now loading sync prom in Atari Soccer [Stefan Jokisch]
- Added eeprom and flipscreen to the games in vamphalf driver [Pierpaolo Prazzoli]
- Improved sound in Hard Head / Popper [Pierpaolo Prazzoli, Corrado Tomaselli]
- Misc updates [Nathan Woods]
- src/mame.c:
- Created a MAME_VALIDITYCHECKS macro that when defined, can specify whether validity checks should be run. If undefined, it defaults to running the validity checks. This will facilitate turning off validity checks in MAME derivative projects.
- Please DO NOT turn these off if you are making changes to the Mame source, any changes which fail the validity checks will be rejected.
- src/windows/fronthlp.c:
- Changed the stat() call to use Win32 equivalents.
- Fixed some Compiler Warnings [Lawrence Gold]
- Improvements to SPI sprite decryption in rf2_2k [Ville Linde]
New Games supported or promoted from GAME_NOT_WORKING status
- Fix Eight (bootleg) [Tomasz Slanina]
- turn on invunerability dipswitch to see an intro!
- Title Fight [David Haywood]
- Raiders [Mash]
New Clones supported or promoted from GAME_NOT_WORKING status
- Sega Space Attack (set 3) [Mash]
- Pengo (set 4) [Mash]
- Eagle (set 3) [chaneman]
- Crazy climber 2 (Japan Harder) [chaneman]
- Nibbler (Olympia) [Costa Sgantzos]
New Non-Working games / clones supported
- Mazer Blazer (set 2) [chaneman]
- Zero Team (set 2)
- Dark Edge (World)
- Farmer Rebelion (clone of ikki) [Pierpaolo Prazzoli]
- maybe a rom is bad?
- Dynamite Deka 2 (clone of Dynamite cop) [Chris Hardy]</pre>
Version 0.87u3
Released: 2004-10-12
General Improvements
- Exidy Games update [Aaron Giles]
- This update is mainly a bunch of cleanup on the classic Exidy drivers. The memory maps are merged now, and I've gone through and removed a bunch of RAM that wasn't actually present on the real boards. I also fixed up the input ports on several of the bootlegs.
- Cinematronics Vector driver update [Aaron Giles]
- completely rewrote the CCPU core to be much simpler and follow MAME semantics
- rewrote the CCPU disassembler to use the "official" syntax
- added newly dug-up prototype game QB-3
- now require the CCPU PROMs for all the games
- added sound to Barrier, Star Hawk, War of the Worlds, and Boxing Bugs (note that samples don't exist yet, but I'm working with Zonn Moore to get them for everything except Barrier)
- rewrote sound routines for all the games based on schematics and Zonn's documentation
- fixed sound in Demon (was seriously wrong)
- changed sound handling in Solar Quest to play the music by looping a square wave instead of using canned samples
- added 64-level support for Solar Quest
- added proper color support for Boxing Bugs and War of the Worlds
- added star twinkle effects (not really visible without my future update to vector.c)
- made wotw the black & white hardware which was commonly seen as a Star Castle upgrade
- added wotwc as the color hardware version (same ROMs)
- cleaned up and fixed input ports for all the games
- Namco IC update [Phil Stroffolino]
- Fixes to the advanced ROZ chip used by System FL, Namco NB2, and some Namco System 2games. Huge improvements to Mach Breakers, and game specific ROZ hacks have been removed.
- Fixes for the ROZ system used in older System2 games; in particular Dragon Blade glitches are no more.
- Abstraction for the tilemap system used in many Namco titles.
- Merged memory maps.
- The ROZ fixes unfortunately use a handful of custom code, to work around limitations of tilemap.c's roz support. I'll improve tilemap.c when I get a chance.
- Improvements to jalmah.c [Angelo Salese]
- Improvements to sound in recalh and intcup94 [David Haywood]
- Massive compiler warnings cleanup for gcc 3.4.2 [Olivier Galibert]
- Added some hooks to C 68k core in preparation for Sega decryption updates [Olivier Galibert]
- Hooked up GNET bios roms so boot screen shows [smf]
- Improvement to (se)xfiles driver, now shows some startup screens [Tomasz Slanina]
New Games supported or promoted from GAME_NOT_WORKING status
- QB-3 (prototype) [Aaron Giles]
- some gfx problems
- Space Raiders [Frank Palazzolo]
- some gfx problems, things need verifying against board
New Clones supported or promoted from GAME_NOT_WORKING status
- War of the Worlds (color) [Aaron Giles]
- Operation Thunderbolt (US, older) [Fabrice Arzeno]
- Killer Instinct (proto v4.7) [Aaron Giles]
- Killer Instinct 2 (v1.0) [Aaron Giles]
- Farmer Rebelion (clone of ikki) [Pierpaolo Prazzoli]
- Atlant Olimpic (bootleg of trackfld) [Pierpaolo Prazzoli]
- Ginga NinkyouDen (set 2) [Mash]
- '99: The Last War (Kyugo) [Mash]
- Tron (set 3) and (set 4) [Mash]
New Non-Working games / clones supported
- unemulated protection
- Killer Instinct 2 (v1.4k, upgrade kit) [Aaron Giles]
- Beat the Champ [R.Belmont]
- SCSI / CD-ROM emulation problems
Version 0.87u4
Released: 2004-10-16.
General Improvements
- Fixed bugs introduced in u3 causing Atari / Midway drivers to crash [Olivier Galibert]
- Changed where source filename based config files are stored to avoid conflicts with set name configs [René Single]
- Changes the static function implementations in memory.h to inline [Brad Oliver]
- Improvements to Hyper Neogeo 64 rendering, 3d graphics can now be seen although emulation is still incomplete and Fatal Fury WA still needs a hack to boot [Andrew Gardner, Rasterizing code provided in part by Andrew Zaferakis]
- Code to decrypt FD1094 CPU 317-0092 in states 0x00-0xff (0x00 is reset, 0x10 is IRQ) this is the CPU used by tetris, code is not hooked up yet [Nicola Salmoria]
- Changed instr86.c based on comment below:
- In the cpu/i86 code emulating the CMPSW instruction there is what seems to be a cut+paste bug: It calls the SUBB() macro where it should call SUBW().
- Line 524 of instr86.c.
- [Juergen Buchmueller]
New Games supported or promoted from GAME_NOT_WORKING status
- Puzzle Club (Yun Sung) [Pierpaolo Prazzoli]
- Pop Bingo [David Haywood]
New Clones supported or promoted from GAME_NOT_WORKING status
- Explosive Breaker (parent of bakubrkr) [David Haywood]
- Street Fighter 2 EX (USA) [Brian Troha]
- Top Racer (bootleg, set 2) [Pierpaolo Prazzoli]
New Non-Working games / clones supported
- Funny Strip [David Haywood]
- unemulated protection?
- these four drivers are still being worked on
Version 0.87u5
Released: 2004-10-21. A private release. The whatsnew.txt was merged with the 0.88 public release.
Other Versions
This article is part of the MAME series. A list of all series can be found in the Series Category
editEarly versions: 0.1 to 0.10 | 0.11 to 0.20 | 0.21 to 0.26 | 0.27 to 0.31
The beta 30s: 0.33b1 to 0.33 | 0.34b1 to 0.34 | 0.35b1 to 0.35b8 | 0.35b9 to 0.35f | 0.36b1 to 0.36b9.1 | 0.36b10 to 0.36 | 0.37b1 to 0.37b8 | 0.37b9 to 0.37b16
50s, 60s & 70s: 0.53 to 0.60 | 0.61 to 0.68 | 0.69 | 0.70 | 0.71 | 0.72 | 0.73 | 0.74 | 0.75 | 0.76 | 0.77 | 0.78 | 0.79
80s & 90s: 0.80 | 0.81 | 0.82 | 0.83 | 0.84 | 0.85 | 0.86 | 0.87 | 0.88 | 0.89 | 0.90 | 0.91 | 0.92 | 0.93 | 0.94 | 0.95 | 0.96 | 0.97 | 0.98 | 0.99
100s & 110s: 0.100 | 0.101 | 0.102 | 0.103 | 0.104 | 0.105 | 0.106 | 0.107 | 0.108 | 0.109 | 0.110 | 0.111 | 0.112 | 0.113 | 0.114 | 0.115 | 0.116 | 0.117 | 0.118 | 0.119
120s & 130s: 0.120 | 0.121 | 0.122 | 0.123 | 0.124 | 0.125 | 0.126

