00030 IMPLICIT INTEGER (A-Z) 00040 REAL X, C1, W1, RAN 00060 COMMON G(8,8), Q(8,8), K(3,3), C(9,2), 00070 1 ZSTR(2,6), D(6), NQ(3), CSTR(2), 00080 2 QSTR(5), QOUT(8), 00090 3 Q1, Q2, S1, S2, R1, R2, 00100 4 K9, K3, E , S , P , T, 00110 5 NR 00130 DATA C/0, -1, -1, -1, 0, 1, 1, 1, 0, 00140 1 1, 1, 0, -1,-1,-1, 0, 1, 1/ 00150 DATA ZSTR/10HWARP ENGNS, 10HLR SENSORS, 00160 1 10HPHASER CTL, 10HPHOTON TBS, 00170 2 10HSHIELD CTL, 10HCOMPUTER / 00180 DATA QSTR/3H . ,3H E ,3H K ,3H * ,3H B / 00190 DATA D/6*0/ 00220 FNA(IR)= INT(IR * RAN(NR) + 1) 00230 FND(DK)= SQRT(FLOAT((K(I,1)-S1)**2 + (K(I,2)-S2)**2)) 00270 TYPE 9050 00280 9050 FORMAT('0ENTER A POSITIVE INTEGER: ',$) 00290 ACCEPT 8000, NR 00300 CALL SETRAN (NR) 00330 T0= (FNA(20) + 20) * 100 00340 T = T0 00350 E = 4000 00360 P = 15 00370 S = 3000 00380 Q1= FNA(8) 00390 Q2= FNA(8) 00400 S1= FNA(8) 00410 S2= FNA(8) 00450 200 B9= 0 00460 K9= 0 00470 DO 330 I= 1,8 00480 DO 320 J= 1,8 00490 K3= 0 00500 B3= 0 00510 IF(RAN(1).LT.0.8) GO TO 270 00520 K3= FNA(3) 00530 K9= K9 + K3 00540 270 IF(RAN(1).LT.0.96) GO TO 300 00550 B3= 1 00560 B9= B9 + 1 00570 300 S3= FNA(5) 00580 G(I,J)= K3*100 + B3*10 + S3 00590 320 CONTINUE 00600 330 CONTINUE 00610 IF(K9.EQ.0.OR.B9.EQ.0) GO TO 200 00650 GO TO 3570 00670 360 IF(Q1.GE.1) GO TO 380 00680 S1= 1 00690 Q1= 1 00700 380 IF(Q1.LE.8) GO TO 400 00710 S1= 8 00720 Q1= 8 00730 400 IF(Q2.GE.1) GO TO 420 00740 S2= 1 00750 Q2= 1 00760 420 IF(Q2.LE.8) GO TO 440 00770 S2= 8 00780 Q2= 8 00800 440 X= FLOAT(G(Q1,Q2))/100.0 00810 K3= INT(X) 00820 B3= INT((X-K3)*10) 00830 S3= G(Q1,Q2) - (B3*10) - (K3*100) 00840 IF(K3.EQ.0) GO TO 520 00850 TYPE 9000 00860 9000 FORMAT('0COMBAT AREA',5X,'CONDITION RED') 00870 IF(S.GT.K3*100) GO TO 520 00880 TYPE 9001 00890 9001 FORMAT(' SHIELDS DANGEROUSLY LOW') 00930 520 DO 525 I= 1,3 00940 DO 525 J= 1,3 00950 K(I,J)= 0 00960 525 CONTINUE 00970 DO 530 I= 1,8 00980 DO 530 J= 1,8 00990 Q(I,J)= 0 01000 530 CONTINUE 01010 Q(S1,S2)= 1 01020 IF(K3.EQ.0) GO TO 620 01030 DO 610 I= 1,K3 01040 CALL QUAD 01050 Q(R1,R2)= 2 01060 K(I,1)= R1 01070 K(I,2)= R2 01080 K(I,3)= 200 01090 610 CONTINUE 01100 620 IF(B3.EQ.0) GO TO 650 01110 CALL QUAD 01120 Q(R1,R2)= 4 01130 650 DO 680 I= 1,S3 01140 CALL QUAD 01150 Q(R1,R2)= 3 01160 680 CONTINUE 01200 690 CALL SHORT 01220 700 TYPE 9002 01230 9002 FORMAT(1H ,'COMMAND: ',$) 01240 ACCEPT 8000,A 01250 8000 FORMAT(I) 01260 IF(A.LT.200) GO TO 710 01270 CALL CHEAT 01280 GO TO 700 01290 710 R1= A + 1 01300 IF(R1.LT.1.OR.R1.GT.7) GO TO 790 01310 IF(D(R1).GE.0) GO TO 780 01320 DO 720 I= 1,6 01330 IF(D(I).GE.0) GO TO 720 01340 TYPE 9003, (ZSTR(J,I), J=1,2) 01350 9003 FORMAT(1H ,2A5,' NOT OPERATIONAL') 01360 720 CONTINUE 01370 GO TO 700 01390 780 GO TO (890, 1520, 1640, 1800, 2200, 3010, 3550), R1 01410 790 TYPE 9004 01420 9004 FORMAT(1H0,'0 = SET COURSE',T22,'4 3 2'/ 01430 1 ' 1 = LONG RANGE SCAN',T23,'^ /'/ 01440 2 ' 2 = PHASER CTRL',T24,'\ /'/ 01450 3 ' 3 = TORPEDO CTRL',T21,'5---*---1'/ 01460 4 ' 4 = SHIELDS',T24,'/ \'/ 01470 5 ' 5 = LIBRARY COMPUTER', T23,'/ \'/ 01480 6 ' 6 = RESIGNATION',T22,'6 7 8'/1H ) 01490 GO TO 700 01530 890 TYPE 9005 01540 9005 FORMAT(1H ,'COURSE (1-8.9999): ',$) 01550 ACCEPT 8001, C1 01560 8001 FORMAT(F) 01570 IF(C1.LT.1.0.OR.C1.GT.8.9999) GO TO 700 01580 920 TYPE 9006 01590 9006 FORMAT(1H ,'WARP FACTOR (0-8): ',$) 01600 ACCEPT 8001, W1 01610 IF(W1.LE.0.0.OR.W1.GT.8.0) GO TO 700 01620 IF(D(1).GE.0.OR.W1.LE.0.5) GO TO 980 01630 TYPE 9007 01640 9007 FORMAT(1H ,'ENGINES ARE DAMAGED, MAXIMUM SPEED = WARP 0.5') 01650 GO TO 920 01670 980 IF(E-(W1*8).GT.0) GO TO 1030 01680 IF(S.LT.1) GO TO 2470 01690 TYPE 9008, E, S 01700 9008 FORMAT(1H ,'YOU HAVE ONLY',I5,' UNITS. SUGGEST YOU' 01710 1 'CROSS-CIRCUIT FROM SHIELDS WHICH HAVE',I5,' UNITS') 01720 GO TO 700 01740 1030 DO 1060 I= 1,6 01750 IF(D(I).GE.0) GO TO 1060 01760 D(I)= D(I) + 1 01770 1060 CONTINUE 01790 IF(FNA(10).NE.5.OR.W1.LT.2.0) GO TO 1120 01800 R1= FNA(6) 01810 D(R1)= D(R1) - FNA(5) 01820 TYPE 9009 , (ZSTR(J,R1), J=1,2) 01830 9009 FORMAT(1HO,'DAMAGE CTRL REPORTS ',2A5,' DAMAGED') 01850 1120 N= INT(W1*8.0) 01860 Q(S1,S2)= 0 01870 XX= S1 01880 YY= S2 01890 C2= INT(C1) 01900 X1= C(C2,1) + (C(C2+1,1) - C(C2,1)) * (C1-C2) 01910 X2= C(C2,2) + (C(C2+1,2) - C(C2,2)) * (C1-C2) 01920 DO 1270 I= 1,N 01930 S1= S1 + X1 01940 S2= S2 + X2 01950 IF(S1.LT.1.OR.S1.GT.8.OR.S2.LT.1.OR.S2.GT.8) GO TO 1360 01960 IF(Q(S1,S2).EQ.0) GO TO 1270 01970 S1= S1 - X1 01980 S2= S2 - X2 01990 GO TO 1280 02000 1270 CONTINUE 02010 1280 Q(S1,S2)= 1 02020 E= E - N 02040 IF(W1.LT.1.0) GO TO 690 02060 T= T + 1 02070 IF(T.GT.T0+30) GO TO 2500 02080 GO TO 690 02100 1360 XX= Q1*8 + XX + X1*N 02110 YY= Q2*8 + YY + X2*N 02120 Q1= XX/8 02130 Q2= YY/8 02140 S1= INT(XX - Q1*8 + 0.5) 02150 S2= INT(YY - Q2*8 + 0.5) 02160 IF(S1.GT.0) GO TO 1450 02170 Q1= Q1 - 1 02180 S1= 8 02190 1450 IF(S2.GT.0) GO TO 1480 02200 Q2= Q2 - 1 02210 S2= 8 02220 1480 T= T + 1 02230 E= E - (N + 5) 02240 IF(T.GT.T0+30) GO TO 2500 02260 GO TO 360 02300 1520 TYPE 9010 02310 9010 FORMAT(1H0,17(1H-)) 02320 DO 1610 I= Q1-1, Q1+1 02330 DO 1540 NN= 1,3 02340 NQ(NN)= 0 02350 1540 CONTINUE 02360 DO 1580 J= Q2-1, Q2+1 02370 IF(I.LT.1.OR.I.GT.8.OR.J.LT.1.OR.J.GT.8) GO TO 1580 02380 NQ(J-Q2+2)= G(I,J) 02390 1580 CONTINUE 02400 TYPE 9011, (NQ(NN), NN=1,3) 02410 9011 FORMAT(3H : , 3(I3,3H : )) 02420 TYPE 9010 02430 1610 CONTINUE 02440 GO TO 700 02480 1640 IF(K3.GT.0) GO TO 1650 02490 2350 TYPE 9012 02500 9012 FORMAT(1H ,'SHORT RANGE SENSORS REPORT NO KLINGONS'/ 02510 1 'IN THIS QUADRANT') 02520 GO TO 700 02530 1650 TYPE 9013, E 02540 9013 FORMAT(1H ,'ENERGY AVAILABLE = ',I6/ 02550 1 1H 'NUMBER OF UNITS TO FIRE: ',$) 02560 ACCEPT 8000, XP 02570 IF(XP.LT.1) GO TO 700 02580 IF(E-XP.LT.0) GO TO 1650 02590 E= E-XP 02600 DO 1780 I= 1,3 02610 IF(K(I,3).EQ.0) GO TO 1780 02620 H= XP/K3/FND(0) 02630 K(I,3)= K(I,3) - H 02640 TYPE 9014, H 02650 9014 FORMAT(I6,' UNIT HIT ON KLINGON') 02660 IF(K(I,3).GT.0) GO TO 1780 02670 CALL KDEAD(I) 02680 1780 CONTINUE 02700 CALL KFIRE 02710 GO TO 700 02750 1800 IF(P.GT.0) GO TO 1830 02760 TYPE 9015 02770 9015 FORMAT(1H ,'ALL PHOTON TORPEDOES EXPENDED') 02780 GO TO 700 02790 1830 TYPE 9016 02800 9016 FORMAT(1H ,'TORPEDO COURSE (1-8.9999): ',$) 02810 ACCEPT 8001, C1 02820 IF(C1.LT.1.0.OR.C1.GT.8.9999) GO TO 700 02830 C2= INT(C1) 02840 X1= C(C2,1) + (C(C2+1,1) - C(C2,1)) * (C1-C2) 02850 X2= C(C2,2) + (C(C2+1,2) - C(C2,2)) * (C1-C2) 02860 XX= S1 02870 YY= S2 02880 P= P - 1 02890 1930 XX= XX + X1 02900 YY= YY + X2 02910 IF(XX.LT.1.OR.XX.GT.8.OR.YY.LT.1.OR.YY.GT.8) GO TO 2180 02920 IF(Q(XX,YY).EQ.0.AND.Q(XX+1,YY+1).EQ.0) GO TO 1930 02930 DO 2000 I= 1,3 02940 IF(XX.EQ.K(I,1).AND.YY.EQ.K(I,2)) GO TO 2020 02950 IF(XX+1.EQ.K(I,1).AND.YY+1.EQ.K(I,2)) GO TO 2020 02960 IF(XX-1.EQ.K(I,1).AND.YY-1.EQ.K(I,2)) GO TO 2020 02970 2000 CONTINUE 02980 GO TO 2120 03000 2020 CALL KDEAD(I) 03020 CALL KFIRE 03030 GO TO 700 03050 2120 IF(Q(XX,YY).NE.3) GO TO 2150 03060 TYPE 9017 03070 9017 FORMAT(1H ,'YOU CAN''T DESTROY STARS, SILLY') 03080 GO TO 2180 03090 2150 IF(Q(XX,YY).NE.4) GO TO 2180 03100 TYPE 9018 03110 9018 FORMAT(1H ,'***STARBASE DESTROYED***'/ 03120 1 ' YOU ARE HEREBY RELIEVED OF DUTY. GOOD-BYE***') 03130 STOP 03150 2180 TYPE 9019 03160 9019 FORMAT(1H ,'TORPEDO MISSED') 03170 CALL KFIRE 03180 GO TO 700 03220 2200 TYPE 9020, E, S 03230 9020 FORMAT(1H0,'ENERGY AVAILABLE = ',I6/ 03240 1 ' AND IN SHIELDS = ',I6/ 03250 2 ' WHICH WAY TO TRANSFER--'/ 03260 3 ' 1. ENERGY TO SHIELDS'/ 03270 4 ' 2. SHIELDS TO ENERGY') 03280 ACCEPT 8000, ES 03290 IF(ES.LT.1.OR.ES.GT.2) GO TO 700 03300 2210 TYPE 9021 03310 9021 FORMAT(1H ,'NUMBER OF UNITS TO TRANSFER: ',$) 03320 ACCEPT 8000, EX 03330 IF(EX.LT.0) GO TO 700 03340 IF(E+S-EX.LT.0) GO TO 2210 03350 GO TO (2220, 2240), ES 03370 2220 E= E - EX 03380 S= S + EX 03390 GO TO 700 03410 2240 E= E + EX 03420 S= S - EX 03430 GO TO 700 03470 3010 TYPE 9022 03480 9022 FORMAT(1H0,'COMPUTER ACTIVE AND AWAITING COMMAND') 03490 ACCEPT 8000, A 03500 IF(A.GE.0.AND.A.LT.3) GO TO 3030 03510 TYPE 9023 03520 9023 FORMAT(1H ,'FUNCTIONS AVAILABLE FROM COMPUTER'/ 03530 1 1H ,' 0 = DAMAGE REPORT'/ 03540 2 1H ,' 1 = PHOTON TORPEDO DATA'/ 03550 3 1H ,' 2 = SHORT RANGE SCAN') 03560 GO TO 3010 03580 3030 GO TO (2280, 3100, 3310), A+1 03620 2280 TYPE 9024 03630 9024 FORMAT(1H0,'DEVICE',6X,'STATE OF REPAIR') 03640 DO 2300 I= 1,6 03650 TYPE 9025, (ZSTR(J,I), J=1,2), D(I) 03660 9025 FORMAT(1H ,2A5,8X,I3) 03670 2300 CONTINUE 03680 GO TO 700 03720 3100 DO 3200 I= 1,3 03730 IF(K(I,3).LE.0) GO TO 3200 03740 XX= K(I,2) - S2 03750 YY= S1- K(I,1) 03760 IF(XX.EQ.0) GO TO 3240 03770 A= INT(((57.3*ATAN(FLOAT(YY/XX)))/45 + 1) * 100)/100 03780 IF(XX.GT.0.AND.YY.LT.0) GO TO 3290 03790 IF(XX.LT.0) GO TO 3220 03800 3190 TYPE 9026, A 03810 9026 FORMAT(1H ,'DIRECTION = ',I4) 03820 GO TO 3200 03840 3220 A= A + 4 03850 GO TO 3190 03860 3240 IF(YY.LT.0) GO TO 3270 03870 A = 3 03880 GO TO 3190 03890 3270 A = 7 03900 GO TO 3190 03910 3290 A = A + 8 03920 GO TO 3190 03940 3200 CONTINUE 03950 GO TO 700 03990 3310 CALL SHORT 04000 GO TO 700 04040 3550 TYPE 9027 04050 9027 FORMAT(1H0,'YOUR RESIGNATION HAS BEEN ACCEPTED') 04060 STOP 04070 2500 TYPE 9028, T 04080 9028 FORMAT(1H0,'IT IS STARDATE = ',I5) 04090 STOP 04100 2470 TYPE 9029 04110 9029 FORMAT(1HO,'THE ENTERPRISE IS DEAD IN SPACE.' 04120 1 ' IT MUST BE EVACUATED.'/' THE FEDERATION WILL BE CONQUERED**') 04130 STOP 04170 3570 TYPE 9030 04180 9030 FORMAT(1H0,'DO YOU NEED INSTRUCTIONS\ Y OR N ',$) 04190 ACCEPT 8002, A 04200 8002 FORMAT(A1) 04210 IF(A.NE.'Y') GO TO 440 04220 TYPE 9031 04230 9031 FORMAT(1H ,'THIS PART IS NOT WRITTEN YET') 04240 GO TO 440 04250 END 04260 SUBROUTINE QUAD 04280 IMPLICIT INTEGER (A-Z) 04290 REAL X, C1, W1, RAN 04310 COMMON G(8,8), Q(8,8), K(3,3), C(9,2), 04320 1 ZSTR(2,6), D(6), NQ(3), CSTR(2), 04330 2 QSTR(5), QOUT(8), 04340 3 Q1, Q2, S1, S2, R1, R2, 04350 4 K9, K3, E , S , P , T, 04360 5 NR 04390 FNA(IR)= INT(IR * RAN(NR) + 1) 04410 3510 R1= FNA(8) 04420 R2= FNA(8) 04430 IF(Q(R1,R2).NE.0) GO TO 3510 04440 RETURN 04450 END 04460 SUBROUTINE SHORT 04490 IMPLICIT INTEGER (A-Z) 04500 REAL X, C1, W1, RAN 04520 COMMON G(8,8), Q(8,8), K(3,3), C(9,2), 04530 1 ZSTR(2,6), D(6), NQ(3), CSTR(2), 04540 2 QSTR(5), QOUT(8), 04550 3 Q1, Q2, S1, S2, R1, R2, 04560 4 K9, K3, E , S , P , T, 04570 5 NR 04590 DO 2650 I= S1-1, S1+1 04600 DO 2640 J= S2-1, S2+1 04610 IF(I.LT.1.OR.I.GT.8.OR.J.LT.1.OR.J.GT.8) GO TO 2640 04620 IF(Q(I,J).EQ.4) GO TO 2670 04630 2640 CONTINUE 04640 2650 CONTINUE 04650 GO TO 2730 04670 2670 CSTR(1)= 'DOCKE' 04680 CSTR(2)= 'D ' 04690 E= 4000 04700 P= 15 04710 DO 2700 I= 1,6 04720 D(I)= 0 04730 2700 CONTINUE 04740 S= 3000 04750 GO TO 2810 04770 2730 TYPE 9000 04780 9000 FORMAT(1H ) 04790 IF(K3.GT.0) GO TO 2780 04800 IF(E.LT.300) GO TO 2800 04810 CSTR(1)= 'GREEN' 04820 CSTR(2)= ' ' 04830 GO TO 2810 04840 2780 CSTR(1)= '*RED*' 04850 CSTR(2)= ' ' 04860 GO TO 2810 04870 2800 CSTR(1)= 'YELLO' 04880 CSTR(2)= 'W ' 04900 2810 TYPE 9001 04910 9001 FORMAT(1H ,24(1H-)) 04920 Z= 1 04930 CALL QSET (Z) 04940 TYPE 9002, (QOUT(I), I=1,8), T 04950 9002 FORMAT(8A3,5X,8HSTARDATE,5X,I4) 04960 Z=2 04970 CALL QSET (Z) 04980 TYPE 9003, (QOUT(I), I=1,8), CSTR 04990 9003 FORMAT(8A3,5X,9HCONDITION,4X,2A5) 05000 Z= 3 05010 CALL QSET (Z) 05020 TYPE 9004, (QOUT(I), I=1,8), Q1, Q2 05030 9004 FORMAT(8A3,5X,8HQUADRANT,5X,I1,1H-,I1) 05040 Z= 4 05050 CALL QSET (Z) 05060 TYPE 9005, (QOUT(I), I=1,8), S1, S2 05070 9005 FORMAT(8A3,5X,6HSECTOR,7X,I1,1H-,I1) 05080 Z= 5 05090 CALL QSET (Z) 05100 TYPE 9006, (QOUT(I), I=1,8), E 05110 9006 FORMAT(8A3,5X,6HENERGY,7X,I4) 05120 Z= 6 05130 CALL QSET (Z) 05140 TYPE 9007, (QOUT(I), I=1,8), P 05150 9007 FORMAT(8A3,5X,9HTORPEDOES,4X,I4) 05160 Z= 7 05170 CALL QSET (Z) 05180 TYPE 9008, (QOUT(I), I=1,8), S 05190 9008 FORMAT(8A3,5X,7HSHIELDS,6X,I4) 05200 Z= 8 05210 CALL QSET (Z) 05220 TYPE 9009, (QOUT(I), I=1,8), K9 05230 9009 FORMAT(8A3,5X,8HKLINGONS, 5X,I4) 05240 TYPE 9001 05250 RETURN 05260 END 05270 SUBROUTINE QSET (Z) 05290 IMPLICIT INTEGER (A-Z) 05300 REAL X, C1, W1, RAN 05320 COMMON G(8,8), Q(8,8), K(3,3), C(9,2), 05330 1 ZSTR(2,6), D(6), NQ(3), CSTR(2), 05340 2 QSTR(5), QOUT(8), 05350 3 Q1, Q2, S1, S2, R1, R2, 05360 4 K9, K3, E , S , P , T, 05370 5 NR 05390 DO 100 I= 1,8 05400 J= Q(Z,I) + 1 05410 QOUT(I)= QSTR(J) 05420 100 CONTINUE 05430 RETURN 05440 END 05450 SUBROUTINE CHEAT 05490 IMPLICIT INTEGER (A-Z) 05500 REAL X, C1, W1, RAN 05520 COMMON G(8,8), Q(8,8), K(3,3), C(9,2), 05530 1 ZSTR(2,6), D(6), NQ(3), CSTR(2), 05540 2 QSTR(5), QOUT(8), 05550 3 Q1, Q2, S1, S2, R1, R2, 05560 4 K9, K3, E , S , P , T, 05570 5 NR 05590 DO 100 I= 1,8 05600 TYPE 9000, (G(I,J),J=1,8) 05610 100 CONTINUE 05620 9000 FORMAT(1H ,40(1H-)/40 I5) 05630 TYPE 9001 05640 9001 FORMAT(1H ,40(1H-)/1H ) 05650 RETURN 05660 END 05670 SUBROUTINE KDEAD (I) 05690 IMPLICIT INTEGER (A-Z) 05700 REAL X, C1, W1, RAN 05720 COMMON G(8,8), Q(8,8), K(3,3), C(9,2), 05730 1 ZSTR(2,6), D(6), NQ(3), CSTR(2), 05740 2 QSTR(5), QOUT(8), 05750 3 Q1, Q2, S1, S2, R1, R2, 05760 4 K9, K3, E , S , P , T, 05770 5 NR 05790 K(I,3)= 0 05800 I1= K(I,1) 05810 I2= K(I,2) 05820 Q(I1,I2)= 0 05830 TYPE 9000 05840 9000 FORMAT(1H0,'***KLINGON DESTROYED***') 05850 K3= K3 - 1 05860 K9= K9 - 1 05870 IF(K9.EQ.0) GO TO 2550 05880 G(Q1,Q2)= G(Q1,Q2) - 100 05890 RETURN 05910 2550 TYPE 9001 05920 9001 FORMAT(1H0,'THE LAST KLINGON BATTLE CRUSIER DESTROYED.'/ 05930 1 ' THE FEDERATION HAS BEEN SAVED*** CONGRATULATIONS***') 05940 STOP 05950 END 05960 SUBROUTINE KFIRE 05980 IMPLICIT INTEGER (A-Z) 05990 REAL X, C1, W1, RAN 06010 COMMON G(8,8), Q(8,8), K(3,3), C(9,2), 06020 1 ZSTR(2,6), D(6), NQ(3), CSTR(2), 06030 2 QSTR(5), QOUT(8), 06040 3 Q1, Q2, S1, S2, R1, R2, 06050 4 K9, K3, E , S , P , T, 06060 5 NR 06080 FND(DK)= SQRT(FLOAT((K(I,1)-S1)**2 + (K(I,2)-S2)**2)) 06100 IF(CSTR(1).EQ.'DOCKE') GO TO 2460 06110 IF(K3.EQ.0) GO TO 2460 06120 DO 2450 I= 1,3 06130 IF(K(I,3).EQ.0) GO TO 2450 06140 H= K(I,3)/FND(0) + 1 06150 S= S -H 06160 TYPE 9000, H 06170 9000 FORMAT(I5,' UNIT HIT ON ENTERPRISE') 06180 IF(S.LT.0) GO TO 2520 06190 2450 CONTINUE 06200 2460 RETURN 06220 2520 TYPE 9001 06230 9001 FORMAT(1H0,'***THE ENTERPRISE HAS BEEN DESTROYED***'/ 06240 1 ' THE FEDERATION WILL BE CONQUERED***') 06250 STOP 06260 END