Sie sind auf Seite 1von 87

0.

35
New games supported (in alphabetical order):
-------------------------------------------64th Street [Luca Elia]
ASO [Carlos A. Lozano, Phil Stroffolino]
Act Fancer [Bryan McPhail]
Adventure Quiz 2 Hatena no Dai-Bouken [Nicola Salmoria]
Aero Fighters [Nicola Salmoria]
Air Buster [Luca Elia]
Ali Baba and 40 Thieves [Zsolt Vasvari]
Ambush [Zsolt Vasvari]
Appoooh [Tatsuyuki Satoh]
Armed Formation [Carlos A. Lozano, Phil Stroffolino]
Armor Attack [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Atari Baseball [Brad Oliver]
Atari Football [Mike Balfour, Patrick Lawrence, Brad Oliver]
Athena [Carlos A. Lozano, Phil Stroffolino]
Avenging Spirit [Luca Elia]
Azurian Attack [Zsolt Vasvari]
Bad Lands [Aaron Giles]
Balloon Bomber [Mike Coates]
Battle Lane Vol. 5 (preliminary) [Paul Leaman]
Bermude Triangle [Carlos A. Lozano, Phil Stroffolino]
Block Block [Nicola Salmoria]
Boulder Dash [Bryan McPhail]
Boxing Bugs [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Cabal [Carlos A. Lozano, Phil Stroffolino]
Cadillacs and Dinosaurs [Russell Nash]
Canyon Bomber [Brad Oliver]
Capcom World 2 [Steve S.]
Capcom World [Nicola Salmoria]
Captain Silver [Bryan McPhail]
Caveman Ninja [Bryan McPhail]
Changes [Zsolt Vasvari]
Cheyenne [Aaron Giles]
Chiller [Aaron Giles]
Chopper I [Carlos A. Lozano, Phil Stroffolino]
Clay Pigeon [Aaron Giles]
Cloud 9 [Mike Balfour]
Combat School [Manuel Abadia, Phil Stroffolino]
Combat [Aaron Giles]
Cosmic Guerilla [Mike Coates]
Crackshot [Aaron Giles]
Crossbow [Aaron Giles]
Cyberball 2072 (2 Players) [Aaron Giles]
Demon [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Demon's World / Horror Story [Darren Olafson]
Devil Fish [Chris Hardy]
Devil Zone [Mike Coates]
Digger [Raney Eden]
Disco No.1 [Zsolt Vasvari]
Dog Fight [Zsolt Vasvari]
Double Dribble [Manuel Abadia]
Dyger [Nicola Salmoria]
Earth Defense Force [Luca Elia]
Extermination [Nicola Salmoria]
Fighting Golf [Carlos A. Lozano, Phil Stroffolino]
Fire One [Olivier Galibert]

Flying Shark / Sky Shark [Quench]


Freeze [Nicola Salmoria]
Funky Bee [Zsolt Vasvari]
Gals Panic [Nicola Salmoria]
Gaplus [Manuel Abadia, Ernesto Corvi]
Genpei ToumaDen [Nicola Salmoria]
Goindol [Jarek Parchanski]
Gondomania [Bryan McPhail]
Grobda [Manuel Abadia]
Guerrilla War [Phil Stroffolino]
Head On 2 [Nicola Salmoria]
Hell Fire [Darren Olafson]
Hit 'n Miss [Aaron Giles]
Hoccer [Zsolt Vasvari]
Hot Shocker [Zsolt Vasvari]
Ikari Warriors [Jarek Parchanski]
Inferno [Michael Soderstrom]
Insector X [Nicola Salmoria]
Joust 2 [Michael Soderstrom]
Last Mission [Bryan McPhail]
Legend of Makaj [Luca Elia]
Levers [Zsolt Vasvari]
Lode Runner II (also renamed ldrun2p -> ldrun4) [Nicola Salmoria]
Lode Runner III [Nicola Salmoria]
Lot Lot [Nicola Salmoria]
Macho Mouse [Zsolt Vasvari]
Magical Spot II [Zsolt Vasvari]
Mahjong Gakuen 2 Gakuen-chou no Fukushuu [Nicola Salmoria]
Mahjong Gakuen [Nicola Salmoria]
Marine Boy [Zsolt Vasvari]
Mariner [Zsolt Vasvari]
Mars [Zsolt Vasvari]
Mega Zone [Chris Hardy]
Minky Monkey [Zsolt Vasvari]
Moguchan [Zsolt Vasvari]
Muscle Bomber Duo (not working) [Russell Nash]
Mutant Night [Leandro Dardini, Mirko Buffoni]
Mystic Marathon [Michael Soderstrom]
New Sinbad 7 [Zsolt Vasvari]
No Man's Land [Mike Coates]
Out Zone [Darren Olafson]
P-47 [Luca Elia]
Pang! 3 [Nicola Salmoria]
Phozon [Manuel Abadia]
Pig Newton [Mike Balfour]
Pocket Gal [Bryan McPhail]
Poker Ladies [Nicola Salmoria]
Pontoon [Zsolt Vasvari]
Power Spikes [Nicola Salmoria]
Prehistoric Isle in 1930 [Bryan McPhail, Carlos A. Lozano]
Psycho Soldier [Carlos A. Lozano, Phil Stroffolino]
Punisher [Nicola Salmoria]
Quiz Sangokushi [Nicola Salmoria]
Quiz Tonosama no Yabou 2 [Nicola Salmoria]
Quiz Tonosama no Yabou [Nicola Salmoria]
Quiz and Dragons [Steve S.]
Radical Radial [Nicola Salmoria]
Rally Bike / Dash Yarou [Darren Olafson]
Rampart [Aaron Giles]
Return of the Invaders [Jarek Parchanski]

Rip Off [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
RodLand (Japan) [Luca Elia]
Rolling Thunder [Jimmy Hamm, Phil Stroffolino, Ernesto Corvi]
SAR - Search and Rescue [Bryan McPhail]
Salamander [Bryan McPhail]
Saturn [Nicola Salmoria]
Senjyo [Mirko Buffoni]
Shackled [Bryan McPhail]
Shooting Master (not working due to protection) [Nicola Salmoria]
Showdown [Aaron Giles]
Shuuz [Aaron Giles]
Sichuan II [Nicola Salmoria]
Sindbad Mystery [Nicola Salmoria, Mike Balfour]
Skull & Crossbones [Aaron Giles]
Sky Chuter [Lee Taylor]
Sky Diver [Brad Oliver]
Sky Lancer [Zsolt Vasvari]
Slam Masters (not working) [Nicola Salmoria]
Solar Quest [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Space Intruder [Lee Taylor]
Space Wars [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Speed Coin [Frank Palazzolo]
Speed Freak [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Spelunker [Nicola Salmoria]
Springer [Zsolt Vasvari]
Star Castle [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Star Cruiser (preliminary) [Frank Palazzolo]
Star Hawk [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Street Fighter II' Champion Edition [Paul Leaman]
Street Fighter II' Hyper Fighting [Paul Leaman]
Street Fighter [Olivier Galibert]
Street Smart [Bryan McPhail]
Sundance [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Super Burger Time [Bryan McPhail]
Super Locomotive [Zsolt Vasvari]
Super Marukin-Ban [Nicola Salmoria]
Super Pang (KEEP 1 PRESSED WHILE BOOTING THE FIRST TIME) [Nicola Salmoria]
Super Real Darwin [Bryan McPhail]
TNK3 [Carlos A. Lozano, Phil Stroffolino]
Tailgunner [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Terra Force [Carlos A. Lozano, Phil Stroffolino]
The Battle-Road [Eric Hustvedt]
The Legend of Kage [Phil Stroffolino]
The Return of Ishtar [Nicola Salmoria]
Three Wonders (preliminary) [Paul Leaman]
Top Secret [Aaron Giles]
Touchdown Fever [Phil Stroffolino]
Tropical Angel [Phil Stroffolino]
Truxton / Tatsujin [Darren Olafson]
Tumble Pop [Bryan McPhail]
Turbo Force [Nicola Salmoria]
Turkey Shoot [Michael Soderstrom]
Turtle Ship [Victor Trucco]
Ufo Robo Dangar [Carlos A. Lozano]
Van Van Car [Allard van der Bas]
Vectorbeam [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Victory Road [Jarek Parchanski]
Vimana [Darren Olafson]
Vindicators part II [Aaron Giles]
Wanted [Zsolt Vasvari]

War of the Worlds [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Wardners Forest / Pyros [Quench]
Warrior [Aaron Giles, Zonn Moore, Jeff Mitchell, Neil Bradley]
Warriors of Fate [Russell Nash]
Who Dunit [Aaron Giles]
Wiping [Allard van der Bas]
Wonder Momo [Nicola Salmoria, Ernesto Corvi]
World Tennis [Zsolt Vasvari]
Yam! Yam!? [Nicola Salmoria]
Yamato (preliminary) [Nicola Salmoria]
Zero Wing [Darren Olafson]
Zodiack [Zsolt Vasvari]
These drivers have improved GRAPHICS:
------------------------------------- Fixed Psychic 5 and Toki title screens. [Jarek Parchanski]
- Proper support of the playfield/sprite priority and palette system in Return
of the Jedi. [Nicola Salmoria]
- Accurate colors in Spelunker II. [Nicola Salmoria]
- Fixed Heiankyo Alien colors. [Zsolt Vasvari]
- Fixed NeoGeo palette - it's 5 bits per gun, not 4. [Nicola Salmoria]
- Added a kludge to avoid leftover sprites in Rally-X. [Larry Bank]
- Fixed missing background behind the three towers in Metal Slug level 1.
[Nicola Salmoria]
- Fixed missing line in the tank's shot in Metal Slug intro. [Nicola Salmoria]
- Fixed the Swimmer side panel background color. [Gary Walton]
- Fixed the sprite/playfield and playfield/playfield priorities in Bad Dudes /
Dragon Ninja and Sly Spy. [Bryan McPhail]
- Fixed the title screen in P.O.W. [Bryan McPhail]
- Fixed gaps in the start/finish line in Neo Drift Out. [Nicola Salmoria]
- Attempt at emulating some raster effects in the NeoGeo games. The IRQ2
handling is still 99% unknown, however you can see the field in Super
Sidekicks 3 and 4. This is largely unaccurate, and VERY slow. Hit F1 to
toggle the emulation on or off (by default it's on). [Nicola Salmoria]
- Accurate colors in Galivan. [Nicola Salmoria]
- Improved row scrolling in Street Fighter 2, plus several other fixes to the
CPS1 games. [Paul Leaman]
- Fixed sprite colors in Euro League. [Nicola Salmoria]
- Fixed sprites disappearing abruptly in TMNT end of game credits. [Nicola
Salmoria]
- Fixed the green and white flags in Championship Sprint / Super Sprint, and

maybe other Atari System 2 sprites as well. [Nicola Salmoria]


- Fixed sprite flipping in Jack the Giant Killer end sequence. [Brad Oliver]
- Fixed (?) the title in Galaxian Part X. [Nicola Salmoria]
- Fixed big sprites in Tokio, and unified it with Bubble Bobble.
[Nicola Salmoria]
- 16-bit color support in the NeoGeo driver. It's enabled in a few games which
were particularly affected by reduction to 256 colors. [Nicola Salmoria]
- Improved Star Fire. [Olivier Galibert]
- Kludged in a fix for char/sprite priority in Traverse USA. [Nicola Salmoria]
- Added the missing background layer to Cobra Command. [Bryan McPhail]
- Char/sprite priority in Lode Runner 2 & 3 and in Battle Road. [Eric Hustvedt]
- Fixed missing item at the bottom of the screen in Tower of Druaga.
[Nicola Salmoria]
- Fixed the Galaxian-style starfield. Believe it or not, it had been broken
since day 1. [Nicola Salmoria]
- Converted the System 16 drivers to use the TileMap system - they are now
cleaner, faster, and support screen rotation. [Phil Stroffolino]
- Fixed colors in Birdie King 2. [Zsolt Vasvari]
- Several fixes and improvements to D-Day. [Zsolt Vasvari]
- Fixed foreground transparency in Pac-Land round 19. [Nicola Salmoria]
- Better backdrop for Battle Zone (bzone.png). [Nathan Sturm]
- Fixed sprite glitches in Jail Break and Iron Horse. [Nicola Salmoria]
- Fixed the spider gfx, and sky color, in Rainbow Islands. [Mike Coates]
- Fixed background colors in Great Swordsman. [Jarek Parchanski]
- Fixed (hopefully) colors in Blue Print. [Nicola Salmoria]
These drivers have new or improved SOUND:
----------------------------------------- Fixed shoot sound in Juno First. [Nicola Salmoria]
- Added PCM samples to Ninja Kid II. [Jarek Parchanski]
- Completed sound support in TMNT. [Howie Cohen]
- Sound in Psycho-Nics Oscar. [Nicola Salmoria]
- Added support for the 7751 sound chip in Monster Bash. Two samples are still
needed (discrete circuits). [Mike Balfour]

- Good progress in sound emulation of the Exidy games (Venture, Pepper 2, etc.)
[Dan Boris]
- Sound in Ghost Busters. [Bryan McPhail]
- uPD7759 support in Golden Axe, Shinobi, Passshtb, Alien Syndrome,
Altered Beast. [Howie Cohen]
- Emulated speech in Sinistar. Samples are no longer used. [Alex Pasadyn]
- Sound in The Main Event. [Nicola Salmoria]
- Sound fade timer ports in the CPS1 games (see Willow's Test mode for an
example). [Paul Leaman]
- Samples support in Cosmic Guerilla. [Mike Coates]
- New sample support in Tac/Scan. [Jim Hernandez]
- Sound in Pac-Land. [Ernesto Corvi]
- Full sound in Sly Spy, Midnight Resistance, Dark Seal. [Bryan McPhail]
- Emulated the death sound in Mario Bros, the sample is no longer used.
[Brian Stern]
- Implemented the RC filters in early Konami games (Time Pilot, Pooyan, etc.)
[Zsolt Vasvari]
- Support for Eliminator 2/4 player samples and additional sounds for
Zektor. [Jim Hernandez]
- Fixed tune in Phoenix. [Richard Davies]
- Added ADPCM samples to Mad Gear. [Bryan McPhail]
- Major improvements to Atari sound (e.g. speech in Toobin') [Aaron Giles]
- Sound in Rainbow Islands. [Mike Coates]
- Sound in Demolition Derby. [Bret Wallace]
- Sound in Great Swordsman, fixed ADPCM playback in Great Swordsman and
Gladiator. [Tatsuyuki Satoh]
- Improved Nemesis/Gradius/Twinbee/Salamander. [Elestir]
- Fixed sound in LED Storm / Mad Gear. [Jarek Burczynski]
- Fixed sound in WBML. [Karl Stenerud]
Other drivers changes:
---------------------- Analog joystick support in Sinistar and Blaster. [Nicola Salmoria]
- Worked out the Super Punch Out protection. [Tatsuyuki Satoh, Ernesto Corvi]
- Hacked the protection in Super Sidekicks. [Battlepriest]

- Fixed two players games in Phoenix, and the protection in Pleiads (which
made game resets not work). [Zsolt Vasvari]
- Emulated the protection in Seicross, Radical Radial, Frisky Tom.
[Nicola Salmoria]
- Fixed the protection in Frisky Tom. [Andrew Prime]
- The hang in Tapper should REALLY be fixed this time. [Juergen Buchmueller]
- Emulated the protection in Knights of the Round and Carrier Air Wing.
[Paul Leaman]
- Support for the ORIGINAL version of Bubble Bobble, with 68705 code from a
pirate board. Wizards *do* throw stones in this version. [Nicola Salmoria]
- Removed the protection in Fatal Fury 2. [Eugenio De Renzi]
- Emulated the protection (TMS32010) in Twin Cobra, which is now fully
playable. [Quench]
- Properly emulated the 68705 protection in The Electric Yo-Yo, Kram, Space
Dungeon, Zoo Keeper. [Nicola Salmoria]
- Simulated the 8751 protection in F1 Dream. [Eric Hustvedt]
- Improved Birdie King 2 which is now playable. [Zsolt Vasvari]
- Fixed speed in Oscar. [Bryan McPhail]
- Emulated the protection in Sly Spy. [Bryan McPhail]
- Fixed 1 player start button not working on level 31 of Tower of Druaga.
[Nicola Salmoria]
- Emulated the protection in Jump Bug (Rock-ola). Some ROM splitup too, and
fixed colors. [Zsolt Vasvari]
- "kbmame" multi-button key equivalents for the NeoGeo games. They are only
available if cheats are enabled. [Nicola Salmoria]
- Emulated the protection in Hippodrome, which is now working 100%.
[Byan McPhail]
- Drastically reduced load times of the larger NeoGeo games. [Nicola Salmoria]
- Rainbow Islands is playable (using the C-Chip dump from Jumping).
[Mike Coates]
- Memory card support in the NeoGeo driver. Card data is saved to the MEMCARD
directory (you have to create it). Use the TAB menu to access the memory card
options. [Fabrice Martinez]
- Lots of improvements in the Atari drivers. [Aaron Giles]
- Fixed all known problems in Xain'd Sleena. [Nicola Salmoria]
- Fixed decryption in Treasure Hunt [Zsolt Vasvari]

- Added dip switches to the Atari System 2 games. [Nicola Salmoria]


- Added rotary control support to Top Gunner. This works in topgunbl *only* the gun turret cannot be rotated in jackal and topgunr, those games don't
support the rotary joystick. [Karl Stenerud]
- Incresed the horizontal resolution for NeoGeo to 320. This looks strange with
some games, but it is definitely the correct value as I verified it on the
real thing. Games like Puzzle Bobble and Baseball Stars use the extra area,
while most of the other games draw just two bars in there. If a game looks
odd, adjust your monitor to send the extra area offscreen. [Nicola Salmoria]
- Fixed the slapstic emulation in Gauntlet, Gauntlet II, Xybots, Empire Strikes
Back. Improved Rampart, but still not 100%. [Ernesto Corvi, Nicola Salmoria]
- Added scroll to Pinball Action when you push button 4, but I'm not sure it's
correct. [Nicola Salmoria]
- Fixed later levels in Arkanoid (US). [Nicola Salmoria]
- Fixed controls in 720o. [Nicola Salmoria]
Changes to the main program:
---------------------------- Support for the Namco System 1 sound system. [Ernesto Corvi]
- [DOS] Widened the frameskip range. It now is 0-11, meaning the number of
frames to skip out of 12. For example, if the game normally runs at 60 fps,
"-frameskip 2" will make it run at 50 fps, and "-frameskip 6" at 30 fps.
Also, if a frame takes more than the allotted time to display, the lost
time can be recovered in the following frames. Moreover, improved the way
audio streams are handled, so they stay more in sync with the video. There
should never be any more audio breakups EVER (as long as your system can
keep the game running at 100% speed).
All of these changes together mean that it is now possible to run at much
higher frame rates than before (if your system is fast enough).
[Nicola Salmoria]
- [DOS] Implemented auto frameskip. It dynamically adjusts the frameskip
setting to display the maximum possible frames without dropping below 100%
speed.
It is on by default; to turn it off, specify an explicit frameskip value,
e.g. "-frameskip 0". Autoframeskip only works well if your machine is fast
enough to run the game at 100% speed. If it isn't, you had better use a
fixed frameskip.
NOTE: you must delete mame.cfg (or manually change the line "frameskip = 0"
to "frameskip = auto") for the auto frameskip to become the default.
[Nicola Salmoria]
- [DOS] "vmame" modes 320x480 and 400x600, which speed up scanlined VESA modes
for some games and graphic cards which support these resolutions.
Currently, these modes will not be autodetected, that is, the commandline
options "-320x480" or "-400x600" have to be used.
[Nicola Salmoria, Michael Cunanan]
- [DOS] Joysticks are now selected by a symbolic name (e.g. "-joystick wingex"
for Wingman Extreme) instead of a number. For the list of names, look into
readme.txt. Numbers are still supported, but may not be in future releases.

SNES gamepads on parallel ports are supported now, provided you have some
additional hardware (the "official" Snespad-Support site is
http://snespad.emulationworld.com). [Bernd Wiebelt]
- [DOS] For cosmetical reasons, added support for VESA3, which can be selected
by putting "vesamode=vesa3" into mame.cfg. It is highly unlikely that you'll
get any speed improvement. [Bernd Wiebelt]
- [DOS] The key to change frameskip is now F9 instead of F8. [Nicola Salmoria]
- Improved palette compression with color fades. [Nicola Salmoria]
- Improved the YM2610 emulation. [Tatsuyuki Satoh]
- [DOS] Added a header to .inp files (same as MAME32). With the additional
header, the user no longer needs to specify the game name when playing back
.inp recordings. [Mike Haaland]
- Added the ability to show the total number of colors on screen. This is
useful during development to know if a game can be shrinked to 256 colors or
it requires a 16-bit display. Press CTRL+F11 to toggle the display. This is
only available in debug builds. [Nicola Salmoria]
- [DOS] New option -volume n to set the startup volume. The volume is an
attenuation in dB, e. g. "-volume -12" will start with a -12dB attenuation.
[Nicola Salmoria]
- The user interface is rotated by -rol and -ror. [Nicola Salmoria]
- Improvements to the YM2610 timers, added an interface for external volume
control. [Tatsuyuki Satoh]
- Major changes to the whole CPU interface and cores. [Juergen Buchmueller]
- new switch "-waitvsync /-nowaitvsync" (use it with -novsync); it waits for
video sync before drawing the screen but uses the normal MAME throttling.
This gives smoother display with scrolling game (like vsync), but works
with video modes with higher refresh frequency, and is more win-friendly.
[Valerio Verrando]
- Added a "Game History" entry to the menu. Data is fetched from the file
HISTORY.DAT. Thanks to Brian Deuel, Neil Bradley and the Retrocade dev team
for allowing us to use Retrocade's game history database. [John Butler]
- All new, completely rewritten debugger. [Juergen Buchmueller]
- [DOS] Switches -noartwork and -nosamples to turn off artwork or sample
loading. [Valerio Verrando]
- [DOS] New tweaked 256x256 VGA modes (both scanlines and noscanlines)
stretched to fill the screen. They are automatically used for horizontal
games, and are preferable to the -stretch option since they are faster.
You might have to adjust your monitor settings to make them properly
centered and fill the screen (use the border displayed on startup as a
guideline). [Valerio Verrando]
- Added menu option to configure the default joystick settings (like the
default keys), [Nicola Salmoria]
- [DOS] Fixed severe slowdowns when 16-bit audio was selected.

[Nicola Salmoria]
- [DOS] The parameters which control tweaked VGA modes can be changed by
editing mame.cfg, so they can be fine tuned to match each particular video
card/monitor combination (these are non standard modes so they can't be made
to work in the same way on all setups). If you want to try that (warning:
only experienced users should try) make sure to read vgatweak.txt.
[Valerio Verrando]
- Added support for .wav samples. The custom .sam samples are no longer
supported (you can use the sam2wav converter to convert them). [Aaron Giles]
- [DOS] Rough triple buffering support in VESA modes. You can turn it on with
the -triplebuffer switch. It is not guaranteed to work well, but if it does,
it offers results similar to -waitvsync but without the performance drop.
[Nicola Salmoria]
- A missing ROM for which no good dump is known to exist is no longer a fatal
error - you can start the emulation even if the file is missing. Its space
will be filled with random data. Of course the game will probably
malfunction. The output of -verifyroms is slightly changed, it says "NO GOOD
DUMP KNOWN" now and doesn't print 00000000 checksums. [Nicola Salmoria]
- Improved VLM5030 emulation. [Tatsuyuki Satoh]
- Fixed a couple of bugs in the 68000 emulation (both asm and C). They affected
Power Spikes 2 and F1 Dream. [Mike Coates]
- Improved uPD7759 ADPCM decode. [Juergen Buchmueller]
- Moved mixer control out of streams.c and into the new mixer.c. Now the On
Screen Display can be used to change the volume of any channel, not just ones
handled by streams.c. The configuration is also saved on exit and is
automatically reloaded the next time you start the game. [Nicola Salmoria]
- The Pause key can be changed from the "Keys (defaults)" configuration menu.
[Nicola Salmoria]
- Added a palette viewer to the gfx viewer (F4). [Nicola Salmoria]
- [DOS] New video modes from CabMAME: low scanrate modes for connection to
NTSC/PAL and arcade monitors. -monitor NNNN selects the monitor type:
"standard" (default), "ntsc", "pal", "arcade". -centerx N and -centery N
each take a signed value (-8 to 8 for centerx, -16 to 16 for centery) and let
you shift the low scanrate modes around. -waitinterlace forces update of
both odd and even fields of an interlaced display for each game loop.
[Brian Lewis]
- [DOS] Since there are now many tweaked VGA modes which may have compatibility
problems with some video cards / monitors, they are now off by default. By
default, VESA is used; the -vesa command line switch is no longer used.
Instead, there is a -tweak switch which enables the VGA tweaked modes.
[Nicola Salmoria]
- [DOS] New tweaked VGA modes: 384x240 (for CPS1, Pang etc.), 384x256 (for Lode
Runner etc.), 336x240 (for Gauntlet and other Atari games), 320x240 (for
NeoGeo and others). They are used automatically, if your video card/monitor
can't handle them, use -notweak (or try adjusting the parameters in mame.cfg
if you know what you are doing). [Brian Lewis, Andrea Mazzoleni]

- [DOS] Removed the -nodouble command line option. Use -nostretch instead. If
you are updating from an earlier beta, make sure to delete mame.cfg (or
manually update it) otherwise stretch will be disabled. [Nicola Salmoria]
- Changed the analog port handling to avoid problems with keyboard control
(e.g. Arkanoid 2). [Nicola Salmoria]
- Simplified the error message when ROMs are missing. It now gives a list of
all the missing ROMs, it doesn't stop at the first one. [Nicola Salmoria]
Source:
------- New function cpu_getcurrentframe() which returns the number of the video
frame currently being played. It can be used by drivers to control effects
which spawn over multiple frames (e.g. blinking) without using static
internal counter (which would require a custom interrupt handler to avoid
problems when the game is paused). [Nicola Salmoria]
- Frame skipping is entirely handled by the OS dependant code.
osd_skip_this_frame() no longer has the "recommend" parameter.
Also, replaced osd_update_display() and osd_update_audio() with the single
osd_update_video_and_audio().
IMPORTANT: osd_update_video_and_audio() is called *every frame* by the main
core. It's its responsability to know whether the frame has to be skipped.
osd_skip_this_frame() is used by the main core only to know if it can avoid
calling drv->vh_update(). [Nicola Salmoria]
- New Z80 emulator. [Juergen Buchmueller]
- Fixed several bugs in the I86 emulator. [Juergen Buchmueller]
- New CPU interrupt system. The functions cpu_set_irq_line() and
cpu_set_nmi_line() can be used to precisely control the status of the CPU
physical lines, instead of using the limited control granted by
cpu_cause_interrupt(). [Juergen Buchmueller]
- Konami 007232 sound chip emulator. This is used by TMNT. [Hiromitsu Shioya]
- The driver input ports are now 16 bit. This allows for higher resolution
analog inputs (Arkanoid 2). Also, the 68000 based games no longer have to
read and mix two 8 bit ports to get a 16 bit value. [Brad Oliver]
- Added a horrible dirty hack to allow opcode encryption on CPUs other than
the main one. It's really ugly and needs a rewrite, but it's enough to get
sound in Pocket Gal and The Real Ghostbusters. [Nicola Salmoria]
- New 68000 C core. [Karl Stenerud]
- Fixed some bugs in the I8039 emulation. [Brian Stern]
- Z8000 emulator. [Juergen Buchmueller]
- NEC uPD7759 emulation. This is used by TMNT, System 16, and others.
[Juergen Buchmueller, Mike Balfour, Howie Cohen]
- CVSD emulation, used for speech in Sinistar and in the 34010 games (Smash TV
etc.). [Larry Bank, Alex Pasadyn]

- A couple of bug fixes in the 6808 core. [Brad Oliver]


- TMS32010 emulator. This is used by Twin Cobra. [Quench]
- New TileMap code. This makes the driver code cleaner and gives some
performance boost in the video rendering. [Phil Stroffolino]
- [DOS] Now compiled using Allegro 3.11.
- Merged the old and new Namco sound subssytem, and added support for stereo
output. [Aaron Giles]
- H6280 emulator, used by several DECO games. [Bryan McPhail]
- Redesigned the struct InputPort to use less space, and changed how analog
inputs are defined. An additional benefit is that the keys for digital
emulation of analog inputs are now defined in the Keys for this Game menu,
together with all other keys, instead that in the Analog Controls menu.
The Analog Controls menu remains to set the other parameters.
[Nicola Salmoria]
- Added default strings for dip switches. For example, instead of "Cabinet",
use DEF_STR( Cabinet ). The constants are defined in inptport.h.
[Nicola Salmoria]
- Added support for up to 4 analog controllers (multiple trackballs are NOT
supported under DOS, but multiple joysticks should work). [Brad Oliver]
- Major overhaul to the Atari games, and fixes to the 68000 and 6502 cores to
get them going properly. [Aaron Giles]
- OSD_FILETYPE_MEMCARD for memory cards. [Fabrice Martinez]
- The zlib library is required to build MAME, it can be downloaded from
http://www.cdrom.com/pub/infozip/zlib/.
- PNG save support. save_screen_snapshot() may be called by osd_save_snapshot()
to save a standardized shot. Under DOS, .png files go to the SNAP
directory. [Mathis Rosenhauer, Mike Haaland]
- struct GameSample no longer has a volume field (since it is not stored in .wav
files), to replace that struct Samplesinterface has an additional volume field
which affects all samples played. [Nicola Salmoria]
- Replaced osd_adjust_sample() with osd_set_sample_freq() and
osd_set_sample_volume(), and the OSD_PAN_xxx macros with MIXER_PAN_xxx.
- Added support for slave mode to the MSM5205 emulation. [Tatsuyuki Satoh]
- IMPORTANT FOR PORTERS: the "safety area" allocated by osd_new_bitmap() must
now be 16 pixels instead of 8. This is required by the NeoGeo driver.
- Added OSD_KEY_PRTSCR, OSD_KEY_LWIN, OSD_KEY_RWIN, OSD_KEY_MENU. Also moved
OSD_KEY_RCONTROL, OSD_KEY_ALTGR, OSD_KEY_PAUSE.
==========================================================================
0.34

New ROM sets supported (in alphabetical order):


----------------------------------------------1942 (set 3) (merged) [Nicola Salmoria]
4D Warriors [Nicola Salmoria]
600 (merged with Turtles) [John Dondzila]
720 Degrees (set 2) (merged) [Nicola Salmoria]
APB (set 2) (merged) (this fixes the title screen)
Alex Kidd (not working) [Phil Stroffolino]
Alien Storm (not working) [Phil Stroffolino]
Alpine Ski (two sets merged) [John Butler]
Area 88 (merged with UN Squadron) [Santeri Saarimaa]
Arkanoid 2 [Luca Elia, Mirko Buffoni]
Arm Wrestling [Nicola Salmoria]
Armored Car (set 2) (merged) [Nicola Salmoria]
Astro Fighter (set 3) (merged) [Zsolt Vasvari]
Aurail (not working) [Phil Stroffolino]
Avengers (two sets merged) (not working due to protection) [Paul Leaman]
Bagman (Stern set 1) (merged) [Nicola Salmoria]
Beastie Feastie [Clay Cowgill, Mike Balfour]
Bio Attack (no collision detection) [Thierry Lescot]
Bionic Commando (2 sets merged) [Steven Frew, Phil Stroffolino, Paul Leaman]
Black Tiger (bootleg) (merged) [Marco Cassili]
Block Gal (not working due to encryption) [Nicola Salmoria]
Brain [Nicola Salmoria]
Brix (merged with zzyzzyxx) [Brad Oliver]
Bull Fight [Nicola Salmoria]
Cop 01 (2 sets merged) [Carlos A. Lozano]
Calipso [Brad Oliver]
Captain Commando [Paul Leaman]
Carrier Air Wing (World) (merged) [Nicola Salmoria]
Checkmate [Al Kossow]
Cheeky Mouse [Chris Moore]
Commando (Data East) (merged) [Nicola Salmoria]
Cook Race [Nicola Salmoria]
Crystal Castles (set 2) (merged) [Nicola Salmoria]
DakkoChan Jansoh (not working due to encryption) [Nicola Salmoria]
Defence Command [Nicola Salmoria]
Defense Command [David Winter]
Discs of Tron (Upright) (merged) [Nicola Salmoria]
Dynamite Dux [Phil Stroffolino]
Dynasty Wars (not working) [Paul Leaman]
E-Swat (not working) [Phil Stroffolino]
Electric Yo-Yo (not working due to protection) [Al Kossow]
Exciting Soccer (two sets merged) [Ernesto Corvi, Jarek Parchanski]
Exerion (Taito) (merged) [Nicola Salmoria]
Express Raider (2 sets merged) [Ernesto Corvi]
Exterminator [Alex Pasadyn, Zsolt Vasvari]
F1 Dream (bootleg) (merged) (this one works) [Paul Leaman]
Fantasy Zone (not working) [Phil Stroffolino]
Flash Point (not working) [Phil Stroffolino]
Flicky (2 sets merged) [Nicola Salmoria]
Formation Z (merged with Aeroboto) [Nicola Salmoria]
Frogs [Nicola Salmoria]
Future Spy [Nicola Salmoria]
Galactic Warriors [Andrew Prime]
Galaxy Rescue (merged with Lunar Rescue) [David Winter]
Galivan [Luca Elia, Olivier Galibert]
Gardia (not decrypted YET) [Nicola Salmoria]

Get Star [Luca Elia]


Ghostbusters [Bryan McPhail]
Ghosts'n Goblins (2 new sets, merged) [Zsolt Vasvari, Nicola Salmoria]
Golden Castle (merged with gladiatr) [Steve Ellenoff]
Golden Star (blue version) (merged) [Mirko Buffoni]
Gradius [Andrew Prime]
Great Swordsman [Steve Ellenoff]
Gridiron Fight [Nicola Salmoria]
Growl [Brad Oliver]
Gun Dealer (set 2) [Gerald Vanderick]
Gunsmoke (US set 2, without the reset bug) (merged) [Nicola Salmoria]
Hard Hat [Al Kossow]
Heavy Metal [Nicola Salmoria]
Heavyweight Champ (not working) [Phil Stroffolino]
Heiankyo Alien [Nicola Salmoria]
Heli Fire (set 2) [David Winter]
Hi Impact Football [Alex Pasadyn, Zsolt Vasvari, Kurt Mahan]
HigeMaru [Mirko Buffoni]
Hustle [Frank Palazzolo]
Hyper Olympic (bootleg using ADPCM samples) (merged) [David Winter]
I'm Sorry (2 sets merged) [Nicola Salmoria]
Intrepid [Zsolt Vasvari]
Invader's Revenge (Dutchford) [David Winter]
Jack Rabbit (2 new sets merged) [Nicola Salmoria]
Jack the Giant Killer (set 2) (merged) [Thierry Lescot]
Jail Break [Ernesto Corvi]
Jump Shot (not working due to encryption) [Nicola Salmoria]
Jumping (merged with Rainbow Islands) [Mike Coates]
Jungler (Stern) (merged) [Nicola Salmoria]
Kangaroo (bootleg) (merged) [Nicola Salmoria]
Karate Champ (1 Player) [Ernesto Corvi]
Karate Champ (VS and Karatedo, merged) [Ernesto Corvi]
Kick (upright version) (merged) [Nicola Salmoria]
Kid Niki [Phil Stroffolino]
King & Balloon [Brad Oliver]
Klax (set 3) (merged) [Nicola Salmoria]
Kram (not playable) (2 sets merged)
Kung Fu Master (2 new sets merged) [Nicola Salmoria]
Lady Bug (bootleg) (merged) [Marco Cassili]
Last Duel (bootleg) (this fixes the graphics) [Bryan McPhail]
Legendary Wings (US set 2) (merged) [Nicola Salmoria]
Liquid Kids [Brad Oliver]
Lode Runner (set 1) (merged) [Nicola Salmoria]
Lode Runner IV [Nicola Salmoria]
Lost Tomb (hard) (merged) [Michael Appolo]
M79 Ambush [Al Kossow]
Magic Sword (USA) (merged) [Nicola Salmoria]
Major League (not working) [Phil Stroffolino]
Mania Challenge (set 2) (merged) [Nicola Salmoria]
Max RPM (no sound due to missing ROMs) [Aaron Giles]
Maze Hunter [Bryan McPhail]
Meadows Lanes [Juergen Buchmueller]
Mega Man (merged with Rockman) [Santeri Saarimaa]
Mercs (3 sets merged) [Paul Leaman]
Midnight Resistance (Japan) (merged) [Bryan McPhail]
Mikie (headbutt version) (merged) [Nicola Salmoria]
Missile Command (set 2) (merged) [Nicola Salmoria]
Mister Viking [Nicola Salmoria]
Moon War II (2 sets merged) [Brad Oliver]
Mortal Kombat [Alex Pasadyn, Zsolt Vasvari, Kurt Mahan]

Mortal Kombat II (not working)


Mr. Do! (Yukidaruma) (merged) [Nicola Salmoria]
Mr. Do! (bugfixed) (merged) [Gareth Hall]
Mr. TNT [Brad Oliver]
My Hero (2 sets merged) [Nicola Salmoria]
NBA Jam (not working)
Narc [Alex Pasadyn, Zsolt Vasvari, Kurt Mahan]
Oscar (2 sets merged) [Bryan McPhail]
Ozma Wars [Al Kossow]
P.O.W. [Bryan McPhail]
Pac Man Plus [Clay Cowgill, Mike Balfour]
Pacland (set 1) (merged) [Nicola Salmoria]
Pang [Paul Leaman]
Penguin-Kun Wars (two sets merged) [Allard van der Bas]
Phoenix (IRECSA) (merged) [David Winter]
Pickin' [Nicola Salmoria]
Pinball Action (set 2) (merged) [Marco Cassili]
Pitfall II (encrypted version) (merged) [Nicola Salmoria]
Polaris (set 2) [Victor Trucco]
Pooyan (Konami) (merged) [Nicola Salmoria]
Pot of Gold [Nicola Salmoria]
Psychic 5 [Jarek Parchanski]
Quartet II (not working) [Phil Stroffolino]
Qwak (prototye) [Mike Balfour]
RF2 [Andrew Prime]
Regulus (2 sets merged) [Nicola Salmoria]
Renegade (two sets, only the bootleg works) [Phil Stroffolino]
Ring King / King of Boxer (merged) [Ernesto Corvi]
River Patrol / Silver Land [Zsolt Vasvari]
Road Fighter (set 2) (merged) [Nicola Salmoria]
Rockman [Paul Leaman]
Rygar (US set 1) (merged) [Nicola Salmoria]
SDI (not working) [Phil Stroffolino]
SWAT [Nicola Salmoria]
Samurai [Nicola Salmoria]
Sasuke vs. Commander [Nicola Salmoria]
Sauro [Zsolt Vasvari]
Scion (2 sets merged) [Nicola Salmoria]
Sea Fighter Poseidon (not working due to protection) [Nicola Salmoria]
Sega Ninja / Ninja Princess (merged) [Jarek Parchanski, Nicola Salmoria]
Shark Attack [Victor Trucco]
Side Track [Al Kossow]
Sidearms (US) (merged) [Nicola Salmoria]
Silkworm (set 2) (merged) [Nicola Salmoria]
Sinistar (revision 2) (merged) [Howie Cohen]
Smash TV (2 sets merged) [Alex Pasadyn, Zsolt Vasvari, Kurt Mahan]
Snow Bros (set 1) (merged) [Zsolt Vasvari]
Space Fever (B&W) [Al Kossow]
Space Panic (German) [Mike Coates]
Space Trek (cocktail version) [Nicola Salmoria]
Speak & Rescue [Al Kossow]
Spectar (revision 3) (merged) [Al Kossow]
Speed Ball [Joseba Epalza]
Spelunker II [Phil Stroffolino]
Star Jacker [Nicola Salmoria]
Stinger [Nicola Salmoria]
Street Fighter 2 (2 sets merged) [Paul Leaman]
Strike Force [Alex Pasadyn, Zsolt Vasvari, Kurt Mahan]
Subs [Mike Balfour]
Super Bagman (Valadon) (merged) [Nicola Salmoria]

Super Casino [Thierry Lescot]


Super Hi Impact [Alex Pasadyn, Zsolt Vasvari, Kurt Mahan]
Super Invaders [David Winter]
Super Mouse [Brad Oliver]
Superman [Howie Cohen, Brad Oliver]
Tag Team Wrestling [Steve Ellenoff, Brad Oliver]
Tecmo Knight [Nicola Salmoria]
TeddyBoy Blues [Nicola Salmoria]
Terminator 2 (not playable)
Terra Cresta (two sets merged) [Carlos A. Lozano]
Tetris (Cocktail set 1) (merged) [Zsolt Vasvari]
The Billiards (merged with Video Hustler) [Nicola Salmoria]
The Empire Strikes Back (not playable) [Brad Oliver]
The King of Dragons (2 sets) [Paul Leaman]
The Tin Star (not complete) [Nicola Salmoria]
Tiger Heli (4 sets merged, only 2 work) [Nicola Salmoria]
Time Pilot (Centuri) (merged) [Nicola Salmoria]
Time Pilot 84 (set 2) (merged) [Nicola Salmoria]
Time Scanner (not working) [Phil Stroffolino]
Time Tunnel [Thierry Lescot]
Toki no Senshi [Nicola Salmoria]
Tokio / Scramble Formation (two sets merged) [Marcelo de G. Malheiros, Fredrik S
jostedt]
Tomahawk 777 (two sets merged) [Zsolt Vasvari]
Top Gunner (bootleg; also fixed the original set) [Nicola Salmoria]
Total Carnage (2 sets merged) [Alex Pasadyn, Zsolt Vasvari, Kurt Mahan]
Tough Turf (not working) [Phil Stroffolino]
Track & Field (Centuri) [Nicola Salmoria]
Treasure Hunt (not working due to encryption) [Brad Oliver, Mike Balfour]
Trog (3 sets merged) [Alex Pasadyn, Zsolt Vasvari, Kurt Mahan]
Tron (set 2) (merged) [Nicola Salmoria]
Turbo (preliminary) (3 sets merged) [Alex Pasadyn, Howie Cohen, Frank Palazzolo]
Twin Cobra (preliminary) [Quench]
TwinBee [Andrew Prime]
Ufo Senshi Yohko Chan (not working due to encryption) [Nicola Salmoria]
Vanguard (Centuri) (merged) [Nicola Salmoria]
Varth [Paul Leaman]
Vastar (set 2) (merged) [Nicola Salmoria]
Venture (version 4) (merged) [Al Kossow]
Venus (merged with Gyruss) [Nicola Salmoria]
Vigilante (two sets merged) [Mike Balfour, Phil Stroffolino]
Vulgus (set 2) (merged) [Nicola Salmoria]
Water Ski [Nicola Salmoria]
Western Express (merged with Express Raider) [Nicola Salmoria]
Wonder Boy (many new sets, all merged) [Nicola Salmoria]
Wonder Boy Monster Lair [Phil Stroffolino]
Wrestle War [Phil Stroffolino]
Yankee Do! (merged with Mr. Do!) [Lee Taylor]
Zero Zone [Brad Oliver]
Zig Zag (2 sets merged) [Nicola Salmoria]

NeoGeo Support
-------------You need a zip file called neogeo.zip in your rompath. It should contain at
least three files:
neo-geo.rom (128k)

ng-sfix.rom (128k)
ng-sm1.rom (128k)
Important! The bios zip file must be called neogeo.zip NOT neo-geo.zip, ie,
there should be no dash in the middle.
You also need to place the game zip in your rompath. If you do not know what 8
character filename the NeoGeo game you want to play has you can type:
mame -listclones neogeo
That will list the 8 character zip names of all currently supported games.
- Optional rom loading of samples: You may find games that do
not work now due to lack of memory as all the sound roms need to be loaded.
Some games will require an extra 16 megabytes of memory to load the sound
roms. You can force Mame NOT to load these samples if you specify no sound
BEFORE rom loading takes place. In Dos this means you must type:
mame game -soundcard 0
If you DO NOT specify soundcard 0 then all sound roms will be loaded and
you may experience memory problems.
- All games work, both in arcade and home mode. If you are stuck with a
copyright message or the coin inputs don't work, delete the .CFG and .HI file
for that game. This will fix the problem.
Super Sidekicks controls stop working after a couple of minutes, though.
- Sound support is 99% complete. If you experience garbled sound and you get
NO GOOD DUMP EXISTS errors, this is caused by bad ROMs, not by imperfect
emulation. There is NO WAY to fix that apart from redumping the bad ROMs.
- If you get a Z80 ERROR message, it means that the sound program ROM is bad.
Run the game without sound.
- A few games have graphics glitches which are not easily fixed (raster line
effects).
- "ROM length mismatch" errors. If you get these, and you are using ROMs
larger than the ones MAME expects, then this is not a fatal error and the
game will still run fine (provided the ROMs are good, of course). You can
"fix" the ROMs yourself just by removing the second half of the file.
Note that the sizes used by MAME are sort of arbitrary. In many cases it is
difficult to know for sure which size the ROMs are really supposed to be, so
we decided to consistently use the smallest possible files. The real ROMs
*might* be larger than that, but the extra space is not used by the game it is either all FF, or contains a verbatim copy of the first half.

These drivers have improved GRAPHICS:


------------------------------------- Fixed colors in Fast Freddie
- In Mario Bros., the screen bounces when you hit POW. [Brad Oliver]
- Improved Slap Fight. [Christoff Feldtmann]

- Accurate colors in Money Money and Jack Rabbit. [Nicola Salmoria]


- Enemies in TNZS are now visible, using the gfx ROMs from a new set (which is
not supported yet). [Chris Moore]
- Fixed sticking sprites in Pnickies and Nemo. [Paul Leaman]
- The background in Golden Star changes color correctly. [Nicola Salmoria]
- Accurate colors in Astro Fighter (PROMs required). [Zsolt Vasvari]
- Accurate colors in Lost Tomb (PROMs required). [Michael Appolo]
- Fixed tile flipping bug in Solomon's Key. [Nicola Salmoria]
- Fixed fg/bg priority in TeddyBoy Blues and Choplifter. [Nicola Salmoria]
- Fixed transparency in Fire Trap. [Nicola Salmoria]
- Fixed gfx banks in Pop Flamer. [Brad Oliver]
- Pleiads colors might be correct now. [Nicola Salmoria]
- Accurate colors in Strategy X. [Gerald Vanderick]
- Backdrop support in Discs of Tron. The background image must be called
ARTWORK/DOTRON.PNG. [Mathis Rosenhauer, Brandon Kirkpatrick]
- Fixed sprite flipping in Super Qix. [Mirko Buffoni]
- Accurate colors in Jungler. Also fixed char flipping and sprite alignment.
[Nicola Salmoria]
- Fixed bad graphics in Champion Baseball. [Nicola Salmoria]
- Better colors in Scion (still not accurate) [Dick Millikan]
- Added artwork support to Lunar Lander. [Cristopher Kirmse]
- Added artwork support to Asteroid Deluxe. [Peter Hirschberg, Mathis Rosenhauer
]
- Fixed mooncrgx. [Barry Rodewald]
- High resolution sprites in Blasteroids. [Nicola Salmoria]
- Fixed flickering sprites in Super Space Invaders. [Andrew Prime]
- Accurate colors in Space Panic. [Mike Coates]

These drivers have new or improved SOUND:


----------------------------------------- Sound in Gladiator. [Steve Ellenoff]
- The music in Bubble Bobble stays in sync now. [Tatsuyuki Satoh]
- Rewritten the SN76496 emulator. This fixes speech in Choplifter.

[Nicola Salmoria]
- Fixed pitch in the System 8 games. [Hiromitsu Shioya]
- Added RC filter emulation to Gyruss. This improves some sound effects, e.g.
the force field noise. [Francesco Caporali]
- Sound in Mysterious Stones. [Nicola Salmoria]
- Fixed sound pitch and tempo in Donkey Kong. [Mirko Buffoni]
- Improved music tempo in SlapFight. [Sebastien Chevalier]
- Sound in all of the working System 16 games. [Phil Stroffolino]
- Emulation of the Astrocade sound chip (Gorf, Wizard of Wor, etc.)
[Frank Palazzolo]
- Improved speech in Gorf. It now plays speech 100% accurately except for the
missing samples. [Kevin Bales]
- Partial sound in Punk Shot. [Nicola Salmoria]
- Sound in Super Space Invaders. [Ernesto Corvi]
- Added decay to Donkey Kong. [Andrew Scott]
- Added some more sound effects to Juno First. The shoot sound is still
missing. [Nicola Salmoria]
- Improved the Pokey emulation. [Juergen Buchmueller]
- Support for stereo output. This is implelemented in the YM2610 and in
Tatsuyuki's YM2151. It can be used by other games, for example the Atari
System 2 games (Paper Boy etc.) have two Pokeys, one per channel.
[Nicola Salmoria]
- Fixed bass track in Do Run Run. [Jim Hernandez]
- Partial sound in Satan of Saturn. [Nicola Salmoria]
- Preliminary sound support in the Exidy games. [Dan Boris]
- Fixed music in Moon Patrol, Traverse USA and the other Irem games.
[Nicola Salmoria]
- Samples support in Astro Fighter. [Zsolt Vasvari]

These drivers have HIGH SCORE support:


-------------------------------------NOTE: the high score save format has changed in some games to make it cross
platform. The old scores for those games will be lost. If you see garbage in
the high score table, or otherwise strange behaviour, delete the .hi file.
- Xain'd Sleena/Solar Warrior, Pinball Action, Tiger Road, Karnov, Chelnov,
Heavy Barrel, Bad Dudes, Robocop, Hippodrome, Sly Spy, Midnight Resistance,
Nemesis. [Dani Portillo]

- Shark Attack. [Mike Balfour]


- Flicky, Bull Fight, I'm Sorry, Star Jacker, Mr Viking, 4d Warrior, TeddyBoy
Blues, Beastie Feastie, Contra, Cobra Command, Super Qix, Vigilante, Pang,
HigeMaru, Hexa, Terra Cresta, Rastan, Tiger Heli. [Juan Carlos Lorente]
- Quantum. [Nicola Salmoria]
- Champion Baseball, Wonder Boy, Regulus, SWAT, Heavy Metal, Brain,
Toki no Senshi, Bionic Commando, Blasto, Tomahawk, Astro Invader,
Block Out, Dark Seal, Cosmic Alien, Crazy Balloon, Radarscope, Side Track.
[Howie Cohen]
- Money Money, Jack Rabbit, Penguin-Kun Wars. [Roberto Fresca]
- Cloak and Dagger, Frenzy, Future Spy, Cop 01, Lode Runner, Kid Niki,
Spelunker II, Jail Break, The Main Event, King of Boxer, Express Raider,
Pac Land, Speed Ball, TMNT, Punk Shot. [Dave W.]
- Exciting Soccer. [Jarek Parchanski]
- Scion, Stinger. [Zsolt Vasvari]

Other drivers changes:


---------------------- The original Elevator Action now works, using the 68705 mcu ROM which was
missing. Since there is one additional CPU to emulate, it is slower than the
bootleg version. [Nicola Salmoria]
- Replaced Front Line with the complete set containing the 68705 code. It
still doesn't work though. [Nicola Salmoria]
- Replaced Golden Star with the original, encrypted set. [Mirko Buffoni]
- Improvements to the System 8 driver. [Nicola Salmoria]
- Front Line and Tin Star have the aiming dial (using a dual joystick setup).
Also, you can now kill and be killed in Front Line. However, collision
detection is not accurately emulated. [Nicola Salmoria]
- Fixed ending in Robocop. [JC Alexander]
- *FINALLY* fixed Commando sometimes not starting. It was a bug in the decode
routine, which has been completely rewritten. [Nicola Salmoria]
- Improved Gladiator input handling. [Tatsuyuki Satoh]
- Improved the System 16 drivers. [Phil Stroffolino]
- Fixed movement of the squares in Checkman. [Brad Oliver]
- Fixed hang on level 7 of Discs of Tron. [Jim Thevenot]
- Fixed Blasto. [Juergen Buchmueller]
- Chelnov is now playable! Plus many other fixes to the driver including

slowdowns in Karnov. [Bryan McPhail]


- Fixed srumbler2. [Paul Leaman]
- Several improvements and bug fixes to the Data East 68000 games (Midnight
Resistance, Bad Dudes, Robocop, etc.). [Bryan McPhail]
- Fixed resetting bug in Triple Punch. [Zsolt Vasvari]

Changes to the main program:


---------------------------- Fixed a bug in the NOT instruction of the 68000 core. [Mike Coates]
- You can proceed from the "press OK to continue" screen by pushing left then
right. You can also immediately quit by pressing ESC. [Nicola Salmoria]
- Vector translucency can be turned off with -notranslucency.
[Valerio Verrando]
- [DOS] New -romident option. Use "MAME -romident dirname" to identify unknown
ROM sets.
- Switched to CRC-32 for file integrity checks. The old custom checksums are no
longer used. [John Butler, Bernd Wiebelt]
- When using zipped files, ROMs are automatically retrieved even if they don't
have the expected name (provided they have the correct CRC-32, of course).
You'll never have to rename files any more (though you might have to rename
zips ;-) [Nicola Salmoria]
- [DOS] New command -listcrc. It lists the CRC-32 for all the supported ROMs.
00000000 means that the ROM is known to be bad. [Nicola Salmoria]
- Fixed bug in the 68000 interrupt handling which caused Rastan Saga to not
boot correctly. [Brad Oliver]
- [DOS] Profiler. To enable it, use the -profiler parameter; then,
hit Left Shift + F11 to show the results on screen.
The profiler REQUIRES the Pentium-class RDTSC instruction. It will not work
on 486s, older Pentiums, and maybe other non-Intel CPUs. [Nicola Salmoria]
- Improved the user interface. Use "the key on the left of 1" (tilde on some
leyboards) to turn on the On Screen Display which lets you change Volume,
Gamma Correction, Brightess, and independently set the volume levels of the
sound chips. Tab still brings up the setup menu, which is now asynchronous.
[Nicola Salmoria]
- [DOS] Replaced the -fm option with -ym2203opl. Added -noym3812opl to use the
digital emulation of the YM3812 instead of the SoundBlaster OPL chip. Note
that with -noym3812opl you also need external drum samples. [Nicola Salmoria]
- Clone sets are not reported as missing by -verifyroms if only the parent set
is present. [John Butler]
- [DOS] Stereo sound support. It is a little slower than mono, to turn it off
use -nostereo. Stereo is enabled only for games which really need it. The
others always use mono.

- [DOS] New -listinfo command to give details on all of the supported games.
[Andrea Mazzoleni]
- Several changes to the cheat system, you'll have to download a new cheat
database if you want to use it. [Stephane Humbert]
- [DOS] Now using a new beta version of the SEAL audio library which further
improves the dynamic range. You'll notice louder and better balanced sound
in many games. Let me know about games with bad balance.
The new library should also fix problems with the ENSONIQ AudioPCI and
Creative PCI64 cards. [Nicola Salmoria]
- When using the SoundBlaster OPL chip, YM3812 commands are converted to play
at the correct frequency. [Carl-Henrik Skrstedt]
- Joystick calibration is available in the Tab menu. [Bernd Wiebelt]
- Fixed bug in the Z80 emulator which caused crashes in Tapper and Tron.
[Juergen Buchmueller]

Source:
------- Moved the Sega encryption code used by Flicky, Future Spy, and many others,
to machine/segacrpt.c. [Nicola Salmoria]
- Added memory_region_length field to the RunningMachine structure. This could
be useful for drivers which handle several games on similar hardware.
[Nicola Salmoria]
- TMS34010 emulator. [Alex Pasadyn, Zsolt Vasvari]
- Replaced the 6502 emulator with a new one which also supports 65C02 and 6510.
Marat Fayzullin's core is no longer used. [Juergen Buchmueller]
- Fixed a bug in the 68000 BCD emulation which caused the F1 Dream timer to
malfunction. [Nicola Salmoria]
- Fixed bug in the Z80 block I/O instructions (INI, IND, INIR, INDR, OUTI,
OUTD, OTIR, and OTDR). [Frank Palazzolo]
- [DOS] Rearranged the makefile using archives to work around E2BIG error on
some machines. [Juergen Buchmueller]
- Improved unzip code robustness when dealing with corrupt archives.
[John Butler]
- Fixed SBCD in M68000 disassembler. [Mike Coates]
- New unzip interface. New zip directory cache and filename cache (the latter
only in the DOS version). [Andrea Mazzoleni]
- New streams.c to abstract audio streams. This makes them easier to use and
more efficient. osd_play_streamed_sample() should now be considered a private
function and should not be used in new code. [Nicola Salmoria]

- Fixed bug in the I8039 external interrupt handling. [Dan Boris]


- New file types for osd_fopen(): OSD_FILETYPE_STATE and OSD_FILETYPE_ARTWORK.
- x86 ASM 68000 core. This is a major speed improvement. [Mike Coates, Darren
Olafson]
- YM3812 and YM3526 software emulator. In the DOS version it is disabled
by default because we are using the 100% compatible SoundBlaster OPL chip.
[Carl-Henrik Skrstedt]
- A begginning for a YM2413 emulator. It pushes data through the YM3812.
[Paul Leaman, Ernesto Corvi]
- I86 disassembler for the debugger, based on code by Robin Hilliard.
[Andrea Mazzoleni]
- New functions install_mem_read_handler() and install_mem_write_handler().
They can be used to install special memory handlers (for example, to trap
busy loops, or to make small changes to the memory map for games running
on similar hardware). [Alex Pasadyn]
- New field driver_init in the GameDriver structure. It's an optional function
which can be used to do some game specific initialization, for example by
adding memory handlers using the above functions. [Nicola Salmoria]
- YM2610 emulator. This is used by the NeoGeo games. [Hiromitsu Shioya]
- TMS9900 emulator. [Andy Jones, based on original code by Ton Brouwer]
==========================================================================
0.33 (0.32 doesn't exist to avoid confusion with MAME32)
A lot of ROM renaming and moving around has been done. I know this is annoying
but it was necessary. See merged.txt for details.
New ROM sets supported (in no particular order):
-----------------------------------------------Faster, Harder, More Challenging Q*Bert
Pac-Land [Ernesto Corvi]
Punk Shot [Nicola Salmoria]
Teenage Mutant Ninja Turtles [Alex Pasadyn]
Lock'n'Chase [Zsolt Vasvari]
Side Pocket [Ernesto Corvi]
Satan of Saturn / Zarzon [Dan Boris]
Xain'd Sleena/Solar Warrior [Carlos A. Lozano]
Up'n Down [Thierry Lescot]
Magic Sword [Paul Leaman]
Space Dungeon [Dan Boris]
Slap Fight (preliminary) [Keith Wilkins]
Hexa [Howie Cohen]
Space Encounters [Al Kossow, Brad Oliver]
Clowns [Al Kossow, Brad Oliver]
Guided Missile [Al Kossow, Brad Oliver]
Sea Wolf [Al Kossow, Brad Oliver]
Gunfight [Al Kossow, Brad Oliver]

Lupin III [Al Kossow, Brad Oliver]


Shoot Out [Ernesto Corvi]
Curve Ball [Mike Balfour]
Challenger [Al Kossow]
Kaos [Chris Moore]
F1 Dream (preliminary) [Paul Leaman]
Double Dragon / Double Dragon 2 [Carlos A. Lozano, Rob Rosenbrock,
Phil Stroffolino, Ernesto Corvi]
Aeroboto (preliminary) [Carlos A. Lozano]
Blasto [Frank Palazzolo]
Shinobi [Mirko Buffoni]
Golden Axe [Mirko Buffoni]
Alien Syndrome [Mirko Buffoni]
Altered Beast [Mirko Buffoni]
Passing Shot (preliminary - the System 16 driver needs to support rotation)
[Mirko Buffoni]
Tetris (Sega, bootleg) [Mirko Buffoni]
Juno First [Chris Hardy]
Darwin 4078 [Ville Laitinen]
Safari [Zsolt Vasvari]
Pnickies [Paul Leaman]
Ghouls and Ghosts [Paul Leaman]
Knights of the Round (preliminary) [Paul Leaman]
Carrier Air Wing (preliminary) [Paul Leaman]
Zoar [Zsolt Vasvari]
Klax [Aaron Giles]
Red Alert [Mike Balfour]
I, Robot (preliminary) [Dan Boris]
Paperboy [Aaron Giles]
Super Sprint [Aaron Giles]
Championship Sprint [Aaron Giles]
720 Degrees [Aaron Giles]
APB (preliminary, and bad ROMs) [Aaron Giles]
Zyyzzyxx [Brad Oliver]
Eyes [Zsolt Vasvari]
Space Seeker [Nicola Salmoria]
Ponpoko [Zsolt Vasvari]
Head On [Al Kossow]
Invinco / Deep Scan [Al Kossow]
Tranquilizer Gun [Al Kossow]
Space Trek [Al Kossow]
Money Money [Nicola Salmoria]
Jack Rabbit [Nicola Salmoria]
Blasteroids [Aaron Giles]
Xybots [Aaron Giles]
Escape from the Planet of Robot Monsters [Aaron Giles]
Xenophobe [Bryan McPhail]
Super Space Invaders '91 (preliminary) [Howie Cohen]
Crazy Balloon [Nicola Salmoria]
Nemesis [Allard van der Bas]
Konami GT (preliminary) [Allard van der Bas]
Depth Charge [Al Kossow]
Cosmic Alien [Lee Taylor]
Spiders [Keith Wilkins]
Last Duel (preliminary; the ROM set is incomplete) [Bryan McPhail]
Mad Gear (preliminary; the ROM set is incomplete) [Bryan McPhail]
Cobra Command [Bryan McPhail]
Bowl-O-Rama [Zsolt Vasvari]
1941 [Darren Olafson]
Nemo [Darren Olafson]

Nova 2001 [Howie Cohen, Frank Palazzolo, Alex Pasadyn]


Super Bond [Chris Hardy]
Avalanche [Mike Balfour]
Gladiator [Victor Trucco, Steve Ellenoff, Phil Stroffolino]
Lazer Command [Juergen Buchmueller]
Dead Eye [Juergen Buchmueller]
Gypsy Juggler [Juergen Buchmueller]
Fax [Mike Balfour]
Heli Fire [Al Kossow]
Space Fever [Al Kossow]
Birdie King 2 (preliminary) [Ed Mueller, Mike Balfour]
Lizard Wizard [Mike Balfour]
Pioneer Balloon [Juergen Buchmueller]
Jackal/Top Gunner [Kenneth Lin]
Contra/Gryzor [Carlos A. Lozano, Jose Tejada Gomez, Phil Stroffolino,
Eric Hustvedt]
Solomon's Key [Mirko Buffoni]
Round-Up [Zsolt Vasvari]
Tehkan World Cup [Ernesto Corvi, Roberto Fresca]
Tee'd Off (preliminary) [Ernesto Corvi, Roberto Fresca]
Vindicators [Aaron Giles]
Space Tactics [Frank Palazzolo]
Polaris [Victor Trucco]
The Main Event [Bryan McPhail]
Devastators (not working) [Bryan McPhail]
Dark Seal / Gate of Doom [Bryan McPhail]
Golden Star [Mirko Buffoni]
The Glob [Mike Balfour]
Ninja Kid 2 [Jarek Parchanski]
Centipede (rev 1) [Brad Oliver]
Tutankham (Konami). Note that the old version has been renamed "tutankst".
[Marc Vergoossen]
Nibbler (alternate) Note that I also replaced a bad sound ROM in the previous
set with the good one in this set. [Nicola Salmoria]
Heavy Barrel (new, complete set). The old one has been renamed & modified to
include 4 ROMs which were missing. [Bryan McPhail]
Strider (Japanese) [Marco Cassili]
Willow (Japanese) [Marco Cassili]
Final Fight (Japanese) [Marco Cassili]
Chicki Chicki Boys (Japanese Mega Twins) [Marco Cassili]
MotoRace USA [Nicola Salmoria]
1943 (Japanese) [Nicola Salmoria]
Sinistar (allegedly from a prototype machine that was displayed at the 1982
AMOA show in Las Vegas) [Brian Deuel]
Exerion (bootleg?) [Nicola Salmoria]
Moon Alien Part 2 [Al Kossow]
Masao [Hugh McLenaghan]
Fighting Fantasy [Marco Cassili]
1941 (Japanese) [Marco Cassili]
Nemo (Japanese) [Sawat Pontree]
Ghouls'n Ghosts (Japanese) [Marco Cassili]
Magic Sword (Japanese) [Marco Cassili]
1942 (alternate) [Nicola Salmoria]
Bagman (original Valadon Automation version; the Stern version has been renamed
"bagmans") [Nicola Salmoria]
Kicker [Nicola Salmoria]
Tempest version 2 and 3 ("tempest" has been renamed "tempest1"; "tempest" is
now version 3) [Darrin Redick]
Gladiator (Japan) [Nicola Salmoria]
Zoo Keeper (alternate) [Nicola Salmoria]

Two new Mikie sets (US/Japan). The old one was bad and has been removed.
[Nicola Salmoria]
Moon Cresta (bootleg on Galaxian hardware) [Nicola Salmoria]
Pengo (encrypted version of set 2. The unencrypted version has been renamed
"pengo2u") [Tim Lindquist]
These drivers have improved GRAPHICS:
------------------------------------- Fixed glitches in Gemini Wing and Rygar. [Li Jih Hwa]
- Fade-in/fade-out in Robocop [Nicola Salmoria]
- Fixed colors in Centipede, including service mode multiplexed color test.
[Nicola Salmoria]
- Fixed background layer colors in Trojan [Paul Leaman]
- Fixed invisible ball in Champion Baseball. Some of the graphics are still
broken. The reason is unknown. [Nicola Salmoria]
- Adjusted the brightness of the background in Popeye, which should make it
correct according to the schematics. Maybe now it's too dark?
[Nicola Salmoria]
- Fixed colors in Road Runner. [Aaron Giles]
- Accurate colors:
Zoar [Zsolt Vasvari]
Warp Warp [Nicola Salmoria]
Wonder Boy Deluxe, Up'n Down, Pitfall II [Nicola Salmoria]
Eggs [Gerald Vanderick]
Fast Freddie/Fly-Boy (not sure about this one) [Zsolt Vasvari]
Jump Coaster [Zsolt Vasvari]
Warlords [Zsolt Vasvari]
Mega Attack and possibly the other Gameplan games [Chris Moore]
Road Fighter [Paul Swan]
- Some fiddling with the Atari vector games frame rates. [Nicola Salmoria]
- Slightly reduced the visible area of the Williams games, I'm not sure which
would be the correct setting though. [Nicola Salmoria]
- Better colors in Red Alert. [Mike Balfour]
- Zaxxon and Congo Bongo support rotation. [John Butler]
- Fixed colors in Space Firebird. [Chris Hardy]
- Fixed sprite/background priority in Gemini Wing. [Nicola Salmoria]
- Fixed some wrong graphics in Lode Runner. [Nicola Salmoria]
- Accurate colors, and many other fixes, in TNZS. [Richard Mitton]
- Fixed colors in Crater Raider. [Aaron Giles]
- Cocktail mode support in some games (invaders, btime, etc.).
[Martin Sandiford]

- Inspired by Retrocade and Vector Dream, changed the vector games to use
translucent vectors. Color intensities had to be lowered, if it feels too dark
for you now, increase the gamma correction value. [Bernd Wiebelt]
- Fixed sprite priorities and tile flip in Pinball Action. [Nicola Salmoria]
- Fixed Motos High Score display. [Zsolt Vasvari]
- Moon Cresta uses the original gfx ROMs, fixing graphics glitches on the title
screen.
These drivers have new or improved SOUND:
----------------------------------------- New Zealand Story [Carlos A. Lozano]
- Fixed fuel alert sound in Lunar Lander. [Keith Wilkins]
- Added speech to Champion Baseball. [Nicola Salmoria]
- Put back sample support in Q*Bert Qubes. [Rodimus Prime]
- Music in 3 Stooges. [Nicola Salmoria]
- Emulated sound in Lunar Lander. [Keith Wilkins]
- Sound in the Gameplan games. [Chris Moore]
- Increased music tempo in Snow Bros.
- Updated VLM5030 emulation (Punch Out etc.). Since quality is still bad, the
emulator is only used when samples are not available. [Tatsuyuki Satoh]
- Sped up music tempo in Gun Dealer.
- Wizard of Wor supports word samples. Only 70% of the needed samples are
available, however. [Alex Judd]
- Fixed D-Day. [Zsolt Vasvari]
- Sound in Space Firebird. [Dan Boris]
- Fixed bug in ADPCM sample playback. Many games are affected, e.g. Robocop,
Bad Dudes. [Nicola Salmoria]
- Attempt at making the main Galaxian / Moon Cresta sound channel more
accurate. [Nicola Salmoria]
- Fixed bug in VLM5030 emulator which caused samples not to work.
[Tatuyuki Satoh]
- Sound in Toki. [Nicola Salmoria]
- The YM3812 emulator still passes commands to the Sound Blaster OPL chip, but
it handles timers in software. osd_ym3812_status and osd_ym3812_read removed.
[Aaron Giles]
- Emulated sound in Yie Ar Kung Fu (speech is missing for now) [Nicola Salmoria]

- Sound in Pinball Action. [Mirko Buffoni]


- Partial sound in Midnight Resistance and Sly Spy. [Bryan McPhail]
- Emulated music in Carnival, and support for a new set of samples.
[Peter Clare]
These drivers have HIGH SCORE support:
-------------------------------------- Swimmer, Pop Flamer [Brad Oliver]
- Fixed Wonder Boy Deluxe [Chris Moore]
- Locomotion, Jungler, Commando (Sega), Wonder Boy in Monster Land, Rygar,
Gemini Wing, Silkworm, City Connection, Trojan, Up'n Down. [Dani Portillo]
- Fixed Diamond Run. [Mike Balfour]
- Front Line. [Steve Ellenoff]
- Fixed Black Tiger, Bank Panic and The End. [Nicola Salmoria]
- World Cup '90 [Juan Carlos Lorente]
- Challenger, MegaTack, Killer Comet. [Santeri Saarimaa]
- TNZS. [Santeri Saarimaa]
- Vastar. [Dani Portillo]
- Fixed Rygar (you'll have to delete your old .hi file) [Dani Portillo]
Other drivers changes:
---------------------- Fixed Atari System 1 games not accepting coins with -fm (actually -fm was
supposed to be a no-op in this case since emulation of the YM2151 through
OPL is not supported). You still have to keep sound on, however; disabling
it will disable coins. Of course you can set the dip switches to Free Play
and forget about coins.
- Service mode in Centipede and Millipede works. [Brad Oliver]
- Added support for coin counters to some games. [Brad Oliver]
- Heavy Barrel is playable to the end, but there are still some problems.
[Bryan McPhail]
- Improved speed in the CPS1 games. [Paul Leaman]
- Fixed speed in Berzerk/Frenzy [Zsolt Vasvari]
- Adjusted timing in the vector games. [Bernd Wiebelt]
- Another step forward in getting Super Punch Out to work (still NOT
playable). [Tatsuyuki Satoh]

- Proper emulation of the ROM decryption in Burger Time. [Zsolt Vasvari]


- Improved Spy Hunter controls (you can play with the mouse or even a wheel
now). [Alex Judd]
- Changed the 6502 emulation to disable interrupts on a reset. Not sure if
this is the correct behavior, but Centipede needed it for the service mode
to work.
- Support for the complete Curveball set. This also fixes the crash.
- Many improvements to the DECO games, especially Heavy Barrel. [Bryan McPhail]
- Sped up Route 16. [Zsolt Vasvari]
- Lots of clean up, consolidation, dip switches additions, color fixes to the
Carnival driver (which is now called vicdual.c, since Carnival is just one of
the many games which run on that hardware). [Marco Cassili]
- Slowed down a little the Sega raster games.
- You can assign a joystick button to the gear shift in Spy Hunter.
- Red Alert accepts coins. [Mike Balfour]
- Mapped the unknown dip switch in Wonder Boy Deluxe. [David Calandra]
- Fixes to the Gameplan games. [Santeri Saarimaa]
- Us vs Them is playable, though of course you can't see the backgrounds which
were stored on the laser disc. MACH 3 still doesn't work.
- Fixed bug in the I8086 emulator which caused MACH3 not to work. MACH3 now
does the attract mode, but it will never be playable without the laser disc.
- Fixed Snow Bros hanging after level 30. [Nicola Salmoria]
- Fixed hangs in Tapper, and hopefully other MCR games as well. [Aaron Giles]
- Some fixes to Quantum. [Paul Forgey]
- The default scores in Paperboy and Super Sprint are correct (though of course
you must delete the .HI files) [Aaron Giles]
- Super Qix might be running at the proper speed now. [Nicola Salmoria]
Changes to the main program:
---------------------------- [DOS] Increased the default gamma correction to 1.2. This will not have
effect unless you change it in MAME.CFG (or just delete the file).
- [DOS] Set back the default vgafreq to -1 (=auto). This is necessary for
-vsync to pick the correct freq (most of the time) when used with tweaked
VGA modes. This will not have effect unless you change it in MAME.CFG
(or just delete the file).
- Fixed -ror and -rol with ORIENTATION_SWAP_XY games (e.g. Kick) and

ORIENTATION_FLIP_X games (e.g. Discs of Tron). [Nicola Salmoria]


- [DOS] -vsync is supported for games running at 57fps (e.g. Moon Patrol).
However, due to the sync rate being different, the game runs 6% faster than
it should. [Nicola Salmoria]
- [DOS] New -listgames command, which lists all games along with production
year and manufacturer.
Also -noclones option which removes clones from -list, -listfull etc.
[Nicola Salmoria]
- [DOS] Fixed the NTSC mode. For feedback on this mode, please contact
sta@carinthia.com [Zerza]
- [DOS] Allegro (3.0+diffmay) now supports SideWinders and Gravis Gamepad Pro's
and so does Mame. [Bud Crittenden]
- Emulating analog devices via joystick no longer deactivates the mouse.
IMPORTANT NOTE FOR PORTERS: osd_analog_read() had to be changed.
The mame.cfg setting for joysticks was renamed to "joystick" instead of
"joytype". The numbering of joystick types has changed, look into
readme.txt [Bernd Wiebelt]
- Close to accurate 68000 instruction timing. [Brian Verre]
- Slightly improved speed of the 68000 emulator. [Darren Olafson]
- Some game information is displayed in the introduction screen.
The copyright disclaimer and driver credits screens are shown only the first
time a game is run. The game information screen is always shown since it may
contain important info.
[Nicola Salmoria]
- [DOS] New -listdetails option, to create a detailed list of drivers and the
hardware they use. [Santeri Saarimaa]
- Improved handling of 4 way joysticks. [Martin Sandiford]
- [DOS] Modified the code so that to start a game you can use
a) the full game name as listed in "mame -listfull"
b) any ordered subset of the characters used in the full game name
So you can start Asteroids Deluxe like:
mame "Asteroids Deluxe"
mame astdelx
mame adlx

!note the quotes!

The less characters you use, the more likely you'll be surprised which
game actually gets chosen. [Bernd Wiebelt]
- [DOS] To improve compatibility, older VESA modes are back. If your card
doesn't work in VESA mode, try "vesamode=vesa2b" or "vesamode=vesa1" in
mame.cfg [Bernd Wiebelt]
- [DOS] Slightly changed the resolution picker, so that when -vesa and
-noscanlines are requested, it will use e.g. 320x240 instead of 640x480
with pixel doubling, and 400x300 instead of 800x600 with pixel doubling.
If the lower res mode is not available, it automatically switches back to
the pixel doubled mode. [Nicola Salmoria]

- [DOS] New -listclones command, which lists in two columns the clones and the
game they are clone of. [Nicola Salmoria]
- Changed the AY8910 emulation to generate three separate audio streams for the
three channels instead of premixing them. This improves audio quality,
increases the volume, and doesn't seem to affect performance too much.
[Nicola Salmoria]
Source:
------- The DOS version is now compiled with GCC 2.8.1 and using Allegro 3.0 + WIP
(30th May).
- [DOS] To improve portability, the makefile is more conservative, using the
-pedantic and -Wshadow switches. Note that to compile with these switches,
several changes had to be made to allegro.h, which is included.
- Drivers that dynamically change the palette are no longer required to
initialize it in convert_color_prom(); they also can avoid initializing the
color table, if the default layout for it (a 1:1 mapping) fits their needs.
This is also useful when starting new drivers: you don't need to provide a
fake palette or prom conversion function, the graphics will be visible
somehow (but badly, so you had better change the defaults soon ;-) )
Also, games using PROMs don't need to initialize the colortable if the
GfxDecodeInfo structure is properly initialized to make the correspondence
1:1.
- Further changes to the palette handling code.
- osd_create_display() no longer takes the total_colors, palette, pens
arguments. They are handled by osd_allocate_colors(), which is called after
osd_create_display().
- the convert_color_prom() functions now take a unsigned short *colortable
parameter instead of unsigned char *.
- Drivers for games which have a FIXED palette (i.e. they don't call
osd_modify_pen()) of more than 256 colors are now allowed to declare it as
such in the MachineDriver. The palette will be automatically shrinked to fit
in 256 colors. Note: this assumes that the palette is actually composed of
no more than 256 unique colors. This is currently the case in all the games.
Examples: Kung Fu Master, Lode Runner, Arkanoid, Popeye.
- instead of calling osd_modify_pen(Machine->pens[color],r,g,b), drivers
should call palette_change_color(color,r,g,b). Note that the function does
the Machine->pens[] mapping for you.
- Dynamic palette support for games with >256 colors.
Drivers who want to use it must first of all set up like
the static palette ones (put the real number of colors in MachineDriver->
total_colors, etc.), and call palette_recalc() in vh_screenrefresh() before
drawing anything. A color usage table must be set before calling
palette_recalc() so that the function knows which colors are needed.
To help drivers in better optimizing video refreshes, palette_recalc()
returns a pointer to an array indicating which colors have been remapped and
need a refresh. If you don't need it (most likely), you can just consider it
a boolean value (0 = no need to redraw). [Nicola Salmoria]
- Drivers using the VIDEO_SUPPORTS_16BIT mode must use the same API as
VIDEO_MODIFIES_PALETTE ones (palette_change_color(), palette_recalc()). The
old setgfxcolorentry() method is discontinued.

To use the new API, you must set BOTH the VIDEO_SUPPORTS_16BIT and the
VIDEO_MODIFIES_PALETTE flags. Removing the _16BIT flag is all it takes to
switch from 16-bit to dynamic mode, so you can quickly test if the palette
can be compressed (_16BIT is much slower, so don't use it unless absolutely
necessary). [Nicola Salmoria]
- On the Mac, the dynamic palette uses 254 colors instead of 256. Due to this,
now ALL drivers using VIDEO_MODIFIES_COLOR and 256 colors must call
palette_recalc() like the others. Also be warned that 256 colors static
palettes will be shrinked, so if you are using colors for copybitmap()
transparency you'll have to make sure that they are assigned an unique pen.
- IMPORTANT: drawgfx(...,TRANSPARENCY_THROUGH) now requires the caller to
do the mapping with Machine->pens[]. This was necessary to allow for
TRANSPARENCY_THROUGH, palette_transparent_color in dynamic palette games.
- Color PROMs no longer have to be included in the source. They can be loaded
from disk just like the other ROMs. You just have to replace the color_prom
pointer with the PROM_MEMORY_REGION() macro, to tell the core where the PROMs
have been loaded. [Nicola Salmoria]
- For drivers using the GfxLayer system, dirty rectangle support is partially
built-in into the core. The OS dependent rendering functions must use
Machine->dirtylayer to know which portions of the screen need to be
refreshed. Drivers which use the GfxLayer system no longer need the
VIDEO_SUPPORTS_DIRTY flag in the MachineDriver structure - it must be turned
on automatically by the OS dependent code.
- Added support for undocumented Z80 opcodes to the C Z80 core. [Juergen
Buchmueller]
- Improved speed of the C 68000 core. [Juergen Buchmueller]
(this is supposed to give a good speed increase, but I don't see any
appreciable difference on my K6 - Nicola)
- Added WatchPoint support to the debugger (i.e. check a RAM location and stop
execution when it is changed). [Ernesto Corvi]
- Fixed a bug in 6502/dasm.c (this only applies if you compile it to get a
standalone disassembler - it is not part of MAME) [Christophe Verre]
- Fixed bug in the 6809 disassembler. [Keith Wilkins]
- T11 CPU emulator. This is used by the Atari System 2 drivers. [Aaron Giles]
- I8085 emulator. [Juergen Buchmueller]
- The 68000 memory handlers can again be word-aligned instead of
longword-aligned. [Aaron Giles]
- New flag IPF_RESETCPU for input ports. When this flag is set, CPU #0 is
reset when the key is pressed. This cleaned up the vicdual driver.
[Nicola Salmoria]
- Several fixes to improve Unix portability. [Hans de Goede]
- Sygnetics 2650 emulator [Juergen Buchmueller]
- Improved cycle counting in the 6809 emulator. [Mathis Rosenhauer]

- Added new fields to the GameDriver structure:


"source_file" (set it to __FILE__, this is used to automatically generate
reference lists);
"clone_of", used to link clones to the main version of the game.
"year" and "manufacturer", for production year and company;
"flags", for various info (currently only GAME_NOT_WORKING is defined).
- [DOS] The average FPS is printed on exit. [Nicola Salmoria]
- [DOS] Included Neil Bradley's asm M6808 emulator. Note: you need NASM to
compile. The official DOS binary of NASM is a 16-bit application and it
cannot compile this file; either use a recompiled version, or just use
NASMW (of course the latter only works under Windows). [Alex Pasadyn]
- The (*vh_update)() call has an additional parameter, full_refresh. When it
is 0, the driver may assume that the screen has not been altered by the main
engine since the last call, and do an incremental update instead of redrawing
the full screen. [Brad Oliver]
- For convenience, added some commonly used palette read/write functions to
palette.c. [Nicola Salmoria]
- Support for 16 bit samples in sndhrdw/samples.c.
IMPORTANT NOTE FOR PORTERS: for consistency with the sound libraries,
osd_play_sample_16() and osd_play_streamed_sample_16() now want the length in
_bytes_ of the array, instead of the length in _shorts_ as it was before.
[Peter Clare]
- Added the I8039 to the debugger, using Mike Cuddy's disassembler.
[Andrea Mazzoleni]
==========================================================================
0.31
SOME DEFAULT SETTINGS HAVE CHANGED. MAKE SURE TO DELETE MAME.CFG TO MAKE THEM
UP TO DATE.
BEFORE COMPLAINING THAT 0.31 IS SLOWER THAN 0.30, READ THIS WHOLE SECTION, OK?
ESPECIALLY WHERE IT TALKS ABOUT 16 BIT COLOR SUPPORT.
You'll need -depth 8 and -sr 11025 to run some of the bigger games at an
acceptable speed.
In the MS-DOS version, some games might require you to increase the memory
available to DPMI.
New ROM sets supported (in no particular order):
-----------------------------------------------City Connection [Mirko Buffoni]
Tazz-Mania [Chris Hardy]
Starfire (preliminary) [Dan Boris]
Guzzler [Mirko Buffoni]
Rygar [Nicola Salmoria]
Gemini Wing [Mirko Buffoni]
Crash [Mike Coates]
Bandido [Mike Coates]

Super Breakout [Mike Balfour]


Boot Hill [Mike Balfour]
Arkanoid (BETA bootleg) (preliminary) [Thierry Lescot]
Arkanoid (Tayto bootleg) (working) [Thierry Lescot]
Arkanoid (bootleg) (preliminary) [Aaron Giles]
Speed Rumbler [Paul Leaman]
Return of the Jedi [Dan Boris]
Punch Out [Nicola Salmoria]
MegaTack [Chris Moore]
Killer Comet [Chris Moore]
Dark Planet (preliminary) [Mike Balfour]
Strategy X [Lee Taylor]
Mania Challenge (preliminary) [Brad Oliver]
Sprint 1 [Mike Balfour]
Dominos [Mike Balfour]
Night Driver [Mike Balfour]
Atari Basketball [Mike Balfour]
Jump Coaster [Zsolt Vasvari]
Checkman [Brad Oliver]
Tank Battalion [Brad Oliver]
Rainbow Islands (preliminary) [Mike Coates]
Lode Runner [Lee Taylor]
Liberator [Paul Winkler]
Wiz [Zsolt Vasvari]
Crater Raider [Aaron Giles]
Block Out [Nicola Salmoria]
Fast Freddie [Zsolt Vasvari]
Fly-Boy [Brad Oliver]
The Pit [Zsolt Vasvari]
Trojan [Paul Leaman]
Super Qix [Mirko Buffoni, Nicola Salmoria]
Toki [Jarek Parchanski]
Ping Pong [Jarek Parchanski]
Snow Bros [Mike Coates]
Strider (preliminary - huge memory requirements) [Paul Leaman]
Willow (preliminary - huge memory requirements) [Paul Leaman]
Final Fight (preliminary - huge memory requirements) [Paul Leaman]
Mega Twins (preliminary - huge memory requirements) [Paul Leaman]
UN Squadron (preliminary - huge memory requirements) [Paul Leaman]
Gun Dealer [Nicola Salmoria]
The New Zealand Story (preliminary) [Chris Moore]
Route 16 [Zsolt Vasvari]
Stratovox [Darren Olafson]
Tetris [Zsolt Vasvari]
D-Day [Zsolt Vasvari]
World Cup 90 [Ernesto Corvi]
Bad Dudes [Bryan McPhail]
Robocop [Bryan McPhail]
Heavy Barrel (preliminary) [Bryan McPhail]
Sly Spy [Bryan McPhail]
Hippodrome (preliminary) [Bryan McPhail]
Midnight Resistance [Bryan McPhail]
Karnov [Bryan McPhail]
Chelnov (preliminary) [Bryan McPhail]
Tiger Road [Phil Stroffolino]
Toobin' [Aaron Giles]
Blockade/Comotion [Frank Palazzolo]
Leprechaun [Zsolt Vasvari]
Wonder Boy Deluxe [Jarek Parchanski]
Wonder Boy in Monster Land (preliminary) [Mirko Buffoni]

Pitfall 2 [Jarek Parchanski]


Choplifter [Jarek Parchanski]
Jack the Giant Killer [Brad Oliver]
Ninja Gai Den [Alex Pasadyn]
Marble Madness [Aaron Giles]
Peter Packrat [Aaron Giles]
Indiana Jones [Aaron Giles]
Road Runner [Aaron Giles]
Road Blasters [Aaron Giles]
Astro Invader [Lee Taylor]
Space Chaser [Lee Taylor]
Zzap (not working) [Lee Taylor]
Tornado Baseball [Lee Taylor]
Kamikaze [Lee Taylor]
Amazing Maze Game [Lee Taylor]
Commando (Sega, nothing to do with the Capcom one) (preliminary) [Brad Oliver]
Jungler [Nicola Salmoria]
Lotto Fun [Mike Balfour]
Video Hustler [Al Kossow]
Road Fighter [Nicola Salmoria]
original version of Gauntlet, Gauntlet 2 and two intermediate releases. Note
that only the original version are now supported, the slapstic hacked ones
no longer are. [Aaron Giles]
Gauntlet (2 players). [Aaron Giles]
Capcom Bowling (the real one; the previous one, Coors Light Bowling, has been
renamed "clbowl") [Michael Appolo]
Pleiads (Tehkan) [Paul Swan]
Venture (alternate) [Mike Balfour]
Frogger (yet another alternate version) [Nicola Salmoria]
Far West (a Iron Horse bootleg running on different hardware, not working yet)
[Nicola Salmoria]
Scrambled Egg [Gerald Vanderick]
Eagle [Al Kossow]
Super Missile Attack [Mike Balfour]
another Galaga bootleg [Marco Cassili]
Swimmer (alternate version) [Brad Oliver]
Car Action [Ivan Mackintosh]
Espial (European version). Also changed Espial to use the correct ROM set.
[David Winter]
Monkey Donkey [Mike Coates]
Moon Patrol (Irem copyright). Note that the previous version (Williams
license) has been renamed "mpatrolw". [Gary Walton]
Savage Bees [Jim Hernandez]
Gorf (Program 1) [Alex Judd]
Extra Bases (not playable) [Alex Judd]
Suntory Tapper [Paul Sommers, Ruben Panossian]
These drivers have improved GRAPHICS:
------------------------------------- Accurate colors in:
Roc'n Rope [Paul Swan]
Frogger [Gerald Vanderick]
Traverse USA [Gerald Vanderick]
Donkey Kong 3 [Tim Lindquist]
Minefield (apart from the background which is approximate) [Al Kossow]
Circus Charlie [Paul Swan]
Hyper Sports [Paul Swan]

Iron Horse [Paul Swan, Gerald Vanderick]


Zaxxon [Gerald Vanderick]
Millipede [Nicola Salmoria]
Shao-Lin's Road [Gerrit Van Goethem]
Radarscope (probably) [Andy White, Tim Lindquist]
Kangaroo [Mike Balfour]
Rally X [Gary Walton, Simon Walls]
Locomotion [Kevin Klopp]
Swimmer [Gary Walton, Simon Walls]
Pooyan [Martin Binder]
Motos [Aaron Giles]
- Consolidated the Exidy drivers. Accurate colors in Venture, Mouse Trap and
Pepper 2. [Mike Balfour]
- Fixed aspect ratio in Major Havoc [Al Kossow]
- Fixed pixel doubled sprites in Exerion [John Butler]
- Proper overlay emulation in Circus. [Zsolt Vasvari]
- Fixed double size sprites in Galaga when screen is flipped. [ehrhard@csd.de]
- Better colors in Blue Print. [Martin Searle]
- Fixed disappearing background at the end of the tunnel in Super Zaxxon.
[Nicola Salmoria]
- Support for the complete Swimmer set. No more bad graphics. [Brad Oliver]
- Gradient filled background in Rescue and Minefield. [Mike Coates]
- New antialiasing code for the vector games. A bit slower than before, but it
looks terrific. You can turn it off with -noantialias.
Also two new options:
-beam #
# in the range of 1.00 through 16.00 (# is float)
-flicker %
% is optional (% is float), no number sets default flicker
valid range is 0.00 to 100.00 (0=none 100=maximum)
-beam sets the width in pixels of the vectors, while -flicker makes them
flicker to simulate the behavior of a real monitor. [Andrew Caldwell]
- Improved handling of vector games. Battlezone and Major Havoc now do correct
clipping. [Aaron Giles, Bernd Wiebelt]
- 16 bit color support for games
Tiger, and many others). It is
of course it's also slower, so
8 bit downgraded palette using
option. [Aaron Giles]

which need it (e.g. Rastan, Gauntlet, Black


on by default, since it looks much better;
you can turn it off and revert to the previous
(in the DOS version) the -depth 8 command line

- I discovered that Locomotion runs on (almost) the same graphics hardware as


Rally X. This fixed the smoke which was using wrong graphics (and had instead
to be drawn like the dots in the Rally X radar). [Nicola Salmoria]
- Improved the blitter for the Williams games. Sinistar now works correctly.
[Aaron Giles, Brad Oliver]
- Fixed sprites in Gauntlet. [Aaron Giles]
- Merged the Qix and Zookeeper drivers, they now also support rotation.

[John Butler]
These drivers have new or improved SOUND:
----------------------------------------- New YM2151 emulator, used by Rastan and others. [Jarek Burczynski]
- Improved YM2203 and YM2151 emulator, and DAC interface, with 16 bit samples
support. (Use -sb 16 to turn on 16 bit samples). [Tatsuyuki Satoh]
- AY8910 and SN76496 support 16 bit samples as well. [Tatsuyuki Satoh]
- Improved ADPCM support, plus support for the OKIM6295 ADPCM chip. Several
drivers use these. [Aaron Giles]
- Fixed sound in Exed Exes; it has one 8910 and two 76496, not two 8910.
[Nicola Salmoria]
- Added back speech sample support to Q*Bert. [John Butler, Howie Cohen]
- Sound in Zaxxon and Berzerk, through samples. [Alex Judd]
- Better speech in Gorf. [Alex Judd]
- Better sound in Nibbler. [Brian Levine]
- Fixed missing/bad sound effects in Jungle King. [Nicola Salmoria]
- A first attempt at sound in Donkey Kong 3 / Punch Out. These two Nintendo
games use the same sound hardware as the NES console. [Nicola Salmoria]
- Music tempo and pitch in Locomotion, Time Pilot, Pooyan, Tutankham and
Roc'n Rope should be accurate (I believe they all use the same sound board)
[Jim Hernandez]
- Improved pitch in many games.
- Sound in Targ and Spectar (need samples). [Dan Boris]
- Fixed ADPCM sample support in Rastan. [Jarek Burczynski]
- Fixed sound pitch and Mario jump in Donkey Kong. [Howie Cohen, Brad Oliver]
- Speech in Mat Mania [Nicola Salmoria]
- Speech in Sinistar, through samples. [Howie Cohen]
- Sound in Fire Trap and Silkworm (Sound Blaster needed) [Nicola Salmoria]
- Music in Bubble Bobble (Sound Blaster needed) [Nicola Salmoria]
- Sound in Break Thru (Sound Blaster needed) [Bryan McPhail]
- Added support for missing samples to Donkey Kong Jr. [Howie Cohen]
These drivers have HIGH SCORE support:
--------------------------------------

- Sidearms, Breakthru, Mikie, 1943 Kai, Shaolin's Road, pengoa.


[Gerrit Van Goethem]
- The first time you play Q*Bert, Q*Bert Qubes, Krull, Mad Planets,
Three Stooges, the high scores are automatically initialized to the default.
Note: your old high scores will be lost, sorry. [Nicola Salmoria]
- The first time you play Track'n Field and Hyper Sports the high scores are
automatically initialized to the default. Your old high scores will NOT be
be lost here ;-) [Nicola Salmoria]
- Astro Fighter. [Santeri Saarimaa]
- Tazz-Mania, Space Firebird. [Chris Moore]
- Targ, Spectar. [Mike Balfour]
- Fire Trap, Fantasy. [Dani Portillo]
- Fixed Espial. [Dani Portillo]
- Fixed scores over 100000 in Donkey Kong/Donkey Kong Jr. [Wiebo de Wit]
Other drivers changes:
---------------------- Added the missing third button to Iron Horse. [Stuart Campbell]
- Fixes to dip switches and input ports in several games. [Marco Cassili]
- Better collision detection in the Exidy games (most noticeable in Venture
upper left room) [Mike Balfour]
- Added missing action button to Diamond Run. [Yves Colombani]
- Added Invulnerability dip switch to Japanese Ghosts'n Goblins.
[mbeighau@iies.es]
- Fixed Bubbles. [Marc Lafontaine]
- Major cleanup of the Williams drivers. [Aaron Giles]
- Fixed disappearing guards and other wrong behaviors in Bagman which were
caused by copy protection. [Jarek Burczynski]
- Fixed crashes in Rastan. [Barry Rodewald]
- Fixed service mode in Food Fight. [Aaron Giles]
Changes to the main program:
---------------------------- New -norotate option. This is supposed to disable all internal rotations
of the image, therefore displaying the video output as it is supposed to be
(so you need a vertical monitor to see vertical games). However, many
drivers still don't use MAME centralized rotation, but instead rotate the
image on their own, so -norotate has no effect on them.
In some cases, the image will be upside down. To correct that, use

-norotate -flipx -flipy, or use the Flip Screen dip switch if available.
[Nicola Salmoria]
- Fixed a bug in the 8086 emulator which caused unexpected deaths in Krull.
[Fabrice Frances]
- Improved analog input handling. [Bernd Wiebelt]
- New 6808 emulator. [John Butler]
- Native .zip file support. [John Butler]
- Bugfix: "Dial Joy Inc" can now be properly set (e.g. Tron). [Brad Oliver]
- 6805 emulator, needed by Arkanoid. [Aaron Giles]
- High score load/save is disabled when -record or -playback is used. This
prevents undesired side effects. [Nicola Salmoria]
- Fixed 68000 emulator to properly handle interrupt priorities. [Aaron Giles]
- In the DOS version, screen snapshots are saved as "gamename.pcx" (the first
one) and "nameNNNN.pcx" (the following ones), no longer the too generic
"snapNNNN.pcx". [Nicola Salmoria]
- New commands -verifyroms and -verifysamples. They check an existing ROM
set for missing and incorrect ROMs, and for missing samples. You can
use "mame -verifyroms *" to check all your romsets.
[Tormod Tjaberg]
- Reworked the automatic screen resolution picker. It now selects a resolution
appropriate for the game's visible area, not the game's physical screen size
(which is larger). [Nicola Salmoria]
- improved mame.cfg and commandline parameter handling:
[Valerio Verrando, Maurizio Zanello, Bernd Wiebelt]
* Added a few new config options (look into mame.cfg)
* In mame.cfg, a [gamename] section can override global config options.
* In the [directories] section, replaced ROMS and SAMPLES options with
"rompath" and "samplepath", these take a standard DOS path as argument.
(for example rompath=\callus;\raine;\retrocade;\mame\roms;.)
This is option is also available on the commandline and in the
[gamename] section.
* Removed support for -savecfg.
* Removed support for -width (e.g. -640) to select the resolution.
You have to use -widthxheight (e.g. -640x480). Frontend authors
are advised to use the new -resolution widthxheight semantics.
"resolution" is also a mame.cfg option now.
* Tweaked resolutions are directly selectable.
* (DOS) Wildcard support for the frontend commands:
"mame * -verifyroms"
will check all your existing romsets
"mame a* -listfull"
will list all games starting with "a".
* removed -vesa1, -vesa2b, -vesa2l. -vesa will try VESA 2.0 and fall back
automatically.
* playback data is stored in INP/gamename.inp
* a boolean option can be specified as -option, -nooption, -autooption.
- added an NTSC video mode for use with a VGA2TV converter (this is definitely
not the TV output some newer graphic cards offer). It is untested, use at own
risk. More info: http://www.hut.fi/Misc/Electronics/circuits/vga2tv/

[Zerza]
- Fixed bug in the 6808 emulation of TSX and TXS. [Larry Bank]
- Cleaned up the I86 emulator, including 286 instructions (but with 8088
timing). [Fabrice Frances]
- Added support for HD63701YO extra opcodes to the M6808 emulation. [Ernesto
Corvi]
Source:
------VERY IMPORTANT NOTE FOR PORTERS: now the function osd_new_bitmap() must
allocate also a "safety area" 8 pixels wide all around the bitmap. This is
required because, for performance reasons, some graphic routines don't clip
at boundaries of the bitmap.
- The DOS version is now compiled with GCC 2.8.0, optimized for Pentium.
- New timer-based event scheduler. This is a major change which is used
throughout the code. See timer.c and cpuintrf.c to get an idea of the many
things it does.
One of the many benefits this has is that dip switches in Do's Castle now
work, but there's an endless list of things affected. [Aaron Giles]
- New vblank_duration field in MachineDriver, which controls how long to
delay screen refresh after a vblank interrupt. This is important to get
video properly in sync in some games (e.g. sprites and background in
Commando). [Aaron Giles]
- Memory for the 68000 is allocated automatically. You no longer have to do it
yourself. The memory interface reads/writes 16 bits at a time to improve
performance. Writing a single byte is a bit tricky, because the 68000 can
cause write to either the high or the low byte without affecting the other;
thus the second parameter for a 16-bit write is a bit more complicated.
The top 16 bits are a mask which is supposed to be ANDed with the 16-bit
value already in memory; the bottom 16 bits are the actual data values,
to be ORed with the result. To aid in doing these operations, use the macros
READ_WORD(), WRITE_WORD(), COMBINE_WORD() and COMBINE_WORD_MEM().
[Aaron Giles]
- new function: cpu_setOPbaseoverride(). This function is called whenever the
code jumps into an area of memory that is in a different bank than the
current one (i.e., the code jumps from RAM to BANK1).
It takes the destination PC as a parameter and returns a new PC which is to
be used to determine which bank to switch to by the standard function.
The main purpose of adding this is for slapstic coding. Empire Strikes
Back and at least one of the System 1 games jumps to code in the slapstic
memory region, but since we read the opcodes directly out of ROM, we never
call the read handler. Although this won't solve the problem completely,
we can at least detect when the code jumps into the slapstic memory region,
and based on the registers and the PC, cause the proper bank switching to
occur. [Aaron Giles]
- Improved debugger [Martin Scragg, Mirko Buffoni, John Butler]
- Moved the speed throttling code to the OS dependent stuff. [Nicola Salmoria]

- Support for Z80 daisy chain interrupts. [Tatsuyuki Satoh]


- Migration to the new input port definitions is complete. The obsolete
structures have been removed from struct GameDriver. [Marco Cassili]
- Better handling of sound subsystems, thanks to new fields in the
MachineDriver structure. You can now use several subsystems at the same time,
without any problem and without having to write sh_start(), sh_stop() and
sh_update() functions.
Samples have a better interface too.
- There is some new graphics code, handling abstracted layers and optimized
refresh. It is used only by a few drivers, and is still work in progress don't use it in new code until further notice. [Phil Stroffolino,
Nicola Salmoria]
VERY IMPORTANT NOTE FOR PORTERS: now the function osd_new_bitmap() must
allocate also a "safety area" 8 pixels wide all around the bitmap. This is
required because, for performance reasons, some graphic routines don't clip
at boundaries of the bitmap.
==========================================================================

0.30
There have been some changes to the MAME license, please check it in readme.txt.
New ROM sets supported (in no particular order):
-----------------------------------------------Swimmer (some corrupt graphics due to the lack of one ROM) [Brad Oliver]
Astro Blaster [Mike Balfour]
005 [Mike Balfour]
Monster Bash [Mike Balfour]
Space Odyssey [Mike Balfour]
Frenzy [Brad Oliver, Keith Gerdes, Mirko Buffoni, Mike Cuddy]
Exerion [Brad Oliver]
Arkanoid (preliminary) [Brad Oliver]
Pinball Action [Nicola Salmoria]
Gauntlet [Aaron Giles]
Gauntlet 2 [Aaron Giles]
Food Fight [Aaron Giles]
Bump 'n Jump / Burnin' Rubber [Kevin Brisley]
Traverse USA [Lee Taylor, John Clegg]
Circus [Mike Coates]
Robot Bowl [Mike Coates]
Track & Field / Hyper Olympic [Chris Hardy]
Hyper Sports [Chris Hardy]
Roc'n Rope [Chris Hardy]
Circus Charlie [Chris Hardy]
Super Zaxxon [Tim Lindquist, Nicola Salmoria]
Future Spy (not working due to code encryption) [Nicola Salmoria]
Major Havoc [Michael Appolo, Brad Oliver, Neil Bradley, Aaron Giles, Bernd Wiebe
lt]
Colony 7 [Mike Balfour]
Quantum [Paul Forgey, Hedley Rainnie, Aaron Giles]
Mat Mania / Exciting Hour [Brad Oliver]

Astro Fighter [Lee Taylor]


Mikie [Allard Van Der Bas, Mirko Buffoni, Stefano Mozzi]
Shao-Lin's Road [Allard van der Bas]
Iron Horse [Mirko Buffoni]
Sprint 2 [Mike Balfour]
Sarge [Brad Oliver, Aaron Giles]
Triple Punch [Nicola Salmoria]
Vastar [Allard van der Bas]
Break Thru [Phil Stroffolino]
Fire Trap [Nicola Salmoria]
Targ / Spectar [Dan Boris]
Zoo Keeper [John Butler]
Jumping Jack [Mirko Buffoni]
Super Piero [Mirko Buffoni]
10 Yard Fight (Vs. version) [Mirko Buffoni]
Qix II [Mike Balfour]
Space Phantoms [Lee Taylor]
Rolling Crash [Lee Taylor]
Cosmic Monsters [Lee Taylor]
Make Trax [Mike Balfour]
Armored Car [Mike Balfour]
Minefield [Mike Balfour, Nicola Salmoria]
Original, security chip version of the Sega G-80 vector games:
Space Fury
Zektor
Tac/Scan
Eliminator (2 and 4 players)
Star Trek
note that the versions previously supported have all been removed [Brad Oliver
]
Star Force (The real set. Note that the previous one has been removed.)
[Valerio Verrando]
Mega Force (licensed version of Star Force) [Dave W.]
Ghosts'n Goblins (Japanese) [Nicola Salmoria]
Legendary Wings (Japanese) [Marco Cassili]
Sidearms (Japanese) [Marco Cassili]
Tempest Tubes [Valerio Verrando]
Gunsmoke, Capcom copyright - note that I renamed the previous set
(Romstar license) "gunsmrom" [Nicola Salmoria]
Gunsmoke (Japanese) [Marco Cassili]
1943 Kai [Mirko Buffoni]
Black Dragon (Japanese version of Black Tiger) [Mirko Buffoni]
Donkey Kong Jr. (original Japanese) [Mirko Buffoni]
Amidar running on Scramble hardware [Mike Coates]
Crazy Kong (Alca bootleg) [Lee Taylor]
Space Invaders Part 2 (Taito) [Lee Taylor]
Mr. Du! [Lee Taylor]
Tip Top (UK version of Congo Bongo) [Gary Walton]
Super Pac-Man (Namco) [Gary Walton]
Pootan (bootleg Pooyan) [Marc Vergoossen]
Root Beer Tapper [Brad Oliver]
Joust (White/Green) Note that the previous one has been renamed "joustr"
[Valerio Verrando]
Joust (Green) [Marco Cassili]
Joust (White/Red) [Marco Cassili]
Robotron (Yellow/Orange) [Valerio Verrando]
Bubbles (Red) [Valerio Verrando]
These drivers have improved GRAPHICS:

------------------------------------- Accurate colors in Gunsmoke. [Paul Swan, Nicola Salmoria]


- Colors in Super Basketball should now be correct for real (the opponent's
shirts weren't changing color in each level).
[Marco Cassili, Nicola Salmoria]
- Accurate colors in Vulgus. [Pete Ground, Mirko Buffoni]
- Background in Millipede [Brad Oliver]
- Fixed sprites in Gunsmoke. [Nicola Salmoria]
- Emulation of AVG sparkling bit (Tempest stars/fireworks) [Brad Oliver]
- Fixed sprites and background in Sidearms. Colors should be correct as well.
There probably is another scrolling background missing.
[Nicola Salmoria]
- A note about Zaxxon colors: we are aware that they are wrong. The reason is
that we are using the Super Zaxxon color PROM. As soon as we'll have the
correct Zaxxon color PROM, they will be fixed.
- Better colors in Eggs [Petter Sjlund]
- Appropriate blue background in Scramble, Super Cobra and other games
running on the same hardware. [Mike Coates]
- Fixes to Star Wars brightness. [Bernd Wiebelt]
- Added the background star field to Bosconian. [Martin Scragg]
- Slightly better colors in Locomotion. [Gonzalo Casas <gonzaloc@adinet.com.uy>]
- Fixed character colors in Black Tiger [Michael Appolo]
These drivers have new or improved SOUND:
----------------------------------------- Changed the way 8910 sound is updated: there's no longer a fixed "updates
per frame" value defined in the driver, instead the audio is stream is
generated whenever a chip register is written to (and at every vblank).
This improves sound quality in several games. [Nicola Salmoria]
- Same change to the POKEY interface. [Aaron Giles]
- YM2203 emulation not using
accurate than the previous
however it is also slower.
using the -fm command line

the SoundBlaster OPL3 chip. This is more


one, which used the SoundBlaster OPL chip,
You can still revert to the old behavior
option. [Tatsuyuki Satoh]

- YM2151 emulation. [Tatsuyuki Satoh]


- Completely rewritten the 8910 emulator and interface. This affects a lot
of games, but the one which benefits more is Gyruss: it now plays many
sound effects which were missing. [Tatsuyuki Satoh, Fabrice Frances,
Nicola Salmoria, Pete Ground]
- Full emulated sound in Gyruss. You can remove all the samples, they are no

longer needed. Also, music tempo should now be correct.


Due to the increased emulation overhead, it now runs slower than before.
To improve speed, you can use the new -sr option (see below) to lower the
sample rate. [Nicola Salmoria]
- Cleaned up the SN76496 emulation, now it is similar to the 8910 one and all
games use Tatsuyuki's code. This affects several games, most notably the
Mr. Do! series. [Tatsuyuki Satoh, Nicola Salmoria]
- 8039 emulator, and _emulated_ sound in Donkey Kong, Donkey Kong Jr. and
Mario Bros. Since the boards also use discrete circuits to generate sound,
some samples are still needed to get complete sound support.
Also partial sound in Radarscope.
[Ron Fries, Dan Boris, Mirko Buffoni]
- Sound (through samples) in Yie Ar Kung Fu [Phil Stroffolino, Kevin Estep]
- Completely rewritten the Namco waveform audio subsystem. This gets rid of
some artifacts in Pac Man (eating a ghost) and Ms Pac Man (eating dots
while a fruit is bouncing). [Nicola Salmoria, Aaron Giles]
- TI TMS5220 emulator. This handles speech in Star Wars and other games.
[Frank Palazzolo]
- Speech in Discs of Tron. [Aaron Giles]
- Sound in Three Stooges. Actually the code had always been there, it just
had to be activated... [Fabrice Frances]
- Music tempo in Scramble, Frogger, Amidar and derivatives should now be
correct [Frank Palazzolo]
- Music in Spy Hunter, sound in Rampage. [Aaron Giles]
- Sound in Qix. [Aaron Giles]
- Sound in Super Basketball [Nicola Salmoria]
- Sound in Rastan [Tatsuyuki Satoh]
- Sound in Naughty Boy and Pop Flamer, using the Pleiads driver. Not very
good, but it's a start. [Brad Oliver]
- Sound in Espial. [Brad Oliver]
- Fixes to Missile Command. [Eric Anschuetz]
- Music in Phoenix, via samples. [Brad Oliver]
- Partial emulated sound in Bubble Bobble (only the YM2203 chip, therefore
only some sound effects - no music) [Nicola Salmoria]
- Sound in Coors Light Bowling [Nicola Salmoria]
- Better tempo and pitch in Blue Print [Alan J McCormick]
These drivers have HIGH SCORE support:
--------------------------------------

- Fixed Asteroids [Brad Oliver]


- Legendary Wings, Section Z, Espial, Black Tiger, Gunsmkoke. [Juan Carlos
Lorente]
- Fixed Popeye. [Juan Carlos Lorente]
- 1943. [Jeff Johnson]
- Tac/Scan, Star Trek, pacmanbl, Red Ufo [Valerio Verrando]
Other drivers changes:
---------------------- A note about Tempest:
Several people complained that mouse control is reversed. This is not the
case. The more obvious place where this can be seen is the level selection
screen at the beginning: move the mouse right, the block goes right.
Anyway, you can now reverse the controls (see below).
- Radarscope works. [Andy White]
- Dirty rectangles support in Qix, all Williams games, Cloak & Dagger,
Berzerk, Arabian, Space Invaders & clones, Kangaroo, Space Panic,
Warp Warp. [Aaron Giles]
- Some tweaks to dip switches in the Super Cobra / Lost Tomb / Rescue
driver. [James R. Twine]
- Fixes to dip switches and input ports in several games. [Marco Cassili]
- Space Panic supports rotation. [Mike Coates]
- Fixed Invinco (it was missing a ROM) [Mike Coates]
- Framerates in the Atari vector games should now be correct [Neil Bradley]
- In Cloak & Dagger, the background bitmap is now aligned properly with the
playfield graphics, and boxes no longer get stuck at the corners of the
conveyors [Dan Boris]
- Added the missing third button to Sidearms [Nicola Salmoria]
- Spy Hunter displays an extra line of text at the bottom indicating
the status of the lamps that were on the arcade machine. [Aaron Giles]
- Fixed Bosconian crashing: This was the speech processor being used for a
protection check. [Martin Scragg]
- Alternate controls in Defender and Stargate, to control the ship using the
standard 8-way directional controls instead of up/down/reverse/thrust.
Available only when the -cheat option is specified. [Maurizio Zanello]
- Alternate controls in Battle Zone, Sarge, Defender and Stargate are
available only when the -cheat option is specified. [Nicola Salmoria]
- Better emulation of the custom I/O chip in the Namco games. [Aaron Giles]

Changes to the main program:


---------------------------- Right control and right alt work again. [Nicola Salmoria]
- Enhancements to the analog input controllers emulation. Their keyboard
counterparts can be changed, the sensitivity adjusted, and the direction
reversed. This is all controlled by the analog setup menu. [Brad Oliver]
- Support for true analog joystick input in games like Star Wars; moreover,
the whole range of joystick types supported by Allegro is now supported.
To handle that, use the new command line option -joy N, where N can be
0 - normal 2 button joystick
1 - CH Flightstick Pro
2 - Stick/Pad with 4 buttons
3 - Stick/Pad with 6 buttons
4 - dual joysticks
5 - Wingman Extreme (or Wingman Warrior without spinner)
Press F7 to calibrate the joystick. Calibration data will be saved in
mame.cfg. If you're using different joytypes for different games,
you may need to recalibrate your joystick every time.
Note that if you enable joystick support, games like Star Wars will work
ONLY with the joystick - mouse emulation will be disabled.
[Bernd Wiebelt]
- When the -vsync option is specified, the program checks whether the video
mode is compatible with it (i.e. whether the video refresh rate is a
multiple of the target frame rate), and fails otherwise. Some sensible
default values for -vgafreq are built-in and automatically picked when
-vsync is requested.
It is also possible to successfully use -vsync with scanline video modes.
Note that for VESA modes you might have to configure your card in order
to make it use the 60Hz refresh rate.
[Nicola Salmoria]
- Support for default configuration file. Start MAME with the -saveconfig
parameter, and the current configuration will be saved to mame.cfg,
becoming the default. You can still override the mame.cfg settings giving
parameters on the command line. [Valerio Verrando]
- Modified the tweaked video modes to be as close as possible to 60Hz.
However please note that on some systems the new modes might not work,
while the old do. You can work around that by changing the line
syncedtweak=yes to syncedtweak=no in mame.cfg [Valerio Verrando]
- The default directory for screen snapshots (F12) is now PCX instead of the
current directory, so make sure you create it or snapshots will not be
saved. [Valerio Verrando]
- New command line options, -sr N, where N is the required audio sample rate,
and -sb N, where N is the number of sample bits (8 or 16).
For example,
mame gyruss -sr 22050 -sb 16
will use a 22kHz sample rate and 16 bits.
The -sb option currently doesn't change anything because none of the audio
subsystems support 16 bit samples.
[Nicola Salmoria]

- You can keep the ROMs in a subdirectory called "ROMS", if you want to.
When loading ROMs for 'gamename', the program will look in these
directories in this order:
1) gamename
2) gamename.zip
3) ROMS\gamename
4) ROMS\gamename.zip
The same applies to samples, you can put them in a subdirectory called
SAMPLES - therefore separating them from the ROMs.
[Nicola Salmoria]
- Samples can also be loaded from a common directory for variations of the
same hardware. For example, all Space Invaders clones will load samples
from the invaders directory. [Valerio Verrando]
- In the DOS version, dirty rectangles are supported in all resolutions.
[Bernd Wiebelt]
- Several changes to the cheat subsystem [James R. Twine, Marc Lafontaine]
- Fixed bug in drawgfx() which caused Crazy Climber's big sprites to be
corrupted when horizontally flipped. [Vince Mayo]
- New options, -record and -playback. They allow you to record, and later
playback, joystick input. Useful to document certain bug reports, or to
show your friends how good you are ;-)
- New option -romdir which allows to specify a different directory where to
load the ROMs from. [Mike Balfour]
- High score and configuration save now support ZipFolders/ZipMagic to
directly use .zip archives. If you want to use this feature, make sure
there are no HI or CFG directories, otherwise the files will be saved
there, not in the .zip archive. [Valerio Verrando]
Source:
------- Now using Allegro 3.0 - this fixed problems 0.29 had under NT with mouse
enabled.
- Integrated debugger. You must compile with MAME_DEBUG defined to activate
it. Start MAME with the -debug option, then press tilde to enter the
debugger. [Martin Scragg, John Butler, Aaron Giles]
- cpu_setbankhandler_r() / cpu_setbankhandler_w() for better bank switching
support. The Williams drivers take advantage of it. [Tatsuyuki Satoh]
- Removed samples field from the MachineDriver structure; added sound_prom
field to the GameDriver structure. [Nicola Salmoria]
- Some changes to the 68000 emulator memory interface, and a new 68000
disassembler. Improved the 68000 cpu interface. [Aaron Giles]
- Redesigned cpuintrf.c to be more modular and readable. [Aaron Giles]
- added a cpu_reset() call so that a single processor can be reset during
execution; Gauntlet needs this to work properly. [Aaron Giles]

- The 6502 supports bank switching via cpu_setbank(). [Aaron Giles]


- Centralized dac.c for dac sound emulation. Several drivers use it.
[Tatsuyuki Satoh]
==========================================================================

0.29
IMPORTANT: CONFIGURATION AND HIGH SCORE SAVE FILES HAVE BEEN MOVED. MAKE
SURE YOU MOVE THE OLD ONES TO THE NEW DIRECTORIES "CFG" AND "HI". This will
be done automatically by the provided batch file mov.bat, but PLEASE read
on for details.
NOTE: Bubble Bobble doesn't work in this release. We are aware of that. Use
Bobble Bobble or Super Bobble Bobble instead, they work much better than
Bubble Bobble ever did.
New ROM sets supported (in no particular order):
-----------------------------------------------Legendary Wings [Paul Leaman]
Section Z [Paul Leaman]
Cloak & Dagger [Dan Boris, Mirko Buffoni]
Berzerk [Zsolt Vasvari, Christopher Kirmse]
Coors Light Bowling [Zsolt Vasvari]
Gunsmoke [Paul Leaman]
Black Tiger [Paul Leaman]
1943 [Mirko Buffoni, Paul Leaman, Nicola Salmoria]
Champion Baseball (preliminary) [Nicola Salmoria]
Silkworm [Nicola Salmoria]
Sidearms (preliminary) [Paul Leaman]
Defend the Terra Attack on the Red UFO [Nicola Salmoria]
Pulsar [Mike Coates]
Invinco [Mike Coates]
Invinco / Head On 2 (dual game) [Mike Coates]
Space Attack [Mike Coates]
Motos [Aaron Giles]
The Tower of Druaga [Aaron Giles]
New Rally X [Nicola Salmoria]
Radarscope (untested due to lack of good ROMs) [Nicola Salmoria]
Rastan Saga. Note that Rastan requires some new ROMs as well, which were
missing from the previous release. [Brad Oliver]
bootleg version of Pac Man running on Galaxian hardware [Nicola Salmoria]
Bosconian (Namco) [Toninho]
Mappy (Japanese) [Toninho]
bootleg version of Donkey Kong Jr., with levels playing in the
order 1-2-3-4 instead of 1-4-1-3-4-1-2-3-4 [Nicola Salmoria]
ORIGINAL version of Donkey Kong Jr. (Japanese), with levels playing in the
order 1-2-3-4 instead of 1-4-1-3-4-1-2-3-4 [Nicola Salmoria]
Moon Cresta (Gremlin) [Valerio Verrando]
Gyruss (Konami). Note that I renamed the other set (licensed to Centuri)
from "gyruss" to "gyrussce" [Nicola Salmoria]
Super Bobble Bobble [Brad Oliver]
These drivers have improved GRAPHICS:

------------------------------------- accurate colors in


Donkey Kong Jr.
Congo Bongo
Phoenix
10 Yard Fight
Moon Patrol
Pop Flamer
War of the Bugs
Espial (not sure about this one - red and blue could be inverted)
Super Cobra
Yie Ar Kung-Fu
Mario Bros.
Super Basketball
Seicross
1943
Donkey Kong 3 (well, not really)
Gyruss
Crazy Kong.
Zaxxon is getting there (sprites are mostly correct, background isn't).
[Tim Lindquist, Nicola Salmoria]
- accurate colors in Bagman and Super Bagman
[Tim Lindquist, Jarek Burczynski]
- accurate colors in Naughty Boy (probably) [Virtu-Al, Nicola Salmoria]
- Minor fix to Donkey Kong colors (black was dark blue). [Nicola Salmoria]
- Clouds in Time Pilot are correct. [Edward Massey]
- Lives left are correctly displayed in Burger Time, sprites are turned off
appropriately, and the switch test in test mode works correctly.
The hardware of this game is more similar to Eggs than I thought.
[Nicola Salmoria]
- Some fixes to 10 Yard Fight. [John Butler]
- The background was clipped too low in Phoenix. [Nicola Salmoria]
- Added the missing scrolling background to Exed Exes. [Nicola Salmoria]
- Fixed sprite/character priority in Gyruss. [Nicola Salmoria]
- Fixed blinking in the Galaga starfield. [Martin Scragg]
- Galaga supports rotation (-ror and -rol). [Nicola Salmoria]
- Improved the blitter for Sinistar, but there are still some problems. [Sean
Riddle, Pat Lawrence]
These drivers have new or improved SOUND:
----------------------------------------- All the Williams games. Samples are no longer needed and may be deleted.
[Steven Hugg, Mirko Buffoni, Nicola Salmoria]

- Q*Bert Qubes. You just have to use Q*Bert's sound ROMs, they are the
same. [Fabrice Frances]
- Tac/Scan (through samples). [Brad Oliver]
- Fixed some sound problems in Asteroids. [Andrew Scott]
- Added music to Kick. [Aaron Giles]
- Improved the Galaxian background hum, it also is no longer incorrectly
played in Moon Cresta & others. [Andrew Scott]
- Digital audio in the Taito games (used for some sound effects, most
notably Tarzan's yell in Jungle King). Also, music plays in Jungle King.
[Nicola Salmoria]
- Moon Patrol, 10 Yard Fight, Kung Fu Master. [Aaron Giles]
- Mario Bros (partial, through samples). [Brad Oliver, Shane Monroe]
- Eggs. [Nicola Salmoria]
- Fixed the sound in Omega Race. It was playing too slow.
Thanks to Stacy Joe Dunkle, Mike Cuddy and Al Kossow. [Bernd Wiebelt]
- Congo Bongo (samples are needed to get full sound).
[Ville Laitinen, Tim Lindquist]
These drivers have HIGH SCORE support:
-------------------------------------- Moon Patrol, Rally X, Vanguard, Super Cobra, Turtles, Xevious,
Galaxy Wars. [Valerio Verrando]
- Fixed Krull and Donkey Kong 3. [Nicola Salmoria]
- Fixed Galaga. [Valerio Verrando]
- Starforce, Jump Bug, Bagman, Super Bagman, Time Pilot 84, Warp Warp.
[Juan Carlos Lorente]
Other drivers improvements:
--------------------------- The attract mode of Galaga works correctly. Qix runs correctly and
without slowdowns. Test mode in Mr. Do's Castles & family works correctly,
(dip switches in Do's Castle still don't work).
All these changes are due to the interleaved CPU execution described
below. [Nicola Salmoria]
- New fix to avoid lockup in Tempest after 150,000 points - this one should
really work. [Keith Gerdes]
- Fixed the Fantasy driver. [Brian Levine]
- Several fixes and enhancements to the Williams driver. [Aaron Giles]
- Several fixes to the Williams driver: Blaster is finished, Sinistar is

playable but there are some blitter bugs, Bubbles is better but still
resets itself from time to time. [Marc Lafontaine]
- Fixed bug in Naughty Boy coin insertion/start game handling.
[Nicola Salmoria]
- Some fixes to the Star Wars mathbox. [Aaron Giles]
- The hardware of the Taito games (Elevator Action, Jungle King, Wild Western,
Front Line) is emulated more faithfully. Playfield priority is accurate in
Jungle King, however this broke Wild Western - strange.
Front Line works.
Merged all the drivers into taito.c [Nicola Salmoria]
- Tried to plug Triple Punch into the Scramble driver, but it doesn't work.
[Nicola Salmoria]
- Support for New Rally X; colors are accurate in New Rally X ONLY - still
wrong in Rally X until we find the color PROMs. Sound should finally be
correct, both in Rally X and New Rally X. [Nicola Salmoria]
- Video drawing optimization to Mappy, plus test mode now works both in Mappy
and Dig Dug 2. [Aaron Giles]
- In some games (e.g. Pacman, Galaxian, Rally X) the NumLock and CapsLock
leds emulate the 1 player/2 players start lamps. [Sean Gugler]
- Fixed dip switches in Missile Command. [Marco Cassili]
- Early attempt at a Zookeeper driver, based on the Qix one, which
unfortunately doesn't work yet. [John Butler, Ed Mueller]
- Moved the Hunchback driver into dkong.c, since that's where it belongs (but
it still doesn't work due to encryption). [Nicola Salmoria]
Changes to the main program:
---------------------------- Added Gamma correction controls. Use Shift + Numeric pad +/- to change it.
There are some games which are too dark on the default setting, instead of
using the monitor settings use these controls to brighten the picture.
Gamma correction also affects colors, like the girders in Donkey Kong.
[Nicola Salmoria]
- Added a "Pro Action Replay"-like cheat finder. It is only available when
-cheat is specified on the command line. [Marc Lafontaine]
- Some optimizations to the 6809 emulator. [Tatsuyuki Satoh]
- Some optimizations to the 6809, and modified it to always fetch opcodes
directly from RAM (much faster). The Ghosts 'n Goblins, Star Wars and
Williams drivers needed reworking to support that. [Aaron Giles]
- Moved configuration and high score files to the CFG and HI subdirectories.
They are not stored in the games subdirectories.
I have provided a batch file (MOV.BAT) to automatically move your old
settings in the new directories. Just start it from inside the MAME
directory. It will spit out some error messages for missing files, don't
worry and let it finish its job. [Nicola Salmoria]

Having configuration files in a separate directory makes it easier to


keep ROMs in .zip files. This is already done by some front-ends, but
you can do it from the command line as well, just use this batch file.
PKUNZIP must be in your path. The .zip files must be in the MAME directory
and named after the game (i.e. pacman.zip).
@echo off
md %1
pkunzip >nul: %1 %1
MAME.EXE %1 %2 %3 %4 %5 %6 %7 %8 %9
deltree >nil: /y %1
But even better, if you have ZipFolders or ZipMagic installed, MAME will
automatically look into the .zip or .zif directory.
ZipFolders and ZipMagic are trademarks of Mijenix Corporation. You can
download a trial version from www.mijenix.com. I am in no way associated
with Mijenix Corp. - I'm just a happy costumer.
- Removed "-trak" and "-mouse" options. Mouse support is now enabled by
default. To disable it, use "-nomouse". [Bernd Wiebelt]
- "-vesa" picks the best VESA mode available. The new "-vesa1" forces VESA
1.2. [Bernd Wiebelt]
- "-vg" removed. It is on by default now. [Bernd Wiebelt]
Source:
------- We are now using the "WIP 2.8" version of Allegro to compile the DOS
version. You can get it from http://www.talula.demon.co.uk/allegro/.
- Two new OSD_KEY definitions: RCONTROL and ALTGR. CONTROL has been replaced
by LCONTROL.
- Aligned to version 1.2 of Marcel de Kogel's Z80 emulator.
- New memory handling functions, about 10%-30% faster than before. Moved the
memory code from cpuintrf.c to memory.c.
Banked ROMs can now be handled in a cleaner and faster way. Use the new
MRA_BANK1... types in the memory handler arrays, and cpu_setbank() to set
the current bank. The Z80 and M6809 emulators natively support bank
switching.
IMPORTANT: for 24 bit addressing (i.e. 68000) you cannot associate a memory
handler to a single byte. You must use four consecutive bytes, longword
aligned. This was done to speedup word (2 bytes) and dword (4 bytes)
operations.
[Tatsuyuki Satoh, Aaron Giles]
- New ROM_LOADEVEN and ROM_LOADODD macros. [Aaron Giles]
- CPU execution is interleaved. The cpu_slices_per_frame field in the
MachineDriver controls how often control is passed from one CPU to
another. 1 is the minimum, meaning that each CPU runs for the whole video
frame before giving control to the others. The higher this setting, the
more closely CPUs are interleaved and therefore the more accurate the
emulation is. However, an higher setting also means slower performance.
[Nicola Salmoria]

- Removed osd_obtain_pen(), the palette is passed to osd_create_display()


instead. Also moved clearbitmap() to osd_clearbitmap(), which does a
slightly different thing from what clearbitmap() did: it sets the bitmap
to be generically "black", which doesn't necessarily imply filling it
with Machine->pens[0]. Avoid using osd_clearbitmmap() in drivers: use the
new fillbitmap(), instead, which accepts a pen number and a clip region.
[Nicola Salmoria]
- Replaced file related functions (fopen(), fread() and so on) with osd_
equivalents. This avoids a good amount of hacking in the Mac port; plus
it allows some system specific extensions, like supporting
ZipMagic/ZipFolders under Windows 95. [Nicola Salmoria]
- Tweaked input port code. Added new fields for analog controls - clip,
min, and max. Also added 2 new analog joystick types - IPT_AD_STICK_X and
IPT_AD_STICK_Y.
The new fields are packed into the same int field (arg) as the
sensitivity and as such they can only be in the range of 0-255. The clip
field clips the trackball/dial/stick deltas, a common callback routine
task. Min and Max are so far only used in the AD_STICK types. They limit
the range of motion for those sticks - used in Star Wars and Red Baron.
[Brad Oliver]
Additional tweaking of analog inputs, allowing them to be updated more
than once per frame. This is needed by some games. [Bernd Wiebelt]
- removed osd_track_center(). We always use relative mouse movement now.
[Bernd Wiebelt]
- Formalized support for dirty rectangles, via the function osd_mark_dirty().
[Aaron Giles]
It is mostly used by MacMAME, limited DOS support added by Bernd Wiebelt.
- updated pokyintf.c to be more like 8910intf.c. Variable clock frequency,
port callbacks, a clipping parameter, variable updates per frame. Most
noticeably, Tempest has much improved sound with more frequent updates.
[Brad Oliver]

==========================================================================
0.28
New games supported in this release (in no particular order):
Omega Race
Bank Panic
Pop Flamer
Super Basketball
Kick
Solar Fox
Tron
Two Tigers
Domino Man
Satan's Hollow
Wacko
Kozmik Kroozr
Journey
Tapper
Discs of Tron
Demolition Derby
Timber

Spy Hunter
Rampage
Espial
Time Pilot 84
Rastan
Program:
- Fabrice Frances added *emulated* sound to Q*Bert, Reactor, Krull and Mad
Planets. The samples are no longer needed and may be removed.
Q*Bert Qubes would work as well, if we had the sound ROM ;-(
Speech is not emulated... yet! Please do not complain because there is no
speech in Q*Bert. We are aware of that.
- John Butler provided a new 6809 emulator. It is faster than the previous
one, and fixes some bugs including the ship moving in the wrong direction
on the tower level of Star Wars and the bonus maze in Pac & Pal.
- John Butler also added optimizations to some Williams games, GnG and Qix.
He also fixed several problems in Qix.
- Bernd Wiebelt provided a driver for Omega Race and added a "director's cut"
mode to Battle Zone. DELETE BZONE\BZONE.CFG OTHERWISE THE GAME WILL NOT
WORK CORRECTLY.
- Nibbler and Vanguard are back to (hopefully) normal speed.
- Christopher Kirmse, Aaron Giles and Brad Oliver provided a MCR I/II/III
driver, supporting:
Kick
Solar Fox
Tron
Two Tigers
Domino Man
Satan's Hollow
Wacko
Kozmik Kroozr
Journey
Tapper
Discs of Tron
Demolition Derby
Timber
Spy Hunter
Rampage
- Aaron Giles perfected the CTC emulation, needed by the MCR driver.
- Sean Trowbridge found a workaround to make Tempest not lock up at 150,000
points.
- Mike Balfour (overload@primenet.com) did some fixes to the Exidy games
(Venture, Mouse Trap, Pepper II)
Collision detection is now supported, Venture is playable.
- Mike Balfour also added high score support to Elevator Action, Pisces, War
of the Bugs, Eggs, Exed Exes, Diamond Run, Jungle King, Wizard of Wor,
Robby Roto, Gorf, Space Zap, Seawolf II, Loco-Motion, Mysterious Stones,
Blue Print, Carnival, Snap Jack, Cosmic Avenger, Yie Ar Kung Fu, Scramble,
Battle of Atlantis and The End.
- Mike Balfour also pointed out that ROM 2H of Battle of Atlantis seems to

be bad; that's the cause of the strange coins per credit values.
- Many thanks to Luis Longeri (llongeri@cbb.cl) for helpful tips about Exed
Exes' background, which is now partially working.
- Tatsuyuki Satoh made several fixes to the Xevious driver.
- Aaron Giles provided a driver reference sheet (mamelist.txt)
- Steve Baines fixed color intensities in Star Wars - objects now fade out
properly. You might find it a bit too dark now, but this is done to
reproduce the differences in brightness that the original has.
- Frank Palazzolo fixed the "bad trench vectors" and "fail to approach Death
Star" bugs in Star Wars.
- David Winter provided a driver for Amigo (a bootleg version of Amidar)
- Brad Oliver provided drivers for Pop Flamer and Espial.
- Zsolt Vasvari supplied a Super Basketball driver.
- Marc Lafontaine provided a driver for Time Pilot 84. John Butler optimized
it.
- Mirko Buffoni added explosions to Rally X, using a sample.
- Jarek Burczynski adapted the M68000 emulator from the System 16 Arcade Emulato
r
by Thierry Lescot. The only known problem of this emulator is that it doesn't
count CPU cycles, only instructions.
The first driver to use the 68000 is Rastan, also provided by Jarek.
Sources:
- New osd_modify_pen() function, proposed by Aaron Giles. It allows drivers
to dynamically modify the palette. WARNING: since this feature can severely
reduce performance on some systems, it must only be used when necessary that is, when the emulated game dynamically modifies the palette. The other
games should continue to use the static palette as before.
Many games already use this feature (e.g. Crystal Castles, the Gottlieb
games, Tapper, Bubble Bobble, and many others).
There's also osd_get_pen(), which is used by usrintf.c to dynamically pick
the pens used to render menus.
The following changes were done by Nicola Salmoria:
Program:
- Crystal Castles now has accurate colors and load/save of high score and
settings (I mean the settings done in the service menu).
- Nibbler and Fantasy have sound, using the Vanguard driver. I don't know
how accurate it is.
- Thanks to Gary Walton and Simon Walls, Son Son now has accurate colors.
- Son Son also has sound.
- Since there are now many games which don't run at 60fps (e.g. Popeye and
the vector games), F11 was confusing and lead people to think the emulation

was slow, while it was running at the correct speed. F11 now displays the
percentage of the speed of the real machine. 100% is the correct speed,
200% is twice as fast, 50% is half as fast.
- Snap Jack and Cosmic Avenger are oriented correctly, and small sprites in
Cosmic Avenger (bullets, bombs etc.) and Snap Jack (wheels) are properly
supported.
- Some of the games now support Cocktail mode (only the graphics, not the
controls yet)
- New command line option: "-cheat". Cheats like the speedup in Pac Man or
the level skip in many other games are disabled by default. Use this switch
to turn them on.
- The speedup cheat in Pac Man can now be permanently set to ON from the dip
switch settings menu.
- Zaxxon and Congo Bongo can go in service mode (F2).
- Bank Panic support. Thanks to Virtu-Al, colors are correct.
- Colors in Donkey Kong are now 100% accurate. Several people complained that
girders should be pink instead of red, but to the best of my knowledge the
current colors are an accurate conversion of the color PROMs, and this has
been confirmed by some people. There might be two different versions of
Donkey Kong, with slightly different colors. If someone has a "pink" board
and wants to read the PROMs from there, I'll be happy to include them.
- Dip switches now work in Xevious. Also fixed a bug in the targeting cursor
colors (black corners while firing). Super Xevious works.
Explosions are emulated with samples, thanks to Andrew Scott.
- Support for another version of Mr Do's Castle ("docastl2").
- Support for the Japanese version of Commando ("commandj").
- Thanks to Gary Walton, fixed sprite placement in Turtles.
Sources:
- All-new handling of rotation. The GameDriver structure now has a
"orientation" field which allows driver writers to handle fairly easily
games which run on the same hardware but with different orientations.
Crazy Climber/Crazy Kong, Lady Bug/Snap Jack/Cosmic Avenger and the Gottlieb
games are examples of drivers using this feature.
Rotation is handled automatically by gfxdecode(), which creates a prerotated
charset, and drawgfx(), which swaps the arguments appropriately. Drivers
which use only the standard functions to render their display will
automatically handle the "orientation" field. If a driver writes directly to
the bitmap, it must handle the rotation itself.
IMPORTANT NOTE: osd_create_bitmap() swaps width and height when a rotation
is requested. Take that into account or you'll risk trashing memory.
IMPORTANT NOTE TO PORTERS: remember to update osd_create_bitmap() and
osd_create_display() to take into account the rotation. Check msdos.c to
see how this must be done.
- Totally new Input port definition structure. See driver.h for the new
structures definition; several drivers already use it, check them for
working examples.
The new definition is much more powerful and easier to maintain than the

previous one. It isn't complete yet, but it will eventually handle


everything, including trackballs and analog joysticks. Drivers using the
old definition will gradually be converted to the new one. Please do not
submit new drivers using the old definition. It is obsolete and will be
removed as soon as the conversion of the existing drivers is finished.
- Moved the input handling to the new source file inptport.c.
- Some driver compacting:
- merged Pengo and Pac Man
- merged Dkong and Dkong 3
- merged Crazy Climber and
- merged mooncrst, moonqsr

vidhrdw
driver and vidhrdw
Crazy Kong driver and vidhrdw
and scramble vidhrdw into the new "galaxian.c"

- Rewritten the decryption routines in Pengo and Crazy Climber.


- MachineDriver/init_machine is now a void (*)(void), and the function is
called by cpu_run() during a reset. Some games, like Espial and the MCR
games, needed that to perform a reset correctly.
0.27
REMEMBER: IF A GAME DOESN'T WORK, TRY DELETING THE .CFG FILE IN ITS DIRECTORY
There has been much talk about the License under which MAME is released. We
had to drop the GPL because it was not applicable. See readme.txt for the new
rules.
New games supported in this release (in no particular order):
Xevious
Star Wars
Bubble Bobble
Eliminator
Space Fury
Star Trek
Tac-Scan
Zektor
Super Bagman
Warlords
10 Yard Fight
Bosconian
Dig Dug 2
Pac & Pal
Son Son
Loco-Motion
Blue Print
Snap Jack
Cosmic Avenger
Eggs
... plus many alternate versions which are not listed here.
Program:
- The Energy shields in Vanguard now work.
What about the speed of Nibbler, Vanguard and Fantasy? Are they too fast?
- Support for a GnG version with different graphics (cross instead of shield)
- Thanks to the precious information on the Pokey random number generator

provided by Eric Smith, Hedley Rainnie and Sean Trowbridge, some problems
with Centipede (start with 18 credits) and Tempest (hang after level 13)
are now solved.
- Thanks to Virtu-Al and Peter Clare, Carnival now has 100% accurate colors.
- Mirko Buffoni and Tatsuyuki Satoh provided a preliminary Xevious driver.
- Al Kossow and Brad Oliver provided drivers for the Sega vector games
(Eliminator, Space Fury, Star Trek, Tac-Scan, Zektor).
Partial sound support (speech) is available through samples for some of
them.
- Jarek Burczynski provided better colors for Bagman and also added support
for Super Bagman.
- Andrew Scott improved sound in Pleiads.
- Thanks to Virtu-Al, Rescue now has accurate colors.
- Lee Taylor (nxsl2819@defender.demon.co.uk) and John Clegg provided a
Warlords driver.
- Andrea Fregoli added a scroll routine used when the keyboard/joystick
settings menu doesn't fit on the screen.
- Andrew Scott and Robert R. Anschuetz II improved sound support in Galaxian
and clones. The background noise is now emulated, while the shoot noise
still requires a sample. These changes also affect other games using
the same sound routines.
- Thanks to Brian Levine's freely available Rockulator, Andrew Scott was
able to add sound support to Vanguard.
- Mike Coates improved again the Gorf driver. It's now (sort of) playable.
- Lee Taylor and John Clegg provided preliminary 10 Yard Fight support.
- Martin Scragg added Bosconian support.
- Aaron Giles did a major rewrite of his Super Pac man and Mappy drivers:
- support for Dig Dug 2 and Pac & Pal
- High score save in all games
- 100% colors and sound samples (in Super Pac man the siren clicks a bit,
but neither I nor jrok can figure it out; the sample data *is* correct)
- better sound playback frequency (was missing some high bits!)
- arcade accurate frequency calculation (thanks to jrok!)
- removed all palette hacks; everything is clean
- added loop optimizations for speed
- video now properly displayed, including high priority characters
- John Butler and Aaron Giles fixed sound and trackball support in Millipede.
- Steve Baines, with the help of Frank Palazzolo and Brad Oliver, implemented
Star Wars. It's playable, but far from perfect. There's even some
preliminary sound support (slows the game down a lot).
- Bernd Wiebelt implemented a new option for vector games: "-vg".
This adapts the Vector games to a given screen resolution (default 800x600).

- Lot of work on the Atari Vector games (Brad Oliver & Bernd Wiebelt)
- Quite a few bugs hunted down.
- Thanks to Aaron Giles, the Atari vector games do correct scaling
now and we can do cycle counting on the vector CPU.
Aaron also fixed the scaling in the Sega vector games.
- Tempest does no longer crash after level 13, has better colors
(colorram emulation) and is overall a bit faster.
- Highscore saving for all games except Black Widow and Starwars
- Trackball support for Tempest and Red Baron.
Red Baron tries to calibrate its analog joystick at the start, so you'll
have to move the "joystick" a bit before you can fly in all four
directions. Thanks to baloo@kaiwan.com for his suggestions.
- Mauro Minenna made Battlezone playable with one joystick.
- Changes to game resolutions. On MSDOS, they now use tweaked VGA modes.
REMEMBER TO DELETE EVERY *.CFG AND .HI FILE FOR VECTOR GAMES, OTHERWISE
THE GAMES MIGHT NOT WORK CORRECTLY.
- Mike Coates added partial sound support (through samples) to the Carnival driv
er.
- Bubble Bobble support, provided by Chris Moore (chris@aethos.co.uk).
- Son Son support (dedicated to Roberto Ventura! ;)
- Preliminary Exed Exes support, implemented by Richard Davies.
Thanks to Paul Swan, it has 100% accurate colors.
To do: find where tile ram is located and how it works, and whether banked
ROMs contain code or only data. The structure of this game is similar to
the other Capcom games.
- Mirko Buffoni and Tatsuyuki Satoh added Starforce sound emulation.
- Mike Coates tidied up the wow drivers, added definable keys to most games,
and joystick & 2 player support to Seawolf II.
- Fabrice Frances added hiscore saving support to all Gottlieb drivers.
- Ray Giarratana included trackball support to Missile Command.
- Added support for Mr'Do vs Unicorns (earlier version of Do's Castle).
Thanks to Lee Taylor for info)
- Sound support in Tutankham.
- Elevator action sound is perfect now.
- Improvements in Zaxxon colors by Marc Vergoosen.
- Jarek Burczynski changed showcharset() in usrintrf.c. Now you can use PGUP
and PGDN to scroll through a charset which doesn't fit in the screen.
Sources:
- Brad Oliver wrote the new sndhrdw/pokyintf.c file. It handles most of the
pokey interface to pokey.c. Rather than call milliped_sh_start() or
whatever, call pokeyx_sh_start(), where x is the number of pokeys. It will
keep track of the pokey count and use the appropriate clipping. I'm not
sure 3 pokeys is a possible combination so there is no such
pokey3_sh_start() routine.

- Christopher Kirmse <ckirmse@ricochet.net> ported MAME to Win32.


It compiles from the same source tree as the DOS version; to compile using
visual c++ 5, just do
nmake -fmakefile.w32
To build mame32.exe, you also need the SEAL audio library for win32.
- Changes in SN76496 emulation
chips on 8 channel PCM sound
COMMON.C, 'TRANSPARENCY_PEN'
(for X/Y dual scroll games).

(added SN76496UpdateB function to emulate 2


cards), added Z80PIO and Z80CTC emulator, in
and 'TRANSPARENCY_COLOR' mode were speeded up
All this was done by Tatsuyuki Satoh.

- Added generic EAROM routines for the Atari Vector games, they
are in src/machine/atari.c and src/machine/atari.h
- Bernd Wiebelt sincerely hopes he fixed the BCD-emulation in the 6502
emulation. At least the authentic Tempest feeling (broken X/Y monitor) is
gone, since the game now starts without pressing Fire.
The following changes were done by Nicola Salmoria:
Program:
- You can now turn off speed throttling (F10) even on games which use audio
streaming (i.e. all the ones with 8910 or Pokey sound chips)
- Loco-Motion support
- Blue Print support
- Thanks to F. Kurokawa, preliminary Snap Jack and Cosmic Avenger support.
They run on the Lady Bug driver.
- Fixes to the audio code which should fix crashes on some games and
compatibility problems with GUS and AWE 32. However let me stress once
again that if you have an AWE 32 you should use the plain SoundBlaster
driver. The AWE 32 driver sounds NOTHING like the original (and is slower).
- In Galaga, star scroll speed in levels > 32 should be correct now.
- Pressing ESC in all menus returns to the previous menu instead of quitting.
- Changed the 8910 sound chip emulation interface to allow updates more
frequent than 60 per second. I also increased the sampling frequency to
44.1kHz.
These changes provide dramatic improvements in sound quality, which you can
appreciate in e.g. Gyruss and Pooyan.
The price to pay is slower execution. To make things worse, I had to
(hopefully temporarily) remove some optimizations, so the above games will
probably not run as well as before on slower systems.
- Donkey Kong has better colors. Are they entirely accurate?
- Preliminary driver for Eggs.
- Popeye runs at the correct speed of 30 fps.
- Increased the maximum number of digital audio channels from 8 to 16, so
there are no more missing voices in the Mr. Do! games (Castle, Unicorns,
Wild Ride, Run Run, and Kick Rider).

- Thanks to Gary Walton, speed in Pengo should now be closer to the original.
- The unencrypted versions of Penta and "pengopop" are no longer supported
because they are just hacks, not coming from a real board.
The *original*, *encrypted* versions are now supported instead. They are
exactly the same, the only difference is that they are encrypted and come
from real boards.
The names now are:
"pengo" original Pengo with "PopCorn" music
"pengoa" alternate version (earlier) with different music
and no slow screen draw
"penta" the bootleg called Penta
- Elevator Action, Jungle King and Wild Western now use the same video hardware
driver (taito.c)
- ROMs are checksummed before starting the emulation. If the checksum doesn't
match, a warning message is printed on the screen (along with the expected
checksums). Execution resumes after pressing Return.
Not all drivers use this feature yet, but most of them do.
- Some alternate ROM sets supported: ckonga, galaganm, gallag, bzone2,
asteroi2, panica, pacmanjp.
- Some ROM renaming here and there, just to annoy you ;-)
- Lots of minor fixes and enhancements.
- Exchanged the infamous two sprite banks in Moon Cresta.
Sources:
- EXTREMELY IMPORTANT:
osd_obtain_pen() now doesn't return pens sequentially. This ensures that
MSDOS driver writers are aware of the existence of Machine->pens[] and
use it appropriately. Drivers which don't do this will have wrong colors.
- modified readinputport() to scan the keyboard only once per frame, and
handle everything more efficiently. It is now MUCH faster than before useful with games which continuously poll a port for VBlank.
- generic_vh_start() now checks that videoram_size has been initialized and
fails otherwise.
- When using TRANSPARENCY_COLOR and TRANSPARENCY_THROUGH with drawgfx(), the
argument must now be the pen code instead of the remapped pen number, e.g.
instead of Machine->background_pen (= machine->pens[0]) you just specify 0.
I also removed the background_pen field from Machine: use Machine->pens[0]
instead.
- The ROM_LOAD() macro now requires
checksum. To quickly upgrade from
(temporarily) ROM_OBSOLETELOAD(),
do a cut & paste from the warning
as soon as possible.

four parameters, the last one being the


previous sources you can be used
however adding the checksum is easy (just
message) so it's better to put them in

- New macro ROM_RELOAD(), meaning to reload the previous ROM at a different


address (useful with 6502 games which need reset/irq vectors at FFFx).
- In common.c, new function printromlist(), used by loadroms() and mame.c.
(-listroms).

- Drivers are now allowed to modify the RAM and ROM pointers to implement
bank switching. Bubble Bobble uses this.
Be careful: when using this feature, you cannot use the standard MRA_RAM
and MWA_RAM memory hooks to access RAM.
- InputPorts now can automatically handle VBlank bits. No more need to write
custom code. Lady Bug, Carnival, Mysterious Stones, Naughty Boy and Phoenix
use this feature. Many other drivers need to be updated to use it.
MAKE SURE TO DELETE LADYBUG\LADYBUG.DSW AND LADYBUG\LADYBUG.CFG, OTHERWISE
THE GAME WILL NOT WORK CORRECTLY.
- New support functions in cpuintrf.c:
cpu_getfcount(), which returns the number of CPU cycles till the end of the
current video frame (as opposed to cpu_geticount(), which returns the
number of CPU cycles till the next call of the interrupt handler)
cpu_getiloops(), which returns the number of times the interrupt handler
will be called before the end of the video frame (useful in interrupt
handlers).
cpu_gettotalcycles(), which returns the total number of CPU cycles passed
since the CPU was reset.
ignore_interrupt(), companion to interrupt() and nmi_interrupt(). This
allows interrupt handlers to be cpu-independent, avoiding use of
CPU-specific interrupt identifiers.

0.26a
- This is a bug fix version. I did a mess with the
I mentioned before. Well, I was the first to try
wrong sources ;) Funny!! BTW, now everything is
Galaxians, Centipede, and others. I have learned
4.30am in the morning :>

famous heavy modifications


the feeling of working on
back to normality, Pacman,
a thing: never work until

- Thanks to Gary Walton, Nicola added 100% correct colors in Mr Do's Castle
Fixed also a bug in Ghosts 'n Goblins hiscore saving. Now GnG does the
self test too.
- Some credits that were left out in this file only, last time: Thanks to
Al Kossow, Hedley Rainnie and Eric Smith for the code to their vecsim
emulator which had emulated these games previously on the unix and the mac,
and thanks to Neil Bradley for pointing out the critical bug in the vector
generator engine which prevented Tempest from working.
- Super Pac Man and Mappy have correct pitch now (thanks Aaron and Satoh).
Also, SuperPac has speed cheat control again.
- Frogger doesn't have garbled chars anymore, and Galaga has correct stars
speed now.
- Added support for KickRaider. It's a rom swap, same hardware of Mr. Do
Wild Ride.
- Patrick Lawrence added trackball sensitivity setting menu

- Morten Eriksen added hiscore save support to Arabian and AntEater


- Sound is back on williams games too
- Changed Dig Dug Atari rom dir into "digdugat", indicating the correct
roms archive name.

0.26
- After so much time of hard work the policy of "back to quality" is starting
to bring back the efforts. I'm proud to announce I've beaten Mr Do's Castle.
Done one, done all. So now we have also Mr Do! RunRun and Mr Do! Wild Ride.
Thanks to the invaluable help of Nicola, they are also arcade colors perfect,
very fast (!) and each game has audio support and hiscore saving! :D
- Me and Aaron Giles (agiles@mail1.sirius.com) have added support for MAPPY!!
One of the most requested games. It was a pleasure working with Aaron! He
also added sound support and very close arcade colors (I think to have found
the color_prom... if it's the correct prom it will be added in the next
release). Hiscore saving is supported as well.
- Thanks to the outstanding combined efforts of Brad Oliver, Bernd Wiebelt
and Allard Van Der Bas, MAME entered in vector emulation world! (YEAH!!!)
All in a time, we have support for Asteroids, Asteroids Deluxe, Black Widow
Battlezone, Gravitar, Lunar Lander, Red Baron, Spaceduel, Tempest!!!
- Again Aaron Giles added sound support to Super Pac Man!
- Patrick Lawrence (pjl@ns.net) did a great work adding trackball support to
the main core system. Trackball is enable with -trak parameter. Trackball
support has been added to Centipede and Reactor. Also, Patrick provided
a driver for Crystal Castles. Great Work! ;)
- And three... Aaron added support for Dig Dug!! Hey man, you're at a step
to become a God of Arcade emulation ;)
- Mike Coates has joined to the "back to quality" team. He added support for
SeaWolf ][, and improved Space Zap and Gorf (which is still unplayable).
Also Robby Roto is now fully playable (you'll need a bug free rom set).
- Ray Giarratana (ray@loop.com) added support for Missile Command. I didn't
include modifications for trackball for now. The code needs to be cleaned
a bit, but the game is still playable.
- Enrique Sanchez provided me documentation for Yie Air Kung Fu. Also,
Philip Stroffolino (phil@maya.com) sent me a more complete driver than
mine for this game which is now playable.
- Eric Anschuetz fixed a bug in joystick redefinition menu. Also added the
selection support for Any Button ("A" key), and None ("N" key).
- Fabrice Frances added a driver for 3 Stooges.
- Andrew Scott provided a better sound support for Phoenix. Melody is still
missing, because Shaun's board doesn't have it.
- Nicola fixed Jump Bug driver which is now perfect. Colors are still wrong

without proms.
- Morten Eriksen (Morten.Eriksen@due.unit.no) added hiscore saving to
Ghosts 'n Goblins.
- Valerio Verrando provided a new tweaked mode 256x232 for Crystal Castles.
He also provided a new tweaked video mode to get vsynced 60Hz (perfect
speed) with 256x256 games. It has horizontal clock recover (thus video is
less mashed vertically, without having to modify monitor settings, and it
doesn't be confused with 224x288 by monitors that remember settings. Really
nice on scrolling games: try it with "-noscanlines -vsync -vgafreq 1"
- Fixed Commando dip switch bonus settings. Also fixed a setting in Ant
Eater dipswitch.
- Fixed a bug that locked your PC if BLASTER variable was not found (thanks
to James Oliver for the suggestion).
- Tatsuyuki Satoh fixed sound tempo speed in Elevator Action (tempo speed
is 37.5Khz).
- Added support for two versions of Pengo (one with the music of Popcorn
and a clone).
Sources:
- Me, Nicola, Bernd and Patrick have heavily changed the main core set of
sources. Improvements to speed, memory access, drivers structure were
done. We strongly suggest to developers to start their code on a clean
0.26 version.
- Opcode decode and graphic decode are now done by a single function in
one step.
- Tatsuyuki Satoh (tatuyuki@tky.threewebnet.or.jp) optimized DrawGfx()
function in case TRANSPARENCY_PEN and TRANSPARENCY_COLOR without remap,
producing a speed increment of 22-25% (try yourself with Elevator Action!)
- Mauro Minenna introduced a new option (-dir4) that simplify the use of
the joysticks to be connected on the keyboard. This modify resolves the
problem of diagonal direction in games such as PacMan, Popeye, and Kung Fu
Master.

0.25
Program:
- We have added Starforce! Another one that rocks!!
Sound is not supported yet.
- Finally I've added Tutankham. (Hi Moose!! ;) Moose provided me a good
bunch of information and I lost much time on a stupid bug in bank selection.
Thanks to David Dahl (techt@juno.com) that provided me a driver too, and
I found the light!! Also thanks to Rob Jarrett for the exhaustive memory
map (I've included it in sources, it's better than mine).
- I've decrypted the garbled graphics of AntEater and Rescue which are now
fully playable. And Fabio Buffoni improved the decode routines with
thrilling code. Colors are wrong, unless someone provides me a good
set of screenshots to study. Hunchback doesn't work yet.

- Nicola added a driver for Mysterious Stone.


- Sal and John Bugliarisi provided us technical information about the game
Naughty Boy. (Remember that code area is 64k long and not 32k).
We have implemented a driver and for this game which is now supported.
- I took the time to add some high score saving. So, now Junior Pacman,
Naughty Boy, Tutankham, Kangaroo, have high score saving support.
(So Dave will stop bothering me about that ;) heheh!!! Joking ;)
- Nicola fixed Commando driver, so now intermissions have the correct
tiles positioned.
- Added JrPacman speed cheat. It works in the same way of Pacman.
(thanks to Hugo Pi for let me notice this).
- Chris Hardy added support for Space Firebird. Thanks to Chris and to
all Sage Staff.
- Nicola did some fixes to Taito Games (Jungle King and Elevator Action)
about background placement and coins per credit dipswitch. Plus vertical
scroll support in Jungle King (used in ground shake), correct sprite
priority, and no more rubbish is present during change of stage.
Finally, he also added preliminary support for WildWestern and FrontLine,
which are not yet playable.
DELETE ELEVATOB\ELEVATOB.DSW, JUNGLEK\JUNGLEK.DSW, JHUNT\JHUNT.DSW,
OTHERWISE THE GAME WILL NOT WORK CORRECTLY.
- Eric Anschuetz proposed me to implement a different button layout for
joysticks. I replied with a configurable joystick setup (like the
keyboard one). So Eric finished the work providing us a useful joystick
setup menu. Thanks Eric and Robert! ;)
- Refixed the galaga hiscore bug (it happened when syncing my sources with
Nicola's ones)
- Maurizio Zanello provided a better interface between MAME and frontends.
And now you can select frameskip rate even while playing, without have to
exit. Volume can be controlled with keypad PLUS and MINUS keys.
- Robert Anschuetz provided me info about how to enable a shot sample with
moonquasar, mooncresta, galaxian and clones.
- Valerio Verrando fixed the Williams driver to support
Blaster, Defender, Joust, Robotron, Splat, Stargate.
Invaders driver to include high score saving and 100%
for Lunar Rescue; since some bootleg machines did not
overlay, Destination Earth retains the Space Invaders

joystick in
Also fixed the Space
arcade-perfect colors
use this colorful
color scheme.

- Bernd has cleaned up VESA command line options.


No longer supported:
'-vesascan' --> use '-vesa' or (faster, if it works) '-vesa2l'
'-vesaskip N' --> use '-640x480 -skiplines N' instead
'-rotate'
--> use '-rol' or '-ror' instead
New:
'-ror'
'-rol' Rotate the display (anti)clockwise. Since this uses
the standard VESA scanline mode, you'll get *vertical*

scanlines on rotated games (authentic?).


'-nodouble'
prevents pixel doubling, if you like miniaturized
arcade emulation. It's also faster than the standard
pixel-doubling VESA modes.
'-skiplines N'
does what '-vesaskip N' used to do, except it does not
select 640x480 VESA mode.
- Minor modifications to Arabian palette. Ville Laitinen also provided some
modifications to Kangaroo driver.
- Pause key back to 'P'. Sorry, you cannot use it for your redefinitions,
but, hey, you have 101 keys left!!! ;)
- Found the meaning of SW1 in Moon Cresta (Thanks to Mikiya Yadohisa)
- Added Crazy Kong bootleg version by Jeutel and Ms Pac Man Attacks clones
Sources:
- Added an alternate 224x288 video mode (on my Matrox this produce correct
aspect ratio with this tweaked mode). To select it simply add -224 or
-224x288 parameter.
- Nigel T. Barber (Nigel.Barber@sgcs.co.uk) added mouse support. We need
some feedback, because each mouse device has its own sensitivity. Enable
mouse support with -mouse parameter.
- Time to use proper MAME fonts. I draw a good looking complete set of
chars to be used for messages and menu system in MAME. Nicola changed
the entire set of drivers and implemented a user interface sublevel
(file is USRINTRF.C).
- Modifications done by Eric Anschuetz to add joystick reconfiguration
menu.
- I've changed the system configuration of each game. Now a game saves all
vital information (DSW, KEY, and JOY settings) in a unique file with
.CFG extension. A backward compatibility is provided, so the first time
MAME read previous settings and saves them in the .CFG file at exit/reset.
- Bernd changed the VESA code to provide '-rol' and '-ror'
replacing '-rotate'. Rotation modes are now supported in all
VESA resolutions. The '-nodouble' option prevents pixel doubling
in VESA modes, resulting in more speed and a smaller display.

0.24
Program:
- Nicola added support for Jr. Pacman. Decryption method provided by
David Caldwell (david@indigita.com). Colors should be 100% right too.
Hiscore saving not supported yet. Nicola also thanks Lee Taylor for
help.
- I've found the decryption scheme for garbled chars of Lost Tomb which is
now playable. Colors are still wrong.

- Also, I've finally fixed my problems with ADPCM decoding, so now Kung Fu
Master doesn't need separate samples anymore (I didn't distribute them
because of copyright on sounds). The samples are now calculated during
bootstrap of the game.
- Again Nicola added Turpin (Another version of Turtles) support. Also
colors are 100% correct the two games now.
- Fabrice Frences added support for Qbert Qubes. Only hitch with the
driver: you have to reset (F3) the game at first time when the empty
supreme noser table appears, then the table will be correctly filled.
Alternatively, you can insert a coin before this empty table appears...
Hiscore save not supported yet.
- New option in the setup menu: "CREDITS". It displays a list of the people
who contributed to the current driver. I have surely left out many people,
and apologize in advance for that. If you contributed to a driver and your
name doesn't appear in the list, please let me know.
- Since many people asked for this and Bernd Wiebelt was so kind to do me
this gift for my birthday, MAME has now -rotate option. You'll have to
turn your monitor (or your head (!) ;)
- Nicola fixed definitively Kung Fu Master driver which has now 100% perfect
colors and sprite positioning. Thanks to Paul Swan for color scheme.
Original version (copyright Irem) is now supposed to be in 'kungfum'
directory, while the bootleg (O.K.) is supposed to be in 'kungfub'. Test
mode doesn't work for bootleg version (as is right to be).
Hi Score Support in each version as well.
- In Seicross now shots are enabled. REMEMBER TO DELETE PREVIOUS .DSW FILE,
AND SET "DEMO & DEBUG MODE" TO OFF, AND "SW7B" to 1. Setting SW7B to 0
will cause to play the game without FIRE facility.
- Marc LaFontaine provided drivers for Robotron, Splat, Defender, Joust,
Stargate, Bubbles, Blaster and Sinistar. Bubbles doesn't start, and
Sinistar do weird things at startup. The other games work very well,
though. For this version I provide a set of fonts that can be used
to avoid jerkiness in williams games. If you use zipped roms remember
to include them in the ZIP files.
- Added SpaceZap support. It is based mainly on WOW driver. Mike Coates
provided a more stable driver too.
Sources:
- Bernd Wiebelt provided new Vesamodes: 320x240 and 512x384. You can select
a mode either by -X (e.g. -640) or -XxY (e.g. -640x480). Also fixed a bug
that caused -vesaskip 0 not to run properly. Also added -rotate option.
Also, any vesa mode in combination with -noscanlines option can be used
to achieve correct aspect ratio on most monitors. This method is of
course slower, and can work flawlessly on P166+ class.
- Modifications to support Driver Description and Credits.
- Nicola added a new mode in drawgfx: TRANSPARENCY_THROUGH. When background
has a higher priority of sprites, it's a lot faster using this option than
draw sprites and then apply a bitmap with TRASPARENT_COLOR.
- Fabrice Frances submitted a new faster I86 emulator. The entire I86
directory is changed, and most of Gottlieb games are now faster.

- Mike Coates provided a modification to COMMON.C to support multi bank


characters. It uses bits 8-15 of the charset array (short int - so
hopefully at least 16 bits on all implementations) to signify bank number.
- Changed the PAUSE key to Scrl-Lock key. This permits to redefine the
P key for playing.
- TO ALL CONTRIBUTORS: Please do not make use of C++ // comments in your
sources. I loose a lot of time every release to adjust them. Then use
official source release as a base for your next updates. Use a comment
style like in Williams.c sources (this is actually my comment style and
almost clear to read). Thanks.

0.23
Program:
- "And there was MUSIC!". Thanks to Ishmair's FM engine, music is supported
in Commando, Ghosts 'n Goblins, Diamonds. Since the synthesis is based
on FM generation via OPL, you must have a SoundBlaster, Adlib, or compatible
to get the music. However I heavily dislike this approach and I'm looking
for documentation on FM generation. If anyone want to join to the party
forward me a mail!
- I've also fixed GALAGA hiscore saving, which is now flawlessly supported! ;)
- I've added Kung Fu Master driver to MAME. Credits fly to Ishmair for the
hardware information and to Nicola for fixing my sprite bugs.
- Steven Hugg (hugg@pobox.com) provided a Williams games driver. Stargate,
Robotron and Joust are currently supported and playable. However Robotron
and Joust have some glitches yet.
- Tormod Tjaberg (tormod@sn.no) provided several modifications to Invaders
Deluxe driver which has now Hi-score Name saving feature (the only one
Space Invaders Emulator doing so at the moment!). All Invaders have now
Tilt too. Keys and Dip Switch adjusted. REMEMBER TO DELETE PREVIOUS
.DSW and .KEY FILES.
- John Butler and Ed. Muller provided a driver for QIX! High Score saving
supported too.
- Thankx to Dock Cutlip (dockc@cyberplanet.net) Pacman Plus has now 100%
arcade correct colors.
- While talking of colors, Ghosts 'n Goblins has 100% correct colors too!
Thanks to Gabrio Secco that provided us the complete colors LOG file ;)
- I've fixed Seicross which is now playable and has music too. REMEMBER TO
DELETE PREVIOUS .DSW FILE, AND SET "DEMO & DEBUG MODE" TO OFF.
- Also fixed Nibbler colors: I should say 100% correct colors, but I
remember the Nibbler hairs were Green versus Purple. Maybe I played a
bootleg version.
- Added Phoenix TPN clone ("phoenix3"). I've also added hiscore support to
all Phoenix and Pleiads as well.

- Fixed the "ape" bug in Kangaroo.


- Full rotation allowed in Mad Planets (Thanks to Andrew Scott).
- Some fix to Popeye and Burgertime sound pitch.
Sources:
- Modifications were done to M6809 emulator to support FIRQ.
- Changes were done to MSDOS.C to fix OSD_READ_KEY for people having
problems with keyboard.
- Dip Switches and Key Settings are now selectable thru a menu system.
F8 key is no longer supported.

[ Sorry to be late, but this is my birthday MAME release and I wanted it to


be as good as possible. Enjoy, and send a postcard if you like ;) NdMix ]
0.22
Program:
- Nicola added COMMANDO!! Another of my favorite games back to life ;)
High score supported as well. Original Sound is done by YM2203
(FM synthesis) while now is done by 8910 (no FM).
So music is not present.
- And here it is: thanks to Roberto Ventura's superdetailed documentation
I've added Ghost 'n Goblin support. I lost one week because of a bug in
the new 6809 emulator, so I switch back to the previous one. Big thanks
to Nicola that fixed some stupid bugs in color palette generation. ;)
We need a skilled player. READ THE README.TXT FILE!
- Another one added: based on GnG hardware I've added Diamond Run support.
Don't know if the banks mode switch is right, it's too slow for me
to go further the first level!
- Added Vulgus support. Colors are wrong unless I find the color proms.
High score save supported. I played around with Dip Switches: they are
almost right, though, but there should be also a sound toggle while in
attract mode.
- Rick Wirch (wirch@execpc.com) proposed a better optimization to Cpu_readmem
and Cpu_writemem. Speed results are good under DOS and Windows.
- Brad Oliver provided me a lot of suggestions to improve portability and
fixed a lot of bugs.
- Paul Berberich fixed some colors of Congo Bongo. They are not right but
a lot better of the previous. Screenshots could be useful.
- I have fixed colors in Centipede. Thanks to Ivan Mackintosh for sending
me the info.
- Nicola added cars in radar update of RallyX and improved color palette
emulation in Bombjack which has now perfect colors.

