dynduke: MAME ROM Information. History:
Dynamite Duke (c) 1989 Seibu Kaihatsu.
A mad scientist is creating an army of powerful mutant soldiers in order to conquer the world. Only Dynamite Duke, a battle-hardened elite soldier with an incredibly devastating bionic arm stands a chance to stop the attack before its too late. Features nice graphics & an interesting blend of shooter & beat-em up gameplay elements!
- TECHNICAL -
Main CPU : (2x) V30 (@ 8 Mhz)
Sound CPU : Z80 (@ 3.579545 Mhz)
Sound Chips : YM3812 (@ 3.579545 Mhz), OKI6295 (@ 8 Khz)
Screen orientation : Horizontal
Video resolution : 256 x 224 pixels
Screen refresh : 60.00 Hz
Palette colors : 3072
Players : 2
Control : 8-way joystick
Buttons : 3
- TRIVIA -
Licensed to Fabtek for US distribution.
Licensed to Tecmo for Japan manufacture and distribution.
A two player simultaneous version is known as "The Double Dynamites".
This game was released in memory of 'Hironori Watsuo'.
- STAFF -
Directed by : Hitoshi Hamada
Executive producer : Kengo Kondo
Assistant director & editor : Kohki Yamate
Chief programmer : Tetsuya Kawaguchi
Music composed by : Akira Satoh
Sound effects : Hitoshi Hamada
Art director : Masao Matsuzawa
Set decorator : Takahide Wada
Special 'Boss' effects created by : Showichi Yano
Special 'Zombies' Effects created by : Hirdaki Ohtake
Mechanical effects / Car stunt coordinator / Helicopter pilot : Toshinobu Komazawa
Designers : Fujio Matsuzawa, Hiroaki Ohtake, Hironori Matsuo, Kohki Yamate, Masao Matsuzawa, Showichi Yano, Takahide Wada, Toshinobu Komazawa, Akagi, Hayashi, Iwagishi, Togashi, Gunji, Ishikawa, Matsumoto, Yamazaki
The original story written by : Takahide Wada
Best Boy : Sue-San
Special animation coordinator : Suichi Mori
Special visual effects superviser : Takumi Takano
Technical consultant & Hardware designer : Yukinojoe Segawa
- PORTS -
* Consoles :
Sega Master System (1989)
Sega Mega Drive (1990)
* Computers :
Sharp X68000 (1990)
- SOURCES -
Game's rom.
MAME Info:
0.104u2 [Pierpaolo Prazzoli, Guru]
0.36b10 [Bryan McPhail]
TEST MODE:
- To access test mode, reset with both start buttons held.
WIP:
- 0.133u1: Renamed (dyndukf) to (dyndukef).
- 0.126u4: Fabio Priuli added conditional dips and DIP locations to Dynamite Duke. Added dipswitches 'Coin Mode', 'Coinage' and 'Cabinet'.
- 0.119u3: David Haywood fixed colors in Dynamite Duke. Changed palettesize from 3072 to 2048 colors.
- 3rd October 2007: David Haywood - The source of most of the problems in Dynamite Duke was the strange way in which the background layer was being decoded and handled. The biggest problem is that 1 bit of data for each pixel was being completely overlooked. Dynamite Duke's background decode was 5bpp, not 6bpp. If that was all there was to it then it would have been a very simple fix, however, the problems were deeper than that. Neither of the upper 2 bits of the data are used in the traditional sense, to simply extend the available colour palette. Ignoring the 6th bit for now, the one that was being used as transparency, I started looking at the bit that wasn't being decoded, the 5th bit. There was clearly data there, it wasn't just unused rom as you'll sometimes find. Infact the data present conincided with the tiles that were being rendered with the wrong colours in the game, logically everything would suggest that the decode was simply missing a bit, and hooking that up should fix the colours as it would then be able to address the correct colours. It didn't. Usually if you increase the bpp of a set of graphics it allows the colours directly after the current palette to be addressed in addition to the ones already being used. For Dynamite Duke something different was going on. Regular System: 4bpp decode | Pal#1 Colours 0-15, Pal #2 Colours 16-31, Pal #3 Colours 32-47 and 5bpp decode | Pal#1 Colours 0-31, Pal #2 Colours 32-63, Pal #3 Colours 64-95, for Dynamite Duke however: 5bpp decode | Pal#1 Colours 0-15 & 256-271, Pal #2 Colours 16-31 & 272-287 etc. Basically the extra bit is being used by the hardware more as a palette bank bit, grabbing the extra colours from a completely different part of the palette. I needed to clean up the driver a bit, remove some palette hacks that were already in there, and rework a few things, but by implementing that logic I at least got the right colours on all the scenes, except one, the map scene. For the map scene it turns out there was another error in the driver. As the previous decode didn't allow for accessing of colours above 255 one of the layer disable bits had been incorrectly hooked up as a palette bank, probably because the map screen happened to have that layer disabled and also by chance needed the higher palette codes. An easy mistake to make. Removing that hack, and correclty hooking up the layer disables had the advantage of also getting rid of some garbage sprites left on the screen during 'continue' etc. That just left the 6th bit, marked as transparency. Finding out the use for that was pretty straightforward, it quickly became clear that it was actually a priority bit (which is basically how it was being used anyway 'transparency' was rather misleading). With everything fixed up Dynamite Duke looks better than ever, and one of the longest standing bugs that I can remember has finally been fixed.
- 30th September 2007: David Haywood - I've hopefully fixed the colour problems from the first boss and beyond in Dynamite Duke. Note, the background is now correct in shots 3 / 4 onwards.
- 0.118u3: Changed NEC V30 CPU core to use a 16-bit data bus [Aaron Giles, Phil Bennett, Pierpaolo Prazzoli].
- 0.104u2: Renamed (dynduke) to (dyndukf), (dyndukj) to (dynduke), (dbldyn) to (dbldynf) and (dbldynj) to (dbldyn).
- 0.103: Pierpaolo Prazzoli and Guru added clone Dynamite Duke (Japan). Pierpaolo Prazzoli, Bryan McPhail and Guru added clone 'The Double Dynamites (Japan)'. Changed parent description to 'Dynamite Duke (US)' and clone 'The Double Dynamites' to 'The Double Dynamites (US)'.
- 0.99u7: Curt Coder fixed background layer color in the first levels. Added 'Bonus Life' dipswitch. Removed 'Unknown' dipswitches.
- 0.66: Changed clock speed of the 2x V30 to 8MHz.
- 0.37b16: Nicola Salmoria decrypted the Seibu sound CPU, giving sound in Dynamite Duke. Added Z80 (3579545 Hz) CPU3 - Sound works now.
- 17th June 2001: Nicola Salmoria decrypted the Seibu sound CPU, giving sound in Raiden (alt), Dynamite Duke and Toki (original).
- 0.36b12: Changed YM3812 clock speed to 3579545 Hz.
- 0.36b10: Bryan McPhail added Dynamite Duke (Seibu Kaihatsu 1989 (Fabtek license)) and clone 'The Double Dynamites'. Known issues: Coins are controlled by the sound cpu, and the sound cpu is encrypted! You need to play with sound off at the moment to coin up. The background layer is 5bpp and I'm not 100% sure the colours are correct on it, although the layer is 5bpp the palette data is 4bpp. My current implementation looks pretty good though I've never seen the real game.
- 17th November 1999: Bryan McPhail sent in a driver for Dynamite Duke / Double Dynamite.
LEVELS: 9
Other Emulators:
* FB Alpha
Recommended Games (Army Fighter 3D):
Operation Wolf
Operation Thunderbolt
Operation Wolf 3
Cabal
Devastators
GI Joe
Born To Fight
Dynamite Duke
Guts n' Glory (Machine Gun)
Line of Fire
Mechanized Attack
Rambo III
Aqua Jack
NAM-1975
Spinal Breakers
Riot
Area 51
Maximum Force
Area 51 / Maximum Force Duo
Area 51: Site 4
Operation Thunder Hurricane
Behind Enemy Lines
Ranger Mission
Recommended Games (Shooting 3):
Operation Wolf
Operation Wolf 3
Operation Thunderbolt
Cabal
Beast Busters
Beast Busters 2nd Nightmare
Dynamite Duke
Guts n' Glory (Machine Gun)
Line of Fire
Mechanized Attack
Rambo III
NAM-1975
Space Gun
Spinal Breakers
Steel Gunner
Steel Gunner 2
Rail Chase
Rail Chase 2
Terminator 2 - Judgment Day
G.I. Joe
Lethal Enforcers
Lethal Enforcers II: Gun Fighters
Riot
Alien3: The Gun
Born To Fight
Dragon Gun
Jurassic Park
Jurassic Park 3
Under Fire
Locked 'n Loaded
Lord of Gun
Revolution X
Target Hits
Virtua Cop
Virtua Cop 2
Crypt Killer
Mobil Suit Gundam Final Shooting
Time Crisis
Zombie Raid
Area 51
Maximum Force
Area 51 / Maximum Force Duo
Area 51: Site 4
Crazy Fight
Lethal Justice
Police Trainer
House of the Dead
House of the Dead 2
The House of the Dead III
Behind Enemy Lines
CarnEvil
Teraburst
Flame Gunner
Golgo 13
Golgo 13 Kiseki no Dandou
Invasion - The Abductors
OutTrigger
Confidential Mission
Death Crimson OX
Gun Spike
Silent Scope
Silent Scope 2
Silent Scope EX
The Typing of the Dead
Gun Survivor 2: Bio Hazard Code Veronica
Lupin The Third - The Shooting
Ranger Mission
Romset: 5280 kb / 28 files / 1.63 zip
MAME XML Output:
   | <game name="dynduke" sourcefile="dynduke.c"> |
   |    | <description>Dynamite Duke (Japan)</description> |
   |    | <year>1989</year> |
   |    | <manufacturer>Seibu Kaihatsu</manufacturer> |
   |    | <rom name="1.cd8" size="65536" crc="a5e2a95a" sha1="135d57073d826b9cf46fb43dc49439e1400fb021" region="maincpu" offset="a0000"/> |
   |    | <rom name="2.cd7" size="65536" crc="7e51af22" sha1="b26103c0d41c469d1e2d1e4e89f591c0d9cdb67c" region="maincpu" offset="a0001"/> |
   |    | <rom name="3.e8" size="131072" crc="98b9d243" sha1="db00ffafa1353425adb79f5bf6a0cf9223a0d031" region="maincpu" offset="c0000"/> |
   |    | <rom name="4.e7" size="131072" crc="4f575177" sha1="837e6bab531f16efb0d21ab5b88c529ee16b40d0" region="maincpu" offset="c0001"/> |
   |    | <rom name="5.p8" size="65536" crc="883d319c" sha1="b0df05bfe342a5289a6368be26317fa879975463" region="slave" offset="e0000"/> |
   |    | <rom name="6.p7" size="65536" crc="d94cb4ff" sha1="653247c420a2af037106470556e6801b29bc58e8" region="slave" offset="e0001"/> |
   |    | <rom name="8.w8" size="65536" crc="3c29480b" sha1="031a0b808df32b5ae4f722c9e9f69554d30505c1" region="audiocpu" offset="0"/> |
   |    | <rom name="9.5k" size="16384" crc="f2bc9af4" sha1="9092ebe9dced243c3a7f63198a1180143dd42cea" region="gfx1" offset="0"/> |
   |    | <rom name="10.34k" size="16384" crc="c2a9f19b" sha1="0bcea042386109c277c6c5dbe52a020f9ea5972b" region="gfx1" offset="10000"/> |
   |    | <rom name="dd.a2" size="262144" crc="598f343f" sha1="eee794d9d0a92e066f00818bfb63e8ca46bda764" region="gfx2" offset="0"/> |
   |    | <rom name="dd.b2" size="262144" crc="41a9088d" sha1="eb0b7370dc773cb6f5066b044934ffb42bb06587" region="gfx2" offset="40000"/> |
   |    | <rom name="dd.c2" size="262144" crc="cc341b42" sha1="8c3cf09a3a0080a1cd7c1049cb8d11f03de50919" region="gfx2" offset="80000"/> |
   |    | <rom name="dd.d2" size="262144" crc="4752b4d7" sha1="4625b7885ff9d302e78d7324b3592ac5a3cead86" region="gfx2" offset="c0000"/> |
   |    | <rom name="dd.de3" size="262144" crc="44a4cb62" sha1="70b2043d0428c90ee22ccd479d9710af24d359f6" region="gfx2" offset="100000"/> |
   |    | <rom name="dd.ef3" size="262144" crc="aa8aee1a" sha1="8b2b8dcb2287318e314b256f84c23424cfe29462" region="gfx2" offset="140000"/> |
   |    | <rom name="dd.mn3" size="262144" crc="2ee0ca98" sha1="2ef2c4fd337e0ee4685e4863909985ee0a4c4b91" region="gfx3" offset="0"/> |
   |    | <rom name="dd.mn4" size="262144" crc="6c71e2df" sha1="fe87277a625010c214e05b43572fadb493b3d05d" region="gfx3" offset="40000"/> |
   |    | <rom name="dd.n45" size="262144" crc="85d918e1" sha1="882cdf633288c95f2349d7c86799875b707ca347" region="gfx3" offset="80000"/> |
   |    | <rom name="dd.mn5" size="262144" crc="e71e34df" sha1="dce8e3de61f3869da57d476bf861856154365058" region="gfx3" offset="c0000"/> |
   |    | <rom name="dd.n1" size="262144" crc="cf1db927" sha1="3fde2ca7e7e302773ae01ed89edf0bcf69fc7aa1" region="gfx4" offset="0"/> |
   |    | <rom name="dd.n2" size="262144" crc="5328150f" sha1="bb847a2ff7e5ac668e974d2853519d86feb81e03" region="gfx4" offset="1"/> |
   |    | <rom name="dd.m1" size="262144" crc="80776452" sha1="319bfc90ccf04b9e5aaac5701767d3f7bbb71626" region="gfx4" offset="80000"/> |
   |    | <rom name="dd.m2" size="262144" crc="ff61a573" sha1="cfbe6c017c276d2fc1f083013b5df3686381753b" region="gfx4" offset="80001"/> |
   |    | <rom name="dd.e1" size="262144" crc="84a0b87c" sha1="62075128093f21ee6ea09cc2d4bc8e630b275fce" region="gfx4" offset="100000"/> |
   |    | <rom name="dd.e2" size="262144" crc="a9585df2" sha1="2eeac27dd018dd334447d539fdae2989c731e764" region="gfx4" offset="100001"/> |
   |    | <rom name="dd.f1" size="262144" crc="9aed24ba" sha1="0068b5bc0d7c817eee3bfbf7de6d19652ba78d41" region="gfx4" offset="180000"/> |
   |    | <rom name="dd.f2" size="262144" crc="3eb5783f" sha1="5487ceb4f3241241af1a81b1bb686bd3af10b0d1" region="gfx4" offset="180001"/> |
   |    | <rom name="7.x10" size="65536" crc="9cbc7b41" sha1="107c19d3d71ee6af63d03f7278310c5e3786f91d" region="oki" offset="0"/> |
   |    | <chip type="cpu" tag="maincpu" name="V30" clock="8000000"/> |
   |    | <chip type="cpu" tag="slave" name="V30" clock="8000000"/> |
   |    | <chip type="cpu" tag="audiocpu" name="Z80" clock="3579545"/> |
   |    | <chip type="audio" tag="mono" name="Speaker"/> |
   |    | <chip type="audio" tag="ymsnd" name="YM3812" clock="3579545"/> |
   |    | <chip type="audio" tag="oki" name="OKI6295" clock="1320000"/> |
   |    | <display tag="screen" type="raster" rotate="0" width="256" height="224" refresh="60.000000" /> |
   |    | <sound channels="1"/> |
   |    | <input players="2" buttons="3" coins="2"> |
   |    |    | <control type="joy" ways="8"/> |
   |    | </input> |
   |    | <dipswitch name="Coin Mode" tag="DSW" mask="1"> |
   |    |    | <dipvalue name="Mode 1" value="1" default="yes"/> |
   |    |    | <dipvalue name="Mode 2" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Coinage" tag="DSW" mask="30"> |
   |    |    | <dipvalue name="4 Coins/1 Credit" value="24"/> |
   |    |    | <dipvalue name="3 Coins/1 Credit" value="26"/> |
   |    |    | <dipvalue name="2 Coins/1 Credit" value="28"/> |
   |    |    | <dipvalue name="1 Coin/1 Credit" value="30" default="yes"/> |
   |    |    | <dipvalue name="Free Play" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Coin A" tag="DSW" mask="6"> |
   |    |    | <dipvalue name="5 Coins/1 Credit" value="0"/> |
   |    |    | <dipvalue name="3 Coins/1 Credit" value="2"/> |
   |    |    | <dipvalue name="2 Coins/1 Credit" value="4"/> |
   |    |    | <dipvalue name="1 Coin/1 Credit" value="6" default="yes"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Coin B" tag="DSW" mask="24"> |
   |    |    | <dipvalue name="1 Coin/2 Credits" value="24"/> |
   |    |    | <dipvalue name="1 Coin/3 Credits" value="16"/> |
   |    |    | <dipvalue name="1 Coin/5 Credits" value="8" default="yes"/> |
   |    |    | <dipvalue name="1 Coin/6 Credits" value="0"/> |
   |    |    | <dipvalue name="Free Play" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Starting Coin" tag="DSW" mask="32"> |
   |    |    | <dipvalue name="Normal" value="32" default="yes"/> |
   |    |    | <dipvalue name="X 2" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Cabinet" tag="DSW" mask="64"> |
   |    |    | <dipvalue name="Upright" value="64" default="yes"/> |
   |    |    | <dipvalue name="Cocktail" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Flip Screen" tag="DSW" mask="128"> |
   |    |    | <dipvalue name="Off" value="128" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Bonus Life" tag="DSW" mask="3072"> |
   |    |    | <dipvalue name="80K 100K+" value="3072"/> |
   |    |    | <dipvalue name="100K 100K+" value="2048"/> |
   |    |    | <dipvalue name="120K 100K+" value="1024" default="yes"/> |
   |    |    | <dipvalue name="120K 120K+" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Difficulty" tag="DSW" mask="12288"> |
   |    |    | <dipvalue name="Normal" value="12288" default="yes"/> |
   |    |    | <dipvalue name="Easy" value="8192"/> |
   |    |    | <dipvalue name="Hard" value="4096"/> |
   |    |    | <dipvalue name="Hardest" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Allow Continue" tag="DSW" mask="16384"> |
   |    |    | <dipvalue name="Off" value="0"/> |
   |    |    | <dipvalue name="On" value="16384" default="yes"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Demo Sounds" tag="DSW" mask="32768"> |
   |    |    | <dipvalue name="Off" value="0"/> |
   |    |    | <dipvalue name="On" value="32768" default="yes"/> |
   |    | </dipswitch> |
   |    | <driver status="good" emulation="good" color="good" sound="good" graphic="good" savestate="unsupported" palettesize="2048"/> |
|
|