SUBROUTINE LOG0(KUNIT) C.. C.. BOHDEN K. CMAYLO, JUL 82 C.. C.. THIS ROUTINE (ALONG WITH KBLOCK) STARTS OFF C.. LOGIN STORAGE OF INFO INTO FILE SX:[5,10]LOGGER.1ST C.. PLUS STARTS OFF LOGGER FILE SX:[5,10]LOGGER.LOG C.. C.. IF KUNIT .LT. 0 , THEN RESET LOGGER.1ST C.. C.. C.. LOGGER.1ST 16 WORD RECORD; 1=TT0, 2=TT1, ETC C.. C.. 1=UIC (GROUP) C.. 2=UIC (MEMBER) C.. 3=YR C.. 4=MO C.. 5=DA C.. 6-7=SECONDS SINCE MIDNIGHT C.. 8=FILES LOGGED IN C.. 9=BLOCKS USED C.. 10=BLOCKS ALLOCATED C.. 11=MAXBLK C.. 12-13=DEVICE (NO COLON) C.. 14-16=UNUSED C.. C.. LOGGER.LOG = SEQUENTIAL FILE C.. 1=UIC, 2=UIC, 3=LOGIN TT, 4=YR, 5=MO, 6=DA, 7=SEC, C.. 8=LOGOUT YR, 9=MO, 10=DA, 11=SEC, C.. 12=LOGIN FILES, 13=EOFBLOCKS, 14=ALLBLOCKS, C.. 15=LOGOUT FILES, 16=EOFBLOCKS, 17=ALLBLOCKS C.. BYTE INFILE(24),LGFILE(24) DIMENSION INPUT(16) DOUBLE PRECISION XFILE(3),XXFILE(3) EQUIVALENCE (INFILE,XFILE),(LGFILE,XXFILE) DATA INPUT/16*0/ DATA XFILE/'SX:[5,10',']LOGGER.','1ST '/ DATA XXFILE/'SX:[005,','010]LOGG','ER.LOG '/ C.. CALL ERRSET(29,.TRUE.,.FALSE.,.TRUE.,.FALSE.,100) IUNIT=KUNIT IF(IUNIT.LT.0) IUNIT=-IUNIT INFILE(20)=0 OPEN(UNIT=IUNIT,NAME=XFILE,ACCESS='DIRECT',FORM='UNFORMATTED', 1 MAXREC=64,RECORDSIZE=8,SHARED,TYPE='OLD', 1 INITIALSIZE=4,ERR=99) C.. C.. OK, CLOSE SO NO LOG INFO LOST UNLESS KUNIT.LT.0 C.. IF(KUNIT.LT.0) GO TO 999 CLOSE(UNIT=IUNIT) GO TO 58 C.. C.. ERROR, NO FILE C.. 99 CONTINUE OPEN(UNIT=IUNIT,NAME=XFILE,ACCESS='DIRECT',FORM='UNFORMATTED', 1 MAXREC=64,RECORDSIZE=8,SHARED,TYPE='NEW', 1 INITIALSIZE=4,ERR=98) C.. C.. WRITE ZEROS OUT TO FILE 999 DO 1 II=1,64 IREC=II INPUT(1)=0 WRITE(IUNIT'IREC)INPUT 1 CONTINUE CLOSE(UNIT=IUNIT) IF(KUNIT.LT.0) RETURN C.. C.. OPEN NEW LOGGER FILE + SET UP FIRST DATE C.. 58 INPUT(1)=0 INPUT(2)=0 CALL IDATE(INPUT(5),INPUT(6),INPUT(4)) SEC0=SECNDS(0.) LGFILE(23)=0 OPEN(UNIT=IUNIT,NAME=XXFILE,TYPE='NEW', 1 CARRIAGECONTROL='LIST',SHARED,ERR=88) WRITE(IUNIT,2)(INPUT(I),I=1,6),SEC0 2 FORMAT(2O4,O3,3I3,F8.0) CLOSE(UNIT=IUNIT) CALL XSPAWN('PIP SX:[5,10]LOGGER.LOG/PR/WO: !') CALL XSPAWN('PIP SX:[5,10]LOGGER.1ST/PR/WO: !') RETURN 98 TYPE 198,(XFILE(I),I=1,3) 198 FORMAT('0*** ERROR *** LOGIN *** BAD LOGGER FILE =',3A8) RETURN 88 TYPE 188,(XFILE(I),I=1,3) 188 FORMAT('0*** ERROR *** LOGGER *** BAD LOGGER FILE =',3A8) RETURN END