Fixed issue with duplicate decodes based on the ring buffer after tx cycles completed when it lined up with a decode cycle.

This commit is contained in:
Jordan Sherer
2019-11-05 15:43:34 -05:00
parent f4ae642cec
commit 720bd6b22a
5 changed files with 61 additions and 24 deletions
+2 -12
View File
@@ -1,7 +1,7 @@
program jt9
! Decoder for JT9. Can run stand-alone, reading data from *.wav files;
! or as the back end of wsjt-x, with data placed in a shared memory region.
! Decoder for js8. Can run stand-alone, reading data from *.wav files;
! or as the back end of js8call, with data placed in a shared memory region.
use options
use prog_args
@@ -15,7 +15,6 @@ program jt9
integer(C_INT) iret
type(wav_header) wav
real*4 s(NSMAX)
character c
character(len=500) optarg, infile
character wisfile*80
@@ -234,15 +233,6 @@ program jt9
4 call timer('read_wav',1)
nhsym=(k-2048)/kstep
if(nhsym.ge.1 .and. nhsym.ne.nhsym0) then
if(mode.eq.9 .or. mode.eq.74) then
! Compute rough symbol spectra for the JT9 decoder
ingain=0
call timer('symspec ',0)
nminw=1
call symspec(shared_data,k,ntrperiod,nsps,ingain,nminw,pxdb, &
s,df3,ihsym,npts8,pxdbmax)
call timer('symspec ',1)
endif
nhsym0=nhsym
if(nhsym.ge.181) exit
endif
+3 -2
View File
@@ -1,9 +1,10 @@
subroutine symspec(shared_data,k,ntrperiod,nsps,ingain,nminw,pxdb,s, &
subroutine symspec(shared_data,k,k0,ntrperiod,nsps,ingain,nminw,pxdb,s, &
df3,ihsym,npts8,pxdbmax)
! Input:
! shared_data pointer to the most recent new data
! k frames in that data
! k0 the last k observed
! ntrperiod T/R sequence length, minutes
! nsps samples per symbol, at 12000 Hz
! ndiskdat 0/1 to indicate if data from disk
@@ -32,7 +33,7 @@ subroutine symspec(shared_data,k,ntrperiod,nsps,ingain,nminw,pxdb,s, &
integer nch(7)
common/spectra/syellow(NSMAX),ref(0:3456),filter(0:3456)
data k0/99999999/,nfft3z/0/
data nfft3z/0/
data nch/1,2,4,9,18,36,72/
equivalence (xc,cx)
save