Merged master 8748

This commit is contained in:
Jordan Sherer
2018-08-05 11:33:30 -04:00
parent 8f8772f1bd
commit 62899069bf
1222 changed files with 70382 additions and 406763 deletions
@@ -0,0 +1,23 @@
subroutine packname(name,len,n1,n2)
character*9 name
real*8 dn
dn=0
do i=1,len
n=ichar(name(i:i))
if(n.ge.97 .and. n.le.122) n=n-32
dn=27*dn + n-64
enddo
if(len.lt.9) then
do i=len+1,9
dn=27*dn
enddo
endif
n2=mod(dn,32768.d0)
dn=dn/32768.d0
n1=dn
return
end subroutine packname
@@ -1,238 +0,0 @@
// This is a comment line, anything with // is ignored at process time.
= WSJT-X User Guide
Joseph H Taylor, Jr, K1JT
:revnumber: {VERSION}
// For web-pages, adding :badges: is ok, but is a security issue for
// package building .deb, .rpm, etc as it exposes the IP address and the images
// are non-free, so can't be included as part of the Debian package.
// :badges:
:docinfo1:
:imagesdir: {docdir}/images
:icons: font
:numbered:
:keywords: amateur radio weak signal communication K1JT WSJT JT65 JT9
:description: Software for Amateur Radio Weak-Signal Communication
:prog: WSJT-X
// use global link file
include::../../common/links.adoc[]
// These [[xxxx]] labels are HTML anchors, and can be used to
// navigate though the document easily: <<INTRO,See Introduction>> will
// place a hyper-link in your text to take you too the anchored section.
// All major sections or points of interest should have one.
// == is level (2), section 1.0, === would mean section 1.1, === would
// be section 1.1.1. This method is used throughout the document.
[[INTRO]]
== Introduction
include::introduction.adoc[]
[[NEW_FEATURES]]
include::new_features.adoc[]
[[SYSREQ]]
== System Requirements
include::system-requirements.adoc[]
[[INSTALL]]
== Installation
Installation packages for released versions on Windows, Linux, and OS
X are found on the {homepage}. Click on the _WSJT-X_ link at the
left margin and select the appropriate package for your operating
system.
[[INSTALL_WIN]]
=== Windows
include::install-windows.adoc[]
[[INSTALL_LINUX]]
=== Linux
include::install-linux.adoc[]
[[INSTALL_OSX]]
=== Macintosh OS X
include::install-mac.adoc[]
////
[[SRC_CODE]]
=== Source Code
include::install-from-source.adoc[]
////
[[CONFIG]]
== Settings
Select *Settings* from the *File* menu or by typing *F2*. (On
Macintosh select *Preferences* from the _WSJT-X_ menu, or use the
keyboard shortcut *Cmd+,*). The following sections describe setup
options available on each of seven tabs selectable near the top of the
window.
[[GENERAL]]
=== General
include::settings-general.adoc[]
[[RADIO]]
=== Radio
include::settings-radio.adoc[]
[[AUDIO]]
=== Audio
include::settings-audio.adoc[]
[[TXMACROS]]
=== Tx Macros
include::settings-txmacros.adoc[]
[[REPORTING]]
=== Reporting
include::settings-reporting.adoc[]
[[BAND_SETTINGS]]
=== Frequencies
include::settings-frequencies.adoc[]
[[COLORS]]
=== Colors
include::settings-colors.adoc[]
[[ADVANCED]]
=== Advanced
include::settings-advanced.adoc[]
[[TRANSCEIVER]]
== Transceiver Setup
include::transceiver-setup.adoc[]
[[TUTORIAL]]
== Basic Operating Tutorial
<<TUT_MAIN,Sections 6.1>> through <<TUT_EX2,6.4>> introduce basic user
controls and program behavior of _WSJT-X_. We suggest that new users
should go through the full HF-oriented tutorial, preferably while at
your radio. Subsequent sections cover additional details on
<<MAKE_QSOS,Making QSOs>>, <<WSPR,WSPR mode>> and <<VHF_AND_UP,VHF+
Features>>.
[[TUT_MAIN]]
=== Main Window Settings
include::tutorial-main-window.adoc[]
[[TUT_WIDE_GRAPH]]
=== Wide Graph Settings
include::tutorial-wide-graph-settings.adoc[]
[[TUT_EX1]]
=== JT9
include::tutorial-example1.adoc[]
[[TUT_EX2]]
=== JT9+JT65
include::tutorial-example2.adoc[]
[[MAKE_QSOS]]
== Making QSOs
include::make-qso.adoc[]
[[VHF_AND_UP]]
== VHF+ Features
include::vhf-features.adoc[]
[[WSPR]]
== WSPR Mode
include::wspr.adoc[]
[[COMMAND_REF]]
== On-Screen Controls
[[MENUS]]
=== Menus
include::controls-functions-menus.adoc[]
[[CONTROLS_MAIN]]
=== Button Row
include::controls-functions-main-window.adoc[]
[[CONTROLS_LEFT]]
=== Left
include::controls-functions-left.adoc[]
[[CONTROLS_CENTER]]
=== Center
include::controls-functions-center.adoc[]
[[CONTROLS_MSGS]]
=== Tx Messages
include::controls-functions-messages.adoc[]
[[STATUS_BAR]]
=== Status Bar
include::controls-functions-status-bar.adoc[]
[[CONTROLS_WIDE]]
=== Wide Graph
include::controls-functions-wide-graph.adoc[]
[[LOGGING]]
== Logging
include::logging.adoc[]
[[ODDS_AND_ENDS]]
== Odds and Ends
include::odds_and_ends.adoc[]
[[COOP_PGMS]]
== Cooperating Programs
include::cooperating-programs.adoc[]
[[PLATFORM]]
== Platform Dependencies
include::platform-dependencies.adoc[]
[[FAQ]]
== Frequently Asked Questions
include::faq.adoc[]
[[PROTOCOLS]]
== Protocol Specifications
include::protocols.adoc[]
[[ASTRODATA]]
== Astronomical Data
include::astro_data.adoc[]
[[UTIL]]
== Utility Programs
include::utilities.adoc[]
////
[[TXRX]]
== Implementation Details
include::implementation.adoc[]
[[TROUBLE_SHOOTING]]
== Troubleshooting
To be added (?) ...
////
[[SUPPORT]]
== Support
include::support.adoc[]
[[ACK]]
== Acknowledgements
include::acknowledgements.adoc[]
[[LICENSE]]
== License
include::../../common/license.adoc[]
ifeval::["{backend}" != "html5"]
[index]
== Index
endif::[]
@@ -0,0 +1,92 @@
subroutine fox_tx(maxtimes,fail,called,gcalled,hm,fm,ntimes,log,logit)
! Determine fm, the next message for Fox to transmit in this slot
character*32 fm
character*22 hm
character*4 g4,MyGrid,gcalled,gx,gy
character*6 MyCall,called,cx,cy
character*16 log
logical isgrid,logit
data MyCall/'KH1DX'/,MyGrid/'AJ10'/
save
isgrid(g4)=g4(1:1).ge.'A' .and. g4(1:1).le.'R' .and. g4(2:2).ge.'A' .and. &
g4(2:2).le.'R' .and. g4(3:3).ge.'0' .and. g4(3:3).le.'9' .and. &
g4(4:4).ge.'0' .and. g4(4:4).le.'9' .and. g4(1:4).ne.'RR73'
logit=.false.
n=len(trim(hm))
g4=""
if(n.gt.8) g4=hm(n-3:n)
call random_number(r)
if(r.lt.fail .and. .not.isgrid(g4)) hm="" !Fox failed to copy
i2=len(trim(hm))
if(i2.gt.10) then
i1=index(hm,' ')
i3=index(hm(i1+1:),' ') + i1
cx=hm(i1+1:i3)
gx=hm(i2-3:i2)
i4=index(hm,MyCall)
! Check for a new caller
if(i4.eq.1 .and. isgrid(gx)) then
call random_number(r)
isent=nint(-20+40*r)
write(fm,1002) cx,MyCall,isent
1002 format(a6,1x,a6,i4.2)
if(fm(15:15).eq.' ') fm(15:15)='+'
called=cx
gcalled=gx
endif
log=''
! Check for message with R+rpt
if(i4.eq.1 .and. cx.eq.called .and. &
(index(hm,'R+').ge.8 .or. index(hm,'R-').ge.8)) then
write(log,1006) called,gcalled,isent !Format a log entry
1006 format(a6,2x,a4,i4.2)
if(log(14:14).eq.' ') log(14:14)='+'
logit=.true.
call dxped_fifo(cy,gy,isnry)
! If FIFO is empty we should call CQ in this slot
ntimes=1
write(fm,1008) cx,cy,isnry
1008 format(a6,' RR73; ',a6,1x,'<KH1DX>',i4.2)
if(fm(29:29).eq.' ') fm(29:29)='+'
called=cy
gcalled=gy
endif
endif
if(hm.eq.'') then
if(fm(1:3).ne.'CQ ') then
! if(ntimes.lt.maxtimes) then
ntimes=ntimes+1
! else
! ntimes=1
! If FIFO is empty we should call CQ in this slot
! call dxped_fifo(cy,gy,isnry)
! call random_number(r)
! isnr=nint(-20+40*r)
! write(fm,1010) cy,gy,isnr
write(fm,1010) called,MyCall,isent
1010 format(a6,1x,a6,i4.2)
if(fm(15:15).eq.' ') fm(15:15)='+'
! endif
endif
endif
! Collapse multiple blanks in message
iz=len(trim(fm))
do iter=1,5
ib2=index(fm(1:iz),' ')
if(ib2.lt.1) exit
fm=fm(1:ib2)//fm(ib2+2:)
iz=iz-1
enddo
! Generate waveform for fm
return
end subroutine fox_tx
@@ -1,37 +0,0 @@
<table cellspacing=1>
<tr><td><b>F1 </b></td><td>Online User's Guide</td></tr>
<tr><td><b>Shift+F1 </b></td><td>Copyright Notice</td></tr>
<tr><td><b>Ctrl+F1 </b></td><td>About WSJT-X</td></tr>
<tr><td><b>F2 </b></td><td>Open settings window</td></tr>
<tr><td><b>F3 </b></td><td>Display keyboard shortcuts</td></tr>
<tr><td><b>F4 </b></td><td>Clear DX Call, DX Grid, Tx messages 1-4</td></tr>
<tr><td><b>Alt+F4 </b></td><td>Exit program</td></tr>
<tr><td><b>F5 </b></td><td>Display special mouse commands</td></tr>
<tr><td><b>F6 </b></td><td>Open next file in directory</td></tr>
<tr><td><b>Shift+F6 </b></td><td>Decode all remaining files in directrory</td></tr>
<tr><td><b>F7 </b></td><td>Display Message Averaging window</td></tr>
<tr><td><b>F11 </b></td><td>Move Rx frequency down 1 Hz</td></tr>
<tr><td><b>Ctrl+F11 </b></td><td>Move Rx and Tx frequencies down 1 Hz</td></tr>
<tr><td><b>Shift+F11 </b></td><td>Move Tx frequency down 60 Hz</td></tr>
<tr><td><b>F12 </b></td><td>Move Rx frequency up 1 Hz</td></tr>
<tr><td><b>Ctrl+F12 </b></td><td>Move Rx and Tx frequencies up 1 Hz</td></tr>
<tr><td><b>Shift+F12 </b></td><td>Move Tx frequency up 60 Hz</td></tr>
<tr><td><b>Alt+1-6 </b></td><td>Set now transmission to this number on Tab 1</td></tr>
<tr><td><b>Ctl+1-6 </b></td><td>Set next transmission to this number on Tab 1</td></tr>
<tr><td><b>Alt+D </b></td><td>Decode again at QSO frequency</td></tr>
<tr><td><b>Shift+D </b></td><td>Full decode (both windows)</td></tr>
<tr><td><b>Ctrl+E </b></td><td>Turn on TX even/1st</td></tr>
<tr><td><b>Shift+E </b></td><td>Turn off TX even/1st</td></tr>
<tr><td><b>Alt+E </b></td><td>Erase</td></tr>
<tr><td><b>Ctrl+F </b></td><td>Edit the free text message box</td></tr>
<tr><td><b>Alt+G </b></td><td>Generate standard messages</td></tr>
<tr><td><b>Alt+H </b></td><td>Halt Tx</td></tr>
<tr><td><b>Ctrl+L </b></td><td>Lookup callsign in database, generate standard messages</td></tr>
<tr><td><b>Alt+M </b></td><td>Monitor</td></tr>
<tr><td><b>Alt+N </b></td><td>Enable Tx</td></tr>
<tr><td><b>Ctrl+O </b></td><td>Open a .wav file</td></tr>
<tr><td><b>Alt+Q </b></td><td>Log QSO</td></tr>
<tr><td><b>Alt+S </b></td><td>Stop monitoring</td></tr>
<tr><td><b>Alt+T </b></td><td>Tune</td></tr>
<tr><td><b>Alt+V </b></td><td>Save the most recently completed *.wav file</td></tr>
</table>