- Fixed credit bugs in Elevator Action and Turtles. REMEMBER TO DELETE


THE PREVIOUS .DSW FILES OTHERWISE THE GAMES WON'T WORK PROPERLY!
- Added preliminary sound support to Elevator Action and Jungle King.
Tarzan yell scream sample missing.
- Time pilot has now 100% correct colors (thanks Virtu-Al!).
- Some fixes to sprite priority in Frogger.
- Added high score support to Amidar, Frogger.
- Added Phoenix Amstar (clone) support, Pac Man Plus (clone) and fixed
all Invader's clones bugs. Also fixed charset of all Invader's clones.
Sources:
- Changed CPUIntrf regarding readmem/writemem optimizations
- Minor fixes to some drivers
- Bernd Wiebelt provided modifications to MSDOS.C for Vesa 2.0 linear
and banked extensions. Also inline assembly double pixeling provided
a faster approach on slower videocards. Check the readme.txt file for
new video options.

0.21.5
- Nicola fixed a bug in Memory addressing that caused Galaga to trash
under DOS. Also, fixed colors in Elevator Action (100% correct colors)
and Jungle King (I have some screenshots and colors doesn't match. BTW
these are much better than previous). Finally Jungle King doesn't need
to select the graphic bank, but still have some glitches on sprites.
- Fixed a bug in sound init of phoenix/pleiads that caused the game to
crash under dos.
- Fixed a bug in keys redefinition routine: ALT, SHIFT, and CONTROL are
now selectable.
- Fixed 224x288 noscanline video mode. It's centered again now.
Sources:
- Changed MSDOS.C to support 240x272 (video mode provided by V.Verrando)
- Changes in COMMON.C to copyscrollbitmap()

