Home News Forum                            

Play your favorite classic games and more with the GameEx front end. Read more.

contra: MAME ROM Information.


Contra (c) 1987 Konami.

In 2631, a meteorite strikes the Galuga archipelago near New Zealand, carrying with it a dormant alien being. Two years later, a terrorist organization calling themselves Red Falcon takes over the island as part of their plot to invade the Earth. Bill Rizer and Lance Bean, of the Contra unit, are sent to the Oceania island to stop the evil threat.

'Contra' is a hectic one or two player platform shoot-em-up featuring 10 stages. In addition to the standard side-view levels, there are also "3D maze" stages in which the player must proceed through a series of corridors inside an enemy base, destroying various sensors, in order to reach the core of the base.

Each player's character is equipped with a semi-automatic machine gun with an unlimited amount of ammunition and can jump, move and fire in all eight cardinal directions. Players can also move and jump simultaneously while firing. Co-ordination of the character's movement is essential as a single hit from any enemy, bullet, or other hazard will instantly kill the player's character and also eliminate the current weapon from the player's inventory.

As players fight their way through the enemy-packed levels, additional weapons can be collected. If the player loses a life, they will also lose any weapon power-up they were carrying. Available weapons are:

Machine Gun: Auto-fire.

Spread gun [S]: Allows the player to fire 5 shots in an arc.

Laser: Will shoot a long laser that can take out many enemies in a row.

Fire Ball [F]: A gun which fires small fireballs in a corkscrew pattern.

Rapid Bullets [R]: Increases the firing rate of the player's currently equipped weapon. Works with the Machine Gun and Fire Ball.

Barrier [B]: Will make the player invincible for a few seconds.

The game consists of ten stages:

Stage 01 : Jungle (horizontal scroll)

Stage 02 : Inside Base 1 (3D maze)

Stage 03 : Core of Base 1 (3D fixed)

Stage 04 : Waterfall (vertical scroll)

Stage 05 : Inside Base 2 (3D maze)

Stage 06 : Core of Base 2 (3D fixed)

Stage 07 : Snow Field (horizontal scroll)

Stage 08 : Energy Zone (horizontal scroll)

Stage 09 : Hangar (horizontal scroll)

Stage 10 : Alien Lair (horizontal scroll)


Game ID : GX633

Main CPU : M6809 (@ 1.5 Mhz)

Sound CPU : M6809 (@ 2 Mhz)

Sound Chips : YM2151 (@ 3.582071 Mhz)

Players : 2

Control : 8-way joystick

Buttons : 2 [SHOOT, JUMP]


Released in February 1987.

This game is known in Europe as "Gryzor".

Note : The Japanese version uses kanji (Chinese characters) to phonetically spell out 'Kon-to-ra'', the Japanese transliteration of the name "Contra". This is an example of ateji, in which an artist uses kanji for their phonetic value rather than any meaning they may have.

Here are the official names of the characters : Bill Rizer (player 1) and Lance Bean (player 2). They were named after the following actors, all of which appeared in the 1986 movie, "Aliens"; Bill Rizer is named after the actors Bill Paxton and Paul Reiser, while Lance Bean is named after Lance Henriksen and Michael Biehn.

Bill Rizer makes an appearance as a supporting character in the 1992 Family Computer game "Wai Wai World 2 SOS!! - Paseri Jou".

The music from the final stage is also used for the final boss confrontation in "Wai Wai World" for the Family Computer.

Chad Johnson holds the official record for this game with 1, 546, 600 points on July 15, 2002.

Alpha Records released a limited-edition soundtrack album for this game (Konami Game Music Vol.4 - 28XA-201) on 10/03/1988


[JP] June 05, 1998; Contra [Konami Game Books Series 4]


The game's backstory differs between sources. The storyline written above is the one used by Japanese sources and later mentioned in canon in Contra: Shattered Soldier for the PlayStation 2. In the North American manual for the NES version, the time was changed from the 27th century to the present day, with the location moved from Galuga to an unnamed South American island. Bill and Lance were given the codenames "Mad Dog" and "Scorpion", names which were later used for 2 unrelated characters in the American-produced Contra 4 for the Nintendo DS.


* Weapons

1) Shotgun: Your default weapon, can fire suprisingly fast.

2) Spread Gun: Shoots waves of expanding blobs. Outstanding.

