More fixes related to nonstandard calls.

This commit is contained in:
Joe Taylor 2018-08-29 14:18:56 -04:00
parent 2d9627a79f
commit 201b29993c
3 changed files with 23 additions and 10 deletions

View File

@ -55,7 +55,7 @@ PA9XYZ 590003 IO91NP
G4ABC/P R 570007 JO22DB
PA9XYZ G4ABC/P RR73
8. Compound or nonstandard callsign calls CQ
8. Compound or nonstandard calls CQ
-----------------------------------------------------------
CQ PJ4/K1ABC
PJ4/K1ABC <W9XYZ>
@ -64,7 +64,7 @@ W9XYZ <PJ4/K1ABC> -11
<W9XYZ> PJ4/K1ABC RRR
PJ4/K1ABC <W9XYZ> 73
9. Compound or nonstandard callsign answers a CQ
9. Compound or nonstandard answers CQ
-----------------------------------------------------------
CQ W9XYZ EN37
<W9XYZ> YW18FIFA

View File

@ -16,6 +16,10 @@ subroutine hash10(n10,c13)
do i=1,nzhash
if(ihash10(i).eq.n10) then
c13=callsign(i)
if(c13(1:1).ne.'<') then
n=len(trim(c13))
c13='<'//trim(c13)//'>'//' '
endif
go to 900
endif
enddo
@ -31,11 +35,14 @@ subroutine hash12(n12,c13)
do i=1,nzhash
if(ihash12(i).eq.n12) then
c13=callsign(i)
if(c13(1:1).ne.'<') then
n=len(trim(c13))
c13='<'//trim(c13)//'>'//' '
endif
go to 900
endif
enddo
900 return
end subroutine hash12
@ -48,6 +55,10 @@ subroutine hash22(n22,c13)
do i=1,nzhash
if(ihash22(i).eq.n22) then
c13=callsign(i)
if(c13(1:1).ne.'<') then
n=len(trim(c13))
c13='<'//trim(c13)//'>'//' '
endif
go to 900
endif
enddo
@ -77,7 +88,6 @@ integer function ihashcall(c0,m)
return
end function ihashcall
subroutine save_hash_call(c13,n10,n12,n22)
character*13 c13
@ -602,10 +612,6 @@ subroutine unpack28(n28_0,c13)
! This is a 22-bit hash of a callsign
n22=n28
call hash22(n22,c13) !Retrieve callsign from hash table
if(c13(1:1).ne.'<') then
n=len(trim(c13))
c13='<'//c13(1:n)//'>'//' '
endif
go to 900
endif

View File

@ -8,9 +8,10 @@ subroutine ft8b_2(dd0,newdat,nQSOProgress,nfqso,nftx,ndepth,lapon,lapcqonly, &
include 'ft8_params.f90'
parameter(NP2=2812)
character*37 msg37,msgsent37
character*12 mycall12,hiscall12
character*12 mycall12,hiscall12,hiscall12_0
character*77 c77
character*6 mycall6,hiscall6,c1,c2
character*13 c13
character*87 cbits
real a(5)
real s8(0:7,NN)
@ -43,7 +44,7 @@ subroutine ft8b_2(dd0,newdat,nQSOProgress,nfqso,nftx,ndepth,lapon,lapcqonly, &
data mrr73/0,1,1,1,1,1,1,0,0,1,1,1,0,1,0,1,0,0,1/
data first/.true./
data graymap/0,1,3,2,5,6,4,7/
save nappasses,naptypes,one
save nappasses,naptypes,one,hiscall12_0
if(first) then
mcq=2*mcq-1
@ -82,6 +83,12 @@ subroutine ft8b_2(dd0,newdat,nQSOProgress,nfqso,nftx,ndepth,lapon,lapcqonly, &
first=.false.
endif
if(hiscall12.ne.hiscall12_0) then
c13=hiscall12//' '
call save_hash_call(c13,n10,n12,n22)
hiscall12_0=hiscall12
endif
max_iterations=30
nharderrors=-1
nbadcrc=1 ! this is used upstream to flag good decodes.