0.21
Program:
- I'd like to say I've finished, but Nicola is too fast as always! ;)
So thanks to Nicola we have GALAGA!! And very special thanks to Martin
Scragg that provided us crucial information on custom I/O chips.
- Thanks to Dark Schneider (DS wanted to be anonymous, so I'll call him
this way) that provided 6809 support and the first driver working on this
CPU: Super Pac Man. The driver is based on the super-detailed KEG file
of Replay emulator by Kevin Brisley (kevin@isgtec.com).

Thanks to everyone.
- Ville Laitinen provided a driver for Kangaroo, based on the Arabian
hardware. I've also adjusted the number of frames per second to 60
to the two drivers. Sync with sound should be better, though.
- Thank to Virtu-Al (Alan J McCormick (gonzothegreat@JUNO.COM)) Amidar
and Turtles now have 100% correct colors.
- Arabian has correct colors now.
- Fixed a bug in all games with starbackground: using a frameskip > 0
introduced slowdowns. Now the speed remains unchanged.
- Fixed tempo speed in 1942. It was playing at half speed. Should be
correct now. Also fixed a bug in noise volume of PSG. Noise was
playing at half volume.
- Added support for Donkey Kong japanese version
- Minor adjustment to Space Invaders color strips
- Mad Planets doesn't crash anymore with the new samples (shorter!)
- Added colors to Warp Warp. Thanks again Chris.
- Fixed Dipswitch in Elevator Action. YOU'LL HAVE TO DELETE THE PREVIOUS
DSW FILE IN "ELEVATOB" DIRECTORY IN ORDER TO GET IT RUN CORRECTLY.
Sources:
- Added M6809 CPU support. Changes in CPUIntrf.c and Driver.h to accommodate
the new CPU.
- Nicola introduced changes to the Z80 emulator code that intercept some
sorts of tight loop used during an interrupt waitstate. Normal games
should not be affected, while Galaga and 1942 are now very fast!!
- Added MasterVolume in MSDOS.C, and changed MAME.C to support this feature.
You can change the volume thru various volume percentage [100,75,50,25,0]
pressing F9.
- Sound is frozen now during GFXView, Pause and DipSwitch settings.[Ahhh! ;)]
- I've added redefinable keys in MAME. A new structure contains which
input ports and bits have a certain meaning. The KEY settings will be
saved in a .KEY file, in the game directory.
- Changes in COMMON.H for the sample structure. Now it has infos on
replayrate, resolution and volume of the sample to be played.
BE SURE TO DOWNLOAD THE NEW SET OF SAMPLES, OR THE "MAMESAM" CONVERTER
OR YOU WILL GET NO SOUND FOR SAMPLE BASED GAMES!!

