SPACE INVASION

Introduction

This is the classic arcade game produced by Tangerine and ETI Magazine.

During the late 1970s Tomohiro Nishikado created the arcade game Space Invaders, manufactured and sold by Taito in Japan. It was the first of the "shoot 'em up" variety games and took over from Breakout as the most popular archade game of the time.

By 1980, many of the small micro-computer manufacturers were desperate to get a version of their own onto their platforms. Tangerine's Paul Johnson put together some hardware for playing the game based on the Microtan 65 CPU board. Mike Rose generated the software. Their work was published in Electronics Today International in the November 1980 edition. The name of this game was called "Space Invasion", to avoid copyright infringement presumeably. The game hardware consisted of 3 units; the main PCB, a power supply and a special keypad unit incorporating sound effects.

ETI Magazine article

A further article in Computing Today described how the game could be built using an existing Microtan + Tanex (or Micron), either with the program code in EPROM on the TANEX board, or typed into TANEX RAM. The article included a dump of the software code to be loaded into RAM commencing at $0400. A review is in TUG Newsletter 3, Page 7.

The Computing Today article also included a slightly different circuit diagram for the Special Keypad/Sound Effects board. To avoid the board generating sound after being powered-up and before the game is started, IC1 was changed from a CD4001 (Quad NOR gate) to a CD4011 (Quad NAND gate). This changes the default state of the GUN sound effect from ON to OFF. However, this board is then not compatible with the code for the EPROM versions (or the code listed in the same article). The software versions below assume IC1=4001 if the Special Keypad/Sound Effects board is used.

Computing Today Magazine article
CT Magazine program code (text file)
CT Magazine program listing (pdf file)

Three different configurations are possible:

    1 Invasion PCB + Invasion Eprom + Special Keypad (inc sound) / Microtan Keypad (no sound)
    2 Microtan CPU + Tanex + Invasion EPROM (in socket E2) + Special Keypad (inc sound) / Microtan Keypad (no sound)
    3 Microtan CPU + Tanex + 2K Ram + Software in RAM + Special Keypad (inc sound) / Microtan Keypad (no sound)

  • In configuration 1 the software was assembled with origin $F800
  • In configuration 2 the software was assembled with origin $E800
  • In configuration 3 the software was assembled with origin $0400
  • Tangerine supplied the PCB version fully assembled for £99.85 or in kit form for £80.85. The special keypad and Sound generator unit was available at £20.55 fully assembled or £15.38 in kit form. The Invasion PCB only was £21.15 and the sound generator PCB was £5.60. The EPROM was available at £17.75. The RAM version of the software on Tape was available via the TUG software Libary, priced £3.50.

    Circuit Description

    The ETI magazine article provides a decription of 'How it Works', however further explanation of some specific aspects are provided below:

    I/O Interface

    There are 3 IO locations: These are:

  • BFF0 Reading $BFF0 switches display to Graphics mode
  • BFF2 Writing to $BFF2 bit 0 (pin 13) enables the Microtan Keypad left column of switches (not required with the special keypad)
  • Writing to $BFF2 bits 1 to 4 switches on/off sound effects (see below)
  • BFF3 Writing to $BFF3 switches the display to Text mode
  • Reading $BFF3 reveals if any of the 5 keypad switches are being pressed (see below)

    Keypad operation.

    The 5 keypad switches are allocated as follows:
  • pin 1 bit 0 Play
  • pin 2 bit 1 Right
  • pin 3 bit 2 Left
  • pin 4 bit 3 Fire
  • pin 5 bit 4 Hold
  • Sound effects

  • pin 12 bit 1 Heartbeat (active high)
  • pin 11 bit 2 Gun firing (active low)
  • pin 10 bit 3 Flying saucer (active high)
  • pin 9 bit 4 Explosion (active high)
  • The original software versions suffered in that the spaceship starting formation advanced at each restart right down to the Gun Line which meant that the player had no chance to shoot the spaceships in the lowest row. These spaceships soon crashed into the Laser Gun ending the game. A mod which avoided this is described in Tug News 6 on page 4. When the starting line-up had advanced to row $20, the formation was restarted as at the beginning of the game. The Eprom version adopted this mod except row $23 was chosen when this happened.

    Another difference is that the EPROM version dropped the underlining of the Invasion complete message which started at $A0B, presumably to save memory space.

    Software version 1.0 1 - ETI Standalone Version

    ETI Magazine article

    Code is written for housing in a 2716 EPROM located on the MT65 CPU board replacing the Monitor EPROM. Code is stored from $F800 to $FFFF and is initiated automatically after a system RESET.

    Requires MT65 CPU board, SPACE EPROM ($F800) and Microtan Keypad - (0 = Play, 4 = Right, 8 = Left, M = Shoot, Shift = Hold) (or the ETI keypad/Sound Effects board).

    Space Invasion Image F800-FFFF (Binary image)
    Space Invasion Image F800-FFFF (Intel format image)
    Space Invasion EPROM Source Code Listing

    Software version 2.0 - Microtan EPROM Version

    Code is written for housing in a 2716 EPROM located on Tanex E2 socket. Code is stored from $E800 to $EFFF and is initiated with "GE800" command.

    Requires MT65 CPU and TANEX boards, TANBUG monitor, SPACE EPROM ($E800) and Microtan Keypad - (0 = Play, 4 = Right, 8 = Left, M = Shoot, Shift = Hold) (or the ETI keypad/Sound Effects board).

    Space Invasion Image E800-EFFF (E2) (Binary image)
    Space Invasion Image E800-EFFF (E2) (Intel format image)
    Space Invasion EPROM Source Code Listing

    Software version 3.0 - Microtan RAM Version

    Computing Today Magazine article
    CT Magazine program code (text file)

    The Space Invasion EPROM program has been re-assembled to run in RAM. Code is stored from $400 to $BFA and is initiated with "G400" command.

    Requires MT65 CPU and TANEX boards, TANBUG monitor and Microtan Keypad - (0 = Play, 4 = Right, 8 = Left, M = Shoot, Shift = Hold) (or the ETI keypad/Sound Effects board).

    SPCE40.wav

    Software version 3.1 - Microtan Soundcard Version

    This version is one originally written to use a custom made keypad and output sound effects via the ETI soundcard. It has now been reassembled to use the Microtan Keypad and output sounds via a Bulldog card or Soundcard-R. Like its predeceesor, Game speed is selectable before the game commences.
    Requires TANBUG monitor and the soundcard configured to use addresses $BC00 and $BC01. Code is stored from $400 to $D04 and is initiated with "G400" command.

    Requires MT65 CPU, TANEX and Sound boards, TANBUG monitor and Microtan Keypad - (0 = Play, 4 = Right, 8 = Left, M = Shoot, Shift = Hold) (or the ETI keypad/Sound Effects board).

    SPACE.wav