If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Dead Connection

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Dead Connection

Developer: Taito
Publisher: Taito
Platform: Arcade (Taito F2 System)
Released internationally: July 1992


GraphicsIcon.png This game has unused graphics.
ItemsIcon.png This game has unused items.
MusicIcon.png This game has unused music.
SoundIcon.png This game has unused sounds.
TextIcon.png This game has unused text.
DebugIcon.png This game has debugging material.
RegionIcon.png This game has regional differences.


Dead Connection is...well, let's let the arcade flyer describe it:

"It's America in 1950. The mafia runs rampant throughout the country. Drugs flood the streets and criminals strike with impunity. Amid the decadence stand four detectives determined to stop the evil dead in its tracks.

Philip Lloyd, James Chandler, Eddie Carlton and Gary Cougar each brings his own special expertise to the project. Their task is to uncover the secrets of illegal ledgers, counterfeit money and dubious briefcases which will serve as evidence.

With the team hot on the heels of Nelojia[sic], the man who calls the shots, the veil of darkness is about to be lifted."

TL;DR: Kill everyone, steal their stuff.

Debug Functions

Exception Handler

DeadConnectionCrashHandler.png
This game has a basic exception handler that displays the exception name, the values of the program counter, stack pointer, and data/address registers, and the internal task number at the time of the crash.

Test Mode Menu

Place the following code in MAME's deadconx.xml cheat file and enable it to replace the normal service mode with a test menu:

  <cheat desc="Test Mode Menu">
    <script state="run">
      <action>maincpu.mw@0C8C8=3A36</action>
    </script>
    <script state="off">
      <action>maincpu.mw@0C8C8=CC66</action>
    </script>
  </cheat>

DeadConnectionTestMenu.png

Use 1P Joystick to navigate the menu and 1P Start to select a test. "Return to Game" will reset the game; be sure to turn the Service Mode dip switch off before selecting this to avoid being sent back to the menu.

Please note that in most of these tests, any input on the 1P Joystick will produce a loud explosion sound. Maybe turn the volume down.

Mask Character Test

DeadConnectionMaskTest.png
Displays the contents of the "Mask", or HUD, graphics ROM.

Controls

  • 1P Joystick: Scrolls through character set.
  • 1P Button 1 / Button 2: Changes the current palette.
  • 1P Start + 2P Start: Exits to main test menu.

Object Character Test

DeadConnectionObjectCharTest.png
Displays every assembled sprite graphic in the game.

Controls

  • 1P Left / Right: Adjusts current frame number by 1.
  • 1P Up / Down: Changes the "Zoom" number, which doesn't have any effect on the sprite in the release version.
  • 2P Left / Right: Adjusts current frame number by 100.
  • 2P Up / Down: Changes the "ROM Assign" number, which is used to load different sprite banks. The appropriate sprite bank for each frame is as follows:
  • 0000 to 1411: Common (00)
  • 1412 to 1676: Obj E (04)
  • 1677 to 1990: Obj F (05)
  • 1991 to 2176: Obj G (06)
  • 2177 to 2439: Obj H (07)
  • 2440 to 2694: Obj I (08)
  • 2695 to 2953: Obj J (09)
  • 2954 to 3065: Obj K (0A)
  • 3066 to 3148: Obj L (0B)
  • 3149 to 3239: Obj M (0C)
  • 3240 to 3273: Obj N (0D)
  • 3274 to 3279: Obj O (0E)
  • 3280 to 3286: Obj P (0F)
  • 1P Start + 2P Start: Exits to main test menu.

Screen Character Test

DeadConnectionScreenCharTest.png
Displays the game's assembled foreground and background graphics.

Controls

  • 1P Left/Right: Scrolls between screen blocks.
  • 1P Start + 2P Start: Exits to main test menu.

Map Make

DeadConnectionMapMakeSelect.png
Choosing this option will first display a round select menu. Press 1P Joystick to change the round and 1P Start to load that round.

DeadConnectionMapMakeMenu.png
After that, the user will be taken to another menu that lets them choose between editing the code or height values for each layer of a given round.

