Commit Graph

301 Commits

Author SHA1 Message Date
Joe Taylor
9a895361cf Add a utility "allsim" to generate a wave file containing all WSJT-X slow modes as well as an unmodulated carrier and 25 WPM CW signal.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7579 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2017-02-24 18:20:56 +00:00
Bill Somerville
cecc098924 First attempt at a UI phase compensation tool for MSK144
This builds on the static phase compensation in the MSK144 decoder and
the phase  analysis and  polynomial fitting  capabilities also  in teh
MSK144 decoder,  by allowing  captured data to  be selected  for phase
equalization from the WSJT-X UI.

Reads  captured phase  compensation  curve  estimate files  containing
fitted  polynomial coefficients  and measured  phase data  from MSK144
receptions. Intent  is to select a  compensation curve that is  from a
known transmitter like  an SDR which have good  phase linearity. Phase
plots and compensation polynomials may be viewed and compared with the
current compensation polynomial. A  suitable polynomial can be applied
to be use in all further decoding of MSK144 signals.

Plots of  the currently  selected polynomial  and its  modified higher
order terms  polynomial which is  actually used in  equalization (this
plot may  be dropped - it  is just for  kicks at the moment).   When a
captured phase analysis file is loaded plots of the measured phase and
the proposed best fit polynomial are shown.

Basic  maintenance  is also  included  allowing  clearing and  loading
captured  plots and  an option  to revert  to a  flat no  equalization
curve.

More to come on this as  amplitude equalization is also possible, this
will probably  be similar, maybe even  plotted on the same  graph with
dual  axes  for phase  and  amplitude.   Amplitude correction  from  a
measured  reference   spectrum  could  be  viewed   and  selected  for
equalization for all modes. TBC...

