diff --git a/map65/libm65/q65b.f90 b/map65/libm65/q65b.f90 index 41e1f1854..03422f1f2 100644 --- a/map65/libm65/q65b.f90 +++ b/map65/libm65/q65b.f90 @@ -50,8 +50,8 @@ subroutine q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & ib=nint(ifreq+ntol/df3) ipk1=maxloc(sync(ia:ib)%ccfmax) ipk=ia+ipk1(1)-1 + if(ldecoded(ipk)) go to 900 snr1=sync(ipk)%ccfmax - ipol=1 if(xpol) ipol=sync(ipk)%ipol @@ -141,6 +141,7 @@ subroutine q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & freq0=MHz + 0.001d0*ikhz if(nsnr0.gt.-99) then + ldecoded(ipk)=.true. nq65df=nint(1000*(0.001*k0*df+nkhz_center-48.0+1.000-1.27046-ikhz))-nfcal nq65df=nq65df + nfreq0 - 1000 npol=nint(poldeg) @@ -163,7 +164,6 @@ subroutine q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & endif ! Write to lu 26, for Messages and Band Map windows - cmode=': ' cmode(2:2)=char(ichar('A') + mode_q65-1) freq1=freq0 + 0.001d0*(ikhz1-ikhz) diff --git a/map65/libm65/wideband_sync.f90 b/map65/libm65/wideband_sync.f90 index d60444bbe..548538bac 100644 --- a/map65/libm65/wideband_sync.f90 +++ b/map65/libm65/wideband_sync.f90 @@ -21,6 +21,7 @@ module wideband_sync parameter (MAX_CANDIDATES=50) parameter (SNR1_THRESHOLD=4.5) type(sync_dat) :: sync(NFFT) + logical ldecoded(NFFT) integer nkhz_center contains @@ -43,7 +44,7 @@ subroutine get_candidates(ss,savg,xpol,nfa,nfb,nts_jt65,nts_q65,cand,ncand) if(sum(ss(1,j,1:NFFT)).gt.0.0) exit enddo jz=j - + ldecoded=.false. call wb_sync(ss,savg,xpol,jz,nfa,nfb) tstep=2048.0/11025.0 !0.185760 s: 0.5*tsym_jt65, 0.3096*tsym_q65