INTEGER SNEW(13),SOLD(13) INTEGER SVERS0,NUSR,CPTICK,CLRATE INTEGER * 4 OCPTOT,OIOTOT,OGCLOK,OIOCNT INTEGER * 4 CPTOT,IOTOT,GCLOK,IOCNT INTEGER FNEW(12),FOLD(12) INTEGER FVERS0 INTEGER * 4 OPFCNT,OMISS0,OFOUND,OSAME,OUSED INTEGER * 4 PFCNT,MISSES,FOUND,SAME,USED INTEGER INEW(34),IOLD(34) INTEGER IVERS0 INTEGER * 4 OIDLE1,OIDLE2,OCLOCK,OFARN0,OSMLC,OAMLC,OMPC1,OMPC2,OP *LOT,ORING,OSPARE,ODISK1,ODISK2 INTEGER * 4 IDLE1,IDLE2,CLOCK,FARNET,SMLC,AMLC,MPC1,MPC2,PLOT,RING *,SPARE,DISK1,DISK2 INTEGER UNEW(26,128),UOLD(26,128) INTEGER UVERS0 INTEGER MNEW(129) INTEGER MVERS0 LOGICAL JUSTA0 INTEGER TERMT0(7),ARG(128),PARG(10) INTEGER CMDBUF(102) INTEGER I,NEXTL0,CODE,POSIT0,HRS,MIN,HERE,INHCNT INTEGER DISPL0,CH,FACTOR,ROWCOL(2),DUPLEX,NODE,RCODE INTEGER SUMMA0,CURSOR,COMMA0 INTEGER * 4 INTER0,JUNKP0 REAL SEC INTEGER * 4 DIOCNT,DPFCNT,DBHCNT REAL DCPU,DUCPU,DIO,DSEC,CPTIME,IOTIME,UPTIME REAL PFSEC,DASEC,BHSEC,BHPCT COMMON SNEW,POSIT0,DCPU,DISPL0,FACTOR,MNEW COMMON /QUIT$/INHCNT,NODE INTEGER GETARG,VTINIT,DUPLX$,R$ALOC,CTOP INTEGER MAPDN LOGICAL CHKINP INTEGER * 4 CTOL SHORTCALL MKONU$ EXTERNAL QUIT INTEGER AAAAA0 INTEGER AAAAB0 INTEGER AAAAC0 INTEGER AAAAD0 INTEGER AAAAE0 INTEGER AAAAF0 INTEGER AAAAG0 INTEGER AAAAH0 INTEGER AAAAI0(4) INTEGER AAAAJ0(3) INTEGER AAAAK0(33) INTEGER AAAAL0 INTEGER AAAAM0 INTEGER AAAAN0(7) INTEGER AAAAO0 INTEGER AAAAP0 INTEGER AAAAQ0 INTEGER AAAAR0 INTEGER AAAAS0(2) INTEGER AAAAT0 INTEGER AAAAU0(3) INTEGER AAAAV0(23) INTEGER AAAAW0(8) INTEGER AAAAX0(38) INTEGER AAAAY0(30) INTEGER AAAAZ0(6) INTEGER AAABA0(30) INTEGER AAABB0(30) INTEGER AAABC0(6) INTEGER AAABD0(30) INTEGER AAABE0(30) INTEGER AAABF0(6) INTEGER AAABG0(34) INTEGER AAABH0 INTEGER AAABI0(39) INTEGER AAABJ0(39) INTEGER AAABK0(28) INTEGER AAABL0(28) INTEGER AAABM0(28) INTEGER AAABN0(28) INTEGER AAABO0(28) INTEGER AAABP0(28) INTEGER AAABQ0 INTEGER AAABR0 INTEGER AAABS0(24) INTEGER AAABT0(20) INTEGER AAABU0(21) INTEGER AAABV0(28) INTEGER AAABW0(33) INTEGER AAABX0(9) INTEGER AAABY0(16) INTEGER AAABZ0(9) INTEGER AAACA0(29) INTEGER AAACB0(29) INTEGER AAACC0(31) EQUIVALENCE (SVERS0,SNEW(1)),(CPTOT,SNEW(3)),(OCPTOT,SOLD(3)),(IOT *OT,SNEW(5)),(OIOTOT,SOLD(5)),(GCLOK,SNEW(7)),(OGCLOK,SOLD(7)),(IOC *NT,SNEW(9)),(OIOCNT,SOLD(9)),(NUSR,SNEW(11)),(CPTICK,SNEW(12)),(CL *RATE,SNEW(13)) EQUIVALENCE (FVERS0,FNEW(1)),(PFCNT,FNEW(3)),(OPFCNT,FOLD(3)),(MIS *SES,FNEW(5)),(OMISS0,FOLD(5)),(FOUND,FNEW(7)),(OFOUND,FOLD(7)),(SA *ME,FNEW(9)),(OSAME,FNEW(9)),(USED,FNEW(11)),(OUSED,FNEW(11)) EQUIVALENCE (IVERS0,INEW(1)),(IDLE1,INEW(3)),(OIDLE1,IOLD(3)),(IDL *E2,INEW(5)),(OIDLE2,IOLD(5)),(CLOCK,INEW(7)),(OCLOCK,IOLD(7)),(FAR *NET,INEW(9)),(OFARN0,IOLD(9)),(SMLC,INEW(11)),(OSMLC,IOLD(11)),(AM *LC,INEW(13)),(OAMLC,IOLD(13)),(MPC1,INEW(15)),(OMPC1,IOLD(15)),(MP *C2,INEW(17)),(OMPC2,IOLD(17)),(PLOT,INEW(19)),(OPLOT,IOLD(19)),(RI *NG,INEW(21)),(ORING,IOLD(21)),(SPARE,INEW(23)),(OSPARE,IOLD(23)),( *DISK1,INEW(25)),(ODISK1,IOLD(25)),(DISK2,INEW(27)),(ODISK2,IOLD(27 *)) EQUIVALENCE (UVERS0,UNEW(1,1)) EQUIVALENCE (MVERS0,MNEW(1)) DATA AAAAI0/5,-11819,-13868,-23392/ DATA AAAAJ0/4,-15922,-9820/ DATA AAAAK0/212,229,242,237,233,238,225,236,160,244,249,240,229,16 *0,167,170,243,167,160,238,239,244,160,243,245,240,240,239,242,244, *229,228,0/ DATA AAAAN0/239,235,172,170,163,248,0/ DATA AAAAS0/160,0/ DATA AAAAU0/170,227,0/ DATA AAAAV0/160,160,160,160,160,160,160,160,160,160,160,160,160,16 *0,160,160,160,212,239,244,225,236,0/ DATA AAAAW0/160,195,232,225,238,231,229,0/ DATA AAAAX0/160,160,160,160,160,160,160,160,160,160,160,160,160,16 *0,160,160,160,160,160,212,239,244,225,236,160,195,232,225,238,231, *229,160,175,160,211,229,227,0/ DATA AAAAY0/213,240,160,212,233,237,229,186,160,160,160,170,181,23 *3,186,170,178,172,172,176,233,186,170,181,172,178,172,176,242,0/ DATA AAAAZ0/170,183,172,178,242,0/ DATA AAABA0/196,233,243,235,160,193,227,227,229,243,243,229,243,18 *6,160,160,170,184,236,160,170,182,236,160,170,181,172,177,242,0/ DATA AAABB0/213,243,229,242,160,212,233,237,229,186,160,170,181,23 *3,186,170,178,172,172,176,233,186,170,181,172,178,172,176,242,0/ DATA AAABC0/170,183,172,178,242,0/ DATA AAABD0/208,225,231,229,160,198,225,245,236,244,243,186,160,16 *0,160,160,170,184,236,160,170,182,236,160,170,181,172,177,242,0/ DATA AAABE0/201,175,207,160,212,233,237,229,186,160,160,170,181,23 *3,186,170,178,172,172,176,233,186,170,181,172,178,172,176,242,0/ DATA AAABF0/170,183,172,178,242,0/ DATA AAABG0/194,245,230,230,229,242,160,200,233,244,160,210,225,24 *4,229,186,160,170,183,172,178,242,165,160,170,181,236,160,170,181, *172,177,242,0/ DATA AAABI0/206,225,237,229,160,160,160,208,233,228,160,160,195,24 *0,160,212,239,244,225,236,160,160,228,195,240,245,160,160,208,227, *244,160,160,205,229,237,160,252,0/ DATA AAABJ0/206,225,237,229,160,160,160,208,233,228,160,160,195,24 *0,160,212,239,244,225,236,160,160,228,195,240,245,160,160,208,227, *244,160,160,205,229,237,160,252,0/ DATA AAABK0/206,225,237,229,160,160,160,208,233,228,160,212,233,23 *7,229,160,160,228,195,240,160,160,208,227,244,252,160,0/ DATA AAABL0/206,225,237,229,160,160,160,208,233,228,160,212,233,23 *7,229,160,160,228,195,240,160,160,208,227,244,252,160,0/ DATA AAABM0/206,225,237,229,160,160,160,208,233,228,160,212,233,23 *7,229,160,160,228,195,240,160,160,208,227,244,252,160,0/ DATA AAABN0/206,225,237,229,160,160,160,208,233,228,160,160,205,22 *9,237,160,160,228,195,240,160,160,208,227,244,252,160,0/ DATA AAABO0/206,225,237,229,160,160,160,208,233,228,160,160,205,22 *9,237,160,160,228,195,240,160,160,208,227,244,252,160,0/ DATA AAABP0/206,225,237,229,160,160,160,208,233,228,160,160,205,22 *9,237,160,160,228,195,240,160,160,208,227,244,252,160,0/ DATA AAABS0/193,246,225,233,236,225,226,236,229,160,227,239,237,23 *7,225,238,228,243,160,225,242,229,186,0/ DATA AAABT0/236,160,160,160,213,243,229,160,204,207,206,199,160,23 *0,239,242,237,225,244,0/ DATA AAABU0/243,160,160,160,213,243,229,160,211,200,207,210,212,16 *0,230,239,242,237,225,244,0/ DATA AAABV0/237,160,160,160,213,243,229,160,211,200,207,210,212,16 *0,205,197,205,207,210,217,160,230,239,242,237,225,244,0/ DATA AAABW0/227,160,160,160,195,204,197,193,210,160,243,227,242,22 *9,229,238,160,225,238,228,160,242,229,228,242,225,247,160,228,225, *244,225,0/ DATA AAABX0/241,160,160,160,160,160,160,220,0/ DATA AAABY0/227,238,244,242,236,173,240,160,190,160,160,209,245,23 *3,244,0/ DATA AAABZ0/194,210,197,193,203,160,160,175,0/ DATA AAACA0/248,160,160,160,197,248,229,227,245,244,229,160,225,16 *0,208,210,201,205,207,211,160,227,239,237,237,225,238,228,0/ DATA AAACB0/191,160,160,160,196,233,243,240,236,225,249,160,244,23 *2,233,243,160,233,238,230,239,242,237,225,244,233,239,238,0/ DATA AAACC0/212,249,240,229,160,225,238,249,160,227,232,225,242,22 *5,227,244,229,242,160,244,239,160,227,239,238,244,233,238,245,229, *0/ AAAAA0=1 GOTO 10000 10008 AAAAD0=1 GOTO 10003 10009 CALL SLEEP$(001000) 10010 AAAAC0=1 GOTO 10002 10011 AAAAD0=2 GOTO 10003 10012 AAAAF0=1 GOTO 10005 10013 AAAAG0=1 GOTO 10006 10014 AAAAB0=1 GOTO 10001 10015 CONTINUE GOTO 10010 10000 NODE=0 IF((GETARG(1,ARG,128).EQ.-1))GOTO 10016 I=1 INTER0=CTOL(ARG,I)*1000 IF((INTER0.GT.0))GOTO 10017 CALL ERROR('Usage: mon [].') 10017 IF((GETARG(2,ARG,128).EQ.-1))GOTO 10018 I=1 I=CTOP(ARG,I,PARG,10) CALL NPXPRC(6,PARG,I,NODE) IF((NODE.GE.0))GOTO 10019 CALL ERROR('Illegal system specified.') 10019 CONTINUE 10018 GOTO 10020 10016 INTER0=30*1000 10020 IF((NODE.EQ.0))GOTO 10021 IF((R$ALOC(NODE).EQ.0))GOTO 10021 CALL ERROR('Can''t create slave on remote system.') 10021 CALL MKONU$(AAAAI0,LOC(QUIT)) CALL MKONU$(AAAAJ0,LOC(QUIT)) CALL BREAK$(2,INHCNT) CALL BREAK$(4,0) IF((VTINIT(TERMT0).EQ.-2))GOTO 10022 CALL PRINT(-15,AAAAK0,TERMT0) CALL ERROR('.') 10022 CALL VTINFO(1,ROWCOL) CALL VTUPD(1) DISPL0=236 FACTOR=2 COMMA0=0 NEXTL0=1 JUSTA0=.FALSE. GOTO 10023 10001 SUMMA0=0 10024 IF((SUMMA0.GE.INTER0))GOTO 10025 CALL SLEEP$(000500) SUMMA0=SUMMA0+(000500) 10026 IF((.NOT.CHKINP(AAAAL0)))GOTO 10027 CALL T1IN(CH) IF((COMMA0.NE.0))GOTO 10028 CH=MAPDN(CH) AAAAM0=CH GOTO 10029 10030 DISPL0=CH GOTO 10031 10032 COMMA0=1 CALL VTPRT(22,1,AAAAN0,ROWCOL(2)) CALL VTUPD(0) CURSOR=4 GOTO 10031 10033 CALL VTUPD(1) CH=128 GOTO 10031 10034 CALL QUIT(JUNKP0) GOTO 10031 10035 AAAAH0=1 GOTO 10007 10036 JUSTA0=.TRUE. GOTO 10025 10029 IF(AAAAM0.EQ.191)GOTO 10035 IF(AAAAM0.EQ.227)GOTO 10033 AAAAO0=AAAAM0-235 GOTO(10030,10030,10037,10037,10037,10034,10037,10030,10037,1 *0037,10037,10037,10032),AAAAO0 10037 CONTINUE 10031 AAAAP0=DISPL0 GOTO 10038 10039 FACTOR=2 GOTO 10040 10041 FACTOR=3 GOTO 10040 10038 AAAAQ0=AAAAP0-235 GOTO(10039,10041,10042,10042,10042,10042,10042,10041),AAAAQ0 10042 CONTINUE 10040 GOTO 10043 10028 AAAAR0=CH GOTO 10044 10045 CALL VTPUTL(AAAAS0,22,CURSOR) CURSOR=CURSOR-(1) GOTO 10046 10047 CURSOR=4 CALL VTCLR(22,CURSOR,22,ROWCOL(2)) GOTO 10046 10048 COMMA0=0 CALL VTGETL(CMDBUF,22,4,CURSOR-4+1) CALL VTCLR(22,1,22,ROWCOL(2)) CALL VTUPD(0) DUPLEX=DUPLX$(-1) CALL DUPLX$(:020000) CALL VTMOVE(NEXTL0,1) CALL SYS$$(CMDBUF,-3) CALL DUPLX$(DUPLEX) GOTO 10046 10044 AAAAT0=AAAAR0-135 GOTO(10045,10049,10048),AAAAT0 IF(AAAAR0.EQ.255)GOTO 10047 10049 CURSOR=CURSOR+(1) CALL VTPRT(22,CURSOR,AAAAU0,CH) 10046 CALL VTUPD(0) 10043 GOTO 10026 10027 GOTO 10024 10025 GOTO 10050 10002 CALL MOVE$(SNEW,SOLD,13) CALL MOVE$(FNEW,FOLD,12) CALL MOVE$(INEW,IOLD,34) CALL MOVE$(UNEW,UOLD,26*NUSR) GOTO 10051 10003 IF((NODE.NE.0))GOTO 10052 CALL GMETR$(1,LOC(SNEW),13,CODE,0) DO 10053 I=1,NUSR CALL GMETR$(4,LOC(UNEW(1,I)),26,CODE,I) 10053 CONTINUE 10054 CALL GMETR$(3,LOC(INEW),34,CODE,0) CALL GMETR$(2,LOC(FNEW),12,CODE,0) CALL GMETR$(5,LOC(MNEW),129,CODE,0) MNEW(1)=0 GOTO 10055 10052 CALL R$CALL(:10000,NODE,'GMETR$',6,RCODE,1,1,:0+:200,LOC(SNEW),1 *3,:100+:2000+:0,13,1,:0+:200,CODE,1,:0+:100,0,1,:0+:200) DO 10056 I=1,NUSR CALL R$CALL(:10000,NODE,'GMETR$',6,RCODE,4,1,:0+:200,LOC(UNEW( *1,I)),26,:100+:2000+:0,26,1,:0+:200,CODE,1,:0+:100,I,1,:0+:200) 10056 CONTINUE 10057 CALL R$CALL(:10000,NODE,'GMETR$',6,RCODE,3,1,:0+:200,LOC(INEW),3 *4,:100+:2000+:0,34,1,:0+:200,CODE,1,:0+:100,0,1,:0+:200) CALL R$CALL(:10000,NODE,'GMETR$',6,RCODE,2,1,:0+:200,LOC(FNEW),1 *2,:100+:2000+:0,12,1,:0+:200,CODE,1,:0+:100,0,1,:0+:200) CALL R$CALL(:10000,NODE,'GMETR$',6,RCODE,5,1,:0+:200,LOC(MNEW),1 *29,:100+:2000+:0,129,1,:0+:200,CODE,1,:0+:100,0,1,:0+:200) 10055 GOTO 10058 10005 CALL VTPRT(1,1,AAAAV0) CALL VTPRT(1,30,AAAAW0) CALL VTPRT(1,41,AAAAX0) AAAAE0=1 GOTO 10004 10059 DIO=(IOTOT-OIOTOT)/FLOAT(CLRATE) DSEC=(GCLOK-OGCLOK)/FLOAT(CLRATE) CPTIME=(CPTOT/1000000.0)*CPTICK IOTIME=IOTOT/FLOAT(CLRATE) UPTIME=GCLOK/FLOAT(CLRATE) DIOCNT=IOCNT-OIOCNT DPFCNT=PFCNT-OPFCNT DBHCNT=FOUND-OFOUND+SAME-OSAME+USED-OUSED PFSEC=DPFCNT/DSEC DASEC=DIOCNT/DSEC BHSEC=DBHCNT/DSEC IF((DBHCNT+MISSES-OMISS0.LE.0))GOTO 10060 BHPCT=(DBHCNT*100.0)/(DBHCNT+MISSES-OMISS0) GOTO 10061 10060 BHPCT=0.0 10061 CALL HMS(UPTIME,HRS,MIN,SEC) CALL VTPRT(2,1,AAAAY0,HRS,MIN,SEC) CALL VTPAD(80) CALL VTPRT(2,30,AAAAZ0,DSEC) CALL VTPRT(2,41,AAABA0,IOCNT,DIOCNT,DASEC) CALL HMS(CPTIME,HRS,MIN,SEC) CALL VTPRT(3,1,AAABB0,HRS,MIN,SEC) CALL VTPAD(80) CALL VTPRT(3,30,AAABC0,DUCPU) CALL VTPRT(3,41,AAABD0,PFCNT,DPFCNT,PFSEC) CALL HMS(IOTIME,HRS,MIN,SEC) CALL VTPRT(4,1,AAABE0,HRS,MIN,SEC) CALL VTPAD(80) CALL VTPRT(4,30,AAABF0,DIO) CALL VTPRT(4,41,AAABG0,BHPCT,DBHCNT,BHSEC) GOTO 10062 10004 DUCPU=((CPTOT-OCPTOT)/1000000.0)*CPTICK DCPU=DUCPU+((IDLE1-OIDLE1+IDLE2-OIDLE2+CLOCK-OCLOCK+FARNET-OFARN0+ *SMLC-OSMLC+AMLC-OAMLC+MPC1-OMPC1+MPC2-OMPC2+PLOT-OPLOT+RING-ORING+ *SPARE-OSPARE+DISK1-ODISK1+DISK2-ODISK2)/1000000.0)*CPTICK GOTO 10063 10006 AAABH0=DISPL0 GOTO 10064 10065 CALL VTPRT(6,1,AAABI0) CALL VTPAD(80) CALL VTPRT(6,41,AAABJ0) GOTO 10066 10067 CALL VTPRT(6,1,AAABK0) CALL VTPAD(80) CALL VTPRT(6,28,AAABL0) CALL VTPRT(6,55,AAABM0) GOTO 10066 10068 CALL VTPRT(6,1,AAABN0) CALL VTPAD(80) CALL VTPRT(6,28,AAABO0) CALL VTPRT(6,55,AAABP0) GOTO 10066 10064 AAABQ0=AAABH0-235 GOTO(10065,10068,10069,10069,10069,10069,10069,10067),AAABQ0 10069 CONTINUE 10066 POSIT0=0 CALL PPS('Idle1 ',0,IDLE1,OIDLE1) CALL PPS('Idle2 ',0,IDLE2,OIDLE2) CALL PPS('Clock ',0,CLOCK,OCLOCK) CALL PPS('Farnet',0,FARNET,OFARN0) CALL PPS('Smlc ',0,SMLC,OSMLC) CALL PPS('Amlc ',0,AMLC,OAMLC) CALL PPS('Mpc1 ',0,MPC1,OMPC1) CALL PPS('Mpc2 ',0,MPC2,OMPC2) CALL PPS('Plot ',0,PLOT,OPLOT) CALL PPS('Ring ',0,RING,ORING) CALL PPS('Spare ',0,SPARE,OSPARE) CALL PPS('Disk1 ',0,DISK1,ODISK1) CALL PPS('Disk2 ',0,DISK2,ODISK2) DO 10070 I=1,NUSR HERE=AND(UNEW(2,I),:100000)+AND(UNEW(2,I),:40000) IF((HERE.NE.0))GOTO 10072 CALL PPS(UNEW(3,I),I,UNEW(19,I),UOLD(19,I)) 10072 CONTINUE 10070 CONTINUE 10071 NEXTL0=(POSIT0+(FACTOR-1))/FACTOR+7 CALL VTCLR(NEXTL0,1,22-1,ROWCOL(2)) IF((COMMA0.NE.0))GOTO 10073 CALL VTCLR(22,1,22,ROWCOL(2)) 10073 IF((.NOT.JUSTA0))GOTO 10074 CALL VTUPD(1) JUSTA0=.FALSE. GOTO 10075 10074 CALL VTUPD(0) 10075 IF((COMMA0.NE.0))GOTO 10076 CALL VTMOVE(ROWCOL(1),1) GOTO 10077 10076 CALL VTMOVE(22,CURSOR+1) 10077 GOTO 10078 10007 CALL VTCLR(1,1,ROWCOL(1),ROWCOL(2)) CALL VTPUTL(AAABS0,2,20) CALL VTPUTL(AAABT0,4,25) CALL VTPUTL(AAABU0,5,25) CALL VTPUTL(AAABV0,6,25) CALL VTPUTL(AAABW0,7,25) CALL VTPUTL(AAABX0,8,25) CALL VTPUTL(AAABY0,9,25) CALL VTPUTL(AAABZ0,10,25) CALL VTPUTL(AAACA0,11,25) CALL VTPUTL(AAACB0,12,25) CALL VTPUTL(AAACC0,14,20) CALL VTUPD(1) CALL T1IN(AAABR0) CALL VTCLR(1,1,ROWCOL(1),ROWCOL(2)) GOTO 10079 10051 GOTO 10011 10058 GOTO(10009,10012),AAAAD0 GOTO 10058 10050 GOTO 10015 10079 GOTO 10036 10063 GOTO 10059 10062 GOTO 10013 10078 GOTO 10014 10023 GOTO 10008 END SUBROUTINE PPS(NAME,PID,NEW,OLD) INTEGER NAME(3) INTEGER PID INTEGER * 4 NEW,OLD INTEGER SNEW(13),POSIT0,CPTICK,DISPL0,FACTOR INTEGER MNEW(129) REAL DCPU COMMON SNEW,POSIT0,DCPU,DISPL0,FACTOR,MNEW INTEGER HRS,MIN,ISEC,ROW,COL,TIME INTEGER CH REAL SEC,CPTIME,DUSER,PERCE0 INTEGER AAACD0 INTEGER AAACE0(45) INTEGER AAACF0(28) INTEGER AAACG0(26) INTEGER AAACH0 EQUIVALENCE (CPTICK,SNEW(12)) DATA AAACE0/170,172,182,232,160,170,179,233,160,170,179,233,186,17 *0,178,172,172,176,233,186,170,178,172,172,176,233,160,170,181,172, *178,242,160,170,181,172,178,242,160,170,179,233,160,252,0/ DATA AAACF0/170,172,182,232,160,170,179,233,160,170,179,233,170,22 *7,160,170,180,172,177,242,160,170,180,172,177,242,252,0/ DATA AAACG0/170,172,182,232,160,170,179,233,160,170,180,233,160,17 *0,180,172,177,242,160,170,180,172,177,242,252,0/ IF((NEW.NE.0))GOTO 10080 RETURN 10080 DUSER=((NEW-OLD)/1000000.0)*CPTICK CPTIME=(NEW/1000000.0)*CPTICK PERCE0=DUSER*100.0/DCPU CALL HMS(CPTIME,HRS,MIN,SEC) ISEC=SEC ROW=POSIT0/FACTOR+7 COL=(81/FACTOR)*MOD(POSIT0,FACTOR)+1 AAACD0=DISPL0 GOTO 10081 10082 CALL VTPRT(ROW,COL,AAACE0,NAME,PID,HRS,MIN,ISEC,DUSER,PERCE0,MNE *W(PID+1)) GOTO 10083 10084 IF((HRS.NE.0))GOTO 10085 IF((MIN.NE.0))GOTO 10086 TIME=ISEC CH=243 GOTO 10087 10086 TIME=MIN CH=237 10087 GOTO 10088 10085 TIME=HRS CH=232 10088 CALL VTPRT(ROW,COL,AAACF0,NAME,PID,TIME,CH,DUSER,PERCE0) GOTO 10083 10089 CALL VTPRT(ROW,COL,AAACG0,NAME,PID,MNEW(PID+1),DUSER,PERCE0) GOTO 10083 10081 AAACH0=AAACD0-235 GOTO(10082,10089,10090,10090,10090,10090,10090,10084),AAACH0 10090 CONTINUE 10083 CALL VTPAD(80) POSIT0=POSIT0+(1) RETURN END SUBROUTINE HMS(SEC,H,M,S) INTEGER H,M REAL SEC,S H=SEC/3600 M=(SEC-H*3600.0)/60 S=AMOD(SEC,60.0) RETURN END SUBROUTINE QUIT(PTR) INTEGER * 4 PTR INTEGER INHCNT,NODE COMMON /QUIT$/INHCNT,NODE CALL BREAK$(4,INHCNT) CALL R$RLS(NODE) CALL VTSTOP CALL SWT END C ---- Long Name Map ---- C interval inter0 C junkptr junkp0 C nextline nextl0 C copystats copys0 C getnewmeters getne0 C pausefortimeslice pause0 C showhelp showh0 C fversion fvers0 C iversion ivers0 C calculatedeltacpu calcu0 C ofarnet ofarn0 C printsystemstats print0 C mversion mvers0 C percent perce0 C position posit0 C printprocessstats prinu0 C justafterhelp justa0 C display displ0 C sversion svers0 C termtype termt0 C uversion uvers0 C commandmode comma0 C initializemonitor initi0 C omisses omiss0 C summarytime summa0