Home News Forum                            

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

ddragonub: MAME ROM Information.


Double Dragon (c) 1987 Taito America Corp.


Behind a clear front glass, the dedicated cabinet has a decorative cardboard frame surrounding the monitor that includes instructions for game play. The cardboard frame is usually 2 sided. There is the TAITO design on one side and the Double Dragon design on the other. The marquee and control panel art features a drawing of a dragon and pictures of Billy and Jimmy Lee. The control panel includes their names. Most cabinets used blue buttons for player 1 and red buttons for player 2, but a middle release cabinet used yellow buttons for both players and used thicker bezel glass with white plastic protectors along its outer edges. The side art features the name TAITO at the top with a Y-shaped pattern of lines in red, white, gray, and black. The first cabinets of Double Dragon had a different color combination for the side art. The black part of the side art was orange and the gray part was yellow. The cabinet features a lockable pullout drawer at the bottom that contains the power supply and game-boards.


Licensed from Technos Japan to Taito America for manufacture and distribution in the USA (July 1987).

This Taito version has a different storyline than the one used in the Japanese version. The Japanese storyline is more developed and does not use the Spike and Hammer aliases.

For more information about the game itself, please see the original technos entry.


Game's ROM.

Machine's picture.

MAME Info:

0.37b5 [?]

0.33b3 [Carlos A. Lozano, Rob Rosenbrock, Phil Stroffolino, Ernesto Corvi]

Artwork available


- Clone ddragnw1: When finishing the game its reset and so go to check rom screen again and freezes! Ashura-X (ID 00416)


- 24th December 2010: Dr. Decapitator - The MCU (HD63701) from Double Dragon has been decapped. The readout matched the existing bootleg MCU dump in MAME, so the pirates in the 80's must have read it out correctly as opposed to coding their own. You can see a picture of it wired up for reading below.

- 12th November 2010: Smitdogg - Balrog scanned the rest of the Double Dragon schematics for us.

- 11th July 2010: Dr. Decapitator - Work has started on the 63701 that Technos used in Double Dragon.

- 0.138u3: Angelo Salese decrypted Double Dragon Italian bootleg char roms (Double Dragon (bootleg with 3xM6809, set 1/2)).

- 0.137u3: Corrado Tomaselli added clone Double Dragon (US Set 3).

- 25th March 2010: Lord Nightmare - Scanned the Spike & Hammer: Double Dragon CPU board schematic. Credit to Dumping Union, Incog nito and Lord Nightmare for supplying funds for the schematics.

- 0.133u1: Renamed (ddragoua) to (ddragonua), (ddragnw1) to (ddragonw1), (ddragnba) to (ddragonba), (ddgn6809) to (ddragon6809), (dd6809a) to (ddragon6809a) and (ddragob2) to (ddragonb2).

- 9th June 2009: Smitdogg - Thanks to Incog we got Double Dragon schematics to send to Lord Nightmare. They are needed to finalize the driver. Some pages have lots of hand written notes added. And a couple of dip sheets thrown in for the curious.

- 12th March 2009: Guru - Technos Double Dragon PCB arrived for decapping 63701 MCU.

- 0.129: Changed M6809 CPU3 clock speed to 1.5MHz.

- 0.127u2: Sonikos added clone Double Dragon (bootleg).

- 0.126u4: Fabio Priuli added DIP locations to Double Dragon.

- 26th July 2008: Mr. Do - Double Dragon has been a PITA to find a good source of. Every one I've ever seen is REALLY faded. The CAG set had one, but it was also really faded. I was able to at least find a good photo of one as a basis to what it should look like awhile ago, so I took a shot at fixing the one I had. Hope you enjoy it.

- 0.125u4: f205v added clone Double Dragon (bootleg with 3xM6809, set 2).

- 19th April 2008: f205v dumped Double Dragon (bootleg with 3xM6809, set 2).

