File: BTLSHP.FC of Tape: Sources/Focal/fc3
(.FC,.FO Focal format converted to 'WRITE' listing)
C-PS/8 FOCAL, 1971 01.01 C BTLSHP BY TOM KLOOS 01.02 C OMSI SOFTWARE DEVELOPMENT GROUP 01.03 C LAST CHANGE: 8/1/71 01.04 C ***** TEKTRONIX T-4002 TERMINAL AND JOYSTICK REQUIRED ***** 01.05 01.06 C YOU HAVE 20 SHOTS TO SINK 3 SHIPS. GUIDE THE CURSOR 01.07 C TO THE SQUARE YOU CHOOSE AND HIT THE SPACE BAR. TO MAKE ROOM 01.08 C FOR THE PROGRAM, GROUP 1 WILL BE ERASED. 01.11 I ((#/2)-FITR(#/2)) 1.12,1.14,1.12 01.12 T "YOU DO NOT HAVE ENOUGH FEATURES." 01.13 T "RESTART FOCAL WITH FEATURE 1.";Q 01.14 O I ERASE;E 1 02.05 O I TTY:,E 02.10 S Z=FOUT(1)+FOUT(24);F Z=1,175; 02.20 T !!!!!!" W E L C O M E T O T H E G A M E O F" 02.25 T " B A T T L E S H I P S" 02.30 T !!!!! 03.21 T !!!!!!!"PLEASE WAIT WHILE THE ENEMY SHIPS MOVE INTO POSITION" 03.22 T " USA";D 15;T !! 03.25 E 03.30 F M=1,36;S M(M)=0 03.35 G 3.45 03.40 S U=(S-1)*6+T;R 03.45 F X=1,3;D 4 03.50 S Q=0 03.55 S J=0;S Q=Q+1 03.60 S J=J+1 03.62 I ((M((Q-1)*6+J)+M((Q-1)*6+J+1)+M(Q*6+J)+M(Q*6+J+1))-4)3.7,3.25 03.70 I (J-5)3.6,3.6;I (Q-5)3.55,3.55;S R=0;G 5.1 04.10 S A=FITR(6*FRAN()+1);S B=FITR(6*FRAN()+1) 04.15 S S=A;S T=B;D 3.4; I (M(U))4.1,4.2,4.1 04.20 S C=FITR(3*FRAN()-1);I (6-(A+C))4.2;I (A+C-1)4.2 04.25 S D=FITR(3*FRAN()-1);I (6-(B+D))4.25;I (B+D-1)4.25 04.30 I (FABS(C)+FABS(D))4.35,4.2,4.35 04.35 S S=A+C;S T=B+D;D 3.4; I (M(U)-1)4.4,4.2 04.40 I (2-X)4.75 04.45 I (6-(A+C+C))4.55;I (A+C+C-1)4.55;I (6-(B+D+D))4.55;I (B+D+D-1)4.55 04.50 S S=A+C+C;S T=B+D+D;D 3.4;I (M(U))4.55,4.7 04.55 I (6-(A-C))4.1;I (A-C-1)4.1;I (6-(B-D))4.1;I (B-D-1)4.1 04.60 S S=A-C;S T=B-D;D 3.4;I (M(U)-1)4.65,4.1 04.65 S M(U)=1;G 4.75 04.70 S S=A+C+C;S T=B+D+D;D 3.4;S M(U)=1 04.75 S S=A+C;S T=B+D;D 3.4; S M(U)=1 04.80 S M((A-1)*6+B)=1 04.85 R 05.10 S R=0;S H=0;T %3.00;D 2.1;D 7 05.11 S R=R+1;I (7-H)11.1;I (20-R)10.1 05.12 S A1=FOUT(1);T !!!!;F A1=1,R;T ! 05.13 T "ROUND #"R 05.14 S A1=FJOY() 05.15 I (XJ-300)5.14;I (900-XJ)5.14;I (YJ-100)5.14;I (700-YJ)5.14 05.20 D 6 05.25 I (M(V))5.3,5.26,5.3 05.26 D 8;S M(V)=-2;G 5.11 05.30 I (M(V))5.11;S M(V)=-1;S H=H+1;D 9;G 5.11 06.10 S V=(FITR(YJ/100)-1)*6+FITR((XJ-200)/100) 06.20 S Z=FITR((V-1)/6);S XC=(V-Z*6)*100+250;S YC=Z*100+150 07.10 F XG=300,100,900;S Z=FDIS(0,XG,100)+FDIS(1,XG,700) 07.15 F YG=100,100,700;S Z=FDIS(0,300,YG)+FDIS(1,900,YG) 08.10 S Z=FDIS(0,XJ-7,YJ-7)+FDIS(1,XJ+7,YJ+7)+FDIS(0,XJ-7,YJ+7) 08.20 S Z=FDIS(1,XJ+7,YJ-7) 09.20 F X=0,.2,3.141592;D 9.4 09.30 R 09.40 S Z=FDIS(0,XC+50*FCOS(X),YC+50*FSIN(X));G 9.5 09.50 S Z=FDIS(1,XC-50*FCOS(X),YC-50*FSIN(X)) 10.10 D 2.1 10.20 T !!!!!!!!!!"Y O U A R E O U T"!! 10.21 T " O F"!! 10.22 T "A M M U N I T I O N"!! 10.23 T "A N D L U C K ....."!! 10.30 T !!!!"HERE IS HOW THE"!" HARBOR LOOKS:";D 12 10.40 S Z=FOUT(1);F Z=1,30;T ! 10.45 A "WOULD YOU LIKE TO "!"PLAY AGAIN?"Z 10.50 I (Z-0YES)10.51,,10.51 10.51 Q 11.10 D 2.1 11.20 T !!!!!!!!!"Y O U D I D I T................"!!! 11.30 T "Y O U S A N K A L L T H E S H I P S ! ! !"!!! 11.40 T !!!;G 10.45 12.10 D 7;F R=1,36;D 13 13.10 I (M(R))13.3,13.2,13.5 13.20 R 13.30 S V=R;D 6.2;I (M(R)+1)13.4;S XC=XC-30;S YC=YC-10 13.32 S Z=FDIS(0,XC,YC)+FOUT(159);T "H I T" 13.35 R 13.40 S XC=XC-23;S YC=YC-5;S Z=FDIS(0,XC,YC);T "MISS" 13.45 R 13.50 S V=R;D 6.2;S XC=XC-42;S YC=YC-10 13.52 S Z=FDIS(0,XC,YC)+FOUT(159);T "S H I P" 13.60 R 15.01 S X=FDIS(1,575,200) 15.02 S X=FDIS(1,625,150)+FDIS(1,800,150)+FDIS(1,850,200)+FDIS(1,575,200) 15.03 S X=FDIS(1,775,200)+FDIS(1,775,500)+FDIS(1,625,225)+FDIS(1,775,225) 15.04 S X=FDIS(1,775,515)+FDIS(1,745,505)+FDIS(1,775,505)