ZXTape! 0Created with Ramsoft MakeTZXcover ZPF \ 10 `1:1:1:1:5:4:6:2:1:=""5 a$=:0: )9990':0:7:0:  a=1 :a*100d:#1;0,0;6;" Page ";a;" ENTER=Next SPACE=Back":a=2#1;1,0;" PRESS C TO COPY TO ZX PRINTER" (""40( 2 5 <)a$=" "a>1a=a-1:30 F0a$=13 a<12 a=a+1:30 Ka$="c"a$="C":40( PX(a$="l"a$="L")a=12 1:1::10 ,8;"START THE TAPE":"" Z 20 d'" This magazine is composed of a number of programs that chain together, so that each one will LOAD the next when you are ready for it." n\'" Some of the programs on the tape may not be suitable for use with microdrives. " x'" Any particular program can be LOADed using its file name listed on the contents page, but to 'read' everything in the magazine, it is easier to use the chaining." N'6'" Press ENTER to go to next page"'" Press SPACE to go back a page"  Ƞ'" SPECTRUM COMPUTING - ISSUE 13 MARCH/APRIL 1985  APS LTD 222 REGENT ST. LONDON WIR 7DB TELEPHONE 01-439 0666 EDITOR - IOLO DAVIDSON" '" CONTENTS - SIDE ONE"''" Editorial next page Slippery Slopes ""ski run"" New Software ""reviews"" It's certainly a ""puzzle"" The Wizard Goofs ""error""" ܨ'" CONTENTS - SIDE TWO"''" Snake Race (48K) ""snaker"" Famous Animated ""cartoon"" More New Software ""reviews"" Guest Hacker ""forthsim"""  ,$''''''''''" MARKET FARCES" J '" Christmas was an incredible disappointment this year. Not for me, and not, I hope, for you, but for the gentlemen who are trying to sell computers to an increasingly wary public." '" My first ever computer came as a box of bits that had to be soldered together. There are always a few thousand people who will rise to this sort of challenge, but if you want to sell millions of computers, you need millions of customers." '" What used to be an enthusiasts market, where struggling with a cranky product was half the fun, is now a consumer jungle."  '" When a consumer buys something, it has to work straight out of the box, and keep working. He doesn't want to be told that it needs a cold carton of milk set on it, or that he has to fiddle repeatedly with the volume control." c'" You and I don't mind. We are hardened enthusiasts. But an awful lot of potential buyers of computers were put off this Christmas because they had heard that it was possible to buy the 'wrong' computer, one that is about to be dumped by its maker, or one with scarce or expensive software, or one that arrives late, with bugs."  X'" I always tell such waverers to buy a Spectrum. Then if they find that they haven't the required enthusiasm, at least they find out real cheap." b'" That still leaves maybe 90% of the population that are just not interested in buying any computer as long as they hear the tales of teething troubles and '28 day' deliveries." l'" And why should they? Would you buy a television that needed a cold carton of milk set on one corner, took six to eight months to arrive, and might be impossible to get programs on in a years time?"  #'" You can now buy an electronic typewriter for under `200, and the keys don't fall off. You can get a `50 black and white telly that will last a decade. Add a few chips and a disk drive and you have the bits for a small business computer at a retail price under `400." C'" Needless to say, that kind of computer now sells for more than twice that figure. I do not see why. I mean, I know why they charge that much, but I don't know why people will pay that much, and I think the number of people who will buy at this price is limited. They are not selling to consumers."   '" If the computer is to become a real consumer product, two in every home, as the pundits predict, then what it really needs is not more technical advances, speech, video disks and artificial intelligence, but a period of consolidation." *B'" When a computer is as reliable and cheap as a video recorder, and roughly as easy to use, coming complete with disks, printer, and modem, then folks will buy them for writing letters and cataloging their butterfly collections. Until then the home computer will sell mostly to nuts like us." H &''''''''''" A LOAD OF TROUBLE"  '" We have been making a lot of fuss about dodgy 'fastload' routines used on some of the latest software, and not every software house has accepted this criticism with good grace." '" In order to make our position quite clear, we are instituting the 'AAAAAAARRRRRGH' award for unreadable software, to be given to software houses whose tapes totally defeat us. It is in the nature of the award that it must be collected in person." '" This issue's winner is BEYOND for Doomdark's Revenge. If the copy sent us for review won't LOAD, what are the others like?"  L" Errata"''" We don't do it as often as the paper magazines, but a few problems crept into our last issue."''" One is a simple bug in the JSW editor program which is due to my fiddling with it. Change the OR in line 9630 to AND." V%'" The other thing is that the 'defence' game will start a microdrive running and maybe mess up anything stored on it. This is a side effect of an unfortunate choice of OUT command. Naturally you will have backed up your microdrive cartridges, preferably on tape." t K''''''''" PRESS L TO LOAD THE NEXT FILE"''" Or any other to read again."  #( '1:1:1::9 :21,0;" STOP THE TAPE AND PRESS A KEY ":(23637U\+256*23638V\+6): '*U\@@>2\:@ H >2@>.g=(+͵v:\(>!XX#= = *@##"@@F#NAR0!X> 0:@w6 = !"@ ```````````````````````````````````````````````````````````````...................................................... '"cover"1 aA ski run ffh.      S K I - R U N    by Ben Lewis    1984     @300000u:10 ,9 ;"STILL LOADING":""16384@ Q0:7:0:0:score=0:skill=1:hi=2000 x9 ,8;1;" STOP THE TAPE ":i=130:.02{# =,30:.02{# =,40(:i:9100# 6000p  MAIN LOOP  >0,0;5;0;"SCORE : ";score;" " Cx,6;d$;0,0;0;5;"SCORE : ";score t=2244000 (t-5)/10 =((t-5)/10 )t>20((x-1,6)58:ū(x+1,6)58:)3000 Op=(*12 )+9 :(t/17)=(t/17)p,31;1;"" Vp=(*12 )+9 :l=302615v:(t/skill)=(t/skill)p,31;""  p=(*10 )+9 :(t/10 )=(t/10 )t<200p,31;"";p+1,31;" ";p+2,31;""  t=20012 ,31;2;"";13 ,31;"";14,31;"";15,31;"";16,31;"" c$= d$="":i=0 c$="q"d$="":i=-1 c$="a"d$="":i=1 $x,6;" " . l=30101u:l=302615v 8*x=x+i:(x,6)5682000 B@t=t+1:score=score+5:d$=""score=score+10 L 1010   CRASH  x=21x=20 x=8x=9 x,6;"":2300:x,6;" ":2200:x,6;"":2300:x,6;" ":2200:x,6;"":2300:x,6;" ":2200:x,6;"":2300:x,6;" ":2200:x,6;"" &16,13 ;" CRASH " _f=5-5-1:i=3-2-1:.02{# =,f*2+i*3:i:f  6000p "l=30101u:l=302615v: "f=110 :1:f:  DISQUALIFIED  ,16,9 ;" DISQUALIFIED " _f=5-5-1:i=3-2-1:.02{# =,f*2+i*3:i:f 6000p  FINISH  t16,12 ;" HOORAY ":f=-28:i=-23:.02{# =,f*2+i*3:i:f  6000p o p START  qscore>hihi=score rz0,0;5;0;"SCORE : ";score;0,17;"HI-SCORE : ";hi;1,0;"SKILL : ";skill zXf=9 20:f,0;0;7;" ":f -10 ,9 ;" S K I - R U N " 13 ,3;"PRESS ENTER TO CONQUER THE PISTE";17,3;" 'i' TO SEE INSTRUCTIONS,";19,3;"OR 'q' TO QUIT THIS PROGRAM" I$=:I$="i"7000X =i$="q"32599W:10 ,8;"START THE TAPE":"" i$13 6040  9000(#  1000 X INSTRUCTIONS  bGf=11 20:f,0;" ":f l12 ,0;" Guide the skier down the piste through the red flag poles.  Q - UP A - DOWN  Look out for the moguls and the occasional rock or you might fall !" vM19,0;"Press 'c' to change skill level or 'r' to return" ""7040 i$=:i$=""7042 ;i$="c"skill=skill+1:skill=4skill=1 ,1,0;5;"SKILL : ";skill i$="r"6000p  7040 ? #( INITIALISE  #21x=15: t=0: i=0 #4d$="": score=0 #7Xf=9 20:f,0;0;7;" ":f ##+w# !P>#+w#`! Y >8#+w#!P~#+w#* #Xi=23637U\+256*23638V\+6:f=0167:"a"+f,(i+f):f: #  00!1R0& pȿ@ 1J 000 0@@```PPPPHHhdddTRRRII ¢¾p 288Hz8H P TU-@@@@3* '4"":"ski run"4:""32768,6912  f 0`p ??_| p߿_@?????>O}?? ???8???? c7<]??>|?+\p|p~?~?????a;x}~_~0fwBDDDBDDDDBDDBD?IUII IUIQIUIUQQIQI I??TIHTTTIHIHHTHIHIHTITTTIH???????fffffnnf?????????>??????????DDDDDHHD??DDDDDHHD???@@w|_}@{~~#6xz #!=[}`wqpqp@׾sw߽#?}_{nw[{ٌp @wA߿{0p`_wv?c>pz?9x08`<p1x߽{wo9'c۟={{~>=9u?xxxC"qf{_{{!f<{{߻ApGw~Ç{{#f}}w=߿////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<8888888888888888888888888888888888888888888888888888888888888888899999999999999999999999999999888:::::::::::::::::::::::::::::888;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<================================8888888888888=888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<R;;_"\`X:\GOxƀO>@0q#= >2\v!͵v!͵:\( >8DDDDD8x"D"D"x>@"@"@   THEN PRESS ANY KEY  # #  <@@c]\\\\\cc\ccc$\6xOX![!@P!!{(Gxp[ K SR P$ٰ"2":"MATCH DAY""23296","9345" 7h="d":a=h::#ç;ٰ"7";h;"PRESS A KEY":"23310" ç:ç:ٰ"6"::a #;h;"Page ";a/h:ç ="s"ç:"23296":"20" #x=:x<"4"x>"0"a=(x-"0")*h # x>"3"a=h (5x="q""32767":"10","8";"START THE TAPE":"" 2h dp"8",;" MATCH DAY from Ocean"''h;" 48K Only"''" Press 2 or 3 for pages or"'" Hold S for - Q to Quit": R"As I write, the soccer fields ofBritain are covered with snow, asituation which I could happily put up with the year round. But some people like football, and as an alternative to the recent monopolisation of our screens bydarts and snooker, this game at least has the advantage of giv- ing the sports fan's fingers some exercise." E'"The graphics are as good as you will get on the Spectrum, given the subject matter, with a 3D playing field that scrolls from side to side. You control only one of your players at any one time, the one closest to the ball usually, but it is often hard to tell which, especially when shifting between players.": ,"There are endless options, whichallow you to change skill level,team names or colours, even the length of the game. You can playsingle games against a friend orthe computer, or a three stage championship with up to eight players having their own teams." 6 '"The controls are very flexible, with a definable keyboard and usual joysticks. This is one game that can use both joystickson the Sinclair Interface 2. Setpieces like corner-kicks really need a joystick, or three well- coordinated key-presses for fullcontrol." @g'"Overall a fine implementation ofa game best played outdoors, butthe trickloader is a major pain.": MATCH DAY $[23296[ 9345$ [$ C#ddoors, butthe trickloader is a major pain.": 2066͆66͆6͆66`VPmPlVPmPmP`VPmP:9:9:9:9:9:9:9ههه0q 0q10q10q10q10q 0q16666666 ULƱPƵUPƱPƵUPƵULƱPƵ9QƎ9UF9Qƌ9UF9UF9QƎ9UF8V98V98V98V98V98V98V9feD fa feD fa fafeD fauFqƎuFqƎqƎuFqƎ@ X6U X6U X6U X6U X6U X6U X6U6*66666*668Ǝ88ƪ888Ǝ81&11&11&11&11&11&11&16ÎêêêêÎêba b a a ba "6!"6!"6!"6!"6!"6!"6!?ꖯ(ꎯ(ꎯ(ꎯ(ꎯ(ꖯ(ꎯ(A6A6A6A6A6A6A6xv{xv{xv{xv{xv{xv{xv{`6:6:6:6:6:6:6:465465465465465465465Zpv}Zpv}Zpv}Zpv}Zpv}Zpv}Zpv}0g\} HR P:`` ` p`` {= hk `:``6` ۀ0`5N= pr `:000 @0<  = :0`\0  s 0?r@+9  0_`1p?v?@+& 0@*?`!?``*@> @0 $?0 wW? * `  ( }@*`=?x@;``=? ;0 P`̾p9e$<;0 -,,,mYm*x;`, H,ay**``` h >`, ay@*@;0@0@ p ,'0 m[m@*00  >p9YeGGGGGGGGGGGGWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggffgggggggggggggggggggfffggggggggffgggggggggggggggggggfffggggggggffgggggggggggfffgggggfffgggggggggggggggggggggfffgggggfffggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggffggggggfggggggggggggggggggggggfffggggggffffgggggggggggggggggggfffggggggfffggggggggggggggggggggfgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggfffggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggOCAULDRON $[q $!d@>R;;_"\`X:\GOxƀO>@0q#= >2\v!͵v!͵:\( >8DDDDD8x"D"D"x>@"@"@   THEN PRESS ANY KEY 0# #  <@rc]\\\\\sctc\vccc$\6x'0^X![!@P!!{(Gxp[ K SR P#ٰ"2":"CAULDRON""23296","9345" 7h="d":a=h::#ç;ٰ"7";h;"PRESS A KEY":"23310" ç:ç:ٰ"6"::a #;h;"Page ";a/h:ç ="s"ç:"23296":"20" #x=:x<"4"x>"0"a=(x-"0")*h # x>"3"a=h (5x="q""32767":"10","8";"START THE TAPE":"" 2h dz"8",ç;"WITCH'S CAULDRON from Mikro-Gen"''h;" 48K Only"''" Press 2 or 3 for pages or"'" Hold S for - Q to Quit": "The witch has turned you into a toad, and your task in this graphic adventure is to regain human shape. There apparently are about a hundred locations, most of them illustrated with a hi-res picture." '"The program claims a vocabulary of 300 words and a possible 700 different kinds of action that you can perform in your search. Naturally, most of these many options have remained unexploredby me due to circumstances be- yond my control." ܧ'"I immediately fell foul of a redherring thinly concealed in the first room. I shant reveal it toyou though, as I would not wish to take the fine edge off of the": ,Z"embarrassment you will feel whenyou fall for it yourself."''"Fairly advanced sentence struc- ture of the 'kill the door with the bucket' variety can be used.The cassette inlay lists a few useful words, but nowhere does it hint that you should 'Woo theprincess with the pucker', whichis my guess at the solution for this particular scenario." 6' "Adventure purists are supposed to prefer pure text and say thatgraphics get in the way. These are kinda cute though, and they don't slow things up much, so non-sticklers should like them."''"Mikro-Gen use 'Hyperload', so ifit won't load it's their fault.": CAULDRON $[23296[ 9345$ [$ C#@dd to prefer pure text and say thatgraphics get in the way. These are kinda cute though, and they don't slow things up much, so non-sticklers should like them."''"Mikro-Gen use 'Hyperload,<,,?, 0,,@~~~|@pw,,,>|, w<<???w@@{8ww,,,~~, ww@@8w@w,,,|>,?w~~ͻ?w@w@w ,, ,|8>,?w ~~[ wp ? w< ͻxf0`0`f0fl```ff`f00f00   UUUUUU?w << [0`0`0`x`0`8```````0x0`0x""""""wx j0`0l0l `0`llll|`0`l`0 00`0 086wO 5L0xx|`x08xl08x|`0xx`x88x8x `|xxx0xx`8|xx`00xxx|0x`x00??{w? `x||0 |`|||~0`0 `0`0|||lxxx`xx|`x0f8`xx`80``0l0`0`8`080l8|0||`|xxx~0||~0xxx|8BBBBBBBBBBBBBDDBBWBBBBBBBWBBDBBWBBVFVBBWBBDBBWBBFFFBBWBBDBBWBBFFFBBWBBDBBBBCCCCCCCCCCCBDGBBBBBCCXXCCBBDDDGBBBBBCXXCBBDDDBBBBBCBCBBDDGDDDDBBCBBBBCBBFFFFDDDFFBBCBPBBCBBFFDDGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGdSTARSTRIKE$[{ $!d@>R;;_"\`X:\GOxƀO>@0q#= >2\v!͵v!͵:\( >8DDDDD8x"D"D"x>@"@"@   THEN PRESS ANY KEY 0# #  <@dwc]\\\\\xcyc\{ccc$\dx LX![!@P!!{(Gxp[ K SR P%ٰ"2":"STARSTRIKE""23296","9345" 7h="d":a=h::#ç;ٰ"7";h;"PRESS A KEY":"23310" ç:ç:ٰ"6"::a #;h;"Page ";a/h:ç ="s"ç:"23296":"20" #x=:x<"4"x>"0"a=(x-"0")*h # x>"3"a=h (5x="q""32767":"10","8";"START THE TAPE":"" 2h dr"8",;"STARSTRIKE from Realtime"''h;" 48K Only"''" Press 2 or 3 for pages or"'" Hold S for - Q to Quit": "The ultimate scenario for space zapper games might well be the attack on the death star in thatwell known movie, and that idea is the basis for this game, eventhough the publishers apparentlyhaven't paid the enormous fee for the right to use the Name." '"Of course not everyone likes zapgames with all those nasty over-tones of death, destruction, andxenophobia, but what you have toremember is that the enemy are evil, slimy aliens. Killing is too good for them." ܢ'"Once you've sorted out the moraldilemma, you can blast your way through four stages of attack, finishing off with the famous bombing run on the reactor.": ,"The action is very fast, with four levels of difficulty, and the wire-frame alien ships and architecture grow as they come at you, giving an excellent 3D effect. You direct your fire bymoving the cursor, and your shipfollows after it, horizon tilt- ing as you turn." 6'"Kempston, Interface 2, and cur- sor joysticks are supported, andthis sort of game really demandssticks. The keyboard controls give you some choice but they are not definable." @'"It may not break any new ground in terms of concept, but it is well done of its kind. If the shoot-em-up scene still has a life left, this one will score.": STARSTRIKE$[23296[ 9345$ [$ bC#@9d Press 2 or 3 for pages or"'" Hold S for - Q to Quit": 0 a life left, this one will score.": 2 @ @@ 4P@ <0 @  @  4`@ <`@  ` 8@4`` < `  @@4` @4`0 @< @  4` 4`( <@  !` $ <@@@`B 4P0 4 < `@@ B`@4P 4 <<<``( 00  @X@@<(@0 H  @ @<DPH$  0$!! <$@  4,IB`BBB` <` `04,0I0@ 8!!<   " 0 $ H$8< @@ @B@@0 H@ @8<  ` @  ; ?w @@B|@RRRBRR@@R@N "@((N@r@3 (P(N(b@((N @@P2L;?8@@B|@RRRBRR@R@]wupJ!@"@((B@3 (P(@(R@(2(H G<<<|~<<<<<<# r@BBBD@bbbBbbHOr@Q%%GNC@r@((NPB@< (P(L ?(R@(JE(N??#{<<<|~<<<<<<;B@BBBD@bbbBbbH_R@YJ'%tJG@@((@PB@< ((J ?(R@JUBH1`@BBB@FF(FBFFr@<<<<<<H_ R@QJ%%JOO@r@0< ((N?PB@((L b@JUN(0p@BBB@FF(FBFFw ?@<<<<<<H_ @ܝ(J%'p(@G@B@0< ((HPB@((J @D2@(?$$݀0 @?<@BB|JJJR;;_"\`X:\GOxƀO>@0q#= >2\v!͵v!͵:\( >8DDDDD8x"D"D"x>@"@"@   THEN PRESS ANY KEY 0# #  <@(cc\\\\\cc\ccc$\(x#QX![!@P!!{(Gxp[ K SR P#ٰ"2":"BLUE MAX""23296","9345" 7h="d":a=h::#ç;ٰ"7";h;"PRESS A KEY":"23310" ç:ç:ٰ"6"::a #;h;"Page ";a/h:ç ="s"ç:"23296":"20" #x=:x<"4"x>"0"a=(x-"0")*h # x>"3"a=h (4x="q""32599":"10","8";"START THE TAPE":"" 2h dr"8",;" BLUE MAX from U.S. GOLD"''h;" 48K Only"''" Press 2 or 3 for pages or"'" Hold S for - Q to Quit": U"Something happened to the game'sinstructions in the translation from the American. Nothing too serious, but a few errors of fact have crept in. There is supposed to be a pause feature, for instance, but I couldn't getit to work. Also I suspect that all references to 'flashing' targets do not apply to the Spectrum version." 9'"The program was originally writ-ten for one of those primitive American 6502 based machines, and re-coded for the Spectrum byOcean, and as a consequence it suffers from Ocean's 'fast' loadroutine. We needed our variable speed cassette machine to load our copy, as normal speed just wouldn't pull it in."  ,"You have to take off from an airstrip, fly about bombing and strafing, and land again before running out of fuel. While you are airborne, the 3D landscape scrolls diagonally, and you can guage your height by the shadow of your plane on the ground." 6'"Certain targets of particular importance are marked with a (flashing?) bullseye. Maybe I didn't get that far. I remained a 'kamikazee trainee', try as I might. You can sometimes lose a life unfairly, like being bombedbefore take-off, but that's the way war works." @x' "Kempston, Interface 2, and cur- sor type joysticks are supportedand the keyboard is definable.": BLUE MAX $[23296[ 9345$ [$ C#PE":"" 0n type joysticks are supportedand the keyboard is definable.": 1ff, but that's the way war works." 0O '''??????##??'?ć_'?????,,??$$a{?T?TT?* ** ??T*?, O_ UUUWs OOO3'#?UUWUUţW#3ć__ććWć#'UU\UU\@''<<<<<'?,?,???<<<<<?,v?$UUp$??UUp?<<<<~c`>~~c?~|~>>~c~?~>?~>~>>ć>`~c` w?<~>w?><<<<<'w`s`c`` c`gp~pg``ggggwgpgpswg`ggg<<<<<c`?>|c|` >|~g>~||c>kk~c~>k>`c~|k>kk~<<<<<```w`` c`gks```g`ssgwkgssw|`s`ss<<<<<<*?c``c?`~>c?>n?c`>>~`~c~`|>>~c~~~>~g>>>         puzzle  H9990':best=1000:u$="7":d$="6":l$="5":r$="8":100d ""10 i$=:i$=""11 i$=" "9000(# 3438n : d9 ::5000 nq18,0;"Press A Direction Key To Move A Letter Into The Empty Space."''" Program By Iolo Davidson"  MAIN LOOP  gets err=1 Qi$=u$y<4a$(y,x)=a$(y+1,x):y=y+1:a$(y,x)=" ":err=0 Qi$=d$y>1a$(y,x)=a$(y-1,x):y=y-1:a$(y,x)=" ":err=0 Qi$=l$x<4a$(y,x)=a$(y,x+1):x=x+1:a$(y,x)=" ":err=0 Qi$=r$x>1a$(y,x)=a$(y,x-1):x=x-1:a$(y,x)=" ":err=0 eerr.02{# =,30:400:FLAGmove=move+1:14,19;" MOVE ";move;" " flag=1 err.5,-20 "Pa$(1)+a$(2)+a$(3)+a$(4)="ABCDEFGHIJKLMNO "8000@ , 200   PRINT  Yi=-111:yy*3+i,xx*3-1;1;2;" ":i +8;yy*3,xx*3;a$(yy,xx) #8;y*3,x*3;" " [i=-11:y*3+i,x*3-1;1;0;" ":i:xx=x:yy=y   INITIALISE  {a$(4,4):a$(1)="ABCD":a$(2)="EFGH":a$(3)="IJKL":a$(4)="MNO ":x=4:y=4 *print=400:err=0:xx=x:yy=y 223658j\,8:move=0:gets=10 7:8,167:4;111o,0:4;0,-111o:4;-111o,0:4;0,111o >i=1688X24:j=15987W-24 Oi,j:23,0:0,-23:-23,0:0,23 j:i Ji=14:j=14:i*3,j*3;a$(i,j):j:i  Di=213 :2;1;i,2;" ":i 5900 :print #0;"The Object Of This Puzzle Is To"'"Restore Alphabetical Order In"'"The Fewest Possible Moves."''"Press A Key To Scramble The Letters." 2gets P\#0;"Moves Are Made By Repeatedly Sliding A Letter Into The Empty Space.";0  RANDOMISE  $flag=1::h=120 5x>1i$=r$:220:>.35320 5y<4i$=u$:220:>.35325 5x<4i$=l$:220:>.35330 5y>1i$=d$:220:>.35335 h:flag=0:3438n  5900  "C#0;"Press P To Play Or K To RedefineThe Keyboard Controls." ,gets 6 i$="P" @i$"K"5410" |B#0;"Press Your Key Choice For UP":gets:u$=i$:5900  D#0;"Press Your Key Choice For DOWN":gets:d$=i$:5900  D#0;"Press Your Key Choice For LEFT":gets:l$=i$:5900  E#0;"Press Your Key Choice For RIGHT":gets:r$=i$:5900  u$=d$u$=l$u$=r$d$=l$d$=r$l$=r$#0;"It's Impossible To Make AnythingFoolproof Because Fools Are So Ingenious. Press A Key.":gets:5500|  5410"  2,18;"Control Keys";4,20;"UP= ";u$;6,20;"DOWN= ";d$;8,20;"LEFT= ";l$;10 ,20;"RIGHT= ";r$;12 ,18;"QUIT= SPACE": p @  WIN  J 3438n T0#0;" Puzzle Completed In ";move;" Moves" h:bestmove#0'" Best Score Is ";best;" Moves"''' rRbest>move#0'" ";1;" Your Score Is The New Best! "'''':best=move i=115:j=36:j:.02{# =,j*10 :j:j=52-1:j:.02{# =,j*10 :j:i:1  500 #(J:''''''" PRESS P TO PLAY AGAIN"''''" PRESS L TO LOAD NEXT SECTION" #2 i$="":gets #<i$="P"100d #Fi$"L"90102# #Z?:23658j\,0:10 ,8;"START THE TAPE":"" 'Y缧:ٰ"2":ڼ::"21","10";ٰ"9";"PRESS A KEY": ("23637"+"256"*"23638"+"6"): 'R;;_"\`X:\GOxƀO>@0q#= >2\v!͵v!͵:\( >8DDDDD8x"D"D"x>@"@"@.. ':"puzzle"1 error d !H B*S\&[\[\*=\s#r;;s=\2D\=2:\!Þ.......... ~.01z# =,40(:errline: BREAK OR ERROR ALWAYS JUMPS TO LINE ONE- REDIRECT BY CHANGING THE errline VARIABLE  A=23635S\+256*23636T\+6:A:: CALLS M/CODE IN LINE 0 WHICH RELOCATES ITSELF ABOVE RAMTOP AND DIRECTS PROGRAM TO LINE 1 ON ERROR OR BREAK  `A=23613=\+256*23614>\:A,3:A+1,19:: RE-ENABLES BREAK  z23627K\,23637U\:23628L\,23638V\::  WATCH OUT!   THIS LINE DESTROYS THE REST OF THE PROGRAM  d'9990':6:0:0 n_ramtop=23730\+256*23731\-25:ramtop: MAKE ROOM FOR CODE ROUTINE  x-errline=3:2: SET UP CODE  ;errline=200::''''''''" WIZARD PRANG PRESENTS" #'''" The ON-ERROR-GOTO Utility" 9000(# ,:errline=300,:"This program is protected by WizPrang's patent BREAK nobbler. Itnot only won't let you break in,but it won't stop for any errorsor bugs either."''"Why not try the break key now?" 6'"An error or the break key will cause the program to GOTO line 1where it can be directed to any line you like, so you can make the program start over when the break key is pressed, or start at any other line you like." @'"By using a variable in the line 1 GOTO statement, you can changewhere the program jumps to on BREAK by changing the variable anywhere in the program." J 9000(# :errline=400:"I have now changed the variable so that BREAK will jump to this page instead of the last one. Try it." '"You can easily incorporate this routine into your own programs. The code is in a line 0 REM and it will work with any Spectrum, with or without microdrives." '"There are lots of REMs in this program to help you pinch the routine, but I will have to re- enable the BREAK key before you can read them!" '"Remember when using this routineto SAVE a copy of your program before you run the BREAK disableroutine. You won't be able to SAVE it afterwards."  9000(# :errline=500:"When the BREAK key is disabled, any error in your program that would normally give a Sinclair error message, like 'Nonsense inBASIC', will instead jump to line 1." '"This means that an error in line1, or in the line you have line 1 jump to, will lock the comput-er into a loop. SAVE your prog before you try it out, or you may lose it (happened to me morethan once while writing this!)." '"On the next page you can BREAK in to the program if you wish. Running line 10 will then removemost of this program and SAVE only the bits you want to nick. Remember to use 'LIST 1' to see it as line 0 will not list."  9000(# Xs3::''''''''" PRESS 'B' TO BREAK AND LIST"'''" Or any other to load the next section of the magazine." b(9000(#:a$="b"a$="B":1: la1:9 :1::10 ,8;"TURN TAPE OVER"''8;"PLAY OTHER SIDE":"" @ 3: #( ""9000(# #2E#1;5;" PRESS A KEY TO TURN THE PAGE":0:a$=: 'Y缧:ٰ"2":ڼ::"21","10";ٰ"9";"PRESS A KEY": ("23637"+"256"*"23638"+"6"): 'R;;_"\`X:\GOxƀO>@0q#= >2\v!͵v!͵:\( >8DDDDD8x"D"D"x>@"@"@.. '"error"100d rrlina/A