mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-11-03 13:30:52 -05:00 
			
		
		
		
	Make Contest Mode messages properly readable by anyone in the sender's
hemisphere. Add Contest Mode info to User Guide. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7395 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
		
							parent
							
								
									f4b764ee85
								
							
						
					
					
						commit
						4cd038f342
					
				@ -274,6 +274,15 @@ with constant envelope, equivalent to a Minimum Shift Keying (MSK)
 | 
				
			|||||||
waveform.  Frame duration is 72 ms, so the effective character
 | 
					waveform.  Frame duration is 72 ms, so the effective character
 | 
				
			||||||
transmission rate for standard messages is up to 250 cps.
 | 
					transmission rate for standard messages is up to 250 cps.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Contest Mode in MSK144 conveys an additional acknowledgment bit (the
 | 
				
			||||||
 | 
					"`R`" in a message of the form `W9XYZ K1ABC R FN42`) by using the fact
 | 
				
			||||||
 | 
					that meteor scatter and other propagation modes usable with MSK144 are
 | 
				
			||||||
 | 
					generally effective only out to distances of order 2500 km.  To convey
 | 
				
			||||||
 | 
					the message fragment `R FN42`, WSJT-X encodes the locator as that of
 | 
				
			||||||
 | 
					its antipodes.  The receiving program recognizes a locator with
 | 
				
			||||||
 | 
					distance greater than 10,000 km, does the reverse transformation, and
 | 
				
			||||||
 | 
					inserts the implied "`R`".
 | 
				
			||||||
 | 
					
 | 
				
			||||||
MSK144 also supports short-form messages that can be used after QSO
 | 
					MSK144 also supports short-form messages that can be used after QSO
 | 
				
			||||||
partners have exchanged both callsigns.  Short messages consist of 4
 | 
					partners have exchanged both callsigns.  Short messages consist of 4
 | 
				
			||||||
bits encoding a signal report, R+report, RRR, or 73, together with a
 | 
					bits encoding a signal report, R+report, RRR, or 73, together with a
 | 
				
			||||||
 | 
				
			|||||||
@ -271,6 +271,21 @@ messages at 50 or 70 MHz.  At these frequencies, most pings are long
 | 
				
			|||||||
enough to support standard messages -- which have the advantage of
 | 
					enough to support standard messages -- which have the advantage of
 | 
				
			||||||
being readable by anyone listening in.
 | 
					being readable by anyone listening in.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- A special *Contest Mode* for MSK144 can be activated by checking a
 | 
				
			||||||
 | 
					box on the *Settings | Advanced* tab.  This mode is configured
 | 
				
			||||||
 | 
					especially for VHF contests in which four-character grid locators are
 | 
				
			||||||
 | 
					the required exchange.  When *Contest Mode* is active, the standard QSO
 | 
				
			||||||
 | 
					sequence looks like this:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 CQ K1ABC FN42
 | 
				
			||||||
 | 
					                      K1ABC W9XYZ EN37
 | 
				
			||||||
 | 
					 W9XYZ K1ABC R FN42
 | 
				
			||||||
 | 
					                      K1ABC W9XYZ RRR
 | 
				
			||||||
 | 
					 W9XYZ K1ABC 73
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In contest circumstances K1ABC might choose to call CQ again rather
 | 
				
			||||||
 | 
					than sending 73 for his third transmission.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
=== Echo Mode
 | 
					=== Echo Mode
 | 
				
			||||||
 | 
					
 | 
				
			||||||
*Echo* mode allows you to make sensitive measurements of your own
 | 
					*Echo* mode allows you to make sensitive measurements of your own
 | 
				
			||||||
 | 
				
			|||||||
@ -5,25 +5,21 @@ subroutine fix_contest_msg(mycall,mygrid,hiscall,msg)
 | 
				
			|||||||
! of grid1.
 | 
					! of grid1.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  character*6 mycall,mygrid,hiscall
 | 
					  character*6 mycall,mygrid,hiscall
 | 
				
			||||||
  character*22 msg,t
 | 
					  character*22 msg
 | 
				
			||||||
  character*6 g1,g2
 | 
					  character*6 g1,g2
 | 
				
			||||||
  logical isgrid
 | 
					  logical isgrid
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  t=trim(mycall)//' '//trim(hiscall)
 | 
					  n=len(trim(msg))
 | 
				
			||||||
  i0=index(msg,trim(t))
 | 
					  g1=msg(n-3:n)//'  '
 | 
				
			||||||
  if(i0.eq.1) then
 | 
					  if(isgrid(g1)) then
 | 
				
			||||||
     i1=len(trim(t))+2
 | 
					     call azdist(mygrid,g1,0.d0,nAz,nEl,nDmiles,nDkm,nHotAz,nHotABetter)
 | 
				
			||||||
     g1=msg(i1:i1+3)
 | 
					     if(ndkm.gt.10000) then
 | 
				
			||||||
     if(isgrid(g1)) then
 | 
					        call grid2deg(g1,dlong,dlat)
 | 
				
			||||||
        call azdist(mygrid,g1,0.d0,nAz,nEl,nDmiles,nDkm,nHotAz,nHotABetter)
 | 
					        dlong=dlong+180.0
 | 
				
			||||||
        if(ndkm.gt.10000) then
 | 
					        if(dlong.gt.180.0) dlong=dlong-360.0
 | 
				
			||||||
           call grid2deg(g1,dlong,dlat)
 | 
					        dlat=-dlat
 | 
				
			||||||
           dlong=dlong+180.0
 | 
					        call deg2grid(dlong,dlat,g2)
 | 
				
			||||||
           if(dlong.gt.180.0) dlong=dlong-360.0
 | 
					        msg=msg(1:n-4)//'R '//g2(1:4)
 | 
				
			||||||
           dlat=-dlat
 | 
					 | 
				
			||||||
           call deg2grid(dlong,dlat,g2)
 | 
					 | 
				
			||||||
           msg=msg(1:i1-1)//'R '//g2(1:4)
 | 
					 | 
				
			||||||
        endif
 | 
					 | 
				
			||||||
     endif
 | 
					     endif
 | 
				
			||||||
  endif
 | 
					  endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user