WSJT-X/lib/fix_contest_msg.f90
Joe Taylor 6be508d9db Complete the implementation of MSK144 contest mode. Needs testing!
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7393 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-12-17 21:18:47 +00:00

32 lines
865 B
Fortran

subroutine fix_contest_msg(mycall,mygrid,hiscall,msg)
! If msg is "mycall hiscall grid1" and distance from mygrid to grid1 is more
! thsn 10000 km, change "grid1" to "R grid2" where grid2 is the antipodes
! of grid1.
character*6 mycall,mygrid,hiscall
character*22 msg,t
character*6 g1,g2
logical isgrid
t=trim(mycall)//' '//trim(hiscall)
i0=index(msg,trim(t))
if(i0.eq.1) then
i1=len(trim(t))+2
g1=msg(i1:i1+3)
if(isgrid(g1)) then
call azdist(mygrid,g1,0.d0,nAz,nEl,nDmiles,nDkm,nHotAz,nHotABetter)
if(ndkm.gt.10000) then
call grid2deg(g1,dlong,dlat)
dlong=dlong+180.0
if(dlong.gt.180.0) dlong=dlong-360.0
dlat=-dlat
call deg2grid(dlong,dlat,g2)
msg=msg(1:i1-1)//'R '//g2(1:4)
endif
endif
endif
return
end subroutine fix_contest_msg