This   change    also   introduces    the   QCustomPlot    3rd   party
widget. Currently this  is statically linked from a  qcp library built
by the WSJT-X CMake script. This will probably be migrated to a shared
object (DLL) build as a CMake external project, once some CMake script
re-factoring  has been  completed,  which  is more  in  line with  the
QCustomPlot author's  intentions. This  will allow efficient  reuse in
other tools shipped with WSJT-X.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7570 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2017-02-21 02:13:13 +00:00
Steven Franke
1135c33f33 Remove an obsolete file.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7503 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2017-01-15 20:43:11 +00:00
Joe Taylor
6016f03523 Add the "FMT" tools; remove unnecessary references to calibration station callsigns.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7467 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2017-01-09 15:55:42 +00:00
Joe Taylor
6d3ca346e0 Further progress toward a usable "FreqCal" (Frequency Calibration) mode.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7448 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2017-01-04 19:07:35 +00:00
Steven Franke
077ac1d77b Progress toward SWL capability. Not finished and not tested.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7434 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-12-31 02:05:51 +00:00
Steven Franke
2c2d31ea8d Remove some dead code.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7432 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-12-30 20:26:59 +00:00
Steven Franke
02a4cb95a4 Add an option on advanced time to enable MSK144 Rx filter equalizer. Other changes necessary to accommodate coexistence of static (Rx Filter) and dynamic (QSO partner-dependent) phase corrections.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7421 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-12-22 17:21:23 +00:00
Joe Taylor
a92f9c3cc1 Add code to make wsprcode functional. (NB: most of these routines are otherwise
obsolete; they come from WSPR 2.0, etc.)


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7417 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-12-21 18:50:18 +00:00
Joe Taylor
33af88a41b Complete the implementation of MSK144 contest mode. Needs testing!
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7393 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-12-17 21:18:47 +00:00
Joe Taylor
d3ee8af01b Many adjustments to QRA64 decoder. Best performance yet on the 114 benchmark files.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7381 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-12-15 18:42:33 +00:00
Joe Taylor
f9a078dd8b Revert to displaying Nico's return code with QRA64 messages. Suppress a few false decodes that cannot be correct messages.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7342 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-11-28 15:11:00 +00:00
Joe Taylor
8390bcd798 Add code for QRA64 with fast fading.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7295 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-11-06 00:53:47 +00:00
Joe Taylor
2fd5fb4bb7 Install msk144code[.exe]. Many additions and correctiions to User Guide.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7290 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-11-04 18:15:14 +00:00
Joe Taylor
ab400f7a9f No bounds-check for Release build; increase Windows stack size, again; some fixes for ISCAT mode.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7186 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-10-16 17:36:00 +00:00
Joe Taylor
74764ca12c Add a simple MSK144code program.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7163 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-10-07 19:52:55 +00:00
Steven Franke
d9e4b7eede More progress on MSK40 decoder. THIS REVISION IS NOT INTENDED FOR USE ON THE AIR.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7145 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-10-03 20:18:53 +00:00
Bill Somerville
c7c50830bf Fix a crash which appears to be a stack size limitation
This issue was probably triggered  by OpenMP forcing some large arrays
onto the  stack where  Fortran might normally  make them  static.  The
change  that  seemed to  make  the  difference  was putting  cdat2  in
msk144_freq_search into  static storage. I  am not convinced  that the
problem is really solved but it works for now.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7130 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-30 23:32:01 +00:00
Joe Taylor
5ecd85570d Multi-threaded real-time MSK144 decoder. Needs further testing!
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7126 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-30 15:56:55 +00:00
Bill Somerville
23aead0b8d Fix broken non-Windows builds.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7124 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-30 14:47:25 +00:00
Bill Somerville
13be9cb566 Enable OpenMP for everything except on Macs
Also increase  Windows stack  size from  1Mbyte to  8Mbyte due  to the
impact  of Fortran  arrays  not being  automatically  moved to  static
storage above a certain size. This needs attention by setting the SAVE
attribute on large arrays that do not  need to be on the stack i.e. do
no need to be duplicated across OpenMP thread teams.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7122 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-29 22:45:58 +00:00
Steven Franke
dd6cb2350a Add new routines associated with msk144 real-time decoder.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7106 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-22 00:04:43 +00:00
Steven Franke
b04c3ab79c Add new routines to CMakeLists.txt.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7102 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-20 20:24:03 +00:00
Joe Taylor
3b97ae7417 Implement real-time decoding in MSK144 mode, for testing.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7097 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-20 16:25:25 +00:00
Steven Franke
1c5a7e0fbc Enhance click-to-decode performance in MSK144.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7082 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-14 22:18:58 +00:00
Joe Taylor
13ffbb20eb Remove JTMSK mode and all related routines. Beware of possible unintended side effects!
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7079 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-13 17:52:45 +00:00
Bill Somerville
d8a2c1239c Make the splash screen less annoying with a permanent disable check box
The  change also  includes  a new  MultiSettings  feature that  allows
settings keys common to all configurations.  The splash screen disable
is the first of those to be used.

The MultiSettings  class has  been made  safer to  use by  ensuring it
saves  and re-enables  the current  QSettings group  when doing  multi
settings actions. This allows  access to common, across configuration,
items  while  within a  normal  settings  group without  breaking  the
MultiSettings internal implementation.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7073 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-11 01:09:28 +00:00
Steven Franke
ca19e977c0 Add early termination code to the msk144 long-message decoder. Remove references to Radford Neal's ldpc code, which served us well but is no longer needed.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7051 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-01 21:50:52 +00:00
Steven Franke
89dec1abfa Many tweaks to msk144 decoders. WSJT-X now calls the standalone fortran decoders.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7047 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-01 00:42:32 +00:00
Steven Franke
87adf8a9e6 Update CMakeLists.txt.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7036 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-08-28 03:53:18 +00:00
Steven Franke
f803c5cf6f Add new MSK144 encoding routines and make the necessary accommodations.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7022 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-08-11 19:25:20 +00:00
Bill Somerville
73a76b5740 Fix up RPM package dependencies
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7019 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-08-07 11:43:21 +00:00
Bill Somerville
2607414fd7 Fix regression introduced backing out the wsjtx_udp shared library
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7014 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-08-07 00:01:36 +00:00
Bill Somerville
afed56d008 Proper splash screen and release notes help menu link
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7007 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-08-06 13:52:14 +00:00
Bill Somerville
3832683180 Back out udp library installation as it is not yet ready for release
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7006 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-08-06 13:52:06 +00:00
Steven Franke
069c934c47 Install the encode executable.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6988 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-08-03 14:43:09 +00:00
Steven Franke
3759f08385 Compile Radford Neal encode routine.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6987 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-08-03 14:27:19 +00:00
Steven Franke
5aa3657fc6 Some changes necessary for msk40.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6967 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-29 21:13:43 +00:00
Steven Franke
de1d5bf1b6 Add msk32d_ldpc to CMakeLists.txt.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6960 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-28 00:12:04 +00:00
Joe Taylor
bcef802525 Simple standalone program msk32d to decode MSK144 short messages. It must be built using the genmsk32.f90 from r6951 (Golay code, 8-bit sync).
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6955 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-27 16:37:32 +00:00
Steven Franke
217257df58 Add ldpc32_table.c to CMakeLists.txt.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6953 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-27 11:57:11 +00:00
Joe Taylor
38113068cd New sync scheme for QRA64; also idf0 and idf1 dithering.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6948 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-26 16:04:57 +00:00
Joe Taylor
95ab66807d MOving toward use of sync64(). Not yet there!
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6939 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-22 19:52:20 +00:00
Bill Somerville
c586204d75 Add proper Qt validation for callsigns and grids
Two      new     validator      classes     CallsignValidator      and
MaidenheadLocatorValidator   are   introduced    and   used   in   the
Configuration and MainWindow implementations.

