Cosmic Convoy
| Cosmic Convoy | ||
|---|---|---|
| Game No. | 521 | |
| Voting | 4.00 points, 1 votes | |
| Developer | Andy Walker | |
| Company | Taskset | |
| Publisher | Taskset, Corgi Software | |
| Musician | Mark Buttery | |
| HVSC-File | /GAMES/A-F/Cosmic_Convoy.sid | |
| Release | 1983 | |
| Platform | C64 | |
| Genre | Shoot'em Up | |
| Gamemode | Single player 2 players (in turns) | |
| Operation | ||
| Media | ||
| Language | ||
| Information | aka Spazio 2000 | |
Description[edit | edit source]

In the game Cosmic Convoy, the player controls a squadron initially consisting of three spaceships, which escorts and protects a fleet of interplanetary freighters. They fight enemies that attack this convoy from the front and rear, attempting to destroy the freighters through collisions. Once the player-controlled spaceships and the freighters have reached their destination planet, the player receives a bonus based on the number of undamaged freighters before embarking on the next, more difficult mission.
Backstory[edit | edit source]
A famine is raging in the Coman planetary system, and millions of people are desperately waiting for supplies. In orbit around Com-Alpha, a fleet of cargo ships is being assembled to deliver aid — and the player's task is to protect this convoy with a squadron of "H-Vip" space gliders equipped with "Gon-4" precision lasers and escort them to their destination planet, ComBeta. However, the convoy must cross the "TransCom" cargo route, where the most vicious space pirates might be lying in wait.
Design[edit | edit source]
During the game, the screen is divided vertically into four sections, each displaying different information and graphics across the full screen width on a black background: The top line of text shows the current scores of the two players on the left and right, and the current highest score in the center. The largest section, extending from line 3 to line 17, shows the squadron controlled by the player and its immediate surroundings, including freighters and enemies. Line 19 is reserved for status messages, and finally, lines 21–25 show a scaled-down side view of the entire flight path with symbolic representations of all spacecraft, with the area where the player's squadron is located highlighted by a square marker. The areas are visually separated by white, horizontal lines.
Graphics[edit | edit source]

The screen display is exclusively in monocolor text mode (screen memory at address $0400, character set in the range $2000–$27FF). Since the program does not utilize pixel-by-pixel scrolling supported by the VIC, nor sprite multiplexing, the developers came up with some creative solutions for the game's special graphical effects:
- Both the home planet, which slowly disappears to the right when the game starts (left animation in the gallery above), and the target planet are represented by eight solid white sprites stretched in the X and Y directions. In the image on the right, these sprites are alternately colored light red and light green to illustrate this.
- An ingenious layout assigns the maximum of eight sprites to the game's moving objects: The player-controlled squadron, although consisting of up to three spaceships, manages with only two sprites because the two spacecraft flying in parallel are combined into a single sprite (sprite 1), while the jet flying at the front is represented by sprite 0. Sprite 2 is used for all exhaust plumes of the squadron as well as all fired projectiles, so the exhaust plumes disappear briefly as soon as the player fires the laser. Sprites 3 and 5 are reserved for the enemy spaceships, with two spacecraft sometimes combined into a single sprite; sprites 4 and 6 are enemy projectiles. Finally, sprite 7 serves as a square marker of the current position in the zoomed-out side view at the bottom of the screen.
- The cargo ships that slowly pass by in the background, on the other hand, are part of the text display. The game's character set contains not just one set of corresponding character definitions, but eight different versions, each shifted by a single pixel.
Sound[edit | edit source]
The gameplay is accompanied by four short, sometimes polyphonic, sound sequences (see section "Theme"). During the journey from one planet to the next, a monophonic melody also plays, which quickly becomes monotonous. Game events such as laser firing or being hit during combat are underscored by the noise generator of the sound chip.
Hints[edit | edit source]
The goal of the game "Cosmic Convoy" is to escort convoys of cargo ships on transport flights between two planets and protect them from attacks by space pirates. To do this, enemy spaceships, which attack the convoy partly from the front and partly from the rear, must be shot down before they can crash into and destroy a freighter — without being hit by their own missiles or colliding with the enemy ships.
At the start of their mission, the player receives three squadrons, each consisting of three spaceships, for a total of nine fighter jets. Only one squadron is active at a time. These spaceships can only be controlled together; they always accelerate, turn, and fire simultaneously. Each enemy hit destroys one of the spaceships; after the third hit, the player must begin the interplanetary journey again with the next three spaceships.
If at least one of the player's spaceships reaches the target planet, they receive 1,000 points for each cargo ship that survives the journey undamaged. They then embark on the next mission, with these transport missions becoming progressively more challenging: Firstly, the number of cargo ships gradually decreases from an initial 15 to a final 5, making it increasingly difficult to deliver at least one freighter to its destination undamaged; secondly, both the player's and the enemy's spaceships move progressively faster.
Screen Layout[edit | edit source]

