FTN4 SUBROUTINE LCKLL(LU,LUL,ITIM),92903-16409 REV.1805 780320 C C C C ************************************************************** C * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1978. ALL RIGHTS * C * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, RE- * C * PRODUCED, OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH- * C * OUT THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * C ************************************************************** C C C C NAME: LCKLL C SOURCE: &LCKLL 92903-18409 C SOURCE: %LCKLL 92903-16409 PART OF RTMGL1 C C PRMG: FRANCOIS GAULLIER C C C ***************************************************************** C * * C * THIS SUBROUTINE TRY TO LOCK THE LIST DEVICE LUL, IF * C * IT IS NOT THE SAME LU THAN LU. * C * IF THE DEVICE IS ALREADY LOCK, THE CALLING PROGRAM * C * IS SUSPENDED (PUT IN THE TIME LIST) FOR ITIM SECONDS * C * BEFORE AN OTHER LOCK ATTEMPT IS TRY, AND SO ON UNTIL * C * THE LOCK SUCCED. * C * * C ***************************************************************** C C DIMENSION MES(10) C DATA MES/6412B,2H W,2HAI,2HTI,2HNG,2H F,2HOR,2H L,2HU / C IF (LU .EQ. LUL) RETURN C C-----TRY TO LOCK THE LIST LU C J=0 20 I=LURQ(100001B,LUL,1) IF(I .EQ. 0) RETURN C C-----LOCK HAS FAIL, REPORT "WAITING FOR LU XX" AND C TRY AGAIN IN ITIM MS C IF(J .NE. 0) GOTO 30 MES(10)=IASC(LUL) CALL EXEC(2,LU,MES,10) J=1 C-----WAIT ITIM MS 30 CALL EXEC(12,0,1,0,-ITIM/10) GOTO 20 END