]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MINICERN/packlib/zebra/dzebra/dzform.F
0d28fc6249b86da4e7546e77ebaf34059aabdbda
[u/mrichter/AliRoot.git] / MINICERN / packlib / zebra / dzebra / dzform.F
1 *
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.2  1996/04/24 17:26:08  mclareni
6 * Extend the include file cleanup to dzebra, rz and tq, and also add
7 * dependencies in some cases.
8 *
9 * Revision 1.1.1.1  1996/03/06 10:47:06  mclareni
10 * Zebra
11 *
12 *
13 *-----------------------------------------------------------
14 #include "zebra/pilot.h"
15 #if (defined(CERNLIB_DEBUGON))&&(defined(CERNLIB_VFORT))
16 #include "zebra/debugvf1.inc"
17 #endif
18       SUBROUTINE DZFORM(IXSTOR,LBANK)
19 #include "zebra/mqsys.inc"
20 #include "zebra/qequ.inc"
21 #include "zebra/mzcn.inc"
22 #include "zebra/zunit.inc"
23 #include "zebra/eqlqform.inc"
24 #include "zebra/dzc1.inc"
25 #include "zebra/questparq.inc"
26
27       CHARACTER   CHROUT*(*)
28       PARAMETER (CHROUT = 'DZFORM')
29
30 #include "zebra/q_jbyt.inc"
31
32 #if (defined(CERNLIB_DEBUGON))&&(defined(CERNLIB_VFORT))
33 #include "zebra/debugvf2.inc"
34 #endif
35
36       CQSTAK = CHROUT//'/'
37       IQUEST(1) = 0
38
39       IF (LBANK.EQ.0)    THEN
40
41
42           IF (LQFORM.EQ.0)                                 GO TO 999
43
44           CQMAP(1) = ' '
45           CQMAP(2) =' DZFORM -- List of the IO characteristics '//
46      X             'known to ZEBRA'
47           CQMAP(3) = ' ========================================'//
48      X             '=============='
49           CALL DZTEXT(0,CDUMMQ,3)
50
51           LIOD   = LQ(KQSP+LQFORM-2)
52           LID    = LQFORM
53           DO 200 I = 1,2
54               LIX    = LQ(KQSP+LID-1)
55               NWID   = IQ(KQSP+LID+1)
56               IF (NWID.GT.0) THEN
57                   CALL SORTZV
58      X            (IQ(KQSP+LID+4),LQ(LQWKTB),MIN(NWID,NQWKTB),0,0,0)
59               ENDIF
60               DO 100 J = 0,NWID-1
61                   CQLINE = ' '
62                   INDXA  = LQ(LQWKTB+J)
63                   IXIOD  = IQ(KQSP+LIX+INDXA)
64                   NWIO   = JBYT(IQ(KQSP+LIOD+IXIOD+1),7,5) - 1
65                   CALL MZIOCR(IQ(KQSP+LIOD+IXIOD+1))
66                   IF(IQUEST(1).LT.0) THEN
67                       WRITE(CQINFO,'(A4)') IQ(KQSP+LID+INDXA+3)
68                       CALL DZTEXT(MFOR1Q,CDUMMQ,0)
69                                                            GO TO 999
70                   ELSE
71                       IQUEST(1) = 0
72                   ENDIF
73                   WRITE(CQLINE(1:37),
74      X            '('' Format for ID='',A4,'' is NWIO=1/2+'',I2,1X)')
75      X             IQ(KQSP+LID+INDXA+3),NWIO
76                   CALL DZFORP
77   100         CONTINUE
78               LID=LQ(KQSP+LID)
79   200     CONTINUE
80
81       ELSE
82
83
84           IF (IXSTOR.NE.NCHEKQ) THEN
85               CALL MZSDIV(IXSTOR,-1)
86           ENDIF
87
88           CALL MZCHLS(NCHEKQ,LBANK)
89
90           IF(IQFOUL.NE.0) THEN
91               CALL DZBKDV(LBANK)
92               IF (IQUEST(1).NE.0)                          GO TO 999
93               WRITE(CQINFO,'(A,''/'',I10,'','',I4)') CQDIV,LBANK,IQFOUL
94               CALL DZTEXT(MFOR2Q,CDUMMQ,0)
95                                                            GO TO 999
96           ENDIF
97
98           CALL MZIOCR(LQ(KQS+IQLN))
99
100           IF(IQUEST(1).LT.0) THEN
101               CALL DZBKDV(LBANK)
102               IF (IQUEST(1).NE.0)                          GO TO 999
103               WRITE(CQINFO,'(A,''/'',I10,'','',A4)') CQDIV,LBANK,IQID
104               CALL DZTEXT(MFOR3Q,CDUMMQ,0)
105                                                            GO TO 999
106           ELSE
107               IQUEST(1) = 0
108           ENDIF
109
110           CQLINE = ' '
111
112           WRITE(CQLINE(1:37),
113      X    '('' DZFORM for ID='',A4,'' is NWIO=1/2+'',I2,1X)') IQID,IQNIO
114
115           CALL DZFORP
116       ENDIF
117
118   999 RETURN
119       END