0.20
Program:
- Yes!! Finally I wrote a driver for Gyruss, one of my favorite games
and one of the reasons why I started emulation. Big special thanks

to Michael Cuddy, without help and information this game would probably
never be done; and to Nicola Salmoria that fixed some of the sprites
bugs that turned me mad and cleaned the code! ;)
- The following changes were done by Nicola Salmoria:
- 1942 has correct colors. Also fixed rom paging, so now it has no more
slowdowns. Fixed jerkiness. Sound is better, too. How about the
tempo? How about the pitch? Are they right?
- fixed missing sprites when exiting from doors in Elevator Action. There
are still some sprite priority bugs. Also better colors.
- Thanks to Marc LaFontaine's invaluable help, Popeye is now fully playable
and has 100% accurate colors. Supports high score saving, too.
Still very slow.
- Brad Oliver found a lot of bugs around the code. Fixed 1942 background
scroll, Arabian video driver, and Phoenix sound init routine (all those
caused trashes on MAC).
- Paul Berberich fixed some colors of Donkey Kong that is now quite close
to original arcade. Also Donkey Kong Jr. has better colors now.
- Fabrice Frences provided a driver for Krull. Also fixed some bugs in
qbert, and returned audio to Mad Planets.
- Ron Fries created a new set of Donkey Kong samples, using Mike Cuddy's
8039 emulator. The new samples no longer have static, they are aliased
and louder. All names are now generic, so the same name can be used
across Nintendo line (DK, DKjr, DK3, Mario).
- Chris Hardly kindly provided a working driver for Warp Warp.
- Dave W. provided a new set of invaders samples. Should be better, though.
- Frogger music tempo bring back to original value. Fast but flawless!
Sources:
- Changed 8910intf to support 5 PSGs (Gyruss have them!)
- Changes in MAME.C: added -list option. This is useful for maintaining
the readme file. It lists currently supported games. Thanks to Zanello
Maurizio for suggestion.
- Changes in MSDOS.C: vesa and vesascan are now mutex. Also fixed a bug
caused by calling joystick initialize before starting allegro.
- To UNIX users: sorry for the mess I did in my previous distribution.
All names and patches should be ok now.
- Nicola Salmoria provided the following changes:
- changed GENERIC.C to add sound_command_latch_r(): this always return the
last command, instead of 0, if there are no more pending commands. This
was required by 1942.
- new flag for the cpu type: CPU_AUDIO_CPU. For example, you'll define a CPU
type as CPU_Z80 | CPU_AUDIO_CPU. This indicates that the CPU is a slave
used for audio only, and is therefore not needed if sound is disabled.
The CPU will not be emulated when sound is turned off, therefore speeding
up the emulation a lot.
- also, 8910_sh_update() doesn't emulate the 8910 audio if sound is disabled

