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 RZLIND(IDATA,NTOT,INEW,NEW)
16 ************************************************************************
18 * To convert packed vectors into a portable format.
19 * To extract integers from IDATA into bit pattern array INEW
20 * The original IDATA are modified into characters.
24 * Author : R.Brun DD/US/PD
28 ************************************************************************
30 DIMENSION IDATA(*),INEW(*)
34 #include "zebra/q_jbit.inc"
35 #include "zebra/q_jbyt.inc"
66 INEW(NEW)=IDATA(NTOT+NWI)
67 KWORD(1:1)=CHAR(JBYT(IDATA(NTOT+NWI),1,8))
68 IPOS1=JBYT(IDATA(NTOT+NWI),25,8)
70 KWORD(2:2)=CHAR(JBYT(IDATA(NTOT+NWI),17,8))
74 * Is there a character to repeat?
79 * No character to repeat.
81 IFWORD=JBYT(IWORD,17,7)
82 ILASTW=JBYT(IWORD,24,7)
88 IF (ILASTW.GT.20 .OR. IFWORD.GT.ILASTW)GO TO 100
90 NTOT=NTOT+NWI+ILASTW-IFWORD+1
94 * Character must be repeated.
97 IFIRST=JBYT(IWORD,17,7)
98 ILAST =JBYT(IWORD,24,7)
100 IF (ILAST.GT.80 .OR. IFIRST.GT.ILAST)GO TO 100
107 * Other particular cases
109 ICODE = JBYT(IWORD,24,7)
112 IF(ICOD.LE.0)GO TO 40
113 IF (ICOD.LT.6 .OR. ICOD.GT.11) THEN
114 IF (ICOD.EQ.1 .OR. ICOD.EQ.3 .OR. ICOD.EQ.5) THEN
115 KWORD(1:1)=CHAR(KCODE)
116 KWORD(2:2)=CHAR(JBYT(IWORD,9,8))
122 IF (ICOD .EQ. 6) THEN
127 ILASTW=JBYT(IWORD,17,7)
134 * Case of a normal line
136 KWORD(1:1)=CHAR(KCODE)
142 IFWORD=JBYT(IWORD,17,7)
144 IF (ILASTW.GT.20 .OR. IFWORD.GT.ILASTW)GO TO 100
146 NTOT=NTOT+NWI+ILASTW-IFWORD+1
149 CALL UCTOH(KWORD,IDATA(NTOLD+1),4,4)