BRICK YARD BILL		by C Elliston
BURGLARS
FIND THE BOMB
HELL'S ANGELS		by Akram Malik
HORSE RACE
NUCLEAR ATTACK		by Matthew Homer
ON THE SIDE		by James Southgate
SLATE
SMAUG'S LAIR		by Norman Brooks
SEASON'S GREETING
U-BOAT (1K ZX81)	by Neil Stevens
WILD WEST SHOOT-OUT


Ive noticed TTFn has a few ZX80/81 programs that arent in the standard .O
and .P formats, so I thought I would convert them as appropriate so that
they can be used with the widest range of emulators. Ive attached new
versions of each program, although for some it was only necessary to rename
the file extension. [ PF ]

.81
The following can simply have their extensions renamed to .P:
- ZX831201_010059Burglars.81
- ZX831201_010112FindTheBomb.81
- SP8501w2721WebAttack.81

Very early emulator (I believe for the Atari ST) used the .81 file
extension but they are identical to .P format. Some early emulators would
include surplus bytes at the end of .81 files but Ive checked these files
and they do not have this issue. I advise renaming these files (in though
many emulators will read in .81 files) as it avoids confusion with people
thinking there is a difference in format when there isnt. [ PF ]


ZX COMPUTING December 1983 / January 1984
=========================================


BRICK YARD BILL - C.Elliston (ZX Computing-Dec/Jan 83/84-Page 82)

AN INTERESTING VARIATION ON THE 'MAZE' THEME FROM C.ELLISTON OF SUFFOLK.

This is a simple game for your ZX Spectrum - simple, but extremely difficult
to play!
 You control the flow of bricks around the playing area of the screen using
the four direction keys on the Spectrum. The stream of bricks can only be
stopped if you run into another wall or you change direction.
 The idea of the game is to manoeuver the stream of bricks, which leaves a
wall behind it, trying not to 'box' yourself in. However, it's not as easy
as you might first think as there are a random number of bricks scattered
throughout the playing area which get in your way.
 You score points while you keep the stream of bricks in motion, and if you
manage to surpass a score of 80, you qualify for another screenfull. Of course,
this time it gets more difficult as there are more random bricks scattered
about. The top score so far is 513 - see if you can beat it!
 If you're looking for one word to describe this game, try 'addictive' - type
it in and you'll see what I mean.

LINE BY LINE

Here follows a breakdown of the listing with a suggestion for changing the
game a little to suit your own requirements:

Lines 11-14     Set up the user-defined graphics.
Lines 32-36     print the border walls.
Line  38        Print the score on the border wall.
Lines 40-50     Print the random bricks in the playing area.
Lines 100-5000  Contain the main games loop.
Line  455       Tests to see if you are 'boxed' in.
Lines 5000-6000 Calculate the score.
Line  5025      Converts the number of bricks into a percentage of the screen
                covered.
Line  5053      This line can be changed to lower the score required to move
                on up to another screen. For example, if you wanted to get
                another screen after 50 points, you would have to make line
                5053:

                5053 IF PC>=50

Lines 6000-7000 Contain the instructions for the game.


This info file was typed by Michael Bruhn 14/6-1998


**********************************************************************

BURGLARS
Steal away a few quiet moments and play this great little game by
Andrew Brydon of Sunderland.

In this game you play the part of a burglar who has decided to burgle
the safe from the Arich household. You are represented by the 'O'
character and you move about the room using the cursor keys on the ZX81.

Your accomplice in this mission has been inside the room and has provided
you with an idea of what to expect in the room, including the fact that
the safe is surrounded by pressure pads. Your accomplice has even
managed to deactivate some of the pads, but has neglected to tell you
which ones - good accomplices are so hard to find these days!

To get the safe you must move carefully around the chairs and tables in
the room so as to keep down the noise. Then you must make your way to
the safe, keeping clear of the alarm pads if possible. You must then
land on the '/' symbol beneath the safe to steal the loot.