The map maker codes checks input for 2P Button 3, which isn't used anywhere else and isn't normally referenced in MAME. Put this code in deadconx.xml to replace those checks with ones for 2P Start:

  <cheat desc="Map Make Fix - 2P Input">
    <script state="run">
      <action>maincpu.mw@1786E=0007</action>
      <action>maincpu.mw@17A80=0007</action>
      <action>maincpu.mw@17ADE=0007</action>
    </script>
    <script state="off">
      <action>maincpu.mw@1786E=0006</action>
      <action>maincpu.mw@17A80=0006</action>
      <action>maincpu.mw@17ADE=0006</action>
    </script>
  </cheat>

Controls

  • 1P Up / Down: Moves the cursor.
  • 1P Button 1: Loads data for the selected option.
  • 2P Start: Loads the next menu...

DeadConnectionMapMakeTemplate.png
...the template menu. This should load a blank template, but in the final game this is identical to the previous menu.

Controls

  • 1P Up / Down: Moves the cursor.
  • 1P Button 1: Loads data for the selected option.
Normal Fixed
DeadConnectionMapMakeDisplay.png DeadConnectionMapMakeDisplayFix.png

Unfortunately, no matter what option is selected, the map editor is pretty broken. When the map first loads, it copies the round's collision and height data from ROM, then tries to make a duplicate of that data by writing to ROM addresses 0x60000 to 0x6437F. This obviously isn't possible in the release version, which is read-only. When the game tries to display collision and height data, it again loads from the same range, 0x60000 to 0x6437F. This space is occupied by other, unrelated data in the final game, leading to the garbled mess in the screenshot above.

The following MAME code will make the game copy and write temp collision and height data to RAM instead:

  <cheat desc="Map Make Fix - RAM Write">
    <script state="run">
      <action>maincpu.md@178E4=0010B000</action>
      <action>maincpu.md@17AAA=0010B000</action>
      <action>maincpu.mw@17CC0=0010B000</action>
      <action>maincpu.mw@17E0E=0010B000</action>
    </script>
    <script state="off">
      <action>maincpu.md@178E4=00060000</action>
      <action>maincpu.md@17AAA=00060000</action>
      <action>maincpu.mw@17CC0=00060000</action>
      <action>maincpu.mw@17E0E=00060000</action>
    </script>
  </cheat>

Note that this still won't allow the user to save their changes to ROM.

Controls

  • 1P Joystick: Moves the cursor.
  • 1P Button 1 / Button 2: Adjusts the selected tile.
  • 2P Left / Right: Changes the value of the second color of the first FG/BG palette (10).
  • 2P Start: Loads the save menu.

DeadConnectionMapMakeSave.png
The save menu would allow the user to save or discard changes, but, as previously mentioned, the retail game can't save anything so both options are identical.

  • 1P Up / Down: Moves the cursor.
  • 1P Button 1: Chooses the selected option.

Screen Position Check

DeadConnectionScreenPosTest.png
A basic test of the five background layers and object graphics. The game places a red square on each layer and a cursor at the top-left corner.

Controls

  • 1P Joystick: Moves the "Object" cursor.
  • 1P Start + 2P Start: Exits to main test menu.

Haikei Display Test

DeadConnectionMapMakeSelect.png
Like "Map Make", choosing this option will bring up a round select menu. Controls are identical.

DeadConnectionHaikeiTest.png
This displays the Screen0 layer for each round. There's no code to load the other two layers.

Controls

  • 1P Button 1: Exits to Round Select menu.
  • 1P Start + 2P Start: Exits to main test menu.


(Source: ねこ自慢ブログ (升) Wayder Cheat 0.169)
(Additional documentation and fixes: Original TCRF research)

Partial 4 Player Support

DeadConnectionTestMode.png
There are a few pieces of evidence that the game was initially going to support up to four players, with the most obvious being the 3P and 4P input columns in the game's test mode.

Another remnant can be seen by modifying the player ID bytes. They are normally set to 00 for 1P and 01 for 2P, but they can be set to 0x0002 (3P) or 0x0003 (4P) by putting the following codes in MAME's deadconx.xml cheat file:

  <cheat desc="Change 1P ID">
    <parameter>
      <item value="0x0000">1P</item>
      <item value="0x0001">2P</item>
      <item value="0x0002">3P</item>
      <item value="0x0003">4P</item>
    </parameter>
    <script state="run">
      <action>maincpu.pw@10348A=param</action>
    </script>
    <script state="off">
     <action>maincpu.pw@10348A=0x0000</action>
    </script>
  </cheat>
  <cheat desc="Change 2P ID">
    <parameter>
      <item value="0x0000">1P</item>
      <item value="0x0001">2P</item>
      <item value="0x0002">3P</item>
      <item value="0x0003">4P</item>
    </parameter>
    <script state="run">
      <action>maincpu.pw@103532=param</action>
    </script>
    <script state="off">
     <action>maincpu.pw@103532=0x0001</action>
    </script>
  </cheat>
