From 0037e7ad0579f3385ac14e6c6dd0a8513117837a Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Wed, 2 Aug 2006 13:36:39 +0000 Subject: [PATCH] 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 --- avesp2.f | 19 ++++++++++++------- wsjt.py | 10 +++++++++- wsjt1.F | 6 ++++-- 3 files changed, 25 insertions(+), 10 deletions(-) diff --git a/avesp2.f b/avesp2.f index 3802907b2..2bb635614 100644 --- a/avesp2.f +++ b/avesp2.f @@ -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 diff --git a/wsjt.py b/wsjt.py index 349b43557..564d12efd 100644 --- a/wsjt.py +++ b/wsjt.py @@ -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) diff --git a/wsjt1.F b/wsjt1.F index 3e863385c..732132b24 100644 --- a/wsjt1.F +++ b/wsjt1.F @@ -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)