(the I/O ports of the chip are still emulated, since some games use them
for input).

[ Sorry to be late, I just taken my graduation in Computer Science and I


was a little busy. Here we go! :> ][NdMix]
0.19
Program:
- Thanks to Marc LaFontaine we have now support for Popeye. It's not yet
playable (when the game starts the machine resets) but it has music already.
It's also very slow, since it uses a 512x480 screen. I'm looking for
decryption scheme for original Popeye board using Lionel's idea [pain!].
- Fabrice Frences fixed the Qbert driver and added support for Reactor.
- Jarek Burczynski provided a preliminary but playable driver for Arabian.
Colors are wrong, but it support sound already.
- Mike Coates fixed the Space Panic background colors. Also added hiscore
support.
- Nicola Salmoria found how Elevator Action background works. Also updated
all drivers that have a scrolling background. Support for the bootleg
version of Elevator Action ("elevatob"). The original version doesn't
work because of copy protection. The graphics are almost OK now,
albeit quite slow.
- Paul Leaman (author of the 1942 emulator) provided exhaustive information
on (guess what) 1942, which is now supported.
- Some changes to music tempo of Frogger
- Added partial sound support to RallyX (no explosions yet). Thankx to Ron
Fries.
- Added preliminary unplayable WarpWarp. Graphic is ok, but the game hangs
during diagnostic.
- Changed noise_lenght and noise_rate values in Moon Cresta audio driver,
so now noise is much more noisier!
- Shaun Stephenson provided me original Phoenix sound samples, so I adjusted
sound driver to achieve correct sound modulation and frequency, and
substituted noise generator for shots and explosions with a couple of
samples. Noise generator can be still used (just don't put the samples
in the directory) with Phoenix and it's used in Pleiads. I changed
white noise waveshape and adjusted frequency, so now it sounds better.
Source:
- Added input ports 5 and 6 in CPUINTRF module.
- Fixes to setdipswitches() and the fps counter in COMMON.C, to make them
work correctly with non 8x8 fonts.
- Substituted strcmp() with case insensitive stricmp() in MAME.C and MSDOS.C.