You'll have to hurry though, as the watchman checks the room every now
and then and you wouldn't want to get caught would you?

Line by line

Here follows a brief look at the program which should help you understand
the listing a little better:

Lines  10-  45  Print the instructions.
       49-  75  Set up the variables.
       90- 140  Move your character about the house.
      150- 190  See if your character has been caught or has reached the safe.
      200- 999  Set up the alarm pads.
     1000-1030  Set up the house display.
     1500-1595  Tells you that your character has been caught.
     2000-9999  Tells you that your character has reached the safe.

Variables

Here is a list of the main variables used throughout the program:

B$  =  INKEY$
A$  =  the burglar
X   =  the burglar's X co-ordinate (vertical)
Y   =  the burglar's Y co-ordinate (horizontal)
N   =  time in the house before the watchman comes round
A   =  variable for a house position
S   =  used in setting up the alarm pads
T   =  used in setting up the alarm pads
M   =  used in setting up the alarm pads
Z$  =  the house plan


**********************************************************************


FIND THE BOMB
Can you save the city from the hidden time bomb  a great program for your
16K ZX81 from Oliver Fritsch of West Germany.

Somewhere in the city, a time bomb has been hidden which is due to detonate
in a very short time. It's up to you to find and defuse the bomb before it
goes off and devastates the city.

When you RUN this program, you will first be greeted with an aerial view of
the part of the city your intelligence people tell you the bomb is cached
in. In this area of the city you will see a number of buildings the time
bomb might be hidden in. You move your character, an asterisk, using the
direction keys on the ZX81, '7' and '8' keys.

When you touch one of the houses with your character, you will be provided
with another aerial view  this time of the house you are preparing to
search. The bomb is represented by an inverse 'BB' character and you should
head for it, again using the direction keys. If the house you have entered
does not contain the bomb, you will have to exit the house as quickly as
you can via the inverse 'A' character and move onto another house to
continue your search.

Time and motion

Once you have found the time bomb, you should move your character onto that
square. Be careful not to bump into any of the walls of the house or it
will be taken to mean that you have bumped your head, thus rendering
yourself unconscious, and you will lose valuable time points. When you touch
the bomb, you will be given the final screen which shows your character
standing by the time bomb.

The fuse of the bomb, shown as an inverse 'Z', moves inside the bomb from
top to bottom. All you have to do is to shoot at the fuse, using the '8'
key, to render it harmless. Don't worry if you don't manage to defuse the
bomb with your first shot as you'll have three goes. Should you want to
give yourself a better chance of hitting the fuse, you could always change
the number '3' in line 9126.

Once you have defused the bomb, you will be presented with your own score
and the current highest score. But don't hang around; remember that time is
of the essence!


**********************************************************************


HELL'S ANGELS
by Akram Malik
from ZX Computing Dec'83/Jan'84

[NOTE: This program requires Issue 2 emulation because of the way]
[it uses IN for scanning the keyboard.                      JimG ]

Can you save the Earth from impending doom in this program
written for us by Akram Malik of Eltham.


In this program, it is your unenviable task to once again
defend the Earth from the alien hordes - this time in the
shape of angels from Hell and then by a number of demons.

The first wave of aliens are called Hell's Angels and are
capable of great destruction should they be allowed to pass
through your defences. Indeed, should you let more than five
of the angels past, you will find that your mission has
failed and Earth will be destroyed. You must shoot 20 of
these angelic upstarts before you get through to the next
stage of the game where you will meet the fully fledged
demons.


Demonic clanger

The demons are, of course, much more powerful than the
Hell's angels and your task is once again to stop them
piercing your defences. However, this time, if you only let
two through then Earth will be considered destroyed. Still,
if you've managed to get through to this stage of the game
you will no doubt have your alien-shooting eye targeted in
on the aliens. If you manage to shoot 20 of the demons out
of the sky, you can congratulate yourself on having saved
the Earth.