- 0.124u1: Tirino73 added clone 'Double Dragon (bootleg with 3xM6809, set 2)'. This is a well known italian bootleg of Double Dragon it can be identified by the following gameplay trait. The Boss of level 4 is coloured like level 1 and 5 instead of green, and is invulnerable to rocks attack. In terms of code the game code has been heavily modified, banking writes appear to have been removed, and the graphic roms are all scrambled. The game also runs on 3x M6809 rather than the original CPUs. I'm not 100% convinced the program roms are good dumps, apprently ROM3 fails on the original board (could just be due to the rom hacking, as the game runs fine) but there is a jump to the 0x2000 region in the code, although this could be additional protection / rom scrambling. Also the sound roms seem too small. If you have this PCB please verify. Changed description of clone 'Double Dragon (bootleg with 3xM6809)' to 'Double Dragon (bootleg with 3xM6809, set 1)'.

- 8th March 2008: Tirino73 dumped Double Dragon (bootleg with 3xM6809).

- 0.122u7: Replaced HD6309 CPU3 with M6809 (6Mhz). Changed HD6309 CPU2 clock speed to 12MHz, HD63701 CPU3 to 6Mhz, 2x MSM5205 to 375000 Hz and visible area to 256x240. Changed description of clone '(bootleg with HD6903)' to '(bootleg with HD6309)'.

- 0.119u3: David Haywood added clone Double Dragon (bootleg with M6803). Changed description of clone 'Double Dragon (bootleg)' to 'Double Dragon (bootleg with HD6903)'.

- 0.112: Corrado Tomaselli added clone Double Dragon (US Set 2). Changed parent description to 'Double Dragon (US Set 1)'.

- 5th February 2007: Briccus dumped Double Dragon (US Set 2).

- 0.105u4: Stefan Lindberg added clone Double Dragon (World Set 2). Changed description of clone 'Double Dragon (World)' to 'Double Dragon (World Set 1)'. Fixed rom names.

- 0.103u2: Bryan McPhail fixed Double Dragon crashed sometimes at the very end of the game.

- 8th January 2006: Bryan McPhail - Double Dragon has a crash which sometimes occurs at the very end of the game (right before the final animation sequence). It occurs because of a jump look up table: BAD3: LDY #$BADD; BAD7: JSR [A,Y]. At the point of the crash A is 0x3e which causes a jump to 0x3401 (background tile ram) which obviously doesn't contain proper code and causes a crash. The jump table has 32 entries, and only the last contains an invalid jump vector. A is set to 0x3e as a result of code at 0x625f - it reads from the shared spriteram (0x2049 in main cpu memory space), copies the value to 0x523 (main ram) where it is later fetched and shifted to make 0x3e. So.. it's not clear where the error is - the 0x1f value is actually written to shared RAM by the main CPU - perhaps the MCU should modify it before the main CPU reads it back? Perhaps 0x1f should never be written at all? If you want to trace this further please submit a proper fix! In the meantime I have patched the error by making sure the invalid jump is never taken - this fixes the crash (see ddragon_spriteram_r).

- 12th February 2005: f205v and Corrado Tomaselli dumped Double Dragon (bootleg).

- 0.77: Bryan McPhail added clone Double Dragon (World). Changed HD63701 MCU clock speed to 1193181 Hz, VSync to 57.444855 Hz and sound to mono.

- 3rd November 2003: Bryan McPhail fixed the video and interrupt timing in the Double Dragon driver and added the World version of Double Dragon.

- 2nd September 2000: Nicola Salmoria fixed a 6309 bug which affected Double Dragon.

- 0.37b5: Added Double Dragon (Japan) and clone (US) with missing cpu2 MCU rom ($c000) and proms ($0, 100 - unknown). Removed Double Dragon. Replaced the 2x ADPCM sound with 2x MSM5205 (384000 Hz).

- 12th July 2000: Nicola Salmoria fixed the ADPCM sound frequency in Double Dragon and did some general cleanup in the driver.

