C** DEVICE **PROGRAM TO CHANGE DEVICE HANDLER STATISTICS C FOR RT-11 SYSTEMS V2 AND LATER. C C---------------------------------------------------------------------- IMPLICIT INTEGER*2 (A-Z) LOGICAL*1 MONNAM(30) INTEGER MONITR(4),HSIZE(2),DVSIZ(2),PNAME(2),STAT(2) DATA MONITR/3RSY0,3RMON,3RITR,3RSYS/ C C CHANGE THE FOLLOWING TABLES FOR SYSTEMS OTHER THAN V2C-02: C C TABLE SJ FB C NAME OFFSET OFFSET DATA HSIZE/ "13624, "14556 /, + DVSIZ/ "13660, "14612 /, + PNAME/ "16470, "17630 /, + STAT/ "16524, "17664 / C C--------------------------------------------------------------------- C 2 TYPE 4 !GET NAME OF FILE TO PATCH 4 FORMAT('+MONITR FILE TO PATCH:',$) 6 ACCEPT 8,XQ,MONNAM 8 FORMAT (Q,30A1) IF (Q .EQ. 0) GO TO 2 C 10 CALL ASSIGN(1,MONNAM,XQ) DEFINE FILE 1(0,1,U,IREC) FB = (ISPY("300).AND.1)+1 !1 IF SJ, 2 IF FB C 12 TYPE 14 !ASK FOR DEVICE NAME 14 FORMAT('+DEVICE?: ',$) ACCEPT 16,Q,DEVICE !AND GET IT INTO DEVICE 16 FORMAT(Q,A2) IF (Q.EQ.0) GOTO 2 !BE PERSISTANT, CTRL/C TO KILL CALL IRAD50(2,DEVICE,R50DEV) REC = 256*16 + 256*FB + 1 C READ (1'1,ERR=18,END=18) !FORCE FILE OPEN GO TO 22 18 TYPE 20 20 FORMAT ('+*FILE NOT FOUND*'/) GO TO 2 C C FIND SPECIFIED DEVICE NAME IN MONITOR TABLES C 22 DO 24 I=0,13 !ASSUME 14 DEVICES READ (1'(REC+PNAME(FB)/2+I)) NAME IF (R50DEV.EQ.NAME) GOTO 28 24 CONTINUE TYPE 26 26 FORMAT('+*DEVICE NAME NOT IN TABLE*',/) GOTO 56 C C FOUND. REQUEST INFORMATION C 28 REC = REC + I 30 TYPE 32,DEVICE,DEVICE 32 FORMAT('+',A2,': PNAME= ',4X,A2,' /: ',$) READ (5,16,ERR=30)Q,DEVIC 34 FORMAT(Q,A2) IF (Q.EQ.0)GOTO 36 DEVICE=DEVIC CALL IRAD50(2,DEVICE,R50DEV) WRITE (1'(REC+PNAME(FB)/2))R50DEV C 36 READ (1'(REC+STAT(FB)/2)) ANS 38 TYPE 40, DEVICE,ANS 40 FORMAT('+',A2,': STAT= ',O6,' /: ',$) READ (5,42,ERR=38) Q,ANS 42 FORMAT(Q,O6) IF (Q.GT.0) WRITE (1'(REC+STAT(FB)/2)) ANS C 44 READ (1'(REC+HSIZE(FB)/2)) ANS 46 TYPE 48, DEVICE,ANS 48 FORMAT('+',A2,': HSIZE= ',O6,' /: ',$) READ (5,42,ERR=46) Q,ANS IF (Q.GT.0) WRITE (1'(REC+HSIZE(FB)/2)) ANS C 50 READ (1'(REC+DVSIZ(FB)/2)) ANS 52 TYPE 54, DEVICE,ANS 54 FORMAT('+',A2,': DVSIZ= ',O6,' /: ',$) READ (5,42,ERR=52) Q,ANS IF (Q.GT.0) WRITE (1'(REC+DVSIZ(FB)/2)) ANS 56 CALL CLOSE(1) GOTO 10 END