Skip to content

Instantly share code, notes, and snippets.

@udhos
Forked from andy5995/BOOGERS.BAS
Created January 20, 2019 16:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save udhos/5dc5dd55c3232902d71cded792a243d2 to your computer and use it in GitHub Desktop.
Save udhos/5dc5dd55c3232902d71cded792a243d2 to your computer and use it in GitHub Desktop.
source code for BOOGERS by Mitch Teich 1982
1 REM NOTHING
2 REM
3 REM
5 REM DATNOIDS Copyright (c) 1982 By Casey Roche
8 REM
9 SCREEN 0,0,0
10 KEY OFF:WIDTH 80:COLOR 0,1,0:CLS:PLAY"mb":COLOR 4,0:LOCATE 24,1:PRINT" "+STRING$(78,219):SOUND 1000,1:PRINT" 000000 0000 00000000 00 00 000000 00000000 000000 00000":SOUND 2000,1
80 PRINT" 0222220 022220 02222220 02 20 02222220 02222220 0222220 0222220":SOUND 1000,1:PRINT" 02 20 02 20 22 020 20 02 20 22 02 20 0220 ":SOUND 2000,1
120 PRINT" 02 20 02 20 22 0220 20 02 20 22 02 20 0220 ":SOUND 1000,1:PRINT" 02 20 02222220 22 0202020 02 20 22 02 20 0220 ":SOUND 2000,1
160 PRINT" 02 20 02 20 22 02 0220 02 20 22 02 20 0220":SOUND 1000,1:PRINT" 02 20 02 20 22 02 020 02 20 22 02 20 0220":SOUND 2000,1
200 PRINT" 0222220 02 20 22 02 20 02222220 02222220 0222220 02222220":SOUND 1000,1:PRINT" 000000 00 00 00 00 00 000000 00000000 000000 0000000":SOUND 2000,1:PRINT" "+STRING$(78,219)
250 FOR I=1000 TO 4000 STEP 50:SOUND I,.5:SOUND 5000-I,.3:NEXT:PLAY"mf":COLOR 7,0:SOUND 32767,.1:PRINT" "+CHR$(15):SOUND 32767,.1:PRINT" *
280 SOUND 32767,.1:PRINT" "+CHR$(179):SOUND 32767,.1:PRINT" "+CHR$(179):SOUND 32767,.1:PRINT" "+CHR$(179)
310 SOUND 32767,.1:PRINT" "+CHR$(179):SOUND 32767,.1:PRINT" "+CHR$(179):SOUND 32767,.1:PRINT" "+CHR$(179)
340 SOUND 32767,.1:LOCATE 23,28:COLOR 0,7:PRINT" BOOGERS! BY MITCH TEICH ":SOUND 32767,.1:PRINT STRING$(80,"["):LOCATE 24,31:PRINT"(C) COPYRIGHT 1982":COLOR 7,0:PLAY"c8c8e8gc8c8e8gf8e8d8g8g8g8g":TIME$="00:00":PLAY"MB":DIM MZ(22,80)
400 ON KEY(1)GOSUB 1250:KEY(1)ON:DEF SEG=0:POKE 1050,PEEK(1052):CLS:LOCATE 10,21:INPUT"PLEASE ENTER YOUR SKILL LEVEL (1-10)";SK:IF SK<1 OR SK>10 THEN CLS:BEEP:LOCATE 10,63:PRINT"ERROR":GOTO 400
420 TK=SK:SK=(11-SK)*20:LOCATE 12,21:INPUT"PICK ONE-- (1,2 OR 3)";WM:IF WM=1 THEN LEV$="1":GOTO 470
440 IF WM=2 THEN LEV$="2":GOTO 470
450 IF WM=3 THEN LEV$="3":GOTO 470
460 CLS:BEEP:LOCATE 13,25:PRINT"LOOK YOU IDIOT- 1,2 OR 3 PLEASE":GOTO 420
470 CLS:PLAY"mb":B$=CHR$(219):LOCATE 10,35:PRINT"please wait...":FOR LS=1 TO 20:FOR SL=2 TO 79:MZ(LS,SL)=1:NEXT:NEXT:LOCATE 10,35:PRINT" ":COLOR 0,7:LOCATE 25,16:PRINT" F1=QUIT A=UP Z=DOWN ;=LEFT `=RIGHT [=BLAMMO! ":COLOR 7,0
500 LOCATE 24,1:PRINT STRING$(80," "):FOR I=2 TO 80:LOCATE 2,I:PRINT B$:MZ(2,I)=1:NEXT:FOR I=2 TO 80:LOCATE 22,I:PRINT B$:MZ(22,I)=1:NEXT:FOR I=2 TO 22:LOCATE I,2:PRINT B$:MZ(I,2)=1:MZ(I,1)=1:NEXT:FOR I=2 TO 22:LOCATE I,80:PRINT B$:MZ(I,80)=1:NEXT
550 LOCATE 4,2:PRINT CHR$(221):LOCATE 6,2:PRINT CHR$(221):LOCATE 23,4,0:PRINT"0 SCORE = 0000000000000000000 LEVEL "+STR$(TK)+" 00 MAZE "+LEV$+" 000":S$=STRING$(75,176):LOCATE 24,4,0:PRINT USING"&";S$
610 LOCATE 22,37:COLOR 7,0:PRINT CHR$(16)+"BOOGERS!"+CHR$(17):COLOR 7,0:CH$=CHR$(15):LOCATE 4,1:PRINT" ":LOCATE 4,2:PRINT" ":LOCATE 1,1,0:LOCATE 22,24:PRINT SC:IF LEV$="1"THEN GOSUB 2560
650 IF LEV$="2"THEN GOSUB 4210
660 IF LEV$="3"THEN GOSUB 6720
670 COLOR 15,0:LOCATE 19,72:PRINT CH$:COLOR 1,0:LOCATE 20,72:PRINT"J":PLAY"MF":FOR R=1 TO 600 STEP 10:SOUND 1000+R,.1:SOUND 3000+R*1.5,.1:NEXT:FOR R=1 TO 3:SOUND 32767,10:BEEP:NEXT:PLAY"MB":DEF SEG=0:POKE 1050,PEEK(1052):ON KEY(1)GOSUB 1250:KEY(1)ON
700 X=19:Y=72:A=1:B=0:COLOR 15,0
710 MZ(4,1)=9:FOR UI=70 TO 74:MZ(20,UI)=1:NEXT:SC=INT(SC+VAL(RIGHT$(TIME$,2))+INT((200-SK)/10)):LOCATE 22,24:PRINT SC
720 X=X-A:Y=Y-B:IF MZ(X,Y)=9 GOTO 8940
730 IF MZ(X,Y)<>4 GOTO 1140
750 LOCATE X,Y:PRINT CH$:SOUND 32767,.05:FOR P=1 TO SK:NEXT:AXN$=INKEY$:IF AXN$="A"OR AXN$="a"THEN GOSUB 1070
762 IF AXN$="Z"OR AXN$="z"THEN GOSUB 950
763 IF AXN$="`"OR AXN$="~"THEN GOSUB 890
764 IF AXN$=";"OR AXN$=":"THEN GOSUB 1010
765 IF AXN$="["OR AXN$="{"THEN GOSUB 1260:GOTO 770
770 IF A=1 THEN LOCATE X+1,Y:PRINT CHR$(179):SOUND 32767,.1
780 IF A=-1 THEN LOCATE X-1,Y:PRINT CHR$(179):SOUND 32767,.1
790 IF B=-1 THEN LOCATE X,Y-1:PRINT CHR$(196):SOUND 32767,.1
800 IF B=1 THEN LOCATE X,Y+1:PRINT CHR$(196):SOUND 32767,.1
810 AXN$=INKEY$:IF AXN$="A"OR AXN$="a"THEN GOSUB 1070
820 IF AXN$="Z"OR AXN$="z"THEN GOSUB 950
830 IF AXN$="`"OR AXN$="~"THEN GOSUB 890
840 IF AXN$=";"OR AXN$=":"THEN GOSUB 1010
850 IF AXN$="["OR AXN$="{"THEN GOSUB 1260:GOTO 770
860 LOCATE X,Y:PRINT"*":SC=SC+1:GOTO 720
890 IF A=-1 AND X-1<2 THEN LOCATE X-1,Y:PRINT CHR$(219):LOCATE X,Y:PRINT CHR$(192):GOTO 940
900 IF A=-1 THEN LOCATE X-1,Y:PRINT CHR$(179):LOCATE X,Y:PRINT CHR$(192):GOTO 940
910 IF A=1 THEN LOCATE X+1,Y:PRINT CHR$(179):LOCATE X,Y:PRINT CHR$(218)
920 IF B=1 GOTO 1200
930 IF B=-1 GOTO 1200
940 A=0:B=-1:TI=1:Y=Y+1:RETURN 710
950 IF A=1 AND X-1<2 THEN LOCATE X,Y:PRINT CHR$(219):LOCATE X,Y:PRINT CHR$(179):GOTO 1000
960 IF B=-1 THEN LOCATE X,Y-1:PRINT CHR$(196):LOCATE X,Y:PRINT CHR$(191):GOTO 1000
970 IF B=1 THEN LOCATE X,Y+1:PRINT CHR$(196):LOCATE X,Y:PRINT CHR$(218)
980 IF A=1 THEN 1200
990 IF A=-1 THEN 1200
1000 A=-1:B=0:TI=20:X=X+1:RETURN 710
1010 IF X<>4 AND Y=3 THEN 1140
1017 IF A=-1 AND X-1<2 THEN LOCATE X-1,Y:PRINT CHR$(219):LOCATE X,Y:PRINT CHR$(217):GOTO 1060
1020 IF A=-1 THEN LOCATE X-1,Y:PRINT CHR$(179):LOCATE X,Y:PRINT CHR$(217):GOTO 1060
1030 IF A=1 THEN LOCATE X+1,Y:PRINT CHR$(179):LOCATE X,Y:PRINT CHR$(191)
1040 IF B=-1 THEN 1200
1050 IF B=1 GOTO 1200
1060 A=0:B=1:TI=1:Y=Y-1:RETURN 710
1070 IF B=-1 AND Y-1>79 THEN LOCATE X,Y-1:PRINT CHR$(219):LOCATE X,Y:PRINT CHR$(217):GOTO 1120
1080 IF B=-1 THEN LOCATE X,Y-1:PRINT CHR$(196):LOCATE X,Y:PRINT CHR$(217):GOTO 1120
1090 IF B=1 THEN LOCATE X,Y+1:PRINT CHR$(196):LOCATE X,Y:PRINT CHR$(192)
1100 IF A=-1 THEN 1200
1110 IF A=1 THEN 1200
1120 A=1:B=0:TI=20:X=X-1:RETURN 710
1140 PLAY"MB":FOR T=100 TO 10000 STEP 100:SOUND T,.1:NEXT:SOUND 37,18:LOCATE X,Y:PRINT CHR$(176):FOR H=1 TO 199:NEXT:LOCATE X,Y:PRINT CHR$(177):FOR H=1 TO 199:NEXT:LOCATE X,Y:PRINT CHR$(178):FOR H=1 TO 199:NEXT:LOCATE X,Y:PRINT CHR$(219):SOUND 4700,2
1160 FOR M=1 TO 3:IF X-M<1 OR X+M>24 THEN 1170 ELSE LOCATE X-M,Y:PRINT CHR$(179-M):LOCATE X+M,Y:PRINT CHR$(179-M):NEXT
1170 FOR M=1 TO 3:IF Y-M<1 OR Y+M>80 THEN 1180 ELSE LOCATE X,Y-M:PRINT CHR$(179-M):LOCATE X,Y+M:PRINT CHR$(179-M):NEXT:LOCATE X,Y:PRINT CHR$(254)
1180 SC=INT(SC+VAL(RIGHT$(TIME$,2))+((200-SK)/10))
1190 LOCATE 22,24:PRINT SC:LOCATE 10,15:PRINT" YOU HAVE IMMOLATED YOURSELF ON THE ANTIMATTER WALL ":FOR H=1 TO 3000:NEXT:DD=DD+1:IF DD<4 THEN COLOR 3,0:LOCATE 10,12:PRINT STRING$(55,178):LOCATE 4,2:PRINT" ":GOTO 1500 ELSE 1560
1200 PLAY"mb":FOR T=100 TO 10000 STEP 100:SOUND T,.1:SOUND 10100-T,.1:NEXT:SOUND 37,18
1210 LOCATE X,Y:PRINT CHR$(176):FOR H=1 TO 199:NEXT:LOCATE X,Y:PRINT CHR$(177):FOR H=1 TO 199:NEXT:LOCATE X,Y:PRINT CHR$(178):FOR H=1 TO 199:NEXT:LOCATE X,Y:PRINT CHR$(219):SOUND 4700,2
1220 FOR M=1 TO 3:IF X-M<1 OR X+M>24 THEN 1230 ELSE LOCATE X-M,Y:PRINT CHR$(179-M):LOCATE X+M,Y:PRINT CHR$(179-M):NEXT
1230 FOR M=1 TO 3:IF Y-M<1 OR Y+M>80 THEN 1240 ELSE LOCATE X,Y-M:PRINT CHR$(179-M):LOCATE X,Y+M:PRINT CHR$(179-M):NEXT:LOCATE X,Y:PRINT CHR$(254)
1240 SC=INT(SC+VAL(RIGHT$(TIME$,2))+((200-SK)/10)):LOCATE 22,24:PRINT SC:LOCATE 10,16:PRINT" YOU HAVE EXCEEDED THE RESTRICTIONS OF HYPERSPEED ":FOR H=1 TO 3000:NEXT:GOTO 1500
1250 COLOR 7,0:CLS:KEY ON:PRINT"Later.":END
1260 LOCATE X,Y:PRINT CHR$(15):LOCATE X+A,Y+B:PRINT"*":FOR H=5000 TO 100 STEP-250:SOUND H,.1:NEXT:XT=X:YT=Y:SC=INT(SC+VAL(RIGHT$(TIME$,2))+((200-SK)/10)):LOCATE 22,24:PRINT SC:IF MZ(X,Y)=7 THEN 1340
1300 SOUND 4000,.1:LOCATE XT-A,YT-B:PRINT CHR$(249):IF MZ(XT-A,YT-B)=4 THEN LOCATE XT-A,YT-B:PRINT" ":XT=XT-A:YT=YT-B:GOTO 1300 ELSE IF MZ(XT-A,YT-B)=7 OR MZ(XT-A,YT-B)=8 THEN 1340
1320 IF MZ(XT-A,YT-B)=9 THEN 1380
1330 IF MZ(XT-A,YT-B)<>4 THEN 1380
1340 PLAY"MF
1350 LOCATE XT-A,YT-B:PRINT CHR$(176):FOR H=37 TO 1500 STEP 100:SOUND H,.1:NEXT:LOCATE XT-A,YT-B:PRINT CHR$(177):FOR H=1500 TO 3000 STEP 100:SOUND H,.1:NEXT:LOCATE XT-A,YT-B:PRINT CHR$(178):FOR H=3000 TO 5000 STEP 100:SOUND H,.1:NEXT:LOCATE XT-A,YT-B
1360 PRINT CHR$(219):SOUND 5000,.1:LOCATE XT-A,YT-B:PRINT CHR$(178):SOUND 37,4:LOCATE XT-A,YT-B:PRINT CHR$(177):SOUND 37,3:LOCATE XT-A,YT-B:PRINT CHR$(176):SOUND 37,2:LOCATE XT-A,YT-B:PRINT" ":MZ(XT-A,YT-B)=4:PLAY"MB":RETURN
1380 PLAY"MF
1390 LOCATE XT-A,YT-B:PRINT CHR$(176):FOR H=37 TO 1500 STEP 100:SOUND H,.1:NEXT:LOCATE XT-A,YT-B:PRINT CHR$(177):FOR H=1500 TO 3000 STEP 100:SOUND H,.1:NEXT:LOCATE XT-A,YT-B:PRINT CHR$(178):FOR H=3000 TO 5000 STEP 100:SOUND H,.1:NEXT:LOCATE XT-A,YT-B
1400 PRINT CHR$(219):SOUND 5000,.1:LOCATE XT-A,YT-B:PRINT CHR$(178):SOUND 37,3:LOCATE XT-A,YT-B:PRINT CHR$(177):SOUND 37,3:LOCATE XT-A,YT-B:PRINT CHR$(176):SOUND 37,3
1420 PLAY"MB":SOUND 3800,.1:LOCATE XT+A,YT+B:PRINT CHR$(249):IF XT=X AND YT=Y THEN 1450
1440 IF XT+A=X AND YT+B=Y THEN 1450 ELSE LOCATE XT+A,YT+B:PRINT" ":XT=XT+A:YT=YT+B:GOTO 1420
1450 KEY(9)OFF:KEY(10)OFF:KEY(12)OFF:KEY(13)OFF:PLAY"mb":FOR T=100 TO 10000 STEP 100:SOUND T,.1:SOUND 10100-T,.1:NEXT:SOUND 37,18
1460 LOCATE X,Y:PRINT CHR$(176):FOR H=1 TO 199:NEXT:LOCATE X,Y:PRINT CHR$(177):FOR H=1 TO 199:NEXT:LOCATE X,Y:PRINT CHR$(178):FOR H=1 TO 199:NEXT:LOCATE X,Y:PRINT CHR$(254):SOUND 4700,2
1470 FOR M=1 TO 3:IF X-M<1 OR X+M>24 THEN 1180 ELSE LOCATE X-M,Y:PRINT CHR$(179-M):LOCATE X+M,Y:PRINT CHR$(179-M):NEXT
1480 FOR M=1 TO 3:IF Y-M<1 OR Y+M>80 THEN 1180 ELSE LOCATE X,Y-M:PRINT CHR$(179-M):LOCATE X,Y+M:PRINT CHR$(179-M):NEXT:LOCATE X,Y:PRINT CHR$(254)
1490 SC=INT(SC+VAL(RIGHT$(TIME$,2))+((200-SK)/10)):LOCATE 22,24:PRINT SC:LOCATE 10,19:PRINT" YOUR MISSILE RICOCHETTED AND DESTROYED YOU ":FOR H=1 TO 3000:NEXT:DD=DD+1
1500 IF DD<4 THEN LOCATE 10,12:COLOR 3,0:PRINT STRING$(55,178) ELSE 1560
1510 LOCATE 4,2:PRINT" ":LOCATE X,Y:PRINT"0":IF LEV$="1"THEN GOSUB 1570
1530 IF LEV$="2"THEN GOSUB 7370
1540 IF LEV$="3"THEN GOSUB 6720
1550 GOTO 670
1560 CLS:LOCATE 10,25:PRINT"FINAL SCORE WAS",SC:FOR H=1 TO 3000:NEXT:SC=0:DD=0:GOTO 400
1570 LOCATE X,Y:PRINT CHR$(176):FOR M=13 TO 20:N=72:LOCATE M,N:PRINT" ":LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=3 TO 10:N=70:LOCATE M,N:PRINT CHR$(32)
1690 LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=13 TO 18:N=56:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32)
1800 LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=3 TO 8:N=31:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR N=3 TO 23:M=4:LOCATE M,N:PRINT CHR$(32)
1930 LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT:FOR N=29 TO 72:M=4:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT:FOR N=40 TO 58:M=18:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32)
2060 LOCATE M-1,N:PRINT CHR$(32):NEXT:FOR N=54 TO 74:M=14:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT:FOR N=50 TO 72:M=9:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT
2200 FOR N=10 TO 23:M=17:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT:N=51:FOR M=8 TO 16:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32)
2300 LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):N=N-1:NEXT:N=21:FOR M=6 TO 15:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):N=N-1:NEXT:N=31
2390 FOR M=8 TO 18:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):N=N-1:NEXT:COLOR 0,7:FOR M=13 TO 15:N=60:MZ(M,N)=8:LOCATE M,N:PRINT CHR$(186):NEXT
2450 FOR M=3 TO 5:N=36:MZ(M,N)=8:LOCATE M,N:PRINT CHR$(186):NEXT:FOR M=3 TO 5:N=46:MZ(M,N)=8:LOCATE M,N:PRINT CHR$(186):NEXT:FOR M=3 TO 5:N=56:MZ(M,N)=8:LOCATE M,N:PRINT CHR$(186):NEXT:FOR M=3 TO 5:N=6:MZ(M,N)=8:LOCATE M,N:PRINT CHR$(186):NEXT
2490 FOR M=3 TO 5:N=12:MZ(M,N)=8:LOCATE M,N:PRINT CHR$(186):NEXT:FOR M=17 TO 19:N=46:MZ(M,N)=8:LOCATE M,N:PRINT CHR$(186):NEXT:FOR M=16 TO 18:N=15:MZ(M,N)=8:LOCATE M,N:PRINT CHR$(186):NEXT:FOR N=29 TO 33:M=7:MZ(M,N)=7:LOCATE M,N:PRINT CHR$(205):NEXT
2530 FOR N=12 TO 16:M=13:MZ(M,N)=7:LOCATE M,N:PRINT CHR$(205):NEXT:COLOR 4,0:G=1:FOR H=3 TO 21:LOCATE H,G:PRINT" ":NEXT:GOTO 670
2560 COLOR 7,0:LOCATE 10,22:PRINT"WAIT WHILE I PREPARE THE LEVEL ONE TEST":COLOR 7,0:FOR M=13 TO 20:N=72:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT:FOR M=3 TO 10:N=70:MZ(M,N)=4
2740 MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT:FOR M=13 TO 18:N=56:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT:FOR M=3 TO 8
2960 N=31:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT:FOR N=2 TO 23:M=4:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
3130 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
3140 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
3150 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
3160 NEXT:FOR N=29 TO 72:M=4:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
3230 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
3240 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
3250 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
3260 NEXT:FOR N=40 TO 58:M=18:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
3340 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
3350 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
3360 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
3370 NEXT:FOR N=54 TO 74:M=14:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
3412 REM [
3440 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
3450 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
3460 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
3470 NEXT:FOR N=50 TO 72:M=9:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
3540 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
3550 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
3560 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
3570 NEXT:FOR N=10 TO 23:M=17:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
3640 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
3650 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
3660 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
3670 NEXT:N=51:FOR M=8 TO 16:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N+2)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:IF MZ(M,N-3)<>4 THEN MZ(M,N-3)=1
3740 IF MZ(M,N+3)<>4 THEN MZ(M,N+3)=1
3750 IF MZ(M,N+4)<>4 THEN MZ(M,N+4)=3
3760 IF MZ(M,N-4)<>4 THEN MZ(M,N-4)=3
3770 N=N-1:NEXT:N=21:FOR M=6 TO 15:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N+2)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:IF MZ(M,N-3)<>4 THEN MZ(M,N-3)=1
3840 IF MZ(M,N+3)<>4 THEN MZ(M,N+3)=1
3850 IF MZ(M,N+4)<>4 THEN MZ(M,N+4)=3
3860 IF MZ(M,N-4)<>4 THEN MZ(M,N-4)=3
3870 N=N-1:NEXT:N=31:FOR M=8 TO 18:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N+2)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:IF MZ(M,N-3)<>4 THEN MZ(M,N-3)=1
3940 IF MZ(M,N+3)<>4 THEN MZ(M,N+3)=1
3950 IF MZ(M,N+4)<>4 THEN MZ(M,N+4)=3
3960 IF MZ(M,N-4)<>4 THEN MZ(M,N-4)=3
3970 N=N-1:NEXT:MZ(3,2)=0:MZ(5,2)=0:FOR M=13 TO 15:N=60:MZ(M,N)=8:NEXT:FOR M=3 TO 5:N=36:MZ(M,N)=8:NEXT:FOR M=3 TO 5:N=46:MZ(M,N)=8:NEXT:FOR M=3 TO 5:N=56:MZ(M,N)=8:NEXT:FOR M=3 TO 5:N=6:MZ(M,N)=8:NEXT:FOR M=3 TO 5:N=12:MZ(M,N)=8:NEXT
4050 FOR M=17 TO 19:N=46:MZ(M,N)=8:NEXT:FOR M=16 TO 18:N=15:MZ(M,N)=8:NEXT:FOR N=29 TO 33:M=7:MZ(M,N)=7:NEXT:FOR N=12 TO 16:M=13:MZ(M,N)=7:NEXT:COLOR 3,0:FOR O=2 TO 20:FOR P=3 TO 79:IF MZ(O,P)=4 THEN LOCATE O,P:PRINT" ":GOTO 4190
4140 IF MZ(O,P)=0 THEN LOCATE O,P:PRINT CHR$(178):GOTO 4190
4150 IF MZ(O,P)=1 THEN LOCATE O,P:PRINT CHR$(176):GOTO 4190
4160 IF MZ(O,P)=3 THEN LOCATE O,P:PRINT CHR$(177):GOTO 4190
4170 IF MZ(O,P)=7 THEN COLOR 0,7:SOUND 120,.1:LOCATE O,P:PRINT CHR$(205):COLOR 3,0:GOTO 4190
4180 IF MZ(O,P)=8 THEN COLOR 0,7:SOUND 37,.1:LOCATE O,P:PRINT CHR$(186):COLOR 3,0
4190 NEXT:NEXT:COLOR 7,0:RETURN
4210 COLOR 7,0:LOCATE 10,22:PRINT"WAIT WHILE I PREPARE THE LEVEL TWO TEST":COLOR 7,0:FOR M=15 TO 20:N=72:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT:FOR M=10 TO 17:N=57:MZ(M,N)=4
4430 MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT:FOR M=5 TO 12:N=74:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT:FOR M=9 TO 19
4650 N=41:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-1)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT:FOR M=4 TO 19:N=34:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT
4880 FOR M=3 TO 19:N=3:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N+4)=3:NEXT:FOR M=13 TO 19:N=17:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT
5100 FOR M=9 TO 15:N=26:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3:MZ(M,N+4)=3:NEXT:FOR M=3 TO 11:N=21:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:MZ(M,N+2)=4:MZ(M,N+3)=1:MZ(M,N-3)=1:MZ(M,N-4)=3
5320 MZ(M,N+4)=3:NEXT:FOR N=74 TO 55 STEP-1:M=16:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
5410 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
5420 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
5430 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
5440 NEXT:FOR N=55 TO 74:M=11:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
5510 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
5520 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
5530 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
5540 NEXT:FOR N=53 TO 76:M=6:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
5610 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
5620 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
5630 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
5640 NEXT:FOR N=32 TO 48:M=5:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
5710 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
5720 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
5730 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
5740 NEXT:FOR N=15 TO 35:M=18:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
5810 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
5820 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
5830 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
5840 NEXT:FOR N=15 TO 28:M=14:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
5910 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
5920 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
5930 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
5940 NEXT:FOR N=19 TO 28:M=10:MZ(M,N)=4:MZ(M+1,N)=4:MZ(M-1,N)=4:IF MZ(M-2,N)<>4 THEN MZ(M-2,N)=1
6010 IF MZ(M+2,N)<>4 THEN MZ(M+2,N)=1
6020 IF MZ(M+3,N)<>4 THEN MZ(M+3,N)=3
6030 IF MZ(M-3,N)<>4 THEN MZ(M-3,N)=3
6040 NEXT:N=54:FOR M=5 TO 17:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N+2)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:IF MZ(M,N-3)<>4 THEN MZ(M,N-3)=1
6130 IF MZ(M,N+3)<>4 THEN MZ(M,N+3)=1
6140 IF MZ(M,N-4)<>4 THEN MZ(M,N-4)=3
6150 IF MZ(M,N+4)<>4 THEN MZ(M,N+4)=3
6160 N=N-1:NEXT:N=46:FOR M=4 TO 8:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N+2)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:IF MZ(M,N-3)<>4 THEN MZ(M,N-3)=1
6230 IF MZ(M,N+3)<>4 THEN MZ(M,N+3)=1
6240 IF MZ(M,N-4)<>4 THEN MZ(M,N-4)=3
6250 IF MZ(M,N+4)<>4 THEN MZ(M,N+4)=3
6260 N=N-1:NEXT:N=21:FOR M=3 TO 19:MZ(M,N)=4:MZ(M,N+1)=4:MZ(M,N+2)=4:MZ(M,N-1)=4:MZ(M,N-2)=4:IF MZ(M,N-3)<>4 THEN MZ(M,N-3)=1
6330 IF MZ(M,N+3)<>4 THEN MZ(M,N+3)=1
6340 IF MZ(M,N-4)<>4 THEN MZ(M,N-4)=3
6350 IF MZ(M,N+4)<>4 THEN MZ(M,N+4)=3
6360 N=N-1:NEXT:N=60:FOR M=15 TO 17:MZ(M,N)=8:NEXT:N=65:FOR M=15 TO 17:MZ(M,N)=8:NEXT:M=13:FOR N=55 TO 59:MZ(M,N)=7:NEXT:M=8:FOR N=72 TO 76:MZ(M,N)=7:NEXT:M=12:FOR N=40 TO 43:MZ(M,N)=7:NEXT:M=10:FOR N=32 TO 36:MZ(M,N)=7:NEXT
6440 M=16:FOR N=32 TO 36:MZ(M,N)=7:NEXT:M=12:FOR N=24 TO 28:MZ(M,N)=7:NEXT:M=15:FOR N=3 TO 5:MZ(M,N)=7:NEXT:M=10:FOR N=3 TO 5:MZ(M,N)=7:NEXT:M=6:FOR N=3 TO 5:MZ(M,N)=7:NEXT:N=71:FOR M=10 TO 12:MZ(M,N)=8:NEXT:N=66:FOR M=10 TO 12:MZ(M,N)=8:NEXT
6510 N=54:FOR M=5 TO 7:MZ(M,N)=8:NEXT:N=61:FOR M=5 TO 7:MZ(M,N)=8:NEXT:N=66:FOR M=5 TO 7:MZ(M,N)=8:NEXT:N=38:FOR M=4 TO 6:MZ(M,N)=8:NEXT:N=25:FOR M=17 TO 19:MZ(M,N)=8:NEXT:N=20:FOR M=17 TO 19:MZ(M,N)=8:NEXT:N=23:FOR M=13 TO 15:MZ(M,N)=8:NEXT
6600 MZ(3,2)=4:MZ(5,2)=4:COLOR 3,0:FOR O=2 TO 20:FOR P=3 TO 79:IF MZ(O,P)=4 THEN LOCATE O,P:PRINT" ":GOTO 6700
6640 IF MZ(O,P)=0 THEN LOCATE O,P:PRINT CHR$(178):GOTO 6700
6650 IF MZ(O,P)=1 THEN LOCATE O,P:PRINT CHR$(176):GOTO 6700
6660 IF MZ(O,P)=2 THEN LOCATE O,P:PRINT CHR$(176):GOTO 6700
6670 IF MZ(O,P)=3 THEN LOCATE O,P:PRINT CHR$(177):GOTO 6700
6680 IF MZ(O,P)=7 THEN COLOR 0,7:SOUND 100,.1:LOCATE O,P:PRINT CHR$(205):COLOR 3,0:GOTO 6700
6690 IF MZ(O,P)=8 THEN COLOR 0,7:SOUND 37,.1:LOCATE O,P:PRINT CHR$(186):COLOR 3,0
6700 NEXT:NEXT:COLOR 7,0:RETURN
6720 COLOR 7,0:LOCATE 10,10:PRINT" ALLOW ME TO PREPARE THE THIRD TEST ":COLOR 3,0:LOCATE 3,2:PRINT CHR$(221):LOCATE 5,2:PRINT CHR$(221):G=1:FOR H=3 TO 21:LOCATE H,G:PRINT" ":NEXT:H=2:FOR G=1 TO 21:MZ(G,H)=4:NEXT
6760 H=79:FOR G=1 TO 21:MZ(G,H)=4:NEXT:G=1:FOR H=1 TO 79:MZ(G,H)=4:NEXT:G=21:FOR H=1 TO 79:MZ(G,H)=4:NEXT:MZ(4,2)=9:PLAY"MB":DEF SEG=&H40:RANDOMIZE PEEK(&H6D)*256!+PEEK(&H6C)-32768!:FOR H=2 TO 20:FOR G=3 TO 79:X=INT(RND*(16)):LOCATE H,G:PRINT CHR$(16)
6840 IF X=2 OR X=9 THEN LOCATE H,G:PRINT CHR$(176+INT(RND*(3))):MZ(H,G)=0:SOUND(RND*2000)+37,.1:GOTO 6860
6850 LOCATE H,G:PRINT" ":MZ(H,G)=4
6860 NEXT:NEXT:H=72:FOR G=20 TO 13 STEP-1:LOCATE G,H:PRINT" ":MZ(G,H)=4:NEXT:G=4:FOR H=2 TO 15:LOCATE G,H:PRINT" ":MZ(G,H)=4:NEXT:COLOR 0,7:SOUND 600,.1:LOCATE 10,5:PRINT CHR$(201):MZ(10,5)=7
6910 SOUND 600,.1:G=10:FOR H=6 TO 12:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT:SOUND 600,.1:LOCATE 10,13:PRINT CHR$(187):MZ(10,13)=7:SOUND 600,.1:LOCATE 11,13:PRINT CHR$(186):MZ(11,13)=7:SOUND 600,.1:LOCATE 12,13:PRINT CHR$(186):MZ(12,13)=7
6950 SOUND 600,.1:LOCATE 13,13:PRINT CHR$(186):MZ(13,13)=7:SOUND 600,.1:LOCATE 14,13:PRINT CHR$(200):MZ(14,13)=7:SOUND 600,.1:G=14:FOR H=14 TO 30:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT:SOUND 600,.1:LOCATE 14,31:PRINT CHR$(187):MZ(14,31)=7
6990 SOUND 600,.1:H=31:FOR G=15 TO 17:LOCATE G,H:PRINT CHR$(186):MZ(G,H)=7:NEXT:SOUND 600,.1:LOCATE 18,31:PRINT CHR$(188):MZ(13,13)=7:SOUND 600,.1:G=18:FOR H=30 TO 6 STEP-1:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT
7020 SOUND 600,.1:LOCATE 18,5:PRINT CHR$(200):MZ(18,5)=7:SOUND 600,.1:H=5:FOR G=17 TO 11 STEP-1:LOCATE G,H:PRINT CHR$(186):MZ(G,H)=7:NEXT:COLOR 4,0:SOUND 600,.1:FOR G=11 TO 17:FOR H=6 TO 12:LOCATE G,H:PRINT" ":MZ(G,H)=4:SOUND 1500,.1:NEXT:NEXT
7050 SOUND 600,.1:FOR G=15 TO 17:FOR H=13 TO 30:LOCATE G,H:PRINT" ":MZ(G,H)=4:SOUND 1500,.1:NEXT:NEXT:COLOR 0,7:SOUND 600,.1:LOCATE 4,53:PRINT CHR$(201):MZ(4,53)=7:SOUND 600,.1:G=4:FOR H=54 TO 76:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT
7080 SOUND 600,.1:LOCATE 4,77:PRINT CHR$(187):MZ(4,77)=7:SOUND 600,.1:H=77:FOR G=5 TO 11:LOCATE G,H:PRINT CHR$(186):MZ(G,H)=7:NEXT:SOUND 600,.1:LOCATE 12,77:PRINT CHR$(188):MZ(12,77)=7
7110 SOUND 600,.1:G=12:FOR H=76 TO 71 STEP-1:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT:SOUND 600,.1:LOCATE 12,70:PRINT CHR$(200):MZ(12,70)=7:SOUND 600,.1:LOCATE 11,70:PRINT CHR$(186):MZ(11,70)=7:SOUND 600,.1:LOCATE 10,70:PRINT CHR$(186):MZ(10,70)=7
7150 SOUND 600,.1:LOCATE 9,70:PRINT CHR$(186):MZ(9,70)=7:SOUND 600,.1:LOCATE 8,70:PRINT CHR$(187):MZ(8,70)=7:SOUND 600,.1:G=8:FOR H=69 TO 54 STEP-1:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT:SOUND 600,.1:LOCATE 8,53:PRINT CHR$(200):MZ(8,53)=7
7190 SOUND 600,.1:LOCATE 7,53:PRINT CHR$(186):MZ(7,53)=7:SOUND 600,.1:LOCATE 6,53:PRINT CHR$(186):MZ(6,53)=7:SOUND 600,.1:LOCATE 5,53:PRINT CHR$(186):MZ(5,53)=7:COLOR 4,0
7220 SOUND 600,.1:FOR G=5 TO 7:FOR H=54 TO 70:LOCATE G,H:PRINT" ":MZ(G,H)=4:SOUND 1500,.1:NEXT:NEXT:SOUND 600,.1:FOR G=5 TO 11:FOR H=71 TO 76:LOCATE G,H:PRINT" ":MZ(G,H)=4:SOUND 1500,.1:NEXT:NEXT
7240 COLOR 0,7:SOUND 600,.1:LOCATE 9,38:PRINT CHR$(201):MZ(9,38)=7:SOUND 600,.1:G=9:FOR H=39 TO 43:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT:SOUND 600,.1:LOCATE 9,44:PRINT CHR$(187):MZ(9,44)=7:SOUND 600,.1:LOCATE 10,44:PRINT CHR$(186):MZ(10,44)=7
7280 SOUND 600,.1:LOCATE 11,44:PRINT CHR$(186):MZ(11,44)=7:SOUND 600,.1:LOCATE 12,44:PRINT CHR$(186):MZ(12,44)=7:SOUND 600,.1:LOCATE 13,44:PRINT CHR$(188):MZ(13,44)=7:SOUND 600,.1:G=13:FOR H=43 TO 39 STEP-1:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT
7320 SOUND 600,.1:LOCATE 13,38:PRINT CHR$(200):MZ(13,38)=7:SOUND 600,.1:LOCATE 12,38:PRINT CHR$(186):MZ(12,38)=7:SOUND 600,.1:LOCATE 11,38:PRINT CHR$(186):MZ(11,38)=7:SOUND 600,.1:LOCATE 10,38:PRINT CHR$(186):MZ(10,38)=7:COLOR 7,0
7360 SOUND 600,.1:FOR G=10 TO 12:FOR H=39 TO 43:SOUND 1500,.1:LOCATE G,H:PRINT" ":MZ(G,H)=4:NEXT:NEXT:RETURN
7370 LOCATE 3,2:PRINT CHR$(221):LOCATE 5,2:PRINT CHR$(221):G=1:FOR H=3 TO 21:LOCATE H,G:PRINT" ":NEXT:FOR M=15 TO 20:N=72:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32)
7450 LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=10 TO 17:N=57:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=5 TO 12:N=74:LOCATE M,N:PRINT CHR$(32)
7580 LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=9 TO 19:N=41:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32)
7690 LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=4 TO 19:N=34:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=3 TO 19:N=3:LOCATE M,N:PRINT CHR$(32)
7820 LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=13 TO 19:N=17:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=9 TO 15:N=26
7950 LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR M=3 TO 11:N=21:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32)
8060 LOCATE M,N-2:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):NEXT:FOR N=74 TO 55 STEP-1:M=16:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT:FOR N=55 TO 74:M=11:LOCATE M,N:PRINT CHR$(32)
8190 LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT:FOR N=53 TO 76:M=6:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT:FOR N=32 TO 48:M=5:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32)
8320 LOCATE M-1,N:PRINT CHR$(32):NEXT:FOR N=15 TO 35:M=18:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT:FOR N=15 TO 28:M=14:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT
8460 FOR N=19 TO 28:M=10:LOCATE M,N:PRINT CHR$(32):LOCATE M+1,N:PRINT CHR$(32):LOCATE M-1,N:PRINT CHR$(32):NEXT:N=54:FOR M=5 TO 17:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32)
8580 LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):N=N-1:NEXT:N=46:FOR M=4 TO 8:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):N=N-1:NEXT:N=21
8670 FOR M=3 TO 19:LOCATE M,N:PRINT CHR$(32):LOCATE M,N+1:PRINT CHR$(32):LOCATE M,N+2:PRINT CHR$(32):LOCATE M,N-1:PRINT CHR$(32):LOCATE M,N-2:PRINT CHR$(32):N=N-1:NEXT:COLOR 0,7:N=60:FOR M=15 TO 17:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT
8740 N=65:FOR M=15 TO 17:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT:M=13:FOR N=55 TO 59:LOCATE M,N:PRINT CHR$(205):MZ(M,N)=7:NEXT:M=8:FOR N=72 TO 76:LOCATE M,N:PRINT CHR$(205):MZ(M,N)=7:NEXT:M=12:FOR N=40 TO 43:LOCATE M,N:PRINT CHR$(205):MZ(M,N)=7:NEXT
8780 M=10:FOR N=32 TO 36:LOCATE M,N:PRINT CHR$(205):MZ(M,N)=7:NEXT:M=16:FOR N=32 TO 36:LOCATE M,N:PRINT CHR$(205):MZ(M,N)=7:NEXT:M=12:FOR N=24 TO 28:LOCATE M,N:PRINT CHR$(205):MZ(M,N)=7:NEXT:M=15:FOR N=3 TO 5:LOCATE M,N:PRINT CHR$(205):MZ(M,N)=7:NEXT
8820 M=10:FOR N=3 TO 5:LOCATE M,N:PRINT CHR$(205):MZ(M,N)=7:NEXT:M=6:FOR N=3 TO 5:LOCATE M,N:PRINT CHR$(205):MZ(M,N)=7:NEXT:N=71:FOR M=10 TO 12:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT:N=66:FOR M=10 TO 12:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT
8860 N=54:FOR M=5 TO 7:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT:N=61:FOR M=5 TO 7:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT:N=66:FOR M=5 TO 7:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT:N=38:FOR M=4 TO 6:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT
8900 N=25:FOR M=17 TO 19:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT:N=20:FOR M=17 TO 19:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT:N=23:FOR M=13 TO 15:LOCATE M,N:PRINT CHR$(186):MZ(M,N)=8:NEXT:COLOR 4,0:RETURN
8940 IF LEV$="3"THEN LEV$="1":GOTO 8970
8950 IF LEV$="1"THEN LEV$="2":GOTO 8970
8960 IF LEV$="2"THEN LEV$="3
8970 PLAY"MB":CLS:WIDTH 80:KEY OFF:COLOR 4,0:PLAY"MB":CLS:WIDTH 80:KEY OFF:COLOR 4,0:LOCATE 10,9:PRINT"PREPARE YOURSELF FOR ACCELERATION TO HYPERSPEED FOR LEVEL "+LEV$+" PLAY":FOR Y=37 TO 3000 STEP 11:SOUND Y,.2:SOUND 3037-Y,.2:NEXT:CLS
8990 ST1$=STRING$(79,176):COLOR 1,0:ST2$=STRING$(79,177):ST3$=STRING$(79,178):ST4$=STRING$(79,219):Q$=CHR$(179):FOR R=1 TO 2:FOR W=2500 TO 1000 STEP-100:SOUND W,.1:NEXT:COLOR 4,0:LOCATE 12,40:PRINT CHR$(15):LOCATE 11,40:PRINT"*":COLOR 3,0
9070 FOR I=1 TO 11:LOCATE I,40:PRINT Q$:NEXT:COLOR 1,0:LOCATE 24,1:PRINT ST1$:COLOR 4,0:LOCATE 12,40:PRINT CHR$(15):LOCATE 11,40:PRINT"*":COLOR 3,0:FOR I=1 TO 11:LOCATE I,40:PRINT Q$:NEXT:COLOR 1,0:LOCATE 24,1:PRINT ST2$:COLOR 4,0
9130 LOCATE 12,40:PRINT CHR$(15):LOCATE 11,40:PRINT"*":COLOR 1,0:FOR I=1 TO 11:LOCATE I,40:PRINT Q$:NEXT:COLOR 1,0:LOCATE 24,1:PRINT ST3$:COLOR 2,0:LOCATE 12,40:PRINT CHR$(15):LOCATE 11,40:PRINT"*":COLOR 2,0
9190 FOR I=1 TO 11:LOCATE I,40:PRINT Q$:NEXT:COLOR 1,0:LOCATE 24,1:PRINT ST4$:COLOR 2,0:FOR I=1 TO 11:LOCATE I,40:PRINT Q$:NEXT:NEXT:FOR Z=1 TO 15
9240 SOUND 2000,.1:SOUND(16-Z)*100,.1:LOCATE 24,1:PRINT STRING$(80," "):LOCATE 12,40:PRINT CHR$(15):LOCATE 11,40:PRINT"*":FOR I=1 TO 11:LOCATE I,40:PRINT Q$:NEXT:NEXT:FOR P=3500 TO 100 STEP-20:SOUND P,.2:NEXT:SOUND 100,24
9280 LOCATE 13,6:PRINT"YOU HAVE SUCCESSFULLY MADE THE HYPERSPEED JUMP TO LEVEL "+LEV$+" OF DATNOIDS":FOR I=1 TO 5000:NEXT:IF LEV$="1"THEN LOCATE 15,20:PRINT"YOU ALSO HAVE A FASTER SHIP, GOOD LUCK":FOR I=1 TO 2500:NEXT
9300 CLS:IF LEV$="1"THEN SK=INT(SK-(SK/2)):IF SK<1 THEN SK=1
9310 GOTO 470

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment