diff --git a/lib/ft4/ft4_decode.f90 b/lib/ft4/ft4_decode.f90 index 6fc0059f3..29427ffb9 100644 --- a/lib/ft4/ft4_decode.f90 +++ b/lib/ft4/ft4_decode.f90 @@ -1,4 +1,5 @@ -subroutine ft4_decode(cdatetime0,nfqso,iwave,ndecodes,mycall,hiscall,nrx,line) +subroutine ft4_decode(cdatetime0,nfa,nfb,nfqso,iwave,ndecodes,mycall, & + hiscall,nrx,line) use packjt77 include 'ft4_params.f90' @@ -66,12 +67,11 @@ subroutine ft4_decode(cdatetime0,nfqso,iwave,ndecodes,mycall,hiscall,nrx,line) syncmin=1.2 maxcand=100 -! These are temporary. Correct values should be passed in as arguments. +! ### This is temporary. Correct directory should be passed in as an argument. data_dir="." - fMHz=7.074 - fa=400.0 - fb=3000.0 + fa=nfa + fb=nfb call getcandidates4(iwave,fa,fb,syncmin,nfqso,maxcand,savg,candidate, & ncand,sbase) diff --git a/lib/ft4/ft4d.f90 b/lib/ft4/ft4d.f90 index 1f4dccd59..c0bd15270 100644 --- a/lib/ft4/ft4d.f90 +++ b/lib/ft4/ft4d.f90 @@ -43,6 +43,8 @@ program ft4d iarg=iarg+2 endif ncoh=1 + nfa=200 + nfb=3000 do ifile=iarg,nargs call getarg(ifile,infile) @@ -54,7 +56,8 @@ program ft4d cdatetime=' '//datetime close(10) - call ft4_decode(cdatetime,nfqso,iwave,ndecodes,mycall,hiscall,nrx,line) + call ft4_decode(cdatetime,nfa,nfb,nfqso,iwave,ndecodes,mycall, & + hiscall,nrx,line) if(ndecodes.ge.1) write(*,'(a61)') line enddo !files diff --git a/lib/ft4/getcandidates4.f90 b/lib/ft4/getcandidates4.f90 index 436ce59d1..402116a27 100644 --- a/lib/ft4/getcandidates4.f90 +++ b/lib/ft4/getcandidates4.f90 @@ -45,7 +45,9 @@ subroutine getcandidates4(id,fa,fb,syncmin,nfqso,maxcand,savg,candidate, & savsm(i)=sum(savg(i-7:i+7))/15. enddo nfa=fa/df + if(nfa.lt.1) nfa=1 nfb=fb/df + if(nfb.gt.nint(5000.0/df)) nfb=nint(5000.0/df) np=nfb-nfa+1 indx=0 call indexx(savsm(nfa:nfb),np,indx) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index b6004ca9c..e63f57124 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -163,8 +163,8 @@ extern "C" { void chkcall_(char* w, char* basc_call, bool cok, int len1, int len2); - void ft4_decode_(char* cdatetime, int* nfqso, short int id[], int* ndecodes, - char* mycall6, char* hiscall6, int* nrx, char* line, + void ft4_decode_(char* cdatetime, int* nfa, int* nfb, int* nfqso, short int id[], + int* ndecodes, char* mycall6, char* hiscall6, int* nrx, char* line, int len1, int len2, int len3, int len4); } @@ -8652,8 +8652,10 @@ void MainWindow::ft4Data(int k) int nfqso=1500; int ndecodes=0; int nrx=-1; - ft4_decode_(cdatetime,&nfqso,id,&ndecodes,mycall6,hiscall6,&nrx,&line[0], - 17,6,6,61); + int nfa=m_wideGraph->nStartFreq(); + int nfb=m_wideGraph->Fmax(); + ft4_decode_(cdatetime,&nfa,&nfb,&nfqso,id,&ndecodes,mycall6,hiscall6, + &nrx,&line[0],17,6,6,61); line[60]=0; if(ndecodes>0) { QString sline{QString::fromLatin1(line)};