Merge branch 'feat-fst280' of bitbucket.org:k1jt/wsjtx into feat-fst280

This commit is contained in:
Joe Taylor 2020-07-21 14:12:07 -04:00
commit 65c4973ae9

View File

@ -87,7 +87,9 @@ contains
dxcall13=hiscall ! initialize for use in packjt77
mycall13=mycall
fMHz=1.0e9
fMHz=1.0
if(iwspr.ne.0.and.iwspr.ne.1) return
if(first) then
mcq=2*mod(mcq+rvec(1:29),2)-1
@ -250,16 +252,6 @@ contains
c_bigfft(i)=cmplx(float(iwave(2*i+1)),float(iwave(2*i+2)))
enddo
call four2a(c_bigfft,nfft1,1,-1,0)
if(iwspr.eq.0) then
itype1=1
itype2=1
elseif( iwspr.eq.1 ) then
itype1=2
itype2=2
elseif( iwspr.eq.2 ) then
itype1=1
itype2=2
endif
if(hmod.eq.1) then
if(fMHz.lt.2.0) then
@ -275,8 +267,6 @@ contains
if(hmod.eq.8) nsyncoh=-4
endif
do iqorw=itype1,itype2 ! iqorw=1 for QSO mode and iqorw=2 for wspr-type messages
if( iwspr.lt.2 ) then
if( single_decode ) then
fa=max(100,nint(nfqso+1.5*hmod*baud-ntol))
fb=min(4800,nint(nfqso+1.5*hmod*baud+ntol))
@ -284,13 +274,6 @@ contains
fa=max(100,nfa)
fb=min(4800,nfb)
endif
elseif( iwspr.eq.2 .and. iqorw.eq.1 ) then
fa=max(100,nfa)
fb=nfsplit
elseif( iwspr.eq.2 .and. iqorw.eq.2 ) then
fa=nfsplit
fb=min(4800,nfb)
endif
if(hmod.eq.1) then
if(ntrperiod.eq.15) minsync=1.15
@ -456,7 +439,7 @@ contains
if(ndepth.eq.1) ntmax=nblock
apmask=0
if(iqorw.eq.2) then ! 50-bit msgs, no ap decoding
if(iwspr.eq.1) then ! 50-bit msgs, no ap decoding
nblock=4
ntmax=nblock
endif
@ -514,7 +497,7 @@ contains
dmin=0.0
nharderrors=-1
unpk77_success=.false.
if(iqorw.eq.1) then
if(iwspr.eq.0) then
maxosd=2
Keff=91
norder=3
@ -522,7 +505,7 @@ contains
call decode240_101(llr,Keff,maxosd,norder,apmask,message101, &
cw,ntype,nharderrors,dmin)
call timer('d240_101',1)
elseif(iqorw.eq.2) then
elseif(iwspr.eq.1) then
maxosd=2
call timer('d240_74 ',0)
Keff=64
@ -537,7 +520,7 @@ contains
nharderrors=-nharderrors
cycle
endif
if(iqorw.eq.1) then
if(iwspr.eq.0) then
write(c77,'(77i1)') mod(message101(1:77)+rvec,2)
call unpack77(c77,1,msg,unpk77_success)
else
@ -554,7 +537,7 @@ contains
ndecodes=ndecodes+1
decodes(ndecodes)=msg
if(iqorw.eq.1) then
if(iwspr.eq.0) then
call get_fst240_tones_from_bits(message101,itone,0)
else
call get_fst240_tones_from_bits(message74,itone,1)
@ -582,8 +565,9 @@ contains
qual=0.
fsig=fc_synced - 1.5*hmod*baud
if(ex) then
write(21,'(i6.6,8i6,f7.1,f10.2,f7.1,1x,f7.2,1x,f7.1,1x,a37)') &
nutc,icand,itry,nsyncoh,iaptype,ijitter,ntype,nsync_qual,nharderrors,dmin,sync,xsnr,xdt,fsig,msg
write(21,'(i6.6,8i6,f7.1,f10.2,f7.1,1x,f7.2,1x,f7.1,1x,a37,f5.3)') &
nutc,icand,itry,nsyncoh,iaptype,ijitter,ntype,nsync_qual, &
nharderrors,dmin,sync,xsnr,xdt,fsig,msg,w50
flush(21)
endif
call this%callback(nutc,smax1,nsnr,xdt,fsig,msg, &
@ -593,7 +577,6 @@ contains
enddo ! metrics
enddo ! istart jitter
2002 enddo !candidate list
enddo ! iqorw
return
end subroutine decode