SUBROUTINE REFRSH(SC,R,IDMGE,WHO,SBUFF,IPRM) C C REFRESH THE SCREEN FOR PLAYER C INCLUDE 'TRKCOMMON.FTN' REAL LAUNCH,SC(15),R(9) INTEGER SCAN,WHOM,CREW,HYPER,TORPS,IDMGE(8),WHO,IPRM(2) LOGICAL*1 THRU,XSHIP,CLOAK,CLON,FBASE BYTE MESSAG,INITLS INTEGER I BYTE SBUFF(2000),STRING(10),TBUF(8),ONOFF(3) DATA ONOFF/'O',2*' '/ COMMON /HLP/ HELP LOGICAL*1 HELP COMMON /REF/IL,INI LOGICAL*1 INI(8) C C IF (SC(1).LT.0) IL=-1 IF (HELP) GO TO 10046 NOUT=0 IF (SECNDS(V).EQ.SC(10)) GOTO 900 SC(10)=SECNDS(V) CALL TIME(TBUF) CALL BUFFIL(1,70,TBUF,8,NOUT,SBUFF) C 900 IF (R(1).EQ.ENERGY(WHO)) GOTO 10000 R(1)=ENERGY(WHO) ENCODE(7,10003,STRING) R(1) 10003 FORMAT(F7.1) CALL BUFFIL(1,55,STRING,7,NOUT,SBUFF) C 10000 IF (R(2).EQ.SHIELDS(WHO)) GOTO 10004 R(2)=SHIELDS(WHO) ENCODE(7,10007,STRING) R(2) 10007 FORMAT(F7.1) CALL BUFFIL(2,55,STRING,7,NOUT,SBUFF) C 10004 IF (R(3).EQ.WARP(WHO)) GOTO 10008 R(3)=WARP(WHO) ENCODE(6,10011,STRING) R(3) 10011 FORMAT(F6.2) CALL BUFFIL(4,54,STRING,6,NOUT,SBUFF) C 10008 IF (R(4).EQ.DIR(WHO)) GOTO 10012 R(4)=DIR(WHO) IF (R(4).GT.90.) V=(450.-R(4))/30. IF (R(4).LE.90.) V=(90.-R(4))/30. ENCODE(5,10018,STRING) V 10018 FORMAT(F5.2) CALL BUFFIL(5,55,STRING,5,NOUT,SBUFF) C 10012 IF (R(5).EQ.XCORD(WHO)) GOTO 10019 R(5)=XCORD(WHO) ENCODE(5,10022,STRING) R(5) 10022 FORMAT(F5.1) CALL BUFFIL(6,55,STRING,5,NOUT,SBUFF) C 10019 IF (R(6).EQ.YCORD(WHO)) GOTO 10023 R(6)=YCORD(WHO) ENCODE(5,10026,STRING) R(6) 10026 FORMAT(F5.1) CALL BUFFIL(7,55,STRING,5,NOUT,SBUFF) C 10023 IR=SC(11) IF (IR.EQ.IUNIV(WHO)) GOTO 10025 SC(11)=IUNIV(WHO) ENCODE (1,10024,STRING) IUNIV(WHO) 10024 FORMAT (I1) CALL BUFFIL(8,56,STRING,1,NOUT,SBUFF) C 10025 IR=R(7) IF (IR.EQ.TORPS(WHO)) GOTO 10027 R(7)=TORPS(WHO) ENCODE(3,10030,STRING) TORPS(WHO) 10030 FORMAT(I3) CALL BUFFIL(9,55,STRING,3,NOUT,SBUFF) C 10027 IR=R(8) IF (IR.EQ.NHOM(WHO)) GOTO 10031 R(8)=NHOM(WHO) ENCODE(3,10034,STRING) NHOM(WHO) 10034 FORMAT(I3) CALL BUFFIL(10,55,STRING,3,NOUT,SBUFF) 10031 IF (IL.EQ.IACTRP(WHO)) GOTO 30000 ENCODE(3,10034,STRING) IACTRP(WHO) CALL BUFFIL(10,61,STRING,3,NOUT,SBUFF) IL=IACTRP(WHO) C 30000 IR=R(9) IIR=SC(14) IF (IR.EQ.HYPER(WHO,1).AND.IIR.EQ.HYPER(WHO,2)) GOTO 10035 R(9)=HYPER(WHO,1) SC(14)=HYPER(WHO,2) ENCODE(3,10038,STRING) HYPER(WHO,1),HYPER(WHO,2) 10038 FORMAT(I1,'/',I1) CALL BUFFIL(11,57,STRING,3,NOUT,SBUFF) C 10035 IR=SC(12) IF (IR.EQ.IHOME(WHO)) GOTO 20000 SC(12)=IHOME(WHO) IF (IHOME(WHO).EQ.0) GOTO 10036 ONOFF(2)='N' ONOFF(3)=' ' GOTO 10037 10036 ONOFF(2)='F' ONOFF(3)='F' 10037 CALL BUFFIL(12,57,ONOFF,3,NOUT,SBUFF) C 20000 IR=SC(13) IF (IR.EQ.ITRAC(WHO)) GOTO 20010 SC(13)=ITRAC(WHO) IF (ITRAC(WHO).EQ.0) GOTO 20001 ONOFF(2)='N' ONOFF(3)=' ' GOTO 20002 20001 ONOFF(2)='F' ONOFF(3)='F' 20002 CALL BUFFIL(13,57,ONOFF,3,NOUT,SBUFF) C 20010 DO 10040 J=1,8 IF (SC(J).EQ.SCORE(J).AND.INI(J).EQ.INITLS(J,1)) GOTO 10040 SC(J)=SCORE(J) INI(J) = INITLS(J,1) ENCODE(8,10045,STRING) SC(J) 10045 FORMAT(F8.0) CALL BUFFIL(J+4,70,STRING,8,NOUT,SBUFF) CALL BUFFIL(J+4,79,INITLS(J,1),1,NOUT,SBUFF) CALL BUFFIL(J+4,80,INITLS(J,2),1,NOUT,SBUFF) 10040 CONTINUE C DO 10050 J=1,4 IF (IDMGE(J).EQ.IDAMGE(WHO,J)) GO TO 10050 IDMGE(J)=IDAMGE(WHO,J) ENCODE(3,10051,STRING) IDAMGE(WHO,J) 10051 FORMAT(I3) CALL BUFFIL(J+16,56,STRING,3,NOUT,SBUFF) 10050 CONTINUE C DO 10052 J=5,8 IF (IDMGE(J).EQ.IDAMGE(WHO,J)) GO TO 10052 IDMGE(J)=IDAMGE(WHO,J) ENCODE (3,10051,STRING) IDAMGE(WHO,J) CALL BUFFIL(J+12,76,STRING,3,NOUT,SBUFF) 10052 CONTINUE C IF (NOUT.EQ.0) GOTO 10046 IPRM(2)=NOUT CALL WTQIO("410,5,1,,,IPRM) 10046 RETURN END