diff --git a/gcom4.f90 b/gcom4.f90 index d9f0e70d8..d7ac35cc8 100644 --- a/gcom4.f90 +++ b/gcom4.f90 @@ -1,6 +1,6 @@ ! Variable Purpose Set in Thread !------------------------------------------------------------------------- -character addpfx*4 !Add-on prefix, as in ZA/PA2CHR GUI +character addpfx*8 !Add-on prefix, as in ZA/PA2CHR GUI integer*2 d2c !Rx data recovered from recorded file GUI integer jzc !Length of data available in d2c GUI character filename*24 !Name of wave file read from disk GUI diff --git a/getpfx1.f b/getpfx1.f index fb8646349..99bd3ba2d 100644 --- a/getpfx1.f +++ b/getpfx1.f @@ -1,15 +1,18 @@ subroutine getpfx1(callsign,k) character callsign*12 - character*4 c + character*8 c + character addpfx*8 + common/gcom4/addpfx !Can't 'include' *.f90 in *.f include 'pfx.f' iz=index(callsign,' ') - 1 + if(iz.lt.0) iz=12 islash=index(callsign(1:iz),'/') k=0 c=' ' - if(islash.gt.0 .and. (islash.le.4 .or. (islash.eq.5 .and. - + iz.ge.8))) then + if(islash.gt.0 .and. islash.le.(iz-4)) then +! Add-on prefix c=callsign(1:islash-1) callsign=callsign(islash+1:iz) do i=1,NZ @@ -18,8 +21,13 @@ go to 10 endif enddo + if(addpfx.eq.c) then + k=449 + go to 10 + endif - else if(islash.gt.5 .or. (islash.eq.5 .and. iz.eq.6)) then + else if(islash.eq.(iz-1)) then +! Add-on suffix c=callsign(islash+1:iz) callsign=callsign(1:islash-1) do i=1,NZ2 @@ -30,10 +38,7 @@ enddo endif - 10 continue - if(islash.ne.0 .and.k.eq.0) k=-1 -c print*,iz,islash,k,' ',c - + 10 if(islash.ne.0 .and.k.eq.0) k=-1 return end diff --git a/getpfx2.f b/getpfx2.f index 25a51a5d2..11d630159 100644 --- a/getpfx2.f +++ b/getpfx2.f @@ -2,7 +2,7 @@ character callsign*12 include 'pfx.f' - character addpfx*4 + character addpfx*8 common/gcom4/addpfx k=k0 @@ -15,7 +15,7 @@ callsign=callsign(1:iz)//'/'//sfx(k-400) else if(k.eq.449) then iz=index(addpfx,' ') - 1 - if(iz.lt.1) iz=4 + if(iz.lt.1) iz=8 callsign=addpfx(1:iz)//'/'//callsign endif diff --git a/unpackmsg.f b/unpackmsg.f index a96711285..81df6b783 100644 --- a/unpackmsg.f +++ b/unpackmsg.f @@ -73,6 +73,7 @@ msg(j:j)=c2(i:i) if(c2(i:i).eq.' ') go to 20 enddo + j=j+1 msg(j:j)=' ' 20 if(k.eq.0) then diff --git a/wsjt.py b/wsjt.py index af5d98472..24ddd7983 100644 --- a/wsjt.py +++ b/wsjt.py @@ -791,7 +791,7 @@ def prefixes(event=NONE): n=0 t1=t1+"\n" if options.addpfx.get().lstrip(): - t1=t1+"\nOptional prefix: "+(options.addpfx.get().lstrip()+' ')[:4] + t1=t1+"\nOptional prefix: "+(options.addpfx.get().lstrip()+' ')[:8] t2=t2+"\n"+t1 Label(pfx,text=t2,justify=LEFT).pack(padx=20) pfx.focus_set() @@ -1482,7 +1482,7 @@ def update(): Audio.gcom2.mycall=(options.MyCall.get()+' ')[:12] Audio.gcom2.hiscall=(ToRadio.get()+' ')[:12] Audio.gcom2.hisgrid=(HisGrid.get()+' ')[:6] - Audio.gcom4.addpfx=(options.addpfx.get().lstrip()+' ')[:4] + Audio.gcom4.addpfx=(options.addpfx.get().lstrip()+' ')[:8] Audio.gcom2.ntxreq=ntx.get() tx=(tx1,tx2,tx3,tx4,tx5,tx6) Audio.gcom2.txmsg=(tx[ntx.get()-1].get()+' ')[:28] @@ -2086,7 +2086,7 @@ Audio.gcom2.appdir=(appdir+' Audio.gcom2.ndepth=ndepth.get() Audio.ftn_init() GenStdMsgs() -Audio.gcom4.addpfx=(options.addpfx.get().lstrip()+' ')[:4] +Audio.gcom4.addpfx=(options.addpfx.get().lstrip()+' ')[:8] stopmon() first=1 if g.Win32: root.iconbitmap("wsjt.ico")