From b6fb6e3dd9d66871273fe19f3d42e0bbc956a907 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 20 Sep 2018 14:04:48 -0400 Subject: [PATCH] Simplify stdmsg.f90. (Will it still be OK for the 72-bit modes?) --- lib/stdmsg.f90 | 40 +++++++++++++++++----------------------- 1 file changed, 17 insertions(+), 23 deletions(-) diff --git a/lib/stdmsg.f90 b/lib/stdmsg.f90 index f61935622..fec6c3396 100644 --- a/lib/stdmsg.f90 +++ b/lib/stdmsg.f90 @@ -2,15 +2,6 @@ function stdmsg(msg0) ! Returns .true. if msg0 a standard "JT-style" message - ! itype - ! 1 Standard 72-bit structured message - ! 2 Type 1 prefix - ! 3 Type 1 suffix - ! 4 Type 2 prefix - ! 5 Type 2 suffix - ! 6 Free text - ! 7 Hashed calls (MSK144 short format) - ! i3.n3 ! 0.0 Free text ! 0.1 DXpeditiion mode @@ -27,23 +18,26 @@ function stdmsg(msg0) use iso_c_binding, only: c_bool use packjt - character*37 msg0,msg1,msg - integer dat(12) + use packjt77 + + character*37 msg0,msg1 + character*77 c77 logical(c_bool) :: stdmsg msg1=msg0 - i0=index(msg1,' OOO ') - if(i0.gt.10) msg1=msg0(1:i0) - call packmsg(msg0,dat,itype) - call unpackmsg(dat,msg) - msg(23:37)=' ' - stdmsg=(msg(1:22).eq.msg1(1:22)) .and. (itype.ge.0) .and. (itype.ne.6) - if(.not.stdmsg) then - i0=index(msg1,' ') - msg1(i0:)=' ' - call parse77(msg1,i3,n3) - if(i3.gt.0 .or. n3.gt.0) stdmsg=.true. - endif + i3=-1 + n3=-1 + call pack77(msg1,i3,n3,c77) + stdmsg=(i3.gt.0 .or. n3.gt.0) +!### +! rewind 82 +! do i=1,nzhash +! write(82,3082) i,nzhash,callsign(i) +!3082 format(2i5,2x,a13) +! enddo +! flush(82) +!### + return end function stdmsg