Download as pdf or txt
Download as pdf or txt
You are on page 1of 92

wwmm/imi/miiimmum wmmmttimmmmmmitm/i

mmm
An Argus Specialist Publication NOVEMBER 1986 £1.50

m FOR ALL SINCLAIR USERS


W/i
mm
W/m

III Wink
Wm^m/mmliiimiiiiiiL

i W M K i ™
maMmmiwiMwmiwmmiiiwmiiiiiimitttiiii

REVOLUTION ^
grips the Spectrum
SOUNDTEST:
SOUND SAMPLER
THE MUSIC MACHINE
QL ERROR TRAPPING
JOYSTICK SPECIAL

/
MONSTER HITS! Dan Dare The Trap Door Cyrus II
W I N ! • Saga C o m p l i m e n t ^ L e v e l 9 Y e a r p l a n n e r s ^ G r e m l i n Clocks
Spectrum in October, Amstrad in November, Commodore 64 in December

Sales dept..
Castle Lodge, Castle Green,
Taunton, Somerset TA1 4AB
England TaUpho«w|0821)S4489*540Jt?

software getting harder


FEA TURES SOFTWARE REVIEWS
SPECTRUM: Revolution (31), Nightmare Rally (48),
WAR OF THE SHIRES: an epic fantasy wargame from Deactivators (53), The Trapdoor (54), Cyrus II (56), Short
Alan Davis. 10 reviews begin 38

JOYSTICKS: a look at the latest ones, and a few old


favourites. 20

RANDOM MEMORY: Clyde Blsh with a Speedraw


routine and 3D adventure graphics. 26

PROFESSIONAL TOUCH: Programming advice from


Hewson's Steve Turner. 34

SPECTRUM/QL LINK UP: RS232 communications


between the two machines. 64

QL ERROR TRAPPING: an excellent programming utility


all the way from Alberquerque. 68

VENTURESPEAK: Alan Davis puts the finishing touches


to the Venturespeak editor. 75

OPUS COLUMN: hints and tips for the Discovery Disc.


80

MACHINE CODE CALCULATOR: everything you always


wanted to know about p o l y n o m i a l s . . . 84
SPECTRUM 48K - I7.BK
CASSETTE

REGULARS Dan Dare reviewed (46)

NEWS: meet the Code Masters, the new budget


software house. 4
MINDPLAY: Jewels of Darkness from Level 9 (82), plus
HRH The Game. 72
CROSSFIRE: Readers' letters. 15

CROSSWIRES: Readers' problems. 16 PROGRAMMING PROJECTS

HARDWARE: musical add-ons and a new printer EXTENDED BASIC: new commands for the Spectrum. 50
interface from RAM. 18
MONITOR: a machine code programming utility. 57
SHORTCUTS: readers' routines. 42

QL COLUMN: no news is good news (Isn't it?). 63 DfiN IS NOH IN SECTOR ~2~|

PAGE 81: some readers' routines for the '81. 79

COMPETITIONS

i t
SAGA: be one of the first to own Saga's new
Compliment set-ups. 8
J I I L
LEVEL 9: plan the year ahead with a Level 9
yearplanner calendar. 30

CLOCK THIS: win a snazzy Gremlin clock or Trallblazer. 01: 4-71 37


71

The Pilot of the Future in a c t i o n (44)

12 ZX Computing Monthly • November 1986


Fairlight II The French Connection
Bo Jangeborg<s follow up to Fairllght Is now almost complete Vera Cruz Is an interesting new game Irom French company
and due tor on October release. Fairllght II carries straight Infogrames. The aforementioneaVera is. or rather was* a well
known woman of 'ow-you-say. easy vlrtua Until she was
on from where the action In Fairllght left oft. But now, the discovered dead In her apartment — which is where you come
game's hero, Isvar, has to leave Castle Falrtlght and travel in.
Using a police computer system to gather information you
through a forest beset by the powers of Darkness. The Edge must piece together clues to solve the murder and apprehend
claim that this will be one of the first true 1 128 games for the the villain. But first you have lo (rack the game down In your
local software shop and bribe Ihe owner with £9.95 before you
Spectrum and the 48K version will have to be loaded In two can get on the trail.
parts In order to fit Into the smaller memory. Both versions
will cost £9.95.
Also due from The Edge this month are Shao-Lln's Road,
an arcade conversion of the sequel to Yle Ar Kung Ful, and
The Artist II. The latter Is an upgraded version of the rather
nitty Artist, which was also programmed by Bo Jangeborg,
and Includes many new features such as pull down menus,
> * u (Mi i n *
icons, AMX and Kempston mouse control and tots more. As w;t cit j i truont
with Fairlight II, The Artist II will be available in 48K and 128K i tau
versions for £14.95 and £17.95. i i i t ; r « SKtarufc
>K tatt mr NCI

J • fhtuut
c * t*«rviiM

Codemasters
This little bunch of Darlings (Jim. David and Richard] are
collectively known as Code Master* which Is the name they've
given to their new budget software label. Jim Darling used to
work for Al Products who have provided many ol Maslerlronlc's
titles in the past, and his two sons have programmed a lew
games, such as the welt known The Last V8. Masters of Magic
and others.
Code Masters intends to release games as good as most
g P.! - f t / P s J » - ' ^ ^ ^ g f t j j g lull priced titles, but at a competitive £199. Their first Spectrum
titles include Vampire ('platform game with a difference").
Phantomas, a graphic adventure called Necris Dome, and
Terra-Incognita, the follow up to Mastertronic's odd game

$ Ci
Nonlerraqueous. Let's hope that those four get Code Masters
off to a good start.
if }w&
m ho

!
ShaoLin's Road

12
ZX Computing Monthly • November 1986
Opus meet the Plus 2 Spectrum Games Top Ten
Opus Supplies wish to time at the PCW show, a n d ) Trivial Pursuit Domark
a n n o u n c e that yes. the everything went tine. So Plus 2 1 (
Discovery disc drive is owners looking lor a disc system 2 ( ) Dan Dare Virgin
c o m p a t i b l e with the new a n d nol wanting to wait tor the ) Headcoach Addictive
Spectrum Plus Two. Risking rumoured Amstrad system need 3 (
potential egg-onface of mega look no (urther. 4 ( ) Paperboy Elite
proportions, Opus' John Harris Discovery cost £99,95 plus
tried out the new Spectrum 5 ( ) Dragons Lair Software Projects
VAT, a n d Opus c a n b e
when It went on show for the first conlacted on 0737-65080. 6 (2) Ghosts 'n Goblins Elite
7 ( ) Heartland Odin
Gratuitous violence 8 ( ) Xarq Electric Dreams
9 (4) Green Beret Imagine
That's our only excuse tor printing this picture ol judo fiend Brian
Jacks beating Ihe daylights out of his poor old dad. That a n d 10 ( ) Strike Force Harrier Mlrrorsott
the upcoming release of the judo simulation Uchi-Mata from
Marlech, on whose stand the two Jacks were demonstrating
a few throws at last month's PCW show. (Chart supplied by W.H. Smith)
We would like lo point out that ZX doesn't necessarily
condone the mugging of one's father, though you hove lo admit
lhat it's one way ol getting him to go out a n d buy you a new All c h a n g e at the top with some heavyweight releases
Spectrum Plus 2, this month. The question is c a n any game displace Trivial
Pursuit before it comes Into its own as the tailor made
software stocking filler?
Strong contenders for the Christmas No 1 spot yet to be
released include Gauntlet, (US Gold), Uridlum (Hewson) and
Trailblazer (Gremlin).

Now!
Virgin have just put together the
third in their Now Games series.
Now Games 3 is a compilation
of live games, including a
brand new Spectrum version ol
Sorcery which is available for
the first lima The other titles on
the tape are Nick Faldo Plays
The Open. Codename Mai II.
Everyone's A Watly, a n d the
three part Bond Game, A View
To A Kill. Now Games 3 should
be in Ihe shops as you read this,
a n d costs £9.95.

At last, Antiriad
Despite a few last minute hitches, Palace Software's newie. The
Sacred Armour of Antiriad should b e released this monlh. This
epic ol barbarians a n d nuclear holocaust has already been
previewed In ZX, so we wilt only a d d lhat the release dale is
23rd October, a n d the price £8.99.

Dan Malone; Antirlad's author,


hard at work on Ihe graphics
using a barbarian machine.

Editor: Bryan Ralph


Assistant Editor: Cliff Joseph
Consultant Editor: Ray Elder
Advertising Manager: John McGarry r
Design: Argus Design
P u n l i x i by AlabaMer Povsmaro a n d Son* Ltd, lovll. Maidstone. Item A5.P. Advertising and Editorial
A d v e r l l t o m o n l C o p y C o n l r o l o c A n d y Solwood J
No. 1 Golden Square, London W1R 3AB 01-437 0626
Distributed by Argu* Pie** Sales a n d Distribution Ltd. 12-19 Paul Street. London EC2A 4JS

ZX C o m p u t i n g Monthly it p u b l i s h e d o n the l o m i h Friday o l e a c h month. Subscription rofo* c n b e o b t a i n e d from ZX S u b * c r i p u o n i mionof. Timet House.
17V I h o Marlowe*, Hemal Hempstood, Herh HPS1 IBB CO
£
The content) o l Ihls p u b l i c a t i o n , i n c l u d i n g all article*, designs. plans* drawings a n d other intellectual property rights herein b e l o n g to Argus Specialist
Publication* Limited All right* conferred by Ihe Low of Copyright a n d other Intellocluot property rights a n d by virtue ol Inlernotlonal c o p y r i g h t convention*
a r e specifically ro*erved lo Argu* Specialist Publication* Limned a n d o n y r e p r o d u c t i o n require* Iho prior written consent of Iho c o m p a n y
Argut Specialist Publication* Limited 1986

12 ZX Computing Monthly • November 1986


Not tonight Josephine... Mantronix very professionally presented
a n d he gets the c h a n c e to see
the professionals at work with a
Is a new strategy game In which Napoleon Bonaparte attempts
winners visit to Probe as they work on Ihe
thealrework for a new release
to no. let's try that again. The winner of our Inlay design Mr D. Nichols Irom Holborn,
Napoleon At War Is the latest release trom wargames competition is 17 year old Ian E. Bennet trom London SW11. Jay
specialists CCS. Based upon the Battle ot Eylau the g a m e puts Macaulay from Dudley, who Sachania. Milton Keynes a n d
you In control ol French troops as they battle the opposing sent In an Impressive redesign David Rademaker from Genf,
(computer controlled] Russian and Prussian forces. CCS say that ol Probe Sollware's Mantronix Belgium win runners up prizes
the game otters a high level of artificial Intelligence, both in cover, lan's winning entry was of a copy of Mantronix.
the computer opponent a n d in suggesting alternative tactics
for your own forces, so II you're Info wargames Ihls Is your
chance to meet your Bakerloo for £8.95
Further strategic info from CCS on 01-858 0763.

Once bitten...
Twice Shy is the latest g a m e from Moslac based on Ihe Dick
Francis horse racing thriller of the same n a m e In It. you'll ptay Elite Classic
Winners
the part of teacher Jonathan Derry who finds some computer
tapes that are wanted by shady underworld figures, a n d It's up
to you to get the tapes back to their rightful owner.
Winners
The gome is being wrilen by The RamJam Corporation and Five winners carry ofl Ihe llrst fen Thirty ZX readers have booked
Is priced at £9.95. So If you fancy thrilling some race horses releases In the Elite Classics their trip to the wacky land of
Twice Shy seems like a good bet. range. They are Tommy Tay, enchantment, Muddle Earth by
Oberusel, West Germany, emerging Ihe victors In our
Jeffrey Ford. Etwall. Tony Pdrrit, Boggit competition. They will
Cleveland, Richard Haggis. each receive a copy of CRL's

Cruising
London N3 a n d Cleasie Ward, Monster Hit game a n d set off on
Software Spllsby. this spoof adventure to discover
the dreaded horrid squelchy
Microsphere, the sollware
house that brought you Skool
Pirates things a n d other beings that
Tolkien thought were too funny

Graphic
to include In the original.
Daze, have been quiet of late Ariolasoft offer you the chance
but are about to surface again 1o plan Ihe crime ol the century The squad ot winners are:

Adventure
with a detective mystery game In their new game. They Stole A H.H. Nellson, Galashields; P.
called Contact Sam Cruise. Million, in November. You are Gow, Normanton, Bretf Coles,
Milton Keynes: Miss E. Dron,
Creator
Sam Cruise is a private eye In put In charge of a group of
Ihe Bogart tradition with a small-time villains and, with the Sutton; Trevor Boyd. Belfast;
permanently lurned up collar. help of some blueprints a n d Geoffrey Priced, Pulborough; JL
Microsphere a r e k e e p i n g
shlumm about Ihe plot thus far
your handpicked henchman,
you can choose one of five
Winners Rlddell, Heme Bay; Richard
Grant. West Lothian; Lelf
but here's a screenshot to get 'targets' to rob a n d then you've Kornstaedt, Colommleres,
you Into that 'film noir' mood. got to find yourself a fence who ZX readers plumbed Ihe France; Javier Packer Coryn.
c a n lake the merchandise ofl depths of their Imaginations to Court St Ettienne. France; PR.
your hands. If this sounds like s u m m o n u p the o p e n i n g Ball. Brentwood; P.J. Nutter.
your sort ot thing, then beg. scenes of a new adventure and Catterick; A.L. McLellan. Paisley;
borrow or possibly steal £8.95 to the results showed some fine P.J.E. Williams, Fordingbridge; S.
get the goods from Ariolasoft. sparks of o r i g i n a l i t y . Ten Burnett, Tottenham; Mrs P.
winners get the chance of Barclay, Plymouth; Gregory
developing their ideas Into a Teeger, London NW6; Colin
finished product with MacKenzle, Fleel; D.J. Wagner,
Professional Incentive's Graphic Adventure
Creator. They are Pete Polnton,
London W3; Sean Weekes.
S a n d i a c r e ; Mark McEvllly,
Retouch Walsal; J o r g e n J a c o b s e n ,
Glostrup, Denmark; A.F. Motln,
Leeds; J.S. Russel, Fareham;
Birmingham; Phillip Hlscock,
Shepton Mallet; John Jones,
Lechlade; N.S. Collet. BFPO 34;
Pari of the listing In The Pro- Barry Carter, London E.2; D.M. N. Cashman, London E14; P
fessional Touch (September) Shannon, Co Antrim; W.J. Harrison, Appleby; R. Record,
was printed out ot sequence Stewart, N o t t i n g h a m ; Emll Clacton; David Watson.
The section of the listing C125 to G r u b e r , Graz, Austria; P. Barnsley; Dirk Vanderreyken,
C177 should be moved to the Newnham, Weston Super Mare; Heverlee, Belgium; Skancmlr
end of the listing. Roger Morton. Normanton. Kais, Myslavoklce. Poland.

12
ZX Computing Monthly • November 1986
fM COIIPUTER REPRIR
HOW TO CET YOUR
SPECTRUM REPAIRED FOR ONLY £19.95 COnPUTER SPARES
SPECIAL OFFER! SPECIAL OFFER!
wn» not upgf «3e your OfiHury Voeorijm mto
Ihf linUHic CHf TfOrtitl tvtwwfilrf ItiMVO
•of wiry £11 SO mcKjdiofl fitting VAT tna
return pent »na packing
k Hdtnmi recommended retail price
£49 95 Peplac»(TOnC cintw
- .,. . , . i\\ tMTrSmcSkey
-rKvjl. wluaftOlxmS

Update Your Rubber


Keyboard to a
New Spectrum+
Fitted for only £29.95 • £1.50
post 4 packing.
(Also D l.Y Kit available f o r only
£23.00 + £1.50 p & pl
Same day service

TEN • REPAIR SERVICE


While you wait service including » Five topgames w o r t h £55 OOfor you to
computer spare parts over the counter enjoy and play with every Spectrum repair
All computers fully overhauled and fully • we repair commodore M s vie 20 s
tested before return Commodore 16 sand Plus4 s
Fully insured for the return lourney • Themostuptodatetestequipment
Fixed low priceof £19.95 including post developed by us to fully test and find all
packing and VAT iNota between price faults within your computer
of really up to £ SO 00 wnicn some of our • Keyboard repairs Spectrum rubberkey
competitors are quoting) boards only £8.95
Discounts for schools and colleges • 3 month written guarantee on all repairs

BES T PRICES / /
ARE YOU ANOTHER CUSTOMER - fed up
waiting weeks for your estimate?
Need your computer repaired fast? Then send it now to the Number One Repair
Company In the U.K..or call inand see us at our fully equipped 2,500squarefoot workshop,
with all the latest test equipment available. You are more than welcome
we will repair your computer while vou wait and help you with any of your technical problems
Commodore computers repaired for only £55 00 Please note we gove you a 100S low fixed
price of £19 95 which includes return post and packing VAT not a between price tike some
other Repair companies offer we don't ask you to send a cheque in for the maximum amount
and shock you with repair bills £50 00 upwards We dont lust repair the fault and send your
computer back we give your computer a - SPECIAL OFFER!
Cun Snot • Htm I at joyiTKk i
mtteraceconicleteoutfit Scrm*i Spectrum replacement
OVERHAUL WITH EVERY REPAIR WE DO:- rrf < <r.""'iv)f<j rrui OfKrClttl *
pu/(tineotMftrie< IDKUIOHK power transformer
suitable for all makes
M<yvy£16 5&«t>uo«>ap*p
we correct Colour, sound, Keyboard. Check the loading and saving chip. Put new feet on wtiim AjiueK m upviit Kuril 0 95.of computer £9 95
ull memory, check all sockets including ear/mike and replace
the base if required check for full L PfuVMrJ <r jyj'ijt-r J . • i I plus £1 50 p i p
where needed Ail for an Inclusive price of £19.95 including VAT, all parts. Insurance and post
and packing No hidden extras whatsoever v;e don i have to boast too much about our Spectrum keyboard
service as we have thousands of customers from all over the world highly delighted with our
service A first class reputation for speed and accuracy. Don t forget we also now have a membranes
Service Branch in Manchester City Centre for while you wait service £5.50 plus £1.50 p & p
SPECTRUM SPARES COMMODORE SPARES Spectrum Plus spare
1830 CPU too keyboard membranes
6526 -CIA
dlt6l?jms 100
6510- Processor £12.90 plus£1.S0p&p

D.I.Y.
mtso essi-siacmp
060
TTiOtJ 0(0
906114-House x«ppf ZX 81 membranes
Powf f Supply T r arutormcrs 9 «
ULA6C001 90 t?3S-Graeme Rom
10 so £5.00plusd SOp&p
Rom 901 ?? 6 -flasicRom
16S0
CORNER KeyDO«d memwane
Spectrum
KcyBoif d mrrnw ane
901727-Hernai Rom
6569-VIC
we regret we cannot 4164 Rams-Memorv
Spec trum Pius membrane 1J90
show an the components wet Jl Templates Powor Supply
sso
available just give us a KeyDO.lf a M.US Transformers
S 50
call and we can quote you ?x8i memorarse uiourpncettiKiudevAT Buipteateada
soo
over the phone delivery Service Manual 11 W on each order to cover post
rsooo
by ist class post WCt H) and Handling c harge I
VIDEOVAULT HEALTH WARNING!!!
Senamg your computer to any other Repair Centre can seriously Damage its Heattn

Telephone: (STD 04574) 66555/67761 ClOSSOp


061 -236-0376 M a n c h e s t e r Branch
<C Copyright Videovault Ltd No 689001
COMPLIMENTS
MI'IUIM
Your c h a n c e to win a
complete word
processing set up from
£299-1-, that's £100 less t h a n the
Saga worth over £300. Amstrad word processor. But the
C o m p l i m e n t Is m a d e u p of characters per s e c o n d in LQM
h a r d w a r e that c a n b e used for a n d also features a n Epson
m a n y other uses — It's far more c o m p a t i b l e c h a r a c t e r set.
S a g a Systems has put together t h a n Just a word processor. Parallel printer I n t e r f a c e
a word processing p a c k a g e Saga +2 Keyboard
a i m e d at g i v i n g Spectrum The Prize Opus Discdrive
owners a v i a b l e alternative to Last W o r d S o f t w a r e
the temptations ol the Amstrad The C o m p l i m e n t consists of: Software Extentlon — includes
PCW8256. Known as the I Q Printer - prints 150 foreign c h a r a c t e r sets
C o m p l i m e n t If will b e selling at characters per s e c o n d a n d 25 Mallmerge

Compliment Competition
I I w o u l d like to w i n the S a g a C o m p l i m e n t b e c a u s e (in 50 words or
1 less) The competition
I In c o n j u n c t i o n with Saga, ZX is
g i v i n g o n e of its readers the
o p p o r t u n i t y to w i n a
C o m p l i m e n t system. All you have
to d o is give us In 50 words or
less your reason tor w a n t i n g to
win the S a g a C o m p l i m e n t .
The c o m p e t i t i o n Is o p e n to all
I readers of ZX e x c e p t e m p l o y e e s
of Argus Specialist publications,
j Name: Alabaster Passmore a n d S a g a
Systems. The editor's d e c i s i o n is
j Address: final a n d no c o r r e s p o n d e n c e
c a n b e e n t e r e d Into. The c l o s i n g
d a t e Is D e c e m b e r 5th 1986.
I Fill out the c o u p o n b e l o w a n d
post to C o m p l i m e n t
Post to C o m p l i m e n t C o m p e t i t i o n , ZX C o m p u t i n g Monthly, No 1 C o m p e t i t i o n , ZX C o m p u t i n g
G o l d e n Square, London W1R 3A& Monthly. No 1 G o l d e n Square,
London W1R 3AB.

12 ZX Computing Monthly • November 1986


DISK INTERFACE DUAL JOYSTICK PORTS
it Allows up to 1.6 Mb of storage on 2 drives * Sinclair and Kempston compatible.
-k Loads a full 48K program in 3.5 seconds NETWORKING
* Simple Basic Syntax , " .. • „ . . ,
• Compatible with any standard drive - single or double * Operat.ng system allows Disc.ple to act as f.le server:
density, single/double sided. 40/80 track 3 . 3V? , 5V,. | h a r e d a c c e s s to Pnnter a n d d,sc dr,ve ,or UPto 64
Spectrums
SNAPSHOT BUTTON * Interface 1 Compatible
-k Saves any program instantly - at any point you wish and ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^
as you
-
PRINTER INTERFACE W
it Compatible with the whole range of Centronics Parallel W
printers. W
it Uses normal Sinclair commands - ^
L COPY
it Permits user defined and screen graphics.

Use the disciple with any Spectrum - even the new Plus Two model.

thedlSCDPLE
the ultimate disk, printer, joystick and network controller for the Spectrum £73.70 (+VAT)
Designed by Miles Gordon Technology for Rockfort Products (a trading division of Vignesh Ltd)

To: Rocktort Products, 81 Church Road, London NW4 4DP


Please send me POST FREE (Quantity) DISCIPLE Interfaces
(<i C84.75 each, including VAT & P&P.
I enclose CHEQUE/POSTAL ORDER lor
For more information call us
on 01-203 0191 or visit our OR debit by ACCESS • or VISA • (tick as appropriate)
I
London showroom for a CARD NO
I
demonstration EXPIRY DATE.
SIGNATURE
NAME (Block Capitals).
ADDRESS
Postcode
Overseas orders and trade enquiries welcome. Telex 946240. Ref. 190-12450
Alan Davis begins a RPoland stood by the keep,
watching the folk of Greenways
drew his attention towards the
forest ot Greenways in the west,
three part series to gathering their crops from the
nearby fields. It had been a fine
whence a solitary rider was
approaching at great speed
create an original summer — one of the best he
could recall — and the Shirefolk
'What news, friend?" he
called, as the newcomer
fantasy wargame. were in good heart. There would dismounted and tethered his
be ample provision for Winter beast.
this year, and he was content. "Ill, my Lord." gasped the
Suddenly the excited shouts rider, gulping thankfully at a
and gestures of the villagers proffered draught of water. "I
w

come in all haste from the Darkness are mounted upon Roland needed no further
mountains ol Darkness, where guruks — great beasts from the persuasion.
great armies are gathering In far west, capable of carrying "Then all the Shires are In the
fearsome numbers!" many men over the most rugged gravest peril! Freemen of
Roland shook his head. terrain, at speed. Even water Is Greenways, rally to my banner
"Nay. trlend — we surely have no obstacle to them, for they are and prepare for war! We ride at
little to fear trom the Shire of mighty swimmers. Believe me. my once to warn Ranolt ol
Darkness. The mountains are Lord, I have seen these things Deepmeads..." And as Roland
Impassable. No army could with my own eyes but three days spoke, from the west came the
penetrate them and survive." ago. and even now Deepmeads faint but ominous sound of
"My Lord, the forces of and Northwood may have fallen!" thunder
the c o q r of t h e sbfRes
Don't worry — you haven't Now this Is g o o d news, b e c a u s e
of course it's very m u c h easier to
Maps a n d things
b o u g h t a r o l e - p l a y i n g fantasy
m a g a z i n e by mistake! This really e x p e r i m e n t with c h a n g e s in a This month, as you m i g h t hve
is ZXC Monthly, a n d w h a t you've BASIC p r o g r a m t h a n it is with g u e s s e d from the illustrations, is
just r e a d is the Introduction to a m a c h i n e c o d e . The final mostly a b o u t g r a p h i c s a n d
c o m p u t e r g a m e . I'd better requirements was merely that m a p s — specifically, the
explain... the g a m e s h o u l d b e fun to p l a y business of translating the
It a l l b e g a n with a bit of in its o w n right, regardless of a n y o r i g i n a l m a p of t h e Twelve Shires
d o o d l i n g , really. With p e n a n d further d e v e l o p m e n t s you m i g h t Into s o m e t h i n g that c a n b e
p a p e r to h a n d o n e m o r n i n g , I like to m a k e yourself In d u e r e a d i l y p r o g r a m m e d o n the
started sketching out a m a p of course. Spectrum. The S p e c t r u m u p p e r
a n i m a g i n a r y world, with So if, as I a m , you're a t t r a c t e d screen, as you know, consists of
n o t h i n g very p a r t i c u l a r in m i n d b y the I d e a of c r e a t i n g 22 rows of 32 c h a r a c t e r squares.
— not k n o w i n g where It m i g h t i m a g i n a r y worlds; or if you h a v e Suppose we let e a c h of these
l e a d , G r a d u a l l y the m a p took a taste for the "Lords of c h a r a c t e r squares represent o n e
shape, d i v i d i n g itself interestingly M i d n i g h t " t y p e of e p i c fantasy 'location* o n the m a p of the
into twelve Shires. Each Shire g a m e which can be played world, then. This will g i v e us 704
a c q u i r e d a keep a n d a over a n d a g a i n In different ways; locations to p l a y with — w h i c h
sprinkling of villages, a n d of or if you just f a n c y t a c k l i n g the s h o u l d give a m p l e s c o p e for our
course these in turn r e q u i r e d interesting p r o g r a m m i n g "mini-epic", a n d will e n a b l e us
inhabitants. So I started Inventing c h a l l e n g e s of a strategy g a m e to d i s p l a y the entire w o r l d m a p
some c h a r a c t e r s — thanes of the — why not Join m e for the next o n screen a t once.
Shires: Roland of Greenways, c o u p l e of months, a n d try w r i t i n g
But how s h o u l d w e store such
Ranolf of D e e p m e a d s , a n d so your o w n . . . . ?
a m a p in m e m o r y ? O n e m e t h o d
on.
w o u l d b e to d r a w it out on-
Now, s o m e o n e (GS. Lewis, I LISTING 1 screen, a n d then store the entire
think) o n c e c o m m e n t e d that M a p printing routine: screen as a c o d e b l o c k a b o v e
i m a g i n a r y worlds are a l l very Aisomblor program.
RAMTOP, c a l l i n g it u p as
well, but w h e n you've c r e a t e d r e q u i r e d d u r i n g t h e g a m e using
this interesting p l a c e a n d •HlSOFr GEHS3M2 iVjSI kIH.1 H •
ZX SPECTRUII a short LDIR-based m a c h i n e
p o p u l a t e d it with characters, c o d e routine. Well, if the m a p
Copyright fci Hisori 1903,4
s o m e t h i n g has to happen in it! It HI I r i g h t s r»5«rvcii were to r e m a i n u n c h a n g e d
was at a b o u t this stage that I 1 errors oo d u r i n g play, this w o u l d b e fine
b e g a n to realise that there were 10 »D* - but in "The War of the Shires" I
possibilities here for a c o m p u t e r 20 »C - w a n t e d c e r t a i n features of the
30 PRMHP
g a m e of the "fantasy-eplc- baooo 40 ORG 60000 m a p to b e a l t e r e d b y events.
w a r g a m e " variety, w h i c h m i g h t bBOOQ SO LO A.A
(Ships, for Instance, won't always
bOOO? SO CALL N 1 60 1
p r o v i d e some interesting 60005 70 CRLL H006B b e in the s a m e p l a c e , a n d
p r o g r a m m i n g e x a m p l e s (as well beoou 80 LO A.2
6001 0 90 CALL ulbOl keeps m a y b e r e d u c e d to
as a n e n t e r t a i n i n g g a m e ) for my 6001 3
6001 6
100
1 10
LO
LN
HL,(UARS
OE , 8 r u b b l e In battle.) I finally
friends the readers of ZXC — not <>UU 1 9 1 20 RUO HL , Ot d e c i d e d to store the m a p in a
to m e n t i o n myself! So I 60020 1 30 PUSH HL
60021 1 40 LO UL,704 BASIC c h a r a c t e r array, xS{22,32),
d i s c a r d e d the p e n a n d p a p e r , 6 00 4 ISO HUO HI. ,0E
60 025 I 60 EX Ot , HL so that e a c h c h a r a c t e r s q u a r e
p l u g g e d in the o l d Spectrum — 6002& 170 POP HL o n the screen c o u l d b e directly
a n d the eventual result was "THE 60027 100 STAAT LO 0 , 32
60029 1 90 LOOP LD ft, 16 r e l a t e d to a single e l e m e n t of
WAR OF THE SHIRES". 60031 200 RST 16
60032 210 LO A,1HL1 the array, for e a s e of
60033 220 LU 1CHRI,A
m a n i p u l a t i o n . Mountains, keeps,
60036 230 CALL COLOUR
60039 2 4 0
Building a world 60040 2SO
AST
LD
HS T 1 6
16
A,(CHRI a n d so on, c o u l d t h e n b e
60043 260 represented by UDGs o n screen,
60044 270 I HC 11L with the c o d e s for the UDGs
Right at the start, a n u m b e r ot G004S 200 OJHZ L OOP
60047 290 LD A,E b e i n g h e l d In the array.
decisions h a d to b e m a d e 6004 U 300 CP L
a b o u t the format of the g a m e . At 68049 310 JP H Z , 3 IHRT
So how d o w e a c t u a l l y get
60052 3 2 0 LD A,6
first I d i d briefly consider using a 60053 330 CP H the m a p onto the screen, with
60054 340 JP HZ.START
simplified form of l a n d s c a p e d 60057 350 14 L f e a c h UDG a p p e a r i n g in its
60050 3 6 0 COLOUR CP 144
graphics, but r e j e c t e d the i d e a 60060 370 JP Z,BLUE c o r r e c t colour? Well, it could b e
o n the g r o u n d s that the sheer 60063 380 CP 14 S d o n e in BASIC — b u t It's a
60065 390 JP Z,6AEEH
v o l u m e of g r a p h i c s d a t a w o u l d b006U 400 CP 146 painfully slow process w h i c h
60070 410 JP Z.CYAH
m a k e the p r o g r a m listings 60073 420 CP 147 w o u l d drive a n y p l a y e r of the
ridiculously long. However, there 60075 430 JP Z.GREEK g a m e to distraction (in play, the
60070 440 CP 1 48
s e e m e d to b e no reason why 6U08O 450 JP Z, RED g a m e involves a g o o d d e a l of
60083 460 CP 149
the o r i g i n a l " w o r l d m a p " itself 60005 470 JP Z.HAGE s w a p p i n g b e t w e e n the m a p a n d
c o u l d n t b e represented 60088 480 CP ISO the various text " p a g e s " d e a l i n g
60090 490 JP Z.CREEK
g r a p h i c a l l y — so I settled for 60093 500 CP 151 with battles a n d the like.) This,
60095 510 JP Z,GREEN
that. The next question 6 0 0 90 520 XOR fl then, must b e a m a c h i n e c o d e
c o n c e r n e d the a c t u a l 60099 530 HE T j o b — a n d the assembler
60100 540 BLUE LIT ft. 1
p r o g r a m m i n g , w h i c h , ideally, 60102 550 ALT p r o g r a m in Listing 1 will d o if for
60103 560 RED LO ft,2
s h o u l d b e sufficiently flexible tor 60105 570 AET us. It's a very s i m p l e routine
others to m o d i f y a n d a d d 60106 sou MAGE LD A, 3
60100 590 AET w h i c h assumes that the a r r a y
d e v e l o p m e n t s of their own. I 60109 600 6REEH LD xS(22,32) is stored at t h e
6 0 111 btO AET
c o u l d see from the start that 601 12 620 CYRII LD ft, 5 beginning of he BASIC v a r i a b l e s
601 14 6 3 0 RE (
some m a c h i n e c o d e 60 I 1 S 6 4 0 CHR OTIH 0 a r e a , a n d is simply prints the 704
programming would be 23627 650 •SAMS EDU 23627 c h a r a c t e r s c o n t a i n e d in the
necessary to prevent p o n d e r o u s P 4 S S 2 errors oo a r r a y in the a p p r o p r i a t e INK o n
response times, but I was IlLUt ERC4 CHR EA03 white PAPER. I must e m p h a s i s e
surprised to discover that in COLOUR Efl'HI CVrtrl EHOO that the routine won't work if the
GREEH EftCU LOOP EH70
practise only two m a c h i n e c o d e IIAGE EACH PRHRP 87f 4 a r r a y x$0 isn't at the start of the
RED ERC7 START EH7B
routines were strictly necessary, "HH'j SC4H v a r i a b l e s a r e a . This m e a n s that
a n d that BASIC was perfectly T 4 b t r used 137 rron 194 either the a r r a y must b e
a d e q u a t e for everything else. d i m e n s i o n e d before a n y other

12 ZX Computing Monthly • November 1986


prints continuously downwards Now for the m o m e n t of truth.
LISTING 2 from the current PRINT position,
BASIC p r o g r a m to g e n e r a t e m a c h i n e Somehow, we n e e d to get the
c o d e b l o c k a n d udg*s.
whereas the previous routine d a t a for 704 locations into our
p r o d u c e d a scrolling display. It's m a p array — a n d if I were to
convenient to have both the present you with a list of 704
I REM . o . n m . O ' t o . d K H
li.ich i nr c a d e a n d U O G s m a p a n d text printing routines numbers to type in. you wouldn't
10 C L E A R 5 9 9 9 9 : LET S > 0 stored on t a p e as a single c o d e b e very pleased, w o u l d you?
2 U F O R l a b O O O O TO 6 0 1 1 4
30 HERO X LET S = S » » P O K E i.X
b l o c k (saved as "PRINT* CODE Can't say I'd b l a m e you! Let's
40 HEXT I 60000,370) - w h i c h is why I've m a k e ourselves a m a p e d i t i n g
t>» FUR l e b O P O O TO 6 0 3 6 6
(.0 H E R D X LET s » 6 t * P O K E i.X given them together now even p r o g r a m instead. Type In Listing
7 0 HE X T i
uo r a n . =6B3CU TO 6 5 4 5 5
t h o u g h we won't b e using the 3, save it to t a p e with SAVE
9 0 R E A D x: LET S = S * X : P O K E i,X text printing routine unlil next "MAP EDITOR" LINE 1, a n d then
100 H E X T 4
lilt IF S 0 4 6 P 4 5 T H E N PfllHT RT 1 month. The c a l l addresses, by stop the t a p e in that position
0, I 2 i " E R R O R " I I STOP
1 ;><t PRIHT RT 1 0 . 7 ; " SRt1 IMC M R C H I
the way, are USR 60000 a n d USR a n d put it to o n e side. Enter
HE C O D E " 60200 respectively. CLEAR 59999 as a direct
130 SRUE ~ P R I H T " C O O E 6 0 0 0 0 , 3 7 0
140 C L S PR I H T HI 1(1, 1 1 ; " S R U 1 H c o m m a n d , a n d l o a d in the two
UDGs
G UOGS"
150 SH"E " U O C S - C O O E 6 5 3 6 8 , 8 8 c o d e blocks you saved from
300 Oil T II 6 2 , 2 , P U S , I , 2 2 , 2 0 5 , 1 0 7 ,
11,61.2 Listing 2 thus: LOAD "PRINT"
20 1 D R T H 2 0 5 , 1 , 2 2 , 4 2 , 7 5 , 9 2 , 1 7 , B
The last chunk of d a t a in Listing CODE: LOAD "UDGS" CODE
,0.25
2 6 ? URTlt 2 2 9 , 1 7 , 1 9 2 , 2 , 2 5 , 2 3 5 , 2 2 2 defines the UDGs required for Now r e p l a c e the editor t a p e
6,6,32,62
2 0 3 DRTR 16,215,126,SO,211,234, the g a m e a n d SAVE "PRINT" CODE
205,154.234,215
The p r o g r a m wilt save these 60000,370: SAVE "UDGS" CODE
204 DRTR 5 0 , 2 1 1 , 2 3 4 , 2 1 5 , 3 5 , 1 6 , 2
3ft,123.109,194
as separate c o d e b l o c k 65368,88. (They must b e saved in
2 0 5 OH T R 1 2 3 , 2 3 4 , 1 2 2 , 10S.,194,12
3.234.201,254,144 ("UDGS" CODE 65368,88). You this order). Rewind the tape, type
>06 DATA 2 « 2 , 1 9 6 , 2 3 4 , 2 5 4 , 1 4 5 , 2 0
should note that the m a p LOAD a n d wait for the m e n u
2,205,234,254,146
>07 OATH 2 0 2 . 2 0 0 , 2 3 4 , 2 5 4 , 1 4 7 , 2 0
printing routine will print the to a p p e a r .
2, 2 0 5 ,2 3 4 , 2 5 4 , 1 4 0
>08 OATH 202,199,234,2S4,149,20
2.202,234,254,ISO
correct colours tor the g r a p h i c s At the t o p of the screen you'll
> 0 9 OR IH 2 0 2 , 2 0 5 , 2 3 4 , 2 5 4 , 1 5 1 , 2 0 characters only as I've d e f i n e d see the various UDG shapes
2.205 ,234,175,201
210 ORTR 6 2 . 1 , 2 0 1 , 6 2 . 2 , 2 0 1 , 6 2 , 3 them in figure 1. presented for ease of reference
,201,62
211 O R T R 4 , 2 0 1 , 6 2 , 5 . 2 0 1
300 0R1R 4 2 , 7 5 , 9 2 . 1 2 6 , 2 5 4 , 9 0 , 2 0
2,56,235.205 Figure 1. C o d e * tor the m a p ' i g r a p h i c
"|0I O R l A 1 8 4 , 2 5 , 2 3 5 , 1 9 5 , 4 3 , 2 3 5 .
35.126,50,203 characters.
3 0 2 OfiTA 2 3 5 , 3 5 , 3 5 , 3 4 , 2 0 5 , 2 3 5 . 2
06.127,235,254
3 0 3 ORTR 1,202,181,235,205,146, CHRS CODE SHAPE COLOUR
235,205,101.235
3U4 ORTR 4 2 , 2 0 5 , 2 3 5 , 2 3 7 , 9 1 , 2 0 4 , 144 Mountain Blue
235,23.0,25
305 ORTR 3 4 , 2 0 5 , 2 3 5 , 6 8 , 2 0 4 , 2 3 5 , 145 Downs Green
71.58,203,235
30b O R T R 1 4 4 , 5 0 , 2 0 3 , 2 3 5 , 4 2 , 2 0 5 , 146 Water Cyan
235.12b,254,32 147 Woodland Green
307 ORTR 1 <»4 , 6 6 , 2 3 6 , 3 5 , 3 4 , 2 0 5 , 2
35,58,203,235 148 Village Red
308 DHIR 6 1 , 5 0 , 2 0 3 , 2 3 5 , 1 9 5 , 1 0 4 ,
235.50.203.235 149 Keep Magenta
3 0 9 OR TR 2 6 4 , 3 3 , 2 1 8 , 1 3 7 , 2 3 6 , 175 150 Meadows Green
,201,58.203,235
310 DHTR 5 0 , 2 0 4 , 2 3 5 , 6 2 , 1 , 2 0 1 , 4 2 151 Pine forest Green
,205,235.17
311 DR t R 3 1 , 0 , 2 5 , 1 2 6 , 2 5 4 , 3 1 , 2 1 0 152 Ship Black
, 165,235.19
312 DRTR 1 2 3 , 6 0 , 2 0 4 , 2 3 5 , 2 0 I,35,
153 (Plain) —

126,254.32,194 154 Army Black


313 DATA 175,235,195,159,235,27
,43,43.195.153
314 O R T R 2 3 5 , 6 2 , 2 , 2 0 5 , 1 , 2 2 , 2 3 7 ,
91,205,235
3)5 DRTR 2 3 7 , 7 5 , 2 0 4 , 2 3 5 , 6 , 0 . 2 0 5
,60,32.62 There's no reason at all why — except that the "Army"
76
3 I L ORTR 13,215,201,24,24,119,1 you shouldn't c h a n g e the g r a p h i c will b e missing since
4 0 0 OH TR 1 6 , 2 4 , 6 0 , 5 2 , 1 1 8 , 1 1 4 , 2 4 shapes themselves using your this doesn't form a p e r m a n e n t
2, I 0 5 . 0 . 0
401 O R T R 0 , 5 6 , 1 1 6 , 2 4 2 , 5 6 , 0 , 0 , 1 0 favourite UDG designer. If you part of the map. Ignore options 1
2,153.0
402 6RTR 0 , 1 0 2 , 1 5 3 , 0 . 0 , 4 8 , 1 0 8 , 5
wish. But you mustnt. at this a n d 2 for the present, a n d select
8,I10,124 stage, c h a n g e their meaning, or o p t i o n 3: "Edit map". You'll b e
403 ORTR 3 6 , 0 , 0 , 0 , 2 4 , 6 0 , 1 2 6 . 5 2 ,
52.0 their order i f you're to a v o i d g r e e t e d by a blank screen
4 04 ORTR 0 , 2 1 9 , 2 5 6 , 9 0 , 1 2 6 , 1 0 2 , 2
31,0,0,68
g e t t i n g Into a terrible mess later c o n t a i n i n g a white cursor
405 DMTA 0 , 4 0 , 2 , 0 , 8 0 , 0 , 0 , 1 6 , 5 6 , on! CHRS 144 (or GRAPHICS square, with brief instructions
16
406 D R I R 5 6 , 1 2 4 , 1 6 , 0 , 2 2 , 2 8 , 6 0 , I SHIFT/A,, if you prefer) must b e a d i s p l a y e d o n the b o t t o m two
2 4 , 2 5 4 , 16
407 ORTR 2 1 5 , 1 2 6 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , mountain, a n d so on. lines. Try m o v i n g the cursor
O
408 OR T H 0,252,124,4,4,05,85,25
5 LISTING 3
Tho m a p editor BASIC p r o g r a m .
variables are assigned, or the I Rll 8 0 IHK PAPER 8 P R I H I OR I GIL
variables area must first b e MflP E D tI OH T I,RI y , x , O U E R 1; PAUSE 0
»**»»*t*»t*»tt»»l***4*»
CLEARed before l o a d i n g the LET if • I H K E V t
9 0 IF i f s ' q " T H E H G O TO 20
array from t a p e Into a BASIC 5 or r F N i(XI • ( X • 1 4 4 I *(2 R H O
X - 1 4 0 M I 3 HHO X * 1 4 9 l » ( 4 RHO < X » I 0
100 IT it:CHIIt 13 T H E H CO TO 2 0
program. 4 5 OR X a 14 7 OR X * 150 OR X > I 6 ! ) 1 + 110 IF i « * C H R l 12 THEH P R 1 H T RT
45 H H O X•I 4 6 I g,xi- - LET x»iy*I,x«11 G
Listing 2 will POKE In the 10 B O R D E R 6 CLEHR 59999 LORD O TO 8 0
,M
necessary bytes for the m a p "PRINT"CODE
0 1H it 1 2 2 , 3 2 1
LOHU "UOGS"COOE IPO P RKIiHmT u
1,'V
I," "
B RmIvGnHiT l>, A T« yv,.t
,x
LEI X = X - ( 1 | 1 " S " R H O X J 0 I
OULR

printing routine from BASIC — 20 CLS I'M I H I RT 10, 11, " H H P H


HKt H" , R T 1 3 , 1 1 1 / 1 Luad njp",RI
• C i » e " 8 " R H O X 1 3 1 I . LET y > y - ( i t «
"/" RHD 9 > 0 1 • I • R H D y<21)
but it also contains two other l5,lllj"P n.ip" i RT 1 7 , 1 0 , " 3 CO TO 8 0
Important c o d e blocks. The first E d i t n.lp"
2 5 P R I H T HI 1 , 1 4 , " U D C S " j H T 3 , 0
2 0 0 CO S U B 1 0 1 0
,R T 9 . x ; O D E R 1;" "
PRIHT BniGHT 1

of these "extras" is a m a c h i n e >••<1 II C U E I C II 1" i R T 4 , 6 )


R i - 1 4 4 TO 152; PIIIHT IHK IH ill
VO 2 1 0 P R i H T RT U , X ; F L H S H I. O U E R
1," " PRUSE 5 LET iI • IHKt Vt
c o d e roullne for printing text IjCHDl i " i : HtXI i IF i t c i " OR i « > " » " THEH QO T6 2
h e l d In the BASIC v a r i a b l e zS, in 3 0 P R I H T H I , 0 R 1 G H I 1 , RT 0 , 9 , "
S E L E C T OP T 1 OH : PR 1151 0 LET It-
to _
2 2 0 LET i f i C H R l ( 4 7 + C O D E i f ) : P
.

such a way lhat words are not IHKt Y t IF l H K E Y t < " t " OR 1 HKt: V t > R I H T RT g, X, IHK F"H i ( C 0 0 E i f > ,
" 3 " IIII. H C D 10 30 I LASH 0 , 1 * LET X % ( I , X•1 I• t *
broken at the ends of lines. 1 4 0 IF l * » " l " I HE H C L t R H : L O H O CO SUB 1 O D D CO Tli 80
haven't given the assembly " M A P " O A T R Kill
"Loading conp feted."
P R I H T RT 1 0 , 4 ,
PAUSE 50
1000 P R I H T Bt; BR IGHI I,HI 0 . 0 ,
P R P E R 6 , - 5 , 6 . 7 . 8 = H o w e c u r s o r "j
l a n g u a g e p r o g r a m for this, since C O TO 2 0
5 6 IF « » - " » " T H E H C L S SAUE "
P A P E R 7,"
l e t * "i
9= Q u i t " C S / 0 « Or
P A P E R 5 ; " E H T E R = Rdd 9 r 4
It's very similar to a routine I MflP" OR t R K f <I : P R I H T Rt I 8 , 4 , " S phic": RETURH
g a v e in the May 1986 issue of .IV i ng O O n p l f l f d . " : P R O S E 5 0
TO 2 0
GO 1 0 1 0 P R I H T CI; B R I G H T l.Hl 0 . 0 , "
P r e s s the a p p r o p r i a t e letter r o r
ZXC The only important It
6 0 L E T x » 15 : LET g • I 0
USR bOUUQ CO S U B 1 0 0 0
ARHDOMI t h e g r a p h i c g o u w i s h to add h e r *
RtIURH
difference is that this routine

12 ZX Computing Monthly • November 1986


t h ? e o x i R o £ t h ? e s t e t e e s

s q u a r e a r o u n d u s i n g keys 5,6,7.
a n d 8. OK?
Fine — now press ENTER, a n d
Ihe cursor will start flashing,
FIGURE 2 r e a d y tor y o u to insert a g r a p h i c
The on-scroen m a p of tho 12 shires. c h a r a c t e r . Press a letter key
b e t w e e n " a " a n d "I" Inclusive,
a n d the c o r r e s p o n d i n g g r a p h i c
^ M M A M M M A c h a r a c t e r will a p p e a r at the
» cursor position o n t h e screen, In
M * f r * * • f A the c o r r e c t colour. Finally, try
A A * f t ftft ft* p a s s i n g CAPS SHIFT/O to d e l e t e It.
M * w * ftft *
* * A # f?JtV Going to war
* * * * tt&ftiv'ftftftft
* * Now that you're t h e p r o u d
possessor of a m a p editor, you're
In a position to b u i l d u p the
ft ft* 4 : : • : • / f t ft m a p tor "War ot the Shires".
* * * * A--'::-** Figure 2 shows you w h a t the
m a p s h o u l d look like at Ihe e n d
* * M A A (except that yours will b e
c o l o u r e d , o n screen), a n d Figure
* A A • 3 shows you w h i c h keys you
A * • n e e d to pressat e a c h cursor
ft* « position, the b l a n k spaces, by
the way. r e q u i r e n o a c t i o n o n
your part; just l e a v e t h e m b l a n k .
At a n y s t a g e you c a n return to
the m a i n m e n u b y pressing "q",
a a a wiv-ft.' subsequently s a v i n g t h e m a p
a r r a y to t a p e using o p t i o n 2. At
the start of a n o t h e r session you
A A A A A A A A A A A M c a n l o a d in a p a r t l y c o m p l e t e d
m a p using o p t i o n 1, a n d t h e n
c a r r y o n w h e r e y o u left oft. G o
on, a d m i t it — ths Is a lot m o r e
fun t h a n t y p i n g in 704 numbers,
isn't it!
To a c e r t a i n extent y o u don't
n e e d to k e e p r i g i d l y to Figures 2
a n d 3 — you c a n shift forests,
hills, m e a d o w s a n d v i l l a g e s
a r o u n d as m u c h as y o u like,
FIGURE 3 really. However, d o p l e a s e c h e c k
Guide to key presses for m a p editor.
the positions of the keeps very
c a r e f u l l y (look for the letter "F" in
ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft ft M ft Figure 3). The k e e p s must b e in
ftFEBBftftftfiftft EEFftftODODL) ftftftft ftftft p r e c i s e l y t h e l o c a t i o n s shown in
ftEBBB ft ftftft ftftDb o n ftft r hft the Figures, a n d there must b e
12 ot t h e m . M o u n t a i n s will limit
ft B B 6 B ft ft H ft ftftDO EE 0 0 ftft E Eft
the m o v e m e n t of a r m i e s in the
ft B ftft ft ft ft D F D EE 0 ft ftftftft final g a m e , a n d so you s h o u l d
ft H ft Hh ft flDODDD 0 Oft ftft ftft m a k e sure that every l o c a t i o n at
ftfthH MHHHH • D O G 0 0 0 0 ftfift ft the e d g e s of t h e m a p c o n t a i n s
ftEHHHHHHE EHHG 0 0 GG ft ft H H H ftft a m o u n t a i n . Y o u d also b e well
a d v i s e d to a v o i d m a k i n g
ftftft HH H F H G G G G G G G H ft ft H ft H H H i1 ft ft ft c h a n g e s to the r e g i o n
ftftftft HHE E H H G G G G E E ft H ft ft 0 ft ft ft H H H ft ft s u r r o u n d i n g the k e e p of
ftftftftft HHKHH ftGGEE HftCCCCCflftHHFft Darkness o n the western e d g e ot
ft ftftftft H H h ft ft ft G G ftftCCC ICCftftftftft t h e m a p (say within seven or
e i g h t l o c a t i o n s from the keep)
ft F ftft B ftft G B f t f t C C E CCCCCftft
for reasons w h i c h will b e obvious
ft ftftftft B ftft B B ftftCC F CCCCCft later on. Also, m a k e sure that at
ftftftftftft GG ftB 6 B fiCCC CCCftCCft least o n e ship is a c c e s s i b l e from
ftftftftft G 0 0 B ftftCCCCCftftCCft t h e m a i n l a n d at the start, or your
CO ft ft B ft ft G 0 0 0 G GG ftftftCCftftCCCft a r m i e s will b e left h i g h a n d dry!
Ul Within these limits, there's no
ftBBBB GDOOOGGGEGG ftftftftftCCCftft reason why you shouldn't b u i l d
s ABB EBftftGOOOGGEGGGG ftftftftCCftftftft u p a small library of m a p arrays
< ftB F BBftftOOO F G E G G G f t ftft CCCCftEEft for use with the g a m e .
ftEE E B ft ft ft ft 0 GGG ftft F l f t f t C I F E B
0 ftftftftft ftftftftftft ftftftftftftftft ftftftft ft ft ftft ftftftft ft
Keep t h e m a c h i n e c o d e
bytes, t h e UDGs. a n d your
tt c o m p l e t e d m a p a r r a y safely o n
t a p e — they're a l l vital. Till next

1 month, w h e n the a c t i o n starts,


happy map-making

12 ZX Computing Monthly • November 1986


:
I:R©SSIIHI;
The elusive 128 Keypad tracked down at last a n d a chance for you to nominate
your choice in our quest to find The Greatest Unfinished Game of all time.

Keypad not required necessary at alll All of the keypad


are already on the Standard
keys
Spectrum
instance, the symbol
CURSOR DOWN TO END OF PROGRAM)
(which means

128 keyboard, although in rather is accompanied by the letter T in a

In Ihe June issue of ZX


peculiar
accompanying
positions. The diagram
this letter shows exactly E reen square, and the letter V in a
lack square. A glance at the key will
S3 Computing
program
there
I wrote
was
tor
a
a
where these new keys are. All of the
symbols from the keypad are visible In
tell you thai a green square
EXTEND MODE FOLLOWED BY. therefore,
means

machine code Interrupt routine which the diagram, and by each symbol is a pressing EXTEND MODE followed by T will
put all of Ihe new keys from the not yet coloured square containing a letter or move trie cursor down to the end of the
available plug-In keypad for the number (or In one case DELETE). The program. Similarly, since a black
Spectrum 128 in sensible positions on colours tell you which combination of square means GRAPHIC MODE, it follows
the Spectrum 128 keyboard. shift key and extend mode is required that pressing GRAPH followed by V
An interrupt routine, however, is not with the letter or number In question. For (followed by GRAPH again to exit
graphic mode) will have the same
effect.
Start to finish it you wish to make use ot the new
editing keys, but can t be bothered to
load in and set up an Interrupt routine
When it comes to games amnesty on games and adventure program each time you switch the
software is It a case of many playing and readers are Invited to point machine on. just cut the diagram out
are played but tew are the linger at those gomes which have ol Ihe magazine (or re-do your own
finished? In the world of books there are frustrated them most. Fill in the coupon copy) and stick it somewhere near your
"unread classics", tomes that sit proudly below and from your responses we will Spectrum 128 so thai you can refer to
on the owners' shelves but are never be able to Identify the most unfinished it whenever your Speccy is in use.
looked at. Are there games which have game and adventure of all time. Any Of course, perfectionists who don't
totally bamboozled you and been left additional comments on games like Ihe Idea ot having editing keys all
halfway through or adventures that playing are welcome and will form the over the place with strange
have left you totally stumped and basis ot an article in a future ZX. Please combinations ot shifts, would probably
languish somewhere at the back ot a send your nominations by December prefer to use the interrupt program,
cupboard? 5th 1986. Senders ot the first 10 coupons since that locates all of the new keys in
Here at ZX we are announcing an drawn out of the hat will win a prize sensible positions (on the cursor keys in
con/unction with TRU VID and INV VID)
so you don't need a table to remember
Great Unfinished Game Quest everthing.
Toni Baker.
My n o m i n a t i o n s (or the G r e a t Unfinished G a m e are

1 E3
(9
2
0
My n o m i n a t i o n s for the Great Unfinished Adventure a r e W
1 ] Q[2
2
w
m
What p r o p o r t i o n of g a m e s a n d adventures that you b u y d o y o u p l a y 00
m
right the w a y t h r o u g h to the bitter e n d ?

Name E)lglI]SH^©«<>BMBISiG]
Address to
• • ItMXJt wa>T oc
• •UHlnMi pull 111
l»I OOOf FOL
l OMIO o
• <
MOc

1*1 HOCK IONMIT>»T
Send to Great Unfinished G a m e Quest, ZX C o m p u t i n g Monthly. 1 G o l d e n IIIHIIH ITUKH B<IT I
Square, London W1R 3AB. ounwM

12 ZX Computing Monthly • November 1986


This month wo really have a variety
ol obscure enquiries a n d due to their
unusual nature, such as the operating
commands ol an ancient disk drive
CR VIRES
Interlace or the special commands of
the American TS computer, we hope
lhat p e r h a p s YOU c a n h e l p our
desperate readers...
Ray Elder tackles more readers' technical problems.
Dear Sir.
1 have the following question mochlne tor us to work with a n d so we Dear Sir,
• ^ • to ask, I recently bought a really know very little about II. I own a ZX Spectrum 128K.
M Viscount disk drive Interlace BUT. we have many readers In the When using It (programming
lor my Spectrum at a sale In a local USA a n d perhaps one may help us. The or game playing) I gel flickers
computer shop Characters which cause the confusion ol Interference across my television
But they didn't have a manual to go are a curly bracket a n d a copyright screen.
with it and they didn't know how or IIII sign which occur after a full colon. The flickers last only an instant and
worked. I bought II anyway as it cost me You could try simply deleting them come every seven seconds. They
only 10 guilders (about 2 pounds) but a n d hope that they are something appear as silvery lines and In no
now I am trying to find out what unimportant such as sound commands. continual place. As they are very
commands to use with It. If you rerun your computer then you'll distracting could you please tell me if
It seems to work all right, II didn't soon find out! this Is normal and If not Is It my
wreck my Spectrum when 1 connected I would suggest that you try this a n d computer or my television that is al fault.
II and gave me a message on p e r h a p s a d a a line 2185 LPRINT Yours Sincerely.
powering up The message was '(c) 1983 CHR$(0);CHR$(4);CHR$(13) Richard Finch, Southampton.
by Marconics Ltd." This is the interface initialisation

H
A friend of mine tried to find out what commands a n d In that line It should set Probably neither.
commands to use by reading the It up ready for the programs use. A
contents of the eprom ot the interface s t r a i g h t f o r w a r d COPY c o m m a n d
but couldn't work It out. replacing one ol the print routines This sounds like a case of
So I hope you can supply me with could solve the problem. interference from some other
the commands or an address ol Without my having Ihe software 1o try piece of electrical equipment. It could
Marconics Ltd. oul I'm afraid lhat you'll just have to be that the computer Is too close to
PS. I enjoy your magazine very much. experiment... your TV or that the PSU a n d the
Yours faithfully computer or the TV are Interfering with
Daniel Mullet. Haerlem. The e a c h olher.
Netherlands. Try moving e a c h unit to different
positions, but In the e n d I strongly
I a m alraid that the Viscount suspect that another TV or a Cooker,
was |ust a b o u t the least Video. Fridge etc. Is causing the
Dear Sir,
popular of all the Spectrum problem. The only sure way Is to turn
I wonder whether you can
Disk units, but at two q u i d you've got a everything oil a n d just have your
help me. I have a ZX
bargain! computer a n d TV on. Then again, a
Spectrum + and an Alpha
We have no address for Marconics neighbour's unit might be the source of
com 32 printer. All very satisfactory until
they seem to have disappeared, bul If the problem.
recently I purchased, after reading an
any of our readers owned such a beast Oflen one ot the special suppressing
article in ZX Computing by John Wase,
a n d would send us the operating plugs will cure or help allievlate the
a Discovery I disk drive.
details we would be only too pleased problem. It's a case of trial a n d error yel
to forward them to you. again!
I immediately started having
problems and found that these oniy
occurred when the printer was
plugged In. I w a s unable to load
Dear Sir, commercial tapes even from tape and

Q
Last month I read an article could nol convert Tasword II as advised
about a brilliant program sold at the end ot the Tasword manual. The
In America similar to the command LOAD'CODE would just ot A very helpful letler was received on
CARD DESIGNER tor the Commodore 64, be accepted. Without the printer all the topic of the Opus a n d Printers from
called "Greeting card designer" (or the worked as It should. Mr. Turner of Hull, it reads:
TS2068 BY ZEBRA systems, Woodhaven. I wrote to Opus before I discovered
New York, which I sent lor and back about the printer and they just advised Dear Sir,
came Ihe program with a catalogue me to buy multiface 1. I have written Reference Janet Watson's
full of goodies or so I thought. again since bul so tar they have not Suery in August edition of ZX
I w a s told the Timex 2068 computer been able to help omputing. I too have Ihe
was the same as the SPECTRUM 48K. I have also telephoned Dean Opus Discovery and Brother M1009
however alter the program loads I electronics to ask If they knew ot any printer and also experienced problems
come up against two problems The first reason of the apparent incompatibility. using Tasword 2. After hours ot work I
Is there are some different characters in They have supplied me with a diagram finally contacted Tasman Software Ltd.
the listing that my Spectrum doesn't of the pin connections to the plug but They were most helpful.
understand (enclosed Is an extract ol this is not a lot ot help The answer is Discovery will accept
the listing), the second problem is that Thanking you in anticipation. Ihe mlcrodrive version provided the
the program doesn't allow for the use Yours faithfully, following alterations are made to the
of my interface, only AERCO, TASMAN B. RJ. Lawman, Cardiff. basic program.
TASMAN C and AfkJ Is there any way I
o can convert the program
my set up I have a SPECTRUM 48K+. "ZX
to work with This has been a problem ADD LINES
6 CLOSE « 3
which arose after A l p h a c o m
8 OPEN It 3,'B"
2 LPRINT f i r Interface and a "EPSON LX-80"
printer.
h a d been supplying their
printer for some time. It Is simply not DELETE LINES 279 AND 281.
Your assistance in making this compatible wilh some peripherals a n d This Is because the Discovery will not
program work for me would be more unfortunately the Discovery is one of accept FORMAT "b'.'X Where X is the
than appreciated. them! baud rate
Yours sincerely The only real advice I c a n give you Printing may be stopped as normal
RA. Williams, BFP029. is 1o buy a Centronics type full spec by pressing and holding tj'but if BREAK
printer such as the GLP 2 or the Shlnwa Is used then you must restart by
I a m afraid that there are CP80. executing GO TO 6 or you will lose Ihe
0 several differences w h i c h
make the USA computer a n d
I know it will set you back around
£100-£200, but if you Intend using your
text. You will also have to start to print
from the beginning again.
the Spectrum incompatible Timex were computer for serious text output them Yours Faithfully,
01 rather unhelpful in supplying a TS you will never regret it. T.W. Turner

12 ZX Computing Monthly • November 1986


M H

L JL. • _

1., ——* a J

mm
mil in
•XI Ml

D ,

I A

W
RAF PILOT

"I JUST COULDN'T BELIEVE HOW MUCH THERE WAS IN IT" zza™ AV

•i1 i
cojcodc "ACE IS ONE OF THE BEST SIMULATORS I HAVE EVER PLAYED -M
t i H t i i r
"THERE ARE FLIGHT SIMULATORS AND THERE ARE FLIGHT
SIMULATORS - AND THEN THERE'S ACE'
CASCAOE GAMES HO COMPUTER AND VIDEOGAMES
HASROGATE HG1SKI,
ENGLAND
TR ^ t t i W ! SCRMN I^OTI O<» TOLEN FROMTHR C* CI4 .CMON
The

Machine
Ray Elder enthuses patterns to b e c r e a t e d bar by interesting, or g o to the " p i a n o "
screen a n d p l a y It b a c k over a
b a r a n d l i n k e d together to form
about the potential of a c o m p l e t e song. 12 note, o n e o c t a v e r a n g e rising
from m i d d l e C
A very versatile unit the
Ram's new q u a l i t y a n d flexibility of w h i c h is
e q u a l to t h e £250+ Y a m a h a
O n c e you h a v e e x h a u s t e d the
novelty of that t h e n y o u c a n use
comprehensive musical d e d i c a t e d RX21 that I use. O n
the plus side is the fact that
the tune s e q u e n c e r a n d p l a y it
over a m u c h e x t e n d e d three
add-on. e a c h b a r c a n b e set to
i n d i v i d u a l tempos, not feasible
o c t a v e r a n g e a n d In two parts. It
is here that s o m e of t h e
with the RX. But there is a real limitations of a n Inexpensive unit
t i m e p l a y m o d e w h e r e your
The Music Machine fingers c a n a t t e m p t to m i m i c
m a y b e c o m e a u d i b l e , the
sustain effect is p l a y e d b y a very
Ram Electronics B u d d y Rich. O n the minus side Is fast s t a c c a t o r e p e a t a n d it c a n
£49.95 there is n o "real time" pattern b e h e a r d as such, also the tone
c o n s t r u c t i n g a n d only two Toms, m a y b e c o m e u n p l e a s a n t in the
the RX has three. However the extremes of the range. A
" • " h i s smallish uninteresting Music M a c h i n e has C o w b e l l £10,000+ Fairllght allows multi
l o o k i n g b l a c k plastic box is a n d the RX hasn't. s a m p l e s across t h e w h o l e r a n g e
p e r h a p s the most powerful, But this d o e s not matter! to b e taken so w h a t c a n y o u ask
versatile a n d e x c i t i n g p e r i p h e r a l If you want another Tom t h e n of a unit such as this?
that I have h a d the pleasure to you c a n h a v e It, or remove the For technicrats the s a m p l i n g
review for a g e s ! c o w b e l l or a n y of the sounds rate is 19.444KHz a n d this gives
D e s c r i b e d as "The C o m p l e t e a n d r e p l a c e t h e m with a n y a p p r o x 1,1 sees, It sounds short,
Home C o m p u t e r Music System' I other you f a n c y b e c a u s e the but In fact it gives p l e n t y of t i m e
consider this c l a i m to b e a Music M a c h i n e is also a to say " S a m a n t h a Fox" (should
modest a p p r a i s a l of the unit. It Sampler! This m e a n s that you you so wish). A start a n d e n d of
c o u l d b e used in professional c a n record digitally any sound a sustain l o o p within t h e s a m p l e
a p p l i c a t i o n s as welt. So w h a t you like via the c h e a p feature w o u l d h a v e b e e n useful,
d o e s it do? m i c r o p h o n e s u p p l i e d , t a p e or a n d the e n l a r g e d d i s p l a y of the
line out of a n amplifier. waveform often resembles a
At Home O n c e a s o u n d is in m e m o r y burst from a n a i r b r u s h a n d this is
t h e n you c a n set t h e start a n d a pity.
The great m a j o r i t y of purchasers e n d p a r a m e t e r s a n d p l a y as The rear of the unit bristles
will g o for its s u p e r b s a m p l e d m u c h or as little of It as y o u with sockets a n d t h e three w h i c h
d r u m sounds a n d built in wish, even l o o p i n g it for most owners will use a r e the
sequencer allowing complex c o n t i n u o u s sustain. You c a n m i c r o p h o n e IN, the Phono OUT
a n d carefully c o n s t r u c t e d reverse it a n d p l a y it b a c k w a r d s , to a n a m p l i f i e r or stereo a n d a
— , ;— wwuuwwwn nmmvRvmnv kmhwim i •
ajTJI IT"' i* ' : «.' «'« M r ? ) »>i ipJ11L

§
D JL
4 Kr* C
• frt'
J 'HOB
n
tt
< cs 't,t | fe« y—v

X r 1 i *' r 1 4
N
* 'CHI
Mpll ' i",:

12 ZX Computing Monthly • November 1986


H e a d p h o n e for p e r s o n a l full k e y b o a r d range, sync with l e a r n t h e essential c o m m a n d s
listening. Only the o u t p u t from e x t e r n a l sequencers, p l a y t h e a n d the others a r e n e a r l y all self
either the tune s e q u e n c e r or the Music M a c h i n e ' s s e q u e n c e r out evident.
d r u m s e q u e n c e r c a n b e sent to to the k e y b o a r d (at the s a m e I a m a l r a i d this review is
the h e a d p h o n e or p h o n o socket t i m e as using the d r u m s via the rather o n the enthusiastic side,
a l any o n e time. h e a d p h o n e or p h o n o out) or but t h e n I h a v e d e l i b e r a t e l y
Not just simply a f a s c i n a t i n g a n y other c o m b i n a t i o n you c o m p a r e d this unit with others ol
toy as are most ot the s a m p l e r s I desire. This is possible from the m u c h h i g h e r p r i c e a n d it holds
have se£n. i n c l u d i n g s o m e software w h i c h o p e r a t e s in b o t h its own. A s i m p l e MIDI interface
made well r e s p e c t e d the c o m m o n O m n i a n d Poly b y itself c a n cost over £100, this
c o m p a n i e s in this field, but m o d e s a l l o w i n g full c h a n n e l has m u c h , m u c h m o r e to offer.
a c t u a l l y u s a b l e to c r e a t e a s s i g n m e n t a n d internal or RAM ask tor ideas, there is no
genuine musical compositions. e x t e r n a l c l o c k control. limit w h e n y o u c o n s i d e r MIDI, for
For a n y o n e with m u s i c a l e x a m p l e how a b o u t ; A real time
interests this is a n a b s o l u t l e y multitrack s e q u e n c e r with a u t o
essential p i e c e of e q u i p m e n t , Easy use c o r r e c t a n d v a r i a b l e quantize, or
I've h e a r d 'Rap' records with less a multitrack step t i m e
b a c k i n g t h a n this c a n p r o d u c e , All this in o n e unit a n d p r o g r a m sequencer, b o t h with h i g h
a n d the q u a l i t y Is g o o d e n o u g h must m a k e It c o m p l i c a t e d to resolution printout facilities, or a
for studio use. run. m i d i p a t c h b a y system (give m e
Not a bit! The m a n u a l is a unit a n d I'll write o n e ot those!)
written to suit a l l abilities, step by or, or . . . . the list is vast i n d e e d .
Midi step c h a t t y a p p r o a c h Yes. you m a y say, but it'll cost
t h r o u g h o u t but with full the e a r t h a n d b e well out of my
Should you b e o n e ot t h e t e c h n i c a l d e t a i l tor those with r e a c h . I a g r e e it is a little m o r e
g r o w i n g n u m b e r of serious h o m e deeper understanding — t h a n the a v e r a g e £15-£30
musicians w h o o w n a k e y b o a r d s o m e t h i n g m a n y ot the i n t e r f a c e but at a n a s t o u n d i n g
such as the C a s i o CZ101 or a n y d e d i c a t e d "professional" units £49.95 it offers i n c r e d i b l e v a l u e
of the other instruments fitted I've l o o k e d at d o not usually tor money, the c h a n c e tor
with MIDI (Musical Instrument give. a n y o n e with a n interest in music
Digilal Interface) then you c a n As (or o p e r a t i n g , the m e n u to get into the latest hi-tec
greatly e x t e n d b o t h units' use. system has b e e n c a r e f u l y musical development a n d I
There are three MIDI sockets d e s i g n e d with m a n y o p t i o n s h a v e n o hesitation in g i v i n g It
lifted, s t a n d a r d five p i n DIN, tor b e i n g consistent w h e t h e r you the highest a c c o l a d e possible
MIDI IN. OUT a n d THROUGH a n d a r e in the Sampler. Piano. M i d i . trom a h a r d bitten, c y n i c a l
via these you c a n either p l a y Echo or a n y of the m a n y other reviewer.
your s a m p l e d sounds over the o p e r a t i n g screens. You soon I will b u y one.
wjwwnwjTT —•—i—> r r f j n r v r •1 ' .......... I. ,.pi
1 V'J t '"t
C E 2 3 GSTD «.r' m i r , » I 1 >uo>< •« «
0UWUIMA < t t ' f l MWBWWJIW
TJX. .. I
i i f i i i ' U»> « J I O <• I LY »»P
• -}• -14 -4 t# #

•mUUtTAVM! p' • - •WrTTT-'-TSJ'J'.


lit*i«I
LAPS
» MI ((«!«
7
I < ( MMW

it:.
12 ZX Computing Monthly • November 1986
Ml,
Joysricks
Joystick connoisseur
Mach 1 +
Chariton A p p l e b y takes Cheetah
a critical look at £14.95
established Spectrum The C h e e t a h M a c h 1+ is similar
to the 125+ In that it has four fire
joysticks a n d also buttons: two on the b a s e a n d
two o n the stick, a n d in the
playtests Cheetah's Mach 1 + s a m e positions. However in this
c a s e the b o d y of the stick is
new 128+2 c o m p a t i b l e much bigger and angular and
thus more difficult to use a n d a
sticks. lot less c o m f o r t a b l e t h a n Is
e x p e c t e d for this k i n d of money.
Otherwise, the features of the
125+ other m o d e l are r e t a i n e d — two
plugs, auto-fire, suction cups, e t c
Cheetah The internal c o n s t r u c t i o n of Ihis
£8.95 stick however, is with micro-
switches. These will last virtually
T h e C h e e t a h 125+ joystick is a forever under n o r m a l conditions.
pistol-grip type of d e v i c e with a The stick is a w k w a r d to h o l d
t h u m b button o n the t o p of the a n d so is Ihe base. Micro-
stick a n d a trigger for your fore- switches are not very responsive
finger. There is also the a d d i t i o n at the best ot times, a n d that
of two buttons o n the a m p l e , oint is p r o v e d a g a i n with the
r o u n d e d , base. The m o u l d i n g of K a c h 1+.
the stick Is very c u r v a c i o u s a n d Apart from b e i n g very r e l i a b l e
fits the h a n d nicely, the b a s e it has little to r e c o m m e n d It over
has four suction c u p s o n it to the 125+. If you w a n t a joystick
secure the stick firmly to a that will never let you d o w n t h e n
smooth surface. you've f o u n d it with the M a c h 1
but for e n j o y a b l e p l a y opt for
The c a b l e is a b o u t a y a r d the 125+. The substantial p r i c e
l o n g with two plugs o n the e n d . differential (£6) m a y also b e a
This split a d a p t o r also features b i g i n f l u e n c e o n your c h o i c e .
o n the M a c h 1+ a n d is of
s p e c i a l interest to Sinclair
owners, e s p e c i a l l y prospective a r e a w h e r e a joystick is likely to
purchasers of the ZX Spectrum fail first). A lot of m o d e r n g a m e s
128+2. O n e of the plugs is a have auto-fire detectors that will
n o r m a l Atari-type D9 suitable for cut out this facility or m a k e it
the majority of h o m e computers, function to the d e t r e m e n t of the
a n d the other o n e is a grey player, but a lot of g a m e s wll b e
c o n n e c t o r for the side of the m a d e more p l a y a b l e — in fact,
new Sinclair m a c h i n e . This some g a m e s are almost
s e c o n d c o n n e c t o r is re-wired in impossible to c o n t e n d with
the m a n n e r that the new without a n auto-fire feature.
m a c h i n e n e e d s to get its signals, My m a i n g r i p e with this stick
so you don't have to b u y those is that it is not very responsive,
awful SJSI things. My only worry the internal construction is that
is that, whilst this is a g o o d i d e a , of c o l l a p s i b l e domes, w h i c h
the w a y that the first c o n n e c t o r usually give the best f e e d b a c k ,
has two wires c o m i n g out of it however in this c a s e the stick is m
m a y w e a k e n the link at the p l u g almost d e a d in my h a n d a n d
a t t a c h m e n t point. As this is a n g a m e s c a n b e very tricky to
a r e a w h e r e a lot of joysticks play.
break, a n d short of c u t t i n g the However, I w o u l d definitely

am \
c a b l e a n d r e p l a c i n g the p l u g , it r e c o m m e n d the 125+ for owners — ^
is irreparable.
Also o n the stick is the now
of the Spectrum 128+. It has all
the features you w o u l d e x p e c t
" • H i
almost obligatory, auto-fire from a n u p to d a t e joystick a n d
switch. This is a switch to m a k e a l t h o u g h a bit l a c k i n g In the

m
the joystick function like a response d e p a r t m e n t it's a n
m a c h i n e - g u n , a n d to save wear efficient multi-purpose stick a n d
a n d tear o n Ihe fire buttons (an at £8.95 it's a b a r g a i n .

12 ZX Computing Monthly • November 1986


E v e r since 1976 w h e n the first Atari Pro-Line
Atari VCS reared its ugly h e a d in
a few p i o n e e r i n g homes, the
joystick has b e e n a major b o n e
of contention. Within a c o u p l e of
years, third party c o m p a n i e s
were p r o d u c i n g alternatives to
the Alari standard stick. When
the computer took over the Atari
D9 standard b e c a m e the de
facto m e t h o d of c o n n e c t i n g a
joystick or tracker b a l l to a
computer. This s t a n d a r d persists
to his d a y with even the mighty
machines like Ihe A m i g a a n d
Atari ST h a v i n g the s a m e Utile
socket on their sides.
All Spectrum joystick
interfaces have this D9
connector in them, some even
have two. The o n e n o t a b l e steel a n d unlikely to wear out, Internal construction Is with
exception is the new a n d is i n c r e d i b l y responsive. c o l l a p s i b l e domes, t h o u g h with
Amstradified' Spectrum 128+2, The contacts are still the large a m o u n t of leverage
which has h a d the wires all c o l l a p s i b l e domes, but this that such a stick affords, you
j u m b l e d u p in a n a t t e m p t to seems to c o m b i n e with the short m a y find that in some
make you buy Amstrad/Sinclair shaft to m a k e this o n e of the circumstances this stick will not
Joysticks. For the purposes of this most responsive joysticks that I have a long-life span —
article I will assume that have ever c o m e across. This is e s p e c i a l l y with younger players.
a n y b o d y with o n e of these my all-time favourite g e n e r a l
machines has either got a n p u r p o s e stick, c a p a b l e of Fighter Pilot
adaptor, or forgotten that they
exist at all a n d has gotten
p l a y i n g any g a m e that there is,
was, or c o u l d be!
Tandy
himself a Kempston interface or £8.95 #
something similar. Quickshot II This stick used to b e marketed
So what d o you shove Into
that hole in the side of your Spectravideo by S p e c t r a v i d e o under the
n a m e 'Quickshof before the
machine? Having b e e n p l a y i n g £11.95 Quickshot II c a m e out. Now re-
g a m e s with joysticks for the last Probably the best known stick in b a d g e d . Tandy are selling it
eight years or so I c a n safely say the business. The Quickshot II has under their own b r a n d name.
that I have some favourites. You a c o n t o u r e d g r i p that fits the This stick has a fire button on
may not a g r e e with me, but then h a n d in a m a n n e r so perfect the base, o n e on the top of the
joysticks are tike golt clubs, that it is a m i r a c l e of design. Two stick for your thumb, a n d a
different sticks perform a different fire buttons are provided, one in c o n t o u r e d g r i p — t h o u g h not u p
job, so select one that m a t c h e s a pistol trigger position a n d one to the s t a n d a r d of the Quickshot
your needs. on the top that fits your thumb. II. The b a s e has suction cups on
The base has four suction c u p s it to provide a firm footing for
Atari Standard on it to g r i p the stick to a flat, one h a n d e d operation, t h o u g h
Atari smooth surface for o n e h a n d e d there is no great p r o b l e m using
operation. Also on the base is a two hands as the base is also
£6.95 little switch for 'autofire' d e s i g n e d to b e held.
The original, a n d some say the operation. This switch connects Internal construction is o n c e
best. This a w k w a r d l o o k i n g a n d to a small circuit inside the a g a i n by the c o l l a p s i b l e d o m e
ungainly stick is notorious for joystick that creates a m a c h i n e - method, with the usual
having started Ihe w h o l e b a l l g u n effect w h e n using the fire limitations of not b e i n g too hard
g a m e off. Internally if uses button. This is a c h i e v e d by w e a r i n g , but with the
collapsible d o m e t e c h n o l o g y to pulsing the fire button's output to a d v a n t a g e s of g o o d control a n d
make the c o n n e c t i o n , d e f o r m i n g the computer. This allows tactile f e e d b a c k .
a d o m e of thin metal until the m u l t i p l e firing in a g a m e that
electrical switch is m a d e . allows such things, t h o u g h a few Trackball
This system has the a d v a n t a g e
of high tactile f e e d b a c k , but the
of the more m o d e r n g a m e s c a n Atari
d e t e c t w h e n a n auto-fire switch
d i s a d v a n t a g e of poor reliability Is b e i n g used a n d will d i s a b l e £22
a n d a short life time. These sticks the fire button all together — Not really a joystick, but c a n b e
seem to n e e d a " b e d d i n g in' with disastrous results. used as one. The t r a c k b a l l was
period before they work to their first i n t r o d u c e d into the coin-op
best efficiency. The greatest arcades on a g a m e called
a d v a n t a g e is that they're c h e a p , Atari S t a n d a r d
Missile C o m m a n d , a n d more
however their s h a p e is very recently on a g a m e c a l l e d
a n g u l a r a n d the corners c a n M a r b l e Madness.
d i g into your p a l m a n d hurt a The track b a l l consists of a
lot after a m a r a t h o n all-nlghl b i l l i a r d ball" m o u n t e d in a
session. c a s i n g with detectors to report Its
movement to the c o m p u t e r a n d
Atari Pro-line a c o u p l e of fire buttons. Instead
Atari of b e n d i n g a stick in the
r e q u i r e d direction ou roll the
£9.95 centre ball. This c a n give you a n
The successor to the previous excellent control a d v a n t a g e in
stick, this controller uses a some games, but c a n b e a
contoured grip with two fire liability in others. A track b a l l is
buttons lor left/right h a n d e d at its best in Missile C o m m a n d
operation, or fore-finger/thumb a n d M a r b l e Madness type
interchange. The short stick is games, a n d c a n c o m e into its

12 ZX Computing Monthly • November 1986


o w n in a lot of m a z e g a m e s .
A useful c o n t r o l l e r to h a v e
h a n d y t h o u g h definitely as a
spare, rather t h a n as your o n l y
c o n t r o l system.

Speed King
Konyx
£12.99
This is a fairly n e w 'stick* with a
less t h a n c o n v e n t i o n a l
c o n f i g u r a t i o n . An
' e r g o n o m f c a l l y ' styled g r i p fits
Into your left h a n d like it was
p a r t of It. with the triger resting
n e a t l y b e n e a t h the c r o o k of your
index finger. The t o p of the stick
has a short, stiff stick p r o t r u d i n g
from it.
The s w i t c h i n g is v i a micro-
switches that will v i r u a l l y last
forever. However, their response
t i m e is a bit slow, a n d the t a c t i l e
f e e d b a c k is c l o s e to n o t h i n g .
You h e a r your stick m o v e b e f o r e
you c a n feel It or see ft.
The g r i p Is also a bit d i c k y at
times. W h e n y o u p l a y for a l o n g
time in a d i f f i c u l t g a m e , your
h a n d s c a n get a bit sweaty. With
this stick y o u start to let it slip
after a w h i l e a n d t h e w h o l e
situation gets out of control. If
you are lefl h a n d e d — forget It!

Trak-ball

Mazemaster
Tandy
£11.95
An interesting c o n c e p t here, a
joystick that c a n turn off its
d i a g o n a l m o v e m e n t . Most
joysticks a l l o w for d i a g o n a l
m o v e m e n t , but this stick lets y o u
switch b e t w e e n e i g h t - w a y a n d
four-way o p e r a t i o n . Why? For
m a z e g a m e s of course. Ever h a d
that t i m e w h e r e y o u skid
Spood K i n g
sideways into the spider? Well
n o w this joystick will a l l e v i a t e this
to s o m e d e g r e e .
The joystick Is a n a w k w a r d
s q u a r e shape, with a little stick C o n s t r u c t i o n is v i a micro- like to use. You m a y prefer
p r o t r u d i n g a b o v e it, this switch. a n d s h o u l d last others, b u t these h a v e stuck with
a r r a n g e m e n t is fine tor mazes, (effectively) forever, b a r r i n g a n y m e t h r o u g h thick a n d thin a n d I
t h o u g h I wouldn't w a n t to p l a y adverse c o n d i t i o n s . w o u l d n ' t give t h e m u p for the
an action game with it. Well, these a r e t h e sticks that I world.

ZX Computing Monthly • November 1986


/

b a c k u p routine is supplied,
there is a dire w a r n i n g not to
use the interface with a n y t h i n g
other t h a n another C h e e t a h Unit.

Tech specs
The specifications are
impressive, replay over two
octaves, superb processing
a l l o w i n g very fine selection of
start a n d e n d points to b e m a d e ,
a n d sustain start a n d e n d points.
These are chosen on a g r a p h i c
waveform display. Samples c a n
b e reversed or c o n b i n e d , saved
or l o a d e d a n d reconfigured at
will.
The frequency or b a n d w i d t h
is 17.5KHz a n d this is as g o o d as
you'll get o n some d e d i c a t e d
Cheetah follow up the samplers for m a n y times the
The C h e e t a h s a m p l i n g system money. S a m p l e rate Is 70000
success of their consists of a n interface, software times a s e c o n d a n d m a x i m u m
cassette a n d microphone. The length is a r o u n d one second.
Specdrum with a new interface connects to the port at Which is l o n g e n o u g h lo say
the b a c k of the Spectrum (48K. your n a m e or a simple Nineteen!
Sound Sampler. Plus or 128) a n d has two control The utility or effects p r o g r a m is
dials on the front, a mini j a c k great for p l a y i n g a r o u n d with,
s o u n d input socket on the left providing echo, reverb, fuzz,
SOUND SAMPLER h a n d side a n d a six foot l e a d chop, b u b b l e , a n d p i t c h effects,
Cheetah Marketing fitted with a p h o n o p l u g to take
the output to a n amplifier or
very noisy t h o u g h a n d there's not
e n o u g h control for serious
£44.95 stereo system. There is a usage.

Usability
The p u b l i c i t y c l a i m s "Home or
Professional" use a n d I wouldn't
disagree. All I w o u l d say is that
the professional use m a y b e
rather limited, e s p e c i a l l y if It was
i n t e n d e d for r e c o r d i n g as the
sound quality is g o o d rather
than excellent, a n d the
b a c k g r o u n d noise is rather too
h i g h for professional standards
even under o p t i m u m conditions.
The input section is well
designed, allowing a wide
r a n g e of i m p e d e n c e s from
microphone, line or instrument
sources a n d the output m a t c h
proved c o m p a t i b l e with both my
power a m p a n d my cassette line
in.
O p e r a t i n g the sampler is a
joy. Everything is m e n u driven
a n d error trpiing seems to b e
very comprehensive, even with
my idiot a c t in full swing it
informed m e of where a n d why I
h a d g o n e w r o n g e a c h time.
I loved it. even at the level of
S o u n d s a m p l i n g has b e c o m e p r o b l e m in that the l e a d is not simply p l a y i n g a r o u n d it was
Ihe "In" thing in the music field really l o n g e n o u g h a n d the great. 1 took it into a l o c a l
at the moment d u e to recent p h o n o p l u g is only suitable for school a n d the pupils h a d a
developments in t e c h n o l o g y stereo or expensive mixing desks. great time with the utility
a n d , since it is a c o m p u t e r The more usual p l u g is a p r o g r a m a n d the Science
b a s e d technique, it is not s t a n d a r d jack, a n d it might have teacher was devising ways of
surprising that such a d e v i c e b e e n better if the control knobs using it for the new GCSE exams!
should b e d e v e l o p e d for our h a d b e e n positioned o n the top Finally, I have spent quite
h o m e micros. a n d a s e c o n d socket h a d b e e n some time using the sampler,
To put It rather simply, sound fitted for output. a n d I a m b e c o m i n g more a n d
s a m p l i n g involves m a k i n g a The m i c r o p h o n e is a fairly more impressed with it. I w o u l d
d i g i t a l recording of a voice, basic o n e for use with a even cautiously suggest that a
instrument, p i e c e of music, or p o r t a b l e cassette recorder a n d studio might b e a b l e to use it for
some other sound, processing it is not really suitable for 'serious' some short a n d limited effects,
as required a n d r e p l a y i n g it in a use. p r o v i d e d e n o u g h noise
c h o i c e of pitches. A l t h o u g h a Microdrive reduction was available.

ZX Computing Monthly • November 1986 59


R AMP RIN T f i d d l e with that to get It to work
with the particular interface that
you're using. A n d if you get any
of that w r o n g the w h o l e setup
goes m a d a n d starts vomiting
u p reams of p a p e r c o v e r e d in a
l o n g - d e a d Greek d i a l e c t w h e n
all you w a n t e d was your laundry
list.
The w h o l e business is a p a i n ,
a n d it's driven m e b a c k to my
steam-driven typewriter m a n y a
time.
With that in m i n d it's strange
that n o b o d y has yet c o m e u p
with the I d e a of p r o d u c i n g a n
all-in-one printer interface with
its own wordprocessing software
so that the two are c o m p a t i b l e
a n d don't require hours of
f i d d l i n g to get them working
Not only does RAM's wordprocessing facilities. I got together. But that, at last, is what
h o o k e d on wordprocessing RAM Elecronics have d o n e with
new interface have a b o u t a year a g o w h e n I their new Centronics-type RAM
discovered Tasword 2, a n d I Print interface a n d RAM Write
everything but the w o u l d m u c h prefer wordpro to software w h i c h is stored o n a
ROM c h i p within the Interface
using a typewriter if it weren't for
kitchen sink crammed my c o m p l e t e inability to c o p e itself, not to m e n t i o n some of the
other features i n c l u d e d .
with printers. The words always
into it, the instructions look fine on the TV screen, but I
c a n never get t h e m to c o m e out Kitchen sink syndrome
are easy to understand of the printer at the other end.
The trouble is lhat you can't To start off with, the Interface
too! just p l u g a full size printer into c o m e s with its own Centronics
the Spectrum a n d get it to work c a b l e built In, so there's no
straight a w a y (you c o u l d d o this a d d i t i o n a l expense involved in
Ramprint with Sinclair's new ZX Printer but b u y i n g o n e or working out what
that was very limited In both to d o with it.
RAM Electronics q u a l i t y a n d options it offered). Then, surprisingly, RAM have
£34.95 First of all you n e e d a n interface m a d e the Interface e m u l a t e the
a n d the l e a d to c o n n e c t the two o l d ZX Printer so that you c a n
ow let's b e sensible a b o u t this: machines, then there's the awful use the Spectrum's o w n LUST.
what are the reasons tor b u y i n g business of initialising the LPRINT, a n d COPY c o m m a n d s for
a real' printer to use with your interface a n d shoving in all the listings a n d screen dumps, this is
Spectrum. The m a i n ones have control codes. Then. If you're very sensible as it c o m b i n e s the
to b e to get d e c e n t listings, using some sort of w o r d p r o simplicity of use of the ZX Printer
screen d u m p s a n d software, you'll p r o b a b l y have to with the h i g h quality printing
The RAMWrlte 32 c o l u m n w o r d p r o c e i t o r .
a v a i l a b l e from the w h o l e r a n g e
of Centronics printers.
RAM have also a v o i d e d a
potential p r o b l e m here as the
Spectrum 128 isn't c o m p a t i b l e
with the ZX Printer w h e n
o p e r a t i n g in 128 mode. However
if you enter the c o m m a n d PRINT
IN 251 on power-up Ihen you
c a n sidestep that particular
p r o b l e m , the c o m m a n d s for the
128 are slightly different. LPRINT
c o p y " rather than simply
COPY, but that's not too m u c h of
a problem.
Now we c o m e to w h a t is
normally the tricky bit, the
conlrol codes. Thankfully though,
RAM, have given you some h e l p
here a l s o Entering the
c o m m a n d LPRINT " set" calls
u p a n options menu, a pull-
d o w n w i n d o w w h i c h overlays,
but doesn't w i p e out, w h a t is
a l r e a d y o n the screen. The
options a v a i l a b l e here aren't
exhaustive but they d o at least

12 ZX Computing Monthly • November 1986


cover the most often used
options; Line Feed, Tokens. C o p y
Text, Enlarge a n d Width, For
e a c h of these you c a n simply
choose the On or Off state as
required without any of the
business ot having to look u p
control codes a n d enter t h e m as
endless strings of CHRS. The RAM
Write software has its o w n set of
control codes for different types
ol printing, but it you want to d o
tancy things with listings then
you'll p r o b a b l y have to g o b a c k
to looking up the c o d e s in your
printer manual. C'est la vie.
As a final touch Ihe interface
also includes a Kempston
joystick interface — RAM are
certainly m a k i n g sure they've
covered all their bases. The
interface is well c o n s t r u c t e d in a
robust black plastic. There are
no exposed parts a n d there's
even a small ring that goes
around the power socket to
make sure that everything fits
nice a n d tidily.
The Enlarge o p t i o n allows you to c o p y t w o sizes of screen dumps.
RAM Writes
Ot course, the most obvious aren't as exhaustive as the If you want to m a k e any
attraction of this interface (tor options a v a i l a b l e in Tasword or c h a n g e s to the layout of your
me anyway) is the inclusion ot a The Writer, but they're a d e q u a t e text you'll you'll have to g o b a c k
wordprocessor p r o g r a m on ROM for most simple wordpro. a p a r t into edit m o d e a n d 32 c h a r a c t e r
a n d the c o n v e n i e n c e of instant from the omission of a display.
access a n d printer/interface w o r d c o u n t (one d a y s o m e o n e This is a b i l of a bore. In
compatibility. Entering the will p r o d u c e a w o r d p r o that has p r a c t i c e I found thai I c o u l d just
c o m m a n d LPRINT " word" its o w n word count . . . ) . g o a h e a d a n d slap the text onto
instantly calls u p the RAM Write Entering 'e' puts you into Edit the screen a n d it w o u l d c o m e
program a n d you are presented m o d e a n d reveals the only real out of the printer l o o k i n g okay,
with a screen in w h i c h the d i s a p p o i n t m e n t in RAM Write. but I still w a n t e d to get a took at
upper 22 lines are b l a n k (tor text You c a n only enter text in the the text as it w o u l d a p p e a r on
entry), while the lower two lines Spectrum's n o r m a l 32 characters p a p e r a n d this m e a n t a lot of
are for the status d i s p l a y a n d per line, a n d while the printed switching to a n d from Display
choice of option. When the output does have wordwrap. 64 mode. If you're used to the 64
cursor Is on the b o t t o m line you c h a r a c t e r lines, justification on c o l u m n display of Tasword or
c a n choose whatever options a n d off, you can't see these The Writer this c a n seem a bit of
you want simply by t y p i n g the things on screen while you're a step b a c k w a r d s a n d a lot
appropriate letter (b= Back to e d i t i n g the text. There is a d e p e n d s on whether you find
Basic, c = C o p y text, d = Display d i s p l a y m o d e w h i c h allows you the c o n v e n i e n c e of the
text a n d so on). The options to see the text in 64 c h a r a c t e r interface,'software c o m b i n a t i o n
available cover all the usual lines, just as it will b e w h e n a n a d e q u a t e c o m p e n s a t i o n for
string search/replace, b l o c k printed onto paper, but you the relatively unsophisticated
copy'delete, a n d so on. These can't edit the text in this display. e d i t i n g facilities.
O n the other h a n d you c o u l d
RAMPrlnt's pull d o w n o p t i o n s menu. easily use Tasword with RAM
Print, a n d this will give you the
best ot both worlds.
Despite the shortcomings of
RAM Write, the c o n v e n i e n c e of
h a v i n g so m u c h c r a m m e d into
the interface a n d the ease of
use that RAM Print offers m a k e
the w h o l e thing a g o d s e n d for
s o m e o n e like myself w h o is
totally b a f f l e d by the intricacies
of printers a n d control c o d e s
a n d the like. At last I've gotten
my h a n d s on a word processing
set-up that you c a n just p l u g in
a n d use straight away. Don't
forget that a d e c e n t Centronics
interface w o u l d cost a b o u t £30
anyway, a n d for just £35 RAM
Print otters a Centronics
interface, plus c a b l e , joystick
interface, a p a s s a b l e
wordprocessor a n d 'user
friendliness' that it's difficult to
put a p r i c e on. In other words I
liked it a lot. RAM Print is the
most useful bit of h a r d w a r e to
c o m e my way for ages.

12 ZX Computing Monthly • November 1986


* T o u m a y r e m e m b e r a lew
issues a g o I s u g g e s t e d using a
series ot short subroutines, c a l l e d
in succession to p r o d u c e a n
PROGRAM 1
illustration. Now's the t i m e to
10 PLOT 1 6 . 1 7 5 DBrtu 4 5 , - 4 3 e 1 7 PLOT 2 2 3 1 2 7 ORflU - 3 2 O 0
tollow u p that i d e a . LOT 0 . 0 CRSU 6 4 . 3 2 RETURN RfiU 0 - 9 5 0R«u 3 2 . 0 RETURN
As 3-D pictures s e e m to b e in 1 1 PLOT £ 3 9 1 7 ? 0R*U - 4 3 - 4 3 1 8 PLOT 3 2 1 2 7 DRAU 3 2 . 0 C RA
PLOT £ 5 5 0 DRflU - 6 4 , 3 2 RETURN u O -95 Cfiflu - 3 2 , 0 RETURN
v o g u e ot the m o m e n t let's set 1 9 PLOT 6 5 1 2 6 OPflU 4 6 - 4 6 o
12 PLOT 15 1 7 5 C'pflu 1 6 . - 1 6 D wOT 1 9 0 1 2 6 ORflu - 4 6 . - 4 6 PLOT
obout p r o d u c i n g the graphics ROu 0 , - 1 * 3 DROU - 3 1 - 1 6 RETURN 64,32 l>R«u 4 6 . 2 3 PLOT 1 9 1 3 2
ORrtg - 4 6 2 3 f O R n = 1 6 TO 2<? STEP
tor a d u n g e o n / p a s s a g e - t y p e 13 P L O T £ 4 0 . 1 7 5 C'RflU - 1 6 , - 1 6 4 PLOT 9 5 + n , 96-r> PLOT 1 6 0 - n . S
adventure. We will n e e d views N
:RAU 0 . - 1 4 3 ORAL) 3 1 , - 1 6 PETuP 6-n PLOT n « 9 S . n < ' £ * 4 £
n n ' 2 + 46 NEXT n RETURN
PLOT 1 6 0 -
into rooms, a l o n g passages, 14 PLOT 32.127 C'RAU 1 5 1 . 0 PL 2 0 PLOT 1 9 1 i £ 7 DROU - i £ 7 O
0T 32 32 C'Pflu 1 9 1 O RETURN DRflU o - 9 5 DPfUJ 1 2 7 . 0 DRAu 0 9
a r o u n d corners, into d e a d - e n d s , 1 5 PLOT £ £ 3 X27 ORflu - 1 5 9 . 0 5 RETURN
t h r o u g h junctions etc. A l t h o u g h C.Cflu C - 9 5
16 P L O T
DROU 1 5 9 . 0
3£.1£7
RETURN
DRrtU 1 5 9 0 OP
2 1 PLOT 3 ^ . 1 5 9
OT 3 2 1 6 ORflu 1 9 1 , 0
ORflU 1 9 1 0
RETURN
PL
this m a y s e e m a little d a u n l i n g it flu 0 - 9 5 DRrtU - 1 5 9 . 0 RETURN
is in p r i n c i p l e q u i t e s i m p l e as all
of these views c a n b e m a d e u p
of just a few. often r e p e a t e d — It'll look m o r e " d u n g e o n y " in You s h o u l d get a view similar
lines. Type in P r o g r a m 1, white on b l a c k b a c k g r o u n d — to that shown in Fig. 1. Note
k e e p i n g to t h e line numbers, t h e n GOSUB to e a c h of the n e w that the v a l u e of c d e t e r m i n e s
a n d I'll show y o u w h a t I m e a n . fines in turn, with a CLS b e t w e e n the p o s i t i o n of o p e n i n g , a r c h or
Now c a l l a few lines with the e a c h c a l l a n d you'll see h o w h o l e o n the f a c i n g w a l l
c o m m a n d GOSUB (line number). various c o m b i n a t i o n s of those p r o d u c e d in lines 29-37. Also the
In e a c h c a s e a few lines will original picture elements c a n b e v a l u e of i in lines 41-44
a p p e a r o n screen. Not very j o i n e d to g i v e a series of rooms, d e t e r m i n e s the INK c o l o u r of the
impressive you m i g h t think, but junctions, passages, turns etc. h a n d l e ot the torches. (The
don't give u p yet. These a r e o n l y So far so g o o d , but our s h i m m e r i n g effect in Ihe torches
the p i c t u r e elements. A d d a d v e n t u r e r w o u l d b e rather is c a u s e d b y n o t h i n g m o r e t h a n
P r o g r a m 2 to the listing for restricted in his movements. Let's t h e Spectrum's Infamous "dot
Program 1 you h a v e o n b o a r d . a d d s o m e doors, arches, creep", There just h a d to b e a
Now set PAPER to 0 a n d INK to 7 o p e n i n g s , holes, l e d g e s , a n d a use for it!) I'll l e a v e y o u to
crevasse! While we're at If w e e x p e r i m e n t further — the
m i g h t as well s u p p l y s o m e f u n c t i o n of e a c h l i n e is REMed in

f l a m i n g torches to t h r o u g h a the listing — a n d to discover


g l i m m e r of light o n the i m p o s s i b l e c o m b i n a t i o n s . (Like
p r o c e e d i n g s . A d d P r o g r a m 3, t r y i n g to i n c l u d e a crevasse in a
n o t i n g that the c a p i t a l letters are room!)
all udgs, a n d must b e e n t e r e d in
the G m o d e . We'll also n e e d to Instant Graphics
set these u d g s so input the d a l a
from T a b l e A, using It m a y b e that the perfectionists
FOR 1=USR 'ta" TO USR " p " + 7 : a m o n g s t ZXC readers a r e not
INPUT i : POKE f, i : NEXT f h a p y with the w a y t h e p i c t u r e is
Now y o u c a n a d d a lot m o r e d r a w n b e f o r e their very eyes. It
features to your b a s i c rooms a n d m a y b e that you w o u l d prefer
passages. Try: t h e illustration to s u d d e n l y
9999 LET 1=2 : LET c = 1 0 : GOSUB a p p e a r , c o m p l e t e , o n screen. All
36 : GOSUB 37 : GOSUB 3 : t h a t is n e e d e d for this effect is a
GOSUB 22 : GOSUB 26 : GOSUB c o m b i n a t i o n of trickery a n d a
27 : GOSUB 28 : GOSUB 39 : short m a c h i n e c o d e routine. Use
GOSUB 41 : GOSUB 42 : GOSUB the f o l l o w i n g line to input these
44 numbers: 33, 0, 88, 1, 192, 2, 22,

PROGRAM 2
i GO sue 12 G O sue 1 3 GO su B 14 RETURN REM r i j h l / L t l l
e 21 RETURM REM r D0» GO SUB l O CO 3 U 6 13 CO SU
< GO sue 10 G O SUB 1 1 GO su 5 17 00 SUB 19 RETURN REM to
e 19 RETURN REM f o r w a r d
GO SUB 1 0 G O sue ii GO su 6 GO Sue 11 GO Sue ti GO 5U
e 20
j.
RETURN
sue io
REM d i » d end e 16 GO sue 19 RETUR" REM to
GO G O Sue 1 5 GO su 'MS'd lift
e i:c- RETURN REM r I 9 n t 9 GO 5 U 0 12 GO sue 13 GO SU
GO sue ii CO sue 12 GO SU 6 16 GO S U B 19 GO sue i ; ReTU
e 16 RETURN OEM it f t RN REM f o r w a r d .-le f t r»9ht
e G O sue 12 GO sue 1 3 GO su

12 ZX Computing Monthly • November 1986


b e d r a w n on. G e n e r a l l y rows 0
to 5. c o l u m n s 8 to 23 a r e sale, or
PROGRAM 3 y o u c o u l d use the edit lines with
PRINT 0; "message".
Using different c o m b i n a t i o n s
of doors, o p e n i n g s , a r c h e s etc.
you c a n p r o d u c e a n enormous
2 2 - P R I N T AT 1 3 , ? , 0 " PLOT E * c t n v r e roo« door variety of illustrations. [There a r e
96 DPAU - 3 2 . 1 6 DRRU 0 . - 9 6 DRA 3 3 F O P n til T O 19 P R I N T AT n,
15 possible c o m b i n a t i o n s ol
u 32,16 DPAu 0 . 6 A RETURN C M i NEXT n RETURN PEM c
(.eft doe r en t re r oo» o p e n i n g torches for a start, even if you
2 3 P R I N T AT B . 4 . , ••«E" ; AT 9 - 4 . , 34 P R I N T A T 9 C, OP A T 10,C ;
• ^ P ' . A T 16 A , • • • C D " . A T 1 9 , 4 . , - C O " S RETURN O E M :er, ire roo - don't alter the v a l u e of i!)
FOE r, »10 T O 1? P R I N T AT n , A hi9h »rcn I'll follow u p this i d e a of
M M ttE'T r. R E T U R N REM I £ M 35 P P I N T A T 1 0 C 'EFAB R£TUR
opernno N R E n c e n t r e root io« arch p i c t u r e e l e m e n t s further in a
2A P R I N T AT 3 , 4 . ; ' E F P " , AT 9 . 4 . . 36 F O P n =7 T O 9 P R I N T AT n,c
M P RETURN r e m left i r c h M NE»T n RETURN REM n o u later a r t i c l e w h e n we'll look at
25 PRINT AT 1 3 . 2 4 , " 0 ' P L O T 19 3- PRINT AT 'OP' RETURN
"Lords of M i d n i g h P t y p e scenes,
1 32 DRAU 32.-16 D R A U if 9 6 DP REM arch
RU - 3 2 . - 1 6 D P A U 13,-64. RETURN 35 F O P n = 9 6 T O 9 ?
NE*.T n
P L O T 2i n but now to a c o m p l e t e l y
REM r i 9 M aoor DP-3'' 2 0 0 0 RETURN REM
26 PRINT AT d.26, 'EC AT 9 , 2 4 rovt ledge different solution to the p r o b l e m
EFM
GM
A T 18,24., " G r ^ " ; A T 1 9 . 2 6
FOR n =10 T O 1 ? PRINT AT n
35 . FOR n =96 T O 9 7 P L O T 6 0 n
DRflU 1 3 6 , 0 N E <T r, RETURN C£H of b i g p i c s in few bytes.
. 24, " M M NEXT N RETURN REM p a s s a g e >. i age
fI9ht o p e n i n g 4 0 FOR 1 1 1 ? T O 2 0 PRINT AT i
6, NEXT f PL
Speedraw
2 7 .PPINT AT 6 , 2 5 , " O A S AT 9 , 2 *
C M S RETURN REM right arc* OT 6 3 . 3 2 ORAU O'.'EP 1 -4c "24. C
23 PRINT AT 13,17, O P L O T 11 RA'J 2 2 A 0 DRPu OUEP i - 4 6 2 3 P
1.32 DRAU 33.0 DRAU 0,72 DPPU ETURN REM crevaii
-33 0 DPAU 0,-72 RETURN REM 4 1 PRINT AT 6 , 1 , BRIGHT 1 I Nr.
centre passage door 6 , " K L ' , A T 7,1;"HM" PT INK If we h a d m a c h i n e c o d e
29 FOR TO 17 P R I N T A T n,C t W .AT 9 , i • RETURN REM
M M next n RETURN REM ce near l e f t torch routines lo plot, draw, b l o c k in
nire p a s s a g e o p e n i n g
30 P R I N T « T 7 , £ , " O P . A T © , c '
* 2 PPINT AT 6 , 2 9 INi" 6
T 1,'>L' « T 7 2 9 . "MM" A T 6 . 2 9
BRIGm
I
a r e a s of p a p e r a n d fill a r e a s
CMP" RETURN REM centre pass w i. f at 9 , 2 9 . • RETURN with ink we c o u l d b u i l d u p a
age h i g h arch PEM n e a r r i g h t torch
31 P R I N T A T 3 , c , " E F A S RETURN A3 P R I N T A T 1 1 , 1 0 5RIC-M~ : I p i c t u r e o n screen very q u i c k l y
REM ccntrt p a s s a g e ion a r c h ( NK 6 , ' I ,AT 1 2 , 1 0 , INK j, J" RE
from a string of d a t a if this
cent r c i TURN R£M f a r i c f t torch
32 P R I N T A T 1 5 , 1 7 , " 0 P L O T 11 AA P R I N T AT 1 1 . 2 1 ERIJMT 1 I i n c l u d e d i n f o r m a t i o n for
i 16 OPflU 3 3 , 0 DPAU 0,?2 DPAU NH 6, I " , AT 1 2 , 2 1 , I Nr. 1 . J RE
-33,0 DPAU 0 , - 7 2 RETURN REM TURN REM f a r r i g h t torch c h o o s i n g the right routine. Ladies
a n d G e n t l e m e n , the Great
Wizard of Exon p r o u d l y presents
"Speedraw", a g r a p h i c s utility to
p r o d u c e h i g h resolution
illustrations d r a w n at h i g h s p e e d
a n d at a n a v e r a g e cost of only
250 bytes per screen. (Less if you
reuse parts of o n e p i c t u r e in
another).
A p a c k e d column this month with Clyde Bish For the t e c h n i c a l l y m i n d e d ,
this is h o w its done. The secret is
revealing the minimal memory route to 3-D in the s e q u e n c e of n u m b e r s the
routine encounters. Lets c a l l this
adventure graphics plus a useful the D r a w c o d e . The v a l u e 255
( a n d to s o m e extent ©) is
'Soeedraw' routine. reserved for use by the driver. 0
o n its o w n m e a n s return. The
n u m b e r of 225's at the
b e g i n n i n g of e a c h s e q u e n c e
d e t e r m i n e s w h i c h m o d e is
s e l e c t e d . Exit from or j u m p i n g
7, 114, 35, 11, 120, 177, 32, 249, It you w a n t your a d v e n t u r e r to within a routine is c o n t r o l l e d
201 h a v e s o m e t h i n g to look at in the a g a i n by 255's b e i n g
FOR f=USR " t " TO USR M u " + 7 : s e c o n d it takes to p r o d u c e the e n c o u n t e r e d . Figure 2 gives a
INPUT i : POKE 1, i : NEXT f p i c t u r e y o u c o u l d print a flow c h a r t for e a c h m o d e .
(II you w a n t to use a l l t h e u d g s m e s s a g e after the CLS. The Use
you c o u l d m o v e this c o d e g r a p h i c s won't affect it as l o n g CLEAR 64890 : FOR f = 64891
elsewhere). To c a l l a n illustration as y o u a v o i d a r e a s w h i c h will TO 65367 : INPUT i : POKE f,i :
use a line s u c h as 9999 CLS :
INK O : GOSUB f e a c h of t h e
element subroutines) : TABLE A
252 c. cr cr
RANDOMIZE USR ' T * : INK 7
This is h o w the trick works. INK £40 255 255 2^5 255 255
is set to O — the s a m e as PAPER 0 0 0 192 240 252 255 c! 5
- before c a l l i n g t h e subroutines 255 255 255 2 5 5 255 252 240 192
so they a r e d r a w n invisibly.
255 •-kcrC.--1 2 4 0
CL 192 0 >•»
0 L*
C a l l i n g the m a c h i n e c o d e
C ' C •_>
C
causes all the a t t r i b u t e lile bytes 0 0 0 1 ' -L 127 fc.
255 c. cr cr
r
-7 •-ICC
to b e a l t e r e d to 7, i.e. w h i t e INK
o n b l a c k PAPER, so the p i c t u r e
I 31 127 255 255 C. ~

a p p e a r s m o r e or less 2 ^ 5 63 15 <-• 0 0 0 0
Instantaneously. Finally INK is 255 255 255 255 2 55 F. 3 15 .1
reset to 7 or you w o u l d n ' t see 16 24 52 44 36 44 74 52
any subsequent p r i n t i n g ! Note 25FI 2 5 5 £0 60 60 60 60 F.0
lhat Ihe torch subroutines h a v e
1 5 R c 10 42 34
to b e c a l l e d after the m a c h i n e
c o d e or you'll get no colour. If 0 64 64 80 30 •1 C o
_L O 1 6 * 145
you want ot use. say, y e l l o w INK 55 41 40 42 32 i i c cr -T-
w-_>
o n b l u e PAPER,POKE t h e a t t r i b u t e
84 52 62 74 170 146 34 y <—1
you require — in this c a s e 6 +
1 3 15 31 •-.cc
127 e.
1x8=14 - into a d d r e s s (start 7) r
as well as m a k i n g Ihe o b v i o u s 128 152 224 2 4 0 243 252 254 c.- C•->w
c h a n g e s to the INK n u m b e r .

12 ZX Computing Monthly • November 1986


PRINT I,I : NEXT f to enter the
d a t a tor the m a c h i n e c o d e from
Table B, a n d save with SAVE
" s p e e d r a w " CODE 64891, 477.
Let's enter some e x a m p l e
\ d r a w c o d e s to use e a c h m o d e in
turn,
Hi.
>,V i v. Plot/Draw
!• I*»VI.» This p r o d u c e s the o u t l i n e

T
' • 1
vi ;•*/!
d r a w i n g . Use the l o a d e r line 10
FOR f = 40000 TO 40021 : INPUT
i : POKE f,l : NEXT f (RUN) to
enter the following s e q u e n c e of
i numbers, pressing ENTER where
there is a c o m m a .
t 10, 10, 50, 10, 50, 60, 10, 60, 10,
n 10, 225, 100, 40, 160, 40, 130,
100, 100, 40, 255, 255, 0.
Now use RANDOMIZE USR
64891 to d i s p l a y a box a n d
t r i a n g l e to screen. If you
c o m p a r e Ihe d a t a with Ihe
flowchart you will notice (a) that
this m o d e is c a l l e d w h e n NO
255 starts the s e q u e n c e , (b) The
first pair of numbers are the PLOT
FIGURE 1
coordinates, subsequent pairs
b e i n g a b s o l u t e DRAW
coordinates, I.e. you give the
a c t u a l c o o r d i n a t e s you want to
d r a w to. No m o r e messing a b o u t
with positive/negative offsets; (c)
a 255 starts a new PLOT position,
(d) two 255's m e a n s return to the
driver. Note that you c a n n o t
PLOT/DRAW to ) or 255. You don't
n e e d to a n y w a y as the routine
draws a border a r o u n d the
255 255 picture area. (This b e c o m e s very
PLOT:

I important in the FILL mode).


X coord.
I
I Attribute
255 Fill
PLOT:
Y coord.
value
I This m o d e "inks in" the pixels
within a n a r e a b o u n d e d by
1 Attribute lines. As you will n e e d a n a r e a
I value

\
PRINT AT
to fill alter the FOR/TO numbers
row in the l o a d e r line to 40021 a n d
DRAW: 40030 a n d a d d the following
X coord. data:
1 Stan
position. 255, 255, 57, 11, 15, 58, 100, 42,
X coord. 255, 0

\
PRINT AT
column RANDOMIZE USR 64891 to
DRAW: redraw Ihe square a n d t r i a n g l e
Y coord.
Start a n d fill t h e m with red a n d b l u e
position. inks. Work o u l how it runs using
Width Y coord. the llowchart, r e m e m b e r i n g that
of box the attribute values are ink +
paper *8.
O n e or two points to note
Yet I w h e n using fill, (a) the a r e a to
More to fill?
Height Yet b e filled must b e c o m p l e t e l y
of box e n c l o s e d . The smallest g a p a n d
No FILL leaks out. There m a y b e
It
255
"invisible" g a p s a l o n g a line. You
255 c a n close these with a n extra
PLOT-DRAW, but often just m o v i n g
^ More to
BLOCK? .
the start position of the fill will
solve the p r o b l e m , (b) in order to
Yet b e very fast the fill is only semi-
jfNo intelligent, so you n e e d to have
the start position against a left or
255 right b o u n d a r y . You will also
n e e d to h a v e more t h a n o n e
start point to fill s h a d o w e d areas
(e.g. filling a ring), a n d the full
m a y not s p r e a d to very narrow
areas. Either c o m p l e t e these with
PLOT-DRAW or don't have narrow
areas! Finally it is just possible to
FIGURE 2: C o n t r o l D a t a (or Spoodraw crash the routine so save the
modes
d r a w c o d e before trying it out.

12 ZX Computing Monthly • November 1986


TABLE B

17 34 255 26 103 19 26 -L
•1
A.-IJ. 32 220 225 201 125 230 192 31
6 4 197 19 1 y 19 26 c c' J 31 15 67
26 1 A. 173 230 243 173
79 213 205 21 254 209 193 16 •1 O A —>
t f —>
t 173 230 199 173
241 17 63 156 19 26 254 0 ( t 95 124 230 71 4
O e -
200 255 194 234 253 19 26 62 254 15 16 253 71 26 160
254 t— —' — 194 196 253 19 26 50 163 47 13 201 237 75 125 92
143 92 19 26 111 19 26 103 197 17 0 255 120 130 71 254
213 ••» A 254
W 125 92 205 151 209 255 40 114 254 176 40 110 197
19 26 222 255 32 232 195 151 205 170 34 60 71 197 126 —>
f
253 26 50 45 255 19 26 50 16 cr-w
C. 1
193 15 56 14 13 16
43 19 26 50 47 255 19 250 125 43 126 40 4
230 31
•1 A rt
26 50 ~ 50 255 19 26 50
r r .1
Am 6 0
b' 24 239 3 62 Q A. **
255 213 205 44 255 209 19 26 71 3 7 43 17 12 29 40
222 2 5 5 32 221 195 151 253 26 67 16 247 35 125 230 31 126
103 19 26 71 62 176 1 5 c.' 111 40 56 6 3 24 236 30 255
19 26 71 19 213 26 37 62 12 227 105 227 3 253 126 37
176 154 79 205 21 254 209 19 15 15 47 230 1 79 C- A. C t
A -> ->

26 222 255 32 236 19 26 222 23 16 17 119 229 213 205 219


255 32 220 195 151 253 1 0 11 209 225 35 125 230 31 40
1 1 197 205 111 254 19/3 17 16 6 3 126 -»
1 43 232 15
1 1 -1
120 146 43 4 c. A. 21 16 253 119 213 205 219 11
237 66 71 121 149 43 4 29 209 193 24 136 193 122 254 1
29 237 66 79 176 200 121 134 200 •L 7 0 1 193 24 136
229 96 107 34 19 254 46 0 175 Cm mt
•-1CC
—'1 7 5 255 0 0 0 0
56 4 101 107 72 71 34 •i ~>
J. t 175 62 32 1 15 10 17 12
254 96 120 203 63 111 125 129 6 - bp'
W -
223 •w
t 213 17 J- "cL 0
56 3 134 56 6 144 111 £37 4 25 16 4 .•ic-
w 16
253 65
91 19 254 24 cr
w 111 237 91 209 66 •35
ic! 1' 229 -»--i
t c. 67 119
17 254 227 124 130 103 125 131 16 252 225 213 17 32 0 25
111 1 9 7 205 111 254 193 cc 1
. - . .-i
37 209 65 16 239 201

(Of course, o n c e you have it picture d r a w n with S p e e d r a w RETURN h a v i n g first set v a r i a b l e


working correctly it won't crash use the l o a d e r line (with FOR/TO a to the d a t a start address less
when in use in a program). set to 40000 a n d 40250) to enter 1 of the d r a w c o d e you wish to
the d a t a from Table C. use.
RANDOMIZE USR 64891 will You have p r o b a b l y worked
Block q u i c k l y d i s p l a y a Hobbitish p a t h out by now that to p r o d u c e a n
in the Misty Mountains l e a d i n g a c c u r a t e d r a w c o d e will take a
This effectively " p a p e r s in" a to the G o l d e n Key that you don't lot of working out on pixel
block of c h a r a c t e r squares. Alter n e e d a n y w a y (Oops — Sorry!), If paper. This c a n n o t b e a v o i d e d ,
the FOR/TO numbers to 40000 you look carefully you'll see that but I c a n otter you some h e l p in
a n d 40007 a n d enter the the sky top left is BLOCKed. not the form of a n Editor/Assembler
following sequence, w h i c h F i l l e d , this is so you c a n FILL the w h i c h will find a n d h e l p you
produces a b l u e b l o c k , 10 by 5 m o o n . (Remember you can't correct Ihe errors. The listing is
with top left corner at row 15, have INK on INK), too l o n g to i n c l u d e here, but if
c o l u m n 1 255, 14, 15. 1. 10. 5. 255, When using S p e e d r a w in your you're interested in f i n d i n g out
0 own programs you'll n e e d to set more a b o u t it write to m e c a r e
As before RANDOMIZE USR the d a t a start register to the of ZX C o m p u t i n g e n c l o s i n g a n
64891 will d i s p l a y it. As it is the b e g i n n i n g of the d r a w c o d e you SAE.
attribute n u m b e r w h i c h is used want it to read. Do this with the Next time we'll return to the
this m o d e c a n b e used to subroutine: picture element i d e a a n d
c h a n g e the ink within a n a r e a p r o d u c e those promised "Lords
without a f f e c t i n g the paper, a n d 1 RANDOMIZE a: POKE 64917, of Midnight'-type l a n d s c a p e s at
so alter just the outline colour. PEEK 23670: POKE 64918, PEEK only 30 bytes e a c h .
If you want to see a large 23671: RANDOMIZE USR 64891: 'Til then, h a p p y d r a w i n g !

TABLE c

56 159 115 159 115 153 56 1 c


JL w ' V
- C- c
Cm W" 175 71 154 cc 255 133 39
56 159 67 159 71 174 255 163 17 C
C" C
' — 33 174 30 160 -ice
Cm mm'
159 33 52 44 47 55 44 76 143 174 123 123 255 193 174 160
43 74 34 76 33 gg 30 127 112 220 174 200 -5 6 255 Cm
c »
3 C w1
1

c. * 144 23 152 c. 160 19 164 163 24 7 152 232 255 39 167


i c 165 10 164
c.
159
6 4

A.
f 1 C. u' V 33 166 29 162 27 156 29 149
124 174 112 152 109 14i 112 139 A 1
u ' _• 145 39 144 36 150 35 156
120 132 127 127 159 111 199 3 7 36 162 39 167 36 166 255 -1
A.
215 77 231 63 24 7 254 Cm 174 4 170 17 142 31 123 40
255 110 152 106 143 104 14 3 10" 115 47 112 1 1-12 255 47 1
A. A»
112 123 144 104 157 a 3 176 4 111 255 114 • V0* •iAm~ f 50
135 4 3

72 132 56 134 39 '1


J. — A
31 176 130 50 120 4 9 120 4 9 130 255
15 163 1 255 34 157 e —<
c 45 i c e
Cm J W' 255 Q 0 0 3 3 255
A
255 103 141 1
t "t- 34 75 33 10 3 255 255 3 1 119 43 1 .1
A.
141 25 5 119 119 Oft 29 c-
Cm — —
c
143 4 9 43 174 14 23 156 50 169
103 126 25 255 167 79 146 c. 1 255 0

12 ZX Computing Monthly • November 1986


THE FUTURE IS HERE!
What better w a y to
plan your adventures
for 1987 than mark
them on a stunning
Level 9 year planner.
Fifty ZX readers c a n
rhyme their w a y to a
prize.

"There once was man


c a l l e d Clive,
Who one morning
brought the Spectrum
alive,
He thought «Oh well,
111 invent the QL',
And before lunch I'll
create the C5."

" • " h i s shining e x a m p l e of how to


write a limerick (okay there m a y
b e a few p o e t i c b u g s in it)
should give you some pointers
towards c r e a t i n g your own
rhyming masterpiece. To a d o r n P'onnor
your wall with a Level 9 year
planner a l l you have to d o is
c o m p l e t e the limerick b e l o w
Remember the last line must those w h o have thought u p the p e n c i l In your important
rhyme with the first two a n d the most a p t a n d humorous e n d i n g . e n g a g e m e n t s . A p a r t from b e i n g
third a n d fourth with e a c h other. The wall c h a r t is fully extremely useful the p l a n n e r is
Getting the right rhythm is laminated a n d washable and d e c o r a t e d with four s u p e r b full
important a n d prizes will g o to c o m e s with a fibretlp p e n to c o l o u r illustrations by Godfrey
Dowson.

Level 9 Yearplanner C o m p e t i t i o n
The limerick
A spokesman for Level 9.
said adventures are truly divine. Time to get into limerick mode.
The first two lines are. . .
A spokesman for Level 9,
s a i d adventures are truly divine,
Now it's over to you to
c o m p l e t e the last three lines. The
c o m p e t i t i o n is o p e n to a l l ZX
readers a p a r t from e m p l o y e e s of
Name: Argus Specialist Publications,
Alabaster Passmore a n d Level 9.
The c l o s i n g d a t e is D e c e m b e r
a.
Address: 5th 1986. Please r e m e m b e r to
write your three lines o n the
b a c k of your entry envelope.
Send your entry to Level 9
Post to Level 9 Yearplanner C o m p e t i t i o n , ZX C o m p u t i n g Monthly,
O No. 1 G o l d e n Square, London W1R 3AB.
Yearplanner C o m p e t i t i o n , ZX
C o m p u t i n g Monthly, No. 1
O G o l d e n Square. London W1R 3A&

12
ZX Computing Monthly • November 1986
#/
EVOLUTION
Masterly graphics,
infuriating puzzles * all
you ever wanted from a
bouncing ball game.

Revolution
Vortex/U.S. Gold
£9.99
Costa Panayl, author of m a n y of
Vortex Software's previous hits,
has m a d e a c h a n g e In direction
after his recent g a m e s Allen
Highway a n d Highway Encounter
a n d c o m e u p with another
winner.
Revolution is o n e of those
games w h i c h Is q u i t e simple to
play (In p r i n c i p l e anyway), but
very difficult to master a n d
absolutely Infuriating w h e n you
get Into the later levels of the
g a m e where you c a n see w h a t
you want to d o but can't quite
pull it off In time.
The g a m e Is p l a y e d on a
multi-tiered structure consisting
of eight levels, a n d your task Is
to start on the b o t t o m level a n d
work your w a y to the very t o p
Each level Is m a d e u p of a n
assortment of platforms, a l l o n
the same level but s e p a r a t e d by
gaps w h i c h have to b e a v o i d e d ,
these platforms are a r r a n g e d In
a roughly square a r r a n g e m e n t
(which c h a n g e s In e a c h g a m e )
with the o c c a s i o n a l e m p t y
position w h i c h you m i g h t find
yourself p l u m m e t t i n g Into If you
look before you l e a p ( e a c h of
these levels Is a bit like o n e of

those sliding square puzzles In


w h i c h you c a n move the
squares a r o u n d to try a n d form
a picture or s e q u e n c e of
numbers).
You control a b a l l w h i c h c a n
b e b o u n c e d a r o u n d the
platforms a n d In order to
c o m p l e t e a level a n d progress
to the next you have to solve
four puzzles. Scattered a r o u n d 2

S
e a c h level you will find four
platforms w h i c h c a r r y various
brlck-llke structures a n d s h a d e d
pathways. O n e a c h of these
platforms there are two grey
blocks w h i c h turn white w h e n
you b o u n c e Into t h e m a n d
d e a c t i v a t e them. Each brick will
r e m a i n d e a c t i v a t e d for just a few
seconds before reactivating a n d
turning grey a g a i n , but If you
c a n get b o t h bricks d e a c t i v a t e d
o
III
at the s a m e time then they will OL
both vanish — p r o b l e m solved • • • </>
EVOLUTION
a n d you c a n move o n to the
next p r o b l e m on that level.
Unfortunately you've also got
to c o n t e n d with the s h a d e d
palhways o n these platforms,
a n d these c a n have different
effects v a r y i n g from just killing
your b o u n c i n g or g r a b b i n g the
b a l l a n d shooting it over the
e d g e of the platform into
oblivion.
At the start of e a c h level you
are shown your position within
the overall structure, as well as a
m a p of the p a r t i c u l a r level that
your are on. This m a p highlights
both your o w n starting position
a n d the position of the puzzles
o n that level so you've got a few
tips to start off with. When you
see this m a p it's also a g o o d
i d e a to m a k e a m e n t a l note of
the e m p t y positions, as I f o u n d
that I often went b o u n c i n g from
o n e screen to the next only to
find myself b o u n c i n g into
nowhere. You only get five lives
(though there are a d d i t i o n a l
ones for c o m p l e t i n g levels) so
you can't afford to d o that too
often.
Controlling the b a l l is a n art
all in itself. It c a n move in any
direction lhat a joystick h a n d l e
c a n move in (a joystick is almost
c o m p u l s o r y for this g a m e I
should think), a n d responds very
smoothly to joystick control but
j u d g i n g the height a n d d i s t a n c e
of your b o u n c i n g is a skill that
will take a lot of refining,
e s p e c i a l l y o n some of the
trickier puzzles where you've got
to squeeze the b a l l through
some q u i t e tight spots.
There are four different heights
of b o u n c e , c o n t r o l l e d by using
the fire button, or you c a n kill
the b o u n c e altogether a n d just
roll a l o n g the surface of the
platforms. There is also a variety
of flying objects w h i c h patrol
e a c h level a n d t h o u g h few of
these are d e a d l y you c a n find
yourself a c c i d e n t a l l y c o l l i d i n g
with o n e a n d b o u n c i n g off in a
totally u n e x p e c t e d direction.
The g r a p h i c s are moslly in just
Iwo colours to a v o i d attribute
clashes, but as with Vortex's
Highway g a m e s the g r a p h i c
style Is quite distinctive, m a k i n g like a loony you're q u i t e free to
g o o d use of fine s h a d i n g effects d o so, but if you're content to
to create c l e a r a n d d e t a i l e d take things a little bit slower a n d
pictures. But where I f o u n d the just roll slowly a r o u n d while you
Highway g a m e s to b e a bit too try a n d figure out w h i c h w a y is
fast a n d furious for my gin- u p you c a n d o that too.
a d d l e d reflexes, Revolution is the At £9.99 Revolution is a bit
sort of g a m e that e a c h player pricey, but it's more likely to
c a n p l a y at his or her own provide a l o n g term c h a l l e n g e
pace. If you want to g o t h a n most other a r c a d e g a m e s
b o u n c i n g a r o u n d the platlorms a r o u n d at the moment.

12 ZX Computing Monthly • November 1986


ZX talks to Salford
based software house
Vortex about the
intricacies of
Revolution.

^ evolution, a c o m p l e x 3-D
brainteaser is a real test for
puzzle solvers as the g a m e
layout subtiey c h a n g e s with
e a c h new g a m e , Luke Andrews
of Vortex e x p l a i n e d the evolution
of Revolution.
"Firstly it was essential to
create the g a m e in 3-D. It offers
an attractive illusion a n d greater Vortex: Crete Panayl, Luke Andrews a n d
scope for c o m p l i c a t e d Costa Panayl
gameplay. The b o u n c i n g b a l l
idea was really a progression
from Highway Encounter but we
wanted to d o s o m e t h i n g it w o u l d just fall off rather t h a n
completely different with It. roll or p o p up. It was solved, but
"The i d e a h a d b e e n a r o u n d g e t t i n g the b a l l to look
in Costa's h e a d for over a year c o n v i n c i n g a n d realistic was
until he got the c o n f i d e n c e to p e r h a p s the hardest part.
create such a g a m e . What
happens Is that Costa c o m e s u p
with a n overall g r a p h i c
treatment a n d we discuss ideas
a n d ways of c r e a t i n g i m p r o v e d
gameplay.

On the level
"The levels i d e a c a m e at a later
stage. We knew the b o u n c i n g
ball was g o i n g to b e the m a i n
character but we w a n t e d a n
alternative to a l o n g d r a w n out
g a m e o n o n e level a n d
something different from the
usual map. With the I d e a of the
levels we solved both problems.
This way you c o u l d identify
where you are a n d the overall
layout very simply." Vortex's Allen Highway; S c h e d u l e d for
One of the Infuriating aspects budget re-rotoase o n U.S. Gold's
Amorlcana label
of puzzle b a s e d g a m e s Is
laboriously working through the
puzzles you've a l r e a d y solved to
get b a c k to the position you
r e a c h e d in your previous forays.
In Revolution this p r o b l e m
doesn't arise.
"There are eight layouts in the
stack a n d the c h a n c e s of
meeting those layouts in the
same order trwice are 1 in
10,000. There's also a
c h e c k e r b o a r d layout that you
encounter in the later levels. The
random element is built-in in two
ways. Firstly the puzzles are
mixed up in the various levels
a n d secondly you m a y find o n e
puzzle on a n early level a n d
a g a i n later but you will have
less time to c o m e u p with the "The i d e a of t o u c h i n g the two
solution. blocks to solve the puzzle c a m e
a b o u t half way through the
Complications d e v e l o p m e n t . The three of us
have b e e n together for a b o u t
"Programming g a m e s like this four years now a n d w h e n a n
presents immense difficulties i d e a c o m e s u p that we like we
a n d a l t h o u g h most of t h e m are all get enthusiastic. If any of us
Ironed out in the early stages. hesitate then we d i t c h it. With
One problem was that w h e n the the blocks we knew it was the
ball was p e r c h e d on a n o b j e c t vital ingredient we n e e d e d . "

12 ZX Computing Monthly • November 1986


r i-i IE
This month, Hewson's

Steve Turner has some
a d v i c e on how to

PROFESSIONAL Supercharge Your


Spectrum.

r o ui c: il-l

• n the past two years the
s t a n d a r d of Spectrum programs
has i n c r e a s e d d r a m a t i c a l l y . To
c o m p e t e In today's market you
have to push the Spectrum to its
p e r f o r m a n c e limits. This month I'll
look at a few tricks of the trade
that c a n b e used to realise the
full potential of the 48K m a c h i n e .

Increasing user RAM


To use all ot the RAM a p a r t from
the screen a n d attribute m a p s
you must shut off the Spectrum
ROM. Every 50th of a s e c o n d a
h a r d w a r e timer causes a n
Interrupt. This has the effect of
g i v i n g control to the ROM
k e y b o a r d s c a n routine. This
interrupt needs to b e switched
off with a d i s a b l e interrupt
instruction. Of course no ROM
routines c a n b e used or the
Spectrum ROM v a r i a b l e a r e o
m a y b e c o r r u p t e d (I have
always a v o i d e d using ROM
routines. It Is usually m u c h better
to design your o w n routines that
d o exactly w h a t is required).
You c a n also use more RAM
than there Is! This is a c h i e v e d by
using areas twice. Routines a n d
d a t a only used at the start of the
p r o g r a m c a n b e overlaid with
other routines l o a d i n g over
them. In AVALON for e x a m p l e ,
the c o d e for k e y b o a r d choice,
d i s p l a y i n g the pretty border a n d
Initialising everything is
overwritten by the m a i n g a m e .
Both ol these methods are
best i m p l e m e n t e d in the final
stages of testing. O n c e a p p l i e d
the g a m e is In a 'live' state a n d
c a n only b e started once. It is
also extremely difficult to get
b a c k to BASIC

Reducing the size of


your c o d e
It is best to write c o d e using as
few bytes as possible from the
outset of c o d i n g . This has to b e
b a l a n c e d with clarity a n d
e x e c u t i o n s p e e d requirements.
Here Is a list of tips to r e d u c e
the size of your c o d e .
1. Use XOR A instead of LD A,0
2. Use AND A Instead of CP A,0
3. Structure your programs to
a v o i d unnecessary repetition.
4. M a k e l a r g e m a c r o s into
subroutines.
5. To increment counts etc m a k e
use of INC (HL).
6. Use b l o c k moves a n d
"compares' w h e n a p p r o p r i a t e .
7. Use table-driven processing so
that e a c h routine performs a
greater r a n g e of tasks. For
/

b e in the r e q u i r e d ranges. It is
similar to using a r a n d o m value
Irregular shaped graphics
e x c e p t if you get the same value
whenever you want it.
Graphic is divided into 3. Design the d a t a so that as
byte size columns m u c h information as possible
c a n b e d e d u c e d from the
record number. In AVALON room
colours were a function of room
number.
4. Do not i n c l u d e the record
n u m b e r in the record. The
p r o g r a m either knows it or c a n
d e d u c e it from the record's
position.
5. Look for c o m m o n or r e p e a t e d
d a t a a n d g r o u p these records,
s p e c i f y i n g the c o m m o n ones.
6. Pack m a p s or suitable d a t a
a n d u n p a c k them into a buffer
for fast access.
Reducing RAM usage
of graphics
G r a p h i c s d a t a usually takes u p
a major part of the RAM in a
state-of-the-art a r c a d e g a m e . The
graphics, w h e n used, m a y have
to b e a c c e s s e d m a n y times a
second, so we must d e c i d e
w h i c h g r a p h i c s we c a n p a c k
a n d w h i c h have to b e in a
format suitable for fast plotting.
O n e of Ihe easiest ways of
So that our graphics data will consist of the getting more g r a p h i c s in the
unshaded bits w i t h some data to indicate p r o g r a m is to use custom
their displacement w i t h i n the graphic; the c h a r a c t e r sets as b u i l d i n g
file format will be as follows:- blocks. Large g r a p h i c s c a n then
b e constructed from the
characters. A d a t a record for
No. of pieces e a c h o b j e c t specifies its
dimensions a n d w h i c h
Displacement x,y characters it is m a d e u p of. If
size in bytes most of the characters are used
(List of graphic m a n y times the RAM savings are
bytes) considerable.
An extension of this i d e a is to
use a b u i l d i n g block larger than
Displacement x ( y a single character. This system
size in bytes c o u l d b e used to p r o g r a m a
g a m e like Knightlore a n d its
derivatives. Each 3D b l o c k c o u l d
b e o n e of the basic b u i l d i n g
graphics. By plotting them on
top of one another, walls, towers
a n d arches c a n b e constructed.
The c h o i c e of the shape a n d
the size of b u i l d i n g b l o c k
d e p e n d s on the style of the
g a m e . I have used v a r i a b l e size
blocks w h i c h l e a d to a very
Displacement x,y
flexible system. You c a n even
size in bytes b u i l d m a c r o blocks out of small
blocks using even less RAM,
etc.
t h o u g h there is a p r i c e to pay.
The CPU has more work to d o to
d e c o d e the d a t a a n d b u i l d the
graphics. This is why Quazatron
Instance, instead of c o d i n g a often will the d a t a b e used a n d only scrolls slowly. The poor CPU
movement routine for e a c h how tightly c a n It b e p a c k e d ? is busy constructing the bit of
object In a g a m e t a b u l a t e the Generally, p a c k i n g d a t a the picture m o v i n g into view.
movement characteristics, then m e a n s a slower a c c e s s time so Another way to optimise
write a general routine that often a c o m p r o m i s e is s p a c e used by g r a p h i c s is to
accesses the t a b l e a n d necessary. Here are the d e s i g n a g r a p h i c s format that
produces a different result for t e c h n i q u e s I use. caters for o d d s h a p e d objects.
e a c h entry. 1. Use v a r i a b l e length d a t a This also saves the CPU time as it
records where you c a n . does not have to waste time
Reducing the size of 2. Use ROM or M a c h i n e c o d e as
t a b l e d a t a as "free" d a t a .
plotting blanks.
data B a c k g r o u n d wall objects in Increasing execution
When designing d a t a tables
AVALON were chosen a n d
p l a c e d using ROM as a d a t a
speed
bear two things in mind; how table, a n d I adjusted the d a t a to The p l a c e to c o n c e n t r a t e on

ZX Computing Monthly • November 1986 59


p a r t o l a p i c t u r e off s c r e e n .
Structure of character editor Background objects are drawn
first, f o r e g r o u n d o b j e c t s last.
Finally this n e w f r a m e Is c o p i e d
to I h e s c r e e n .
The s p e e d is a f f e c t e d b y t h e
size of t h e b u f f e r or buffers t h a t
a r e b u i l t a n d c o p i e d . This Is w h y
so m a n y g a m e s r e d u c e t h e size
o l t h e m o v i n g s c r e e n a r e a . The
cleverest g a m e s m a n a g e to
maintain a large moving area
b y just p l o t t i n g t h e p a r t s of the
screen where c h a n g e s occur.
The r o u t i n e s t h a t c l e a r , b u i l d
a n d c o p y t h e buffers a r e w o r t h
o p t i m i s i n g . This is w h e r e t h e
craftiest t e c h n i q u e s a r e
e m p l o y e d . Lei us e x a m i n e t h e
v a r i o u s m e t h o d s a p p l i e d to
c l e a r i n g a b u f f e r to zeroes.
Using a LDIR i n s t r u c t i o n to
c o p y t h e buffer to itself is a
g o o d m e t h o d b u t n o l t h e fastest.
If W do draw tf P do put If S do uivo If J do load II takes 21 c y c l e s for e a c h of the
bytes to b e c l e a r e d , plus setting
u p o v e r h e a d s , If interrupts a r e
d i s a b l e d t h e stack p o i n t e r c a n
b e u s e d to PUSH two zeroes a
t i m e into t h e buffer. It o n l y takes
If G do get If C do paper If X do ink If E do edit
11 c y c l e s for e a c h two bytes
c l e a r e d p l u s 27 c y c l e s as a l o o p
c o n t r o l . If several PUSH
Instructions a r e c o d e d in a list
t h e n t h e 27 c y c l e l o o p c o n t r o l
If K D d o If V d o d o e s not h a v e to e x e c u t e for
select list clear display e a c h two bytes c l e a r e d . The
l o n g e r t h e list of PUSH
instructions t h e faster t h e routine.
s p e e d o p t i m i s a t i o n is in t h e a n i m a t i o n . This is d o n e b y S p a c e considerations usually
i n n e r m o s t l o o p s of the p r o g r a m . b u i l d i n g u p a n e w p i c t u r e or force a compromise.
O n e instruction s a v e d h e r e c a n
b e t h e e q u i v a l e n t of t h o u s a n d s 10 '.LtHK W J *
of instructions s a v e d e l s e w h e r e if 20 B0KW1R <> PAPER 6 INK 0 CLi
y o u c a n i d e n t i f y t h e routines that 3U LET I*-"" LEI c-« LET <«-c LtT .»c LLl ./«<
LET «*c LtT »-C LET 9=c Lfcl
LET i"C LfcT L»"C LEI d-t,
a r e u s e d Ihe most. It is 40 HflHl HI 0,4, "CHARACTER Et'ITOP CHAR LIST"
s o m e t i m e s useful to g e t a n i d e a se co sue 100
68 PR1HI AT 4,i|.-G*CEl P-PUt-,AT 5.11. ' E - E M T " .AT 6,tl."S«sA
of h o w l o n g a r o u t i n e is. VtE-.ftt /,U.-J»L0l*>*««T 8 - t l . " K » L I S T " . m ll.-Xmii# c-khr-.at lO.ll.-V-tLtf* PI
To d o this c o d e a HALT t"
70 PLOT IS. 0-"65 l/KAM -63,0 UfiU 0.63
instruction a n d set t h e b o r d e r to 88 PLOT 0.80 LK
' HW 163.0
a different c o l o u r . Restore t h e 30 PLOT 18'j.O W?HM 0.175
93 CO SUB 9900
b o r d e r to its o r i g i n a l c o l o u r a f t e r 100 REM function loo*
the t i m e d r o u t i n e has f i n i s h e d , 110 IF OR AS THEN CO SUB 400 CO TO 100
120 IF OR *t "P" TtCN GO SUB 4300 GO TO 100
t h e n r e p e a t e d l y c a l l I h e routine. 130 IF OR >» "8" THEN CO SUB 5000 CO TO 100
In most c a s e s I h e r o u t i n e w i l l 133 IF OR 4* - j- THEN CO SUB 6000 CO TU 100
OR »% THEN GO sua 4000 CO TO 100
a l r e a d y b e In s o m e sort of l o o p 140 IF
130 IF i l « " C OR I* -C" THEN CO SUB aooo CO TO 100
a n d t h e p r o g r a m c a n b e run as 160 IF OR It "X" THEN CO SUB 3000 CO to 100
n o r m a l . The size of t h e c o l o u r e d '|70 IF OR <1 THEN GO SUB 300 CO TO IDA
OR 4t -K- THEN GO SUB 300 GO TO 100
173 IF
stripe o n the u p p e r b o r d e r gives 177 IF OR It "v" THEN GO SUB 3000 GO 10 100
a n i n d i c a t i o n of e x e c u t i o n time. 180 CO SUB 300 CO 0 100
380 REM EL'IT CHRRRC ER
If t h e r o u t i n e e x e c u t e s for m o r e 385 LET l-X*<32»Y>*22394
t h a n a 50th of a s e c o n d t h e 386 LET j-120 if PEEK >-0 TH£M LET J-16
w h o l e b o r d e r will flash t h e 307 POKE I.J
310 C0 SUB 9900
chosen colour. 320 IF * M - 0 " OR it*" • THEN PLOT OVER 1 . | 3 9 - » GO TO 370
Usually t h e p l a c e w h e r e 336 LET J-0 IF PEEK 1-120 T>CN LET J-48
337 POKE I.J
s p e e d is most r e q u i r e d is in t h e 338 IF CODE *»>58 T K N RETURN
g r a p h i c s p l o t t i n g routines. In m y 340 LET <J*«d*+*
350 LET d»-d»+*
IF <J*>«0 HND <tx<8 THEN LET x"d<
IF <J»>-0 HMO d*<8 THEN LET »«d¥
g a m e s t h e CPU s p e n d s a b o u t 90 368 CO TO 300
p e r c e n t of its t i m e d r i v i n g t h e 370 LET i*16 IF PEEK 1*16 THEN LET ,t«120
373 IK I N K E Y t O * " THEN CO TO 373
p i c t u r e o n t h e s c r e e n . The 380 CO TO 30?
d e s i g n of the g r a p h i c s routines 400 REfl OftHUlNC.
403 LET I-fl+<32*B >+22912
m a k e s or b r e a k s a S p e c t r u m 410 POKE I,128+PEEK 1
g a m e , so I will d e l v e into t h e 420 UO bUB 9900
430 POKE l.E+<D»8>
t h e o r y of a n i m a t i o n so that the 460 IF CODE *t>38 THEN RETURN
problems c a n b e identified. 470 IF »»--0" OR * M " ' THEN • LET k-43800'C < C M >18 > FOR 1-0 TO 7 POKE USR "u
••I,PEEK <k + l >• NEXT I PRINT HT 12+b.i. If* • , PAPER d i C W t 164 CO TO 400

Animation
480 LET dx-dxt* IF dx>-0 UNO dx<22 THEN LET «-dx
490 LET dv-dv*b< IF d»>"8 AND d»<10 THEN LET t>-d»
493 CO TO 480
300 REH M l v c t ch*r
A n i m a t i o n is m o v i n g pictures. It 310 POKE 22383+< 32 Ic ). 243
is a c h i e v e d b y r e p l a c i n g o n e 320 CO SUB 9900
338 POKE 22363+< 32*c ># 120
p i c t u r e w i t h a n o t h e r in q u i c k 348 IF COOE if>38 ThCN RETURN
succession, the more frames per 343 POKE 22383+<32tc).48
s e c o n d the s m o o t h e r t h e 338 LET IF d»>-0 H*> cto<28 THEN LET c-d»

12 ZX Computing Monthly • November 198


/
360 IF c-d* ThCN CO TO 300
If interrupts a r e e n a b l e d
570 IF C-0 UNO « > C ThEN LET c-19' LET 1">»-Ze GO sue 1000' CO TO 300 slower m e t h o d s h a v e to b e used
580 IF C" 19 RND K1000 THEN LET C-fl' LET CO SUB lOOO CO TO 300 s u c h as listing LD (HL),A a n d INC
390 CO TO 3B0
teeo LET k-43000Kq»a>' HL instructions or LDI instructions.
1010 FOB r-0 TO 19
1820 FOR 1-0 TO 7 POKE USR "U"+1,PE£K <k + l)' NEXT 1 PRINT HT 1+r, 23.CHR« 164,"
"JFL+RJ" Fast a n d slow
1023 LET k-k+8' NEXT r
1027 POKE 22383+02*0,120
1030 RETURN
3000 REM CLS BOTTOM PREfl It is worth d e s i g n i n g your
3003 INPUT "CONFIRM CLS Y-YES
3010 IF ftf-"Y" OR ThCN FOR L-ll TO 21' PRINT AT LiO," • NEXT L
p r o g r a m so that h e a v i l y u s e d
3020 LET *f-"w"' RETURN d a t a a n d routines d o not
•4000 REM tt«t chtr frow list o c c u p y the lower 16k of RAM.
4810 LET K-C(qtC)*B)»43O0a
4020 LET H-16460 This is b e c a u s e all RAM from
4030 FOR L-l TO 8 4000h to 7FFFh is c o n s i d e r e d by
4033 LET o-PEEK k LET K-K+i
4037 POKE Hi0 LET N-N+236 the h a r d w a r e as the screen
4040 for n-i TO e b a n k of memory. Every time the
4045 LET P-0 LET O-INT <0'2> LET P»P-(0*2>
4030 LET J-0 IF p-0 TFEH LET j-4e v i d e o h a r d w a r e requires a byte
4033 POKE <22370-M>+<32*L>,J to put out to the TV, a n d the CPU
4060 NEXT n
4070 NEXT L is f e t c h i n g d a t a from the lower
4075 LET ft»--E" RAM. t h e CPU is t e m p o r a r i l y
4080 RETURN s t o p p e d in m i d instruction. This
4300 REM copy ch»r to I)*t
4310 LEI K«V<4+C>I8)*45000 c a n m a k e it 30 per c e n t slower.
4320 LET N"16460
4340 FOR L-0 TO 7 PUKE k*I.PEEK (n*<23$*l>>
4550 POKE UjF *u"+l,PEEK tk*l> NEXT L Character Generator
4>>U PR1N1 HI 164
4363 Pu*E 32 tc >. 120
4370 Lb 1 n*«"E- RETURM This month's p r o g r a m is a BASIC
-jOOO REM SFtVt
3003 1NPUI "NAME " LHST MO ",0 utility i use to d e s i g n g r a p h i c s
3010 SAVE rttCOOE 43*00.0*8 m a d e out of c h a r a c t e r size
3021 GU sue ?900
3030 RETURN b u i l d i n g blocks. It c a n also b e
60uu HEM LOHf u s e d to d e s i g n c u s t o m c h a r a c t e r
cOOt. INPUT "NHHt ".ri»,rtl 0,0,"FIRST lHhRmlieP HU ".U
6007 LOHLP H*<.OOE 4300y»<0li!> sets. It i n c l u d e s a l o a d a n d save
6010 QJ SUB 1000 routine so that sets c a n b e
6020 L H FL1UMI
fcOOOINPUT "PHPER=".l- IF l»7 THtN CO TO 3U00 stored o n t a p e or, with a small
•>•10 LET i » > V PET URN c h a n g e , to disk or microdrive. To
INPUT *iii> **-t
>010 LEI » * - V RETURN
if E/7 rmu co T O ?OOO use o n e of your custom sets in
LEI J«»lNKEYt IF )»•" I HEN WJ TU 'l.'UO BASIC p r o g r a m s POKE the
LEI J -0 LET S p e c t r u m v a r i a b l e CHARS with
.'.'1U II »«""S" IHEH Ltl <1
IT THEN LL1 J 1 256 less t h a n the address w h e r e
'.'.'JO 11 .t ••<,." THEN LL1 y o u l o a d the c h a r a c t e r set (see
It >*• "'."* IHEII LET d»=-l
•try • RETURN p a g e 173 of the S p e c t r u m
manual).

NOW AVAILABLE - t h e official s p e c t r u m Upgrade!

Turn your Spectrum into


a^pectrum + for lust £23 Professional full size keyboard
-includes 17 extra keys
Responsive typewriter style action
Accepts ail current Spectrum Trur video
software and peripherals
DtMf
Extended

o
mode
CjpviMt
Senwoton
Inverted comma
The official S p e c t r u m Upgrade. Naturally your upgraded
computer will accept all the peripherals in your Sinclair system-
o
interface 1 Microdrives and so on • as well as all Spectrum software
Just as important, new Spectrum software and peripherals will be designed I
with the Spectrum + in mind So the Sinclair upgrade adds stylish looks, new |
jg* f capabilities . and new potential for the future
T
Here's some exciting news for Spectrum owners... ^ ' HOW TO ORDER BY MAIL
trie official Spectrum upgrade Kit The upgrade has everything you i. if you requireus todotheupgradeforyoupieasesend £29.95+ £i.50p + p Total £31.45.
need to turn your spectrum into the stylish new Spectrum +. YOU don't even 2 Should you require the do-it-yourself kit Just send £23.00 - £15G p + p Total £24.50.
need an understanding of electronics. Just the ability to solder a few wires together' The J. If you require your Spectrum tobe repaired and upgraded to a Spectrum Plus we have a
leaflet in the kit gives dear step by step instructions if you re not sure about doing it
yourself, don't worry. Simply return your 48K Spectrum to us and for £29.95 +• £1.50
p + p we'll upgrade It for you.
special offer price of just £50.00 complete
Orders can be placed by using your Access Card on the numbers below to
The bigger, better Spectrum keyboard
The Spectrum + measures \2W x 6". It has a large typewriter style keyboard
with hard, moulded keys, vou ii find the new keyboard has a smooth, positive 0
action - ideal for touch-typing, word processing, simulation programs, and
extended programming sessions Two retractable legs give a perfect typing position. oc
There are 58 keys in all including 17 new keys. Programmers will be pleased 01
to see dedicated punctuation keys, a space bar. and separate shift keys for graphics upgrade Dept. W High Street west. Clossop. Derbyshire SK13 8HJ
and extended modes And a reset button allows you to clear a program from your Tel: (04574) 66555/67761 & Manchester 061-236 0376
computer s memory without disconnecting the power supply
© c o p y r i g h t Videovauit L i d NO 689032 37
#/ decide to do your g o o d d e e d
lor the day and try a n d get the
MOONLIGHT pills. The mansion consists of a
series ot doors* switches, plat-
MADNESS forms and monsters a n d your
task Is to wander round, collect-
Bubble Bus ing the keys and generally
t 7 9b avoiding getting killed. If you
are standing next to a door,
pressing lire wilt move you
I always used to hate, loathe through Into the room behind.
and utterly detest Bob-oJob
Week when I was a cub scout,
Stand next to a switch though
a n d the fire activates the
n iinr r r ... . iljwi
and Judging from the scenario appropriate mechanism. Not
font r s i
of this latest Bubble Buss title,
things havent c h a n g e d much
all of these are beneficial so the
templatlon to go round pres-
|P=|t!
over the last twenty years. sing everything in sight must be 11(11 "U
Having wandered down a avoided. Typical effects Include
huge drive to an old mansion, building exfra platforms, acti-
you ring the bell whereupon vating lifts a n d mobilising
your call Is answered by an monsters. Getting to where you Other features are annoying not very good value as It stands.
even older man. He explains want to go otten requires both too. You c a n redefine the Keeping to the boy scout
that he Is a mad professor and timing a n d planning. One keyboard but the pause and theme, be prepared betore you
Is somewhat surprised that you annoying feature Is that certain music on/oft keys are not buy this o n e
have got even this far. having doors lead to a row of eight affected so I found that every
managed to avoid his guards doors with a large pair of eyes time I tried to move right, I
and booby traps Such Is his above This Is some sort ot maze paused the g a m e This Is Just
surprise that he promptly drops a n d It Is possible to get out b a d programming and some- <v
down with a heart attack a g a i n . It just takes some thing that should have been

i;
although not before blurting
out that his pills are locked In
the safe and you will need
patience So frustrating Is this
element of the game that two
picked up In playtesllng. The
g a m e looks a n d plays very
K
M,
TJk
people who tried the game much like Booty which Is no
sixteen keys to open it. thought It was a bug and re- great surprise as John Cain
Honestly, the lengths some loaded the g a m e (there Is no wrote them both. Like Booty.
people will go to In order to way to abort your current Moonlight Madness would be
avoid paying up but you nobly game). all right at budget price but Is

gramming is lhat there are


blind spots from where the
computer opponents seem
Mostertronic unable to return the boll. If you
£1.99 serve on the left hand side of
the court to a point Just Inside
Here's something a Utile diflerent your opponents baseline they
for sports simulation lans — are stymied. Using this tactic
doubles volleyball! This latest will ot course take a lot of the
offering from Mastertronlc's edge off the g a m e It you
Entertainment USA range Is o choose to exploit it but Its
highly enjoyable game and handy if you need a vital point
the first attempt to my know- and certainly doesn't detract
ledge to put volleyball on Ihe from the g a m e If you are
Spectrum. sporting a n d choose to Ignore
You are In control ot two the computers achlltes heel.
players against a pair control- The animation Is fair and as
led by tne computer. Its a simulations g o It's pretty rep-
keyboard only g a m e a n d you resentative ot the game itself
d e f i n e your own keys. Its even though its only two a side
flying energy sappers such as deceptively simple however to (but as even doubles will give
THE HAPPIEST hovering canes and twirling
Jellies In the school kitchen
work out the best arrangement
ol keys so that you can switch
you a b a d case ot entangled
fingers two players are certainly
DAYS OF YOUR present little hazard. You can
pick up any two objects of
easily b e t w e e n your two
players. I had to redetlne them
enough).
For the enjoyment it gives It's
LIFE which there seem to be an
almosi unlimited supply. Quite
several times before I found an
arrangement that meant 1
more than good value for the
price and seems to suggest that
Firebird Silvc which objects were meant to wasn't accidentally hitting the there is potential tor someone
C1 99 help you eluded me a n d all wrong key. This I should a d d somewhere to produce a fully
you get from the Instructions are was down to my cackhanded- fledged tull price volleyball
some rather cryptic hints such ness. To get good team work simulation. For now though
Firebirds latest pocket money as, "map your way to the secret between your two players Bump Set and Spike Is In a class
game is a schoolboy caper passage turning over a new rather than Just bashing Ihe ball all by itself.
featuring an animated scally- leaf en-route" back first time requires a lot ot PS. There is however one
wag out to retrieve the head- However If you like problem dexterity on the keyboard. curious feature a b o u t the
masters wallet that he's nicked solving games In the hunt the Controlling the ball Is quite g a m e The crowd, who are
and then lost. Can he avoid object type vein this will prob- simple when the ball comes to totally Immobile throughout all
expulsion? This largely depends ably appeal. Well worth the your player a n d you are In a seem to be wearing white
on your ability To steer him price on presentation alone It position to hit It you press the fire masks over their (aces and the
through the school building may not give you the happiest key and a cross Is she going entire game looks as though It's
and grounds searching for day of your lite or even a wildly up the court to where the e ball being playing in tront of a
clues lo the wheareabouts ot exciting one but It you want to will land. Release the tire key gathering ot the Klu Klux Klan or
the heads dosh. settle for an afternoon of quiet and the ball Is on Its way. It's not are my eyes deceiving me?
All the basics of the game diversion this game will d a perhaps the most sophisticated
work well enough, the graphics of games but there are some
are large a n d bright a n d nice touches — for instance If
despite the o d d annoying you hit the ball high Into the air
attribute clash, quite pleasing It crosses unexpectedly in front
to look at. The number of rooms of the scoreboard at the top of
and outside locations Is quite the screen.
surprising a n d Its quite a lot of One g a m e p l a y i n g t i p
fun Just exploring. There are no which Is not down to my skill but
really nasty surprises as the rather an oversight in the pro-
IM

5
or jiggle your sword In the
direction ot one ot the armed
SGRIZAM enemies that comes along
occasionally and that's about
Amoricana It. There doesn't seem to be
£2.99 much skill Involved in the sword-
play a n d simply avoiding the
stream ol creatures that comes
Not only does this g a m e have wandering along (always from
an absolutely unpronouncable the same direction, so you don't
name, It's also virtually unplay- even get to run backwards and
able — or at least It's not a (onwards to a d d a little variety
game that I c a n Imagine to the game) gets monotonous
anyone wanting to play. In a very short time
/ I
Supposedly set in the 25th Sk X The graphics are quite good
century, Sgrlzam casts you In
the role of the warrior Mlrdav tfKVtfKVi iik tor a budget garnet and" Mli
"dlrdav
Is a large, well animated spr
sprite
who has been entrusted with Qvrt'i J * n t that wouldn't look out of place
the task of rescuing the Princess In a more sophisticated
Doxaphln. Naturally, being a
princess. Doxaphln (Doxle to her
1 i*.ll
HM •*i DlNAMlC l - M arcade/adventure It's just a pity
that the gameplay itself Is so
friends no doubt) Is d e a d dreary
beautiful and if you can rescue your way along the corrldoors, Getting hit three times ends the
her you get to win a huge dodging or killing the creatures game, a n d whenever t or
dowry a n d her h a n d In that will stand in your way. anyone else played Sgrlzam
marriage, so off you go to These Include zombie ducks, each game lasted about three
rescue ner from her captors on swordsmen, snakes rats and the seconds.
the planet Klndos. like Most of these can't be The trouble Is that there's so
Tucked away in a cell in the killed, but by d u c k i n g or little game In here — you can
Castle ol Klndos, Doxaphln c a n jumping at the appropriate walk a l o n g the corrldoor,
only be rescued by you battling moment you can avoid them. jump/duck to avoid the animal.

in Kansas a n d doesn't like you The main problem with the tion increased considerably,
the longer I played. As (or the
RETURN TO OZ
even mentioning Oz. game Is that the graphics ore
The game is a menu driven truly awtul. Plclures ot what you story, it follows the film closely
g r a p h i c adventure that Is hove found are small and not but I think that you would have
US G o l d designed to appeal especially easily distinguished and items to be a real ton o( the tllm to get
C f OS to young children. There is or areas thai are supposedly much fun out ot the g a m e One
nothing to type In apart (rom highlighted remain indistinct final quibble. All over Ihe
your name at the beginning and wishy-washy. There are also packaging ore notes crediting
Yet another spin otf from a tllm a n d everything is controlled by difficulties In using the space the Walt Disney organisation
tittle and no Ills not about going just three keys — space to high- bar to highlight dllterent objects who produced the film but
back to Australia, but rather It light a particular option from but this may be a peculiarity o( there is not a single mention ot
involves that magical land of the menu, enter to select that my rubber keyboard. Certainly. L. Frank Baum the original
Yellow Brick Roads, Emerald option a n d shift to return to the I found that I had to press the author. Take my advice and go
Cities and the Wicked Witch of main menu. There are six main keys up to half a dozen times and read the book insiead.
the West. Some time has passed options to choose (rom; Look, betore the next item was high-
since your first visit a n d you are Talk, Search, Get. List and leave, lighted and it would be all too
desperate to return to see your The list option (Inventory) is easy to dismiss something as
friends, especially as you have further subdivided Into Quit. not significant because you
a feeling that all Is not quite as Drop a n d Use When you select couldn't select It.
II should be with the Cowardly an option, all the relevant Items The game Is designed to
Hon, the Scarecrow a n d the Tin on the screen are highlighted make adventuring easy, but I
Woodman. The problem Is, Aunt a n d again, the space bar found that It h a d just the
Em wonts you to stay (Irmly put switches between them. opposite effect and my frustra-
U J
THRUST M j'tMjjrmraB
Firebird
£1
Tv
*
02
I'd seen this played on the C64 it
a n d I'd heard some good
things about It. so I was inter-
The s t a n d a r d of b u d g e t
software seems to be varying LIVES
ested to see a Spectrum version quite a lot these days. On one
ot Thrust turn up In the otllce a hand there's a small number ol
little while a g a games that make full price titles
Thrust Is a simple enough look overpriced, but at the
game, and quite old fashioned same time there are sllll a lot of
b u d g e t games that really
In many ways, being a sort of
cross between Asteroids and ought never to have seen the RRTING:
light of day. NO
Lunar Londer. The game puts COnnCrNT!
you in control of a small space Then, on the other hand,
craft shaped like an upside there are games like Thlngy
down V ' which hovers above and the Doodahs which are
the surface of a planet. At llrst neither Incredibly good nor
it is slowly drilting down towards Incredibly b a d a n d which
the ground, but quite quickly make a poor reviewer's life hell neighbouring countryside around the Doodahs and the
speeds up as gravity draws you because you can't rave over As usual though, there are passages of the maze is quite
downwards Using the rotate them or Indulge yourself by monsters out to get him. In this complex In places and the
left/right and thrust controls you giving them a good drubbing. case it's a bunch of creatures author has clearly put a bit of
have to guide your craft over So what do you say about known as Doodahs, which thought Into the layout of all the
the surface of the planet and •hem? come In various types There rooms.
collect the energy pod. Well, the plot of the game are Whatslsnames* Thlngummy- I can't really recommend
Controlling the craft is goes like this; Thingy (a Utile b o b i Whachamacalllts and Thingy a n d the Doodahs one
difficult enough, as there's sprite type person with an So-and-So, a n d they're all way or the other. It's not such a
gravity and your own momen- Idiotic grin) has gone and equally deadly. b a d game that you'll regret
tum to contend with, but there's broken his Spectrum and has to Thingy Is a g o o d o l d every penny you part with to
also the problem ot the Lympet replace It with a new one fashioned maze game with £1 buy It, but neither Is It the sort of
guns which defend the pods. before his parents (Ind out. The coins as the objects that you've game that is ever likely to be
The guns are powered by only way tor him to do this Is to got to collect, It's not badly remembered two months after
nuclear plants and If you can go of In search of (he money to done, but It does look fairly you bought It. The word that
(ire enough shots at the plants buy a replacement (just £60 dated — most of the passage describes it best is 'average*.
the guns can be deactivated apparently — do Americana ways and monsters are small
temporarily, but if you overdo it know more abut Amstrad's character sized blocks, making
you'll end up sending the plant plans tor the Speccy than use of the UDG facility, so the
critical a n d destroying the they're letting on?), and this will g a m e looks reminiscent of
whole planet (which Isn't a take him on a journey around others that you could hove
good Idea). some 200 locations. Including bought three years a g a It's not
rooms In his house and the fast and furious, but dodging
Then a d d to all that the
problem of your every decreas-
ing fuel supply and Ihe tricky
task of collecting additional
fuel from the supply pods on
the surface and you're faced
with a game that Is made up of
several simple tasks which
combine to moke quite a tricky
g a m e Hovering over the planet
Isn't too hard, and neither is
picking up the fuel or energy
pods, but when you try to do
both these things and conserve
your fuel and dodge bullets at
the same time that's when
things start to gel tricky.
There Is Just one pod on
each planet, and once you've
collected that you just head
skywards and the game will
move you on to the next planet.
The first couple of planets aren't
too much trouble, but on the
later planets the pods and
spare fuel get hidden away in
deeper and more complex
caves, and are protected by
more and more guns, so it's not
a game you'll master In a few
minutes
The graphics are quite
simple, but the animation and
responsiveness of your craft are
all quite smooth (and at least
the simplicity of the graphics
allows you to avoid attribute
problems). My only doubt
a b o u t the g a m e is that
b e c a u s e you have to g o
through all the planets In a starting from scratch and re- game that Isn't going to set the
fixed order you might get a bit loading the game again, so It's world alight, but it's b e e n well
fed up going through all those not a good idea to play the enough thought out to be chal-
early planets in order to master game with a triend unless lenging and fun for a few rainly
the later ones. Oh, and once he/she wants to use exactly the atlernoons and It's probably
you've chosen your control keys same controls. one of Firebird's better budget
you can't redefine them without Thrust is an old fashioned releases of recent months.
Compatible with ZX Spectrum +2 e Compatible with ZX Spectrum +2 • Compatible with ZX Spectrum +2

Probably the best joysticks in the world

/
" " CUP p r ^ t T a m F t
£

o
The Explosive Joystick
Compatible with ZX Spectrum.16k.48k.l28k+2.
Commodore 64. Vic 20, Amstrad. Atari, etc.
At only E8.95 the features on the 125 are second to none
Besides its unique internal structure, built to withstand
immense punishment from even the most vigorous games
player, the joystick contains no less lhan tour extremely
sensitive fire buttons Two are housed in the handgrip
which has been moulded lor extra comlofl and ease
ol operation The trigger tinger tire button provides
<1 ease and comlort (or your linger and the top lire
button is conlourod to tit your thumb tor sure tire
shooting The base tire buttons are positioned lor oxtra
control and two hand linng whether you are
righl or lett handed
A built in auto-lire switch provides continuous
shooting at the touch ol a tire button

ONLY Including Spectrum+2 Selector Connector


The 125 comes complete with a lull 12 months warranty
Pficatinclud* VAT, postag* k packing Delwy norma"* Uejayi
£ .port orOart al noaiira COH Daaiai anqumat walcoma
Oaalah product* »»a«lal)i» irom (*anch« ol
Olxoni ^'Ji'.uiii WH SMITH • H4>StSton
/ an) al good compute' s/opa

| A Right Royal Joystick

MICROSWITCH JOYSTICK
^ M E T A L SHAFT ^ A U T O F I R E
+ 2 SELECTOR CONNECTOR
^ 1 2 MONTH WARRANTY
• Deluxe,robust construction. • C o m f o r t a b l e rugged
hand grip, 8directional control with automatic centering.
• Heavy duty base with strong stabilizing suction cups.
• Highly sensitive tight touch MICRO SWITCH fire buttons.
• Economically designed control handle with indestructable
METAL SHAFT • Built in AUTO FIRE function.
M a c h l t J o y s t i c k compatible with • Sinclair ZX Spectrum t6K.48K.l2aK. + 2
• Amstrad computers • C o m m o d o r e 64 & VIC 20 Computers
• Commodore C16 A Plus 4 Computers (adaptor sold separately)
• MSX Computers • Atari 2600 A Atari 5200 Video Game Systems
« Atari Home Computers

Pncat mclud* VAI. potlaga I packing Ol.v»r< noim»ll( 14 dan £ iporl oidt'i al no ailia (Oil Oaalai «i\outi.t» aalcoma
Ch»iar>p<oducit a<a>iabla Horn twanckaiot D i x o n s UltSMI1tt# x.ghSi Slant

•GeerqK-
and all goodcompula* ihopi

'Mil. * CHEETAH MARKETINGlTO


IWIUOWBROOK SCIENCE PARK
Marketing CRICKHOWEU ROAD SI MttlONS.CARDIfF
TEL CARDIFF 10222177733; TELEX 49745S
FAX:0222 779404

Compatible with ZX Spectrum +2 • Compatible with ZX Spectrum +2 • Compatible with ZX Spectrum +2


5H
Ray Elder presents Break & Display
another prize winning From the Netherlands c o m e s
LISTING 3 a n d 4, courtesy of Rene
collection ot readers' U i t t e n b o g a a r d , o n e is to a d d
some protection to your p r o g r a m
routines (3). a n d (4) splits the screen into
7,32,248,21,122,178,32,222,201
two sections, the top half staying
15 DEF FN p$(at> = (STRt USR 600
u n c h a n g e d but the lower half
Printing Windows scrolling up. Great for a d v e n t u r e
00 >< TO 0>+CHR* 22+CHRt 2 U C H R 1
0+a*
g a m e writers.
^ obert Glavas. a regular writer Your p r o g r a m goes from line

\
from Bury, sent us a n unusual 20 onwards a n d all you have to _ 7 • - . i
p r o g r a m to a l l o w you to print a d o Is use the c o m m a n d PRINT FN
section or w i n d o w of the screen pSC'Text goes in the string"] with
to a ZX or A l p h a c o m printer. The a m a x i m u m of 32 characters at
M a c h i n e c o d e is r e l o c a t a b l e
a n d o n c e you e n t e r e d or
a time.
a E V
r e l o a d e d the p r o g r a m l o a d in
your previously save screen by LISTING 3
LOAD "" SCREENS a n d type G O 5 CLEAR 50898: FOR f=60899 TO
TO 1. Answer the p r o m p t a n d the 60970: READ a: POKE f.a: NEXT f
r e q u i r e d w i n d o w will b e 10 DATA 205,124.0.59,59,225,1.
p r o d u c e d . (LISTING 1) 15,0.9,235.42,61,92.115.35,114,2
01.118.205,142,2,123,254,255,32,
Reflections 248,58.58,92,254.12,40,10,254,16
,40.6,254.20.40.2,24.25.60.50,12
Mark Batts ot Abbots Langly 9.92,253,54.0,255,33,0,0.34.66.9
s u p p l i e d us with LISTING 2. a 2,33,0.0.34.68.92,59.59.195,125.
p r o g r a m to drive you r o u n d the 27.195.3,19
b e n d . Try it. 15 REM initialise with
RANDOMIZE USR 60899

A Sound Program
LISTING 4
S u p p l i e d by M i c h a e l Toner w h o 5 CLEAR 59999: FOR f=60000 TO
lives in Belfast, this short p r o g r a m 60081: READ a: POKE f,a: NEXT f
LISTING 5. will liven u p the o l d 10 DATA 33.0.72,205,141,234.33
Beep. O n c e e n t e r e d a n d RUN ,224.72.22.8.30,32.1.32.7,9,126,
just type RANDOMIZE USR 65511
1,224.248,9,119,35,29.123.179.32
to have your ears tickled.
.240.1.224,0.9,21,122.178,32.229
,33.0,80,205,141.234.201
Random Selection 11 DATA 22,8,30,224,1,32,0,9,1 FHTIMftTC
26,1,224,255,9,119,35,29,123,179
Ian Skillen proves the ZX81/TS1000 ,32,240,1,32,0,54.0,35.11,120,17 P L H y THE GRME
is surviving in C h i c a g o , but his
routine for selecting non
r e p e a t e d r a n d o m numbers over LISTING 1
a set n u m b e r ot selection c a n 10 LET KC=60000 LISTING 2
b e used o n any ZX computer. 20 RESTORE : FOR F=MC TO MC+54
10 LET x=0: LET y=0
(LISTING 6) READ A: POKE F, A: NEXT F
20 INPUT "Type a word in pleas
30 DATA 62,3.205,1.22,1,0,0,81

QLDump .122,254,0,40,+6,62,32,235,21,24
,-11,42,132,92,9,197,17,248,255
30 IF LEN aS>10 THEN G O TO 20
40 PRINT AT 0,0;ot
40 DATA 6,8,126,18.197,1.0,1.9
A rare beast i n d e e d from Mr L.W. 50 FOR s=0 TO LEN at+8
Tomlin of London. More of a tip
,193,19,16,-11,62,164,215,193,3.
121,254,32,32,-31.62,13,215,201
60FOR t=175 TO 166 STEP -1
really but for slowly f a d i n g QL. 70 IF POINT <s.t)=l THEN GO SU
He tells us that there is a screen B 105
90 REM general program 80 LET y-y+5: NEXT t: LET y=0:
d u m p utility o n the EASEL
100 INPUT "STARTING R0V?";R1: I
c a r t r i d g e c a l l e d GPRINT PRT LET x=x+3: NEXT s
F R1<0 OR R1>21 THEN G O TO 100 100 STOP
a n d should work with any Epsom
110 INPUT "FINISHING R0V?";R2:
type printer. 105 PLOT 0.75: DRAV 2 5 5 , 0
IF R2<R1 OR R2>21 THEN G O TO 110
Load it by t y p i n g 110 PLOT x.75+(y-3): DRAV 0,3
120 INPUT "STARTING COLUMN?";CI
a=RESPR(2000):LBYTES 120 PLOT x,75+y: DRAV 3,0
: IF C 1 < 0 OR Cl>31 THEN G O TO 12
MDV1_GPRINT PRT,a 130 PLOT x+3,75+y: DRAV 0,-3
When you wnt to print a 0 140 PLOT x+3,75+ <y-3): DRAV -3,
screen either from within a 130 INPUT "FINISHING C O L U M N ? " ; C 0
p r o g r a or after l o a d i n g a 2: IF C2<C1 OR C2>31 THEN G O TO 150 CIRCLE x+1,80-'y+3>,2
p r e d e s i g n e d screen simply t y p e 130 160 RETURN
CALL a 140 POKE MC+6.C1: POKE KC+48, <C
I tried It with a Shinwa CP80 2+1)
a n d it worked. 150 FOR F=R1 TO R2: PRINT AT F.
0;: LET L=USR MC: NEXT F

12 ZX Computing Monthly • November 1986


LISTING 5 3D Window & Text
10 LET A=USR "P"
Two trom A l e c Goodyear, the first program, a n d the s e c o n d to
20 FOR J=0 TO 31: READ Bt POKE
to d r a w a 3D 'window' on the allows text to b e input to a
A+J.B: NEXT J
screen, as written you have to specified position a n d length.
30 DATA 6 . 2 5 5 , 1 9 7 , 6 , 7 5 . 6 2 , 0 . 2 1
enter the positions, but these A g a i n the parameters c o u l d b e
1,254,16,252,193,16.236,201
dimensions c o u l d b e built into a built into a p r o g r a m if desired.
40 DATA 33.0.10.43.126.211.254
,6.205.5,32.-3.175.132,200,24.-1 LISTING 9
4 40 INPUT "ROV : " ; R
LISTING 8
50 INPUT 'COLUMN : ";C
10 REM 3D Vlndow 60 INPUT "MAX NUMBER OF CHARS
20 INPUT "ROV : « R : "; M
LISTING 6 30 INPUT "COLUMN 70 PAUSE 50
40 INPUT "HEIGHT 100 LET 1*="": LET A=0: LET B=0
10 PRINT "HOV MANY SELECTIONS
50 INPUT "WIDTH : »;V 110 PRINT AT R,C;
• •
15 60 INPUT "COLOUR *;P 120 IF B=50 THEN LET B=0
INPUT No
100 LET A$= M 130 LET B=B+1
16 PRINT NS
140 IF B<26 THEN PRINT »_";: GO
20 PRINT "HOV MANY G A M E S ?";
110 FOR K-R TO R+H-l TO 160
22 INPUT HG
120 PRINT AT N,C; PAPER P;At<l 150 PRINT "
25 PRINT NG
TO V> 160 PRINT CHRt 8;
30 DIM N(NG>
130 NEXT N 170 LET K$=INKEYS: IF THE
40 FOR 1=1 TO NS
140 LET R^(22-R>«8 N G O TO 120
50 LET K=I NT (RND«NG)+1
150 LET C-C»8-l 175 PAUSE 70
60 IF N ( K ) 0 0 THEN GOTO 50
160 LET H=H*8+1 180 LET K=CODE K*
70 LET N(K)=K
170 LET V=Vt8+l 190 IF K<32 OR K>127 THEN GO TO
90 NEXT I 220
180 PLOT C.R: DRAV V, 0: DRAW 0,
92 STOP
-H: DRAV -V.0: DRAV 0,H 200 IF A=M THEN GO TO 120
100 PRINT "NUMBERS"
190 FOR N-R-H-l TO R-H-3 STEP 210 PRINT Kt;: LET A=A+1: LET i
1000 FOR 1=1 TO NG
1 $=I$+K»
1010 IF N<I><>0 THEN PRINT N d )
200 PLOT C*3.N: DRAV V, 0 220 IF K<>12 THEN GO TO 250
1020 NEXT I 230 IF A=0 THEN GO TO 120
210 NEXT N
1030 COPY 240 PRINT CHRt 8;" H ; C H R $ 6;CH
220 FOR H«C+V+1 TO C+V+3
1040 STOP RS 8;: LET A=A-1: LET Ifc«l$(l TO
230 PLOT N.R-3: DRAV 0.-H
240 NEXT N A>
250 IF K O 1 3 THEN GO TO 120

Program Protection 2
260 PRINT " "
300 PRINT AT 21.0;"THE STRING V
AS : ";ll
Tony Porritt offers the system they
use In C l e v e l a n d for protecting
their listings. At this rate ZXC
readers will have the most
secure programs in the world:
Remember to only a d d line o n e
after your p r o g r a m has b e e n
tested a n d is b u g free else
you're stuck LISTING 7

LISTING 7

1 LET L=USR "a"-768: POKE 236


06,L-256*I NT <L/256>: POKE 23607
.INT (L/256)-l: DATA 15,30,12.1.
9.31
2 REM program starts here

Topsy Turvey LISTING 10 17,0,64.33.160.87.6.6.14.3,197,6

This routine is a n interesting


10 RESTORE : LET t=0 .8,197,6,32.26,79.126.18.113 CO
20 FOR 1=0 TO 117: READ a: POK 60 DATA 19.35.16.247.229.235.1
means of turning the display
E 32000»l.a: LET t=t»a: NEXT 1 .224.0.9,235.225,1,32,1.167.237.
upside down, the c o d e is
O
30 IF t<>10795 THEN PRINT "ERR 66.193,16,227.229,235,1
l o a d e d to 32000 but it is
OR IN DATA!!" 70 DATA 224,7,167.237.66.235,2
relocatable a n d c a n b e p l a c e d
25,9,193,16,210,13.121,254,2,32,
anywhere you wish, Use it by 40 DATA 17.0.88,33,160.90.6,11

oc
10.17.192,64,33,224.79.6.2,24
RANDOMIZE USR address. This .14,32,197,26.79.126.18.113,193,
one c a m e from the I.O.W. a n d 19,35,13,32,244.197,1,64,0 80 DATA 194,254,1.121.192,17.0
was written by David Hlscock. 5 0 DATA 167,237,66,193.16.232. ,72.33.160.79.6.3.24.180
O
LISTING 10.
z
GO

12 ZX Computing Monthly • November 1986


The Andromedans
(alien flavour of the
:HOR
levelled c o m p l e x are two sets of
five m o d u l e s ; only o n e set needs
to b e c o l l e c t e d to c o m p l e t e the
w e a p o n (the others will b e
e x p l o r a t i o n a n d discovery of all
those fiendish obstacles that lie
b e t w e e n you a n d the objects
you n e e d to collect, a n d
month) have been destroyed w h e n the c o m p l e x w o r k i n g out how to get past
self-destructs), then if you c a n them. But in Nexor m u c h of the
tinkering with an find the blueprints a n d repair e x p l o r a t i o n simply isn't very
the transporter b e a m you II b e interesting, a n d f i n d i n g the
awesome doomsday a b l e to k e e p the w e a p o n out of m o d u l e s just b e c o m e s a matter
e n e m y hands. of w a n d e r i n g a r o u n d for l o n g
machine. Your The NEXOR c o m p l e x might e n o u g h . M a n y of the rooms are
look a little familiar, since it's full of b o m b s a n d other features,
interstellar DIY mission d r a w n in the style of two- yet present no other c h a l l e n g e
c o l o u r e d 3D g r a p i c s that have t h a n w a l k i n g in a n d then
is to put it b a c k b e c o m e more or less s t a n d a r d straight out a g a i n b e c a u s e the
for a r c a d e adventures ever since p a t h t h r o u g h the room is totally
together. Knight Lore arrived to harry the obvious. There are a few rooms
nation's joysticks. All the usual with some tricky puzzles in, but
p a r a p h e n a l i a is here — m o v i n g these are In the minority. Apart
walkways, d e a d l y spikey things, from the m o d u l e s you c a n only
NEXOR tables a n d blocks that have to c a r r y o n e o b j e c t at a time, a n d
Design Design b e m o v e d a r o u n d to a l l o w you most of these c a n only b e used
in the room w h e r e you f o u n d
to r e a c h i n a c c e s s i b l e exits, a n d
£7.95 a n assortment of robot sprites t h e m (you can't c a r r y them from
w h o sneakily don't a p p e a r until r o o m to room), so there's no
T h e y ' r e at it a g a i n — it seems the s e c o n d time you pass e l e m e n t of j u d g e m e n t involved
that you can't g o near a through a room so that they c a n in d e c i d i n g w h i c h o b j e c t s to
c o m p u t e r g a m e these days take you by surprise. take with you or to l e a v e b e h i n d .
without b e i n g b e s e i g e d by You control the figure of the A l t h o u g h the p r o g r a m m i n g of
hordes of aliens w h o are just h e a d of secruity as he attempts NEXOR Is well u p to scratch the
falling over themselves to invade to l o c a t e the Nemesis m o d u l e s d e s i g n of the g a m e is rather
earth a n d s a m p l e the delights of a n d repair the transporter unimaginative. It's n o use filling
M i a m i Vice, Stephen King novels b e a m . You're u n a r m e d so the a room full of nicely d r a w n
a n d Chinese take aways. only way to a v o i d fatal collisions objects if n o n e of t h e m d o
This time It's the is by some smart movements anything. NEXOR has a d o p t e d
A n d r o m e d a n s ' turn to have a using the usual back/forwards, the style of g m e s like Knight Lore
c r a c k at us, but fortunately Our left/right a n d j u m p controls. a n d Alien 8. but with little of the
Boys have b e e n e a t i n g their M o d u l e s are c o l l e c t e d substance that m a d e them so
S h r e d d e d Wheat a n d have a u t o m a t i c a l l y as soon as you addictive.
p u s h e d the A n d r o m e d a n s b a c k t o u c h Ihem, a n d as you c o l l e c t
to their last stronghold in Orion. e a c h o n e you are t o l d how l o n g
All it n e e d e d was the is left before the w h o l e p l a c e
c o m p l e t i o n of Ihe Nemisis self-destructs.
w e a p o n to knock out that last The presentation a n d
stronghold, but then the e n e m y g r a p h i c s are a l l well u p to the
l a u n c h e d a desperate a t t a c k on
the NEXOR c o m p l e x where the
sort of s t a n d a r d that p e o p l e
e x p e c t from Spectrum g a m e s 1)881)
w e a p o n was b e i n g d e v e l o p e d these days, but I couldn't h e l p
a n d only your have survived to thinking that NEXOR l a c k e d a bit
k e e p Nemisis out of their hands. in g a m e p l a y . In these sort of
Scattered throughout the multi- games, half the fun lies in the

12 ZX Computing Monthly • November 1986


^ ^ • m w

Virgin Gomes prcwnis the third fontoslic compilation in the N O W G A M I S sorios., S


b e s t selling full price gomes on one tope for the price ol one full price new one!

H O W O m H J is o wide choice of high quality gomes Ihe whole family con enjoy.
A v a i l a b l e (or C O M M O M M H 64. SPICTWUM 1U and A M S T R A D C P C - ^ '

MICK FALDO PLAYS THE OPEN


i
Mind Gomes
li* beautifully presented simulation features 900 scrolling screens of authentic action
over the 18 holos of Iho Royal St George's course in Sandwich ft

VtrqinGonwi
iA
This b e a u t i f u l l y d e s i g n e d a r c a d e adventure features or. ( j ! g r a p h i c s a n d g a m e p l a y us ft
H H p ports you to a landWhcre evnlmust be defootea ond Iho power of good restoreaH

CODE NAME MAT II I


Domork I
B• < are ihe Captain of Centurion II in this exciting shoot-em-up. Your ship ho»a rongtof,.
w o a p o n ^ h i e l d s and a tracking system, but you mull decide Ihe best strategy to eliminate
httk^ tho attacking Myon craft. j

EVERYONE'S A KKALLY I fl
Mikto-Geei
Th>s is a muliisocenedarcadcodvoiituii.' featuring excel lent cartoon graphics and lot* of
humour Use your ingenuity to gel the gang working and uncover the combination to tHe
wages safe. I

VIEW TO A KILL
Oomark
5 pect ocular 3 port multi-screen arcade odvonturo based on the James Bond film Thero'io
car chase around the Eiffol Tower, a rescue from a flaming City Holt orvd some
Hj^i code-breaking ol Silicon Valley. •

Look out for N O W C A M I S and N O W O A M t t 3, still tho best vatuearound


for C O M M O O O t t f o n d S M C n N I M .

N O W GAMES 3 is available (rom all goad software stores or, if you have difficulty, directly from Virgin Games.
Pleoso moke your cheque or postal order poyoble to Virgin Gomos Ltd. Please do not post cash
N O W GAMES 3 is £ 9 . 9 5i , please tick the w r s i o n you require.
lh«; version requite. DCOHflMODORE
]C4 SPECTRUM I AMSTRAD
N O W GAMES 2 i t £ 8 . 9 55 (features: Air
A.r Wolf,
Wol! Chuckio
Cl.uc Egg, Tir Na Nog. Cauldron, World Cup II)
COMMODORE SPECTRUM.
N O W GAMES is £ 8 . 9 5 (feature;. Lords of Midnight, Brian Bloodoxe, Slrangeloop, Pyjamorama, A r o b i a n
Nights, f a l c o n Patrol II) [ 7 COMMODORE J SPECTRUM

• b s B
Nome Address
I
Virgin Games Ltd, 2/4 Vernon Yard. PoMobotlo Rood, London W11 2DX
Dan a n d the Mekon are
b a c k ! Dan Dare takes
to the skies in the new
biggie from Virgin.

Dan Dare
Virgin Games
£9.95

• t didn't take Virgin quite as


l o n g to get Dan Dare off the
g r o u n d as it's taken O c e a n with
Knight Rider, a n d now that the
g a m e is here it seems that, just
ior once, the wait was
w o r t h w h i l e In fact, Dan Dare
bears some r e s e m b l a n c e to
another O c e a n g a m e in that It's
like a simpler version of V . That's
not necessarily a criticism since
a l t h o u g h 'V' was q u i t e
impressive I f o u n d that g a m e a
bit too f i d d l y to b e a d d i c t i v e .
Dan Dare, o n the other h a n d ,
does a w a y with the
c o m p l i c a t e d icons of 'V' a n d
concentrates o n s h o o f e m - u p
action, with Just a t o u c h of
platform h o p p i n g a n d o b j e c t
c o l l e c t i n g thrown In as wed.
The plot is e x p l a i n e d by a
small c o m i c strip that c o m e s
p a c k a g e d with the g a m e : it all
starts w h e n a futuristic Eamonn
Andrews jumps a n d tells Dan —
"This Is your life'. At w h i c h point
n o n e other t h a n the Mekon By permission o l IPC M a g a z i n e Youlh G r o u p
himself makes a c o m e b a c k a n d
takes over the b r o a d c a s t , a prospect too horrifying to Within minutes Dan a n d Digby
w a r n i n g all the television viewers c o n t e m p l a t e , so the Earth are on course for the asteroid,
in the Solar System of his latest authorities have no c h o i c e but r e a d y to take o n the M e k o n a n d
fiendish plot. H e a d i n g towards to refuse his d e m a n d s . But how his followers, the Treens, a n d
the Earth under Mekon's control to save Earth? save the Earth — just tike the
is a h o l l o w e d out asteroid l a r g e g o o d o l d days.
e n o u g h to destroy the entire Inside, the h o l l o w e d out
plant u p o n collision. Inside the Dan's j a w asteroid contains five sectors tull
asteroid Is a self-destruct of a r m e d Treens, corridors,
m e c h a n i s m that c a n b e Back In the television studio l e d g e s a n d grav shafts (lifts,
a c t i v a t e d In order to prevent the Dan's j a w sets firmly, his u p p e r c o n n e c t i n g different floors). In
collision, but the M e k o n will only lip goes thrusting skywards a n d e a c h of the five sectors there is
destroy it if he Is d e c l a r e d Digby (the ever faithful, but o n e control e l e m e n t for the self
absolute Ruler of The Universe. utterly useless sidekick) h e a d s for destruct m e c h a n i s m , a n d only
Of course it goes without the nearest McDonalds, prior to w h e n you've c o l l e c t e d the
saying that h a v i n g o l d g r e e n g e t t i n g Dan's ship. The Anastasla. e l e m e n t in e a c h sector c a n you
b o n c e as ruler of the universe is r e a d y for take-off. g a i n e n t r a n c e to the next sector
a b o u t the g a m e , since you have
to g o through the sectors In a
fixed order a n d return to the
control room e a c h time you
might eventually get a bit b o r e d
with retracing the same routes
by the time you get into the final
c o u p l e of sectors. Of course the
system of corridors is sufficiently
c o m p l e x to a l l o w you to vary
your routes but I found it quicker
to get around, a n d easier to
r e m e m b e r my way, if I stuck to
roughly the same routes e a c h
time.

JBLy

Still, that doesn't m a k e Dan


Dare any less e n j o y a b l e
e s p e c i a l l y as the m a i n
c h a l l e n g e Is to improve your
c o m b a t skill a n d s p e e d in
c o m p l e t i n g the mission, not
simply f i n d i n g the correct route
through the corridors. A n d the
g a m e Is very well presented,
with o n e n i c e t o u c h b e i n g the
w a y that the screen is presented
like a frame from a c o m i c strip,
with c a p t i o n s a n d messages
from the Mekon flashing on
screen every now a n d then in
the same w a y that d i a l o g u e
a c c o m p a n i e s the illustrations in
a comic
Because of the d e l a y in
getting the g a m e ready, a n d the
s p e e d at w h i c h software is
i m p r o v i n g these days, Dan Dare
Isn't q u i t e as impressive as it
(assuming that you've m a n a g e d d i r e c t i o n a n d run away, might have b e e n h a d It
to find the relevant l o c k e d door). hopefully to p i c k off the Treens a p p e a r e d last year w h e n it was
The screen d i s p l a y shows two on some other screen. o r i g i n a l l y p l a n n e d , but even so
lloors at a time, so you c a n often The a c t i o n here is similar to It's still a highly e n j o y a b l e a n d
see the Treens d e s c e n d i n g from that in the C o m m a n d o type of p l a y a b l e g a m e a n d might even
above or a n o b j e c t that you g a m e , with Dan a n d his laser b e the best g a m e yet from
might want to collect, a n d this f a c e d with hordes of a l i e n Virgin.
adds to the a t m o s p h e r e of the soldiers, but the a n i m a t i o n Is
g a m e as it makes the a c t i o n unusually g o o d a n d the e l e m e n t
seem that m u c h busier w h e n of uncertainty In using your laser
you c a n see other things g o i n g a d d s to the excitement of Ihe
on a r o u n d Dan. g a m e . And, since getting shot
You've got just two hours to too m a n y times cuts into your
complete your mission, a n d time rather t h a n simply killing
allhough Dan can't b e killed, you, c o m b a t b e c o m e s a matter
the Treens c a n shoot at him a n d of j u d g e m e n t instead of Just
drain his energy w h i c h results In endless rounds of kill or b e
Dan b e i n g c a p t u r e d a n d kilted. As I m e n t i o n e d earlier,
carried off to the cell in that there are times w h e n r u n n i n g
sector. Escape from the cells is a w a y is the wiser course.
no p r o b l e m but It does result in
the toss of ten minutes a n d Inside the asteroid
much of the skill of the g a m e
lies In how g o o d you c a n get at The five sectors of the asteroid
fighting the Treens as the loss of a d d u p to quite a lot of
time is likely to b e your major corridors, a n d it's p r o b a b l y a
obstacle in c o m p l e t i n g the g o o d i d e a to m a k e some sort of
game. r o u g h m a p as you g o a l o n g in
The laser that Dan is a r m e d order to r e m e m b e r some of the
with isn't 100% a c c u r a t e , a n d important locations. Each time
your supply of a m m u n i t i o n is you f i n d o n e of the control
limited so you have to learn elements these have to b e
when to stand to fight a n d w h e n returned to the control room in
to turn that jaw In the other sector 1. That's my only d o u b t
NIGHTMARE RALLY
A top notch rally g a m e
from Ocean with
detours into other
dimensions.
Nightmare Rally
Ocean
£7.95
This rally Is far m o r e t h a n a
straightforward d a s h from A to B
over difficult terrain. Strange
effects have b e e n built into the
route w h i c h transforms It into a
trip through the Twilight Z o n a
Not only d o you have to SCORE
c o m p l e t e e a c h stage within a • •E? 1I3EJD
set time limit you must also BONUS
amass bonus points to progress • C O 1 1 • •
a n d to d o this you g e t involved
In some very strange
manoeuvres I n d e e d .
The l a n d m a r k s d o t t e d over the
l a n d s c a p e I n c l u d e marker flags
i n d i c a t i n g the course a n d fuel course a r e essential to c o l l e c t not e n o u g h to get you to the
d u m p s w h i c h give you a n the necessary b o n u s points. next s t a g e Also on the course
instant tank up. It's Important to Sometimes the w e a t h e r a r e numerous c o n e s w h i c h you
g o r o u n d the flags the right side c o n d i t i o n s alter a n d fo 9 must c l i p to g e t you the r e q u i r e d
as I n d i c a t e d on the d a s h b o a r d d e s c e n d s c u t t i n g visibility d o w n points tally.
layout b e l o w the m a i n screen c o m p l e t e l y so that o b j e c t s seem N i g h t m a r e Rally Is a n
a n d refuelling Is essential for you to a p p e a r out of n o w h e r e Each excellent g a m e for a n y o n e w h o
to r e a c h the finishing g a t e o n stage presents different likes b e i n g b e h i n d the w h e e l of
the first s t a g e challenges. a c o m p u t e r simulation. Very
That's the b a s i c set u p but The first Is a flat p l a i n strewn c h a l l e n g i n g , very u n p r e d i c t a b l e ,
there are m a n y surprises in store with objects to c o l l i d e with for a this g a m e is highly a d d i c t i v e
Reckless d r i v i n g is in fact bonus point a c c u m u l a t i o n a n d a n d nlghly recommended.
e n c o u r a g e d — m a k e for the others to slrictly a v o i d . O n l y
hills, j u m p over t h e m a n d you e x p e r i e n c e will tell you w h i c h is
S 9t bonus points a n d if you hit
e m at a n a n g l e the c a r d o e s
a n Impressive somersault a n d
which.
The s e c o n d stage is
c o m p l e t e l y different b e i n g a
you get even more points. w i n d i n g course over a n icy
But It you want to s a m p l e the s u r f a c e C h o o s i n g the c o r r e c t
more bizarre side of the rally s p e e d Is Important here but
h e a d for the m a g i c a l s t a n d i n g you'll find that even successfully
stones. R a m m i n g these h e a d o n g e t t i n g t h r o u g h the f l a g gates is
p r o d u c e s a strange r a n g e ot
effects. Sometimes y o u will fust
stop d e a d but p a r t i c u l a r stones
will variously c a u s e your c a r to
take to the air, reverse the screen
so you a r e d r i v i n g with the sky
a b o v e you or c r e a t e a curious
blurring effect o n the l a n d s c a p e .
All these effects are
g r a p h i c a l l y so c o n v i n c i n g thai
you i m m e d i a t e l y a c c e p t t h e m
as a part of the g a m e The
perspective shifts are also very
smooth g i v i n g a real sensation
ot speed. S e a r c h i n g out a l l the
screen effects c a n distract you
from r e a c h i n g your o b j e c t i v e but
it's worth e x p e n d i n g a few lives
just to test t h e m out a n d after a
few outings you discover that
they c a n a c t u a l l y h e l p you.
Flvina over trees a n d obelisks, for
instance, brings In some ma
v a l u a b l e bonus p o i n t s O n some TIME
stages, diversions from the m a i n
Wm,

415-00 f o r .->

***'*0 for I " ! * , Oversea c ,


J * " 'ssucs cc M a i | i , sen«Ji'on 10

I lhe m>

, MONTlilT '
1'Mcloa.,,,,^ issue " "
# Viable le^'P ;^ »r
# l9W^ndardboo^P ej(ure,... „ h (he only
I > from
from W n e [ * ! ° h o u l d M * " 1 ^ ui

- sEssg^ st
SfffiZ**- ^ -
hkiH* 1
e..

(delete'"0'
Signal ure i Q for (he 01 ^

l 0at<
I Cjtd No.
"^"CAP.TAls
^'"e'ude on..
— —— _ __ foil coo^j

* r d , h i s
form with — •\mA
^sssi^s^^
••jvudepJ>jDlt _
lto , •nek» * deb*<v S h e S l 40
5 w ihh. £d,o.AH*So^i,eiiaRif...mark 1
«
- ALSO
interface One owners ^ . n y Spectrum user with
Interface 1 will know that it
c o m b i n a t i o n ) , p a n d I are Ihe
PAPER a n d INK colours to b e
c a n a d d some new allows the use of mlcrodrives,
RS232 devices, a n d the ZX net.
c h a n g e d (07=Black-White, 8 = a l l
colours), nf is the new flash a n d
commands to Sinclair However a less well known
feature is the facility to extend
brightness intensities (0=neither,
1=bright, 2=flash, 3 = b o t h .
Basic, with this Speclrum BASIC by c h a n g i n g
the syntax of c e r t a i n keywords.
8 = l e a v e as they are). Finally, n p
a n d ni are the new PAPER a n d
program. This feature is used by my
routine to provide the Spectrum
INK colours (0-7=Black-Whlte,
8 = l e a v e as it Is, 9=contrast).
user with six extra c o m m a n d s . ATTR 1,0,6 TO 1.7,1 will c h a n g e
They are:— all characters w h i c h are bright
yellow INK o n b l a c k PAPER to
By Paul M a t t h e w s PLOT *x,y w h i c h will PLOT bright b l u e INK o n white PAPER.
a n y w h e r e o n the screen. Co- ATTR 8.8.0 TO 1,8,9 will c h a n g e
ordinates (O.O) are in the very all characters with b l a c k INK (no
bottom left h a n d corner, where it matter the PAPER c o l o u r a n d
is not usually possible to PLOT. So flash or brightness intensities) to
the n o r m a l PLOT O O b e c o m e s bright contrasl INK (either b l a c k
PLOT *0,16 a n d PLOT 0,175 or white) on the o r i g i n a l PAPER
b e c o m e s PLOT *0,191. colour. Note: one of the powerful
features of this c o m m a n d Is thai
POKE *a,b where b is a n u m b e r the w h o l e screen c a n b e
from 0-65535. This m e a n s that a c h a n g e d by setting the first
16-bit n u m b e r c a n b e POKEd three numbers to '&'. e.g. ATTR
with the low order byte g o i n g 8,8,8 TO 8,1,8 will c h a n g e the
into l o c a t i o n a a n d the high entire screen to b l u e PAPER.
order byte g o i n g into the
l o c a t i o n (a+1). i.e. POKE '23735, INVERSE w h i c h swops over the
64900 Is equivalent to POKE PAPER a n d INK colours in the
•23735, 132 a n d POKE 23736, 253. attribute file, without a l t e r i n g the

POKE AT a, aS w h i c h will POKE a flash a n d brightness intensities.


h e x a d e c i m a l value h e l d in aS
into l o c a t i o n a. e.g. POKE AT SIN w h i c h stands for "Screen
23296, "C9" will put C9 (201 d e c ) INvert" a n d will Invert all the
into l o c a t i o n 23296. If there is c h a r a c t e r s on the screen.
more t h a n o n e h e x a d e c i m a l NOTE: INVERSE a n d SIN have
n u m b e r (which c a n b e the same visual effect but
s e p a r a t e d by spaces) then they INVERSE affects ATTR (as bits 0,1 &
are put Into the locations 2 a n d bits 3,4 & 5 of e a c h
following a. e.g. POKE AT 23296. attribute are s w o p p e d over) but
"3EFEC9" a n d POKE AT 23296, "3E does not affect POINT whilst SIN
FE C9" are b o t h possible a n d affects POINT (as all pixels set
will POKE 3E (62 d e c ) into are reset a n d vice-versa) but not
l o c a t i o n 23296, FE (254) into ATTR.
23297 a n d C9 (201) Into 23298.
Therefore, this c o m m a n d c o u l d
b e used to enter m a c h i n e - c o d e
easily a n d quickly.
New Vector

ATTR f,p,l TO nf,np,ni w h i c h will The key to e x t e n d i n g the BASIC is


search out s p e c i f i e d attributes the " n e w " system v a r i a b l e
a n d r e p l a c e part or all of e a c h VECTOR. Whenever a syntax error
found, with a new attribute, f is occurs, the "shadow" ROM (i.e.
the flash a n d brightness that in Interface 1) is p a g e d in
intensities to b e c h a n g e d a n d c h e c k s the syntax to see if
(0=none, 1=bright only, 2=flash it's o n e of the Micro-drive
only, 3 = b o t h , 8 = a n y c o m m a n d s , if not, if j u m p s to the

12 ZX Computing Monthly • November 1986


a

Keywords
I have used five different
keywords a n d , as you c a n see.
they d o not all have to b e
c o m m o n c o m m a n d s e.g. ATTR (a
function) is b e i n g used. Also
note that if the syntax of your
new c o m m a n d is the s a m e as
that of the o r i g i n a l (e.g. PLOT a n d
POKE in this article) another
c h a r a c t e r (e.g. a n asterisk) has to
b e p l a c e d after the keyword or
the ROM will not recognise it.
However, if you d o not like the
present keywords, you c a n m a k e
your own u p e.g. *Renum or
'Delete, but these have to b e
t y p e d out in full a n d e a c h letter
must b e c h e c k e d by increasing
CH-ADD a n d then c o m p a r i n g
the character. The asterisk, w h i c h
c o u l d b e any shifted symbol, is
necessary to get the cursor out
of K mode.
It c a n b e seen (in lines 270 •
380) that the first t h i n g to b e
done, o n c e c a l l e d by the ROM.
is to get the c o d e of the error
c o m m a n d into A. a n d then
c h e c k this against the five new
c o m m a n d s (not six, POKE is used
twice). If o n e of these
c o m m a n d s Is f o u n d the
a p p r o p r i a t e routine is c a l l e d ,

m
otherwise the n o r m a l error
routine (tt01F0) is c a l l e d Instead,
w h i c h p r o d u c e s either a flashing
question mark or 'nonsense In
location p o i n t e d to by VECTOR. routines you c a n n o t use c a l l as BASIC'.
Therefore, to a d d c o m m a n d s you that w o u l d CALL a " s h a d o w " Interesting points to note In
need only c h a n g e VECTOR to routine. Instead, you have to use my routine i n c l u d e the fact that
point to the b e g i n n i n g of your a n RST # 0010 instruction POKE is used twice. This is d o n e
own m a c h i n e - c o d e routine. This ( ^ d e n o t e s hex) followed by the by Jumping to the s e c o n d
is d o n e In the set-up routine address of the " m a i n " routine. routine w h e n the asterisk after
(lines 210 - 240 of the assembly This " s h a d o w " routine p a g e s in the POKE fails. Only If the
listing. Lines 210 - 20 set u p the the " m a i n " ROM. calls the c h a r a c t e r also fails to b e a n "AT"
" n e w ' system variables, as these r e q u i r e d " m a i n " routine a n d sign is the error routine c a l l e d .
are not usually set-up until a n then p a g e s out the " m a i n " ROM. Another t h i n g to b e n o t e d Is that
error occurs). Before you c a n use In this article, the restart routine the ATTR s c a n n i n g routine (i.e.
the extra c o m m a n d s the set-up has b e e n given the n a m e w h e n it a c t u a l l y looks at the
routine must b e c a l l e d by a line CALBAS. O n entry to the routine screen) is really only four lines in
such as LET a = USR 64900 p o i n t e d to by VECTOR, another length. However, this is i n c r e a s e d
(64900 is where I p l a c e d the system v a r i a b l e CH-ADD will b e by also a l l o w i n g ATTR to have
routine in memory. However, if p o i n t i n g to the c o m m a n d of the new INK a n d PAPER colours 9
you assemble it. you c a n put it error-statement. To find out w h a t w h i c h c a n n o t b e easily
anywhere you want by c o m m a n d this is, the " m a i n " c h a n g e d in the s a m e way.
c h a n g i n g Lines 10 a n d 20. O n c e routine GET CHAR (tt0018) is t h o p e my routine provides
assembled, though, the routine used. This puts the c h a r a c t e r useful c o m m a n d s a n d that this
cannot b e moved. p o i n t e d to by CH-ADD into the A a r t i c l e will h e l p you to write your
When a non s t a n d a r d register. The next characters In o w n c o m m a n d s . For further
c o m m a n d Is found, the routine the statement c a n then b e f o u n d information. I advise you get Ian
will be c a l l e d . However, the by using NEXT CHAR (#0020) Logan's "Spectrum Microdrive
"shadow" ROM will b e p a g e d in w h i c h increases CH-ADD by o n e Book", a n d "The C o m p l e t e
which means that if you want to a n d puts the c h a r a c t e r now Spectrum ROM Dlssembly" by
use of any of the " m a i n " ROM p o i n t e d to, into the A register. Ian H o g a n a n d Frank O'Hara.

12 ZX Computing Monthly • November 1986


m

S P F C T R I I M " F X T F N D F D " B A S I C

Listing 1
33,174,234,1903 g l INK 1 - I INT (RND*8) AND 1 * 8 ) 1
220 DATA 9 1 , 3 2 , 2 3 0 , 1 9 3 , 1 9 3 , 3 , 2 1 BRIGHT INT (RND«2)| FLASH INT <R
3,121,28,213,123,28,234,204,194, NT)* 7 ) f PAPER p - C I N T (RND*8) AND
2 3 9 , 2 3 3 - 1 1 1 , 2 1 3 , 1 21 , 2 8 , 2986-m p = B> t * ( , ' : NEXT g
M a c h i n e c o d e looder. 230 DATA 2 1 3 , 1 2 3 , 2 8 , 2 0 3 , 1 8 3 , 3 , 2 180 PRINT M1 I AT 0 , 0 1 INK 3 | ' P r e
13,148,30,234,10,48,33,234,8,36, • • any koy t o d e m o n s t r a t e : * 1 AT 1
I REM 5 1 x E x t r a Commands 7,1,7,7,1861 ,01 INK 0|*ATTR * | INK l | 4 | " , * l
by Paul M a t t h e w s 240 DATA 3 2 , 2 , 1 4 , 0 , 1 9 7 , 2 1 3 , 1 4 8 , INK 2 | p | * , * | t | * TO * | INK 1 ) 4 1 1
IP CLEAR PEEK 25732•236»PEEK 2 30,234,10,48,36,234,8,36,9,1,36, *,'l INK 2 | p l | * , ' l l l : PAUSE 0
•5" , 33-&36: LET p«PEEK 2 3 7 3 0 * 2 3 6 » P 36,32,1438 700ATTR ( , p , t TO 4 1 , p l , l l
EEI' 2 3 7 3 1 * 1 : LET m-233-PEEK 2 3 7 3 2 4 3 REM A d d r e s s 63200: 230 POKE AT 2 3 2 9 6 , ' 0 6 0 1 CD000E
I 230 DATA 8 , 1 4 , 0 , 2 4 , 4 , 7 , 7 , 7 , 7 9 , 2 C 9 " : REM LD It, t 1 CALL 0E00 RET
20 CLS « : PRINT TAB 31 FLASH 1 23,9,229,193,203,37,233-m,197,21 260 LET a-USR 2 3 2 9 6 : PRINT N i l A
(• Lond in*} ~6 Command*" D a t a 3 , 1 1 8 , 3 0 , 1893-m T 1 , 0 1 INK 9 1 ' P r e s s any K e y t e x c e
30 FDR 4«p TO p » 4 3 9 STEP 20: L 260 DATA 6 , 2 3 3 , 2 3 4 , 8 , 4 0 , 3 , 3 6 , 6 , pt ~(-">to C o n t *
ET t - 0 : FOR g » 0 TO 19 213,68,34,1,0,248,197,213,148,30 300 PAUSE 0 : BEEP . 1 , 1 0 : BEEP .
1 0 READ a : LET t - t * a : POKE 4 * g ,193,234,2233 1 , 1 3 : BEEP . 1 , 2 0 : BEEP . 1 , 1 2 : IF
, a : NEXT g 270 DATA 8 , 3 2 , 6 , 1 2 0 , 2 3 8 , 3 6 , 7 1 , 2 PEEK 23360< >CODE ' I ' THEN GO T
30 READ c : IF « < > t THEN PRINT 4,7,48,233,7,7,7,177,79,203,37,2 O 20
' E r r o r in D a t a Between A d d r o s s e 33-m,209,1826-w 1000 DATA ' B l a c k ' , ' B l u e ' , ' R e d * , '
and * 1 4 » 1 9 : BEEP . 1 , 0 : BE 280 DATA 3 3 , 0 , 8 8 , 1 2 6 , 1 6 0 , 1 8 3 , 3 2 M a g e n t a ' , ' G r e e n * , ' C y a n * , ' Y e I low*
EP . 1 , 1 2 : BEEP . 1 , 0 : STOP ,40,126,162,171,119,123,162,203, ,*Wht t e '
60 NEXT 4: PRINT TAB 3 1 " D a t a E 87,40,18,230,36,2161 9000 REM I n s t r u c t i o n s
n t e r e d C o r r e c t l y * : BEEP . 1 , 1 2 : B 7 9 0 DATA 1 2 6 , 4 0 , 2 , 2 3 8 , 3 6 , 2 4 6 , 7 , 9 0 1 0 CLS : PRINT INK 31 AT 0 , 6 | *
EEP . 1 , 1 3 : BEEP . 1 , 2 0 : BEEP . 1 , 1 2 0 3 , 11 I , 4 0 . 2 , 2 3 8 , 7 , 1 1 9 , 1 2 3 , 1 6 2 , 2 S i x E x t r a Commands*I AT l , 7 | * b y P
3 30,36,40,8,2034 auI Mat t h e w s *
70 PRINT • • • • T h « Rout 1ne H i l l 7 9 3 REM A d d r e s s 6 3 3 0 0 : 9020 PRINT AT 3 , 0 | ' T h i s 440 B y t e
now be s a v e d . To r e - l o a d t h e 300 DATA 1 8 2 , 2 0 3 , 8 7 , 4 0 , 2 , 2 3 0 , 1 9 r o u t i n e g i v e s t h e u s e r t h e 4ol I
r o u t i n e a t any time, enter th 9,119,33,174,734,91,32,703,193,1 O H l n g new Commands:*
e ( o i l OH I rig CLEAR * | p - l ' t * L O 93,3,197,213,148,2736 9030 INK l : PRINT AT 6 , 0 | ' P L 0 T »
AD • • • • C O D E * S p ! * , 4 4 0 " 1 " L E T » - U S 3 1 0 DATA 3 0 , 1 9 3 , 2 3 4 , 8 , 3 2 , 3 , 1 2 0 , x , y * | INK 2 | - W h i c h can PLOT e v e
R "!p 238,192,71,201,234,4,48,149,13,1 n o n t h e b o t t o m two l i n e s . *
80 5AVE * 6 Command®'CODE p , 4 4 0 3,177,79,201,2286 9040 PRINT AT 9 , 0 1 " P O K E » a d d r , n u
03 REM or t o M i c r o d r i v e w i t h : n • t INK 2 | ' w h i c h H i l l POKE a l 6 -
SAVE » * m * l l l * ( S Commands * CODE p , b l t number I n t o a n a d d r e s s . *
9030 PRINT AT 1 2 , 0 1 ' P O K E AT addr

Listing 2
90 PRINT • • • • T o u s e t h e E x t r a ,h* INK 2 1 ' w h i c h w i l l POKE ad
Commands now, you need o n l y » n t dr w i t h hex h e l d I n t h e s t r i n g *
or t h e l a s t o l t h e a b o v e s t a t e m e 9060 PRINT AT 1 3 , 0 1 * A T T R 4 , p , l T
nti. • O n 4 , n p , n i * | INK 2 f w h l c h oe
93 REM A d d r e s s 6 1 9 0 0 : e k s o u t a t t r i b u t e s and c h a n g e s p a
I00 DATA 2 0 7 , 4 9 , 3 3 , 1 4 1 , 2 3 3 - 1 1 1 , 3 1 Demo ot the now c o m m a n d * . r t or a l l o4 e a c h f o u n d . *
,183,92,201,213,24,0,234,246,202 9070 PRINT AT 1 9 , 0 1 ' S I N ' | INK 2
, 189, 233-m, 234 , 244 , 2 0 2 , 3276-m-fc t ' l . e , ""Snreen ! N v e r t ~ *
1 1 0 DATA 2 2 3 , 2 3 3 - m , 2 3 4 , 1 7 1 , 2 8 2 , *Demo P r o g r a m , t y p e ln# 9080 PRINT AT 2 0 , 0 t INK 0 ( " a n d " [
1 22 , 234 -•», 2 3 1 , 221 , 202, 84 , 2 3 4 - m , 2 •machine code f i r s t ' 4 INK 1 I AT 2 1 , 0 1 'INVERSE *1 INK 2
3 1 , 1 7 8 , 1 9 4 , 2 4 0 , 1 , 2 1 3 , 3 2 , 0 , 3610-1 * * * • s n * R i * * i l l 1111 v 111 v ( • I . e . " " A t t r i b u t e Inverse""*
• •31 3 CLEAR 6 4 8 9 9 : LOAD * 6 Comman 9090 PRINT N i l INK 3 ) * P r e s s any
120 DATA 2 0 3 , 1 8 3 , 3 , 3 3 , 0 , 6 4 , 1 2 6 , ds'CODE hey ( o r D e m o n s t r a t i o n *
47,119,33,124,234,08,32,247,24,3 10 LET a-USR 64900: GO TO 9000 9 1 0 0 PAUSE 0: INPUT **
3,213,32,0,1866 13 REM Change v a l u e s In l i n e s 9 1 1 0 POKE AT 2 3 2 9 6 , ' 0 6 1 3 CD000E
130 DATA 2 3 4 , 4 2 , 3 2 , 4 3 , 2 1 3 , 1 2 1 , 2 3 and 10 l o r u s e In 16K C 9 * : REM I.D B , * 1 3 CALL 0E00 RET
8,203,183,3,213,148,30,243,213,1 7.0 RESTORE 9 120 FOR 4 - 0 T O . t l : LET a-USR 23
48,30,193,79,62,2493 30 FOR 4 - 0 TO 7 : FOR g - 0 TO 7 2 9 6 : NEXT 4
140 DATA 1 9 1 , 1 4 4 , 3 6 , 9 6 , 2 1 3 , 1 7 6 , 40 PRINT AT 4 * 2 , g * 4 1 INK f t PA 9 1 3 0 INK 0 : PRINT AT 1 1 , 0 1 * S 1 N e
34,213,236,34,193,193,3,213,32,0 PER g f ' I FLASH 1 [ ' } BRIGHT 1 M e e t s t h e POINT command a s e a c h
,234,172,32,83,2378 ! • I FLASH 0 1 • p i x e l changer. I t s s t a t e * ' * e . g . P
143 REM A d d r e s s 63000: 30 PRINT AT 4 # 2 + 1 , g * 4 1 PAPER 4 OINT t o , 0 1 - * IPOINT 1 0 , 0 )
130 DATA 2 1 3 , 1 2 8 , 2 8 , 2 3 4 , 4 4 , 4 0 , 2 i I N K . g t ' t FLASH 1 1 ' ! BRIGHT 9 1 4 0 PRINT Mil INK 3 | * P r e s s any
,231,0,213,32,0,213,140,28,203,1 1 I ' t FLASH 0 | ' k e y 4or Demo o4 S I N * : PAUSE 0:
83,3,213,241,2421 60 NEXT g INPUT * *
160 DATA 4 3 , 1 9 7 , 2 1 3 , 2 1 3 , 1 3 3 , 3 0 , 70 READ • • : PRINT INK 8 ! PAPE 9 1 3 0 S I N : PRINT AT 1 4 , 0 1 " a n d now
197,223,709,193,120,234,0,32,7,1 R 8I FLASH 81 BRIGHT 8IAT 4 * 2 , 0 1 POINT ( 0 , 0 ) * * IPOINT ( 0 , 0 )
77,234,1,40,223,2783 ' INK* ' [ . i f I AT 1 * 2 * 1 , 0 ) ' P A P E R - ' l a * 9160 PAUSE 3 0 : PRINT AT 1 6 , 0 ! * IN
1 7 0 DATA 3 6 , 2 0 4 , 2 6 , 2 3 4 , 3 2 , 4 0 , 1 9 80 NEXT * VERSE e 4 4 e c t s ATTR AS a l l INK an
, 2 0 3 , 4 6 , 234 - 1 1 , 7 , 7 , 7 , 7 , 1 1 , 1 9 7 , 7 9 , 90 PRINT AT 1 7 . 0 1 INK l j ' l s t k d PAPER c o l o u r s a r e swopped e.
19,26,203,1701-m 4 t h Numbers: " " 0 = n o n e , 1 - B R , 2 « F L g . AT TP ( 0 , 0 ) - * I AT TR ( 0 , 0 )
180 DATA 4 6 , 2 3 4 - n , 1 7 7 , 1 9 3 , 1 1 9 , 3 , 3"FL • BR, 8"J> 1 I * ' INK 2 1 ' O t h e r s : 9|"«0 PRINT Hit OVER It INK 3 1 * P
3,19, 11,24,216,214,48,234, 10,216 0 to 7*Black to White, 8-A11. A r e s s any k e y 4or INVERSE Demo * :
,214,7,234,16,216,2343-w loo 9"Contrast tor 316th* PAUSE 0: INPUT * *
190 DATA 2 1 3 , 2 4 9 , 3 6 , 2 3 4 , 4 2 , 3 2 , 1 100 INPUT "AT TR ' I 4 I ' , ' I p l ' , ' | i 9 1 8 0 INVERSE : PRINT AT 1 9 , 0 1 * an
76,213,121,28,203,183,3,213,133, 1' TO • | « l | a , " l p l f a , a | 1 1 d nOH ATTR ( 0 , 0 ) - * I AT TR ( 0 , 0 ) '
30,197,213,133,30,2734 1 1 0 IF 4<0 OR p<0 OR 1<0 OR 41< • ( b u t s t i l l POINT ( 0 , 0 ) •> ' ( P O I N
193 REM A d d r e s s 6 3 1 0 0 : 0 OR o l < 0 OR I 1< 0 THEN GO TO 10 T (0,0)I•)•
200 DATA 1 9 7 , 2 2 3 , 1 9 3 , 1 1 3 , 3 3 , 1 1 2 0 9 1 9 0 PRINT H i ; INK 31 A1 0 , 0 | * P
,24,138,213,32,0,203,183,3,33,0, 120 IF H >3 AND 4 0 8 ) OR p >8 OR r o » any k e y (or ATTR Demo IN
88,126,230,192,2346 I >8 OR 14 1 >3 AND 4 1 O B ) OR p i >9 O t o : To s t o p demo p r e s s "I"") *
2 1 0 DATA 8 7 , 1 2 6 , 7 , 7 , 7 , 2 3 0 , 3 6 , 1 7 OR 1 1 > 9 THEN GO TO 100 9 7 0 0 PAUSE 0: CLS : GO TO 20
8,87,126,13,13,13,230,7,178,119, 130 FOR g=0 TO 3 1 : PRINT AT 2 1 , 9999 SAVE m - 6 - Demo* LINE 1

12 ZX Computing Monthly • November 1986


c 3

Deactivators
Ariolasoft
£8.95
o ^ s chief of security at a top
secret research centre, you a r e
a l r e a d y In c o n s i d e r a b l e hot
water as a g r o u p of terrorists
have b y p a s s e d your security
system a n d p l a n t e d a series of
bombs, t i m e d to d e t o n a t e in
s e q u e n c e over a short p e r i o d of
t i m e As If that wasn't e n o u g h ,
they have also r e p r o g r a m m e d
the g u a r d s to a t t a c k everything
on sight. Your only h o p e of
r e g a i n i n g some of your lost
credibility Is to send In a t e a m
of d e a c t i v a t i n g droids a n d get
rid of the b o m b s as q u i c k l y as
possible.
The b u i l d i n g Is o n five levels
a n d e a c h o n e must b e c l e a r e d
In turn. At the b o t t o m of the
screen Is a m a p showing the
layout of the floor together with
the l o c a t i o n of your droids a n d rooms have d e c i d e d l y funny p e o p l e will find that they are
the b o m b s A series of Icons c a n p r o p e r t i e s The m a i n difference getting nowhere fast with the
be used to select a specific you will n o t i c e Is that they are g a m e . Certainly It Is very
droid a n d also to view a n y two a l l c o l o u r c o d e d a n d this refers d a u n t i n g at first a n d It w o u l d
a d j a c e n t r o o m s These are to the gravity level In the room. h e l p c o n s i d e r a b l y If you c o u l d
drawn In 3-D perspective a n d This ranges from V2G to 3G a n d get a d e c e n t demonstration
show details of all the exits a n d affects your a i m b a d l y w h e n you before d e c i d i n g if It is the g a m e
objects present. try to throw ob|ects o u l of a for you. Love it or hate It, It will
C l e a r i n g the level of b o m b s is room. At higher levels, rooms are definitely give your grey matter
no easy matler a n d there are rotated through 90 or 180 a g o o d working over.
several p r o b l e m s c o n f r o n t i n g the degrees, g i v i n g rise to another
droids Not the least of these is set of p r o b l e m s Or a room m a y
that they are limited In w h i c h b e b l a c k e d out totally.
rooms they h a v e a c c e s s to a n d Deactivators is a n excellent
this results In o n e d r o l d h a v i n g mixture of strategy a n d action. It
to pick u p a b o m b a n d throw it is not easy to work out the
through a w i n d o w Into a correct s e q u e n c e of events that
different sector. It helps If you you must organise a n d a lot of
have another d r o l d there w a i t i n g
to c a t c h it for there is always the
c h a n c e that the b o m b will
detonate prematurely. You will
also find circuit b o a r d s l y i n g
around a n d the o b j e c t with
these Is to return t h e m to the
computer room. These are
essential as they o p e n u p extra
windows a n d doors, a c t i v a t e
teleports a n d remove force
fields Your a i m Is to f i n d a room
at the corner of the b u i l d i n g
with a w i n d o w l e a d i n g to the
outside through w h i c h you c a n
dispose of the b o m b
On top of all this there are the
guards to c o n t e n d with. They will
destroy you o n c o n t a c t a n d the
only way to neutralise t h e m is by
persuading t h e m to follow you
through a nole In the floor onto
the next lower level. Do this often
enough a n d the g u a r d s will
blow up. Still your p r o b l e m s
aren't over. Because of the
nature of the research
establishment, some of the
What is the Bad didn't set the world a i i g h t
(though I thought It was
shouted d o w n to you from
upstairs. This involves l o o k i n g for.
Tempered Thing, how excellent), but now Don Priestley
a n d his mega-sprites have
a n d also m a k i n g use of the
creatures that will p o p u p from
do you boil Slimies, a n d r e a p p e a r e d at the h e l m of the
first g a m e from Ihe new Piranha
the trap d o o r just a b o u t every
time you o p e n It. A l o n g the way
where does Terry label, The Trap Door, b a s e d o n a
new children's series p r o d u c e d
you'll have to solve some of the
most devious a n d i m a g i n a t i v e
Wogan fit in to all this? by Terry Wogan's own p r o d u c t i o n
c o m p a n y , a n d d u e to b e seen
p r o b l e m s that you're likely to
c o m e across in a n a r c a d e /
5 The answer's beneath o n television this a u t u m n . adventure. What, for instance, d o
you d o with the bullet if you
U I
> the Ttap Door. Berk a n d Drut haven't got a g u n a n d how d o
you m a k e the b i r d lay eggs?
The m a i n c h a r a c t e r in the series Fortunately Berk has a friend
iAI c a l l e d Bonl, a d i s e m b o d i e d skull
is a b l u e blob-like fellow by the
tt n a m e of Berk. Berk is the servant w h o c a n p r o v i d e the o d d bit of
The Trap Door of the Bad Tempered Thing w h o a d v i c e if you're not sure w h a t to
lives in the u p p e r regions of the d o next.
Piranha castle whilst Berk rushes a r o u n d
111 £7.95 in the castle c e l l a r d o i n g the
Thing's b i d d i n g (which n o r m a l l y Down in the d u n g e o n
of that l o n g ago, Programmer m e a n s g e t t i n g his m e a l s —

3
Don Priestley wrote a c o m p u t e r worms, b o i l e d slimies, that sort of The p l a y i n g a r e a d o w n in the
g a m e b a s e d o n the Popeye thing). c e l l a r isn't all that huge,
c o m i c strip a n d c a r t o o n series, Also t u c k e d a w a y In the consisting of b a r e l y a dozen
s
g
a n d for the g a m e he c a m e u p
with some new t e c h n i q u e s that
c e l l a r is the Trap Door, b e n e a t h
w h i c h lurk a l l sorts of weird
screens, but, as with the Popeye
g a m e , o n e of the things that
c r e a t e d some of the largest creatures. Some of these things makes the g a m e so e n j o y a b l e is
c o l o u r e d sprites ever seen on c a n a c t u a l l y h e l p Berk in his the 'layered' effect that allows
the Spectrum, as well as chores, t h o u g h others are jusl you to move c h a r a c t e r s a n d
masking t e c h n i q u e s that almost plain awkward. objects not just u p / d o w n a n d
UJ left/right in two dimensions, but
m a d e you forget a b o u t the In the g a m e , you a r e in
a Speccy's attribute problems. control of Berk a n d have to also into a n d out of the screen
to Unfortunately, the Popeye g a m e c o m p l e t e the tasks that will get to c r e a t e a real 3D effect. So,
c j
w u
A 'VV

r k i r & irr. ^ cv -

J OO r
B W c !

HBOBBBBBBBBbBBgBBBBBriBBBBB
y : - r - v :
B&BBBB
Z?
• d o o
A"
n n n o o o o o o o a o o a o a o o o a o o a a a o aa
CCSZl - B lS30Cit> afflCj) • >i. » • 9 10PD

£
O B 868OOB a Q 14-oooa
QBBBBBBBBOBBBBBDBBBBBBBBDB BBBBBB a o o o o o a o o o a o o D a o o a a o a o D o a a a Q a o D a

U l
>
although the n u m b e r of screen, a n d yet they move experiments with this type of
Individual screens is q u i t e a r o u n d the screen smoothly a n d g a m e haven't b e e n wildly
limited, there is a lot m o r e fhat without any attribute p r o b l e m s successful, p e r h a p s they fall
c a n b e d o n e t h a n In most other The a n i m a t i o n is so g o o d that It's rather a w k w a r d l y b e t w e e n the
g a m e s There are passages a n d fun to just sit a n d w a t c h a l l the two types of a r c a d e a n d
staircases that you c a n w a n d e r a c t i o n in front of you. O n e of the adventure g a m e ( a n d also

s
through, a n d a n u m b e r of
objects that n e e d to b e
n i c e things a b o u t the television
p r o g r a m Is the w a y that a l l sorts
b e c a u s e the a n i m a t i o n
t e c h n i q u e s are so costly in s
positioned carefully in order to of little c r e e p y crawlles just m e m o r y that a 48K doesn't really
complete your tasks w a n d e r a b o u t d o i n g o d d things d o t h e m justice). But hopefully
Irrespective of w h a t the m a i n with the p u b l i c i t y surrounding
Sprites characters are u p to, a n d this the TV series p e o p l e will take a
has b e e n c a r r i e d over Into the close look at Trap Door a n d
But the m a i n feature of Trap Door c o m p u t e r g a m e so that you c a n enjoy it as m u c h as I d i d .
Is p r o b a b l y the q u a l i t y of the have Drut (a small yellow b l o b )
graphics a n d a n i m a t i o n . Berk c h a s i n g worms a r o u n d the
himself Is a sprite of not screen while Berk is busy trying
Inconsiderable p r o p o r t i o n s but
some of the monsters that p o p
to d o s o m e t h i n g else. This a d d s
to the a t m o s p h e r e of the g a m e o
up out of the trap d o o r are a n d makes it feet almost like a III
larger than a n y t h i n g that I've real c a r t o o n world. CL
ever seen d r a w n o n a Spectrum Don Priestley's earlier 00
with any d e g r e e of a c c u r a c y by different m o d e s is very simple
p l a y i n g t h e m off a g a i n s t e a c h with most c o m m a n d s b e i n g
other requires a n a w f u l lot of m a d e with a single key entry.
time — too m u c h to fall within M a k i n g the moves is also very
the parameters of this review. I'm straight forward by use of cursor
sure b o t h software houses will b e keys (there is n o joystick option).
letting us know the results soon Simply move the cursor key to
enough. your c h o s e n p i e c e , hit enter,
Leaving a s i d e the Issue of t h e n move a s e c o n d flashing
w h i c h p r o g r a m c a n b e a t the cursor to your c h o s e n square. Hit
rest, it has to b e said the Cyrus II enter a g a i n a n d the move is
is a very strong player a n d there made.
are a l l the features i n c l u d e d This p r o g r a m is a very
w h i c h single it out as a n w e l c o m e a d d i t i o n to the
excellent o p p o n e n t . Spectrum chess s c e n e a n d is
There a r e no 3-D g r a p h i c s (the r e c o m m e n d e d highly, the
Mark 2 version for the 128 will d r a w b a c k however is the price.
have them) but the screen At £11.95 It's two q u i d m o r e
d i s p l a y is very bright a n d clear. expensive t h a n b o t h Psi Chess
There are nine s t a n d a r d levels of a n d Colossus 4 a n d o n e
p l a y with thinking t i m e r a n g i n g wonders why It c o u l d n ' t h a v e
from two s e c o n d s to three a n d a b e e n r e l e a s e d at just under a
half minutes. In a d d i t i o n there is tenner, like Its rivals.
a n a d a p t a b l e m o d e (Cyrus Cyrus II is a s u p e r b p r o g r a m
a d a p t s to your response time), a n d still worthy of a Monster Hit
infinite m o d e (Cyrus will wait at the p r i c e but in a sector of
until you d e c i d e he c a n move) the market w h i c h is now fiercely
a n d a p r o b l e m m o d e (Cyrus will c o m p e t i t i v e it m a y h a v e spoilt Its
Chess fanatics have search for a c h e c k m a t e in five c h a n c e s with those w h o are
moves or less). after just o n e chess g a m e .
never h a d it so g o o d as Other features i n c l u d e
r e p l a y i n g the g a m e ; t a k i n g
another strong b a c k moves, p l a y i n g b o t h sides,
c h a n g i n g sides, hints from Cyrus
contender for the a n d d e m o n s t r a t i o n g a m e s . There
is also a s i m p l e print-out facility,
Spectrum grandmaster If you want to r e c o r d g a m e
slluatlons for posterity.
crown enters the arena. O n e b i g a d v a n t a g e with

|
Cyrus II is that a c c e s s i n g

Cyrus II Mark I

n n
Alligata
5
n
£11.95

n • El n
IAJ
>

Cyrus II arrives o n the Spectrum


U i


with a g o o d r e p u t a t i o n from its
Ot p e r f o r m a n c e o n other micros

n
a n d with the recent release of
in Psi Chess a n d Colossus 4 Chess,
S
<
Spectrum owners are b e i n g
spoilt for c h o i c e

• • £
There will obviously b e a lot of

i t•
0 d e b a t e on w h i c h is the strongest
program available a n d Alligata
have thrown d o w n the gauntlet

• 1• i x i •
with a statement from their F'LHYEP

1 m a n a g i n g director i n c l u d e d o n O Ol

* • g 2•
oc
the inlay w h i c h says, "I a m
c o n f i d e n t this g a m e will b e a t all
existing Sinclair Spectrum chess
O programs published."
No d o u b t the makers of a
a.
i i i Colossus 4 Chess will d i s p u t e
this. M a k i n g a c o m p a r a t i v e
t o assessment of the two p r o g r a m s
/

If you're writing your Monitor Functions


own m a c h i n e c o d e The monitor offers a m e n u of 18 functions:
1) Alter memory This function will p r o m p t for a start address (see
programs you'll need a note on the input of numbers), a n d the p r o g r a m will then print
the address a n d its contents. The Monitor will t h e n wait for you
good monitor to help to input the new v a l u e before m o v i n g o n to the next b y t e
When you h a v e filled u p a screen, press 'X' for another p a g e .
debug them — so here At a n y time you m a y press BREAK to e s c a p e .
2) Breakpoint. This function e n a b l e s you to p l a c e a n instruction
it is. in the m i d d l e of the c o d e that is b e i n g d e b u g g e d . W h i c h
causes e x e c u t i o n to b e stopped, a n d control returned to the
Monitor so that you c a n alter/inspect the registers e t c The
b r e a k p o i n t instruction is three bytes long, a n d thus two
BY JON ELLIS breakpoints should not b e inserted less t h a n four bytes a p a r l
otherwise a crash might o c c u r on execution. The c o d e that
o c c u p i e d the three bytes overwritten by the b r e a k p o i n t
instruction is stored, a n d will b e r e p l a c e d w h e n the
ver the course of w r i t i n g m a n y b r e a k p o i n t is d e l e t e d . When you select this function from the
m a c h i n e c o d e routines I m e n u it will p r o m p t for the address at w h i c h the b r e a k p o i n t is
realised that I h a d n o g o o d to b e inserted. A total of nine breakpoints m a y b e used at
program for d e b u g g i n g them. once. If all nine are in use then n o t h i n g will h a p p e n w h e n the
So. If you haven't got a p r o g r a m function is selected.
— write it yourself. Here is that 3) Convert number. This function will p r o m p t for the input of a
program, a monitor w h i c h n u m b e r a n d then print the n u m b e r in d e c i m a l , hex. a n d
should p r o v i d e a l l the functions binary.
you w o u l d n o r m a l l y n e e d in the 4) Delete breakpoint. When selected, this c o m m a n d will d i s p l a y
course of d e b u g g i n g a m a c h i n e all nine of the breakpoints, a n d then ask for the n u m b e r ot the
code program. b r e a k p o i n t to b e d e l e t e d . (Note that you should enter the
Numbers c a n b e e n t e r e d in n u m b e r of the b r e a k p o i n t (1-9) not its address). The three bytes
either hex or d e c i m a l , that were overwritten will then b e r e p l a c e d .
regardless of the state of the 5) Examine stack. The Monitor provides 40 bytes ot stack s p a c e
number b a s e toggle. D e c i m a l solely for use by the o b j e c t p r o g r a m . On enterting the Monitor
numbers must all b e five digits or resetting the registers, the stack is r e d u c e d to o n e w o r d in
long, b e i n g b u l k e d out with length, this w o r d b e i n g a return address inside the Monitor,
l e a d i n g zeros If necessary. To w h i c h should prevent a crash in the vent of a RET instruction
enter a n u m b e r In hex, t y p e '&' b e i n g e x e c u t e d at the e n d of the o b j e c t p r o g r a m . On
as the first c h a r a c t e r , a n d then selection, this function displays a l l the words currently o n the
the n u m b e r in four hex digits, user stack.
a g a i n using l e a d i n g zeros if 6) Fill memory block. This c o m m a n d allows you to fill a b l o c k ot
necessary. Tf only o n e byte is m e m o r y with a s p e c i f i e d value. It prompts for a start address,
required then the low byte is the l e n g t h of the b l o c k to b e filled, a n d the byte to b e used.
taken, ie if you enter a n u m b e r 7) Jump to routine. The function will p r o m p t for the address to b e
greater t h a n 255 w h e n the j u m p e d to. a n d e x e c u t i o n will c o n t i n u e from this address
Monitor Is e x p e c t i n g a n u m b e r using the values of the user registers (see later). This function is
in the r a n g e 0 to 255, then your to a l l o w for the o b j e c t c o d e to b e tested. I d e a l l y a b r e a k p o i n t
input will b e taken as m o d u l o should b e used at the e n d of the c o d e to return to the
256. Monitor, in w h i c h c a s e the report 'BREAK at (address)' will b e
After most functions h a v e d i s p l a y e d . However a RET instruction should also work
been e x e c u t e d the Monitor will p r o v i d i n g that the routine has used the stack correctly.
pause tor you to e x a m i n e the 8) Look at breakpoints. This function displays the addresses of
results of the function, if any. To e a c h of the nine breakpoints, a n address of 0 i n d i c a t i n g that
terminate this p a u s e press either the b r e a k p o i n t Is unused.
'X' or BREAK a n d you will then 9) Move memory block. This c o m m a n d allows you to c o p y
be returned to the m e n u . blocks of m e m o r y to other areas. It prompts for the start
The Monitor is written so that address of the b l o c k , the start of the destination area, a n d the
you c a n treat the Spectrum as a l e n g t h of the b l o c k to b e c o p i e d .
Z80 processor only as far as 10) Number base toggle. This t o g g l e d e t e r m i n e s the b a s e in
possible. This m e a n s that, w h i c h a l l n u m e r i c o u t p u t from the monitor will b e d i s p l a y e d .
although the Spectrum It t o g g l e s b e t w e e n hex, d e c i m a l a n d binary. Only some
operating system requires Ihe iy o u t p u t c a n b e d i s p l a y e d in b i n a r y d u e to the l e n g t h of
register to have the v a l u e 23610 b i n a r d w o r d (16 characters), other o u t p u t b e i n g d i s p l a y e d in
ot all times, unless your routine is hex. The t o g g l e defaults to d e c i m a l .
going to use the o p e r a t i n g 11) One-step routine. This is p r o b a b l y o n e of the most useful
system, you m a y i g n o r e this functions. If e n a b l e s you to step through the o b j e c t c o d e o n e
requirement. A similar situation instruction at a time, whilst k e e p i n g track ot the user register
occurs with the hT pair. The values. The Monitor will p r o m p t tor a start address, a n d will
registers that are used w h e n c o m m e n c e s t e p p i n g trom that address, u p d a t i n g the register
your routine is run a r e not those d i s p l a y after e a c h instruction a n d then p a u s i n g for you to
used by the Monitor or the inspect the registers. To move to the next instruction, press 'X'.
Spectrum ROM. To escape, press BREAK.
To abort a function you 12) Printers toggle. When t o g g l e d to ON, this causes output trom
should press BREAK w h i c h will the View m e m o r y function to b e d u m p e d to the ZX Printer. The
return you to the m e n u . t o g g l e defaults to OFF. • • •

ZX Computing Monthly • November 1986 59


Instructions 13) Quit.Returns c o n t r o l to BASIC
14) Register display. This f u n c t i o n d i s p l a y s the values of t h e user
The Monitor is written entirely in registers, b o t h the n o r m a l a n d t h e a l t e r n a t e set. The c u r r e n t
machine code and occupies values of the interrupt vector register, I, a n d t h e m e m o r y
the m e m o r y from 28350 to 32767, refresh register, r, a r e a l s o d i s p l a y e d . The v a l u e g i v e n for the
a n d is thus 4418 bytes l o n g . This p r o g r a m counter, pc. refers to the last instruction e x e c u t e d .
m e a n s that it will fit o n a T6K The v a l u e of the stack pointer, sp, that is d i s p l a y e d refers to
S p e c t r u m , b u t it is unlikely that the user stack. The f l a g s register of t h e n o r m a l af p a i r is shown
the expansion opportunities e x p a n d e d into bit format, with e a c h of the six f l a g s l a b e l l e d .
o f f e r e d b y the User p r o g r a m The v a l u e of the m a s k a b l e interrupt flip-flop is also shown, the
feature will b e utilised fully. interrupts b e i n g e n a b l e d or d i s a b l e d as a p p r o p r i a t e w h e n
Type in listing 1 a n d save it — the user c o d e is e x e c u t e d .
this is the hex l o a d e r . Run Ihe 15) Specify entry values. This f u n c t i o n a l l o w s y o u to c h a n g e the
p r o g r a m a n d y o u will b e values of t h e user registers, p e r h a p s to test a s u b r o u t i n e w h o s e
p r o m p t e d for t h e string of hex p a r a m e t e r s a r e p a s s e d to it in t h e registers. You c a n also
digits a n d t h e n for t h e c h e c k s p e c i f y the v a l u e of t h e zero f l a g a n d t h e c a r r y f l a g . You
digit. A l t h o u g h I h e c h e c k d i g i t s h o u l d select t h e register to b e a l t e r e d b y pressing the
m i g h t not look right it Is a c t u a l l y a p p r o p r i a t e letter. To e s c a p e press BREAK.
m o r e effective t h a n a n o r m a l 16) Use other program. This f u n c t i o n allows you to use a n o t h e r
c h e c k s u m , s p o i l i n g the vast p r o g r a m a n d to c a l l it from the Monitor. The f u n c t i o n Is not
m a j o r i t y of transposition errors. d e s i g n e d for t h e e x e c u t i o n of the o b j e c t p r o g r a m , but for t h e
W h e n y o u h a v e finished the c a l l i n g of s o m e other utility s u c h as a disassembler. W h e n you
p r o g r a m will save t h e finished q u i t t h e other p r o g r a m , c o n t r o l will return to the Monitor. The
c o d e a n d t h e n verify it. use of this f u n c t i o n to c a l l a n a s s e m b l e r forms a very p o w e r f u l
Reset the m a c h i n e a n d t h e n d e v e l o p m e n t tool.
t y p e CLEAR 28349: LOAD 17) View memory. This d i s p l a y s t h e contents of m e m o r y from the
" M O N I T O R " C O D E as a d i r e c t s p e c i f i e d start l o c a t i o n , d u m p i n g a l s o to t h e printer if the
c o m m a n d . After the c o d e has printer t o g g l e is on. The routine d i s p l a y s 110 bytes p e r p a g e .
l o a d e d y o u s h o u l d enter t h e 20 bytes per p a g e if using binary. W h e n t h e p a g e is full the
Monitor with RANDOMIZE USR c o m p u t e r will wait for y o u to press 'X' b e f o r e p r o c e e d i n g to
28350. A m e n u of the 18 the next p a g e . To e s c a p e , press BREAK.
functions s h o u l d b e d i s p l a y e d . 18) Zero registers. This f u n c l i o n restores the user registers to their
You s h o u l d test e a c h of the o r i g i n a l values t h a t they h e l d w h e n t h e Monitor was first
functions carefully. If y o u e n t e r e d . In most c a s e s this is 0, but the iy register defaults to
discover a n y errors t h e n listing 3 23610 a n d the hT p a i r d e f a u l t s to 10072 as r e q u i r e d b y the
s h o u l d h e l p — it d i s p l a y s the S p e c t r u m o p e r a t i n g system. The user stack is also reset a n d
c o d e y o u h a v e e n t e r e d in the p r e l o a d e d with the return a d d r e s s m e n t i o n e d e a r l i e r in the
s a m e format as listing 2. e x a m i n e stack f u n c t i o n .

Listing 2
78678
Listing 1
72231A773ECD1223 > 2
28686 131A77013F777912 ) 2
28694 23131A777812C9CD ) 8
28702 067S3E43D7CD04 79 } 1
Hox l o a d e r p r o g r a m . Hex d a t a tor the m a c h i n e c o d e . 28710 D822AA7F2AA37FE3 > 0
28718 010E0O1I437FCD3C ) 3
10 REM IHIIItlKlllltllllHU 28726 70D32AAA7F1 1030A > 1
20 REM «• HEX LOADER «» 20330 CDD~r77CD067BDD2l ) 8 28734 E D33A37FC01C7801 ) 3
30 REM *( by Jon E l l i s 1983 *» 28338 A27FDDCB00960I73 > 8 28742 OPO0D1CB3C20D311 ) 2
1 0 REM I I K I I U M I H I I H O H I I 28366 0111287BCD3C2006 ) 0 78730 0410ED33A37F7CFE > 3
?10 CLEAR 28349 28374 1221433811200036 } 3 28738 00D DC B80CE 70(14 DD > ]
60 TOR F-2B330 TO 32767 STEP 0 28382 3A1910FB3E16D73E > 3 28766 C B008EC D1C 7001OC ) 0
"•0 PRINT F1 28390 ODD73E16D7FD3633 ) 3 28774 O0D1CD3C2O111002 } 7
0O LET CHECK-0 28398 F2DDCBP0662B083E J 3 28782 EH33A37FCDIC78E1 ) 4
«»0 INPUT 'Enter b y t e s : ' I LINE 28406 4FD73E4ED71BODF D ) 3 28790 22A37FC3A07BDDCB } 2
HO 28414 3633673E4FD73E46 ) 4 28798 00D6CD27713E16D7 ) 3
100 IF LEN H«<M6 THEN PRINT • 28422 D73E46D73E16D73E ) 0 78806 3E13D7AFD73E44B7 > 7
Error In length*: BEEP . 2 , 0 : GO 28430 OBD73E19D73AA47F ) 3 28814 CDB479DO7DFE0A30 ) 6
TO 70 28438 FE102B22FE02280F ) 1 28822 E38787836F260011 ) 6
110 PRINT TAB 8|H«t 28446 FD36337B3E44D73E ) 2 28830 F37A193E23362301 ) 1
120 FOR O-I TO 8 28434 43D73E43B7181CFD > o 28838 030OEDB0AF2B772B > 2
130 LET BYTE"16»(CODE H« (11-48- 28462 3633683E42D73E49 ) 2 28846 772B772B772B77DD > 3
(7 AND H»(1> >*9'J 1 * (CODE H«<21-4 28470 D73E4ED7180DFD36 ) 0 28834 360308012D001100 > 7
O-17 AND H»(2)>"9*>) 28478 33703F48D73E43D7 > 3 28862 3B2IF87AE3EDB00E J 8
MO POKE F- I *O, BYTE 28486 3E38D7FD363338CD > 0 28870 7DE11E00C D1F7106 ) 7
130 LET CHECK-CHECK*BYTE*G 78494 AB7701170021227A ) 6 28878 0911F87A2IO03BC3 ) 8
160 LET H«-H»(3 TO > 28302 EDB120EF11227AA7 > 0 28886 E30603AF BE237O04 ) 3
170 NEXT G 28310 ED322B291134 7A19 ) 3 28894 10FA100AE1E301O3 ) 6
180 INPUT 'Entor ch*cl< d i g i t : * ! 28318 3E2336EBCD706FC3 > 3 28902 00EDB0DD34O3E123 ) 8
LINE C» 28326 C16EE9CD06783E4 1 ) 0 28910 23232323CI1OF0O1 ) 8
!90 IF LEN C«Oi THEN GO TO 18 28334 D7CD8479D822AA7F } 0 28918 2D00210O3B1E0018 > 8
O 28342 3E0DD7FD7E4FFE02 ) 8 28926 20CDO6783E46D7CD ) 0
20O PRINT TAB 2"*l * ) *JC* 28330 70O7CDA07BDBCD06 } 0 28934 8479DB22AA7FCDA6 ) 7
r i O LET DIGIT-CHECK 9*INT (CHEC 28338 782AAA7FE32AA37F ) 6 78947 "*9D822AC7FC DB779 ) 3
K/9> 28366 22A87F3E02BCCC D1 ) 8 28930 DB3D2AAA7FED4BAC ) 0
270 IF DIGITOVAL C* THEN FRIN 28374 71DDC B00CEE1E3CD > 1 28938 7F73230B7BB170F9 > 1
T ' E r r o r In s t r i n g - input again 28382 1C782AA87F22A37F ) 3 28966 C9CD0678O11 BOB 1 1 > 8
* : BEEP . 2 , - 1 2 ! GO TO •>& 28390 3E17D73E0AD73E20 ) y 28974 687FCD3C20060921 > 8
230 NEXT F 28398 D7E1E37E2322AA7F ) 4 28982 F87A3E0A90C63OD7 J 2
740 PRINT FLASH 1;'READY TAPE 28606 6F2600DDC B0O8ECD > 4 28990 C3O108001lBS^FCD ) 5
FOR SAVING' 28614 1C783EI7D73EI4D7 J 1 78998 3C203E2336232323 ) 1
230 SAVE 'MONITOR-CODE 28330,44 78672 3E20D7CDAD787DE1 > t 29006 23E3EBDDCB00CECD > 3
IB 78630 D87718A4 3AA77FFE »4 79014 1C783E0DD73E0DD7 } 2
260 CLS 28638 09D0CD06783E42D7 ) 6 29022 3E17D73E07D7AFD"' ) 6
270 PRINT FLASH If'READY TAPE 28646 CD7379D822AA7F3A > 2 2903O E1C1IOCE DDCB0036 ) 3
TO VERIFY' 28634 A77F3C 32A77F 3D37 ) 2 79030 C0C3A07SC D06783E } 6
280 VERIFY "MONITOR'CODE 28330, 28662 8782B23F16O021F8 ) 7 29046 4DD7CDB479DB22AA I 1
4418 28670 7A19ED3BAA7F7323 > 2 29034 7FCD9379D822AC7F ) 4

12 ZX Computing Monthly • November 1986


/

79062 CDA679DB4 44DED5B 1 3 29726 1844131AFEEB2B1A ) 0 30390 E60116BF0F0F6F3A ) 2


79070 AC7F2AAA7FEDB0C9 } 0 29734 FEC B 2 B 2 2 2 1 9 2 7 A 0 1 ) 2 30398 C07FA2B332C07FC3 } 8
2907R DD7E00EE10DD7700 } 1 29742 0400EDB1282A2196 } 3 30406 F2733FIA007D21 AD ) 1
290O6 C9CD06783E55D7CD ) y 79730 7A011A00EDB12B23 > 3 3 0 4 14 7F1977C3F2737D32 ) 1
29094 7379DBCD706FOD21 ) 2 29738 1824131AFE632813 > 4 30422 C17FC3F273CD0678 } 2
79102 A27FF D213A3CD921 ) 8 29766 FEAB281118131313 > 8 30430 3E36D7C D84 79D822 I 0
291 10 5827D9C3A07ODDCB > A 29774 1A2IB07A011F00ED ) 0 30438 AA7FCD0A780616C3 ) 0
291 IB 02AA201ODDCB023E > 4 29782 B128031B06DD3403 > 6 3044 A 78DD77043E16D73E ) 3
29126 70O9BD3A020ADD3A ) 8 29790 DO3403DD34030034 } 3 30454 1ADD9604D7AFD77A ) 0
79134 0105C9DD3A021 0DD ) 6 29798 03BB340306O321D1 > 2 30462 AA7FDDCB00CECD1C > 6
29142 3A0I04C9DD360202 ) 0 79806 7F36002310F BED4 B ) 8 30470 7806033E16D73E16 ) 2
29150 DD36B110C9CD0678 } A 29814 A37F06002AC47FI1 ) 4 30470 DD9A04D73E03904F I 7
2913B 2AA37F22AB7F 7CFE ) 5 29822 D17FEDB022C47F11 ) 1 30486 070701C607D73AA4 I 1
291 AA 0270062104I022A3 ) 2 29830 D17F1AFEE920092A > 1 30494 7FFE07200C3E16D? ) 6
29171 "*F01FC001 1 E 3 7 C C D ) 7 29838 B27F22C47FC3CB73 ) 8 30302 3E16DD9604D73EI7 ) 3
29182 3C7071AE7FIIDF7D } 3 29B46 FE DD2010131A1BFE ) 7 30310 D72AAA7F7E2322AA } 2
79190 060CC378FE037003 > 7 29B54 F9201D2ABC 7F22C4 ) 1 30318 7F6F260PDDC B0P9E ) 7
79190 2323C110F301030B ) 2 29BA2 7FC3CB73FEFD2010 ) 0 30326 C D 1C**83AA47FFE02 ) 0
7970A CD3C20D55E235623 > a 29870 131 A 1 B F E E 9 2 0 0 9 7 A ) 8 30334 280210BFCD341FC1 ) 6
79214 E3EBDDCB00CECD1C ) 2 29B78 BE7F22C47FC3CB73 } 2 30342 D0109CDDC B0066C4 ) 2
79772 7BEID1C110DC3EIA } 1 29B86 1AFEED200CI31A1B 1 1 30550 AC0EC DA07BD8C 3E8 I 2
29230 D73E04D73EOBD72A ) 8 29894 FE45CA4B75FE4B20 ) 0 30338 7622B27FE122AA7F ) 2
7973R A B 7 F 2 2 A 3 7 F 3 A C 1 7F ) 8 29902 7C1AFEF3CAB475FE > 2 30566 ED73C27FED7BC67F 1 3
2924 A AF2AO0DDCB008ECD } 4 29910 F B C A B A 7 5 2 1 C F 7A01 ) 8 3 0 5 •'4 219077E5ED73C67F > 3
79734 1C783AA97FFE0720 ) t 29918 2900E DB1C2BE 7SFE > 4 30382 ED7BC27F2AB27FDD ) 0
292A2 0A2104 1022A37F3E ) B 29926 C32B53FECD2B24FE ) 4 30390 7 2 B C 7 F D D 2 1 A 2 7 F DD »6
79270 16D73E10D73E0BD7 > I 29934 18CA7D75FEC92833 > 0 30396 CB00DADD7ABC7FC3 ) 0
2927B FD376F2600DDCB01 1 6 29942 FEI0CA9B73CB7F28 ) 3 30606 8E73CD067B2AAA7F ) 1
292BA BEC D1C 7 8 3 E 1 6 D 7 3 E ) 4 29930 77E6072842FE072B ) 4 30614 2B7B7B22C47F0117 > 3
29794 10D73E18D7ED5FAF > e 29938 61FE02Z82BCDDD79 ) 6 30622 H0IIBB7FCD3C20CD ) 3
29307 7600DDCB0IBECDIC ) 6 29966 D2CB73CDC879ED3B ) 5 30630 1C78C3A07HFDCB01 ) 0
79310 782AC0"*F3E 1 6 D 7 3 E ) 3 29974 C 4 7FE D 3 3 A A 7 F 2 A D 2 1 3 30630 AE76F DC8016E28F3 1 O
29318 13D73E07B70A0B7B ) 0 29982 7F22C47F115F77A7 I 2 30646 C D 3 4 I F 3 A 0 8 3 C 3FC 9 ) 0
2937A FE067B0DFE042809 ) 3 29990 E D 5 2 C 2C B 7 5 2 A C 2 7F ) 2 30634 012300119D7CCD3C > 1
79334 AFCB2517CA30D71B J 6 2999B 232322C27FC39077 > 5 30667 2BCOAB77DOF30123 1 2
79342 033E 7BD7CB233E 20 > 0 3000A CDDD79D2CB732AD2 ) A 3 0 6 70 0011C07CCD3C20F1 ) B
29330 D710E42AAB7F22A3 } 4 30014 7F22C47FC 3CB7SC D J 3 30678 C9061621AE7F3600 ) 0
2935B 7F3E1AB73E i 3D73E > 3 30022 DD79C2C B75ED73CA > 7 30686 2310F BED73C67F31 ) 6
293AA 0BD73E4FD73AC87F ) 3 30030 7FED7BC27FE1EB73 ) 1 30A94 F F 7 F 7 1 BE 7 3 E 5 E D 7 3 ) 7
29374 FF0028083E4ED73E > 8 30038 C27FED7BC67F22C4 ) 7 30702 C27FE D7BC67F3E01 > 2
293B2 70D71B0A3E4A073E > 4 30046 7Ft1BE73A7ED52C8 } 6 30710 32C07F2I302727BA ) 6
29390 4AO7ODCB003AC0C3 > 4 30034 1063CDC8791AE63B 1 1 3 0 7 IB 7F213A5C22BE7FC9 1 6
2939B A 0 7 B C D 0 A 7 8 Z 1 F F 7F ) 3 30062 6F 2 6 0 0 2 2 C 4 7 F 1 8 3 5 I 6 30726 F D3653383E07CD9B 1 0
2940A ED3BC27FA7ED32CB ) 0 30070 E618CDDD79304E3A ) 8 30734 22CD6BBD3E02CD01 ) 8
29414 01 1 1 0 0 1 1 4 A 7 E C B 3 C > 1 30078 D27FCB7F28103FAF ) 0 30742 16F DC B 3 0 D E C 9 E 5 C 5 ) 2
29472 2 0 4 3 C B 3 8 4 8 3 E 1 4 BH ) 8 30086 37933F 2AC47FA7E 0 ) 7 30730 DDCB0086DD460178 ) 1
29430 DB21FE7F3E0DD779 ) 3 30094 3222C47F18373F16 ) 8 30730 3DC3E3CDB378EBE1 ) 6
29438 90C3E5DDCB00BA76 ) 1 30102 007AC47F191BF2F5 ) 0 30766 CI0E000CA7ED3230 } 1
29446 00AFCD1C7B3E17D7 ) 4 301 10 E04BAE 7F2AC07FE3 J 1 30774 FA 190D702778FE01 > 0
29454 3E0AD7AFD7E1DDCB ) 3 301 IB F103F5E122C07FED > 8 30782 2822DDCB004A201C > 3
29462 00CEE5CD1C7BE15A I 2 30126 43AF"*FF 1 1 B C 7 A F 3 2 1 7 30790 DD7E02FC0A2823DD > 0
294 70 2B5E2BE3EB3EI7D7 } 6 30134 C87FI8113E011BF7 J 3 30"*9B CR004E200FFE1070 ) 3
29478 3E14D7AFD7CD1C7B ) 3 30142 D D C B O B D A Z I D I ">F22 > 4 30O06 200AFE03 30061012 1 6
294 B A EtClI0C8C3A07BCD } 6 30130 CA7FCD4373CDE371 1 2 30814 FE09300rDDCB00CA ) 3
29494 06^O3E4AD7CD7379 ) 0 30138 D D C B f 0 9 A C D A B 78 D 8 ) 2 30822 79C630FE3A3802CA 1 4
29307 DB22CA7FCD0A78ED ) 2 30166 C 3 E 3 7 3 C D B E 7 7D8FE > 2 30B30 07D710B33AA47FFE > 3
29310 73C67FED7BC27FDD > 3
30174 59C0E D7B3D5C3B3B > 7 3083B 0A2B09FEI03EAB28 > 3
30102 C9CDBE 77D8FE39C0 ) 3 30B46 0 2 3 E A 2 D 7 C I E 1C9FE ) 3
29318 CB0036200421BE73 ) 3
30 190 CDD777C9CD0A7811 ) 8 30854 00210100C84 73AA4 ) 0
79326 E33AC87FFE002001 ) 3
29334 F3DD2ABC7FFD7ABk J 4 30198 377E01 B800C O3C70 1 7 30862 7F110000A26FC347 > 6
29342 7F2AC07FE3F1ED4B ) 7 30206 11AE7F060E1A6F26 ) 7 30870 0 3 1 9 1 0 F D 3 4 3 D C I 10 ) 0
29530 AE7FE B3BB07F 2AB2 ) 3 30214 00DDCB00BED3C3CD ) 1 30878 F 3 C 9F DC » 3 0 DEC D A B > 3
29338 7F0flD9?AB47FESF 1 > 8 30222 I07ACDIC78CID113 1 3 30886 77D8FE3BC818F 33A } 6
2936A OHFD4BB67FED3BH8 i 3 30230 10FBDDCB00CE2ABC } 0 30B94 A47F32AB7F DDC B00 > 3
29574 7F2ABA7FD9C3C97F > 6 30238 7FCDI87ACD1C78CD > 0 30902 9E 21CC7F0605CDAB > 4
29382 22B27FED73C27FED ) 6 30246 1B7A2ABE7FCB1C78 } 8 30910 77DRFE0C 201C7BFE > 7
29390 7BC67FF5E122C07F > 7 30734 DDCBP08ECDIB7A3A ) 1 30918 052BF3FE042004DD ) 4
2959B E D43AE 7FED53B07F > 4 30762 C17F6F2A00CD1C78 ) 6 30926 CB009E3E08D73E20 ) 2
29A0A BD72BC 7FFD22BE7F l 1 307"*0 CDIB7A3AC07FE60I > 6 3 0 9 34 D 7 3 E 0 8 D 7 7 B 0 4 18DE ) 4
79614 D9ED43B67FED33BB ) 6 3 0 2 7B 6F2600CD1C 78CD18 ) 2 30942 10DCFE262016FE 30 1 2
29AZ2 7F22BA7F215827B9 > 3 302B6 7A3AC07F0707E601 > 2 30930 3BD4FE3A381ODDC B > 2
29A30 0BF5E122B4 7F08FD > 2 30794 AF2A0BCD1C783E13 ) 3 30938 0B5E 28CAFE4138C6 > 0
29A38 213A5CDB21A27FF B ) A 30302 D7AF D 7 C D A B 7 7 D 8 F E > 6 30966 FE473B0ADDCB003F > 7
7964 A DDC B 0 0 5 A C 0 C 3 A 0 7 B ) A 30310 4138F8FE34 30F4D6 > 8 30974 7 0 B C DDC B 0 0 D E 7 7 2 3 > 8
29634 CD0A7B3E4FD7CD73 ) 3 3 0 3 IB 401I003B6F260029 ) 4 30982 D7I0B371CC7F7EFE ) 3
796A2 79D822C47FE D5BC4 ) 4 30326 292929791936C4F5 ) 6 30990 2611000028263E0A > 6
79670 7FDD3603001AFEDD I 8 30334 01130011327FCD3C > 1 30998 32A47FE3DDE10605 > 0
29678 2B30FEFD282CFEED i 0 30342 20C D A D 7 8 D 1 D B 7 A F E ) 8 31006 C57B3DD5CDBS7BD1 ) 2
29686 281AFECB28A82158 > 3 30330 BF3837FE11283FFE ) 31014 EBDD7E00D6302804 > 7
29694 7 A 0 1 1IJ00EDB1285E ) 1 30338 13Z81CFE122B10FE ) 1 31022 193D1BFAE BDD23C1 ) 1
29707 21707A0I1A00EDBI > 7 30366 10280622BC 7FC3F 2 ) 6 31030 10E6182D3EI032A4 ) 6
29710 78311855131A21BA } 4 30374 7522BE7FC3F2737D > 1 31038 7F23E5DDE10604C3 ) 6
) > 0 31046 783DD3CDB578D1EB > 3
29718 7A0I0B00EDB12840 1 30382 E6016F16FE18087D
• • •

ZX Computing Monthly • November 1986 59


31034 OD7E00D630FE0A38 > 2 31718 A37220A2A1736320 ) 3 32382 423A006329202020 ) 0
31062 02D607FE00780419 ) 0 31726 746FA7ACA320AEAF > 3 32390 2020433A0D642920 ) A
31070 3018FAEBCIDD2310 ) 8 31734 77160C034F6EA32O ) 2 32398 20202020443AO063 > 8
31078 DEEBDD21A27F3AAB } 3 31742 7371637020726F73 1 X 32406 2920202020204C3A ) 3
31086 7F32A47FC9010E00 > 3 31730 74696E63160D0330 ) 1 3 2 4 14 RD66292070207020 } 4
3 1094 11007EC D3C20CDAD ) 8 31738 72696E7463722074 ) 3 32422 483A0D6729202020 ) 4
31 1 0 2 78D83E0DD7C9010E ) 4 31766 AFA7A7ACA320AEAF > 2 324 30 2046273A0D682920 > 7
31 1 10 00112C7ECD3C20CD ) 4 31774 77 i 60E033 i 736974 1 8 32438 20202041273A0D69 ) 0
31118 AD78D83E0DD7C90I ) 2 31782 160F03326367&973 ) 8 32446 292020202043273A > 8
31 1 2 6 0C00113A7ECD3C20 ) 3 31790 7463722064697370 ) 1 32434 0D6A292020202042 ) 3
31 134 CDAD7OD83E0DD7C9 1 2 31798 ACA1791610033370 ) A 32462 273A0D6B29202020 ) 3
31 1 4 2 011000110E7ECD3C J 7 31806 63A369667920636E J 4 32470 2043273A0D6C2920 ) 2
31 130 20C D A D 7 8 D 8 3 E 0 D D 7 > 6 31814 74 7279207A61 AC73 ) 0 32478 20202044 273A0D6D > 8
31 138 C9010E00111E7ECD ) 8 31822 6373161103337363 ) 2 32486 29202020204C273A > 8
31 166 3C20CDAD78D83E0D > 4 31830 20AF 7468A3722070 ) A 32494 0D6E292020202048 ) 7
31 174 D7C9ED73C67FE07B ) 0 31838 726F6772616D1612 > 0 32302 273A0D6F29202020 > 3
31 1 8 2 C27F2AC47FE3ED73 ) 6 31846 03366963772B6D63 ) 3 32310 2049383A0D702920 > 1
31 1 9 0 C27FE 07BC67FC9E6 > 8 31834 606F72791613B33A > 7 32318 20202049393A0D71 } 4
31 1 9 8 383F3AC07F377BE6 > 6 31862 63726F2072636769 ) 8 32326 292020202020413A ) 7
31206 302822FE102813FE > 1 31870 73746372731614BB ) 7 32334 0D7229204 3617272 ) 3
31214 20280A7B17171717 t 8 31878 100176322E31207F ) 3 32342 793A0D732920203A > 7
31222 AACD7F18177B1FAA ) 0 31086 204A6F6E2B436C6C > 6 32330 63726F 3A16010013 > 8
31230 C B 3 7 1 8 1 0 7 B 1 F I F IF ) 6 31894 6973203139383316 ) 4 32338 0117090016130010 } 6
31238 AACB4718077B1717 ) 3 31902 1303130110021201 > 3 32366 01436E7463722076 1 3
31246 17AAC B 7 7 2 8 0 2 A 7 C 9 ) 0 31910 41726320796F7320 ) 1 32374 616C 73633A10000D ) 1
31234 37C9112F7F010300 > B 31918 737372A3203F 2028 » 8 32382 0D17040044636369 } 3
31262 C D3C 2 0 C 9 4 1 4 2 4 3 4 4 ) 7 31926 392F4E2913001200 ) 1 32390 6D616C3A200D1704 ) 3
31270 4S464A4C4D4E4F30 > 0 31934 1000161300202020 ) 1 32398 004863783A200D17 1 1
31278 31323333363A716F ) 0 31942 2020202020202020 > 0 32606 040042696E617279 ) 1
31286 DA6FID707C700872 } 2 31930 2020202020202020 ) 0 32614 3A20I6010A130110 ) 3
31294 FF70337327717271 ) 1 31930 2020202020202020 } 0 32622 0142726361AB70AF > A
31302 BC71D67396710973 1 8 31966 2020202020160008 > 1 32630 6 9 6 E 74 7 3 1 3 0 0 1 0 0 0 > 8
31310 E371F2739F 71DB76 ) 8 31974 130110813A383020 ) 2 32638 0D0D170700170900 ) 4
31318 E773FEF6EEE6DE0B > 3 31982 3263676973746372 ) 6 32646 2E2E2E2E 200D0D13 > 3
31326 D6D3CEC63E383630 ) 7 31990 2033637416020013 > 6 32634 0110021201427263 > 3
31334 2E2826201E181610 > 8 31998 0010024E6F726061 J 3 32662 616B130010001200 ) 7
31 3 4 2 0E0601I121222A31 I 0 32006 6C20326367697374 ) 1 32670 2061742000030A80 > 1
31330 323AC2C3C4CACCCD } 2 32014 6372733A16040410 ) 8 32678 0000000000000000 > 0
31338 D2D4DADCE2E4EAEC } 2 32022 0041202D16041342 ) 4 32686 0000000000000000 ) 0
31366 F2F4FAFC7B736B63 > 6 32030 43202D1603034443 > 3 32694 0000000038270000 ) 8
31374 3B334B4321222A3A > 0 32038 202D160313484C20 ) 2 32702 3A3C0000FD7F0000 > 1
31382 262E3433464E363E } 6 32046 7D1607801004437G > 1 32710 A46E01C300000000 ) A
31390 666E707172737473 ) 3 32034 6368616E67632032 } 6 32719 0000000000000000 > 0
31398 777E868E969EA6AE > 4 32062 6367697374637273 ) 8 32726 C38E730000000000 > 3
31406 86BEFEF6EEE6DED6 > 8 32070 3A16090310004127 ) 7 32734 C39673000000D030 > 2
31414 CEC6BEB6AEA69E96 > 6 32078 4627202016091342 > 7 32742 3000CF300C023C0E > 8
31422 8E867E766E6A3E36 ) 6 32086 2743272020160A03 > 3 32730 C 0 3 7 7 1 B E F 3 8 4 731 7 } 4
31430 4E463E2E261E160E > 0 32094 44274327202D160A ) 3 32738 C61EA76176BC738E ) 0
31438 06FFFCFAF8F7F4F2 > 7 32102 134 0 2 7 4 C 2 7 2 0 2 D 1 6 > 4 32766 733E000000HH0000 } 3
31446 F0EFECEAE8E7E4E2 J 3 321 10 0C00100333706363 > 3
31434 E0DF DCDAD8D7D4D2 ) 3 32118 A9A16C 2032636769 ) 7
31462 D0CFCOCCCAC9C8C 7 > 7 32126 73746372733A160E > 0
} 7

Listing 3
31470 C4C3C2C038302820 32134 0310004938202D16 ) 1
31478 1810000000000000 ) 2 32142 BE 1 3 4 9 3 9 2 0 2 D 1 6 0 F > 8
31486 0000000000000000 ) 0 32130 033330202D160F13 ) 8*
31494 0000000000000000 > 0 32138 3043202D1A100449 ) 3
31302 0000000000000000 ) 0 32166 202D1A101432202D ) 6
31310 0000000000000000 ) 0
Error checker.
32174 1612001001466C61 > 0
31318 0000800000000000 } 0 32182 67733A1A12073320 ) 7
31326 000016000C130111 ) 3 32198 3A202D2048202D20 > 1 10 R E M
31334 0310074 D4F4E4934 > 7 32198 30204E2043100016 ) A 20 REM *» HEX DUMPER **
31342 4F32100011071300 > 2 32206 13001002496E7463 > 4 3 0 R E M * * b y J o * El I I* 1 9 0 3 # #
31330 160203416C746372 } 0 32214 7272737074733A10 ) 2 40 REM m H H H H H « H » » H t » H H
31338 206D636O6F72791A ) 2 32222 0016041816030816 > 2 6 0 FOR F - 2 8 3 3 0 TO 3 2 7 6 7 STEP 8
31366 0303427263616B70 J 2 32230 031816090A16091A ) 3 7 0 P R I N T F1
31374 6F696E7416040343 ) 6 32238 160A0A160A1A160E > 2 80 LET CHECK-0
31382 6F6E76637274206E > 3 32246 08160E18160F0916 ) 1 90 LET h«--*
31390 756D626572160303 } 3 32234 0F183A2061646472 > 2 100 F O R g » l T O 8
31399 44636C6374632062 > A 32262 63737312013E1200 > 0 110 LET b y t e * P E E K (f-I+9)
31606 7263616B706F696E ) 6 32270 I702003A206C636E ) 8 120 LET hI"INT (byte/16)
31614 74 16060343786160 ) 7 32278 67746812013E1200 > 7 130 LET Io»byt®-16#h1
31622 696E632073746163 ) A 322BA 1702003A2B627974 > 1 1 4 0 L E T h * - h » * C H R * (til*48*(7 A N
31630 6B16070346696C6C ) 3 32294 6312013E12001702 > 7 D h l > 9 ) ) + C H R « tlo»40*<7 AND lo>9
31638 206D636D6F727920 ) 1 32302 003A206672AFAD12 ) 0 ))
31 6 4 6 626C6F636B160803 ) B 32310 013E12001702003A J 3 130 L E T c h e c k " c h e c k * b y te*<j
31634 4A736O7020746F20 > 2 32318 20746F12013E1200 ) 2 160 NEXT 9
31662 726F7374696E6316 > 6 32326 16000B1002337363 > 2 170 P R I N T TAB 8(h«(
31670 09034C6F6F6B2061 > 4 32334 7220337461636B10 ) 3 180 L E T d 1 9 1 t - c h e c k - 9 « i N T (chec
31678 7420627263616B70 ) 8 32342 0016000910023373 } 4 U! 9)
3)686 6F696E74 731A0A03 ) 8 32330 6372207263676973 ) 3 190 PRINT TAB 27f > • (digit
31694 4D6F7663206D636O ) 3 32338 7463727310000D61 J A 200 NEXT t
3)702 6F727920626C6F63 ) 0 32366 292020202020433A ) 3 210 STOP
31710 6B1A0B034E736D62 > 0 32374 0D62292020202020 ) 3

12 ZX Computing Monthly • November 1986


Ride the thermals in
Quicksilva's glide a n d
destroy mission.

Glider Rider
Quicksilva
£8.95
This is a real d a r e devil mission.
As C o m m a n d e r G l e n n While you
are d r o p p e d onlo a n Island —
your o b j e c t i v e Is to destroy the
n u c l e a r reactors that power the
munitions p l a n t o w n e d by the
Abraxas C o r p o r a t i o n (Arms tor
Anyone, Anywhere. Any Reason).
For the mission you have
b e e n p r o v i d e d with a trail bike
w h i c h converts into a h a n g
glider. The trail bike will tafee you
over rough territory a n d the
conversion to h a n g g l i d e r is very
slick — simply find a slope,
career d o w n it, reverse d i r e c t i o n
a n d the h a n g g l i d e r o p e n s out
like a butterfly a n d you are in
the air. Staying in the air
however is a different matter as
p r a c t i c a l l y all the installations
on the Island are heavily
d e f e n d e d by g r o u n d to air lasers
which if they lock onto you
mercilessly sap your e n e r g y
rating.
Puttering a b o u t on the
motorbike is e n j o y a b l e a n d the
g r a n d tour of the Island Is
r e c o m m e n d e d before The s e c o n d p r o b l e m is else a b o u t the g a m e is very
attempting your objective. You whether it's a c t u a l l y possible to a p p e a l i n g . M a k i n g things
c a n drive r o u n d the perimeter of destroy anything. Drop a b o m b difficult for the player is all very
the island without too m u c h a n d there is n o sign of a n well but g e t l i n g a t o e h o l d on
interference from laser outposts a n i m a t e d explosion. the g a m e should b e easier t h a n
a n d a p p r e c i a t e a) the size of O n e solution of course m a y this This fact is the only t h i n g
the island a n d b) the excellent b e that I'm too jittery to control that prevents Glider Rider from
a n d well thought out d e t a i l in the h a n g glider or too m y o p i c to b e c o m i n g a Monster Hit. It's a
the c o n t o u r e d 3-D g r a p h i c a i m p r o p e r l y but the fact is that g a m e I shall return to a g a i n in
landscape. Then find a n incline I spent a great d e a l of time a n d a n effort to crack it, b u t l can't
a n d take off. Mastering the c o n c e n t r a t i o n just a t t e m p t i n g to h e l p thinking that this o n e
controls ot the h a n g g l i d e r takes register a hit o n something — should have b e e n c a l l e d
some time as it seems to react anything. Mission Impossible (literally) if
as an a c t u a l h a n g g l i d e r w o u l d I tried d r o p p i n g b o m b s from s o m e o n e hadn't thought ol the
- bank too steeply a n d It stalls. every c o n c e i v a b l e height a n d title first.
If you are over the o c e a n a n d a n g l e o n any potential target.
ditch you are i m m e d i a t e l y The result? Nothing. (Bombs also
consumed by p r e d a t o r y sharks h a v e a d i s c o n c e r t i n g way o)
Flying a r o u n d a n d across the d i s a p p e a r i n g In m i d air If you
island is fun but it's w h e n the h a p p e n to switch screens as you
serious business of b o m b i n g hell fly over a target).
out of things gets u n d e r w a y that This, to say the least. Is very
a few flaws in the g a m e are
revealed. You c a n only b o m b
installations from the g l i d e r a n d
a n n o y i n g a n d it's all Ihe more
infuriating b e c a u s e everything i; 2
are given a ration of nine (extra
supplies c a n b e p i c k e d u p from
a m m o d u m p s by using the bike)
but the question is w h a t d o you
S
b o m b a n d how d o you know
when you've hit It?
2
3
The Instructions are hazy at
best, hinting that 'power units Ot
are vulnerable' But w h a t are
power units? There are all kinds
of structures on the Island so
UJ
where d o you start? An Index to
buildings w o u l d have b e e n a Ol
very useful a i d . 00
Christmas is coming The Shadow
Sorderon's Shadow is next on
a n d Beyond are ready side one, a n d a g a i n there's a
touch ot the l a n d s c a p e s as you
with an early prezzie attempt to free the l a n d of
Ellndor from Ihe rule of the not-
for strategy a n d very-nice wizard. Sorderon.
If you c a n c o m p l e t e the nine
adventure fans. tasks set by The Un-named One
you may b e a b l e to cast the
final spell that will e n d
The Best of Beyond Sorderon's power. To c o m p l e t e
these taf* you'll have to trek
Beyond Software a r o u n d Erndor c o l l e c t i n g
£9.95 various m a g i c a l objects trom the as they attempt to toll the plans
characters who inhabit the land. of the g a l a c t i c despot, General
Beyond have always b e e n The g a m e is more of a Zoff.
slronger on strategy/adventure conventional adventure than The c h a l l e n g e presented by
than on a r c a d e g a m e s (do I Doomdark. despite the the g a m e s lies in b a l a n c i n g the
hear Superman b e i n g mention- l a n d s c a p e d graphics, a n d entry strengths a n d weaknesses of
e d anywhere?), a n d now. just to of c o m m a n d s is of the normal your t e a m members a n d
tide us all over while we're 'Get the sword, kill the oik' d e p l o y i n g them effectively
waiting tor Dark Sceptre a n d Star m e t h o d rather than single key against Ihe forces controlled by
Trek to arrive, they've g a t h e r e d entry (though the c o m m a n d Zoff. As with Doomdark, these
together (our of their best-known editor is fairly sophisticated). g a m e s d o not offer a single,
titles together onto a Sorderon's Shadow suffers a little clear cut p a t h to victory a n d
c o m p i l a t i o n tape. bit b e c a u s e the l a n d s c a p e d there's always room for Improve-
The g a m e s assembled here graphics Invite a not really ment a n d new t a c t i c s
have all h a d their fair share of a p p r o p r i a t e c o m p a r i s o n with Shadowfire featured only the
Doomdark, possibly l e a d i n g you Icon system a n d a static display
acclaim — Doomdark's
to expect more than the g a m e of the characters a n d their
Revenge, Shadowfire a n d delivers Underneath the visually
Enigma Force, with only positions but in Enigma Force
attractive presentation,
Sorderon's S h a d o w as a slightly Sorderon's Shadow is a fairly this h a d b e e n u p g r a d e d to a n
less well-known game. g o o d , but by no means a n i m a t e d display in w h i c h you
It seems almost pointless to outstanding adventure. c o u l d a c t u a l l y see the
rehash Doomdark's Revenge, characters move In response to
especially as Mike Singleton's your c o m m a n d s
'landscaping' technique caused My only q u i b b l e a b o u t these
such a fuss when It first
The Enigma team g a m e s was that I found the icon
a p p e a r e d in Lords of Midnight. Shadowtire a n d Enigmaforce system a bit fiddly to c o p e with,
But Doomdark took the (both written by Denton Designs) but there's no d e n y i n g the
t e c h n i q u e even further, to are sensibly put together on side difficulty of the c h a l l e n g e that
p r o d u c e a massive fantasy e p i c two of the tape, as they both the two g a m e s present you with
in which, p l a y i n g the part of feature the adventures of the or the quality of the games'
Prince Luxor a n d controlling Enigma team. Shadowfire design. With four g a m e s like this
various other characters a n d c a u s e d a h u g e fuss w h e n first all on the same t a p e Beyond
armies, you e m b a r k on a quest released as it was o n e of the first have p r o d u c e d a high-class
to free the l a n d ol Midnight from g a m e s to feature a truly c o m p i l a t i o n which, assuming
the threat of Shareth the sophisticated Icon control you haven't a l r e a d y got mosl of
Heartstealer. The g a m e allows system. Both g a m e s put you in the games, represents g o o d
you to enter c o m m a n d s via control of Zark, Syylk. Sevrina, value for followers of adventure
single key entry (w=look. a n d M a u l of the Enigma t e a m a n d stategy g a m e s
q=move), a n d the six thousand
locations 48,000 l a n d s c a p e d P o o m d o r k l Bev^on.

OSTiiil
views a n d the various characters
a n d objects that you have to Mlimrlmiii: ,,
d e a l with make for a vast a n d '"•iwiim i, m ' ''A 1 » of
c o m p l e x g a m e that has b e e n
keeping h a r d e n e d adventure
addicts g l u e d to their keyboards
ever since it was first released.
A second t a p e in the 5 H 1 7 S
p a c k a g e also includes a
recording of a dramatised
version of the story of
Doomdark's Revenge - a must
for lovers of p u r p l e prose.
Anthony Stewart faces
the inevitable.
COLUMN
T H E PCW Show has c o m e a n d There was no new QL software for the lifespan of their
gone (or yet another year a n d worth m e n t i o n i n g a n d . more c o m p u t e r s Those of you who are
there was hardiy a QL in sight. surprisingly, very little new stuff toying with the i d e a of b u y i n g
Digital Precision was a n for the Spectrum. So as not to o n e ought to keep thinking a n d
exception a n d the c o m p a n y totally waste my tube-fare, I got not look elsewhere too quickly. If
had the c o u r a g e to flaunt its a c o u p l e of g a m e s for my you want a g o o d c o m p u t e r at a
sentiments with a sign r e a d i n g : Spectrum. In particular, Trivial rock-botlom p r i c e (which just
"QL only a n d p r o u d of It!" But Pursuit (from Domark) looks a might get a bit more rock-
everything else was Amstrad or winner a n d , for the less trivially- bottom before too long) w h i c h
Alarl a n d even the new m i n d e d , a c t i o n - g a m e s players will last for a few years a n d
Spectrum +2 s e e m e d to take a a m o n g s t you, Strike Force C o b r a w h i c h has a lot of very g o o d
back seat to Amstrad's l a u n c h of (Piranha). Night Rider (Ocean) software (which, if not exactly
an Impressive-looking, a n d TT Racer (Digital Integration) selling for next to nothing is
inexpensive PC obviously a i m e d are p r o v i d i n g my nine-year-old e c o n o m i c a l l y p r i c e d a n d is
ot c a p t u r i n g the poor-man's-IBM son ( a n d his father) with endless definitely g o i n g to get cheaper),
market. Sadly, the QL looks as hours of amusement. In case you a QL is still something worth
d e a d as the proverbial door nail suspect that his father is trying to looking at.
but let's p o s t p o n e the o b i t u a r y a v o i d talking a b o u t the The QL's ghost, like o l d John
for a little while a n d talk a b o u t inevitable, you h a p p e n to b e Just Brown's goes m a r c h i n g o n even
happier things for a bit. a b o u t spot-on a n d — here It Is — if the b o d y lies a - m o u l d i n g in
THOR, CST's r e i n c a r n a t e d , the QL is now history in the past the ground. G o have a look at
higher lite-form, QL was there in tense. The q u a n t u m l e a p is d e a d the new Amstrad PC but forget
force a n d It's a g o o d - l o o k i n g a n d gone. a b o u t all the flashy sales stuff
machine. CST a n d I have telling us that it's the greatest
something In c o m m o n ; neither thing since p o p - t o p beer cans
one of us c a n m a n a g e to get R.I.P. a n d fated to m a k e IBM d e c l i n e
ony c o m m e n t out of Amstrad! into obscurity. What you are
While I'm still w a i t i n g for that I talked to quite a few of the g o i n g to see Is the g a d g e t that
elusive Amstrad PR m a n to major QL suppliers a n d software Sir Clive tried to market but
"check with the client a n d get houses a n d . w h e n I c o u l d get didn't. It's got the built-in disc
back to me", CST has b e e n them to stop g o i n g o n a b o u t the drive that Ihe QL should have
taking the bull by the horns a n d new Amstrad PC they all said h a d instead of those
telexing the c o m p a n y directly to m u c h the s a m e thing. It's t e m p e r a m e n t a l microdrives It
try a n d r e a c h a n finished a n d Amstrad rules the has a n excellent keyboard a n d
a c c o m m o d a t i o n over Thor's use day. M i c r o d e a l , w h i c h has c o m e s with a monitor. The basic
ol QL circuit boards. They haven't s u p p l i e d numerous QL g a m e s p a c k a g e costs some £399 a n d a
heard a ticky-boo so m a y b e it's a n d a n excellent flight simulator, tew h u n d r e d more will give its
not Just me, m a y b e Amstrad told m e (on their stall In the Atari owner a top-notch system.
doesn't talk to a n y b o d y a b o u t exhibition) that nobody's really Amstrad's only mistake as far as I
anything. I d i d have to grin, s e n d i n g in any more QL soft- c a n see is to endlessly g o on
however, at the sight of a CST ware for possible p u b l i c a t i o n . a b o u t the PC's IBM
exec ( c o m p a n y ID b a d g e s Obviously our g a m e s - d e s i g n i n g c o m p a t a b i l i t y a n d why it's a
conspicuous by their removal) friends throughout the land, better deal. Both are no-doubt
taking splashy hand-outs from a h a v i n g spotted the inevitable, true, but who really wants to buy
smiling. PC-promoting A l a n have m o v e d on to fresher a n d a n imitation IBM w h e n they
Sugar. It's the sort ot t h i n g that more profitable c l i m a t e s Some might just b e a b l e to save
makes you want to root for the of the other, more heavy-duty e n o u g h c o p p e r s to buy a real
underdog even if you aren't software houses said m u c h the one?
willing to put a few q u i d on him. s a m e t h i n g after a l l the j a r g o n All this is what Sir Clive tried
was translated into day-to-day to d o a few short years a g o
English. Alright, so there's Thor (except that he h a d the guts if
QL mouse but it's a different type m a c h i n e not the g o o d sense not to g o for
at a p r i c e few home-micro users a n IBM clone) a n d it's just that
Those hard-to-find West G e r m a n s a r e g o i n g to look at for long. As Amslrad is profittlng from his
finally r e a p p e a r e d at the Show a business p a c k a g e or system errors a n d their o w n u n d o u b t e d
and I got a c h a n c e to p l a y with for the richer h o m e user, it looks marketing expertise. Amstrad is
their QL mouse a n d software (a very g o o d but it's not the even promising us a high-quality
desk-top m a n a g e r a n d a q u a n t u m l e a p that Sir Clive tried chess p a c k a g e tor the PC but
Superbaslc extension) p a c k a g e to give us at every-day p r i c e s what d i d Sinclair give us straight-
that sells for a r o u n d £90. It seems So don't e x p e c t m u c h in the a w a y (when most software
excellent in all respects a n d w a y of new QL software. There houses were still w a i t i n g to see
makes a n i d e a l alternative to will b e some in the days to how things were g o i n g to shape
Eldersoft's ICE a n d mouse c o m e but the f l o o d gates that up)? A first-class chess p a c k a g e
combination (which costs a b o u t only started to o p e n a few short that's still u n b e a t a b l e When you
the same) but — save for the months before Sinclair d o have a look at what will
odd c o m p u t e r show — you c a n computers got themselves a new u n d o u b t e d l y b e a disgustingly
only r e a c h these p e o p l e by owner have shut a g a i n a n d we successful business venture,
contacting t h e m at Giga-soft in a r e b a c k into a square-one- r e m e m b e r the famous words of
Dusseldorf(full address in the situation (or worse). But all isn't what's-his-name;
odd ZX C o m p u t i n g advert or g l o o m a n d despair. There's a "Of all the words of p a p e r of
supplied u p o n request) so large a m o u n t of q u a l i t y software pen, the saddest are these. 'It
Eidersoft p r o b a b l y doesn't have for the QL a l r e a d y on the market might have been'." I c a n assure
a lot to worry about. to k e e p most owners in business you that Sir Clive will.

12 ZX Computing Monthly • November 1986


SPECTRUM/QL
They said it couldn't be
LINK Pin c o n n e c t i o n s to b e m a d e
at both the QL a n d Spectrum
O n c e you have c o n n e c t e d or
p u r c h a s e d your RS232 l e a d you
done, but David ends are listed In t a b l e 1. The QL might still have p r o b l e m s getting
has two serial ports, a n d both the two computers talking to
are wired slightly differently, so e a c h other. This is b e c a u s e the
Nowotnik shows how to d e c i d e in a d v a n c e w h i c h serial RS232 'standard' is tar from b e i n g
port you wish to use (the absolutely standard. With RS232
get a Spectrum a n d QL examples used later on use d a t a is transmitted serially, i.e.
serl). a n d wire the D p l u g o n e bit after another a l o n g a
c o m m u n i c a t i n g with a c c o r d i n g to the a p p r o p r i a t e single line. This d a t a c a n travel
c o l u m n In the table. II you elect at different speeds, a n d
e a c h other. to sacrifice a QL printer c a b l e , transmitter a n d receiver must b e
then the a p p r o p r i a t e wire set to talk a n d listen a l the same
colours are shown a l o n g s i d e the speed. The s p e e d of transfer is
L a s t month I d e s c r i b e d how D-pin n u m b e r to w h i c h it is known as the b a u d rate (bits per
d a t a c o u l d be passed b e t w e e n c o n n e c t e d . D-pin numbers are second), a n d we'll see in a
the Spectrum a n d QL computers shown in Fig.1, (viewing the p l u g m o m e n t how the b a u d rate is set
via their network ports. We from the b a c k ; the side to w h i c h on both computers.
discovered lhat while leads a r e soldered). It you are There are other possible RS232
c o m m u n i c a t i o n by this route Is wiring a BT plug, then p i n 1 is mismatches b e t w e e n transmitter
possible, c e r t a i n the o n e tarthest from Ihe plastic a n d receiver w h i c h c a n c a u s e
incompatibilities b e t w e e n the l e g of the plug. problems; things c a l l e d parity
two computers' network systems bits a n d h a n d s h a k i n g .
m a d e d a t a transmission a n d Fortunately, the default setting
reception slow a n d unreliable. o n QL a n d Spectrum a r e similar,
But both computers otfer a n so they n e e d not c o n c e r n us
alternative - the RS232 ports, here. But b e w a r e of these
a n d this you should find, offers
far greater reliability a n d speed. o c o oo potential p r o b l e m s w h e n linking
your c o m p u t e r to any other
device.
o o oo
As with network
c o m m u n i c a t i o n , you will n e e d So, with your c o m p u t e r turned
a n Interface 1 for your Spectrum on. a n d RS232 l e a d c o n n e c t e d ,
to allow the QL a n d Spectrum to you a r e r e a d y to test out your
'talk* to e a c h other. In a d d i t i o n ,
you will n e e d a s p e c i a l lead. If
"9 8 7 6 wiring efforts. Try the test routine
in Fig.2. Type is the p r o g r a m
you are h a n d y with a soldering Piq.l. D i a g r a m of D pluq lines to e a c h computer. SAVE
Iron, then you might like to try pin c o n n e c t i o n s them, a n d RUN both computers.
m a k i n g up your own lead. If not. O n c e both programs are
then try o n e of the c o m p a n i e s running, you n e e d only type on
who regularly advertise in 'ZX the QL keyboard. The INPUT
C o m p u t i n g ' a n d other Getting wired cursor will flash in w i n d o w 11^0.
magazines with s p e c i a l QL a n d a n y t h i n g you type in a n d
RS232 l e a d s Of the five wires w h i c h c o n n e c t ENTER will (if all is well) a p p e a r
On both computers the the two serial ports, two are for on the Spectrum screen, then on
connectors are non-standard for d a t a c o m m u n i c a t i o n (data flow the QL screen. The w o r d or
RS232 lines At the QL e n d the is unidirectional o n e a c h wire), message has to b e successfully
connector is a British Telecom a n d two provide simple switches transmitted to the Spectrum,
p l u g (the sort you'll have a l the to permit transmitter a n d then transmitted b a c k to the QL
wall e n d of your t e l e p h o n e if receiver to tell e a c h other if they before it a p p e a r s o n the QL
your t e l e p h o n e is transferable). are ready for d a t a screen. So. your message on the
A n d for Spectrum connections c o m m u n i c a t i o n . These work by QL screen m e a n s that
you'll n e e d a nine p i n D-plug: p l a c i n g a voltage on the line to c o m m u n i c a t i o n is working in
the sort that will fit into Atari i n d i c a t e a state of readiness both d i r e c t i o n s Note from the
joystick p l u g s Bolh types of plug, That voltage Is relative to listing that it is only necessary to
a n d the l e a d to c o n n e c t them 'ground', w h i c h is the fifth line to o p e n a single c h a n n e l on both
c a n b e o b t a i n e d from specialist c o n n e c t both computers. QL a n d Spectrum.
electronic a n d t e l e p h o n e supply
shops
The BT p l u g requires great skill Table 1. R S 2 3 2 Lead - w i r i n g connections
(and a specialist tool) to wire up
the five leads necessary to D pin BT Socket D pin
c o m p l e t e the link. If you don't (connect t o »erl> (connect t o ser2)
have the c o n f i d e n c e to try this
7 black 1 7 black
for yourself, you c o u l d 'sacrifice' 3 white 2 2 white
the RS232 l e a d s u p p l i e d to link 2 green 3 3 green
the QL to a printer, by removing 5 blue 4 4 bl u e
the standard RS232 p l u g a n d 4 red 3 S red
c o n n e c t i n g the D plug.

12 ZX Computing Monthly • November 1986


C o m m u n i c a t i o n o n a single
RS232 c h a n n e l is b i - d i r e c t i o n a l . Fig.2. Simple communication test routine
The next step is to see w h i c h
of the various BAUD rates is most a) Spectrum listing
reliable. The QL a n d Spectrum
have six transfer rates in
c o m m o n . The listing in Fig.3 is 10 REM T est of RS232
d e s i g n e d to test t h e m out. A g a i n 20 REM
type In the listings, SAVE a n d 30 FORMAT "b";1200
RUN them. 40 OPEN #4;"b"
In this lest, the Spectrum is SO REM
a g a i n the 'slave' of the QL,
r e c e i v i n g messages, p r i n t i n g
60 INPUT #4;a*
them on the screen, then 70 PRINT af
transmitting t h e m b a c k to the 80 PRINT #4;a*;CHR* 10;
QL. where they are tested for 90 IF a$="stop" THEN STOP
errors. The m e s s a g e transmitted 100 GOTO 50
a p p e a r s in the DATA lines 60-90
of the QL listing. Also transmitted
are a set of six contro! codes. b> QL Listing
These are c o d e numbers w h i c h
d o not c o r r e s p o n d to any of the 10 REMark Test of RS232
character c o d e s s h a r e d by the 20 REMark
two machines. The Spectrum 30 BAUD 1200
RS232 c h a n n e l has b e e n
o p e n e d to t y p e "b" (see your 40 OPEN #4, serl
Interface 1 h a n d b o o k ) In line 40 50 REPeat loop
to permit these c h a r a c t e r s to b e 60 INPUT #0,ai
transferred. In any Spectrum/QL 70 PRINT #4,a4>; CHR$<13>|
RS232 c o m m u n i c a t i o n s , it Is also 80 INPUT #4,b$: PRINT b*
preferable to use the " b " (binary)
rather t h a n "t" (text) o p t i o n on 90 IF b$="stop" THEN EXIT loop
the Spectrum side, otherwise 100 END REPeat loop
o d d results m i g h t occur.
So. the p r o g r a m loops r o u n d
from 9600 B a u d to 300 b a u d (which only gives the time to the should occur. Surprising, the
(line 150 in the QL listing, 40 in second). After e a c h test the only fault I f o u n d was at the
the Spectrum listing) s e n d i n g the p r o g r a m halts, w a i t i n g for you to lowest transfer rate. 300 b a u d ,
same m e s s a g e a n d set of press any key o n the QL w h e n d a t a transfer s e e m e d to
numbers from QL to Spectrum, keyboard. fail altogether. Try the test a few
then b a c k a g a i n . The result of times for yourself, a n d c o n f i r m
every test is p r i n t e d o n b o t h Time these results. It will m e a n that
screens, with the n u m b e r of there is no d i s a d v a n t a g e (in
errors, a n d l i m e taken given o n There is a fixed time on e a c h terms of reliability), a n d m u c h to
Ihe QL screen. The test of time Is test d e v o t e d to the testing a n d b e saved in time by always
c a r r i e d out using the QL system p r i n t i n g of results, so the selecting the m a x i m u m b a u d
variable at address 163886. Set i n f l u e n c e of different b a u d rates rale of 9600. w h i c h h a p p e n s to
lo zero (line 160), It increments c a n only b e j u d g e d by the b e the default value o n the QL.
fifty times a s e c o n d , so w h e n it is differences in time taken. You Last m o n t h I g a v e you a
PEEKed (line 290) a n d d i v i d e d by should find that the a c c u r a c y of p r o g r a m to transfer BASIC
50. it gives the time taken more transfer should not vary m u c h p r o g r a m s from Spectrum to QL
a c c u r a t e l y t h a n using DATE with speed, a n d very few faults using the network system. This

Fiq.3 rout of speed and rail A b i l i t y 40 DIM a*(4,28): RESTORE


S O F U R 1-1 T O 4: R E A D a * < 1 ) 1 E N D F O R 1
<) Spectrum Listing 6 0 D A T A " T h i s is a test of s p e e d and "
7 0 D A T A " r e l i a b i l i t y of t h e t r a n s f e r "
10 R E M R e l i a b i l i t y Test 8 0 D A T A "of d a t a b e t w e e n t h e O L and "
20 REM 9 0 DATA "Spectrum computers."
3 0 L E T x » 1 9 2 0 0 t LEI (,HK J lu lOO D A T A 1 2 0 , 2 5 4 , 2 5 5 , 0 , 2 3 , 5
4 0 L E T x - x / 2 l F O R M A T "b"|x 1lO F O R 1*1 TO 6
30 OPEN * 4:"b": CLS 120 R E A D tie«-e*t. C H R * (2)
6 0 F O R j-1 T O 4

</>
130 E N D F O R 1
7 0 INPUT * 4 j a * 140 R E P e a t l o o p
BO P R I N T a «

z
ISO x - x / 2 i B A U D xi e r « 0 : C L S
9 0 P R I N T »4: a*(hit 160 POKE W 163886,0
lOO N E X T J 170 O P E N N 4 , serl
110 INPUT N4;at
120 P R I N T N 4 | A l | h * |
180
190
F O R J-1 TO 4
PRINT «4ta«<J>|h*|
O
130 P R I N T 200 INPUT K4,v*J P R I N T v *
140 F O R 1-1 TO 6 210 F O R k>l TO L E N <v*>

o
150 P R I N I CODE a * U ) 220 IF v l ( k ) < > * t ( J , k l I H E N e r - o r M
160 N E X T 1 230 END FOR U
170 P R I N T " B a u d " " i n 240 END FOR J
180 INPUT * 4 | a t 250 PRINT N4ief|h«!
!90 C L O S E * 4 260 INPUT *4 J vt
2 0 0 IF x > 3 0 0 T H E N G O TO 4 0 270 IF v«<, >e* 1MEN e r - e r » l

s
280 PR iNT\ "Baud • E r r o r * = "|wr
290 t»lNT (PEEK W < 1 6 3 8 8 6 ) / 5 0 ) / 1 0

s
b) UL Listing 300 PRINT "Time • "|t;M seconds"
3lO s*=IN*EY*{-1)t vl="ne*t": PRINT »4;v*jh»:

o
10 REMarfc R S 2 3 2 tost proqran 320 P A U S E S O : C L O S E «4
20 REMark 330 IF x » 3 0 0 T H E N EXIT loop
30 x -192001 o * - " " j h » - CHftf <!"-•) 3 4 0 E N D REPeat loop
o
12 ZX Computing Monthly • November 1986
Fig.4. RS232 Transfa of Spectrum prograai to OL 610 1
6 2 0 PRINT - p l a c e • f o r m a t t e d cartridge"
a) Bpictru* Listing 6 3 0 PRINT " I n i » d v 2 _ , t h e n p r * u a n y key"\\
640 k « - IMKEY*<-1>
9900 FORMAT " b " t 9 6 0 0 6 3 0 DELETE » d v 2 _ t e * p _ b a a
9981 0 0 BUB 9 9 9 7 6 6 0 OPEN NEW « 4 , m v 2 t e m p b a a
99B2 LET M - y - m LET r - 0 670 REPeat Ioop2
9983 OPEN • 3 | " b " i P R I N T » 3 i 8 T R * k | CMR» 10| 680 REMarfc l i n e n u m b e r firat
9904 FOR ( - 1 TO k 690 a«-236*PEEK(a>+PEEK ( a * l ) i a-a*4
99B3 0 0 SUB 9 9 9 7 700 I F a » - " 9 9 B 0 " THEN E X I T loop2
9906 L E T I * - C H R I < PEEK tn*r)> 710 R E P e a t l o o p s
9987 LET r - r * l i PRINT • 3 | r « ( 720 I— PEEK < a )
99011 NEXT 1 730 S E L e C t ON t
9909 CLOSE • 3 740 • 3 2 TO 1 2 7 t a * - a * b C H R * ( t >
9990 STOP 750 - 1 2 8 TO I 4 3 i as-all.-<>'
9997 L E T » • PEEK 2 3 6 3 3 » 2 3 6 > PEEK 2 3 6 3 6 760 - 1 4 4 TO 1 6 4 i a * - « * L ClCHRffz-79) f > •
9990 L E T v - PEEK 2 3 6 2 7 * 2 3 6 » PEEK 2 3 6 2 8 770 • 1 6 3 TO 2 3 3
9999 RETURN 760 »*-keyword* Ir-I64l| x t - n t d TO k e y .
790 at-atlkf
b) OL Listing DOO -131 EXIT 1 oop3
010 •REMAINDER i a - a * 3
100 R E M a r k I rip o r t S p e c t r u m P r o q r i m t B20 END S E L e c t
HO RCMark v i a t h e RS232 l i n e 030 a-a+1
120 I B40 END R E P e a t loop3
130 REHark I n i t i a l 1 ae 030 PRINT a 4 | at
140 t B60 PRINT # *
ISO CLS i P R I N T - I n i t i a l i s i n g - p l e a a * wait* 070 a-a*li I F a » p o a l t l o n THEN E X I T 1 o o p 2
160 < • RESPR ( 0 1 0 0 0 END R E P e a t loop2
170 I F a > 2 2 1 1 0 4 THEN a - RESPR (a-22ll84> 0 9 0 CLOSE B4
160 MET I l O O O DATA RND ' 1NKEY* • , • P I • t " F N •
190 r « - CHR*(131 1 0 1 0 DATA POINT ' SCREEN* ATTR AT
200 p o s i t i o n * * ) RESTORE lOOO 1 0 2 0 DATA TAD ' V A L * ' • CODE • VAL
210 Dili keyword* ( 9 1 . 1 0 ) , key_len (91) 1 0 3 0 DATA LEN ' BIN CDS ' * TAN '
220 FOR 1 - 1 TO 9 1 1 0 4 0 DATA ASN * ACS • , ATN ' ' L N •
230 READ keyword* (!)-•* 1 0 3 0 DATA EXP • INT SOR ' SON '
240 k e y l » n < ! ) • LEN ( a * ) 1 0 6 0 DATA ADS ' PEEK • I N 1 " USR '
230 END FOR I 1 0 7 0 DATA GTR* * CHR* , ' NOT ' DIN
260 I 1 0 0 0 DATA OR AND ' , >• •
270 REIirli Transfer progr«n f r o * Spectrum 1 0 9 0 DATA <> •, L I N E ' , THEN , • TO *
1 1 0 0 DATA STEP ', DEF F N ' CAT • FORMAT '
280 I
I 1 1 0 DATA MOVE * , ERASE * , ' OPEN • • , ' CLOSE • *
290 BAUD 9 6 0 0 1 OPEN a S , « v r 1
300 INPUT S 3 | n u n l i nua-nunl
1120 DAT^. MERGE ' • V E R I F Y * , ' DEEP * , ' C I R C L E "
I 1 3 0 DATA INK PAPER ' , ' F L A S H ' , 1 D R 1 0 H T '
320 PRINT Receiving the progra#>"\" f r o * the Spectrua"
1 1 4 0 DATA INVERSE * , ' OVER • , ' OUT ' , • L P R I N T •
330 FOR 1 - 1 TO n u n
I 1 3 0 DATA L L I S T • ' STOP * , 4 READ ' , DATA '
330 «»- If*EY»(»3,-I)
I 1 6 0 DATA RESTORE • , • NEW ' , ' BORDER CONTINUE
360 POKE p a n C l a n , CODE ( « » )
1 1 7 0 DATA D I M ' , ' REM - , ' FOR ' , ' GO TO '
370 posttlon-pa*l 11oo*l
1 1 8 0 DATA GO e u B , 1 INPUT * , ' L O A D ' , ' L I S T •
400 END FOR I
I 1 9 0 DATA LET PAUSE ' NEXT POKE
430 CLOSE » 5
1 2 0 0 DATA P R I N T ' ' PLOT ' RUN SAVE
440 PRINT V \ " T r a n s f e r complete'W
1 2 1 0 DATA RANDOMIZE I F ' , * C L S * , * DRAM
4 SO (
1 2 2 0 DATA CLEAR • , • RETURN ' , • COPY 1
too R E H a r k C r e a t e f i l e o4 B A S I C l i n e s

was reliable only when e a c h Another benefit QL users (atf_arrayS) in the QL. At the
byte value was transmitted as a c o u l d derive is in the transfer of same time, the p a p e r attribute
number, a n d the c h a n n e l the Spectrum screen display to colours are d i s p l a y e d on the QL
o p e n e d a n d closed with e a c h the QL. Despite the limitations on screen. In order to a c h i e v e the
transmitted number. As you have Its screen display, some spectacular displays on the
seen, the RS232 line is tar more excellent colour pictures c a n Spectrum's limited display file,
reliable, a l l o w i n g d a t a to b e create for Ihe Spectrum. With some clever tricks have b e e n
sent as a stream ot 8-bit c o m p a r a t i v e l y little a v a i l a b l e for used, a n d PAPER a n d INK are not
characters at 9600 bits per the QL In this respect, always what you think they are.
second. To make use of this programmers c o u l d transfer their By first printing all of the PAPER
faster a n d more reliable transfer favourite Spectrum screen blocks, you c a n see the clever
rate {particularly useful in longer displays, then import them into a way Spectrum pictures are
programs) p r o g r a m transfer c a n graphics p r o g r a m (e.g. m a d e up. Next all the pixels are
b e improved using the RS232 GraphiQL) for modification. The transferred. This is a slow
line. Fig.3. contains the listing of listing In Fig.5. allows the screen business; It's not the transfer rate
the transfer program converted display to b e transferred. w h i c h Is a p r o b l e m , but all the
for use with the RS232 link. To use calculations w h i c h are
the programs, MERGE the necessary by both computers.
Spectrum listing with the
program you wish to transfer,
Screens The Spectrum has to c a l c u l a t e
the byte address of e a c h block
a n d RUN the QL program, with a O n c e both listings are entered of eight pixels. This It does in line
microdrive c a r t r i d g e in mdv.2. a n d saved. RUN them. The 260 with the a i d of a small
Type a n d enter RUN 9980 on the Spectrum screen asks you to m a c h i n e c o d e routine installed
Spectrum. The p r o g r a m will b e press p l a y on your t a p e recorder. in the user d e f i n e d graphics
transferred, then translated to a n
It assumes that you have a t a p e area of RAM (Installed using the
ASCII file at the QL end. a n d
stored on microdrive under the in the recorder c o n t a i n i n g the subroutine starting at line 1000 of
file n a m e of ' t e m p _ b a s ' . This screen display you wish to the Spectrum Using). the QL
c a n be l o a d e d into the QL as a transfer, a n d that the screen works out w h i c h bits In e a c h
normal BASIC program. The QL display file is the first file it will byte are INK, a n d w h i c h are
a d d s the word 'Mistake' to the find on the tape. In the PAPER, a n d laces the
b e g i n n i n g of any line w h i c h is meantime, the QL screen is a p p r o p r i a t e pixel colour on the
syntactically incorrect, a n d you asking for a file n a m e for the screen. Unless you are
m a y well see several of these screen. O n c e the transfer is fascinated by the picture slowly
when you list the program. In complete, the screen display is b u i l d i n g up on the QL screen,
a d d i t i o n to these modifications, saved to microdrive 2 using that g o a n d enjoy a c u p of tea while
other c h a n g e s will no doubt b e filename. this Is g o i n g on! The display will
necessary for the p r o g r a m to run O n c e the display is l o a d e d fill a QL monitor screen, so you
successfully on the QL. But on the Spectrum screen, the m a y find it will overflow if your
transfer of the p r o g r a m c a n save border will flash, i n d i c a t i n g have a TV as your QL screen.
a lot of eftort c o m p a r e d with re- transfer of d a t a via the RS232 There c a n b e many
t y p i n g the w h o l e program. line. Attribute d a t a is transferred a p p l i c a t i o n s for the transfer of
first, a n d saved In a n array d a t a b e t w e e n two computers. In

12 ZX Computing Monthly • November 1986


/
this article, a n d the o n e last limitations) b e t w e e n Spectrum any a p p l i c a t i o n you m a y
month, you should see how this a n d QL. a n d the p r i n c i p l e s require.
is possible (knowing the d e v e l o p e d c o u l d b e a p p l i e d to

Fig 3. T r i m f t r ol Spoctru* i c r n n display to Ot. 190 BLOCK I6,l0.16**,10*y.l


200 END D E F i n a
6> Spactrus listing 210 •
220 D E F i n a PROCadura PAPER,ATT
t o 0 0 SUB lOOO 230 LOCal 1,J.at,att
20 P R I N T " P r e s s P l a y o n y o u r t a p * r K o r d t r " 240 FOR 1 - 0 TO 3 1
SO LOAD SCREEN* 2SO FOR J - O TO 2 3
SO OPEN » 4 | - b " l 9 6 0 0 260 a»-INKEV«<«4,-!>) » t t - C O D E <•» >
1 2 0 FOR 1 - 0 TO 3 1 270 att_array*(1*1, J*l>-a«
1 3 0 FOR J - 0 TO 2 3 280 att-<attlL56)/Bl B&lock a t t . l . j
140 P R I N T « 4 | CMftl ATTR < J . 1 ) | 290 END FOR 1
I S O NEXT J 300 END FOR t
1 6 0 NEXT 1 310 END D E F i n a P A P E R . A T T
170 PRINT »4t-p|M«ls-| 320 1
2 3 0 FOR 1 - 0 TO 1 9 2 330 DEFina PROCadura PAINT.INK
2 4 0 FOR J - 0 TO 3 1 340 LOCal t,z*,oM,l,j,k,ro-
2 3 © POKE 3 2 7 4 7 . 1 1 POKE 3 2 7 3 3 , l i POKE 3 2 7 6 3 , 1 350 row"0
2 6 0 L E T b t — 1 6 3 8 4 * 3 2 * USR 3 2 7 6 0 * 2 3 6 * USR 3 2 7 4 4 * 4 * USR 32732*J 360 FOR l - O TO 1 9 1
2 7 0 L E T p - PEEK t i t 370 FOR J - 0 TO 3 1
2 8 0 P R I N T a4| CHRI Pi 380 tt-INKEy*l«4,-|)
2 9 0 NEXT J 390 a t t - C O D E U t t . a r r a y * ! J * 1 , (1 DIV8i*l)>
3 0 0 NEXT i 400 1k—a 1 1 L L 7 l pap-<attLb36l/O
3 1 0 CLOSE • 4 410 I - C O D E <1*1
9 9 0 STOP 420 FOR k - 7 TO 0 S T E P - 1
1 0 0 0 RESTORE 430 I F ( t MOD 2 ) THEN
I O I O TOR 1 - 3 2 7 4 4 TO 3 2 7 6 7 440 BLOCK 2 . 1 * C < I MOD 3 > - O l , 2 * I J * B * h » , r » , i k
1 0 2 0 READ a i POKE 1 , a 430 ELSE
1 0 3 0 NEXT 1 460 BLOCK 2 , I * M I MOD 3 1 - 0 1 , 2 * < J * 8 * k > . c o m , p a p
1 0 4 0 RETURN 470 END I F
1 0 3 0 DATA A , 0 , 6 2 . 0 , 2 3 0 . 7 , 7 9 . 2 0 1 480 »•» Dlv 2
1 0 6 0 DATA 6 , 0 , 6 2 , 0 , 2 3 0 , 3 6 , 7 9 , 2 0 1 490 END FOR It
1 0 7 0 DATA 6 , 0 , 6 2 , 0 , 2 3 0 , 1 9 2 , 7 9 , 2 0 1 300 END FOR j
310 r o w - r o t . - 1 »< l NOD 3 « O l
bl OL Listing 520 END FOR 1
1 0 R E M a r k S p t c t r u * S e r e on T r a n s f e r 330 END D C F i n a P A I N T . I N K
20 I 540 I
30 INIT SSO DEFina PROCadura d e l a y
4 0 INPUT W F l l a n u t for scraan display *|riMtt 360 LOCal •*,count,C*
3 0 PAPER A T T 370 Kf-~plxala"i count-0
60 d a l a y i PAINT_INK SBC REPaat loop!
7 0 SDVTES - i » d v 2 ' t n a o a l , 1 3 1 0 7 2 , 3 2 7 6 8 390 C«-INKEV«<«4,-|)
BO STOP 600 I F e * - * * ( c o u n t * ! 1 THEN
90 i 610 count-count*!
100 D E F l n a PROCadura INIT 620 ELSE • c o u n t — 0
1 1 0 MlNDOw 3 1 2 , 2 3 6 , 0 , 0 1 PAPER O 630 END I F
1 2 0 MODE B l C L S 640 I F C o u n t - S THEN E X I T loopl
130 DIM att array*132,241 636 END R E P a a t loopl
1 4 0 DAUIs 9 6 0 0 660 c«-lre.£y»<64.-i>
1 3 0 OPEN a 4 , carl 670 END D E F i n a dalay
1 6 0 END D C F k n a I N I T
170 t
1 8 0 D E F i n a P R O C a d u r a GfilOCfc l l , . , y )

Shock horror! A new QL


game from Rubicon
Systems.
Dragonhold
Rubicon Computer
DragKHtfioW
The g a m e is a t r a d i t i o n a l D&D n o u n s For instance, key 0
Systems type, you b e g i n in the Dark d o u b l e s as OPEN a n d OPAL. It
£19.95 Caverns a n d have to search for m e a n s that adventure purists will
the Elixir of Lite. There are six l i n d the joy of discovering the
• n the e a r l y d a y s ot c o m p u t e r different areas a n d a host of right words a n d the surprise ol
programs there a p p e a r e d creatures w h i c h react lo you in f i n d i n g u n k n o w n objects has
several rather s i m p l e attempts at different w a y s You c a n a t t a c k or b e e n e l i m i n a t e d . However w h e n
role p l a y i n g D81D t y p e g a m e s even talk to t h e m if they are p l a y i n g the g a m e it a d d s
None p r o v i d e d the friendly. greatly to the r a n g e ol actions
sophistication a n d variety ot Movement is a c h i e v e d by you c a n perform c o m p a r e d with
action of the o r i g i n a l g a m e but cursor keys or joystick a n d is a purely g r a p h i c a l p r o g r a m .
they h a d c h a r m a n d v a r y i n g d e p i c l e d g r a p h i c a l l y in the The ability to fight, converse
degrees of s u c c e s s These c e n t r a l window. Other windows a n d barter are all i n c l u d e d a n d
d e v e l o p e d in m a n y ways Into p r o v i d e Information on status the options are very
the g a m e s we now know a n d text input, a n d m e s s a g e s the comprehensive. I found that its
love on most m a c h i n e s The QL g r a p h i c s are m o d e 4 g r a p h i c s very l a c k of clever t e c h n i q u e s
however, never a t t r a c t e d the a n d t h o u g h not stunning, are no i c o n s no multi-key
same d e g r e e ol enthusiasm a n d c e r t a i n l y a d e q u a t e for the c o m b i n a t i o n presses a d d e d to
Ingenuity that p r o g r a m m e r s game. its a p p e a l a n d soon I h a d
lavished o n other machines. My greatest g r i e v a n c e become completely absorbed
D r a g o n h o l d has m a n y a g a i n s t most a r c a d e adventures in the problems, not m i n d
features In c o m m o n with these is that there Is usually no time to b e n d i n g , but e n o u g h to m a k e
early games, but I must a d d that just sit a n d think. A Freeze o p t i o n you p a u s e for thought,
they have tried q u i t e is s u p p l i e d to a l l o w this a l o n g I liked it. a p l e a s a n t c h a n g e
successfully to c o m b i n e with a lull c o m p l e m e n t of save a n d surprisingly a d d i c t i v e
adventure a n d a n i m a t i o n a n d a n d l o a d g a m e o p t i o n s The

. "w ; ,y
strategy. The p r o b l e m is that fans a d v e n t u r e elements are c a t e r e d
ol e a c h s p e c l l i c g e n r e m a y find for in the most c o m p r e h e n s i v e
this hybrid unsatisfying, I just system I have seen lor this t y p e
hope that there are e n o u g h 'all ol g a m e , letter keys A to X have

i;
rounders' to buy. enjoy a n d a s s o c i a t e d VERB or NOUN words
make this a success to the extent ol 11 verbs a n d 24

ZX Computing Monthly • November 1986 59


ERROR
TRAPPING
Mel Mackaron presents
an invaluable a i d for
QL programmers — a
simple a n d effective
error t r a p p i n g
technique.
T T h e Sinclair QL is a wonderful
computer, a n d SuperBASIC is a
very g o o d p r o g r a m m i n g
l a n g u a g e , but, for the person
trying to use his QL to write a
fairly professional a p p l i c a t i o n ,
there has, until now, b e e n a
significant stumbling block: the
'absence' of a n error-trapping
c o m m a n d . Most micro-
computers have a keyword
c o m b i n a t i o n such as ON ERR —
GOTO xxx to h e l p with
controlling end-user errors or I/O
errors. But nowhere in the
Sinclair d o c u m e n t a t i o n ,
i n c l u d i n g the QL User G u i d e
a n d the QL Technical G u i d e Is
there any mention of such a n
aid.
Ordinarily, the lack of such a
c o m m a n d w o u l d not b e a
problem, if, in a utility you have
written for yourself, a n error
occurs, you should know your
p r o g r a m well e n o u g h to re-enter
at a suitable point. But what
a b o u t another user w h o does
not have your k n o w l e d g e of the
program's structure? If he makes
a n error c a u s i n g the p r o g r a m to
terminate, he m a y not know how
to get b a c k in,

Rom Secrets
If you have f a c e d this d i l e m m a ,
you m a y have felt that you only e n o u g h to write you own error- ERRor - RETRY - END WHEN
h a d limited options: you c o u l d retrieval routines; you c o u l d give The c o n c e p t b e h i n d WHEN
type a message to the user such up. However, you d o have a ERRor is f u n d a m e n t a l l y the same
as 'In case of a n error, type fourth option. Hidden In the QL's as a n ON ERR - GOTO
"GOTO xxx" to re-enter the ROM ( a n d not d o c u m e n t e d in statement; however, the syntax
program! you c o u l d attempt to the a b o v e - m e n t i o n e d books) Is a n d c o d i n g are somewhat
learn assembly l a n g u a g e well the keyword c o m b i n a t i o n WHEN different. Nevertheless, o n c e you

12
ZX Computing Monthly • November 1986
/
know how to use this tool, you

Listing One
will b e a b l e to give your
program a more professional
appearance.
When b e g i n n i n g work with
10 REMark This program d e m o n s t r a t e s p r o g r a m m i n g with no
WHEN ERRor. you must
remember a c o u p l e of rules. 20 R E M a r U at e r r o r - t r a p p i n g . It r e l i e s s o l e l y o n m a c h i n e
First, d o not try to exit from it by 30 R E M a r k level e r r o r r e p o r t s .
using a GOTO. This m a y c a u s e 40 REMark
u n p r e d i c t a b l e results later on, 50 MODE 0 P A P E R 0 : INK 7 : C L S R E M a r k Set D i s p l a y
such as a message like 'error 60 INPUT 'Enter a N u m b e r : *{num
during WHEN processing'. 70 P R I N T \ 1 Y o u r n u m b e r w a s ' t> n u m
Second, the WHEN ERRor routine 80 P R I N T X ' P r e s s a n y k e y to c o n t i n u e . .
needs to p r e c e d e the point at 90 P A U S E : R E M a r k w a i t s for a k e y p r e s s
which the error c o u l d occur. 100 CLS
Also, if you are using separate 110 DIR MDV2_
WHEN ERRor routines, r e m e m b e r
120 PRINT \'Program successfully completed
that the latest o n e takes
precedence. Therefore, you must 130 STOP
always keep In m i n d the user's
location in the p r o g r a m so that
the correct errors will b e
trapped. Listing Two
The four s a m p l e p r o g r a m
segments I have i n c l u d e d show
10 R E M a r k T h i s s e c t i o n d e m o n s t r a t e s e r r o r - t r a p p i n g e f f o r t s by
different levels of error-trapping.
In the fact, a l l we shall rely u p o n 20 R E M a r k the p r o g r a m m e r who does not use W H E N E R R o r . It
is that w h i c h Is built into the 30 R E M a r k c h e c k s for c o r r e c t user input, but c a n n o t c o n t r o l
computer. In the second, the 40 R E M a r k I/O e r r o r s p f f i c l e n t l y .
programmer Is protecting 50 REMark
against a n y t h i n g e x c e p t a n I/O 60 M O D E 0 : P A P E R 0 : INK 7 : R E M a r k Set Display
error. The third demonstrates a 70 CLS : INPUT 'Enter a N u m b e r : ';nam®
basic Introduction to the WHEN 80 R E M a r k Input is a s a s t r i n g w h i c h c o e r c i o n w i l l c o n v e r t to
ERRor construct. The fourth shows 90 REMark a number.
how you c a n trap for multiple 100 IF n u m * = " : 0 0 TO 70 : REMark User only pressed ENTER
errors within o n e routine. Within 110 IF n u m « l l ) < ' 0 ' O R n u m » ( l ) > '9* : G O T O 7 0
these segments, I have also tried 120 R E M a r k U s e r did not e n t e r a n u m b e r
to show a bit of what Is
130 n u m = n u m t : R E M a r k C o r r e c t e n t r y , s o c o n v e r t It
generally t e r m e d ' a c c e p t e d
140 PRINT \'Your number was * num
p r o g r a m m i n g practice*,
something w h i c h m a y h e l p you 150 carry_on
to Improve your o w n 160 CLS
programming. 170 P R I N T • F o l l o w i n g is a d i r e c t o r y of M D V 2 *
ISO P R I N T \*If you get an error, type "GOTO 180"'
Deliberate mistakes 190 carry_on
200 DIR MDV2_
All p r o g r a m segments rely u p o n 210 PRINT W'Program successfully completed!'
two type of errors. First, we ask for 220 STOP
a number to b e entered. On the 230 DEFlne PROCedure carry_on
QL, If a string (such as 'hello')
240 R E M a r k m e r e l y a r o u t i n e to w a i t f o r a keypress
were entered Instead of a
250 P R I N T \ ' P r e s s any k e y to c o n t i n u e . . . *
number, you w o u l d get error -17
(error In expression). Then, we 260 PAUSE
summon a directory of MDV2. If 270 END DEFlne carry_on
there were no c a r t r i d g e in that
drive, we w o u l d get error -7 (file
or device not found). You should
enter all listings (one at a time)
a n d then RUN them. When you Listing Three
do run them, purposely m a k e
the errors you are testing for. In
lhat way, you will learn now 10 R E M a r k T h i s p r o g r a m i n t r o d u c e s W H E N E R R o r . If a n e r r o r
each t r a p p i n g m e t h o d works 2 0 R E M a r k o c c u r s , t h e u s e r is r e t u r n e d to that 11ne n u m b e r
a n d how we are improving on 3 0 R E M a r k to try a g a i n .
the basic, machine-level 4 0 R E M a r k P r o c e d u r e s a r e h e a v i l y u s e d t o m a k e f l o w of p r o g r a m 0
trapping.
Listing O n e works only with
50 REMark clearer.
60 REMark
Z
machine-level control. In other
1
70 initialise
words, when the c o m p u t e r 80 enter_num
encounters a n error, p r o g r a m
execution stops with a n erro
message. You m a y then RUN the
90 directory
100 PRINT W ' P r o g r a m s u c c e s s f u l l y completed.'
5
<
program a g a i n . While this 110 STOP
method of d e t e c t i n g faults m a y 120 DEFlne PROCedure initialise 06
be Informaative, it is also fairly
0
130 M O D E 0 : P A P E R 0 : INK 7 REMark Set Display

o
primitive a n d frustrating, 140 END DEFine initialise
especially for the user who is not ISO DEFine PROCedure enter_num
well-versed in the o p e r a t i o n of 160 WHEN ERRor
computers. 170 PRINT V INVALID ENTRY! (Must b e a N U M B E R ) *
Listing Two show what a 180 carry_on
reasonably c o m p e t e n t 190 CLS
programmer might d o for error
a
200 R E T R Y : R E M a r k R e t u r n t o s i t e of e r r o r Try again. • •
control. In this one, we are

ZX Computing Monthly • November 1986 59


t r a p p i n g within the p r o g r a m
210 END WHEN against a user entering a string
220 CLS instead of a number. However, as
230 INPUT 'Enter a N u m b e r : ' ; num we have no control over I/O
240 P R I N T \* Y o u r n u m b e r M a c * t nuro
errors (such as format failed'),
250 carry_on
we only Include a statement to
the user telling him how to re-
260 E N D D E F i n e e n t e r _ n u m b e r
enter the program.
270 DEFine PROCedure directory
Listing Three Is our first
280 WHEN ERRor
Introduction to WHEN ERRor. It
290 P R I N T \* Mi c r o d r 1 v e E R R O R . *
will h a n d l e any type of error,
300 P R I N T ' P l a c e a p r o g r a m c a r t r i d g e in MDV2' a n d its only d r a w b a c k Is that we
310 carry_on must i n c l u d e a WHEN ERRor
320 CLS : RETRY routine at the b e g i n n i n g of e a c h
330 END WHEN procedure. (I have I n c l u d e d
340 DIR M D V 2 _ procedures here to demonstrate
330 END DEFine directory the clarity a n d modularity you
360 DEFine PROCedure carry_on g a i n from using these in your
370 P R I N T \ ' P r e s s any key to c o n t i n u e . . . ' program.) Because the computer
380 PAUSE knows a n error has o c c u r e d
390 END DEFine carry_on (and w h i c h error It was), the
RETRY c o m m a n d returns you to
the specific line at w h i c h the
mistake h a p p e n e d a n d re-
executes from there.
Listing Four Finally, In Listing Four we shall
see how to PEEK the system
variables on the QL to find the
10 REMark T h i s p r o g r a m a l l o w s the p r o g r a m m e r to direct p r o g r a m specific error c o d e w h i c h was
20 REMark execution from only one WHEN ERRor routine. It generated. By so doing, we c a n
30 REMark a c c o m p l i s h e s this by P E E K i n g the Q L ' s BASIC V A R I A B L E write Just o n e error-trapping
40 R E M a r k a r e a to d i s c o v e r the e r r o r number. routine, o n e w h i c h will give a
30 REMark different result d e p e n d i n g u p o n
60 WHEN ERRor the c o d e It receives. Finding the
70 R E M a r k a l i t t l e b e l 1 to a l e r t t h e u s e r correct c o d e works In this way:
80 BEEP 2000,12 : PAUSE 5
First, we must l o c a t e the base of
90 BEEP 2000,6 : PAUSE 3
the SuperBASIC area.
In the QL, this Is not fixed, as It is
I 00 BEEP 2000,9 : PAUSE 3
in many other micros. Therefore,
1 10 errnum = PEEK_L t PEEK L<1638561 + 298>
we find It by PEEKing m e m o r y
IZO SELect ON e r r n u m location 28010h (163856 in
130 • -17 decimal). The base of
1 40 PRINT \'INVALID ENTRY! (Must be a NUMBER)' SuperBASIC is held as a 'long
150 car r y _ o n word', so we will use PEEK_L for
160 at x , y : CLS 4 I CLS 2 this. The h e a d e r associated with
170 REMark Reset cursor} clear screen the SuperBASIC 'job' Is 104 bytes
180 RETRY (decimal) long, a n d we must
190 * -7 a d d this to the start address. Last,
200 P R I N T \ * E R R O R at M D V 2 ! ' we a d d the vector w h i c h points
210 PRINT 'Place a PROGRAM cartridge in MDV2' to the error c o d e (BV ERROR),
220 carry_on w h i c h Is 194 bytes (decimal)
230 CLS : RETRY
long, a n d PEEK the resulting
240 END SELect
address This variable, too, is a
250
'long word", requiring us to a g a i n
END WHEN : REMark Don't forget this line. It's VITAL.
use PEEK L. (Sounds
260 initial 1 Be c o m p l i c a t e d , doesn't it? But It
270 enter_num Isn't.) The formula for getting the
280 d i rec tory error n u m b e r is
290 PRINT W P r o g r a m successfully completed.' PEEK ,L(PEEK. L(163856) + 298).
300 P R I N T 'You a r e now an e x p e r t error-trapper!' O n c e we have this, It is quite
310 STOP simple to write a comprehensive
320 DEFine PROCedure initialise b l o c k of c o d e to trap our errors.
330 M O D E 0 : P A P E R 0 : INK 7 As a last note a b o u t WHEN
340 ERRor, you should not think of It
0 END D E F I N E ini t i a l I s e
as providing c o p y protection for
z
350 DEFtne PROC^dure enter_num
1"* CLS your programs. It does not
. -- = 0 : y = 16 : R E M a r k v a r i a b l e s to hold cursor position
recognise (CTRL)-(SPACE) (I.e.
BREAK) as a n error. Therefore,
1 330
390
P R I N T ' E n t e r a N u m b e r : '}
your p r o g r a m listings will b e
s< a v a i l a b l e to a n y o n e who m a y
INPUT num
400
<11 0
PRINT N'Your number was * & num b e interested in them. However, if
c arry_on you force a p r o g r a m BREAK
J2C END DEFine enter_num while a n error is b e i n g
o t 4 30 DEFine PROCedure directory processed, you m a y find yourself
O 4 40
450
CLS getting u n p r e d i c t a b l e (and
unwanted) results at a later time.
O
P R I N T ' F o l l o w i n g is a d i r e c t o r y a t M D V 2 ' \ \
460
DIR MDV2_ A r m e d with a n understanding
4 ~*0 of the QL's WHEN ERRor keyword
END DEFine directory
480
DEFine PROCedure carry_on a n d its syntax, you should now
490
P R I N T \ * P r e s s a n y k e y to c o n t i n u e . . . ' find that, while It Is perfectly
500
PAUSE h u m a n to ERR, you will not be

0 310
END DEFine carry_on
unduly punished for your
mistakes.

70 ZX Computing Monthly • November 1986


Time to enter our
c o m p e t i t i o n a n d win
yourself a Gremlin
clock.
K, t a k e t h e (lying d u c k s ott t h e
wall. We've g o t s o m e t h i n g m u c h
better tor you, s o m e t h i n g that
will b e c o m e t h e a e s t h e t i c
c e n t r e p i e c e of a n y front r o o m
a n d w o u l d n ' t look o u t of p l a c e
In Fergie a n d Andy's n e w p l a c e
(in fact. I'm t o l d t h a t they w a n t e d
o n e as a w e d d i n g present b u t
these things aren't easy to c o m e
by).
W h a t is It? W h a t else b u t a
high-tech, technicolour Gremlin
c l o c k ! We've g o t t e n t o g e t h e r with
t h e guys a t G r e m l i n to offer five
of these c l o c k s as prizes to ZX
readers, a n d for t e n a d d i t i o n a l
runners u p there a r e c o p i e s of
Gremlin's latest g a m e , t h e m e g a -
a d d i c t i v e Trailblazer, to b e won.

Anagrams
All y o u h a v e to d o to b e c o m e
the p r o u d o w n e r of o n e of these
c h r o n o m e t r i c classics Is to take
the n a m e of a n y G r e m l i n g a m e ,
a n d see if y o u c a n c o m e u p
w i t h a n interesting a n a g r a m
m a d e u p out of t h a t n a m e . For
instance, y o u c o u l d take Way of
The Tiger a n d turn It into TOO
FEW GET HAIRY ( e x c e p t that I
c h e a t e d a n d m a d e u p a n extra
*o', b u t y o u g e t t h e i d e a ) .
Just to get y o u started here
a r e the n a m e s of a tew G r e m l i n
releases t h a t y o u c o u l d use:
M o n t y o n The Run
J a c k The N i p p e r
Trailblazer
Way of The Tiger
Bounder
O n c e y o u ' v e c o m e u p with a n
a n a g r a m , fill in t h e c o u p o n o n
this p a g e , a n d a l s o write your
a n a g r a m o n t h e b a c k of the
e n v e l o p e t h e n s e n d It to G r e m l i n
C o m p e t i t i o n . ZX C o m p u t i n g
Monthly. 1 G o l d e n Square,
L o n d o n W1R 3 A a
Entries must a r r i v e b y first post
o n t h e 5th D e c e m b e r 1985. This
c o m p e t i t i o n is o p e n to a l l
r e a d e r s ot ZX C o m p u t i n g
Monthly, e x c e p t e m p l o y e e s of
Argus Specialist Publications, Trailblazer
Gremlin Graphics a n d Alabaster
Passmore a n d Sons.
j Gremlin Competition ^
. G o m e Title
| Wacky a n a g r a m |

| Name |

| Address •


= = =====
Send your entry to Gremlin Competition, ZX Computing Monthly. 1 I
\ Golden Square London W1R 3AB Entries to arrive by 5th December 1986 #

12 ZX Computing Monthly • November 1986


o you know the latest evil far better t h a n p u s h i n g out those a n d attractive. You also get part
p l a n h a t c h e d from Barbaric p o o r g a m e s w o u l d b e to re- of a serialised adventure, w h i c h ,
Bryan's hideously w a r p e d m i n d ? relese some of the o l d a l t h o u g h d e a l i n g with the
Not content with l o c k i n g m e in Interceptor adventures. I'm g l a d h a c k n e y e d s c i e n c e fiction
this dark, d a m p a n d d i s m a l to say that this Is b e i n g d o n e theme, s e e m e d a b o v e a v e r a g e
d u n g e o n , not content with c o l d (not as a result of my comments, with s o m e well written
custard torture,, not content even but w h o cares?). You c o n now d e s c r i p t i o n (no graphics);
with showing "The Price Is Right" buy Heroes Of Karn, Warlords c e r t a i n l y a keen adventurer
o n a n out of r e a c h v i d e o screen, a n d Jewels of B a b y l o n a m o n g s t could while away a n enjoyable
24 hours a day, he resorts to others for £199, a p r i c e they are hour or two with it.
trying to ruin my m a c h o i m a g e . ikeally suited to. This is b e c a u s e The m a i n fault with the t a p e is
I, of course, receive b u l g i n g they are a l l m a r r e d by a poor that the m a g a z i n e parts m a k e
h a g s of fan letters e a c h d a y {I v o c a b u l a r y a n d pretty brief text. little use of the c o m p u t e r
know they come, he just refuses They d o h a v e some b e a u t i f u l m e d i u m . These is no index
to show t h e m to m e d u e to g r a p h i c s t h o u g h a n d fun system a n d your a r e f o r c e d to
insane jealousy). The affront I a m problems, plus often a level of flick through every p a g e rather
referring to is the "artwork" in the difficulty suitable for beginners, t h a n c h o o s e a review, for
September issue. This p o r t r a y e d w h i c h is q u i t e rare these days. e x a m p l e . A Ceefax style
my as h a v i n g a c o n c o r d i a n They're minor classics a n d no selection, or better still m e n u
nose, a n d , in the d r a w i n g of a adventurer's c o l l e c t i o n should driven c h o i c e s a l the b o t t o m of
h a n d r e a c h i n g out the grating, b e without at least o n e at such the screen, w o u l d g r e a t l y
long, m a n i c u r e d a n d p a i n t e d a price. If you c a n n o t f i n d t h e m improve the p r o d u c t .
fingernails! But let my assure you in the shops for so little, send for That said, Spectrum
reader, in reality I c o m b i n e the details from Interceptor at Adventurer is a g o o d b u y for the
best features of M a t Dillon a n d M e r c u r y House, C a l l e v a Park a d v e n t u r e nut; less d e v o t e d
Richard Gere. Admittedly, the Industrial Estate, Aldermaston, players won't find it as m u c h tun.
nails are longish, but I have Berks RG7 4QW. With e n o u g h r e a d e r support, it
b e e n d o w n here lor three years News of a d v e n t u r e c o u l d b e c o m e a very worthy
a n d I certainly don't paint them. organisations c o n t i n u a l l y c o m e s m a g i n d e e d , a n d I h o p e they
After all, how c o u l d I get to my way. The Spectrum Adventure rectify the fault I m e n t i o n e d
Boots? A n d if I d i d . they'd E x c h a n g e C l u b I m e n t i o n e d in (easily done). Write for m o r e
p r o b a b l y b e right out of my August is still g o i n g strong, a n d details to 4 Kilmartin Lane,
s h a d e of p i n k . . . the s a m e p e o p l e now run Carluke, Lanarkshire MLB 5RT.
S n a p p y titles this month: HRH. Spectrum Adventurer, a t a p e Roger Garret's Adventureline is
1222, a n d Moron (thankfully we m a g a z i n e w h i c h costs two a p p a r e n t l y e n d i n g soon, t h o u g h
d i d Journey To The Centre Of pounds. I l o o k e d at issue four I haven't h e a r d officially.
Eddie Smith's H e a d last m o n t h — a n d was q u i t e impressed. There Questionline is still g o i n g strong
it w o u l d have r u i n e d the are reviews of less well known t h o u g h , a n d all a d v e n t u r e c l u b s
continuity). A n d , yonks after the products, w h i c h t e n d to b e must w a t c h out — b e c a u s e Tony
C o m m o d o r e version, Level 9's i g n o r e d by most m a g a z i n e s ; a Treadwell is starting a new,
Jewels of Darkness has finally well written h e l p section; a n c o m m e r c i a l a d v e n t u r e only
arrived for the Spectrum. e n t e r t a i n i n g c o l u m n by n o n e m a g a z i n e soon.
In last month's review of other t h a n John Wilson (under a But e n o u g h of Ihese
products trom Interceptor's pseudonym); plus other bits a n d d e r a n g e d r a m b l i n g s . . . let the
b u d g e t l a b e l Players, I s a i d that b o b s The m a g a z i n e text is l a r g e reviewing b e g i n !

12 ZX Computing Monthly • November 1986


had their responsiveness sacri-
HRH Vou a r e o u t s i d e a U n i s e x loo
( a p p a r e n t l y t h e y ' r e all the r a g e
ficed In order to fit everything in.
Despite this misgiving. HRH is
8th Day on the C o n t i n e n t ) . A h u g e c r o w d technically very sound. Vocab-
£8.95 of s o r e a n i n g k i d s b l o c k the w a y ulary is adequate, but at a few
s o u t h to a p a r k c a f e , a r o u n d
w h i c h a n u n o f f i c i a l p a t h leads points too obscure Coming
Whilst I'm not a great advocale s o u t h e a s t . T h e loo is w e s t . (rom a small company. I was
ol censorship, some ol this pleasantly surprised at the
g a m e Is of dubious taste a n d What N u x f skillful presentation. The actual
parents may feel that their C r o w d s of c h i l d r e n b l o c k y o u . . g a m e has polished appear-
children need protecting Irom ance. RAM SAVE/LOAD Is in-
its "adull" humour. But providing What Next? cluded; and the packaging
you are not easily offended, 1 competes with many of Ihe
think you'll love this. HRH is the h p a r k w a r d e n s t o p s you- " O U T O F
order!" software big boys. My only
most biting computer satire major gripe Is that this is a
since Denis Through The Drink- What Next? pound or two overpriced tor a
ing Glass; this time Ihe subject •iSCORE
mail order product.
matter is (mostly) our royal You h a v e -.cored IS IV om a The actual adventure isn'i
family, a n d the irreverance is P O S -. ib lc- 2SO .
quite up to Monster Hit stan-
limitless dard. However, I had so much
You are horrified when your lun playing HRH, a n d its sheer
eagerly awaited DHSS enve- originality a n d energy comes
lope contains someone else's further royals a n d before Ihe derers is taken by Margaret as such a welcome breath of
giro; then you notice Ihe name end ol the g a m e you will have Thatcher. Later you face the fresh air in Ihe face of countless
and address: it belongs to met the whole clan, on your gruesome task of impersonat- middle earth games Irom Level
Queen Elizabeth. And if you travels around London. Their ing her; yet when doing so you 9 et al. that I've given one
have hers — she must have personalities will be tamiliar to won't be a l l o w e d into the anyway. 8th Day are a com-
yours! How will she aftord the all Spitting Image tans; drunken palace! pany to watch
Queen Mother's meals on Margaret. Greek Phillip, stupid Description is lengthy, I sincerely hope they reach
wheels on such a small sum? Edward, a n d randy Andy who entertaining a n d well written, a distribution deal to get HRH
Will she have to sell the corgis provides many of those "adult" a n d characters wander round into the shops, but in the mean-
lo MacDonaldS? What about jokes I mentioned. in convincingly independent t i m e write t o 18 Flaxhill,
her Oxlam clothing b i l l . . . ? The humour itself is also fashion. There are a few. fairly Moreton, Wirral. Merseyside L46
There's nothing for it but to return a l o n g Spitting Image lines; average split screen graphics 7UH.
her giro personally. some crude, some more subtle An incredible amount has
You slarl in a post office, next I won't spoil the fun by giving been packed into this Quilled
lo Princess Dl wailing for her too much away, but I particu- game, not just text but many
lamily allowance, a n d Prince
William who Is impersonating
larly liked M a d a m e Tussauds,
where pride of p l a c e in both
special messages a n d amaz-
ing complexity. While-this is no
osililt
his father with a pair of huge the Chamber Of Horrors a n d fault, some of the commands — "M.i^
" E M I T
rubber ears. Close by are the Gallery Of Famous Mur- particularly EXAMINE - have

c o m m o n commands (direc-
tions. GET/DROP, etc), while text
input is retained for rarer words.
Mastertronic
£1.99 Unfortunately, a massive bug
3M I s N O U
o PLRcJ j^MI
means these have a life of iheir IIHHIBS9' HHBi: 1
You are trapped In your dream own a n d automatically select \ % j O
and must awake; though this random commands* even while
game is more likely to have sent you are typing, making the iibhi: » i
you to sleep In the first place. g a m e virtually unplayable Fur- + 0 G H
Dreaming could be the theme thermore. the delete key won't
lor an excellent adventure, but function as It's used tor Icon
1222 lolls because instead ot selection. John Wilson tells me DROP
capturing Ihe weird nocturnal that these faults disappear if a IS U E R Y C O L O T O T H E T O U C H . INSET
atmosphere or outrageous Im- joystick interface is plugged in. I N T O O N E UfiLL I S R H R T C H .
agination of the best dreams, but this is not mentioned in the
the auihors have used the instructions; besides, there THE DOOR IS L O C K E D . PROBABLY TO
URRD OFF RUSTLERS.
scenario as a n excuse to lling should be no need. The instruc-
together random a n d unin- tions are dreadful by the way, YOU CfiN'T G O NORTH
spired Ideas Also lacking Is the picturing non-existenl icons —
warped logic which makes the Ihey were wrilten (or Ihe CBM
wildest dreams feel continuous version.
And 1222 has many other The non-Icon vocabulary is sive. The text is reasonable but
faults, which Is a shame be- small, a n d you are required to some of the graphics are
cause there are some good enter ridiculously obscure pathetic The whole thing is
ideas. The besl ot these Is Ihe
presence of icons replacing
commands like THUMB A LIFT.
Examine is usually unrespon-
horribly unfriendly a n d nol
worth your time or money. m grii
locations, quile a feat given the spaceship would appear lion at all, just a location title
MORON memory limitations. These are
attractive enough but look
somewhat monotonous.
To lit them all In, the text had
like "The Teleport Room". There
are many objects lying around,
Atlantis
£1.99 incredibly similar, even though to be sacriliced, or perhaps which compensates a little, but
there are subtle differences. massacred would be more ap- purists should avoid. Vocabu-
Following the Marie Celeste Then again. I suppose a large propriate There Is not descrlp- lary is strict but not awful.
earlier in the year, another I've said belore that science-
sclence-llctlon g a m e from fiction games tend to bore me,
Atlantis, which also Includes a n d Moron has noihing new lo
elements ot time travel — killing ofter. However, some ot the
two adventure cliches with one problems here might while
stone? Particularly stupid aliens away Ihe o d d hour, though
called — you've guessed it — what I've seen strikes me as too
morons, stumble across the easy (or expert adventurers.
Pillars Of Time a n d promptly Moron is nol a b a d effort but
lose them in their spaceship. strikes me as amazingly aver-
Sold vessel Is now on collision Ex i t s - U P - a - age. nothing new or notable II
You c i n also s e e : - there's noihing better around
course with earth so you have a s l e t c t e l e p h o n e BOX
a limited time to lulfill your task, then this is no rip-oft, but neither
which, naturally. Is to collect Ihe -tow I ! is It a must buy.
pillars and save the world. Next command please
Quilled and Fetched, Moron • U
nnnir!^
JUUIJ
olfers split screen graphics at epnon
nearly all the numberous

12 ZX Computing Monthly • November 1986


Thanks as usual to the h e l p of

E L P L I N E Rochdale's John Wilson.

Help The Helpline


The h e l p l i n e has b e e n running
how d o you enter the castle over six months now, a n d in that
without the seed spell?" he asks, time I must a d m i t (though not
referring to hints In a previous too loudly, otherwise Bryan will
S o m e help for David issue. The m o a t answers both w h i p m e even harder) that some
M c C a l l u m (not lllya Kuryakln questions. From nearby, GO p r o b l e m s have c o m e in w h i c h
himself, surely?), who's still MOAT. Obviously you must HOLD even ( c a n n o t solve. Now It Is a n
stranded in sunny Terrormollnos. BREATH, before you SWIM DOWN, u n d e n i a b l e fact that ZX readers
The correct hotel to g o to is TAKE TOWEL. SWIM DOWN. SWIM are the most intelligent b e i n g s In
found by r e a d i n g the brochure. FAST, a n d SWIM UP. You will now the entire universe, so I c a l l on
O n c e in your room, d r o p your b e in the castle, a n d c a n save you to d o a g o o d d e e d a n d
clothes, get a n d wear the trunks, the seed spell for o p e n i n g a h e l p your fellow creature. Please,
then take, knot a n d wear the stone door, later. The m o a t will please, p l e a s e help. Please . . .
hanky. Suitably e q u i p p e d with n e e d a further visit, with a d e e p (I think we get the gist
c a m e r a , snorkel a n d h a r p o o n treasure dive that c a n only b e Ed).
g u n you'll b e ready to start your survived by e s c a p i n g with the What I want you to d o is fill in
h o l i d a y proper. Bliss spell. the "I c a n h e l p solve" part of the
Meanwhile, b a c k in M i d d l e David Heron from Perston has c o u p o n If you have c o m p l e t e d
Earth, M i c h a e l Payne is t r o u b l e d a n (old style) 128 a n d is stuck any ot the following g a m e s :
by trolls. The g a m e is The late on in Never Ending Story. Eureka (Roman), Runes Of
Hobbit, naturellement. To kill the "How c a n I r e a c h the top of the Zendos, D r a g o n w o r f d , The
trolls a n d get the key, you must Ivory Tower, I keep g o i n g round Secret Of St. Brides, The Pawn,
wait until d a w n (I.e. keep t y p i n g In circles". That's b e c a u s e you Smugglers Cove, The M o r e b y
WAIT until the p r o g r a m tell you are in a maze, Dave. The route Jewels, C a s t l e C o l d i t z (K-Tel),
It's light). However, you must d o through Is like this: from the Aksheron, C a s t l e Blackstar or
this w h e n somewhere else, like b o t t o m of the m a i n stairs g o U, E, Return To I t h a c a . With a few
the nearby p a t h — otherwise it's E, NE, U, W a n d W, where you will exceptions those are rather
b o i l e d M i c h a e l on the trolls' find some c o m p l e t e l y useless obscure, but s o m e o n e out there
menu. treasure, then W, SE, U, E, E, E, U must have p l a y e d them. If you
In the d e c i d e d l y more to find the door. Just b e polite have, just put the c o u p o n In a n
m u d d l e d world of The Boggit, a n d the g a m e is near finished. e n v e l o p e a n d I'll b e In t o u c h for
the trolls are less easily d e a l t The c a p e you have found has h e l p from you! Obviously a n SAE
with — I suggest you listen very no use. A n d in response to a Is not n e e d e d in this case; a n d
carefully to what the theologist steady stream of enquiries, it is I'll b e h a p p y to give you any
says, then scour the washing not possible or necessary to h e l p in return.
powder shelves ot your l o c a l enter the Ivory Tower in part one.
supermarket. But before that. Some more information a b o u t Write to me
Stephen Page of Romford c a n n o t Denis Through The D r i n k i n g
e s c a p e his hole. He has found Glass. When I g a v e some hints a Whether you're s t u m p e d by
the diary (CLIMB CHEST for those c o u p l e of months b a c k , I m a y Seabase Delta, harassed by
w h o haven't) but c a n n o t find the have misled you into exitting by H u n c h b a c k or b a m b o o z l e d by
word c o m b i n a t i o n to o p e n the the w i n d o w first. In fact you n e e d The Boggit. we c a n help. Fill in
door. Turns out you were using to journey out the front door to the c o u p o n a n d send it to:
the wrong b i r t h d a y Steve: type start with. M a k e sure you are M i n d p l a y Helpline, Deepest
Fordo's in! w e a r i n g your suit, a n d c a r r y i n g Dampest Darkest Dungeons, ZX
Kris Daryani from Middlesex is the letter (which you must h a n d C o m p u t i n g , No. 1 G o l d e n
struggling in a n earlier satirical in at the Private Eye offices), the Square, London W1R 3AR
e s c a p a d e of Fergus McNeil, Cherry Blossom (for d e a l i n g with A few rules: British
Bored Of The Rings. He c a n n o t N o r m a n Fowler) a n d your teeth correspondents, p l e a s e enclose
find the poster ot Rocky to give (from the tumbler In the a stamped, a d d r e s s e d e n v e l o p e
to the g a y monsters. Well, bathroom). The gnashers should if you want a personal reply
starting by the pixie, enter the b e worn in time to SMILE at the rather than wait tor the
maze by g o i n g East. Then: E, N. photographers. Before you leave m a g a z i n e to c o m e out. If you
E, E. S, W. S, E. GET POSTER, W, W, for the first time, c o l l e c t all the are writing from a b r o a d , just
S, W. But don't h a n g a r o u n d too items you c a n a n d leave t h e m enclose a n e n v e l o p e — I'll a d d
long . . . in your room, as M a g g i e will the postage. I try to r e s p o n d
Mitchell Blower writes a b o u t lock you in on your return. BUY within two months but I c a n take
Sorceror Of C l a y m o u r g e Castle. TICKETS from Ihe c o p p e r in the longer (on the other h a n d , you
"How d o you find the towel a n d r o a d then h e a d NE. might receive a n i m m e d i a t e
reply). I ONLY DEAL WITH
ADVENTURES. Not a r c a d e games;
nor t e c h n i c a l p r o b l e m s (write to
Title; Crosswires a b o u t those). I'm not
too hot on adcventures these
Company: days (Gargoyle g a m e s
included). Finally, p l e a s e write
the n a m e ot the g a m e you're
Problem: writing a b o u t on the b a c k of the
envelope.
Another month's missive must
d r a w to a close, but fret not, for
I'll still b e here next issue. Or will
Bryan s u c c e e d in his twisted
plans to b u m p m e off? Or will I
I can help solve: s u c c e e d In my twisted plans to
b u m p Bryan off? There's only o n e
w a y to find out — r e a d
Name: M i n d p l a y next month!

Address:
12ZXComputing Monthly • November 1986
7 i
VENTURESPEAK
Part 2: Alan Davis' d i s p l a y a g a i n s t the listing as you you to b e p a t i e n t a n d w a l l until
g o a l o n g , a n d all s h o u l d b e next rhonlh. You see. the
adventure series looks well. When you've finished, the p r o b l e m is that our parser Is
p r o g r a m will save the c o d e to a c t u a l l y fairly useless at present,
at c o m m a n d analysis. t a p e for you as "PARSER" CODE b e c a u s e it d o e s n l yet possess a
60400, 750. v o c a b u l a r y l (Rather like a c h a p
who, t h o u g h highly intelligent,
T h i s m o n t h brings you the has n o b a c k g r o u n d k n o w l e d g e
s e c o n d p a r t of the Parsing to d r a w u p o n . . . ) To put
VENTURESPEAK m a c h i n e c o d e v o c a b u l a r y Into the parser we'll
program, a n d we'll b e t a k i n g a So far, so g o o d . We now n e e d to n e e d the VENTURESPEAK EDITOR
look at the g e n t l e art of " p a r s i n g w e l d the k e y b o a r d a n d parser — a n d that's our task for next
the i n p u t " - or " c o m m a n d sections together as follows: month.
analysis", it you prefer. 1) Reset Ihe Spectrum using For the present t h o u g h , I'm
You're g o i n g to n e e d the RANDOMISE USR 0. g o i n g to e x p l a i n the b a s i c
m a c h i n e c o d e k e y b o a r d routine 2) Enter CLEAR 59999 as a direct principles u n d e r l y i n g the
that y o u saved last month, as w e command. p a r s i n g system so that w h e n the
n e e d to p a t c h this month's 3) Load In the k e y b o a r d c o d e time c o m e s tor you to use it,
p r o g r a m o n t o it to p r o d u c e a you s a v e d last m o n t h (LOAD you'll b e familiar with a l l the
single b l o c k of 6 o d a Listing 1 Is "KEYBOARD" CODE). m a i n features We can't discuss
the assembly l a n g u a g e 4) L o a d in this m o n t h * parser this In a v a c u u m , so in Figure 1
p r o g r a m tor the "parser" — this c o d e {LOAD "PARSER" CODE). I've g i v e n a very e l e m e n t o r y
is the p r o g r a m w h i c h will s c a n 5) Now save the w h o l e lot as a v o c a b u l a r y ot words w h i c h you
through a t y p e d input, c h e c k i n g single b l o c k with SAVE m i g h t e x p e c t to f i n d In a t y p i c a l
the words a g a i n s t a set of "V-SPEAK" CODE 60000,1150 a d v e n t u r e (printed out from the
v o c a b u l a r y d a t a . As you c a n — a n d k e e p it sate EDITOR p r o g r a m , In fact). Figure 1
see, it's a fairly lengthy routine so somewhere until next month. Itself raises a few points w h i c h
a n assembler will m a k e error- In a d d i t i o n to this single c o d e n e e d to b e m e n t i o n e d before
free entry c o n s i d e r a b l y easier — b l o c k . It* p r o b a b l y wise to k e e p we g o any further:
but If you don't h a v e a n the two s e p a r a t e parts as well 1) Only the first three letters ol
assembler a l l Is not lost, since for the present, to facilitate a n y word are significant. (This
I've g i v e n a d e c i m a l d u m p of c h e c k i n g in c a s e you discover c a n o c c a s i o n a l l y give rise to
the c o d e In Listing 2. All you errors later. some confusion b e c a u s e the
n e e d to d o Is t y p e in Listing 3. Of course you'll b e w a n t i n g to parser can't distinguish b e t w e e n
RUN It. a n d then enter the know Just w h a t this new routine words such as "RAVEN" or
numbers from Listing 2 in order, d o e s a n d to test it out. We'll "RAVINE", a l t h o u g h in p r a c t i c e
I n c l u d i n g the checksums after c e r t a i n l y b e l o o k i n g at how it I've never f o u n d this to b e a
every fifth byte. Take things works In this article, but as for serious p r o b l e m , myself. M y
slowly, c h e c k i n g the screen testing it — well, I'm g o i n g to ask g a m e "RUNESTONE" uses only

2$
I

'i X

i
, V V, •.
i
i
• • :i,
»
•K W
V < . jr'S I'*'*.- I '

Ul
0
u j
1
®
"i
. - fi'V. • . ' V"
a
t^-.-T - . j , rr- st, /

^t Mm}
O .•i-'/ ^ i
| L J
I* "

mr.

l . v «,
itfV'Vy - l V . ' V ' J
V w i ^ f l
II

three-tetter parsing). Figure 1. Vocabulary list, with each verb,
2) Vocabulary is d i v i d e d into noun and object Individually numbered.
three distinct types: VERBS,
OBJECTS, a n d PEOPLE. This has ME R0S 0 10 SHI S
00(4 10 ARM 6
advantages over the usual SHY 1 OES to BOO 7
simpler subdivision into VERBS TEL i GET 1 1 CHE 0
a n d NOUNS b e c a u s e it helps the ASK 1 TAK 11 BOX 9
TRL I PIC 1 I DOO le
error-trapping process when you L 2 ORO IS
write your adventure, as you'll LOO a PUT 12
see later. H
HOtt
3
3
EXA
RER
13
13
PEOPLE
3) Each item of v o c a b u l a r y is S 4 GIU 14 SAM t
assigned a number between 1 SOU 4 OFF 14 FRE 2
E 5 FIG 15
a n d 254 inclusive. Synonyms are EAS 5 KIL IS
PET
JOH
3
4
catered for by assigning the 14 6 ATT 15 JRC 5
same number to different words UES 6 HIT 15 JOE 6
IH 7
so that Ihe verbs SAY, TELL, ASK, EHT 7
a n d TALK, for example, are all OUT 8 OBJECTS
assigned the number 1. This is a LEA 8
U 9 suo 1
g o o d p l a c e to make a n UP 9 ORG 2
IMPORTANT NOTE: generally you CLI 9 SPE 3
c a n assign any number you like ASC 9 KHl 4
to any verb you like, BUT IT IS
ESSENTIAL THAT ALL VERBS
IMPLYING SPEECH BE ASSIGNED Figuro 2. Examples of c o m m a n d
analysis.
THE NUMBER 1. if the parser
routine is to work correctly.
EXAMINE THE D A G G E R PUT THE BOOK IH
Input
THE CHEST

A C
In practice what h a p p e n s will
g o something like this Your COMMAND ANALYSIS COMMAND AHALYSIS
BASIC adventure p r o g r a m will
Invite input from the player by
invoking the keyboard routine: TELL: 0 TELL: 0
LET M=USR 60000. The player PER5: 0 PERS: O
then types In his c o m m a n d , VB1 : 13 UBl : 12
presses ENTER when he's finished, MB2 : 0 UB2 : 7
a n d the routine returns to BASIC FK1 : 0 FK1 : 0
having stored the player's input
as a string of bytes in the correct OBI : 2 081 : 7
addresses above RAMTOP. We 082 : 0 0B2 : 8
now want the parser to scan this
stored c o m m a n d a n d d e c o d e it.
so the next step is to c a l l the 8 D
parser routine with LET M=USR SRY TO F R E O ASK PETER TO GlUE
60400. The parser now scans
" E X A M I N E THE D A G G E R " THK K H I F E TO JOHN
Ihrough Ihe players c o m m a n d ,
character by character,
c h e c k i n g the words It finds COMMRHO ANALYSIS COMMAND ANALYSIS
against ihose in its vocabulary,
ignoring any words it fails to
recognise a n d skipping on to TELL: 1 TELL . 1
the next, it eventually stops, PERS: 2 PERS : 3
either when it reaches the end, UB1 : 13 NO 1 : 14
or when it reaches a c o m m a , U82 : 0 NB2 : O
full stop, or the word "AND"
(these last items signifying that FK1 : 0 FK1 4
the player has typed in several 081 : 2 0B1 : 4
c o m m a n d s at one go) a n d 0B2 : 0 0B2 : O
returns to BASIC
The parser having d o n e its
j o b (almost instantaneously of a n d two p e o p l e — so that your case a n object) "DAGGER". You'll
course), we n e e d to extract the BASIC program c a n then see in the e x a m p l e that the
fruits of its labours by PEEKing perform the necessary c o n d i t i o n parser has assigned the value 13
certain addresses It makes for tests a p p r o p r i a t e to your to VB1, 2 to OB1, a n d zero to
a n easier life if the results of advenlure. A few examples everything else. Now look b a c k
these PEEKs are assigned should m a k e things clear. at the v o c a b u l a r y list in Figure 1,
immediately to BASIC variables where you'll find that verb
with suitably m e m o r y - j o g g i n g
n a m e s like this:
Examining number 13 is "EXA" (for
"examine"), a n d that object
LET TELL=PEEK 61124 Figure 2 gives examples of the number 2 is "DAG" (for
LET PERS=PEEK 61125 analysis of a range of "dagger"). Makes sense? OK,
LET VB1=PEEK 61126 c o m m a n d s Involving the basic then let's try something a Utile
LET VB2=PEEK 61127 v o c a b u l a r y of Figure 1. (You more complex.
LET FK1=PEEK 61129 might like to know that these The second example, Figure
LET OB1 = PEEK 61131 figures are all screen d u m p s 2(b), shows the analysis of the
LET OB2=PEEK 61132 from the VENTURESPEAK EDITOR in c o m m a n d "SAY TO FRED
LET MORE-PEEK 61123 "test" mode). Let's start with the "EXAMINE THE DAGGER" a n d we
first a n d simplest c o m m a n d — find VB1 a n d OB1 assigned just
What this all amounts to is that 2(a): "EXAMINE THE DAGGER". the same values as before (as
you c a n extract from any one Only two words are really we'd expect) but look: this time
c o m m a n d the c o d e numbers for relevant here — the verb the variable TELL takes the value
up to three verbs two objects, "EXAMINE", a n d the noun (in this 1 (signifying speech) a n d the

12 ZX Computing Monthly • November 1986


/

Listing 1
-Hisori (.(M'.iM^ hsslhiii ih-
ZX '.VI C I HUn Assembly language program.
b0907 2760 IHC Ot
C o p i r > 91.1 (CI M I SOt T lias,4 60699 1 360 LD I1PH0I,H 6U400 27/0 JP LOUP/
All r i i M s rtsrrvrd 6 0/02 1 3/0 IHC OE 6049 1 2/00 1 MICH* CALL SHORT 3
60/1*3 1 300 LO A,(DEI 6U944 2740 JP Z,FKIHU
t*4ss. I e r r o r * uu 60/04 1 390 CP B 60447 2U00 IIIC UL
6070S 1400 JP Z.UBfHD
10 'Ot 60700 14 10 IHC DC 60440 20 IU JP LOOP/
(1PHOI,H
.'it • C- 60709 1420
60/12 1 430 DOUBLE
JP LOOP 1 6 1(101 2020
6 1004 2030
5H0HI1 LD
IHC Dt
30 pAimit LD ML,(PTRI 6 10115 2040 LO R,(OE1
604aa 40 OKI. 6040O 60/15 1440 LD n, (HL 1 61 006 2050 B,A
60400 SO (KIT LU MI ,STIIRI 60/16 14 50 LD DC.(UCV2I 6 100/ ?tn.ii
LD
LU
LU A, ICIIHI 1
6040J bO I HCOll I . Hl_ 60/20 1 4 60 LO B,A 6I01U 2070 CP 11
604116 70 LU IP HO , III 60721 1470 IHC HL
LU
6 10 11 2000 nt T
6U409 00 A, ICU0H1 1 60/22 1 4 HO
60723 1490
LD
LO
A,IHLI
C.A 61012 2090 5H0RI2 IHC UE
UlUti' 90 Lb t.A
LD
61013 2400 LU H, (DC 1
lilUI J 100 0.0 60724 1500 CRLL iLTPTft 6 1014 2910 a, a
HUD
LU
604 l b Ml , OL 60/27 ISIO L0OP3 LU A.(OE1 A,(CHH2I
120
1 lu
LU II, 255
61015 2420 LO
(.04 16 60720 1520 CP 255 61010 2930 CP B
t,U4 I U I30 LU I ML I , H 60/30 1 530 RE T Z
XUH
6IUI4 29 4 0
H 60/31 1540 LO (1PH0I,A RE I
604 14 140
LD 60734 1 550 6102(1 2950 5H0RT3 IHC OE
60420 I I ELL I , A IHC OE 6 1021 2968
160
150 LD R,(DC)
60423 LU (PLRSI .11 60735 1560 LO n , (0E1 LO B. A
xon H 60736 IS/0 LO 61022 2970
60426 170 ML5IMI H, A 61023 3400 A,(CHA3I
(<'01 I , H
LO
I 00 LU 60737 1500 IHC OE 61026 2498
LU 60730 1590 CP 0
60430 (••1121 , R LO R,(DEI
200
190
LO
6102/ 3000 RET
60433
210 LU ("03 I,A 60739 1600 LO L, A 61020 3010
It K l I ,H 60740 IblO LO A.e HHD CP 65
(•04 36 6 1030 3020
t.OJ 220 LD It K2) , A 60741 1620 CP H RET HZ
60442 LO (0011,A 60742 1630 JP I.fHOI 61031 3030 IHC HL
LU
230 6 1032 3040 LO A,IHL1
6044b 240 I 082) .A 60745 1640
60746 1650
IHC
JP
OE
LOOP3 6 1 03 3 3050 CP 70
(.11440 CALL CUIIIIH
260
250 6 1035 3060 RET HZ
60451 LOOP0 LI) HL,(PIRI 60749 1660 FHOI LO A,C 6 1036 3U/0
/UN II 60750 16/0 CP L IHC HL
60454 6 1037 3000 A,IHL1
200
270
611455
6045b
LD ICXIRt,A 60751 1600
60754 1690
JP
IHC
Z,WBIHO
OC 6 1030 3098
LO
CP 60
290 CULL t ILTER
LD 60/55 1 /OO JP L00P3 61040 3100 RET HZ
60461 300 R,texTB) 6 1 0 4 1 3118 CALL ^ t i c o n
(.114 1,4
01146b
310 CP I 60/50 1/10 001 no
6D/6I 1 720
LD
CP
A, (001 1
0 6 1 044 3128 LO A, 1
320 i . sowi
LU
61046 31 30 LO ICXTRI.H
60469
.If
330 Ml,(PTHI 60/63 1 / 30 JP HZ.UD1 DUN 6 1049 3140 DEC HL
1.04/3 141) LU A, (ML I 60/66 1 740 LO II, I TPM01 61050 3150 CALL 5CTPIH
604/3 CP 255 60769 1 /50 I I) 1U81),n
.IP
(.04 / 5 350
60/72 1 /60 ACT 61053 3160 RET
360 Z,50R T 61054 31/0 R,1TPHOI
CP
LO
6. A
604/0 607/3 I 770 I'OIOUH LO H, (UU 21 OUFHD
370 44 (,1057 3 100 LO
1.0400
60403 300 JP Z.EHD 60776 1 700
6O//0 1 790
CP
JP
0
HZ,UH2DUH 61050 3140 LU H,(0011
390 CP 46 60/01 I 000 LD A,1IPHO) 61061 3200 CP B
60455 400 JP Z . t Mil
.IP 60704 1 0 I 0 LO (OB2),A 61062 3210 RET Z
60400 4 10 L6UPO
IHC 60707 1 020 RET 61063 3220 CP 0
6(1491 420 EMU hi 61065 3230 JP HZ,001OUH
6(149? 4 30 LU (PIRI,HL 60700 1 030 0B20UH LO A,IUB3) 6 I 0 6 B 3240 1 u A. 0
60495 440 50RI LU A, 100 I I 60/91 1 040 CP 0 (OBI•,A
CP 60/93 1060 RET HZ 61069 3250 LO
60490 450 I 6 10/2 3260 AEI
60500 460 CALL Z , i l l HP
60794 1060 LD A,1IPHOI 6 10/3 3270 OB1OUH LD A.(0B2I
60603 4/0
RE I 60797 1 070 (•JB3I . A 6 1 0 / 6 3200 CP B
60604 400
5MRP LO I I C L L I ,B
60000 1 bOO net 6 10/7 3240 RET 1
6050/ 490
LO tl, (1102) 60 0 t) 1 1090 5CIPIA IHC HL 6 10/0 3300 CP 0
6U5 1 O 500
LO I ' J O U ,A 60002 1 900 PU5H AF 61000 3310
LU
510 60003 1910 L00P2 LO A,(HLI RET HZ
60513 N, I MB 3> 6 1 0 0 1 3320 ri , b
LU
10
60516 520
I 002) ,n 60004 1420 CP 32 61002 3 3 30 LO 1 (IB2 1 , A
60519 530
LD « , (TK I > 6 0 0 0 6 1930 JP Z , HEI4IID RET
LU
6 1005 3340
60522 540
I PI. n i l .A 60009 1940 CP 34 6 IO06 33511 FCt HU LO A,ITPHUI
B, A
6IJ525 550
LU ri , < r K2I
600 1 1 1950 JP Z,HLHKO 61 004 3 360 LO
60520
lill'jJI
560
5 / 0 LD (FKII,H
600 1 4 1960
600 1 6 19/0
CP
JP
50
Z , HEIIIIO 6 1 090 3370 LO A, I F K I )
RET 6 1043 3 300 CP 0
60532
500
COllMII LU HL , IHCUttl 600 14 1900 CP ass 61U44 3340 REV Z
LU
590 60021 1990 JP Z,LAST
60535 bill) I OOP A,(HLI 6 1095 3 4 00 CP 0
60b 36 610 CP 255 60024 2000 CP 44 6104/ 3410 JP HZ.FK IDUtl
60530 620 JP /. , ( HOC Oil 60026 2010 JP Z,LAST 61 IOO 3420 LO A.b
6054 I 630 CP 44 60029 2020 CP 46
6 1 I (I 13430 irKi),A
.JP 60031 2030 JP Z,LAST LO
60543 640 I . SETCOII 61 104 3440 nr r
60546 650 CP 4t
60034 2040 IHC HL
61 105 3450 FKIUUH LO A, (1 K21
605 4 8 6 6 0 JP Z,SE1C0H 60035 9050 JP L00P2
61 l u g 3460 CP 0
6055 I 670 IIIC Hi 60030 2060 III IIIID IHC HL 61 109 3470 RET z
60552 600 JP LOOP 60039 20/0 L Ail LO IPIRI,HL 6 1 1 1 0 3400 0
60555
CP
690 SETCOH IriC III 60042 2O0U
60043 2090
POP
HC 1
«r 61 1 12 3490 RET HZ
60556 700 LU (HCOHI.HL 6 1 I 1 33500 LO A.B
60559 710 LO A, I 60044 2100 TAIPLL LO HL.(PTRI 61 1 1 4 3510 IF* 2 I .A
LO 60847 2110 LO H,(HL1 LO
60561 728
(nonei, h 61 1 I 7 3520 HET
6(1564 730 HE I « 60040 2120 CRLL MIID 60310 3S30 START EOU 60310
611565 740 I NUCUII XOH 60051 2 1 30 CP 1 6031 5 3540 COUHT EQU 60315
60566 750
IU iiionei ,h 60053 2140 At T z 61110 3550 tlCUM ocru 0
.(.'I 760
RET 60054 2 ISO LO HL,IPTRI 61 120 3560 PTB DEC 11 0
605/0 770
/SO I I L T t R LD n,(HL i 60057 2160 LO R,(HL1 61 122 3570 TPHO DC t B 0
60571 CP 34
60050 2170 LO ICHH11 , A 61 123 3500 MORE ofru 0
605/3 000
790
CALL Z,SKIP5P
60061 2100 IHC ML 61 124 3540 TELL DETB 0
605/6 CP 32 6(1062 2190 ID H,IHLI 61 125 3608 DCf 0 0
CALL
010 ICIIR2I .A PEAS
6U5/B Z,5KIP5P
60063 2200 LU 61 126 3610 UBI DEFB 0
60501
020
CP II 60066 22 10 IHC HL 61 127 3630 •<B2 DEI B 0
60503
830
CALL Z,iKIPiP
6006/ 2220 LU H, IHLI 61120 3630 ()0 3 OCFB 0
60506
040
CP 255 60060 2230 LO (CUM31,A 61 124 3640 ttl OC f B 0
RE I
050
60500 600/1 2240 CALL 5ETP1R 61 1 30 3650 FE3 UL t 0 0
(.0509
060
CP Z
44
600/4 2250 LO Ot,(UCH31 61131 3660 001 UEI B 0
000
070
6059 1 HE f 600/0 2260 L00P5 1 U H, (DL 1 Ott 0 0
60592 Cf Z 600/9 22 / n CP 265 61 132 36/0 0B2
DL 111 0
60594
090
he I 46 600 0 1 2200 JP I , UUN<>H>
61133 3600 UCtil
6115 9:.
900
i M<: Z 60(104 2.'V0 CHLL 5IIUH1 1
61 1 35 3690
61 1 37 3/00
"CU2 DCFII 0
Of tu 0
60596
910
LU HL 60007 2:il)0 JH I, "bin: 111 61 1 39 3 / 1 0
UC"3
orru 0
61159/
920
930 CP A, (ML I
aft
60090 231(1 IHC Ot 61 141 3/20
lie Oil
ucri: DEI 11 0
60599 'J 4 0 jp /., iiiii.I i 60001 2 J20 1 in: IIL 61 1 43 3/30 c tin 1 DEFB ll
60602
6U604
950 CP so 1,0092 23.I0
(,01193 2340
IHC
JP
UL
LUOPS
(•1144 3740 CHH2 UEFO 0
OCFB 0
6060/
960 JP Z,SIHbLE 60096 2 350 • •(litem 61 1 45 3/50 Ctill 3
9/0 CP 44 CHLL 5HUHI2 61 1 46 3760 t XI H OCFB 0
60609
60612
900
990
JP /,5IH6LL 600 99 23611
60902 2.170
JP
IHC
Z,<itlliCH2
Ut
(.0614 lOOO CP 46 Pill 2 rrrori 00
60617 1 0 1 0 JP I,SIH6LE 604U3 9300 IHC Ot
CP 34 60904 2390 JP LU0P5 HMD EC64 CHRI CED7
6 0 6 I 9 1020 JP Z,SIH6LC 6090/ 24 OU "0IICH2 cm L 5H0R13 CHH2 CCOB CHR3 LI 04
60622 1030
CP ass 609 IO 9410 JP Z, "III MU COMMA rc/4 COUHI EB90
60624 I
1040
JP Z.SIHGLE 6091 3 242b IHC UL (JOUUl 1 FO20 OU HOBJ C C 20
6(1627
6U62U IU60
050
IHC HL 609I 4 2430
6091 7 2440 l)U)l"0S
JP LOOPS UUHUBS r 01 b CHO EC4B
60629 I 0 / 0
LO A , (HL I LO 01 , l"COh1 CHOCOM EC95 EX TR EEDA
CP 32 609;-1 245U 1 01IP6 1 u H.(DE1 IlLltR tC4A FK1 ECC4
60631 IO0O
60634 1I 019000
JP Z,UOUOLC 60922 2460 CP 255 t»: 1 uurt1 CBI FK2 EECR
CP 44 60924 24/0 JP Z,DUHUUJ FKrHD 1 t f KIICHI EC 3 4
60636 1 1 1 0 JP Z , DOUULE 60927 2400 CHLL 5H0RI 1 t(MCH2 CC3F FHOI EU40
606 39 1 1 2 0 CP 4b 60930 2490 JP Z , II0MCH1 1H1 T 101 0 LMST E0A7
606 4 I I I 3 0
60644 1 I 4 0 JP Z,00U0LE 60933 2bOO 1 Hi: OL LOOP CC77 LOOPI CD 1 7
CP 34 60934 9610 IHC Ut
1 00P6 CDC 4
L00P2 I 003 L00P3 C037
60646 JP /,UOUULI 60935 2!. 20 IHC DE L00P5 EOCC
60649
60651 50
CP 60936 2530 JP LOOPt,
stion T 2
I OOP 7 CC94 LOOPS EC 23
JP
/,UOUUL t 60939 ?:>40 OStlCHI Clll L MORI CEC3 HCOtt ccec
60654 I ISO
60656 I I bo CP 256 60942 25611
60945 2S60
JP 3 , (IUHCII2 111 into t.0H6 001 EtCB
JP t , oiium t IIIC Oi UI1I0UH 11.91 002 CECC
(.0659 1 I / o JP t nIpli 60946 25/0 1IIC or onr nil EE 7C OBMCIIl EC 00
6U662
5K1P5P 1 HL IIL 61194/ 25011 Jl' LUUP6 UIDICH2 111). PRhSLH 4R0H
LD
1 100
60663 1 I 90 611950 2540 UDIICH3 Clll I iiiiiki 3 1 1 C5
Sil ' NLI
ptns PI H L t CO
60664 1 20(1 CP 60953 2600 JP ! ,OBf HU III 5 1 HI(CUII •,t icon LCbO
60666 JP i ' , itriPbP I. (19 5 6261 U IHC ot M.iPin LOO 1 5M0RI1 EC 49
H 0 R ! 21154
1210
60669 1 2 2 0 CP 1.095/ 6 2 0 JP LU0P6 SHORT 3 tt5C
606/1 1230 JP 34 6 U9 6 0 2630 uoMonj LU o t , i»cri:i SIM6LC C UOB SK1PSP 1 CI 6
( . 0 6 / 4 1240
1250
CP Z,5KIP5P
hb
60964 264 0 1 OOP7 1 1> A,(OE1 Mill 1 1 C4t ilRAT t B9t
tCC4
606/6 JP (>0965 2650 CP 2S5 5MAP LC50 ICLL
606/9 1260
6 0 6 0 2 1270
LO Z.5K1P5P
(PIRI,ML
6119b / 2660 At! z 1 PHO 1 t C2 t R1 PLC t o n e
"BIOUH I 065
RE V 60960 26/0 C h i t SHOHt1 V'OI ttCb
60603 1 2 0 0 51H6LI LD HL.IPTRI 609/1 2600 JP 1 ,1 I3ICHI •IB90UM t o / 4
uar ho LD56
"02 ttC7
60606 1290 LO A,(HLI 609/4 2640 IHC DC UB3 CECB
6060/ 1300 CALL SETP1H "BttCHI COLO II0MCH2 COLO
s
609/5 2 /IIO IHC OL
60690 1310 LO O L . I U C U I I 609/6 2/1U 1 HL 01 ocrc LE05 OCUB L L 03
<
60694 1320 LO B,A 609/7 2/20 JP LUUP/ HCUI CCCO vcua ECCF
60695 1330 0 I OOP I LO H, IDC I 6U40O 9/30 f KtlCHI CALL 5HUHI2 MC»3 110 I
60696 134 CP 255 6O403 2/40 JP Z , 1 I.1ICH2
60690 1360 HE 1 Z 60906 2/50 IHC Ot l«bl# 1u t * 4 : 026 rron 050

59
ZX Computing Monthly • November 1986
v a r i a b l e PERS Is g i v e n the v a l u e
2 (the n u m b e r tor Fred)
c o r r e s p o n d i n g to the person
b e i n g a d d r e s s e d . Note that TELL
is really only a f l a g w h i c h takes
Listing 2
the v a l u e 1 or 0 a c c o r d i n g to
whether s p e e c h Is signified or D o c i m a l d u m p ot parsor
nol. It's the v a r i a b l e PERS w h i c h machine codo.
conveys the information a b o u t
w h o m the p l a y e r Is trying to
BYTES
speak to. noon , CHECK
UM
So why d o we n e e d the extra 33 13460235
IVi 33
f 340 'K BSD
v a r i a b l e s o n VB2 a n d OB2? Well, B040S
604 10
004 1ft
330
•si BBS l( 33 507
sometimes c o m m a n d s m a y
Involve two o b j e c t s - a n d there
• 429
ft) BO
,n us 330 146 3 0 *
199 73?
Hi
099

3it in175m \\\


m a y b e Instances w h e n y o u 00435 330 50 3 0 1 3 3 0 BO 777
want to distinguish b e t w e e n two 60440

m I3t It
aU IV
slightly different types of a c t i o n , 143 3 3 0
SO 3 1 0 3 3 0 3 0 3 154
00460
such as p u t t i n g o b j e c t s ON or IN & ass
m
09405 a ii
other s u b j e c t s Figure 2(c) shows
fttt iti a
2 5
the analysis of the c o m m a n d 004 0 0 336 354 46

m
836 145 36
"PUT THF BOOK IN THE CHEST". See
how the two verbs "PUT" (12) a n d 330 i-ru
"IN" (7) a r e p i c k e d u p here,
together with the two objects In
order: "BOOK" (7) a n d "CHEST"
(8).
The final e x a m p l e , 2(d) Is of
the t y p e w h e r e s p e e c h to o n e
person Involves s o m e k i n d of
a c t i o n with yet a n o t h e r person.
A n d so the c o m m a n d "ASK PETER
TO GIVE THE KNIFE TO JOHN" sets
the s p e e c h ( l a g (TELL) a n d sets
PERS to 3 ("PETER"). As we'd
expect. VB1 is 14 ("GIVE") a n d
205
OB1 is 4 ("KNIFE") but In a d d i t i o n 330
to this FK1 has p i c k e d u p the BO
/I
other person involved in the 301
SIB
transaction ('JOHN"=4). We see 36
04
here, by the way. how the 35
s e p a r a t i o n of nouns into PEOPLE 36
a n d OBJECTS eases the error (it
BOS
10*
c h e c k i n g process n e e d e d in 330
104
every adventure. If a c o m m a n d 146 230
is f o u n d to c o n t a i n a verb such 236 201
1»4 200
130 30
as "GIVE" or "FIGHT" (where __„ !>0 I-J4
some other person must of 80 301
334 0
230
194
necessity b e specified), it c a n I i'O SO 201
SO 2 0 3 230
b e r e j e c t e d as a n u n a c c e p t a b l e 254 o 193
entry without further e n q u i r y It 202 230 201
FK1 is zero Example 2(d) also
illustrates the essential
friendliness of VENTURESPEAK.

Listing 3
particularly where speech involves a t i d y l n g - u p process
c o m m a n d s a r e c o n c e r n e d . It w h i c h w o u l d c a u s e t h e parser to
matters not a jot w h a t style of "forget" the position it h a d
entry is used by the p l a y e r — Machlno codo loador program. r e a c h e d o n its previous scan).
SAY TO PETER "GIVE JOHN THE A t y p i c a l p r o g r a m m i n g "flow
KNIFE" for e x a m p l e , will b e
43 nor •• H / C
REM
HIM
LORUtR
chart", therefore, w o u l d b e
d e c o d e d with c o m p l e t e success
6
IK P
10
Cltflfl
HIHI
PRINT
64499
""RUUH,
R D O R . "",, TIHP
RO 113,
J , - 6Y T £ 5 s o m e t h i n g like this:
by the parser. ~il«0 26,"CHECK " ' IflB a i | - i « W " (1) CALL KEYBOARD ROUTINE (USR
2 0 rOH I '00400 TO 61 lis STEP
38 PR 1H1 It
5 60000)
I haven't m e n t i o n e d how the 4 0 LET *•«
5 0 LET H.O
(2) CALL PARSER ROUTINE (USR
system c o p e s with m u l t i p l e 60 1HPU1 "NEXT O Y I E T - ' X 60400)
70 POKE l*H,X II I 3 > & + X : PR IM
c o m m a n d s yet. Suppose the T X<10,
TAB 6 *
X*4 i H j - - RHO XflOftj- "
RH (3) PROCESS C O M M A N D IN BASIC
c o m m a n d GET THE SWORD AND 00 LET H « H * I IF H < 5 THEN CO T (4) "IF MORE THEN LET M=USR
69
G O NORTH has b e e n entered. 4 0 1HPU1 r L R SN I."CHECKSUM fOR 60426'! GOTO (3)
THIS L I N E ' - ' C
The parser will a n a l y s e the first PR1HT TRB 37l~ "
RHO S«I0," ' RHD S<100>- " fiHD (5) G O BACK TO (1)
p a r t (GET THE SWORD) a n d then •jttuoo,'. IP C<>S THEM P R I N T ER
R0R> EHTER I HI LI HI. R G R I H , " : IEE I h o p e that by n o w you've
return to BASIC but it will c 1,30 GO TO 30
100 HEXT I b e g u n to get s o m e i d e a , In
r e m e m b e r how far a l o n g the 110 SRMt •'PHHbE«"COUt 6 0 4 0 0 , 7 5 0 p r i n c i p l e , of w h a t VENTURESPEAK
c o m m a n d It has s c a n n e d . If we c a n d o for your a d v e n t u r e
LET MORE=PEEK 61123 (see the v a r i a b l e MORE to see writing. If you're b u r n i n g for
above), the v a r i a b l e MORE will whether a n o t h e r analysis s h o u l d some "hands-on" experience,
b e a s s i g n e d the v a l u e 1 — follow, or w h e t h e r a return to don't worry. You'll b e a b l e to try
telling us in effect that a n o t h e r k e y b o a r d c o n t r o l Is c a l l e d for. out all these e x a m p l e s ( a n d as
part of the c o m m a n d remains to However, the re-entry p o i n t to t h e m a n y others as you wish) yourself
b e a n a l y s e d . (For single parser routine is different s h o u l d with the h e l p of the EDITOR
c o m m a n d s MORE will b e zero). a c o n t i n u a t i o n of analysis b e p r o g r a m next time, w h e n I'll also
This m e a n s we c a n a r r a n g e for necessary — o n such o c c a s i o n s b e offering m o r e d e t a i l e d
the first c o m m a n d to b e the parser is c a l l e d with LET e x p l a n a t i o n s of how to
p r o c e s s e d by a n a p p r o p r i a t e M=USR 60426. (This is b e c a u s e I n c o r p o r a t e the system into your
BASIC subroutine, a n d then test t h e usual entry at USR 60000 o w n p r o g r a m s Till t h e n . . .

12 ZX Computing Monthly • November 1986


More from the last
outpost of ZX81 users.

W his month we have great Dear Sir,


pleasure in h a n d i n g over the In your July issue, Page 81.
content of this p a g e to two of you give a program requiring
our readers who wrote in with a 235 reserved spaces in a REM
c o u p l e of useful routines: 1 REM 151 CHARACTERS***!:*:!*:':)': statement. I have seen programs
The first o n e is a brilliant xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx requiring even more s p a c e than
a d d i t i o n lor our giant REM xxxxxxxxxxxxxxxxxxxxxx^xxxxxxxx* this a n d it c a n be very boring
project a n d we will b e sending XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX a n d slow creating the necessary
both contributors tokens of our xxxxxxxxxxxxxxxxxxxxxxxrtxxxxxxxx REM.
I I I LET A«"-»21(JC0039368A23360BC
appreciation . . . 7CP1C1 I D A 4 D 0 D 2 3 2 3 2 3 7 C r E 0 2 2 0 - " D 2 3 4 The following little listing
E2346ED433F40* makes the j o b m u c h easier a n d
Dear Sir, 70 LCT A « - A « t ' 2 3 4 C 2 3 4 6 2 3 E D 4 3 3 D is worth k e e p i n g as a stock item
I have sent you a contribution 40EB4B3F40Ar323C40E5E5ED5D3D4O19 on tape.
for your giant REM program. My EnElCDDC40DLT240*
3 0 LET A * - A * t - C B 0 B ^ D D I 2 0 C C C 1 3 A
m a c h i n e c o d e p r o g r a m will sort
a specified character array into
3C4OA7C8ED4B3F4O0BC B433F40"*OB1 20 1 REM — (Followed by e x a c t l y
DPC9E5D5C5EB4B3B*
a l p h a b e t i c a l order in a matter 94 2eros)
4 0 LCT A«.flti • 4 0 1 A 9 6 2 0 O ' 2 3 i ; O B
of seconds, eg. A 500 by 10 "*0B12Or5C 1D1E1C9C5D5E5EB4B3B40ED
9 REM
array in less than 2 seconds. This 5DI440CBB0D1B5EB* 10 LET R = X + 2
p r o g r a m is therefore very useful SO L E T A « - A » i • 4 B 3 B 4 0 E B B 0 2 A 1 4 4 0 20 POKE 16512, INT (R/256)
for filing programs. EB4B3B40E B B 0 3 2 3 C 4 0 E I D I C I C 9 C F 0 2 - 30 POKE 16511, R - 2 5 6 * INT
My routine o c c u p i e s 151 bytes
100 LET S T A R T * 1 6 5 1 4 (R/256)
1 1 0 FOR I " S T A R T TO S T A R T • 1 5 0
a n d is r e l o c a t a b l e if 2 addresses 1 2 0 POKE I , 1 6 « C 0 D E A S t C O B E A * ( 2
40 FOR N = 16514 TO 16511 -I- R
are altered. I have i n c l u d e d a 1 -476 50 POKE N,28
HEX loader to poke in the 1 3 0 L E T A S > A S ( 3 TO I 60 NEXT N
m a c h i n e c o d e a n d by 1 4 0 NEXT I
150 LET J " S T A R T » 9 0
c h a n g i n g line 100 to the 1 6 0 POKE START » 6 0 , I N T (3/256)
It is quite easy to count the
required starting address, the 1 7 0 POKE START 1 5 9 , ( J / 2 5 6 - I N T (J zeros in line 1 as Ihey represent
program will a u t o m a t i c a l l y alter /256) >*256 exactly 3 screen lines less 2
the two fixed addresses a n d so 180 LET J - S T A R T * 1 1 2 positions. 32*3=96. If you want to
relocate the m a c h i n e c o d e 1 9 0 POKE S T A R T • 6 3 , I N T I J / 2 5 6 ) provide, say. 309 spaces then
routine. 2 0 0 POKE S T A R T < 6 2 , ( J / 2 5 6 I H T ( 3
create 2 more REM lines as
/2S6))1256
The routine will only sort two 2 1 0 STOP
duplicates of line 1 by e d i t i n g
dimensional character arrays 1 0 0 0 REM EXAMPLE PROGRAM line 1 a n d c h a n g i n g its line
a n d will p r o d u c e a n error c o d e 1 O 1 0 L E T S O R T - S T A R T ABBRESS number: i.e. 1 REM, 2 REM a n d 3
2 if the variable has not b e e n 1070 BIM E » ( 1 0 , 1 5 ) REM. Each of these will represent
set up. or a n error c o d e 3 if the 1 0 3 0 FOR A - l TO 10 100 spaces. A d d 9 zeros to the
dimensions of the array are 1 0 4 0 FOR B " 1 TO 15
REM in line 9. Replace the x in
1 0 5 0 L E T E « < A , B » - C H R » I I N T tRNOV
wrong the routine is c a l l e d from line 10 with 309. Run the
2611301
basic by the c o m m a n d : 1060 PRINT E * < A , B ) program a n d wait a few
PRINT USR start address, X$ 1 0 7 0 NEXT D seconds for the program to run
Where X$ represents any lOOO P R I N T through.
character array. It is more 1 0 9 0 NEXT A You will find that 1 REM will
convenient to define the 1 1 0 0 P R I N T , , ' P R E S S A KEY TO SOR
have d i s a p p e a r e d . Delete the
T"
variable. SORT, to h o l d the 1 1 1 0 PAUSE 4 E 4
rest of the unwanted lines.
starting address a n d so the 1 1 2 0 P R I N T USR S O R T , E « To provide say 295 spaces
routine c a n b e c a l l e d by: I 130 C L S create the same 3 REM lines as
PRINT USR SORT, X$ 1 1 4 0 FOR A - l TO 10 e x p l a i n e d above (=300 spaces)
I have also written a n 1 1 5 0 P R I N T E»<A> a n d then remove 5 zeros from 3
e x a m p l e p r o g r a m to 1 1 6 0 NEXT A REM, this time r e p l a c i n g x with
demonstrate my routine a n d this 295, then RUN.
is listed from line 1000 onwards. When we started this project If zeros are not liked any other
To use this p r o g r a m simply we g a v e a m a c h i n e c o d e character c a n b e used by
c h a n g e start address in line 1010 routine for creating a REM line, c h a n g i n g the 28 in line 50 to the
lo the starting address of Ihe since then we have many new c o d e of Ihe desired character.
routine. readers a n d so this tip should be Yours faithfully.
Paul Kecskemety, Cheshunt, Herts. useful for them. L.G. Baumann. Cowies Hill. S.A.

IE f\

12 ZX Computing Monthly • November 1986


THE DISCOVERY
COLUMN
John Wase with advice i n c l u d e instructions, these
a c t u a l l y don't work: if you have
for Discovery Disc the later h a n d b o o k , then the
owners, instructions have merely b e e n
omitted. The p r o g r a m In Figure 1
W he Opus disc is n o t a b l e for its (which was o b t a i n e d from Opus)
reliability rather t h a n s p e e d in should b e used instead.
c o m p a r i s o n with microdrives. It Line 40 checks that the RAM has
your p r i n c i p a l use of the disc Is The listing b e e n properly fitted. Lines 50
for storing games, then reliability a n d 60 use POINT to select a n
is p r o b a b l y the m a i n criterion Having d e f i n e d a function to address, r e a d a vector, adjust
w h i c h you a p p l i e d w h e n you simplify the r e a d i n g of two-byte point a n d move to the new
b o u g h t It. However. In contrast to numbers (line 10) the p r o g r a m address, a n d repeat, so f i n d i n g
a t a p e or a mlcrodrlve, a disc then asks you to Input the drive the l o c a t i o n in w h i c h the
drive has the option of r a n d o m n u m b e r c o n c e r n e d a n d the information is to b e stored. In
access. In other words. If you n u m b e r of blocks, or sectors (line line 70. you Input the values for
specify a p r o g r a m out of fifty or 20). Line 30 opens the "CAT" the n u m b e r of sides (i.e. single or
so programs stored o n the disc, c h a n n e l to stream 0: stream 0 is d o u b l e sided), a n d the n u m b e r
then the disc o p e r a t i n g system a "funny" stream that doesn't of tracks (40 or 80). These are
will i m m e d i a t e l y j u m p to the always report errors. Line 40 then then put In the address w h i c h
specified program. As you know, reads from the "CAT" c h a n n e l has b e e n f o u n d (line 80). a n d
a p a r t from the usual things o n e a n d chickens out of more the disc is formatted with the
stores on tape, the disc system sectors are asked for t h a n there a p p r o p r i a t e Information In the
will also store lists of d a t a , like is room. Finally, the new value is title (line 90). If you have fitted
t e l e p h o n e numbers. The printed b a c k to the "CAT" your new disc as drive n u m b e r
Discovery unit is neat In the w a y c h a n n e l a n d the stream is 2. then c h a n g e the "1" in line 90
it will set u p s p e c i a l d a t a files c l o s e d (line 50). to "2".
c a l l e d Random Access Files: in
this case It c a n Jump to a And...
specified item In the p a r t i c u l a r Configuration of a
file. So if you Just h a p p e n to b e Second Disc If you have any programs or
a tailor, a n d are storing the
utilities for the Discovery disc, d o
measurements of e a c h of your
O n c e you have got h o l d of the send t h e m for this c o l u m n . We
customers" clothes o n a separate
Discovery unit a n d b e c o m e look forward to h e a r i n g from
file. Ihe system allows you to pick
familiar with it. you might want you.
out a n d l o a d the file c a l l e d
to a d d a s e c o n d disc unit with a
'JJones" a n d then move
power supply unit a n d the RAM F i g u r e I t L i l t i n g of t h e p r o g r a m
i m m e d i a t e l y to, say, his a r m or
chip, a n d you c a n get yourself t o expand t h e c a t a l o g u e f i t ? on
l e g size t h e Opus s y s t e m .
almost a m e g a b y t e of storage in
no time at all except that
Tracks a n d sectors w h e n you c o m e to FORMAT the 3 REM p r o g r a m "Expand C a t "
10 DEF FN aO-CODE 1NKEY»II0*2I.
thing, all you get Is 178K on the faoCODE INKEYtMO
How is ail this done? Well, the screen w h e n it Is c a t a l o g u e d . 20 INPUT H d r i v « i " , d " n o o f b i o
c a t a l o g u e file o c c u p i e s the first This is b e c a u s e the Internal tk»",b
track on the disc, a n d the system software, w h i c h as e m p t i e d itself 30 CLEAR MOi OPEN WO; "* CAT " j d
RND I f . i POINT »OtZ
always reads this first, from the EPROM into the RAM 40 LET m-FN *<>*0+FN a ( ) t IF b
c o m p a r i n g the information with c h i p hasn't b e e n told that there >/n THEN CLEAR BO: OPEN « 0 | d ; " x "
that t y p e d In (In our case, Is a disc ot a different OUT 2 " 3 1 I STOP
J.Jones). When It finds JJones on c o n f i g u r a t i o n in drive 2. There SO POINT N O ; I t RANDOMIZE FN a<
) •FM « < ) « 0 * b : PRINT «0;CHRS PEEK.
the c a t a l o g u e file, It then reads are two ways to tell if. for now 23670; CHRS PEEK 2 3 6 7 1 ; : CLOSE m
information w h i c h tells it w h i c h that the Information is in the O
track(s) a n d w h i c h sectors o n RAM Instead of the EPROM, it
those tracks are involved In c a n b e altered. O n e way is to
storing the fife. Then It knows read an appropriately
F i g u r e 2 i Program t o c o n f i g u m a
w h i c h part of the disc to g o to in c o n f i g u r e d disc in the drive, ie. di»c
order to find this Information, borrow o n e from a friend. The
which, of course. Includes his internal software detects the 3 REM p r o g r a m " C o n f I g "
a r m or leg size configuration, a n d Is altered 10 OEF FN aO-CODE IWEYStO + 23
Unforlunately, on the Discovery a c c o r d i n g l y . The other Is to use 6"CODE INtEYSttO
a p r o g r a m to d o it. Here is a 20 CLEAR »Oi OPEN dO;"CODE "
system, the c a t a l o g u e file is only 30 IF USR B<2.1 THEN PRINT "Wr
b i g e n o u g h to h o l d 110 records, p r o g r a m , direct from Opus, ong v « r » i o n " i STOP
a n d to m a k e a living, you might w h i c h will d o the trick (Figure 2). 40 IF USR 14070 THEN PRINT " R *
want more than 110 customers. m n o t f i t t e d " ! STOP
This p r o g r a m is constructed 50 POINT ttOj 61921 POINT IIOJFN
Well, the c a t a l o g u e file c a n b e on m u c h the same lines as the « ( ) « I O l POINT BO;FN * ( > + !
e x p a n d e d . I n e e d e d to d o this last. Thus, line 10 defines the AO POINT dO;FN a(>
for a s p e c i a l i s e d filing p r o g r a m , familiar function, as before. Line 70 INPUT " T r « c k « < 4 O , 0 O > i - , t ' "
but unfortunattey the Opus 20 opens stream 0 direct to the S i d e s ( I , 2 J « " , * ' " I n s e r t new d i s k
and p r c s « ENTER"; LINE a t
instruction b o o k was printed Opus RAM. using the "CODE" GO PRINT RO;CHRS t;CHRS IGiCHR
before the c a t a l o g u e file- c h a n n e l . Line 30 checks the f 165+4.(USR B < 2 . 2 ) * 1 6 » l » - 2 > ) j
h a n d l i n g routines were finalised, version; the p r o g r a m won't work 90 FORMAT ItSTRS t + " t r , " + S T R S
a n d in some versions w h i c h with the o l d "Speclrodos" system.

12
ZX Computing Monthly • November 1986
r qq n Spike Sparkler's pick ot
d itc^ the hits at only £199 each.
Street Date 29 Sept.
w y
l i p
BLACK HAWK
C r & M M W N E E R
71-J your southing skills again* wo tld famous defectum
Theyic all than hunting the stpperySnodgits - dreadful Ul battle commence 1 The outcome of the war is in
little creatures tvfto wreak havoc m U>td and Lady your hands Vbur task a to destroy enemy ammunition
Piloting skills are not enough' K>u need courage and a SnodgerS snobsville mansion A must for all bright and supplies - from behind thor bnes. Hot easy as the
cool head to guide Black Hawk over enemy territory on sparks Amstrad CPC4<4 Spectrum 48K terrain s rough and Uteted wth swamps and minefields
the h w M j deadliest mission Defend your ret aguna NOW ON COMMODORE 64 )bu are also on your own and vulnerable to aerial attack
barrages of mtsokrs and dodge the rocket launchers to .Spa/We rating ***** • 1 8 at any moment' fust the thing for wvt Sundays Atari
reach the ultim.Ue goal - the .urfield Do you have what Sparkle rating****
it hikes' Only the cool heade<] sumw in this game of
high stakes 1nd fast reactions
Black Hank ts a superb simulation with over 30 levels
ot play Your on board computer allows you to nw
positions from the attack or defence - mth automate
This race aojtnsS time depends entirety on rpur skilh as
a navigator and ptkX But you are not without hep As the
Tower of Evil
ad/ustment according to the rate of incoming missies owner of the fastest power boat m the region you can Haw you ever fought a Baphomet ? Well they arc no
This must be the ultimate in action/strategy play rely on your boat to steer you to the rescue of the trapped pushover They guard Where the Princess a imprisoned
Commodon i>4 and Spectrum 4BK scientists But look out hr crocs, rocks and mine and have some equally horrendous friends Poor old
Sparkleraimtj ***** dropping rivals Spectrum 48K Sparkle rating **** Princess Diana-locked away in the clutches of the
Necromancer Jbu ate her only hope
Aiw from S^tikh'n Spectrum 48X Stagecoach Danger Mouse in Double "Double Danger Mouse Making Commodore 16 NOW ON SPtCTRUM 4SK
tVhoopro Tiny Wreck Kidnaf> Commodore 64 Mad Doctor VVfcite Viper Danger Mouse m Double Ttoubie Sparkle rating ****
Atan Soccer Submarine Commander, Desmonds Dungeon

BINDERS If an advertisement
is wrong we're here
FOR YOUR VALUABLE
C O L L E C T I O N OF
ZX COMPUTING i £5.20 %
MAGAZINES
S M A R T EASY T O USE
'TOP QUALITY
• inc I
to put it right.
To ASP Readers Service, PO Box 35, Wolsey If you see an advertisement in the press, in print,
House, Wolsey Roed, Hemel Hempstead,

/
Herts HP2 4SS (0442-41221) on posters or in the cinema which you find
Pt*a»* luppty..,.
Told (.
Z X B i n d e r s 15.20 inc. PSP
( P l * u * malt* ch*qu** payabl* lo ASP Lid.) unacceptable, write to us at the address below.
V * * f i fltqulrad - 1M , 1 M . . , 1SS...1SS .
. The Advertising Standards Authority
Addr***
P1*u* allow 71 day* lot dallvafy A S A L t d . D t f p t 3 B r o o k H o m e . T o m n g t o n Place. L o n d o n W C I E 7 H N

C U T - P R I C E D I S K S n J U D W J S T Y E T !
rsa\'
\jnWe
drWes osoo- 9 6 .
sorts ^ ' U c n O D S O O .
S S O f % dtsKs

« 39.99
3
o 0 ;/ 85.99 s :
Sam
e ^ 4 - 9 MO
a
•Ule-w?e ' spec 0 C \0c C h e q u e s or orders to:-
Dept ZX
Direct Disk Supplies Ltd
M O 1 . FREEPOST
— " ^ T l o w e s i 3 M
& b r a n d e d prices - Try us! 29 Dagmar Road VISA

Official orders very welcome. Kingston, Surrey, KT2 6BR.


mi
Peter Sweasey delivers a h e a d multi-tasking feature Is criticise h e a v i l y In other games.
provided. The originals l a c k e d Though these are minor short-
the verdict on the a n EXAMINE c o m m a n d ; this has c o m i n g s separately, taken
b e e n a d d e d , a l o n g with other together they spoil a potential
revamped Middle Earth v o c a b u l a r y dimensions through masterpiece
Ihe a d d i t i o n a l information that Presentation q u a l i t y is poor.
Ttilogy. c a n b e g a i n e d . The Descriptions, c o m m a n d s a n d
c o m b i n a t i o n of three tapes responses a r e p r i n t e d in the
provides months of s a m e yellow o n b l a c k , with no
entertainment a n d p r o b l e m s g a p s b e t w e e n them. Everything
Jewels of Darkness solving for a b a r g a i n p r i c e The merges into a n untidy mess,
Rainbird Jewels of Darkness are a joy to p a r t i c u l a r l y if you p l a y the full
£14.95 play. screen text version; yet this g a m e
Why then a m I not lavishing a b o v e a l l others requires the
t very nearly didn't give this e g a m e s with further praise? It player to r e a d a t r e m e n d o u s
g a m e a Monster Hit rating, but w o u l d have b e e n easy for m e to a m o u n t . So why n o use of a
in the e n d I d e c i d e d that even a go into auto-pllot for this review colour, or a m o r e r e a d a b l e
b e l o w a v e r a g e Level 9 g a m e is (Level 9 — must be brilliant), but c h a r a c t e r sel?
better t h a n almost everything o n when looked at closely it Then we h a v e the 'graphics'.
the market. However. I'm contains faults which I would These a r e so stupefyingly
extremely d i s a p p o i n t e d with
Jewels O l Darkness: not so m u c h
for what it is, but b e c a u s e it isn't
what it c o u l d so easily have
been.
The g a m e s w h i c h form w h a t
was previously c a l l e d the
' m i d d l e e a r t h trilogy are
Colossal Cavern, Adventure
Quest a n d D u n g e o n Adventure.
The first Is a version of the
o r i g i n a l m a i n f r a m e g a m e , with
all the t r a d i t i o n a l puzzles, plus a
s p e c i a l e n d g a m e where you
rescue some elves In a r a c e
ag<ainst time. Adventure Quest
tawces you, a n a p p r e n t i c e
m a g i c i a n , across v a r i e d terrain
in your mission to destroy the
D e m o n Lord. D u n g e o n Adventure
is set just after s a i d nasty's
defeat, a n d sees you as a n
adventurer l o o t i n g the treasure-
filled caverns b e n e a t h his
d o m a i n . The latter two have a n
obvious plot link but the first o n e
"feels" very different a n d doesn't
fit in particularly; the only
c o m m o n feature b e i n g the
same starting point as AQ.
These are all well-crafted,
e n j o y a b l e adventures, a n d no
matter w h a t I will shortly say this
must b e b o r n e in mind. They
remain impressive for their mass
of locations a n d puzzles, the
lengthy descriptions a n d v a r i e d
responses (though not as wide-
r a n g i n g as in Price Of Magik). In
their o r i g i n a l forms they have
rightly b e c o m e classics, a n d Ihe
versions In Jewels have b e e n
t e c h n i c a l l y u p d a t e d , t h o u g h the
actual games remain basically
u n c h a n g e d . They run faster a n d
look (marginally) better. The
sophisticated sentence construc-
tions m a r v e l l e d at in POM are
mostly here too (like DROP ALL
EXCEPT...). The marvelous type-
atrocious, so i n d e s c r i b a b l y Inept
that I'd l a u g h If this wasn't a
premier p r o d u c t . Just look at the
l a m e n t a b l e screenshots we
uw
present here. I a m not m o a n i n g
at the Inclusion of pictures — I
realise they a r e necessary to
g a i n w i d e distribution, a n d
enjoy illustrations a n y w a y — but
these are so ghastly, no-one
c o u l d w a n t them, Have fewer of
them, a n d m a k e t h e m mono-
tone, if it m e a n s higher d e t a i l
a n d the c r e a t i o n of s o m e t h i n g
worth l o o k i n g at. Instead we
have blotchy, v a g u e shapes a n d
mindlessly I n a p p r o p r i a t e
c o l o u r i n g (purple trees?). An
Illustrated version of Colossal
offers f a s c i n a t i n g possibilities
w h i c h 19 have c o m p l e t l e y
thrown away. Fortunately, a non-
g r a p h i c s version with e x p a n d e d
text, mostly longer EXAMINE
responses, is p r o v i d e d o n the
other side of the t a p e (Ignore
the cassette l a b e l w h i c h c l a i m s
that side is for 128 users only —
a stupid, unnecessary error.)
The g a m e s l a c k
RAMSAVE/IOAD, w h i c h is fast they're present, In w h a t should g r i p p i n g . Illustrations w o u l d have
b e c o m i n g standard, a n d should b e a p a r t i c u l a r l y professional i m p r o v e d It though.
certainly b e i n c l u d e d In such a adventure, as a result of the If you o w n more t h a n o n e of
major release as this It Is Rainbird d e a l . Apart from the these g a m e s already, then the
c l a i m e d the c o m m a n d s c o u l d n ' t p a c k a g i n g , the BT tie-up seems revisions are p r o b a b l y
be fitted In the Spectrum's to have h a d no effect. For Insufficient to Justify b u y i n g
memory, t h o u g h m a n y of the e x a m p l e , there is no l o a d i n g Jewels Of Darkness If you nave
versions for other c o m p u t e r s screen, just the same "Level 9" o n e or less, or if you are new to
Include fhem, a n d they a r e p r i n t e d in different colours that the world of a d v e n t u r i n g or to
tantlllslngly m e n t i o n e d in the has b e e n used for several years the Spectrum, this p a c k a g e
Instructions Even If m e m o r y was The adventures are g o o d , so why represents superb value for
too tight in the g r a p h i c s version not polish t h e m to perfection? m o n e y a n d should k e e p you
— a n d seeing as they h a d no N o t h i n g annoys m e more t h a n o c c u p i e d for all the c o m i n g
difficulty i n c l u d i n g the wasted opportunity. long, winter nights: p e r h a p s the
c o m m a n d s in Price Of M a g i k , The attractive p a c k a g i n g Is rest of 1987 as well!
this surprises m e — why are they better t h a n most by the way. The
not in the text-only version, instructions are excellent; plus
J
utilising some ot the m e m o r y there's a highly r e a d a b l e ,
freed by the w e l c o m e disposal e n t e r t a i n i n g novella, w h i c h sets
of the "graphics"? I for o n e the scene for the latter two
would prefer a few messages not g a m e s I e x p e c t e d this to b e
to b e e x p a n d e d in e x c h a n g e for dull, s t a n d a r d fantasy fare, full of
Ihese useful features A d o u b l e silly n a m e s but It was
punishment is that w h e n you u n e x p e c t e d l y humorous a n d
resort to c o n v e n t i o n a l t a p e
storage, w h i c h In g a m e s this size
Is frequently necessary, you are
forced to use the d r e a d e d
Lenslok: EVERY TIME! Why not
have just o n e c o d e to c r a c k at
the start?
There are other, tiny n i g g l e s
w h i c h all a d d up. There's no
a b b r e v i a t i o n for LOOK, unlike
virtually every a d v e n t u r e o n the
market. You are only g i v e n a
score rating on d e a t h ; If you
type SCORE or QUIT, you are just
given a number. It the r a t i n g
routine is there In memory, why 1II. . 1i» i
not use it? There are no proper ,<•11 l 1 i • < r i i 11 • i > •il • t i :• i • I
e d i t i n g facilities just delete: 1 1 1 >1 t. * 11 t I, • 1 t V », 1 1 1 J i i 111 » t
annoying during long sentences •11 t t, • i 1 1 • i i *•• • : i i l i t , , t h .
Plus, I think more c o u l d have < 1 1 1 1 11 i i i t t. I'I r » ».• iti i t r > i f
b e e n d o n e to u p d a t e the • • ' f 1• i n I t »* i hi i n i j b i i d-i• .
M|, , n • t 11
g a m e s themselves Some
i • • II i • » •( I i 1M i <f • t • • it * br i
i n d e p e n d e n t characters
I * 1 •1 1 11 * 1 i * • • I' > h I .. , > Jl i f i • i »• •n •
perhaps? A n d Colossal looks
rather h a c k n e y e d these days, so . (II • • • 1 t I, » i • i i ••lb 1 i h i t
In ' ' • 1 1 •t1 •
some new problems w o u l d h a v e f

Ml. J r i• 11
been w e l c o m e
Virtually every fault I've
outlined Is easily c o r r e c t e d . But
Ton! Baker rounds off
the series with a look mflCHinE CODE
at the function
generator.

T h e r e is just o n e c a l c u l a t o r
Instruction lefl to cover. It is the
function "series", otherwise

E I S ) 1(g) E l
known as the function generator.
or series generator. Its c o d e will
b e a value b e t w e e n 80h a n d 9F.
The last five bits of the c o d e form
a parameter, so that 86h means

J U i EdI S II I R J ^ J
"series 6". 8C m e a n s "series
twelve", 99 m e a n s "series twenty-
five", a n d so forth. This is the
single most powerful instruction A p o l y n o m i a l expression such a n d plus one, then ABS(xJ) will
in the w h o l e of the c a l c u l a t o r as we have b e e n discussing b e less t h a n ABS(x): ABS(x3) will
set. It is the function with w h i c h consists of a n u m b e r of terms, b e less t h a n ABS(xl), a n d so on. It
SIN a n d EXP a n d others were e a c h s e p a r a t e d by a " + " sign. follows, therefore, that If the A's
written In the ROM. With it we The first term is a „ a n d the last are all roughly the s a m e size,
m a y create our own designer term is a ; x " - ' . In g e n e r a l , the /-th then e a c h term will b e smaller
functions, or i m p l e m e n t term will b e a i x M . The v a l u e of t h a n the last. Furthermore. If the
m a t h e m a t i c a l functions w h i c h the w h o l e p o l y n o m i a l is A's themselves also get smaller
are not present ( a n d not therefore the sum of a l l of its (ie If ABS(A(2)) is less t h a n
otherwise possible) o n the terms. There are n such terms, ABS(A(1)J; ABS(A(3)) is less than
Spectrum. The "series" function is a n d e a c h of them contains the ABS(A(2)); a n d so on) then e a c h
the calculator's final frontier. v a r i a b l e Y (except the first o n e term will b e smaller still t h a n the
Essentially, what the "series" — this Is b e c a u s e In the first term last. I n d e e d it is possible to
instruction does Is to evaluate a x w o u l d have to b e raised to the ensure that the last term is so
p o l y n o m i a l expression. small, by c o m p a r i s o n to the first
power of zero, a n d a n y t h i n g to
"Polynomial" is simply a term, that if any more terms were
the power of zero Is one).
highbrow p i e c e of a d d e d it w o u l d b e outside the
Because every term e x c e p t the
m a t h e m a t i c a l j a r g o n — it limits of the computer's
means a n expression w h i c h first one contains the v a r i a b l e 'x'
( a n d the tlrst term is simply a a c c u r a c y , a n d w o u l d thus m a k e
looks something like this . . . no more difference. For Instance.
n u m b e r to b e a d d e d ) , it follows
that the w h o l e thing is simply a If A(1) e q u a l s 1, a n d If the last
2 n 1
a1 +0 2 X + a 3 X + . . . + anX function of x. In other words — term e q u a l s 2 " or less, then the
you put In a value for x at o n e Spectrum w o u l d have to r o u n d
I a p o l o g i s e to those of you not end. a n d you get a new n u m b e r Its answer u p by simply i g n o r i n g
a q u a i n t e d with m a t h e m a t i c a l out at the other. This is in the last term.
notation. The same expression c o m m o n with a l l of the other It is in theory possible to
written in Spectrum BASIC w o u l d functions of the Spectrum. simulate any function whatso-
b e as follows . . . The Y in this c a s e is the value ever. p r o v i d e d that x Is b e t w e e n
A(1) + A(2)*X + A(3)"XJ2 + ... + at the top of the c a l c u l a t o r minus o n e a n d plus one, that
A(N)*Xf(N—1) stack. When the "series" e a c h term is suitably smaller
The dots In the m i d d l e of the Instruction is e n c o u n t e r e d , the t h a n the last ( a l t h o u g h I can't g o
a b o v e simply m e a n " a n d so on value Y is removed from the into the precise m a t h e m a t i c a l
until". If you know the value of N c a l c u l a t o r stack, the expression details of this c o n d i t i o n in a n
you c a n fill in the missing chunk is evaluated, a n d the result put a r t i c l e such as this), a n d that
a n d put the w h o l e lot into a b a c k onto the c a l c u l a t o r stack there are a n infinite n u m b e r of
single BASIC expression. If you in p l a c e of the o r i g i n a l Y terms.
don't know the value of N then All we n e e d to know now are You see, with a n infinite
you w o u l d have to use a the value of the 'a's. You c a n n u m b e r of terms, we c a n m a k e
FOR/NEXT l o o p from 1 to N In think ot the 'a's as b e i n g a BASIC the p o l y n o m i a l closer a n d
order to work it a l l out. But what array AO d i m e n s i o n e d u p to n. closer to the desired function
does it all mean? Let's take it so that the first term is simply with e a c h new term.
a p a r t a n d find out. A(1). a n d the last term is A(N) Unfortunately for us. we are only
Firstly the n u m b e r *n" — this is m u l t i p l i e d by xf (N—1). a l l o w e d a m a x i m u m of thirty
c a l l e d the "degree" of the Before we look at how to o n e terms altogether. We c a n
p o l y n o m i a l (technically the specify the value of the 'A's, let's get r o u n d this p r o b l e m by
d e g r e e is n—1, not n). The have a look at how we m a y use ensuring that the p o l y n o m i a l Is
"series" Instruction specifies the such a p o l y n o m i a l to c a l c u l a t e close e n o u g h - It doesn't have
number 'n' explicitly, so that, for functions. to b e exactly right. As l o n g as
example, "series 6" tells us that n the m a x i m u m error is smaller
equals six; "series 8" w o u l d Polynomials than the a c c u r a c y possible on
m e a n that n equals eight. The the Spectrum, then the
parameter, w h i c h is part of the Suppose that the value of Y is p o l y n o m i a l will c a l c u l a t e the
hex c o d e (bits 4 to 0) a c t u a l l y somewhere b e t w e e n minus o n e function — at least to the limits
specifies the d e g r e e of the a n d plus o n e (le that x is greater of Spectrum a c c u r a c y .
p o l y n o m i a l . You should note that t h a n minus one, a n d less t h a n So how d o we work out the
since you only have five bits in one) — we c a n of course ensure 'A's? — Well, m a t h e m a t i c i a n s
w h i c h to specify this parameter, this since we a l r e a d y know how m a y c a r e to use Taylor's or
its m a x i m u m value (other t h a n to m a n i p u l a t e the c a l c u l a t o r Maclaurin's Theorem (which I
zero) is hex 1F, or thirty-one. Note stack. If x is zero then the v a l u e can't g o Into here), a n d
also that if you specify n to b e of the p o l y n o m i a l will simply b e everyone else will have to look
zero, the ROM will mistakenly a , since all of the other terms the values u p In books. Almost
interpret this as two h u n d r e d will b e m u l t i p l i e d by zero. If x is a n y A-level maths b o o k
a n d fifty six. non-zero, but still b e t w e e n minus ( a v a i l a b l e from your l o c a l

12 ZX Computing Monthly • November 1986


library) will tell you w h a t t h e Well, I won't b o r e y o u to tears
c o r r e c t series is to s i m u l a t e SIN,
or EXP, or whatever.
with a n y m o r e maths, but I h o p e
y o u c a n see h o w i n g e n i o u s litlle
Listing 1
For instance, take t h e f u n c t i o n tricks like the a b o v e c a n b e
2 l X . If X is b e t w e e n minus o n e u s e d to ensure that p o l y n o m i a l 10 LET K = 0
a n d plus o n e t h e n t h e f u n c t i o n approximations are only used 20 INPUT "N = *:N
c a n b e s i m u l a t e d by the o n n u m b e r s b e t w e e n minus o n e 30 PRINT "N = I N
f o l l o w i n g p o l y n o m i a l . 2 | X is a n d plus one. Such i n g e n i o u s 40 DIM A(N)
a p p r o x i m a t e l y e q u a l to 1 + little tricks a r e necessary, 50 FOR I = 1 TO N
0.69314718* X + 0.24022651* X | 2 b e c a u s e the p o l y n o m i a l l o r m u l a 60 INPUT "A('!(in = :A(I)
+ 0.055504109* X | 3 + won't work with n u m b e r s outside 7 0 PRINT "Af!(l)n = '!A(l)
0.0096181291 * X | 4 + 80 NEXT I
this r a n g e (for i n s t a n c e — the 9 0 G O SUB 3 4 0
0.0013333558* X j 5 + v a l u e ofSIN(x) is a l w a y s b e t w e e n 100 PRINT
0.0001540353 *Xf 6 + —1 a n d +1. a n d yet, e v e n if w e 110 PRINT FN HSIN+128)
0.000015252734 * X | 7 ... u s e d 256 terms, there w o u l d 120 FOR I = 1 TO N
{ I n c i d e n t a l l y — I d i d n ' t work a l w a y s b e s o m e l a r g e v a l u e of x 130 LET K = BCD
out the a b o v e n u m b e r s — I g o ! for w h i c h a j « x** was g r e a t e r 140 LET O = PEEK 2 3 6 2 7 + 256*PEEK 2 3 6 2 8
t h e m out of a b o o k . I a d v i s e y o u t h a n one. C l e a r l y this w o u l d b e 150 FOR C = 3 TO 1 STEP - 1
t h e w r o n g answer. You must 160 IF PEEK ( Q + C + 2 ) = 0 THEN NEXT C
to d o t h e same. M a t h e m a t i c i a n s
170 LET D = PEEK ( Q + 1 )
are, of course, w e l c o m e to work devise a m e a n s of e n s u r i n g t h a t
180 IF D < 8 1 O R D > 1 4 3 THEN G O TO 210
as m u c h out for themselves as p o l y n o m i a l a p p r o x i m a t i o n s to 190 LET D = D - 8 0 + 6 4 * C
they want). functions a r e a l w a y s f e d with 200 GOTO 240
How d o e s this h e l p us? Well — n u m b e r s in r a n g e —1 to +1). 210 LET D = D - 80
you see w e a r e still restricted to 220 IF D < 0 THEN LET D = D + 256
only using values of X b e t w e e n Instructions 230
240
PRINT FN H S ( 6 4 * C ) ;
minus o n e a n d plus o n e (note: it PRINT FN H$(D);
250
you w a n t to use n e g a t i v e Now — at last — w e n e e d to turn FOR J = O TO C
260 PRINT FN HSFPEEK ( Q + J + 2 ) ) ;
n u m b e r s o n t h e S p e c t r u m for the our a t t e n t i o n to e x a c t l y how the 270
a b o v e f o r m u l a you'll h a v e to use values for the 'A's a r e p a s s e d to NEXT J
280 PRINT
" X * X * X * X * X " i n s t e a d of "X|5". t h e "series" Instruction. They a r e 290 NEXT I
a n d so on). This is n o g o o d — not s p e c i f i e d e x p l i c i t l y — that 300 STOP
Ihe S p e c t r u m c a n c a l c u l a t e w o u l d b e t o o simple! Instead, w e 310 DEF FN H$(A) = FN K$(INT (A 16))
EXP(X) for all values of X, n o l Just h a v e to work out a n e w array, + FN K$(A—16*INT (A 16)) + " "
small ones. To f i n d t h e w a y w h i c h I'll c a l l BO. also 320 DEF FN KS|A) = " 0 1 2 3 4 5 6 7 8 9 A B C E D F " ( A + 1)
r o u n d this p r o b l e m we'll n e e d to d i m e n s i o n e d u p to N. It Is the 330 REM CALCULATES VALUES SUBROUTINE
d o a bit of maths. It's m o r e values of the 'Bs w h i c h a r e 340 D I M B(N)
difficult, b u t not, I h o p e , too p a s s e d to the Spectrum. 350 FOR A = 1 TO N
difficult. Therefore, our first task, k n o w i n g 360 FOR B = 1 + N—A TO N STEP 2
370 LET X = B—1
Firstly, n o t e that EXP(X) is the v a l u e of t h e A's. is to work
380 G O SUB 5 2 0
d e f i n e d as e t x , w h e r e e = out the values of the 'B's. The 390 LET J = Y
2.7182818 BASIC p r o g r a m of Figure O n e 400 LET X = IA * B —N—1),2
will d o this task for us. Don't 410 G O SUB 5 2 0
LET u = x / (LN 2) worry too m u c h a b o u t t h e 420 LET J = J.'Y
therefore: x = u * (LN 2) a l g o r i t h m used, just take my 430 LET X = ( B - A + N - 1 ) 2
therefore: e t x = e | ( u * ( L N 2)) w o r d for it — It works! (The 440 G O SUB 5 2 0
= (e|(LN 2))|u m a t h e m a t i c s r e q u i r e d to prove 450 LET J = J'Y
that it works is b e y o n d t h e s c o p e 460 LET J - J*21(1—B)
= 2|u 470 LET 8(A) - B[A) + J ' A ( B )
of this article). 480 NEXT B
Now. s i n c e u Is a f l o a t i n g p o i n t The p r o g r a m of Figure O n e 490 NEXT A
number, it must h a v e a n Integer doesn't print the "B's in d e c i m a l 500 RETURN
part, a n d a f r a c t i o n a l part. Thus: — Instead it prints t h e m In Ihe 510 REM LET Y = X FACTORIAL
form r e q u i r e d by the series 520 LET Y = 1
LET I = INT u instruction, c o n v e r t i n g t h e m first 530 FOR I = 1 TO X
LET 540 LET Y = Y'L
f =u - I to five b y t e form, a n d t h e n to t h e
550 NEXT I
therefore: u =i + f c o m p r e s s e d form used by the 560 RETURN
thus w e e|x == 22 tt uu "stk-data" Instruction. This form is
have = "2l tHi+f)
i+0 a l s o u s e d b y t h e "series" o
= (2j i) * ( 2 f f ) Instruction.
G a m m a Function
z
Now, s i n c e f Is a fraction,
b e t w e e n zero a n d one, w e can BASIC 5
use a p o l y n o m i a l to s i m u l a t e t h e
S
DEF FN C(X) • USt « a n » _ f o
function. The p o l y n o m i a l I g a v e
earlier m a y b e u s e d to
The nui»ber f o l l o w i n g the keyword USR should be the address of the label CAPKA_F}i
<
oc
i n the machine code p r o r r a * .
c a l c u l a t e 2 f. All w e n e e d to d o
now Is to m u l t i p l y the result b y
2 I (where i is a n Integer). We
c a n d o this s i m p l y b y a d d i n g i
KACHIKK COCK
O
O
IF CAW.A H3T 28 z
to the e x p o n e n t byte of t h e five-
C5 store (H5 contains x)
byte form of t h e n u m b e r . This is
the p r o c e d u r e u s e d by t h e ROM 51 duplicate OL
to c a l c u l a t e EXP for a l l values of 31 duplteste Q.
x. 27 int x.x.IHT X

Listing 2
0) subtract i,*-m X
51 duplIcste X.K-IWT x . x - i w r X
A? const h a l f X.X-IOT x.x-IST X, 1/2
10 CLS subtract x.x-lMT x,x-INT x - l / 2
05

o
20 FOR I » 1 TO 2 5 5
30 LET X = 1/12.5 57 gX zero x,x-INT 1/2?
40 LET Y = LN FN G (X) 0066 jump t rue ,C_HALf X
50 LET J = Y ' 4 + 1 0 111
60 IF J < 1 7 6 THEN PLOT L.J
89
E412RAAF0)
series 9
.00014011071 • • • £L
70 NEXT I 0 0

12 ZX Computing Monthly • November 1986


In other words. If you input the
S7C62C20O5 -.0015119561 'A's — w h i c h t e c h n i c a l l y a r e the
coefficients of a power series
EAODCEC145 .0086552512
(don't worry if y o u don't
EC6CJ556A5 -.OJ42J0555 u n d e r s t a n d the terms), t h e n the
ED5A25BJ7E 0.10651722 p r o g r a m will m i r a c u l o u s l y
ffB6}d4D75 -0.26211779 transform the n u m b e r s into a
roierj75?D 0.597464Q7 new set of n u m b e r s — those
used by the "series" instruction.
F0EA14CE2B -0.91457996
The p r o g r a m leaves no work to
FITFDCCBI? 1.9989256 y o u at all. The o u t p u t of the
p r o g r a m is the c o m p l e t e series
x,GA»?A(*f1-lirr x)
instruction (in hex) r e q u i r e d to
01 exchange GAWAfxil-IWT x ) , x e v a l u a t e the r e q u i r e d
?7 int GAKCA(x+1-IWr x),IWT x p o l y n o m i a l , i n c l u d i n g the initial
A1 const one 0*KKA{x+1-IVT X),IOT x11 "series" byte. For extra clarity,
y o u c o u l d , If y o u so desired,
0} subtract GAWvA(x+1-INT x),IHT(x)-1
a d d a n extra BASIC line a t 285
Jt duplicate CAvyA(* + i_iffr X),INT{X)-1,1OT(X)-I
PRINT,B(1) w h i c h w o u l d show you
JO e<j t e r o GA-'TAtx+l-l'Tr x ) , I N T ( x ) - 1 , T H T ( x ) . T the 'B's In d e c i m a l as well as in
0017 Ju.T.p true,C_1_T0_2 (Jump i f INT(x) - 1 , i e i f x la between hex.
one and two). If y o u n o w f e e d the bytes
p r i n t e d o n the screen into a
c a l c u l a t o r p r o g r a m , t h e n hey
GAMVA{X+1-INT x ) , I O T ( x ) - 1 presto — your f u n c t i o n will b e
51 duplicate GAWA(x+1-m x),IST(x)-1,rWT(x)-1 operational!
J6 I t tero CAKVA(x+1-TNT x ) , m ( x ) - 1 , l K T x<1
Juap true,G_LT_1 (Jump i f INT(x) < 1, i o i r x<l).
0017
Gamma
Tho f o l l o w i n g deals w i t h tho r c r a i n l n g ease, i e i f x i o greater than or equal t o two. We shall d e m o n s t r a t e this
p r o c e d u r e n o w by I n t r o d u c i n g a
5B end r a l e OAKyAtx+i-Twr x ) , r w r ( x ) - i b r a n d n e w f u n c t i o n to S p e c t r u m
CDW2D CALL fT_T0_A A l a IWT(*)-1
BASIC. It will b e referred to in
BASIC as FN GO, but the f u n c t i o n
47 LD B,A B:- IffT(x)-1
will b e d e f i n e d m a t h e m a t i c a l l y
RST 20 GAWA(x+1-IffT X) as the G A M M A FUNCTION. It Is
A1 const one CAKWl(x+1-m x ) , 1 very similar to the FACTORIAL
f u n c t i o n d e s c r i b e d last month. In
At each pana around the f o l l o w i n g loop, the topmost item on the c a l c u l a t o r otnek i o
that GAMMA(x) e q u a l s
FACTOR!AL(x-1) for a l l positive
assumed t o be the " product-»o-for", which I s h a l l r e f e r t o aa P^. At any staee t h i n integer values of x. but w h e r e a s
w i l l a c t u a l l y be the product x ( x - 1 ) ( * - ? ) . . . to I f r r ( x ) - 1 - B terrss. I n a d d i t i o n , memory FACTORIAL only works for
f i v e w i l l contain * - m ( x ) * B + 1 . integers. G A M M A works for all
GAMWk(x+1-IWr x),P f c n u m b e r s A g r a p h d r a w n of Y =
r e c a l l K5 GAWA(x+1-IWr x ) l P b , x - l » f r ( x ) + B + 1
GAMMA(x) will form a smooth
F,5 C_LOOP_1
c o n t i n u o u s curve, a n d for a l l
A! const one GAWA(x+l-lWT x),P l ) 1 x-Tfn , (x)4B+1,1 values of x It is true that
05 subtract G A m { x + i - m x),p. ,x-IOT(X)+B
D GAMMA(x+1) e q u a l s
C5 s t o r e K5 x*GAMMA(x).
04 multiply CA>rA(x+1-IOT * ) » P b _ , Furthermore, I shall g o
d j n r G_L00P_1 GAWA{x+1-T>TF x ) , P 0
through, in detail, the process by
55FA
w h i c h the f u n c t i o n is b e i n g
c r e a t e d . First of a l l w e n e e d a
At t h l o sta^e tho topirnst item on the c a l c u l a t o r olack i o x(x-l)(x-?)(x-5).,.K, p o l y n o m i a l . I c a m e across such
where K la leas than two (but greater than or equal t o one). a p o l y n o m i a l a p p r o x i m a t i o n in
the b o o k " M a t h e m a t i c a l
multiply
M e t h o d s in the Physical
04 f.AK*A(x)
Sciences" by M e r l e C Potter. The
50 end calc p o l y n o m i a l is only v a l i d if x is
C9 PET R ' l u r n w t t h c o r r e c t value on calc s t a c k . b e t w e e n 0 a n d 1. but is m o r e
a c c u r a t e if x Is near zero. For this
reason I h a v e c h o s e n only to
use values of x b e t w e e n 0 a n d
The f o l l o w i n g applies f o r the ease IJsT(x)=1. Note thai sinco INT{x)=1 i t follows Vi. The p o l y n o m i a l c a l c u l a t e s
that C A m ( * * i - m x) a c t u a l l y equals G A ^ A t x ) , and t h a t I \ T ( * } - 1 equals zero. the v a l u e of GAMMA(x+1) if x is
in this range. The p o l y n o m i a l is
as follows:
FT RST ?8 C,AKyA(x),0
02 G_1_T0_? delete GAt~A(x) GAMMA(x+1) - 1 - 0.577191652x
58 end calc + 0.988205891xJ - 0.897056937xJ
C9 RET Return w i t h correct value on calc stack. + 0.918206857x* - 0.756704078x4
+ 0.482199394X4 - 0.193527818x'
+ 0.035868343x*
The f o l l o w i n g deala w i t h the case where x i s less than one.

Now, as I h a v e said, I want to


EF RST 20 CAITA(x+1-m x),m{x)-1 m a k e sure that the p o l y n o m i a l is
1B C_LT_1 negate GA!~A<x+1-IVT x),1-INT x only u s e d for values of x
end calc
b e t w e e n 0 a n d V2, a n d yet I
58
want the G A M M A function, FN
CDD5JD CALL FP_T0_A As- 1-1HT x GO, to work for a l l values of x, so
• • • we must find a w a y a r o u n d this
problem.

12 ZX Computing Monthly • November 1986


/
Firstly, we c a n m a k e use of
Ihe rule GAMMA(x+1) e q u a l s
47 LD 3, A Bib 1-1 NT x
x'GAMMA(x). We c a n use the yy
rule r e p e a t e d l y (in a loop) to ROT 28 GAWAU+I-IJTT x)
reach any v a l u e ot x, so l o n g as A1 const on© cawaU+i-iot x),i
Ihe f r a c t i o n a l part (the part to
Ihe right of the d e c i m a l point) is At each pass around the f o l l o w i n g loop, the topnost iter, on the c a l c u l a t o r stack Sa
no greater t h a n a half. For these
r e m a i n i n g numbers we c a n use .mourned t o he the " p r o d u c t - s o - f a r " , which I a h u l l r e f e r t o aa At arty stage t h l a
a different m a t h e m a t i c a l rule; w i l l a c t u a l l y bo the product ( X + 1 ) ( X + 2 ) ( X + 3 ) , . . to 1-INT(x)-B terms. I n a d d i t i o n ,
for all x, GAMMA(x)*GAMMA(1 —x) aomory f i v e w i l l contain x*1-IMT(x)-B,
= PI/SIN(x*PI) CAWA(x+1-I*rr x ) , P b
E5 G_L00P_2 r e c a l l K5 CA(«A(x+1-IOT x),P B ,X+1-IWT(x)-B
The first step, then, is to
convert the p o l y n o m i a l into a J1 duplicate CAKKA(x*1-lOT x ) , P b l x + 1 - I N T ( x ) - B , x * 1 - I O T ( x ) - B
"series" instruction. To d o this we A1 const one CAKKA(x+1-I«r x ) , P b , x+1-INT(x)-B,x+1-Ifrr(x)-B, 1
simply run the BASIC p r o g r a m of OI- odd GAWA( X + 1 - W x ) , P b ,x+1-IOT(x)-B, x+?-INT( x)-B
Figure One. a n d input 9 CS s t o r e K5
(because there are nine terms),
02 delete CAKWA{X*1-IWT x),Pb,x+1-IWT(x)-B
a n d then input the n i n e
numbers (1. -0.577191652, a n d 04 multiply CAW>(x+i-ifrr x ) , p ,
b-1
so on). The p r o g r a m will print out J5FS djnz C_L00P_2 GAWA(x+1-HT x ) , P -
the required form of the "series
9" instructions, w h i c h you will At t h i a stage the topnoot item on the c a l c u l a t o r stack i n (x + 1 ) { x * 2 ) ( x * j ) . . . K ,
find i n c o r p o r a t e d into the m a i n
whore K l a leaa than one, but g r e a t e r than or equal t o " > r o .
machine c o d e program
a c c o m p a n y i n g this article. The
rest of It is just a h a r d slog, 05 divide CAWA(x)
isolating the various cases, a n d 58 end c&lc
d e a l i n g with t h e m a c c o r d i n g l y .
C9 RET Return w i t h c o r r e c t value on calc ataok.
Incidentally, a l t h o u g h I have
used a l o o p to i m p l e m e n t the F i n a l l y , note th.it number* such that x - I f r T ( x ) > l / 2 are d*-;iH w i t h a e f t t r ^ t e l y , f a r g r e a t e r
GAMMA(x+1) = x'GAMMA(x) rule, accuracy. Theae are number* such aa - 1 . 5 t o - 1 i - 0 . 5 t o 0 | 0.5 to 1; 1,5 t o ?| and ao
this Is not the only w a y of d o i n g
on,
things. Another way w o u l d h a v e
been to c a l l the G A M M A sub-
routine recursively (ie trom within EF BST 28 x,x-INT x
itself)- I d e c i d e d not to use this 02 CJttLF delete X
method b e c a u s e it w o u l d use dupllcale x,x
V
up more m e m o r y o n the
A1 const one x,x,1
calculator stack (an a d d i t i o n a l
five bytes for e a c h recursive 01 exchange *« 1, x
call), but if you fee! that that 03 subtract X.1-X
would not b e too m u c h of a 3B end calc X,1-X
d i s a d v a n t a g e you m i g h t like to
CD7??? CALL GAKM C a l l the CAhvA aubroutine r e c u r a l v e l y .
re-wrlte the routine using this
method. HT RST 28 x,GAK«A(1-x)
Finally, the proof ot the 01 exchange CAWA(l-x),x
p u d d i n g Is in the e a t i n g . The A3 const pi/2 CAefACl-xJ.x.Pl/?
final test is whether or not it 36 end calc
works. O n e w a y we c a n c h e c k is
34 IHC (HL) GAWA( 1-X),X,PI
to c a l c u l a t e G A M M A ( V J ) - the
answer should c o m e out to b e FT RST 26 ^
SQR(PI). The best w a y to c h e c k , C4 s t o r e YA (K4 contains P i )
however, is to plot a g r a p h . The 04 multiply GA.WMA( l-x),x*PI
function should p r o d u c e a IP sin CAYYA( 1-x),SIN(x»Pl)
smooth c o n t i n u o u s curve. The 0
z
04 nralt CAWA( 1 - x ) * S I N ( x * P l )
BASIC p r o g r a m of figure two will
plot such a g r a p h , a n d I will E4 r e c a l l YA GAWA( 1-x)*SIN(x*PI),PI
leave It to you to d r a w your o w n 01 exchange PI,GAPVA(1-X)»SIN(X»PI)
conclusions from it. 05 divide PI/(GAVWA(1-x)»sra(x*Pl)) 1
Well that's It from m e for this 3® end calc GAPKA(x) 5
series. We h a v e now c o v e r e d
<
C9 RET
everything the c a l c u l a t o r c a n
do (or have we?). We have
covered every single c a l c u l a t o r I t con be shown a l g o b r a i o l y t h a t Kl/(CAKyA(1-x)«SIN(x>»PI)) i a equal to CAM'A(x). The
instruction possible (or have proof of t h i a i n beyond the scope of t h i s a r t i c l e , however I have mde uae of t h l a
o
we?). This now c o n c l u d e s our
series. I h o p e you have e n j o y e d
reading it. G o o d p r o g r a m m i n g ,
f a c t to ensure maxima accuracy. I t aeans t h a t the " a e r i e a " I n s t r u c t i o n l a only evnr
pisaed values of x between zero artd h a l f . The. l a s t part of tho program l l n k n the o
and m a y the force b e with you. n&chlne cods t o the BASIC DtF FN G atatement.
(But — just a thought — w h a t
would h a p p e n if you used 2AOB5C CA WA_FN LD HL,(DEFADD) Point HL t o user-define f u n c t i o n record.
"invalid" c a l c u l a t o r codes?
codes b e t w e e n 3E a n d 7F? With
23 INC HL 2
code 43h for instance, control 23 INC HL HLI points t o 5 - b y t e form of 'x'. 3
could b e d i r e c t e d Into RAM, a n d CDB43J CALL STACKJFUM Place x on c a l c u l a t o r s t a c k . 0£
enable the use of user-defined CD77?? CALL GAWA Calculate GA^A(x).
calculator instructions — d e f i n e d C1 POP PC Delete STACK_BC address from machine stack.
In m a c h i n e c o d e of course.
C9 RET LU
Interesting? M a y b e o n e d a y the
saga m a y c o n t i n u e . . . But not a
for the moment). CO
59
ZX Computing Monthly • November 1986
ZX COMPUTING
FULL CREDIT FACILITIES FOR ACCESS A N D BARCLAYCARD

Lineage: 46p per w o r d . ( V A T inclusive)


Semi display: £9.50 per single c o l u m n centimetre +
^ v ^ j j g ^
01 - 437 0699
VAT. Ring for information on series bookings/
discounts ( m i n i m u m 2.5cm).
Send your requirements to:
All advertisements in this section must be prepaid
DUNCAN NEILSON
Advertisements are accepted subject to the terms and c o n d i t i o n s ASP Ltd., 1 Golden Square,
prinled on the advertisement rate card (available o n request). London W1

SOFTWARE c UTILITIES j
UTiWlTI'
WD Software SPECTRUM TAPE and
JOSS
FOR THE OL:
base £13
D R I V E T R A N S F E R UTILITIES
Forget lhal Ird-Oui lime-consuming »ynU«' Jirtl move Itw Cursor and press SPACE tor.iN TU8 — E S S E N T I A L for A L L Spectrum 48K or Plus owners —
your lileccmrnandi Cursor keys or your joystick allow you to access microdtrves luptoSl
and lloppy discs (as many as our interface allows! with up lo 150 IHes on each1 Scroll and our tape utility for backup and drive conversion
print d rrctonej COPY OELETE or PRINT any file spfeel TV or Monitor mode bclori- • Smpleopwakontorlast loader* accural* even il ow 4BK (tone and rate mouurer)
LOAOmg or RUNning any program You only uu the keyboard lout the DAT E Or label a • iKegmKid header reador. managvs h»adwt«s blocks
deuce wr*«n FOftMATImg E.iiv to use with F'non and other soltw.wr f-Jo jillv icons lo • Dull wmdeky loaders — oonwrw COMPLETELY to normal lor tape load (pfcs easy «ive tiaralm
team - JOSS will TELL you what .t j going to do1 Programmri sloolkil and mas* Copying nltnTPM)
priming utililn-s aKO supplied SpeCily microdrive-only. Microperiphcffll or CST- Plu* many orfwf totturm* — a unique product!
compatible due versions COST only £6.99 on tapo OR E7.99 on m/drlvo carl.
Ret QL7 base £7
(300 uselul OL references with ARCHIVE 2 search print program Too long lor |u»l one T R A N S F E R PACK 2 — FOR T A P E TO D R I V E T R A N S F E R
carlrtdge. SO If you ha*e RWQLS just pay 2 and t i l l ! media CCrSI to update P a c k a g e of p r o g r a m s i n c l u d i n g T U 8 , other utilities, a l l o w s drive
Mdv Extension Cable £5.50
transfer of m a n y p r o g r a m s
Eight inches long, alto* i addition of eiUa microd«»rt to your OL Twist it lo put Ihetr slots • Detata grvwi on Vamler ol 40 programs
lacing you • Managm wtuaty alldkfcyleaders Byteschoffor.'kpMor.hwidi* reader otc
FOR THE OL: SPECTRUM: BBC; ELECTRON Sum name of dfrs jysKm (e g tn'Omv. Ofiui doc, elc>
WD Morse Tutor base £4 ONLY £11.99 on tape OR £12.99 on m/drlve carl.
Written to leach amaleuts now used by professionals too' Absolute beginner. or INFORMATION SHEETS t l each (n> to Ho 1B iviitM) includes mam top ?C Ms — SAE lor M
st'etchmg your speed to 16 wpm. you won't find any thing with more helpful features Wti.it OVERSEAS add it EuiopeC2or.he<storMch UPDATE SERVO SAE lor detail I
else can olle« 100 random sentences as weU as all Ihe basics' Disc version unsuitable lot PROGRAMS CARRY OUT HONEY BACK GUARAMJCL (nol updstot)
BBC B-
FOR THE SPECTRUM:
WorDlinder (Mlcrodrlve/dlsc only) base £8 LERM, D E P T Z X , 11 B E A C O N S F I E L D C L O S E . W H I T E L E Y BAY,
For CHEATING at crosswords Finds m-ss-ng letters, solves, nnagtms 13.000 word T Y N E A N D WEAR NE25 9UW.
vocabulary, so too long to Share a cartridge 10-lettrf word ending in ATE' No problem
Tradewlnd base £3
Sailing trading strategy game with graphic surprises
Jersey Quest base £3
Tett adventure m time Background ol Jersey folklore from Slone Age lo Bergerac
For export:
OL hardware and software irom many sources Ask lot list quotation
O R D E R I N G A D D C O S T OF M E D I U M . P O S T A G E t l OUTSIOE EUROPE.
M d v or 5.25" f l o p p y £ 2 3.5" f l o p p y £4 C a s s e t t e (0
EASTMON ACCESSORIES
Payment Monitor/Disassembler
By ACCESS Xurocard MasterCard or STERLING (UK bank cheque* Eurocheques, drafts Disassemble a n d single step in R A M
or International GIRO) To R O M 4 IF 1 w i t h H A R D C O P Y S k i p Of S P E C T R U M RESET S W I T C H -
WD Sottwaro (ZX), Hilltop. St. Mary. Jersery. C.f. tel: (0534) 61392 o i o c u t o CALLS He* and character
Prevents d a m a g e to your
e n t r y B l o c k m o v e s a n d tills
Clear m a n u a l - s i m p l e c o m m a n d s computer when power plug pulled
S P E C T R U M -SB a n d S P E C T R U M - in and out Only £3,49 inclusive
£4.99 inclusive Cheque or P.O to Central Elect
MYLNHURSTELECTRONICS LTD romcs. St Andrews St. Greenock
M Eastern Way. Ponlrland. NE20 9RE
ZX 81 REVISITED! FaclSheelS. Tel: Ponlrland (0661) 24055 PA15 I H G Olher accessories
Software. A Z V C Club ctc Send Write tor free list.
SAE lo ACV. 1 Foxwell Square. PROOPS
Soulhtields. Northampton NN3
SAT T O T T E N H A M C O U R T RD
Z X 81 L E A R N I N G AID

ACCESSORIES
A casselle based g u i d e to p r o g r a m m -
i n g t h e S i n c l a i r 2 X 8 1 M i c r o c o m p u t e r II
QL/SPECTRUM UTILITIES! a l l o w s l e a r n i n g on (he m a c h i n e a n d
Wide range ol business/practical through the machinc The package
programs available SAE/IFtC lor c o m p r i s e s a 160-page m a n u a l a n d 8
cassettes There arcZOprograms. each >, *
details (state Micro) S O Micro- d e m o n s t r a t i n g a p a r t i c u l a r a s p e c t Ol KGB OUTPUT ? CONFUSING ISN'T IT?
systems (ZX) PO Box 24. HitChin, Z X 6 1 p r o g r a m m i n g , s p r e a d over 6
Tall) ol the pioNem sohrers We tvtve ihe cipencttcc and expertise
Herts cassettes T h e o t h e r 2 are b l a n k COMPOSITE VIDEO ?
praclice cassetes lo advise on ail aspects of computet display problems eg
GREEN SCHF.EN ? * RGB OUTPUT MODULE lor Spectrum 16 or 48K Much
TTL • ANALOGUE ? acclaimed — gry« monitor quality pictures — no dol crawl
P L E A S E S E N D £4.50 ( p l u s £1.75 c p )
ZX81/16K t C H I N G . Draws first * HfW * BRIGHT BOX - Allow:, lull use ol the blight lacihty on
three heragrams. prints results. COMP SYNC ? analogue input monitors and monitor-TV's to pioduce tull colour
Cheque £2 99 Eric Rosenbaum B R O T H E R S LIMITED BRIGHT ? palette Only loi SKCtium 128 E29 S5
PO 8ox 2155 Jenkintown Pa, 5? Tottenham Court Road. London W11' 00A Mjptrn (wo, a tttci C4 i w w n
19046 USA Postpaid Source JT^ Telephone 01 636 4420 TTT adopt electronic/ S*M SAf hx Our frt* Monk* fxl Shttl
Listing 1 It SURllKt CLOSE auUMUKI MIL EUU IS1 M* III 01 U« ?«»

WARNING NOTICE
A d v e r t i s e m e n t s p l a c e d in this m a g a z i n e are to b e in strict 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 l w h i c h
c o n d i t i o n s are available o n request) a n d o n t h e clear u n d e r s t a n d i n g that the advertiser w a r r a n t s that his
a d v e r t i s e m e n t ( s ) d o e s n o t i n f r i n g e a n y c o p y r i g h t o r c o n d i t i o n o f s a l e of a n y i n t e r e s t e d p a r t y i n t h e a d v e r t i s e d
product.
F u r t h e r , t h e a d v e r t i s e r i n d e m n i f i e s t h e p r o p r i e t o r s of t h i s m a g a z i n e i n r e s p e c t of c o s t s , d a m a g e s , o r a n y 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 l e g a l 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 of t h e s e t e r m s o r t h e s a i 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 of t h e a d v e r t i s e r b y t h e p r o p r i e t o r s
UTILITIES
LETTA-HEAD PLUS DUMPY 3.0 LIN-O-TYPE
Sm Hit noM »«tiHi« at* Spftt'um uliMy program to A« The 'ftp i itirp'. you WH tvf >*d tor yOU Spattn/tl' Add H i * to y t u »»i!ttn«rd pwit out any ttofctmcewa HiW I r * very test IK r.-mrClK and mentor p j t u x lor
6<--j}<\ fO p - T yctf own bmness A na)ione<y0 ..• ov*f freenajTpjwgra-' OdMPYrt astr«ndi*is> l e t i f ^ i o^rtty NLO .n a d w e 2i t j ' t i I n n ion > Spectrur It rt n u < 4 n g l , versatile pOMitJ and W )
Mtrrtlradv I K * f * l otters labeK & posters Create I V GIHtRAIOR icrMtesmer-ucIwiattde ideates'I art SpKtf^nnWjnel«ltafi< typr»"M ' . ^ i r t tcr «a and mow; i/*mted ' c u a code to t r asscec o '
OtVjn on w r e r It* rnjjrtct lorna! i (ret j i me • j . c , it rucy tc* you to us* i i program No need to rr rft^s filing n lorrs or w i l f g d o t nom trcm 4rv* u Of'it Sicports m o r t w i ot OPUS
copies you irtcrsund assents |ust Wtow ir* mout The ntptotnl • Fui on < ' t n WKSIWYG f H M . f DiSCOVCBt
• L tijry ot ?J ottereni tiyiti „-.: 'uOnj lomgn a'l/ubets version naw k • Itfary ol i i Aftereni «ontt rtljOng torrgn jrplaters • full iionlprocrlii/ ,•)» rOtOI
• Fail [»•, iriltonied't > -o j ' v s « . » : • » Wind h d r i p detnaMc '.Tjri A and ot bom c c U m A • Up !o s.1 Ion Is fna> Ue IT. irC rati l(* • mc^st p.f ivdocunrM uuttcoe*
• An, k'll-wl pwti .'I be Vicjlcd .i.TiSCd Of (rand line • f a i t conpued tent editoi tomoi>'yardaH!enew><m • Sr. ' 1 I-.' g: .. Ot*'- In .
• 8o« luxron (relates any areu a&Oi ol any ttvdress • ap'iorj' automate screen nu del ruination • Sagk a double tfmacv-\ and m t e n n n t • urt -vinj u x ia»f in 10k pafln
• &rapr>c-, draw arc c * t * plot t>:i lor logo desqn • H v s r - , I f * !•_< n ts ol ir* (Vf'.Jy • True pf«v ; • i -i '+.«rng aid i / I u'.'.'ta'- n • : t j t UJC lor fj'.y • r ,3 ccr\U.' • J<r lOSe
• load & ul* any SCflMNS ftcm another crograT • Select 1'in n> to 7 dtftereni p • o r - • load I4n tram any ucogrorkcc "Or ape Wa'a one • Awntiv , .;-,r-n»i»Tt5i»..T <V>)0PUS
• Prini heoe.-vji n a It* <r ot IK • ;"> • SeifCt Iron HI to 9 m C m ard 9 he>/its ot ou^Xjt • Ptn! !t»t » 'ftmj Of « H IT I Dure » f< nln • • :luOf tie i ir «- »• r r . , « , . e * t t . - t n t «•.
• .J. 1,(1 10 4 •? 1 Urt • P l l r ;,at» A »1Ut« or -JuCrd w f c j t l ' t ' f u l " • Dc«J>< dem !y pun! NtO * « r moM lonts • U;> -'.r v j r , -/vpn; f t
• S*<v» kly se*tts cassette la Del option • l£> to any position on the pupei • Pi«i|rtj •. nvlji <t<+«l M'ytkwd ule . nfi t»c "itv 96«e»(x»nttn (UMc< fiOWr,
• CMM* ot iJ Uncut | K ( f . nu'ly s^actfl Cf-j.ltlr • U x h n code u n iMpovioned • • PAV • Price t l SO • Coail» treallH (fl rwtn ol fluougr a
• P i « C9 00 • Vertej' v u l n i r i d , T c * iic/ t q («• •.#•.i loop
• Pice C& 50 • t « l t of im«uI Jl-r.', projrarnt 10 11 carting
• P | « t l j SO l l ' J I t rrK'OO -A W Opul l t r w |
All B u d w y io'fAarr p-ajratn <»ivr lp»n CttT^atiftie prmtrn (B(0»w S t * M l STtrma Centron<s etc | via Pncn art tor raise!tf, A include PAP • : - n Ei/ofe P c a » add t t SO tci « cart r i ^ t ! SO Opi^ frv
Mil(Jea»r Mirj.',i,m M »»» R ' M i * Ir'.••.»* t 7X LP- III j.k! Opt. ii:r<1ace ( 2 00 agrtjAde I pntaje UpgriSel I w p r . i » ' r - r appiciria'Tl 17 00

Bradway Software (ZX), 33, Conalan Avenue, Sheffield, S17 4PG

REPAIRS CLUBS

SINCLAIR REPAIRS
VIOEO INFORMATION
COMPUTER REPAIRS SCOTLAND'S No 1 Jo<n the Video Information C i g b and re-
K t art He t*p«ts. hjynj w i w l Sbcim rompukrs For home a n d p e t t o n a l computer repairs ceive information about alt aspects ot your
s « t rtraJxW! ol » * IX& Specially lasi Spectrum service! u d e o hobby Free t o c h n c a i advice video
exchange v e m c e d i s c o u n t ! o n video
SPECTRUM/PLUS m o o Dent «ste noney «N tit males iepar S « I M • Same day 'or mosr laull j Hardware nian»» etc Regular C l u b News-
KEYBOARD IB SO (OBCuVii atp-ce fluAO'nOuvir parti U s t f . • i hour if dartveretf penontUy Miller international Clear.n<i House racit-ty
INTERFACE/MICRODRIVE CI7.00 ncJi [ C j U / DAT <frt*4tctM ot tout %) Mden Ourpes • Open 6 day) a *e«* Membership U n i l Advertising Gills 'caf
S e w n guarantied to 3 m«ets • f/ee estimates slrc^eis «!CI lull Membership Card ALL
All prices nte fully inclusive ol p&p and
b a i t l j 75 i t parts • Upgrades Momtvanoi antf PS U i FREE Ju»1 R i n g
7J81 t t i S 0 « Wit • 3 m m warranty o n urorA d o n e 0898-100-430
VAT Send Cheque with computer only Iblfli-n [9 95 return Also B B C C B N ORIC a n d PERIPHERALS A n d Jusl I Listen to the Tape
unless power supply suspected Callers V c!ot»-rt [ i S 9 S r t parts
Welcome h k r t x e i 11 t!!75KWrti MICRO-SERV |40p per m m u t e pe.i« 20p o i l pea^i
Itamily services)
Mse 95 O e e r d y k e s View
f»00-wrt Wcittietd Industrial Area.
I.T. WESTERN ELECTRONICS BBC
Electron £1995 • pun C u m b e r n a u l d C.68 9 H N
Unit F2A & F3 )KVRR«IYEJ9ANSCNKIT tlSSS Scotland
CintUW StWHipkustf/tme Tel: C u m b e r n a u l d ( 0 2 3 « 7 ) 37110
Avontldl Enterprise Park
Newbroughlon Roil tr Spec* Tour Pnct Trade schools and c l u b discount given DISK DRIVES
Crt a lend wtti ctieque or P 0
Mdkslum. Wills TV. Srt*KO ol Canbndge l i d
Till: (0Z25| 705017 f i t r d i I Rud CarrtnJjc C&4 3NP SPECTRUM REPAIRS ZX-81 DISK DRIVE
I d 0271]1t}7l
CONTROLLER BOARD
We expertly repair Spectrums P o v t i f f u l LOOS supports basic programs
SPECTRUM REPAIRS
for CI7 inclusive ol parts and blocks and Arrays
£14.95 i n c l u s i v e o l l a b o u r parts j n d p&p. labour and relurn postage - Uses D o u b l e sided S V Diss Drive
- t80K bytes per disk
Fnsl, r e l i a b l e s e r v i c e b y q u a l i f i e d o n g s . Easy to use D O S Many other features
SINCLAIR .Ivorage repair 2 4 h r * 3 m o n t h s g u a r a n - Spectrums upgraded to 48K for
* Distributors Enquire
COMPUTER REPAIRS tee For help or advice ring £34 inc P&P All keyboard LARKEN ELECTRONICS
A l l m a c h i n e s d c i p . i t c n o d w i t h i n 72
H . S. C o m p u t e r S e r v i c e s . U n i t 2, faults cost only £12 RR.2. N A V A N . O N T A R I O £ y Q
The Orchard. Warton. Preston.
h o u o at rcccipt
L a n c a s h i r e PR4 18E Tel: (0772) 632686
R. A. Electronics, CANADA K4BIH9
S p i n t r u m £17.00 ZX-81 £ 1 2 . 5 0 133 London Road South, SHIPPING
S p c c t i u m 16 10 4SK u p g r j i d i ' E2S.00 Lowestoft, Suffolk.
line p.nts, VAT a n d return postaoo)
For a l a s l a n d r e l i a b l e s e r v i c e , s e n d
T«l: (0502) 66269.
FOR SALE
SINCLAIR SERVICE CENTRE
m a c h i n e , b r i e ) d e s c r i p t i o n o l l a u l l nut • Fully Cu.n.inteed Fast Repair Service
Cheque o i postal order to the experts • A p p r o i 24hr T u r n s r o u n o
• £15 av cost or l e n d machm<- w i l h £t 95
Capital Computer Services, (return p&p) lor free eslimlllo T o advertise y o u r repairs
Unll K2, C a r d i l l W o r k s h o p * . Lewis Rd. • Personal callors welcome FOR SALE ine year okJSpr cUum
E i s l M o o r s . C a r d l t l C F 1 SEC.
QUANTUM & spares service p h o n e plus, assorted soltware tape
Tel: ( 0 2 2 2 ) 461801 33 CITY A R C A D E . COVENTRY C V I 3HX
01-437 0699 recorder, interface 2 C90 00 Tel
T»l; (0203) 24832
Mark on (01» 740 8802

Lineage rate: 46p per word (VAT inc.)Minimum £7.20


Semi display: £9.50 per single column centimetre • VAT Minimum size 2cm No reimbursements lor cancellations
All ads must be pre-paid.
Write your advert in BLOCK CAPITALS in the grid below, ticking the section you wish it to appear under. INCLUDING
YOUR NAME AND ADDRESS IN THE WORD COUNT and send it to ZX COMPUTING, ADVERTISEMENT
DEPARTMENT, NO: 1 GOLDEN SQUARE, LONDON W1R 3AB.

REPAIRS SOFTWARE • UTILITIES FOR SALE • ACCESSORIES OTHERWISE PLEASE STATE

CLASSIFIED COUPON Name


ALL CLASSIFIED ADVERTISEMENTS MUST BE PRE-PAID. Address
THERE ARE NO REIMBURSEMENTS FOR CANCELLATIONS.
I unclose my Choquo'Posial Order lor £ for POST C O D E
insertions, made payable to Argus Specialist Publications.
(Delete as necessary) a DAYTIME TEL NO
PLEASE DEBIT MY ACCESS/OARCLAYCARD NO
Signature Date

£ FOR INSERTIONS EXPIRY


DATE . .

IF YOU DO NOT WISH TO CUT YOUR MAGAZINE, PHOTOCOPY THIS FORM


:q
.u
Ray Elder examines a combined
monitor/disassembler a n d a DIY poster maker.

EASTMON
MONITOR/DISASSEMBLER
Eastway Systems
£4.99
T h i s is an unusual a n d
unexpected program, a "stand
alone" Monitor/Disassembler.
Usually these are p r o d u c e d as a
support p r o g r a m tor a
company's assembler, a n d there
is also the fact that there are POSTER MACHINE
a l r e a d y several o n the market
tor the a g e i n g Spectrum.
Softcat Micros
With this in m i n d the p r o g r a m £5.95
must stand o n whether it is easy
to use a n d any special features ff*oster M a c h i n e is a versatile
it has p r o g r a m w h i c h allows you to
Taking the latler first, Eastmon print screen pictures using most
make a b i g thing a b o u t the fact of the p o p u l a r interfaces a n d a
that the DEFB's following a RST28 dot matrix printer.
c o m m a n d are correctly This picture c a n b e in o n e of
interpreted (the "use the eight p r e d e f i n e d sizes from
c a l c u l a t o r ' c o m m a n d as Toni 3.25x2.5 inches to 69x60 feet, or
Baker's fans will know). It also in sections to p r o d u c e really
corrrectly c o p e s with the h u g e c o p i e s if that's not e n o u g h
Interface 1 RST's — though it is likely to b e
You may or m a y not find this expensive in terms of printer
Important, its useful to know that ribbons!
it'll c o p e though, especially if Apart from working with most
you use them a lot. interfaces, ZXPRINT 3, KEMPSTON E
The p r o g r a m comes c o m p l e t e etc (we tried it with them a n d it
with a comprehensive, worked fine), the p r o g r a m
wordprocessed, dot matrix provides options to invert the
printed, fourteen p a g e m a n u a l . printed screen or a d d texture' in
It's all in there, but if your c o l o u r e d sections to the copy.
eyesight is not 20/20 then you You c a n n o t create screens or
may hove problems with the pictures with it. these have to b e
tightly p a c k e d text. g e n e r a t e d by another graphics
Yep, it's easy to use a n d all p a c k a g e such as their own
the features that you are likely to excellent ANIMATOR! In fact I
n e e d have b e e n included, full w o u l d g o so far as to suggest
printouts to any type of printer that it was d e v e l o p e d as
system a n d full details of the c o m p a n i o n to this p r o g r a m a n d
state of all registers at e a c h step. its more g e n e r a l a p p l i c a t i o n led
There is a c h o i c e of output, them to market it separately.
either a straightforward address, This is a simple a n d easy
code, m n e m o n i c print or a full p r o g r a m to use a n d includes
frontal, everything exposed, microdrive options, the only real
printout in minute detail. difficulty c a m e w h e n f i d d l i n g
It may b e late in arriving but with the e x p a n d e d sections of a
it certainly does not suffer in picture for the j u m b o prints but
c o m p a r i s o n with established this isn't really a j o b you're likely
existing monitors If you haven't to d o too often anyway.
got one a n d you spend a lot of Really it w o u l d b e more
time p r o g r a m m i n g in m a c h i n e a p p r o p r i a t e l y n a m e d ScreenS
c o d e then this is highly Printer, but I have no q u i b b l e s
r e c o m m e n d e d , it will certainly a n d if you n e e d the specialist
provide you with the information functions of flexible screenS
n e e d e d to track d o w n that printing then this is the best I
elusive bug; even in RST28 have seen (so far).
sections! NB Poster M a c h i n e is b e i n g
Contact: Mylnhurst Electronics s u p p l i e d free with Animator^ for
Ltd. 86 Eastern Way. Darras Hall. a short time for £9.95, a g o o d
Ponteland. Newcastle-upon-Tyne. buy.

90 ZX Computing Monthly • November 1986


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 Leicester Place.
Lid., Units I and 2, Conlon
Developments, Watery Lane, London WC2H 7NB.
Darwen, Lanes BBC3 2ET. Tel: 01-439 0 6 6 6
^SPECTRUM AMSTRAD
Imagine Software (1984) Limited
6CentralStreet • Manchester M2 5NS
SPECTRUM Tel: 061 8343939 Telex: 669977 COMMODORE 64
t

You might also like