From 9af174642b8765f4b5f7d5eaa79e05848ede6d43 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Wed, 16 Dec 2015 19:31:12 +0000 Subject: [PATCH] Send mycall, hiscall, hisgrid downstream to extract.f90. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6283 ab8295b8-cf94-4d9e-aec4-7959e3be5d79 --- lib/decode65a.f90 | 8 +++++--- lib/decode65b.f90 | 9 +++++---- lib/decoder.f90 | 2 +- lib/extract.f90 | 10 ++++++---- lib/fillcom.f90 | 7 +++++-- lib/jt65a.f90 | 6 ++++-- 6 files changed, 26 insertions(+), 16 deletions(-) diff --git a/lib/decode65a.f90 b/lib/decode65a.f90 index 11d8a9618..ce4b163e9 100644 --- a/lib/decode65a.f90 +++ b/lib/decode65a.f90 @@ -1,5 +1,6 @@ subroutine decode65a(dd,npts,newdat,nqd,f0,nflip,mode65,ntrials, & - naggressive,ndepth,nexp_decode,sync2,a,dt,nft,qual,nhist,decoded) + naggressive,ndepth,mycall,hiscall,hisgrid,nexp_decode,sync2, & + a,dt,nft,qual,nhist,decoded) ! Apply AFC corrections to a candidate JT65 signal, then decode it. @@ -12,6 +13,7 @@ subroutine decode65a(dd,npts,newdat,nqd,f0,nflip,mode65,ntrials, & real a(5) logical first character decoded*22 + character mycall*12,hiscall*12,hisgrid*6 data first/.true./,jjjmin/1000/,jjjmax/-1000/ data nhz0/-9999999/ save @@ -73,8 +75,8 @@ subroutine decode65a(dd,npts,newdat,nqd,f0,nflip,mode65,ntrials, & call timer('sh_ffts ',1) call timer('dec65b ',0) - call decode65b(s2,nflip,mode65,ntrials,naggressive,ndepth,nexp_decode, & - nqd,nft,qual,nhist,decoded) + call decode65b(s2,nflip,mode65,ntrials,naggressive,ndepth, & + mycall,hiscall,hisgrid,nexp_decode,nqd,nft,qual,nhist,decoded) dt=dtbest !return new, improved estimate of dt call timer('dec65b ',1) diff --git a/lib/decode65b.f90 b/lib/decode65b.f90 index a4bd49ea4..ce2d13fb1 100644 --- a/lib/decode65b.f90 +++ b/lib/decode65b.f90 @@ -1,10 +1,11 @@ -subroutine decode65b(s2,nflip,mode65,ntrials,naggressive,ndepth,nexp_decode, & - nqd,nft,qual,nhist,decoded) +subroutine decode65b(s2,nflip,mode65,ntrials,naggressive,ndepth, & + mycall,hiscall,hisgrid,nexp_decode,nqd,nft,qual,nhist,decoded) real s2(66,126) real s3(64,63) logical first,ltext character decoded*22 + character mycall*12,hiscall*12,hisgrid*6 common/prcom/pr(126),mdat(126),mref(126,2),mdat2(126),mref2(126,2) data first/.true./ save @@ -23,8 +24,8 @@ subroutine decode65b(s2,nflip,mode65,ntrials,naggressive,ndepth,nexp_decode, & enddo nadd=mode65 - call extract(s3,nadd,ntrials,naggressive,ndepth,ncount,nhist,decoded, & - ltext,nft,qual) !Extract the message + call extract(s3,nadd,ntrials,naggressive,ndepth,mycall,hiscall,hisgrid, & + ncount,nhist,decoded,ltext,nft,qual) !Extract the message ! Suppress "birdie messages" and other garbage decodes: if(decoded(1:7).eq.'000AAA ') ncount=-1 diff --git a/lib/decoder.f90 b/lib/decoder.f90 index e76529138..c3f62231c 100644 --- a/lib/decoder.f90 +++ b/lib/decoder.f90 @@ -71,7 +71,7 @@ subroutine decoder(ss,id2,nfsample) call timer('jt65a ',0) call jt65a(dd,npts65,newdat65,nutc,nf1,nf2,nfqso,ntol65,nsubmode, & minsync,nagain,n2pass,nrobust,ntrials,naggressive,ndepth, & - nexp_decode,ndecoded) + mycall,hiscall,hisgrid,nexp_decode,ndecoded) call timer('jt65a ',1) else if(nmode.eq.9 .or. (nmode.eq.(65+9) .and. ntxmode.eq.9)) then diff --git a/lib/extract.f90 b/lib/extract.f90 index 59b4c9bdb..cdd41f43d 100644 --- a/lib/extract.f90 +++ b/lib/extract.f90 @@ -1,5 +1,5 @@ -subroutine extract(s3,nadd,ntrials,naggressive,ndepth,ncount,nhist, & - decoded,ltext,nft,qual) +subroutine extract(s3,nadd,ntrials,naggressive,ndepth, & + mycall_12,hiscall_12,hisgrid,ncount,nhist,decoded,ltext,nft,qual) ! Input: ! s3 64-point spectra for each of 63 data symbols @@ -18,7 +18,8 @@ subroutine extract(s3,nadd,ntrials,naggressive,ndepth,ncount,nhist, & real s3(64,63) character decoded*22 - character*6 mycall + character*12 mycall_12,hiscall_12 + character*6 mycall,hiscall,hisgrid integer dat4(12) integer mrsym(63),mr2sym(63),mrprob(63),mr2prob(63) integer correct(63),tmp(63) @@ -29,6 +30,8 @@ subroutine extract(s3,nadd,ntrials,naggressive,ndepth,ncount,nhist, & common/test001/s3a(64,63),mrs(63),mrs2(63) !### TEST ONLY ### save + mycall=mycall_12(1:6) + hiscall=hiscall_12(1:6) qual=0. nbirdie=20 npct=50 @@ -87,7 +90,6 @@ subroutine extract(s3,nadd,ntrials,naggressive,ndepth,ncount,nhist, & call timer('exp_deco',0) mode65=1 flip=1.0 - mycall='K1ABC' !### TEMPORARY ### call exp_decode65(s3,mrs,mrs2,mrsym,mr2sym,mrprob,mode65,flip, & mycall,qual,decoded) if(qual.ge.qmin) then diff --git a/lib/fillcom.f90 b/lib/fillcom.f90 index d197a862d..42f725d66 100644 --- a/lib/fillcom.f90 +++ b/lib/fillcom.f90 @@ -23,11 +23,14 @@ subroutine fillcom(nutc0,ndepth0,nrxfreq,mode,tx9,flow,fsplit,fhigh) nzhsym=181 ndepth=ndepth0 dttol=3.0 -! minsync=-1 !### TEST ONLY + minsync=-1 !### TEST ONLY + naggressive=1 + mycall='K1ABC' + hiscall='W9XYZ' + hisgrid='EN37' n2pass=1 nranera=8 !ntrials=10000 - naggressive=0 nrobust=0 if (tx9) then diff --git a/lib/jt65a.f90 b/lib/jt65a.f90 index 561b5734f..dba9542e1 100644 --- a/lib/jt65a.f90 +++ b/lib/jt65a.f90 @@ -1,6 +1,6 @@ subroutine jt65a(dd0,npts,newdat,nutc,nf1,nf2,nfqso,ntol,nsubmode, & minsync,nagain,n2pass,nrobust,ntrials,naggressive,ndepth, & - nexp_decode,ndecoded) + mycall,hiscall,hisgrid,nexp_decode,ndecoded) ! Process dd0() data to find and decode JT65 signals. @@ -12,6 +12,7 @@ subroutine jt65a(dd0,npts,newdat,nutc,nf1,nf2,nfqso,ntol,nsubmode, & real savg(NSZ) real a(5) character*22 decoded,decoded0 + character mycall*12,hiscall*12,hisgrid*6 type candidate real freq real dt @@ -94,7 +95,8 @@ subroutine jt65a(dd0,npts,newdat,nutc,nf1,nf2,nfqso,ntol,nsubmode, & if(ipass.eq.2) ntry65b=ntry65b + 1 call timer('decod65a',0) call decode65a(dd,npts,newdat,nqd,freq,nflip,mode65,nvec, & - naggressive,ndepth,nexp_decode,sync2,a,dtx,nft,qual,nhist,decoded) + naggressive,ndepth,mycall,hiscall,hisgrid,nexp_decode, & + sync2,a,dtx,nft,qual,nhist,decoded) call timer('decod65a',1) !### Suppress false decodes in crowded HF bands ###