- 10th July 2000: Nicola Salmoria fixed MCU emulation to Double Dragon.

- 0.36b9: Replaced M6809 CPU3 with M6309. Changed YM2151 clock speed to 3579545 Hz.

- 0.35b6: Replaced M6809 CPU1 with M6309 and M6803 CPU2 with HD63701.

- 0.33b7: Known issues: The ADPCM samples are not triggered correctly.

- 0.33b6: Double Dragon use the dynamic palette [Nicola Salmoria].

- 0.33b3: Added Double Dragon (bootleg? 1987) and clone (bootleg) [Carlos A. Lozano, Rob Rosenbrock, Phil Stroffolino, Ernesto Corvi]. Known issues: Due to the lack of the ROM image for the HD63701 microcontroller, the original version doesn't work. Use the bootleg, which use a 6809 instead of the HD63701.


Other Emulators:

* FB Alpha

Recommended Games (Heroes Fighter):

Knuckle Joe

My Hero



Trojan (PlayChoice-10)


Black Panther

Double Dragon

Double Dragon II

Double Dragon 3

Double Dragon (PlayChoice-10)

Double Dragon (Neo-Geo)

Ginga NinkyouDen



Shinobi (Mega-Tech)

Shinobi / FZ-2006

The Revenge of Shinobi (Mega-Tech)

Shinobi III (Mega Play)

Bad Dudes vs. Dragonninja

Shadow Warriors


Crime Fighters


Final Fight

Gang Wars

Last Battle (Mega-Tech)

Ninja Gaiden (PlayChoice-10)

Ninja Gaiden Episode II (PlayChoice-10)

Ninja Gaiden Episode III (PlayChoice-10)

Shadow Dancer

Shadow Dancer (Mega-Tech)

Tough Turf

The Combatribes

Crude Buster


Mug Smashers

64th. Street

Brute Force

Burning Fight

Captain Commando

D. D. Crew

Karate Blazers

Riot City

Streets of Rage (Mega-Tech)

Streets of Rage II (Mega Play)


B.Rap Boys

Big Fight

Guardians of the 'Hood


Silent Dragon

Thunder Hoop

TH Strikes Back

Undercover Cops

Cadillacs and Dinosaurs

Denjin Makai

Knuckle Bash

Knuckle Bash 2

Ninja Baseball Batman

The Punisher

Violent Storm

Zero Team

Pretty Soldier Sailor Moon

Black Touch '96

Final Fight 2 (SNES bootleg)

Ghost Chaser Densei (SNES bootleg)

Iron (SNES bootleg)


Sonic Blast Man 2 Special Turbo

Gaia Crusaders

Vamp 1/2

Jue Zhan Tian Huang

Thunder Heroes

Demolish Fist

Romset: 1105 kb / 23 files / 504.6 zip

