90 POKE51,255:POKE52,63:POKE55,255:POKE56,63 100 INPUT"[147]DO YOU WANT TO SAVE (Y/N)";NS$:IFNS$="N"THEN140 110 IFNS$<>"Y"THEN100 120 INPUT"DISK OR TAPE (D/T)";DV$ 130 IF(DV$<>"D")AND(DV$<>"T")THEN120 140 (null):(null) 1,6,0,14,1:SC=9:(null):FORS=1TO70:AN=AN+10:C=C+1:SC=SC*.94 150 TH=AN*(null)/180 160 A(1)=-10:B(1)=10:A(2)=10:B(2)=10:A(3)=10:B(3)=-10:A(4)=-10:B(4)=-10 170 NU=4:GOSUB1000:NEXT 180 IFDV$="D"THEN:(null)"SQUARES" 190 IFDV$="T"THEN:(null):(null)"SQUARES" 200 (null):(null):(null) 210 (null) 1,6,0,7,1:SC=2:(null):C=0:AN=0:FORS=0TO70:C=C+1:SC=SC*.94 220 TH=AN*(null)/180 230 A(1)=-60:B(1)=40:A(2)=60:B(2)=40:A(3)=0:B(3)=-75:NU=3:GOSUB1000 240 A(1)=0:B(1)=75:A(2)=60:B(2)=-40:A(3)=-60:B(3)=-40:GOSUB1000:AN=AN+5:NEXT 250 IFDV$="D"THEN:(null)"STARS" 260 IFDV$="T"THEN:(null):(null)"STARS" 270 (null):(null):(null) 280 SC=2:C=0:TH=0:(null) 1,3,5,7,9:(null):FORS=0TO70:C=C+1:SC=SC*.94 290 A(1)=-60:B(1)=40:A(2)=60:B(2)=40:A(3)=0:B(3)=-75:NU=3:GOSUB1000 300 A(1)=0:B(1)=75:A(2)=60:B(2)=-40:A(3)=-60:B(3)=-40:NU=3:GOSUB1000:NEXT 310 IFDV$="D"THEN:(null)"MORE STARS" 320 IFDV$="T"THEN:(null):(null)"MORE STARS" 330 (null):(null):(null) 340 SC=5:C=0:AN=0:(null) 1,0,7,14,1:(null):FORS=0TO1040:SC=SC+.1:C=C+1 350 IFC=4THENC=1 360 TH=AN*(null)/180:A(1)=0:B(1)=0:A(2)=0:B(2)=1:NU=2:GOSUB1000:AN=AN+5:NEXT 370 IFDV$="D"THEN:(null)"RAYS" 380 IFDV$="T"THEN:(null):(null)"RAYS" 390 (null):(null):(null):(null) 400 OF=135:SC=700:GAP=500:DG=(null)/180:(null) 1,6,0,7,1:(null) 410 FORAN=0TO180STEP5:TH=AN*DG:FORBE=0TO360STEP5:GM=BE*DG:DL=(BE+OF)*DG 420 A(1)=-50:B(1)=40*SIN(GM):C(1)=40*COS(GM) 430 A(2)=50:B(2)=40*SIN(DL):C(2)=40*COS(DL) 440 FORN=1TO2:GOSUB4000:GOSUB5000:NEXT:C=3:GOSUB1020:NEXTBE:(null):NEXTAN 450 IFDV$="D"THEN:(null)"WIRES" 460 IFDV$="T"THEN:(null):(null)"WIRES" 470 (null):(null):(null):PRINT"[147]PLEASE WAIT..." 480 DIM SN(360),CS(360):DG=(null)/180:FORX=0TO360STEP2:TH=X*DG:SN(X)=SIN(TH) 490 CS(X)=COS(TH):NEXT:OF=135:SC=350:GA=25:GM=30*DG:(null) 1,0,2,7,5:(null) 500 FORAN=0TO342STEP2:TH=AN*DG:RESTORE:FORFA=1TO6:READC 510 FORVE=1TO4:READA(VE),B(VE),C(VE):NEXTVE 520 FORN=1TO4:GOSUB6000:GOSUB7000 530 A(N)=A(N)+4-AN/50:B(N)=B(N)+4-AN/50:C(N)=C(N)-AN/20:GOSUB5000:NEXTN 540 GOSUB1040:NEXTFA:(null):NEXTAN 550 IFDV$="D"THEN:(null)"CUBE" 560 IFDV$="T"THEN:(null):(null)"CUBE" 570 (null):(null):(null):END 1000 FORN=1TONU:GOSUB2000:GOSUB3000:NEXT 1010 ON NU-1 GOSUB 1020,1030,1040:RETURN 1020 (null) 2,C,A(1),B(1),A(2),B(2):RETURN 1030 (null) 3,C,A(1),B(1),A(2),B(2),A(3),B(3):RETURN 1040 (null) 4,C,A(1),B(1),A(2),B(2),A(3),B(3),A(4),B(4):RETURN 2000 Q=A(N)*COS(TH)+B(N)*SIN(TH) 2010 B(N)=-A(N)*SIN(TH)+B(N)*COS(TH) 2020 A(N)=Q:RETURN 3000 A(N)=80+SC*A(N):B(N)=100-1.4*SC*B(N):RETURN 4000 Q=A(N)*COS(TH)+C(N)*SIN(TH) 4010 C(N)=-A(N)*SIN(TH)+C(N)*COS(TH) 4020 A(N)=Q:RETURN 5000 K=GA+C(N):A(N)=80+SC*A(N)/K:B(N)=100-1.4*SC*B(N)/K:RETURN 6000 Q=B(N)*CS(30)+C(N)*SN(30) 6010 C(N)=-B(N)*SN(30)+C(N)*CS(30) 6020 B(N)=Q:RETURN 7000 Q=A(N)*CS(AN)+C(N)*SN(AN) 7010 C(N)=-A(N)*SN(AN)+C(N)*CS(AN) 7020 A(N)=Q:RETURN 8000 DATA 1,-1,+1,-1,+1,+1,-1,+1,-1,-1,-1,-1,-1 8010 DATA 2,+1,+1,-1,+1,+1,+1,+1,-1,+1,+1,-1,-1 8020 DATA 1,+1,+1,+1,-1,+1,+1,-1,-1,+1,+1,-1,+1 8030 DATA 2,-1,+1,+1,-1,+1,-1,-1,-1,-1,-1,-1,+1 8040 DATA 3,-1,+1,+1,+1,+1,+1,+1,+1,-1,-1,+1,-1 8050 DATA 3,+1,-1,-1,+1,-1,+1,-1,-1,+1,-1,-1,-1