MaidenheadLocatorValidator  supports  different  lengths  and  minimum
required  lengths  with  a  default of  subsquare  with  square  being
required.

The  message_aggregator  application has  been  enhanced  to show  the
current DX call and DX grid as shown in the WSJT-X main window.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6903 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-10 22:20:30 +00:00
Steven Franke
268208a185 Changes to existing files needed to accommodate short (16ms) msk messages.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6869 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-05 21:06:04 +00:00
Bill Somerville
3f1ea9d10c Make message boxes more platform independent with a wrapper
Instead  of  using the  Qt  QMessageBox  class  directly a  new  class
MessageBox  (MessageBox.hpp)  has been  added  to  deal with  platform
independence issues like the title not being shown on Mac OS X.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6861 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-03 20:31:19 +00:00
Joe Taylor
3016ccee01 Many renames: QRA65 --> QRA64, QRA02 --> QRA64.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6848 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-02 12:15:41 +00:00
Joe Taylor
0384d312a6 Temporary mode QRA02 is now basically functional (though buggy).
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6833 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-30 20:38:36 +00:00
Joe Taylor
0943567625 Add Tx capability for QRA01.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6811 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-28 14:56:02 +00:00
Joe Taylor
9c19ff3eea Making progress on what will become QRA65 mode.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6794 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-22 20:26:41 +00:00
Bill Somerville
132596242f Add the WSJT-X logo to the about dialog and make it clickable
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6793 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-22 15:19:24 +00:00
Bill Somerville
431e7ad719 Make about box licence link clickable and add GPLv3 official logo
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6787 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-21 12:50:05 +00:00
Steven Franke
fa55dadb91 Add extractmessage144.f90
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6779 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-16 23:19:56 +00:00
Steven Franke
fea1f88dce Remove obsolete msk144 routines.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6773 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-12 15:56:41 +00:00
Steven Franke
dbe32f87a2 add detectmsk144
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6770 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-12 02:45:33 +00:00
Bill Somerville
b9b25189b7 Build of wsjtx needs FFTW3 includes
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6756 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-10 16:01:07 +00:00
Steven Franke
7e2f238ab2 Add msk144dt.f90 to CMakeLists.txt
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6744 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-09 02:08:14 +00:00
Joe Taylor
dae04d7a39 For now (and maybe longer?), install the LDPC code-definition files in the .../bin/data directory.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6739 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-07 14:54:53 +00:00
Steven Franke
1f37a6676f msk144 simulator is now called msk144sim.f90, command line msk144 decoder is msk144d.f90.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6716 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-01 23:46:36 +00:00
Steven Franke
8b5c91f46c Fix CmakeLists.txt.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6707 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-05-27 01:50:18 +00:00
Steven Franke
7bd8be0107 Added JTMSKsim to CMakeLists.txt to facilitate development efforts.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6706 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-05-27 00:59:00 +00:00
Bill Somerville
1954982e2c Fix DLL imports in message_aggregator build
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6700 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-05-25 15:34:12 +00:00
Bill Somerville
d7e7d1d5c7 Export the correct compile definitions for the static wsjtx_udp library
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6697 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-05-24 16:05:13 +00:00
Bill Somerville
1f6e882800 Discovering how exported library building works with CMake
Now exporting a shared and static version of the wsjtx_udp library.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6695 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-05-24 15:19:15 +00:00
Bill Somerville
eaa1dd4ad6 Add .desktop file for message_aggregator
Fix upstream package dependencies for Debian package generation.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6693 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-05-24 11:52:14 +00:00
Bill Somerville
9d958ad2e1 No need to export new wsjtx_udp library from build tree
If needed then requires a newer CMake minimum version.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6692 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-05-24 10:27:56 +00:00
Bill Somerville
3ec6d211c8 Extend UDP status message - added Rx/Tx DF, call and grid information
Build now creates and installs a  UDP library that contains the server
side  of the  UDP messaging  facility.  This  library is  used by  the
udp_daemon and message_aggregator reference  examples. The new library
is  currently a  static archive  but  can also  be built  as a  shared
library.  The library  allows third  party Qt  applications to  easily
access UDP messages from WSJT-X.