Controls[edit | edit source]
"Cosmic Convoy" can be controlled either with a joystick or with the keyboard. Controlling the spaceship with a joystick is incredibly intuitive, while using a keyboard takes some getting used to:
or 1 : Move the spaceship up
or [25]larr; : Move the spaceship down
or CTRL : Turn/accelerate the spaceship left
or 2 : Turn/accelerate the spaceship right
or SPACE : Fire a laser
Enemies[edit | edit source]
A multitude of enemies attack the fleet of cargo ships, usually from the front, but sometimes also from behind. Unfortunately, due to their consistently either light green or dark green coloring and similar design, the enemy spaceships are difficult to distinguish in the heat of the game. Each enemy destroyed is worth 100 points.
![]() |
![]() |
Tips[edit | edit source]
- The easiest way to engage approaching enemy spaceships is to fly far ahead of the freighters and, using the overview view at the bottom of the screen, fall back a bit only when an encounter with enemy spaceships is imminent. Since the enemies always fire a single shot immediately after appearing on the left side of the screen, you should choose the vertical position of your squadron so that it is not flying at the same altitude as the nearest enemy, thus ensuring that its shot will miss. Then, you move to the same altitude as it and shoot it down.
- In the early levels, you should ignore enemies attacking the convoy from behind: The fleet of freighters is so long that you would only reach its end when the next wave of attacks is already threatening from the front. In the later levels, when only a few freighters need to be escorted, the time between two frontal attacks is sufficient to briefly fly to the rear of the convoy, destroy one or two enemies there, and then get back to the front of the convoy in time.
Solution[edit | edit source]
The sole objective of "Cosmic Convoy" is to escort as many supply convoys as possible and score as many points as possible by shooting down enemies and protecting the freighters. A "solution" to the game, such as ending the famine in the Coman planetary system or completely destroying the nasty space pirates, is not included.
![]() |
Cheats[edit | edit source]
On CSDb, there is a crack of Hokuto Force with various trainer functions: [1]
![]() |
Internal Data Structures[edit | edit source]
For developing custom trainer functions and for analyzing or manipulating the data used by the game, knowledge of memory allocation and internal workings is helpful. The following table therefore compiles a range of information about "Cosmic Convoy."
| Address | Content | Range of values | Comments |
|---|---|---|---|
| $0376 | Active Player | 1...2 | — |
| $03A3 | Number of completed convoys | 0...255 | Basis for determining the number of cargo ships in the convoy |
| $03E3 | Number of squadrons remaining | 3...0 | Will be tripled for displaying the number of remaining spaceships |
| $0407 — $040B | Player 1 score | 0...99900 | The points are added up directly in the screen memory |
| $0423 — $0427 | Player 2 score | 0...99900 | The points are added up directly in the screen memory |
The number of cargo ships that need to be escorted and protected in the next round is determined in an unusually cumbersome way from the number of completed convoys at address $03A3:
649E: LDA $03A3 ; Get the number of completed convoys 64A1: CMP #$00 ; So far, 0 convoys? (redundant command) 64A3: BNE $64A8 ; Jump if not 0 convoys 64A5: LDY #$0F ; otherwise escort 15 cargo ships 64A7: RTS ; and return from subroutine 64A8: CMP #$01 ; So far, 1 convoy? 64AA: BNE $64AF ; Jump if not 1 convoy 64AC: LDY #$0C ; otherwise escort 12 cargo ships 64AE: RTS ; and return from subroutine 64AF: CMP #$02 ; So far, 2 convoys? 64B1: BNE $64B6 ; Jump if not 2 convoys 64B3: LDY #$0A ; otherwise escort 10 cargo ships 64B5: RTS ; and return from subroutine 64B6: CMP #$03 ; So far, 3 convoys? 64B8: BNE $64BD ; Jump if not 3 convoys 64BA: LDY #$08 ; otherwise escort 8 cargo ships 64BC: RTS ; and return from subroutine 64BD: CMP #$04 ; So far, 4 convoys? 64BF: BNE $64C4 ; Jump if not 4 convoys 64C1: LDY #$07 ; otherwise escort 7 cargo ships 64C3: RTS ; and return from subroutine 64C4: CMP #$05 ; So far, 5 convoys? 64C6: BNE $64CB ; Jump if not 5 convoys 64C8: LDY #$06 ; otherwise escort 6 cargo ships 64CA: RTS ; and return from subroutine 64CB: LDY #$05 ; In all other cases, escort 5 cargo ships 64CD: RTS ; and return from subroutine
An indexed access to a table that stores the number of cargo ships per round, using the round counter (limited to 6) as the index, would have required only half the memory.
Votes[edit | edit source]
| Voting of the C64-Wiki users (10=the best vote): | ||
| 4.00 points at 1 vote. You need to be logged in to cast a vote. | ||
| Lemon64 | 5,14 | October 8, 2024 - 29 votes |
| Ready64 | 4,17 | October 8, 2024 - 12 voti |
| Universal Videogame List | 2.5/5 | October 8, 2024 |
| Personal Computer Games | 5/10 (Graphics 8/10, Sound 6/10, Ease of use 4/10, Originality 6/10, Lasting interest 4/10) | Issue 5 (April 1984) |
| Rombachs C64-Spieleführer | 8 | September 1984 - "Verdict 2" |
Critics[edit | edit source]
Stephan64: "Cosmic Convoy is a simple shooter that quickly becomes boring because you have to endlessly destroy the same enemies with the same moves. And if you do manage to have a bit of fun for a while, it's over as soon as the collision detection fails. Considering its early release date and in recognition of some well-designed graphical and musically appealing sequences, I'm still giving it 4 points."
Rombachs C64-Spieleführer: "Unlike other shooters, this game doesn't just require quick reflexes; a certain tactical sense is also necessary (Rating 2)." [1]
Miscellaneous[edit | edit source]
Cover[edit | edit source]