DeadConnectionCursors3P4PGame.png DeadConnectionCursors3P4P.png

Changing the bytes loads unique 3P and 4P cursors in the player select. Note that actually moving the cursors requires a custom build of MAME to support 3P and 4P input.

DeadConnection4PBugs.png
Don't get too excited, though. Besides the cursors, there's nothing else implemented for 3P and 4P:

  • The player initialization subroutine at 0x1BA26 lacks the code to support 3P and 4P initialization.
  • The first port will always use 1P input and the second port will uses 2P input, regardless of their player IDs.
  • There are no special 3P or 4P markers.
  • The game only tracks the status of 1P and 2P. If both 1P and 2P are dead or abesent, gameplay immediately stops and the game over & continue countdowns will trigger, regardless of whether 3P and/or 4P are still alive.
(Source: Original TCRF research)

Location Test Screen

DeadConnectionLocationTest.png
Put the following code in deadconx.xml and then beat any round to bring up a location test screen:

  <cheat desc="Location Test Screen">
    <script state="run">
      <action>maincpu.mw@0D264=0001</action>
      <action>maincpu.mw@0D374=50CE</action>
    </script>
    <script state="off">
      <action>maincpu.mw@0D264=0008</action>
      <action>maincpu.mw@0D374=52BE</action>
    </script>
  </cheat>
(Source: Original TCRF research)

High Score Names

DeadConnectionHighScoreName.png
There are three special high score names, two of which reference the Taito game Pulirula:

JIR Prints a graphic of Zak DeadConnectionZakHead.png in the bottom-left corner.
KAT Prints a graphic of Mel DeadConnectionMelHead.png in the bottom-left corner.
SEX Name is replaced with "AH."
(Source: Original TCRF research)

Unused Graphics

General

DeadConnectionRecycleScreen.png
Frame IDs: 3270, 3271

Two sprites for the EPA's lesser-known equivalent of the "Winner's Don't Use Drugs" screen. Even if the region bit at 0x7FFFE is forced to 02 (US), these sprites won't pop up in attract mode.

DeadConnectionStartApple.png DeadConnectionStartHat.png DeadConnectionStartGun.png

Frame IDs: 3274-3277

Large sprites of an apple, fedora, and a Tommy gun. All three sprites use sprite bank 0E. The only other sprite in this bank is the brick wall used in the "Push 1P or 2P Button" screen, so it likely would have been used there or in some other attract mode screen.

DeadConnectionChibi.gif
Frame IDs: 3280-3286

An animation of a miniature detective running in panic, getting shot and falling to the ground. What fun! These sprites are the only ones in sprite bank 0F, which is never loaded in normal gameplay.

Early
DeadConnectionMugshotsEarly.png
Final
DeadConnectionMugshotsFinal.png

Frame IDs: 0786 (Philip), 0793 (James), 0799 (Eddie), 0805 (Gary)

There are an early set of character mugshots in the game data. The early mugshots are opaque and use the same color background as the 32x32 window they're placed in, while the final mugshots are transparent. The mugshots were later slightly touched up and reshaded.

DeadConnectionMugshotsShoot.gif
DeadConnectionMugshotsHit.png
DeadConnectionMugshotsPant.gif
Frame IDs: 0787-0791 (Philip), 0794-0798 (James), 0800-0804 (Eddie), 0806-0810 (Gary)

The early mugshots have a set of animations for firing, getting hit, and panting at low health. In the final game, the mugshots are static.

DeadConnectionPlayerPunch.gif
Frame IDs: 1228-1236

Graphics for a barefisted melee attack. In the final game, the player either pistol-whips opponents or uses their weapon as a club depending on the weapon they're carrying.

DeadConnectionPlayerPullUp.png
Frame IDs: 1255-1257

Frames for the player pulling themselves over a ledge, an action that simply never comes up in the final game.

DeadConnectionPlayerNoHat.png
DeadConnectionPlayerHatRollN.gif DeadConnectionPlayerHatRollWE.gif DeadConnectionPlayerHatRollS.gif

