From f0fdc8822b895088239aa81d0d36e27c5cdd33d8 Mon Sep 17 00:00:00 2001
From: Joe Taylor <k1jt@arrl.org>
Date: Mon, 7 Mar 2016 20:54:12 +0000
Subject: [PATCH] Working toward best hinted decoding for submodes JT65B and C.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6508 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
---
 lib/decode65a.f90 | 4 +++-
 lib/decode65b.f90 | 4 ++--
 lib/extract.f90   | 7 +++----
 lib/hint65.f90    | 2 +-
 4 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/lib/decode65a.f90 b/lib/decode65a.f90
index 8d3ac902b..f53ef1eea 100644
--- a/lib/decode65a.f90
+++ b/lib/decode65a.f90
@@ -105,9 +105,11 @@ subroutine decode65a(dd,npts,newdat,nqd,f0,nflip,mode65,ntrials,     &
      call decode65b(s2,nflip,mode65,ntrials,naggressive,ndepth,           &
           mycall,hiscall,hisgrid,nexp_decode,nqd,nft,qual,nhist,decoded)
      if(nft.eq.1) then
-!### Should also deal with nft=2 solutions, if no nft=1.
         nsmo=ismo
         exit
+     else if(nft.eq.2) then
+!### Should also deal with nft=2 solutions
+        
      endif
   enddo
 
diff --git a/lib/decode65b.f90 b/lib/decode65b.f90
index a22c34386..4c761de65 100644
--- a/lib/decode65b.f90
+++ b/lib/decode65b.f90
@@ -24,8 +24,8 @@ subroutine decode65b(s2,nflip,mode65,ntrials,naggressive,ndepth,      &
   enddo
 
   nadd=mode65
-  call extract(s3,nadd,ntrials,naggressive,ndepth,mycall,hiscall,hisgrid,  &
-       nexp_decode,ncount,nhist,decoded,ltext,nft,qual)     !Extract the message
+  call extract(s3,nadd,mode65,ntrials,naggressive,ndepth,mycall,hiscall,  &
+       hisgrid,nexp_decode,ncount,nhist,decoded,ltext,nft,qual)
 
 ! Suppress "birdie messages" and other garbage decodes:
   if(decoded(1:7).eq.'000AAA ') ncount=-1
diff --git a/lib/extract.f90 b/lib/extract.f90
index 4f7ede979..08615f714 100644
--- a/lib/extract.f90
+++ b/lib/extract.f90
@@ -1,4 +1,4 @@
-subroutine extract(s3,nadd,ntrials,naggressive,ndepth,mycall_12,    &
+subroutine extract(s3,nadd,mode65,ntrials,naggressive,ndepth,mycall_12,    &
      hiscall_12,hisgrid,nexp_decode,ncount,nhist,decoded,ltext,nft,qual)
 
 ! Input:
@@ -93,11 +93,10 @@ subroutine extract(s3,nadd,ntrials,naggressive,ndepth,mycall_12,    &
   if(ntotal.le.nd0 .and. rtt.le.r0) nft=1
 
   if(nft.eq.0 .and. ndepth.ge.5) then
-     mode65=1
      flip=1.0
      qmin=1.0
-          call timer('hint65  ',0)
-     call hint65(s3,mrs,mrs2,mrsym,mr2sym,mrprob,mode65,flip,   &
+     call timer('hint65  ',0)
+     call hint65(s3,mrs,mrs2,mrsym,mr2sym,mrprob,nadd,flip,   &
           mycall,hiscall,hisgrid,nexp_decode,qual,decoded)
      if(qual.ge.qmin) then
         nft=2
diff --git a/lib/hint65.f90 b/lib/hint65.f90
index 0a1a47fd4..a00864289 100644
--- a/lib/hint65.f90
+++ b/lib/hint65.f90
@@ -1,4 +1,4 @@
-subroutine hint65(s3,mrs,mrs2,mrsym,mr2sym,mrprob,mode65,flip,   &
+subroutine hint65(s3,mrs,mrs2,mrsym,mr2sym,mrprob,nadd,flip,   &
      mycall,hiscall0,hisgrid0,nexp_decode,qual,decoded)
 
   use packjt