Cassette[edit | edit source]

Inlay[edit | edit source]

Theme[edit | edit source]
A total of five short sequences underscore individual gameplay situations. The following gallery shows these melodies in standard musical notation. For creative reuse, the sheet music for all melodies is also available as a PDF document (File:CosmicConvoy PDF.pdf) and in ABC musical notation (File:CosmicConvoy.abc.txt).
Video Recording[edit | edit source]
Short demonstration of the game
Kassettenversion[edit | edit source]
The cassette version of "Cosmic Convoy" released by Taskset (found in both Ultimate Tape Archive [2] and Ric64's C64 Tape Archive [3]) has neither a fast loader nor copy protection. Instead, the cassette contains a loading routine written partly in BASIC and partly in machine code, which loads a total of four program blocks sequentially into different memory areas and then starts the game:
| Dateiname | Adressbereich | Länge |
|---|---|---|
| "COSMIC CONVOY" | 2049 — 2591 ($0801 — $0A1F) | 543 bytes |
| "CHARACTER" | 8192-10751 ($2000 — $29FF) | 2560 bytes |
| "HI-TABLE" | 10031 — 21759 ($272F — $54FF) | 11729 bytes |
| "MASTER" | 24576 — 34303 ($6000 — $85FF) | 9728 bytes |
| "ALIENS" | 49152 — 51711 ($C000 — $C9FF) | 2560 bytes |
If you load these files sequentially from the tape using absolute address 1 and save the aforementioned address ranges to a second cassette, you will then have a working copy.
The version of the game distributed by Corgi Software, however, advertises on its cover that it uses the "pavloda" fastloader.
Bugs[edit | edit source]
- Collision detection is remarkably poor, as can be seen in the following gallery. In the left animation, even clear overlaps between the player-controlled squadron and the oncoming enemy spaceships are not detected. The middle sequence shows, in slow motion, a section of the second animation in the "Design" section, in which an enemy is clearly hit by the player's laser but takes no damage. And on the right, also in slow motion, is a section of the third animation in the "Design" section, in which the player has already shot down an enemy without ever touching it, yet still loses one of their spaceships.
- The number of points achieved is calculated directly in the screen memory and is limited to 5 decimal places (the last two of which are always "00"). If a player achieves more than 99,900 points, the counter restarts at "00000", without the missing 100,000 points being indicated in any way.
Highscore[edit | edit source]
The following list invites you to immortalize yourself with your highest score. A level is not specified, as the number of transfers performed in the game is not displayed and only a maximum of 4 medals are awarded.

- Ivanpaduano - 65.300 (16.01.2024)
- Stephan64 - 57.900 (21.10.2024)
- Niemand - 0 (tt.mm.jjjj)
Links[edit | edit source]
- C64Games.de - Game No. 732
- Gamebase64.com - Game No. 1699
- Lemon64 - Game No. 542
- ready64 - Game No. 1930

- CSDb
- CSDb - Release No. 74057
- Cosmic Convoy at MobyGames
- Personal Computer Games test report (p. 61)
Sources[edit | edit source]
- ↑ Oswald Reim, Martin Scholer: "Rombachs C64-Spieleführer", Rombach, 1984, page 79-80



