Refactored  the  message_aggregator  reference example  to  split  out
classes into  separate translation  units. Added new  functionality to
exercise  the  new  UDP  status fields,  highlight  own  call,  CQ/QRZ
messages and decodes near Rx DF.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6691 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-05-24 10:08:35 +00:00
Joe Taylor
4bcc4f35a1 Much improved detection of sync in JT4 decoder.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6686 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-05-19 19:19:47 +00:00
Joe Taylor
8cef34fe11 Starting to implement decoding of JT65 shorthand messages. Needs testing!
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6665 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-05-03 20:30:49 +00:00
Steven Franke
f5af6525f5 Changes needed to build ldpc library and ldpcsim.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6639 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-24 01:19:40 +00:00
Bill Somerville
4cebdddfe5 Add multiple configurations navigation and management
Multiple configurations  are accessed and  maintained from a  new main
window menu bar  pop up menu "Configurations". The  prior settings are
the  "Default"  entry. New  configurations  may  be added  by  cloning
existing ones.  Maintenance  and navigation is via sub  menus for each
configuration.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6623 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-17 23:39:12 +00:00
Joe Taylor
23298c1743 Rename refspec() to refspectrum().
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6601 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-08 15:55:28 +00:00
Joe Taylor
88e47a5941 Working on implementing reference spectra.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6600 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-08 15:23:32 +00:00
Bill Somerville
d864e7f4cb Allow split operating for "None" rig, use for testing only not for release
Setting  the  CMake  option WSJT_RIG_NONE_CAN_SPLIT=ON  will  buold  a
version taht allows split operating with  the dummy rig. This must not
be shipped since it will generate incorrect Tx tones.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6589 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-06 17:11:49 +00:00
Bill Somerville
b9df9eff69 Adjust CMake Hamlib finder for latest version
Hamlib now used  libusb-1.0 and since that is available  on Windows we
can now build with it across platforms. This change allows for that if
the custom USB backends are configured in Hamlib.

As it looks  like Hamlib v3.1 will be suitable  for WSJT-X this change
also puts  in place what  is needed to  link to a  Hamlib SO/DLL/DYLIB
when required. This is switched on  by not defining the CMake variable
hamlib_STATIC. This could  be used on Windows and Mac  but Linux still
must have  Hamlib statically linked  due to repository  versions being
too old.