MAME XML Output:

       <game name="ddragonub" sourcefile="ddragon.c" cloneof="ddragon" romof="ddragon">
              <description>Double Dragon (US set 3)</description>
              <manufacturer>Technos Japan (Taito America license)</manufacturer>
              <rom name="21a-1_6.bin" size="32768" crc="f354b0e1" sha1="f2fe5d6102564691a0054d2b8dd98673fdc8a348" region="maincpu" offset="8000"/>
              <rom name="21a-2_4" size="32768" crc="5cd67657" sha1="96bc7a5354a76524bd43a4d7eb8b0053a89e39c4" region="maincpu" offset="10000"/>
              <rom name="21a-3" size="32768" crc="dbf24897" sha1="1504faaf07c541330cd43b72dc6846911dfd85a3" region="maincpu" offset="18000"/>
              <rom name="21a-4_2" size="32768" crc="9b019598" sha1="59f3aa15389f53c4646d21a39634cb1502e66ff6" region="maincpu" offset="20000"/>
              <rom name="21jm-0.ic55" merge="21jm-0.ic55" size="16384" crc="f5232d03" sha1="e2a194e38633592fd6587690b3cb2669d93985c7" region="sub" offset="c000"/>
              <rom name="21j-0-1" merge="21j-0-1" size="32768" crc="9efa95bb" sha1="da997d9cc7b9e7b2c70a4b6d30db693086a6f7d8" region="soundcpu" offset="8000"/>
              <rom name="21j-5" merge="21j-5" size="32768" crc="7a8b8db4" sha1="8368182234f9d4d763d4714fd7567a9e31b7ebeb" region="gfx1" offset="0"/>
              <rom name="21j-a" merge="21j-a" size="65536" crc="574face3" sha1="481fe574cb79d0159a65ff7486cbc945d50538c5" region="gfx2" offset="0"/>
              <rom name="21j-b" merge="21j-b" size="65536" crc="40507a76" sha1="74581a4b6f48100bddf20f319903af2fe36f39fa" region="gfx2" offset="10000"/>
              <rom name="21j-c" merge="21j-c" size="65536" crc="bb0bc76f" sha1="37b2225e0593335f636c1e5fded9b21fdeab2f5a" region="gfx2" offset="20000"/>
              <rom name="21j-d" merge="21j-d" size="65536" crc="cb4f231b" sha1="9f2270f9ceedfe51c5e9a9bbb00d6f43dbc4a3ea" region="gfx2" offset="30000"/>
              <rom name="21j-e" merge="21j-e" size="65536" crc="a0a0c261" sha1="25c534d82bd237386d447d72feee8d9541a5ded4" region="gfx2" offset="40000"/>
              <rom name="21j-f" merge="21j-f" size="65536" crc="6ba152f6" sha1="a301ff809be0e1471f4ff8305b30c2fa4aa57fae" region="gfx2" offset="50000"/>
              <rom name="21j-g" merge="21j-g" size="65536" crc="3220a0b6" sha1="24a16ea509e9aff82b9ddd14935d61bb71acff84" region="gfx2" offset="60000"/>
              <rom name="21j-h" merge="21j-h" size="65536" crc="65c7517d" sha1="f177ba9c1c7cc75ff04d5591b9865ee364788f94" region="gfx2" offset="70000"/>
              <rom name="21j-8" merge="21j-8" size="65536" crc="7c435887" sha1="ecb76f2148fa9773426f05aac208eb3ac02747db" region="gfx3" offset="0"/>
              <rom name="21j-9" merge="21j-9" size="65536" crc="c6640aed" sha1="f156c337f48dfe4f7e9caee9a72c7ea3d53e3098" region="gfx3" offset="10000"/>
              <rom name="21j-i" merge="21j-i" size="65536" crc="5effb0a0" sha1="1f21acb15dad824e831ed9a42b3fde096bb31141" region="gfx3" offset="20000"/>
              <rom name="21j-j" merge="21j-j" size="65536" crc="5fb42e7c" sha1="7953316712c56c6f8ca6bba127319e24b618b646" region="gfx3" offset="30000"/>
              <rom name="21j-6" merge="21j-6" size="65536" crc="34755de3" sha1="57c06d6ce9497901072fa50a92b6ed0d2d4d6528" region="adpcm" offset="0"/>
              <rom name="21j-7" merge="21j-7" size="65536" crc="904de6f8" sha1="3623e5ea05fd7c455992b7ed87e605b87c3850aa" region="adpcm" offset="10000"/>
              <rom name="21j-k-0" merge="21j-k-0" size="256" crc="fdb130a9" sha1="4c4f214229b9fab2b5d69c745ec5428787b89e1f" region="proms" offset="0"/>
              <rom name="21j-l-0" merge="21j-l-0" size="512" crc="46339529" sha1="64f4c42a826d67b7cbaa8a23a45ebc4eb6248891" region="proms" offset="100"/>
              <chip type="cpu" tag="maincpu" name="HD6309" clock="12000000"/>
              <chip type="cpu" tag="sub" name="HD63701" clock="6000000"/>
              <chip type="cpu" tag="soundcpu" name="M6809" clock="1500000"/>
              <chip type="audio" tag="mono" name="Speaker"/>
              <chip type="audio" tag="fmsnd" name="YM2151" clock="3579545"/>
              <chip type="audio" tag="adpcm1" name="MSM5205" clock="375000"/>
              <chip type="audio" tag="adpcm2" name="MSM5205" clock="375000"/>
              <display tag="screen" type="raster" rotate="0" width="256" height="240" refresh="57.444853" pixclock="6000000" htotal="384" hbend="0" hbstart="256" vtotal="272" vbend="0" vbstart="240" />
              <sound channels="1"/>
              <input players="2" buttons="3" coins="2">
                     <control type="joy" ways="8"/>
              <dipswitch name="Coin A" tag="DSW0" mask="7">
                     <dipvalue name="4 Coins/1 Credit" value="0"/>
                     <dipvalue name="3 Coins/1 Credit" value="1"/>
                     <dipvalue name="2 Coins/1 Credit" value="2"/>
                     <dipvalue name="1 Coin/1 Credit" value="7" default="yes"/>
                     <dipvalue name="1 Coin/2 Credits" value="6"/>
                     <dipvalue name="1 Coin/3 Credits" value="5"/>
                     <dipvalue name="1 Coin/4 Credits" value="4"/>
                     <dipvalue name="1 Coin/5 Credits" value="3"/>
              <dipswitch name="Coin B" tag="DSW0" mask="56">
                     <dipvalue name="4 Coins/1 Credit" value="0"/>
                     <dipvalue name="3 Coins/1 Credit" value="8"/>
                     <dipvalue name="2 Coins/1 Credit" value="16"/>
                     <dipvalue name="1 Coin/1 Credit" value="56" default="yes"/>
                     <dipvalue name="1 Coin/2 Credits" value="48"/>
                     <dipvalue name="1 Coin/3 Credits" value="40"/>
                     <dipvalue name="1 Coin/4 Credits" value="32"/>
                     <dipvalue name="1 Coin/5 Credits" value="24"/>
              <dipswitch name="Cabinet" tag="DSW0" mask="64">
                     <dipvalue name="Upright" value="64" default="yes"/>
                     <dipvalue name="Cocktail" value="0"/>
              <dipswitch name="Flip Screen" tag="DSW0" mask="128">
                     <dipvalue name="Off" value="128" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Difficulty" tag="DSW1" mask="3">
                     <dipvalue name="Easy" value="1"/>
                     <dipvalue name="Medium" value="3" default="yes"/>
                     <dipvalue name="Hard" value="2"/>
                     <dipvalue name="Hardest" value="0"/>
              <dipswitch name="Demo Sounds" tag="DSW1" mask="4">
                     <dipvalue name="Off" value="0"/>
                     <dipvalue name="On" value="4" default="yes"/>
              <dipswitch name="Unused" tag="DSW1" mask="8">
                     <dipvalue name="Off" value="8" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Bonus Life" tag="DSW1" mask="48">
                     <dipvalue name="20k" value="16"/>
                     <dipvalue name="40k" value="0"/>
                     <dipvalue name="30k and every 60k" value="48" default="yes"/>
                     <dipvalue name="40k and every 80k" value="32"/>
              <dipswitch name="Lives" tag="DSW1" mask="192">
                     <dipvalue name="2" value="192" default="yes"/>
                     <dipvalue name="3" value="128"/>
                     <dipvalue name="4" value="64"/>
                     <dipvalue name="Infinite (Cheat)" value="0"/>
              <driver status="good" emulation="good" color="good" sound="good" graphic="good" savestate="supported" palettesize="384"/>

emumovies.com      Retro bytes Portal           Bookmark and Share

Developed by: Spesoft  Headsoft     Terms of use     Privacy    Advertise