Care must be taken to make sure your aim is true before you
shoot at the aliens as you have 100 laser points to destroy
the invasion force. Obviously, if the Earth is destroyed the
game ends with a message informing you of the sad fate of
human-kind.

The controls used in the game are keys, '1' to '5' to move
left, keys '6' to '0' to move right and any key on the
bottom row to fire your laser.


--
Another Fine Product transcribed by:
Jim Grimwood, Weardale, England
--


**********************************************************************


HORSE RACE
----------
Saddle up your Spectrum for this galloping good program from N.C.Pearson.

This program allows a five furlong race to be held with five horses
competing. You are first given the choice of which of the five horses you
wish to be yours and then you are asked to type in your name as a sign of
ownership. The horses, numbered one to five, are presented to you and you
must enter an owner's name for each. If you only want to name an owner for
one horse, then for each anonymous horse owner press the 'x' key and then
ENTER.

When a horse has won, you will be informed of the winner and the person who
chose it; the program will also tell you if the horse had no backer. Should
you wish to change the names of the horses to ones of your own, this can be
done easily by altering the PRINT AT statements in lines 610 to 650.

Watch out for fences!


**********************************************************************


NUCLEAR ATTACK
by Matthew Homer
from ZX Computing Dec'83/Jan'84

[NOTE: This program requires Issue 2 emulation because of the way]
[it uses IN for scanning the keyboard.                      JimG ]

Defend the cities from the enemy missiles in this fabulous
Spectrum simulation from Matthew Homer of Port Headland,
Australia.


In this program, you are in charge of a nuclear missile site
which has been constructed to defend six cities from sudden
nuclear attack. And your job, thankless as usual, is to
stave off the missiles so that the cities can be evacuated.

There are six cities in all to save, and from your nuclear
base you have 30 surface-to-air missiles which you can
launch at the on-coming missiles. However, watch out for
your base because if that gets hit, you will lose all of
your missiles.

You fire a missile by manoeuvring an 'X' around the screen
and hitting the fire button, All the keys required to move
the 'X' in any one of eight directions and fire your
missiles are given as part of the instruction routine within
the program.


Point to point

For each missile you shoot out of the sky, you will receive
1,000 points, and if you manage to save any of your cities
after a barrage of missiles you receive bonus points. Once
you surpass 50,000 and 100,000 points, you get a bonus city
to save.

Your only other real worry is that every now and then an
aeroplane will move across the screen and drop a number of
missiles. However, the 'plane is considerably lower than the
enemy missiles usually start at, so it's best to take out
the 'plane just as soon as you can - especially, before it
unloads its deadly cargo!

One other small tip, but one I'm sure you'll soon get the
hang of, is that it's best to aim your missiles a little
before the enemy missiles, so that they actually run into
the explosion.

Okay, have some fun - but remember, anything has got to be
more fun than the real thing!


Line by line

Here follows a breakdown of the program, Nuclear attack, so
that you should gain more of an insight into its intricacies:

Lines 2-62      Initialisation of the score and variables.
Lines 65-95     Determines the course and targeting of
                the new missiles.
Lines 100-995	Scan the keyboard and determine the
                movement of the missiles.
Lines 1000-2060	Control the movement of the sites and determine if
                the defence missiles are to be fired.
Lines 2100-2209 Decrease the rate of the barrage against the cities,
                determine whether the attack has finished or if all
                the cities have been destroyed.
Lines 2210-2438 Form the scoreboard routine.
Lines 2500-2760 Form the bonus points routine.
Lines 3000-3170 Control the bomber and initialise the
                bomber's missiles.
Lines 4000-4130 Contain all the user-defined graphics.
Lines 5000-5200 Form explosions on the screen when missiles or bombers
                are hit by the defence's missiles.
Lines 6000-6049 Control the firing of the defending missiles.
Lines 6050-6078 Contain the instructions for the game.
Lines 6080-6120 The initial display which you see when
                the program is first run.
Lines 6130-6310 Control the setting-up of the screen and
                the setting-up of the missile sites when
                stocks are not all used up.