Frame IDs: 1155-1161 (North), 1166-1172 (West), 1176-1183 (South)

After dying, the player's hat was supposed to fall off and roll to the ground.

DeadConnectionSuspendersBriefcase.gifDeadConnectionBlackBriefcase.gif

Frame IDs: 0677-0684, 0690-0697, 0703-0710 (Briefcase carrier), 0853-0859 (Briefcase)

Animations of the suspenders-wearing enemy carrying a briefcase. If the enemy was shot, the briefcase would fall to the ground, open up and reveal large stacks of cash. The player could then collect the item for a point bonus.

DeadConnectionItem6.png

Frame ID: 0865

This baggie filled with a mysterious, possibly illegal substance is the only other unused item.

DeadConnectionArrows.png
Frame IDs: 0427, 0428

Two unused yellow arrows. The pointy kind, not the shooty kind.

DeadConnectionHubcap.png
Frame IDs: 1493, 1494

These hubcaps would have popped off of one of the many black cars seen in the game.

DeadConnectionLilDetective.pngDeadConnectionTaiyaki.png

Frame IDs: N/A

Graphics for a small detective and taiyaki. These are loaded with the Zak & Mel heads, but there are no high score names to display these on-screen.

Round 1

DeadConnectionRound1ClerkTurn.gif
Frame IDs: 2729-2731

The hotel's concierge has a turning animation, but in the final game he always faces straight-on.

DeadConnectionRound1ClerkCrawl.gif
Frame IDs: 2739-2744

The concierge also has an unused crawling animation...

DeadConnectionSuitLadyCrawl.gif
Frame IDs: 2725-2728

...as does the lady in the black suit.

DeadConnectionRound1BriefcaseFall.gif
Frame IDs: 2758, 2769-2770

A small brown briefcase. It fall down. Ha ha.

DeadConnectionRound1DeskBusted.png
Frame IDs: 2856-2857

The hotel desk has a bullet-ridden graphic, but the thing is completely impervious to bullets in the final game.

Round 3

Raw Chair
DeadConnectionRound3PurpleGownStand.gif DeadConnectionRound3PurpleGownStandC.gif

Frame IDs: 2786-2788

The woman in the purple gown has an animation for getting out of her chair which would have been used at the start of the round. In-game, though, she goes from sitting down to running away instantly.

DeadConnectionRound3WindowHole.gif
Frame IDs: 2937-2940

An animation of grass by one of the restaurant's windows caving in...

Normal Lit
DeadConnectionRound3BigHole.png DeadConnectionRound3BigHoleLit.gif

Frame IDs: 2941-2946

...which would be used in conjunction with this animation of a big hole opening up in the restaurant.

DeadConnectionRound3HoleMockup.png
This is how it would appear in-game. The position matches with where the car ends up at the start of the round; the floor was probably supposed to buckle under the weight of the car before collapsing.

Normal Lit
DeadConnectionRound3Floorboards.png DeadConnectionRound3FloorboardsLit.gif

Frame IDs: 2947-2952

These wood sprites would surround the above holes.

DeadConnectionRound3PinkGownHostage.png
Frame IDs: 1423-1428, 1432-1435

Numerous sprites of a woman in a pink gown in distress. This is the same woman that is seen taken hostage in the Round 3 ending cutscene - it seems that the developers were planning on having an in-engine cutscene of her being taken hostage, but scrapped it for whatever reason.

Round 4

DeadConnectionRound4LampBusted.png

Frame ID: 3028

This streetlight can be shot 'til the cows come home, but it'll never break.

DeadConnectionRound4PinkGownJump.gif
Frame IDs: 1436-1437

Another unused animation for the hostage in the pink gown; this one would be used for jumping out of the car at the end of the round. Lady can't catch a break.

Round 5

DeadConnectionRound5CrateBust.gif DeadConnectionDebrisFall.gif

Frame IDs: 2966-2969 (Crate), 3050-3061 (Debris)

The hanging crate, responsible for many a burn in this round, has an unused animation where it bursts open and its contents fall to the ground. Either it was possible for it to be targeted at some point, or it would have broke the first time it hit the ground. Makes more sense than being able to burst into flames over and over.

DeadConnectionRound5ConveyorBustedR.pngDeadConnectionRound5ConveyorBustedG.png
Frame IDs: 3001-3003 (Green), 3021-3023 (Red)