For  now  Hamlib  remains  statically linked  for  consistency  across
platforms.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6581 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-06 17:10:46 +00:00
Joe Taylor
e212367221 First decodes of wide/slow JT9 submodes from within wsjtx.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6577 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-05 14:17:34 +00:00
Steven Franke
0574251ff0 Rename wsprd_exp.c to wsprd.c and eliminate wsprd_exp.c.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6572 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-03 19:09:07 +00:00
Bill Somerville
71db4c2051 Use CMake generator expressions to add OpenMP flags more accurately
The latest Clang shipped with Apple Xcode errors on unrecognized flags
that gcc/g++ accept. By using generator expressions the OpenMP flag
is now only applied to Fortran compiles when needed on Mac. Note that
this is necessary since the Apple Clang does not support OpenMP so we
have to hack the link to support OpenMP in jt9 by mixing gfortran OpenMP
object code with Clang/Clang++ object code.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6566 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-01 10:57:05 +00:00
Joe Taylor
063bb166f1 Go back to multiple calls to smo121, rather than smolorentz.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6541 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-03-19 12:41:53 +00:00
Joe Taylor
767a9452e6 1. Use Lorentzian profile for smoothing (but not yet for message averaging).
2. Add ability to set ndepth and do message averaging ti fer65.
3. Correct SNR values for measured Doppler width.
4. Comment out the "write(62..." diagnostics.


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6537 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-03-18 20:17:17 +00:00
Joe Taylor
533bb81220 Various changes to JT65 decoding, all potentially temporary.
1. Measure Doppler width by fitting a (modified) Lorentzian.
2. Don't call "slope" in sync65().
3. New definition of "sync1".
4. Get snr from sync1.


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6536 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-03-17 18:52:06 +00:00
Joe Taylor
04e765c605 Replace all "common/test00?" with "use jt65_mod", etc.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6515 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-03-10 14:25:22 +00:00
Joe Taylor
42d32c7fc0 Progress toward integrating JTMSK short messages. Not finished, and won't work!
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6417 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-21 20:03:53 +00:00
Joe Taylor
ee1d8c885a Add golay24_table.c to CMakeLists.txt.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6415 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-21 18:09:23 +00:00
Bill Somerville
a3c1c768ef Fix some compiler warnings and error
Clang++ detected some warnings that g++ did not.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6409 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-20 20:32:30 +00:00
Joe Taylor
1d6737ee8e Generate experimental shorthand messages in JTMSK mode. No decoder yet.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6400 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-15 20:45:37 +00:00
Bill Somerville
9b9351b1af Fix regression with UG location from r6341
Missing '/'  character on directory  URL. QUrl treats URLs  not ending
with  a  '/'  character  as  file  URLS  and  QUrl::resolved()  strips
filenames.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6393 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-13 14:45:40 +00:00
Bill Somerville
9301347f8a Better naming WavFile ->BWFFile
Broadcast  Wave  Format is  a  backwards  compatible superset  of  teh
Microsoft WAV file  format that has been implemented in  teh hope that
Windows File Explorer might show the WAV file metadta, as it turns out
that is not the case but as it's done anyway.

