diff --git a/lib/fst4_decode.f90 b/lib/fst4_decode.f90 index 5d953e0e4..a4cce0dcd 100644 --- a/lib/fst4_decode.f90 +++ b/lib/fst4_decode.f90 @@ -64,7 +64,7 @@ contains integer naptypes(0:5,4) ! (nQSOProgress,decoding pass) integer mcq(29),mrrr(19),m73(19),mrr73(19) - logical badsync,unpk77_success + logical badsync,unpk77_success,single_decode logical first,nohiscall,lwspr,ex integer*2 iwave(30*60*12000) @@ -232,8 +232,13 @@ contains nhicoh=1 nsyncoh=8 - fa=max(100,nint(nfqso+1.5*baud-ntol)) - fb=min(4800,nint(nfqso+1.5*baud+ntol)) + fa=nfa + fb=nfb + single_decode=iand(nexp_decode,32).ne.0 + if(single_decode) then + fa=max(100,nint(nfqso+1.5*baud-ntol)) + fb=min(4800,nint(nfqso+1.5*baud+ntol)) + endif minsync=1.20 if(ntrperiod.eq.15) minsync=1.15 diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 6ff5351c2..99d42cb6a 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -3075,7 +3075,11 @@ void MainWindow::decode() //decode() dec_data.params.ntol=20; dec_data.params.naggressive=0; } - if(m_mode=="FST4") dec_data.params.ntol=ui->sbFtol->value(); + if(m_mode=="FST4") { + dec_data.params.ntol=ui->sbFtol->value(); + dec_data.params.nfa=ui->sbF_Low->value(); + dec_data.params.nfb=ui->sbF_High->value(); + } if(m_mode=="FST4W") dec_data.params.ntol=ui->sbFST4W_FTol->value(); if(dec_data.params.nutc < m_nutc0) m_RxLog = 1; //Date and Time to file "ALL.TXT". if(dec_data.params.newdat==1 and !m_diskData) m_nutc0=dec_data.params.nutc;