Lines 6330-6900 Control the drawing of the missile
                storage on the bottom of the screen.
Lines 7000-7150 Control the explosions of the defence's missiles.
Lines 7200-7620 Form the nuclear explosions and the mushroom cloud.
Lines 7985-8200 Eliminate the missile trails and/or the cities'
                locations, ensuring that any new missiles will not
                aim at locations of already destroyed cities; these
                lines also calculate the loss of missiles if the
                defence site is hit.
Line 9005       The saving routine. To save the program on tape,
                simply type 'GOTO 9005'.


Typing tips

The following lines are ones which can be left out or
replaced should you wish to type in the program in stages.
Obviously, REM statements can be left out, but for your own
piece of mind you may well be better off inserting a few
here and there to give you an idea of how the program
operates. Anyway, here are the areas of the program you can
modify:

Lines 2210-2438 This routine forms the scoreboard, but could always
                be replaced with a STOP statement. The scoreboard
                routine could also be used in other programs,
                using SS as the score variable.
Lines 6080-6120 The display when the program is first run.
Lines 7268-7620 The nuclear explosion and mushroom cloud. These lines
                may be replaced by the far less spectacular routine
                shown in Fig.1. [see file "Fig.1" in NUCLEAR.TAP JimG]


--
Another Fine Product transcribed by:
Jim Grimwood, Weardale, England
--


**********************************************************************


ON THE SIDE
by James Southgate
from ZX Computing Dec'83/Jan'84

A short utility allowing you to print sideways, courtesy of
James Southgate of Colchester.


This program will run on a 16K or 48K ZX Spectrum with a
printer attached. The listing first creates the user-defined
characters, turns them sideways, enlarges them and then
prints them up on the printer. You can then print up
messages many metres long, occupying the full width of the
printer paper.


Best of three

The program is divided into three sections. The first
section, comprising lines 150 to 300, reads the decimal
numbers which make up the user-defined characters and
converts them into binary numbers. Lines 170 to 190 check
that the message entered contains the user- defined graphics
characters. The second section, lines 320 to 410, turn the
characters on their side.

The final section, contained in lines 430 to 500, takes the
sideways characters, enlarges them and sends them to the
printer.

This version of the program only accepts user-defined
characters of A to U, plus the facility of being able to use
spaces. Should you wish to use the remaining letters of the
alphabet or symbols of your own choice, then you will have
to define them yourself - see chapter 14 of the Sinclair
Spectrum manual - and then load this program. You should,
however, be able to construct a wide variety of messages
with the letters already defined in the program given.


In use

To use the program, enter it, SAVE it to tape and then RUN
it. Now input your message - your message may be of any
length, but remember that as well as taking time to print
out, you will also use a lot of printer paper so make sure
your message is spelt correctly! Characters may be used more
than once within the same message. Once the printout has
been completed, RUN the program again and enter the next
message you wish to be printed out.

Th listing provided shows the complete program. However, if
you wish to utilise parts of the program for use in other
listings, lines 150 to 300 could be modified to form a
decimal to binary converter program. Also, lines 100 to 410
could be used to turn user-defined characters sideways,
retaining their original size, for inclusion in your own
programs to improve presentation in some way.

To find the binary numbers which make up the sideways
characters, you can delete lines 430 to 500 and add the
lines shown in Fig.1.


= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Fig.1

 430 FOR n=1 TO 8: PRINT "BIN ";e$(n): NEXT n
 440 PRINT: NEXT p
 450 STOP

If you want to find the binary numbers which make up the
sideways characters, delete lines 430 to 500 and insert the
above.


--
Another Fine Product transcribed by:
Jim Grimwood, Weardale, England
--


**********************************************************************


SLATE
-----
David Bellchambers of Fareham presents an unexpanded ZX80 version
of the popular puzzle game.


