This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page,
please contact me immediatelly so I can remove it!
|
|
|
-
Entry name:Maze Rider
-
Category:Games
-
Publisher/Developer:ANALOG Computing, BELLCOM - Public Domain Library
-
Year:1981
Listing 1
1REMPROGRAMBYRUSSELLAGILL 2REMTHISPROGRAMWASORIGINALLYIN 3REMANLOGMAG.ITHASBEENEXTENSIVELYMODIFIED. 4REMMODIFIEDMAY-JULY1981 10REMMAZERIDER 50GOSUB5000:GOSUB4000:?"GENERATINGMAZENOW" 80XC=INT(RND(0)*((WIDTH-3)/2))*2+3 85YC=INT(RND(0)*((LENGTH-3)/2))*2+3 90EX=XC:EY=YC 95SETCOLOR1,0,14 100COLOR2:PLOTXC,YC:COLOR1 110LNG=INT(RND(0)*3)*2+2 120DIR=INT(RND(0)*4) 130S=(DIR=0)-(DIR=1) 140T=(DIR=2)-(DIR=3) 180FORI=2TOLNGSTEP2 190LOCATEXC+S*I,YC+T*I,P 200IFPANDI=2THENPOP:GOTO110 210IFPTHENPOP:LNG=2:GOTO130 220NEXTI:XC=XC+S*LNG:YC=YC+T*LNG 225IFPNTR>PMAXTHENPMAX=PNTR:MX=XC:MY=YC:MS=S:MT=T 230DRAWTOXC,YC:STR=STR+1:PNTR=PNTR+1 233IFPMAX=96THENPMAX=0:PNTR=30 234IFSTR>STRMAXTHENSTR=100 235SOUND0,D2-PNTR*8,10,8 240POKEXPNT+STR,XC 250POKEYPNT+STR,YC 290GOSUB500:IFPTHEN300 295SOUND0,D2-PNTR*8,10,2:GOTO110 300XC=PEEK(XPNT+STR) 305YC=PEEK(YPNT+STR) 310PNTR=PNTR-1:STR=STR-1:GOSUB500 315SOUND0,D2-PNTR*8,10,8 320IFPANDSTRTHEN300 325POKE77,Z:SOUND0,D2-PNTR*8,10,2 330PLOTXC,YC:IFSTRTHEN110 340COLOR3:PLOTMX,MY:COLOR1 350MAP=ADR(MAP$):IF1-EXTRATHEN390 360FORI=1TOEXTRANO 370XC=INT(RND(0)*(WIDTH-4))+3:YC=INT(RND(0)*(LENGTH-4))+3:IFINT((XC+YC)/2)=(XC+YC)/2THEN370 380PLOTXC,YC:NEXTI 390?"STORINGMAZENOW":SOUND0,0,0,0:FORY=1TOLENGTH 400FORX=1TOWIDTH:LOCATEX,Y,P 410POKEMAP+(Y*(WIDTH+1))+X,P:NEXTX:NEXTY 430S=-MS:T=-MT:MS=0:FORI=0TO6:READX:POKEXPNT+I,X:NEXTI:P3=0 440YPNT=XPNT+8:POKEYPNT-1,79:FORI=0TO6:POKEYPNT+I,79-(PEEK(XPNT+I)+PEEK(XPNT+I-1))/4:NEXTI 450POKE18,0:POKE19,0:POKE20,0:GOTO1000 500LOCATEXC+2,YC,P1 510LOCATEXC-2,YC,P2 520LOCATEXC,YC+2,P3 530LOCATEXC,YC-2,P4 540P=P1ANDP2ANDP3ANDP4:RETURN 600P1=0:GRAPHICS7:SETCOLOR1,0,14:POKE752,1:?:?"YOUARELOOKING";A$ 610FORYC=0TO6:P2=NR(1,YC):IFP2=2THENGOSUB670 612IFNOTP2THENPOP:GOTO670 615X1=P1:X2=PEEK(XPNT+YC):P1=X2 620IFFEETANDYCTHENIFP2=3ANDNR(1,YC-1)=3THENPLOT79,PEEK(YPNT+YC-1):DRAWTO79,PEEK(YPNT+YC) 630FORXC=0TO2STEP2:IFXCTHENX1=158-X1:X2=158-X2 635XD1=X1/2:XD2=X2/2:IFNR(XC,YC)THEN650 640PLOTX1,XD1:DRAWTOX2,XD2:PLOTX1,79-XD1:DRAWTOX2,79-XD2:GOTO655 650PLOTX1,XD1:DRAWTOX1,79-XD1:PLOTX1,XD2:DRAWTOX2,XD2:PLOTX1,79-XD2:DRAWTOX2,79-XD2 652IFNR(1,YC+1)THENDRAWTOX2,XD2 654GOTO660 655P2=NR(1,YC+1):IFP2=0ORP2=2THENDRAWTOX2,XD2 660IFFEETTHENIFYCANDNR(XC,YC)=3THENPLOT79,PEEK(YPNT+YC):DRAWTOX1,PEEK(YPNT+YC) 665NEXTXC:NEXTYC:IFNOTNR(1,7)THENIFNR(0,6)ORNR(2,6)THENPLOT79,39:PLOT79,40 668RETURN 670PLOTX2,XD2:DRAWTO159-X2,XD2:PLOTX2,79-XD2:DRAWTO159-X2,79-XD2:RETURN 1000SOUND1,250,2,SND*4:COLOR1:MAP=ADR(MAP$):IFT<>1THEN1020 1015FORXC=-1TO1:FORYC=0TO7:NR(XC+1,YC)=PEEK(MAP+(MY+YC)*(WIDTH+1)+MX-XC):NEXTYC:NEXTXC:A$="SOUTH":GOTO1050 1020IFT<>-1THEN1030 1025FORXC=-1TO1:FORYC=0TO7:NR(XC+1,YC)=PEEK(MAP+(MY-YC)*(WIDTH+1)+MX+XC):NEXTYC:NEXTXC:A$="NORTH":GOTO1050 1030IFS<>-1THEN1040 1035FORXC=-1TO1:FORYC=0TO7:NR(XC+1,YC)=PEEK(MAP+(MY-XC)*(WIDTH+1)+MX-YC):NEXTYC:NEXTXC:A$="WEST":GOTO1050 1040IFS<>1THEN1050 1045FORXC=-1TO1:FORYC=0TO7:NR(XC+1,YC)=PEEK(MAP+(MY+XC)*(WIDTH+1)+MX+YC):NEXTYC:NEXTXC:A$="EAST" 1050GOSUB600:POKE77,0 1060GOTO5100 1061IFP3<RGTHENGOTO1063 1062SOUND0,50,12,6:?"YOUONLYGET";RG;"LOOKS":FORI=1TO100:NEXTI:?"DOYOUWANTTOCONTINUE?":GOTO5081 1063GOSUB4000:P3=P3+1:SETCOLOR1,0,14:?"CHECKINGMAZEMAP#";P3:GOSUB3000 1064FORX=1TORG*RG+1:FORP=1TO4:FORI=1TO10:NEXTI:COLORP:PLOTMX,MY:NEXTP:NEXTX:SOUND0,0,0,0:GOTO1000 1065SOUND0,0,0,0:P=STICK(0):IFP=15ORP=5ORP=6ORP=9ORP=10THEN1060 1070IFP=14THENMX=MX+S:MY=MY+T:SOUND0,170,6,SND*6:IFNOTPEEK(MAP+MY*(WIDTH+1)+MX)THENMX=MX-S:MY=MY-T:P=0 1080IFP=13THENMX=MX-S:MY=MY-T:SOUND0,120,6,SND*6:IFNOTPEEK(MAP+MY*(WIDTH+1)+MX)THENMX=MX+S:MY=MY+T:P=0 1090IFP=7ORP=11THENP1=S:S=-T:T=P1 1100IFP=11THENS=-S:T=-T 1110IFP=0THEN?"CRASH!!BANG!!":FORP=15TO0STEP-1:SOUND0,120,12,P:FORI=1TO5:NEXTI:NEXTP:B=B+1:MS=0 1120I=MAP+MY*(WIDTH+1)+MX:IFPEEK(I)=2THEN2000 1130POKEI,3:IFPTHEN1000 1140GOTO1060 2000SOUND1,0,0,0:SOUND0,0,0,0:SEC=INT((PEEK(20)+PEEK(19)*256+PEEK(18)*65536)/60):?"YOUAREFREE" 2005?"YOUAREFREE" 2010?"YOUAREFREE" 2012FORWAIT=1TO400:NEXTWAIT:GOSUB30000 2015FORI=1TO100:NEXTI:?"DOYOUWANTTOSEETHEFINALSTATUS?":GET#1,A:IFCHR$(A)<>"Y"THEN2022 2020GOSUB4000:?"***YOURFINALMAP***":GOSUB3000:GOSUB10000 2021?#6;"PRESSforanother":?#6;"game":GET#1,A:GOTO2025 2022GOSUB10000:?#6;"PRESSforanother":?#6;"game":GET#1,A 2025IFCHR$(A)="Y"THENCLOSE#1:CLR:GOTO1 2030POKE752,0:GRAPHICS0:SETCOLOR2,0,0:END 3000MAP=ADR(MAP$):FORY=3TOLENGTH-2:FORX=3TOWIDTH-2:COLORPEEK(MAP+Y*(WIDTH+1)+X) 3010SOUND0,SNDVAL-Y*SNDINC-X,10,6:PLOTX,Y:NEXTX:NEXTY 3020SOUND0,0,0,0:RETURN 4000GRAPHICSRG:COLOR1:PLOT1,1:DRAWTOWIDTH,1:DRAWTOWIDTH,LENGTH:DRAWTO1,LENGTH:DRAWTO1,1:POKE752,1:RETURN 5000GRAPHICS2:SETCOLOR1,0,14:SETCOLOR2,0,0:?#6:?#6;"/MAZERIDER\":?#6:OPEN#1,4,0,"K:" 5002DP=96:D2=DP*8 5003DIMA$(5),C$(1),NR(2,7) 5004B=0:POKE752,1 5010?#6:?#6:?#6;"ANALOG400/800":?#6;"rgillMODIFIED" 5015?"DOYOUWANTTOSEEDIRECTIONS":?"Y/N???":GET#1,A 5020IFCHR$(A)="Y"THENGOSUB12000 5030GRAPHICS1+16:SETCOLOR1,0,14 5042GOSUB5085:GET#1,A:IFCHR$(A)<>"B"THENGOTO5045 5043WIDTH=39:LENGTH=19:RG=3:DIMMAP$(800):SNDVAL=290:SNDING=14:STRMAX=100 5044DIMSTOR$(200):XPNT=ADR(STOR$):YPNT=XPNT+100:GOTO5050 5045IFCHR$(A)<>"P"THENGOTO5048 5046WIDTH=79:LENGTH=39:RG=5:DIMMAP$(3200):SNDVAL=265:SNDING=5:STRMAX=300 5047DIMSTOR$(600):XPNT=ADR(STOR$):YPNT=XPNT+300:GOTO5050 5048?#6;"THISWILLTAKESOMETIME":RUN"D:MAZE2" 5050?#6;"":?#6;"DOYOUWANT":?#6:?#6;"PASSAGES(y/n)":GET#1,A 5055IFCHR$(A)="Y"THENEXTRA=1:EXTRANO=(WIDTH+LENGTH-8)/2 5057?#6;"DOYOUWANTA":?#6:?#6;"(y/n)":GET#1,A:IFCHR$(A)="Y"THENFEET=1 5060?#6;"":?#6;"DOYOUWANTTO":?#6:?#6;"SEETHE(y/n)":GET#1,A 5065?#6;"":IFCHR$(A)="Y"THEN?#6;"";RG;"":MAPSW=1:FORWAIT=1TO400:NEXTWAIT 5070?#6;"":?#6;"DOYOUWANT":?#6:?#6;"(y/n)":GET#1,A:IFCHR$(A)="Y"THENSND=1 5080RETURN 5081GET#1,A:IFCHR$(A)="Y"THEN?:?:?"OKTHENCONTINUE":GOTO1065 5082SOUND1,0,0,0:SOUND0,0,0,0:SEC=0:GOTO2015 5085?#6:?#6:?#6:?#6;"DOYOUWANTA" 5090?#6:?#6;"BEGINNERS(b)GAME?" 5091?#6:?#6;"PROS(p)GAME?" 5095?#6:?#6;"ORSUPERSTAR(s)GAME" 5099RETURN 5100IFSTRIG(0)THENGOTO1065 5110IFMAPSW<>0THEN1061 5115SOUND0,50,12,6:?"YOUDON'TGETTOLOOKATTHEMAP" 5120?:?"DOYOUWANTTOCONT?" 5130GOTO5081 6000DATA0,28,46,60,68,74,78 10000?"PRESSANYKEYTOCONT":GET#1,A 10001GRAPHICS1:SETCOLOR1,0,14 10005GOSUB10600 10006IFSEC=0THEN11000 10010IFRG<>3THEN10200 10020IFSEC<=180THEN10100 10030IFSEC>1200THEN?#6:?#6;"WHATHAPPENEDYOU":?#6:?#6;"FALLASLEEP":GOTO11000 10040IFSEC>600THEN?#6:?#6;"YOUAREAbeginner":?#6:?#6;"ONGAME":GOTO11000 10050IFSEC>250THEN?#6:?#6;"YOUAREApro":?#6:?#6;"ONGAME":GOTO11000 10060?#6:?#6;"YOUAREAsuperstar":?#6:?#6;"ONGAME":?#6:?#6;"TRYAONE":GOTO11000 10100IFFEET=1ANDEXTRA=1THEN?#6;"TRYITWITHOUTTHE":?#6:?#6;"NEXTTIME":GOTO10060 10110IFFEET=1ANDEXTRA=0THEN?#6;"TRYITWITH":?#6:?#6;"NEXTTIME":GOTO10060 10120IFFEET=1ANDEXTRA=0THEN?#6;"TRYITWITH":?#6:?#6;"NEXTTIME":GOTO10060 10124IFP3>1THEN?#6;"USETHE":?#6;"mapNEXTTIME":GOTO10060 10130GRAPHICS0:POKE752,1:SETCOLOR2,0,0:POSITION18,10:?"WOW!":FORWAIT=1TO50:NEXTWAIT 10140GRAPHICS17:SETCOLOR2,0,0:POSITION8,10:?#6;"WOW!":FORWAIT=1TO100:NEXTWAIT 10150GRAPHICS18:SETCOLOR2,0,0:SETCOLOR1,0,14:POSITION8,5:?#6;"!":FORWAIT=1TO400:NEXTWAIT:POKE752,0 10160GRAPHICS1:SETCOLOR2,0,0:?#6:?#6;"TRYTHEGAME":GOTO11000 10200IFRG<>5THEN10400 10220IFSEC<=300THEN10300 10230IFSEC>1500THEN?#6:?#6;"WHATHAPPENEDYOU":?#6:?#6;"FALLASLEEP":GOTO11000 10240IFSEC>840THEN?#6:?#6;"YOUAREAbeginner":?#6:?#6;"ONTHEGAME":GOTO11000 10250IFSEC>500THEN?#6:?#6;"YOUAREApro":?#6:?#6;"ONTHEGAME":GOTO11000 10260?#6:?#6;"YOUAREAsuperstar":?#6:?#6;"ONTHEGAME":?#6:?#6;"TRYAONE":GOTO11000 10300IFFEET=1ANDEXTRA=1THEN?#6;"TRYITWITHOUTTHE":?#6:?#6;"NEXTTIME":GOTO10260 10310IFFEET=1ANDEXTRA=0THEN?#6;"TRYITWITH":?#6:?#6;"NEXTTIME":GOTO10260 10320IFFEET=1ANDEXTRA=0THEN?#6;"TRYITWITH":?#6:?#6;"NEXTTIME":GOTO10260 10324IFP3>1THEN?#6;"USETHE":?#6;"mapNEXTTIME":GOTO10260 10330GRAPHICS0:POKE752,1:SETCOLOR2,0,0:POSITION18,10:?"WOW!":FORWAIT=1TO50:NEXTWAIT 10340GRAPHICS17:SETCOLOR2,0,0:POSITION8,10:?#6;"WOW!":FORWAIT=1TO100:NEXTWAIT 10350GRAPHICS18:SETCOLOR2,0,0:SETCOLOR1,0,14:POSITION8,5:?#6;"!":FORWAIT=1TO400:NEXTWAIT:POKE752,0 10360GRAPHICS1:SETCOLOR2,0,0:?#6:?#6;"TRYGAME":GOTO11000 10400RETURN 10600IFSEC=0THENGRAPHICS2:?#6:?#6;"BETTERLUCK":?#6:?#6;"NEXTTIME!!!!!":RETURN 10610IFMAPSW=1THENSEC=SEC+5 10620SEC=SEC+B*5 10630IFRG=3THENSEC=SEC+P3*15 10640IFRG=5THENSEC=SEC+P3*7 10660IFEXTRA=1ANDFEET=1THENSEC=SEC+30 10670IFEXTRA=0ANDFEET=1THENSEC=SEC+10 10680IFEXTRA=1ANDFEET=0THENGOSUB10750 10690IFEXTRA=0ANDFEET=0THENGOSUB10850 10700RETURN 10750IFRG=3ANDP3<=1THENSEC=SEC-60:RETURN 10760IFRG=3THENSEC=SEC-20:RETURN 10770IFRG=5ANDP3<=2THENSEC=SEC-90:RETURN 10780SEC=SEC-30:RETURN 10850IFRG=3THENSEC=SEC-20 10860IFRG=5THENSEC=SEC-30 10880RETURN 11000?"PRESSANYKEYTOCONTINUE":GET#1,A:RETURN 12000GRAPHICS0:SETCOLOR2,0,0:POKE752,1 12010?"" 12020?"Plugajoystickintothefirst" 12030?"position." 12033?"" 12035?"TheOBJECTofthegameistogo" 12040?"thrutheMAZEasquicklyaspossible" 12045?"" 12050?"Thereare3differentlevels" 12060?"BEGINNERSwithasmallmaze;PROwith" 12070?"alargermazeandSUPERSTARwiththe" 12080?"largestmaze." 12085?"" 12090?"YoumaylookatamapoftheMAZE" 12100?"wheneveryouwant(uptothemaximum)" 12110?"bypushingthefirebuttononthe" 12120?"joystick." 12125?"" 12130?"WhenyouhavefinishedtheMAZE" 12140?"youwillrankedasaBEGINNERPRO" 12150?"SUPERSTARorWOW!dependingonyour" 12160?"speedthrutheMAZE." 12162?"" 12165?"PUSHKEYTOCONTINUE":GET#1,A 12167?"" 12170?"SCORINGisdonebasedupontime." 12175?"" 12180?"TIMEwillbeedtoyourtimeif" 12190?"(1)youbumpintoawall" 12200?"(2)youlookatthemap" 12210?"(3)youleaveatrail" 12215?"":?"" 12220?"TIMEwillbeedifyou" 12230?"(1)doNOTleaveatrail" 12235?"":?"" 12240?"Youmovefoward/backwardby" 12250?"movingthejoystickfowardorback." 12260?"Youturnrightorleftbymovingthe" 12270?"joystickrightorleft." 12275?"":?"" 12280?"" 12282?"":?"" 12285?"PUSHKEYTOCONTINUE":GET#1,A 12290RETURN 30000GRAPHICS7:C=1 30020SETCOLOR1,0,14 30030SETCOLOR0,4,4 30035TONE=250 30040FORI=0TO12:COLORC 30050FORJ=0TO5:PLOT0,I*6+J 30052SOUND0,TONE,10,10 30060DRAWTO159,I*6+J:NEXTJ 30070C=C+1:IFC=3THENC=1 30075TONE=TONE-15 30080NEXTI:COLOR3:FORI=0TO41 30090PLOT0,I:DRAWTO79,I:NEXTI 30092SOUND0,0,0,0 30094TONE=3 30100GOSUB30110 30105RETURN 30110COLOR2:K=0:FORI=0TO8:FORJ=0TO4 30120X=K+5+J*14:Y=4+I*4:GOSUB30160 30125NEXTJ:IFK<>0THEN30150 30130X=5+5*14:Y=4+I*4:GOSUB30160 30140K=7:GOTO30155 30150K=0 30155NEXTI:RETURN 30160PLOTX-1,Y:DRAWTOX+1,Y 30170PLOTX,Y-1:DRAWTOX,Y+1 30171TONE=TONE+5 30172SOUND1,TONE,10,12 30174FORWAIT=1TO10:NEXTWAIT 30176SOUND1,0,0,0 30180RETURN
Listing 1
1REMPROGRAMBYRUSSELLAGILL 2REMTHISPROGRAMWASORIGINALLYIN 3REMANLOGMAG.ITHASBEENEXTENSIVELYMODIFIED. 4REMMODIFIEDMAY-JULY1981 10REMMAZERIDER 50GOSUB5000:GOSUB4000:?"GENERATINGMAZENOW" 80XC=INT(RND(0)*((WIDTH-3)/2))*2+3 85YC=INT(RND(0)*((LENGTH-3)/2))*2+3 90EX=XC:EY=YC 95SETCOLOR1,0,14 100COLOR2:PLOTXC,YC:COLOR1 110LNG=INT(RND(0)*8)*2+2 120DIR=INT(RND(0)*4) 130S=(DIR=0)-(DIR=1) 140T=(DIR=2)-(DIR=3) 180FORI=2TOLNGSTEP2 190LOCATEXC+S*I,YC+T*I,P 200IFPANDI=2THENPOP:GOTO110 210IFPTHENPOP:LNG=2:GOTO130 220NEXTI:XC=XC+S*LNG:YC=YC+T*LNG 225IFPNTR>PMAXTHENPMAX=PNTR:MX=XC:MY=YC:MS=S:MT=T 230DRAWTOXC,YC:STR=STR+1:PNTR=PNTR+1 233IFPMAX=96THENPMAX=0:PNTR=30 234IFSTR>STRMAXTHENSTR=100 240POKEXPNT+STR,XC 250POKEYPNT+STR,YC 290GOSUB500:IFPTHEN300 295SOUND0,D2-PNTR*8,10,2:GOTO110 300XC=PEEK(XPNT+STR) 305YC=PEEK(YPNT+STR) 310PNTR=PNTR-1:STR=STR-1:GOSUB500 320IFPANDSTRTHEN300 325POKE77,Z:SOUND0,D2-PNTR*8,10,2 330PLOTXC,YC:IFSTRTHEN110 340COLOR3:PLOTMX,MY:COLOR1 345?"STARTINGLOCATIONISX=";MX;"Y=";MY 350MAP=ADR(MAP$):IF1-EXTRATHEN390 360FORI=1TOEXTRANO 370XC=INT(RND(0)*(WIDTH-4))+3:YC=INT(RND(0)*(LENGTH-4))+3:IFINT((XC+YC)/2)=(XC+YC)/2THEN370 380PLOTXC,YC:NEXTI 390?"STORINGMAZENOW":SOUND0,0,0,0:FORY=1TOLENGTH 400FORX=1TOWIDTH:LOCATEX,Y,P 410POKEMAP+(Y*(WIDTH+1))+X,P:NEXTX:NEXTY 430S=-MS:T=-MT:MS=0:FORI=0TO6:READX:POKEXPNT+I,X:NEXTI:P3=0 440YPNT=XPNT+8:POKEYPNT-1,79:FORI=0TO6:POKEYPNT+I,79-(PEEK(XPNT+I)+PEEK(XPNT+I-1))/4:NEXTI 450POKE18,0:POKE19,0:POKE20,0:GOTO1000 500LOCATEXC+2,YC,P1 510LOCATEXC-2,YC,P2 520LOCATEXC,YC+2,P3 530LOCATEXC,YC-2,P4 540P=P1ANDP2ANDP3ANDP4:RETURN 600P1=0:GRAPHICS7:SETCOLOR1,0,14:POKE752,1:?:?"YOUARELOOKING";A$ 610FORYC=0TO6:P2=NR(1,YC):IFP2=2THENGOSUB670 612IFNOTP2THENPOP:GOTO670 615X1=P1:X2=PEEK(XPNT+YC):P1=X2 620IFFEETANDYCTHENIFP2=3ANDNR(1,YC-1)=3THENPLOT79,PEEK(YPNT+YC-1):DRAWTO79,PEEK(YPNT+YC) 630FORXC=0TO2STEP2:IFXCTHENX1=158-X1:X2=158-X2 635XD1=X1/2:XD2=X2/2:IFNR(XC,YC)THEN650 640PLOTX1,XD1:DRAWTOX2,XD2:PLOTX1,79-XD1:DRAWTOX2,79-XD2:GOTO655 650PLOTX1,XD1:DRAWTOX1,79-XD1:PLOTX1,XD2:DRAWTOX2,XD2:PLOTX1,79-XD2:DRAWTOX2,79-XD2 652IFNR(1,YC+1)THENDRAWTOX2,XD2 654GOTO660 655P2=NR(1,YC+1):IFP2=0ORP2=2THENDRAWTOX2,XD2 660IFFEETTHENIFYCANDNR(XC,YC)=3THENPLOT79,PEEK(YPNT+YC):DRAWTOX1,PEEK(YPNT+YC) 665NEXTXC:NEXTYC:IFNOTNR(1,7)THENIFNR(0,6)ORNR(2,6)THENPLOT79,39:PLOT79,40 668RETURN 670PLOTX2,XD2:DRAWTO159-X2,XD2:PLOTX2,79-XD2:DRAWTO159-X2,79-XD2:RETURN 1000SOUND1,250,2,SND*4:COLOR1:MAP=ADR(MAP$):IFT<>1THEN1020 1015FORXC=-1TO1:FORYC=0TO7:NR(XC+1,YC)=PEEK(MAP+(MY+YC)*(WIDTH+1)+MX-XC):NEXTYC:NEXTXC:A$="SOUTH":GOTO1050 1020IFT<>-1THEN1030 1025FORXC=-1TO1:FORYC=0TO7:NR(XC+1,YC)=PEEK(MAP+(MY-YC)*(WIDTH+1)+MX+XC):NEXTYC:NEXTXC:A$="NORTH":GOTO1050 1030IFS<>-1THEN1040 1035FORXC=-1TO1:FORYC=0TO7:NR(XC+1,YC)=PEEK(MAP+(MY-XC)*(WIDTH+1)+MX-YC):NEXTYC:NEXTXC:A$="WEST":GOTO1050 1040IFS<>1THEN1050 1045FORXC=-1TO1:FORYC=0TO7:NR(XC+1,YC)=PEEK(MAP+(MY+XC)*(WIDTH+1)+MX+YC):NEXTYC:NEXTXC:A$="EAST" 1050GOSUB600:POKE77,0 1060GOTO5100 1061IFP3<RGTHENGOTO1063 1062SOUND0,50,12,6:?"YOUONLYGET";RG;"LOOKS":FORI=1TO100:NEXTI:?"DOYOUWANTTOCONTINUE?":GOTO5081 1063GOSUB4000:P3=P3+1:SETCOLOR1,0,14:?"CHECKINGMAZEMAP#";P3:GOSUB3000 1064FORX=1TORG+RG+1:FORP=1TO4:FORI=1TO10:NEXTI:COLORP:PLOTMX,MY:NEXTP:NEXTX:SOUND0,0,0,0:GOTO1000 1065SOUND0,0,0,0:P=STICK(0):IFP=15ORP=5ORP=6ORP=9ORP=10THEN1060 1070IFP=14THENMX=MX+S:MY=MY+T:SOUND0,170,6,SND*6:IFNOTPEEK(MAP+MY*(WIDTH+1)+MX)THENMX=MX-S:MY=MY-T:P=0 1080IFP=13THENMX=MX-S:MY=MY-T:SOUND0,120,6,SND*6:IFNOTPEEK(MAP+MY*(WIDTH+1)+MX)THENMX=MX+S:MY=MY+T:P=0 1090IFP=7ORP=11THENP1=S:S=-T:T=P1 1100IFP=11THENS=-S:T=-T 1110IFP=0THEN?"CRASH!!BANG!!":FORP=15TO0STEP-1:SOUND0,120,12,P:FORI=1TO5:NEXTI:NEXTP:B=B+1:MS=0 1120I=MAP+MY*(WIDTH+1)+MX:IFPEEK(I)=2THEN2000 1130POKEI,3:IFPTHEN1000 1140GOTO1060 2000SOUND1,0,0,0:SOUND0,0,0,0:SEC=INT((PEEK(20)+PEEK(19)*256+PEEK(18)*65536)/60):?"YOUAREFREE" 2005?"YOUAREFREE" 2010?"YOUAREFREE" 2012FORWAIT=1TO400:NEXTWAIT:GOSUB30000 2015FORI=1TO100:NEXTI:?"DOYOUWANTTOSEETHEFINALSTATUS?":GET#1,A:IFCHR$(A)<>"Y"THEN2022 2020GOSUB4000:?"***YOURFINALMAP***":GOSUB3000:GOSUB10000:?"PRESSYforanothergame":GET#1,A:GOTO2025 2022GOSUB10000:?"PRESSYforanothergame":GET#1,A 2025IFCHR$(A)="Y"THENCLOSE#1:CLR:GOTO1 2030POKE752,0:GRAPHICS0:SETCOLOR2,0,0:END 3000SOUND0,0,0,0:MAP=ADR(MAP$):FORY=3TOLENGTH-2:FORX=3TOWIDTH-2:COLORPEEK(MAP+Y*(WIDTH+1)+X) 3010PLOTX,Y:NEXTX:NEXTY 3020SOUND0,0,0,0:RETURN 4000GRAPHICSRG:COLOR1:PLOT1,1:DRAWTOWIDTH,1:DRAWTOWIDTH,LENGTH:DRAWTO1,LENGTH:DRAWTO1,1:POKE752,1:RETURN 5000OPEN#1,4,0,"K:" 5002DP=96:D2=DP*8 5003DIMA$(5),C$(1),NR(2,7) 5004B=0 5040WIDTH=159:LENGTH=79:DIMMAP$(12800):SNDVAL=265:SNDING=1:STRMAX=1500:DIMSTOR$(3000) 5045RG=7:XPNT=ADR(STOR$):YPNT=XPNT+1500 5046GRAPHICS1+16:SETCOLOR1,0,14 5048?#6;"DOYOUWANT":?#6:?#6;"A?(y/n)":GET#1,A:IFCHR$(A)="Y"THENFEET=1 5050?#6;"":?#6;"DOYOUWANT":?#6:?#6;"PASSAGES(y/n)":GET#1,A 5055IFCHR$(A)="Y"THENEXTRA=1:EXTRANO=(WIDTH+LENGTH-8)/2 5060?#6;"":?#6;"DOYOUWANTTO":?#6:?#6;"SEETHE(y/n)":GET#1,A 5065?#6;"":IFCHR$(A)="Y"THEN?#6;"";RG;"":MAPSW=1:FORWAIT=1TO400:NEXTWAIT 5070?#6;"":?#6;"DOYOUWANT":?#6:?#6;"(y/n)":GET#1,A:IFCHR$(A)="Y"THENSND=1 5080RETURN 5081GET#1,A:IFCHR$(A)="Y"THEN?:?:?"OKTHENCONTINUE":GOTO1065 5082SOUND1,0,0,0:SOUND0,0,0,0:SEC=0:GOTO2015 5100IFSTRIG(0)THENGOTO1065 5110IFMAPSW<>0THEN1061 5115SOUND0,50,12,6:?"YOUDON'TGETTOLOOKATTHEMAP" 5120?:?"DOYOUWANTTOCONT?" 5130GOTO5081 6000DATA0,28,46,60,68,74,78 10000?"PRESSANYKEYTOCONT":GET#1,A 10001GRAPHICS1:SETCOLOR1,0,14 10005GOSUB10600 10006IFSEC=0THEN11000 10400IFSEC<=600THEN10500 10410IFSEC>2500THEN?#6:?#6;"WHATHAPPENEDYOU":?#6:?#6;"FALLASLEEP":GOTO11000 10420IFSEC>1200THEN?#6:?#6;"YOUAREAbeginner":?#6:?#6;"ONGAME":GOTO11000 10430IFSEC>850THEN?#6:?#6;"YOUAREApro":?#6:?#6;"ONGAME":GOTO11000 10440?#6:?#6;"YOUAREAsuperstar":?#6:?#6;"ONGAME":?#6:?#6;"TRYWITHOUTAIDS":GOTO11000 10500IFFEET=1ANDEXTRA=1THEN?#6;"TRYITWITHOUTTHE":?#6:?#6;"NEXTTIME":GOTO10440 10510IFFEET=1ANDEXTRA=0THEN?#6;"TRYITWITH":?#6:?#6;"NEXTTIME":GOTO10440 10520IFFEET=1ANDEXTRA=0THEN?#6;"TRYITWITH":?#6:?#6;"NEXTTIME":GOTO10440 10524IFP3>1THEN?#6;"USETHE":?#6;"mapNEXTTIME":GOTO10440 10530GRAPHICS0:POKE752,1:SETCOLOR2,0,0:POSITION18,10:?"WOW!":FORWAIT=1TO50:NEXTWAIT 10540GRAPHICS17:SETCOLOR2,0,0:POSITION8,10:?#6;"WOW!":FORWAIT=1TO100:NEXTWAIT 10550GRAPHICS18:SETCOLOR2,0,0:SETCOLOR1,0,14:POSITION8,5:?#6;"!":FORWAIT=1TO400:NEXTWAIT:POKE752,0 10560GRAPHICS1:SETCOLOR2,0,0:?#6:?#6;"YOUARETHE":GOTO11000 10600IFSEC=0THENGRAPHICS2:?#6:?#6;"BETTERLUCK":?#6:?#6;"NEXTTIME!!!!!":RETURN 10620SEC=SEC+B*5 10660IFEXTRA=1ANDFEET=1THENSEC=SEC+30 10670IFEXTRA=0ANDFEET=1THENSEC=SEC+10 10680IFEXTRA=1ANDFEET=0THENSEC=SEC-120 10690IFEXTRA=0ANDFEET=0THENSEC=SEC-40 10700RETURN 11000?"PRESSANYKEYTOCONTINUE":GET#1,A:RETURN 12275?"":?"" 30000GRAPHICS7:C=1 30020SETCOLOR1,0,14 30030SETCOLOR0,4,4 30035TONE=250 30040FORI=0TO12:COLORC 30050FORJ=0TO5:PLOT0,I*6+J 30052SOUND0,TONE,10,10 30060DRAWTO159,I*6+J:NEXTJ 30070C=C+1:IFC=3THENC=1 30075TONE=TONE-15 30080NEXTI:COLOR3:FORI=0TO41 30090PLOT0,I:DRAWTO79,I:NEXTI 30092SOUND0,0,0,0 30094TONE=3 30100GOSUB30110 30105RETURN 30110COLOR2:K=0:FORI=0TO8:FORJ=0TO4 30120X=K+5+J*14:Y=4+I*4:GOSUB30160 30125NEXTJ:IFK<>0THEN30150 30130X=5+5*14:Y=4+I*4:GOSUB30160 30140K=7:GOTO30155 30150K=0 30155NEXTI:RETURN 30160PLOTX-1,Y:DRAWTOX+1,Y 30170PLOTX,Y-1:DRAWTOX,Y+1 30171TONE=TONE+5 30172SOUND1,TONE,10,12 30174FORWAIT=1TO10:NEXTWAIT 30176SOUND1,0,0,0 30180RETURN
References
Listing downloads
Downloads
Copyright holder
