diff --git a/ENGINE/g_decode_config.f b/ENGINE/g_decode_config.f index eaa66df6a0fea8f5618bf0bcac300416f9fb6e7f..d95bab7f6c6ce7706726c37aaeff8e0076b2d999 100644 --- a/ENGINE/g_decode_config.f +++ b/ENGINE/g_decode_config.f @@ -89,6 +89,7 @@ integer*4 did, plane, counter, signal, nsubadd, bsubadd, modtyp integer*4 lastroc, lastslot integer N_lines_read + integer num_commas,ii logical echo,debug,override character*26 lo,HI @@ -144,7 +145,7 @@ if(echo) call g_log_message(line) - llen = len(line) ! Remove comments (; or !) + llen = len(line) ! Remove comments (; or !) lpcom = index(line(1:llen),';') if(lpcom.gt.0) llen = lpcom - 1 if(llen.gt.0) then @@ -163,7 +164,7 @@ if(llen.gt.0) then text = .false. - do lp=1,llen ! Shift to upper case + do lp=1,llen ! Shift to upper case m = index(lo,line(lp:lp)) if(m.gt.0) then line(lp:lp) = HI(m:m) @@ -203,8 +204,22 @@ endif endif else - read(line(1:llen),'(4i15)') subadd, plane, counter, +c determine number of commas in the line + num_commas = 0 + do ii=1,llen + if ( index(line(ii:ii),',') .gt. 0) then + num_commas = num_commas + 1 + endif + enddo + if ( num_commas .eq. 2) then + read(line(1:llen),*) subadd, plane, counter + signal = 0 + elseif ( num_commas .eq. 3) then + read(line(1:llen),*) subadd, plane, counter, $ signal + else + write(*,*) ' can not read line', line(1:llen) + endif If(OK .and. (roc.ne.lastroc.or.slot.ne.lastslot)) Then if(g_decode_slotpointer(roc,slot).le.0) then g_decode_slotpointer(roc,slot) = diff --git a/EXE/Makefile b/EXE/Makefile index bf36e62013d9b3ee0d6ae8cfa6b67f32bcedb697..a67a94bf62644df856b71351fced9ea50d4d0005 100644 --- a/EXE/Makefile +++ b/EXE/Makefile @@ -83,7 +83,8 @@ ifeq ($(MYOS),Linux) ifeq ($(MYREALOS),Darwin) OTHERLIBS += -L$(CERN_ROOT)/lib -lpacklib -lc -lm else - OTHERLIBS += -L$(CERN_ROOT)/lib -lpacklib -lc -lm -lnsl + #OTHERLIBS += -L$(CERN_ROOT)/lib -lpacklib -lc -lm -lnsl + OTHERLIBS += $(CERN_ROOT)/lib/libpacklib.a $(CERN_ROOT)/lib/libkernlib.a -lnsl -lcrypt -ldl endif OURLIBS := $(OURGENLIBS) $(LIBROOT)/libport.a endif diff --git a/UTILSUBS/get_values.f b/UTILSUBS/get_values.f index 73c7ad6084ed311b06b8358ee949693502afa1d1..047576ae82fc81a876e16c6c4b5cecf2a103ff71 100644 --- a/UTILSUBS/get_values.f +++ b/UTILSUBS/get_values.f @@ -73,13 +73,13 @@ c CALL squeeze(this,i) IF(this.eq.' ') goto 2222 c READ(this(1:i),'(z)',err=2222) v(j) - READ(this(1:i),'(z2)',err=2222) v(j) + READ(this(1:i),'(z1)',err=2222) v(j) elseif(oct) then this(last_oct:)=' ' CALL squeeze(this,i) IF(this.eq.' ') goto 2222 c READ(this(1:i),'(o)',err=2222) v(j) - READ(this(1:i),'(o2)',err=2222) v(j) + READ(this(1:i),'(o1)',err=2222) v(j) elseif(bin) then this(last_binary:)=' ' CALL squeeze(this,i) @@ -98,7 +98,7 @@ c READ(this(1:i),'(o)',err=2222) v(j) CALL squeeze(this,i) IF(this.eq.' ') goto 2222 c READ(this(1:i),'(i)',err=2222) v(j) - READ(this(1:i),'(i2)',err=2222) v(j) + READ(this(1:i),'(i1)',err=2222) v(j) endif c this= line(divider+1:)