Slate is a computer version of that once popular puzzle in which you had to
move fifteen tiles around in a four by four matrix until they were all in the
correct order. One of the posiitions in the matrix is not occupied by a
tile, and this space is used to move the tiles by sliding any one of the four
adjacent tiles into this space. This produces another space where the tile
used to be.

When run, the program displays a grid of randomly mixed letters 'A' to '0',
but jumbled up. One of the locations contains a space. To move a tile into
this space, simply enter the letter you wish to move to the prompt, "WHICH
LETTER?". This piece will then be moved. To complete the puzzle, the top line
must read 'ABCD'; the second line must read 'EFGH'; the third line must read
'IJKL'; and the bottom line must read 'MNO'; with the space in the bottom
right-hand corner. The computer checks to see if you have finished after
every move, and keeps track of yow current score and also the high-score. The
idea is to complete the puzzle in the least number of moves. If you try to
move a piece that is not on the board (if you type 'Z', for instance) you will
forfeit the game. The only other possible way of cheating is if you try to
move a letter that is not directly adjacent to the space at right-angles.

Line by line

Here follows a brief description of the program functions, lire by line:


Lines 1-3       Initialisation.
Line 4          Reset score.
Lines 5-8       Reset the board (all pieces in their winning positions).
Lines 9-14      Scramble up the board.
Lines 15-31     Display the board.
Lines 32-34     Have you finished the puzzle yet?
Lines 35-39     Yes, you have! Well done! Print score and hi-score.
Lines 40-42     Want another go?
Line 43         I guess not!!
Lines 44-45     Which letter do you want to move?
Line 46         Is it a valid piece?
Lines 47-49     No, it wasn't!
Lines 50-51     Find the letter in the grid.
Lines 52-53     Find the space in the grid.
Line 54         Is it a legal move?
Lines 55-56     Move the letter and the space around.
Line 57         Add one to the current score.
Line 58         Go back and display the new grid situation.


**********************************************************************


SMAUG'S LAIR
by Norman Brooks
from ZX Computing Dec'83/Jan'84

Can you destroy the dragon's lair in this program written
for us by Norman Brooks of Kent.


You are the Gunner Captain on a mission to destroy the
dragon's castle.

You have five cannon and 12 cannonballs at your disposal ...
but ... beware ... the sound of your guns will wake the
dragon. When he flies, time stands still and although he has
poor eyesight, he will breathe fire and try to destroy all
of your weapons. If he does ... run for your life!!!

To dislodge the most bricks, hit the castle as high as you
can by carefully choosing how much gunpowder to use and what
angle to set the cannon at. If 6,000 bricks fall then the
castle is in ruins and Smaug must seek a new wormhole. Good
luck!!!


Cannon and ball

When you first RUN this program you are asked if you require
instructions in the usual way. If you reply 'yes' (Y), you
are given a brief introduction to the program to get the
adrenalin up.

Then, the 'Battle Status' screen is shown and is returned to
throughout the game. You are shown the current scores, and
the castle will be demolished in proportion to the number of
bricks you have knocked out. At the top of the screen, you
see how far the computer has set the cannon from the castle
ready for your first shot (this is random between 500 and
2,300 metres). You are then invited to enter the size of the
gunpowder charge (25 to 35lbs) and what angle of elevation
you wish the cannon to be set to (0 to 89 degrees).

The more gunpowder you use, the faster the cannonball leaves
the cannon and hence the further the cannonball will fly.
Similarly, the angle of elevation affects the range. (I have
used Newton's formulae for the motion of projectiles from my
old 'A' level maths notes for this part of the program and
have consulted books on cannons for details of range and
charge to make the scientific aspects of the program as
accurate as possible).

A graphical display of the cannon being adjusted to the
angle chosen is shown next. (I make no apology for the
slowness of this part of the program as I wanted to
introduce the concept of 'angles' to my young family. Adding
lines 2205 FAST and 2910 SLOW will alleviate any boredom.)


Into battle

