mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-09-02 21:27:52 -04:00
Make sure that msksignalquality is not called on Sh decodes to avoid contamination of recent_calls array and resulting poor SWL performance in MSK144 mode.
This commit is contained in:
parent
dea35fbf56
commit
096a459ae8
@ -22,7 +22,6 @@ subroutine msk144signalquality(cframe,snr,freq,t0,softbits,msg,dxcall, &
|
|||||||
integer msgbits(144)
|
integer msgbits(144)
|
||||||
integer values(8)
|
integer values(8)
|
||||||
|
|
||||||
logical*1 bcontest
|
|
||||||
logical*1 btrain
|
logical*1 btrain
|
||||||
logical*1 first
|
logical*1 first
|
||||||
logical*1 currently_training
|
logical*1 currently_training
|
||||||
@ -91,7 +90,6 @@ subroutine msk144signalquality(cframe,snr,freq,t0,softbits,msg,dxcall, &
|
|||||||
|
|
||||||
! generate tones from decoded message
|
! generate tones from decoded message
|
||||||
ichk=0
|
ichk=0
|
||||||
bcontest=.false.
|
|
||||||
call genmsk_128_90(msg,ichk,msgsent,i4tone,itype)
|
call genmsk_128_90(msg,ichk,msgsent,i4tone,itype)
|
||||||
|
|
||||||
! reconstruct message bits from tones
|
! reconstruct message bits from tones
|
||||||
|
@ -123,9 +123,11 @@ subroutine mskrtd(id2,nutc0,tsec,ntol,nrxfreq,ndepth,mycall,mygrid,hiscall, &
|
|||||||
np=8*NSPM
|
np=8*NSPM
|
||||||
call msk144spd(cdat,np,ntol,ndecodesuccess,msgreceived,fc,fest,tdec,navg,ct, &
|
call msk144spd(cdat,np,ntol,ndecodesuccess,msgreceived,fc,fest,tdec,navg,ct, &
|
||||||
softbits)
|
softbits)
|
||||||
|
bshdecode=.false.
|
||||||
if(ndecodesuccess.eq.0 .and. (bshmsg.or.bswl)) then
|
if(ndecodesuccess.eq.0 .and. (bshmsg.or.bswl)) then
|
||||||
call msk40spd(cdat,np,ntol,mycall,hiscall,bswl,nhasharray, &
|
call msk40spd(cdat,np,ntol,mycall,hiscall,bswl,nhasharray, &
|
||||||
ndecodesuccess,msgreceived,fc,fest,tdec,navg)
|
ndecodesuccess,msgreceived,fc,fest,tdec,navg)
|
||||||
|
if(ndecodesuccess .ge.1) bshdecode=.true.
|
||||||
endif
|
endif
|
||||||
if( ndecodesuccess .ge. 1 ) then
|
if( ndecodesuccess .ge. 1 ) then
|
||||||
tdec=tsec+tdec
|
tdec=tsec+tdec
|
||||||
@ -187,14 +189,6 @@ subroutine mskrtd(id2,nutc0,tsec,ntol,nrxfreq,ndepth,mycall,mygrid,hiscall, &
|
|||||||
endif
|
endif
|
||||||
nsnr=nint(snr0)
|
nsnr=nint(snr0)
|
||||||
|
|
||||||
bshdecode=.false.
|
|
||||||
if( msgreceived(1:1) .eq. '<' ) then
|
|
||||||
i2=index(msgreceived,'>')
|
|
||||||
i1=0
|
|
||||||
if(i2.gt.0) i1=index(msgreceived(1:i2),' ')
|
|
||||||
if(i1.gt.0) bshdecode=.true.
|
|
||||||
endif
|
|
||||||
|
|
||||||
if(.not. bshdecode) then
|
if(.not. bshdecode) then
|
||||||
call msk144signalquality(ct,snr0,fest,tdec,softbits,msgreceived,hiscall, &
|
call msk144signalquality(ct,snr0,fest,tdec,softbits,msgreceived,hiscall, &
|
||||||
btrain,datadir,ncorrected,eyeopening,pcoeffs)
|
btrain,datadir,ncorrected,eyeopening,pcoeffs)
|
||||||
@ -221,15 +215,6 @@ subroutine mskrtd(id2,nutc0,tsec,ntol,nrxfreq,ndepth,mycall,mygrid,hiscall, &
|
|||||||
endif
|
endif
|
||||||
write(line,1021) nutc0,nsnr,tdec,nint(fest),decsym,msgreceived,char(0)
|
write(line,1021) nutc0,nsnr,tdec,nint(fest),decsym,msgreceived,char(0)
|
||||||
1021 format(i6.6,i4,f5.1,i5,a4,a37,a1)
|
1021 format(i6.6,i4,f5.1,i5,a4,a37,a1)
|
||||||
! if( .not.bshdecode ) then
|
|
||||||
! write(line,1020) nutc0,nsnr,tdec,nint(fest),decsym,msgreceived(1:22), &
|
|
||||||
! navg,ncorrected,eyeopening,char(0)
|
|
||||||
!1020 format(i6.6,i4,f5.1,i5,a4,a22,i2,i3,f5.1,a1)
|
|
||||||
! else
|
|
||||||
! write(line,1022) nutc0,nsnr,tdec,nint(fest),decsym,msgreceived(1:22), &
|
|
||||||
! navg,char(0)
|
|
||||||
!1022 format(i6.6,i4,f5.1,i5,a4,a22,i2,a1)
|
|
||||||
! endif
|
|
||||||
elseif(bswl .and. ndecodesuccess.ge.2) then
|
elseif(bswl .and. ndecodesuccess.ge.2) then
|
||||||
seenb4=.false.
|
seenb4=.false.
|
||||||
do i=1,nshmem
|
do i=1,nshmem
|
||||||
@ -245,8 +230,6 @@ subroutine mskrtd(id2,nutc0,tsec,ntol,nrxfreq,ndepth,mycall,mygrid,hiscall, &
|
|||||||
msglastswl=msgreceived
|
msglastswl=msgreceived
|
||||||
nsnrlastswl=nsnr
|
nsnrlastswl=nsnr
|
||||||
write(line,1021) nutc0,nsnr,tdec,nint(fest),decsym,msgreceived,char(0)
|
write(line,1021) nutc0,nsnr,tdec,nint(fest),decsym,msgreceived,char(0)
|
||||||
! write(line,1022) nutc0,nsnr,tdec,nint(fest),decsym,msgreceived, &
|
|
||||||
! navg,char(0)
|
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
999 tsec0=tsec
|
999 tsec0=tsec
|
||||||
|
Loading…
x
Reference in New Issue
Block a user