You are on page 1of 92

W
'l/ll/i
'I/In
IIIIIL
h, !
Wllll/i w
Wlm
Wall I III, i) !

An Argus Specialist Publication OCTOBER 1986 £1.50

FOR ALL SINCLAIR USERS

J T I
mm
•L
«

\ W IL
r

SPECTRUM'" " " f


GRANDMASTERS \
Colossus 4 V
Psi Chess

SPECTRUM 128 PLUS 2


Reviewed inside
B U G FREE P R O G R A M M I N G
by Hewson's Steve Turner

Dynamite Dan II •
Stainless Steel • Mindstone

WIN! • • • • • • >
Dan Dare • Colossus 4 Chess
Magnum Joystick*
u
FEATURES COMPETITIONS
THE PROFESSIONAL TOUCH: programming advice from DAN DARE: books and games to be won. 9
Steve Turner. 20

MASTERTRONIC: name the game. 41


RANDOM MEMORY: memory saving tips from Clyde
Blsh. 28
COLOSSUS: become a Grandmaster and win CDS'
new Chess game. 60
READER SURVEY: reveal your Innermost thoughts on ZX
and win a free suh. 45

COLOSSUS CREATOR: Interview with programmer


Martin Bryant. 50

TRAILBLAZING W I T H GREMLIN: ZX visits the Sheffield


based software house. 58

MACHINE CODE CALCULATOR: secrets of the


Spectrum's ROM. 62

ART STUDIO ARTIST: goes pop 80

REGULARS
a first look at the new Amstrad/Slnclalr
machine.

Readers' letters,

problem page,
Pil Chen from the Edge. Chen feature
begin* on page 43.
the new Media Manager reviewed.

news from the States,


SOFTWARE REVIEWS
SPECTRUf Xarq (17), Stainless Steel , Dynamite
Dan II ), Operation Omega 57), Mlndstone ,
text handling for the
short reviews s e c t i o n . . .

the Bogglt has arrived from CRL.

PROGRAMMING PROJECTS

S
SHORTCUTS: more readers' routines. 26

DISCOVERY TRICKS: some hints on using the Discovery


disc drive. 68


BMHtNKKCY ID H M B J VENTURESPEAK: Alan Davis 1 adventure language
•vcom 1 series. 51
1
PG TPKEN!COMPUTER DXSPBLED!! MACRO LIFE: a new version of the game of Life. 54

GHOST CHASER: a QL arcade game. 32

Can you name thlt game? (41). SPECTRUM/QL LINK UP: communications between the
two machines. 72

3 ZX Computing Monthly • October 1986


IIIIJ

Getting
technical
Spectrum 128+2
£149 (Inc VAT)

Memory
RAM 128 Kbytes
ROM 32 Kbytes

CPU
Z80 running at 3.54690 Mz

Screen
256 x 192 Pixel resolution
24 x 32 colour resolution
8 colours foreground. 8 colours
background plus Intensity and
flash settings
Independently controllable
border
Sound
Three voice tone and/or noise
with 16 envelope setting. One
voice CPU generated. O)utput
i
via TV or audio socket
Spectrum 128+2 launched at PCW Shew Keyboard
58 keys full travel 'Qwerty'
Amstrad have made their non-standard ports accepting has been adhered to is pricing. keyboard
first move as new guardians ot only new Sinclair SJS1 Joysticks. The 128+2 comes with a power
the Sinclair name — an This Is a matching colour supply, arlel lead and manual Storage
Impressive redesign of the coordinated joystick which wilt for £149 (Inc VAT). That's £30 less Integral datacoder. Volatile
Spectrum 128 incorporating be available either bundled than the cost of the mark 1 128 silicon disc
features that Spectrum owners with the machine or separately when It was launched.
have been calling for ever at £14.99. Joysticks that are not One quibble with the first 128 Firmware
since Its introduction. compatible with the porl can was the discovery lhat some 48K 48K Spectrum Basic (compata-
The 'black box' look of still be attached via Interlace In software would not run on it. billty mode)
previous Speclrums has gone, the time honoured fashion. Amsirad hope to improve this 128K e n h a n c e d Spectrum
replaced by a more robust Despite the emphasis on situation by badglna Spectrum basic with full screen editor and
looking grey/green casing games playing there are still software with a "Sinclair Quality men driven command system
reminiscent of the Amsirad CPC many options open for other Control" seal of approval which Calculator
series. uses with ports provided for guarantees lhat the software Single-key program loading
The 'glued on tape recorder' keypad, serial printer and MIDI. will be compatible with the system
promised by Alan Sugar has The Plus 2 is compatible wilh 128+2.
been included In the form of an Interlace one and mlcrodrlves Amstrad have shrewdly Interfaces
Integral datacorder so that and other peripherals. redesigned the 128 in the UPH PAL TV port
fiddling with volume controls on So those Spectrum owners Amstrad Image and with a Serial printer port
cassette players is now a thing who are looking for a computer decent keyboard and built in RGB monitor port
of the past. with more possibilites than tape recorder now added and Keypad port
The flat keyboard, bane of games playing will not be a highly competetive price tag Midi port (out only)
many a Spectrum programmer disappointed with the it seems that Amstrad under the 2 joystick ports
has disappeared, to be capabilities ol Ihe Plus 2. guise of Sinclair have another Audio Out port
replaced by a far more pro- Internally there are no real success story on their hands. Expansion 10 port (full Z80 bus)
fessional looking 58 key full changes from the original 128.
travel type writer style 'Qwerty the redesign concentrates on

r
keyboard". Improving ease of use One
In keeping with Amstrad's minor change In the ROM is
vision of the 128+2 as a however apparent from the title
powerful game playing screen, for Sinclair 1982 now Editor: Bryan Ralph
machine two joystick ports reads Amstrad. Assistant Editor Cliff Joseph
have been Included. These are One Sinclair tradition that Consultant Editor: Ray Elder
Advertising Manager John McGarry

Design: Argus Design


Printed by AJabaster Poiimofo and Son* ltd. tovil, Moidttone Kent A.S.P Advertising ond Editorial
Advertisement Copy Controller Lynn CoJlii J No. 1 Golden Square, London W1R 3AB 01-437-0626
Distributed by Atgus Pre« Soles and Distribution lid. 12-18 Raul Street. London EC2A 4JS

ZX Computing Monthly is published on the tourm Friday ol each month Subscription rotes cn be obtained from ZX Subscription* Internet. Times House.
179 The Marlowe* Heme! Hempstead. Herts HP$1 IBB
The contents ol this publication, including all of tic lot designs, plans, drawings and other intellectual property rights herein belong to Argus Specialist
Publications limited All rights conferred by the low ol Copyright and other intellectual property rights and by virtue ol Inlet national copyright conventions
ore specifically reserved to Argus Specialist Publications Limited ond any reproduction requires the prior written consent ol the company
Argus Specialist Publications Limited 1966

4 ZX Computing Monthly • October 1986


m
PCW Show Diary
The software houses In previous years have tried to outdo
each other by stands of sheer size. This year the status standard
had shifted towards height with several of the major
companies opting to go for two-tier stands. From their lofty
positions software house execs coutd peer down into the
crowded hall below where the serious business of hunting
down the latest games was going on. But, as always, a vas!
majority of what was on view wasln an "unfinished preview
state. But here's a taste of things to come In the near (or distant)
future from the software houses.

Act I vision — Spin off games from the Howard the Duck
cartoon strip and the forthcoming David Bowie film Labyrtnthe.
Addictive — President, a new game from Kevin "Football
Manager" Toms.
Arlolasofl — Deactivators an android bomb disposal team
flghl against the clock In a 3D maze of rooms. Hanna Barbara
spin offs - Centurion and The Challenge of The Gobots.
Beyond — With a stand decked out like the bridge of the
Enterprise Beyond were heralding Star Trek (ETA mid October).
Domark — A new Bond game, Live and Let Die.
The Edge — Fairllght II, a full 128K version designed with
the Plus 2 In mind. It will load in two parts for the 48K machine.
Shao-Llns road, an arcade conversion from an original
Konaml martial combat game. Palltron - 3D scl-fl game from
the author of Strangeloop.
Electric Dreams — Scl-fl horror film Aliens will get the
computer game treatment; ETA November. Dauntless, an
arcade conversion by the Ram Jam Corporation; ETA
November. Explorer, an arcade adventure set on a '|ungle
planet'; ETA October. Chameleon, a game based on me
battle between the four elements, 100 scrolling screens and
3D'Pana motion! (whatever that Is); ETA unknown. Big Trouble
In Little China, a film spin oft with mystical martial arts
elements; ETA November. Circus of Fear, described as a
mixture of "adventure, strategy and arcade" — a murder
mystery set under the big top. Other games In the pipeline
are Prodigy and Star Raiders II.
Firebird/Odin — Hypo ball a futuristic sports game and The
Plot an arcade shoot-em-up.
Hewson — Uridium, a great success on the C64 Is being
converted. A high speed space combat game which Cheetah Mach1+
Incorporates impressive aerobatic flying. Flreiord, from the
author of Starquake and Devils Lair, an arcade adventure, set
in a medieval world.
Melbourne House — Hot on the heels of the Spectrum
New at PCW
128+2 have Ihree books due for release. Spectrum Plus TWo Cheetah spotted the need for Joystick adaptors for the
Machine Code for the Absolute Beginner, Spectrum Plus TWo
Programmer's Guide and Spectrum Plus Two ROM new Spectrum 128+2 and the Cheetah Mach1+ (£14.95) and
Disassembly. On the games front there Is Asterlx the Gaul, the 125+ (£8.95) come with standard and 128+2 compatible
Dodgy Geezers (from the writers of Hampstead and
Terromellnos) and Inspector Gadget. connectors. An adaptor for standard to 128+2 Joystick
Ocean/Imagine — The Great Escape, a 3D POW escape compatibility Is available for £2.99.
drama, Parallax, a space shoot-em-up and film spin offs. Top
Gun and Cobra are Just a few of Oceans forthcoming Ram Electronics have launched the Music Machine, a
releases. From Imagine there's Konamfs Golf, a coin op complete add-on music system for £49.95. Also released is
conversion. Mag Max and a new soccer simulation — Super
Soccer. Ramprtnt (£34.95), a Centronics printer Interlace with Joystick
Uridium port and 'instant access' word processing.

Spectrum Games Top Ten


1 (D Jack the Nipper Gremlin
2 (2) Ghosts n Goblins Elite
3 ( ) Atlantic Challenger Game Virgin
4 (4) Green Beret Imagine
5 ( ) The Bogglt CRL
6 ( ) Mission Omega Mlndgames
7 I ) Stainless Steel Mlkrogen
8 (9) Bobby Bearing The Edge
9 ( ) Trivial Pursuit Domark
Design Design
10 ( > Nexor
(Chart supplied by W.H. Smith)

Little change at the top this month as the software houses hold
back their new games for en masse release at the PCW show.
Jack the Nipper remains at No 1 and Ihe longest stayer Green
£
Beref seems to have permanently claimed tne No 4 spot with
its third showing Just inside the lop five.

ZX Computing Monthly • October 1986 5


mil
Bounces And vast quantities of
Bounces posters are on their

Winners
way to: Simon Boan, Oxford-
shire; Keith Moore. Kent; Steven
Smlfh. Bristol: A. Taylor, Notting-
hamshire; Lee Harris Guernsey;
R. Hardman, HMS Seallon; Daryl
The Bounces competition in our Jones, Cardiff; Michael Short.
June issue brought in tots of Banffshire; Graeme Petttt, Suf-
entries (far too many in fact, folk; Tony Evans. Newcastle
since I've now got to spend all upon Tyne; S. Curtis, London;
morning typing out the names John Dixon, Moray; K.E. Hankln,
of the winners), though quite a West Midlands; Guy Davles,
few took liberties with the word- Surrey; Sean Alverson, Essex;
square and started Inventing all Michael Etsy, Tyne and Wear;
sorts of odd words to get the full Lawrence Millea. Liverpool;
number required (have you Philip Yeung, Liverpool; Plerloot
ever heard of a sport called Francis, Belgium; Matthew Aus-
PoioTi. tin. Buckinghamshire; J.P. Smith,
South Yorkshire: Maithew
Anyway the final list ot win- Arnold, Buckinghamshire;

Activision Eidolon
ners is as follows: first prize ot Gerry Galloway. Liverpool; Clin-
£100 worth of sports equipment ton Stallard, Dorset; Stewart
- Brian Birch. Ireland. Catley, Surrey; A.F. Motln, Leeds:
Ten copies of the Bounces Malcolm D Mackenzie, Lan-
cashire; Neil Owen. Prestwood; Eidolon Is the lalest Spectrum olferlng from Activision, and Is
8 ame go out to: Peter Blbby,
heshlre. Gary Bond, County
Antrim: Simon Wright. N.Yorks;
Jason Sheppard, Hampshire;
Peter Davtes, Lancaster; Gary
due to be released In two versions for the 48 and 128K machines
The Eidolon is a machine Invented to allow you to explore
Swlndfehurst; John Pullen, Lon- the depths of your own subconscious Id (whatever happened
Kevin Standing. Maidstone; to good old 'zap the aliens" garnet?). It seems that your mind
John luck, Hertfordshire; Mrs R, don; Ffapapanagiolu Evange-
los, Greece; Joogo Snook. is full of weird creatures that 'lurk' In the depths, but fortunately
Mackie. County Antrim; Bruce the Eidolon can zop these little psychoboogers with fireballs*
Allman, Cheshire: Michael C Devon; Keith Giscombe Worces-
ter; Marcus Beer. Kent; Fergus though it doesn't say what they'll do to Ihe Inside of your head,
Payne Gloucester; Philip Main, Featuring 'ultra-realistic' fractual graphics. Eidolon will let
Peterborough; David Schwitzer, McCabe Sterllngshire; J.E. Red-
tern, London; Graeme Copp- you plumb your own depths for £7.99 (48K) or £9.99 (128K).
London,
Fifty Beyond T shlrls ton David ing, Yorkshire: Sean Rowe,
Hylden, Wellingborough: K. Worthing; Mr K. Acheson. Hert-
Watson. Aldershot; Alan Wood, fordshire; CA. Stamford. North
isle of Wight; Nicholas Whitney. Yorkshire: Michael Edwards,
Brewood; Gary Evans, Dyfed; M. Middlesex; Raphael McCrea-
Watson. Oarwen; DM. Shannon. dle. Maidenhead: Mark Sum-
County Antrim; Michael Hun- mers, Northumberland: R.L.
derthark. Eastbourne; Chris Laldlaw, Birmingham; Uthlr
Geggus. Essex; H. Lyndon, Farn- Yasln, West Yorkshire; Jeremy
borough; Marcus McManus, Johnson, Burford; Roy Salmons,,
County leitrim; JS, Russell, Fare- Gron Canarla; Mark Edwards,
ham; Peter Taswell, Devon; M. County Antrim; K. Galloway,
leston, Blackburn; David Har- Basingstoke; Andrew Chester,
row, Hertfordshire; Allstalr May, Rugby: Martin Alexis* London;
Moray; Q£. Nlcholls, London; Nell Dyer, Dorset; Colin Bayes,
David Nunes. Ohio. USA; Mrs C Worcester: Jorgen Jacobsen,
Welsh. Glasgow; R. Sharp Dun- Denmark; Hugh McAudey, Bel-
dee; Norris McLean. Ayrshire; fast; Mrs LE. Hlgglns, Notting-
Gavin Hunt. Nottingham; David ham; Miss C Chipchase, oxford;
Leak. Essex; T. Scragg. Yorkshire; M. Cunningham-Brown, War-
Colin McChesney, Renfrew, Dar- wickshire; D. Piper, Surrey, Vin-
ren Way. Plymouth, LR. Andrew* cent Teo, Hertford; A.I. Dalli, Lon- Knight Rider
London; Don Smith, Sussex, John don; Neil Peskett, West Sussex;
Alden, Cornwall; K. Devey, Saudi
Arabia: A. Rathbone. Warwick-
shire; Plrotte Eddy. Belgium; N
Atlstalr Mcleod, Scotland;
Craig Roy, Cumbria; Barry Car-
ter. London; Douglas Porrlt. West
Knight Rider—here at last?
Coburn, Lancashire; R White Sussex: Alan Bock. Derbyshire; By now you might know whether or not Ocean have managed
Blackburn; Paul Beedon, Kent; Paul Robinson. Maryland. USA; to get Knight Rider out in time to meet its latest scheduled
Paul Horrldge, Lancashire; A. A. Thomson, Essex; Lelf Korn- release dale which was the end of August. And. as a mark of
Warwick, Tyne and Wear; Nell staedt, France; Alan Thome their confidence Ocean have even supplied some screen shots
Fenwick, Middlesex; Miss E M Cleveland, Timothy Hood I ess, from the game (though we haven't yet seen a review copy) so
Dron, Surrey; Rob Ramshaw, Bedford; Martin Dolphin. Pres- you can have a look at it here and see if you think it was worth
Tyne and Wear; Andrew Moss, ton; Joe Kasa, Hampshire; Jann the wait.
Newbury: Mark Syder, Mersey- Romer, Switzerland; Mark Hen- Also on the way from Ocean this September is Nightmare
side; I. Ackerley, Derby; R. Sand* derson. Glasgow; Philip Chord. Rally, a 'Surreal" driving simulation that doesn't look amazingly
Skipton; T.S. Cox. Widmer End: Bristol; Robert Fogarty, Eire; unlike Knight Rider, and will sell for the same price, at £7.95.
Jason Klllgallon; Glasgow; Paul Stefan Elsinga, Netherlands; Eric
Matthews, Avon; B Morris, Roch- Ferguson, USA; Clyde Soesan,
dale: David Kelley, Stevenage; London; M. Bedford-White,
Adam Mayer. Liss. Birmingham.

By appointment
8th Day Software, formerly purveyors of cheaple adventures
to not as many masses as they would have liked, have gone
upmarket. Their next offering costs a full £6.95 and features
a group of characters known In the press as The Royal Family.
GO With all your favourites, royal rogues and a plot that doesn't
5 bear repeating the game, simply entitled HQH should be In
the shops round about now, or you can contact 8th Day on
051-677-1581. Nightmare Rally

ZX Computing Monthly • October 1986


Going Ape Biggies
Martech are stepping up their release schedule with a Winners
number of new titles due for the autumn. The Spectrum
Lashings of wizard prangs, old
version of W.A.R. Is due In September, to be followed In chaps and chocks away type
October by Cosmic Shock Absorber and a new martial arts banter were received in our
Biggies caption contest. But the
simulation called Uchi Mala based on Judo. winner of the Biggies Goodies
Then in November, Tarzan will be swinging along In a bag of a copy of the game.
Biggies T-shirl, scarf, soundtrack
game in which the guy with the monkey has to rescue Jane album, badge and poster is A.
from the natives who have kidnapped her and hidden her Hulmes of Altringham in
Cheshire for Biggies comment
in the depths of the jungle (sounds like it's going to offend to the threatening German;
the sex and racial equality lobbies, but then there's nothing "Okay, okay, three free flying
lessons". Twenty five valiant
wrong with a little controversial publicity every now and runners up carry off a copy of
the game, T-shirt and badge.
then).
They are Geol Dagger,
All Mar-tech's autumn releases are priced at £8.95, apart Blackburn; Chris Harris, Sutton
from W.A.R. at £7.95. Coldlield; N. Owen, Prestwood;
Tony Raven, Llanelli; Andrew
James, Tyne and Wear; Charles
James. Telford; J. Clayton,
More Chess Altringham; BJ Kamphuis,
Holland; P. Newnham, Weslon

Callously disregarding our special Chess feature this month Who wants to Super Mare; P. Serbert, Harrow-
gate; Barry Carter, London E2;
Jorgen Jacobsen, Denmark; C
Alllgata have decided to launch their new Cyrus II Chess
program next month. Available in version for the 48K live forever? Parkin, Raylelgh; Joseph Kasa,
Basingstoke; Gerry Galloway.
If you do. then Mirrorsoft's new Liverpool: Christopher Smith.
machines and a special 3D version for the 128, Cyrus II is Sushey Healh; Lars Stkholm,
game. Zythum is the game for
trumpeted as t h e best Chess program for the Sinclair micros'. you. If you can make it across Denmark: S. Brodig, Hull; Gary
the four territories full of pits, Bond. Carricklergus; Rob Ram-'
Featuring a variety of options (which we'll look at at a later shaw. Tynemouth; Alistair May,
marshes, quicksand, landmines
date) both versions of the game will be available in and the like then you just might Moray; Geof Hill. Belfast; P Page
have a chance ol gaining the Wirraf; Ian Hope. Walsall; Chris-
September for £11.95. toph Pulhall, West Germany.
mystical elixir which will grant
you eternal lile (which may be
Ihe only way you'll ever get to
Branching
Madness by Moonlight see Knight Rider released). Of
course eternal life doesn't come
for nothing so you'll have to out ...
Arriving just microseconds loo lale to be reviewed this issue. stump up £7.95 for the privilege
Moonlight Madness arrived Irom Bubble Bus Soflware. Written . . . with two new labels are
by John Cain, author oi Booty — the lirsl ever decent budgel Arlolasoft. Until recently
game — this is an arcade adventure in which you have to seek they've been mainly reliant

Citizen
out the nineteen pills hidden in a dark old mansion. upon American C64 games
We've reproduced the cassette artwork a) because it's got for their releases over here,
but now Ariolasoft intend to
o nice picture on It. and b) because it's the lirsi game weve
seen thai has Ihe new Amslrad/Sinclair quality control sticker. Printer expand with two new
labels. Reaktor, which will
Winner
What with the release of the new Spectrum 128 and Ihe quality
control getting started il looks as il Amstrad have finally gotten concentrate on arcade and
their strategy lor Sinclair worked oul {we hope) . , . action gamos, gets under
way with Deactivators. The
The winner of Ihe Citizen LSP-10 39 Steps label will focus on
printer Is E.B. Hepburn Irom adventure and strategy
Dalgethy Bay in Fife, Scotland games, starting with They
who correclly answered the
questions on Ihe ISPIO's print
? ole A Million In which you
have to plan the perfect
speed in NU3 mode (25CPS), the crime. Both new titles will
size of Ihe printer's buffer (4K) cost £8.95 for the Spectrum
and the life expectancy version.
(100,000,000 characters).

Room 10
CRL look like they'll be having a busy autumn starting with
the September release of Room 10. Sounding a bit like a
mixture of Ballblazer and squash, Olydlng Is a futuristic sport
played in Room 10 of the Oalcorp Leisure Complex, and
incorporates a special split-screen display.
Then In October you can expect Cyborg, the first part of
a trilogy which carries on the theme of the Tau Cetl game,
and this will be followed by tho arrival of Dracula. This was
originally planned as a simple text adventure, but according
to a CRL spokeswoman the game "has become quite
sophisticated, and now has 3D graphics".
Dracula and Room 10 will be available for £7.95 while
Cyborg will cost £8.95.
Computer Music at it's best..
O ^ 4
i l i n n i
For ZX SPECTRUM - Compatible with 48/128k/+2

musicifl'
1
• MIDI DELAY FACILITY
• MIDI IN/OUT/THROUGH
• S T O R E S T H O U S A N D S OF N O T E S
CONTROL ANY MIDI COMPATIBLE I N S T R U M E N T
F O R W A R D AND R E V E R S E S E O U E N C E PLAYBACK
F U L L MIDI COMPATIBLE A S S I G N M E N T S
* V
R E A L OR S T E P TIME I N P U T FROM I N S T R U M E N T OR C O M P U T E R
S U I T A B L E FOR HOME OR P R O F E S S I O N A L U S E
EXCEPTIONAL VALUE

For ZX SPECTRUM - Compatible with 48/128k/ +2

SAMPLE ANY SOUND • SYNC FACILITY • MIXING OF S A M P L E S


S U I T A B L E FOR HOME OR PROFESSIONAL U S E • S I M P L E T O U S E
R E P L A Y AT VARIOUS P I T C H E S F O R W A R D S OR BACKWARDS
P O W E R F U L EDITING FACILITY • ECHO. R E V E R B ETC.
S A M P L E S O U N D E F F E C T S INCLUDED • C O M P L E T E S Y S T E M
EACH S A M P L E S O U N D S T O R E D AS F I L E S IN MEMORY
BANDWIDTH-AN AMAZING 17 5KHz
O U T P U T T H R O U G H M O S T HI FI S • MICRODRIVE COMPATIBLE
GRAPHICS S A M P L E DISPLAY • PLAYBACK FROM KEYBOARD
R E A L T I M E PITCH HARMONISER

Digital Drum System for the Spectrum 48/128k/+2


8 DIGITALLY R E C O R D E D R E A L D R U M S O U N D S
S I M P L E TO U S E - U P AND RUNNING IN ONLY M I N U T E S
A T R U E DIGITAL DRUM MACHINE
R E A L T I M E ' OR ON S C R E E N PROGRAMMING
COMPLETE WITH SOFTWARE
E X T R A S O U N D S CAN B E LOADED FROM T A P E
CREATIVE. EDUCATIONAL AND F U N
T H E M O S T EXCITING P E R I P H E R A L E V E R D E V E L O P E D
DYNAMIC FILING S Y S T E M — S T O R E OVER
1000 PROGRAMMED R H Y T H M S POWAVAiLABLT
SONGS CAN B E SAVED ON T A P E / DISC Latin KK& Editor
T A P E SYNC FACILITY
L e 3 . 9 9 .
POLYPHONIC • COMPREHENSIVE MANUAL Electro Kit & Editor
J U S T P L U G S IN TO M O S T HI F I ' S €4,99
Prlc«» includa VAT. po*<«Q* t packing Otliv«f> normally 14 day! E>port O'dtti at no e»tra C0»1 DtHn »ri(ju«ia» welcome
Cheetah. products available hom branch** ol WHNMI TH • M^I Si SlOrM una Ml good compulor

128 to Midi Lead


available c< V 75
now at CHEETAH MARKETING ITO
1 W I l l O W B R O O K SCIENCE PARK

Marketing
CRICKHOWEU ROAO ST MEUONS.CARDIFF
T E l CARDIFF(0222) 777337 TELEX 497455
FAJC0222 779404
irn

T O Wll\l
Dan Dare is about to
burst onto the
Spectrum In a new
game from Virgin. Win
the game and save the
universe.
irgin's Dan Dare is bound to
gain accolades from all
quarters when It's released soon
and we'll be reviewing it fully in
the next issue. To whet your
appetite it's enough to say that
the graphics are among the
best yet achieved on the
Spectrum and It's a game ot non
stop action.
The first two winners carry off
the game plus a special bonus
copy of the book, "The Man Who
Drew Tomorrow", the life story of
the Illustrator Frank Hampson
who gave Dan Dare his original
look In the comic strip. Packed
with illustrations from the classic
strips the book retails in the
shops for £9.95.
There are a further 25 copies
of Dan Dare for runners up.
Quiz time
All you have to do to enter is
answer three simple questions
on Dan Dare.
1. What comic did Dan Dare
originally appear In?
2. What Is the name ot Dan's
arch enemy?
3. What Is Dan's spaceship
called?
When you've got the answers, Dan Dare Competition
complete the entry coupon and
send It to Dan Dare Competition, l
ZX Computing Monthly. No 1
Golden Square, London W1 3A& 2.
Remember to write your
answers on the back of your
entry envelope.
The competition Is open to all Name
ZX readers from planet earth
except employees of Argus Address
Specialist Publications. Alabaster £L
Passmore and Virgin games. The
editor's decision is final and no
interstellar communications can Send your entry to Dan Dare Competition. ZX Computing Monthly. O
be entered Into The closing No 1 Golden Square, London W1R 3AE
date is November 7th 1986. O

ZX Computing Monthly • October 1986


WMlPi 1
aa^/t u u i y

J b m First Division
ALWAYS AHEAD
Slants and opted to
•/stay with Rovers. Foofoaler of the Year
TThls promising
centre-back has sigr
I ed a new contra ;6.95 £7.95
~ , team manager D
Thorpe annou Amstrad, BBC/Electron
today. A Atari CBM 64/128

v
the
£ 9 . 9 5
rBHRT Avenger
r e>ebut £16 +4 CBM 64/122

uV — signajj,
X Spectrum^
Amstrad

i
remark a i9.95l
Ifhicfi h.
'rrj nlivcr1
ore
new i e his!
E M R i Q f V i A fl Ss- his r
about DivL
City.
fow for
Coo

S A l E for 12 r.
injury,I
^ collected
week lonu"
AC T7ic

f
to a French week coll
•mvui
medicalcui ire
(re! after nor
l i TT- Mi 'I il
C.VfXTf Pierre
open Pwrr.
contract.
has ircaicd o(.

tecor*^.... Hi> depart?


end or an eral

res
signalling the
« City.., remarkable scori?
iramrt.
BANKS »m ihe'
• f i r ^wy jf ji jg ya ss S^ /a
illicit lias made tft

Vf
'-wcve>J born player the club-
pfibc prolific scorcr in thcirl
,. . rductaniWga
war league history.

At
Ttjs" t* iraw
rt te ntrttt
)Ou h«51 (**» you

Mb blxtm
NvjwhMtt Way of
101/fcpmrr*rt» Clfi
W*tffaTig* ap 'Aftngtr* £ 9
t» dkn» iVitr
tonaife Cmr^ "WltfiV-rhw Avaiiabk
• !•!!• I faf 1*0
mi t* Sock d U M Yew hM
•emufr Gad Kkt M you t4 wnv Thing on
V«pos i n»idBa»«s ml •«»« twwtrf C1C
n k Km nam •*raywM aid d m
flor jou btpi tw M cs*l n f* Gn* £ 6
Kop Good Luck. orijr t> bar i t «i*e Available
Avenger (Way of the T^erB) Gremlin Graphia
Alpha House. 10 Carver Street
Available Nnu»mhpr
Future Knight Tnaifezer Future Knight
fm a Rftb^ft o t » uptB crtoo* d MilM
C16 + 4 MSX Spectrum 48K ^ ta IwMbi >* to rad h*l ti S* «l
dutJeadiftfKeffic Imtor. ActtyiycfisirtD
£6.95 £7.95 ^t^HIW t* g*cb
I AA Ml «iJ M i l O pot d
CBM 64/128 fxi Mm^i (^M 0*rtj
Amstrad ait, ^ n tw Bwb Scnrtt
itfi fiM t m ^ i 20
£9.95 <np to i »

Disk tatfAmfckstfitoor
Amstrad Disk (j™l b tffi r , j r
CBM 64/128 tayrttawttitt
irakFi (to
Disk
£14.95/ Avaflabk
November

SvL i

Ihrto «*>
tr jMiMltl

bta Mb
tot* oMnkg f u
no M i m i n b t i
Mnrtolkomrclitfl
nft^ f t ui&ji (ton rf
innMI|llfd«aMfl
•jtiWto SfaaM><
to «du vajt*. CD at-
Ml
(Co w n * A Hap • ton on
to doO a »* qutto fou esq**
mane2 ptoa «nArau o«nc AmmCto

SoftwvelM,
Sheffield SI 4FS.Tel:(0742) 733423

Available November
1IJ

George Du Valle goes


for a spin on Digital
Integration's new
motorcycle
arcade/simulation.
T.T. Racer
Digital Integration
£9.95
pas it worth the wait? That
question flashed through
everyone's head as they had
their first look at a playable
version of TT Racer, Digital
Integration's newest simulation.
Although every simulation
addict will be familiar with the
classic Tomahawk, TT Racer championship tracks, including revs before dropping the clutch
promised to be the first game Sllverstone. Then the choices set is something not many car
from Dl that could be played, up your standard: are you a drivers will ever experience!
and enjoyed, by anyone. club racer who needs practice Having mastered wheelles, and
It took less than ten minutes to for five laps, or an experienced managed to learn the one
get an answer to that initial professional who Is entering a down, five up, motorcycle
question, a resounding 'yes'. As full GP? The choice Is yours. gearbox, the game starts in
the author, R.J. Smith, As with many recently earnest.
demonstrated the game, If released games, TT Racer has a Having played the game, I
became very apparent that the tie-in, In this case with Suzuki, recommend practice on any
two years it had taken to write the Japanese motorcycle track you Intend to race on. To
was well worth it. producers. However, unlike many avoid anything except
Although called TT Racer, the tie-ins, Suzuki played a major humiliation, it is necessary to
ame has very little to do with role In the production of this know what kind of corner is
K
the actual Isle of Man TT races. game. When I first saw the coming. Without doubt the most
In fact, the game is set game. It was being played by a realistic parts of TT Racer are the
completely in a Grand Prix small Australian character, who corners As with any flight
environment, with the player looked totally captivated. It was simulator worth its salt, the whole
being able to race any of the later I found out that this was screen leans, and If you are
four full classes, 80cc, 125cc, Suzuki's Number 1 GP rider, Paul going too fast, you can almost
250cc and the blue riband Lewis, who was racing his real feel the back end sliding away.
event, the 500ca life partner, Niall MacKenzIa
What came as the biggest Crash
Options shock was how natural they
seemed to be. I have no doubt Crashing too is very realistic, to
Even before playing the game, that Daley Thompson would be the extent that, as the bike hits
the options give a clue to the hopeless at computer the deck, grass Is sprayed onto
incredible scope of this Decathlon, but lap after lap your shattered fairing. Thankfully,
program. In total there are ten Paul managed to lower his however, you manage to avoid
initial options, varying from times. Eventually managing to Barry Sheene-llke broken lega If,
st his time four seconds faster by some miracle, you manage
entering your name to the
number of additional bikes that
will be in the race Confused?
S an the author. Although at the
Sllverstone GP he unfortunately
to complete a lap your time Is
recorded for posterity, and If It Is
Don't be, Dl have managed to crashed on the first lapl good enough, it is stored among
make it possible to network up a roll of heroes such as 'King'
to eight Spectrums together to Kenny Roberts and 'Fast' Freddie
enable racing. When used (and Decisions Spencer. (Who? Ed.).
yes, I have seen it work), it allows Overall, TT Racer Is one of the
you to see whoever Is ahead or Even when you have made all most Impressive games fhat I
behind, and they can see you. the Initial options, you must then have seen on the Spectrum for a
Although this is a fabulous make a variety of vital decisions, long, long time Not only does it
option, and one that it would be such as tyres. Only then are you stretch the Speccy to Its limits,
ridiculous to ignore, especially if ready to start racing. Anyone but It manages to remain
Y1ou have a few friends with who has ridden a motorcycle incredibly playable For Digital
Sipectrums, the main game is will be at a distinct advantage, Integration, it is the most arcade-
impressive in its own right. In one even if It is only for a couple of esque game they have ever
minutes. Getting the knack of
load, the game gives you
access to any of the 12 world accelerating up to nearly 13,000 E roduced — and in my view the
est.
DC
^D A

HOW TO GET YOUR


SPECTRUM REPAIRED FOR ONLY £19.95 COHPUTER SPHRES
— — — i SPECIAL O F F E R ! SPECIAL O F F E R !
not upo'** irour ofomar* swct'um into I WH( not useraot WU It* le«tnim to J *«
me UntHttc M Trontcs typewriter tfYKora I :• i r e » £ 1 7 9 5 iwiuoo»v*t poumdMomg
for oni» £51 50 inctuotng fitiino vat and u novM u r ut to M I M M Mr
trtum pott uvd packnig . (irtt »m i/i £19 95 *rwn n
Normal t tcommntoefl rrt a» P«» • My mOuuv* prtc* to tovtr
M9 95 BepUcunmt printed „ m c o w Acmana w o t
WtfWKltfl potw
YiJ-H £ i n c l u d i n
t«i
C7.50
g pott I 1 fji*TTnj«ururoom
* ^ pacing 1K0JM Ml PvfY 1:1
nw» J and 1 ort<M

SPARES FROM OUR D.I.Y. SECTION


W H Y NOT P U R C H A S E T H E S P A R E S FOR YOUR
C O M P U T E R S FROM US. T H E ONLY MAIL O R D E R
COMPANY SELLING S P E C T R U M S P A R E S .
i t Same day despatch service on receipt of orders
You can order by Access card or call at our Reception
to collect.

J k l TEN * REPAIR SERVICE


While vou waitserviceincluding * Five top games w o r t h £55.00for you t o
c o m p u t e r spare p a r t s o v e r the counter enjoy and play w i t h every Spectrum repair
All c o m p u t e r s fully overhauled and fully * w e repair c o m m o d o r e 6 4 s Vic 20 s
tested before r e t u r n Commodore 16 s a n d P l u s 4 s
Fully insured f o r the r e t u r n lourney * Themostuptodatetestequipment
Fixed low price of £19.95 including post developed by us t o fully t e s t and find all
packing and VAT i N o t a Between price faults w i t h i n your c o m p u t e r
of really up t o £10 00 which some of o u r * Keyboard repairs, S p e c t r u m rubber key
c o m p e t i t o r s are quoting) boards only £8 95 56 Way
Discounts for schools and colleges S m o n t h w r i t t e n guarantee on ail repairs r i b b o n cable t o
extend your ports for
— i - m m - m BEST PRICES! your peripherals
R U B B E R MAT
ARE YOU ANOTHER CUSTOMER - fed up ORDERS £10.95 £6.50 plus£150Dtp
waiting w e e k s for your estimate? SftCOWf p l u s £ 1 50pa. p

Need your computer repaired f a s t ' T h e n send it n o w to the Number One Repair
Company in the u K . or call in and see us at o u r new fully
equipped 2.500 square f o o t w o r k s h o p w i t h all the latest t e s t equipment available
are more than welcome
we will repair y o u r c o m p u t e r while you wait and help you w i t h any of your technical problems
Commodore c o m p u t e r s repaired f o r only £S5 00 Please note we give you a 100 low fixed
price of £19 95 which includes r e t u r n p o s t and packing VAT. n o t a between price like some
o t h e r Repair Companies o f f e r w e don t shock you w i t h repair bills £50 00 upwards w e
don t m s t repair the fault and send y o u r c o m p u t e r back we give y o u r c o m p u t e r a

OVERHAUL WITH EVERY REPAIR WE DO:-


w e c o r r e c t colour, s o u n d . Keyboard, check t h e loading and saving chip. P u t new feet o n
the base if required, Check f o r f u l i memory. Check all s o c k e t s i n d u d i n g ear mike and replace
w h e r e needed All f o r an inclusive price o f r i 9 95 Including V A T , all parts, insurance and post
and packing N O hidden e x t r a s w h a t s o e v e r w e d o n ' t have t o b o a s t t o o much about o u r
service as we have t h o u s a n d s of c u s t o m e r s f r o m all over the w o r l d highly delighted w i t h o u r
service A f i r s t class r e p u t a t i o n f o r speed and accuracy Don t forger we are only t w e n t y
m i n u t e s f r o m Manchester City Centre so w h y n o t can in. navea coffee w i t h us and see your
c o m p u t e r being repaired

SPECTRUM SPARES COMMODORE SPARES


inecpu s oo SS26-CI A
oco 6510-Processor
4116 Ranu 100
m6so
D.I.Y. nxjis
Power Supply I f j r u t o r m c r i
OLA 6C001
A»pntfM»uWl»K>« inflPaomg
oca 6561 - Sid Chip
9 9S
16 SO
9061 ifl - Mouse Keeper
901775-Graphic Rom
9012J6-Basic Rom
CORNER Bom
Kcvooara membrane
Spectrum
16 50

sso
901227-kcrnalRom
6569-VIC
we regret we cannot Kovooafd membrane 4164 Rams • Memory
show an the components Spec trum Pius memtw jnc 1390 Power Supply
available j u s t give us a Mctat Templates sso Transformers
call and we can quote you KevDoardMJts sso A i i o u ' p r K M m c m o r v M (kit PK Mr MO
ZXBlmemDrane soo ( 1 SO 00 earn oroer 10 covrr p o l l
over the phone delivery Service Manual riooo packing and njnaimg tnaror\
by i s t class post
VIOEOVAULT H E A L T H WARNING!"
Senmng your computer to any other Repair Centre can seriously Damage its Heaitn

140 I liyh St West. Glossop, Derbyshire. England


Telephone. Glossop ( S T D 04574} 66555/67761
c Copyright videovauit l t d No 150786
^ W v
c i m i i R i
Readers to the rescue this month with advice and
practical help for fellow Sinclair owners

Copying on the Brother top left character square and store


them temporarily. Then it takes the left-
rated as a sub-routine within the user's
own program. The only stipulation Is
most bit of each byte to form a byte that A$ must be the first variable In the
The letter trom Janet Watson corresponding to the first pixel In each program.
Q H about COPYing to the ot the first eight pixel rows. This Is stored The result Is not quite an accurate
M BROTHER M1009 printer that as the first byte ot A$. Then the second copy ot the screen because the
you published In the August Issue bit ot each ot the eight bytes are proportions are different. The printed
prompts me to send you a listing of my brought together to form the second version Is stretched out a bit; It won't
program to do just that. byte of A$. The process Is continued produce a proper circle.
The program makes use of the bit until all 256 pixels ot the first eight pixel I am sorry about the quotes around
image mode of the M1009. The rows are in A$. then a return Is made to all the comments in the machine code
problem, ot course. Is that the pixels on BASIC where AS is LPRINTed In bll Image listing. I wrote the assembler myself and
the screen run horizontally whilst bit mode. Then everything Is repeated tor have only just altered It to get the
image mode prints vertically. the remaining 23 lines ot the screen. comments printed on the same line as
What the machine code program Lines 9980 to 9988 ot the BASIC the Instruction. I haven't yet worked out
does is to take first the eight bytes of the program are Intended to be Incorpo- how to omit the quotesI
George Brewster.
1 REM copyprnt B 1.1.86
10 CLEAR LOAD *"m"I 11"copyprnt CHCODE « Din ••(256)
2 0 STOP
9980 OPEN •3t-b-t LPRINT CHR* 27+"3"*CHR« 24tCHR» 27+"l"+CHR* 1? Screen problems
i REM Open ••ream to channel " b " . set l i n e spacing to 24/216"
ami l e f t margin to 17 Problem No. 1. I use my
9981 POKE 23717.01 POKE 23718.641
REM Current screen address " s t a r t of display f i l e
e Spectrum for "serious" work
such as word processing
9982 FOR 1-1 TO 24t (Tasword II. and now Tasword III), finan-
REM 24 l i n t s on scrcen cial/technical calculation, for which
9983 RANDOMIZE IJSR 633001 Omnicalc Is excellent, and would use
REM Copy one l i n e of screen to As In required order It tor electronic circuit diagrams If I
9984 LPRINT CHR* 27+"K"+CHR» 0+CHR» i n could find a graphics program which
REM B i t image mode for 276 p i a e l s would allow me to draw to an effective
9985 LPRINT «•> screen area rather larger than the
REM Copy one l i n e of screen to the p r i n t e r Spectrum 256x192 pixel size, and of
9986 LPRINT CHR» 10« course Save, and Print to a full-size
REM 1Ine feed printer such as the HR5.
9987 NEXT I Melbourne Draw Is quite adequate
9988 LPRINT CHRS 27+"2"« for the drawing function, with the facility
REM Restore normal l i n e spacing to define enough UDGs to meet Ihe
9989 CLOSE RETURN requirement$ and I have Saved screens
9998 SAVE +"m"t11"copyprnt BM LINE I t VERIFY i1i"copyprnt B" which are then re-loaded Into
I STOP Lettahead for adding text using the
9999 SAVE +"m"i11"copyprnt C"CODE 65300.66» VERIFY *"m"i11"copyp smaller Iront type offered by the latter.
rnt CCODE However. MelDraw only offers the
standard screen size, and this Is hardly
Banc Program enough lor even fairly simple circuits.
The HR5 printer will accommodate a
Machine Code Program print width equivalent to almost two

WOO 1 , cow* T2* 0215 t


owns 6530O ffic ctoe 0220 LD c.09 » 'E'flM bits Ilk *
"It ««• ECU V.W t "Corrint |(r||l iJ-Jfm* FF3E 21A7K 0230 LP2 LO tC-TDf
«>' Tpf EOJ t ffii owe 01*0 LB B.08 I "Eiflh'frytt*in 'h* TW UHif"
COS : fmi cm 0250 IH.) t *>'
nos^U" "V, sr* jt <IT*7tK).20h t *to»t»- l»r 32 W n i* !''«* FT«5 JKfcCH 0iW> R. (11*00) t ••Cfply kit Irta tli»*
L» 11. i "VflRE* r w 21 0270 Vf. H ( "HOT Vyt« t» sn >rt» »• «"
T i t ISO** 0(J50 Ul K'OOte FFU l(T7 0290 SJO LP1 1 *»•
tt\i t*l» w> « IMC t **«.»! It ft f,r«t tlMOt (< «• FTtC tC2J 02*0 1». 11 i *U aaiati t« Mit tftt in M*
0045 : FT« « OJOO ttC c f 'Kentmuf gat>l lit tifM »itt « f
rr;t mm. woiw ID 1. (tltti t I t -> W f i t illlttr FTtF «10 Jft : 'itt<h TO*1 tyit hdvt tw. copied*
II«5C <m Ui K-TCf i •l€ »t*rt »f TE!* t-jM»f* 0J15 1
"V wx 0090 LD t.oe t M n •» 4 <**r«c'tr tqwt* FF51 FW576 0120 KC t|Y*7tW> t -ICourtt thf 32 Syt« Of
00*5 ! FF54 MB 0130 NI.LP0 t "»s<r*tn II»e conti««*
If? 1 0100 U»1 LD t. mi t 1* FT14 W 0j40 t "wt«i (ini«i>e4 rttifti U WU'
12 0110 LP IK).* t •>Cwy ">« ® tyt« » <K«ricttr* 01*5 l
:« 01% K M t *'W*ri <*t« W fcetftr" FF57 0J»D€.
FTX 1) MS) IK BE t E». tSJf
FT-.fi HFt 0140 W IP1 i LP? (5JI7 FFIJI
01«5 t UC
«H5© LP H,.» t "St' 114 «f»n l « ' W 11 65321 FF2«
m: x 0140 I* I t **0llvt H. to »fit tcrifn i4*rm* I/O «1tl FF21H
t «•» JiW 0170 f m-M H-jN t5J00FF|«<
FFJ5 JC 0180 It fl.H l •III L « (•> 0« t» H .ft trltf l«* TDf K47H
fTJ4 tws 01% «t OS *lpoi6l to ptit Kftt» • SAD23717 5CAW
FT# tT 0200 Ul M.t x FT 35
0210 u> i *5tcrf «»it Kffto tjirm' 1 HW.W
14 ZX C o m p u t i n g Monthly • October 1986
Spectrum screens. compatible". Full instructions are codes to be sent to the printer. These
MelDraw does olter Ihe lacility to included with the disk. are:-
scroll the screen, but the sorolted-off Before saving Tasword Two to disk, 6 CLOSE # 3
portion is lost and gone (or ever! I have two additional lines must be included 8 OPEN # 3;"b"
tried drawing one screen. Saving It. and in the Basic program to allow control Andrew Bailey, Bradford
then scrolling it almost ott the screen,
and using the remaining column
and/or row as the "seed" for the next Checking Machine Code miss a copy and look forward to its
arrival with great anticipation at the
screen. However, as you can imagine,
the first screen Isn't usually right first time, articles and programming hints.
and the complications of recalling, I must commiserate with Mr F. R Roby. Tasmania, Australia
amending resaving, and rescroliing Wade Cooper of Burgess Hill
can be Imagined. on his machine code i f i l Many thanks to Mr Roby for his
I am aware of the AMX Mouse, with checking problems. I enclose two l i l H thoughtful contribution, I'm
which an "art" program comes, which unsophisticated programmes which I w l sure that the two programs will
does apparently offer a larger effective have been using tor some years and be of great use both to Mr Wade
screen, but at around £80. It's a lot to which may help our friend. Cooper and others who run into
pay to fill the missing slot in my program Having been a subscriber to ZX problesm with machine code
inventory, and apart from the larger since late 19821 must say that I wouldnot programming.
screen it has a lot of trills which I just
don't require It appears that the pro- 10 FOIE 27oS8,8
20 INPUT "HT fjHICH ADDRESS DO YOU WISH TO BEGIN CHEO ",A
g ram can only be used with the mouse,
ut I cannot see that the mouse itself
30 CLS
40 FOR 1= I TO 10
offers the facility to use a larger screen: 50 PRINT Aj "••••**) FEE) A
that is the province of the coding, and 60 LET A»A*1
of course the available memory. (Unless, 70 NEXT I
of course the mouse has its own ROM 80 PRINT AT 15,0} "PRESS M. .FOR MORE C.. FOR CORRECTION F.. TO FINISH"
In its "cage"l) 90 PAUSE 0
Now, has anyone come across what 100 IF !NKEY«»"M" THEN GOTO 70
amount to a Melbourne Draw with the 110 IF INCEY* "C" THEM GOTO 250
additional facility to a) draw to a larger 120 INPUT "WHICH ADDRESS NEEDS CORRECTION 7",C
screen area, b) Save same, and c) 170 PRINT C J | P E E l C
provide tor copying of the larger area 14u INFUT "ENTER CORRECT C0DE",D
to a printer?
150 PRINT C}".... "jD
160 PRINT " I S THIS CORRECT "...Y/'N"
(Maybe, if one doesn't exist, Toni 170 PAUSE 0
Baker could be prevailed upon to 180 IF INI EYt™"Y" THEN POI E CfLuG0T0 210
come up with an article on how il can 1°0 IF INI EY* "N" THEN GOTO 160
be done.) 200 GOTO 120
Problem No. 2 is using Omnicalc 210 PRINT "ANY FURTHER CORRECTIONS THIS PAGE PAUSE 0
with an Opus Discovery. The latter can 220 IF lNKEe*"'"!"' THEN GOTO 120
use the same commands as the 270 IF INIEYt •H" THEN GOTO 210
Microdrive (or Loading and Saving, and 240 GOTO 30
Ihe Microdrive version of Omnicalc can 25* IF INtEff "F" THEN GOTO 80
be saved to disc. It will run OK as well, 260 CLSiPR INT AT 10.0|FLASH i;"RE-SAVE YOUP CODE NOW"
but with one or two snags which can be 270 STOP
disastrous! For example, il one selects
Ihe "Amend" option, and then "Inserts" Program 1 Check M/C Program — used to Program 2 usod tor entering machine code
or "Deletes" to copy or erase a column l check and alter an existing M/C program with or without chocksum facility and Iwth
or row. Ihe program NEWS itself, and with Input correction
It the data you have Just entered.,.
As Omnicalc users will know, the 10 FOI E 23658,8
program as supplied on tape 20 INPUT "ADDRESS OF FIRST ENTRY ,A
apparently looks tor some indication 30 INPUT "NUMBER OF ENTRIES BEFORE CHECtSUM "VEnter 12 !f no cnocl ai 1 jtiic
that a microdrlve is present, and if II
finds one. converts Itself to a microdrlve 40 CLS:LET T«0
version, and saves itself to the drive. 50 FOR 1=1 TO N
However, loading with an Opus 60 INPUT "ENTER CODE <Entor « « to finisn>",C
connected does not effect a Save as 70 IF C O OR <C 255 AND C oe>9) THEN GOTO 60
described, even if the space occupied
80 IF C-999 THEN GOTO 210
90 POKE A,C
by the MDRV variables is created by the lOO PRINT A;"....";C
"Rand USR 4007" command available 110 LET A«=A-« t; LE T T«T + C
with the Opus tor the purpose. 120 NEXT I
Presumably Omnicalc looks (or 130 INFUT "CHELI SUM <Entpr rero if no efieci SU«TD
something other than a space which 140 IF S-0 THEN GOTO 240
would be occupied by code bytes it ISO PRINT "CHECt SUM3 -jS,"TOTAL" ";T
actually associated with a genuine 160 PAUSE 200
microdrlve. 170 IF S T THEN GOTO 220
I bought the Omnicalc extension 180 PRINT "ANY FURTHER ENTRIES :PAUSE 0
lape at the last Microfair from a supplier 190 IF INIEY»«""Y" THEN GOTO 40
who said It would overcome the
200 IF INI£Y» "N" THEN GOTO 180
210 PRINT FLASH 1j"SAVE YOUR CODE NOWl STOP
problem: whilst it does offer the 220 PRINT "THERE IS AN ERROR .PLEASE CHECi:"
opportunity to add some useful 230 PAUSE 200
commands to Omnicalc, one thing it 240 PRINT "DO YOU WISH TO MAtE ANY CORRECTIONS 1:PAUSE
does not do Is solve the Omnicalc on• 250 IF INI EY«-"N" THEN GOTO 180
Opus problem. 260 IF INI £Y» »YH THEN GOTO 240
Again, any Ideas? 270 iNfUT "WHICH ADDRESS NEEDS CORRECTION ""'.P
Paul King, Hassocks, Essex. 280 INPUT "ENTER CORRECT CODE",0
290 LET T«T-PEEl PfO
300 POI E P,0
Opus/Tasword 310 PRINT F;" "(a
320 IF S 0 THEN PRINT •CHECtSUM- "j S,"TOTAL"
I read with Interest the letter In 330 GOTO 240
the August issue from Janet
Watson about printers and the
Opus Discovery and problems. Most of
these problems have been solved by
writing to Tasman Software, who have
Pen Pals Guy Wlndreich, Sderot
RamatGan 52453.
Hatates S,
00
been extremely helptul.
It any of Ihe programs Janet has will I'm a 17 year old Spectrum I'm 16 years old and would love to have
allow her to save screens to tape, a owner from Israel and I would a pen pal. I have a 48K Spectrum but
version of Tascopy on 3.5 inch disk (or be delighted to swap ideas, unfortunately games, books and
the Discovery can be purchased (torn pokes, programs and games with program listings are very scarse here.
Tasman to enable her to print screen anyone from anywhere in the world. I Wilhelm Offermeier, PO Box 20052
copies provided the printer is "Epson have both a 48 and 128K Spectrum. Noordbrug, 2525 South Africa.

15 ZX Computing Monthly • October 1986


iFree modem w i t h .
your f i r s t years s u b s c r i p t i o n

Does your micro chat to 70,000 people across the U K ?

Can your micro interview pop stars, hackers and doyennes


of the computer industry?

Can your micro provide the answer to your technical and


software problems?

Could your micro send and receive telex's worldwide?

Does your micro do your shopping for you-and have it


delivered to your door?

Is your micro an answering machine, delivering your


private mail whenever you log-on?

NO? Shame!
/

To: Microncc 800, 8 Herbal Hill, London E C l


n
Please send me a brochure on Micronet 800

Name

#00- Micronct 800 .Telephone No


8 Herbal HU1, London EC1R 5EJ
Telephone: 01-278 3143 Age Micro.
| [ _ _ _ _ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ZX10/86 ^ J

16 ZX COMPUTING OCTOBER 1986


Skim across the takes of Xargon in your
hydroboat, turn the highways to waterways
and destroy the central computer.

surprising ehl
Depth charges are essential If
As an average run of the mill you are to gain more than 5%,
XARQ superhero, it is your task to enter as submarines have a tendency
Xargon and flood the of sneaking up unnoticed. On
Electric Dreams Zimmerman trenches, destroy the screen there are also a series of
£9.95 Central power reactor, and displays and scanners that give
thereby disable the computer. a continually moving report on
deputations are funny things. Pretty simple, huh? Nope! how much damage your vehicle
Some software houses establish Unfortunately, all ot Xargon's has sustained.
themselves with their first game, defences are fully operational, In Xarq. the trenches are
and then build on this with a and the computer is determined arranged concentrically, around
constant (low ol excellent not to let you get inl the reactor, and It is therefore
games. Some houses produce a To help you on your mission essential to get as far in as
whole heap of Junk, and Electric you have been equipped with a possible. Graphically, Xarq Is
Dreams are somewhere In the Nik-Nik Hi-speed Hydroboat, and similar to many mettalix
middle. Being one of the top ten a great deal of firepower. For graphics games for the
software houses In the U.K., they some surprising reason, the Commodore 64. The
have produced such classics as United Planets' Co-operative has backgrounds are all very well
Spin Dizzy, but they have also every faith in you. defined, with excellent attention
produced some less than Using either a joystick to detail. Your Hydraboat leaves
brilliant games. (Kempston or Interface 2), or a Utile more to the Imagination,
Many people will, at first keyboard (especially defined for as It appears to be little more
glance, write Xarq otf as nothing those with nineteen fingers), you than an elongated white
but an over complicated shoot- must struggle against lighters, splodge)
'em-up, but with perseverance, gun turrets, and a variety of Xarq may not be the best
and not a little manual dexterity,
you can find a good game in
other annoylngly mean weapon
bases. g ame to come from Electric
reams, and It certainly Isn't the
there. To help you in your task, you easiest, however, if you are
In a world where there is no have a variety ot different willing to spend a few hours
land, a computer was weapons. As well as a standard getting used to the control, and
programmed to create a mass laser, there are guided missiles, working out what to do, you will
on which the inhabitants could mortars, and depth charges. be well rewarded. . . rck.
live, this world was called Guided missiles are especially
Xargon. Everything went well useful if you want to fire Inland,
until one day the computer as they are the only weapons
developed a fault, and started capable of knocking out the
to destroy the land it had taken large and deadly missile turrets.
so long to create. Mortars are the same as guided
MI Steel yourself for a
Stainless Steel
Mikro-gen classy shoot-em up
£8.95
'•1 O H
M
• ~ 1
i
]
/ONI
from Mikro-gen.
UoNH'i
m<, i . • 15
mi:
Nk 1 t N l My

MP
T h i s Is a game to tesl the
mettle ot hardened shoot-em up

II
m ; 1111 •
fans. You play "teenage
superhero" Ricky SteeT who Is
' m spending his formative years
mi: blasting everything in sight, but
r/AV It's all In a good cause as the
excessively evil Dr Vardos is
* t • ft Intent on conquering earth and
Ricky Is out to thwart him.
There are four phases to fight
through before the ultimate
showdown with the Doc In zone
one rlcky Is a pedestrian In
search of his "hyper alloy
combat vehicle" Nightwlnd. He
sets off up-screen along a
smooth scrolling road swarming
with android troops, enemy
helicopters etc etc The main
screen gives an overhead view
of the devastating proceedings
and the graphics are large and
welt defined. Below the
animated action Is a road map
indicating the position of
approaching enemies and one
eye has to be kept on this as
there is litlle time to react if you
are unprepared especially if you
are atlacked from behind.
You have four lives and
believe me you need them.
Losing a life Is spectacular —
Ricky totally disintegrates with
fragments scattered In every
direction accompanied by a
rather unpleasant scream from
the Spectrum beep box.
In the next zone you leam up
with the car and wipe out more
waves of android troopers and
in the final zone you are
airborne using "uranium
thunderbombs" to blow
submarines out of the water
(Using these bombs In the
previous car-leg merely results in
self destruction). The final leg of
the game is taken up with a

£
ui
search and destroy mission to
get Dr Vardos struck off
permanently.
Stainless Steel Is a graphically
> sophisticated shoot-em up with
enough sequences to maintain
your interest. If you enjoy a
sustained bout of blasting this
C I game is worth checking oul but
be warned it requires an agile
5 wrist and quick reactions in fact
If you happen to have a steel

S
arm already make sure your
wrist Is well oiled.

O
a.
CO
Konami's Tennis
Imagine
£7.95

KVnd that rather weak second


service got exactly what it
deserved." And out come all the
old Dan Maskell slock phrases,
not to mention jokes about John
McEnroe, Iceborgs, and the like.
Yes. it's tennis conversion time
and the old arcade favourite,
Konami's Tennis finally lobs its
way onto the Spectrum courtesy
of Imaglne's licensing deal with
Konami. To be honest, when this
arrived I wasn't exactly seized
with raptures of enthusiasm and
the general reaction was along
the lines of "Ho hum, yet another
Imagine arcade conversion." But
once the game was loaded up
It managed lo bring a little
jollity to an otherwise cold, wet
and dreary morning.
On the two occasions that I'd
attempted to play the original Imagine serve up top
arcade game I'd found it
completely unplayable but the seed tennis game.

Spectrum version proved to be The options available allow long life by providing different
much easier and more one or two players to play a skill levels. Other than that my
enjoyable to play and although singles match against each only criticism of the game is that
I haven't come anywhere near other. Playing doubles against using the keyboard controls is a
winning even a single set I can the computer Is just asking for bit fiddly.
see myself loading this up quite trouble. It's chaos, with players The predefined control keys
a lot 'till I get the hang of It. running all over the place and seem to be badly chosen and
Imagine's conversion is the computer managing to co- although you can redefine these
something of a no-frills job, but ordinate its two players with an keys player two can't choose
with the emphasis on playability. ease that will make most human keys set aside for player one
There Isn't a great range ot opponents look pretty daft. even If player one is usin< ig a
different shots that you can play joystick. This means that if player
with lots of angles, topspin and two wants to redefine the
so on as has been the case with keyboard controls then he or she
some tennis and table tennis will probably also have to
games (which I generally find redefine player one's keyboard
far too complicated to play controls first, even though player
well). The direction that you're one isn't using the keyboard
running in seems to have some (and this isn't explained In the
effect on the direction that you instructions either, it took a bit of
hit the ball in and the timing of guessing and trial and error
the shot can affect its length, but before I began to realise why I
on the whole it's just a matter of couldn't get the keys I wanted for
chasing after the ball and player two).
thrashing away like mad in the Still, tiddly bits aside, Konami
hope that you'll knock it over the Tennis has still proved to be the
net. 1 realise that that may not first tennis game on the
sound terribly sophisticated but After a while you'll be able to Spectrum that I've enjoyed
it's definitely great fun. tighten up your game and playing and is certainly the only
The graphics aren't exactly maybe even win a few points one that I'm ever likely to go
spectacular — the players are (the computer does seem back to.
white sprites on a green court, vulnerable to a fast serve and
with Ihe scoreboard at the rear volley game). The game seems
of the court — but by keeping to have just the one skill level, so
things simple you can at least It might eventually be possible
see what's going on the whole to master the game and
time, and there are (virtually) no perhaps it would have helped
attribute problems. ensure that the game has a G
19 ZX Computing Monthly • October 1986
1i l-l IE
Everything you always
wanted to know about
bug-free programming

PROFESSIONAL as Steve Tlirner focuses

n
on program testing.

11 V* U C 1 he software for the USA


"Starwars" project will take
something In the order of 3,000
man years to write. Many people
think that It is Impossible to write
a vast system without including
bugs that would make It a
worthless heap of coding. It will
have to work properly the first
time it is used operationally.
• f There will be no second chance.
Well the destiny of the world Is
not dependent on our programs
but we face the same problems.
Why do programs always seem
to have bugs? Why do
programmers make so many
mistakes? Can we avoid making
them or at least eliminate them
from the finished program?
We all make mistakes. I once
heard a nurse state that If she
made as many mistakes as a
programmer did her patients
would not surviva
The fact ts she probably
makes |ust as many errors but
few are critical despite her work.
Most activities that humans
perform are not critical. There Is
a whole area of success with a
gradual transition to failure that
allows plenty of room for our
natural Inaccuracy.
When we do slip up because
we are constantly monitoring our
actions we can spontaneously
make a correction. It is only
when this constant feedback
falls to spot a mistake that things
start to go wrong. Even then
another person will often be
involved for any important action
and the mistake can be spotted
and corrected.
But when computers are
involved it Is different. Unable to
recognise a silly command, a
machine will mindlessly do its
best to carry it out regardless of
the consequences. We store up
all our natural mistakes in a
program. This Is then blindly
executed by the machine
without the benefit of our Inbuilt
monitoring and feedback
facilities.
The result of any mistake Is
remote from when it actually
occurred. The time between
making a mistake and spotting
and correcting it may be hours,
days or even years. But the
process is essentially the same.
We all make mistakes but
programmers' mistakes have a
delayed action, like a time
bomb!
Can we avoid making
mistakes? It may be impossible
to be perfect but we can try to
minimise the mistakes we make.
The most important factor is to
chart or flowchart by reading it The other day I had a large
LLLIA
really admit to ourselves that
whatever our experience we through, to someone else if routine that worked first time. 1
make mistakes. Then we stand a possible. Explain how It works was so dismayed at this unusual
chance of avoiding them or at and invite questions such as event I spent the next two hours
least finding them later. "what happens if?" Play the pulling the routine apart
The way to avoid errors Is by game In your mind following confident there must be a bug
discipline and I find It your diagram in execution somewhere.. .and there was, a
sometimes is In direct conflict sequence. Be the machine and real time bomb Just waiting for
with the creative process. If you try to execute the program me to forget all about that bit of
can reach a compromise drawing pictures and diagrams code.
between the urge to write and of what is happening, Write
the control to do It properly you notes as to when the main Run testing
will be a much sought after variables are initialised or
programmer. updated.
Despite all precautions some
bugs still manage to survive until
Trapping the bugs Programming errors the routine is run. Testing should
be systematic. Test small portions
Eliminating bugs Is a question of I have drawn up a Top of The of code at a time. Then If It
setting traps at every stage of Bugs chart listing the machine crashes you know where the
the design and programming code errors lhat are most often error Is. Gradually construct the
process. It Is no good finding made In Z80 assembler. These program by adding small
lhat during programming the are well worth looking out for untested bits to the reliable bit. If
overall design just does not work. when a routine has been coded any parts are self contained get
There Is never time to keep on before you waste time trying it them working on their own first
checking everything so much out. It is always advisable to then try them in the main
that all bugs are found. We have read your code when you have program.
to whittle down the number of finished writing It especially If
bugs by looking in the places I work the same way In BASIC
you have keyed it straight In although I will test groups of
they are most likely to occur. without putting it on paper first. lines out as I write tnem
You can only ever see a very checking variable contents out
Design checks small portion of code on the etc,
screen. I am a believer in
1. Program size printing new routines so I can
Estimate the size of each file or have a quick dry run. I do not Play/user testing
table, buffer, map area etc. go round loops for every
Guessing the size of the actual iteration but at the very least I This stage is not so much to find
program is harder but base It on try the first and last cases. bugs but to see If the program is
previous programs that you have For calculations i work achieving its alms. As other
written. Write down a list of every through considering the people than the programmer
routine required as a guide. maximum and minimum values are involved unexpected inputs
Check when writing you are writing down the possible range take place and often more bugs
coding within the size you have after each step. For bit shifting or are found. I tune a game up at
allowed for an average routine. bit manipulation I draw bit this stage to optimise Its
diagrams to show what ptayabllity etc.
2. Program speed happens. Of course many times I
Otten speed is critical, cannot be bothered to do this The final trap
especially In animated games. until the computer proves me
Calculate execution times of the wrongl It always gets done When one of my games is ready
critical routines such as sooner or later. for launch it undergoes one final
refreshing the screen. Try to
estimate a frames per second
figure for your program. Adjust Top Ten Bugs
the screen area and cpu load
accordingly. 1. Variable or register not Initialised properly.
2. Condition reversed (eg. JR C instead of JR NC).
3. Reversed operand order (eg. LD A.B when LD BA Is required).
3. Game design 4. Data and addresses contused (eg. LD HL.1000 when LD HL,(1000) is
To check the game concept try required).
a BASIC or paper mock-up. 5. Loop counters Incorrect. Each must be initialised, fetched,
Explain the game to someone updated, stored.
and note their ideas etc. Try to 6. The zero case forgotten. What happens on a zero loop count or
think ol all possible ways people null input?
could misptay the game. 7. A register or variable is used for a second purpose and the first
value not restored. Very often occurs when subroutines are
4. Program objectives called or extra tines have been inserted.
Ve./ often, especially in 8. Arithmetic errors, especially when a mixture of 16 and 8 bit
business, the design does not numbers are Involved.
achieve all that Is required. First 9. Communication between routines. Define the Inputs and outputs
you must decide exactly what of each routine.
you are trying to achieve. Before
you start the design make a list 10. Confusing hex and decimal numbers.
of the requirements and use it as How to reduce your mistakes
a checklist when your design Is
complete. 1. Design before writing.
2. Structure your programs.
5. The human machine Interlace 3. Document your program,
if you are trying any new control 4. Try lo write as little new coding as possible. Use old trusted
method try It out first before you routines, macros or copy similar bits of coding.
commit yourself to It. Is it too 5. Wrlle In a consistent manner. For Instance, always decrement loop
difficult? Can the average user counters In the same place In the loop.
handle It? 6. Keep your coding as simple as possible. Do not use clever tricks.
7. Leave the slack alone
6. Program structure 8. Write new routines on paper first.
Test the overall program structure

21 ZX Computing Monthly • October 1986


IMIJ
test. I document the whole code
from scratch reading every
routine making sure I understand
It. The odd last bug Is found in
this way. Then It is the public's Monitor
turn.

Making a test plan Pioau lion


twitch

To run test a routine properly we


need to be systematic The best
way to do this is to make a test Keyboard
•can
Do operation Duplay
plan which can be used as a
checklist as each test is
complete. It also helps when test Exit to
data has to be made up. monitor
(toe below 1
Each test can be given a
reference number. This is written o O
alongside the record of test data Type 0 Type 2 Other
that has been made up to test poke (default!
that case. Very often the test
data will be human input such
as joystick commands.
Stfuctuieol monitor routine
You can still be systematic
and list all the specific
conditions you must create. You
can use a program listing as
your test plan. Mark on it or a
separate piece ot paper each 2. MONITR - When "1" is MONDIG number to a
group of instructions belween pressed MONON is set to "1". minimum of 0?
any conditional Instructions, eg. 3. MONITR - If MONON=1 9. DOWN - Causes digit to roll
JRz , DJNZ , JP C etc routine Is executed whatever down.
A test is needed to make key is pressed except "0". 10. UP - Causes digit to roll up.
each set of instructions execute. 4. DELAY — Is speed slow enough? 11. TURNBT - Is each digit pair
Identify the condition and the 5. KEYSCAN - Exit working If "0" in turn updated?
function of the chunk of code is pressed 12. TURNBT - Do left and right
and you have the test that Is 6. KEYNO - Are keys "5", "6", '7" digits in a pair update?
required. When it comes to the and "8" recognised and 13. OPTYPE - Does MONOP =
actual testing many of the tests control passed to each "0" cause a peek. "2" cause
on your list can be ticked off correct task. If none are a poke and anything else do
easily without any specific pressed does nothing nothing.
setting up. You will then be left happeni 14. PEEK - Getting memory?
with specific conditions to set 7. KEYNO - Right cursor test. 15. POKE — Changing memory?
up Does it increment the 16. HEX - Digit pairs decoded?
Prove each section of code MONDIG number to a 17. NULLOP - Print file bultt up
really did its job. That does not maximum of 6? OK?
mean just seeing if it runs 8. LEFTCR - Left cursor test. 18. COLMON - Attribute cursor
without crashing. Decide where Does It decrement the moves OK? Does it miss
you will break tne routine to
check all registers and variables
are set up correctly. You do not How to find that hidden bug
have to do this for every group
ot instructions unless it is a really 1 Starl looking at the lines you last changed. The bug is usually
tricky routine. At the end of each there.
subroutine for example, is a 2. Try to locate the error by executing less of the program. Execute
good place to do this. each big routine In turn using a monitor until the error occurs.
The list of functions to check Then do the same for each section of the faulty routine.
serves another important 3. Write BASIC programs to validate any large data files.
purpose. It should include every 4. Talk through a problem area with a friend. You usually see the
major task that the design error as you explain It,
requires of that routine. A routine 5. Sleep on really tough problems. Next morning you often find the
must not only work, it has to do answer just comes to you.
the right job. 6. Print off the problem area, dry run it and plan a search strategy
using breakpoints
An example Test Plan
How to debug a BASIC program
Here Is a test plan which you This list of tips should help you If you have typed In a program from
can use to check the example
MONITR routine works. Before a magazine and It does not work.
reading the list see how you can 1. Look at fhe magazine listing. If it is typeset there may be a
do. Turn to the program and printing error but the error is probably In your copying. If If looks
identify all the functions to test. like a printer listing any mistake will definitely be In your typing In.
Then compare your list to mine 2. Check problem areas like pokes, data lists etc
below. I have included the 3. Execute the program a bit at a time by Inserting STOP statements.
name of the routine performing Then print any changed variables to see what is happening. Then
each function. use CONT to carry on the program.
4. Insert some extra print statements In loops etc to print out loop
counters or other variables.
Monitor Test Plan 5. Look for all the clues. Write down what exactly happens. Try It
again. Vary fhe input and try to pin down the exact
1. MONITR - No action if circumstances when the error occurs. Then try to find routines that
MONON = "0" if any key but process that eventuality.
"1" is pressed.

22 ZX Computing Monthly • October 1986


gaps? is the default colour resetflng them). This is Invaluable and you will have an escape if
LlM
left behind? for tuning up games. Constants it loops forever. There is a delay
19. PUTMON - Is the mini dump can be changed in flight to get within the monitor which can be
picking up the right data speeds right, positions right, reduced if the rate of call is
and placing it in the print rates of firing adjusted etc. slow.
file? Merely call the monitor from The routine prints at the top of
20. HEXTWO - Is the print OK? within your mainline loop. I put it the screen using the print routine
Well, that is my list. Note the in the keyboard scan routine in the August Issue Alternatively
similarity between the list and then it even operates in the you could use RST 10 Instructions
the structure diagram. If I had game's pause mode. This means by loading b=MONOUT as a
taken the structure to a low by pausing the game you can count and HL to step along
enough level one box on the set up several variables. MONLIN.
diagram would be one test. If The routine Includes an exit
you want you can use a from your game if the 0 key is Instructions for use
structure diagram as a test plan pressed. The jump address
provided you list all functions should be changed to the entry 1 = switch monitor on
within a box. point of your monitor or back to 5 = cursor left
Although the list may seem BASIC routine. I use the 8 = cursor right
long It takes about 30 seconds breakpoint entry point of my 6 = decrease digit
to run through the tests. That is if main monitor which allows me 7 = Increase digit
they work. If they do not you to get back and continue the Set op. Type to 0 to PEEK selected
have a precise definition of the test if I want to. address.
error condition. To find the entry address to This is the same as Ihe first
your monitor breakpoint routine byte of the dump. If the value Is
Real Time Monitor set a breakpoint and look to see changing too fast to read freeze
what instruction and address it changing the op type from 0
This month's example program has been placed. It may be a to 1
acts as a window into the call or a jump. Change the line 1 to set up selected byte. No
machine. Unlike most monitors it JP EXITAD accordingly. update of memory takes place
Is very small and operates as To use this facility always start yet (default mode).
your program executes. You can off the test session from your 2 to POKE selected byte to the
watch your variables as they main monitor so it can initialise selected address. The monitor
change. its variables. Then jump to the is dangerous If left in this
You can speed up testing by program under test. mode. Change the op type
applying values to variables (as You can call the routine from back to zero unless you are
long as somewhere else is not within any loop you are testing block filling.

Listing
uwu $
6036 0600 04540 LO c.o
0000 04 300 B03F IF 04350 FIHW RRfi,FINl> FIRST BIT 2ER0
0000 04310 |
6040 3003 04S60 JP HC.KEYHO
* 6000 00 1 6042 oc 04370 INC C
0000 04320 oof'io;o? 04050670 604 3 ISFft 04380 JR FIHOK
0000 04 330 1 1 04390 KEYN9
0000 04340 » «4d 8045 79 Lt> fl.C .UPDATE
0000 04350 6046 212881 04900 LO HL.nOMDIG
0000 1 GP49 112961 04910 Lt' C-E,MO>«DO
04360 i
e04C FE03 04920 CP 3
0000 04370 .-else 604E 2011 04930 JR 2.LEFTCP
0000 04330 i
0000 04S90 i m 6050 FE02 04940 CP Z
0000 04400 $ of eor.2 2816 04950 JR Z.DOHH
9300 04410 6054 FEOI 04960 CP I
0000 04420 t 6056 2816 04970 JR Z.UP
0000 04430 Jvftp or s t»» t s B058 04930 •RIGHT CURSOR
0000 044 10 1 6053 7E 04990 LO ft.CHL)
0000 U4450 p B O S 5 3C 05000 IMC ft
0000 04 I- .0 j 60S»1 FE07 05010 CP 7 ,«ft;: 6TH DIGIT
0000 04470 OPS «oeown EOST 3023 05020 JR MC.OPTYPE
woo •-'4430 COSE 7» 05030 LO <HL.'.ft
nottiTR L-L
eooo 3fl276l 04490 L£* ft.CMOMWO >OM SWITCH 60 SF 1025
60b) 7E
05040
OS05O
JR
LEFTCP LO
OP T YPE
rtit HL> .CURSOR LEFT
BOO: ft7 04500 ALT' ft
0 .O^MIMiriUH
EO'.M 2O0F 04510 JFI HZ,ISttt . I F HOT 0(1 6062 FEOO 05060 CP
2-OPTYPE
C006 01FEF7 04S20 LG 6C,0F7FEH .TEST I KY 6064 2620 05070 JR
300? £073 ft,<C> 6066 3D 05030 DEC ft
BOOL: F6FE
04530
O4540
IM
OP OFEH e067 • t *t*. 05090 LD <HL >jft
B00T' FEFF 04550 CP OFFH eo 63 IfclC 05100 JP OPTYPE
Door ce 04seo PET 2 .PETUPN IF no»ioti-Q eucft oeiT 05110 DOWN LD C-OTPM . LOMEP
B010 3E01 04570 LD ft. 1 .IF I FPESSED enoc 1802 05120 JP TuRter
6012 322761 04530 LD (nONCto.ft B06E 0E01 05130 UP LD C'l t HIGHER
£015 2IO040 04590 ISON LC> HL .4000H .SLOW IT 6070 05140 TURHBT
B01£ 2L- 04600 DELAY DEC L -Down 6070 7E 05 ISO LD ft.» HL > ."DIGIT NO
K0IF 2QF0 04610 JP HZ.DELFTY 6071 47 05160 LD 6,ft
BOIB 25 04620 DEC H 607J 2600 05170 LD H,0
CB2F SPFL ft ,'Z FOR BYTE
EOIC 20Fft
B81E
04630
04640 j^EYSCflH
JP IC.DELftY
6076 6F
6077 1?
05180
05190 LD
ADO
L.ft
HL DE
E01E 01FEEF 04650 LD BC.OEFFEH 05200
e021 ED76 046*0 IM ft,<C> .XXX67S90 BU72 78 05210 Lt- ft.6 .HIGH OR LOU
8023 F6E2 04670 OP 0E2H.SET UNUSED BITS C079 E60I 05220 ftIC 01 .M1B6LE
6025 6F 046S0 L£' L.ft 807B 79 05230 LO ft.C
6026 01FEF7 04690 LD DC.OF7FEH 807C 2006 0524O JP M2.ronoNB
8029 ED/3 04700 1H ft.CO .XXX34321 60 7E 17 0S.-O FLA
B02B 17 04710 RLrt i XX54321X 8 0 ?F 17 052tO PLH
B02L F6W- 04720 OP 0£>FH j,.5 6030 17 05270 FLfl
602t ft? 04730 ri(K> L ...56/890 6031 17 05230 FLFI
602F FEFE O4740 CP OFEH 6032 C6F0 05290 riffl- OF OH
6031 2003 04 750 JR MZ.NOOU1T EO?4 SO 05300 ronoie rtC<. FT,«. HL >
6033 C30FFV 04760 JP EXITftO . UltCHftMGE 6005 • • 05310 Lb VHD-FT .UPDMTC
BO*; 04770 ,IH1S LINE T b056 0S32U
6036 04730 iENTRY POINT 6036 05330 .DO OPERATION
B0 36 04790 6036 112E61 05340 CMT'.T-E LD DC.NOtft.IH
6036 FEFF 0430O HOOUIT CP OFFH .PROCESS KEY B O O ? 3*2961 05350 U' ft. - N O H H D O )
6033 LfiSotO 04S10 JP Z.QPTVPE eoc'. 67 05360 Lt- H-FT
6036 IF 04620 PPRT 60CV 3ft2nfcl 05370 LD H.triUlHDO+l <
6 0 X IF 0-4. y-.< RRA 6090 6F 05330 LO L.ft HL»SELEC1ET'

ZX Computing Monthly • October 1986


mn
E031 :<«2CFi o53:»o LD n.' MOtir* ' .flDCPESV tor? C007B1 05?30 HEXTUO CALL HEX
E0 <4rtr 05400 Miff. eoFft 23 05?40 IHC HL
tc.*^ 2coo 054 lu JR J.FEE! BOPB lOFfl •6800 0JN2 HEXTWU
co?r > £20 CP 20H B0P0 110000 05360 LO DE.OOOCH .Y.X FOS
E0?3 JP 2 P0> E BI00 212061 05:<?0 LO HL.HONOUT .FILE
60?T icon 05440 JR NULLOP B103 C04FIB1 05?30 CHLL PRINT
toi> r i H'JTO PCFC LD il.. HL.) CI 00 C3 0W?0 RET
en c LO < now*. . n BIO? 06000 (HEX TOrtSClCOHV
i cm 1 ;04 054 70 JP iWLLOf BIO? 06010 .HL'HOORESS OF HEX 01C1T TRIR
eo»c >ctci 05430 PC* c L O FL.'.HONVAL." BIO? 00020 ,0£-rtOOPE3S OFrtSCI1
t-OHv 77 U* 610? (IF 06030 HEX XOR ft .3PLIT 2 DIGITS
con- 0',500 8100 EC-6P 00040 PLO
l o o ? 212991 05510 irxLOr U > HLILONHOD DISPLAY fslOfl 12 00050 LO <0€t,fl
conn coo?et 05520 C H L L HF : .PfitR I BIOS 13 06060 1HC OE
com- £3 05530 INL HL eior ED6P 06070 FLO
BOAL" cto7ci 05540 CllLL HE;; . PrtIR 2 litot 12 06030 LO <0£>.fl
UX-'L 13 0555*> I IK OE -GRP B10P 13 060?0 INC oe
toe J 23 05500 UK HL Bl 10 E06T 00100 PLO -3ETSt < HL) ftS IT MR'
DOC J COOTBI 05570 CFLLL HE>; .FAIR 3 BI12 IB 06110 OEC OE
LW>; 13 055WJ lilt C-E W Bl 13 ie 00120 OEC DE
EO«7 23 INC HL 0114 00130
tvCS COOT&I 05000 CRLL HEX .LAST OIC BI14 eco2 06140 LO C.Z .R3CI1 COHV
BOOO •xzo 05*; i o LO FL.32 .TLFTLFT' IINMRN Clio w 061-0 OIC 1 T LO fl.<0£>
roto 323/01 OVO
- ^O LO <BLAH/,A en? FEOfl 06160 CP ONH
BOC0 3FL23EI 050 3U LO BtlS» 3004 00170 JP NC.DOLET
00C3 05^40 LO HL.5S00H Bl IB C630 00130 HOC JOH
EUC6 0 6 2 0 05050 Lb 6.20H B1 10 1302 00150 JR DONE
6<X0 >>0F 05660 C9U10N L D H./-0FH .RTTRIB eiiF C037 06J00 COLET HOO 41H-0HH
eocn 2 3 o56?o IT*. HL -DEFAULT 8121 12 00210 WJItL a- (OE^.H
BOCB J0FB D J M 2 COLMOM B122 13 06220 INC OE
BOC0 JI 0058 03620 LO HL•5300H B123 OC' 06230 OEC C
6000 FE04 05700 CP 04 .MI33 CllP: B124 20F0 0C240 JP ItZ.DIGIT
BOO.- 1300 05710 Jp C.YE B120 C3 06250 PET
23 05720 INC HL E1^7 00 00260 HOT Ml 06 0 . 0c0PF HON
FE06 05730 CP 06 B123 00 06270 M0M>1C 06 0 -LURiUR DlL.IT NO
BOO? 05740 J* C.YE eu-y OOW 962C0 ON OfflOOH . SET TO (XIUR
BOO? 23 05750 1IC HL 0120 4 VRRIHE4.E3
B«0FL 1*00 05760 vs LD 0.0 eise 00 00300 I10HVFIL oe 0 /Vl«.Ut OF 6-»'TE
BW*. 5F 05770 LO E.FT ei^c uO 00310 ncifior 06 0 .OPERATION TYPE
BOOO I5> 0V3U H£>0 HL.OE .UIPIOR eia- 06320
BODE 36^0 05790 LO <HL >,30H .COLOUR 0120 06330 .0UTPU1 FILE
BOEO 05500 Bl^O tc 06340 MONOUT 06 1CH .NO OF CHHR3
BOIO 05310 PUTFMI L O rt.<norwoo • ei_E 00000000 00350 no»«.in 00 0,0.0.0,32,0.032
60E3 67 05320 LO H,A Bl 32 200000^0
80C4 05330 LO A.< MOHFIOT'* 1 > B1?C 00 06>j0 06 0
BOE? OF 05S40 LO L.FT 0137 20 06: 70 &L»» 32
BOCO T13EB1 05850 LO DE , NONORIF B1J3 _.:«oooyoo 06330 HOMOMP06 32.0,0,0 0,0.0,0,0
E0E8 13 05360 1)«C CE .MINI HEX B13C 00000000
B0EC 0604 09870 LO E.4 > OUMP Bl 40 00
TIOEL coorti 05380 HEXOMP CALL HEX ei4i COOOO^wn 06330 C8 32.0.0.0,0.0,0,0.0
E O N 23 05S?0 INC HL b 14'_-0000*3000
BOTJ LOFRT U3300 OJFC HEXDFIP 614?
BORU 0C04 05310 LO B.4 F70F 00400 EX1TH0 EOU 63247.PICTURESUUE
B0F6 13 05320 INC OE CI 4(1 00410 .HOI 11 TOR EJITRY" POINT

ARE YOU A BUDDING


PROGRAMMER?
? ! L X is always looking for top
quality games and utilities for
publication. If you have a top
notch game or a useful utility for
O the Spectrum or QL why not
send it to us for appraisal on
o cassette or microdrive complete
with a listing if possible.
There is also our new feature
Short Cuts to showcase your
practical, novel or imaginative
oo short routines with cash prizes for
oo published listings. For longer
programs we pay competitive
rates, and if you have an idea
O for an article or series for ZX —
ct drop us a line or phone Bryan or
a
Cliff on 01-437 0626 to talk it over.
^mmm,
24 ZX Computing Monthly • October 1986
\mil be
SPECTRUM REPAIRS
ONLY ONE COMPANY OFFERS
Over 15 years computer maintenance exper-
ience on all types of s y s t e m s from Main-
frames to Micros.
W e repair A L L Spectrums sent to us. Not
only the profitable ones. I F they are sent to
us first. W e receive many that have been
tampered with by other repair companies
and returned to their owners unrepaired -
often further damaged by an attempted
repair.
An honest six months parts and labour
written guarantee on the WHOLE computer
- not only on the fault repaired - read the
other adverts carefully.
Free update and overhaul with each repair - it
is in both our interests for your computer to
be reliable.
NO " F R E E " games - your money is best
spent on top quality components and profes-
sional computer engineers.
All Spectrums are returned fully insured by
1st Class post. Normally within 2 4 hours -
please do not send power supplies.
All-inclusive price of £ 2 0 or £ 1 5 without
update and guarantee, regardless of the
number of faults found.

M. P. Computer Maintenance,
T h e Laurels (Dept 1),
Wendling, Dereham.
Norfolk N R 1 9 2 L Z Z
Tel: 036287 327
There's o bumper crop of goodies of software, peripherals, books
for the Spectrum and Q L User al and magazines on sole — just

SI this year's Autumn Microfair in ihe


Central Hall, Westminster, on
about all you wanted for your
computer under one roof!
Soturdoy 2 5 t h October 8 6 ' . Talk to the experts on the

SPECTRUM See all the N e w Season's


products including the N e w
Speclrums, — plus the usuol
User Club stonds or find special
bargains at the bring-andbuy.
You'll enjoy a great doy out in a

IN MANCHESTER fantastic Microfair bargains, with


big reductions on selected
hardware and software
friendly atmosphere
Send N O W for the reduced
price advance tickets on the
The Show offers full support coupon below

O N E OF T H E B I G G E S T for oil the S I N C L A I R machines (ond


compatibles), with a huge range
You'll be nuts to mitt
fhi« »how.
R A N G E S OF S O F T W A R E
IN AND AROUND THE AUTUMN MICROFAIR
100'S ] MANCHESTER -w n
OF TITLES!! "A*1]©'?** 25 th October 86'
S..PLUS..PLUS..PLUS.PLU
i3W A t rhe Central H a l l ,
JOYSTICKS, INTERFACES, LIGHT PENS,
Westminster 5 W 1
SPEECH SYNTHESISERS,
MICRODRIVES, ETC. ETC. ETC... y. \ •

10am—6pm
LUS..PLUS..PLUS..PL US. PL US. PL US.. PL US.. PL U
A d m i s s i o n £ 2 . 0 0 (Adults)
A WIDE RANGE OF SOFTWARE FROM £ 1 . 5 0 ( K i d s under 14)
WORD PROCESSORS TO GAMES
ALL GAMES AT BUDGET PRICES:
AT IfSST SiLOFFTf . SEND FOR REDUCED PRICE TICKETS TODAY
• VnJ lo MO* Juhraum (IhfHuKt). I)qx ZX MH KOI AIKY 7| Put Im. I x n i a NIT OHO
NOW IS THE T I M E TO CALL IN AT: I Plruc wnJ tat t S u u uckfu Pirate krnJ rar «K*k« i k I w
| (AJulu » £l » ) ( hJJ unjrr 14 « £ I 00)
BUDGET | Nunc
COOoMJtnOkJ .
SOFTWARE I AJdn* 20«
CENTRE I
51 F E N N E L S T R E E T
M A N C H E S T E R M4 3 0 * I I V I H tftcluJt • ilHipnl, KU-tUmwl
M,
Wnfcfr wd u b chopm POi pifiUf W /X Mtcnrfac
- M, — . __
hxhibuors ring Mike or Moira on 01-801 9172 for details of stand availability
OR TEL: 061*834 2 8 0 8
ZX COMPUTING OCTOBER 1986 25
SI I ORBITSRay Elder presents an expanded Short Cuts
this month reflecting the programming talent
of ZX readers. So if you have an astonishing
routine hidden away why not flaunt it in
Short Cuts, Remember there's £10 awarded
for published routines and the £20 Starcut
prize for the outstanding mini-
programme of the month.

Sounding Out showing how it could create ways, either connect a


graphs. microphone to the ear socket,
A couple of points. First, some but this may not be very
older computers need to be successful, or record a word or
Robert Glavas of Bury supplies allowed to warm up for about message and play it back into
our first program, a routine to five or ten minutes before the the Spectrum by the usual lead,
detect sound entering the signal settles to a standard, and or put your recorder into "play"
cassette port. This could form the secondly you have to provide and speak Into the built in mia
basis of many programs. He the sound! Testing 1, 2, 3, 4. Testing 1. 2,
supplies us with a demo This can be done in several 3...
1 REM sound senior HERE'5 •=> 5 C P E E N DUMP:
10 DATA 33,129,92,54,0,6,1,219
,254,203,119,32,1,52,16,-9,201
20 FOR f-50000 TO 50016: READ
a: POKE NEXT -f

100 REM deno 1, graph generator


110 LET s«l
120 POKE 50006,70
210 LET x=s: LET o=0
300 LET 1-USR 50000
310 LET a=PEEK 23681
320 PLOT x-s,o: DRAW s,a-o
330 LET o=a
340 LET x*x + s: IF x>255 THEN L
ET x«=s: CLS
350 GO TO 300

100 REM demo 2 , try whistling !


110 POKE 50006,50
120 LET 1=USR 50000: LET a-PEEK
23681: IF a>10 THEN BEEP -01,3
J
130 GO TO 120

26 ZX Computing Monthly • October 1986


Sound kit error
Double Up 1 REH double p r i n t
& J. Kamphuis is a programmer 2 REM Character* AfcB In t i n *
who hails from The Netherlands 20 a r » » n t » r t d In
and is a regular ZXC contributor And now to Tim Ranee of Bucks. GRAPHICS nod»
and he has asked us to make a 10 L E T » - 0 : L E T y - 0 : INPUT *En
He sent a short, simple BASIC t * r M r l l * 9 » . . . " I L I N E a*
correction to his last published routine to print a message In
program. 20 FOR a-1 TO LEN « • ! L E T c-13
double height. I know we have 616*(8*(CODE • • ( • I - 3 2 I I : FOR b-0
In the program we published used other variations before, but TO 7 : L E T d-(USR * » - * ( b « 2 I i : PO
In our July issue the code should it's neat and there must be KE d,PEEK (c+b>: POKE I d * 1 ) , P E E K
have read in the THIRD line thousands of new readers who tc+b): NEXT b: PRINT AT y , x | *A*
35.126.35 .etc and NOT 35.125,35. are looking for such a routine! (AT y* 1 , x I " 8 " ; L E T x - * M ! NEXT «
Slap on the wrists all round, but
meanwhile here is another
sample of his work, a simple but
Interesting machine code VU Calc Controlled to be changed, and some
routine to convert numbers printers may use different
between 0 and 255 to Another reader from Holland, codes, check your manual.
Hexadecimal. J.K.H. van den Bosch sent us a A useful program, anyone
Load the program and RUN it. routine to allow all users of VU done anything similar for VU
Lines 9.10 and 20 contain the CALC to print out onto a proper FILE?
main M.Code and to use It In printer, although there is a built
any adaption of your own POKE in COPY for Sinclair type printers, 1 COPV t REN C H R * 0
64000 the number, call 64002 only four columns are printed at 2 CLS : INPUT 'Nuabtr ot colu
and collect the results as CHRS a time. *n«7(MAx 1 8 ) ' I * : L E T x-x«VAL •7"
from 64000 and 64001. A little To use this program make sure : POKE VAL •23679',x*SGN P I
exercise would be to make it 3 I F x > VAL "O0* THEN L P R I N T
your DATA has been saved then CHR* VAL *27*|CHR* VAL *27*»CHR*
deal with numbers greater than quit the program, NEW the
255 (I have, for my own usel). computer and LOAD and run the
VAL M S "
10 INPUT " S t a r t at Colu»n?*|y:
program given. Lines 1,2 and 3 L E T y-y-SGN P I
1 HEM dec to h*x Include interface control codes 20 INPUT " S t a r t at R O M ? * | Z * : I
10 DATA 3 0 , 0 , 2 5 0 , 2 4 3 , 6 , 4 , 2 0 3 , 6 for the Kempston E Centronics l/F. F LEN i*-SGN P I THEN L E T "
3, 1 6 , 2 3 2 , 2 0 3 , 2 6 , 2 3 0 , 3 0 , 0 , 2 3 0 , 2 - 4 1 They perform the following tit
,230,13,203,28,230,50,1,230,201, functions and you may have to 30 I F z * 1 2 1 - * * THEN L E T z-COD
190, 4 0 , 2 3 4 , 3 0 , 2 1 6 , 1 9 0 , 7 , 2 0 1 modify them if you are using a E z * ( 1 >-VAL *97*
70 FOR f - 6 4 0 0 2 TO 64033: READ different l/F. 40 I F z * (2)< >*" THEN L E T *-«C
mi POKE « , • : NEXT • ODE Z * I 2 » - V A L *97* )•(VAL " 2 6 " AN
100 REH d«*o Line 1 turn the Sinclair
tokens off. D i * U » - * a " ) * < V A L " 3 2 " AND l « ( l )
110 INPUT *D»e Valu* 7 "1d -*b*l
120 POKE 64000,d Line 2. POKE 23679 sets the
number of characters per 30 INPUT *Nu»b»r ot L i n » 7 " | r
130 RANDOMIZE USR 64002
: LET r-r-SGN PI
160 PRINT d l * H»x V«lu«-*|CHR» line. 60 L E T q-VAL " 3 0 4 7 7 " * ( V A L " 7 * »
PEEK 640001CHR» PEEK 64001 Line 3. Checks, and puts the y M I V A L "420" # z I
170 GO TO 110 printer Into condensed 70 FOR * - q TO q * l r » V A L " 4 2 0 " I
mode If the number of S T E P VAL "420"
characters per line is greater O0 FOR g-NOT P I TO x
than 80. Some printers may 90 L P R I N T CHR* PEEK M « g > I : NE
print more without needing XT g: L P R I N T : NEXT t

700 INPUT * Do you want to p r i n t


Cassette Labeller TO 2
110 R E A D A , 8 , C , D , F , J , K > L • o r r labelaY or N ' l b * ! I F b*< »
1 2 0 P L O T 0 , A : D R A W 0 , B : D R A W 12 " y " THEN STOP
Finally for this month is a ,C: DRAW 1 1 6 , 0 : D R A U 0 , D : P L O T 4 710 GO TO 10
program from Lawrence Mlllea 9,A: DRAW 0,FJ PLOT VU,A: D R A W 0 1000 RESTORE 1010: TOR i - U S H *a*
of Liverpool and it produces ,F: P L O T 3 1 , J : D R A W 0 , K : C I R C L E TO USR * h * » 7 : READ x; POKE l , x :
cassette labels for the actual 73.L.23 NEXT l : RETURN
cassette on a Sinclair or 1 2 3 IF I - L T H E N P R I N T AT 2 1 , 1 4 1010 DATA 0 , 0 , 1 9 2 , 1 9 2 , 2 3 3 , 2 3 3 , 1 9
Alphacom or compatible printer. I *UT* I A T 1 9 , 14 | A * 2,192,0,0,193,193,233,233,193,19
1 3 0 IF 1 - 2 T H E N PRINT AT 10,31 3,0.0,3,3,3,3,233,233,0,0,193,21
The main problem he found | A T 9 , 3 1 "H" I AT 8 , 3 1 ' F - L A T 7 , 3 9,719,219,233,233,0,0,223,223,21
In writing this program was that I"J"I AT 6,31 * u * I AT 2 , 14 I I AT 1 9,719,231,231,0,0,126,235,195,19
a correct sized label wouldn't fit , 141*M*I AT 0 , 1 4 ) " O * 3,233,235,0,0,3,3,253,253,99,3,0
on the paper, so he solved It by 140 COPY : C L S : NEXT I ,0,243,231,219,219,219,223,79
printing it sideways! 198 D A T A 0 , 1 0 6 , 1 0 , - 1 1 6 , 3 0 , 0 , 8 7 , 1070)REN graphic* c h a r * .
And so who gets this month's 31.I 73,-106,-10,116,-30, 128,47,1 A B - h C-_I
coveted Starcut award? (and 74 D-u» E-tn F-o
twice the normal feel). Well this
month we were unamimous In
awarding It to Lawrence for his
cunning routine, and tidying up
of our office tapes! TITLE
Bye for now. and keep 'em
coming!
1 REN c * * ( « t t t I a b t I •
3 GO SUB 1000
10 PRINT AT 7 , 7 | INVERSE 1 I "CA
S S E T T E LABELLER*
20 INPUT FLASH 1|*ENTER>"| F L
ASH 01* TIC CASSETTE S I D E NUMBER
YOU REQUIRE I I OR 2 ) : *|A: I F A
<1 OR A>2 THEN GO TO 20
30 L E T A*-CHR* (149•A)
100 CLS : RESTORE IVO: FOR 1 - 1

27 ZX Computing Monthly • October 1986


•n the last column | sinned! I 9999 PRINT "You're Dead! saving a copy of this amended
showed you how to USE UP Rewind tape and ptay to try code with SAVE "newcode"
memory instead ot saving It. so acjaln" : MERGE 'tf ata" GOTO CODE 65091,277. This Is part of
tor my penance I'll start this the code you must have on
month with another byte-saving Three points. First. SAVE the data board when you print your
idea. programe on the adventure Illustrations.
You may remember that in tape at the beginning. It makes Now for the udg data. You
Part 1 I suggested saving space it much easier to find when you can design this as a 5 by 4
by holding the value of want to reset. Secondly when block as before, then use the
variables only in the variable you save the main program, 'Horizons' Character Generator
area of the computer's memory make sure the data in VARS Is program to convert each Into
(called VARS). and not in the already on board, and finally, code and SAVE it as explained
program area (PROG) as well. don't ever use RUN. You'll lose all last time. If you want something
For those who missed Part 1 the the data! to work on. Table A gives the
program line: data for an Illustration of a boot
10 LET a = 5 Graphics (and why not? Don't you always
takes up some 16 bytes of find them laying around In
memory space when really all Last month I left you with the adventures?). Load this in,
you want is the machine to know problem of how to make larger reading across each line, using
that the variable a has a value Illustrations with user defined FOR 1 = 60000 TO 60159 : INPUT
of 5. So type In. with no line graphics. We'll start this month I : POKE f,l : PRINT f.PEEK f :
number. with some solutions. NEXT f
LET a = 5 It is quite easy to enlarge the You'll be using a statement
and press ENTER. You'll get the 5 by 4 character Illustrations similar to this a number of times
O.K. message. Now LIST. Nothing! we've already made to double so when, In the future, I refer to
Not really surprising since you that size, provided you're "codeloader" this Is the
nave no program, but the prepared to accept a slight loss statement I mean.
machine does know the value of in resolution. (The sort of quality Save it with
a. You can prove this by typing: found in the "Dangermouse" SAVE "bootg" CODE 60000,160
PRINT a (ENTER) adventures.) To do this you need Now. to try out the Idea, type in
and you'll get 5 printed on to make use of the large Program 2. Let's have a look at
screen. I said then that you characters routine found on your what It's going to do before you
could only use this method for present from Uncle — your free RUN.
variables which didn't get Horizons tape. You need a copy Line 10 POKEs Into the printer
changed, not for those which, of this to work on, loaded high buffer — a good place to store
for example, control strength, up In memory so, things — values that the
score, objects held etc In a CLEAR 65090 : LOAD ' V CODE "newcode" needs to use. The first
gomes programe. Actually you 65091 (ENTER) two are the required
can use the same idea for these and ploy side B of the tape. magnification, horizontal and
provided that you reset them You'll get some programs and vertical, so the 2 in this case
before you start again, having codes listed first, but after about means twice normal size. The

0
just lost your last life by bumping two minutes the code you need numbers 144 to 148 are the
into a Balrog. What you do is will load In and you'll get the codes for the udgs A to E. The
write a short program to set up O.K. message. Don*t be tempted 255 is on end marker,
1 these variables. Something like
10 LET s=10 : LET l=5 : DIM
f$(10,10)
to try It straight away or It will
crash. The reason is that It uses
the machine code instructions
Line 20 sets up the value ot s,
the data start less 1152. The
reason for the subtraction is
where s, I and ($0 are strength, CALL and JUMP Each of these Is worth an explanation. The
s lives and finds array Now, RUN
your program then delete all the
followed by an address to move
to, but because the code Is now
routine looks In the ROM — the
computer's own memory — for
lines and SAVE. Yes I know that much higher up In memory than the shape of characters to print.
sounds crazy, but what you'll be it should be these jump You have to direct It to the udgs
o
Q
saving Is just those Initial value
In VARS.
instructions are not In the right
places, and have to be
instead, but as the first udg Is
code 144 and there are eight
All you have to do now Is corrected. Program 1 will do this bytes per character the routine
MERGE this Information with the for you. Type it in and RUN. It will has to be directed 144 x8 (=1152)
main programe when you want find those incorrect addresses bytes below the real start. (If
to restart, with a line such as: and correct them. It's worth you're confused by that take

28 ZX Computing Monthly • October 1986


"Runestone" until later!) Once
you have these drawn out on a
suitable pixel/character square
grid help Is at hand to store and
colour them. Load in the
"character generator" program
and convert each character
square along the top row to an
udg, then save these to tape
(remember you only want A to
P). Repeat the process for the
second and subsequent rows
and repeat for the second
picture, saving each of the
codes In order, one after the
Clyde Bish returns with other on the tape. Now you
need a utility to store them as
some more byte saving complete pictures in high
memory, and also add colour
advice Information. Program 3 Is what
you need. Type it in. SAVE for
luture use then RUN. Answer the
consolation in the tact that I've RANDOMIZE row *8 + column first prompt with the number of
only recently sussed it outl) -t- 22528 : POKE 65050,PEEK pictures to store (in this case
Line 30 does all the hard 23670 : POKE 65051.PEEK 23671 two). The program clears the
work. It resets the character To use this extra code make the required space and tells you the
pointer as explained above, sets following changes to program 2: address of the start of the first
the row and column pointer Line 30 - add INK 7 to the start picture. Make a note of this (and
each loop, then calls the routine of the line, and append INK 0 to subsequent addresses), as you'll
to print that row of udgs. Each the end. need them later. You'll then be
loop prints successively lower invited to play the data tape
Line 40 — add to the end of the you made with those blocks of
rows, and Line 40 resets the line. RANDOMIZE s + 1312: POKE
character's pointer. 16 udgs. The program will load
65047, PEEK 23670 : POKE these in to the correct addresses.
Now RUN and you'll see a big 65048, PEEK 23671 : RANDOMIZE When the eighth biock of a set is
boot appear centre left of the USR 65046 loaded, stop the tape and add
screen. If you want the Now RUN and you'll find a multi- the colour. You'll see the picture
illustration elsewhere you must coloured boot suddenly displayed with the first character
change the POKE 23306 value in appears on screen. The reason square flashing. Input the
line 30 to the number pixels for the sudden appearance is atlribute for this and subsequent
across, and the first number In the INK 7 . . . INK 0. The boot Is squares. You can work them out
the POKE 23307 expression to the drawn In white INK on white using the table in the last issue
number of pixels up. The chart PAPER and so is Invisible until the (or by INK + PAPER • 8 + (128 for
on page 76 of your manual will colour is added. FLASH) + (64 for BRIGHT) If you
help You could of course, use these don't have it — That'll teach
Ideas to produce other you!)
In colour illustrations. A double size 7 by 3
illustration top centre could If the attribute is the same as
If you want the picture in colour provide a location scene with the previous square just press
you'll need to add that text underneath. If you ENTER. When all 128 have been
Information to the boot graphics understand the system so far filled in you'll move to the next
data. Again you could use the you'll find it quite easy to make picture to repeat the process,
utility I supplied last month, but the changes. (If not, drop me a then save the combined code to
I'll give you some to get on with. line at Golden Square and I'll tape, ready to load back in at
These are found In Table B and give you some help) the correct address.
will produce a blue and red Now what about those To use this dota you'll need a
boot on yellow paper. Add these perfectionists who want targe short machine code routine to
extra 20 bytes, one for each pictures plus maximum drop it down instantly to the
character square, with resolution? No problem — Display and Attribute Files. Use
"codeloader", altering the except the amount of memory "codeloader" to enter Ihe data
FOR/TO values to 60160 and they'll use up. A full screen from Table D. changing Ihe
61079. colour Illustration uses up 6336 FOR/TO values to 65324 and
You could get these onto the bytes, so you could only get five 65367, then save as
screen using a BASIC program in the top 32K of memory. This SAVE 'ttowncode" CODE
as we have done before, but it may be O.K. if the controlling 65324,44.
would be rather slow. We would program Is quite simple, and I'll I'd like to explain how the
do better to resort to some show you how to design your routine works but space is fast
machine code. What we need 1o own "Mugsy"type game in the running out so I'll press on and
do Is take each data value, and next issue, but for the moment give you the routine you'll need
POKE it Into the attributes file in let's stick with smaller fry. How to have in your program to
blocks of 2 by 2 character about a 16 by 8 character make use of It. One important
squarei Enter the data from Illustration top centre, with space point though, you must set the
Table C using "codeloader" with either side for scores, strength variable n to the start of the
the FOR/TO values at 65046 and etc. and scrolling text required picture data (noted
65090. As this is added just underneath? from Program 3) before calling it.
before the "newcode" which is Assuming that you did Just save
already present, you can save It two pictures. Program 4 will
all together with: Pictures allow you to switch instantly
SAVE "gcode" CODE 65046,322 between them. Type this in and
Note that the routine assumes First the pictures. You've try It out (making sure you still
that the position of the top left obviously get to design these have your picture data and
character is row 10. column 0. yourself. (Try two simple ones first. "downcode" on board). Fast,
You can change this with: Leave your upgrade of wasn't it?

29 ZX Computing Monthly • October 1986


Tablt H PROGRAM 1
c 0 0 0 15 6 6 15 REM " c " C O D E from "HORIZONS"
0 0 255 «a ft^ 255 t a p e must he l o a d e d to 6 5 0 9 1
0 0 £24 224 224 96 96 240 a r t e r CLEAR 6 5 0 9 0
£k A 10 L E T = = 6 5 0 9 1
e 0 0 0 0 0 V V £ 0 DEF Ft; a '.x» = I N T is +x) / £ 5 6 >
0 0 0 0 0 c V 0 3 0 DEF Fit b (x « =S + X - 2 5 6 * F N a i x )
C • e; 1 c • c i 5 ic 31 31 5-0 R E 5 T 0 R E FOR I = i TO 5 REH
r- POKE £ + y , F N b'.'x) CQK£ « +
£55 255 255 255 255 255 ij a j FN £'.>(! NEXT i
ii 5« 2 - i 15£ 152 5 0 DATp 1 0 6 . 3 2 . 1 2 7 164,56 3 15
A H, 2 5 1 . 1 5 6
0 C c A
V 0 7 50 •

o 0 0 0 22* 2*0 243


31 31 03 63 63 63 63 63 PROGRAM 2
ft-•ec
m.' £55
.£55 255 255 255 1 REM You must h a v e or- b o a r d
i ! J £55 £55 £55 255 255 £55 £55 " n e w c o d e " and " b o o t s " codes
£51 £5; £53 254 255 £55 255 255 1 0 POKE 2 3 3 0 6 , 2 : POKE 2 3 3 0 9 , 2
COKE 2 3 3 1 0 , 8 : POKE £ 3 3 1 1 , 1 4 4 : R
252 25a £ 5 i £54 ft 254 254 25* OKE 2 3 3 1 2 , 1 4 5 : POKE 2 3 3 1 3 , 1 4 6 P
e j 3£ ie 15 0 k* 0 OKE 2 3 3 1 4 , 1 4 7 : POKE 2 3 3 1 5 • 1 4 8 P
255 1 £55 I 255 0 0 0 OKE £ 3 3 1 6 . 2 5 5
il.' 7 c 0 V
20 LET s=58648 REM S t a r t Of Q
3 0 r a p h i cs d a t a Less 1 1 5 2
246 7 « rt
15 0 0 V 0 3 0 FOR f = 0 TO 3 : RANDOMIZE S + 4
ft £52 4 £46 0 c c 0 0 * r" POKE £ 3 6 0 6 , PEEK 2 3 6 7 0 POr E
2 3 6 0 7 PEEK 2 3 6 7 1 : POKE £ 3 3 0 7 , 8 1
+ f * 1 6 : POKE 2 3 3 0 6 , 0 RANDOMIZE U
Tsbtt e
5P 6 5 0 9 1 NEXT f
45 40
40 POKE 2 3 6 0 6 , 0 : POKE 2 3 6 0 7 , 6 0
50 50 i f 40 40
4.0 40 49 40 40 40 50
50 40 i t 40 PROGRAM 3
1 0 INPUT "No. o f p i c t u r e s - to s
Ts bit C tore ";p POKE 2 3 6 6 1 , p
33 0 £2.5 17 e4 60 14 4 20 LET d = 6 5 3 6 7 - K p * H 5 £ + 44: RA
5
NDOMIZE d POKE 2 3 7 2 6 , P E E K 2 3 6 7 0
6 197 126 16 19 16 6 POKE 2 3 7 2 9 , P E E K 2 3 6 7 1 : C L E A R d
31 10 ie £S3 16 19 237 160 - 1 . LET d =£56*PEEK 2 3 6 7 1 + P E E K 2 3
6 3£ b™
A ' 16 253 103 16 £34
670 L E T s =d LET p=PEEK 2 3 6 8 1 :
FOR i = 1 TO P : C L S
107 6 54 10 16 253 103 13 2 5 PRINT " P i c t u r e " ; i ; " s t a r t s
120 1 — 32 22 0 201 3 ^ >f a H
30 P R I N T ' " P L A Y T A P E "
40 FOR f = l TO 8: P R I N T AT 4 , 0 ,
" L o a d i n g row ";r*: LOAD ""CODE d +
Tabll C ' f-1) * 1 2 8
0 1£5 1 • 64 62 0 60 NEXT f : P R I N T ' " S T O P THE TA
If A £ 3" A - 16 10 R E " : PAUSE 2 0 0 : C L S
2*: i
7 0 L E T c =0: FOR f = d TO d + 1 0 2 0
60 2S« 6 i S T E P 1 2 6 : RANDOMIZE f : POKE 2 3 6 7
ii C «
16 V 23" 5 , P E E K 2 3 6 7 0 : POKE 2 3 6 7 6 , P E E K 2 3
A 15 10 * J 25: ec 2 5 i 6 7 1 : P R I N T AT C , 8 ; " A B C D E F G H I J K L M
NOP": L E T C = C + 1 : NEXT f :
t—
—, A«201 REM C a p s i n q u o t e s a r e udgs .
E n t e r i n 6 mode
80 L E T d =d + 1 0 2 4 : FOR f = 2 2 5 3 6 T
0 £ £ 7 6 0 S T E P 3 2 : FOP n = f TO f + 1 5
POKE n 13—
90 I N P U T " " a t t r i b u t e ? " ; a $ IF
Now for the promised scroll. a $ = " " THEN POKE n , a GO TO 1 1 0
This is called from the ROM 1 0 0 L E T a =UAL a $ POKE n , a
using RANDOMIZE USR 3583. It 1 1 0 POKE d , a : L E T d = d + l NEXT n
scrolls only the bottom 11 lines, NEXT f
so anything on the top half of 1 2 0 NEXT i
the screen [your Illustration for 1 3 0 INPUT " T i t l e f o r c o d e ? " ; a 5
example) is quite safe. 1 4 0 SAVE a $CODE s , P * 1 1 5 2
Add the following lines to
Program 4:
15 RANDOMIZE USR 3583 : PRINT PROGRAM 4
AT 21, 0; "This is picture 1" I REM \t o u m u s
/
t h a ve ' d 0 l,t r< C0
25 RANDOMIZE USR 3583 : PRINT on board
AT 21, 0; "This is picture 2 " 10 i £ - r. = 6 3 0 1 9
— G |-| U £ 9 9 9 9 T

then change between them a NPUT "P r e— s e n t e r "; a s


few times and you'll see the 20 l e t n - h i l .
— •_"«• J. f J. GO T
J.
effect. NPUT "Pre s
s enter as
That's all for this Issue. Tune in 30 GO T
IJ •1
J.
L*
t.'
next month for the Big Time, c RANDOMIZE n
o § POKE » a . PE — -
1_

including a way of holding a K 236 OKE 6 5 3 2 6 , P E E K 2 3 6 7


- »
r v
•i

.
.

whole screen colour illustration RANDO USR 6 5 3 2 4 : RETURN


;M i ~
— — =

in less than 200 bytes!

30 ZX Computing Monthly • October 1986


r A ^rii

/
Phying is believing is fir is Ibis Ihe ultimite chess pliying sensition (or Ihe

/
Sincliir Spectrum is concerned. The mjny (eitures of this superior version
mejns il vsill belt ill existing Sincliir Spectrum chess progums published.
• Viruble level performance • Set pieces
fr»n> • 1900 stmdird book opening » Problem solving
I
plus miny, miny more unique feilures....
From beginner through to lournimenl phying expert Cyrus II is the only
chess prognm Ihit should interest you.
YOU DON'T BttlfVFUSn
Send w> your old Spet lrum cht^ progrm indwell send you Cyrus II lor the s/hi ul
otter pm rot £6.95. Ityouatenotcompkh'U \Ui-tiedne'lrefund your money ibng
with your old chess gjme Mark 1 - Spectrum 48k Mirk It-Spectrum 128K

Pleise send me copy/copies of Cyrus MKI [J"


I wish totikeMhmtqe t>l sour ulonit jndenclose my old .tyxi Hum tkm ptogum^
(Mete it not ippk ibh-i

Please find enclosed j cheque P.O." tot the mm ot£

ChMge my AteessVisj the sum oi£

Cud No. Stgnjiute

VI/JK' Address

Postcode
'Tiik is required " Sttde pjyjble to AMigUl SoKw.uetld
Pk'jH'jIlon 1 diysfor delivery
s,-ndto Alligiti Softsvire ltd,, I Oringe Street, Sheffield, SI 40W.

ALSO AVAILABLE... MARK II


3D CYRUS II FOR
SPECTRUM
128K
LWJ

ft 60 TOR jrrQ TO T
Listing 1 6 - 0 PAPETP j
f.rjn AT 1 9 , J » - : r R I N T • •
I** CUC«0 6*»0 rND TOR j
T10 HS^O -*oo r A r c R 3
I70 pcreat s t a r t 10 AT i ? , i 6 : r R i N T •ccortc - ; s
170 f - 7 0 r o AT i ? , 2 - : r r i M T - H C " i h o
1 00 1 eve 1 - 0 AT 0 , 1 3 : r R I N T "BLOCI'C * l f
s-0 -10 1 ovc ] * 1 svo 1 » 1
160 RCr-s i t i;_tur - 3 0 AT 0 , - : r R I N T -LCVCL "1 l e v e l
•-»0 r / i ^ t r ? : CLT - 6 0 m^RND(1 TO 18)
I AO - •t rf • / — ^ » — 0 n«RND(1 TO 33)
-OO l t r o c l ; - e ( « , n?
" n r 3~1 —*>0 i r I c o c l . " 1 THEN 00 TO 760
?10 b - 1 TOO rAnr-R ?
770 1 rt\n AT m , n : r R I N T * ' •
710 H - Z e?o r i t a_bur
740 q - i 070 CND D C r i n e r i t a
RIO R r H . t r I- XXX* gubbe X X I I
760 t~11 T3 r " D r r i n e PROCedure jabfcc
7—0 4 1-0 n f o R r H r r t - X » T X gubbo X X XI
-on r ita r--o r c r c i ? o
7*70 PCCoat prooram o«o AT x , / : r p i r i T • •
TOO Qubbe •v * - T N I ' C Y *
710 l:otl_u r»Afi T r THEN
370 Irol 1 »>! n i r n / » - C H P * < 197) THCN y * y 1
zzo i r u ' 7 TIICM spolio T T •v/«-CIIR«(700) TIICM
710 I T x«a AND b AMD u = l THEN t a n , T ^ C I ! P * (70C) THCN x - x l
730 t ino : r n/«t-CHR«; 7 1 6 ) THEN
760 CMD RCr®at program
3"*0 RCHarfc t i l * r i l a I I I X •"11 I N K 7
TOO D C r i n e mOCcduro r i t a °-O AT -./RPPIRIT
"5»?n RCNarl; I I I I r i t a K i l l O70 00 TO 310
100 I T r - : i 3 0 TIICM f - M 3 "90 PCMARL L.OLL IKKX
110 DIM o<r> , p ( M , 0 ( 1 7 , 3 6 ) . rR0Cc .d.jrc t,olj
170 j-»i T O r »1*0 "CNjrt; )f*)tl l.o I 1 XXKX
ITO FCCP ico.j
110 o ( j l « n i l D ( 1 TO 1C) jn-ro F |{rozlr~l
T THCN t u t : s l a t
1^0 f ( j ) - R n r < i TO 31) 1010 y r ^ o OP THCN t u t : d u

1 / 0 t:rocl:*Q C o ( j ) , p ( J ) )
1 - n I T l : r o c l . - l TUCN GO TO 110 t "in ,-36 T|ICM t u t : a la
* T r 0 P
100 i r o t j ) 1 : ! © AMD p t j S ^ ^ TIICM C
O TO 1 1 0 1060 rMD TCP I r.c I.ol I
>
19n e ' o l j ) , p t j ! J - I r r - « . : r f x x r x t i m e xxxx
? 0 0 rArcr? RMD ( I TO DEC i no TROCoduro t i m e
"MO AT o < j ) , p < j ) I P R 1 M T " " i o»»o PCMarl: XXXX time xxxx
"<7r> CND TOR j ! I 00 t l " i « t I d I 1
"ZO T A r C P 3 I I 10 i r t i d - » 1 3 THCN
^<10 r o " j » 0 TO ! ? I I 70 P A R C P 3 : A T I 7 , t : P R I M T • - : t
3*10 a t j t o : r R i » i T * • 11-n- 1
360 r c c r i o o o o , j » 3 • 1 "*0 R N P T R
AT i , 3 6 : r R I N T " * 1 1 ir> r r t-^6 THEN t u t : s l u t
300 CND T O R j I i**o THCN cccr 1 0 0 , 1
3-»0 TOR j = 3 6 TO O CTCr 1 i t f.r\ C » T DCP1 r>» t i n e
600 AT O . j r r R I M T • • I ; -»n P C M j r i XXXI spol'.e 1 * * 1
6 1 0 i r j ' - 1 7 THCt! cccr lOOOO,j>3 1 IOO S C r i n o rPOCcdurc spoke
6 TO a t i ? , j : r R i M T • • t • on T M r r l X**X 3pal:c XX»«
CV* r^ic r*op j 1^00 HV
610 INI' 7" • | o T«" W ~ 0 O P ! 1 - 1 ? T H C N G O T O 1
AT F9,?:RRINT "TINE 710

32 ZX Computing Monthly • October 1986


m

^ 0 by T o m a s Jonasson

Capture the ghouls In Avoid the blocks In the maze or


** you II find yourself joining the
this ghostly maze game ghosts In llmba Your aim is to get
9 9 the key, capture the ghost and des-
for the Q ! L . patch him to prison.

1—20 tr VC OR V-36 THEN OO TO 1 ""70 BEEP lOOOO.j


»"/in l"»60
1770 AT 19,22:FRINT S
171" t r I'rockTl T H E N CO TO 1340 1730 END TOR j
17-50 ° A P E R O 1790 u— 1
17*0 AT «,b:PPTNT • • ieoo E N D IP
17-0 TT q'l THEN b-b-1 1610 ON u»l
1780 TP" q-Z THEN a~a 1 18ZO I T x«a AND /=b THEN ta
17"0 T«" q-3 THEN b^bH 1870 ON u»2
1700 IT q^4 THEH a^aH 1 8 4 0 I R X»l AND y«33 T H E N

fin 7: INK o 1 8 7 0 P A P E R 3 : I N K 7

1770 AT * , b : P R I N T C H R S < 3 4 ) 1 8 6 0 R O P j-t T O T

1770 E N D D E r i n e »po!:e 1 P"*0

1710 REMarli I H I (cl X I X * 1010 AT 1*»,22:PRINT C


1770 q«PND(l TO 1890 10000,j.
1760 E N D D E E 1nc 19no END POR j
<770 REMirl; XIXX wv XIIX 1 10 FND REPoat n/_tur
'TOO DErir.o T R O C c d a i c w v 1920 E N D ir
'T^o P C M a r I. X X X I hj IIII 19*50 END SElect
•inn 1940 END DEFine
M'O T qr-l T H E N v v - l 19^o " E M a r I: X X X * t u t X X I X
1"70 T T q-2 THEN H r H 1 19fin DErirtc P R O C c d u r o tut
>470 T r q - 3 THEM v v « l 19—0 RENar k XX»X tut III*
14<>0 TT THEM r . ' t - U 1900 TOR j-40 TO i STEP 1
>-Mr P E T t r i e HV 1 9 9 0 B E E P 1 0 0 0 0 , J * 1 0

! i P C H j r l : X*XX c ! u t X I X X 2000 DEEP 10000,j


14-0 P E r i n * PROCoduio n l u t 2 0 1 0 B E E P 1 0 0 0 0 , J • 2 0

l i n n r r x r r l : XXXX c l a t XXX* 2020 END FOR j


1 1 " ? I N K i:csiZE 3 , I : P L A S H I : P A P 2030 B E E P 1,1
E P 6 : C L ? 7140 E N D DEFlr.o t u t
l^oo AT 0,7:PRINT "GHOST CATCHER 2 0 7 0 P E W a r k XXXI r l t a _ b u r XXXI
2060 DEFlno PPOCedure rlta_bur
1510 T A r E R O M N K 7 1 P L A S H 0 ?n-»o n r M a r l . XXX* i i t a _ b u r XXXI
1770 AT 0 , 7 : F P I N T CHRTtT-U 7080 "ESTOPE 2170
1 "70 0 , 7 l : r R I N T CI IPX ( 3 4 1 7H90 FOR j*l TO D
i T*»K 7 : T A P E R 6 21OO READ ba,bb,b=,bd
•^70 A T 2 , 2 : P R I N T * S C O R E " I s 2110 I THE b a , b b TO fcc.bd
•760 t r or h a T H E N L E T h f i * c ! F L A S H 2120 END FOR j
1 2170 END DEFino rlta_bur
1 7-0 AT 4 , 2 : P R I N T -HI S C O R E ' | hs 21 40 PEMarl' XXXX d a t a IXIX
1 7 8 0 F L A S H O 7150 TATA 176,71,I3o,100
1*590 AT 6 , 2 : P R I N T "LEVEL " J 1CVD1 2160 DATA 176,100,167,100
1600 AT 0 , 2 : P R I N T "PRESS ANY KEY 71 TATA 167,100,163,91 O
TO
1610
PLAY"
INK 0 : C S I Z E Z . O
7 ISO DATA
DATA
165,91,156,91
139,^1,159,100 z
1670 AT 1 9 , 7 : P R I N T "XXX* T o m a m J n
ATA 176,74,1^3,71
nrt*«agn xxxx" 7710 DATA 136,97,163,77 2
777f>
1670 FOR j"l TO 4001 E N D F O R j
1640 REPeat till_«tart **730
DATA 1*2,71,162,100
PEMarlr XIXX t a I * X X <
t £>70 I F I N K E Y * - " " T H E N E L S E E N D 7740 nrr(r,» PP02cl.il » ta
p r r n u t ts^rt't P E M e r l t xxxx '.a x x x i
ot
1AA0 E N D R E P e a t tlll_itart 7761 PAPER 3:INK -
RE*arl< X X X I »;cll_u X X X J 27-0 POP i»IC TO I STEP I O
DEEr 10000,i
O
P E F l n o P R 0 C » d u r o l;ol l _ u 7780
(6O0 P E M a r k XXIX k o I !_u XXIX 7790 1
DC
a.
1-00 "ELoct ON u 2700 AT 19,22:PRINT &
1-10 ON J C 23IO END TOP i
1"»20 i r AND / - n T H E M 2720 n
1-70 PAPER 3 I N K 7 7370 run i f
1--40 ROP J T I T O 10 7 7 4 " rMD p c r i i . o
0

ZX Computing Monthly • October 1986 33


LU

v
' A M I ?s
difficult, devious game I also
Captain Slog love relaxing with a straight-
forward live key exercise in pure
reactions.
Alpha-Omega Software
The five keys In this game
£2.99 control UR/U/O and lire. Collect-
ing an object is done by getting
This game is ol the maze, chase, next to It. screens are entered
search and tind variety and a and exited by wandering off
most acceptable one al that. the edge and a new one is pre-
The cassette insert instructions sented, no scrolling or tiresome
are beautiful in their brevity. I fades.
quote: Mapping is a possibility as
"There are three types ol blue-prints and keys appear to
barrier key, red green and be In the same locations, cer-
white Each key allows you to tainly the maze is not randomly
pass through Ihe correspond- formed, personally this is too
ing colour barrier. The nine much like hard work tor a
blue-prints are spread out Inlo program which I intend to use
different sectors within the for simple pleasure buf anyone
game. You have to collect all who desires to take It more
nine before you are allowed seriously would be able to do
access to fhe telepori room" so
There are several other Locations vary and are
objects which you may colleci nicely designed, watch out for
to Increase your score, others the blob which simply blocks
will give you more energy or your way, It can trap you ond
use It up Avoid all contact with then it's a case ot end of game
robots". Vou ore only given one life and
Given just this I would not be not much energy.
inspired to open the case let Worth adding to your collec-
alone iood the program, and tion as long as you do not
that would have been a shame expect a state of Ihe art
Star Firebirds
because for me It had that program.
perlect blend ol difficulty and along the bottom of the screen
challenge that makes a game making the task ol avoiding
addictive OK. so it is an old them awkward. If not
Firebird Impossible
format, similar to many others, £199
the animation is pretty simple, Of course they a r e not
enemy sprites are few in variety I well remember reviewing this helpless sitting pigeons, they
and sound Is fajrly etementary. game when It was sent to us by drop bombs at you and con-
8ut for me it works. Insight and saying that it was a tact with one Is fatal, your five
Much as I love pitting wits good game but overpriced. lives are soon depleted. Sound
with a programmer who has Either they harkened or sold out Is limited to a few burps during
taken great pains to devise a to Firebird. actual play ond o respectable
It remains a good gome Intro tune, colour is bright, clear
and more realistically priced at ond doesn't clash, and
£1.99, so much so that I have no movement is smooth.
hesitation In recommending It A range of options Including
to Zap-Em-Alt fans everywhere joysticks and starting levels is
You may have gathered provided and a full high score
from the above that this is a "hall of fame" Is Included. It is
game in the "if It moves, shoot very easy to beat the scores
it" class, and so it is. Forget the which start the Hall ol Famei but
Insert blurb, the game consisls no problem, your own sets can
of wave after wave, each com- be saved and reloaded if you
prising ol 50 "birds", of aliens wish.
attacking you and you have to A nice unpretentious
zap them quickly as they circle mindless killing game, and I'm
swoop and dodge. As you not knocking It. after a day of
progress through each wave reviewing The latest mind
the action gets faster and other stretching arcventure It's just the
problems occur, such as scatter Job to finish off with before
bombs! going to my well earned rest.
The animation is simple but
effective the birds appear and
get larger as they follow their
patterns and you move let! and
right and blast away at them as
fast as you can.
Just to make life that extra bit
difficult they will sometimes
appear from beneath you or tly Isi
U11J
Full Throttle You will skid it you take a corner
too fast, slow down it you run off
the track and slop if you collide
Elite Classics with any ol the other rides, o
£2.99 Irequent event for me as they
II had passed through my mind weave around unpredictably.
ol some lime thai there was a There is o bit of flicker,
lot ol lile lell in some of the especially on the other rides
earlier gomes lor the Spectrum ond some colour clash when
and now Elite has seen til to your cycle goes ofl Ihe track,
market what to us old hands sound is a rather high pitched
are indeed classics. blipping which, with a bit of
This program was originally imaginalion passes for an
produced by Micromega and engine noise None of this spoils
received much acclaim in Its the game to any real extent
time so how has lime treated it? and you soon get absorbed in
Belore going into personal trying to beat those computer
opinion I think a description ol controlled machines, all 39 of
the game is in order. It is a them!
motor cycle racing simulation It was great to replay this
in perspective 3D and you have game, one of my old favourites,
control over left/right turn and Ihe original of which lurks in the
lean, accelerate and brakes depth of my program box, and
either via the keyboard or it made me wish I'd kept it
joystick. You can choose to race closer to hand. No it hasn't lost
any one ol ten circuits, all ot any of its magic and I'd still
which I am assured are authen- recommend It to you even If it
tic representations, selecting was still at fhe original price. At
the number ot laps and prac- £2.99 it's a snip it you haven't
tice or race mode. already got it.

Cagara
Your view is ol Ihe track monster appears (a big blob)
stretching out from the bottom you tend to get kilted auto-
ol the screen and providing you matically as it can fly through
are racing, other bikes disap- Players hedges and you can'f. One
pear or loom larger as you are £1.99 contact by a monster and It is

IJRIAT
overtaken or overtake other curtains for you — game over
riders. You have been teleported to time. There are other ways of
In the sky, area information the land of Cagara by manag- defending yourself. Scattered
is given on the track, lap ing to get yoursell caught in an around the grounds are a
number, speed and position. evil gypsy's crystal ball. Presum- number of objects. You can only
ably. you crossed her palm with carry one of these at a time
cupro-nickel instead of silver. and must work out which thing
The only way you can regain does what. This is mode more
your freedom is to explore the difficult for you as the items are
DONINGTON castles, mazes and jungles in such small blobs lhat they ore
SPEED: 175 LAP NO:3 Cagara and find Ihe magic instantly unrecognisable. The
POSITION: 39 chalice A reasonable if hardly only one that looked like
original storyline An element of anylhing was a pink castle that
originolity is brought into play teleported you to another
by the tact that you are accom- coslla
panied on Ihis adventure by The rooms hove equally non
your sulky pet hamster called stunning graphics, the highlight
Eric who for some strange of the jungle chambers being
reason has sprouted helicopter whether they have two three or
blades! four exits. The game looks as II
Not that you would nolice. it was written when the Spec-
for he is depicted on screen as trum first came out. Cagara is
a small red blob with spikes on so bad, it is almost worth buying
who always seems to run off the for that very reason. ^
lirst screen, never to be seen
again. This is o Irifle unfortunate
as he Is supposed to fight your
batfles for you. Instead, when
you (represented on screen by
a medium sized blob) are
chasing through a maze and a t m

I.C.U.P.S. sluck together with a poor at- sising


i g ithai you are just playing
tempt at giving it some sort ol another computer game Is
unifying idea. First off is a brisk surely a mistake. Aren't com-
Thor shoot em up in Ihree sections of puter games about creating
£8.95 space tunnel. The molhership illusions? Who wants to be play
dumps you and you have to a game about playing a com-
In case you are wondering btast/avoid/outrun the enemy puter game? You guessed it.
ICU.P.S. stands lor the Interna- ships and get to the end where
tional Commission for Universal you enter phase two controlling
Problem Solving. Now you know a "Hostile Environment Anth-
lhat you can forget it immedi- robof" who must find four parts
ately. The inlay blurb blathers of bomb hidden in his storship
about your special mission etc The robot glides nicely through
but doesn't even claim that the a rather unpopulated maze of
game is real. You are not 'at the decks but even the inevitable
controls of a Hypermegalhrust- nasties are halfhearted and
strike fighter' as per usual in this don't seem too intent on in-
type of game, instead It rather flicting damage.
tamely tells you thai these ore This is a very poor product
computer games to test your for a full price game which
skill ond decide whether you seems to have been thrown
can become a n agent for together with the thought that if
I CURS. one tired formula idea won't
In short what we have here work maybe two will. Unfort-
are two unrelated bits ol game unately it doesn't and empha-
LUH
Virgin Atlantic
graphic ol him along the deck
of the Challenger to the Telex,

Challenge
Radar. Galley, Map or Engine
room displays. He can also be

Game
mode to climb into the cockpit
to alter direction.
As you may gather, this is not
Virgin a leisurely decision making
£5.95 exercise but a mad dash
around the screen in response
You've lo to admire the man, if to compuier messages to adiust
there's an angle Richard the various parameters ot
Branson will exploit it. t suppose direction and speed, eat and
you don't get to be a millionaire to make lightning business
without that kind ot acumen decisions to telexed questions.
anyway. I was sure he had other
It's been some time since I crewmen aboard to help him
saw a Virgin computer game with all of this but in this game
but. after a shaky start, their he does it all on his own. he
products have been quite re- really ought to learn how to
spectable, so, is this a bit of delegate! It this is a realistic
Branson genius or a right simulation ot his day he'll have
pickle? a heart attack soon.
Well the game itself is o! the No it's not easy and I found
Strategy type with the nice frill myself getting quite irritated
ot a graphic action sequence with it. the number of fishing scores:— 5% and 66 at the time
to lift it out of the usual run of the boats and Icebergs (looting ot writing, but it is nice to have
milt rut. You lake the role of around seems unrealistically previous ones on screen as a
Richard (a role I've been trying reminder.

I;con#>
high, also in Joystick mode the
to emulate in real lite tor ages!) responses seem rather slow at Finally I must admit to
on his much publicised and times enjoying playing it and if this
triumphant attempt to cross the Probably my biggest moan kind of mental gymnastics is
Atlantic in record time is the lack of high score table, your cup ol tea then you'll like
You control a recognisable I know I was getlinq better it too.

vacuums and traps, image in-


tensifies ond marshmallow
sensors.
Having e q u i p p e d your
vehicle, you must then drive
round the streets catching
Who you goin" to call? — "roamers" and stopping In front
GHOSTBUSTERS! Not exactly a ol buildings where a slimer is
haunting tune but rather one present. By careful positioning
more likely to give you night- of your men, you must
mares as you lind that you can't manoeuvre the slimer using
get it out ol your brain. Now. the your negative ioniser back-
game of the film has been re- packs above the trap you have
leased in an enhanced version laid and then bingo! Your credit
for the Spectrum 128. The rating starts to Increase. Failure
added leatures include better lo accomplish the task results In
music and graphics but ihe the immortal phrase "He slimed
game remains the same. me" (some dodgy voice synthe-
HI: For anyone who has been sis here) as your man gels
away for the last coupie ot covered in a dose ol
years and doesn't know the ectoplasm.
Luigi can turn to face any ot Despite the vast amounl ol
storyline New York Is suffering
Sbugetti the four directions and can
then wiggle his arms around to
from an invasion of ghosties,
ghoulies and things that go
hype that preceded this game
on Its initial release and despite
Junction give various signals such as
slopping a lane of tralfic or
bump in the night. You are
setting up a franchise to make
the lact that it is one of the best
selling computer titles ever.
allowing another lane to turn Ghostbusters is not a particu-
Bug byte as much money as you can by
right. Everything must be kept larly good game and is certain-
£2.99 catching ghosts and slopping
moving smoothly and no-one ly beginning lo show ils age
them reaching the Temple ot
should have to wait too long now. Even with the added extra
Zuul where the climax ot the
before being allowed to move. bits on Ihe 128. it is still not very
Luigi is a trainee traffic cop and game takes place. First, you
Dither too much and the cars in good value lor just
has come all the way Irom must buy and equip your car.
the lane in question start to under ten pounds.
Macaroni to learn how we Brits There are four'basic models to
Hash. Unless you now remedy
cause accidents over here. choose from with speed and
Ihings straight away, the game
amount of equipment that can

IV
Before he can return to his wife ends. Points are awarded for
Fettucine, he has to let lots of be carried increasing with
each car successfully through
cars go pasta him without
keeping anyone waiting too
the junction. Get everyone
price The bits and pieces that
you can buy include ghost
7i l l
through without crashing or
long. waiting and you move to the
The screen is divided Into next, more difficult junction.
two areas The junction full ol Sbugetti Junction is a
assorted bikes, cars and lorries pleasant enough game to play
wanting to go every which way but doesn't really have any
occupies the main area whilst
lasting appeal. Unless you have
in the bottom left hand corner
always wanted to be a police-
of the screen, there is a large
picture ot Luigi doing sema- man or traffic warden or the
phore impressions and another Mafia have made you an offer
box giving details of how well that you cannot refuse give this
he is doing them. There are one a miss.
plenty ot game options to select 4
from ranging from degrees ol
dilficulty (light, heavy and rush
hour Iroltic) to whelher cars
drive on the left or right side of .11'
the road.
1gj| SINCLAIR TITLES
NEVER ES0<NG STORY ( 4 95 LINWDR0 GERMAN (2 50 GRIFFIN HATCHS t CHEMISTRY PACK
1 SOFTWARE SEACHEAD
10 15 YEARS
( 2 95 PSYCHEDELIA f t 99 ATOMS & MOUS INTRO TO TRIGONOMETRY
ROBOT MESSIAH ( 2 50 Q t K X S A V A WORD PR0C (1 99 MENTAL ARITHMETIC (5 95
POLE POSITION f 3 95 TECHNICIAN TED (2 95 BRAXX BLUFF ( 1 99
KNOCKOUT I M AVAL0N (2 50 DEATH CHASE (1 99
MATCH FIStl'NG (295 AC1IVE COMPUTER LEAP '.G BOOKS CODE NAME MATT [ 1 99
GAMES PACKS
SON OF BL AGGER ( 1 99 - 4 TAPES ( 2 95 HEATHROW A T C (2 95 SILVEftSOFT PACK WC
JET SET WILLY (2 95 MATCHPOMT ( 3 95 SLtftRMUTT ARCAOE ACTION ORSiTER
BC » QUEST F 0 « TIRES (3 95 NOW GAMES INC STARSHIP ENTERPRISE CYBER RATS ARCADE
LORDS OF MIDNIGHT FALCON P A T R 0 :
EDUCATIONAL PACKS ACTION SLIPPED S*D f5 00
ASHKER0N
ARAK-AN MGHTS B«1AS B L 0 0 D A « |
PHYSICS 0 LEVEL and A LEVEL
COOENAVE MATT II VIEW TO KILL FP.DAV
CODE SAME MATT II (l M STRANGELOOP PYJAMARAMA ( 3 99
MATHS 0* LEVEL CHEMISTRY 'O" LEVEL
I3tri TEST MATCH BEAKY 4 THE EGG
EUREKA ( 1 99 ASTRO CLONE ( 3 95 BIOLOGY 0 LEVEL (9 95 SNATQtERS iHtv PYRAMO t5 95
BLOCKBUSTERS ( 3 95 LAZY JONES (2 50 C0UJNS 4 11 YEARS PACK IMAGINE PACK INC.
TRAIN GAME ( 2 95 W H A T S THE TIME KNOW YOUR TABLES STONKERS PEDRO. ALCHEMIST 2700V
WOFFTED MONTY MOLE (2 95
FIRST NUMBERS ( 7 95
/IP ZAP. CONQUEST (3 95
GREMLINS ( 2 95 MOON CREST A (350
COLLINS PADDINGTON PACK ON TKf O C X WC
MtLtfre ( 2 95 DARK STAR (2 95 PADOINGIONS EARLY VtSlT PADDING TONS SNOOKER. WORlD COP FOOT0ALL OLYMPICS.
HIGHWAY ENCOUNTER ( 3 95 LORD OF THE RINGS ( 6 95 GARDEN GAME PAOOlNGTON AND TM{ GOLF DER8Y DAY
ALIEN HIGHWAY ( 3 95 EVEFTYONES A WALLY (2 95 DISAPPEARING INK £795
TLL (2 95 JONAH BARRINGTONS SQUASH (2 95 HILL McGIBBON PACK
MOON ALERT ( 1 99 PUNCTUATION P£TE BALLOONING UTILITIES
BACKPACKERS GUIDE ( 1 99
CAR JOURNEY SPECIAL AGENT ( 7 95
ROLANDS RAT RACE ( 3 95 WIZARDS LAIR ( 2 50 SPtCQRUM (25 00
LONGMAN SOFTWARE 6 10 YEARS
DALEYS DECATHLON (2 M WHEEL* ( 3 50 SUM SCRUNCHER ROBOT RUNNER M5
OlKCKSHQT It W I T H n o 95
DALEYS S U P E R ! E S T ( 4 95 SUBTERRANEAN STRYKER ( 1 99 rtllO W 0 R 0 S . A f i C LIFT OFF ( 6 95 alpha COM PAPER 5 ROUS t^ 8 95
SOLD A M1L10N INC JASPER ( 1 99 MR T PACK INC CURRAH vcao 5 LOTS < 3 95
DECATHLON SABRE WULF BEACHEA0 TSW
( 4 95 VU CALC ( 2 50
MR T i SlMPlE SUMS ntfl T MEETS HIS MATCH COMPUTER TQ T V LEAPS ( I 50
MR T » ALPHABET GAME £5 95
ARCADE HAL1 OF FAME INC CHESS BY SINCLAIR ( ) 99 MiCftOORlVE CARTRIDGES ( i 93
MR T PACK INC
RAIO ii. Blue MAX. R0CC0. FLAK. CHEQUERED FLAG ( 1 99 MR T L NUMBER GAMES. MR T » SHAPE
HUNCHBACK II ( 4 95 EMERALD ISLE [ 4 50 GAMES MR T I MEASURING GAMES ( 5 95
FOOTBALL MANAGER GRIFFIN SOFTWARE PACK WC
p&p 75p all orders
( 3 50 ADVENTURE QUEST ( 4 50
M M OFFICE ( 3 50 5 YEARS AND OVER overseas - £1.00 per tape.
LORDS OF TIME r « 50
IMPOSSIBLE MISSION ( 4 95 SNOWBALL
WOROSPElL. FAIRSHARE WORDGAMES ( 5 95 £2. SO packs. £5.00 peripherals
( 4 50 GRIFFIN SOFTWARE PACK INC
1A SWORD « ( 4 95 SABRE WULF ( 2 50 5 YEARS AND OVER
BOUNTY BOB (3 95 BIZZ1C0M LBUSINESS CONTROL SYSTEM) ( 2 95 TABLESUMS NUM8ERFUN. GET SET ( 5 95 LOGIC SALES LTD
BEACHFAD II (4 95 PAC MAN BY ATARlSOFT GRIFFIN PYTHAGORAS PACK WC
( 5 95
BRUCE LEE ( 3 95 VALHALLA
tO IS YEARS 6 Midgate Peterborough Camb*
( 2 50 THEORUM Of PYTHAGORAS FORMULAE P. 2 4 tour ordering on 0 7 3 3 3 1 3 8 7 0
LMXWOFLO SPANISH ( 2 50 TWIN KINGDOM VALLEY 12 9% COMPOUNDS. FUNDAMENTAL A.GEBRA if. 95

i # i t i i
, MULTIPURPOSE INTERFACE FOR 48K & 128K SPECTRUM* T I A M M N P i l f i

fmMface ofjfj
TIm kftw) nav of tranM
4 tAaniai tot mvH2 fc*
tr iMiatda for cartndga
rt^Tj pwNaapaLiaa
An lnc*ak>ua ptoco of aoftwrnra'
aaaaa VWluraa «•••• I V i r t u m fCN
TOP SOFTWARE AT BOTTOM PRICE

1U* HATUHES THAN YOU FIND ON AMY OTHEft BfTERMCf


WHggkr
• h^wN w won 1 m BAM MM*aJWiY AUTOMATIC M —nt«n irttnw amp MCROOftlVtS, WAFADWVtSBtTA.OPUS,
mrynjw m4 lAM war* t u i »K i nan itpoul and with Ml mmnt MUTI TOOUIT to Mutymod.tydawtai^KDfliaw, Ihtrof »tr kw laaan f." «•> aaliv /W i m a i m kmt n—r
WkigglH « • IMk»y ongAal O^n* BUM »U»< I1U UM FOI
» joymHeM Intmitc* f IM31.U lUwpittm cam»aliMa) and a twitch to m.kt MULTIfACE ONE INVISIBLE l.inl [in». gnod nwfUf ,TII frfwuawdrd M« ttpi
^MUTVACt ONE *ao» HI lata Mf put of Spactiuai RAM Mil don not naad any additional uflwaia. Jml puth • ballon 'ttytoraiua I hr iraliho I<u urnd ur rvrllm aad Ihr p » f Mall> addhtnr
At^rtxtty, 91 toifWfjHcx A u n t CAVOwnaa
ta I I M I I • P T I Y >M. M il M 4 iMUrl K * « lb* U I M poiai Mil tin* ti»a ia a gra*t gamaC ' AI worth tturna' U C I Cndi
• lUKTI TOOLKIT latUiliai lit— la PEEK/POKE lha aaiira 56K i W hlecki ol RAM wilh M K>H> adiiin« mm* IIIM'U MI vaM ma llndri nw nf) n lam r
daoaaa^hai m ASCII dt*pUr. m t l i profiaHunabla ta MfiwtMO within &4K. tit •NOW FOR A M S T R A 0 ' S P E C T R U M .fMMOti J t a f l U O C t ' D ' i "
Ha-*wi« with ptaapn m4 oM-lMCh command! l]Pu«h button 2)SaUcl luactron: %ti\/tH*n/un/tool/fumy
1) M MM 4)Sava t»: lapa/cMindfa/witM/opat/bala/kaniptlon lit umg Kampaton linn hmc"i whan M V I I C t m W V I T I V
^tUHMiti pemmrful mnd mtftdaM CQ<DOr**ltna Im latt r»-loading & U*m| •MMMI IMOI on cwtridpM.uptt.wvfcn.dnfci CnrrvaiM rMa tnm mim ayaaamc fw artOnfl,aftk^.
itoSWI a mh * COPYmw M pnM Itaf pnatan M r i m COPY CHUuiidl pmaw A atortru kuk ita rval notation gn«Mca and mm at
UM nwaHMDHl aducaoanit toot. F « J tuiLA ptay MWI A
tail tm CHMCtitf Khar panpbarafc # l l f II—<»»T trapfd. |i i mini, Hmplf mmgic. atottoedtw aarioua UM (tfanapcMig .Oo* matrti prtwM alcl
A n r j fmhukiiil (tana d ^ m n m l
wm, kKILTtFACe c»n/HJNmatpmndmner l?tK S—ttnwi naafcla in 44K —da —t, mivXm
aoalbnlM«Mt••irawi aMnlathai.arroa tnp
prumpta If jwra LoKnaud In
Expand your Spectrum to 56 K and stretch its capabilities even further with a cumjiulw than n«l U'

'//jltlfac? U W ESSENTIAL SPECTRUM COMPANION


MIDI cn<vp..nbli with MIDt MUSICIAN ii.k h.t<|>
Now going for a song at C 5-95 only
I t n d o M a choque/PO for C ' ^ S l S ^ f ) » a n d m> (tick aa .ppUcabfo): | MULTIFA^E C39S5
n ' , aoo LT over—as | T R A N S E X P R E S S canridgtt C9.95 • tap®(for m-driva) C 7.95
or dabit my F ^ l "^F" No disk (Opus Discovoiy) C9.95 0 wafar (Rotronica) £ 996
Name Card axpiry. MUSIC TYPEWRITER £5.95 • with auPQ*amant £ Tig
Addrasa. WRIGGLER Spactrum tope C 2 . 9 5 Q or cartridga £ 5.961
WRIGGLER Amstrad tapa £7.95 • or disk vacaton £ 11.95 •

77 Dyna Road London NW6 7DR 24 hrs orders 0 1 6 2 5 9 4 6 3 S


LW
OCTAGON
Taking this program a step ot
a time pays on, I rushed straight

SQUAD Irom Ihe menu to the game and


missed some furlher instructions
that are displayed automatic-
Masfertronlc
£1.99 ally if you wait — Ihey helped
a little
This Is one ot those gomes that The main screen Is bright
does not tit cosily Into any ol the and colourlul. action is con-
usual categories applied to trolled by either live keys or joy-
gomes. Mastertronlc them- stick and is mastered atter a bit
selves describe it as on "icon of trial and error. The lower hall
driven arcade adventure" containing a panel of twelve
which |ust about covers all the usable Icons ond three non
available options. usable ones and on the right a
However, to norrow it down a birds eye view ol your charac-
little. It Is a maze game with ter in the maze At the lop is a
strategy and odventure ele- mini map and set of info
ments. I suppose that it one was windows.
being generous, ihe rather You control a commander
primitive moving graphics (I character and eight drolds. one
draw the line al calling It ani- at a time by using the icon
mation) would quality it In the selection routine ond you move
Orcade" section. Ihem around In a reaclor maze
It up to now I sound a little to rescue 26 survivors of a heavy
less than enthralled with the chem attack.
garner please do not be misled, One of those games where
It Is a good program ol Its type patience ond persistence is
and slowly grows on you. But first
you have to overcome the
required to get the mosl from It. TRIVIAL called TP who bounds around
the question screen in a

PURSUIT
for the price and for fans ol this number of guises. He's destined
cryptic and limited instructions, kind of game I recommend it.
(hen get to grips with the screen to become a "love him or hate
display and Icon system, then Domark him" figure Some may teel he's
sort out who Is who and what £14.95 a cute bonus while the purists
you are trying to do and how to will argue Ihe original game
do it. got olong just tine without him.
The only potential problem with wisely Domark have added a
Atter that it is a straight- converting a phenomally suc- cut off switch so you're not stuck
forward seek, collect and sur- cessful board game like Trivial with him.
vive exercise Pursuit to the home micro would You can fix a time limit lor
seem to be tampering with a answering questions — any-
winning formula thing trom five seconds to nine
Few would have thought thai minutes. A very useful feature for
the flaunting of irrelevant strategists is the inclusion of a
knowtedge would exert such a score chart which keeps an up
hold over people but as trivial to the minute record ol all Ihe
pursuit addicts know when the players performances. The
cheeses are down knowing breakdown Is tor each cate-
whether frozen peas (loot or not gory ot questions so when a
assumes huge Importance. player Is going for the final
The Trivial Pursuit craze winning question you can
shows no signs ol abating and knobble him by confidently
Domark have produced a choosing his weakest subject.
package talthful to the original Graphically the game Is
but with several uselul additions pleasing to the eye and the
that add to the fun. board layout Is very clear. Most
There are 3.000 questions, Importantly perhaps It's very
loaded in blocks ready to tax easy to play and you can find
your memory for facts you your way around the game
would rather have forgotten and all you can do in next to no
before Trivial Pursuit came time.
and amassing vast numbers ot along, it's a two cassette pack. Trivial Pursuit Is bound to sell
1942 poinls. You are allowed a
certain number of aerobatlc
One being the game itself and
Ihe first batch of questions, the
well on the strength ot the
board game and II you en-
Elite rolls to get you out of trouble on second an additional "Unl- joyed that you won't be dis-
£7.95 each level and you have five load" question pock which can appointed with its computer
lives in order to get as far as you be loaded into a Spectrum. game counterpart.
This is a conversion of a very con. Commodore or Amstrad.
successful arcade game but Landing back on the carrier One enhancement on the
may not be an automatic hit gives you a thoroughly deser- original Is the Inclusion of
unless there are sufficient shoot ved 5000 point bonus before musical and graphics ques-
'em up fans out there who prefer you take ott again. Once back tions, so lhat tor Instance you
to do their blasting at home in fhe air It's the same old thing can be confronted by the map
You take off In your tighter with just a few more planes and of a country ond asked to
Irom the deck of a carrier and marginally more llak flying. identify It.
proceed across land and sea Ominously the level gauge slips Another Inclusion is an
confronting waves of enemy back from 32 to 31 presumably animated question master
planes. There are four phases meaning there are 32 Mights left
on each level before you can to complete. Personally I
land safely back on Ihe carrier packed my goggles after three
which really means |ust dif- levels and had to put my trigger
ferent permutations ot planes finger into traction. As an out'
coming at you. One phase has and out shool 'em up 1942 cer-
a huge bomber and bringing tainly succeeds but If you are
this down will bring you big looking for something more mn
bonus points but It's not neces- than a musclebound joystick
sary to destroy it to get onto the
next phase
hand and zillions of points give
this one the flypast. X 1942
Destroying certain planes ClitC
will give you extra tirepower or
«tMi
clear Ihe screen of attacking
planes for a moment. Apart
from that there Is Utile to divert
you from the business ol shoot- Ht
ing the enemy out ol fhe sky

ZX Computing Monthly • October 1986


-A^M" I
UNIVERSAL
that just wipe out your entire
supply In one go without any
HERO warning, and there's a lump of
plutonlum that has Ihe same
Mostertronlc etfect although again there's no
£1.99 warning that the object is actu-
ally plutonium. These things are
a bit irritating as they make the
A totally nall-bMIng, multi- game dependent on luck at
dimensional. hi-resolution Awe- some points, but once you've
some Arcade Adventure!' And come across these traps once
all lhal lor |ust £1.99. Actually. you can generally avoid them
Universal Hero isn't quite as won- in future.
derful as the tongue-in-cheek On the plus side there are
hype suggests, but It's still pretty some nice graphics and
nifty lor a piece of budget smooth animation, ond the
software. figure of Hero has a jaunty Utile
It seems that our Hero has walk as he strides through the
caves. Thankfully there Is a
t ust got seven seconds to save
lis planet, and In those seven
seconds he's got to wander
define keys option, but it would
have been a good idea II the
through a set of caverns and cassette inlay had given a bit
find the spare parts needed to more information about the
repair his space shuttle, which game.
polished and well designed nine objects In his pockets, so
will lly him to another planet example of the genre. And there's scope for some quite Universal Hero isn't a flawless
where he has to collect the there's also a certain element ol complex combinations ol game, but it does have its good
equipment needed to repair strategy thrown in as well, since objects to be used. points, and, as always, Master-
Ihe out of control space some of the items that you have As he makes his way through trontc are still giving more
freighter so that he can het to locate can only be reached the game Hero uses up oxygen expensive games a run for their
back lo earth In one piece. by solving puzzles. For instance, from four cylinders and collision money.
Universal Hero Is, as you there Is one cave entrance with some of the naslies in the
might have guessed, a wander- blocked by a pile of rubble and caves drains his air supply, so
'round-the-caves-collect-the- you've got lo work out which you've also got to go looking for
oblects-and-avoldthe-monslers objects can be used fo start a spare oxygen supplies fo keep
type game, and though It's a rock slide and open up the you going. For some reason
little old fashioned it Is a highly entrance. Hero can carry up to there are one or two monsters

seven pounds it was not worth


having, but at the new £1.99
KANE
Mastertronic
price it is the kind ot program
everyone should have, if only to
£1.99
• I rf f fit - - f ' - f l i 1 1 U
compare how lar the latest pro-
grams have progressed from A man's gotta do what a man's
Ine good old days gotia da And in this case what
Sophistication is out, but you've gotlo do is mosey on
great fast and furious action sur- down to Ihe old Spectrum and
vives with Buccaneer. Graphics make peace with them thar
I and animation ore average for Injuns (well il makes a change
M Ihls kind ol game and sound
bluzzes away merrily while
colours clash cheerfully and
Irom blowing their brains oui
doesn't It?}.
You're the Sheriff of Ihe town
death and destruction abound. of Kane, and In order to make
Not one for pacifists peace with Ihe locals you hove
You have five aircraft, or lives, four tasks to complete The first
and have to keep an eye on Is to shoot down some birds so
fuel and shield levels, controls lhat you can trade with the
after wave of nasties to be shot are simply up. down and fire Indians for peace tokens. In this

BUCCANEER al while they try to shoot or


crash Into you. The action is
different in that you are sup-
Keyboard indentification and a
full range of joystick options are
pari ot the game the screen
shows a small cowboy figure at
the bottom of the screen with
Firebird Sliver 199 Range Included.
£1.99 posedly flying a Buccaneer It's no good, I known I should mountains in the background
aircraft and the aliens attack hale this game and be all arty and birds flying overhead.
horizontally on an earth based and snobbish but there is some- Using the keyboard or Joystick
I wondered when this one scrolling background. thing about II which appeals lo you move a sight around the
would make Its appearancel I Just Ihe kind ol game I love my inborn sense of mayhem. A screen and attempt to shoot the
reviewed three games from a lo finish off a night of mind no nonsense, out and ou) war- birds down wllh your bow and
company called Insight some stretching arcvenlure reviewing mongering program to appeal arrow. You've got a limited
months ago and since Ihen two Sit down and zap awoy mind- to all our more basic Instincts. supply of arrows, and with the
of the three have been repack- lessly. There are some exlra birds being a moving target
aged and marketed by Fire- features to alleviate the mind you've got lo have a good
bird. Now this completes the set. numbing effect, a docking sense of liming to gel a decent
Described as a challenging sequence and a dodging
Jfk amount ol tokens. You need a

nnnn j s ^ w
orcade gome In the classic sequence but In the main it's a token lo move onto the next
style It means just that. A game good ola fashioned kill 'em all stage, and additional tokens
on Ihe lines of Ihe classic game give you extra lives in Ihe later
"Space Invaders" type, wove At the original price of over IJUUIJ stages.
• • •

39 ZX Computing Monthly • October 1986


LLUJ Once you've demolished
the local bird population you
hop on your horse and ride
OLYMPIAD
across the prairie back to Kane
Atlantis Software
But along the way you've got to
£1.99
moke sure that your old hoss
doesn'1 go stumbling over ony I'm at a loss as lo how I can
rocks or bushes or else you'H be review this game constructively,
out ot the saddle and out ol the other lhan to say that it simply
game. Isn't very good.
Once you've made it back Olympiad is an attempt lo
to town you still don't get to rest produce a budget sports game
as all the bad guys around along the lines of Daley Thomp-
have decided to take a pot shot son's Super Test and Includes
at you. They're all hidden In live events' - Weight lifting.
doorways and around corners Canoeing. 200m Sprint, Skeet
ol the town's building* but every Shooting and Discus. For some
now and then they II stick their ol Ihe events all that is Involved
heads up Just long enough tor is pressing a single button when
you to gel your sight on Ihem the powermeter Is at its height.
and show who's boss. to be fairly good. It Is very new standards in games pro- The powermeter Is a small
Atler cleaning up Ihe town simple, but Ihe dilflculty ol the gramming, and It II looks old clocklace In the top left corner
It's back onto the horse lor a tasks has been well pitched so fashioned that's because It Is. ot the screen, around which a
race against the train as you try that you can gel started easily but It's enough fun to while dial rotates constantly and
to overtake and stop it. Again bul still need lo practice in away the oda rainy afternoon when it reaches the 12 o'clock
you've got to lump over alfthe order lo get anywhere Going with and will probably appeal position (the highest energy
bushes and rocks, but this time through the same four stages In to younger computer owners level) you just stab the Q button.
there are small trees thrown in their fixed order all Ihe time who don I require state-of-the-art This Is how you play the welghl
as well o n d some ol Ihe could get boring, but sensibly megagames. titling and sprlnl sections and it
obstacles are so close together there's a practice mode which doesn't give any of Ihe excite-
that you'll need a terrific sense allows you to choose any stage ment that the joystick/keyboard
ot timing to moke It past them ol the game and one ot three pounding style ot Super Test
all. dilficulty levels. This allows you provides.

I;ogi)
When I first saw Kane I to gel a bit of practice on all Ihe The C a n o e i n g section
thought that II looked pretty different parts ol Ihe game and simply Involves moving the
primitive — like a magazine list- then, when you think you're canoe leff/rlght across Ihe
ing In tact — bul once I'd given ready, you can Iry to tackle the screen In order to ovoid Ihe
it a couple ol goes it turned out whole thing in one g o rocks that scroll upwards from
Ihe bottom ot the screen. I com-
pleted this section without
making a single mistake on my
first attempt, so II can't really be
this border. The graphics are d e s c r i b e d as much ol a
LAP OF THE GODS relatively simple, with the
passages a n d chambers
challenge
The skeet shooting is the only
Mastertronic drawn in quite large blocky part of Ihe game thai has ony
£1.99 graphics. These would be per- complexity to it — you actually
fectly ok if the scrolling were a get to use live controls for led/
bit smoother, bul as It Is the jerky rlght/up/down ond fire when
scrolling gave me quite an eye- positioning your guns sights.
strain. as did the rather dis-
tracting moving stripe all
around the border ot the
playing area.
Still, ruptured eyeballs aside
LOTG Is quite playable. It's one
ol those games that Is simple
and fairly repetitive but which
draws you back for one more
try to see if you can collect a
complete set ot effigies and
move on to Ihe next set ol
chambers.
There Is o lire' button, but this The graphics aren't too bad,
only pulls down a menu which but they aren't good enough to
displays the options and make up for the lack of Involve-
powers available to you [where ment in the gomes themselves.
would Masterlronic games be The program doesn't seem to
without a pull down menu, eh?). accept joystick control and,
It would have helped the when someone suggested that
games playabllity If you were It might be simple Basic or com-
also able to tire at the 'devils' as piled Basic, I tried to break Ihe
they come at you. As it is* you're program just by using Ihe BREAK
more or less al their mercy as key at which point a message
Yet another interesting budget board controls). II the devils they move faster than your own flashed up saying "Show Oft!
game from Masfertronlcx In this, catch you they will lake Ihe ligure and can'l really be easily and then Ihe program crashed.
your task is to collect a number effigy from you and return it to avoided. No points for user friendliness.'
of gems in order to persuade its resting place, but il you lose LOTG probably Isn't the I'm alraid the only thing that
Ihe Gods ot ZZarn to return you an eltigy three times ihe gods game lor fast reaction acrade Olympiad has got going tor it
lo your home. Bul before you slap your wrists by taking some freaks. but il you've got a bit ol is the budget price, but even
con ocquire the gems you will of your powers and one of your patience, determination, and then it's not as good as some of
need to gain special powers by lives too. £1.99 lo spare you might want to Ihe budget software from many
collecting Ihe elftgies thai are The sets ot chambers are all give It a ga other companies.
scattered around the sixteen separate, and the oniy connec-
sets of chambers that make up tion between them is via the
Ihe game's playing area. leleport chambers, but these
As you gather together the will onty work if you've cotlecled
various effigies you will be set the right effigies.

G
OOD
upon by devils' that look The screen display uses Ihe
remarkably like androids (and outer section to display your
moke me wonder who wrote lives left, crystals collected and
the cassette note* especially as so on. while the actual playing
they tell you the wrong key- area is shown in a square Inside

40 ZX Computing Monthly • October 1986


NAME THAT
GAME!

This is your chance to In order to escape he must there will be a special prize.
accomplish certain tasks like (Using psychic powers to find
put a title to finding discs to place in disc these titles is strictly forbidden).
drives, retrieving coins, locating As Mastertronic are almost
Mastertronic's Game energy packs and putting Hags ready to release the game, the
on flag poles. closing date for entries Is closer
With No Name. As if all these tasks weren't than normal so get your snappy
enough there are also numerous title in quickly and remember to
twirling nasties stalking the write it on the outside of your
astertronic are putting the pathways to destroy him. enlry envelope
final touches to a new Spectrum The closing date is October
Your turn
S ame and are giving ZX readers
e opportunity to christen the
release with a catchy
24th 1986.
The competition Is open to all
So now it's time for you to get ZX readers except employees of
Imaginative title. pondering on the title. The prize Argus Specialist Publications.
Not only will the winner get a will go to the originator of the Alabaster Pasmore and
kick out of seeing his title on the most apt, original and above all Mastertronic
shelves of his local software catchy title for the game. Send your entries to the
emporium (and perhaps Mastertronic have two Mastertronic Game With No
climbing up the charts) but he provisional titles already and for Name Contest, ZX Computing
or she will also receive one of any reader who inadvertantly Monthly, No 1 Golden Square.
Mastertronlc's new Magnum guesses either of these titles London W1R 3A8
Joysticks, a Mastertronic T-shirt,
osiers, the five latest
M astertronic Spectrum releases
and of course a copy of the
Game With No Name.
There will also be 10 prizes of
the Game With No Name and T-
shlrts for runners up.

The Game
The game has been written by
Geoff Foley, author of Octagon
Squad and Ticket To Ride. It
features the exploits of a slrange
being apparently half foot, half
head that is trying to escape
from a planet surface of narrow
pathways surrounded by water.

T h U game It In search of a name

Mastertronic Game With No Name Contest


I name this game
Name
Address

Send to Game With No Name Contest, ZX Computing Monthly,


No 1 Golden Square, London W1R 3AR Please remember to put
your title on the envelope.
The Magnum Joytfick

>uting Monthly • October 1986


Dynamite Dan Is back
to prove there's still lite
left in the platform
game.

\DYNAMITE DAN 11
Dynamite Dan II
Mirrorsoft
£7.95

- J u s t when you thought it was


safe to come out of the
cupboard, when you were quite
sure that Doctor Biitzen and his
evil bunch of cronies had finally
been destroyed, and you had
managed to float away to safety
on the wings of a hot-air
balloon, you must start all over
again. Yes it's Dynamite Dan II.
When Dynamite Dan was first
released, it had a lively aura
about it, it was (he type of game
that you imagine would have
been as much fun to program
as it was to play. Thankfully. DD II eight islands, collecting a chip is so strained that it soon
seems to have lost none of the record on each, and inserting it becomes annoying. However,
original charm and novelty. Into a jukebox. Having done this even this cannot make DD II
What the passing of time has you must find some fuel for your unenjoyable.
achieved is a better standard of trusty Zeppelin, and fly away. To It Is probably because there
game. All the definition is help you in this seemingly never- have been so few ledge games
excellent, and unlike the original ending task, there are a total of recently that DD II seemed so
game, there is very little colour thirty two different objects, each good, but I still believe that any
clash. with its own effect, varying from arcade adventurer worth his salt
Together with many other extra energy to immunity to will relish the thought of
people, I slightly miss the days bullets. bouncing, jumping and
when six hours spent jumping This may all sound very easy, swimming his way to success.
from ledge to ledge was six but not surprisingly, life is made Overall, DD II Is a programming
hours well spent. I miss the days amazingly difficult by a stunning masterpiece, and on top of that
when at least three new ledge variety of baddies. They jump, it is real fun to play!
games would be released every spin, twisl and drop around
ten minutes, and I miss Jet Set making life total and utter
Willy. Playing DD II brought all misery, and very nearly
this back to me with a destroying your immaculately
vengeance; the perfectly timed colffured hair!
jumps, the agonising falls, they're
all here, plus much more.
Perhaps the most impressive
part of the game are the
* &
Wt t
As you would expect, DD II graphics. Varying from hi-tech, to
does have an objective; you jungle, they are brilliantly r i r ! r r r
must travel around a total of defined with obvious amounts of
cara The characters too are
animated with as much SCORE VQOT7* .
attention to detail as I have fi^r-iG^f fii'n
ever seen on the Spectrum.
If and when you get to the
final island, you must blow up
the last jukebox, and then make
a desperate run for your Zep,
i r I within a matter of minutes. Only
• Y t A Y S y
then will you have completed
this 180+ screen masterpiece.
uonE .aam J2J* My only criticism would be
the sound. Although there is a
good attempt to get a tune and
effects out of the Spectrum; the
r / i i

Not one but two excellent chess programs


have just been released for the Spectrum and
both are a good alternative it Kasparov
chickens out of your challenge match.

R,CH S^p^igBBBSS
— ?. n

miM
Y/f.^f
fcu
4 |
* i S^
^ c f CDS
\> ^^^HBTX •

Basic Features
Psi Chess Colossus 4 Chess
The E d g e CDS
£9 95 19 95
2 Dimensional Board Displays 2 Dimenslonol Board
3-D Board 3-D Board
3-D Isle ol Lewis Pieces
(Board can be rotated
and seen from all four
sides)
Seven Average" Levels. Levels Average mode —
Response time varying variable time limit
from instantaneous to 3 providing hundreds of
minutes. possible levels.
Six Correspondence' Tournament mode —
levels. time controls on the
Blitz Chess — variable number ot moves made
times. Balance of levels as in tournament play.
mode — the program All the Moves Mode —
attempts to match your Blitz chess against the
response tima clock.
Beginner's level mode — Equity mode — the
the program handicaps program keeps pace
itself to play a less than with your elapsed time
brilliant game. clock.
Infinite Mode — tor
puzzles or correspon-
dence, the computer
searches Indefinitely for
the best move.
Problems can be set up Problem mode Comprehensive mode
using an algebraic for solving check mating
method or by joystick problems. Can solve
and icon to situate mates up to seven moves
pieces. There is no "solve ahead also "Selfmates
mate mode" but on and helpmates".
some levels Mates can
be solved in two or three
moves.
Instant replay/takeback. Other features Instant replay/takeback.
Colour change options Colour changes options
on board and pieces on board, pieces and
and border. border. Invisible Mode —
enables you to play
"blindfold chess" by
making either black or
white pieces (or both)
invisible.

Joystick/keyboard. Control Joystick/keyboard.


j
Psi CHESS
Spectrum Chessmen
have never looked this
M R
good. Psi Chess goes
— for a visual as well as
sef up. For Instance there Is no
9c I
intellectual appeal. instant restart to a game — If
you want revenge you must press
I for change mode, P and 1
» si Chess features the sort of together and the board resets.
3-D Chess graphics that But fo restart you must press I
previously nave only been seen once more and then M and 1. It
by Sinclair owners on QL Chess you are using a joystick this must
from Psion. Not content with also be selected again before a
depicting the usual Staunton new game.
pieces, programmer Steven Joystick control can be a blf
Watson has also included a set sensitive too, Unless you hit the
of 3D lewis chess pieces. These piece lhat you want to move
are medieval pieces depicting dead centre It can fail to "pick
•he King, Queen and other up" and you have to try again.
pieces as real figures. When Psl Chess has a wide
seen on the Spectrum they look selection of levels and the lowest
like refugees from an adventure of these {the quickest) Is instant
game and add an extra response. This Is so fast that it
element of novelty fo the can take you several seconds
program. scanning the board. I did
Both 3-0 sets are well defined manage to take a game off Psl
with little confusion between Chess on level 2 (with no take
pieces even In crowded areas of backs, honest!) but such is the
the board. Psl-Chess benefits seemingly omnipotent nature of
from a lull screen board display computer games fhat I didn't
with only the time clocks and quite believe it. A very smooth
the present mode display as replay facility allowed me to
added detail. wallow in the glory of victory by
Psi Chess Is undeniably the reshowing the game from start to
most attractive looking chess finish.
program available for the This Is a very accomplished
Spectrum but, can it play? The package that comes complete
answer Is yes and although with an informative 15 page
fhere are more powerful chess manual. The emphasis on the
programs around it will certainly graphic side can be seen from
provide a stern test for even The Edge's intention to produce
accomplished players. alternative 3-D chess sets fhat
will be sold separately from Psl-
Joystick chess Chess but can be incorporated
by replacing the lewis figures In
The operaling system takes a the program's memory.
little getting used to as It's based As exasperating as any good
around Ihree pivotal modes chess program should be, Psi
"Scoresheet, Position and Game". Chess also allows you to savour
It can be a bit fiddly finding the view as you slide towards
your way around and some ignominious defeat. A musl for
basic commands take time to any Spectrum chess fanatic

1 i
mi kT'JB •Baa fill
Ml v.: jf
| i ([if) j ^ |||

1
Pi M

OO GO 5 9 IlCHftHGCH GO OG GO
urn

READERSHIP SURVEY
Win a free subscription! All you have to do is till In the questionnaire
a n d told into a postage paid envelope as
detailed on the fourth page. We pay the postage </>
GL
so send off your answers as soon as possible
This Is your chance to tell u s exactly what you
because there are free subscriptions to ZX to be
think about ZX C o m p u t i n g Monthly. We want to
won for the senders of the first 10 surveys pulled
X
know the features you enjoy a n d those you skip
over. Are there subjects you would like to see
out of the hat. Surveys must reach us by the GO
closing date Friday, November 7th.
covered in more depth or subjects you would like
to see buried forever?
Your answers will be treated with the strictest
confidence.
a
III
<
Your answers will help u s to build up a picture
of exactly the magazine you want to read. Bryan Ralph (Editor)

45 ZX Computing Monthly • October 1986


ZX COMPUTING READERSHIP SURVEY
1. Would you please tick Ihe box against the slotemont lhal best 8. Do you use your compuler lor Ihe following:
describes how much of ZX you normally read:
All the More lhan Sometimes Never
Read through all leatures and reviews ]1 time half Ihe time

Read through some fealures and reviews Original programmlngs • 1 • 3 • 4

•«
Just read through Ihe occasional features and reviews Typing in games lisllngs
Typing In utility listings
•„\o • to • t,

•«•« •«
Playing games • 0

•» •»
Educational uses
2. Please lick Ihe appropriate box thai shows how you evaluate Ihe
following sections (Five is excellent. 1 Is bad) II you would like lo see Business uses
exlra features on a particular subject tick Ihe appropriate 'more'
box.
9. Do sollware reviews Inlluence your buying?
1 2 3 4 5 More
News a Yes • t No

Games Reviews to
Hardware 10. Who! types o( gomes do you enjoy playing?
Utilities Arcade [ I t Adventure I J 7 Strategy! |j Sports! None! Js

Programming series
Mlndplay
11. Do you type in the games and utility listings In ZX?
Competitions
All some none
Communications
Games
Software House Prollles
Utilities [J4 • . L]6
Short Cuts
QL features
the 81 Page
12. How many games do you buy in a year?
Games Listings CUD* 20 or more [ Ji 15-20
Utility listings B
10-15 t J J 5-10 I
What else would you like to see in ZX?
Less than 5 LJs

13. Does anyone else read your copy ot ZX?


3. Which computer(s) do you own?
No. only me • t 1 or 2 others 3 or more
ZX 81 I It Spectrum
Spectrum + • 3 Spectrum 128
OL .Is Olher (please specify)
14. With regard to the advertisements In ZX. do you:
Read or look Ihrough most or nearly all ol Ihe ads • t
Read or look ihrough some of the ads
4. Do you own or have access to: • <
Just read or look through ihe occasional ad.
Printer Modem d* Very rarely never look at ihe ads.
Discdrive Microdrive

15. Thinking specifically about Ihe advertising content In ZX would


5. How much do you estimate your computer equipment is you please rate the two types ol advertising matter — Display or
presently worth? Classified — in terms of uselulness (please tick one box against
each type)
Under £220 t From £220 to £300
From £300 to £400 3 From £400 to £500 Display Classified
Over £500 i Very uselul D t • ,
Useful •3
Not very useful
6. How much do you estimate you have spent in total In the last
twelve months on your computing activities? Not at all useful a.
£0-50 D t £51-100 G j £101-200 CHJ
£201-500 ]« Over £500 • s
16. Have you ever ordered or bought products after reading an
advertisemenl in ZX?
Regularly
7. II you own a Spectrum 48K ore you considering buying the 128K
version? Occasionally n,
Yes O t No [ J2 Never •3

46 ZX Computing Monthly • October 1986


m
17. If the answer lo question 16 is yes. what was the last item you 28. Which of the following daily newspapers do you read?
purchased in this way. and what was its value?
Dally Mail Daily Express
Daily Mirror •3 The Sun
Today • s The Guardian

•«
18. Do you use the Advertisers Index? The Times the Daily Telegraph

Yes Di No C]2 Financial Times The Star

19. Do you keep your copy ot ZX tor:


29. Which ot Ihe following Sunday Newspapers do you read?
One month • i Six months A year or more
The Sunday Times • 1 The Sunday Telegraph • a
The Observer • 3 Mail on Sunday

20. Which other computer magazines do you regularly buy?


Sunday Mirror • s Sunday Express Q
News ol Ihe World The Sunday People
Your Sinclair Sinclair user
Crash LJIQL World [7]*
Other (please specify)
30. Do you read?
T.V.Times Radio Times • a

21. Did you read ZX when it was bi monthly?


31. Please tick Ihe box which represents the annual total ol your NET
Yes No O a income (le. alter tax. National Insurance and other deductions)
Pocket money L J 1 From £4,780 to £5,970
From £5.980 to £7,470 G 1 From £7,480 to £9,340 1
22.Since ZX went monthly do you think that the magazine Is From £9,350 to £11.680 • s From £11,690
Better Worse Some
Please stale why
32. It would be a great help to us il you would kindly answer the
following questions. The answers will enable us to obtain a more
positive image of our readership
Under 15 • 1 15-24 • , 25-34 Q j 35-44 [ J*
45-54 • j 55-64 [_\t 65+ EH?
23. Are you aware ol ZX's scheduled pubjicatlon day?
Yes No [Zl?

33. Marital Status


24. II the answer to question 23 is yes, do you attempt to purchase Children
the magazine on that day?
Yes LJi No EH?
34. Do any ol your children follow your interest in ZX Computing?
Yes D 1 No • a
25. Do you normally obtain your copy by
Chance purchase Newsagent home delivery • a
Newsagent shop collection • 1 Subscription
35. Name
Address .....

26, II you do not obtain your copy by subscription, is it due lo one


ot Ihe following?
Subscription too expensive Sex: Male Female
Not every issue required Occupation ......
Have subscribed previously, but lapsed • 3
to
36. Finally, have you any other comments to make about ZX*>
OL
27. It you do not subscribe, trom which type ol newsagent do you
most otlen obtain your copy? X
High Street Shop Estate shop • a CO
Travel point • j Corner shop ot
111
a
<

ZX Computing Monthly • October 1986 47


TUCK INTO
THIRD FOLD

Do not affix Postage Stamps il posted in


Postage
Gt Britain. Channel Islands. N Ireland
will be
or the Isle of Man
paid by
licensee

BUSINESS REPLY SERVICE


Licence No WC 3970

ZX COMPUTING
Argus Specialist Publications Limited
No. 1, Golden Square,
LONDON W1R 3A8

C/>

O
r-
o

SECOND FOLD

•f-
THIRD FOLD
The strongest chess
program for the home
micro finally reaches
the Spectrum.

"•"his program is definitely for


fhe chess connoiseur — and the
chess masochist. Wifh an
"opening book" of
approximately 3000 positions
and a move evaluaton system
that examines on average 170
moves per second in the
middlegame we are looking at
a class program here and
unless you are a class player
you will be staring defeat in the
face.
Of course there are features
such as takeback and next/best
move where the computer can
be compelled to choose a
second or third best move to
soften the program's superiority
(If you are unscrupulous), but
even then it will give you a hard
game
The program Is crammed with
features and purchasers of the
rnicrodrive version get a bonus
In the form of 34 games lhat can
be loaded and analysed with
the replay function.
Controls are simple to master
and most major functions can
be accessed quickly using fhe
shift key. For instance If you want
fo deprive your computer
opponent of flme a useful
command Is SHIFT G which
forces the computer to move
immediately. There Is also fhe
Supervisor mode (SHIFT S) that
stops the computer playing and
allows you to make moves lor
both sides. It Is also possible to
switch sides In mid-game — a
boon If you are being trounced
or like hollow victories.

ui move
f8b4.
liw
Programmer Martin
Bryant reflects on the
grandmaster In the
machine and its cheat-
prone human
opponent.

• • started writing chess


programs when I was at
University back In 1977. Then in
1982 I wrote White Knight for !..„
BBC I knew there could be a
different approach so I decided
to take the knowledge Id
aquired and write a better
ram.
pr0
<?<olossus I appeared first on
the Apple In 1983 and since
fhen there have been gradual
improvements on newer versions.
I usually take about six months
Improving the program and a
year to write versions for other
machines.
On Improvements
The catalyst to write a new
version comes when someone
brings out a new program to
chalenge it. There is no clear
cut way of Improving a chess
program although there is
always something that can be
Improved. The problem is
making the program as strong
as possible within the time you
have
There Is no magic algorithm
but the move evaluation function
can be made more efficient. The
values assigned to different
capturing moves by the
programmer give the program
its specific style It's important to
make the computer Ignore
obviously stupid moves when
deciding its next step From any
strategic position the program
can generate all the possible
moves in reply. This is game tree'
theory and hopefully the best
move comes from the branch
you are looking at.

On fancy graphics On cheating


'Putting Colossus on the 'I don't play as well as I used fa
Spectrum caused a couple of Obviously i spend a lot of time
problems with memory space pfaying against programs and
but Its playing strength is still the t's very different because fhere
same as the Apple version. s not the ego involved that yourself. But what a chess
Economising is achieved by comes out when playing a program does is to provide a
writing the code more efficiently person. ready opponent any time who
and not getting carried away *You can cheat very easily doesn't get tired.
with the graphics. Obviously II when you play the computer — 'Chess programming is still of
would be nice to have fancy 3-D take back moves, swop sides, great interest to me and It never
graphics as on the larger and so on, and this can get you ceases to make me aware of the
machines but playing strength is Into bad habits. After all It's no beauty of the game of chess. It's
the program's prime resource good when you are playing a marvellous to be able to do a
and It would be silly to cut back human opponent to ask him to job of work that I really enjoy
on memory In that department. give you your piece back. and I'll be playing any new
So In consequence the 3D 'It depends on how you use It programs that come out until a
pieces don't glide gracefully of course if you keep taking rival appears — then It's time to
across the board. moves back you are just kidding bring out Colossus 5 Chess.'
• t's often said that the quality
PEAK
comes most readily to mind,
of an adventure game Is with its excruciatingly stow
predominantly determined by responses coupled to a
the originality and Imaginative keyboard Input routine whose
scope of Its plot, and really It sluggishness makes accurate
would be hard to deny this. entry of commands a sore test of
Virtuosity of programming, text patience. Or how about those
compression, complex language hordes of Quilled adventures,
analysis, and similar essentially rapid In response, but
sophistications have been loudly so often suffering from
trumpeted by many a software stereotyped presentation,
company, and equally loudly unfriendly vocabulary, and the
hailed by many a reviewer; yet rigid restriction of the standard
these count for nolhlng if the "verb/noun" input requirement.
heart of the game — Its plot and Faced with this situation, the
atmosphere — is dull and BASIC programmer with a yen to
uninspired. All this Is true, but of write adventures may well be
Alan Davis, recently course there are limits. It's

returned from the


equally possible for an
adventure to be wonderfully
E ut off for good. Even If he opts
>r the simple "verb/noun" Input
format, the need for a large,
Imaginative In concept, but friendly vocabulary necessarily
Realms of Interaction rendered almost unplayable by Implies long delays In response
Inordinately long response times, whenever the program decodes
sets out once more on shabby on-screen presentation, the player's Input and scans the
or sheer "unfriendliness". vocabulary lists. Even then, If this
a quest to produce a It's not difficult to find limitation Is accepted, there are
examples of this second many occasions when the
superior command category, even among recent "verb/noun" type of command
commercial adventures: the analyser is Inadequate — for the
analysis system. grotesque "Lord of the Rings" fact remains that you Just can't
uw write an Interactive "Hobbit"style LEAVE THE ROOM) can be dealt us to use it for any adventure we
adventure without some with, again at no cost In may care to write. This, in a
capability lor dealing with more response time. And finally, extra nutshell, Is what the
complex commands. facilities may be incorporated Venturespeak command
Into the command analyser to analysis system has been
Instant response permit, say, detailed editing designed for. Even it you have
facilities to improve "friendliness", no understanding of machine
The obvious solution to the or the option of "real time" code programming, you con
problem is to resort to machine operation in the completed use Venturespeak yourself to
code programming in order to adventure if required. write sophisticated adventures
deal with the command analysis Such a solution in turn raises which retain the flexibility and
aspects ol adventure writing, Its own difficulties — not least ease of BASIC yet which are
since this has many advantages that of interfacing the machine largely free Irom Its speed
First, program responses can be code routines with the rest of a limitations.
virtually instant, regardless ot size predominantly BASIC program. Venturespeak essentially
of vocabulary. Second, complex We must also face the problem consists of a single "package"
and multiple commands (eg. of (preferably) writing code which can be conveniently
PUT THE JEWEL IN THE CHEST AND which oilers enough flexibility for divided into 3 sections as
follows:
1) A Keyboard Input routine
Listing 1 which accepts typed
commands up to 63 characters
long, complete with single key-
press facilities for deleting/
60189 640 CALL CLERK
• HtSOFI GtHS3H2 ASSElltJLEH-
IV. 5PECTRUM 68192 650 CALL PROMPT editing commands, and a real-
60195 860
670 S E T P R
JP
LD
WRIT
A, 0 1 6 time option.
C o p y r i g h t <C) H I S O P T 1983,4 60196
flll c m h t s reserved 602UO 880 RST 16 2) A Parser routine which
6020 1 890 XOR A
Pass I errors: 00 60202 900 RST 16 decodes complex commands
60203 910 XOR
RST
A
16
containing up to three verbs
s »0( 60204 920
•C - 60205 930 RET and four nouns, such as "ASK
10 9 4 9 PROMPT LO A, 6 2
bOOUO 21) ORG bOOOO 60206
60200 950 RST 16 SAM TO PUT THE COIN IN THE
bOOOO 30 K t YBl> LU It, O 60209 960 RET PURSE", as well as permitting
60002 40 LD ( 2 3 0 5 0 1, H 60210 970 TtMEUP LO A,(COUHT)
bOUOS 50 CALL CLEHH 60213 9B0 CP 6 several commands to be strung
bQOU6 60 CALL CROUP I
6001 1 70 RESET XOR A 60215 990 JP
CRLL
HZ,COHT
QUI T together in sequence using
60219 1000
60012
60015
uu
90
LO
LO
(236721,M
(236731,H 60221 1010 RET commas, full stops, or "AND".
(236741,n 60222 1 020 CURSOR PUSH DE 3) The menu-driven
60016 1 UU LD 60223 1030 LD ft, 17
60021 110 LU (COUHtI,H
t>0U24 120 MAI T XOR n 60225 1040 RST 16
A,6
Venturespeak Editor which olfers
60226 1050 LO
60025 130 LD <235bU),H
fl,(23673) 60226 1060 RST 16 comprehensive and easy-to-use
60026 140 lift I T 2 LD A.(CHR1
6003 1 1 !>U CP 2 60229
60232
1070
10 80
LO
RST 1&
facilities for adding, deleting, or
60033 160 JP HC, I IMEUP 1090 POP OE changing vocabulary. II is
A 60233
60036 170 COHT LU • ,(235601 60234 1 100 RET
60039 180 CP 60235 1110 SPACE LD A. 17 capable ot generating a single
6004 1 I 90 JP
60044 200 CP
Z , Hfl I T 2
6 60237 1 120 RST
LD
lb
R.7
block of code which
6023S 1 130
60046 210 JP
CP
I R f P I HI
13 60240 1 1 40 RST 16 Incorporates both keyboard and
60049 220 LO R , 32
60051 230 CALL Z , C H E CKH 6024 1
60243
1 150
1 1 60 RST 16 parsing routines together with
60054 240 CP 0 60244 1 170 RET the vocabulary needed tor any
60056 250 JP Z,UAIT 1180 D E L E T E LO R.(COUHT)
60059 260 CP 12 60245 particular adventure.
270 CRLL Z.CHECKH 66246 1 190 II' 31
60061 • 60250 1200 .11' Z,TLIHE
600b4 200 CP
60066
60069
290
300
JP
CP
Z.MRIT
IM
60253
60255
1210
1220
LO
AST
CRLL
R.6
16
SPRCE
Assembly points
310 JP HC,MflI T 60256 12311 H E R E
60071 60259 1240 LO A, 8
60074 320 LO (CHR),H
60O77 330 CP 13 60261 1250 RST 16
A,(COUHT)
This month we'll be dealing with
66262 1260 LO
600/9
60002
340
350
JP
CP
Z.EHTER
12 60265 1270 DEC A the Input routine, and the other
Z,0ELEIt 6S266 t 280 LO (COUHTI,A aspects of Venturespeak will be
60084 360 JP 1290 JP MA I T
370 LO ft,(CHRI 60269
60067
60090 3 80 CP 7 60272 1300 T L I H E LO ft, 0 1 6 tackled in succeeding articles,
60274 1310 R ST 16
60092 390 JP Z.MIPE
3ft 60275 1390 XOfl R but before we begin Id like to
60095 40D CP

m% make a strong recommendation


410 C, lift I T 60S76 1 330 AST 16
60097 JP LO R, 31
601 00 420 LO A,(COUHT) 1328 RST 16 that you equip yourself with a
6 0 1 03 4 30 CP 63 6 0 2 8 0 1 360 JP HERE
60106 440 JP Z.UAIT 6 0 2 6 3 1370 R E P E A 1 LO A,(COUHT) decent assembler program (If
HLiSTART
li
60108 450 LO
601 1 1 460
6 0 2 0 6 1380
6 0 2 6 6 1390
CP
JP
0
HZ . M R I T
you don't have one already). You
60113 470 to 6 0 2 9 1 1400 CALL CLEAR can poke in the machine code
60114 400 LO ft, (CHR) 6 0 2 9 4 1410 CALL PROMPT
6 0 1 17 490 AOO H L , 0E 6 0 2 9 7 1420 LO DE,START routines from BASIC of course —
601 I B 500 LO (HL I , R 6 0 3 0 0 1430 LD A. (CT2 ) and I'll provide decimal dumps
6 0 1 1 9 510 IHC OC 6 0 3 0 3 1440 LO (COUHT),R
60120 520 CALL CURSOR 6 0 3 0 6 1450 LO 8,0 for those who wish to do so —
6*123 530 LO R1C
60124 640 LO (COUHtl.ft 6 0 3 0 8 1460
6 0 3 0 9 1470
LO
CRLL ttio3C
but we'll be dealing with over 1K
60127
6 0 1 30
560
560 CLEAR
JP
XQA
MR I T
A 60312 1400 JP MRI T of machine code altogether,
60131 570 CRLL 0 16*1 6 0 3 1 5 1 4 9 0 COUHT OEro 0 and the scope for errors when
6 0 1 34 580 CRLL SETPR 6 0 3 1 6 1500 CT2 DEm 0
60137 590 LD a , 64 6 6 3 1 7 1 5 1 0 CHR otr o 0 typing in the long lists of
6 0 3 1 6 1520 5 T R R T DEFS 65
60139 600 SC AH LO
PUSH
A, 32
8C 6 0 3 6 3 1530 T I M E OEFB 0 numbers Is considerable, even
60141 610
60142 620 RST 16 6 0 3 6 4 1540 QUI T
60367 1 w o
LD
CRLL
(TIME),A
CLEAR
with checksums. An assembler Is
60143 630 POP OC 6 0 3 9 0 1560 RET well worth the investment — I use
6 0 1 44 b-10 OEC e
60145 650 LD PASS 2 errors: 00 Hisoft's "DEVPAC" and find it
601 46 660 CP o'B
601 46 67* JP HZ,SCftH
excellent.
CALL CHECKH ERFB CHR EB90
60151
60154
660
690 RET SETPR CLE HR EAE2 COHT ER84 Now that the hors-d'oeuvres
60156 700 CHECICH LO (CHR),R COUHT EB9B CT2 EB9C are out of the way, we can get
6 0 1 50 710 LO ft,(COUHT) CURSOR E83E DELETE E855
60161 720 CP EHTER cnoft HERE E860 on with this month's main course.
ilii
KEYBD tftbO PROMPT EB2E
60163
60166
730
746
JP
LO
Z.RESETA
R.(CHRI QUIT REPERT CO 78 Before you start, type CLEAR
60169 760 RESETR RET RESET
SCRH EAE6
RESETR
SETPR
CB09
EB 2 6
59999 to lower RAMTOP so that
60170 760 EHTER CRLL CLEAR EB9E our code can be stored safely
60173 770 LO fl, 1 SPRCE E84B START
6 0 1 75 766 LO I T I H E ) ,fl TIHE EBOP TIHEUP £832 at address 60000 and above.
6 0 1 78 790 LO ft,(COUHT) TLIHE E870 Hft I T ER78
66101 606 LO ( C T 2 ) ,R HAIT2 ER7C WIPE E819 Incidentally, I've chosen this
60184
60105
810
820 M I PC
RET
XOR
address so that the
60186 830 LD (COUHTI , R Table used: 321 frtm 345 Venturespeak routines will be
compatible with those from the
previous "Realms of Interaction"

ZX Computing Monthly • October 1986


builds up should be identical to
Listing 2 the layout of Listing 2, and this
should help you to check
everything as you go along.
Listing 4
Once the whole thing has been
entered without errors, the 1 REM
2 REM
KEYBOARD T E S T ROUTIHE
program will save your code to 3 REM

RODR . BYTES CHECK tape as "KEYBOARD" CODE 60318:


S LET
LET
input=60000:
count -603 l L E T
LET s t l r t o
t me
SUM 60000, 391. -60383:
10 C L S
LET SCTOl 1 :3582

60000
66005
62
205 226
8 50
234
106
205
92
46
318
916 What, then, does Ihis routine 20 L E T n=USR
3 0 I F HOT P E E K t i n e
input
Til EH PRIIIT
6 0 0 10
600 1 5
835
50
175
121
GO
92
120
50
92
122
672
435
do when you call it with LET m = H T 2 0 , O ; *' T i n * M a S S f S . "
100: GO TO 2 0
CO S U B

60020 92 50 1 56 235 175 707 USR 60000? Weil, basically it 40 P R I H ) RT 2 0 , 0 , : FOR i=Start
60025
60030
50
92 254
e 92
2
50
210
121
SO
329
688 prints a small "prompt" symbol TO & t a r t - t + P E E K
R t PEEK I ; : HEXT
count:
I
PRIHT CH

60035
60040
235
0
58
202 124
8 92
234
2S4
264
647
8 14
at the bottom of the screen and S O CO S U B
100 L E T rt=USR
1 0 0 : GO T O 2 0
bcroll I F PECK C
60U4 5 6 202 123 235 254 820 waits for you to start typing a DUnt> 32 T H E H L E T n=USR scroll
60050 204 234 254 956 110 RETURH
60055
13
0 202
251
120 234 254 818 command. Each character you
60060
60065
12
0
204
2 02
251
120
234
234
254
254
955
810
type is stored as a single byte
60070
60075
123
157
210
235
120
254
234 SO
202
737
061
above RAMTOP. the bytes being
13
60080 10 235 254 12 202 7»3 stored sequentially from address This means that on exit from the
60085
60090
85
254
235
7
50
20?
157
25
235
235
770
723 60318 (START) onwards up to a routine we can test PEEK 60383,
6 0096
601 00
254
58
32
155
218
235
120
264
234
63
058
765
maximum of 63 characters. and execute appropriate
601 05 202 12(1 234 33 158 747 When you finally press ENTER, the subroutines (say for independent
6 0 1 10
6 0 1 15
235
157
22
235 25
0 95
119
58
19
4 10
555 routine does an immediate action of characters) if that
60 1 20
60125
205
155
62
235
235
I 95
123
1 20
SO
234
675
939
return to BASIC, with the total memory location contains zero. If
60 1 30 175 206 1 22 205 608 length of your typed command on the other hand it contains the
60135 38 235 6 64 62 405
601 40 32 197 215 193 5 642 held at address 60315 (COUNT). value 1. we know that a
60145
60150
1 20
234
254
205 38
0 194
235
235
201
803
913 All Is then ready for the parser command analysis must be
60155
60160
50
235
157
254
235
0
50
202
155
9
655
700
(which ot course we don't yet carried out first.
60165 235 58 157 235 201 886 have) to take over and analyse If you don't want your
226
601/0
601 75
205
50 223
234
235
62
50 1 55
1 728
721 your command. However, this is adventure fo run in real lime, Ihis
60100
60185
235
175
50
50
156
155
235
235
201
205
077
020
by no means all that the routine feature can be suppresed by
60 m o 226 234 205 46 235 946 can do for you. The following amending the code with the
601 95 1 95 120 2 34 62 22 633
60200 215 175 2 1 5 175 215 995 facilities are available: following POKEs: POKE 60033,0:
60205
6 0 2 10
20 1
58
62
155
62
235
215
254
201
0
741
702 1) CAPS SHIFT/0 acts just like the POKE 60034,0: POKE 60035,0. (You
602 IS
60220
194
23S
1 32
201
234
213
205
62
224
17
989
728
usual Spectrum "DELETE" key. might like lo save two versions ol
60225 21S 67 6 215 58 556 erasing the last character typed. the code — one with real time,
60730
60235
157
62
235
17
215
215
209
62
201
7
1017
363 2) CAPS SHIFT/1 deletes and one without). Alternatively, if
60740
60245
215
58
62
1 55
32
235
215
254
201
31
725
733
everything you've typed so far. you want to keep the real time
60250 202 1 12 235 62 8 619 3) CAPS SHIFT/2 enables you lo feature but slow down the pace
60255 215 205 75 235 62 792
60260 8 215 S8 1 55 235 671 recall the whole of the last of things, try poking different
60265
6 0 2 70
CI
1 20
50
234
155
62
235
22
I 95
215
696
653 command you entered, either so values into 60032. POKE 60032, 4
602 76
60300
1 75
1 96
215
96
62
235
31
SB
215
155
698
739
that you can enter it again will give exits to BASIC every 20
60285 235 254 0 194 1 20 803 unchanged, or for editing using seconds or so, for instance.
234 234
60290
60295 46
205
235
226
17 150
205
235
1 104
691 the "DELETE" key. Still, trying all these things for
60300 58 156 235 50 1 5 S 6S4 yourself is much more fun than
Zero time
60305 235 6 0 79 205 525
60310
60315
6t)
2
32 195 120
75
234 64 1 reading about them, and Listing
2 13 76 168
60320 255 32 03 80 65 615 4 will enable you to check the
60325
60330
67
68
69
32
255
71
65
79
70
32
534
282 The routine also has a built-in routine out. First CLEAR 59999,
61)3 3 5
60340
73
69
78
32
255
74
84
69
72
87
562
331
real time facility which operates load in the bytes, type in the
60345 69 76 32 73 78 328 as follows: if nothing has been lines of BASIC from Listing 4, and
60350
60355
32
67
84
72
72
69
69
03
32
64
289
375 typed, then after about 10 then RUN. When you see the
60360
60365
255
63
84
58
72
61
255
4 3
47
60
713
285
seconds a return to BASIC occurs prompt at screen bottom, type in
60370 62 59 59 59 34 273 with the address 60383 (TIME) any old command (note that
60375
60380
34
38
39
0
39
0
40
1
41
50
193
89 holding the value zero. If on the CAPS LOCK is set automatically)
60385
60390
223
201
235
0
205
0
226
0
234
0
1 123
20 I
other hand a return to BASIC has and press ENTER. If all is well the
occurred due to the player lower screen will clear, and your
entering a command, the command will be exactly
address 60383 holds the value 1. reproduced in the upper screen
(confirming that it has been
stored correctly in memory).

Listing 3
Try pressing CAPS SHIFT/2 to
series, should you wish to check that the "recall last
combine them. (The code is not command" facility is working
relocatable). correctly, and in addition check
Listing 1 gives the assembly the delete functions. It's clear, I
language program lor the hope, what the benefits of these
keyboard input routine. The t R E M * • M/C L O U D E R
2 REll facilities are: suppose your last
code is organised at address 3 REM
10 P R I H T - f l D O H . " j T U B 13;-l)VrES command was "ASK SAM TO
60000. and is 391 bytes long. For ",TRB 2 6 ; ' C H E C K " ' 1 llli 2 6 j " S U M " " ATTACK THE ORC", and that on
those assemblerless individuals. SO I OK 1 = 6 0 0 0 0 T O 6 0 3 9 U S T E P 'J
3 0 P H I 111 1 I your next turn you'd like Sam to
Listing 2 provides Ihe (decimal) 40 L E T S = 0
SO L E T H=0 beat the daylights out of a troll.
bytes you'll need in conjunction bO 1 H P U T " H E X T U Y T L ? " * X : I F X> All you need do is recall your
with the BASIC loader giving In ; > V . T H E H CO 1 0 GO
70 POKE I * H , X : LEI S.S+X: PRIM previous command using CS/2.
Listing 3. Type in Listing 3, and T Tfll) 6 t 4 * N { ~
D X<io,>:,
" nilU >:<IOO," " Rfi
delete the word "ORC". and add
then RUN. Just follow the prompts 00 L E T H s H t t : I F l t < 5 T H E H (.0 T the word "TROLL" before pressing
0 60
the program gives you. entering SO I N P U T FLRSI1 1; "CHECKSUM (Oil ENTER.
the individual bytes from Listing THIS LI HE?"'C:
OHO S < ! 0 ; "
PRIHT
" nidi 5 < 1 0 0 ; "
TRO 2 7 ; "
" fllllJ
"
All OK? Fine. Make yourself a
2 one at a time, including the 5 < I 0 0 0 i S : 11 C O S T i l t : II P R I H T "til
well-earned cup of coffee, for
checksum alter every fifth byte. If R0I1' E N T E R T H I S L I H L
EP 1,30: CO T O 3 0
flCOIH." Ot
you now have about one third of
a mistake is found, the program IOO HEX) I
IIO SRUE "KEVOOnRO"COD£ (,0000,3 the complete Venturespeak
will ask you to enter Ihe whole of 91
system safely stashed away on
the offending line of 5 byles tape. See you next month, with
again. The screen display which the second instalment...

53 ZX Computing Monthly • October 1986


MACRO
Toni Baker plumbs the the algorithm produces
surprisingly elegant results.
The machine code part of this
program does NOT create the
mysteries of creation initial configuration (generation
zero). Instead. I use BASIC for this
with an intriguing A better life purpose. Lines 1000 and 1010
integrate the machine code Into
program for the I have seen quite a few versions the BASIC Line 1000 generates
of Life in my time. I have seen a the next pattern, while 1010 is
Spectrum. Just like real small, eight by eight version; I just a repeat loop, which also
have seen a couple of sixteen enables the user to break out by
life, Macro Life is what by sixteen versions (this is the pressing BREAK (or CAPS
usual size); I have also seen a SHIFT/SPACE) in between
you make it. twenty-four by twenty-four version, generations. All BASIC lines
which was also quite interesting. between 1 and 999 may be
The largest version I have seen used to create generation zero. I
T h i s is what you might call an so far is a thirty-two by twenty- have provided seven examples
artistic program. Not an artist's four square version which used of small BASIC programs which
program, you understand, but the whole of the Spectrum's when merged with lines 1000
an artistic program, lor It is the screen, with one character and 1010 will provide beautiful
program itself which creates all square for each square of the examples of the kind of thing
the patterns — all you have to grid. that Macro-Life is capable of.
do is start It off. This version of Life Is quite over You can. of course, write your
The program is called Macro- the top. it uses a grid of 256 by own BASIC programs to create
Life, and is essentially a version 192, with a single pixel for each the initial configuration, and
of Life, a program which is grid-square. II is the largest indeed this was my deliberate
supposed to represent the version of Life which could intention, and the reason that I
birthfgrowth/death cycle of a conceivably fit onto the left the construction of this Initial
colony of cells living on a grid. Spectrum's screen. The patterns pattern to BASIC
It produces rather fascinating which it produces are The machine code begins at
results. Before your eyes you see dramatically different from those address 8000 (hex) and Is less
a constantly evolving pattern — produced by smaller versions — than two hundred bytes long,
always changing, always they are more intricate and The machine code runs from the
growing — almost as if it were delicate, rather like a close up label NEXT GEN - this Is the
alive. Who knows — perhaps it is. of a snowflake (except that the address referred to In BASIC line
Life was Invented in 1970 by a symmetry here is four-fold, not 1000. In addition, whilst running.
man called John Conway of six-fold). The program uses addresses
Cambridge University, and I When I ran the program for C000 to D7FF to store a back-up
believe thai the Tate Gallery the first time, after having written copy of the screen. The back-up
really ought to have a version of it and got it working. I was quite copy contains the "last
LIFE running at all times, stunned by the intricacy and generation", while the current
because although it is intended beauty of the designs it was generation is being calculated
to represent the growth of cells producing. I felt that since the directly onto the screen.
which follow hard and fast overall effect was markedly
mathematical rules, in practice different from the smaller
it becomes a rather effective versions of Life, then it needed a
pattern generating algorithm. different name. Such Cell blocks
The rules of Life (or indeed sanctimonious titles as "Mega-
Macro-Life) are very simple. A Life" and "Super-Life" came to I've also discovered that
grid is initialised by having a mind, but it was John Conway's interesting effects occur If you
number of its available squares original idea which gave me place new live cells onto the
filled with cells (A square may the idea for the title I have used. grid between successive
either contain a cell, or It may You see, Life is supposed to show generations. Try deleting all lines
be empty. Only one cell at most cells multiplying and dying. before 1000 and adding a new
is allowed per square). This Living cells are, generally line 1005 CIRCLE 128,80.80.
initial conliguration is called speaKing, microscopic In my The grid used for this program
generation zero. program, however, individual exists in a strange warped
Successive generations are cells may not even be space continuum, whereby the
worked out by a fairly simple-to- discernable (depending on the left hand edge Is joined to the
understand process. Every quality of TV picture), so that the right hand edge (and vice
square on the grid is surrounded overall patterns are determined versa), and the top is joined to
by eight other squares. These by large numbers of cells the bottom (and vice versa).
neighbouring squares may or collectively — cell structures. Technically this represents a
may not conlain cells. What you Large cell structures are doughnut shaped universe. You
do is count how many of the macroscopic (rather than might try changing this feature
neighbouring squares contain microscopic), and are a result of — you can do this quite easily in
cells. Every cell which has the underlying microscopic BASIC by killing all cells around
precisely either two or three cells. For this reason, and also the edges. Adding line 1005
neighbours will survive to the because of the double meaning INVERSE 1: PLOT 0.0: DRAW 255,0:
next generation, and all other of the word "macro" (it also DRAW 0,175: DRAW -255.0: DRAW
cells will die. In addition, new means a machine code 0,-175: INVERSE 0 will do the
cells will be born in every empty procedure which may be trick. You can try out this, as well
square which has precisely duplicated several times in a as many other experiments. Use
three neighbouring cells. program) I decided to call the your imagination, sit back and
Although these rules are simple. program Macro-Life. watch the speccy go to work.

54 ZX Computing Monthly • October 1986


ORG 8000
n UP DEC H Dp on* pixel (assuring w i t h i n chr square).
LD A,H Ata high part of address.
F6FB OR F8 Use only b i t s 2, 1 and 0.
JC INC A
2041 Jit NZ.EX1T Juap i f w i t h i n character square.
7D LD A,L At* low part of address.
D6?0 SUB 20
6F LD L,A HLi» plx addr, assuming crossed from one
screen-third t o another.
LD A,H A1• high part of address.
JR C,TEST_T0P JUMP i f crossed from one t h i r d t o another.
06 0 8 ADD A,08

«7 LD H, A HLt> pixel address ( a l l remaining cases).


18J5 JR EXIT Junp t o e x i t .
JTRF TEST TOP CP BF
70J1 JR NZ,EXIT Jump unless o f f top of screen.
LD H,D? Point HL t o bottom l i n e of screen. Note b i t
ia?D JR EXIT 7 of H set f o r a l l screen addresaea here,

24 DOWN INC H Down one pixel (assaying w i t h i n ehr square).


7C LD A,H At> high part of address.
B6f»7 ANT) 07 Use only b i t s 2, 1 and 0.
?0?7 JR NZ.EXIT Jump i f within character square.
70 LD A,L Ata low part of address.
C6?0 ADD A,20
6F LD L t A Hl,i« plx addr, asnunlng crossed from one
screen-third t o another.
7C LD A.H At* high of address.
JH C,TEST_BOTTOM Jump i f crossed from one t h i r d t o another.
D608 SUB 8
67 LD H,A Hit* pixel address ( a l l remaining cases).
iei» JR EXIT Jump to e x i t .
FTD8 TEST BOTTOM CP D8
2017 JH NZ.EXTT Jump unless o f f bottom of screen.
?6C0 LD H,CO Point HL t o top l i n e of screen.
181) JR EXIT Jump t o e x i t .
C801 LEFT RLC C Left one pixel (assuming within chr square).
yx>r JR NC, EX IT Juap I f w i t h i n chr square.
7ft LD A,L A1- low part of addreea.
)S DEC A Decrement ( t o move l e f t ) .
1906 JR L_R
CB09 RIGHT RRC C Right one pixel (assuming w i t h i n chr square).

5C0/ JR NC, EXIT Jump i f w i t h i n character square.

7ft RICHT_1 LD A,L A t> low part of addreas.

JC INC A Increment ( t o move r i g h t ) .

AD LR XOR L Combine A and L by talcing b i t s 7, 6 and 5

EfelF AND IF of L, and b i t s 4, 5, 2, 1 and 0 of A.

At) XOR L This has the effect of " J o i n i n g * the

fir LD L.A l e f t and r i g h t hand edges of the screen.

79 EXIT LD A,C Aia pixel p o s i t i o n within square.

A6 AND (HL) Teat the specified screen p i x e l .

M RET Z Return I f the pixel Is PAPER colour ( r e s e t ) .

04 INC B Otherwise Increment count In B r e g i s t e r .

C9 RET
ORG 804D
?10040 KF3CTGEN LD KL.4000 Point HL t o screen.
nooco LD DE.COOO Point DE t o screen copy.
010018 LD .BC, 1800 D C n u m b e r of bytes in screen.
fti PUSH D£ Stack s t a r t address of screen copy.
St BO LDIR Make copy of screen.
tl POP HL HL points t o f i r s t byte of screen copy.
cm LD C,80 C has leftmost pixel s e t , thus HL and C
together point t o f i r s t pixel In acr copy.
0600 LOOP LD B,00 I n i t i a l i s e c e l l count as t e r o .

55 ZX Computing Monthly • October 1986


UJJJ PUSH BC Stack p i x e l position.
C5
E5 PUSH HL Stack screen-copy a d d r e s s ,
CDOOBO CALL 8000,UP C o u n t , I n B, t h e nunber o f c e l l s which
CDJD80 CALL 805D,RIGHT surround t h e r i v e n pixel.

CD1B80 CALL 801B,DOWN


CD1B80 CALL 80IB, DOWN
CD5580 CALL 8 0 J 5 . L B T
CDJ580 CALL 80)5,LEPT
CDOO90 CALL 8000,OP
CD0080 CALL 8000,UP

78 LD A,B Anumber of c e l l s s u r r o u n d i n g pixel.

El POP HL

CI POP BC R e s t o r e HL and C t o p o i n t t o g i v e n pixel.

CBBC RES 7,H P o i n t HL I n t o s c r e e n ( r a t h e r t h a n c o p y ) .

FE02 CP 02

)80C JR C,N0_CELL Junp i f l e s s t h a n two c e l l o surround pixel.

FB04 CP 04
J008 JR NC,N0_CELL J u n p i f f o u r or aore c e l l s surround pixel.

FEO) CP 0 )
2008 JR NZ.CONTINUE .lump i f e x a c t l y two c e l l s surround pixel

79 CELL LD A t C A!• pixel position.

B6 OH (HL) Prepare t o net p i x e l t o c r e a t e cell.

180) JR PUT

79 NO_CELL LD A,C Ai- p i x e l position.

2F CPL
A6 AND (HL) Prepare t o r e s e t p i x e l t o remove c e l l .

— 77 POT LD (HL),A Set o r r e s e t p i x e l as required.

CBFC CONTINUE SET 7,H Point HL back i n t o screen c o p y .

CB09 RRC C R i g h t one p i x e l (assuming w i t h i n c h r s q u a r e ) .

J0C5 JR NC, LOOP J u n p back I f w i t h i n c h a r a c t e r square.

CD4180 CALL S04l,hIGHT_1 Right one p i x e l (otherwise).


7D LD A,L A t * low p a r t of address.
E61F AND IP
20BD JR NZ.LOOP .'uwp hack u n l e s s o f f r i g h t edg® « f screen.
CD1B80 CALL 801B,DOUN Down one pixel.
7C LD A,H Aia h i g h p a r i of address.
EECO XOR CO

W OR L
20B4 JH NZ.LOOP Jump back u n l e s s whole screen d o n e .

C9 RET

BASIC p r o r r a a t 0 accompany a a c h i n e code:


Circles: Cridi
1000 RANDOMIZE VSR )2845
10 PGR 1 - 10 TO 60 STEP 10 10 FOR i - USH "A" TO DSN M
A" •» 6

0
1010 CO TO 1000
20 CIRCLE 128,80,1 20 POKE 1,1
50 NEXT 1 )0 NEXT 1
40 POKE 1,255
Suggested I n i t i a l configurations:

1 Squarei
50 PRINT » 0 t AT 0 , 0 (
60 FOB 1 - 1 TO 704
10 PLOT 98,48
5 70 HUNT " g r a p h i c - * " !
< 20 DRAW 8 0 , 0 R»Y«N

ot
1 0 OVRA 1 80 IP i < 6 5 THEN PHlffT O P t - g r a p h l c - A " ;
)0 DRAW 0 , 8 0
2 0 FOR 1 - - 1 2 8 TO 1 2 7 STEP ) 90 NEXT 1
40 D*AW - 8 0 , 0

O 50 D R A W 0,-80 50 PLOT 1 2 8 , 0
40 DRAW 1 , 1 7 5
O 5 0 NEXT I
DC Fretst
60 OVRA 0
C L Cross: 10 FOR 1 - 60 TO 140 STEP 20
10 FOR 1 - USH " A " TO USR "A" • 7 20 PLOT 0 , 1
20 POKE 1,128 JO DRAW 255,0
50 NEXT i 40 NEXT 1
40 PRINT « 0 ) AT 0 , 1 6 1 "irraphic-A"! TAP l 6 j "Krarhic-A M 50 FOR 1 • 16 TO 256 STEP J2
St ranpc n v u h o l a ;

o
50 PLOT 0 , 8 0 60 PLOT 1,60
10 FOR 1 • 1 TO 4
60 DRAW 255,0 70 DRAW 0 , 7 9
20 LIST
70 PLOT 128,0 80 NEXT I
JO NEXT 1
Q . 80 DRAW 0,175
CO

56 ZX Computing Monthly • October 1986


very real problem, so sticking
together and using the map Is
essential for the first few minutes
As the game Is played, so the
hero given a Knighthood, two screen Is updated depending
million pounds, eta If you fall, on which robot you are currently
Mission Omega well It could be worse, but not controlling. At any time, you can
Mind Games much. swop from one robot to another,
and indeed this Is essential to
£9.95 Mission Omega Is Argus' latest
allow each robot's batteries to
attempt to have a hit. and they
may just have cracked it. Unlike recharga Also displayed on
E E veryorte dreaded ever many games, It cannot be fairly screen Is the ever decreasing
receiving a Priority 1 order from categorised, as II combines amount of time you have to
Star Fleet Command. It was the arcade adventure, with strategy finish the mission, or die (mostly
regular nightmare of a certain and shooting. And all this Is Icon the latter).
Captain Allen. Thankfully, driven. Most of these are pretty Most of the U.F.O. Is made up
though, Captain Allen didn't obvious, with a bin halting any of separate rooms and corridors
control a big lighter, or a space intended moves, and the rest with the odd computer, and
carrier, so he wouldn't get a being labelled. even some baddies who range
Priority, would he? At the top of the first screen from very easy to dispose of. to
So his mission had been a are four Icon headings, and to pretty Impossible Both the
failure, even Star Fleet Command start with you must choose to graphics and the sound are
wouldn't execute a captain of a build some robots, with which to good, especially animation of
mining ship would they? Surely map the Omega, and the robots which enables them
not. Flying back from the outer accomplish your Increasingly to be distinguished at first
reaches of space, all these difficult task. Once you have glance
thoughts, together with many chosen to build a robot, you are Mission Omega Is one ol the
more, were skipping about given various different options best games to come trom the
Captain Allen's mind. Firstly you must choose the robot Argus stable of companies In
How could he be expected to you wish to use as a base unit. this case Mind Games It
know that at that very minute, an Some are fast, but can only combines neat graphics with
unidentified flying object, carry a little weight. some excellent basic Ideas and
roughly the size of earth's moon, Consequently there are others comes up with a game that
was rushing at 99.9% the speed 1hat can carry anything, but are should appeal to everyone
of light, towards his home, earth. very slow. willing to spend more than ten
He could also hardly have Having chosen the robot, you minutes trying to save the world
guessed that at a general must choose a weapon, a from Imminent destruction.
council meeting, the navigational device, and a
Ambassador for the Ukraine had power pack. Again, there are
just passed a resolution stating different choices In each
that a small ship called The category, with weight being the
Wlndwraith should examine the vltol factor. However much you
object before It was blown apart would like a fast robot with Infra-
by missiles. red sensors missiles and a
One thing Captain Allen did nuclear battery, this Is just not
know was that his ship was possible!
called The Wlndwralth, and he Having decided on the lirst
had just received a priority 1 robot, you must name him. II you
order. wish to start playing, you may
This is where you take control however, build more than one
ol the mission, now called robot. As you find out when you
Omega after the U.F.O. Having first embark Into the spaceship
selected whether you wish to use having a few robots Is a very
Joystick or keyboard, you are necessary precaution.
then ready to take on this Controlling the robots Is a
challenge You have one hour — matter of choice, and position.
in total — to make the Omega The three options are automatic,
Inactive, by shutting down all program, or manual. Using
four reactors automatic Is good very early on.
As il this were not enough, but to get anywhere It Is
you must then escape, with all necessary to either program a
your crew. If you succeed, you previously used route, or to do It
will probably be heralded as a all manually. Getting lost is a
Sheffield based
software house Gremlin
are putting the
finishing touches to
four very different
games. ZX blazed a
frail northwards and
found an outstanding
arcade game.
rthur Scarglll Is not known lor
his support of the software
industry but indirectly he was
responsible for giving Gremlin a
helping hand when they were
starting out in business back In
1984. Monty Mole, one of
Gremlin's first games featured an
effigy of Arthur and the media
picked up on It with coverage of
the game given on BBC ana ITV
news.
"We've really grown from
theref said Gremlin director, Ian
Stewart "and after Monty we
concentrated on animal
characters like Potty Pigeon, Sam
Stoat and Monty sequela From
there we decided to diversify
with games like Bounder, Way of
The Tiger and Jack the Nipper,"
Since 1984 Gremlin has
expanded to the point where It
now has 12 full time
programmers working together
in Sheffield and other smaller
teams working elsewhere on
outside projects." I would
imagine that by next year we
will have about 30 programmers
on the payroll," said Ian.
Gremlin's immediate concern
Is gearing up for the Christmas
market and they have four
games lined up, an original
arcade game, a combat
adventure, a football strategy
game and an arcade the ability to bounce and the the next level. If you make It
adventure. black spaces are conveniently within the time limit you get
placed for you to fall through bonus time to carry over onto
once you think you've cracked the new course
Ttailblazer the game. Gremlin programmer, Greg
There are 18 levels all with Orme, who wrote Jack the
Of these, Traiiblazer, a game that differing lengths and layouts Nipper showed me the finer
looks as if it Is fresh from the which will test the reflexes and points of trallblazing after the
coln-op arcade Is now complete skill of even the most bouncing ball under my control
and it is immediately Impressive accomplished arcade fan. A had fallen off the path with
from fhe first tug of the Joystick. nice feature is that you can embarrassing regularity. "The
The idea behind the game Is practice any three levels before main thing." sakla Greg as he
very simple, so simple you you have a go at the whole wrestled with the joystick, "Is to
wonder why nobody had course and It's essential to build up a rhythm because if
thought of it before. You control familiarise yourself with as much you miss a jump It's difficult to
a ball and have to manouevre it as possible fo give yourself a make up the time."
down an ever changing path fighting chance All runs are In keeping with one of the
that rushes towards you at an timed and you need to unbreakable laws of
alarming speed. Some squares accomplish each level within a demonstrating games the
o slow you down, others give you time limit In order to progress to bouncing ball disappeared
W1A

The aim of the game is to


further your career from the
lowly starting point of a 17-year-
old Fourth Division player with
£500 In cash to the pinnacle of
success — the footballer of the
year award.
FutureKnight, described by
Gremlin as a "Blastventure" Is a
retrieve the Princess story
ranging over various locations
such as castles spaceships and
forests Spegbott the terrible has
the princess Amelia in his
clutches and you have to
teleport aboard a spacecraft,
the SS Rustbucket where she was
last seen. There are twenty levels
to battle through against
Berserka robots before finally
reaching Castle Gremlin on a
nearby planet where a final
showdown with the Henchodroid
protecting the princess awaits
you.
A decision was being made
Avoogor tcroon n*ar to completion animated acting is smaller than that day on whether the
In simitar games but It does not Spectrum version of FutureKnlght
through a hole In the road. "It's detract from the actual would include a scrolling
tunny how that always happens gameplay. screen. "At the moment we
when you are showing someone 'The reason for having the haven't finally decided whether
a game" said Gregg. smaller screen," said Greg, "is It will scroll or use a flick screen
Trallblazer looks set to that you can get a larger map between locations In the end
become an Instant classic when Into the game and you have the decision will be made on
it's released In November and more memory to play around whatever's best for the product.
although I'm wary of predictions with for characters and Although scrolling would be
I would say that unless the graphics" aesthetically pleasing the
charts are abolished Trallblazer Without giving anything away gameplay may be Improved it
will be a number one about completing the game we use flick screen. "We'll see"
Greg said, "Theres a lot of said Ian, "mind you it would be
nasties to contend with and a shame If we lost the scrolling."
finding a monk Is Important but
Avenger there's quite a few roaming
around and you have to find the L I A
Avenger, the follow-up to Way of right one before you can go on.
the Tiger Is nearlng completion. There are three major villains
Having polished up on your In the game and each of their Gremlin have found that the
Ninja skills in the three stages of faces are set beside the main games business doesn't end wllh
Way of the Tiger you are now screen. When you kill one of just producing games An 'titter
ready to start your mission of them there Is a nice, if ghoulish, sales" service has developed tor
vengeance. Your toster father touch as the face gradually harrassed games players stuck
Naiilshl, has been killed by sheds Its skin to reveal the skull In the middle of Gremlin games
Yaemon, Grandmaster of flame beneath. Although difficult to "We've experienced this with
who has also stolen the Scrolls of evaluate in its present form smes before but nothing like
Kettsuln from the temple. You
hove sworn to the God Kwon that
Avenger certainly looks as if It
will be worth waiting for.
S e response we've had with
Jack the Nipper. There's always a
you will avenge NalJIshl's death Gremlin have two other danger that games will be
and recover the scrolls games In the pipeline which played for a day and If they get
There are six levels to explore weren't available for preview — nowhere they won't pick It up
and Gregg explained that In Footballer ot the Year and again. Giving people hints if
programming the game the FutureKnlght. Although football they are stucli increases their
emphasis had been on making strategy games would appear to enjoyment of the product."
the Nlnja figure move around be well trodden turf, Ian Stewart "It's always difficult pitching
the locations quickly as most Is confident that Footballer of the the degree of difficulty of a
games of this sort tend to be Year will be breaking new game T think that In some of our
very slow. "He's a Ninja after all ground. 'There's still a lot of ast games not enough
so you can't have him hanging mileage left In football based Rnformation has been given and
about. We've left out things like games and this game is different they have been too hard. On the
diagonal movement so he can In that It's taken from the other hand you don't want to
get about quicker." individual footballer's point of make It too easy.
The graphics are impressive view. You are really running With Trallblazer, at last,
even at this stage in producing yourself as a business so that Gremlin seem to have solved the 111
the game and a lot of you can transfer yourself to dilemma. No one will complain DC
Incidental detail Is included. The Spain or Italy to get cash and that it's too hard-they will be too
actual screen size of the prestige" busy playing It. o
Here's your chance to capture Colossus Chess 4. There are 20
copies of this superlative program from CDS just waiting

ora®* J
to be won — but there is a problem...

* 8

lrib
co i9ee

i
M.Dry ant

6
My m o v e
d 6 b<t
5
* b C d « r 9 h

4
Your KOV«?

C o l o s s u s Chess 4 is a
formidable/invincible chess
adversary depending on your
level of play and the level at
which you choose to play it.
We've got together with CDS to
give you the opportunity of
carrying off Colossus and all you
have to do Is solve a chess
problem set by the writer of
Colossus. Martin Bryant.

The Problem
Look at the endgame situation B D H
on the board Illustration. You are
playing the white pieces. White
to move, and checkmate black
in six moves. What you have to
do is note down white's first move COLOSSUS COMPETITION
from this situation to ensure
victory in six moves. Please write
your answer using the board White's next move is
coordinates, for example Pawn
B5-B6. Write your answer on the
coupon provided and also Name
clearly on the back of your entry
envelope. It's your move,..
The competition is open to all Address
ZX readers except employees of
a. Argus Specialist Publications,
Alabaster Pasmore and CDS. Post
s your entries to Colossus
Competition. ZX Computing
O Monthly, No 1 Golden Squaqre. Post this coupon to Colossus Competition, ZX Computing Monthly.
London W1 3AR The closing date No 1 Golden Square. London W1R 3AB
O for entries is November 7th 1986.

60 ZX Computing Monthly • October 1986


urn
CR VIRIES
Brother bother
Dear Sir,
I own a Spectrum+ with a
Brother EP44 printer. The inter-
face I use Is the ZX Lprlnt 3
RS232 Interface.
At the moment I am having difficul-
ties configuring Tasword 2 and Master-
tile to run with the interface
Could you please provide me with Ray Elder presents more readers' problems — and
precise instructions on how to incorpor-
ate the Lprint J's commands into both
these programs.
solutions.
Your assistance would be greatly
appreciated. Thank you. I use a Spectrum + with an Opus Dis-
Cheam Kong Whee. covery 1. After a few weeks use the STOP 10 LET P»'CHR» 27»CHR» 52*"T«stlng H o l i e s Xode"
Kuala Lumpa. keyword developed an intermittent
Malaysia. fault, and subsequently failed 20 GO SUB 9000
altogether. Since this keyword is used in
Tasword 2 and Vu-File, this fault Is very 30 STOP: HEM or r e s t of progran
A very nice set up indeed and
it should operaie without any annoying.
9000 FOR a - l TO U l PI
real problems. I assume that The keyboard is tine when the Spec-
you have ZX Lprint's own RS232 lead or trum is not connected to the Discovery 9005 POKE add'1.CODE F K a l
that you are certain that the one you and. just to add to the contusion, works
have Is wired correctly, so let's look at OK with a ribbon cable attached to the 9010 RAIDOXIZE USR add
Tasword 2 first and take it In easy steps. expansion slot, but not when the multi-
1. LOAD Tasword 2. face or joystick is attached to the cable 9020 IEXT a
2. Use the "STOP" option to get to the The Discovery works OK with another
menu. Spectrum, so I'm fairly sure that Isn't the 9030 POKE add*1.10: RAIDOKIZE VSR add
3. Select B' — Go into Basic problem.
4 Type LIST 15 and press ENTER. I've sent the Spectrum to Mancomp 9040 POKE add*1.13: RAIPOXIZE USR add
5. Press key N In reply to the Scroll? tor repair, but they merely replaced the
prompt. keyboard membrane and ignored my 9050 RETURI
6. Hold Caps Shift and press key 1 to comments about faults when connec-
EDIT. The line will appear at the bottom ted to peripherals. The fault persists! 9990 LET add*653M
ol the screen. Yours faithfully.
7. Add to the start ol the line, after the W. J. Thomas, 9991 FOR a-add TO add+10: READ n: POKE ».e: 1EXT a
line number. LPRINT ! CHRS 5; CHRS 0; Newtown. Powys.
"S'l; 9992 DATA 6 2 . 0 . 2 0 5 , 0 , 9 1 . 2 0 5 . 3 9 . 1 , 1 9 5 , 0 . 9 1
(Note: the rest ol the line must follow I have a friend who is an elec-
on from here and the ' character is tronics engineer and I took 9993 CO TO 10
essential). Now press Enter to Insert the this letter to him. his reply was
line in the program. unprintable Apparently this is a prob- M/c Program
8. Type GO TO 25. lem which is rather more frequent than
9. Now select menu option "G". is realised, and it Is very time consum- operate the codes and how to operate
10. Press ENTER to move out of the define ing (and therefore expensive) to check the printer when In 48K mode the small
raphlcs page out. He showed me a BBC that worked booklet you get with the printer shows
1. Answer Y to change control codes perfectly, yet showed up on his test the codes but not how to use them. I'll
12. Enter 0.0.0.57855, one at a time lor equipment as faulty. be very grateful if you could help me
the four codes and leave the rest by just It seems that on occasion two or I. S. White. Tonbrldge
pressing ENTER for each question. more units that in all ways should be
13 Use option T and SAVE your modi- compatible Just will not operate to- ^ ^ Meanwhile a mysterious
lied program lor future usage gether. It could be a small hairline F A ^ H reader who didn't Include his
crack on a PCB which only falls when her name and address sent us
OK? So now on to Masterlile. It is connected to a particular piece ol a part solution. ZXC has the mosl help-
Maslerlile cannot be modified so equipment because that is slightly out ful and sklllul readers and we really
easily First you will have to determine of alignment and it puts pressure on it. appreciate your help and involvement!
which ol Ihe sequences CHRS 0; CHRS or a chip or diode which only fails aller I hand ever to M. Mysterious: In Cross-
1,2,3 or 4 operates best with your prin- a minute drop In the power level occurs, wires (July), two people had problems
ter In graphics mode I use CHRS 0; usually due to a peripheral, as In using with the Speclrum 128 RS232 port
CHRS 4. Once you have done this then the Opus built in PSU First you need a proper Spectrum
load MF and use one of the SAVE lead, l have a Brother M1009+128 Spec-
Yes there Is always something at trum and I gol the lead from RSD
options. Then BREAK the program before fault, but tracking down the precise
or during the actual save. (There Is no Connections Ltd. Dept ZXC PO BOX 1.
reason is a lengthy and frustrating |ob. WARE. HERTS. It costs £12.08 and they
need to use a recorder). II you must have it done and I would be
Change or modlly line 4010 to read: have a wide selection of accessories.
most unhappy to let such a situation
4010 LPRINT: LPRINT CHRS 0; CHRS 4; continue, then your complete system To operate the printer so that we can
CHRS 0; "S'l CHRS 13: COPY: GO TO USR R will have to be checked as It could be send control codes we have to resort to
This will allow a simple page image any one or more ol the units which is a short machine code program. This
copy, to tailor the program to take causing the failure lOADs Ihe A register with the code to be
advantage ot the full 80 columns and Take the lot to a reputable engineer sent and then calls some built in
various layouts will Involve using more and be prepared for a long wall and routines to gel It to the printer. I give a
advanced programming and the a big bill, it could exceed Ihe cost ot small program lo show how to use It.
drops In and out of basic to line num- a new computer! You are one of a The code Is located In the UDG area
bers, a sort of interrupt system, is ex- number of rather unlucky owners and but can be put anywhere you wish, at
plained in the manual. It will also you have my sympathies. the moment you can only use it In 128
depend on the layout and contents of mode and once you hove typed it In "O
each file and would lake at least a start by going to line 9990 (GO TO 9990)
page in itself to explain. I am afraid that In line 10 you should set up PS to con- 70
you will have to study the manual and tain the codes you want to send. Once
the printer mode has been set then you O
experiment. 128 Printer problems can print In the usual way until you
Finally type GO TO USR R and then
SAVE a copy ol your modllied program Dear Sir, want to change the mode. Then you
(option V). Would you please help me have to set up an appropriate PS and
operate my printer. I. like one GO SUB 9000 again.
ot your readers, bought a Lines 9030 and 9040 do a carriage
A strange one Spectrum 128 with a serial 8056
Compact printer My problem Is with the
return and line feed, you may wish to
omit them.

5
Dear Sir, printer codes. I can get a print out in I use the variable add which is set
I would be grateful for any normal text mode with FORMAT "P" 1200, to the address at which I store the code
advice that you can offer on
a problem that I have with my
this however does not work In the 48K
mode.
and to send a code or character you
have to POKE Its CODE Into address o
computer equipment. So could you please explain how to add+1.

ZX Computing Monthly • October 1986 61


More explorations of
the Spectrum's
calculator functions in
Part 4 of Toni Baker's
series. mflCHiriE CODE
T h e r e are many questions still
unanswered. How do you get
random numbers (the RND
(unction)? How can you
calculate SCREENS(X.Y)? How do

I tkiIIEl
you read the value of a BASIC
variable? How do you slice a
string? These questions, and
many more, will now be
answered.

IE]II
POINT: The machine code
instruction CALL POINT SUB
(address 22CB) will pop two
numbers, X,Y, from the calculator '0}
stack, evaluate POINT(X.Y), and
will put the result back onto the
calculator slack. graphics instead of the ASCII on the calculator stack, and will
ATTR: The machine code characters. You must restore replace it with the sliced string
subroutine S _ATTR S at address (CHARS) after the subroutine call. AS(BC TO DE).
2307 will take two numbers, Y.X. The value returned by the RND: The routine labelled RND in
from the calculator stack, and subroutine will have character Figure Two will evaluate the RND
replace them with ATTR(Y.X). code 70h less than the UDG function, leaving a random
SCREEN$: The machine code found. number between 0 and 1 as a
subroutine S SCRNS S at More comprehensively, the new entry at the top of the
address 2535 will take two program which was listed in last calculator stack. There is no real
numbers, Y,X, from the calculator month's ZX Computing in the need to write the routine as a
stack, and replace them with article "Elementary Graphics Part subroutine, since it is so short
the string SCREENS(Y.X). The Three" will detect and correctly you might just as well Include it
SCREENS bug which is present in return all characters as it stands in your programs
BASIC is fortunately not present S L I C I N G : Figure One lists a As with the BASIC RND
in this machine code routine, so program which I have called function it suffers from the
you can happily use It with no SLICE. Its purpose Is to slice disadvantage that it Is incredibly
problems (In BASIC the strings, In the same way that you slow. For this reason Figure Two
expression " * " + SCREENS(O.O) can in BASIC To slice a string contains two other programs,
will almost invariably give the Simply CALL SLICE (which must of labelled RANDOM and RNDQ
wrong answer — try it by printing course be written into the respectively. The purpose of
varous different things as Spectrum's memory at some RANDOM is to assign (SEED) with
position 0.0!). convenient location) and the job the next value In the pseudo-
The SCREENS function will only will be done. random sequence. On return HL
detect ASCII characters. It will The subroutine will remove will contain the new value of
not detect either block graphics three items from the calculator (SEED), being a random word
or user delined graphics. By stack, AS,X,Y, and will replace between 0000 and FFFF; also, the
altering the value of the system them with the sliced siring AS(X A register will contain the high
variable (CHARS) to (UDG) - TO Y). Also in Figure One is a part of this number, and will
100h prior to calling program called SLICE INT therefore be a random byte
S_SCRNS_S it is possible to which only requires one item between 00 and FF.
search for the user defined (the string to be sliced). AS say. The RNDQ subroutine (which
relies on the existence of the
Figure 1 RANDOM subroutine) will do
CD991E SLICE CALL 1E99,F1ND_INT? BC t« 3«-co-d s l i c * parameter. exactly the same job as RND —
C5 PUSH BC Store on machine s t a c k . ie will leave a random number
between 0 and 1 at the top of
CALL 1E99,FIKD_IWT? BCta f i r s t s l i c e parameter.
CD991E
the calculator stack — but will
C5 PUSH BC Temporarily store on s t a c k . do It much, much faster.
CDK1?B CALL 2BF1,FP_T0_AEDCB DEi« address of s t r i n g t o s l i c e . PI: Since the calculator has a
built In procedure for
o
AT XOH A Azero.
calculating PI/2, the calculation
EB EX DE, HL HLJ» address of s t r i n g . of PI is particularly easy. Figure
0 Dl PO^ t e DEia f i r s t s l i c e parameter. Three contains four different
routines for calculating PI — use
DC CJ96?A J P ?A96,SL_DOINE_2 Jump i n t o Ron r o u t i n e t o
whichever of the three you want.
01 complete t h e t a s k . They are listed in order of speed
— the first is the slowest.
INKEY$: INKEYS (as opposed to
v> SLICE_IOT FVSH DE Stack second parameter.
INKEYS #N) is particularly easy to
Temporarily stack f i r s t parameter.
C5 TOSH BC do in machine code. The
cm?B CALL 2JT1,FP_T0_AEDCP DEi« address of s t r i n g . program listed in Figure Four will
AJ XOR A At* 0 . do the job nicely, placing the
string result of an immediate
EX DE, KL HLte address of s t r i n g .
Efl keyboard scan at the top of the
Dl POP DE DEi« f i r s t parameter. calculator stack. INKEYS#N, of
C)96?A JP 2A9$,SL_DEFIKE_2 S l i c e the s t r i n g . course, needs no special routine
to do that.

62 ZX Computing Monthly • October 1986


Figure 2
LLLIA
Communicating with 5» DBC A Adjust f o r s p e c i a l case.
BASIC V RAND_K0D LD E, A

Using machine code throughout 1600 LD D, 00


is good practice, but sometimes A7 AND A
it makes things easier if you can ED52 SPC HL.DE HL:« remainder modulo 65537
use numbers and strings on the
calculator which were specified o f 75*(SEED*1).
in BASIC Better still if you could 2B DBC HL HLia (75*(SEED*1) MOD 65557)-1.
use machine code results in 7C RAND_EXIT LD A,R A :> randoa byte.
BASIC There are a number of
ways to do this so let's look at 22765C LD (SEED),HL Store new value f o r system v a r i a b l e .
the easy ways first. C9 RET
Consider the following BASIC
statement: LET P=G+USR address CD???? RNDQ CALL RANDOM Find new value f o r (SEED).
This will call a machine code
LD B,H
subroutine at the specified 44
address, but with a rather 4D LD C,L BC!• randon word.
Interesting property. At the time CD2B2D CALL 2D2B,STACK_BC Place on c a l c u l a t o r s t a c k .
the machine code is executed
EF R9T 28
the parameter Q will be at the Switch c a l c u l a t o r on.
top of the calculator stack. This 5D restack Re-stack I n f l o a t i n g p o i n t for*.
is really the easiest way of »e end c a l e Switch c a l c u l a t o r off.
passing a numeric parameter 7E LD A,(HL) Ala exponent byte.
from BASIC lo machine code. I'll
give you an example — a little A7 AND A
routine which works out SQR CO RET Z Return I f random number i s zero.
(Q+1). In other words, you will be D610 SIRE 1 0
able to use LET P=Q+USR
address in place of LET 77 LD (KL),A Reduce exponent by s i x t e e n , thus
P=SQR(Q+1). You will notice that C9 RET d i v i d i n g number by 65556.
this technique firstly accepts a 06lD RND LD B, ID B ! • c a l c u l a t o r code f o r VAL.
numeric parameter passed from R3T 28 Switch the c a l c u l a t o r on.
BASIC, and finally passes a EF
numeric parameter calculated J4B05F0201 s t k d a t a "RND" Stack t h e s t r i n g "PSD".
in machine code back to BASIC 5» execute B Evaluate t h e s t r i n g u s i n g VAL.

The example I mentioned is 58 end c a l c Switch t h e c a l c u l a t o r off.


listed in Figure Five. The 2A765C RANDO* LD KL,(SEED) HLi" previous randoa nuttber seed.
calculation of SQR(Q+1) is really
quite simple — since it is the 7C LD A,K
parameter passing which is the A* AND L
point of the example. There are JC INC A
some things to watch out for: Jump u n l e s s seed • FFFF.
2005 JR NZ,RAND0f_2
LET P=Q+R+USR address will
pass Q+R to machine code 21B5FF LD HL.FFB5 I n which case new value I s FFB5.
LET P=(expresslon)+USR address 182A JR RAND_EXIT
will pass the value ol the XOP A AHLia SEED.
AF RAND0P_2
expression to machine code
LET P=USR address+Q will not 25 INC HL AKLie SEED+1.
work! 54 LD D,R
There are many other ways of SD LD E,L D E I - SEED + 1.
talking ot machine code Irom ADD HL, KL
BASIC, and vice versa. I'll 29
illustrate one such method with 8F ADT A,A AKLi - 2 • (SFSD+l)
a routine which returns the 29 ADD K L , H L
difference in lengths of two
strings. The all important BASIC 8F ADC A, A AKLl" 4 • (S-SDtl)
o
instruction is this:
DEF FN A(P$,Q$)=USR address.
29
BF
ADD KL, HL
ADC A,A AHL(- 8 • (SEEDTL) z
The trick is to write a machine
code routine at the given
19 ADD HL.DE
(SKED*l)
s
<
CEOO ADC A,00 AHLi- 9 •
address In such a way thai
whenever FN Afstring expression, 29 ADD HL, HL
string expression) is encountered FTP ADC A,A AHLi- 18 • (SEED»1)
it will be regarded as ABSfLEN ADD HL.HL
string-LEN string). 29 a
ADC A,A A H L I - J6 • ( S E E D » L )
How we do this is to look at 8F
O
Ihe way that BASIC treats the 19 ADD HL,DE
arguments of its user defined O
cc
CBOO ADC A,00 AHLi" )7 * (SE£D»l)
(FN) functions. It stores in memory ADD HL.HL
a list ol records, with one record 29
for each parameter required by 8F ADC A,A AHLi- 74 • (SEEDtl) a.
FN, and in the same order, with 19 ADD HL.DE
eight bytes for each numeric CBOO ADC A,00 AHLi- 75 • (SEH>»l)
parameter and nine bytes for
each siring parameter. Figure Six 24 INC H 3
illustrates the format for both 2b DEC H Ct
types of record, while Figure 2006 JR NZ,RAND_MOD J u « p u n l e s s HL <0100.
Seven lists Iwo programs relevant
to Ihis technique. The first BD CP L <5
program performs the task I i n
a
280J JR Z,HAND_M0D J u a p I f A - HL.
have mentioned as an example J801 JR C,RAND_M0D Jump i f A < HL.
(ie it calculates ABS (LEN </>

63 ZX Computing Monthly • October 1986


IM
Hgur» 3
We have not looked at the
0610 PI_VWSN_ 1 LD B, ID Bt» c a l c u l a t o r code for VAX. possibility of returning string
tr RST 28 Switch c a l c u l a t o r on. results as yet. but the technique
MB0580201 stk data " P I " Slack the s t r i n g " P I " .
is dead easy. It is similar to the
LET P=Q+USR address technique,
5B execute B Evaluate the s t r i n g u s l n * VAL. but here we have to use LET
end c a l c Switch c a l c u l a t o r off. PS-QS AND USR address. In this
case the machine code
subroutine will be called with
tj pi_vrasN_ 2 RST 28 Switch c a l c u l a t o r on.
one item. Ihe string PS. on the
AJ coriat PI/2 Stack h a i r or P I . calculator stack.
51 duplicate If we alter the topmost Item
add Double it.
on the stack to a string of our
or
own choosing, and return to
J8 end c a l c Switch c a l c u l a t o r oft. BASIC with BC containing a non-
zero value (so that AND will not
a- n _ v H i s N ..5 HOT 28 Switch c a l c u l a t o r on. empty our string) then PS In the
above example may be
const P i / ? Stack h a i r or P I .
A5 assigned with a string defined In
end cftlc Switch c a l c u l a t o r o r r . machine codel
54 INC (HI.) Increnent exponent byte, thus It follows then, that you should
doubling the number.
be able to combine these two
techniques, and come up with a
BASIC statement similar to this:
ef pijrrasN_4 HST 28 Switch c a l c u l a t o r on. DEF FN A$(P$,Q)=P$ AND USR
J4F2490FDAA? stk data 5*141^927 Stack constant PI d i r e c t l y . address.
Switch c a l c u l a t o r o r f .
Ol course you can have any
end ealc
5« number ol arguments in the
brackets — including none at
Flguro 4 all. The arguments can be either
string or numeric. The part of the
B»» c a l c u l a t o r code for VALt.
0618 TWKKTt LD B,18 statement in between = " and
KP HST 28 Switch c a l c u l a t o r on. "AND" doesn't have to be PS - it
54B0590201 stk data " I N K K I " Stack the s t r i n g "INKRf»" can be any string expression —
even a string constant. On entry
execute B Evaluate the s t r i n g using VALf.
5» to your machine code routine
J8 end c a l c Switch c a l c u l a t o r o f f . the value of this string expression
will be at the top of the
5 calculator stack, whilst the
fj> DB*>_1 HOT 28 Switch c a l c u l a t o r on. Note that
arguments of the user defined
function will be stored as usual
Q i s already on the stack. as records pointed to by
41 const one
0.1 (DEFADD).
OP add Q+1 Suppose you wanted a user
28 aqr SQB (Q*1) defined function which had two
end calc numeric arguments and
5® Switch c a l c u l a t o r o f f .
returned a string result — you
010000 LD PC,0000 Return ZERO t o BASIC v i a BC. could then use DEF FN A$(RQ)=""
C9 HOT AND address. Your own machine
code routine would replace the
6 original (empty) string on the
stack with a string of your own
Numeric record* choosing.
Figure Eight lists a user
t 'S t ISJ " W
defined function which returns a
OE string result. The function is
referred to as FN FS, and It is the
Spectrum equivalent to the QL's
N a m e of
Five byte form L _ 2 9 l f this the last record FILLS (unction. It requires two
of parameter 2C othermite
parameter arguments — a string and a
in O E F F N number, and it returns the given
statement number of copies of the string,
all joined together (eg FN
F$("'"4) would equal *).
String recordi
And now for a numeric
Z Z y * ./ / - X function. Once again this is a
24 OE function which you cannot
define in a BASIC DEF FN

t
N a m e of
F ive byte form
of parameter
L 29 if this ii the ten record
2 C otherwise
statement using BASIC alone. The
function is called the Factorial
function. It's a very easy function
parameter
in O E F F N to define. The tactorial of zero Is
itatement one; the factorial of one is one;
the factorial ot two is 1 * 2 (=2);
the factorial of three is 1 * 2 * 3
string-LEN string). code programs addressed by (=6); the factorial of seven is
The second program is more DEF FN. 1 * 2 * 3 * 4 * 5 * 6 * 7 (=5040),
genera) — it will place on the By using a combination of and so on. In general, the
calculator stack the value of both of these techniques it is factorial ol N (a positive integer)
each function argument in the possible to construct a user is the product of all the integers
proper code. It Is intended to be defined function of more than from one to N all multiplied
used as a subroutine to be one argument, and which together, or written down
called by your own machine returns a string result. mathematically it is

ZX Computing Monthly • October 1986


1 + 2 * 3 * . . . * U . In
m
2AOB5C LEN_DIFF LD KL.(DEPADD) HLt p o i n t s t o f i r s t record.
mathematics the factorial of N is
usually N! (le N followed by an 010600 LD DF.,0006
exclamation mark) and is 19 ADD KL, DE HLi points t o length of f i r s t str.
pronounced N factorial. In BASIC 4E LD C,(HL)
however, we are going to write it
as FN F(N). and we'll define it in 23 INC HL
machine code using the 46 LD B,(HL) B C l e n g t h of f i r s t string.
calculator. lEoe LD E,08
To define it you'll need the ADD HL,DE HLi p o i n t s t o length of 2nd s t r i n g .
BASIC statement DEF FN F(N)=USR 19
factorial somewhere In your 5K LD E, (HL)
BASIC program, and the 23 INC HL
program of Figure Nine at the LD D,(HL) DEt- length of second s t r i n g .
56
relevant address.
Note that the program has a EE EX DE, KL HL:» length of second s t r i n g .
choice of two alternative 17 AND A
endings. Version one is what we ED4? SBC KLf BC HLi> d i f f e r e n c e in l e n g t h s .
would expect; this is the normal
44 LD B,H
way of ending things, with all
the stacks balanced. This, 4D LD C,L BC:« d i f f e r e n c e in l e n g t h s .
however, has one big DO RET NC Return i f r e s u l t positive.
disadvantage — it can only 70 LD A,B
return Integers (which can fit Into
BCJ. This means that we can 2F CFL
only calculate up to eight 47 LD B.A
factorial. The second version of 79 LD A,C
the ending does not suffer from CPL
2F
this disadvantage, and any
numeric value whatsoever may 4F LD C, A
be returned to BASIC 03 INC BC Otherwise negate HC,
The rules for using this, the C9 REP
best and simplest trick in all
calculatordom, are as follows.
The calculator stack must be 2AOB5C CENEBAL LD HL, (DF3ADD) HLt p o i n t s t o f i r s t record.
unbalanced, with one Item too 23 CEN_LOOP INC HL HLt p o i n t s t o byte 0E or 24.
many on the stack. It is the extra LD A.(HL)
7B
(topmost) item which will be
returned to BASIC so any FE0F. CP 0E
number (not just integers) may 2801 Jfl Z,GEN_SXTP Juap I f record Is numeric.
be returned). The machine stack 23 INC KL S k i p over extra byte.
must also be unbalanced, with
GEN_SKTP INC HL
one Item too few on the stack. 23 HLt points t o f i v e byte form.
The normal return address from CDB4J3 CALL 5JB4,STACK_NW Push parameter onto calc s t a c k .
USR will therefore be bypassed 7E LD A,(HL)
- this bypasses the subroutine FE?C CP 2C
STACK BC and hence causes
the trick to work. The registers HL 2AF0 JH Z,CEN_L00P J u a o back except f o r l a s t record.
and DE must be correctly C9 RET
assigned, with DE=(STKEND), and
HL=(STKEND)-5.
The "end calc" instruction which
Is used to exit from calculator DEF FN F|(X»,X) - X| AND USR f i l l
code will leave HL and DE 2AOR5C FILL LD HL.(DQADD) HI.t p o i n t s t o f i r s t record.
correctly assigned in this way. IIOBOO LD TIE.OOOB
The shortest way to assign DE
and HL In this manner if they are
19 ADD J*L,DE HLt p o i n t s t o 5 Hyte f o m nf number.
0
not already so set up is to use
the sequence of Instructions RST
CPB4 3J
CD991E
CALL 3JP4,STACK_N1'f
CALL 1E99,FIJiD_TKT?
Stack nuirher of reneats.
BC t • number of repeats. z
28/"end calc" (in hex EF followed
by 38).
With the second ending In
C5
CDF12P
PUSH BC
CALL 2HF1,FP_T0_AEDCB B C l e n g t h of s t r t DFi« address.
1
place bigger numbers may be El POP HI HLt" number of re real a . s<
returned. You may also use this e> PUSH HL Stack number of repeats.
same technique to return
decimals (non-integers). Now you
D5 PUSH DE Stack addrss of old s t r i n g .
ot
have a complete factorial ED4JAE5C LD (5CAE).BC Store length of old s t r in Few 5.
lunction defined as FN F. 50 LD D,B
0
Perhaps the advantages of the 59 LD £,C D? :« length of old s t r i n g . O
calculator are now beginning to ot
CDF32A CALL ?AF 8 ,C F?T_KL# DF^_ 1 HT.t- l e n g t h of new s t r i n g .
sink In
44 LD B,H a.
Getting hold of BASIC 4D LD C,L BCt- l e n g t h of nnv s t r i n g .
variables • • •
Getting BASIC variables onto the tor the numeric variable A, the sequence of instructions RST
calculator stack is one of the string 'BS" for the string variable 28/"execute BT'end calc" (in hex
most simple things imaginable. BS, the string "TOTAL" for the EF 3B 38).
The first thing you have to do is
to place the name ot the
numeric variable TOTAL, and so
on. Then you musl load the B
This works because 1D is the
code for VAL, and 18 Is the code o
variable, in the lorm of a string,
at the top of the calculator
register wllh either 1D (If the
variable Is numeric) or 18h (if the
for VALS. In other words, you are
effectively calculating VAL("A"). a
stack. For instance, the string "A" variable Is string) and use the VALSC'BS"), VALCTOTAL*), el cetera. to

ZX Computing Monthly • October 1986 65


8
7* LI) A,B
Note that you should not use
"val" or "val$" directly as
Bt OR C calculator instructions, unless B Is
?00<> JR NZ, NONEMPTY Jump unless new s t r i n g i s empty. also assigned with 1D or 18 as
F1 POP AF Delete address or old string. before — this Is because the
calculator Instructions "val" and
F1 POP AF Delete number of r e p e a t s .
"valS" are B register dependent
CM*2A JP ?AP^,S1K_AFDCB Stack « n p ' y s t r i n g and e x i t . (see Appendix In last month's
F7 N0N_EMTY RST 50 DE: p o i n t s t o space f o r new s t r i n g . article).
CDB62A CALL ?AB£,3TK_AEDCB Stack new s t r i n g parameters. With single letter variable
names, the process Is even
El POP HL HI.t— address of old string. easier, because the technique
C1 POP PC BCi« nuirber of repeats. used to create Ihe variable
C5 FILL_L00P PUSH BC name string Is so easy. All you
have to do is place an integer
EMPAE5C LD BC,(5CAE) BCi« l e n r t h of old st-ing.
on the calculator stack — the
£•> PUSH HL character code of the letter of
EDBO LDIH fake next copy of old string. the variable name — and use
El POP HL
the calculator "chr$" function to
turn it into a string. Figure Ten
CI POP BC contains two programs which
OB DEC BC BC:« number of remaining repeats. demonstrate this idea — the first
78 LD A.B puts the value of the BASIC
variable A onto the stack, and
B1 OH C
the second, by a similar
?0F1 JR NZ,FILL_L00P Loop back Tor a l l copies. technique, puts the string value
0? INC BC Return t o BASIC the value one. of the BASIC variable BS onto the
C9 RET stack.
Figure Eleven consists of a
9 table, giving you a single
calculator code instruction
DBF FN F(N) * USR f a c t o r i a l
which will stack each of the
strings "A" to "Z", without fhe
need for CHRS. Just follow this
PA0B5C FACTORIAL LD HL, (DECKADD) HLj points t o arnpiment record. instruction with "execute B"
23 INC HL (code 3B) with B assigned with
INC HL
1D, and the value of these single
23 letter numeric variables will be
CDMM CALL 55B4,STACK_NUM Push ar/^iment onto c a l c s t a c k . placed on the calculator stack
CD941E CALL 1E94,HND_IUT1 A: = t h i s argument. speedily and efficiently.
A7 AND A Also (perhaps) useful to know
Jump unlens N equals z e r o .
Is the fact that the strings "B$",
2001 JR NZ,fCT_P0SITIVE
"W$", and "ZS" may be stacked
5C INC A Set A t o one, s i n c e 01 « 1! in one single Instruction. This
CD?82D FCT_POSITIVE CALL 2D28,STACK_A Push back onto c a l c s t a c k . means that if you store a string
RST 28 Switch c a l c u l a t o r on.
whose value is needed by
EF
machine code in either B$, W$
51 duplicate The c a l c stack now c o n t a i n s two or ZS, then Its value may be
i d e n t i c a l numbers, each equal to retrieved as easily as PI. Just
N. I f we LET K - N, and I f we stack the string (see Figure
Eleven for Instructions code) and
take K * . . . *N t o mean the product
follow the instruction with
of a l l Integers between P and N "execute B" (code 3B) with B
i n c l u s i v e , then the items on the containing 18. You'll find that this
c a l c stack nay be w r i t t e n : will save the computer an awful
lot of work.
0 It is of course possible to stack
z A1 FCT.L00P const one
K»...»N,K any string in a single instruction,
but to do this the text of the
K*...*N,K-1
string must be stored separately
2
subtract
03
somewhere in memory. See last
51 duplicate K*...*N,K-1,K-1 month's article.
< 50 . eq zero K*...*N,K-1,K«1?
0006 jump true,FCT_HCIT Jump I f K equals one. Using a BASIC array
tt C5 s t o r e K5 K"...*N,K—1 (K5 c o n t a i n s K-1).
There is one final, and very
O 04 mult (K-1)*...*N ingenious Irick which we can

o £5 r e c a l l K5 learn. The trick is to use the


53F6 Jump FCT_L00P LET K • K - 1 and l o o p back. calculator's memories in
ot conjunction with a BASIC array.
o.
delete 1 . . *N
02 FCTjaiT When we use the calculator
58 end c a l c Switch c a l c u l a t o r off. instructions "store MO", "recal
VERSION 0SE ENDING M3", et cetera, we are copying
2 CDA22D CALL 2DA2,FP_T0_BC BC:a required factorial.
five byte numbers between the
calculator stack and the
DAAD51 JP C,31AD,REPORT_6 Error 6 i f too b i g f o r BC. memories. Usually there are six
C9 RET memories, which are stored
amongst the system variables at
o
IAJ
VERSION TV0 ENDINGs
C1 POP BC Pypass STACK_BC s u b r o u t i n e .
address MEMBOT. but this isn't
always the case. We can
C9 HET change the whereabouts of the
Q . calculator memories by altering
0 0 the system variable (MEM). Note

66 ZX Computing Monthly • October 1986


10
array which, since it is the first
061D VAL A LD B, 1D variable encountered, will be
EF RST 28
Bi« c a l c code f o r VAL.
the first variable in the VARS
Switch c a l c u l a t o r on. area. Line 20 runs the machine
J440B00041 s t k d a t a 41h
Stack code of " A " . code which follows. The
2F chrt
Convert t o s t r i n g " A " .
machine code alters the vafue
JB execute B of (MEM) so that is points to the
Convert t o v a l u e of variable. variable A(1) in the VARS area.
56 end c a l c
This has a rather stunning effect.
The array elements have now
0618 VAL Bt LD B,18 each acquired two different
EF RST 28
Bi- c a l c code f o r VAI.». names, and each element may
S w i t c h c a l c u l a t o r on. be accessed in two different
J440B00042 a t k d a t a 42h
Stack code or "B" ways. The firts element is known
2F chrt both as A(1) and MO. A(1) is the
Convert t o s t r i n g "E".
5440B00024 s t k d a t a 24h
name used by BASIC, while MO
Stack code of "t". is the name used by machine
2F chrl
Convert t o s t r i n g "I". code. Similarly, A(2) is BASIC may
17 s_add
Combine t o f o n t u t r i n e "B| M . be referred to in calculator
5B execute B code as M1, and so on up to
Convert t o s t r i n g v a l u e o f v a r .
A(32). which may now be
50 end c a l c
referred to in calculator code as
11 M1F. Notice that the number of
available calculator memories
To s t a c k numeric v a r i a b l e names on c a l c u l a t o r s t a c k t has now increased from six to
thirty two.
VARIABLF. CALCULATOR CODE VARIABLE CALCULATOR CODE
Any number of memories, up
A J4B02B0201 N 34BOODO2OI to a maximum of thirty two. is
B J4B0050201 0 34P01F0201 possible, and the number is
C )4P0140201 P 34B0270201
determined by the dimension of
A(). This now means that any
D 54P01B0201 Q 34B02A0201 reference to a calculator
E 34B01A0201 R 54B0120201 memory is in fact a direct
F 54B01J0201 S 5480230201 reference to an array element.
Such elements may be read —
C J4BOOB0201 T 34B00A0201
or even altered — by a machine
H J4B0060201 D 34B00F0201 code program.
1 MB0170201 V 34B00C0201 The program of Figure Twelve
J 34B0OF»?O1 V 34B0220201
will prove this, by assigning —
from within machine code — the
X 34B0160201 X J4B01C0201 element A(16).
L 34B01E0201 Y 34B0070201 Note that the program restores
M 54BO150201 Z 34B0240201 (MEM) to its original value of
To stack s t r i n g v a r i a b l e names on c a l c u l a t o r s t a c k :
MEMBOT before returning to
BASIC This should always be
VARIABLE CALCULATOR CODE done. Note also that since A{1) to
B» 54BOB4 JB02 A(3) are equivalent to MO to M2,
V| 34B08B2302 they are liable to be corrupted
by such functions as SIN etc (see
Zt 34B0BDJE02
Appendix in last month's article).
I think that's all there is to say
12 for now on the subject of
passing parameters between
BASIC and machine code. I'll
10 DIM A ( ) 2 ) A() i s f i r s t item i n VARS a r o a . move on now to a new topic
20 RANDOnZE USR a r r a y Execute machine code.

The function generator


?A4B5C ARRAY LD KL.(VARS) HLi p o i n t s t o BASIC array A(). There is just one calculator
Instruction left to cover, it is the
010600 LD BC.0006 function "series", otherwise
09 ADD HL, CC HLi p o i n t s t o f i r s t olercent of A(). known as the function generator,
?2665C LD (KKM),HL I d e n t i f y memories w i t h elements. or series generator. Its code will
ff Switch c a l c u l a t o r on.
be a value between 80h and 9F.
RST 28
The last five bits of the code form
5440B0002A s t k d a t a 2A Stack t h e number 2A. a parameter, so that 86 means
CP s t o r e KF S t o r e I n Memory OF. "series 6". 8C means "series 12d",
02 delete E^npty c a l c u l a t o r stack. 99 means "series 25d". and so
forth. This is the single most
3« end c a l c Switch c a l c u l a t o r off.
powerful instruction in the whole
21925C LD HL.5C92,MEMBOT of the calculator set. It is the
22685C LD (K»1),HL Restore c a l c u l a t o r memories. function with which J>IN and EXP
C9 RET
and others were written in the
ROW. With it we may create our
own designer functions, or
implement mathematical
functions which are not present
that this system variable always so on. (and not otherwise possible) on
points to the start of memory Figure Twelve contains some the Spectrum. The "series"
zero. Memory one is at (MEMJ+5, BASIC and some machine code. function is the calculator's final
memory two at (MEMJ+OA, and Line 10 creates a BASIC numeric frontier. To be continued....

ZX Computing Monthly • October 1986 67


MORE TRICKS WITH
DISCOVERY'S
CAT!

John Wase presents a


round-up of useful
routines to take full
advantage of the
Discovery disc drive.

• his month we have got Programming points 5 REN "PROGRAM FULL CAT"
together a couple of routines 10 DEF FN a O - C O D E INKEY*»0+2S
6»CODE INKEYMOi DIM « * < 1 0 > l DIM
which you might find useful in As you type in the listing from a<3>
using the Discovery disc unit. figure 1, you will notice that this 2 0 INPUT " d r i v o : * ' , d ; t t 2 ; " f i l end
Both these programs operate on program is much more compact m o " , " s t a r t ond last"'•
Discovery's catalogue file. than the disc-to-disc routine 3 0 CLEAR » 0 : OPEN H O : " CAT " t d
RND 16:POINT « O t 1
Regular readers will recall that published last month, which was 10 FOR J=1 TO 3t LET a<J>=FN J
this was introduced last month wrIHen with the idea of making it < ) : NEXT it FOR J * 1 TO l O i LET a
with a very simple demonstration absolutely clear how to access « ( j ) = I N K E Y * * 0 ; NEXT J
program which read the file and the catalogue file. However, the SO IP * < 3 > a 2 A 1 6 - l THEN STOP
then moved the recorded general principles are exactly
6 0 FOR j = l TO l O i INVERSE l i P
RINT "<"+STRt CODE a * <_)> + " > " AND
programs one by one from disc the same. Much of the space is .if(JJ<" INVERSE Os PRINT a *
to disc; these programs are saved by defining a function in t j > AND " j : NEXT Jr PRI
rather more sophisticated. The line 10 which can then be used NT TAB 1 6 : a ( 2 ) ; T A B 22s a<3>sTAB 2
first is from Opus themselves; the later in the program. A typical 7ta(I>+1
second is from S. Nutting of printout from "full cat" is shown
70 GO TO 40
Histon. in figure 2. Note the third item together with a bit of basic to
printed in the array of three run it and to print the files on
Full cat (number of bytes used in the last the disc The results are shown In
sector). figure 3. It prints the disc title:
This program gives more A quick glance at page 28 of this is given the heading of
information about each file on the Opus manual confirms that "cartridge name". Then it gives
the disc than merely in the CAT file, part of the first the various program titles.
cataloguing. It prints out the number (the first two bytes in the Alongside the name of each
name of the file, together with file) represents the number of program is the number of bytes.
the numbers of the start and bytes required minus 1; hence Then, on the same line, you get
finish sector (or block); readers the addition of 1 in statement 60. the start sector, the finish sector
will remember {from the and the number of sectors used.
Discovery manual, pages 10 and Supercat Underneath you are told if the
11) that there are 18 sectors on program is a BASIC program, or
each track and each sector if it is a numeric array, a
holds 256 bytes so a forty track This program reads "disc character array, machine code
disc will hold up to 180 Kbytes (1 headers', getting its data from or a print file. If it's BASIC then
K being 1024 bytes). In addition, the catalogue file, and printing you get the number of bytes for
the program also prints out the out a wealth of information in an the program itself, together with
number of bytes used in the last attractive format. It is as good or the number of bytes for the
sector which has been written better with disc headers as variables and the line number
to; it is therefore very easy to many a professional tape from which the program
calculate the precise number of header reader. It consists of a autoruns. If it's code, then you
bytes which a program takes up. 100 byte machine code routine get the familiar start and length.

68 ZX Computing Monthly • October 1986


UUA
f i l e n a m e s t a r t e n d L a s t

n e i.o 0 6 2 5 F .

d u m p r o g 7 Q 4 1
d u m p 10 11 1
b u f f 1 C O D E 12 13 7
Z E U 3 14 40 15 1
a s s e m b L e r 4 1 4 3 i i i F ;

C O d E: 44 44 4 3
C a t r 4 5 45 107
s u p e r c a t 4 6 50 98
c o n f i g 8 1 F 1 ^ clld
f u l l c a t 3 3 3 4 • 1• 11 1

a 8 5 112 7
Figure 2

C A R T R I D G E NAM = n «£ w
ilii Uml 11 ilHH It UHII is lisliliiliiiniilii ill II lillli i 4.1—.

ESf I ? i n 1 i I HSU
JL O
5 0 I O 1 1
ac E 6 5 1 I S , 2 5 0
„„mmmfe 5 6 12 13
•—-1 O D E pi
116800 14- 4-0
E - ' . 0 *7 3 4- 4- < d 3 0 0
90 4-1 4-3

44
li ~=:
iiiiiiiii 44p ,
O

c o I>E 3 2 7 6 8 , 3 6
m.ifl 1 1 0 0 4-5 4-5
:>E 6 4 9 0 0 , X 0 0
115 4-6 50
•so
ihmi6 9 1 2 5 1 "7 .—.
F 1 r" N E C O C> E 1 S 3 © 4 . , F . 9 1 2

Figure 3
5 REM PROGRAM"SUPERCAT" 170 IF t y p e - 0 THEN PR INI FAFER
The program 10 INPUT "Dr t v o l " ; d : POKE 6499 IIA 7j " B a « i c•Var i it> 1 f•» D a « l c
O.d Vari A u t o * *"DASICt";TAD 1 0 ; l e o g
The BASIC program Is given In 20 RANDOMIZE USR 64900 t h ; TAP 16; b a s i c ; TAP 22; U'tiqlh-bd
30 DEF FN .»<x > "PEEK (K+«H-236« s i t ; TAll 2 7 ; s t a r t
figure 4. This Is typed In and PEEK <a*x+1) ISO IT t y p e " t THEN LET n-PEEt (
saved with "SAVE'H'supercat" 40 PRINT "CARTRIDGE NAME - " j t 1-4)-64s F-RINT PAPER INt 6 ; "N
LINE 9999. It contains the FOR *=62006 TO 62015: PRINT CHR« UMERIC ARPAV ";nein;TAP 2 1 ! " TV
following variables: a points to PEEK a ; i NEXT as PRINT PE="sCHR* n . CO
the CAT area; I points to the start SO LET a-62016s LET t-6JOOO 190 IF t y p e - 2 THEN LET c»F£EK 1
60 LET b>FN a <0> i+4)-128t PRINT FAFER 7t INK 6 ; "
of the file information; b, s and e 70 LET s-FN a<2) CHARACTER ARRAY •';«u?m;TAP 21 i " T
are the sector, its start and its 80 LET e-FN a ( 4 ) YPE""jCHR« c j " » " , ,
end; type Is the type of program 90 LET mem-<«»-«» «256+b-6 ZOO IF type^T THEN PR INI PAPER
(0 for BASIC 1 for a numeric lOO IF « - 6 3 3 3 3 THEN STOP 6 ; INI 2;"MACHlNECODr " | * t * r t ; " .
array. 2 for a character array, 3 110 FOR p - a * 6 TO a » 1 3 : PRINT PA leriQth,
PER 4;CHR1 PEEf p ; s NEXT p
for machine code and 4 for a 120 PRINT <nem;IAI< 17}«;TAB 21 ; t?
210 IF t y p e ' THEN PRINT PA^Ef
S i -PRtNTF ILE TYPE LENGTH " [ i m ,
print file); length is the program ; Tflfi 2 3 | » - a * l 220 LET a - t s LET * ' * * I 6 : LET %'
length; start is the start address if 130 LEI t « a : LET a - i j LET t y p e " l * 1 0 s GO IQ 60
Ihe program Is machine code or PEEK a 9979 C t l A R i l 9 9 9 i PRINT "LOADING O
the auto-start line if BASIC; finally, 140 LET 1 ifrifjt h-r N a ( l ) IN "IACHINE CODE": LOAD • l ^ r . r f t c
basic is the length of a BASIC ISO LET «it.«rt"FN a(3> CCDL i RUN
160 LET ba«»e-PN a<5>
program {without the variables). Figure 4 O

69 ZX Computing Monthly • October 1986


LLLU
0RC 64900
84900 205,008,023 starI: CALL 5896 ;Cal1 Discovery RON i n .
64303 006,000 LD 8,0 ;Find fron Discoverys Lookup Tables the 1/0 Read 4 Write routine
64305 247 RST #30 ;Then Load HL with the a d d r e s s .
64306 018 DEFB 18
64307 034,226,253 LD (ADDRESS),HL ;P0KE the Address in the Loadsect r o u t i n e .
64310 033,000,000 LD HL,0 ;KL= Sector 0 (the s t a r t of the CAT i n f o .
S4313 017,048,242 LD DE,62000 ;Address to load CAT i n f o .
64316 014,000 loop: LD C,0 ;256 bytes to load i n .
64318 205,218,253 CALL loadsect ;Load the Sector i n .
64321 020 INC D ;ftdd 256 to current load CAT Address
S4322 063 LD B,L ;B=Sector no.
64323 062,006 LD A,6 ; I f sector no j u s t loaded = 6 Then JR to l o a d i n g the i n d i v i d u a l files in.
64325 184 CP B
64326 040,003 JR Z , f i l e s
64328 035 INC HL ; I f Sector <>6 Then load in next sector.
64323 024,241 JR loop
64331 033,015,249 files: LD HL,63790 ;Address to Load f i l e d a t a .
04334 £21,033,050, 242 LD IK,62002 ; P o i n t s to F i i e n a n e i n f o .
$4*33 917,012,000 n e x t f i l e : LD DE,10 ;Add 10 ta current Lead f i l e data Address.
C4341 025 ADD !!L,DE
64 34 2 235 EX DE,HL
S4343 001,016,000 LD BC,I6 ;Add 16 to current Filename d a t a .
64946 221,009 ADD IX,BC
64348 221,229 PUSH IX
64350 213 PUSH DE
64351 221,078,002 LD C,(IX+2) ; I f BC=65535 then ue have loaded a l l files in.
64354 221,070,003 LD B , ( I X * 3 )
6435? 033,255,255 LD HL, 65535
64360 237,066 SBC HL,BC
64362 040,016 JR 2,end ;RET by JR to end I f BC:65535
64364 221,110,000 LD L,(IX+0) ;HL=Sector no to l o a d .
64967 221,102,001 LD H , ( I X + I )
64 970 014,007 LD C,7 ;Load i n 7 b y t e s .
64972 205,218,253 CALL loadsect ;Do a c t u a l l o a d i n g .
64975 225 POP HL
64376 221,22S POP IX
64978 024,214 JR n e x t f i l e ;Loop u n t i l loaded a l l data
64380 225 end: POP HL
64381 221,225 POP IX
64383 195,872,023 JP 5960 ;CALL S i n c l a i r RON i n and RET to B a s i c .
64386 197 loadsect: PUSH BC
64387 213 PUSH DE
64388 229 PUSH HL
64389 062,001 LD A,1 ;Drive 1 (optional I f then load fron Drive 2 ) .
64331 006,002 LD B,2 ;tlsed by Discovery RON.
64933 205 DEFB 205 ;When 1/0 Address i s found the OP Code would t u r n out to be CALL n n .
64934 000,000 DEEM 0
64936 225 POP HL
64337 203 POP DE
64398 193 POP EC
64333 201 RET

Figure 5

Machine code line 40 so that it contains all the


5 REM MTO ENTER CODE" decimal numbers in the second
The next section contains an tO CLEAR 6 4 8 9 9 : !.ET c=Ot FOR J column of the assembly listing In
assembly language listing of the ^&4900 TO A 4 9 0 9 : PEfiO ru COKE s , the order in which they are
machine code (figure 5). The
n : LET c=c-»n: NEXT .« printed. Run it and save the
20 'F r: 1J 2t>~> THE^J PRINT «C-it
comments alongside it are 4 Error"
code which has been created
pretty self explanatory. Thus, ZO STOP with SAVE * 1 '!'catc"CODE 64900.
CALL 5896 pages in the 4U DATA 2 0 5 , B . T ^ , 1 , 0 , 2 4 7 100. It will keep all those
Discovery ROM and LD B, 0 finds « t c , «t.c 2 0 1 - -?r»t programs (you know, the ones
from Discovery's ROM the LOAD
or a l l t h e d a t a ' r o m tli® a s ^ r i t b i you recorded last year) tidily
y l a n ^ u ^ g n pro'jrjini, » e : o n d c n l n i r
address routine: this is then n.
sorted out, so that you know
POKED into the loadsector what they are!
routine. The sector number, Figure 6
address to load the sector at And f i n a l l y . . .
and the number ot bytes to load Basic loader
(0=256 bytes) then follow. The Opus drive Is now,
Then there Is the option of For those of us without an indisputably, the most commonly
loading a sector (LD B 2) or assembler, there is a BASIC found and the most popular. If
saving on disc (LD R 0); the drive program (figure 6) to POKE in the you have a short routine which
number to load from being decimal numbers. These are you think merits publication,
loaded into A. The program then listed alongside the assembly please send it to the Editor, ZX
loops round to load the next file language listing, In the next Computing, marked "Opus
data, and so on, until it finally column to the list of addresses. If program". We could then,
pages in the Sinclair ROM and you intend to use this program, perhaps, make this column a
returns to BASIC type it in carefully, amending regular feature.

70 ZX Computing Monthly • October 1986


LLLLA
M hate to say "I told you so" Informative and deliberately the Manager Is not protected by
(but I did) and all is still quiet on humorous. Generally the the Lenslok security system
the Amstrad Front despite last program allows you to do just (unlike Supercharge) which I find
month's (lurry o( excitement over about anything you might wish a blessing and I hope that
a quick deal with the newly- with microdrlve or disc files and Digital is rewarded with sufficient
formed QL Suppliers Group. Avid to copy between them with profits fo compensate for any
Beckett (the other one) readers more flexibility than I've seen In successful piracy that might
will also be glad to know that competing products (of which arise.
Godot would seem to be alive there aren't all that many
and well and working for anyway). The program is QL Bargains
Amstrad's PR firm as I m still extensively menu driven, screen
waiting for him to "check with displays are good and the By the time you read this, the
the client and get back to me" commands are generally easy PCW Show will have come and
regarding last month's quest for to follow and operate. Facilities gone and we will probably
a quote on the QL's future (or exist for extensive sector editing know whether or not the QL is to
lack of it) so I could pass it on fo and copying (disc and survive in anything like its
an information-starved public mlcrodrive) and for recovering present form. We should also
This may actually be a rare lost or damaged files as long as have a pretty good idea If any
case of "no news" indeed being there is something there for the of the various "sons-of-QL"
"good news". There's little doubt Manager to locate. schemes being bandied about
that Amstrad would like to see I've used It to recover some are going to get off the ground.
the QL quietly sink into oblivion stuff on dodgy mlcrodrives (so Either way you — unless you've
but so far its supporters have far my disc package has decided to consign your
kept if afloat by steadfastly behaved decently enough) and beloved QL to the outer
refusing to accept defeat. was most impressed wifh the darkness and are busy looking
Software houses and peripheral results. The stuff I went after at IBM clones — should keep a
manufacturers have Invested too wasn't important buf the facility sharp eye out for peripheral
much money in QL products to to get "lost" data back again is bargains.
simply give up without a fight almost a prime directive — A lot of companies have
and the computer's 100,000 plus especially if you're solely Invested in QL-specific
owners are just about enough of dependent upon microdrives peripherals and a lot of (hem
a market to make the fight
worthwhile In terms of the

QICOLUMN
balance sheet. US interests have
joined in the effort to acquire
rights to Sir Cllve's brainchild
and — as long as Ihe talking
goes on — there is a very real
possibility ot some sort of
agreement soon that will keep it
alive in spite of everything.
Which ever way things go,
however, I can look forward to a won't survive the competition
quote from Amstrad's PR man —
thereby successfully ending an
Brian Beckett reviews even if the computer lives on.
epic adventure that is beginning The most obvious is memory
to rival Galahad's search Tor the
Super Media Manager. expansion cards, modules
Grail. combined RAM/disc interfaces
and so on. Just about everybody
which, If they aren't nearly as Involved in the QL business has
Managing Media unreliable as their critics claim, some sorf of memory add-on
are temperamental to say the available and — taking Darwin
As promised, my Super Media very least. to heart — a tot of them wouldn't
Manager from Digital Precision The Manager's most make It even in a healthy
arrived a couple ot weeks ago impressive feature is probably its market.
and looks to be just about ability to read and copy data This is not a criticism of the
everything that the company from non-QL discs and, in various products (although there
claims for It. The folks at Digital particular, from the IBM and IBM- are a lot of criticisms one could
have many virtues but compatible MS-DOS system, I make In some cases) but just a
understating things is not one of really haven't had a chance to recognition of economic reality.
them so when one of their explore the full range of But the market isn't all that
packages matches ail the possibilities opened up by this healthy and there's a lot of
superlatives (and the ones I've option but a couple of quick test excess competition in a few
played with do) you know that runs lived up to Digital's promise areas so if you're in the mood
you've got your hands on a without fault. BBC and CP/M for a bit of expansion, shop
winner. It also sells for £39.95 systems may also be read or around for a good deal
which — if not actually cheap — copied. I don't think I need lo because you will probably find
is commendably reasonable dwell on all the implications It. Sadly (from the buyer's point
considering what you're getting offered by this facility and the of view) this doesn't yet apply to
for the money and If you're benefits arising bul suffice it to software but — If the QL does go
feeling a bit flush you can save say that it gives the QL a the way of all flesh — the flme
a few bob by buying powerful boost and goes a long will certainly come.
Supercharge (£59.95) at the way towards bringing the QL into To close on a positive note.
same time and get Super Media the mainstream micro club. The Saga Systems is releasing a QL
Manager (I do wish Digital Manager will not be fully version of its remote control 2001
would dig up a different compatible with all QL disc keyboard for the Spectrum. It's
superlative and do style- interfaces (those which have not about time somebody gave us
conscious writers a good turn) been manufactured to include an attractive, alternate keyboard
for a tenner less. all the facilities of the QL's disc but (damn it) it doesn't match O
Super Media Manager comes operating ROM) and Digital my disc interface. If It
on either a single disc or four suggest that — If there are any accommodates yours without a O
mlcrodrives and is doubts — that would-be buyers hassle. I'd have a good look as
check up on their systems Saga's Spectrum keyboards are
accompanied by a well-
presented manual which is both beforehand. For what it's worth. very good. <3
71 ZX Computing Monthly • October 1986
SPECTRUM/QL
David Nowotnfk
LINK-UP method of operation, and the Transfer requests
communication standards are
There must be many Spectrum
examines the exactly the same. Networking
owners who have upgraded to
between groups of QLs or
the QL, then would like to
possibilities for network Spectrums alone is very
transfer BASIC programs from
straightforward, the manuals of
their old micro to the 68008
communications both computers carry examples.
machine. This usually meant
Networking In systems containing
totally re-typing the program.
between Spectrum and a mixture of the two micros Is not
However, If both the Spectrum
quite so simple, but applying a
few simple rules, It can be made (plus Interface 1) and QL are
Q I. available, then transfer of
to work reasonably well.
There can be many reasons programs via the network could
for wanting to link home be possible. Few transferred
^ n e of the major growth areas computers. In this article, we'll be programs will work without some
for the computer Industry Is examining just two; passing a modification, but at least a lot of
communications — linking one BASIC program from Spectrum to typing can be saved by a
computer with another This QL, and using the Spectrum to relatively simple electronic
involves the movement of drive an extra screen for the QL. transfer.
electronic information between With these examples the ground Looking at the manuals of the
computers, distances may be a rules for communication will be two micros, simple LOAD/SAVE
matter of a few centimetres, or established, allowing you to Instructions will transfer programs
half way round the world. Today, develop whichever between micros of the same
It is considered trivial for communication application you type. But such simplicity Is not
computer users in the UK to be have in mind. available to Spectrum-QL
'talking' to computers in Europe transfers. The QL saves and loads
and the USA, accessing business its SuperBASIC programs as ASCII
and scientific databases in a files; what you see when you list
matter of seconds. the program is exactly what you
One of the main problems In gel when the program Is saved
supporting this communications F i g . l . S i m p l e e x a m p l e of on mlcrodrive. With the
growth is the incompatibility listing a Spectrum program Spectrum, the way the program
between different computers All on t h e OL is arranged in memory is the
sorts of electronic 'black boxes' way It appears on tape, with line
are employed to allow two a) Spectrum listing numbers condensed to two
computers to communicate bytes, keywords tokenlsed, and
when they were never designed 100 R E M E x a m p l e of L I S T numbers within the program
to allow such a link. 110 REM always appearing In two forms.
For microcomputers, 120 FORMAT "n"{2 So, to transfer a program from
communication is normally quite 130 REM Spectrum to QL, a translation Is
140 REM Ready to send
simple. With the RS232 standard needed.
150 REM
adopted by most manufacturers, 160 OPEN M l!"n"!l
At first glance, the simplest
many microcomputers are able 170 INPUT *4;a*
method of transfer would appear
to talk to each other. Although 180 C L O S E » 4i PRINT a* to be the LIST command.
they are quite different micros, 190 REM Whenever It is used on the
the ZX Spectrum (with Interface 200 REM Now send Program Spectrum, to screen, printer, or
1) and QL are fitled with RS232 210 REM via the RS232 line, Ihis command
ports. Linking the two micros with appears to carry out all
</>
220 OPEN W 5;"n":1
a specially constructed lead, 230 LIST #5 translations necessary to convert

z
and setting equal baud rates, 240 CLOSE * 5 the tokenlsed version of BASIC
parity bits, etc, will allow data stored in the Spectrum to an
o and programs to be exchanged
between these micros. b) QL Listing
ASCII listing of a BASIC program.
But not so on the network, to
But the Spectrum (via Its demonstrate this, try the simple
100 REMark Example of LIST
Interface 1) and QL have example in flg.1. With the
another option for 110 1 program lines typed into both
o
120 NET 1
communication, which quite 130 > QL and Spectrum, and the
simply involves joining both network lead connecting both
z computers with the lead fitted
with two mini jack plugs
140
ISO
160
REMark ready to receive
i
OPEN #4,neto_2
computers, enter RUN on both
{the order, or precise timing
supplied by the manufacturer — 170 PRINT 5"XXX"; CHR*<13)! does not matter; the Spectrum
the network. ISO C L O S E #4 will not broadcast until the QL is
In both QL and Spectrum, the 190 « listening, and vice versa). Note
network was designed for 'local 200 REMark Now receive program that, on the Spectrum, "OPEN# '
area' connection of two or more 210 s and 'CLOSE# ' are Individual
O computers. While the specific 220 COPY neti 2 TO scr keywords, quite distinct from
BASIC commands which operate 'OPEN' and 'CLOSE', whereas
O the network have differences, the 'INPUT# ' has to be entered as

72 72 ZX Computing Monthly • October 1986


LLLU
'INPUT' followed by with a station number of 1. In cause extra control characters to
What you should see Is XXX' opening a network channel, the be inserted; In this example,
on fhe top of the Spectrum Spectrum Is not concerned at character code 6 for each
screen, and, after a pause of a the direction of communication. comma encountered, and
few seconds, something vaguely Not so with the QL. In line 160 of character code 13 at the end of
close to a listing of the Spectrum the QL listing, channel 4 is the print stream as default, as no
program on the QL screen. opened specifically for semi-colon has been added.
transmission (neto) to micro Spectrum lines 220 to 240
Station to Station number 2. 'neti' Is the device send the program listing down
name to be used on the QL for the network to station 1. The
receiving transmissions (as In simple COPY command (line
Line 120 in both listings In fig.1. line 220, 'netl_2' commands the 220. QL listing in fig.1.) takes
sets up the station number of the receipt of a transmission from whatever is presented on the
Spectrum (FORMAT "n'!2) and QL station 2). network and dumps it on the
(NET 1) as 2 and 1 respectively. The first communication screen. What you'll see are a
Network station numbers are between the two micros occurs continuous stream of characters.
used primarily when more than In line 160 In both listings. The The Spectrum LIST command has
two computers are linked into Spectrum receives a stream of translated the line numbers, but
the network, so that each micro bytes, and places them In the not the keywords. And the
can be Identified uniquely. Both string ,a$". Those bytes are 'XXX', Spectrum's end of line code is
micros have a default network followed by character code 13. not currently Interpreted by the
station number of one, and it is The latter is the end of line QL. so no new lines occur at the
possible when only two micros marker for the Spectrum. The end of BASIC lines. So, to use LIST
are in the network for them both corresponding end of line on the Spectrum requires further
to take the default value. But in character for the QL is character translation; Ihe listings in fig.2.
all the examples In this article, code 10. Forgetting fhat are routines to effect that
the Spectrum is assigned the Incompatibility can cause quite translation.
nurr ber 2, and QL 1. a few problems! Normally, the
In lines 160 to 180. the QL computer will add the end of Reservations
sends (and the spectrum line character to any PRINT
receives) a message to say that stream, unless specifically told The short Spectrum program in
both are ready. This isn't strictly not to by the PRINT statement. For fig.2. should be MERGEd with
necessary, as the broadcasting example, in line 160 of the QL any Spectrum program you wish
station always waits for the listing, the end ! prevents the QL to transfer, then the copy routine
receiver to listen, except In a end of line character being sent. initiated with the direct
general broadcast (to several In all network command RUN 9990'. The QL
receiver micros). But these communications between program in fig.2 works by
program lines do serve to show Spectrum and QL using the reserving space at fhe top of
you some of the rules of PRINT command, the semi-colon RAM (line 170) and creating an
communication. is the best spacer to be used. array of the keywords (lines
In the Spectrum listing, line Particularly in Spectrum to QL 200-250). The Spectrum is told to
160 opens channel 4 for network communications, use of commas start listing (lines 290-320), and
communication to the micro (eg. PRINT #4aS.b$. CHR$ 10) will the bytes received via the

Fig,2. Transfer « U p i c t r u n program t o OL u t l n q LIST


610 I
i) bpftrtru* I K t t n q 620 P R I N T - P l a c e a f o r m a t t e d c a r t r i d g e "
630 PRINT " i n a d v 2 _ , than p r e s s any k«y-\\
9990 R£M program copy r o u t i n e 640 x»- INKEY*<-JI
W | FORMAT * n " | I 6 3 0 D E L E T E mdv2_temp Das
9995 OPEN * 4 , " n - . l i INPUT »4|a*i CLOSE • 4 66U O P E N _ N E M « 4 ,mdv2~ tenp .hJt*
9996 IF * * - " s " lMfcN STOP 670 REPeat l o o p ?
99V7 OPEN • 3 , - n " , l l LIST »5» CLOSE • 3 6BO a»-""
9998 OO TO 9993 690 REPeat l o o p !
9999 STOP 700 7- PE£» la)
710 SELmct ON Z
b) Ot. L i s t i n g 72Q -32 T O 127i I " * * ' . CHR*<X>
730 -128 T O 143l l l M l k ' O '
10O REM„r I Import Spectrum H r o g r m i 740 >144 TO 164|
UO REMerk v l « t h e network system 7SO -165 2SS a*-a* I. • ( e.CHftl<l-79>*'>*
TO
120 t 760 tit-keyword*
110 REMark Int 11 «1 i *o 770 a*-a*tx* t l —164> t * « • * * ( 1 10 l e y _ l e n (1-144»)
140 I /SO -13i EXIT Ioop3
150 CLS iPRINT - I n i t i a l i s i n q - p l e a s e w a i t - 790 END SELmct
160 a- RESPR <0> BOO a-a*l
170 I f a> 221104 THEN a- REHf'R <«-2211H4> BIO END REPeat loop *
IOO NET I B2u a-a*1
190 * * » CHR* MSI B30 PRINT M|AF
200 p o s i t i o n a l RESTORE lOOO B40 PRINT a*
210 Din keyword* ( 9 1 , 1 0 ) , key I en (911 850 IF * - p o s i t i o n THEN EXIT loop?
220 FOR l • I TO 9| S60 END REPeat Ioop2
CO
Z
230 READ a t t keyword* <!>•*» B 7 0 CLOSE «4
240 k e y . t e n I I I " LEN (a*> IOOO D A T A RND ' INK E Y I PI ' , * FN '
2SO END FOR I lOIO DATA POINT , ' SCREEN* •,' ATTR ' , • AT
260 i
270 HEMark Transfer program from Spectrum
1020
1030
DATA
DATA
TAB •
LEN '
V A L * ' , ' CODE * , ' V A L
SIN , ' COS ' * T A N ' O
280 l 1040 DATA ASN ' ACS ATN * LN *
290 OPEN « 4 , n e t o 2 IOSO DATA EXP - INT ',' SOR * SON "
300 PRINT ••i|-g"j.-l 1060 DATA Abb * PEEK ', IN • 1 USR '

o
310 CLOSE »4 1070 DATA STR* ' CHRI NOT ' BIN
320 OPEN a s , net I _ 2 IOSO DATA OR AND " , •- ,
330 PRINT V" R e c e l v i n q t h e program H \" from t h e Spectrum' 1090 DATA <> LINE THEN TO '

z
340 REPn.it I oop 1 IlOO DATA STEP ', DEk FN ' . CAT FORMAT 1
330 IF EOF <«5> THEN EX I I loop I I I 10 DATA MOVE , ERASE ' , * O P E N M ,• CLOSE • '
360 >il- INKEVI (dS,0> 1120 DATA M E R G E ' ' VERIk V BEEP , CIRCLE '
370 POKE p o s i t i o n , CODE (K*> 1130 DATA INK PAPER , FLASH " , ' BRIGHT
3QO p o t l 11 on»pn»i 11 on* I 1140 DATA INVERSE OVER OUT , LPRIMT *

s
390 END REPeat l o o p ! I ISO DATA LLIST ' ,« STOP R E A D ' , ' DATA *
4GO CLOSE 1160 DATA R E S T O R E • , ' rrtu , ' BORDER •,• CONTINUE
410 PRINT Program t r a n s f e r complot I I 70 DATA Din , ' REM , - FOR ' , ' 0 0 TO '
420 OPEN « 4 , n e t o . 2 I I HO DATA OO SUEL ,• INPUT LOAD LIST
430 PRINT « 4 | " a ' l r * 1190 DATA
L I T PAUSE , NEXT POKE '
1200 DATA
440
4SO
600
CLOSE s4
i
Rtttari C r e a t e f i l e of BASIC l i n e s
1210
1220
DATA
DATA
PRINT
RANDOMIZE
, ' P L O T 1 , ' RUM * , ' S A V E *
IF * , " CLS ' DRAW O
CLEAR RETURN " , * COPY '
O
73 ZX Computing Monthly • October 1986
LLLU
F i g . 3. Create Spectrum Keywords as OL DATA statements 2B0 REliark t a b l e toad tn t h a t t a b l e , c r e a t i n g
290 REMark new SuporBASlC DATA statement*
at Spectrum listing 300 1 In»_no"lOOOl 11 »»•1
310 PRINT \" Found s t a r t of keyword»"\
IO FORMAT "fi-,2 320 REPeat loop2
20 REM Wait for a t a r t s i q n a l 330 a t " 1 t no not>* DATA "
30 OPEN • 4 , " n " , l 340 IF line.no-lOOO THEN a*-att," • RND
40 NPUT 44 t a t 350 REPeat Foop3
SO CLOSE • 4 360 b»-""
4.0 IF a» <> " s t a r t " THEN GO TO SO 370 REPeat loop4
70 REM now s t a r t t o ••rid the d a t a 3BO send.next
BO LET *-0 390 0PEN~e4, net 1
90 LET y- PEEK x 400 y*-INKEY*<*4,-t>
IOO OPEN • 5 , " n " . 1 410 CLOSE 44
110 PRINT »3l CHR» y| 420 IF CODE < y * > >128 THEN
120 CLOSE a 5 430 b*-b»t.CHRt (CODE (y»)-128)
130 LET K•X•1 440 EXIT loop4
140 IF K>16383 THEN STOP 4SO ELSE I b*"b*(iy*
ISO REM Walt for I n s t r u c t i o n 460 END IF
160 REM t o proceed 470 END REPeat loop4
170 OPEN • 4 , - n " , I 480 a*-a*t."' "(.btl."
1 BO INPUT e4|at 490 i t*m-1 t e « * 1
190 CLOSE • 4 500 IF 1 ten>3 THEN item-Oi EXIT loop3
200 IF a*-"q- THEN 00 TO 90 510 IF 1ln» no"1220 AND ltem-3 THEN EXIT 1 oop 3
210 STOP 520
530 END REPeat loop3
b> OL L i s t i n g 540 *»(1lne^no-1000)/10*1
550 l i n * f ( K ) > i « i 1in»,len(w>-LEN (a*)
too REliark Create * l i s t of Spectrum Keywords 56 O 1ine_no»line_no+10i PRINT a*
110 REMark Initialise 570 IF 1tne_no>1220 THEN EXIT loop2
120 NET 1 5 BO END REPeat loop2
130 DIM l i n e * (23. e»OJ , 1 I n P 1 en (23) 590 REMark I n s t r u c t Spectrum t o stop
140 .»>• CHR* (13)t a*-" b»-"RN"tCHR»(196) 600 OPEN « 4 , neto_2i PRINT » 4 | " a " i : M i CLOSE • 4
150 REMart Send s i g n a l t o s t a r t search 610 REMark now c r e a t e an ASCII f i l e on mdv2
160 OPEN »4, neto_2l PRINT « 4 | " s t a r t " >a»l t CLOSE e4 620 OPEN NEW * 5 , mdv2 d a t a bas
170 REMark Now c o l l e c t b y t e s 630 FOR l - l TO 23
1B0 PRINT " Searching Spectrum ROM" 640 a t ' l l n e t l l l i * « - a t ( l TO 1 l n e _ l e n ( 1 > )
190 REPeat loopl 650 PRINT BSlat
200 OPEN »4, n e t i _ 2 660 END FOR I
210 y»- INKEVf(«4,-l) 670 CLOSE #5
220 CLOSE *4 680 STOP
230 af-atS-y»i a»-a*<2 TO 4) 690 DEFine PROCeduro send next
240 IF a*«b* THEN EXIT loopl 70© OPEN » 4 , neto_2
250 send^next 710 PRINT * 4 | " g " » i » |
260 END REPeat l o o p l 720 CLOSE *4
270 REMark Now found the s t a r t of the command 730 END DEFine send.next

network ore stored sequentially Spectrum ROM sequentially, with to occur when a large number
in the reserved area of RAM no gaps between each keyword. of bytes are transferred at once.
(lines 340-390). Translation of the The end of a keyword is marked In LISTing the program to Its
BASIC keywords takes place via by the value 128 being added network port, the Spectrum
the routines of 600 to 870; the to the code value of the last collects 256 bytes in a buffer first;
program lines are displayed on character, and this is spotted in only when the buffer is full Is the
the screen, and are saved onto line 420. SuperBASIC lines are data sent down the line. Transfer
microdrive 2 under the file name built up in the string a$. with four of this cascade of data is
temp_bas'. keywords per line (line 500). satisfactory between two
Each line is stored in the array Spectrums, or two QLs, but.
The data lines (1000 onwards) line$ and its length recorded in apparently not between
could be typed in as listed, Spectrum and QL.
although all these keywords exist array line len (line 550). Once
in the Spectrum ROM, so it is all keywords have been Waiting for the buffer to fill
possible to use the network collected, the 23 DATA lines are before sending data also occurs
again, to transfer these keywords written to a file 'data__bas' on when using PRINT to transmit
across, then create the DATA microdrive 2 (lines 610 to 670). information. So. you won't always
lines automatically. This is The command 'LOAD get an immediate response from
achieved using the program in mdv2. data _.bas' will load the receiving computer sending
Fig.3. Of course, by the time you these SuperBASIC lines, to which data down the network system.
have typed in all the program the others in fig.2. can be However, if the transmitter
lines in fig.3., you could have added. network channel is closed, then
typed in the DATA lines two or And now, back to fig.2., and the buffer Is emptied, and any
three times over! But Fig.3. does the program transfer. As the QL data in it transmitted, no matter
contain some more networking doesn't have block graphics how full (or empty) the buffer
principles, and shows you how to characters, or accessible user happens to be. So to send small
create SuperBASIC lines defined graphics, the transferred packets of data (which does
automatically. codes for these (128 to 164) are seem to be reliable on
oo The Spectrum program in translated as i V for block Spectrum/QL network transfers) is
Z Fig.3. causes the Spectrum to
become the 'slave' of the QL,
graphics, and '( letter}* for
udas, where 'letter' corresponds
possible by OPENing and
CLOSEing channels immediately
O obeying instructions passed to the letter defining the udg in
question. Otherwise, the
before and after PRINTlng data
down the network. The routine to the channel. And Ihis is the
PEEKs sequentially bytes from the translation should correspond principle adopted by the
Spectrum ROM until told to stop closely with the program as programs in fig.4.. which reliably
LISTed on the Spectrum. transfers spectrum programs to
o by the QL. In the meantime, the
QL is searching for the start of the QL.
the keyword table in the Error terror The Spectrum program in fig.4
Spectrum ROM (lines 190-260). measures the values of the
This search is necessary as the One thing you may notice as PROG and VARS system variables
keyword table is stored in a the transferred program is listed (line 9981-9982), their difference
2 different place in different on the QL screen is that the being the length of the BASIC
versions of the Spectrum ROM. number of transfer errors is quite program. This information is
Once the first keyword (RND) is high. Unfortunately, networking passed to the QL (line 9984). The
between Spectrum and QL can Spectrum then passes the BASIC
O found, then the other 90
keywords are read in. The be prone to an unacceptably program to the QL. byte by byte,
O keywords are stored in the high number of errors. This seems until instructed to stop (lines 9991

74 ZX Computing Monthly • October 1986


to 9994). Before PEEKing each Variable numbers Protessional micros such as the
m
byte. PROG is measured again IBM PC have this capability. If.
(line 9986), as the BASIC program for example, you are
can move about in RAM while Within the listings in fig.4. is an constructing a complex diagram
the network is in operation. example of how numeric on the QL with some compuler
In typing In the QL program in variables can be transferred aided design package, and
fig.4„ remember to add the DATA from Spectrum to QL. In line 9983 want a 'HELP' message, you don't
lines (1000-1220) in fig.2„ to of the Spectrum program, the really want much of your
permit the translation of keyword variable 'k' takes the length (in diagram to be obscured by the
codes. This QL program works in bytes) of the BASIC program in heip window. Far better to have
much the same way as the the Spectrum's memory. This is those help messages appear on
program in flg.2„ except that transmitted to the QL in line 9984 another screen.
more translation is necessary; to by converting to string (STRS) and
PRINTing the string. At the QL The example in tig.5. is a
extract the line number (line 690) simple way of achieving this. The
and to deal with the way end. the number is received as
a string and converted back to QL sends out instructions via the
numbers are stored in the network; pressing one of the
Spectrum (line 810). Line 700 a numeric variable (line 300).
The corresponding sequence for function keys produces a help
prevents the Spectrum transfer screen on the Spectrum, leaving
routine from appearing on the the transfer from QL to Spectrum
would be: the QL screen untouched. Each
'temp „bas" file on microdrlve 2; help screen has a number of
delete tine 700 If you want to pages; the total tor each Is listed
transfer this routine. QL: in the DATA line 1010 of the
As before, MERGE the 200 num$=num: OPEN 5, Spectrum listing. For example,
Spectrum program lines of neto_2 help screen 2 (obtained by
fig.4a. with the program you 210 PRINT 5;num$; CHR$ pressing 'F2' on the QL) has three
wish to transfer, then type in 'RUN pages.
9980', and RUN the QL program. 220 CLOSE 5 Switching from one page to
Transfer is much slower than the another is effected by pressing
LIST method used in fig.2„ but Spectrum: the appropriate function key a
errors are rare. In preparation ot 200 OPEN 5; "n ";1 second, and third time. The
this article, most of the Spectrum 210 INPUT z$: z= VAL 2$ example help pages carry some
programs were transferred to the 220 CLOSE 5 of the important principles
QL using this routine, then In this way. numbers can be highlighted In this article Line
Imported Into Quill, to produce transferred between the two 1230 of the Spectrum listing
what you seen in the figures. computers. This might have some directs the program to the
Once the file 'temp_bas' has application if you had a lot of appropriate set of print
been created. It can be loaded number crunching to do; one messages for any one help
Into the QL RAM, and treated computer could get on with that page. You could add/subtract
exactly as a QL program. Where while the other was performing your own set of messages for
the QL finds a mistake In syntax some other tasks. your own application.
(where there are differences The final example of a The Spectrum is operating as
between Spectrum and QL). the networking application is in the a 'slave' to the QL; apart from
QL adds the word 'Mistake' just use of the Spectrum to provide a typing in (or ioading) the help
after the line number, to help second screen for the QL. print statements and network
you spot at least some of the Despite the QL window facility. routines in fig.Sa., there is no
changes which are necessary to It's sometimes much more need to touch the Spectrum
get the program to run correctly. convenient to have two screens. keyboard; the Spectrum receives

4. A l t e r n a t i v e (tlr,n but sure) t r a n s f e r of Spectrum 310 CLOSE e S


p r o g r a m * t o OL 320 PRINT R e c e i v i n g the program-\" from the Spectrum"
330 FOR 1 * 1 TO n u a
al S p e c t r u m listing 340 OPEN e 3 , n e t !
330 IN»Ev*<es,-l)
9V80 FORMAT " n " | 2 360 POKE p o s i t i o n , CODE ( « » )
9981 L E T M- P E E ) 2 3 6 3 3 * 2 3 6 * P E E K 2 3 6 3 6 370 p o s i t 1 o n * p o s i 1 1 on * I
9982 L E T y - PEE*. 2 3 6 2 7 * 2 5 6 * P E E K 2 3 6 2 8 380 CLOSE
99B3 LET k"y-Kt LET r-O 390 OPEN S 4 , n e t o _ 2
9904 OPEN * 3 ( " n " | 1 1 P R I N I » 3 | S T R S H CHR* ION CLOSE » r . 400 I F K n u m THEN P R I N T M 4 | " g " j C H R * t 1 3 ) |
V9B3 •PEN e 3 | " n " t 1 410 I F l * n u a THEN P R I N T » 4 | " s " | C H R ( t | 3 > l
9986 L E T x - PEEK 23633*236* PEEK 23636 420 CLOSE e4
9987 L E T y - PEEK 2 3 6 2 7 + 2 3 6 * PEEK 2362B 430 END FOR t
9986 L E T z $ - CHR* ( P E E * <x»r>> 440 P R I N T \\" T r a n s f e r conplete'W
9989 PRINT e3|f«i 4SO 1
9990 L E T r - r + 11 CLOSE N 3 60O R E M a r i C r e a t e f i l e o f KA81C l i n e s
9991 OPEN * 4 | " n " | 1 610 •
9992 INPUT N4|al 620 PRINT " Place * formatted c a r t r i d q e "
9993 CLOSE • 4 630 P R I N T * i n i » d v 2 _ , t h e n p r e s s any k e y " \ \
9994 I F a»-"m" TfCN S I OP 640 K»- IMKEYtt-l)
9993 6 0 TO 9 9 B 3 6S0
660
D E L E T E mdv2_t**p_Dae
OPEN,.NEW » 4 , » d v r _ T b a s CO
b> OL Listing 670
6BO
REPeat loop?
R E r t a r k l i n e number first Z
O
100 REMark I m p o r t S p e c t r u m P r o g r a m s 690 a * » 2 3 6 * P E E f (a)•PEEK ( a * l l i a-**4
110 REMark v i a t h e n e t w o r k s y s t e m 700 I F a * - " 9 9 B O " T H E N E X I T 1oop2
120 l 710 REPeat loop 3
130 REMark Initialise 720 PEEr (a)
140 i 730 S E L e c t ON :
ISO CLS I P R I N T " I n i t i a l i s i n g - p l e a s * M I L T • 740 • 3 2 TO 1271 a * • a * t. C H R ( ( : »
160 a* R E S P R ( 0 ) 730 • 1 2 9 TO 1 4 3 l t K l N ' O "
170 I F a > 2 2 1 184 T H E N a - R E S P R < e - 2 Z H B 4 > 76u • 1 4 4 TO 1641 a t * a t t > ( t C H R * (s - 7 9 ) (•' ) *
180 NET 1 770 - 1 6 3 TO 2 3 3
190 I * • CHR*<131 780 K * * l » y H O r d t ( L - 1 6 4 ) | M * « K * < 1 TO ey_len ((-164)1
300 p o s i t i o n ' s ! RESTORE 1000 790 i l M l h i t
210 DIM h t Y H o r d l ( 9 1 . 1 0 ) . k e y . 1 en ( 9 1 ) BOO • I I I EXIT loop:
220 FOR 1 « 1 TO 9 1 810 •REMAINDER l a " * * 3 3
230 READ a l l k e y w o r d * ti>-«» 820 END S E L e c t
240
230
key t e n ( | ) « L E N ( a * )
EN0 FOR 1
830
B4U
<•!• 1
END R E F e a t l o o p ;
5
260
270
1
REMark T r a n s f e r p r o g r a m f r o m S p e c t r u m
aso
860
P R I N T S 4 i a*
P R I N T a* 5
280
290
I
OPEN « S , n e t I _ 2
870
8SO
a - a * J l I F a p p o s i t i o n T H E N E X I T loop-'
END R E P e a t l o o p ? O
300 I N P u T e 3 1 n u t •I n u c > n u * * 890 CLOSE e4
O

ZX Computing Monthly • October 1986 75


all its instructions from the Ql. lead, we've seen here that it Isn't in this respect, and we'll be
While the network can all that easy to transfer data and examining this method of QL to
connect QL and Spectrum very programs reliably and quickly. Spectrum communication within
easily with the manufacturer's The RS232 ports are much better the next few months.

F i g , 3 . E x i * D l > of t h « u s e of t h e S n x t r u m t o p r o v i d e a HI t h s and t h e channel number"


' • l a v * ' i e r » t n g i v i n g h e l p i t n » g « t l o r t h t OL 329o R E T U R N

<) Bpectrum listing


4 0 0 0 REM H e l p 3| page 1
10cx> FORMAI " n " 12 4 0 1 0 P R I N T "CHR* 13 i s t h e end o l l i n e c h a r a c t e r on t h e
lOICi DATA 2 , 3 , 1 , 1 , 1 Spectrum."
1O20 DIM a ( 3 ) 4090 R E T U R N
1030 RESTORE 3 0 0 0 R E H H e l p 4| page 1
104O FOR 1 - 1 TO 3 3 0 1 0 P R I N T "CHR* 10 i s t h e end o l l i n e c h a r a c t e r nn t h e
1060 READ a l l 1 OL. "
107o NEXT 1 3090 RETURN
IOBO L E T page-0 6 0 0 0 REM H e l p 3| page 1
1090 L E T h e l p * 0 6 0 1 0 P R I N T "Numbers C a n be t r a n s f e r r e d v i a t h e network by
1lOO OPEN • 4 | " n " » 1 converting to strings."
1110 INPUT « 4 | : • 6 0 2 0 P R I N T -On t h e S p e c t r u m VAL c o n v e r t s t h e s t r l n g b a d t o a
1120 CLOSE • 4 number. "
1 1 3 0 L E T z - CODE • 1 6090 RETURN
1140 I F i < | Oft * > 3 THEN OO TO MOO
M 5 0 I F 2 <> h e l p THEN GO TO 1200
1160 L E T page-page*! b) OL Listing
1170 I F page-a<X> THEN L E T page-l
1 ISO GO TO 1220 10 REHark Help procedure
1200 L E T h e l p - f • L E T p * g e - l 20 REMarl p r o d u c i n g h e l p pages
1220 CLS i P R I N T AT 2 , I O | ' H e l p " i h e l p t AT
4 , l O | " P a g e - | p « g i ' l 30 REMari on t h e S p e c t r u m s c r u e n
AT a , 0 ( 40 t
1230 GO SUB lOOO* M * h e l p ) • lOO* fpage-1) 3 0 REPeat loop
1240 PAUSE 3 0 0 l 0 0 TO 1100 60 help
2 0 0 0 REM Help || page 1 70 PAUSE 200
2 0 1 0 P R I N T "Remember t o send o n l y s m a l l chuncks o l data 8 0 END R E P e a t loop
via the network." 90 t
2090 RETURN lOOO D E F t n e PROCedure h e l p
2lOO REM Help I t page 2 lOlO LOCal 1 , 1
1020 I-KEVROM(O)
possible," 1030 I F 1 - 0 OR £ >32 OR : - 4 THEN R E T u r n
21VO R E T U R N 1040 S E L e C t ON z
3000 REM H e l p 2t page 1 1030 • l l a-4
3010 P R I N T " N E T I s t h e command t o a s s l Q n s t a t i o n on t h e 1060 •2i a-1
OL. " 1070 - B l a-1'
3 0 2 0 P R I N T 1 P R I N T "FORMAT i s used on t h e S p e c t r u m " lOBO -16ia«3
3090 R E T U R N 1090 •32la-3
3 1 0 0 PEN H e l p 21 page 2 109 J • REMAINDER I a - 0
3 M O P R I N T "OPEN * and Ct.OSE • a r e q u i t e dillerent 1092 END S E L e c t
keyword* t o OPEN and CLOSE on t h e SPECTRUM. *»
1093 I F a » 0 THEN RE T u r n
31Vu R E T U R N MOO NET 1
3200 REM Help 2 t page 3 1 1 10 OPEN S 4 , n e t o . 2
3 2 t o P R I N T - I N P U T . P R I N T , and INkEV* a r e t h e t r a n s m i s s i o n 1130 P R I N T »4| CHRI l a ) | L H R * M 3 > 1
and r e c e i v e r " 1140 CLOSE 44
3 2 2 0 P R I N T "commands on b o t h DLand S p e c t r u m . They a r e used 1200 END D E F i n e h e l p

QUALITAS
dot matrix printers which have crashed instead of printing when
Epson compatible quad, density a couple of the fonts were
graphics and are capaable of loaded using LOAD " " CODE, but
one-third or one-half dot line all was well using LOAD " " CODE
feeds. There are two 10 cpi fonts. 50944.
Qualitas Pica (traditional), and Mercury Print speed Is slowed,
Seven Stars (modern), two 12 cpi. Elite because the head makes two
Spectrum 48K/128K & (traditional). Piazza (italic), and a passes across each line, but the
proportional font, Clarion, which quality is excellent. Even my
Tasword 2. gives a typset appearance. rather tired old ribbon produced
£7.95 The program, with your clear typscript worthy of a daisy-
(Tasword 3 version. chosen main font, is easily wheel, and the equal space
merged with a version of Justification gives the most
£8.95) Tasword alrady customized for professional results. If you need
your printer and interface. The to align columns, character
"his is a handy utility for Tasword 'help' pages are lost, text spaces are available which will
users, giving five Near letter capacity reduced to 294 pages, not be proportionally justified.
Quality type fonts — all with and the only graphics printer There is also a font editor,
equal space justification — on controls available are underline enabling characters to be
and emphasized. To access the modified, perhaps by adding
Right: Screen dump ot redefined other fonts, you exit to BASIC and accents, or defining fractions
character
Far right: Font editor showing letter with toad the code from tape or instead of unwanted characters
accent added microdrive. The program For the really adventurous, a
blank character set can be
generated to allow you to
design your own complete
typeface. Screen dumps are
available to help keep a record
of your designs, or to produce
paper copies of the blank grid
on which to plan our characters.
Your modified or new fonts can
be saved to tape or microdrive.
Qualitas is a useful program,
making professional quality
printouts available to those of us
who like the versatility of the dot
matrix, but regret its sub-
standard appearance.
C h a r a c t e r C h a r a c t e r
U i d t h ; 24 W i d t h ; 2 4 Carol Brooksbank

76 ZX Computing Monthly • October 1986


WHATEVER YOUR HOBBY..

OOOBERaBS

J J rnrr FOUR SUPERB


R I \ L T : PRINTS BY O'NEILL
DOWNING: THE FACE OF WAR
OCTOBER 986 £10

YOU'LL CLICK WITH P H O T O G R A P H Y


Britain's newest, brightest and most exciting
photographic magazine is on sale at your
newsagent now.
compatible drives. These may
be any size from three Inch to
eight Inch, either single or
double sided. Although eight

j A C K j
Inch drives are limited to single
density, all other drives may be
single, double or quad density.
AERCO has drives available or
you may supply your own. If you
have drives from the T/S 1000 (or
almost any Shugart compatible
drives) they will work with the
FD-68 Interface You may use any
combination of drives you want
since AERCO will custom burn
the EPROM which contains the

•POND:
DOS for you. (AERCO does not
charge to customize the original
EPROM shipped with the
Interlace).
The interface has an 8K RAM
which holds the Disc Operating
System (DOS) and requires no
modification to the computer.
RGB output is also available on
the interface so that you may
use an RGB color monitor One
U.S. Sinclair users are enough standards required for of the exciting features of the T/S
data storage Computer grade 2068 is the ability to bank switch
better equipped with cassettes were necessary for additional RAM memory. The
security of your data, and they FD-68 Interface Includes an
disc systems than their could be costly. additional 64K of RAM, bringing
your T/S 2068 up to a total of 112K
U.K. counterparts. Mark Gone floppy RAM. This RAM Is located in the
Dock Bank and may be
Fendrlck looks at The rest of the home computer accessed In 8K chunks. The on-
field had gone the route of board RAM may be expanded
what's available. floppy discs for moss storage. It to 256K if you require.
wasn't long before a disc Once set up, your first step will
Efcack in the days of the ZX-80 interface was available for the be to run the System Boot Disc
(and later the ZX-81) the fact that ZX-81. It was developed by Ihe The system will automatically
we were able to save our Acme Electric Robot Company seek out a program entitled
programs and data onto a (AERCO) of Austin Texas. AERCO BOOT. BAS on disc A and
standard cassette recorder was was to become a name familiar execute that program. With the
nothing short of fantastic True, to just about every American System Boot Disc in place you
they were slow and error prone, Sinclair user before too long. To will get the welcome screen
but they were Inexpensive (most this date, the AERCO name has containing the AERCO logo and
families owned one already so more or less become a standard three menu selections; A — for
another purchase was In Sinclair Interfaces in the U.S. on Amazing Demonstration
unnecessary) and the cassette ZX-81 owners had mostly which will show off the system; D
tapes were readily available bought that computer because — which will load the print
Since most of us bought these of its low price, and for the most driver(s) (both serial and parallel
computers because of their low part did not spend the money are Included) and terminal
price, this suited us fine. required for the Interlace, disc emulator codes; I — for
Often though, loading and drive, power supply and case. operating Instructions. Pressing
saving programs was a ma|or Not many ZX-81s were being any other key will show the
chore. First obstacle was the very used for business purposes directory of the disc contents.
slow cassette interface. To load (although I did use mine to keep
or save a 16K program (data of my business records as well as I.D.

< course was included with the for many other purposes) and
o program and not separately)
took them about 11 or 12
minutes. If you happened to
did not justify this expenditure.
When the T/S 2068 made Its
appearance, it was with an
The directory will show a disc I.D.
number, title and memory
remaining, followed by a listing
have a 64K memory expansion, improved cassette interface — of all files on that disc and the
you would have to expect to faster and less dependent on amount of memory remaining.
wait as long as twenty-five volume and tone settings. But it You may have a total of 31
minutes for your program to was the promise of microdrlves entries on any directory even
5 that created the most
< load. Sometimes after waiting for
this to be accomplished, you excitement. They never
though there may be space left
on a disc Any attempt to enter a
woulci be greeted by some form appeared, but it was AERCO to 32nd file will be greeted with a
of system crash, indicating a the rescue once again with their "directory full" message. To
loading error. Making multiple interfaces for the T/S 2068. Most access a program on the listing,
saves was hardly the answer as T/S 2068 owners would not be it must be spelled exactly as It
the time involved was excessive. satisfied with using the T/S 2040 appears, although upper ond
The success of a load was very printer (and the ZX printer would lower case may be ignored. You
< dependent on the volume and not operate on the T/S 2068) and can view the directory at any

d
tone set on your cassette player. turned to AERCO Centronics and time by issuing the command,
Often a slight mlsadjustment RS232C Interfaces. CAT "",. Viewing the directory
would cause a looding error. In does not disturb the system
z
The system for the T/S 2068 Is
addition, it turned out that often, called the FD-68 Floppy Disc memory and you may return to
standard cassette tapes were not Interface. It is designed to what you were doing prior to
CO manufactured to exacting control up to four Shugart calling up the directory.

78 ZX Computing Monthly • October 1986


The AERCO DOS makes use of standard Timex rules (see the many T/S owners have Is the lack
many of the Sinclair keywords new Timex technical manual of quality software in the
which were Included in the T/S available from the Time Designs numbers available for other
2068 for future use, but which Magazine Company; 29722 Hult machines. It Is almost
were never implemented. In Road; Colton, OR 97017; U.S.A.; unimaginable for a U.S. Sinclair
order to use a blank disc, you (503) (24-2658) for operating an owner to walk into his
will first have to format it by AROS (Application ROM neighborhood computer store
using the keyword FORMAT. Orientated Software). The ana be able to buy software off
FORMAT is accessed on the T/S difference is that you will be the shelf. Not only that, but
2068 by entering extended running it in RAM Instead of being able to select the "big
mode and then pressing symbol ROM. name" software about which you
shift — zero. (This same .BAS is the standard save/load have been reading in the
procedure can be used to of a BASIC program along with computer magazines? A fantasy?
completely erase a disc as well). its data. By adding the number Not any more thanks to AERCO.
This will record track and sector of the line number to autostart Not long after the T/S 2068.
headers on your disc. from, you have the equivalent of AERCO's ads started announcing
Depending on what has been SAVE progname LINE nn. the upcoming release ol CP/M
programmed Into the EPROM .BIN is used to save/load for the new computer. Before IBM
these can be the same or binary machine code data. As made its appearance on the
different for each drive with the SAVE CODE command, personal computer scene CP/M
connected. If there is data you need to specify both a (Control Program for
already recorded on the disc starting address and the length Microcomputers) was fast on its
you are attempting to format, of the Tile in order to save the way to becoming the industry
you will receive the following file. No parameters are required standard. Many of the
message: DISC A HAS DATA! OK to reload in the same memory computers which appeared at
TO ERASE? Y/N, If you choose any location, but you can reload to that time had CP/M as their
key other than "Y" the format will any other location by simply operating system. Many classic
be cancelled. If you try to format specifying the address. software packages, such as
a disc which has the write .BUT would be used for an Wordstar, were released In the
protect opening covered, you assembly language program CP/M format and could run on
will be told: DISC A WRITE written at 3410H (or D410H In any CP/M computer. A great
PROTECTED. Spectrum mode). If Is the cold deal of public domain software
The CAT keyword (extended boot loader In CP/M and other was, and is, available in this
mode - symbol shift/9) serves non-BASIC environments. format.
double duty in this DOS. First it is .SCR would be used lo Bui that was in 1984, and after
used to list the directory of a save/load a screen. When the a while, when the T/S CP/M did
disc; CAT will show the screen is saved, it will not appear it was all but
directory of the last drive used. automatically include the forgotten. But not by the folks at
To catalog a different drive (such second display file If it is active. AERCO. They were continuing
as drive "B" In this example) you Loading a file with the .SCR with the necessary licensing
enter CAT "B:" f and that drive extension will return the image negotiations as well as the
becomes the default drive If you just as it appeared when saved. actual development of Ihe OS.
replace the drive designation •VAR is an extension which Finally, not long before Ihe
with the file name. It serves the allows you to save/load all of the Timex/Sinclair Computerfest In
same function as fhe LOAD BASIC variables. It does not Cincinnati, RP/M (Resident
keyword. A drive designation affect a program and can be Program Module) was released.
may also be placed in Ihis used to manipulate the It was given a showing at the
command if accessing assorted variables even without a Computerfest and was greeted
drives is necessary. As in program present. with great enthusiasm and
cassette loads and saves, a There are three extensions Interest. RP/M is functionally
program which is saved as an which have not yet been identical to CP/M version 2.2 and
auto-run program will execute implemented in the current software that will run under CP/M
upon loading. version. They are .CHR 2.2 will run under RP/M. look for
The equivalent DOS (character data), .DAT (numeric an In depth look at RP/M soon
command lo save a program Is data) and ,LRO (runs in the dock here In ZX Computing Monthly.
MOVE (extended mode — bank starting at 0). AERCO has been responsive
symbol shift/6). A program can A program named BOOT.BAS to the Timex/Slnclair user since
be made to auto-run by placing will be aufobooted by the FD-68 the day they first started
the line number after the DOS. When powered up, Ihe supporting the line. Although
comma; MOVE "name, ext".1. In system searches for a program their products are well designed
this example, execution would with that name, and It found will and come with excellent <
start with line one of the automatically load It. This documentafion, there is always O
program when loaded using the program can either be a BASIC that stray question or problem
CAT command. Other program, or a BASIC program that pops up from time to time.
parameters are necessary when which loads a machine code Help, in all forms, is only a
saving other types of files, which program. The AERCO FD-68 telephone call away. I often
we will examine In just a bit. system comes with a very clear hear complaints about lack of 5
To remove a file from the and complete 26 page responsiveness from many <
directory, you use the Sinclair instruction manual, complete companies claiming to support
BASIC keyword. ERASE (extended with instructions, information the end user, but only a few
mode — symbol shlft/7). This will about disc systems in general companies elicit Ihe positive
remove the file and Increase the and many pages of diagrams feedback I have always
memory available showing on and schematics. Even those received regarding Jerry and Till
the directory. Files must be highly critical of fhe state of Chamkls ol AERCO. For more
saved with a three character documentation should be information write to AERCO (Box
extension. The extension you use pleased with this guide. 18093; Austin, TX 78760; U.S.A.;
Is dependent on the type of file (512) (451-5874). (British Spectrum
you are saving. owners can contact AERCO as
Software O
z
.ARO is used to save or load well as they make their systems
memory Into the Dock Bank, Spectrum compatible as well).
starting at address 8000H. This But the AERCO story does not Tell them you heard about it
area is governed by the stop there. One of the few regrets here.

79 ZX Computing Monthly • October 1986


YOURPROBABLY
U O N D E R X N G UHY
'M DRESSED

JELL. I T ' S TO
P R O M O T E MY N E U
P I C T U R E O F MY
RUOURITE POP
GROUP,SO HERE
T*HFY R R F * . «

80
GO
£

<
O

5
CO
<

ZX Computing Monthly • October 1986


More tips for the
As given it leaves the print
faithful old '81 from Ray position at the space
FIG 1.
immediately following the last
Elder. character printed. If you move
step 5 to between steps 2 and 3
F=irst things first, a quick then the print position will be
correction to last month's code. placed at the beginning of the
Yours truly must have been next line. 1 REX ... ALL YOUR
suffering from a surfeit of So far so good. It's easy to DOTS
Spectrumese as I wrote the call it from BASIC by using PRINT 10 LET
code. I put the NEWLINE AT y.x; first, but setting the x and AS="21*«7EFE76C8D72318F6
character as 13, that of the y position from machine code M
Spectrum ENTER, instead of the needs a little program itself. One
ZX81's 118. Of course this means such is as follows, all it does is 100 FOR 1=17500 TO 17510
that It wouldn't work and, though set register H to the x or column 101 REM SET ABOVE ADDRESS TO
most of you I'm sure put it to position and L to the y pos or SUIT YOURSELF
rights, some of our less line number and store It In the 110 POKE I,16*C0DE AS+CODE AS <2
experienced readers may be vars 16441.
stuck. The remedy is simple. In Mnemonics: LD H^col : LD >-476
Replace both codes OD in the L.llne : LD (16441),HL 120 LET Ai=At<3 TO )
hex string (AS) with 76 and all Or in HEX, 26002E15225764 130 NEXT I
should be OK. Sorryl And then call FIG 1

To business Text storage


This month I am giving some While this is fine for printing text FIG 2.
code to print out the characters entered from our input routine it
entered by last month's input can also be used to print longer
routine and then to develop an previously stored texl for
all purpose text storage routine instructions, messages, adventure
that can be used with it. games etc and so I offer FIG 2 10 DIM S$(500)
A quick word for relative as a means of storing larger text 20 PRIHT AT 21,0;"ADDRESS TO S
beginners. You will need a line 1 easily. TORE TEXT"
REM.. .with as many dots as you To use it decide where In your
will have characters in all your REM you wish to store it and 30 IHPUT A
text, PLUS 30 for the machine enter that address at the start. 40 LET H=1
code and It is best not Several sets of text can be stored 50 C L S
attempted unless you have a immediately after each other 60 PRIHT AT 0,10;"TEXT EHTRY P
rudimentary grasp of machine and the start addresses are R0GRAH"
code programming at least. So given at each stage. Make
there! careful note of these addresses 70 PRIHT AT 21,0;"EHTER TEXT I
But seriously, the code to print for later use in loading the HL TEM ";H
a stored set of characters is registers when you wlsn to use 80 IHPUT T$
easy: them. 90 PRIHT AT 2,0;TS
1. Load register pair HL with the There are many variations 100 PRIHT AT 20,0;"AT ADDRESS «
start address where the text which we could use, for instance
by including the code ;A
resides.
2. PEEK It into register A. 21000D097EFE76C8D72318F8 at 110 PRIHT AT 21,0;"IS THIS CORR
3. Compare it with 118, the the start of each text item all ECT Y or H>"
newllne character (!!!!!). that would be required to print it 120 IHPUT A*
4. If it is 118 end and return from would be a simple CALL to its
address, but this Is merely a 130 IF A$< >"Y" THEN GOTO 50
the routine.
suggestion for advanced users 140 FOR I=A TO A+LEH At
5. Print It at the next character
position. to play with. 150 POKE I,CODE T$(I+1-A>
6. Increment the HL address by 160 NEXT I
one And s o . . . 170 POKE 1,118
7. Go and do it all again by 180 LET A=I+1
jumping to step 2. Once again we come to the
And Ihe code is given in FIG end of our ZX81 section. I would 190 PRIHT AT 21,0;"MORE TEXT EN
1 ready for loading into your like to make my customary plea TRIES "
REM at whatever address you for routines or even short ZX81 200 IHPUT A$ 0
wish. Replace the " with the
hex address where you stored
programs or suggestions for
further developments to our REM
210 IF A$="Y" THEH GOTO 50
220 STOP
z
the code input from last month's which you would like.
routine, Bye... 1
<
DC
o
r o
DC
Q .

0 0

81 ZX Computing Monthly • October 1986


uiu

A familiar adventure role of Kyle (the crown prince) knowing Just when to use which
and to lead him and his character is part of the skill of
tate given the icon followers across the the game, Merel and Taina
Shadowlands to confront might be the specialists of the
driver treatment by the Nemesar and regain the team, but if you use them too
Mindstone. often you'll drain their abilities
Edge. Kyle's three followers are and lind yourself lumbered just
Merel, Taina, and Quin, and like when you need them most.)
Kyle they all have their own It's a bit tricky to describe
Mindstone Strength and Psyche scores Mindstone as It incorporates
The Edge which determine how succestul elements from games as diverse
they are likely to be In physical as Shadowfire, Tir Na Nog, and
£8.95 or magical combat. Each of the even a bit of Lords ot Midnight,
tour characters can carry four but basically the game is a
• t's the same old story, objects and a single spell, so graphic adventure with some
handsome young prince born there is on element of animation, icons, and a few
first in line to the throne and judgement involved in deciding other bells and whistles added
doted over by his parents whilst how to allocate the ilems that on. That's not intended to sound
the scraggy younger brother you find on your journey. too derogatory, since the whole
gets all jealous and twisted and Merel is physically strong but thing is very weli presented and
runs off with the magical psychically weak, whilst Taina is quite absorbing and doesn't
heirloom that gives the king his the reverse. Quin and Kyle are make any claims to be anything
powers and keeps everything about average in both areas, so other than a graphic adventure,
jolly in the kingdom. obviously you use Merel and but perhaps I was expecting
That's the story behind the Taina as specialists in their something as innovative as
new icon driven, animated respective areas while Kyle and Fairlight, The Edge's last trip into
graphic adventure from The Quin are leally just back-up men arcade adventuring.
Edge, called Mindstone. The as far as combat is concerned The top third of the screen is
Mindstone is the magical object (though when their strength used to show a graphical
that has been stolen by the evil scores are at their peak they are representation of the current
prince Nemesar, and it is your both capable of knocking out location, along with any other
task in the game to take on the the odd wolf or crocodile. And characters, gateways etc that
you might have to deal with.
am
Your four characters are
generally shown standing af the
far left of this picture, but they
can be seen to walk across the
screen In response to your
commands as they attempt to
attack or trade in some way with
other characters.
The remainder of the screen
display contains icons of the
four characters and a compass
which you use to direct their
movements. The author, John
Pitcher, has allowed tor both
icon control of the game or a
more conventional keyboard
control.
It you choose icon control you
can steer a pointer around the
screen using a joystick, and
once you have chosen the
character you wish to instruct
you can choose either an
Actions or Attack menu which
offer you a range of options for
combat, spell casting or lor
dealing wilh objects or other
characters These include
obvious adventure commands
such as Attack, Examine, and so
on. but also a number of others
Including Trade, Buy. Meditate,
and Dig. In icon mode you
choose the appropriate
command by moving the
flashing cursor around the
menu, but in keyboard mode

f
you have a system of single key
entry (as In Lords of Midnight)
whereby each key corresponds
<
to a specific command.
« JJ mm ««
mmmmmmmmm
Keyboard control means that
you've got more to remember,
mmmmm Mmmmmm
but icon control is a little bit
fiddly at times as you keep
swapping from character to T H i e S t o n e i n E l a n t o p
character and all Ihe various E x i t s : S o c i t h
menus. Bui the control system
does work quite well, as the icon O U I N S t i* 3 2 P s y 3 9
system allows you to get started
quickly and without having to O B 3 E C T S S P E L L
memorise all the control keys, J i E x i t
then, as you become more
j l r i c t i o r >
accustomed to the game, you
can speed up play by moving l l U t t c i ck
onto keyboard control (but you
can only use one control system 2 c * p
in each game, you can't swap
from Icons to keyboard In the
middle of one). ui
As with all adventures It's vital
that you make a map as you go
>
along, although The Edge though, as usual, there are the other hand Ihe control
thoughtfully provide a rough always more objects to carry system is very 'user friendly" and
sketch map ol the Shadowlands than you can use at any one allows you to get into the game
on the cassette inlay. I suppose time so you've got to choose quickly and without having to sit
that because of the animation I which objects to take with you there wondering which is the
was expecting more of an and which ones to leave behind right word fo use all the time, so 2
arcade element in the game,
perhaps something like Enigma
Force or Fairlight. but as I
mentioned earlier Mindstone is
for later use. When bartering for
items or deciding which
character to use in a fight there's
the added element of
Mindstone is well worth having a
look at whether you're an
adventure novice or a hardened
ore basher.
§
really just a graphic adventure judgement that you've got to use
with souped-up icon driven anaqulte often the
presentation, and once you treaf consequences of an action
it as that both you and Ihe won't become clear until much
game are more likely to do later in Ihe game.
each other justice.
As with most adventures,
The memory taken up by the
icon system means that o
problem solving is a matter of Mindstone Isn't as complex or as IAJ
gathering together the correct rich in brain-bubbling puzzles as GL
objects in the right place, a Level 9 gome might be. but on CO
m

t t

fa
A

• v

•fa

MINDP
Peter Sweasey reflects was announced earlier In the
A
horrified to thing he was
year, I dismissed the Idea as a responsible for such madness.
on the torrent of Tolkien particularly crass promotion We also have some budget
designed to sell yet more copies titles, including a rerelease ot
based adventures and of an old game The Hulk from US Gold. I haven't
In fact. July did turn out to be given It a good review because
gives a selection of Tolkien month, to my greal it's basically a feeble adventure,
surprise, and probably to the but I hope to see other Scott
helpful hints to even greater surprise of the PR Adams games at this price
people. Because before the Splderman, Claymourge Castle
budding adventure month was over. I received three and other of his better titles
computer games based on the would be perfectly suited to a
writers exploits of creatures with £2.99 tag.
leathery-soled hairy feet who are Finally, before the reviews
half our height, who live in holes start, a second look at
* • have no use (or adventures. and encounter trolls, spiders, Hunchback The Adventure. In my
Nasty disturbing uncomfortable wizards and dragons in a review last month, I said I would
things! Make you late for dinner! reluctant quest for treasure Alt reserve full Judgement until I
I can't think what anybody sees three are extremely good toa I had at least reached part twa
In them" That immortal insult was never a great fan of the Now. thanks to John Wilson, I
was uttered by Bilbo Bagglns In Tolkien — I enjoyed The Hobblt have completed the game, and
> J.R.R. Tolkien's The Hobblt. July
was Tolkeln month, according to
when young but found the Rings
trilogy dull — so It's a pleasant
my verdict was quite correctl The
solution is as I suspected mostly
Q
< Melbourne House. Being surprise to find three superior
games. Bilbo would have been
finding objects and dropping
them in the right places. It is
something of a cynic when this

84 ZX Computing Monthly • October 1986 84


m
likely to appeal most to Patch (more on which later). a utility, redetine the system
Inexperienced adventurers, and Quality is more important than messages otherwise the game
people who don't play often. quantity — a few excellent pics looks as if it has come off a
Although on a general scale my are better than many poor ones. production line. Define a more
rating stays the same, if you are Vocabulary should be as readable or suitable character
an occasional adventurer It is friendly as possible. Use plenty set. Take care with spelling and
raised to "Great". of synomns. Get a friend to particularly punctuation (why do
playtest your game; often he will so many writers know so little
Dungeon do's and think of word combinations you about apostrophes — make sure
don'Ts hadn't. The adventure should not you know the difference
be testing the player's ability to between it's and its).
What does an adventure guess what the author was Play other games. Level 9 give
reviewer actually do? Unlike thinking. EXAMINE is almost vita! you something to aim at! If
arcade games, we cannot these days. SEARCH is useful. you're using the Quill buy The
comment on animation, sound LOOK and the abbreviation L Boggit by CRL to see how to use
and basic categories like that — should redescribe a location. If it properly — a near perfect
so Is our job just opinion? No you have other characters in "amateur" game. In my
way! I take Into account a wide your game, a TALK or SAY experience keen adventurers are
range of points. I thought any command greatly enhances often the best games writers:
readers interested in writing a play. If an object is mentioned they know what they dislike and
game — and judging from my in the text, it should be tike about other games and aim
post, there's an increasing understood unless It is clearly to improve on them. If you
number of "amateur" authors — just description. couldn't care less about
might be interested in hearing The game should allow the adventures, and just want to
some thoughts from a reviewer. player to do things that are not write a money-spinning game,
After all. if you want to sell a necessary for the completion of give up now.
game, either myself or a
colleague in the reviewing world
will have to see It sooner or later,
for it to gain the necessary
publicity and (you hope)
acclaim). So why not cut out
what I will criticise before you
send it to me?
The first point, and one of the
most Important, Is plot. IF YOU
CANT THINK OF AN ORIGINAL
PLOT, DON'T WRITE AN ADVENTURE.
Except maybe If you are a really
stunning writer, and even then
my reception could be cool. No
plot is totally original of course;
but some of your game should
be reasonably new. By plot. I
mean scenario above all. Please
don't set it in outer space or a
cave network... I've seen It all
belore and believe me. so have the game. Let him go up a Once your game is written,
many adventurers. However, if complete blind alley if he wants, marketing it yourself through
you follow all the other rules I with messages to encourage classified ads is unlikely to bring
outline, you might just get away him. It adds to the fun and the much response. Having a
with it. sense that the computer is doing software house publish it is a
Make the plot logical. Don't what the player wants, not vice better solution. Very few Quilled
do what one writer did recently, verca. For example, allow him to games are sold for full price, but
and have a genius leave parts EXAMINE everything. This means the budget market Is thriving.
of a secret code scrawled all many messages, but is worth it. From what I've seen of games by
over the floor. Objects should be As a general rule, the response Atlantis and Central Solutions,
In logical places, unless your "You can't" should appear their standard is not too high, so
game is humourous. That area is rarely. A reason why not. or what there's plenty of room for your
one of the hardest to succeed in irrelevant action happens if you Improvement.
— humour is many things to do, should instead be used. The emphasis in this article
many people — and should not Again, thorough play testing by has been on commercial
be seen as an excuse for plot friends causes them to try success: the reason for this is
short cuts, actions which you hadn't though that, offer all, my job is to
Text should be atmospheric of. and can program a response recommend to the public which
and lively. Long text isn't to. game to buy. Finally, the best of
necessarily good text — It can If the utility you are using runs luck with your adventure-writing
easily be wasted — but location out of room for messages, career — I hope to give your
description should be at least locations, flags or whatever — game a Monster Hit soon! Every
two or three lines long. Scott split the game Into more than adventure sent to me is looked
Adams style is too brief: never one part. If you use the Quill, at, but these days only good
use his games as a standard as nowadays you must use Patch products from small companies
they're very poor examples of with it: this allows split-screen gain printed reviews.
adventure writing. As for
graphics; unfortunately if you g raphics and the ver useful
AMLOAD and RAMSAVE
want commercial success, commands, which greatly add Footnotes: "The Patch" is
they're almost essential. If you to a game's playability. Make available for £5.99 from Gilsofl. 2
put some In, take some time on sure you use series C Quill — it's Park Crescent, South Glam. The
them, and make them split less memory consuming and use of "him" for "the player" in
screen. The full screen more flexible. this article is purely for
"llllustrator" graphics are slow to Presentation Is extremely convenience and does not
draw, obtrusive and important. Use colour, but represent any prejudice against
unprofessional; so use GAC or nothing garish. If you are using women using computers!

ZX Computing Monthly • October 1986 85


E L P L I N E

After last month's massive missive be reached with the steps from P. Ellaway wites about the
on your mall, back to a more the garden, but LOCK them superb Fourth Protocol. He's
manageable length. Where before use Then CLIMB or scored 98% in '7he Nato
better to start than with The DESCEND STEPS. As for packing, Documents" but cannot progress
Hobbit? (coming out of my ears just take everything you feel Is to the next part without the other
by now). Niclas Carlenius from necessary, plus the suitcase, 2%. The question would be
Norrkoping in Sweden is stuck In when you board the taxi, and impossible to answer if he hadn't
the Goblin's Dungeon, like so the program will do the rest. You sent me a complete list ot what
many other brave advenlurers cannot take the shaving foam he'd done. Turns out he was
before him. To open the and harpoon gun together; you giving the wrong answer to
trapdoor, you must BREAK it only need the latter. Thanks to some of Plumb's questions, which
several times. To escape, you Paul and Glenn Glbney for are admittedly somewhat
must wait for Thorin to appear, sending a complete solution to ambiguous. These are the
then SAY TO THORN "BREAK this game, which I've only responses you need:
WINDOW", tell him to "CARRY recently obtained. Old Who Is the traitor? - FAULKNER
ME" then to "GO WEST". He also correspondents from my days at What nationality is his contact?
asks how to reach '"OUTSIDE Home Computing Weekly, they - SWEDISH
Goblin's gate" when he's found write "It's great to hear that What name is he using?—NILSON
the ring. You need to WEAR it, you've been replaced in a new What is his real n a m e ? -
and as it keeps falling off damp, dark dungeon with all STENBERIJ
(though the program doesn't mod cons". Ha! This is What proof do you have? —
immediately tell you), it's best to unfortunately the same grotty FINGERPRINTS
try this command before every cell f've always been in (Argus Where did It happen? - GAZA
move. Go N. SE. W. N, D. S. W. E, only has one), and unless you How was the traitor recruited? —
and OPEN DOOR, call the two year old straw FALSE FLAG
Jon Wilde wants to go to which lines the stone floor a Then provided you have done
Terrormoltnos, from Wombwell in "mod con", I'm afraid you're everything else, advance the
Yorkshire. But he asks "How to mistaken on the last point. A date a few days and a message
pack all the clothes and pititul shame, it (stop moaning or will appear. Burak Karsu writes
equipment, how to get the I'll send Leslie Crowther down — from Istanbul — yes. the one In
camera and to reach the loft". Ed). No. anything but that, Turkey — with the question "How
The loft and camera can both please) Alright. Move it here... can I pass part one". This Is
rather vague as I don't know Stuttgart in Germany (a real messages on the manuscript
m
what you have done, but here jetsetter of a helpline this), and ring; the latler object is vital
are some general hints. When asking for the five answers to the for success.
Bracton calls about Thorn, read guardians before Vran's Inner
Bracton's tile, then put some temple. John Wilson supplies the Write to me
watchers on. When you learn answers. Guardian 1: SAY 0,2,6,9.
about his peculiar habits, Ignore the second guardian. Whether you're baffled by The
'phone medical security. Just Guardian 3: SAY ANAGRAM, Boggit, mystified by Mindshadow,
analyse the leaked papers, soon Guardian 4: SAY G A. Guardian confounded by Colossal or
Willis will be caught and you 5: SAY TLE. stumped by Spiderman, we can
can prosecute him. Keep a Andrew Jone addresses me help. Fill in the coupon and
large watch on Warburton, as "Sir/Madam" - at least that's send it to: Mindplay Helpline,
Banister and JOhnston when you better than what Bryan calls me Deepest Dampest Darkest
receive information on them; — and cannot ski in Valkyrie 17. Dungeons, ZX Computing. Na 1
also Faulkner, access PIZZA file He has the skis; well you need to Golden Square, London W1R 3AB
when you're told where he eats. wear them , and to take the ski A few ground rules: if you're
And in answer to Jason Gibson's poles from outside Ihe hut writing from Britain, please
question, to find the telephone (they're illustrated but not enclose a stamped, addressed
numbers, ask for TELEPHONE file. mentioned), and to have read envelope for my personal reply.
A couple of people have the book. This is found south If you are writing from abroad,
asked for help with Artie's from the hotel room where you please lay out your address in a
ancient Planet Of Death. I'm not found the sheets, When you way that I can copy on to an
sure why anyone bothers reach Ihe bottom of the slope, envelope, and will reach you. I
playing It when there Is so much there will still be some blood, try to respond within two months
better stuff around. Still, Douglas though fortunately not yours. but I can take longer (on the
Harter from Enola In America Brian Coulthard asks some other hand, you might receive
keeps being killed by the green questions about Runestone. an immediate reply). I'm not too
man. You need to TAKE MAN, These are the answers. Questor's hot on arcventures these days
DROP MAN (this moves him from lake is found in the Deserted (Gargoyle games included).
the mirror) then SHOOT MAN with Lands (see the map) of the north, Finally, please write the name ot
the laser gun. In case you and is useful for rejuvenation the game(s) concerned on the
haven't found that, take the after battles. To enter Kordomir's back of the envelope.
floorboard from the house then domain, follow these directions. Next issue the new Level 9
USE BOARD to cross ravine. Take Unless otherwise stated, you blockbuster will almost cerlainly
and wear the gloves from near should move In the same way have reached me. And it's the
the man. To pass the force field, until blocked by mountains. From PCW show soon — before I next
FIRE GUN - AT FIELD twice, then Saromundor's hut. N. W. S. W, S, write, though after you read this
DANCE. That should answer the then W unti lyou are able to — which could mean lots of
queeries of Peter Davies ot move north. N. W until you ore lovely new adventures to review.
Lancaster, who also asks how to able to move north. N, E, N, E, N, Then aaain. considering last
escape the prison cell: just W, S. W. N, In. The purpose of the year's snow, It could mean
avoid it, you don't need to visit it Runestone will become clear at nothing of the sort. Find out in
to complete the game. the end. But to destroy Kordomir, the next enthralling episode of
Gerold Hofhelnz writes from you need to decode the . . . Mindplayl

AN EVERYDAY
TALE OF A
SEEKER OF
After Ihe possible exits, "I can allowed for nothing except
GOLD
JOURNEY TO also see:— A Flask, A Coat"
EXAMINE FLASK: 'There's nowt
Ihe commands needed to
solve fhe game; and those
John Wilson
£1.99
THE CENTRE special about this" (Is It
empty or lull? What is In It?
commands are hard to find
because the vocabulary is The author of this game is

OF EDDIE There is "nowt special" about fairly poor. There are some, John Wilson, an extremely
virtually everylhlng you full screen graphics: some accomplished adventurer

SMITH'S HEAD encounter).


GET BOTTLE: "It's not here" (Yet
etfeclive, others dull.
The whole thing feels so
who supplies many ot Ihe
Helpline solutions. He's used
all his experience to create
it's in the description) tired; a waste ol energy for
Players GET TEST TUBE: "I cant (This all concerned. Not a stun- an excellent game John Is a
£1.99 turns up after so many ning debut (or a new label. great Fergus McNeil (an, and
commands). became so fed up waiting
Eddie bumped his heod on a Then there's the gun which for The Boggil that he wrote
nucleor reactor, has gone you cannot shoot people his own version. This isn't to
bonkers and is threatening to with and the coffee which soy this Is a rip-off of that
blow the world up with a
bomb hes developed. You
cannot be drunk. You die of
dehydration despite passing S ame (it reached me some
me before CRL's was re-
leased); it is much less de-
must stop him by investigat- through rooms with laps In
ing Ihe case and delusing them: they cannot be used. rivative of the original as
the device Unfortunately the And so on: the author has well.
rather wonderful title seems AETOASOG it text-only and
Irrelevant; you don't even get Quilled, but nicely presented.
near his earlobe. At least not The text is qulle lengthy, and
In what I've seen, and I like In McNeil games is not
haven't investigated more really description bul
fully because this Is not hot. humorous statements. In
I'll show you why. The tlrst John's game the humour Is
location: much more gentle, with a
"You are In your own clever idea or sentence
laboratory. Shelves are causing a smile, as opposed
stacked with bottles and lest to the complex set-up of jokes
tubes". (One ot the more In The Boggit. This makes a a
detailed descriptions; usually pleasantant change.
You tace numerous • • •
<
they're only one sentence).

87
LRU
problems on your way; seve-
ral conlront you Immediately,
and you are unsure which to
CLAWS OF
try to tackle first, in Ihe hope
lhat tt will enable you lo
DESPAIR
solve the others. Mostly, the Players
puzzles are (un. though re- £1.99
quiring much thought. Vo-
cabulary is. with some excep- More a cause ot despair as it
tions, friendly; and the game turns out: another less than
Is pleasingly responsive lo a wonderful olfering from Inter-
range of commands ceptor's new Players label. It
AETOASOG Is not a classic Is somewhat better than
adventure, but is the besl I've JTTCOESH. but still suffers from
seen at the price — for two similar Haws.
pounds, exceptionally good Your quest Is to recover a frustrating, In a desert maze, game Is generally unfriendly.
value Virtually a must for all Staff of Saffrin, which will save where the same rather The problems are tricky, but
but novice adventurers. your land for reasons not dreadlul picture is drawn at quite original and fun.
Contact. John Wilson. 23 quite made clear in the each of the many (unctions; The packaging is well de-
Spotland Tops, Cutgate. slightly incoherent instruc- and since you are killed fre- signed but otherwise I'm to-
Rochdale, Lancashire OL12 tions. The game — what I've quently, you have to reload tally unimpressed by Players.
7NX. seen ol it — is set in a middle otten, when fhe pictures are A much better Idea would be
earth type civilisation, with drawn again. to re-release some old Inter-
Inns and a walled city, plus a Indeed, death lurks round ceptor games like Heroes Of
wizard and other magic unfairly virtually every corner, Karn: they're belter adven-
Description is above and usually there's no turning tures, Ideally suited to a
average, generally well writ- back, making play frustrat- budget price and have de-
ten. The full screen graphics ing, not challenging. EXAM- lectable graphics. Players Is
are mostly poor though, and INE Is rarely responsive, and not budget adventuring al Its
excruciatingly slow. This Is there's an unnecessary pause best: buy Seabase Delta or
particularly noticeable, and each time you use It. The AETOASOG Instead.

THE HOBBIT
manifests Itself are the sloppy You haven't lived until you've
THE presentation of messages,
and a peculiar parser bug
escaped Ihe Goblin's dun-
geon! Another admlrabale
INCREDIBLE which means some com-
mands must be entered Melbourne House
lecture that is rare even
today is thai many problems
HULK twice before they're
understood.
£9.95 can be solved In a variety of
ways, as can the game Itself;
When The Hobbit first came
Americana The graphics were stun- out, I was not as amazed as gaining the treasure Is by no
£2.99 ning when this first came out; all the reviewers of fhe time. means the sole task. This
now some look scrappy, but In fact I disliked the game I helps add realism lo the
A re-release ot the first most are still rather good. was unimpressed by the "in- computer controlled world
Questprobe game, courtesy Shame they black out every dependent" characters (all and I begin to see what
ol US Gold's budget arm. You lime you enter a command. that "Thorin sits down and everyone was raving about.
play Bruce Banner and his There are a few good sings about gold" rubbish); Character Interaction is a
monstrous alter ego and, In points. Sometimes when you and I objected to some of vital part of the game, and
the author's ever-realistic type EXAMINE you are shown the helty £14.95 (which well handled, though not so
style, must collect some a close-up piclure, a clever seemed vastly expensive mind-boggling these days.
gems. Idea; and the pics Illustrate when compared with an What did happen, by the
This was Ihe first Scott actions as well as locations. average of £5 per cassette at way, to the other twelve
Adams game I played and I The instructions are impres- the time) paying for a book dwarves?
was bitterly disappointed. sively lengthy for a cheapie. which I, like many other In many respects I prefer
The major fault is an intrinsic- And a few of the puzzles are people, already owned. this to Ihe first Lord Ol The
ally poor design. It relies on fun, If you can lolerate all the Since then I have become Rings game. The Hobbit has
dirty tricks like having three faults which make them an adventure reviewer and nothing like the same com-
different domes but identi- harder. know what makes a good plexity, but Is much more
cally external descriptions of Perhaps worth looking at if game The ridiculous hype enjoyable to play, and I feel
each, and random distances you're an Adams or a graph- has died down and I can captures Ihe atmosphere of
between them (an astound- ics fan, and cerfoinly better appreciate fhe program's Ihe book better (no photo-
ingly dum Idea). Nearly halt at £3 than full price . . . but good points, which are
the gems can be found by
entering three simple com-
still pretty naff. numerous. S iraphs or heavy metal here!),
hen again. The Hobbit Is a
far less complicated slory.
mands in various places. Furthermore, I can review
It honestly without being in The only real problem Is
The usual Adams (laws are awe. That said. It is deser- Ihe price. I would have
here, like dodgy vocabulary vedly a classic — and the thought past sales would
and very sparse description game responsible for intro- have paid for The Hobblt's
(complete with "TM" after ducing so many people lo development many times
some words). Add to this poor the wonderful world of over by now; yet at £10 there's
quality programming (thank- adventures. virtually nothing more
fully it improved with later The program has aged expensive. Considering the
games). Among the ways this remarkably well; Its speed book is no longer Included,
and presentation still its price has hardly changed.
compare favourable with I'm sure some shops have
anything on the market, as been selling The Hobbit off as
does the friendly vocabulary old stock lor much less, and
and ihe responsive, helpful at a mid-budget price of £5.
replies, the graphics are or as one of Elite's "Classics",
variable; some duff, some still this would be a monster hit.
good, but none really poor. As it stands, I would say it's
They tend lo improve the still worth playing, but make
further you progress. your own Judgment as to
whether it is the best use for
The location descriptions your adventuring budget.
are far briefer than I
remembered, perhaps too
short by today's standards.
However, with all Ihe mes-
sages and characters wan-
dering around, there remains
a reasonable amount to be
read.
The game has some lovely
— and now classic — puzzles.

88 ZX Computing Monthly • October 1986


Soon the dwarves sing a
charming song about how
they're taking you (who they
call "lardbafl" and 'Cement
head") along on their mission
(which I hardly need detail)
so the dragon will eat you In-
stead ot them. Later you'll en-
counter the highly dubious
Smelrond. the River Anadln
("great torrents of soluble
pain relief roared quietly
o y ' l and my personal fav
Ites, the spiders who bob
around "most convincingly"
on elastic bands. Perhaps un-
surprisingly, lavatories also
feature strongly. The humour
Isn't to everyone's taste — I
didn't find It hilarious - but
there should be something to
make most people smile
Vocabulary Is mostly
friendly, with the exception o<
the word CLIMB which Is
often used Instead of ENTER,
eg., CLIMB INTO CHEST. The
ever useful RAM SAVE/LOAD
option is Included.
The split screen graphics
are all extremely attractive;
with the exception of Adven-
8inbo stood in bis comfortable ture International's, I'd say
tunnel tike hal I . To the east they're the best I've seen.
was the round green door and a Many of them are close
snal( window was set high into copies of Melbourne House's,
and somehow manage to be
the watI. both uncannily accurate and
To the south, was the round an Improvement on the
green toiCet. original.
There's more text than in
the original toa, with quite
a targe, wooden chest long, usually witty, location
descriptions, verbose mes-
sages. Some events are de-
scribed by several pages of
text. The game is not always
as responsive as I would
have liked, but EXAMINE Is
usually productive and you're
allowed to do plenty of Irrele-
vant actions. Another nice
feature is the characters who
wander round In convinc-
ingly Independent style;
there's a clever TALK routine
toa And yes, Thorny does sit
down and sing about gold —
though his song Is somewhat
cruder in this game
I®8 There's lots to see but not
that much to do In the way
ot actual problems. There's
3 p e r one real dumper close to the
start, otherwise It's fairly
logical. You must pay close
attention to everything you're
told though.
This game has virtually all
the features I expect from an
adventure, and shows how

T h e
o u d
h i s
c , h o r , < > <a t e s
B A B O O M
s u r r o u n d i n g s
,
e x p l o d e d ,
tot o w i n g
w i t h
B i c ^ b o
p i e c e s .
a
a
n d
powerful The Quill utilities
con be Because there's so
much, the game Is In three
parts; you can move freely
Between them reloading
SAVED positions. A Utile Incon-
venient but far better than
having less game
fully. certain problems being mined to avoid any ot those
THE BOGGIT
There are a lew bugs and
identical. That said, The increasingly popular adven- the game Is no masterpiece;
Boggit Is one of the best tures Before long, meddling but despite Its faults The
adventures I've reviewed this old Grandalf crashes through Boggit Is an exlremely enjoy-
C P L year. a window, deposits a mes-
£7 9b able and professional adven-
The sheer daftness of the sage with a self destruction ture
humour Is whal appealed to box of chocolates and swiftly
No matter what the publicity many people about McNeil's exits, all to the tune of the
says, The Boggit Is a direct previous mainstream releases Milk Tray ads. When you
spool of Melbourne House's
game as much as Tolkien's
like Bored Of The Rings, and
devotees will be pleased to
eventually leave your home
you are battered by Thorny JIuNSTIill
book. Or Is It a rip-off? It's a know the same zanlness and a bunch of dwarves Into
thin line between the two
which author Fergus McNeil
occurs here At the start
Bimbo Fagglns has secured
participating In Grandalf's
peculiar version ot 'The Price
IL-IITS
doesn't always walk success- himselt In his hole; deter- Is Right-
ZX COMPUTING
F U L L C R E D I T F A C I L I T I E S FOR A C C E S S AND BARCLAYCARD.
Lineage: 40p per word.
Semi display: £9.00 per single column centimetre.
Ring for information on series bookings/discounts
^
01 - 437 0699
(minimum 2.5cm). Send your requirements to:
All advertisements in this section must be prepaid.
DUNCAN NEILSON
Advertisements are accepted subject to the terms and conditions ASP Ltd., 1 Golden Square,
printed on Ihe advertisement rate card (available on request). London W1

! SERVICES REPAIRS 1
1
INTERCONTINENTAL
CASSETTE COPIES SINCLAIR REPAIRS SPECTRUM REPAIRS
Spectrum/Plus £19.95
SCOTLAND'S No 1
For home and pertonai computer repair*
50 c 1ffs
FOR £40 mc PAP Spectrum Keyboard Specialty la* I Spectrum service!
loud tested SPECTRUM/PLUS ttZQO • Same d*r Tot moir /null
KEYBOARD 18 SO Faults £12.00 • t ftour il dearer ed perionaAy
Send your cassette master c w o. Reset Sw lilted with repair£3.00
to: INTERFACE/MICRODRIVE £17 00 MCb • Open 0 dan a wee*
Upgrade 16K to 48K . . . . £25.00 • Free eil'mafei
SOUNOS GOOD Interface 1 £17.50 • Upgimlei Mem anai arid I'S U t
All pnees ate fully inclusive ot p&p and
• Clear Croft' Bottom Lane, S M I O M N , Spectrum • Dustcovor .,..£1.95 • J mih we" only on woik done
Buck* HP» 2UH VAT Sent Cheque with computer only
OL Dustcover £2.95 AlsoBBC CBN ORIC and P E R I P H E R A L S
(04944) S900 inless power supply suspected Callers
Welcome Prices includes parts. P&P MICRO-SERV
Send Unit & Chcque/PO to 95 Deer dykes View
P.E.A.K. E L E C T R O N I C S Wetllleld Industrial Area.
IT. WESTERN ELECTRONICS 222 York Road. Hartlepool, Cumbernauld G6« 9HN
UTILITIES Unit FZA A F3
Avontldi Entirprlu Park
Cleveland T S 2 6 «ON.
Tel: (0429) 233199
Scotland
Tel: Cumbernauld (02367) 37110
O v f i o a i ploaso odd £3 50 pAp Trade, schooli nod club discount givrn
Niwtiroughton Rati
8RICKW0RKER
Mtlkshim, Wilt*
A program for theDlY ptnon l o c t k u U t t Tall: |0Z25) 705017
WOOOHOUSC E L E C T R I C I A L
tie qty t Ot materia* for *mal> tv-cfc wor h A
concretion protects SPECTRUM REPAIRS SERVICES.
• IUUS TRA TIONS OF BONDtNQ * £14.95 inclusive ol labour parts and pip. 2 Station Rd. Woodhouse,
FOUNDATIONS ' BRICKWORK CALCU- F m l . reliable service by qualified cngs . Shotlield S t 3 7QL
LATOR ' MORTAR MIXFS m POINTING ' average repair 24hre 3 month* guaran- Sinclaii^Spuclrum ropairs from £19.95
O f CORA TIVC FINISHES SPECTRUM REPAIRS
tee For help or Advice ring (return p&p inclusivo)
FOR T H E *BK SPECTRUM pip ' Only genuine Sinclair parts used
Sand cheque to We expertly repair Spectrums H. S. Computer Service*. Unit 2.
The Orchard. War ton. Pre* Ion. ' OUM> 48hr turn around
KONKRCTE SOFTWARE tor CI7 inclusive of parts and ' Fast reliable service
• WlBowcourt A n . Htnlon. Htnow. MMd> Lancashire Pfl4 IDE. Tef: (0772) 632686
labour and return postage * 3 month guarantee on worn done
' All callors welcomo 9-5.30 Monday to
Spectrums upgraded to 48K tor Saturday
SOFTWARE £34 inc. P & P All keyboard
faults cost only E l 2 .
Tel: (0742) 695319.

R. A. Electronic*, SINCLAIR
Z X 8 1 / 1 6 K I C H I N G . Draws lirsl
three heragtams. prints results
133 London Road South.
Lowestoft. Suffolk.
COMPUTER REPAIRS
All machines despatched within 72
ACCESSORIES
Cheque C299 Eric Rosenbaum T a t (0502) 66289. hours ol receipt
Spectrum 117.00 Z X - 8 1 £12.50 S P E C T R U M RESET S W I T C H -
PO Box 2155 Jenkintown Pa. Spectrum 16 to 48K upgrade £35.00
19046 U S A Postpaid Source line parts. VAT and return postage) Prevents damage to your
Listing SINCLAIR SERVICE CENTRE For a fast and roliabto service, send computer when power plug pulled
• Fully Guaranteed Fast Repair Service machine, brief description ot laull and in and oul Only £3.49 Inclusive
• Appro" 24hr Turnaround cheque or postal order to the experts
• £15 i i cost O' lend machine *<tn ft 95 Cheque or P O to Central Elect-
QL/SPECTRUM UTILITIES! Capital C o m p u t e r Services,
(return pip) tor tree estimate ronics. St Andrews St. Greenock
Wide range ol business/practical • Pertonai callers welcome Unit K2. Cardiff Workshops. Lew** Rd.
PA15 1HG Other accessories.
programs available S A E / I R C for East Moor*. Cardiff CF1 5EG
QUANTUM Write lor free list.
Tel: (0222) 441S01
details (stale Micro) S.D Micro- 33 CITY ARCADE. COVENTRY CVt 3HX
Tel: (0203) 24633
systems (ZX) PO Box 24, Hilchin,
Herts
FOR SALE
S T A R C R A S H . More than just an
ACCESSORIES advenlure. " T h e text really is
some of the best yet seen on the
S p e c t r u m " Mindplay Septem-
ber 86. "Mandatory fare for
TAKE A
STEP IN
t, — Spectrum o w n e r s " . T o n y Bridge
HU1 OUTPUT ' C O N F U S I N G ISN'T IT? ( P C W ) June 19th £4.95 inc. P & P
THE RIGHT ( OMI'OMU VIDIO ? Talk ot the problem solvers We haw the eipenence and expertise f r o m : S l a r c r a s h Software
to advise on in aspects of computer display problems eg S y s t e m s . 1 Walsingham Avenue.
DIRECTION <»KI I N M'Kt I N ' • RGB 0UTFUT MODULE for Spectwn 16 or «K MoUt
KcUtmrf — givesroomierqwMy pictures — no dot cnwi Manchester M20 8 W A
T ft. • ANALOGUE ?
: COMP SYNC ' * NEW * BRIGHT BOX - Allows tul use ol Ihe bright taaMy on
PHONE DUNCAN
palette OnlytotSpectrum 128
PHONE NOW ON
analogue input monitors and monitor-TV's to produce full colour
C2I 85
S BRIGHT ? ,
N E I L S O N O N 01-437 AM PiP n (U0. O (lip,
Sir* SAt *t ou ft* Uenta fart Snwr [4 tOCmV
01-437-0626 FOR
0699 F O R A D V E R T I S I N G adopt electronic/ | »maun CLOSE ivctnw MX tsiu in st« in I I I W n u ADVERTISING
DETAILS.

WARNING NOTICE
A d v e r t i s e m e n t s p l a c e d i n t h i s m a g a z i n e are t o b e i n s t r i c t c o m p l i a n c e w i t h o u r s t a n d a r d c o n d i t i o n s ( c o p i e s o f w h i c h
c o n d i t i o n s are a v a i l a b l e o n r e q u e s t ) a n d o n t h e c l e a r u n d e r s t a n d i n g t h a t t h e a d v e r t i s e r w a r r a n t s t h a t h i s
advertisement(s) does not i n f r i n g e any c o p y r i g h t or c o n d i t i o n of sale of any i n t e r e s t e d party in the advertised
product.
F u r t h e r , t h e advertiser i n d e m n i f i e s I h e p r o p r i e t o r s ot t h i s m a g a z i n e i n respect of c o s t s , d a m a g e s , or any o t h e r c l a i m s
b r o u g h t a g a i n s t t h e m a s a r e s u l t o f legal a c t i o n a r i s i n g f r o m t h e p u b l i c a t i o n of t h e a d v e r t i s e m e n t
A n y b r e a c h o f t h e s e t e r m s o r t h e s a t d c o n d i t i o n s m a y r e s u l t i n p r o s e c u t i o n o t t h e a d v e r t i s e r by t h e p r o p r i e t o r s

90 ZX C O M P U T I N G O C T O B E R 1966
Trained to kill, you must penetrate the defenses of
Abraxas, destroy the terrorist H.Q. and glide to safety
In case of difficulty. Glider Rider Quicksilva Ltd., Victory House.
can be obtained from Quicksilva
Ltd.. Units 1 and 2, Conlon
Leicester Place.
Developments. Watery bane, London W C 2 H 7NB.
Darwen, Lanes BBC3 2ET.
Tel: 01-439 0 6 6 6
wmm
IMM

You might also like