The main action comes on the 'Battlefield' screen which
follows on from the previous screen automatically. The
cannon is displayed at the computer-selected distance from
the castle and the cannonball is fired. Every fifth plot of
the cannonball, the dragon flies from the castle. Unbeknown
to the player, it has chosen at random whether to attack the
cannon or the cannonball. If the dragon chooses the cannon
there is a 50% chance of a hit. If the cannonball is
selected, then the odds of a hit are only 20%.

Should the cannonball reach its target (the castle is 400
metres high) then the Y co-ordinate of the cannonball plot
determines how many bricks are knocked out. (See program
lines 1071 to 1079.) When in flight, the dragon may obscure
the ball but it will always re-appear in the same position
after the dragon has passed - unless, of course, it burns
the cannon- ball to a cinder! You are finally asked it you
wish to continue the game. Answering 'no' (N), puts you in
retreat and the dragon wins.

At the end of the game (either with 6,000 bricks out of the
castle or no cannon / cannonballs left) there is an
appropriate 'picture show' to watch which I leave you to
discover.

The odds slightly favour the Gunner Captain once an
appreciation of charge and angle has been gained. Bear in
mind that an angle of 45 degrees will send the ball the
maximum distance for any choice of charge (set at which, the
castle is seldom damaged, incidentally) and an angle of say
60 degrees will result in the same final range as that of 30
degrees, ie. each 15 degrees either side of 45 degrees.
However, the castle presents a smaller target when dropped
on from above rather than hit broadside on, so for a more
difficult game try always choosing angles over 45 degrees. I
have yet to win doing this!


Variables on a theme

Listed  here  are  the  main variables used throughout the game:

BRIC	The number of bricks knocked out of the castle
	(6,000 bricks knocked out will win the game for you).
BALL	The number of cannonballs remaining (zero cannon-
	balls left will result in you losing the game).
GUNS	The number of cannon you have remaining (zero cannon
	left will result in you losing the game).
ROUT	The 'I give up' code.
M	The distance between the cannon and the castle.
N	The random number used to generate the variable, M.
G	If G is equal to one, the dragon attacks the cannonball only.
X	and Y The co-ordinates of the cannonball.
A	The input for the angle of the cannon in radians.
B	The angle converted into radians.
U	The input for the amount (in lbs) of gunpowder used.

Other variables are used but they only exist to aid the
running of the program.


--
Another Fine Product transcribed by:
Jim Grimwood, Weardale, England
--


**********************************************************************


SEASON'S GREETING
-----------------
All the season's greetings from Clyde Bish of Exeter.

Have you thought of sending someone a cassette-based Christmas card this
year? If you have, you may like to have a look at one I will be sending to
someone this year! The program makes use of the Spectrum's high resolution
graphics and user-defined graphics. You'll also find that colour and the
much-maligned BEEP function have been extensively utilised.

Paging Santa

There are four "pages" to this card - these start at lines 3, 50, 200 and 399
in Program 2.

The first screen gives a seasonal greeting in large letters (courtesy of
Uncle Sir Clive's Horizon tape) whilst the PAPER colour scrolls. A line of
bells then appears between the message, and rings out a Christmas chime.

The program then takes on a more serious note as the screen changes to show
the stable at Bethlehem, with a starry sky above. The song "O Little Town OF
Bethlehem" can be heard while the stars above twinkle. The interior of the
stable can be seen to brighten as the birth of the baby Jesus takes place,
and the Star of Bethlehem appears over the stable. Star beams appear to reach
down from the star and shimmer as the computer launches into a rendition of
"Away In A Manger".

The third screen shows a Christmas tree with candles and a star nestled
within its branches. The candles are then lit and the star begins flashing,
and "We Wish You A Merry Christmas" is played. Following a series of messages
in which you are invited to guess who is about to come on-screen, complete
with reindeer and sleigh comes Santa with messages of peace and goodwill.

The final screen gives the message "God Bless" bordered by holly leaves and
berries, to the accompaniment of the hymn "Silent Night".

Greetings ...

To use the program, first load the "walls" program from the Horizons tape,
then enter NEW. Don't worry, you only want the machine code routine - and
that's safe above RAMTOP. Now, type in Program 1, RUN it and enter the
numbers in Fig.1, reading across the lines. Enter NEW again, and type in
Program 2.

Here are some notes to help you type in the program:

1 - The capital letters within the quotes in lines 38, 55, 80, 200, 260, and
at the beginning of lien 305, are the user-defined graphics and should  be
entered in graphics mode.

2 - In line 400, the variables x$ and y$ have to be entered using colour
control characters. Type in LET x$=" (followed by the following sequence of
key presses - don't enter the '/' characters, as these have only been
included to space the different key presses) ".

