Commit Graph

2406 Commits

Author SHA1 Message Date
Bill Somerville
018ff1baf9 Some docs and enhancements for WAV reading
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6336 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-02 15:04:26 +00:00
Bill Somerville
19c9d1c193 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
Steven Franke
c75c3d48d7 Update wer simulation results and figures to reflect improvements implemented in r6330.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6334 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-02 02:27:05 +00:00
Steven Franke
bf12009820 Add -a (aggressiveness) command line option and make ntol=1000 the default.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6333 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-01 16:34:55 +00:00
Joe Taylor
da2c6f4131 Comment out the "write(79)..." lines.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6332 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-01 15:35:00 +00:00
Joe Taylor
2bf91bd399 Force naggressive=0 when in JT9+JT65 mode.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6331 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-01 15:33:48 +00:00
Joe Taylor
f7223bb55a Default parameter settings for JT65 decoding set for HF conditions.
More aggressive parameters are selected with higher values of 
"Aggressive decoding level" on the "Advanced" tab.  With settings
greater than 0, be sure to set Ftol=1000 if you want to decode over 
the whole passband.


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6330 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-31 16:22:27 +00:00
Joe Taylor
4a44121196 Oops! Forgot to back out a temporary change in jt65_test.f90.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6329 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-31 01:47:44 +00:00
Joe Taylor
3eddfb592c Merge improvements to the FT algorithm into Bill's new structure for
the Fortran routines.


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6328 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-31 01:30:31 +00:00
Steven Franke
520629df12 More refined kvasd stats.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6327 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-31 00:34:57 +00:00
Bill Somerville
5527bf5bac Fix JT4 averaging regression
Fell  into the  Fortran  trap for  C/C++  programmers, automatic  SAVE
attribute on default initialized variables.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6326 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-30 14:57:50 +00:00
Bill Somerville
899b88e206 Add missing new file
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6325 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-29 23:54:40 +00:00
Bill Somerville
5b43b691f3 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
d918b1ab59 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
Steven Franke
aad315ff7b Add ftdata-100 and ftdata-10 and update fig_wer2 and associated text.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6322 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-28 21:20:10 +00:00
Steven Franke
7f8a1f85bb Edits to section 1 and corrections to n-k+1 stuff.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6321 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-28 03:02:05 +00:00
Bill Somerville
95926577ae 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
Steven Franke
767758d15c some more progress.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6319 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-27 00:17:20 +00:00
Steven Franke
32ffb48139 Add discussion of sync losses.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6318 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-26 21:43:07 +00:00
Steven Franke
d4a919c70a More refinements to section 7 and figs.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6317 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-26 20:13:12 +00:00
Steven Franke
47c20977a1 Restructure ftrsd, update WER data, delete some old files.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6316 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-26 15:47:49 +00:00
Bill Somerville
b1765e31cb Elide duplicate UDP messages
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6315 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-24 21:37:16 +00:00
Bill Somerville
d84c430e19 Fix dependency and sequencing issues of upload-samples target
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6314 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-24 20:46:26 +00:00
Steven Franke
1e3f353cb9 Fix misprints in equation 4 and 5
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6313 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-24 19:44:30 +00:00
Bill Somerville
a897f3ba41 Do not disable Tx or "Enable Tx" when changing band in WSPR mode
The fixes a regression introduced in r6311

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6312 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-24 19:42:36 +00:00
Bill Somerville
56cffb9381 Reset Tx watchdog when changing bands
Also disable "Enable Tx" when changing bands.

Thanks to Mike W9MDB for contributions to this patch.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6311 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-24 13:33:29 +00:00
Bill Somerville
7e8579594f Some helpful developer documentation
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6310 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-24 13:19:54 +00:00
Bill Somerville
38f05da9f2 Fix samples upload-samples target commands
Also added --progress switch to rsync command

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6309 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-24 11:54:51 +00:00
Bill Somerville
0efe9231bb 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
Joe Taylor
0775acf236 Commit two .lab (gnuplot label) files.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6307 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-23 23:40:00 +00:00
Joe Taylor
96decc8434 A few more editorial changes.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6306 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-23 23:38:12 +00:00
Steven Franke
551ad6de3a Merge in updates to simulation results, add gnuplot script for bodide fig.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6305 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-23 23:29:44 +00:00
Joe Taylor
4cc08ab305 Add (temporarily?) pdf's for two figures.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6304 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-23 20:27:24 +00:00
Joe Taylor
eb76912e3d Another draft of the FTRSD paper.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6303 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-23 20:23:28 +00:00
Steven Franke
ebccd2267a Computes theoretical probability of error for a bounded-distance decoder.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6302 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-22 00:08:31 +00:00
Joe Taylor
d2703eb3e5 New versions of two figures, and some text additions. (More to come!)
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6301 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-21 19:48:08 +00:00
Joe Taylor
b503eb3199 Tweak some details used for collecting decode statistics.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6300 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-21 14:48:51 +00:00
Joe Taylor
05850f086c Reset watchdog counter if a Tx message button is clicked.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6299 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-19 01:37:53 +00:00
Joe Taylor
76a1c8defe Use sync rather than nsync, for better resolution.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6298 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-18 21:36:49 +00:00
Joe Taylor
fc62e2cb32 Add stats (convenience program for measuring decode statistics).
Minor tweaks to hinted-decode routine.


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6297 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-18 20:00:59 +00:00
Joe Taylor
20f1136cbf Look for weaker Sync indications when naggressive > 0 and ntol < 1000.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6296 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-18 19:58:10 +00:00
Bill Somerville
501d581930 Fix the jt9 command line acceptance constraints
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6295 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-18 17:57:18 +00:00
Bill Somerville
8bfa03d99f Improve the randomness of the srand seed generator
XOR:ing the time since epoch in seconds with the PID fails for processes
started every second since the PID and time increment in step regularly in
this scenario and therefore give identical seeds. Thanks to Steve K9AN for
spotting this subtle flaw.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6294 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-18 17:32:56 +00:00
Bill Somerville
c00a623bf5 Fix reading from /dev/urandom for C library srand seed
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6293 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-18 15:14:38 +00:00
Bill Somerville
8fa5605457 Quote file name passed to wsprd
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6292 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-18 12:44:04 +00:00
Bill Somerville
10ffb03793 Fix defect in jt9 standalone mode causing randon file read
Made default values for decoding  parameters better in standalone jt65
tool.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6291 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-17 23:21:38 +00:00
Bill Somerville
722d4e6c4f 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
Joe Taylor
b6327461a3 Reduce gain on 2d cumulative spectrum, to be more consistent with others.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6289 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-17 15:55:35 +00:00
Joe Taylor
ac98b5e693 Include DT and fSpread on output to screen.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6288 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-17 15:35:39 +00:00
Bill Somerville
dafd3f38d7 Add new command line options to the standalone jt65 test program
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6287 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-12-17 10:43:07 +00:00