3) Laser: Hold down fire for a longer beam. Powerful.

4) Fireball: Fires spinning red blobs.

5) Machine Gun: Rapid fire bullets. Sounds like a drum machine.

6) Rapid: Speeds up shotgun, fireball & machine gun bullets. Handy.

7) Barrier: Complete invulnerability for a limited time. Nice.

* Use shots wisely: Jump shots and crouch shots allow you to attack while avoiding enemy attacks. Do not hesitate. Keep those shots going!

* Kill before being killed: if you see an enemy, shoot right away. Defeat them before they fire at you. Be the first one to attack!

* Tip for taking down the fortress: At the end of Stage 1 (the Jungle) and Stage 4 (the Waterfall), you will find yourself at the heavily fortified entrance of the next base. To gain access to the base, you will need to destroy the large sensor. The sensor in Stage 1 is guarded by a sniper and two mortar cannons, while the sensor in Stage 4 is guarded by a large five-way cannon at middle, with two rotating guns around it (one on each side).

* Tips for 3-D mazes: Destroy the orb-shaped sensors in each wall to stop the high voltage electric currents. Taking out the weak points quickly is key to conquering the 3-D levels before time runs out.

If you press the joystick upward and touch the electricity, you will be stunned and won't be able to move for a while. Don't move forward until you take out the sensor and stop the electricity.

After you take out the weak point, look at the map while proceeding. You'll know whether to go left or right.

You can dodge enemy bullets by lying down! Destroy rolling mines by using crouch shots.

As you proceed, there are weak points that are positioned so that you can't reach them. Utilize jump shots and crouch shots.

* Beware of falling off at Stage 4: In the waterfall, missing a platform and falling down will count as a miss.

* Barrier: The Barrier power-up can only be found at the beginning of Stage 4 (the Waterfall) or halfway through Stage 9 (the Hangar) if the player has only their normal gun equipped

* Rapid Bullets: The Rapid Bullets power-up will only appear in the beginning of the Waterfall stage and halfway through Snow Field stage (before fighting the first tank) if the player has only the normal gun equipped. Because of this, the only weapons the Rapid Bullets upgrade can be used with are the normal gun, the Fire Ball gun, and the Machine Gun.


1. Contra (1987)

2. Super Contra (1988)

3. Operation C (1991, Nintendo Game Boy)

4. Contra Force (1992, Nintendo NES)

5. Contra III - The Alien Wars (1992, Nintendo Super Famicom)

6. Contra - Hard Corps (1994, Sega Mega Drive)

7. Contra - Legacy of War (1996, Sony PlayStation)

8. C - The Contra Adventure (1998, Sony PlayStation)

9. Contra - Shattered Soldier (2002, Sony PlayStation 2)

10. Neo Contra (2004, Sony PlayStation 2)

11. Contra 4 (2007, Nintendo DS)

12. Contra ReBirth (2009, Nintendo Wii - WiiWare)


Game programmers : Satoru, Hideyuki Falco, Koichi Cobra

Video graphics : Kengo

Special designers : Ishiwari Jinbo, Passionate Norio

Sound editor : Kazuki Muraoka (Kazuki Jah)

Engineer : Rom Yamamoto

Directed by : Koji


* Consoles :

Nintendo Famicom [JP] (Feb. 09, 1988; "Contra [Model RC826]")

Nintendo NES (1990, "Probotector")

Sony Playstation 2 (2006 ,"Oretachi Game Center - Contra")

Microsoft XBOX 360 (2006, as a downloadable Live Arcade game)

Nintendo DS [JP] (Mar.2007, Konami Arcade Collection)

Nintendo DS [NA] (Mar.2007, Konami Classics Series - Arcade Hits)

Nintendo DS [EU] (Oct.2007, Konami Arcade Classics)

Nintendo DS [AU] (Oct.2007, Konami Arcade Classics)

Nintendo DS (2007, "Contra 4", as an unlockable bonus content)

* Computers :

Sinclair ZX Spectrum (1987)

Amstrad CPC (1987)

Commodore C64 (1987)

PC [MS-DOS] (1987)

MSX 2 [JP] (May 26, 1989; "Contra [Model RC762]")

PC [MS Windows, CD-ROM] (2002, "Konami Collector's Series - Castlevania & Contra")

* Others :

LCD handheld game (1989, "C") by Konami.

Mobile Phones (2010, Contra - Evolution Revolution)

