	LOGICAL FUNCTION LOOKUP(C,DEV,NAME,EXT,PPN)
	IMPLICIT INTEGER(A-Z)
	COMMON /FILRIB/ RIBCNT,RIBBLK(29)
	DOUBLE PRECISION DEV,NAME
	LOGICAL ENTFLG
	ENTFLG = .FALSE.
	GOTO 10
	ENTRY LOOKEN(C,DEV,NAME,EXT,PPN)
	ENTFLG = .TRUE.
10	CONTINUE
	IF (.NOT. ALCHN(C)) GOTO 101
	RIBBLK(1) = "17
	RIBBLK(2) = SIXBIT('DSK   ')
	RIBBLK(3) = 0
	IF (.NOT. UUO("50,C,ADR(RIBBLK))) GOTO 100
	RIBCNT = "35
	CALL STORE(RIBBLK,0,"35)
	RIBBLK(1) = PPN
	RIBBLK(2) = SIXBIT(NAME)
	RIBBLK(3) = SIXBIT(EXT) .AND. "777777000000
	IF (.NOT. UUO("76,C,ADR(RIBCNT))) GOTO 100
	LOOKUP = .TRUE.
	IF (.NOT. ENTFLG) RETURN
	RIBBLK(3) = RIBBLK(3) .AND. "777777000000
	IF(.NOT. UUO("77,C,ADR(RIBCNT))) GOTO 100
	GOTO 102
100	CALL UUO("71,C,0)
	CALL DECHN(C)
101	LOOKUP = .FALSE.
102	RETURN
	END

