EXTERNALROUTINE  GETS(STRING (255)S)
!
!
!
EXTERNALROUTINESPEC  DEFINE(STRING (255)S)
EXTERNALROUTINESPEC  CLEAR(STRING (255)S)
EXTERNALINTEGERFNSPEC  EXIST(STRING (255)S)
EXTERNALROUTINESPEC  RENAME(STRING (255)S)
EXTERNALROUTINESPEC  NEWGEN(STRING (255)S)
!
!
EXTERNALROUTINESPEC  PROMPT(STRING (255)S)
EXTERNALROUTINESPEC  RSTRG(STRINGNAME  S)
EXTERNALROUTINESPEC  GETAVFSYS(INTEGERNAME  N,INTEGERARRAYNAME  A)
EXTERNALINTEGERFNSPEC  GETUSNAMES(INTEGERNAME  N,INTEGER  ADR,FSYS)
EXTERNALINTEGERFNSPEC  DSFI(STRING (6)U,INTEGER  F,T,S,A)
!
!
INTEGER  M, I, W
INTEGER  TYPE, NSYS, F, ADR, NU, J, K, C0, C1, N
STRING (15)WHAT, MODE, U0
INTEGERARRAY  A(0:99)
INTEGERARRAY  P(1:100)
INTEGERARRAY  ITYPE(1:100)
INTEGERARRAY  FLD(0:15)
STRINGNAME  U1
STRING (6)ARRAY  GU(1:100)
STRING (31)ARRAY  STYPE(1:100)
BYTEINTEGERARRAY  UNAMES(0:2400)
!
INTEGERFN  LOOK UP(STRING (31)WHAT,STRINGNAME  MODE)
CONSTSTRING (15)ARRAY  TYPES(0:38) = C 
      "SBASEFILE",
      "SDELIVERY",
      "",
      "SADDRTELE",
      "",
      "",
      "ILASTLOGON",
      "IACR",
      "IDIRVSN",
      "",
      "ISTKKB",
      "IMAXKB",
      "IMAXFILE",
      "",
      "",
      "",
      "IDIRMON",
      "ISIGMON",
      "SSURNAME",
      "SLOGFILE",
      "","","","","","","","","","","","",
      "IISESSM","IINUTS","",
      "SSPECIALSS",
      "SBATCHSS",
      "SGPHOLDR",
      "ITRYING"
INTEGER  I
!
      CYCLE  I = 0, 1, 38
         IF  TYPES(I) -> MODE.(WHAT) THEN  RESULT  = I
      REPEAT 
      RESULT  = -1
END ; ! OF LOOK UP
!
      PROMPT("WHAT: ")
      RSTRG(WHAT)
      TYPE = LOOK UP(WHAT, MODE)
!
      IF  TYPE < 0 C 
      THEN  PRINTSTRING("NOT KNOWN
") AND  RETURN 
         DEFINE("77,T#UDI")
         SELECTOUTPUT(77)
!
         N = 0; ! GOOD NAMES
         ADR = ADDR(UNAMES(0))
         GET AV FSYS(NSYS, A)
!
         CYCLE  F = 0, 1, NSYS-1
            J = GETUSNAMES(NU, ADR, A(F))
            IF  NU > 0 START 
               CYCLE  J = 0, 7, (NU-1)*7
                  U1 == STRING(ADR+J)
!
                  K = DSFI(U1, A(F), TYPE, 0, ADDR(FLD(0)))
                  IF  K = 0 START 
    PRINTSTRING(U1."@".STRING(ADDR(FLD(0))))
      NEWLINE
                  FINISH 
NO GO:
               REPEAT 
            FINISH 
         REPEAT 
!
!
      SELECTOUTPUT(0)
      CLOSESTREAM(77)
      CLEAR("77")
      IF  EXIST("UDI") = 0 C 
      THEN  RENAME("T#UDI,UDI") C 
      ELSE  NEWGEN("T#UDI,UDI")
END 
ENDOFFILE