It appears to be  impossible to write a WAV file  such that MS Windows
File Explorer shows any metadata so  unless we adopt FLAC format audio
files we will have to show metadata with our own software :(

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6384 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-11 15:00:53 +00:00
Joe Taylor
e61e8c5d81 Renamd exp_decode65.f90 to hint65.f90.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6367 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-08 21:05:00 +00:00
Bill Somerville
0ba0977aa2 User Guide localization
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6341 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-02 22:30:12 +00:00
Bill Somerville
58aacc590e Class to read and write WAV format files
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6337 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-02 17:19:49 +00:00
Bill Somerville
26e5ea963e Make WAV file reading correct so that optional chunks can be tolerated
The WAV file format allows for optional header content, allow for this
in preparation for adding some metadata to WSJT-X recorded WAV files.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6335 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-02 14:29:02 +00:00
Bill Somerville
d431e2cecd Restructuring in preparation for direct decoder invocation from wsjtx
Re-factor the JT4, JT65 and JT9 decoders as Fortran modules using type
bound  procedures, the  decoder types  implement a  callback procedure
such that he client of the decoder can interpret the decode results as
they need.

The JT4 decoder has a  second callback that delivers message averaging
status.  Also the  previously separate  source files  lib/jt4a.f90 and
lib/avg4.f90 have been merged  into lib/jt4_decode.f90 as private type
bound procedures of the new jt4_decoder type.

Re-factored the lib/decoder.f90 subroutine  to utilize the new decoder
types. Added local procedures to process decodes and averaging results
including the necessary OpenMP synchronization directives for parallel
JT9+JT65 decoding.

Added the  jt65_test module  which is  a basic  test harness  for JT65
decoding. Re-factored  the jt65 utility  to utilize the  new jt65_test
module.

Changed a  few integers  to logical variables  where their  meaning is
clearly binary.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6324 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-29 23:52:55 +00:00
Bill Somerville
d6457af36e Rename some sources in prep for decode callback implementation
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6323 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-29 23:52:46 +00:00
Bill Somerville
f416a52def Make Fortran profiling timer function a callback with a default null implementation
Groundwork for calling the decoders directly from C/C++ threads.

To  access   the  timer   module  timer_module   must  now   be  used.
Instrumented code need  only use the module function  'timer' which is
now a  procedure pointer that  is guaranteed to be  associated (unless
null()  is assigned  to it,  which should  not be  done). The  default
behaviour of 'timer' is to do nothing.

If a  Fortran program  wishes to  profile code it  should now  use the
timer_impl module  which contains a default  timer implementation. The
main program should call 'init_timer([filename])' before using 'timer'
or     calling     routines     that     are     instrumented.      If
'init_timer([filename])'.  If it is called  then an optional file name
may  be  provided  with  'timer.out'  being used  as  a  default.  The
procedure 'fini_timer()' may be called to close the file.

The default  timer implementation is  thread safe if used  with OpenMP
multi-threaded code  so long as  the OpenMP  thread team is  given the
copyin(/timer_private/) attribute  for correct operation.   The common
block /timer_private/ should  be included for OpenMP  use by including
the file 'timer_common.inc'.

The module 'lib/timer_C_wrapper.f90' provides  a Fortran wrapper along
with 'init' and 'fini' subroutines  which allow a C/C++ application to
call timer instrumented  Fortran code and for it  to receive callbacks
of 'timer()' subroutine invocations.  No C/C++ timer implementation is
provided at this stage.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6320 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-27 15:40:57 +00:00
Bill Somerville
924e20efa8 Add a sample download dialog and upload sub-system
Samples are  downloaded from a  web server, currently the  SF download
server.   The samples  are  stored in  the  source controlled  samples
directory and the CMake script  there builds a suitable directory tree
for upload to the web  server under samples/web containing the samples
hierarchy and the  generated JSON contents database  file. The samples
CMake script also  defines an 'upload-samples' target  that uses rsync
to efficiently upload  the samples and the  accompanying contents JSON
database file.

Any directory structure under the samples directory may be created, to
add a new sample file simply add  the file to source control and amend
the list of sample files (SAMPLE_FILES) in samples/CMakeLists.txt.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6308 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-24 11:41:05 +00:00
Bill Somerville
d5bc774641 Get rid of jt9com and npar common blocks
Also  use correct  C binding  and have  compilers determine  sizes and
offsets.

The wsjtx.exe program now owns the  decoder shared data that is shared
with symspec.  It is now in  struct dec_data, still a  global variable
for now but hopefully a MainWindow member variable soon.

The struct  dec_data (in both C/C++  and Fortran) has a  sub structure
with the decoder  parameters which enables copying  and manipulating a
lot cleaner.

New  of  changed types  of  shared  data  must  still be  modified  in
commons.h and a  new file lib/jt9com.f90, they must stay  in sync as a
pointer to the structure is passed between C and Fortran.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6290 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-17 20:29:55 +00:00
Bill Somerville
5f9ed5a5ac Tidy up command line processing in Fortran tools
Build script now  builds jt65. The tools jt65 and  jt65sim usilize the
options module for all comamnd line parsing.

The  tool  jt65sim  now  has  conventinal  command  line  options  and
switchs. Default values have been  added where appropriate and options
documentation  updated. An  option to  disable PRNG  seeding has  been
added.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6276 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-15 15:35:04 +00:00
Bill Somerville
3962a3514a More PRNG rationalization
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6274 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-15 01:36:05 +00:00
Bill Somerville
6be4f3d376 Rationalize random number seeding in C and Fortran
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6272 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-14 19:40:44 +00:00