5 * Revision 1.2 1996/04/24 17:26:59 mclareni
6 * Extend the include file cleanup to dzebra, rz and tq, and also add
7 * dependencies in some cases.
9 * Revision 1.1.1.1 1996/03/06 10:47:25 mclareni
13 #include "zebra/pilot.h"
14 SUBROUTINE RZLINC(IDATA,NTOT,INEW,NEW)
16 ************************************************************************
18 * To convert portable packed vectors into a local format.
19 * Merges the IDATA and INEW modified by RZLIND into IDATA
23 * Author : R.Brun DD/US/PD
27 ************************************************************************
30 DIMENSION IDATA(*),INEW(*)
34 #include "zebra/q_jbit.inc"
35 #include "zebra/q_jbyt.inc"
39 CALL UHTOC(IDATA(NTOT+1),4,KWORD,4)
66 IDATA(NTOT+NWI)=INEW(NEW)
68 CALL SBYT(IK1,IDATA(NTOT+NWI),1,8)
69 IPOS1=JBYT(IDATA(NTOT+NWI),25,8)
72 CALL SBYT(IK2,IDATA(NTOT+NWI),17,8)
76 * Is there a character to repeat?
81 * No character to repeat.
83 IFWORD=JBYT(IWORD,17,7)
84 ILASTW=JBYT(IWORD,24,7)
90 IF (ILASTW.GT.20 .OR. IFWORD.GT.ILASTW)GO TO 100
92 NTOT=NTOT+NWI+ILASTW-IFWORD+1
96 * Character must be repeated.
99 CALL SBYT(IK3,IDATA(NTOT+1),9,8)
105 * Other particular cases
107 ICODE = JBYT(IWORD,24,7)
110 IF(ICOD.LE.0)GO TO 40
111 IF (ICOD.LT.6 .OR. ICOD.GT.11) THEN
112 IF (ICOD.EQ.1 .OR. ICOD.EQ.3 .OR. ICOD.EQ.5) THEN
113 KCODE=ICHAR(KWORD(1:1))
114 IK2=ICHAR(KWORD(2:2))
115 CALL SBYT(KCODE,IDATA(NTOT+1),1,8)
116 CALL SBYT(IK2,IDATA(NTOT+1),9,8)
122 IF (ICOD .EQ. 6) THEN
127 ILASTW=JBYT(IWORD,17,7)
134 * Normal instruction case
136 KCODE=ICHAR(KWORD(1:1))
137 CALL SBYT(KCODE,IDATA(NTOLD+1),1,8)
143 IFWORD=JBYT(IWORD,17,7)
145 IF (ILASTW.GT.20 .OR. IFWORD.GT.ILASTW)GO TO 100
147 NTOT=NTOT+NWI+ILASTW-IFWORD+1