Updated ways to implement a user defined hardware controller which is
executed just after band changes during WSPR band hopping operation.
Allows the user_hardware executable to be located in any directory on
the PATH environment variable. On Windows any file extension listed on
the PATHEXT environment variable may be used, the first match using
PATH and PATHEXT will be executed. On Windows this is achieved by
using CMD.EXE with a '/C' command line flag, i.e. the user's hardware
controller is executed like this:
CMD.EXE /C user_hardware nn
where 'nn' is the new band as an integer in meters.
On non-Windows systems the user's executable will be run if it is
found on the directories specified by the PATH environment variable,
and it is executable, i.e. it is equivalent to something like:
/bin/sh -c user_hardware nn
where 'nn' is the new band as an integer in meters.
In all cases the user_hardware controller should exit with a zero
status, otherwise it have been deemed to have failed. On Windows avoid
an exit status of one as that is utilized by CMD.EXE to indicate the
file was not found, which WSJT-X ignores silently.
This change means the prior need to put the user's hardware controller
into a WSJT-X installation directory like /usr/local/bin or
C:\WSJT\wsjtx\bin is no longer necessary.