Both the red and green conveyor belts have multiple states of disrepair, but they can't be targeted or damaged in the finished game.

DeadConnectionRound5RailingBusted.png
Frame ID: 3026

Busted-up version of a railing that can't be targeted in-game.

DeadConnectionSuitGuyClimb.gif
Frame IDs: 2172-2174

The boss of this round has a climbing animation, but in the final game he's climacophobic and stays on the ground.

Round 6

DeadConnectionPurpleGownLook.png
Frame ID: 1420

More unused graphics of a purple-gowned woman looking at things. This time it would be the firebombing that happens at the start of the round. In the final game she just holds on one of her dancing frames until she runs away.

DeadConnectionSplashSmall.png DeadConnectionSplashBig.png

Frame IDs: 1619-1621 (Small), 1625-1627 (Large)

Two unused sets of splashes that are both smaller and larger, respectively, than the one used in the game.

DeadConnectionWaterLurk.gif

Frame IDs: 1628-1630

A ripple effect for use in the water. Maybe the pool was originally deep enough for the player and/or enemies to drown?

DeadConnectionRound6BeachChair.png
Frame IDs: 2891-2893

An unused folding beach chair that people would be able to shoot up. Take that, beach towel!

DeadConnectionRound6BallRed.gif DeadConnectionRound6BallYellow.gif
Frame IDs: 2903-2910

Red and yellow balls that would have floated in the pool, waiting to be burst open by player and enemy alike.

DeadConnectionRound6BridgeBroke.png
Frame IDs: 2913-2916

The bridge on the left side of the screen can't be damaged, leaving these broken variants unused.

DeadConnectionRound6PlanterRoll.gif
Frame IDs: 2930-2936

At one point, the marble flower planter could be kicked and rolled by the player like the statues in Round 1. They're more fragile in the final game and simply break instead.

Round 7

Used Full
DeadConnectionSuitGuySmokeUsed.gif DeadConnectionSuitGuySmokeFull.gif

Frame IDs: 2157-2171

Fezari had a more elaborate smoking animation: He would light up the cigarette, smoke it for a bit, puff out a bit of smoke, and then throw the cigarette to the ground. Only the three smoking frames are using in the normal game.

DeadConnectionSuitGuyIdlePose1.gifDeadConnectionSuitGuyIdlePose2.gifDeadConnectionSuitGuyLookAround.gif

Frame IDs: 2149-2153 (Animation 1), 2154-2156 (Animation 2), 2175-2176 (Animation 3)

Even more idle animations for Fezari: Twirling a gun(?) around, adjusting his hat, and taking a look at his surroundings.

DeadConnectionRound7BoothOpen.gif
Frame IDs: 3089-3092

The phone booth has frames for opening and/or closing. Looks like it was planned for either the player or an enemy to use the booth as cover.

DeadConnectionRound7FountainBase.png
Frame IDs: 3143-3148

Damaged variants of the fountain base's mask sprites.

DeadConnectionRound7FountainBusted.png


They would be used as such. The interior of the fountain can be damaged, but not the base.

Round 8

DeadConnectionRound8Lamps.gif DeadConnectionRound8LampsBusted.gif
Frame ID: 3186-3187 (Lit), 3189-3190 (Broken)

Right and left-facing lamps what could be busted.

DeadConnectionRound8PillarBusted.png
Frame ID: 3238

This pillar is impervious to damage, so stop trying.

(Source: Original TCRF research)

Unused Audio

Music

ID Track Comments
6C
The prologue track is 85 seconds long, but it only plays for 46 seconds in-game.
70
This presumably would have been used when a second player entered the game.
71
The Round 1 intro song is cut off about two seconds before it can finish.
Track 6E
Track 79

An early version of the "Time Over" track is stored in slot 69. The final version, which removes the beeping intro, is slotted in 79.

Sound Effects

ID Sound
0E
15
25
26
2B
35
36
49
51
52
5D
68
7A
7D
7F
80
81

These sound effects...they aren't used. One of them is someone shouting "Oh my God!" so that's pretty fun.

(Sound effect info: Original TCRF research)

Regional Differences

Japan World
DeadConnectionIntroJP.png DeadConnectionIntroINT.png

The only difference between the Japan set and other sets is the text at the start of the prologue. For some reason, the year was changed from 1952 to 1953.