EXTERNALROUTINE NAMES(STRING (255)S) EXTERNALROUTINESPEC CLEAR(STRING (255)S) EXTERNALROUTINESPEC DEFINE(STRING (255)S) ! INTEGER NI STRING (31)W, W1, IN ! EXTERNALINTEGERFNSPEC DPERMISSION(STRING (6)OWNER, USER, C STRING (8)DATE, STRING (11)FILE, INTEGER FSYS, TYPE, ADR) RECORDFORMAT F1(STRING (6)USER, BYTEINTEGER PRM) RECORDFORMAT F2(INTEGER N, OWNP, EEP, X, RECORDARRAY IP(0:15)(F1)) ! RECORD P(F2) RECORDNAME IP(F1) CONSTINTEGER ACR = 7 CONSTINTEGER TRY = 38 ! SYSTEMROUTINESPEC PHEX(INTEGER I) EXTERNALROUTINESPEC GETAVFSYS(INTEGERNAME N,INTEGERARRAYNAME A) EXTERNALINTEGERFNSPEC GETUSNAMES(INTEGERNAME N,INTEGER ADR,FSYS) EXTERNALINTEGERFNSPEC DSFI(STRING (6)U,INTEGER F,T,S,A) ! ! INTEGER NSYS, F, AP, ADR, NU, JJ, J, K, N INTEGERARRAY A(0:99) INTEGERARRAY FLD(0:15) STRINGNAME U1 BYTEINTEGERARRAY UNAMES(0:2400) ! DEFINE("61,NAMES,1023") SELECT OUTPUT(61) ! NI = 0 AP = ADDR(W) ADR = ADDR(UNAMES(0)) GET AV FSYS(NSYS, A) ! CYCLE F = 0, 1, NSYS-1 N = A(F) J = GETUSNAMES(NU, ADR, N) IF NU > 0 START CYCLE JJ = 0, 7, (NU-1)*7 U1 == STRING(ADR+JJ) ! J = DSFI(U1, N, 18, 0, AP) IF J = 0 START IF W -> W1 . (".") . S START IN = W1 IN = IN . "." . W1 WHILE S -> W1 . (".") . S W = S . "," . IN W <- W . " " PRINTSTRING(W) NEWLINE NI = NI + 1 FINISH FINISH REPEAT FINISH REPEAT SELECT OUTPUT(0) CLOSE STREAM(61) CLEAR("61") WRITE(NI, 1) NEWLINE END ENDOFFILE