wsjt1: improved logic for Zap (interference removal) for FSK441 and

JT6M modes
avesp2: ditto.  In addition, dependence of Zap behavior on decoding history
        has been removed.
wsjt.py: corrected default setting of PTTPort under Win32.


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/trunk@229 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Joe Taylor 2006-08-02 13:36:39 +00:00
parent 610b3de28e
commit 0037e7ad05
3 changed files with 25 additions and 10 deletions

View File

@ -1,4 +1,4 @@
subroutine avesp2(dat,jza,nadd,f0,NFreeze,MouseDF,
subroutine avesp2(dat,jza,nadd,f0,mode,NFreeze,MouseDF,
+ DFTolerance,fzap)
real dat(jza)
@ -27,20 +27,25 @@ C Flatten s2 and get psa, ref, and birdie
ia=300/df
ib=2700/df
n=0
fmouse=0.
if(mode.eq.2) fmouse=1270.46+MouseDF
if(mode.eq.4) fmouse=1076.66+MouseDF
do i=ia,ib
if(birdie(i)-ref(i).gt.3.0) then
f=i*df
C Don't zap unless Freeze is OFF or birdie is outside the "Tol" range.
if(NFreeze.eq.0 .or.
+ abs(f-1270.46-MouseDF).gt.float(DFTolerance)) then
if(abs(f-f0).gt.25.0) then
+ abs(f-fmouse).gt.float(DFTolerance)) then
if(n.lt.200 .and. variance(i-1).lt.2.5 .and.
+ variance(i).lt.2.5 .and. variance(i+1).lt.2.5) then
+ variance(i).lt.2.5.and.variance(i+1).lt.2.5) then
n=n+1
fzap(n)=i*df
fzap(n)=f
endif
endif
endif
endif
endif
enddo
return

10
wsjt.py
View File

@ -1986,6 +1986,11 @@ try:
params=f.readlines()
except:
params=""
if g.Win32:
options.PttPort.set("0")
else:
options.PttPort.set("/dev/cuad0")
Audio.gcom2.nport=0
try:
for i in range(len(params)):
@ -2029,7 +2034,10 @@ try:
except:
Audio.gcom2.nport=0
except:
options.PttPort.set("/dev/cuad0")
if g.Win32:
options.PttPort.set("0")
else:
options.PttPort.set("/dev/cuad0")
Audio.gcom2.nport=0
Audio.gcom2.pttport=(options.PttPort.get()+' ')[:12]
elif key == 'Mileskm': options.mileskm.set(value)

View File

@ -128,7 +128,9 @@ C Intentionally degrade SNR by -nclip dB.
endif
if(mode.ne.2 .and. nzap.ne.0) then
if(jz.gt.100000) call avesp2(dat,jz,2,f0a,NFreeze,MouseDF,
nfrz=NFreeze
if(mode.eq.1) nfrz=0
if(jz.gt.100000) call avesp2(dat,jz,2,f0a,mode,nfrz,MouseDF,
+ DFTolerance,fzap)
nadd=1
call bzap(dat,jz,nadd,mode,fzap)
@ -184,7 +186,7 @@ C Intentionally degrade SNR by -nclip dB.
jz=jz2
nadd=1
fzap(1)=0.
if(nzap.eq.1) call avesp2(dat,jz,nadd,f0a,NFreeze,MouseDF,
if(nzap.eq.1) call avesp2(dat,jz,nadd,f0a,mode,NFreeze,MouseDF,
+ DFTolerance,fzap)
if(nzap.eq.1.and.nstest.eq.0) call bzap(dat,jz,nadd,mode,fzap)