.TITLE FIND .IDENT /020778/ ; *** SUBROUTINE TO FIND A FILE WHICH HAS BEEN NAMED BY PARSE ; 1st Argument= Address of File Descriptor Block ; 2cnd Argument = Address to return completion code. ; -1= File not found and wildcard is done. ; 0= File found and no wild card. ; 1= File found and wildcard is not done FIND:: MOV R0,-(SP) MOV R1,-(SP) MOV 2(R5),R0 ;FETCH ADDRESS OF FDB IN R0 MOV R0,R1 ADD #F.FNB,R1 ;FETCH ADDRESS OF FILE NAME BLOCK IN FDB BIT #NB.SVR!NB.STP!NB.SNM,N.STAT(R1) ;WILD CARD? BEQ NOWILD ;NO MOV #1,@4(R5) ;NOTE WILD CARD NOWILD: CALL .FIND ;FIND FILE BCC DONE ;FILE FOUND MOV #-1,@4(R5) ;File not found DONE: MOV (SP)+,R1 ;Restore registers MOV (SP)+,R0 RTS PC .END