mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-12-24 11:40:31 -05:00
Reduce FT4 chunk size fro 500 to 288 ms; suppress duplicate decodes from close to chunk ends.
This commit is contained in:
parent
186482811a
commit
c2cb55a68a
@ -5,7 +5,7 @@ subroutine ft4_decode(cdatetime0,tbuf,nfa,nfb,nQSOProgress,ncontest,nfqso, &
|
||||
include 'ft4_params.f90'
|
||||
parameter (NSS=NSPS/NDOWN)
|
||||
|
||||
character message*37,msgsent*37
|
||||
character message*37,msgsent*37,msg0*37
|
||||
character c77*77
|
||||
character*61 line,linex(100)
|
||||
character*37 decodes(100)
|
||||
@ -53,6 +53,7 @@ subroutine ft4_decode(cdatetime0,tbuf,nfa,nfb,nQSOProgress,ncontest,nfqso, &
|
||||
data icos4c/2,3,1,0/
|
||||
data icos4d/3,2,0,1/
|
||||
data graymap/0,1,3,2/
|
||||
data msg0/' '/
|
||||
data first/.true./
|
||||
data mcq/0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0/
|
||||
data mcqru/0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,0,0,1,1,0,0/
|
||||
@ -65,7 +66,7 @@ subroutine ft4_decode(cdatetime0,tbuf,nfa,nfb,nQSOProgress,ncontest,nfqso, &
|
||||
1,0,0,1,0,1,1,0,0,0,0,1,0,0,0,1,0,1,0,0,1,1,1,1,0,0,1,0,1, &
|
||||
0,1,0,1,0,1,1,0,1,1,1,1,1,0,0,0,1,0,1/
|
||||
save fs,dt,tt,txt,twopi,h,one,first,nrxx,linex,apbits,nappasses,naptypes, &
|
||||
mycall0,hiscall0,ncontest0
|
||||
mycall0,hiscall0,ncontest0,msg0
|
||||
|
||||
call clockit('ft4_deco',0)
|
||||
hhmmss=cdatetime0(8:13)
|
||||
@ -183,7 +184,7 @@ subroutine ft4_decode(cdatetime0,tbuf,nfa,nfb,nQSOProgress,ncontest,nfqso, &
|
||||
idfmax=12
|
||||
idfstp=3
|
||||
ibmin=0
|
||||
ibmax=374
|
||||
ibmax=215
|
||||
ibstp=4
|
||||
else
|
||||
idfmin=idfbest-4
|
||||
@ -440,6 +441,7 @@ subroutine ft4_decode(cdatetime0,tbuf,nfa,nfb,nQSOProgress,ncontest,nfqso, &
|
||||
do i=1,ndecodes
|
||||
if(decodes(i).eq.message) idupe=1
|
||||
enddo
|
||||
if(ibest.le.10 .and. message.eq.msg0) idupe=1 !Already decoded
|
||||
if(idupe.eq.1) exit
|
||||
ndecodes=ndecodes+1
|
||||
decodes(ndecodes)=message
|
||||
@ -466,6 +468,7 @@ subroutine ft4_decode(cdatetime0,tbuf,nfa,nfb,nQSOProgress,ncontest,nfqso, &
|
||||
1002 format(a17,i4,f5.1,i5,' Rx ',a37,5i5)
|
||||
close(24)
|
||||
linex(ndecodes)=line
|
||||
if(ibest.ge.210) msg0=message !Possible dupe candidate
|
||||
|
||||
!### Temporary: assume most recent decoded message conveys "hiscall". ###
|
||||
i0=index(message,' ')
|
||||
|
@ -8612,18 +8612,14 @@ void MainWindow::write_all(QString txRx, QString message)
|
||||
|
||||
void MainWindow::ft4Data(int k)
|
||||
{
|
||||
static int nhsec0=-1;
|
||||
static bool wrapped=false;
|
||||
short id[60000];
|
||||
|
||||
int nhsec=k/6000;
|
||||
if(nhsec0>nhsec) nhsec0=-1;
|
||||
if(nhsec==nhsec0) return;
|
||||
if(k<60000 and !wrapped) return;
|
||||
|
||||
//Process FT4 data at 0.5 s intervals
|
||||
int j=k/6000;
|
||||
j=6000*j-60000;
|
||||
//Process FT4 data at 0.288 s intervals
|
||||
int j=k/3456;
|
||||
j=3456*j-60000;
|
||||
if(j<0) j+=NRING;
|
||||
float tbuf=j/12000.0;
|
||||
for(int i=0; i<60000; i++) {
|
||||
@ -8707,8 +8703,7 @@ void MainWindow::ft4Data(int k)
|
||||
}
|
||||
//###
|
||||
}
|
||||
nhsec0=nhsec;
|
||||
if(m_diskData and (k > (dec_data.params.kin-6000))) m_startAnother=m_loopall;
|
||||
if(m_diskData and (k > (dec_data.params.kin-3456))) m_startAnother=m_loopall;
|
||||
if(m_bNoMoreFiles) {
|
||||
MessageBox::information_message(this, tr("Just one more file to open."));
|
||||
m_bNoMoreFiles=false;
|
||||
|
Loading…
Reference in New Issue
Block a user