diff --git a/lib/decoder.f90 b/lib/decoder.f90 index 15e723fdc..20357036d 100644 --- a/lib/decoder.f90 +++ b/lib/decoder.f90 @@ -438,13 +438,13 @@ contains integer, intent(in) :: snr real, intent(in) :: dt real, intent(in) :: freq - character(len=32), intent(in) :: decoded + character(len=37), intent(in) :: decoded character c1*12,c2*6,g2*4,w*4 integer i0,i1,i2,i3,i4,i5,n30,nwrap integer, intent(in) :: nap real, intent(in) :: qual character*2 annot - character*32 decoded0 + character*37 decoded0 logical isgrid4,first,b0,b1,b2 data first/.true./ save @@ -478,9 +478,9 @@ contains if(i0.le.0) write(*,1000) params%nutc,snr,dt,nint(freq),decoded0(1:22),annot 1000 format(i6.6,i4,f5.1,i5,' ~ ',1x,a22,1x,a2) if(i0.gt.0) write(*,1001) params%nutc,snr,dt,nint(freq),decoded0 -1001 format(i6.6,i4,f5.1,i5,' ~ ',1x,a32) +1001 format(i6.6,i4,f5.1,i5,' ~ ',1x,a37) write(13,1002) params%nutc,nint(sync),snr,dt,freq,0,decoded0 -1002 format(i6.6,i4,i5,f6.1,f8.0,i4,3x,a32,' FT8') +1002 format(i6.6,i4,i5,f6.1,f8.0,i4,3x,a37,' FT8') i1=index(decoded0,' ') i2=i1 + index(decoded0(i1+1:),' ') diff --git a/lib/ft8/ft8b.f90 b/lib/ft8/ft8b.f90 index d68f2ebfa..d22e76194 100644 --- a/lib/ft8/ft8b.f90 +++ b/lib/ft8/ft8b.f90 @@ -1,12 +1,12 @@ subroutine ft8b(dd0,newdat,nQSOProgress,nfqso,nftx,ndepth,lapon,lapcqonly, & napwid,lsubtract,nagain,iaptype,mycall12,mygrid6,hiscall12,bcontest, & - sync0,f1,xdt,xbase,apsym,nharderrors,dmin,nbadcrc,ipass,iera,msg32,xsnr) + sync0,f1,xdt,xbase,apsym,nharderrors,dmin,nbadcrc,ipass,iera,msg37,xsnr) use crc use timer_module, only: timer include 'ft8_params.f90' parameter(NRECENT=10,NP2=2812) - character*32 msg32 + character*37 msg37 character message*22,msgsent*22 character*12 mycall12,hiscall12,recent_calls(NRECENT) character*6 mycall6,mygrid6,hiscall6,c1,c2 @@ -412,22 +412,24 @@ subroutine ft8b(dd0,newdat,nQSOProgress,nfqso,nftx,ndepth,lapon,lapcqonly, & i2=index(message(i1+1:),' ') + i1 c1=message(1:i1)//' ' c2=message(i1+1:i2)//' ' - if(ncrc10.eq.icrc10) msg32=c1//' RR73; '//c2//' <'// & - trim(hiscall6)//'> ' - if(ncrc10.ne.icrc10) msg32=c1//' RR73; '//c2//' <...> ' - write(msg32(30:32),1010) irpt + if(ncrc10.eq.icrc10) msg37=c1//' RR73; '//c2//' <'// & + trim(hiscall12)//'> ' + if(ncrc10.ne.icrc10) msg37=c1//' RR73; '//c2//' <...> ' + write(51,*) 'a ',msg37,'|' + write(msg37(35:37),1010) irpt 1010 format(i3.2) - if(msg32(30:30).ne.'-') msg32(30:30)='+' + if(msg37(30:30).ne.'-') msg37(35:35)='+' + write(51,*) 'b ',msg37,'|' - iz=len(trim(msg32)) - do iter=1,5 !Collapse multiple blanks into one - ib2=index(msg32(1:iz),' ') + iz=len(trim(msg37)) + do iter=1,10 !Collapse multiple blanks into one + ib2=index(msg37(1:iz),' ') if(ib2.lt.1) exit - msg32=msg32(1:ib2)//msg32(ib2+2:) + msg37=msg37(1:ib2)//msg37(ib2+2:) iz=iz-1 enddo else - msg32=message//' ' + msg37=message//' ' endif return diff --git a/lib/ft8/ft8sim.f90 b/lib/ft8/ft8sim.f90 index 1c76031e1..0daf22f54 100644 --- a/lib/ft8/ft8sim.f90 +++ b/lib/ft8/ft8sim.f90 @@ -26,6 +26,7 @@ program ft8sim print*,'Examples: ft8sim "K1ABC W9XYZ EN37" 1500.0 0.0 0.1 1.0 0 10 -18' print*,' ft8sim "K1ABC W9XYZ EN37" 10 0.0 0.1 1.0 25 10 -18' print*,' ft8sim "K1ABC W9XYZ EN37" 25 0.0 0.1 1.0 25 10 -18' + print*,' ft8sim "K1ABC RR73; W9XYZ -11" 300 0 0 0 25 1 -10' print*,'Make nfiles negative to invoke 72-bit contest mode.' go to 999 endif diff --git a/lib/ft8_decode.f90 b/lib/ft8_decode.f90 index 2a42e7f04..5fcb5982d 100644 --- a/lib/ft8_decode.f90 +++ b/lib/ft8_decode.f90 @@ -24,7 +24,7 @@ module ft8_decode integer, intent(in) :: snr real, intent(in) :: dt real, intent(in) :: freq - character(len=32), intent(in) :: decoded + character(len=37), intent(in) :: decoded integer, intent(in) :: nap real, intent(in) :: qual end subroutine ft8_decode_callback @@ -52,7 +52,7 @@ contains character*6 mygrid6,hisgrid6 integer*2 iwave(15*12000) integer apsym(KK) - character datetime*13,message*22,msg32*32 + character datetime*13,message*22,msg37*37 character*22 allmessages(100) integer allsnrs(100) save s,dd @@ -108,8 +108,8 @@ contains call ft8b(dd,newdat,nQSOProgress,nfqso,nftx,ndepth,lft8apon, & lapcqonly,napwid,lsubtract,nagain,iaptype,mycall12,mygrid6, & hiscall12,bcontest,sync,f1,xdt,xbase,apsym,nharderrors,dmin, & - nbadcrc,iappass,iera,msg32,xsnr) - message=msg32(1:22) !### + nbadcrc,iappass,iera,msg37,xsnr) + message=msg37(1:22) !### nsnr=nint(xsnr) xdt=xdt-0.5 hd=nharderrors+dmin @@ -134,7 +134,7 @@ contains ! flush(81) if(.not.ldupe .and. associated(this%callback)) then qual=1.0-(nharderrors+dmin)/60.0 ! scale qual to [0.0,1.0] - call this%callback(sync,nsnr,xdt,f1,msg32,iaptype,qual) + call this%callback(sync,nsnr,xdt,f1,msg37,iaptype,qual) endif endif enddo