PROGRAM:Setfree     
01 DIR 0:VOL 15:I=1:WAIT 5:GOTO 79
02 CLS :Y=10:X=5:B=6:S=15:D=0:T=$82
03 COLOR 8,1:BOX 3,3,42,56:V=5'spee
04 COLOR 9,0:CBOX 2,2,20,27
05 DA 0,2,-1,-1,1,3,232,227,129,$F5
06 DA 8,$F5,$F9,$F9'ship
07 DA 29,2,-1,-1,1,1,169,4'amos
08 K=3:E=20:R=1:L=0:Q=0
09 IF K=0:? @7,10;"GAME OVER":GO 69
10 IF E=0:? @7,10;"GAME OVER":GO 69
11 IF L>=20:V=4:NOTE 254,15
12 IF L>=40:V=3:NOTE 254,15
13 IF L>=55:V=2:NOTE 254,15
14 IF L>=65:V=1:NOTE 254,15
15 DA 21,2,-1,-1,1,1,173,$F27'figur
16 Q=Q+1:IF Q=5:D=1-RND(4):Q=0
17 NO 255,5
18 X=X+KEY(6)
19 X=X+IN(3)-IN(2)
20 Y=Y-KEY(7)
21 Y=Y+IN(5)-IN(4)
22 IF KEY(0)=32:GO 67
23 IF IN(1)=0:GO 67
24 LIMIT Y,2,20:LIMIT X,2,17:O=S
25 IF F=1:B=B+1:IF B=27:F=0
26 S=S+D:LIMIT S,7,10:COL 4,0
27 IF (IN(3)<>1)
28 P=(P+1)%2
29 SPR 29,-1,-1:SPR 21,-1,-1
30 SPRITE 0,-1,-1:SCROLL 3
31 SPRITE 0,Y,X
32 IF F=1 SPR 29,A,B
33 IF P=1:COL 2,0:? @Y,X;%235'fire
34 IF P=0:COL 6,0:? @Y,X;%225'fire
35 COL 5,13'top walls color
36 FOR I=2 TO S-4:? @I,27;%T:NEXT
37 COL 3,11'bottom walls color
38 FOR I=S+10 TO 20:? @I,27;%T:NEXT
39 COLOR 0,5:IF O>S ? @S-3,27;%130
40 COLOR 0,5:IF O<S ? @S-4,27;%131
41 COL 3,0:IF O>S ? @S+10,27;%130
42 COL 3,0:IF O<S ? @S+9,27;%131
43 COL 10,8:? @0,2;%174;L
44 COL 12,8:? @0,7;%169;E
45 IF E<10:COL 12,8:? @0,8;" ";E
46 COL 9,8:? @0,13;%227;%129;K
47 IF V=4:R=2
48 IF V=3:R=3
49 IF V=2:R=4
50 IF V=1:R=5
51 COL 14,8:? @0,20;"Level:";R
52 N=AR(13)+AR(14)+AR(15)+AR(16)
53 IF N>150 THEN NO 255,15:K=K-1
54 GCH C,A,B+1
55 IF C=131 THEN F=0
56 IF C=130 THEN F=0
57 H=RND(8)
58 IF H=1:COL 2,0:SPR 21,S+9,27
59 COL 2,0
60 IF C=173:? @A,B+1;%174:GO 62
61 SYNC V:GOTO 9
62 L=L+1:E=E+1
63 FOR J=196 TO 254
64 NOTE J,15
65 NEXT
66 GO 61
67 F=1:B=X+2:A=Y:NO 127,14:E=E-1
68 GO 24
69 ? @15,8;" PRESS START"
70 IF KEY(0)=234:RET
71 IF IN(6)=0:RET
72 GO 70
73 I-1:CLS :COLOR 14
74 DA 0,39,8,39,4,34,8,34,4
75 'PLAY 0,4,2,128
76 COL 15
77 BOX 0,2,31,59
78 COLOR I:? !66;@2,5;"SetFree"
79 COLOR 13
80 ? @21,5;"(C)2019 KOS (sv3ora)"
81 COL 14
82 IF I=16:I=1
83 WAIT 1:I=I+1':N=XPEEK(5)
84 COL 12
85 ? @8,5;"Shoot missiles to the"
86 ? @9,5;"prisons to free men."
87 ? @11,5;"But do not waste"
88 ? @12,5;"your missiles"
89 ? @13,5;"or hit on obstacles!"
90 COL 14
91 IF I<7 ? @17,8;" "
92 IF I>7 ? @17,8;" PRESS START"
93 IF KEY(0)=234:GOTO 2
94 IF IN(6)=0:GOTO 2
95 NOTE RND(254),13:GOTO 76
#
