File BTLSHP.FC (FOCAL source file)

Directory of image this file is from
This file as a plain text file

C-PS/8 FOCAL, 1971
 1.01 C     BTLSHP BY TOM KLOOS
 1.02 C     OMSI SOFTWARE DEVELOPMENT GROUP
 1.03 C     LAST CHANGE: 8/1/71
 1.04 C     ***** TEKTRONIX T-4002 TERMINAL AND JOYSTICK REQUIRED *****
 1.05 
 1.06 C     YOU HAVE 20 SHOTS TO SINK 3 SHIPS.  GUIDE THE CURSOR
 1.07 C TO THE SQUARE YOU CHOOSE AND HIT THE SPACE BAR.  TO MAKE ROOM FOR THE
 1.08 C PROGRAM, GROUP 1 WILL BE ERASED.
 1.11 I ((/2)-FITR(/2)) 1.12,1.14,1.12
 1.12 T "YOU DO NOT HAVE ENOUGH FEATURES.  RESTART FOCAL WITH FEATURE 1.";Q
 1.14 O I ERASE;E 1
 2.05 O I TTY:,E
 2.10 S Z=FOUT(1)+FOUT(24);F Z=1,175;
 2.20 T !!!!!!"       
W E L C O M E   T O   T H E   G A M E   O F   B A T T L E S H I P S
"!!
 2.30 T !!!!!
 3.21 T !!!!!"PLEASE WAIT WHILE THE ENEMY SHIPS MOVE INTO POSITION         USA";D 15;T !!
 3.25 E
 3.30 F M=1,36;S M(M)=0
 3.35 G 3.45
 3.40 S U=(S-1)*6+T;R
 3.45 F X=1,3;D 4
 3.50 S Q=0
 3.55 S J=0;S Q=Q+1
 3.60 S J=J+1;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
 3.70 I (J-5)3.6,3.6;I (Q-5)3.55,3.55;S R=0;G 5.1
 4.10 S A=FITR(6*FRAN()+1);S B=FITR(6*FRAN()+1)
 4.15 S S=A;S T=B;D 3.4; I (M(U))4.1,4.2,4.1
 4.20 S C=FITR(3*FRAN()-1);I (6-(A+C))4.2;I (A+C-1)4.2
 4.25 S D=FITR(3*FRAN()-1);I (6-(B+D))4.25;I (B+D-1)4.25
 4.30 I (FABS(C)+FABS(D))4.35,4.2,4.35
 4.35 S S=A+C;S T=B+D;D 3.4; I (M(U)-1)4.4,4.2
 4.40 I (2-X)4.75
 4.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
 4.50 S S=A+C+C;S T=B+D+D;D 3.4;I (M(U))4.55,4.7
 4.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
 4.60 S S=A-C;S T=B-D;D 3.4;I (M(U)-1)4.65,4.1
 4.65 S M(U)=1;G 4.75
 4.70 S S=A+C+C;S T=B+D+D;D 3.4;S M(U)=1
 4.75 S S=A+C;S T=B+D;D 3.4; S M(U)=1
 4.80 S M((A-1)*6+B)=1
 4.85 R
 5.10 S R=0;S H=0;T %3.00;D 2.1;D 7
 5.11 S R=R+1;I (7-H)11.1;I (20-R)10.1
 5.12 S A1=FOUT(1);T !!!!;F A1=1,R;T !
 5.13 T "ROUND "R
 5.14 S A1=FJOY()
 5.15 I (XJ-300)5.14;I (900-XJ)5.14;I (YJ-100)5.14;I (700-YJ)5.14
 5.20 D 6
 5.25 I (M(V))5.3,5.26,5.3
 5.26 D 8;S M(V)=-2;G 5.11
 5.30 I (M(V))5.11;S M(V)=-1;S H=H+1;D 9;G 5.11
 6.10 S V=(FITR(YJ/100)-1)*6+FITR((XJ-200)/100)
 6.20 S Z=FITR((V-1)/6);S XC=(V-Z*6)*100+250;S YC=Z*100+150
 7.10 F XG=300,100,900;S Z=FDIS(0,XG,100)+FDIS(1,XG,700)
 7.15 F YG=100,100,700;S Z=FDIS(0,300,YG)+FDIS(1,900,YG)
 8.10 S Z=FDIS(0,XJ-7,YJ-7)+FDIS(1,XJ+7,YJ+7)+FDIS(0,XJ-7,YJ+7)+FDIS(1,XJ+7,YJ-7)
 9.20 F X=0,.2,3.141592;D 9.4
 9.30 R
 9.40 S Z=FDIS(0,XC+50*FCOS(X),YC+50*FSIN(X))+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;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;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)



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search