PCjs Machines

Home of the original IBM PC emulator for browsers.

Logo

PC-SIG Diskette Library (Disk #448)

[PCjs Machine "ibm5160"]

Waiting for machine "ibm5160" to load....

Information about “GAME SERIES #19”

A fine collection of arcade type games, most of which require color-
graphics. Pinball is an absorbing video version of the old pool hall
favorite, and MAZE, KANGAROO, and RIBIT will all keep you hopping!
The rest of these are all equally entertaining, but BABY may not
appeal to all tastes.

System Requirements:  128K, one disk drive, monochome monitor,
color graphics needed if file marked by a plus symbol (+).

How to Start:  To read DOC files, enter TYPE filename.ext and press
<ENTER>.  To run an EXE program, just type its name and press <ENTER>.
For instructions on running BASIC programs, please refer your DOS
manual.

File Descriptions:

AF       DOC  Documentation file for AF.EXE
KANGAROO BAS  Donkey Kong-like game
RIBIT    EXE  Frogger clone
PINBALL  EXE  Pinball game made using Electronic Arts pinball program
BABY     EXE  Catch the falling babies as they jump from a building
AF       EXE  War game based in Afghanistan
BOOGERS! BAS  Shoot your way out of a maze
MAZE1-2A EXE  Hi-Res maze game (tough!)
ZYLGIS   SCR  High scores for ZYLGIS.BAS
ZYLGIS   BAS  Another PAC-MAN clone

BOOGERS!.BAS

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,0.5:SOUND 5000-I,0.3:NEXT:PLAY"mf":COLOR 7,0:SOUND 32767,0.1:PRINT"                                       "+CHR$(15):SOUND 32767,0.1:PRINT"                                       *
280 SOUND 32767,0.1:PRINT"                                       "+CHR$(179):SOUND 32767,0.1:PRINT"                                       "+CHR$(179):SOUND 32767,0.1:PRINT"                                       "+CHR$(179)
310 SOUND 32767,0.1:PRINT"                                       "+CHR$(179):SOUND 32767,0.1:PRINT"                                       "+CHR$(179):SOUND 32767,0.1:PRINT"                                       "+CHR$(179)
340 SOUND 32767,0.1:LOCATE 23,28:COLOR 0,7:PRINT" BOOGERS! BY MITCH TEICH ":SOUND 32767,0.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,0.1:SOUND 3000+R*1.5,0.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,0.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,0.1
780 IF A=-1 THEN LOCATE X-1,Y:PRINT CHR$(179):SOUND 32767,0.1
790 IF B=-1 THEN LOCATE X,Y-1:PRINT CHR$(196):SOUND 32767,0.1
800 IF B=1 THEN LOCATE X,Y+1:PRINT CHR$(196):SOUND 32767,0.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,0.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,0.1:SOUND 10100-T,0.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,0.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,0.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,0.1:NEXT:LOCATE XT-A,YT-B:PRINT CHR$(177):FOR H=1500 TO 3000 STEP 100:SOUND H,0.1:NEXT:LOCATE XT-A,YT-B:PRINT CHR$(178):FOR H=3000 TO 5000 STEP 100:SOUND H,0.1:NEXT:LOCATE XT-A,YT-B
1360 PRINT CHR$(219):SOUND 5000,0.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,0.1:NEXT:LOCATE XT-A,YT-B:PRINT CHR$(177):FOR H=1500 TO 3000 STEP 100:SOUND H,0.1:NEXT:LOCATE XT-A,YT-B:PRINT CHR$(178):FOR H=3000 TO 5000 STEP 100:SOUND H,0.1:NEXT:LOCATE XT-A,YT-B
1400 PRINT CHR$(219):SOUND 5000,0.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,0.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,0.1:SOUND 10100-T,0.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,0.1:LOCATE O,P:PRINT CHR$(205):COLOR 3,0:GOTO 4190
4180 IF MZ(O,P)=8 THEN COLOR 0,7:SOUND 37,0.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,0.1:LOCATE O,P:PRINT CHR$(205):COLOR 3,0:GOTO 6700
6690 IF MZ(O,P)=8 THEN COLOR 0,7:SOUND 37,0.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,0.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,0.1:LOCATE 10,5:PRINT CHR$(201):MZ(10,5)=7
6910 SOUND 600,0.1:G=10:FOR H=6 TO 12:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT:SOUND 600,0.1:LOCATE 10,13:PRINT CHR$(187):MZ(10,13)=7:SOUND 600,0.1:LOCATE 11,13:PRINT CHR$(186):MZ(11,13)=7:SOUND 600,0.1:LOCATE 12,13:PRINT CHR$(186):MZ(12,13)=7
6950 SOUND 600,0.1:LOCATE 13,13:PRINT CHR$(186):MZ(13,13)=7:SOUND 600,0.1:LOCATE 14,13:PRINT CHR$(200):MZ(14,13)=7:SOUND 600,0.1:G=14:FOR H=14 TO 30:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT:SOUND 600,0.1:LOCATE 14,31:PRINT CHR$(187):MZ(14,31)=7
6990 SOUND 600,0.1:H=31:FOR G=15 TO 17:LOCATE G,H:PRINT CHR$(186):MZ(G,H)=7:NEXT:SOUND 600,0.1:LOCATE 18,31:PRINT CHR$(188):MZ(13,13)=7:SOUND 600,0.1:G=18:FOR H=30 TO 6 STEP-1:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT
7020 SOUND 600,0.1:LOCATE 18,5:PRINT CHR$(200):MZ(18,5)=7:SOUND 600,0.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,0.1:FOR G=11 TO 17:FOR H=6 TO 12:LOCATE G,H:PRINT" ":MZ(G,H)=4:SOUND 1500,0.1:NEXT:NEXT
7050 SOUND 600,0.1:FOR G=15 TO 17:FOR H=13 TO 30:LOCATE G,H:PRINT" ":MZ(G,H)=4:SOUND 1500,0.1:NEXT:NEXT:COLOR 0,7:SOUND 600,0.1:LOCATE 4,53:PRINT CHR$(201):MZ(4,53)=7:SOUND 600,0.1:G=4:FOR H=54 TO 76:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT
7080 SOUND 600,0.1:LOCATE 4,77:PRINT CHR$(187):MZ(4,77)=7:SOUND 600,0.1:H=77:FOR G=5 TO 11:LOCATE G,H:PRINT CHR$(186):MZ(G,H)=7:NEXT:SOUND 600,0.1:LOCATE 12,77:PRINT CHR$(188):MZ(12,77)=7
7110 SOUND 600,0.1:G=12:FOR H=76 TO 71 STEP-1:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT:SOUND 600,0.1:LOCATE 12,70:PRINT CHR$(200):MZ(12,70)=7:SOUND 600,0.1:LOCATE 11,70:PRINT CHR$(186):MZ(11,70)=7:SOUND 600,0.1:LOCATE 10,70:PRINT CHR$(186):MZ(10,70)=7
7150 SOUND 600,0.1:LOCATE 9,70:PRINT CHR$(186):MZ(9,70)=7:SOUND 600,0.1:LOCATE 8,70:PRINT CHR$(187):MZ(8,70)=7:SOUND 600,0.1:G=8:FOR H=69 TO 54 STEP-1:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT:SOUND 600,0.1:LOCATE 8,53:PRINT CHR$(200):MZ(8,53)=7
7190 SOUND 600,0.1:LOCATE 7,53:PRINT CHR$(186):MZ(7,53)=7:SOUND 600,0.1:LOCATE 6,53:PRINT CHR$(186):MZ(6,53)=7:SOUND 600,0.1:LOCATE 5,53:PRINT CHR$(186):MZ(5,53)=7:COLOR 4,0
7220 SOUND 600,0.1:FOR G=5 TO 7:FOR H=54 TO 70:LOCATE G,H:PRINT" ":MZ(G,H)=4:SOUND 1500,0.1:NEXT:NEXT:SOUND 600,0.1:FOR G=5 TO 11:FOR H=71 TO 76:LOCATE G,H:PRINT" ":MZ(G,H)=4:SOUND 1500,0.1:NEXT:NEXT
7240 COLOR 0,7:SOUND 600,0.1:LOCATE 9,38:PRINT CHR$(201):MZ(9,38)=7:SOUND 600,0.1:G=9:FOR H=39 TO 43:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT:SOUND 600,0.1:LOCATE 9,44:PRINT CHR$(187):MZ(9,44)=7:SOUND 600,0.1:LOCATE 10,44:PRINT CHR$(186):MZ(10,44)=7
7280 SOUND 600,0.1:LOCATE 11,44:PRINT CHR$(186):MZ(11,44)=7:SOUND 600,0.1:LOCATE 12,44:PRINT CHR$(186):MZ(12,44)=7:SOUND 600,0.1:LOCATE 13,44:PRINT CHR$(188):MZ(13,44)=7:SOUND 600,0.1:G=13:FOR H=43 TO 39 STEP-1:LOCATE G,H:PRINT CHR$(205):MZ(G,H)=7:NEXT
7320 SOUND 600,0.1:LOCATE 13,38:PRINT CHR$(200):MZ(13,38)=7:SOUND 600,0.1:LOCATE 12,38:PRINT CHR$(186):MZ(12,38)=7:SOUND 600,0.1:LOCATE 11,38:PRINT CHR$(186):MZ(11,38)=7:SOUND 600,0.1:LOCATE 10,38:PRINT CHR$(186):MZ(10,38)=7:COLOR 7,0
7360 SOUND 600,0.1:FOR G=10 TO 12:FOR H=39 TO 43:SOUND 1500,0.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,0.2:SOUND 3037-Y,0.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,0.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,0.1:SOUND(16-Z)*100,0.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,0.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

FILES448.TXT

------------------------------------------------------------------------
Disk No 448   Assorted games                                    v1 DS2
-----------------------------------------------------------------------
A collection of games. Most are in color and require the color graphics
monitor to run. Most of the games are medium to high quality, BABY is
a little disgusting.

KANGAROO BAS+ Donkey Kong-like game
AF       DOC  Documentation file for AF.EXE
AF       EXE+ War game based in Afghanistan
BABY     EXE+ Catch the falling babies as they jump from a building
PINBALL  EXE+ Pinball game made using Electronic Arts pinball program
RIBIT    EXE+ Frogger clone
MAZE1-2A EXE+ Hi-Res maze game (tough!)
BOOGERS! BAS  Shoot your way out of a maze
ZYLGIS   BAS  Another PAC-MAN clone
ZYLGIS   SCR  High scores for ZYLGIS.BAS


PC Software Interest Group (PC-SIG)
1030 E Duane, Suite J
Sunnyvale, CA 94086
(408) 730-9291

KANGAROO.BAS

100 KEY OFF:SCREEN 1,0:CLS
110 DIM BALL%(5),KANG1%(11),KANG2%(12),KANG3%(11),KANG4%(12),SHAPE$(4): DEF FNR(X)=INT(RND(1)*X): DEF FNUP$(X$)=CHR$(ASC(X$)+32*(ASC(X$)>96))
120 FOR X=1 TO 4: READ SHAPE$(X): PRESET (X*20,0): DRAW "C3"+SHAPE$(X): NEXT
130 DATA "G1 L1 G1 R2 D1 L1 G1 R2 BR3 BD1 L1 BL2 L1 G1 R4 G1 L3 D1 R2 BD1 BL2 L1"
140 DATA "G1 L1 G1 R2 D1 L1 G1 R2 BR3 BD1 L1 BL2 L1 G1 R4 G1 L3 D1 R2 F1 G1"
150 DATA "BL2 F1 R1 F1 L2 D1 R1 F1 L2 BL3 BD1 R1 BR2 R1 F1 L4 F1 R3 D1 L2 BD1 BR2 R1"
160 DATA "BL2 F1 R1 F1 L2 D1 R1 F1 L2 BL3 BD1 R1 BR2 R1 F1 L4 F1 R3 D1 L2 G1 F1"
170 PSET (10,0): DRAW "R1 F1 L3 D1 R3 G1 L1"
180 BABY$="F1 R1 F1 L2 D1 R1 D1 L1 D1 R2"
190 GET (9,0)-(12,3),BALL%: GET (16,0)-(23,9),KANG1%: GET (36,0)-(43,10),KANG2%: GET (56,0)-(63,9),KANG3%: GET (76,0)-(83,10),KANG4%: CLS
200 RANDOMIZE VAL(MID$(TIME$,3,2))*100+VAL(RIGHT$(TIME$,2))
210 LOCATE 7:PRINT "Joystick or Keyboard? (J/K)": LINE (224,48)-(231,55),,BF
220 A$=INKEY$: IF A$="" THEN 220 ELSE A$=FNUP$(A$): IF A$="J" THEN MO=2: STRIG ON ELSE IF A$="K" THEN MO=1 ELSE 220
230 CLS
240 SP=1: D(0)=-2: D(1)=0: D(2)=2
250 FOR I=230 TO 240 STEP 10: PSET (I,140): DRAW SHAPE$(1): NEXT
260 FOR I=135 TO 45 STEP -30: LINE (0,I)-(279,I)
270 IF I=135 THEN 300
280 H=FNR(200)+4: IF POINT(H,I+30)=0 OR POINT(H+15,I+30)=0 OR (I=45 AND H<30) THEN 280
290 LINE (H,I)-(H+15,I),0
300 NEXT
310 PSET (1,39): DRAW BABY$: PUT (SP*5+5,145),BALL%
320 DEF SEG=0: POKE 1050,PEEK(1052): X=260: Y=120: L=125: IT=1: G=0
330 M=9: PUT (M,L+6),BALL%
340 GOSUB 550
350 G=G+0.5: X=X+D(T): Y=Y+G
360 IF T<>1 THEN IT=T+1 ELSE IT=IT-((IT+1) MOD 2)
370 IF ABS(G)<>G THEN IT=IT+1
380 GOSUB 1040
390 IF X>272 OR X<12 THEN GOSUB 1040: X=X-D(T): GOSUB 1040
400 IF Y=L THEN G=-3: GOTO 450
410 GOSUB 830
420 IF L+5<Y+9 AND L+5>Y AND M-(D(INT(IT/3))*2)-7<X AND M-(D(INT(IT/3))*2)+2>X THEN GOSUB 740: GOTO 780
430 Q=L+10: IF INT(Y)=L+11 AND POINT(X,Q)=3 THEN 620
440 GOSUB 1040: GOTO 340
450 IF L<50 AND X<40 THEN 870
460 IF T=1 THEN T=0
470 Z=X+D(T)-1: IF Q<135 AND T=2 AND POINT(X+5,Q)=0 THEN Z=X+5
480 IF Q<135 AND T=2 AND POINT(X+3,Q)=0 THEN Z=X+3
490 IF Q<135 AND POINT(Z,Q)=0 AND FL=0 THEN G=1.5: E=-30: GOSUB 540: GOTO 410
500 IF FL=0 THEN SOUND 700,0.1
510 FL=0
520 GOSUB 590
530 GOTO 410
540 PUT (M,L+6),BALL%: L=L-E: PUT (M,L+6),BALL%: RETURN
550 IF MO=2 THEN T=INT(STICK(0)/90): RETURN ELSE A$=INKEY$: IF A$="" THEN T=HT: RETURN
560 IF LEN(A$)=1 THEN A$=FNUP$(A$): K=ASC(A$): K2=0 ELSE K=0: K2=ASC(MID$(A$,2))
570 IF K=52 OR K2=75 THEN T=0 ELSE IF K=54 OR K2=77 THEN T=2 ELSE T=1
580 HT=T: RETURN
590 IF L<51 THEN RETURN ELSE IF MO=1 THEN IF K=32 OR K2=72 THEN 610 ELSE RETURN
600 IF NOT STRIG(1) AND NOT STRIG(5) THEN RETURN
610 G=-6: E=30: GOSUB 540: FL=1: K=0: K2=0: RETURN
620 GOSUB 740
630 IF IT=4 THEN DRAW "A1": FD=36 ELSE DRAW "A3": FD=38
640 FOR I=Y+5 TO L+FD
650 PSET (X,I): DRAW SHAPE$(IT)
660 FOR P=1 TO 20: NEXT
670 PRESET (X,I): DRAW SHAPE$(IT)
680 NEXT
690 FL=0
700 U=U+1: IF U=3 THEN LOCATE 21,1: PRINT "Game Over.": GOTO 1020
710 DRAW "A0"
720 PRESET (220+10*U,140): DRAW SHAPE$(1)
730 GOTO 320
740 SOUND 300,0.1
750 GOSUB 1040
760 PUT (M,L+6),BALL%
770 RETURN
780 IF D(T)=2 THEN IT=3: A=6 ELSE IT=1: A=4
790 LINE (X-4,Y)-(X+3,Y+9),0,BF: DRAW "A1"
800 PRESET (X-12,L+A): DRAW "C3"+SHAPE$(IT)
810 FOR P=1 TO 750: NEXT: PRESET (X-12,L+A): DRAW SHAPE$(IT)+"A0"
820 GOTO 700
830 PUT (M,L+6),BALL%
840 M=M+SP: IF M>275 THEN M=5
850 PUT (M,L+6),BALL%
860 RETURN
870 GOSUB 750
880 LOCATE 7,1: PRINT "Mom!"
890 I=X: FOR X=I TO 11 STEP -1
900 GOSUB 1040
910 FOR P=1 TO 30: NEXT
920 GOSUB 1040: NEXT
930 GOSUB 1040
940 LOCATE 4,2: PRINT CHR$(3)
950 SP=SP+1: IF SP=7 THEN LOCATE 21,1: PRINT "You Won!": GOTO 1020
960 FOR P=1 TO 1000: NEXT
970 PRESET (1,39): DRAW BABY$
980 LOCATE 7,4: PRINT "?"
990 LOCATE 4,2: PRINT "?"
1000 FOR I=38 TO 0 STEP -1: PSET (1,I): DRAW BABY$: FOR P=1 TO 30: NEXT: PRESET (1,I): DRAW BABY$: NEXT I
1010 FOR P=1 TO 1200: NEXT: LINE (0,0)-(319,135),0,BF: GOTO 260
1020 PRINT: PRINT "Would you like to play again? (Y/N)": LINE (288,176)-(295,183),,BF
1030 A$=INKEY$: IF A$="" THEN 1030 ELSE A$=FNUP$(A$): IF A$="Y" THEN RUN ELSE IF A$="N" THEN CLS: END ELSE 1030
1040 XX=X-4: ON IT GOTO 1050,1060,1070,1080
1050 PUT (XX,Y),KANG1%: RETURN
1060 PUT (XX,Y),KANG2%: RETURN
1070 PUT (XX,Y),KANG3%: RETURN
1080 PUT (XX,Y),KANG4%: RETURN

ZYLGIS.BAS

10 KEY OFF:CLS:PRINT:PRINT:COLOR 8,7:LOCATE 3,28:PRINT" * ZYLGIS * ":COLOR 0,2:PRINT:PRINT TAB(40);"By: Jeff Askew":PRINT TAB(40);"12/12/82"
20 PLAY"t100o3c16e16g16o4c16o3p16g16o4c3p8t200L32o4cco3ba#ag#gf#fed#dc#c16
30 PRINT:PRINT:PRINT "In this real-time graphics game, you must manuver your ship":PRINT "( ";CHR$(24);" ";CHR$(25);" ";CHR$(26);" or ";CHR$(27);" , depending on the direction you are traveling.)"
40 PRINT"around any and all solid blockades  ( ";STRING$(4,219);" )  in an attempt to":PRINT"squash all of the aliens ( ";CHR$(1);" ) that are present. Once you manage to"
50 PRINT"rid an entire screen of aliens, you will be promoted to a harder":PRINT"level. Every two levels, a new screen configuration will be provided."
60 PRINT:PRINT"You have seven ships to begin with. Your ship dies when it collides":PRINT"with a solid blockade. After a screen is drawn, the game will not"
70 PRINT"begin until you press a key. At any time during the game, you may":PRINT"press the space bar to suspend play. Press it again to continue.":PRINT:PRINT TAB(30);"** GOOD  LUCK **":PRINT:PRINT:PRINT"Press a key to proceed ...........";
80 IN$=INKEY$:IF IN$="" THEN 80
90 SOUND 1500,5:OPEN "ZYLGIS.SCR" FOR INPUT AS #1
100 INPUT #1,IN$(1),SCOR(1),IN$(2),SCOR(2),IN$(3),SCOR(3),IN$(4),SCOR(4),IN$(5),SCOR(5),IN$(6),SCOR(6),IN$(7),SCOR(7),IN$(8),SCOR(8),IN$(9),SCOR(9),IN$(10),SCOR(10)
110 SOUND 50,5:CLOSE #1
120 GOTO 840
130 CLS:MEN=7:LEVEL=1
140 D=2:R=22:C=71:P$=CHR$(17):SCORE=0
150 NUMLEFT=27:GOSUB 530
160 LOCATE 1,1:PRINT STRING$(74,219):LOCATE 23,1:PRINT STRING$(74,219)
170 FOR A=2 TO 22:LOCATE A,1:PRINT"██":LOCATE A,73:PRINT"██":NEXT
180 LOCATE 24,40:PRINT"MEN LEFT = ";MEN;:LOCATE 24,20:PRINT"SCORE =  ";SCORE;:LOCATE 24,61:PRINT"LEVEL = ";LEVEL;
190 SOUND 1000,0.5:ON LEVEL GOSUB 610,620,630,640,650,660,670,690,700,750,760,800,810,830,830,830,830,830
200 SOUND 500,0.5:DEF SEG=0:POKE 1050,PEEK(1052):DEF SEG
210 '
220 '###################################################################
230 '
240 IF NUMLEFT<=0 THEN 410 ELSE GOSUB 450
250 COLOR 15:LOCATE R,C:PRINT P$:COLOR 0,2
260 IF P$=CHR$(24) THEN D=SCREEN(R-1,C):IF D=219 THEN 350 ELSE LOCATE R,C:PRINT" ":R=R-0.5:IF D=1 THEN SOUND 1000,0.2:SOUND 500,0.1:SCORE=SCORE+5:NUMLEFT=NUMLEFT-0.5:LOCATE 24,30:PRINT SCORE;
270 IF P$=CHR$(24) THEN 240
280 IF P$=CHR$(25) THEN D=SCREEN(R+1,C):IF D=219 THEN 350 ELSE LOCATE R,C:PRINT" ":R=R+0.5:IF D=1 THEN SOUND 1000,0.2:SOUND 500,0.1:SCORE=SCORE+5:NUMLEFT=NUMLEFT-0.5:LOCATE 24,30:PRINT SCORE;
290 IF P$=CHR$(25) THEN 240
300 IF P$=CHR$(26) THEN D=SCREEN(R,C+1):IF D=219 THEN 350 ELSE LOCATE R,C:PRINT" ":C=C+1:IF D=1 THEN SOUND 1000,0.3:SOUND 500,0.2:SCORE=SCORE+10:NUMLEFT=NUMLEFT-1:LOCATE 24,30:PRINT SCORE;
310 IF P$=CHR$(26) THEN 240
320 IF P$=CHR$(27) THEN D=SCREEN(R,C-1):IF D=219 THEN 350 ELSE LOCATE R,C:PRINT" ":C=C-1:IF D=1 THEN SOUND 1000,0.3:SOUND 500,0.2:SCORE=SCORE+10:NUMLEFT=NUMLEFT-1:LOCATE 24,30:PRINT SCORE;
330 IF P$=CHR$(27) THEN 240
340 GOTO 240
350 REM blow up
360 LOCATE 12,30:COLOR 24:PRINT" <<<<<  ZAP  >>>>> ":COLOR 0,2
370 FOR A=1100 TO 40 STEP -5:SOUND A,0.1:NEXT
380 FOR A=1 TO 500:NEXT
390 FOR A=1 TO 1000:NEXT
400 IF MEN<=1 THEN 580 ELSE IF 219 THEN MEN=MEN-1
410 R=22:C=71:P$=CHR$(17):CLS:IF D<>219 THEN LEVEL=LEVEL+1
420 D=2:GOTO 150
430 COLOR 15:LOCATE R,C:PRINT P$:COLOR 0,2:GOTO 240
440 REM -- move
450 A$=INKEY$:IF A$="" THEN RETURN
460 E=ASC(RIGHT$(A$,1))
470 IF E=80 THEN P$=CHR$(25):RETURN
480 IF E=72 THEN P$=CHR$(24):RETURN
490 IF E=75 THEN P$=CHR$(27):RETURN
500 IF E=77 THEN P$=CHR$(26):RETURN
510 IF E=32 THEN GOSUB 590:RETURN
520 RETURN
530 FOR AA=1 TO 33
540 BBB=CINT(60*RND+8):AAA=CINT(18*RND+2)
550 LOCATE AAA,BBB:PRINT CHR$(1)
560 NEXT
570 RETURN
580 GOTO 840
590 COLOR 8,7:LOCATE R,C:PRINT P$
600 A$=INKEY$:IF A$<>" " THEN 590 ELSE COLOR 0,2:RETURN
610 RETURN
620 GOTO 610
630 LOCATE 8,15:PRINT STRING$(45,219):LOCATE 14,15:PRINT STRING$(45,219):RETURN
640 GOTO 630
650 FOR CCC=6 TO 17:LOCATE CCC,30:PRINT"██":LOCATE CCC,45:PRINT"██":NEXT:RETURN
660 GOTO 650
670 TEMP$=STRING$(6,219)+STRING$(6,32)+STRING$(10,219)+STRING$(6,32)+STRING$(10,219)+STRING$(6,32)+STRING$(6,219):LOCATE 6,11:PRINT TEMP$:LOCATE 17,11:PRINT TEMP$:FOR CCC=7 TO 10:LOCATE CCC,11:PRINT"██":LOCATE CCC,59:PRINT"██":NEXT:FOR CCC=13 TO 16
680 LOCATE CCC,11:PRINT"██":LOCATE CCC,59:PRINT"██":NEXT:RETURN
690 GOTO 670
700 LOCATE 4,15:PRINT"██████████████████████    ██████████████████████"
710 FOR CCC=5 TO 10:LOCATE CCC,15:PRINT"██":LOCATE CCC,61:PRINT"██":NEXT
720 FOR CCC=13 TO 19:LOCATE CCC,15:PRINT"██":LOCATE CCC,61:PRINT"██":NEXT
730 LOCATE 20,15:PRINT"██████████████████████    ██████████████████████"
740 LOCATE 8,38:PRINT"██":LOCATE 9,38:PRINT"██":LOCATE 10,38:PRINT"██":LOCATE 11,32:PRINT"██████████████":LOCATE 12,38:PRINT"██":LOCATE 13,38:PRINT"██":LOCATE 14,38:PRINT"██":RETURN
750 GOTO 700
760 FOR AA=1 TO 7:BBB=CINT(60*RND+8):AAA=CINT(18*RND+2):LOCATE AAA,BBB:PRINT CHR$(1):NEXT
770 FOR CCC=3 TO 11:LOCATE CCC,15:PRINT"██":LOCATE CCC,31:PRINT"██":LOCATE CCC,47:PRINT"██":NEXT:FOR CCC=13 TO 21:LOCATE CCC,15:PRINT"██":LOCATE CCC,31:PRINT"██":LOCATE CCC,47:PRINT"██":NEXT:TEMP=9
780 FOR CCC=1 TO 2:LOCATE TEMP,3:PRINT STRING$(20,219):LOCATE TEMP,26:PRINT STRING$(12,219):LOCATE TEMP,41:PRINT STRING$(28,219):TEMP=16:NEXT
790 RETURN
800 GOTO 760
810 FOR AA=1 TO 15:BBB=CINT(60*RND+8):AAA=CINT(18*RND+2):LOCATE AAA,BBB:PRINT CHR$(1):NEXT
820 FOR CCC=3 TO 21 STEP 2:FOR DDD=7 TO 73 STEP 6:LOCATE CCC,DDD:PRINT"██":NEXT:NEXT:RETURN
830 SOUND 3000,0.5:GOTO 810
840 FOR I=1 TO 10
850 IF SCORE>=SCOR(I) THEN GOTO 990
860 NEXT I
870 CLS
880 COLOR 24:PRINT TAB(18);"ZYLGIS TOP 10 SCORES"
890 SOUND 240,0.5:COLOR 2:PRINT:PRINT"             INITIALS       SCORE":PRINT
900 FOR I=1 TO 9
910 PRINT I;".",IN$(I),SCOR(I)
920 NEXT I
930 PRINT"10 .",IN$(10),SCOR(10)
940 PRINT:PRINT"LAST SCORE - ";SCORE;
950 DEF SEG=0:POKE 1050,PEEK(1052):DEF SEG
960 LOCATE 20,1:PRINT"HIT ANY KEY FOR NEXT GAME - ESC TO TERMINATE";:EED$=INPUT$(1):IF EED$=CHR$(27) THEN GOTO 1090
970 LOCATE 20,1:PRINT STRING$(60,32)
980 GOTO 130 'restart game
990 FOR A=10 TO I+1 STEP -1
1000 SCOR(A)=SCOR(A-1)
1010 IN$(A)=IN$(A-1)
1020 NEXT A
1030 SCOR(I)=SCORE
1040 FOR A=1 TO 2:PLAY"T100mBp8L8n20n25p20L24n24n25L4n28n25L8n28p20L24n27n28L4n32n28":PLAY"T100L8n32p20L24n31n32L4n35n23L8n28p20L24n27n28L4n32p16":NEXT:PLAY"Mbp16"
1050 CLS:LOCATE 10,25:PRINT "* ZYLGIS *":LOCATE 12,10:PRINT "Your score -- ";SCORE;" -- is among the top 10 scores.":LOCATE 13,14:PRINT "You are placed as the number";I;"scorer."
1060 FOR A=1 TO 2:PLAY"p8T100L8n20n25p20L24n24n25L4O2d#.":PLAY"p8T100L8n44n49p20L24n48n49L4O4d#.":NEXT
1070 DEF SEG=0:POKE 1050,PEEK(1052):DEF SEG
1080 LOCATE 15,18:INPUT "Enter Your Initials -- ",ZZ$:IN$(I)=LEFT$(ZZ$,3):GOTO  870
1090 OPEN "ZYLGIS.SCR" FOR OUTPUT AS #1
1100 PRINT #1,IN$(1);",";SCOR(1);",";IN$(2);",";SCOR(2);",";IN$(3);",";SCOR(3);",";IN$(4);",";SCOR(4);",";IN$(5);",";SCOR(5);",";IN$(6);",";SCOR(6);",";IN$(7);",";SCOR(7);",";IN$(8);",";SCOR(8);",";IN$(9);",";SCOR(9);",";IN$(10);",";SCOR(10)
1110 CLOSE #1
1120 CLS:KEY ON:PRINT:PRINT:PRINT TAB(30);"Have  A  Nice  Day !!":PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:END

Directory of PC-SIG Library Disk #0448

 Volume in drive A has no label
 Directory of A:\

KANGAROO BAS      3584  10-04-84   1:00a
AF       DOC      6656  10-04-84   1:02a
AF       EXE     70144  10-04-84   1:18a
BABY     EXE     37888  10-04-84   1:26a
PINBALL  EXE     64512   2-22-85   6:36a
RIBIT    EXE     38144  10-04-84   1:37a
MAZE1-2A EXE     57856  10-04-84   1:53a
BOOGERS! BAS     23040  10-05-84  11:09p
ZYLGIS   BAS      5632  12-17-83  10:41a
ZYLGIS   SCR       128  12-26-83  11:03a
FILES448 TXT       952  11-16-85   2:34p
       11 file(s)     308536 bytes
                        9216 bytes free