"E Mode Caps Shift 4 / Graphics Mode I / E Mode Caps Shift 2 / Graphics Mode
J / E Mode Caps Shift 4 / Graphics Mode H / E Mode Caps Shift 0"

Similarly, after LET y$=" use the above sequence, but substitute Graphics
Mode H for Graphics Mode I and Graphics Mode I fro Graphics Mode H.

3 - Line 450 goes to itself to prevent an error message appearing. You could
replace this with STOP, or RUN if you wanted the program to keep repeating.

To save the program on tape, use the command:

SAVE "xmas" LINE 2: SAVE "xg" CODE USR "a",168: SAVE "xc" CODE 32256,300

When loaded the program auto-runs, firstly loading in the user-defined
graphics bytes and the machine code before starting the display.

As written the program occupies almost all of the available space in a 16K
Spectrum and the program takes about three and a half minutes to RUN.

If you don't like the messages or prefer other tunes in the program, then
change them! I have made the program as general as possible, but if you want
to change the messages to make them more personal, then just remember you can
only have eight letters maximum for each word.

Happy Christmas, everybody.


**********************************************************************



U-BOAT (1K ZX81)
by Neil Stevens
from ZX Computing (December 1983/January 1984), page 53

U-boat is a 1K ZX81 game, written partly in machine code to speed up the
game and save memory. The machine code's role in the listing is to print
the initial screen, scroll the top line and to re-print a boat on the top
line.

The program displays an enemy vessel chugging merrily away across the top
of the screen. You are positioned in your submarine at the bottom of the
screen. To destroy the enemy craft, you must press any key (except for the
Space key or the Shift key) to launch your torpedoes.


WILD WEST SHOOT-OUT
-------------------
Holster up and get ready to play this Spectrum version of the arcade game
from R.Page of Liverpool.

Based on the popular arcade game, this program is designed to be played by
two people. Both players have control of a cowboy character, each equipped
with a handgun.

Each character is placed to the left and right of the screen display. A road
runs down the middle of the screen, on which the occasional wagon will roll
into the distance. Beside the road are a number of cacti which, along with
the moving wagon, provide cover for the two cowboy characters as they stalk
their opposition, trying to get a shot at each other.

Go for your guns

Each cowboy character can be manipulated around their own half of the screen
through the four direction keys. There is also a key to fire your gun, which
you press when you think you have a clear view of the other cowboy. All
instructions are provided on the screen as part of the program.

You will find, however, that your shots will not travel the entire width of
the screen, so there's no use you hanging back hoping the other cowboy will
come out into the open and give you a clear shot. This is no game for cowards!

As I have said, your character will not cross the road which bisects the
screen display. However, should you wish to change this, allowing your
characters to wander all over the screen, you can always try experimenting
with the values of A, B, C and D in lines 620, 625 and 710.

To win the game, you must get five clear shots at your opponent. Once the
game is over, the winner's name will be displayed along with the option to
have another game.

Line by line

The program is structured in the following way:

Lines 10-50      Fire a bullet and detect if one of the characters has been hit.
Lines 90-200     Provide the instructions for the game.
Lines 530-600    Set up the screen display.
Lines 610-760    Detect the winner and also contain the main routine for the game.
Lines 770-830    Set up the user-defined graphics and variables used in the game.


**********************************************************************