This solve the problem with upcase gamename (ex: Win95 and NDOS).
- Added copyscrollbitmap() to COMMON.C, that simplifies programming for
those games that use scroll.

0.18
---IMPORTANT NOTE: This will be the last version of MAME released by me (Nicola
Salmoria). From now on, the project will be maintained by Mirko Buffoni
(mix@lim.dsi.unimi.it). Contact him if you have material to submit for
inclusion into MAME. Please don't send such material to me.
Program:
- Green Beret:
- The speed should now be VERY accurate. It also syncs correctly with the
music.
- Sound pitch should be correct as well (though it changes after you die
for the first time...)
- High score support.
- Fixed sprite clipping problem on the left of the screen.
- Fixed memory trashing bug in dirtybuffer handling
- I finally added some lousy, very inaccurate, noise to the 76496 emulator.
This affects Lady Bug and Green Beret.
- I also added the same lousy noise to Galaxian, Pisces, Moon Cresta, Moon
Quasar.
- Fixed bug in the 8910 emulation which caused noise to be played in Crazy
Kong when you jumped over a barrel.
- Zaxxon and Congo Bongo now save their high scores for real. The code had
disappeared from the drivers... I _did_ write it, since I had .hi files in
my directories ;-)
- High score support in Space Invaders (Invaders only - not clones)
- Bomb Jack is much faster on a 486. Now runs very well with -frameskip 1 on
my 486/100.
- Sprite placement in Pac Man, Ms Pac Man and Crush Roller should now be
arcade perfect. Thanks to Richard Davies who verified it on a real machine.
- Preliminary support for Jungle King / Jungle Hunt. Slow but playable. I
haven't the gfx bank selector, therefore you'll have to pick the correct
background graphics yourself. Use keys C and V to change it.
- VERY preliminary support for Elevator Action. Not playable.
- Preliminary support for Seicross, using the Crazy Kong driver. Not playable.
- Marc Lafontaine fixed some problems in the Venture driver, and provided
drivers for Mouse Trap and Pepper II, which run on similar hardware (Pepper
II is not complete yet).
Note that the required Venture ROM set has changed - the other one was
missing one ROM.

