3 CLEAR 500 5 DEFINT A-S,U-Z 10 GOSUB 50000 20 PRINT @ 93, "** Cleanup **"; 30 PRINT @ 171, "by Perette Barella"; 35 DIM C(15),B(15) 40 FOR I=0 TO 15 50 READ B(I) 55 C(B(I))=224+I 60 NEXT I 65 DATA 0,1,2,4,8,9,6,3,12,5,10,7,11,13,14,15 70 A=RND(-VAL(LEFT$(TIME$,2)+MID$(TIME$,4,2)+RIGHT$(TIME$,2))) 80 T=4:GOSUB 50100 100 PRINT@160,S$(4); 105 PRINT@172,"Level (1-50)? "; 110 LINE INPUT T$ 115 IF T$="Menu" OR T$="enu" THEN MENU 120 N=VAL(T$) 130 IF N<1 OR N>50 GOTO 170 140 PRINT@212,"Speed (1-5)? "; 150 LINE INPUT T$ 155 R=VAL(T$) 160 IF R>=1 AND R<=5 GOTO 200 170 GOSUB 50000 180 PRINT@95,"Try again."; 190 GOTO 100 200 GOSUB 50000 300 FOR I=1 TO N 310 GOSUB 50200 320 GOSUB 50300 330 GOSUB 50300 350 NEXT I 360 L=N 400 C$="а":GOSUB 50400 410 X=X*2+RND(1)*2 415 Y=Y*2+RND(1)*2 420 T=0.3 425 PRINT@3," Press any key once dot is seen. "; 430 S=NOT S:GOSUB 50500 460 GOSUB 50100:IF NOT H THEN 430 470 PRINT@0,S$(0); 480 DX=0:DY=0 490 S=-1:GOSUB 50500 495 W=(5-R)*10 500 I$=INKEY$ 520 IF I$<>"" THEN 550 530 IF DX=0 AND DY=0 THEN 500 540 GOTO 600 550 NX=0:NY=0 560 IF I$=CHR$(28) OR I$="=" THEN NX=1 570 IF I$=CHR$(29) OR I$="-" THEN NX=-1 580 IF I$=CHR$(30) OR I$="q" OR I$="Q" THEN NY=-1 585 IF I$=CHR$(31) OR I$="a" OR I$="A" THEN NY=1 590 IF NX<>0 OR NY<>0 THEN DX=NX:DY=NY 595 GOTO 530 600 X=X+DX:Y=Y+DY 620 T$=MID$(S$(Y\2),X\2,1) 630 IF T$>="а" THEN 700 640 L=L-1 645 IF L=0 THEN 900 650 MID$(S$(Y\2),X\2,1)="а" 700 GOSUB 50500 705 FOR J=0 TO W:NEXT J 710 IF P=0 THEN 500 720 FOR J=1 TO 20 725 S=NOT S:GOSUB 50500 730 NEXT J 740 PRINT@92,"рсссссссссссссст"; 750 PRINT@132,"х х"; 760 PRINT@172,"х Try Again? х"; 770 PRINT@212,"цссссссссссссссч"; 780 P=(100*(N-L))/N 790 PRINT@134,USING "##/## = ##%";N-L,N,P 800 I$=INKEY$:IF I$="" THEN 800 810 IF I$="Y" OR I$="y" THEN 200 820 IF I$="N" OR I$="n" THEN RUN 830 IF I$=CHR$(27) THEN MENU 840 GOTO 800 900 GOSUB 50000 910 PRINT@91,"Congratulations!"; 920 PRINT@124,"You solved level";N;"at speed";R;"!"; 930 N=N+1 940 PRINT@211,"Try next level?"; 950 GOTO 800 49999 END 50000 CLS 50010 S$(0)="л"+STRING$(37,"з")+"м" 50015 PRINT S$(0) 50020 FOR I=1 TO 6 50030 S$(I)="й"+STRING$(37,"а")+"к" 50035 PRINT S$(I) 50040 NEXT I 50050 S$(7)="н"+STRING$(37,"и")+"о" 50060 PRINT S$(7); 50070 RETURN 50100 I=INT (T * 120) 50105 H=0 50110 IF INKEY$<>"" THEN H=-1:RETURN 50120 I=I-1 50130 IF I>0 GOTO 50110 50140 RETURN 50200 C$=CHR$(33+INT(RND(1)*191)) 50205 IF C$="." OR C$=CHR$(127) THEN 50200 50210 GOTO 50400 50300 C$=CHR$(225+RND(1)*15) 50400 Y=RND(1)*7 50410 X=RND(1)*37+2 50415 IF MID$(S$(Y),X,1)<>"а" GOTO 50400 50420 PRINT @ Y*40+X-1,C$; 50430 MID$(S$(Y),X,1)=C$ 50440 RETURN 50500 G=X\2 50510 H=Y\2 50520 T$=MID$(S$(H),G,1) 50530 C=B(ASC(T$)-224) 50540 A=1+XMOD2 50550 IF YMOD2=1 THEN A=A*4 50555 P=C AND A 50560 IF S THEN C=C OR A ELSE C=C AND NOT A 50570 PRINT@H*40+G-1,CHR$(C(C)); 50580 MID$(S$(H),G,1)=CHR$(C(C)) 50590 RETURN