Arcade [China only] (2011, Contra - Evolution Revolution)


Game's rom.

Machine's picture.

Game's flyer (Japanese and American).

MAME Info:

0.123u1 [?]

0.33b7 [Carlos A. Lozano, Jose Tejada Gomez, Phil Stroffolino, Eric Hustvedt]

Artwork available


- Press F2 + F3 to enter test mode. Press 1P and 2P together to advance through tests.


- contra & clones: Minor colour issue on startup. Machone (ID 03591)

- Continue countdown sometimes leaves sprites behind. Lord Caos (ID 00401)

- Clone gryzor: Incorrect behavior of the Flip Screen. Smitdogg (ID 00402)

- Clone gryzor: Side-by-side test. Stefan Lindberg (ID 00204)


- 0.141u4: hap changed main CPU to HD6309 as seen on Contra PCB, and set interrupt source to K007121. Fixed game freeze after the 2nd 3d stage's boss, before the level with horizontal scroll. Replaced M6809 CPU1 with HD6309 (12MHZ). Changed M6809 CPU2 clock speed to 3Hz.

- 0.135u4: Fabio Priuli added driver data struct and save states to Contra. Added device versions of all the Konami custom ICs currently emulated in machine\konamiic.c and video\konamiic.c. Updated Contra driver to use the new code.

- 0.135u3: Kevin Eshbach added board xtal's and indication of an undumped PAL for Contra/Gryzor. Changed YM2151 sound clock speed to 3579545 Hz.

- 3rd October 2009: Smitdogg - Andy Conroy dumped unmamed clone of Contra. I haven't looked at them closely and I don't know if they will all be added but... Cool news.

- 0.131u1: MooglyGuy merged memory maps in Contra.

- 0.126u4: Fabio Priuli added DIP locations for Contra.

- 9th July 2008: Mr. Do - Contra gets a marquee from the BYOAC/CAG artwork, and the control panel instruction card thanks to Anoid.

- 0.123u1: Brian Troha added clone Contra (bootleg). Changed 'Contra (US)' to clone 'Contra (US, Set 2)' and clone 'Contra (US bootleg)' to parent 'Contra (US, Set 1)'. Renamed (contra) to (contra1) and (contrab) to (contra).

- 0.122u8: Zsolt Vasvari removed colortables from Contra and a number of other drivers, as part of a larger move to phase out old-style colortables. Changed palettesize to 4096 colors.

- 0.111u5: Canim fixed flip screen switch and changed COIN3 to SERVICE1 in the Contra driver.

- 0.108u5: Stefan Lindberg added clone Gryzor (Set 2). Changed parent description to 'Gryzor (Set 1)'.

- 0.70u2: Some Contra dipswitch / input fixes [El Condor].

- 0.36RC1: Nicola Salmoria fixed sprites colors in Contra and other improvements to Konami 007121-based games.

- 0.36b12: Replaced all 64k gfx1/2 roms with 256k roms in all sets.

- 0.36b9: Added clone Contra (Japan).

- 0.36b5: Added proms ($200, 300 - sprite and char lookup table).

- 5th September 1999: Jim Hernandez fixed Contra PROMs.

- 29th August 1999: Phil Stroffolino fixed Contra background palette bank

- 0.36b3: Yasuhiro Ogawa added clone Gryzor.

- 0.36b2: Phil Stroffolino fixed sprites in Contra. Fixed gfx rom loading. Added dipswitches 'Cabinet' and 'Upright Controls'. Renamed (gryzorb) to (contrajb).

- 0.36b5: Added proms ($200, 300 - sprite/char lookup table).

- 29th July 1999: Phil Stroffolino improved the Contra driver, mapping unknown dipswitches and converting it to tilemaps. He also fixed a tilemap color marking bug.

- 0.34b8: Changed YM-2151 sound to YM-2151.

- 0.34b3: Juan Carlos Lorente added high score saving to Contra.

- 0.33RC1: Changed description to 'Contra (US)' and clone 'Contra (bootleg)' to '(US bootleg)' and 'Gryzor (bootleg)' to 'Contra (Japan bootleg)'.

