POPULAR COMPUTING WEEKLY, January 1983
======================================


DIGITAL CLOCK
By Bill Longley
on Spectrum

The program is written entirely in machine code, and thus it has a far better
accuracy than any Basic program could manage.

Enter the program as shown. Line one should consist of 292 letters or
characters, but adding more than this will not affect the running of the
program. However, any fewer will cause a crash. Run the program once. The
command:

	RANDOMIZE USR 23776

will start the clock at 00:00:00, and it will continue until you Break the
program. If you wish to start the program with a different time, Poke the
appropriate digits into the following locations:

23760	Tens of hours. (Remember, this is a 24-hour clock.)
23761	Hours.
23762	Tens of minutes.
23763	Minutes.
23764	Tens of seconds.
23765	Seconds.

Poking these locations with one, zero, three, zero, four and five, for
example, would start the clock at 10:30:45.

If you want to change to a 12-hour clock, enter:

	POKE 23850,1: POKE 24040,1

This will almost give a true 12-hour clock, but instead of 12 o'clock you
will get zero o'clock. Otherwise the clock runs normally.


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


GHOST CHASE
By Tim Vincent & Gabriel Edwards
on Spectrum

This program has been devised for the 16K Spectrum. Although apparently
simple to play, a degree of skill is required. We have built in a skill
factor so that the player can continually upgrade his game. 1000 is the
easiest, 0 the most difficult.

The player is represented by a cross; he is pursued by a ghost (graphics
shifted 6). The normal cursor keys move the cross. The ghost moves at the
same speed across the screen and a little slower up and down. It has the
ability to cut corners so capture is inevitable. You count one point for each
move prior to capture, plus ten points if the power pill (inverse %), which
may appear in random positions, is eaten before the game ends. A score of 50
or over is considered good and is rewarded.

[Spelling mistakes in program are those of the original authors]


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


GRID PRINTING FOR GRAPHICS
by Andrew Cleminson

Below is a little program for all those Spectrum owners with printers
who do not know what to do with them. The routine prints a grid for
defining user-defined graphics.


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


LUNAR RESCUE (aka. Space Rescue)
by Andrew Astrand
from Popular Computing Weekly, 20.Jan.1983

The game starts with the mother ship moving back and forth on top of a band
of asteroids. Your objective is to manoeuvre your rocket through the
asteroids to land safely on the launch pad and rescue the survivors (six).

To launch your ship from the mother ship press "space bar". Press zero to
turn on the boosters and a 1 to turn them off. Press 5 to go left and 8 to go
right.

You may vaporise an asteroid by igniting your booster rockets, but only if
you are directly over it; this also slows your rockets descent.

User-defined graphics and symbols
  20    A+B+C,E,E
  24    (CAP SHIFT 4)+3+7,(CAP SHIFT 5)+(CAP SHIFT 8)+5
  30    SPC+F+H+H+H+G+SPC,SPC+invG,A+B+C,invF
  65    D
 140    E
 170    E
 230    D
2000    invA+B+C,invD

After all six survivors are rescued you get a bonus and an extra life and the
next screen increases in difficulty.


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


Popular Computing Weekly 06/01/1983

Pages 7 and 8

Missile Command

A new game for the 16K Spectrum by Chris Wood

After a visit down my local arcade for ideas for games for my ZX Spectrum, I
decided that Missile Command would be fast enough in basic. Below is an outline
of the program.

Lines

10 to 23    Set colours, and print instructions. Line 20 makes the cursor into
            the word Continue to look neater.

24 to 38    Creates the user definable graphics. Run when you get this far so
            that you know which ones to put in lines later.

40 to 85    Defines the remaining variables and sets up the screen. Line 47
            enables you to print on line 22.

90 to 140   The main game routine. Line 130 sends the program to the subroutine
            at 200 to check if a missile has been shot down if the 1 (one) key
            has been pressed and there is still some ammunition.

150     Scan the Attributes and the cities on line 20 to see if they have been
        hit by missiles.

170         Sends the program to the enemy satellites routine at 400.

171 to 194  Works out the bonus for the remaining ammunition and cities
            according to the wave attack number.

200     Checks to see if a missile has been correctly hit; if it has it
        decreases the number of missiles by one and to ensure the correct
        missile is stopped the position of the last missile replaces the destroyed
        one. A mushroom cloud is printed at the end of the missile trace.

400 to 480  This is in effect a game on its own, it has had to be written like
            this to make it very fast and difficult, and to avoid clutter by
            putting it earlier, It is fast because the bonus is very large and
            there would be no point in making it too easy.

Full instructions for playing are included in the program.


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


SONATA
by Chi-Yeung Choy
from Popular Computing Weekly, 20.Jan.1983

It seems to me that there is an absence of music programs being published,
probably due to lack of musical knowledge on the part of the programmers. I
have therefore written this program for the ZX Spectrum which, when RUN, will
play the first movement of Mozart's Sonata in C Major. It also demonstrates
how the BEEP command can be used effectively even with the limited sound
producing capabilities of the Spectrum.

Program notes:
  30 to 230   Subroutines
 240 to 520   DATA statements containing pitch of notes
1000          Set up variables for note duration
1010 to 2070  Main program consisting of FOR-NEXT loops

I have placed the subroutines near the beginning in order to speed up the
running of the program. For best results it is handy to have a sound
amplifier. Take care when entering the DATA statements, otherwise the results
may be disastrous.


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

