the cutting room mirror

Land Sea Air Squad

To do:

  • Version Differences.
  • The ACA release reportedly altered the sprites of the secret angel item.

Space Squad cut for legal reasons.

Anti-Piracy Features#

There are two different piracy flags in the game. The first is set when the "TAITO" part of the copyright string is altered: The game saves an encrypted version of the string to RAM and then performs a checksum on that string at the start of every round. If the string does not equal C0, the first piracy flag is set, triggering the following gameplay tweaks:

  • Enemy planes, boats, submarines, and the train in Round 6 will never spawn.
  • Bullets and grenades act like Super Bomber (S) power-ups, meaning that they instantly destroy all on-screen targets in a red flash.

The second flag takes a lot longer to trigger. The subroutine at 0x2860 will gradually check 0x0000 to 0x1986 in the ROM, one byte at a time, with each byte added to byte A812 in RAM. The following actions will trigger this subroutine:

  • Spawning.
  • Killing a soldier.
  • Destroying a bomb on a bridge.
  • Player's grenade exploding (Once per frame, for a total of 38 frames).
  • Riding the train in Round 6 (Once per frame).
  • Finishing a game loop.

(If the user just leaves the game in attract mode, the subroutine will reach 0x1986 on the 28th demo sequence.)

After reaching the end, the result of A812 is stored in the second piracy flag, A813, which should be 00 if the checksum is correct. If the second piracy flag is set to a non-zero value, the following gameplay tweaks will occur:

  • Enemy planes will never spawn.
  • The players' gun and grenades will auto-fire.
  • All sound effects will be off by one. This is most noticeable with power-ups, which play a sound that kills the BGM. This doesn't always happen, though; the flag has to be an odd number for this to trigger.
  • The player's helicopter's shadow won't be drawn.
  • The end-of-round results sequence will last longer, offsetting the player's initial spawn point: 48 frames in Rounds 2, 5, 6, and 7; 80 frames in Round 3; 224 frames in Round 4; and 512 frames in Round 8.

Note that every time the player gets into a helicopter, the game checks if the instruction at the start of subroutine 0x2860 has been replaced by a RET opcode. If true, this second piracy flag will be set to FF.

Put the following codes in MAME's lsasquad.xml cheat file to set either of these flags:

  <cheat desc="Piracy Flag 1">
    <script state="run">
      <action>maincpu.pb@AE87=FF</action>
    </script>
    <script state="off">
      <action>maincpu.pb@AE87=00</action>
    </script>
  </cheat>
  <cheat desc="Piracy Flag 2">
    <script state="run">
      <action>maincpu.pb@A813=FF</action>
    </script>
    <script state="off">
      <action>maincpu.pb@A813=00</action>
    </script>
  </cheat>

(Source: Original TCRF research)

Secret Codes#

LSASquadCode.png
There are three different codes that the player can input during the end-of-round results sequence. Only one code can be used per round, and if the player makes a single mistake they'll have to wait until the next round to try again. Each code prints a special message at the bottom of the screen and gives the player a point bonus.

Code

Message

Point Bonus

Notes

UURRRDDDDDD

© TAITO CORPORATION 1986
ORIGINAL GAME

10 Points

The first line is "© TAITO AMERICA CORP 1986" if the language dip switch is set to English.
If either of the piracy flags are tripped, the text is replaced with "DEAD COPY GAME !!!" and no points are awarded.

UDRLUDRLDDD

KEY WORD 2.3.6

7,770 Points

The message is a hint for the first code (Up x2, Right x3, Down x6).

LUDRRULULDD

POWER UP !!

30 Points

This code also fully powers up the player's gun.

High Score Names#

LSASquadHiScoreReplace.png
There are four high score names that trigger special messages:

Name

Message

style="color: white; background-color: black; font-family: Consolas, DejaVu Sans Mono, Droid Sans Mono, Lucida Console, Courier New, monospace;""|.........!

style="color: white; background-color: black; font-family: Consolas, DejaVu Sans Mono, Droid Sans Mono, Lucida Console, Courier New, monospace;""|GAME OVER

style="color: white; background-color: black; font-family: Consolas, DejaVu Sans Mono, Droid Sans Mono, Lucida Console, Courier New, monospace;""|.........N

style="color: white; background-color: black; font-family: Consolas, DejaVu Sans Mono, Droid Sans Mono, Lucida Console, Courier New, monospace;""|N.Y CAPTOR

style="color: white; background-color: black; font-family: Consolas, DejaVu Sans Mono, Droid Sans Mono, Lucida Console, Courier New, monospace;""|AAAAAAAAAA

style="color: white; background-color: black; font-family: Consolas, DejaVu Sans Mono, Droid Sans Mono, Lucida Console, Courier New, monospace;""|..........

style="color: white; background-color: black; font-family: Consolas, DejaVu Sans Mono, Droid Sans Mono, Lucida Console, Courier New, monospace;""|I.FUJISUE

style="color: white; background-color: black; font-family: Consolas, DejaVu Sans Mono, Droid Sans Mono, Lucida Console, Courier New, monospace;""|HISAMI....

The second entry is the name of an earlier Taito arcade game.

LSASquadHiScoreLuck.png
There's also a special case if the first three letters of the high score name are "SEX". The message is replaced with "LUCK X%", where X is read from RAM address A506, which is incremented every frame and ranges between 0 and 100.

(Source: Original TCRF research)