AcornsoftIn the early days of the BBC Micro, the quality of software for the new machine was quite mixed. However one software company in particular, Acornsoft, seemed to be able to consistently produce games of high quality that earned favourable reviews, including a range of games that were clones of, or closely based on, popular arcade games of the time such as Snapper (a clone of Pacman), Planetoids (a clone of Defender) and Rocket Raid (a clone of Scramble).
Rocket RaidRocket Raid was written in 1982 by Acornsoft programmer Jonathan Griffiths, who also created the classic Snapper for the BBC & Electron (and, later on, JCB Digger for the BBC).
|Rocket Raid - disc version cover|
The game will no doubt be familiar to most people who have owned a BBC micro. In the game, you must guide your rocket ship through a hazard-filled landscape (which includes vertically-rising rockets, alien-filled tunnels and an asteroid belt) through to the last level where success if found by bombing the robot waiting at the end.
The game ending was also a slight let-down. After battling through to the very end of the game and managing to successfully drop a well-positioned bomb on the final robot enemy, you would receive a short congratulatory message and find that the game simply started again.
But players in those days were used to brief game endings (or none at all), especially given the limited memory space into which the games had to be squeezed.
|Rocket Raid - first level|
Coming UpIn this series of blog posts we'll try to disassemble the Rocket Raid code to see how it the game was put together.
Some of the areas of interest include:
- sprite plotting and movement
- collision detection
- hardware scrolling
- text display
- text input
The game was written in 6502 assembly language and runs in Mode 2, giving use of the full set of 8 colours (plus 8 flashing) at the expense of losing 20K of memory for screen display, leaving only a few kilobytes of memory on an unexpanded Beeb for the game code itself.
One book that will be a very useful reference is one that was written by the author of the game soon after the publication of Rocket Raid, called "Creative Assembler - How To Write Arcade Games" which should give some insight into similar assembler routines used in Rocket Raid. (Despite its name, I found the book itself to be rather dry and fairly hard to digest, at least in terms of a games-writing guide, but for our purposes it is likely that some of the routines mentioned will be similar to those found in Rocket Raid).
In the next post I'll make a quick summary of the tools and books before we roll up our sleeves and start to take the code apart.