Collision detection doesn't work - in Mouse Trap, you can use keys 7 and 8
to simulate a sprite-to-character and a sprite-to-sprite collision.
- Rotated the controls for Q*Bert
- Some changes to music tempo in Amidar, Pooyan, Time Pilot.
- Added support for the original, Universal version of Mr. Do!. I renamed the
other, which has an additional Taito copyright notice, "mrdot".
- Support for a version of Crazy Kong running on Scramble hardware
- Mike Coates provided a Space Panic driver.
- Fixed bugs in Jump Bug and Bagman sound drivers which caused page faults
when run under DOS.
- Fabrice Frances submitted a much faster version of the 8086 emulation.
Q*Bert now runs at full speed with -frameskip 1 on my 486/100.
Source:
- Samples are now loaded by the main engine, not the single drivers. This is
done via the new field samplenames in the GameDriver structure. Samples can
then be retrieved by the drivers in Machine->samples.
0.17
---Program:
- Various fixes to Green Beret:
- Thanks to Paul Swan, it now has 100% accurate colors.
- Dip switches didn't work, fixed.
- Support for Rush'n Attack (the US version)
- I've been told that it actually was too fast, so now it runs slower.
Let me know how accurate it is.
- Fabrice Frances submitted a massive contribution: an 8086 CPU emulator, and
drivers for Q*Bert and Mad Planets. They run quite slowly on my 486/100
(~25 fps) but are playable. Q*Bert has sound too (with samples).
0.16
---Program:
- Support for Green Beret, with partial sound (probably inaccurate).
Colors are terrible. If you can see what you are doing, it's playable (but
should it be this fast? I find it very hard)
- Richard Davies and Brad Oliver provided drivers for the so-called "Sega"
version of Jump Bug (it's actually a bootleg with the protection checks
removed). The driver supports sound.
- Added joystick support to Vanguard.
- Support for Fantasy on the Nibbler driver. There are several problems, it's
not playable.
- Thanks to Mike Coates and Peter Clare, Carnival now has colors.

