Install a basic framework for handling FST240W decodes.

This commit is contained in:
Joe Taylor 2020-06-30 15:11:36 -04:00
parent 53e7941c7c
commit d7448347e5
2 changed files with 13 additions and 9 deletions

View File

@ -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

View File

@ -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