5 * Revision 1.2 1996/04/18 16:11:06 mclareni
6 * Incorporate changes from J.Zoll for version 3.77
8 * Revision 1.1.1.1 1996/03/06 10:47:16 mclareni
12 #include "zebra/pilot.h"
13 SUBROUTINE JZINIT (IXPARA,CHPA1,CHPA2,IPA3,IPA4,IPA5,IPA6)
15 C- Initialize JZ91 package
18 #include "zebra/zstate.inc"
19 #include "zebra/zunit.inc"
20 #include "zebra/mqsys.inc"
21 #include "zebra/eqlqt.inc"
22 #include "zebra/jzuc.inc"
23 #include "zebra/jzc.inc"
24 C-------------- END CDE ----------------- ------
25 DIMENSION IPA3(7),IPA4(7),IPA5(7),IPA6(7)
26 CHARACTER CHPA1*(*), CHPA2*(*)
27 #if defined(CERNLIB_A4)
30 #if defined(CERNLIB_A8)
33 #if defined(CERNLIB_EQUHOLCH)
34 EQUIVALENCE (CHIAM, NQME(1))
37 DIMENSION INIT(4), MEXTR(4)
38 EQUIVALENCE (INIT(1),JQTIME), (NACCE,NQME(6))
39 DIMENSION MMJZ91(5), MMCALL(5)
40 #if defined(CERNLIB_QDEBUG)
43 #if (defined(CERNLIB_QTRHOLL))&&(!defined(CERNLIB_A6M))
45 DATA NAMESR / 4HJZIN, 4HIT /
47 #if (defined(CERNLIB_QTRHOLL))&&(defined(CERNLIB_A6M))
48 DATA NAMESR / 6HJZINIT /
50 #if !defined(CERNLIB_QTRHOLL)
52 PARAMETER (NAMESR = 'JZINIT ')
54 #if defined(CERNLIB_QDEBUG)
57 DATA MMFL /4HJZFL, 0, 0, -7, 2 /
59 DATA MMJZ91 /4HJZ91, -7, -7, -7, 2 /
60 DATA MMCALL /4HJZCA, -7, 0, -7, 0 /
62 DATA MJQAN/4HJZAN/, MJQFL/4HJZFL/
64 #include "zebra/q_shiftl.inc"
66 #include "zebra/qtraceq.inc"
68 IF (JQLEV.NE.-1) CALL ZFATAM ('re-init of JZ91.')
69 CALL VZERO (JQTIME,16)
71 CALL MZSDIV (IXPARA,-7)
73 IXSTJZ = ISHFTL(JQSTJZ,26)
79 CALL UOPTC (CHPA2,'TQE',IQUEST)
82 IF (IQUEST(2).NE.0) JQLLEV = 0
83 IF (IQUEST(3).NE.0) JQLLEV = 1
86 #if !defined(CERNLIB_EQUHOLCH)
87 CALL UCTOH (CHIAM, NQME(1),4,4)
95 CALL UCOPY (IPA6(2),NQME(2),N)
98 IF (JQLLEV.GE.2) WRITE (IQLOG,9001) JQSTJZ,INIT
99 9001 FORMAT (/' JZINIT. JZ91 in store',I2,
100 F', IFTIME,MAXLEV,NL,ND =',7I6)
110 C-- Lift division JZ91
113 NWMAX = LQSTA(KQT+21) / 2
114 CALL MZDIV (IXSTJZ,IXDVJZ,'JZ91',NWINT,NWMAX,'ML')
115 CALL MZLINK (IXSTJZ,'JZ91',LQJZ,LQUP,LQAN)
119 MMJZ91(2) = 2*JQMLEV + 6
120 MMJZ91(3) = JQMLEV + 5
121 MMJZ91(4) = 2*JQMLEV + 2
122 CALL MZLIFT (IXDVJZ,L,LQJZ,1,MMJZ91,0)
123 IQ(KQS+LQJZ+1) = NACCE
125 C---- Lift the call banks
128 CALL MZLIFT (IXDVJZ,L,LQJZ,-J-5,MMCALL,0)
131 C---- Collect all JQAN titles
133 CALL TZINQ (IXSTJZ,IXDVTT,LQAN,1)
134 IF (LQAN.EQ.0) GO TO 49
135 CALL MZXREF (IXDVJZ,IXDVTT,'A')
138 32 LQAN = LQ(KQS+LQAN)
139 33 IF (LQAN.EQ.0) GO TO 39
140 IF (IQ(KQS+LQAN-4).NE.MJQAN) GO TO 32
142 L = LZFIND (IXSTJZ,LQ(KQS+LQJZ-1), IQ(KQS+LQAN+1),1)
146 CALL ZSHUNT (IXSTJZ,L,LQJZ,-1,0)
149 34 CALL MZDROP (IXSTJZ,LQAN, '.')
152 39 CALL ZTOPSY (IXSTJZ,LQ(KQS+LQJZ-1))
154 C---- Digest all JQFL titles
159 42 LQAN = LQ(KQS+LQAN)
160 43 IF (LQAN.EQ.0) GO TO 49
161 IF (IQ(KQS+LQAN-4).NE.MJQFL) GO TO 42
163 #if defined(CERNLIB_QDEBUG)
165 JMAX = IQ(KQS+LQAN-1)
167 44 IF (JNEXT.GT.JMAX) GO TO 47
169 JEND = IUFIND (MEND,IQ(KQS+LQAN+1),JID+1,JMAX)
171 ID = IQ(KQS+LQAN+JID)
172 IF (LZFIND(IXSTJZ,LQ(KQS+LQJZ-2),ID,1).NE.0) GO TO 44
174 IF (JID .NE.1) GO TO 45
175 IF (JEND.LE.JMAX) GO TO 45
178 CALL ZSHUNT (IXSTJZ,L, LQJZ,-2,0)
181 45 MMFL(4) = MIN (JEND-JID,JQMFLW+1)
182 CALL MZLIFT (IXDVTT,L,LQJZ,-2,MMFL,-1)
183 CALL UCOPY (IQ(KQS+LQAN+JID),IQ(KQS+L+1),MMFL(4))
187 47 CALL MZDROP (IXSTJZ,LQAN, '.')
192 C---- Lift the root level
194 #if defined(CERNLIB_JZTIME)
195 #include "zebra/jztimed.inc"
201 CALL JZIN (CHIAM,1,NQME(2),MEXTR)
203 #include "zebra/qtrace99.inc"
206 * ==================================================
207 #include "zebra/qcardl.inc"