- 0.33b7: Added Contra (Konami 1987) and clones Contra (bootleg) and Gryzor (bootleg) [Carlos A. Lozano, Jose Tejada Gomez, Phil Stroffolino, Eric Hustvedt]. Known issues: There appears to be at least one incorrectly mapped sprite late on the final stage. The weapon-carrying enemies in the "into the screen" stages are supposed to be colored differently (orange). A control bit in sprite RAM exists which seems to serve this purpose, indicating an alternate palette. Sprite horizontal position is sometimes off by 8.

- 20th September 1997: arcade@zws.com dumped Contra (Japan bootleg).

ARCADE RELEASE: Contra (Konami) - 1987/Feb/20


Other Emulators:

* FB Alpha

Recommended Games (Army Fighter):

Green Beret (Irem)

Green Beret

Rush'n Attack (PlayChoice-10)

Special Forces

Special Forces II


Contra (PlayChoice-10)

Super Contra

Super C (PlayChoice-10)

Contra 3: The Alien Wars (Nintendo Super System)

Vs. Platoon

Battle Rangers

P.O.W. - Prisoners of War

Bay Route

M.I.A. - Missing in Action

Midnight Resistance

Thunder Fox



Gun Force II

Metal Slug

Metal Slug 2

Metal Slug X

Metal Slug 3

Metal Slug 4

Metal Slug 5

Metal Slug 6


Combat School

Romset: 1185 kb / 11 files / 357.8 zip

