10  COM D$[11]
20  COM A$[20],B$[20],C$[20],M$[20],N$[20],O$[20],P$[20]
30  COM Q$[20],R$[20],S$[20],V$[20],X$[72],Y$[72],Z$[72]
40  COM A[50],B[50],C[50],D[50],E[50],F[50],G[10],H[10],I[50],J[50]
50  COM K[50],L[50],M[10,6],N[10,4],O[10],P[10,4],Q[10,4],R[10,4]
60  COM S[10,8],T[10,9],U[10,6],V[10,6],W[10],X[50],Y[50],Z[10,10]
70  COM A,D1,D2,I,I1,I2,K1,K2,K3,K4,N,N1,N2,O,O1,O2,P1,P2,P3,P4
80  COM T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,Z9
90  REM
100  REM    TREK73:  AN ADVANCED STAR TREK BATTLE SIMULATION
110  REM  PROGRAMED BY WILLIAM K. CHAR AND ASSOCIATES, WILSON
120  REM  EDP, 400 MANSELL, SAN FRAN, CA 94134, (415) 239-6460
130  REM  26 NOVEMBER 1973 ***FOR AUTHORIZED PERSONNEL ONLY***
140  REM
150  REM        MODIFIED BY DAVID SHAYER - SMHS - 6/04/80
160  REM
170  FILES *
180  ASSIGN "*TREK12",1,X
190  IF X>2 THEN 1040
200  READ #1,10;S7
210  READ #1,10
220  UPDATE #1;S7+1
230  N=N-1
240  GOTO O1 OF 910,250,250,910,250
250  READ #1,N
260  REM  (WIN SCORE)
270  H=100
280  FOR K=1 TO 5
290  IF  NOT Z[1,K] THEN 310
300  H=H-15
310  NEXT K
320  H=H-((450-Z[1,6]) MAX 0)*.25
330  H=H-((200-H[1]) MAX 0)*.08
340  H=H-((150-F[1]) MAX 0)*.05
350  FOR J=2 TO N+1
360  H1=0
370  IF I[J] THEN 400
380  H1=100
390  GOTO 480
400  FOR K=1 TO 5
410  IF  NOT Z[J,K] THEN 430
420  H1=H1+15
430  NEXT K
440  H1=H1+((350-Z[J,6]) MAX 0)*.321429
450  H1=H1+((250-H[J]) MAX 0)*.064
460  H1=H1+((200-F[J]) MAX 0)*.0375
470  H1=H1 MIN 100
480  H=H+H1
490  NEXT J
500  H=H/(N+1)
510  IF H=0 THEN 910
520  PRINT "COMPUTER:  WIN SCORE IS "H
530  IF  NOT Z9 THEN 560
540  PRINT "   ( BUT USE OF M5 COMPUTER DOESN'T COUNT.)"
550  GOTO 910
560  IF  END #1 THEN 850
570  Z$[1,20]=N$[1,20]
580  Z$[21]="     000/00  00:00  -- 00000"
590  CONVERT TIM(2) TO Z$[28-(TIM(2)>9)-(TIM(2)>99),28]
600  CONVERT TIM(3) TO Z$[31-(TIM(3)>9),31]
610  CONVERT TIM(1) TO Z$[35-(TIM(1)>9),35]
620  CONVERT TIM(0) TO Z$[38-(TIM(0)>9),38]
630  H=H+.05
640  CONVERT H TO Z$[46-(H >= 10)-(H >= 100),48]
650  READ #1;Y$
660  IF REC(1)#N THEN 850
670  CONVERT Y$[44,48] TO P
680  IF P >= H THEN 650
690  PRINT "COMPUTER:  "O$", YOU HAVE MADE IT INTO THE TOP TEN."
700  I=ITM(1)
710  REM  (UPDATE)
720  IF  END #1 THEN 840
730  FOR K=I-1 TO 10
740  READ #1,N
750  ADVANCE #1;K,X
760  IF REC(1)#N OR TYP(1)#2 THEN 840
770  READ #1;Y$
780  READ #1,N
790  ADVANCE #1;K,X
800  IF REC(1)#N THEN 840
810  UPDATE #1;Z$
820  Z$=Y$
830  NEXT K
840  IF  END #1 THEN 910
850  READ #1,N
860  GOTO TYP(-1) OF 910,870,890,890
870  READ #1;Y$
880  GOTO 860
890  IF ITM(1)=10 THEN 910
900  PRINT #1;Z$
910  PRINT "COMPUTER:  SUMMARY?"
920  PRINT N$":  [YES OR NO] ";
930  ENTER T4,X,A$
940  PRINT 
950  IF X<1 THEN 1040
960  IF A$[1,1]#"Y" THEN 1040
970  PRINT LIN(2),TAB(10)"**  WIN SUMMARY FOR:  "N,LIN(2)
980  READ #1,N
990  IF  END #1 THEN 1040
1000  IF REC(1)#N OR TYP(1)#2 THEN 1040
1010  READ #1;Y$
1020  PRINT Y$
1030  GOTO 1000
1040  ASSIGN *,1
1050  PRINT LIN(1)"COMPUTER:  DO YOU WISH TO PLAY AGAIN?"
1060  PRINT "FUTURE CAPTAIN:  [YES OR NO] ";
1070  ENTER T4,X,A$
1080  PRINT 
1090  IF X<1 THEN 1120
1100  IF A$[1,1]#"Y" THEN 1120
1110  CHAIN "*TREK08"
1120  END 
