5 * Revision 1.1.1.1 1995/10/24 10:21:50 cernlib
9 #include "geant321/pilot.h"
10 *CMZ : 3.21/02 29/03/94 15.41.33 by S.Giani
12 SUBROUTINE GXLUNF(LUN,ICASE,IFREE)
14 * If ICASE=1 check if LUN is free
15 * If ICASE=2 check if LUN is used
16 * If ICASE=3 return first free unit starting at LUN
18 #include "geant321/gcxlun.inc"
19 #include "geant321/gcunit.inc"
20 CHARACTER*8 CHCASE(10)
22 DATA CHCASE/'FZ ','FZOUT ','HBOOK ','HIGZ '
23 + ,'RZ ','KUIP ','COMIS ','GKS '
24 + ,'FORTRAN ','USER '/
25 *________________________________________________________
27 IF(LUN.LE.0.OR.LUN.GT.128)THEN
28 PRINT *,' Invalid Logical unit number'
33 IFREE=IABS(LUNIT(LUN))
35 IF(IFREE.EQ.0)GO TO 99
37 WRITE(CHMAIL,1000) LUN,CHCASE(IFR)
39 ELSEIF(ICASE.EQ.2)THEN
40 IF(IFREE.NE.0)GO TO 99
41 WRITE(CHMAIL,2000) LUN
51 WRITE(CHMAIL,3000) LUN
56 1000 FORMAT(' Unit ',I3,' already used by ',A)
57 2000 FORMAT(' Unit ',I3,' is not active')
58 3000 FORMAT(' No more free logical units above ',I3)