From d7448347e5be78710f18e739caaf64ad38df117e Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Tue, 30 Jun 2020 15:11:36 -0400 Subject: [PATCH] Install a basic framework for handling FST240W decodes. --- lib/decoder.f90 | 9 ++++++--- lib/fst240_decode.f90 | 13 +++++++------ 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/lib/decoder.f90 b/lib/decoder.f90 index 0266dc2a6..261591f3f 100644 --- a/lib/decoder.f90 +++ b/lib/decoder.f90 @@ -194,12 +194,13 @@ subroutine multimode_decoder(ss,id2,params,nfsample) params%nQSOProgress,params%nfqso,params%nfa,params%nfb, & params%nsubmode,params%ndepth,params%ntr,params%nexp_decode, & params%ntol,params%nzhsym,params%emedelay, & - logical(params%lapcqonly),params%napwid,mycall,hiscall) + logical(params%lapcqonly),params%napwid,mycall,hiscall, & + params%nfsplit,iwspr) call timer('dec240 ',1) go to 800 endif - rms=sqrt(dot_product(float(id2(300000:310000)), & + rms=sqrt(dot_product(float(id2(300000:310000)), & float(id2(300000:310000)))/10000.0) if(rms.lt.2.0) go to 800 @@ -681,7 +682,7 @@ contains end subroutine ft4_decoded subroutine fst240_decoded (this,nutc,sync,nsnr,dt,freq,decoded,nap, & - qual,ntrperiod) + qual,ntrperiod,lwspr) use fst240_decode implicit none @@ -696,6 +697,8 @@ contains integer, intent(in) :: nap real, intent(in) :: qual integer, intent(in) :: ntrperiod + logical, intent(in) :: lwspr + character*2 annot character*37 decoded0 diff --git a/lib/fst240_decode.f90 b/lib/fst240_decode.f90 index 5c5d07838..232912ca0 100644 --- a/lib/fst240_decode.f90 +++ b/lib/fst240_decode.f90 @@ -8,7 +8,7 @@ module fst240_decode abstract interface subroutine fst240_decode_callback (this,nutc,sync,nsnr,dt,freq, & - decoded,nap,qual,ntrperiod) + decoded,nap,qual,ntrperiod,lwspr) import fst240_decoder implicit none class(fst240_decoder), intent(inout) :: this @@ -21,6 +21,7 @@ module fst240_decode integer, intent(in) :: nap real, intent(in) :: qual integer, intent(in) :: ntrperiod + logical, intent(in) :: lwspr end subroutine fst240_decode_callback end interface @@ -28,7 +29,7 @@ contains subroutine decode(this,callback,iwave,nutc,nQSOProgress,nfqso, & nfa,nfb,nsubmode,ndeep,ntrperiod,nexp_decode,ntol,nzhsym, & - emedelay,lapcqonly,napwid,mycall,hiscall) + emedelay,lapcqonly,napwid,mycall,hiscall,nfsplit,iwspr) use timer_module, only: timer use packjt77 @@ -62,7 +63,7 @@ contains integer mcq(29),mrrr(19),m73(19),mrr73(19) logical badsync,unpk77_success,single_decode - logical first,nohiscall + logical first,nohiscall,lwspr integer*2 iwave(300*12000) @@ -503,10 +504,10 @@ contains nsnr=nint(xsnr) qual=0. fsig=fc_synced - 1.5*hmod*baud -write(21,'(i6,7i6,f7.1,f9.2,3f7.1,1x,a37)') & - nutc,icand,itry,iaptype,ijitter,ntype,nsync_qual,nharderrors,dmin,sync,xsnr,xdt,fsig,msg +!write(21,'(i6,7i6,f7.1,f9.2,3f7.1,1x,a37)') & +! nutc,icand,itry,iaptype,ijitter,ntype,nsync_qual,nharderrors,dmin,sync,xsnr,x!dt,fsig,msg call this%callback(nutc,smax1,nsnr,xdt,fsig,msg, & - iaptype,qual,ntrperiod) + iaptype,qual,ntrperiod,lwspr) goto 2002 else cycle