From d56f359b6993802a83c3129b2c72e6d076c0a98a Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Tue, 16 Jun 2020 10:26:36 -0400 Subject: [PATCH] Messages decoding to i3.n3 = 0.2 are now ignored: 0.2 is not currently used. --- lib/77bit/packjt77.f90 | 16 +++++----------- lib/ft8/ft8b.f90 | 17 +++++++++-------- 2 files changed, 14 insertions(+), 19 deletions(-) diff --git a/lib/77bit/packjt77.f90 b/lib/77bit/packjt77.f90 index 22cdb52fb..212887c11 100644 --- a/lib/77bit/packjt77.f90 +++ b/lib/77bit/packjt77.f90 @@ -281,7 +281,7 @@ subroutine unpack77(c77,nrx,msg,unpk77_success) call unpacktext77(c77(1:71),msg(1:13)) msg(14:)=' ' msg=adjustl(msg) - + else if(i3.eq.0 .and. n3.eq.1) then ! 0.1 K1ABC RR73; W9XYZ -11 28 28 10 5 71 DXpedition Mode read(c77,1010) n28a,n28b,n10,n5 @@ -303,6 +303,9 @@ subroutine unpack77(c77,nrx,msg,unpk77_success) n10.eq.hashmy10) call_3='<'//trim(mycall13)//'>' msg=trim(call_1)//' RR73; '//trim(call_2)//' '//trim(call_3)//' '//crpt + else if(i3.eq.0 .and. n3.eq.2) then + unpk77_success=.false. + else if(i3.eq.0 .and. (n3.eq.3 .or. n3.eq.4)) then ! 0.3 WA9XYZ KA1ABC R 16A EMA 28 28 1 4 3 7 71 ARRL Field Day ! 0.4 WA9XYZ KA1ABC R 32A EMA 28 28 1 4 3 7 71 ARRL Field Day @@ -411,10 +414,6 @@ subroutine unpack77(c77,nrx,msg,unpk77_success) read(c77,1000) n28a,ipa,n28b,ipb,ir,igrid4,i3 1000 format(2(b28,b1),b1,b15,b3) call unpack28(n28a,call_1,unpk28_success) - if(nrx.eq.1 .and. mycall13_set .and. hashmy22.eq.(n28a-2063592)) then - call_1='<'//trim(mycall13)//'>' - unpk28_success=.true. - endif if(.not.unpk28_success) unpk77_success=.false. call unpack28(n28b,call_2,unpk28_success) if(.not.unpk28_success) unpk77_success=.false. @@ -537,12 +536,7 @@ subroutine unpack77(c77,nrx,msg,unpk77_success) ! EU VHF contest read(c77,1060) n12,n22,ir,irpt,iserial,igrid6 1060 format(b12,b22,b1,b3,b11,b25) - if(igrid6.lt.0 .or. igrid6.gt.18662399) then - unpk77_success=.false. - return - endif call hash12(n12,call_1) - if(n12.eq.hashmy12) call_1='<'//trim(mycall13)//'>' call hash22(n22,call_2) nrs=52+irpt write(cexch,1022) nrs,iserial @@ -554,7 +548,7 @@ subroutine unpack77(c77,nrx,msg,unpk77_success) else if(i3.ge.6) then ! i3 values 6 and 7 are not yet defined unpk77_success=.false. endif - if(msg(1:4).eq.'CQ <') unpk77_success=.false. +! if(msg(1:4).eq.'CQ <') unpk77_success=.false. return end subroutine unpack77 diff --git a/lib/ft8/ft8b.f90 b/lib/ft8/ft8b.f90 index 246541461..bbcc209f9 100644 --- a/lib/ft8/ft8b.f90 +++ b/lib/ft8/ft8b.f90 @@ -403,12 +403,14 @@ subroutine ft8b(dd0,newdat,nQSOProgress,nfqso,nftx,ndepth,nzhsym,lapon, & dmin=0.0 norder=2 maxosd=2 - if(ndepth.eq.1) maxosd=-1 ! BP only - if(ndepth.eq.2) maxosd=0 ! uncoupled BP+OSD - if(ndepth.eq.3 .and. & - (abs(nfqso-f1).le.napwid .or. abs(nftx-f1).le.napwid .or. ncontest.eq.7)) then + if(ndepth.lt.3) maxosd=1 + if(abs(nfqso-f1).le.napwid .or. abs(nftx-f1).le.napwid .or. ncontest.eq.7) then maxosd=2 endif + if(nagain) then + norder=3 + maxosd=1 + endif call timer('dec174_91 ',0) Keff=91 call decode174_91(llrz,Keff,maxosd,norder,apmask,message91,cw, & @@ -423,10 +425,9 @@ subroutine ft8b(dd0,newdat,nQSOProgress,nfqso,nftx,ndepth,nzhsym,lapon, & read(c77(72:74),'(b3)') n3 read(c77(75:77),'(b3)') i3 if(i3.gt.5 .or. (i3.eq.0.and.n3.gt.6)) cycle + if(i3.eq.0 .and. n3.eq.2) cycle call unpack77(c77,1,msg37,unpk77_success) - if(.not.unpk77_success) then - cycle - endif + if(.not.unpk77_success) cycle nbadcrc=0 ! If we get this far: valid codeword, valid (i3,n3), nonquirky message. call get_ft8_tones_from_77bits(message77,itone) if(lsubtract) then @@ -452,7 +453,7 @@ subroutine ft8b(dd0,newdat,nQSOProgress,nfqso,nftx,ndepth,nzhsym,lapon, & if(.not.nagain) then xsnr=xsnr2 endif - if(nsync.le.10 .and. xsnr.lt.-24.0) then !bail out, likely false decode + if(nsync.le.7 .and. xsnr.lt.-24.0) then !bail out, likely false decode nbadcrc=1 return endif