- Stefano Mozzi provided a much better palette for Mario Bros.


- Matthew Hillmer submitted a new palette for Donkey Kong 3. It is not
intended to be correct, but at least it gets rid of the annoying
checkerboard effect.
- Tormod Tjaberg provided updated Space Invaders (+clones) drivers which
support sound. They use samples, derived from Michael Strutts' emulator.
- Support for Fantazia (bootleg version of Moon Cresta)
- Fixed a couple of remaining graphic glitches in the Wizard of Wor driver.
- Various fixes to Burger Time:
- Fixed CPU clock speed to avoid slowdowns on fourth level.
- It's much faster on a 486.
- Sprites no longer "stick" on the screen on a level change.
- Fixed a bug in high score save.
DELETE BTIME\BTIME.HI, OTHERWISE THE HIGH SCORE TABLE WILL BE CORRUPTED
- Marc Lafontaine provided a Venture driver. It is partially playable,
sprites are wrong.
On startup, keep 1 or 2 pressed to proceed.
Source:
- I wrote some general purpose routines to simplify interface with the AY8910.
They are in 8910intf.c. See the existing drivers for usage examples.
- To solve the problem with garbled text messages in Time Pilot, modified the
GameDriver structure replacing letters_start and numbers_start with the
array charset[36].
- I finally took the time to change Z80.h/M6502.h to make them work together.
This allowed me to remove some kludges in cpuintrf.c. I also added some new
functions, which can be used regardless of the CPU type: cpu_getpc(),
cpu_geticount(), cpu_seticount().
- Fixed a couple of bugs in M6502 BCD arithmetic. One of them was causing the
pepper counter in Burger Time to behave strangely.
- Brad Oliver modified pokey.c and pokey.h to make them more portable.
0.15
---Program:
- Jarek Burczynski submitted a sound driver for Bomb Jack.
The game is now a bit slow on my 486/100, -frameskip 1 is almost good but
not quite.
- Sound support in:
Scramble
Super Cobra (note that the "scobra" rom set is wrong - ROMs 5c, 5d and 5e
must be 2k, not 4k. You can take them from one of the other two
sets).
The End
Battle of Atlantis
Lost Tomb (very nice sound, pity the ROMs are corrupted)

Amidar
Turtles
Frogger
Pooyan
Time Pilot
All these require -frameskip 1 on my 486/100.
I have no idea how accurate the tempo and pitch is. If you can compare it
with a real machine, please let me know what's wrong.
Note: I discovered that the garbled sound I experienced in Scramble was
caused by a bad ROM. Therefore, if sound doesn't work, check your ROM
set. Note that I also changed one ROM name from "2c" to "2d".
- Carnival is finally working! Many thanks to Richard Davies who understood
how to make it accept coins.
- Brad Oliver deserves a prize for being the person who, alone, has
discovered more bugs than everyone else put together. This time the bug
was illegal memory accesses in games using 224x288 and 288x224 modes (Pengo,
Pac Man, Rally X).
- Thanks to the invaluable help of Steve Scavone, I've been able to fix
many bugs in the Wizard of Wor driver.
- Added support for a version of Galaxian which is known to be original. It
has Namco copyright and the code is slightly different from the other
Galaxian (which has Midway copyright). I called this version "galaxian",
and renamed the other "galmidw".
- High score support in Pac Man, Ms. Pac Man, Crush Roller, Burger Time,
Zaxxon, Congo Bongo, Pooyan, Moon Cresta, Moon Quasar.
- Support for a different version of Frogger ("frogsega").
- Miscellaneous graphics fixes to Zaxxon and Congo Bongo. Also better colors
(especially in Congo Bongo), thanks to Marc Lafontaine.
- Fixed most of the graphics problems with Moon Patrol. The video driver is
a gigantic kludge right now, but it works and at a reasonable speed
(though I can't reach 60fps on my 486/100).
- Many people requested a way to synchronize with the video beam, to avoid
jerkiness. Here it is: -vsync. It should be used together with -noscanlines,
and possible -vgafreq to adjust the frame rate to be as close as possible
to 60fps (use F11 to check the actual frame rate). Note that this, unlike
the default timer based sync, will NOT downgrade nicely if your system is
not fast enough.
- Bernd Wiebelt provided new code for -vesascan, and implemented the new
"-vesaskip n" mode. It uses a 640x480 screen instead of the 800x600 used
by -vesascan, and allows you to scroll the visible area using the PGUP and
PGDOWN keys.
- Maintaining the endless list of ROM subdirectories was getting quite boring,
so I modified readroms() to make it automatically print the complete list of
required ROMs if one is missing. I think I should add a CRC check as well.
I also added a brief explanation of what ROMs are and why they are required hoping this will cut down the flow of e-mail asking "gee, I run your program

and it says 'unable to open file xxxx/xxxx', what should I do?"


0.14
---Program:
- Fixed bug in Mario Bros. high score loading: it was recovering the high
score table, but the high score at the top of the screen was not set
accordingly.
- Mario Bros. and Donkey Kong 3 now also preserve the score distributions
(use F1 to see them)
- High score support in Galaxian, Time Pilot, Centipede and Millipede.
However, high scores don't seem to work in Millipede (you are not asked
to enter your name).
- Fixed bug which sometimes caused 6502 games not to run (actually they did
run, but interrupts didn't happen).
- Since the US version is better, I renamed amidar to amidarjp, and
amidarus to amidar.
- Renamed pleiades to pleiads.
- The change in video modes suggested by ue303ey@sunmail.lrz-muenchen.de
didn't work on some systems, so I reverted to the previous one.
- Ron Fries provided a new version of his Pokey emulator which fixes problems
in the interface with the SEAL audio library (signed vs. unsigned samples).
- Ron Fries also added preliminary sound support to Donkey Kong! It uses some
very bad samples for now. The samples are distributed in a separate archive
- put them in the dkong subdirectory.
- Richard Davies updated the audio routines in Phoenix, sound is now closer
to the original and noise is emulated.
- Brad Oliver and Mirko Buffoni provided a driver for Vanguard, based on Brian
Levine's Vanguard emulator.
Source:
- driver.c was getting much too large and confused. I moved the GameDriver
structures inside the single driver/xxxx.c files. This has the additional
benefit that people sending me drivers will not forget to include the ROM
loading addresses ;-)
- I also changed the GameDriver structure, moving there fields from the
MachineDrivers structure. The idea is that MachineDriver should describe
the hardware, while GameDriver the software. Therefore things like colors
(which are usually stored in a PROM) and dip switch settings go into
GameDriver; decode_color_prom, on the other hand, goes into MachineDriver
because it is an hardware function.
It could be argued that input_ports belong to the hardware; but sometimes
we have keys tied to dip switches (test switches and so on) whose function
is determined by the software. Moreover input_ports contains the default
values for all ports, including dip switches, and those are definitely
software related.

0.13
---Program:
- Added the most frequently asked feature: high score saving. Check the
table at the beginning of readme.txt to see which games already support
it.
High scores are also reset-proof: you can reset the game by pressing F3
without losing them. To reset the high scores to their default, just
delete xxx\xxx.hi where xxx is the game name.
Note that hi score saving will NOT work if the default hi scores have been
modified in the ROMs. Use the original ROMs.
- Fixed all of the problems in Burger Time related to ROM encryption. Slices
fall more than one level when an enemy is on them, no more crashes when a
bonus life is earned, the high screen table works, two players mode works,
and other things.
- Support for an alternate ROM set for Burger Time, which is likely an
earlier version.
- Millipede's dip switches now work.
DELETE MILLIPED\MILLIPED.DSW, OTHERWISE THE GAME WILL NOT WORK CORRECTLY.
- Marc Lafontaine submitted a new palette for Zaxxon.
- Richard Davies provided a new Phoenix/Pleiads driver with partial sound
support.
- Fixed "froggers" (I broke it while adding sound to Scramble).
It now also uses the correct palette. Yes, I know that it is completely
different from the real Frogger. This is a bootleg version, remember.
- As promised, I modified the 8910 emulator to set the clock frequency at run
time, so sound in Crazy Climber and Crazy Kong is now back as normal.
- ue303ey@sunmail.lrz-muenchen.de reports that changing the horizontal total
register of the custom video modes (0x3d4, 0x00) from 0x5f to 0x61 makes
them work on his monitor. I experimentally made the change.
IF THE CUSTOM MODES WORKED FOR YOU IN VERSION 0.12 AND THEY DON'T WORK ANY
MORE, PLEASE NOTIFY ME AND I WILL REVERT TO THE PREVIOUS SETTING.
- Keith Smethers suggested to add -vgafreq n command line parameters,
to select the VGA clock frequency. This may reduce flicker, especially in
the 224x288noscanlines mode.
WARNING: THE FREQUENCIES USED MIGHT BE WAY OUTSIDE OF YOUR MONITOR RANGE,
AND COULD EVEN DAMAGE IT. USE THESE OPTIONS AT YOUR OWN RISK.
- I began working on Moon Patrol's background. It's quite messed up now.
- Fixed a couple of minor bugs in Bomb Jack background colors.
Source:
- Use latest version of Marat's 6502 engine.
- Changes to struct GameDriver to accommodate the high score saving functions.
I also moved the decryption pointers at the end, so it is not necessary to
explicitly define them as 0 when they are not needed.
Check driver.c to see how high score handlers should be written.

hiscore_load() is called every vblank until it returns nonzero; this allows


it to wait for the hi score table to be fully initialized before replacing
it. To avoid saving an incomplete table, hiscore_save() is called only
if hiscore_load() previously returned nonzero.
0.12
---Program:
- Sound support in Burger Time. This is the first multiple CPU game supported
by MAME (two 6502, one for code, one for sound).
It's not perfect, but we're getting there.
Also, as you can guess, this is slow. A 486/100 cannot handle it at 60 fps.
Runs reasonably with -frameskip 1, though.
- I also set up the second CPU to emulate sound in Scramble, but the sound
that comes out is completely wrong. I don't know what I'm missing, anyone
can help?
- Since the 8910 emulator doesn't allow to set the clock frequency at runtime,
I temporarily switched to using the default one. This affects sound in Crazy
Climber, Crazy Kong and Bagman. Let me know whether it's better or worse
than before.
- Sound in Centipede, through Ron Fries' POKEY emulator.
- Fixed speed in Burger Time (was running at about half the real speed).
- Valerio Verrando provided 288x224 video modes to be used with Rally X.
WARNING: these video modes might be unstable (the noscanlines one hangs my
system). Any help to make them better would be appreciated.
As usual, if the default mode doesn't work on your system, try -noscanlines.
If that doesn't work as well, use -vesa.
- I finally found out what was causing slowdowns in Rally X and Bagman. It was
an interrupt related issue (see later). I hope I didn't break a dozen of
other games to fix this ;-)
- Thanks to Mike Cuddy and Mirko Buffoni, Pooyan colors are now MUCH better ;-)
I also fixed a bug in the dip switches.
MAKE SURE TO DELETE POOYAN\POOYAN.DSW, OTHERWISE IT WILL NOT WORK CORRECTLY.
- I suddenly realized that Time Pilot runs on the same hardware as Pooyan, so
I made a driver for it. Colors come straight from Mike Cuddy's emulator.
- Gary Walton confirms that the colors in Moon Cresta and Moon Quasar are 100%
accurate. Very good!
- The background stars in Scramble / Super Cobra now blink. However I don't
know how close to the real thing it is.
- Ville Laitinen pointed out that The End runs on Scramble hardware, so it now
uses the same driver. He also fixed problems with the input controls and two
players modes.
IMPORTANT: MAKE SURE TO DELETE THE FILES SCRAMBLE\SCRAMBLE.DSW AND
THEEND\THEEND.DSW, OTHERWISE THE GAMES WILL NOT WORK CORRECTLY.
- Ville also fixed sprite priorities in Congo Bongo.

- Doug Jefferys provided the color PROMs for Crazy Kong, so colors are now 100%
accurate (with the possible exception of Kong itself, which uses a separate
palette).
- Support for Moon Ranger (bootleg version of Moon Patrol).
- Added support for Lost Tomb (Stern game running on Super Cobra hardware),
but it doesn't work well (crashes during the demo, and it's not playable) and
the graphics are garbled. I think some of the ROMs might be corrupted.
- Preliminary support for Jump Bug. It uses a modified Scramble driver, the
hardware seems to be similar. It's not playable (the input bits are not even
mapped), and resets after a few seconds.
I'm not particularly interested in this game, anyone volunteers to complete
the driver?
- Support for the version of Super Cobra with Stern copyright.
NOTE THAT I RENAMED THE OTHER ONE (Konami copyright) "scobrak".
- Ivan Mackintosh provided a Millipede driver (dip switches are not supported
yet). Sound doesn't work, I don't know why.
- Brad Oliver provided a preliminary version of the Mr. Do's Castle driver. Not
working yet!
- Mike Coates pointed out that Carnival uses a RAM for character generation
(like Nibbler) and provided a driver for it. It's still not playable, but
the graphics are now correct.
- Bernd Wiebelt suggested to add a new option: "-vesascan". It uses a VESA
800x600 screen to simulate scanlines. It is much slower than the other video
modes. Use this if you want scanlines and the default video mode doesn't
work.
Source:
- Multiple CPU support. All you have to do to setup multiple CPUs is add
entries to the cpu[] array in the MachineDriver definition. Each CPU can
have different type (currently Z80 and M6502 are supported), clock, address
space, memory/IO port hook, interrupt handlers, number of interrupts per
video frame.
- Sometimes interrupt requests happen while interrupts are disabled. Until now
I just ignored them, but some games need them to be processed as soon as
interrupts are reenabled. Rally X is an example of such a game. The Z80
engine has provision to do that, but it would make writing a driver more
complex (need to find the interrupt acknowledge register) so I slightly
modified the engine to automatically cache an interrupt request and execute
it as soon as interrupts are enabled. I had already done a similar change to
the 6502 engine, it was needed by Burger Time which wouldn't accept coins
otherwise.
- Since the functions xxx_vh_start(), xxx_vh_stop(), xxx_videoram_w(),
xxx_colorram_w() are the same for most video drivers, I moved them,
alongside with some variables, to vidhrdw/generic.c. This doesn't reduce
much the size of the executable, but greatly reduces the amount of code that
has to be put in a video driver (in many cases, you just have to write
xxx_vh_screenrefresh())
- Fixed bug in msdos.c/osd_play_streamed_sampled() which prevented it from
handling more than one audio stream. This part of the code still needs a

major cleanup.
- Fixed bug in drawgfx() which sometimes allowed transparent non remapped
copies to be drawn outside of the clip region.
0.11
---Program:
- Moon Patrol support. There is no scrolling background because I don't know
where to place it... can anyone provide a screen snapshot?
- Burger Time and Donkey Kong 3 drivers provided by Mirko Buffoni.
The colors for Burger Time should be accurate, but I'm not quite sure can anyone confirm?
- Fixed joystick controls for Congo Bongo.
- Lionel Theunissen dumped the color PROM of his Uniwars board and... it's
different from the one provided by Gary Walton. Galaxian boards were widely
pirated so it's difficult to determine which one is the "correct" palette.
What I did was set the Uniwars driver to use one palette, and the "Japanese
Irem" to use the other. Play the one you prefer.
- Marc Vergoossen provided a much better palette for Zaxxon.
Source:
- increased the maximum size of the graphic elements that can be handled by
decodegfx() from 32x32 to 64x64. Actually I would have needed 256x64 to do
Moon Patrol backgrounds, but that seemed slightly overkill ;-)
0.10
---Program:
- Centipede support. This is the first 6502 game supported by MAME. I'm
currently using Marat Fayzullin's engine.
- Nibbler support. This is the second 6502 game supported by MAME ;-)
Interesting hardware: no sprites, two playfields, and it uses RAM for
character generation (redefining the characters to animate the worm).
- I had also broken Pleiades, fixed. That's the drawback of emulating more
than 60 games, I can't check them all before releasing a new version ;-)
- Ville Laitinen provided a Congo Bongo driver! The colors are terrible ;-),
but it's playable.
- Thanks to Valerio Verrando, now -noscanlines works on Pac Man and the other
games using a 224x288 screen. If you have problems with the default video
mode try this one, it will hopefully solve them.
- I received no less than three different palettes for Donkey Kong Jr., from
Brad Oliver, Marc Vergoossen and Richard Davies. The one included is from
Marc.
- Thanks to Gary Walton and Simon Walls, we now have 100% accurate colors in
Crush Roller and Uniwars/Japirem. Moon Cresta and Moon Quasar might be

correct as well, but I'm not sure.


- Fixed a small graphics glitch in the background of Bomb Jack's third level.
Thanks to Philip Chapman for the report.
Source:
- Support for 6502 CPU. From a driver writer point of view, it is used just
like the Z80, the only difference being that you have to specify CPU_M6502
instead of CPU_Z80 in the MachineDriver definition.
Multiple CPUs are still NOT supported.
- New function in common.c: decodechar(). It was originally part of
decodegfx(), and is used to convert one single char from the machine format
to the one used by the emulator. This function was needed by the Nibbler
driver to dynamically convert the graphics at runtime.
0.91
---Program:
- OK, even this time I managed to screw up one game (Phoenix). It works again.
I'm not updating the source, you can fix it yourself if you need to: the line
ROM_LOAD("phoenix.49", 0x2000, 0x0800)
in driver.c was missing the '2'.
0.9
--Program:
- Bomb Jack support.
- Background graphics in Zaxxon now work, albeit a bit slow (45-50 fps on my
486/100)
- Support for the original version of Super Cobra. Note that I renamed the
other one (which is a bootleg) "scobrab".
- Support for the original Moon Cresta (Nichibutsu
encrypted, and slightly different from the other
likely the version Chuck Cochems remembers (with
front of your ship). I renamed the other version
the code from a bootleg version and the graphics
version) "mooncrsb".

copyright). These ROMs are


version. This is very
aliens teleporting right in
(which looks like a mix of
from the Gremlin original

- Space Invaders now seems to work correctly. Deluxe version still doesn't
work properly.
- F12 to take a snapshot of the gfx set (displayed using F4) now works.
- Better colors in Donkey Kong Jr. (thanks to Brad Oliver)
- Thanks to Gary Walton, Moon Quasar dip switches now are correctly described
in the dip switch menu.
- F11 is now a toggle, also added F10 to turn off speed throttling (toggle as
well)
Source:

- The memory handling was no longer up to the task, so I had to make it more
flexible.
RAM is no longer a static array; it is dynamically allocated by readroms(),
split in memory regions (one for the CPU addressing space, one for graphics
ROMs, and so on) so data not needed at run time, like the graphics data, can
be unloaded from memory after conversion. The definition and usage of struct
RomModule and struct GfxDecodeInfo has changed. struct RunningMachine
contains an array of pointers to memory regions.
RomModules are now defined using macros, and readroms() does some error
checking as well. This greatly reduces the chance of making a silly mistake.
And don't ask me why, but as a result of this change the emulation seems to
run much faster than before!
- New rom_decode function pointer in the GameDriver structure. It is used to
decrypt the whole ROMs after loading them (as opposed to opcode_decode,
which is used to decrypt only CPU opcodes).
Also, opcode_decode is now handled differently: instead of calling it at
runtime when the CPU reads an opcode, another 64k of memory are allocated
and the whole ROMs decrypted. opcodes are then fetched from this new array.
This approach is less flexible, for example it cannot handle code created
in RAM (Pengo does that). However, it is MUCH faster (finally I get 60fps
in Crazy Climber!), so I'll go with it for now. Should the need arise for
a more flexible decryption, we'll think about it.
- Some changes to the MachineDriver definition and mame.c needed to support
multiple CPUs (they are NOT supported yet - this is just the first step)
0.81
---Program:
- Sorry about screwing Donkey Kong Jr. colors... it's playable again. Colors
are still way off though: anyone volunteers to fix them? ;-)
- Zaxxon now works, but the background graphics are missing
0.8
--Program:
- Added some support for Carnival - it boots and runs the demo, but the
graphics are messed up.
- Fixed graphics in Moon Quasar (yes it does run, but you need the correct
ROMs)
- Better error checking in the sound initialization routines. It still sucks,
but at least will notify of problems instead of locking up the emulation.
The "0. Silence" driver also works.
- Removed the "-nosound" command line switch, replaced it with "-soundcard n"
which allows to bypass the audio driver selection menu. Use "-soundcard 0"
to turn off sound.
- Some support for Space Invaders (+ some clones) but it doesn't work well.
- Support for Battle of Atlantis (a Scramble hack)

- The ROM copyright notice is displayed in the main emulation screen.


- Maybe I understood how the character colors are selected in Donkey Kong, at
least in part, but I'm not sure. Anyway, I started fixing them. I based on
the Kong emulator by Gary Shepherdson.
Following changes provided by Mirko Buffoni:
- You can view the game graphics pressing F4. Use cursor keys to change
graphics set/color, F4 to return to the game.
- Support for Mario Bros. (wrong colors, no sound) and Zaxxon (doesn't work yet)
.
- Better colors in Amidar and Frogger.
Source:
- Added visible_area to the MachineDriver definition. It was used in all video
drivers, so it's better to keep it centralized.
- Long-awaited function clearbitmap(), which correctly initializes a bitmap
using background_pen. Note for people porting MAME to other systems:
osd_create_bitmap() must call this function, the video drivers rely on that.
- I got rid of machine.c and put all into mame.c... when I have time, I'll try
to organize the source better.
0.7
--Program:
- Support for:
Super Cobra (version running on a modified Scramble board)
Amidar US version
Crazy Climber Japanese version
Pooyan (wrong colors, no sound)
Phoenix/Pleiades (no sound)
- Scramble has 100% correct colors. The same palette is used by Super Cobra,
but it doesn't look right.
- Gorf and Robby Roto boot but don't work.
- Added some support for Moon Quasar, but it doesn't work. Since the ROMs are
encrypted, I don't know if this is due to wrong decryption, bad ROM, or
wrong driver (I'm using the Moon Cresta one). I think that either MQ3 (which
maps at 1000-17ff) is bad, or it uses a different encryption.
0.6
--Program:
- Support for:
Scramble (wrong colors, no sound)
Uniwars (US version of Japanese Irem game)
Frogger (including bootleg version running on a Scramble board)

(wrong colors, no sound)


Amidar (wrong colors, no sound)
Turtles (wrong colors, no sound)
Rally X (wrong colors, no sound, slowdowns)
- I'm beginning to understand how the Wizard of Wor video hardware works,
gameplay hasn't changed but the graphics are more faithfully reproduced.
- Star background in Galaxians & co. The way I calculate it is probably not
correct, anyway it looks reasonable.
- Fixed staccato notes in Pacman and other games using the same hardware.
There are still some minor glitches (especially in Ms. Pac Man) but Pac Man
tunes are now very close to the original.
Source:
- I reorganized the source directory tree, instead of one directory for every
game there are now four directories (drivers, machine, vidhrdw, sndhrdw)
which contain files named after the game.
0.5
--Program:
- Fixed some problems in the Wizard of Wor driver, but it is still far from
complete.
- Support for:
Donkey Kong Jr. (wrong colors, no sound)
Galaxians and the plethora of clones (correct colors, limited sound)
Pisces (correct colors, limited sound)
"Japanese Irem game". I believe the colors are correct, but since I've
never seen the original game I can't know for sure.
War of the Bugs (wrong colors, limited sound)
Moon Cresta (wrong colors, limited sound)
The End (wrong colors, no sound)
- By popular demand, reverted to the old AY-3-8910 emulation code.
Source:
- Changed readroms() to allow scatter loading of a single ROM. This was needed
for Donkey Kong Jr. Now the end of the RomModule array is marked by a size==0,
while name==0 means "continue loading the previous ROM at this address".
- Some bug fixes and changes to reduce porting problems (thanks to Brad Oliver)
- New function copybitmap() in common.c. Limited for now, will change in the
future.
0.4
--Program:
- Bagman support (wrong colors)
- Early Wizard of Wor support (not playable).
- New experimental AY-3-8910 sound emulation code provided by Andy Milne

(andy@canetics.com). This sounds better in some places and worse in others.


It is used by Crazy Climber, Crazy Kong and Bagman. Let me know what you
think.
Source:
- Optimizations in drawgfx(), Mr. Do!'s title screen and intermissions now
run faster, Crazy Climber and Crazy Kong benefit as well.
- Use version 1.1 of Z80Em by Marcel de Kogel. Faster!
(note that I had to make a couple of changes to Z80.c to make Crazy
Climber work).
- Handle IN and OUT instructions in the same way as memory accesses (table
of handler functions). The parameters of the functions are the same, so
the same function can be used both for memory and ports.
Had to change the driver structure, removed the pointers to _in and _out
functions and added port_read and port_write array pointers.
Also defined a generic interrupt_vector_w() function, this makes the Pac
Man driver tinier (look at pacman/machine.c, it's now there only to handle
the cheat).
0.3
--Program:
- Donkey Kong support (wrong colors, no sound)
- New definition of custom video modes, this will hopefully be compatible
with more systems.
- Lady Bug and Crazy Climber should run a little faster on slow machines
(Crazy Climber is still too slow, I know).
Source:
- new general purpose readinputport() function used to handle reads of
input ports and dip switches. This saves some work when creating a
game driver. Required changes to struct MachineDriver.
- struct GfxLayout now contains a planeoffset array instead of
planeincrement, to better support more than 2 bitplanes. I also fixed
(I hope) all the code which assumed 2 bitplanes. struct GfxDecodeInfo
had to be changed as well.

Das könnte Ihnen auch gefallen