MAME XML Output:

       <game name="contra" sourcefile="contra.c">
              <description>Contra (US, set 1)</description>
              <rom name="633m03.18a" size="65536" crc="d045e1da" sha1="ec781e98a6efb14861223250c6239b06ec98ed0b" region="maincpu" offset="20000"/>
              <rom name="633i02.17a" size="65536" crc="b2f7bd9a" sha1="6c29568419bc49f0be3995b0c34edd9038f6f8d9" region="maincpu" offset="10000"/>
              <rom name="633e01.12a" size="32768" crc="d1549255" sha1="d700c7de36746ba247e3a5d0410b7aa036aa4073" region="audiocpu" offset="8000"/>
              <rom name="633e04.7d" size="262144" crc="14ddc542" sha1="c7d8592672a6e50c2fe6b0670001c340022f16f9" region="gfx1" offset="0"/>
              <rom name="633e05.7f" size="262144" crc="42185044" sha1="a6e2598d766e6995c1a912e4a04987e6f4d547ff" region="gfx1" offset="1"/>
              <rom name="633e06.16d" size="262144" crc="9cf6faae" sha1="9ab79c06cb541ce6fdac322886b8a14a2f3f5cf7" region="gfx2" offset="0"/>
              <rom name="633e07.16f" size="262144" crc="f2d06638" sha1="0fa0fbfc53ab5c31b9de22f90153d9af37ff22ce" region="gfx2" offset="1"/>
              <rom name="633e08.10g" size="256" crc="9f0949fa" sha1="7c8fefdcae4523d008a7d39062194c7a80aa3500" region="proms" offset="0"/>
              <rom name="633e09.12g" size="256" crc="14ca5e19" sha1="eeee2f8b3d1e4acf47de1e74c4e507ff924591e7" region="proms" offset="100"/>
              <rom name="633f10.18g" size="256" crc="2b244d84" sha1="c3bde7afb501bae58d07721c637dc06938c22150" region="proms" offset="200"/>
              <rom name="633f11.20g" size="256" crc="14ca5e19" sha1="eeee2f8b3d1e4acf47de1e74c4e507ff924591e7" region="proms" offset="300"/>
              <rom name="007766.20d.bin" size="1" status="nodump" region="pals" offset="0"/>
              <chip type="cpu" tag="maincpu" name="HD6309" clock="12000000"/>
              <chip type="cpu" tag="audiocpu" name="M6809" clock="3000000"/>
              <chip type="audio" tag="lspeaker" name="Speaker"/>
              <chip type="audio" tag="rspeaker" name="Speaker"/>
              <chip type="audio" tag="ymsnd" name="YM2151" clock="3579545"/>
              <display tag="screen" type="raster" rotate="90" width="280" height="224" refresh="60.000000" />
              <sound channels="2"/>
              <input players="2" buttons="2" coins="2">
                     <control type="joy" ways="8"/>
              <dipswitch name="Coin A" tag="DSW1" mask="15">
                     <dipvalue name="4 Coins/1 Credit" value="2"/>
                     <dipvalue name="3 Coins/1 Credit" value="5"/>
                     <dipvalue name="2 Coins/1 Credit" value="8"/>
                     <dipvalue name="3 Coins/2 Credits" value="4"/>
                     <dipvalue name="4 Coins/3 Credits" value="1"/>
                     <dipvalue name="1 Coin/1 Credit" value="15" default="yes"/>
                     <dipvalue name="3 Coins/4 Credits" value="3"/>
                     <dipvalue name="2 Coins/3 Credits" value="7"/>
                     <dipvalue name="1 Coin/2 Credits" value="14"/>
                     <dipvalue name="2 Coins/5 Credits" value="6"/>
                     <dipvalue name="1 Coin/3 Credits" value="13"/>
                     <dipvalue name="1 Coin/4 Credits" value="12"/>
                     <dipvalue name="1 Coin/5 Credits" value="11"/>
                     <dipvalue name="1 Coin/6 Credits" value="10"/>
                     <dipvalue name="1 Coin/7 Credits" value="9"/>
                     <dipvalue name="Free Play" value="0"/>
              <dipswitch name="Coin B" tag="DSW1" mask="240">
                     <dipvalue name="4 Coins/1 Credit" value="32"/>
                     <dipvalue name="3 Coins/1 Credit" value="80"/>
                     <dipvalue name="2 Coins/1 Credit" value="128"/>
                     <dipvalue name="3 Coins/2 Credits" value="64"/>
                     <dipvalue name="4 Coins/3 Credits" value="16"/>
                     <dipvalue name="1 Coin/1 Credit" value="240" default="yes"/>
                     <dipvalue name="3 Coins/4 Credits" value="48"/>
                     <dipvalue name="2 Coins/3 Credits" value="112"/>
                     <dipvalue name="1 Coin/2 Credits" value="224"/>
                     <dipvalue name="2 Coins/5 Credits" value="96"/>
                     <dipvalue name="1 Coin/3 Credits" value="208"/>
                     <dipvalue name="1 Coin/4 Credits" value="192"/>
                     <dipvalue name="1 Coin/5 Credits" value="176"/>
                     <dipvalue name="1 Coin/6 Credits" value="160"/>
                     <dipvalue name="1 Coin/7 Credits" value="144"/>
                     <dipvalue name="No Coin B" value="0"/>
              <dipswitch name="Lives" tag="DSW2" mask="3">
                     <dipvalue name="2" value="3"/>
                     <dipvalue name="3" value="2" default="yes"/>
                     <dipvalue name="5" value="1"/>
                     <dipvalue name="7" value="0"/>
              <dipswitch name="Cabinet" tag="DSW2" mask="4">
                     <dipvalue name="Upright" value="0" default="yes"/>
                     <dipvalue name="Cocktail" value="4"/>
              <dipswitch name="Bonus Life" tag="DSW2" mask="24">
                     <dipvalue name="30000 70000" value="24" default="yes"/>
                     <dipvalue name="40000 80000" value="16"/>
                     <dipvalue name="40000" value="8"/>
                     <dipvalue name="50000" value="0"/>
              <dipswitch name="Difficulty" tag="DSW2" mask="96">
                     <dipvalue name="Easy" value="96" default="yes"/>
                     <dipvalue name="Normal" value="64"/>
                     <dipvalue name="Hard" value="32"/>
                     <dipvalue name="Hardest" value="0"/>
              <dipswitch name="Demo Sounds" tag="DSW2" mask="128">
                     <dipvalue name="Off" value="128"/>
                     <dipvalue name="On" value="0" default="yes"/>
              <dipswitch name="Flip Screen" tag="DSW3" mask="1">
                     <dipvalue name="Off" value="1" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Upright Controls" tag="DSW3" mask="2">
                     <dipvalue name="Single" value="2" default="yes"/>
                     <dipvalue name="Dual" value="0"/>
              <dipswitch name="Service Mode" tag="DSW3" mask="4">
                     <dipvalue name="Off" value="4" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Sound" tag="DSW3" mask="8">
                     <dipvalue name="Mono" value="0"/>
                     <dipvalue name="Stereo" value="8" default="yes"/>
              <driver status="good" emulation="good" color="good" sound="good" graphic="good" savestate="supported" palettesize="4096"/>

emumovies.com      Retro bytes Portal           Bookmark and Share

Developed by: Spesoft  Headsoft     Terms of use     Privacy    Advertise