From 3dd34e13bafa7310666bfd315acfb652dbd9c34e Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Fri, 4 Dec 2020 15:29:46 -0500 Subject: [PATCH] dd "MyCall DxCall DxGrid" to list. Set PLOG_MIN=-240. No list decoding if DxCall is not defined. --- lib/q65_sync.f90 | 3 ++- lib/qra/q65/q65_set_list.f90 | 8 ++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/q65_sync.f90 b/lib/q65_sync.f90 index aa238d69d..62e3a72e6 100644 --- a/lib/q65_sync.f90 +++ b/lib/q65_sync.f90 @@ -16,6 +16,7 @@ subroutine q65_sync(nutc,iwave,nmax,mode_q65,codewords,ncw,nsps,nfqso,ntol, & use packjt77 parameter (NSTEP=8) !Step size nsps/NSTEP parameter (LN=2176*63) !LN=LL*NN; LL=64*(mode_q65+2), NN=63 + parameter (PLOG_MIN=-240.0) !List decoding threshold integer*2 iwave(0:nmax-1) !Raw data integer isync(22) !Indices of sync symbols integer itone(85) @@ -171,7 +172,7 @@ subroutine q65_sync(nutc,iwave,nmax,mode_q65,codewords,ncw,nsps,nfqso,ntol, & b90=1.72**ibw call q65_intrinsics_ff(s3,nsubmode,b90/baud,nFadingModel,s3prob) call q65_dec_fullaplist(s3,s3prob,codewords,ncw,esnodb,dat4,plog,irc) - if(irc.ge.0 .and. plog.ge.-255.0) then + if(irc.ge.0 .and. plog.ge.PLOG_MIN) then snr2=esnodb - db(2500.0/baud) id1=1 write(c77,1000) dat4(1:12),dat4(13)/2 diff --git a/lib/qra/q65/q65_set_list.f90 b/lib/qra/q65/q65_set_list.f90 index f899cac66..4e67e0ff4 100644 --- a/lib/qra/q65/q65_set_list.f90 +++ b/lib/qra/q65/q65_set_list.f90 @@ -8,10 +8,14 @@ subroutine q65_set_list(mycall,hiscall,hisgrid,codewords,ncw) integer isync(22) data isync/1,9,12,13,15,22,23,26,27,33,35,38,46,50,55,60,62,66,69,74,76,85/ + ncw=0 + if(hiscall(1:1).eq. ' ') return + + ncw=58 msg0=trim(mycall)//' '//trim(hiscall) j0=len(trim(msg0))+2 isnr0=-35 - do i=1,57 + do i=1,ncw msg=msg0 if(i.eq.2) msg(j0:j0+2)='RRR' if(i.eq.3) msg(j0:j0+3)='RR73' @@ -22,6 +26,7 @@ subroutine q65_set_list(mycall,hiscall,hisgrid,codewords,ncw) if(iand(i,1).eq.0) write(msg(j0:j0+3),'("R",i3.2)') isnr endif if(i.eq.57) msg='CQ '//trim(hiscall)//' '//hisgrid(1:4) + if(i.eq.58) msg(j0:j0+3)=hisgrid(1:4) call genq65(msg,0,msgsent,itone,i3,n3) i0=1 j=0 @@ -33,7 +38,6 @@ subroutine q65_set_list(mycall,hiscall,hisgrid,codewords,ncw) j=j+1 codewords(j,i)=itone(k) - 1 enddo - ncw=57 ! write(*,3001) i,isnr,codewords(1:13,i),trim(msg) !3001 format(i2,2x,i3.2,2x,13i3,2x,a) enddo