hamlib-cvs-digest Mailing List for Ham Radio Control Libraries (Page 16)
Library to control radio transceivers and receivers
Brought to you by:
n0nb
You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(57) |
Nov
(27) |
Dec
(25) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(41) |
Feb
(101) |
Mar
(60) |
Apr
(32) |
May
(32) |
Jun
(198) |
Jul
(95) |
Aug
(60) |
Sep
(48) |
Oct
(96) |
Nov
(27) |
Dec
(222) |
2002 |
Jan
(180) |
Feb
(46) |
Mar
(68) |
Apr
(11) |
May
(36) |
Jun
(34) |
Jul
(113) |
Aug
(42) |
Sep
(71) |
Oct
(65) |
Nov
(116) |
Dec
(40) |
2003 |
Jan
(32) |
Feb
(92) |
Mar
(29) |
Apr
(102) |
May
(21) |
Jun
(34) |
Jul
(3) |
Aug
(60) |
Sep
(30) |
Oct
(62) |
Nov
(57) |
Dec
(33) |
2004 |
Jan
(28) |
Feb
(46) |
Mar
(16) |
Apr
(14) |
May
(31) |
Jun
(21) |
Jul
(10) |
Aug
(80) |
Sep
(42) |
Oct
(11) |
Nov
(28) |
Dec
(13) |
2005 |
Jan
(35) |
Feb
(26) |
Mar
(20) |
Apr
(118) |
May
(2) |
Jun
(5) |
Jul
|
Aug
|
Sep
(5) |
Oct
(1) |
Nov
(13) |
Dec
(1) |
2006 |
Jan
(9) |
Feb
(25) |
Mar
(22) |
Apr
(6) |
May
|
Jun
|
Jul
(2) |
Aug
(1) |
Sep
(3) |
Oct
(46) |
Nov
(13) |
Dec
(7) |
2007 |
Jan
(9) |
Feb
(14) |
Mar
(3) |
Apr
|
May
(6) |
Jun
(1) |
Jul
|
Aug
(11) |
Sep
(7) |
Oct
(8) |
Nov
(41) |
Dec
(3) |
2008 |
Jan
(27) |
Feb
(16) |
Mar
(13) |
Apr
(23) |
May
(39) |
Jun
(4) |
Jul
(7) |
Aug
(1) |
Sep
(13) |
Oct
(52) |
Nov
(44) |
Dec
(55) |
2009 |
Jan
(72) |
Feb
(69) |
Mar
|
Apr
|
May
|
Jun
(13) |
Jul
(1) |
Aug
(6) |
Sep
(15) |
Oct
(11) |
Nov
(31) |
Dec
(20) |
2010 |
Jan
(24) |
Feb
(21) |
Mar
(22) |
Apr
(40) |
May
(38) |
Jun
(4) |
Jul
(2) |
Aug
(22) |
Sep
(19) |
Oct
(14) |
Nov
(5) |
Dec
(8) |
2011 |
Jan
(14) |
Feb
(36) |
Mar
(6) |
Apr
|
May
|
Jun
(23) |
Jul
(13) |
Aug
(8) |
Sep
(7) |
Oct
|
Nov
(3) |
Dec
(9) |
2012 |
Jan
(17) |
Feb
(13) |
Mar
(10) |
Apr
|
May
(1) |
Jun
(14) |
Jul
(4) |
Aug
(12) |
Sep
(2) |
Oct
(24) |
Nov
(14) |
Dec
(2) |
2013 |
Jan
(4) |
Feb
(3) |
Mar
(3) |
Apr
(3) |
May
(10) |
Jun
(4) |
Jul
(7) |
Aug
|
Sep
(15) |
Oct
(5) |
Nov
(1) |
Dec
(2) |
2014 |
Jan
|
Feb
(8) |
Mar
(1) |
Apr
(3) |
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
(3) |
Oct
(7) |
Nov
(6) |
Dec
(3) |
2015 |
Jan
(4) |
Feb
(5) |
Mar
(8) |
Apr
(8) |
May
(2) |
Jun
|
Jul
(4) |
Aug
(7) |
Sep
(8) |
Oct
|
Nov
(6) |
Dec
(4) |
2016 |
Jan
(6) |
Feb
(26) |
Mar
(3) |
Apr
(10) |
May
(6) |
Jun
(5) |
Jul
(1) |
Aug
(4) |
Sep
(3) |
Oct
(4) |
Nov
(3) |
Dec
(10) |
2017 |
Jan
(11) |
Feb
(11) |
Mar
(2) |
Apr
(1) |
May
(7) |
Jun
(2) |
Jul
(11) |
Aug
(9) |
Sep
(5) |
Oct
(5) |
Nov
(1) |
Dec
(2) |
2018 |
Jan
(5) |
Feb
(2) |
Mar
(19) |
Apr
(7) |
May
(11) |
Jun
(3) |
Jul
(4) |
Aug
(10) |
Sep
(2) |
Oct
(8) |
Nov
(6) |
Dec
(9) |
2019 |
Jan
(9) |
Feb
(6) |
Mar
(2) |
Apr
(4) |
May
(6) |
Jun
(9) |
Jul
(6) |
Aug
(3) |
Sep
(5) |
Oct
(2) |
Nov
(8) |
Dec
(9) |
2020 |
Jan
(15) |
Feb
(1) |
Mar
(18) |
Apr
(33) |
May
(43) |
Jun
(87) |
Jul
(45) |
Aug
(8) |
Sep
(43) |
Oct
(3) |
Nov
(5) |
Dec
(42) |
2021 |
Jan
(116) |
Feb
(40) |
Mar
(58) |
Apr
(48) |
May
(29) |
Jun
(2) |
Jul
|
Aug
(22) |
Sep
(18) |
Oct
(1) |
Nov
|
Dec
(3) |
2022 |
Jan
(1) |
Feb
(1) |
Mar
|
Apr
(1) |
May
(2) |
Jun
(1) |
Jul
|
Aug
(1) |
Sep
|
Oct
(6) |
Nov
(2) |
Dec
(9) |
2023 |
Jan
(10) |
Feb
|
Mar
|
Apr
(10) |
May
(3) |
Jun
(1) |
Jul
(2) |
Aug
(4) |
Sep
(1) |
Oct
|
Nov
(2) |
Dec
(3) |
2024 |
Jan
(4) |
Feb
(1) |
Mar
(2) |
Apr
(2) |
May
(5) |
Jun
(3) |
Jul
(1) |
Aug
(2) |
Sep
|
Oct
(2) |
Nov
(3) |
Dec
(9) |
2025 |
Jan
(5) |
Feb
(5) |
Mar
|
Apr
(10) |
May
(20) |
Jun
(43) |
Jul
(24) |
Aug
(20) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Michael B. <mdb...@us...> - 2021-03-12 18:14:38
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 20e41b59ec89fddf40e391f0c2276041e226096f (commit) from 54f7a2dc70cbe59adb2300034dc1f7a5a4cd8c44 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 20e41b59ec89fddf40e391f0c2276041e226096f Author: Michael Black W9MDB <mdb...@ya...> Date: Fri Mar 12 12:12:20 2021 -0600 Fix flrig close/open null return on modes https://github.com/Hamlib/Hamlib/issues/605 diff --git a/rigs/dummy/flrig.c b/rigs/dummy/flrig.c index c4d13efe..1082e3b2 100644 --- a/rigs/dummy/flrig.c +++ b/rigs/dummy/flrig.c @@ -1001,8 +1001,6 @@ static int flrig_close(RIG *rig) */ static int flrig_cleanup(RIG *rig) { - int i; - rig_debug(RIG_DEBUG_TRACE, "%s\n", __func__); if (!rig) { @@ -1012,15 +1010,24 @@ static int flrig_cleanup(RIG *rig) free(rig->state.priv); rig->state.priv = NULL; + // we really don't need to free this up as it's only done once + // was causing problem when cleanup was followed by rig_open + // model_flrig was not getting refilled + // if we can figure out that one we can re-enable this +#if 0 + int i; + for (i = 0; modeMap[i].mode_hamlib != 0; ++i) { if (modeMap[i].mode_flrig) { free(modeMap[i].mode_flrig); modeMap[i].mode_flrig = NULL; + modeMap[i].mode_hamlib = 0; } } +#endif RETURNFUNC(RIG_OK); } ----------------------------------------------------------------------- Summary of changes: rigs/dummy/flrig.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-12 15:12:31
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 54f7a2dc70cbe59adb2300034dc1f7a5a4cd8c44 (commit) from d816d27c7499695e314d593171f7a10d7cac87e2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 54f7a2dc70cbe59adb2300034dc1f7a5a4cd8c44 Author: Michael Black W9MDB <mdb...@ya...> Date: Fri Mar 12 09:12:05 2021 -0600 Remove dead line in flrig.c diff --git a/rigs/dummy/flrig.c b/rigs/dummy/flrig.c index d564b13a..c4d13efe 100644 --- a/rigs/dummy/flrig.c +++ b/rigs/dummy/flrig.c @@ -440,7 +440,6 @@ static int read_transaction(RIG *rig, char *xml, int xml_len) if (len <= 0) { rig_debug(RIG_DEBUG_ERR, "%s: read_string error=%d\n", __func__, len); - //RETURNFUNC(-(100 + RIG_EPROTO)); continue; } ----------------------------------------------------------------------- Summary of changes: rigs/dummy/flrig.c | 1 - 1 file changed, 1 deletion(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-12 15:04:42
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via d816d27c7499695e314d593171f7a10d7cac87e2 (commit) via 8202c86586c943b06da22de7a8a6f01b3f8792bc (commit) from 196ffb39a89acaa11177f50262dbcefd1585d3ad (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit d816d27c7499695e314d593171f7a10d7cac87e2 Author: Michael Black W9MDB <mdb...@ya...> Date: Fri Mar 12 09:02:26 2021 -0600 Fix FlRig conditon where 0Hz can be returned on a network error Was returning a bad error code If any rig returns 0 Hz freq will be returned from cache instead I don't think there's anytime we want a zero Hz frequency diff --git a/rigs/dummy/flrig.c b/rigs/dummy/flrig.c index 746e58fe..d564b13a 100644 --- a/rigs/dummy/flrig.c +++ b/rigs/dummy/flrig.c @@ -1072,7 +1072,7 @@ static int flrig_get_freq(RIG *rig, vfo_t vfo, freq_t *freq) { rig_debug(RIG_DEBUG_ERR, "%s: freq==0??\nvalue=%s\n", __func__, value); - RETURNFUNC(-(102 + RIG_EPROTO)); + RETURNFUNC(-RIG_EPROTO); } else { diff --git a/src/rig.c b/src/rig.c index c17518fb..c719759d 100644 --- a/src/rig.c +++ b/src/rig.c @@ -1831,6 +1831,12 @@ int HAMLIB_API rig_get_freq(RIG *rig, vfo_t vfo, freq_t *freq) retcode = caps->get_freq(rig, vfo, freq); + // sometimes a network rig like FLRig will return freq=0 + // so we'll just reuse the cache for that condition + if (*freq == 0) { + *freq = rig->state.cache.freq; + } + if (retcode == RIG_OK) { rig->state.cache.freq = *freq; @@ -1971,7 +1977,7 @@ int HAMLIB_API rig_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width) || vfo == rig->state.current_vfo) { retcode = caps->set_mode(rig, vfo, mode, width); - rig_debug(RIG_DEBUG_TRACE, "%s: retcode after set_mode=%d\n", __func__, + rig_debug(RIG_DEBUG_TRACE, "%s: targetable retcode after set_mode=%d\n", __func__, retcode); } else @@ -1979,6 +1985,7 @@ int HAMLIB_API rig_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width) int rc2; vfo_t curr_vfo; + rig_debug(RIG_DEBUG_TRACE, "%s: not targetable need vfo swap\n", __func__); if (!caps->set_vfo) { RETURNFUNC(-RIG_ENAVAIL); commit 8202c86586c943b06da22de7a8a6f01b3f8792bc Author: Michael Black W9MDB <mdb...@ya...> Date: Fri Mar 12 08:13:35 2021 -0600 Add FlRig version info to flrig.c diff --git a/rigs/dummy/flrig.c b/rigs/dummy/flrig.c index 59dc5823..746e58fe 100644 --- a/rigs/dummy/flrig.c +++ b/rigs/dummy/flrig.c @@ -747,8 +747,34 @@ static int flrig_open(RIG *rig) struct flrig_priv_data *priv = (struct flrig_priv_data *) rig->state.priv; ENTERFUNC; - rig_debug(RIG_DEBUG_TRACE, "%s version %s\n", __func__, BACKEND_VER); + rig_debug(RIG_DEBUG_VERBOSE, "%s version %s\n", __func__, BACKEND_VER); + + retval = flrig_transaction(rig, "main.get_version", NULL, value, sizeof(value)); + + if (retval != RIG_OK) + { + rig_debug(RIG_DEBUG_ERR, "%s: get_version failed: %s\n", __func__, + rigerror(retval)); + RETURNFUNC(retval); + } + rig_debug(RIG_DEBUG_VERBOSE, "%s FlRig version %s\n", __func__, value); + + retval = flrig_transaction(rig, "rig.get_xcvr", NULL, value, sizeof(value)); + + if (retval != RIG_OK) + { + rig_debug(RIG_DEBUG_ERR, "%s: get_xcvr failed: %s\n", __func__, + rigerror(retval)); + RETURNFUNC(retval); + } + retval = flrig_transaction(rig, "rig.get_xcvr", NULL, value, sizeof(value)); + if (retval != RIG_OK) + { + rig_debug(RIG_DEBUG_ERR, "%s: get_xcvr failed: %s\n", __func__, + rigerror(retval)); + RETURNFUNC(retval); + } retval = flrig_transaction(rig, "rig.get_xcvr", NULL, value, sizeof(value)); if (retval != RIG_OK) @@ -831,7 +857,7 @@ static int flrig_open(RIG *rig) if (retval != RIG_OK) { RETURNFUNC(retval); } - rig_debug(RIG_DEBUG_TRACE, "%s: modes=%s\n", __func__, value); + rig_debug(RIG_DEBUG_VERBOSE, "%s: modes=%s\n", __func__, value); modes = 0; pr = value; diff --git a/rigs/dummy/flrig.h b/rigs/dummy/flrig.h index a69e4ae1..3eca8630 100644 --- a/rigs/dummy/flrig.h +++ b/rigs/dummy/flrig.h @@ -28,7 +28,7 @@ #include <sys/time.h> #endif -#define BACKEND_VER "20210311" +#define BACKEND_VER "20210312" #define EOM "\r" #define TRUE 1 ----------------------------------------------------------------------- Summary of changes: rigs/dummy/flrig.c | 32 +++++++++++++++++++++++++++++--- rigs/dummy/flrig.h | 2 +- src/rig.c | 9 ++++++++- 3 files changed, 38 insertions(+), 5 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-12 05:06:53
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 196ffb39a89acaa11177f50262dbcefd1585d3ad (commit) via f01129958ec9a3feaac4c3253b0e384183c4515f (commit) via 60e9dd9742994e176c5043915647f7c070ae5fb0 (commit) via f67429528b48e69464eb4d8f73c2d25f065071d3 (commit) from 8e20613771379d736e49c40e70b57b44be478f0d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 196ffb39a89acaa11177f50262dbcefd1585d3ad Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 23:05:52 2021 -0600 Update version in flrig.h diff --git a/rigs/dummy/flrig.h b/rigs/dummy/flrig.h index 78eec490..a69e4ae1 100644 --- a/rigs/dummy/flrig.h +++ b/rigs/dummy/flrig.h @@ -28,7 +28,7 @@ #include <sys/time.h> #endif -#define BACKEND_VER "20210308" +#define BACKEND_VER "20210311" #define EOM "\r" #define TRUE 1 commit f01129958ec9a3feaac4c3253b0e384183c4515f Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 23:03:53 2021 -0600 Fix flrig vfo swapping when set_mode with bandwidth is done https://github.com/Hamlib/Hamlib/issues/602 diff --git a/rigs/dummy/flrig.c b/rigs/dummy/flrig.c index 517abf69..59dc5823 100644 --- a/rigs/dummy/flrig.c +++ b/rigs/dummy/flrig.c @@ -1386,20 +1386,12 @@ static int flrig_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width) sprintf(cmd_arg, "<params><param><value><i4>%ld</i4></value></param></params>", width); - // if we're not on VFOB but asking for VFOB still have to switch VFOS - if (!vfoSwitched && vfo == RIG_VFO_B) { flrig_set_vfo(rig, RIG_VFO_B); } - - if (!vfoSwitched && vfo == RIG_VFO_A) { flrig_set_vfo(rig, RIG_VFO_A); } - - retval = flrig_transaction(rig, "rig.set_bandwidth", cmd_arg, NULL, - 0); + retval = flrig_transaction(rig, "rig.set_bandwidth", cmd_arg, NULL, 0); if (retval < 0) { RETURNFUNC(retval); } - - flrig_set_vfo(rig, vfo); // ensure reset to our initial vfo } // Return to VFOA if needed commit 60e9dd9742994e176c5043915647f7c070ae5fb0 Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 22:34:38 2021 -0600 Fix debug statement in flrig.c diff --git a/rigs/dummy/flrig.c b/rigs/dummy/flrig.c index b35ab253..517abf69 100644 --- a/rigs/dummy/flrig.c +++ b/rigs/dummy/flrig.c @@ -1108,7 +1108,7 @@ static int flrig_set_freq(RIG *rig, vfo_t vfo, freq_t freq) else { cmd = "rig.set_vfoB"; - rig_debug(RIG_DEBUG_TRACE, "rig.set_vfoA %.0f\n", freq); + rig_debug(RIG_DEBUG_TRACE, "rig.set_vfoB %.0f\n", freq); priv->curr_freqB = freq; } commit f67429528b48e69464eb4d8f73c2d25f065071d3 Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 22:31:37 2021 -0600 Fix debug statements in flrig.c diff --git a/rigs/dummy/flrig.c b/rigs/dummy/flrig.c index 203ef8e2..b35ab253 100644 --- a/rigs/dummy/flrig.c +++ b/rigs/dummy/flrig.c @@ -1102,13 +1102,13 @@ static int flrig_set_freq(RIG *rig, vfo_t vfo, freq_t freq) if (vfo == RIG_VFO_A) { cmd = "rig.set_vfoA"; - rig_debug(RIG_DEBUG_TRACE, "rig.set_vfoA %.0f", freq); + rig_debug(RIG_DEBUG_TRACE, "rig.set_vfoA %.0f\n", freq); priv->curr_freqA = freq; } else { cmd = "rig.set_vfoB"; - rig_debug(RIG_DEBUG_TRACE, "rig.set_vfoA %.0f", freq); + rig_debug(RIG_DEBUG_TRACE, "rig.set_vfoA %.0f\n", freq); priv->curr_freqB = freq; } ----------------------------------------------------------------------- Summary of changes: rigs/dummy/flrig.c | 14 +++----------- rigs/dummy/flrig.h | 2 +- 2 files changed, 4 insertions(+), 12 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-11 19:15:21
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 8e20613771379d736e49c40e70b57b44be478f0d (commit) via 2f40735ed746dd4945ea4f3432532128d89d19a0 (commit) via 0f82f0d1a8ae5a1c424283f59d3c5e6aa599de8c (commit) from 6fcb7ccd37b4eaadc2219bfe7dab91c2907da844 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 8e20613771379d736e49c40e70b57b44be478f0d Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 13:14:42 2021 -0600 Fix mingw bogus compiler warning diff --git a/src/misc.c b/src/misc.c index fefd0f24..7e443c7e 100644 --- a/src/misc.c +++ b/src/misc.c @@ -1569,7 +1569,8 @@ double HAMLIB_API elapsed_ms(struct timespec *start, int option) { start->tv_sec = start->tv_nsec = 0; } - stop = *start; // just so to suppress compiler warnings + + stop = *start; // just to suppress some compiler warnings //rig_debug(RIG_DEBUG_TRACE, "%s: start = %ld,%ld\n", __func__, // (long)start->tv_sec, (long)start->tv_nsec); commit 2f40735ed746dd4945ea4f3432532128d89d19a0 Merge: 0f82f0d1 6fcb7ccd Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 13:12:47 2021 -0600 Merge branch 'master' of https://github.com/Hamlib/Hamlib diff --cc src/misc.c index 683954b2,aaf56f9c..fefd0f24 --- a/src/misc.c +++ b/src/misc.c @@@ -1569,10 -1569,9 +1569,10 @@@ double HAMLIB_API elapsed_ms(struct tim { start->tv_sec = start->tv_nsec = 0; } + stop = *start; // just so to suppress compiler warnings - rig_debug(RIG_DEBUG_TRACE, "%s: start = %ld,%ld\n", __func__, - (long)start->tv_sec, (long)start->tv_nsec); + //rig_debug(RIG_DEBUG_TRACE, "%s: start = %ld,%ld\n", __func__, + // (long)start->tv_sec, (long)start->tv_nsec); switch (option) commit 0f82f0d1a8ae5a1c424283f59d3c5e6aa599de8c Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 13:12:17 2021 -0600 Fix for mingw compiler bogus warning message diff --git a/src/misc.c b/src/misc.c index 45619c6f..683954b2 100644 --- a/src/misc.c +++ b/src/misc.c @@ -1569,6 +1569,7 @@ double HAMLIB_API elapsed_ms(struct timespec *start, int option) { start->tv_sec = start->tv_nsec = 0; } + stop = *start; // just so to suppress compiler warnings rig_debug(RIG_DEBUG_TRACE, "%s: start = %ld,%ld\n", __func__, (long)start->tv_sec, (long)start->tv_nsec); ----------------------------------------------------------------------- Summary of changes: src/misc.c | 2 ++ 1 file changed, 2 insertions(+) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-11 16:25:18
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 6fcb7ccd37b4eaadc2219bfe7dab91c2907da844 (commit) from 198f1cb43e467cf3657f348fdbe23f6f8c10086a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 6fcb7ccd37b4eaadc2219bfe7dab91c2907da844 Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 10:24:22 2021 -0600 Fixed icom ACK/NAK and frame responses https://github.com/Hamlib/Hamlib/issues/600 diff --git a/rigs/icom/frame.c b/rigs/icom/frame.c index 9968e2a3..2d1664a9 100644 --- a/rigs/icom/frame.c +++ b/rigs/icom/frame.c @@ -269,6 +269,9 @@ int icom_one_transaction(RIG *rig, int cmd, int subcmd, /* Ok, normal frame */ break; + case NAK: + RETURNFUNC(-RIG_ERJCTED); + default: /* Timeout after reading at least one character */ /* Problem on ci-v bus? */ @@ -277,13 +280,14 @@ int icom_one_transaction(RIG *rig, int cmd, int subcmd, if (frm_len < ACKFRMLEN) { RETURNFUNC(-RIG_EPROTO); } + rig_debug(RIG_DEBUG_TRACE, "%s: frm_len=%d, frm_len-1=%02x, frm_len-2=%02x\n", __func__, frm_len, buf[frm_len-1], buf[frm_len-2]); if (NAK == buf[frm_len - 2]) { RETURNFUNC(-RIG_ERJCTED); } - if (ACK != buf[frm_len - 2]) { RETURNFUNC(-RIG_BUSBUSY); } + // has to be one of these two now or frame is corrupt + if (FI != buf[frm_len - 1] && ACK != buf[frm_len - 1]) { RETURNFUNC(-RIG_BUSBUSY); } *data_len = frm_len - (ACKFRMLEN - 1); - rig_debug(RIG_DEBUG_TRACE, "%s: data_len=%d, frm_len=%d\n", __func__, *data_len, - frm_len); + if (*data_len <= 0) { RETURNFUNC(-RIG_EPROTO); } memcpy(data, buf + 4, *data_len); /* ----------------------------------------------------------------------- Summary of changes: rigs/icom/frame.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-11 15:02:05
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 198f1cb43e467cf3657f348fdbe23f6f8c10086a (commit) via 3f83cb6b6d10f2ff23445dfaa91668f901ac4ba5 (commit) from 1d23fb6358510aac550350088fcc90b8fc7c60ee (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 198f1cb43e467cf3657f348fdbe23f6f8c10086a Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 08:51:30 2021 -0600 Remove some cache debug diff --git a/src/rig.c b/src/rig.c index 946f9729..c17518fb 100644 --- a/src/rig.c +++ b/src/rig.c @@ -1408,8 +1408,6 @@ static int get_cache_freq(RIG *rig, vfo_t vfo, freq_t *freq, int *cache_ms) if (vfo == RIG_VFO_CURR) { vfo = rig->state.current_vfo; } - rig_debug(RIG_DEBUG_TRACE, "%s: get vfo=%s\n", __func__, rig_strvfo(vfo)); - // VFO_C to be implemented switch (vfo) { commit 3f83cb6b6d10f2ff23445dfaa91668f901ac4ba5 Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 08:44:29 2021 -0600 Reduce debug in misc.c cache info diff --git a/src/misc.c b/src/misc.c index cb702f8b..aaf56f9c 100644 --- a/src/misc.c +++ b/src/misc.c @@ -1570,8 +1570,8 @@ double HAMLIB_API elapsed_ms(struct timespec *start, int option) start->tv_sec = start->tv_nsec = 0; } - rig_debug(RIG_DEBUG_TRACE, "%s: start = %ld,%ld\n", __func__, - (long)start->tv_sec, (long)start->tv_nsec); + //rig_debug(RIG_DEBUG_TRACE, "%s: start = %ld,%ld\n", __func__, + // (long)start->tv_sec, (long)start->tv_nsec); switch (option) @@ -1588,8 +1588,8 @@ double HAMLIB_API elapsed_ms(struct timespec *start, int option) case HAMLIB_ELAPSED_SET: clock_gettime(CLOCK_REALTIME, start); - rig_debug(RIG_DEBUG_TRACE, "%s: after gettime, start = %ld,%ld\n", __func__, - (long)start->tv_sec, (long)start->tv_nsec); + //rig_debug(RIG_DEBUG_TRACE, "%s: after gettime, start = %ld,%ld\n", __func__, + // (long)start->tv_sec, (long)start->tv_nsec); return 999 * 1000; // so we can tell the difference in debug where we came from break; @@ -1603,7 +1603,7 @@ double HAMLIB_API elapsed_ms(struct timespec *start, int option) elapsed_msec = ((stop.tv_sec - start->tv_sec) + (stop.tv_nsec / 1e9 - start->tv_nsec / 1e9)) * 1e3; - rig_debug(RIG_DEBUG_TRACE, "%s: elapsed_msecs=%.0f\n", __func__, elapsed_msec); + //rig_debug(RIG_DEBUG_TRACE, "%s: elapsed_msecs=%.0f\n", __func__, elapsed_msec); if (elapsed_msec < 0 || option == HAMLIB_ELAPSED_INVALIDATE) { return 1000000; } ----------------------------------------------------------------------- Summary of changes: src/misc.c | 10 +++++----- src/rig.c | 2 -- 2 files changed, 5 insertions(+), 7 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-11 12:43:25
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 1d23fb6358510aac550350088fcc90b8fc7c60ee (commit) from fd0c8cba7c69edd86d6177d08ad73cd145177c30 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 1d23fb6358510aac550350088fcc90b8fc7c60ee Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Mar 11 06:42:21 2021 -0600 Fix some errors with the HAMLIB_ macro changes diff --git a/extra/kylix/hamlib_rigapi.pas b/extra/kylix/hamlib_rigapi.pas index 4a42bc2b..2007de8e 100644 --- a/extra/kylix/hamlib_rigapi.pas +++ b/extra/kylix/hamlib_rigapi.pas @@ -52,15 +52,15 @@ type //typedef struct rig RIG; const - RIGNAMSIZ = 30; - RIGVERSIZ = 8; - FILPATHLEN = 512; - FRQRANGESIZ = 30; - MAXCHANDESC = 30; {* describe channel eg: "WWV 5Mhz" *} - TSLSTSIZ = 20; {* max tuning step list size, zero ended *} - FLTLSTSIZ = 16; {* max mode/filter list size, zero ended *} - MAXDBLSTSIZ = 8; {* max preamp/att levels supported, zero ended *} - CHANLSTSIZ = 16; {* max mem_list size, zero ended *} + HAMLIB_RIGNAMSIZ = 30; + HAMLIB_RIGVERSIZ = 8; + HAMLIB_FILPATHLEN = 512; + HAMLIB_FRQRANGESIZ = 30; + HAMLIB_MAXCHANDESC = 30; {* describe channel eg: "WWV 5Mhz" *} + HAMLIB_TSLSTSIZ = 20; {* max tuning step list size, zero ended *} + HAMLIB_FLTLSTSIZ = 16; {* max mode/filter list size, zero ended *} + HAMLIB_MAXDBLSTSIZ = 8; {* max preamp/att levels supported, zero ended *} + HAMLIB_CHANLSTSIZ = 16; {* max mem_list size, zero ended *} type {* diff --git a/rigs/dummy/netrigctl.c b/rigs/dummy/netrigctl.c index 9b28abd4..718233ef 100644 --- a/rigs/dummy/netrigctl.c +++ b/rigs/dummy/netrigctl.c @@ -380,7 +380,7 @@ static int netrigctl_open(RIG *rig) #if 0 /* TODO */ - chan_t chan_list[CHANLSTSIZ]; /*!< Channel list, zero ended */ + chan_t chan_list[HAMLIB_CHANLSTSIZ]; /*!< Channel list, zero ended */ #endif ret = read_string(&rig->state.rigport, buf, BUF_MAX, "\n", 1); diff --git a/src/cal.c b/src/cal.c index 8e1c3553..f9ba6912 100644 --- a/src/cal.c +++ b/src/cal.c @@ -63,7 +63,7 @@ float HAMLIB_API rig_raw2val(int rawval, const cal_table_t *cal) int i; /* ASSERT(cal != NULL) */ - /* ASSERT(cal->size <= MAX_CAL_LENGTH) */ + /* ASSERT(cal->size <= HAMLIB_MAX_CAL_LENGTH) */ rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__); @@ -130,7 +130,7 @@ float HAMLIB_API rig_raw2val_float(int rawval, const cal_table_float_t *cal) int i; /* ASSERT(cal != NULL) */ - /* ASSERT(cal->size <= MAX_CAL_LENGTH) */ + /* ASSERT(cal->size <= HAMLIB_MAX_CAL_LENGTH) */ rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__); diff --git a/tests/memload.c b/tests/memload.c index ceeb5f31..4c0ed946 100644 --- a/tests/memload.c +++ b/tests/memload.c @@ -145,7 +145,7 @@ int set_chan(RIG *rig, channel_t *chan, xmlNodePtr node) n = chan->channel_num = atoi((char *) prop); /* find channel caps */ - for (i = 0; i < CHANLSTSIZ ; i++) + for (i = 0; i < HAMLIB_CHANLSTSIZ ; i++) { if (rig->state.chan_list[i].startc <= n && rig->state.chan_list[i].endc >= n) @@ -155,7 +155,7 @@ int set_chan(RIG *rig, channel_t *chan, xmlNodePtr node) } } - if (i == CHANLSTSIZ) { return -RIG_EINVAL; } + if (i == HAMLIB_CHANLSTSIZ) { return -RIG_EINVAL; } fprintf(stderr, "node %d %d\n", n, i); diff --git a/tests/rigmatrix.c b/tests/rigmatrix.c index a8bb27fa..0075e978 100644 --- a/tests/rigmatrix.c +++ b/tests/rigmatrix.c @@ -422,7 +422,7 @@ static void draw_range(const freq_range_t range_list[], { int i; - for (i = 0; i < FRQRANGESIZ; i++) + for (i = 0; i < HAMLIB_FRQRANGESIZ; i++) { float start_pix, end_pix; ----------------------------------------------------------------------- Summary of changes: extra/kylix/hamlib_rigapi.pas | 18 +++++++++--------- rigs/dummy/netrigctl.c | 2 +- src/cal.c | 4 ++-- tests/memload.c | 4 ++-- tests/rigmatrix.c | 2 +- 5 files changed, 15 insertions(+), 15 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-11 05:47:39
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via fd0c8cba7c69edd86d6177d08ad73cd145177c30 (commit) from 8407fcf6c1c792cf1d35f46a717d11d44036dea3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit fd0c8cba7c69edd86d6177d08ad73cd145177c30 Author: Michael Black W9MDB <mdb...@ya...> Date: Wed Mar 10 23:45:38 2021 -0600 Another attempt to get MacOS python2 binding working https://github.com/Hamlib/Hamlib/issues/477 diff --git a/bindings/Makefile.am b/bindings/Makefile.am index a381d0bf..682e17da 100644 --- a/bindings/Makefile.am +++ b/bindings/Makefile.am @@ -4,7 +4,7 @@ # AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(top_srcdir)/include -I$(top_srcdir)/bindings \ - $(TCL_INCLUDE_SPEC) + $(TCL_INCLUDE_SPEC) $(PYTHON_CPPFLAGS) AM_CFLAGS = -fno-strict-aliasing AM_CXXFLAGS = -O2 ----------------------------------------------------------------------- Summary of changes: bindings/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-10 20:36:24
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 8407fcf6c1c792cf1d35f46a717d11d44036dea3 (commit) via 2d975feb6240c0b0e28c8b3d6d08c2ff9584f053 (commit) from 803a8d9e5e3f153cee47cb713ee411cee2d032bb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 8407fcf6c1c792cf1d35f46a717d11d44036dea3 Author: Michael Black W9MDB <mdb...@ya...> Date: Wed Mar 10 14:35:38 2021 -0600 FT1000MP set_vfo updates internal state https://github.com/Hamlib/Hamlib/issues/597 diff --git a/rigs/yaesu/ft1000mp.c b/rigs/yaesu/ft1000mp.c index 59c53c67..1809eacf 100644 --- a/rigs/yaesu/ft1000mp.c +++ b/rigs/yaesu/ft1000mp.c @@ -1128,6 +1128,9 @@ int ft1000mp_set_vfo(RIG *rig, vfo_t vfo) ft1000mp_send_priv_cmd(rig, cmd_index); #endif + // we just store the requested vfo in our internal state + rig->state.current_vfo = vfo; + RETURNFUNC(RIG_OK); } commit 2d975feb6240c0b0e28c8b3d6d08c2ff9584f053 Author: Michael Black W9MDB <mdb...@ya...> Date: Wed Mar 10 14:33:19 2021 -0600 Default FT1000MP rigs to VFOA as we are just emulating VFOs https://github.com/Hamlib/Hamlib/issues/597 diff --git a/rigs/yaesu/ft1000mp.c b/rigs/yaesu/ft1000mp.c index a6f091a6..59c53c67 100644 --- a/rigs/yaesu/ft1000mp.c +++ b/rigs/yaesu/ft1000mp.c @@ -222,7 +222,7 @@ const struct rig_caps ft1000mp_caps = RIG_MODEL(RIG_MODEL_FT1000MP), .model_name = "FT-1000MP", .mfg_name = "Yaesu", - .version = "20210225.0", + .version = "20210310.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -356,7 +356,7 @@ const struct rig_caps ft1000mpmkv_caps = RIG_MODEL(RIG_MODEL_FT1000MPMKV), .model_name = "MARK-V FT-1000MP", .mfg_name = "Yaesu", - .version = "20210225.0", + .version = "20210310.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -490,7 +490,7 @@ const struct rig_caps ft1000mpmkvfld_caps = RIG_MODEL(RIG_MODEL_FT1000MPMKVFLD), .model_name = "MARK-V Field FT-1000MP", .mfg_name = "Yaesu", - .version = "20210225.0", + .version = "20210310.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -1164,6 +1164,10 @@ int ft1000mp_get_vfo(RIG *rig, vfo_t *vfo) else // we are emulating vfo status { *vfo = rig->state.current_vfo; + if (*vfo == RIG_VFO_CURR) { + rig_debug(RIG_DEBUG_TRACE, "%s: no get_vfo, defaulting to VFOA\n", __func__); + *vfo = RIG_VFO_A; + } } #if 0 ----------------------------------------------------------------------- Summary of changes: rigs/yaesu/ft1000mp.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-10 17:52:31
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 803a8d9e5e3f153cee47cb713ee411cee2d032bb (commit) via 7b58661d1270377264f6ffc12c6072191247459a (commit) via 74a10af560210e845d6928d87daf8aa9b9abdb7c (commit) via f7f6ea318e1b5a26a7e0707901148bc0f1580e1b (commit) via 0405375a1e65adb28b3dab12afb0d45644eb06dc (commit) via 70b6dbdeb6025979c2edc95bdc660f6824e53f36 (commit) from 309dc138c9ed6163516a66ea92065f5c512c3b56 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 803a8d9e5e3f153cee47cb713ee411cee2d032bb Author: Michael Black W9MDB <mdb...@ya...> Date: Wed Mar 10 11:49:47 2021 -0600 Fix icom.c logic to not reject good answers https://github.com/Hamlib/Hamlib/issues/596 diff --git a/rigs/icom/frame.c b/rigs/icom/frame.c index 97e3ae6e..9968e2a3 100644 --- a/rigs/icom/frame.c +++ b/rigs/icom/frame.c @@ -279,6 +279,8 @@ int icom_one_transaction(RIG *rig, int cmd, int subcmd, if (NAK == buf[frm_len - 2]) { RETURNFUNC(-RIG_ERJCTED); } + if (ACK != buf[frm_len - 2]) { RETURNFUNC(-RIG_BUSBUSY); } + *data_len = frm_len - (ACKFRMLEN - 1); rig_debug(RIG_DEBUG_TRACE, "%s: data_len=%d, frm_len=%d\n", __func__, *data_len, frm_len); diff --git a/rigs/icom/icom.c b/rigs/icom/icom.c index ddaa9294..6cecd81b 100644 --- a/rigs/icom/icom.c +++ b/rigs/icom/icom.c @@ -3081,14 +3081,7 @@ int icom_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val) lvl_len--; } - if (lvl_len >= 1 && lvlbuf[0] != ACK && lvlbuf[1] != NAK) - { - // if we don't get ACK/NAK some serial corruption occurred - // so we'll call it a timeout for retry purposes - RETURNFUNC(-RIG_ETIMEOUT); - } - - if (lvlbuf[0] != ACK && lvlbuf[0] != lvl_cn) + if (lvlbuf[0] != lvl_cn) { rig_debug(RIG_DEBUG_ERR, "%s: ack NG (%#.2x), len=%d\n", __func__, lvlbuf[0], lvl_len); @@ -3211,11 +3204,13 @@ int icom_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val) { val->f = rig_raw2val_float(icom_val, &icom_default_rfpower_meter_cal); + rig_debug(RIG_DEBUG_TRACE, "%s: using rig table to convert %d to %.01f\n", __func__, icom_val, val->f); } else { val->f = rig_raw2val_float(icom_val, &rig->caps->rfpower_meter_cal); + rig_debug(RIG_DEBUG_TRACE, "%s: using default icom table to convert %d to %.01f\n", __func__, icom_val, val->f); } break; diff --git a/rigs/icom/icom.h b/rigs/icom/icom.h index 258519e1..b9eb6eaa 100644 --- a/rigs/icom/icom.h +++ b/rigs/icom/icom.h @@ -30,7 +30,7 @@ #include <sys/time.h> #endif -#define BACKEND_VER "20210306" +#define BACKEND_VER "20210310" /* * defines used by comp_cal_str in rig.c commit 7b58661d1270377264f6ffc12c6072191247459a Author: Michael Black W9MDB <mdb...@ya...> Date: Wed Mar 10 08:24:33 2021 -0600 Fix RETURNFUNC -- when RETURNFUNC(function) was used is was calling the function multiple times https://github.com/Hamlib/Hamlib/issues/595 diff --git a/src/misc.h b/src/misc.h index c0a3a995..517334a4 100644 --- a/src/misc.h +++ b/src/misc.h @@ -142,9 +142,12 @@ extern HAMLIB_EXPORT(int) parse_hoststr(char *host, char hoststr[256], char port void errmsg(int err, char *s, const char *func, const char *file, int line); #define ERRMSG(err, s) errmsg(err, s, __func__, __FILENAME__, __LINE__) #define ENTERFUNC rig_debug(RIG_DEBUG_VERBOSE, "%s(%d):%s entered\n", __FILENAME__, __LINE__, __func__) +// we need to refer to rc just once as it +// could be a function call #define RETURNFUNC(rc) do { \ - rig_debug(RIG_DEBUG_VERBOSE, "%s(%d):%s return(%ld)\n", __FILENAME__, __LINE__, __func__, (long int) (rc)); \ - return (rc); \ + int rctmp = rc; \ + rig_debug(RIG_DEBUG_VERBOSE, "%s(%d):%s return(%ld)\n", __FILENAME__, __LINE__, __func__, (long int) (rctmp)); \ + return (rctmp); \ } while(0) #if 0 // 5.0 commit 74a10af560210e845d6928d87daf8aa9b9abdb7c Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 17:29:29 2021 -0600 Increase msg size diff --git a/src/rig.c b/src/rig.c index 245fec3d..946f9729 100644 --- a/src/rig.c +++ b/src/rig.c @@ -305,7 +305,7 @@ const char *HAMLIB_API rigerror(int errnum) return "ERR_OUT_OF_RANGE"; } - static char msg[DEBUGMSGSAVE_SIZE * 2]; + static char msg[DEBUGMSGSAVE_SIZE * 3]; // we have to remove LF from debugmsgsave since calling function controls LF char *p = &debugmsgsave[strlen(debugmsgsave) - 1]; commit f7f6ea318e1b5a26a7e0707901148bc0f1580e1b Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 17:22:44 2021 -0600 Fix compilation warning diff --git a/include/hamlib/rig.h b/include/hamlib/rig.h index 897c8afa..4fdc0b45 100644 --- a/include/hamlib/rig.h +++ b/include/hamlib/rig.h @@ -2900,7 +2900,7 @@ extern HAMLIB_EXPORT_VAR(char) debugmsgsave3[DEBUGMSGSAVE_SIZE]; // last-2 debu #ifndef __cplusplus #ifdef __GNUC__ // doing the debug macro with a dummy sprintf allows gcc to check the format string -#define rig_debug(debug_level,fmt,...) do { strncpy(debugmsgsave3, debugmsgsave2,sizeof(debugmsgsave3)-1);strncpy(debugmsgsave2, debugmsgsave, sizeof(debugmsgsave2)-1);snprintf(debugmsgsave,sizeof(debugmsgsave)-1,fmt,__VA_ARGS__);rig_debug(debug_level,fmt,##__VA_ARGS__); } while(0); +#define rig_debug(debug_level,fmt,...) do { strncpy(debugmsgsave3, debugmsgsave2,sizeof(debugmsgsave3));strncpy(debugmsgsave2, debugmsgsave, sizeof(debugmsgsave2));snprintf(debugmsgsave,sizeof(debugmsgsave),fmt,__VA_ARGS__);rig_debug(debug_level,fmt,##__VA_ARGS__); } while(0); #endif #endif extern HAMLIB_EXPORT(void) commit 0405375a1e65adb28b3dab12afb0d45644eb06dc Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 17:18:45 2021 -0600 Fix rig.h compile error diff --git a/include/hamlib/rig.h b/include/hamlib/rig.h index 988d6c11..897c8afa 100644 --- a/include/hamlib/rig.h +++ b/include/hamlib/rig.h @@ -2900,7 +2900,7 @@ extern HAMLIB_EXPORT_VAR(char) debugmsgsave3[DEBUGMSGSAVE_SIZE]; // last-2 debu #ifndef __cplusplus #ifdef __GNUC__ // doing the debug macro with a dummy sprintf allows gcc to check the format string -#define rig_debug(debug_level,fmt,...) do { strncpy(debugmsgsave3, debugmsgsave2,sizeof(debugmsgsave3)-1);strncpy(debugmsgsave2, debugmsgsavem sizeof(debugmsgsdave2)-1);snprintf(debugmsgsave,sizeof(debugmsgsave),fmt,__VA_ARGS__);rig_debug(debug_level,fmt,##__VA_ARGS__); } while(0); +#define rig_debug(debug_level,fmt,...) do { strncpy(debugmsgsave3, debugmsgsave2,sizeof(debugmsgsave3)-1);strncpy(debugmsgsave2, debugmsgsave, sizeof(debugmsgsave2)-1);snprintf(debugmsgsave,sizeof(debugmsgsave)-1,fmt,__VA_ARGS__);rig_debug(debug_level,fmt,##__VA_ARGS__); } while(0); #endif #endif extern HAMLIB_EXPORT(void) commit 70b6dbdeb6025979c2edc95bdc660f6824e53f36 Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 17:14:38 2021 -0600 Change strcpy to strncpy on debugmsgsave diff --git a/include/hamlib/rig.h b/include/hamlib/rig.h index 569dd367..988d6c11 100644 --- a/include/hamlib/rig.h +++ b/include/hamlib/rig.h @@ -2900,7 +2900,7 @@ extern HAMLIB_EXPORT_VAR(char) debugmsgsave3[DEBUGMSGSAVE_SIZE]; // last-2 debu #ifndef __cplusplus #ifdef __GNUC__ // doing the debug macro with a dummy sprintf allows gcc to check the format string -#define rig_debug(debug_level,fmt,...) do { strcpy(debugmsgsave3, debugmsgsave2);strcpy(debugmsgsave2, debugmsgsave);snprintf(debugmsgsave,sizeof(debugmsgsave),fmt,__VA_ARGS__);rig_debug(debug_level,fmt,##__VA_ARGS__); } while(0); +#define rig_debug(debug_level,fmt,...) do { strncpy(debugmsgsave3, debugmsgsave2,sizeof(debugmsgsave3)-1);strncpy(debugmsgsave2, debugmsgsavem sizeof(debugmsgsdave2)-1);snprintf(debugmsgsave,sizeof(debugmsgsave),fmt,__VA_ARGS__);rig_debug(debug_level,fmt,##__VA_ARGS__); } while(0); #endif #endif extern HAMLIB_EXPORT(void) ----------------------------------------------------------------------- Summary of changes: include/hamlib/rig.h | 2 +- rigs/icom/frame.c | 2 ++ rigs/icom/icom.c | 11 +++-------- rigs/icom/icom.h | 2 +- src/misc.h | 7 +++++-- src/rig.c | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-09 19:21:29
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 309dc138c9ed6163516a66ea92065f5c512c3b56 (commit) from dd117fed26c73740988a89fa2c4d4160dce503ec (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 309dc138c9ed6163516a66ea92065f5c512c3b56 Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 13:20:32 2021 -0600 See if moving kenwood_transaction out of RETURNFUNC eliminiates duplicate kenwood_transaction calls https://github.com/Hamlib/Hamlib/issues/595 diff --git a/rigs/kenwood/kenwood.c b/rigs/kenwood/kenwood.c index d4f56599..798be67b 100644 --- a/rigs/kenwood/kenwood.c +++ b/rigs/kenwood/kenwood.c @@ -3752,8 +3752,9 @@ int kenwood_set_ptt(RIG *rig, vfo_t vfo, ptt_t ptt) default: RETURNFUNC(-RIG_EINVAL); } + int retval = kenwood_transaction(rig, ptt_cmd, NULL, 0); - RETURNFUNC(kenwood_transaction(rig, ptt_cmd, NULL, 0)); + RETURNFUNC(retval); } int kenwood_set_ptt_safe(RIG *rig, vfo_t vfo, ptt_t ptt) diff --git a/rigs/kenwood/kenwood.h b/rigs/kenwood/kenwood.h index 6ad2c7b6..90dee848 100644 --- a/rigs/kenwood/kenwood.h +++ b/rigs/kenwood/kenwood.h @@ -28,7 +28,7 @@ #include "token.h" #include "misc.h" -#define BACKEND_VER "20210302" +#define BACKEND_VER "20210309" #define EOM_KEN ';' #define EOM_TH '\r' ----------------------------------------------------------------------- Summary of changes: rigs/kenwood/kenwood.c | 3 ++- rigs/kenwood/kenwood.h | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-09 16:24:55
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via dd117fed26c73740988a89fa2c4d4160dce503ec (commit) via 9cd7e533f63c02d8f32f9a821722b8a731c00ac0 (commit) from c2cab5465071ccecd6ac568fbb472eade9fa721a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit dd117fed26c73740988a89fa2c4d4160dce503ec Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 10:24:37 2021 -0600 Fix ftdx101.c double init of str_cal diff --git a/rigs/yaesu/ftdx101.c b/rigs/yaesu/ftdx101.c index 3587f5d1..b7220ce0 100644 --- a/rigs/yaesu/ftdx101.c +++ b/rigs/yaesu/ftdx101.c @@ -120,7 +120,6 @@ const struct rig_caps ftdx101d_caps = .rfpower_meter_cal = FTDX101D_RFPOWER_METER_WATTS_CAL, .str_cal = FTDX101D_STR_CAL, .swr_cal = FTDX101D_SWR_CAL, - .str_cal = FTDX101D_STR_CAL, .chan_list = { { 1, 99, RIG_MTYPE_MEM, NEWCAT_MEM_CAP }, RIG_CHAN_END, commit 9cd7e533f63c02d8f32f9a821722b8a731c00ac0 Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 10:22:59 2021 -0600 Fix clang warnings in ts990s.c diff --git a/rigs/kenwood/ts990s.c b/rigs/kenwood/ts990s.c index 8fe2c98b..9acc8a96 100644 --- a/rigs/kenwood/ts990s.c +++ b/rigs/kenwood/ts990s.c @@ -52,8 +52,8 @@ {0x00, -54},\ {0x04, -48},\ {0x0B, -36},\ - {0x13, -23.9},\ - {0x1B, -11.7},\ + {0x13, -24},\ + {0x1B, -12},\ {0x23, 0},\ {0x46, 60}}\ } ----------------------------------------------------------------------- Summary of changes: rigs/kenwood/ts990s.c | 4 ++-- rigs/yaesu/ftdx101.c | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-09 16:17:17
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via c2cab5465071ccecd6ac568fbb472eade9fa721a (commit) via 8a2a51b2214d4e39517ff48c418b06716cc85c6e (commit) from 0148fd70007ac079e776cb6142eca7ec04efc3e8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit c2cab5465071ccecd6ac568fbb472eade9fa721a Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 10:16:18 2021 -0600 Change all FILPATHLEN names to HAMLIB_FILPATHLEN diff --git a/tests/cachetest.c b/tests/cachetest.c index 07eb1c9b..6e5f10a1 100644 --- a/tests/cachetest.c +++ b/tests/cachetest.c @@ -77,7 +77,7 @@ int main(int argc, char *argv[]) /* Set up serial port, baud rate */ rig_file = argv[2]; // your serial device - strncpy(my_rig->state.rigport.pathname, rig_file, FILPATHLEN - 1); + strncpy(my_rig->state.rigport.pathname, rig_file, HAMLIB_FILPATHLEN - 1); my_rig->state.rigport.parm.serial.rate = baud; // your baud rate diff --git a/tests/cachetest2.c b/tests/cachetest2.c index db427cbb..60cbd049 100644 --- a/tests/cachetest2.c +++ b/tests/cachetest2.c @@ -44,7 +44,7 @@ int main(int argc, char *argv[]) /* Set up serial port, baud rate */ rig_file = "127.0.0.1:4532"; // your serial device - strncpy(my_rig->state.rigport.pathname, rig_file, FILPATHLEN - 1); + strncpy(my_rig->state.rigport.pathname, rig_file, HAMLIB_FILPATHLEN - 1); /* Open my rig */ retcode = rig_open(my_rig); diff --git a/tests/dumpmem.c b/tests/dumpmem.c index ca29a0a6..24ffe802 100644 --- a/tests/dumpmem.c +++ b/tests/dumpmem.c @@ -59,7 +59,7 @@ int main(int argc, char *argv[]) exit(1); /* whoops! something went wrong (mem alloc?) */ } - strncpy(my_rig->state.rigport.pathname, SERIAL_PORT, FILPATHLEN - 1); + strncpy(my_rig->state.rigport.pathname, SERIAL_PORT, HAMLIB_FILPATHLEN - 1); if (rig_open(my_rig)) { diff --git a/tests/example.c b/tests/example.c index 251dbc5d..c784c369 100644 --- a/tests/example.c +++ b/tests/example.c @@ -43,7 +43,7 @@ int main() /* Instantiate a rig */ my_rig = rig_init(MODEL); // your rig model. - strncpy(my_rig->state.rigport.pathname, PATH, FILPATHLEN - 1); + strncpy(my_rig->state.rigport.pathname, PATH, HAMLIB_FILPATHLEN - 1); my_rig->state.rigport.parm.serial.rate = BAUD; // your baud rate diff --git a/tests/rig_bench.c b/tests/rig_bench.c index ca2ebd88..d9b95e6a 100644 --- a/tests/rig_bench.c +++ b/tests/rig_bench.c @@ -40,7 +40,7 @@ int main(int argc, char *argv[]) myport.parm.serial.stop_bits = 1; myport.parm.serial.parity = RIG_PARITY_NONE; myport.parm.serial.handshake = RIG_HANDSHAKE_NONE; - strncpy(myport.pathname, SERIAL_PORT, FILPATHLEN - 1); + strncpy(myport.pathname, SERIAL_PORT, HAMLIB_FILPATHLEN - 1); rig_load_all_backends(); myrig_model = rig_probe(&myport); @@ -69,7 +69,7 @@ int main(int argc, char *argv[]) printf("Serial speed: %d bauds\n", my_rig->state.rigport.parm.serial.rate); - strncpy(my_rig->state.rigport.pathname, SERIAL_PORT, FILPATHLEN - 1); + strncpy(my_rig->state.rigport.pathname, SERIAL_PORT, HAMLIB_FILPATHLEN - 1); retcode = rig_open(my_rig); diff --git a/tests/testrig.c b/tests/testrig.c index b7b9ab97..4c10582e 100644 --- a/tests/testrig.c +++ b/tests/testrig.c @@ -52,7 +52,7 @@ int main(int argc, char *argv[]) myport.parm.serial.stop_bits = 1; myport.parm.serial.parity = RIG_PARITY_NONE; myport.parm.serial.handshake = RIG_HANDSHAKE_NONE; - strncpy(myport.pathname, SERIAL_PORT, FILPATHLEN - 1); + strncpy(myport.pathname, SERIAL_PORT, HAMLIB_FILPATHLEN - 1); rig_load_all_backends(); myrig_model = rig_probe(&myport); @@ -71,7 +71,7 @@ int main(int argc, char *argv[]) exit(1); /* whoops! something went wrong (mem alloc?) */ } - strncpy(my_rig->state.rigport.pathname, SERIAL_PORT, FILPATHLEN - 1); + strncpy(my_rig->state.rigport.pathname, SERIAL_PORT, HAMLIB_FILPATHLEN - 1); retcode = rig_open(my_rig); diff --git a/tests/testtrn.c b/tests/testtrn.c index 5e96a0b5..7b0046e2 100644 --- a/tests/testtrn.c +++ b/tests/testtrn.c @@ -54,7 +54,7 @@ int main(int argc, char *argv[]) exit(1); /* whoops! something went wrong (mem alloc?) */ } - strncpy(my_rig->state.rigport.pathname, SERIAL_PORT, FILPATHLEN - 1); + strncpy(my_rig->state.rigport.pathname, SERIAL_PORT, HAMLIB_FILPATHLEN - 1); if (rig_open(my_rig)) { commit 8a2a51b2214d4e39517ff48c418b06716cc85c6e Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 10:09:22 2021 -0600 Possible fix for MacOS python2 binding build https://github.com/Hamlib/Hamlib/issues/477 diff --git a/bindings/Makefile.am b/bindings/Makefile.am index 5e4f81f7..a381d0bf 100644 --- a/bindings/Makefile.am +++ b/bindings/Makefile.am @@ -121,7 +121,7 @@ check-py: all-py Hamlib.py: hamlibpy_wrap.c hamlibpy_wrap.c: hamlib.swg $(SWGDEP) - $(AM_V_GEN)$(SWIG) -python $(AM_CPPFLAGS) -I$(top_srcdir)/bindings \ + $(AM_V_GEN)$(SWIG) -python $(AM_CPPFLAGS) $(PYTHON_CPPFLAGS) -I$(top_srcdir)/bindings \ -o $@ $$(test -f hamlib.swg || echo '$(srcdir)/')hamlib.swg install-py: ----------------------------------------------------------------------- Summary of changes: bindings/Makefile.am | 2 +- tests/cachetest.c | 2 +- tests/cachetest2.c | 2 +- tests/dumpmem.c | 2 +- tests/example.c | 2 +- tests/rig_bench.c | 4 ++-- tests/testrig.c | 4 ++-- tests/testtrn.c | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-09 14:38:35
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 0148fd70007ac079e776cb6142eca7ec04efc3e8 (commit) from d7a5028e83f8ad9bf4cc7b6d017a19aa493b95f3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 0148fd70007ac079e776cb6142eca7ec04efc3e8 Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 08:34:27 2021 -0600 Re-enabling RIG_TARGETABLE_PURE as WSJT-X expects it Will remove when WSJT-X removes it https://github.com/Hamlib/Hamlib/issues/414 diff --git a/include/hamlib/rig.h b/include/hamlib/rig.h index 969f77b7..569dd367 100644 --- a/include/hamlib/rig.h +++ b/include/hamlib/rig.h @@ -476,7 +476,7 @@ typedef unsigned int vfo_t; #define RIG_TARGETABLE_NONE 0 #define RIG_TARGETABLE_FREQ (1<<0) #define RIG_TARGETABLE_MODE (1<<1) -//#define RIG_TARGETABLE_PURE (1<<2) // deprecated -- not used -- reuse it +#define RIG_TARGETABLE_PURE (1<<2) // deprecated -- not used -- reuse it #define RIG_TARGETABLE_TONE (1<<3) #define RIG_TARGETABLE_FUNC (1<<4) #define RIG_TARGETABLE_LEVEL (1<<5) ----------------------------------------------------------------------- Summary of changes: include/hamlib/rig.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-09 14:06:43
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via d7a5028e83f8ad9bf4cc7b6d017a19aa493b95f3 (commit) via 5355d586455b0ab7aae33146109f753c8217d7eb (commit) from c5fba04747ddb6309cfd16af1a490f59ec01d309 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit d7a5028e83f8ad9bf4cc7b6d017a19aa493b95f3 Merge: 5355d586 c5fba047 Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 08:06:11 2021 -0600 Merge branch 'master' of https://github.com/Hamlib/Hamlib commit 5355d586455b0ab7aae33146109f753c8217d7eb Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 08:02:35 2021 -0600 Fix STRENGTH report for ftdx101d and ftdx101mp https://github.com/Hamlib/Hamlib/issues/594 diff --git a/rigs/yaesu/ftdx101.c b/rigs/yaesu/ftdx101.c index 0e73d39a..3587f5d1 100644 --- a/rigs/yaesu/ftdx101.c +++ b/rigs/yaesu/ftdx101.c @@ -37,27 +37,6 @@ #include "newcat.h" #include "ftdx101.h" -#define FTDX101D_STR_CAL { 16, \ - { \ - { 0x00, -54 }, /* S0 */ \ - { 0x01, -48 }, \ - { 0x02, -42 }, \ - { 0x03, -36 }, \ - { 0x04, -30 }, \ - { 0x05, -24 }, \ - { 0x06, -18 }, \ - { 0x07, -12 }, \ - { 0x08, -6 }, \ - { 0x09, 0 }, /* S9 */ \ - { 0x0A, 10 }, /* +10 */ \ - { 0x0B, 20 }, /* +20 */ \ - { 0x0C, 30 }, /* +30 */ \ - { 0x0D, 40 }, /* +40 */ \ - { 0x0E, 50 }, /* +50 */ \ - { 0x0F, 60 } /* +60 */ \ - } } - - const struct newcat_priv_caps ftdx101d_priv_caps = { .roofing_filter_count = 6, @@ -97,7 +76,7 @@ const struct rig_caps ftdx101d_caps = RIG_MODEL(RIG_MODEL_FTDX101D), .model_name = "FTDX-101D", .mfg_name = "Yaesu", - .version = NEWCAT_VER ".10", + .version = NEWCAT_VER ".11", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -139,7 +118,7 @@ const struct rig_caps ftdx101d_caps = .bank_qty = 0, .chan_desc_sz = 0, .rfpower_meter_cal = FTDX101D_RFPOWER_METER_WATTS_CAL, - .str_cal = FTDX101D_RFPOWER_METER_CAL, + .str_cal = FTDX101D_STR_CAL, .swr_cal = FTDX101D_SWR_CAL, .str_cal = FTDX101D_STR_CAL, .chan_list = { diff --git a/rigs/yaesu/ftdx101.h b/rigs/yaesu/ftdx101.h index 198bb2f9..78acea89 100644 --- a/rigs/yaesu/ftdx101.h +++ b/rigs/yaesu/ftdx101.h @@ -148,6 +148,23 @@ } \ } +#define FTDX101D_STR_CAL { 12, \ + { \ + { 0, -60 }, /* S0 */ \ + { 17, -54 }, /* S0 */ \ + { 25, -48 }, \ + { 34, -42 }, \ + { 51, -36 }, \ + { 68, -30 }, \ + { 85, -24 }, \ + { 102, -18 }, \ + { 119, -12 }, \ + { 136, -6 }, \ + { 160, 0 }, /* S9 */ \ + { 255, 60 }, /* +60 */ \ + } } + + /* * Other features (used by rig_caps) */ diff --git a/rigs/yaesu/ftdx101mp.c b/rigs/yaesu/ftdx101mp.c index 9ff6a9ec..a5dfb7c7 100644 --- a/rigs/yaesu/ftdx101mp.c +++ b/rigs/yaesu/ftdx101mp.c @@ -77,7 +77,7 @@ const struct rig_caps ftdx101mp_caps = RIG_MODEL(RIG_MODEL_FTDX101MP), .model_name = "FTDX-101MP", .mfg_name = "Yaesu", - .version = NEWCAT_VER ".1", + .version = NEWCAT_VER ".2", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -119,7 +119,7 @@ const struct rig_caps ftdx101mp_caps = .bank_qty = 0, .chan_desc_sz = 0, .rfpower_meter_cal = FTDX101MP_RFPOWER_METER_WATTS_CAL, - .str_cal = FTDX101MP_RFPOWER_METER_CAL, + .str_cal = FTDX101D_STR_CAL, .swr_cal = FTDX101D_SWR_CAL, .chan_list = { { 1, 99, RIG_MTYPE_MEM, NEWCAT_MEM_CAP }, ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-09 14:03:14
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via c5fba04747ddb6309cfd16af1a490f59ec01d309 (commit) via 68d4388df290c4dcd7de34a0538960808502ee32 (commit) from 59dcb2e9b6f3f38c0749c425a36a58db07413268 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit c5fba04747ddb6309cfd16af1a490f59ec01d309 Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 08:02:35 2021 -0600 Fix STRENGHT report for ftdx101d and ftdx101mp https://github.com/Hamlib/Hamlib/issues/594 diff --git a/rigs/yaesu/ftdx101.c b/rigs/yaesu/ftdx101.c index 0e73d39a..3587f5d1 100644 --- a/rigs/yaesu/ftdx101.c +++ b/rigs/yaesu/ftdx101.c @@ -37,27 +37,6 @@ #include "newcat.h" #include "ftdx101.h" -#define FTDX101D_STR_CAL { 16, \ - { \ - { 0x00, -54 }, /* S0 */ \ - { 0x01, -48 }, \ - { 0x02, -42 }, \ - { 0x03, -36 }, \ - { 0x04, -30 }, \ - { 0x05, -24 }, \ - { 0x06, -18 }, \ - { 0x07, -12 }, \ - { 0x08, -6 }, \ - { 0x09, 0 }, /* S9 */ \ - { 0x0A, 10 }, /* +10 */ \ - { 0x0B, 20 }, /* +20 */ \ - { 0x0C, 30 }, /* +30 */ \ - { 0x0D, 40 }, /* +40 */ \ - { 0x0E, 50 }, /* +50 */ \ - { 0x0F, 60 } /* +60 */ \ - } } - - const struct newcat_priv_caps ftdx101d_priv_caps = { .roofing_filter_count = 6, @@ -97,7 +76,7 @@ const struct rig_caps ftdx101d_caps = RIG_MODEL(RIG_MODEL_FTDX101D), .model_name = "FTDX-101D", .mfg_name = "Yaesu", - .version = NEWCAT_VER ".10", + .version = NEWCAT_VER ".11", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -139,7 +118,7 @@ const struct rig_caps ftdx101d_caps = .bank_qty = 0, .chan_desc_sz = 0, .rfpower_meter_cal = FTDX101D_RFPOWER_METER_WATTS_CAL, - .str_cal = FTDX101D_RFPOWER_METER_CAL, + .str_cal = FTDX101D_STR_CAL, .swr_cal = FTDX101D_SWR_CAL, .str_cal = FTDX101D_STR_CAL, .chan_list = { diff --git a/rigs/yaesu/ftdx101.h b/rigs/yaesu/ftdx101.h index 198bb2f9..78acea89 100644 --- a/rigs/yaesu/ftdx101.h +++ b/rigs/yaesu/ftdx101.h @@ -148,6 +148,23 @@ } \ } +#define FTDX101D_STR_CAL { 12, \ + { \ + { 0, -60 }, /* S0 */ \ + { 17, -54 }, /* S0 */ \ + { 25, -48 }, \ + { 34, -42 }, \ + { 51, -36 }, \ + { 68, -30 }, \ + { 85, -24 }, \ + { 102, -18 }, \ + { 119, -12 }, \ + { 136, -6 }, \ + { 160, 0 }, /* S9 */ \ + { 255, 60 }, /* +60 */ \ + } } + + /* * Other features (used by rig_caps) */ diff --git a/rigs/yaesu/ftdx101mp.c b/rigs/yaesu/ftdx101mp.c index 9ff6a9ec..a5dfb7c7 100644 --- a/rigs/yaesu/ftdx101mp.c +++ b/rigs/yaesu/ftdx101mp.c @@ -77,7 +77,7 @@ const struct rig_caps ftdx101mp_caps = RIG_MODEL(RIG_MODEL_FTDX101MP), .model_name = "FTDX-101MP", .mfg_name = "Yaesu", - .version = NEWCAT_VER ".1", + .version = NEWCAT_VER ".2", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -119,7 +119,7 @@ const struct rig_caps ftdx101mp_caps = .bank_qty = 0, .chan_desc_sz = 0, .rfpower_meter_cal = FTDX101MP_RFPOWER_METER_WATTS_CAL, - .str_cal = FTDX101MP_RFPOWER_METER_CAL, + .str_cal = FTDX101D_STR_CAL, .swr_cal = FTDX101D_SWR_CAL, .chan_list = { { 1, 99, RIG_MTYPE_MEM, NEWCAT_MEM_CAP }, commit 68d4388df290c4dcd7de34a0538960808502ee32 Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 07:42:16 2021 -0600 Fix Yaesu not setting frequency https://github.com/Hamlib/Hamlib/issues/594 diff --git a/rigs/yaesu/newcat.c b/rigs/yaesu/newcat.c index 3445ab14..e69c6223 100644 --- a/rigs/yaesu/newcat.c +++ b/rigs/yaesu/newcat.c @@ -9727,8 +9727,6 @@ int newcat_set_cmd_validate(RIG *rig) RETURNFUNC(-RIG_ENIMPL); } - if (strlen(valcmd) == 0) { return RIG_OK; } - while (rc != RIG_OK && retry++ < retries) { int bytes; @@ -9739,6 +9737,8 @@ int newcat_set_cmd_validate(RIG *rig) if (rc != RIG_OK) { RETURNFUNC(-RIG_EIO); } + if (strlen(valcmd) == 0) { RETURNFUNC(RIG_OK); } + bytes = read_string(&state->rigport, priv->ret_data, sizeof(priv->ret_data), &cat_term, sizeof(cat_term)); diff --git a/rigs/yaesu/newcat.h b/rigs/yaesu/newcat.h index 127ebfbb..19ea6aa0 100644 --- a/rigs/yaesu/newcat.h +++ b/rigs/yaesu/newcat.h @@ -50,7 +50,7 @@ typedef char ncboolean; /* shared function version */ -#define NEWCAT_VER "20210308" +#define NEWCAT_VER "20210309" /* Hopefully large enough for future use, 128 chars plus '\0' */ #define NEWCAT_DATA_LEN 129 ----------------------------------------------------------------------- Summary of changes: rigs/yaesu/ftdx101.c | 25 ++----------------------- rigs/yaesu/ftdx101.h | 17 +++++++++++++++++ rigs/yaesu/ftdx101mp.c | 4 ++-- rigs/yaesu/newcat.c | 4 ++-- rigs/yaesu/newcat.h | 2 +- 5 files changed, 24 insertions(+), 28 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-09 06:01:52
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 59dcb2e9b6f3f38c0749c425a36a58db07413268 (commit) from 3b7760e4d20712315ed65789f80ab73fb8262256 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 59dcb2e9b6f3f38c0749c425a36a58db07413268 Author: Michael Black W9MDB <mdb...@ya...> Date: Tue Mar 9 00:01:05 2021 -0600 Remove RIG_TARGETABLE_PURE as it was not referenced in any rig https://github.com/Hamlib/Hamlib/issues/414 diff --git a/include/hamlib/rig.h b/include/hamlib/rig.h index 17173886..969f77b7 100644 --- a/include/hamlib/rig.h +++ b/include/hamlib/rig.h @@ -468,7 +468,6 @@ typedef unsigned int vfo_t; /* * targetable bitfields, for internal use. - * RIG_TARGETABLE_PURE means a pure targetable radio on every command * In rig.c lack of a flag will case a VFO change if needed * So setting this flag will mean the backend handles any VFO needs * For many rigs RITXIT, PTT, MEM, and BANK are non-VFO commands so need these flags to avoid unnecessary VFO swapping @@ -477,7 +476,7 @@ typedef unsigned int vfo_t; #define RIG_TARGETABLE_NONE 0 #define RIG_TARGETABLE_FREQ (1<<0) #define RIG_TARGETABLE_MODE (1<<1) -#define RIG_TARGETABLE_PURE (1<<2) +//#define RIG_TARGETABLE_PURE (1<<2) // deprecated -- not used -- reuse it #define RIG_TARGETABLE_TONE (1<<3) #define RIG_TARGETABLE_FUNC (1<<4) #define RIG_TARGETABLE_LEVEL (1<<5) diff --git a/src/rig.c b/src/rig.c index e0c9d57d..245fec3d 100644 --- a/src/rig.c +++ b/src/rig.c @@ -3007,9 +3007,8 @@ int HAMLIB_API rig_get_dcd(RIG *rig, vfo_t vfo, dcd_t *dcd) RETURNFUNC(-RIG_ENIMPL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->get_dcd(rig, vfo, dcd)); } @@ -3109,9 +3108,8 @@ int HAMLIB_API rig_set_rptr_shift(RIG *rig, vfo_t vfo, rptr_shift_t rptr_shift) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->set_rptr_shift(rig, vfo, rptr_shift)); } @@ -3177,9 +3175,8 @@ int HAMLIB_API rig_get_rptr_shift(RIG *rig, vfo_t vfo, rptr_shift_t *rptr_shift) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->get_rptr_shift(rig, vfo, rptr_shift)); } @@ -3245,9 +3242,8 @@ int HAMLIB_API rig_set_rptr_offs(RIG *rig, vfo_t vfo, shortfreq_t rptr_offs) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->set_rptr_offs(rig, vfo, rptr_offs)); } @@ -3313,9 +3309,8 @@ int HAMLIB_API rig_get_rptr_offs(RIG *rig, vfo_t vfo, shortfreq_t *rptr_offs) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->get_rptr_offs(rig, vfo, rptr_offs)); } @@ -3378,8 +3373,7 @@ int HAMLIB_API rig_set_split_freq(RIG *rig, vfo_t vfo, freq_t tx_freq) caps = rig->caps; if (caps->set_split_freq - && ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR + && (vfo == RIG_VFO_CURR || vfo == RIG_VFO_TX || vfo == rig->state.current_vfo)) { @@ -3508,8 +3502,7 @@ int HAMLIB_API rig_get_split_freq(RIG *rig, vfo_t vfo, freq_t *tx_freq) caps = rig->caps; if (caps->get_split_freq - && ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR + && (vfo == RIG_VFO_CURR || vfo == RIG_VFO_TX || vfo == rig->state.current_vfo)) { @@ -3637,8 +3630,7 @@ int HAMLIB_API rig_set_split_mode(RIG *rig, caps = rig->caps; if (caps->set_split_mode - && ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR + && (vfo == RIG_VFO_CURR || vfo == RIG_VFO_TX || vfo == rig->state.current_vfo)) { @@ -3747,8 +3739,7 @@ int HAMLIB_API rig_get_split_mode(RIG *rig, vfo_t vfo, rmode_t *tx_mode, caps = rig->caps; if (caps->get_split_mode - && ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR + && (vfo == RIG_VFO_CURR || vfo == RIG_VFO_TX || vfo == rig->state.current_vfo)) { @@ -4006,9 +3997,8 @@ int HAMLIB_API rig_set_split_vfo(RIG *rig, vfo = vfo_fixup(rig, vfo); - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { retcode = caps->set_split_vfo(rig, vfo, split, tx_vfo); @@ -4122,9 +4112,8 @@ int HAMLIB_API rig_get_split_vfo(RIG *rig, /* overridden by backend at will */ *tx_vfo = rig->state.tx_vfo; - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { retcode = caps->get_split_vfo(rig, vfo, split, tx_vfo); rig->state.cache.split = *split; @@ -4479,9 +4468,8 @@ int HAMLIB_API rig_set_ts(RIG *rig, vfo_t vfo, shortfreq_t ts) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->set_ts(rig, vfo, ts)); } @@ -4547,9 +4535,8 @@ int HAMLIB_API rig_get_ts(RIG *rig, vfo_t vfo, shortfreq_t *ts) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->get_ts(rig, vfo, ts)); } @@ -5117,9 +5104,8 @@ int HAMLIB_API rig_vfo_op(RIG *rig, vfo_t vfo, vfo_op_t op) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->vfo_op(rig, vfo, op)); } @@ -5217,9 +5203,8 @@ int HAMLIB_API rig_scan(RIG *rig, vfo_t vfo, scan_t scan, int ch) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->scan(rig, vfo, scan, ch)); } @@ -5285,9 +5270,8 @@ int HAMLIB_API rig_send_dtmf(RIG *rig, vfo_t vfo, const char *digits) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->send_dtmf(rig, vfo, digits)); } @@ -5354,9 +5338,8 @@ int HAMLIB_API rig_recv_dtmf(RIG *rig, vfo_t vfo, char *digits, int *length) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->recv_dtmf(rig, vfo, digits, length)); } @@ -5422,9 +5405,8 @@ int HAMLIB_API rig_send_morse(RIG *rig, vfo_t vfo, const char *msg) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->send_morse(rig, vfo, msg)); } @@ -5481,9 +5463,8 @@ int HAMLIB_API rig_stop_morse(RIG *rig, vfo_t vfo) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->stop_morse(rig, vfo)); } @@ -5572,9 +5553,8 @@ int HAMLIB_API rig_wait_morse(RIG *rig, vfo_t vfo) ENTERFUNC; caps = rig->caps; - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(wait_morse_ptt(rig, vfo)); } @@ -5640,9 +5620,8 @@ int HAMLIB_API rig_send_voice_mem(RIG *rig, vfo_t vfo, int ch) RETURNFUNC(-RIG_ENAVAIL); } - if ((caps->targetable_vfo & RIG_TARGETABLE_PURE) - || vfo == RIG_VFO_CURR - || vfo == rig->state.current_vfo) + if (vfo == RIG_VFO_CURR + || vfo == rig->state.current_vfo) { RETURNFUNC(caps->send_voice_mem(rig, vfo, ch)); } ----------------------------------------------------------------------- Summary of changes: include/hamlib/rig.h | 3 +- src/rig.c | 97 ++++++++++++++++++++-------------------------------- 2 files changed, 39 insertions(+), 61 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-09 05:48:59
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 3b7760e4d20712315ed65789f80ab73fb8262256 (commit) from 79f58bce6f05d514ca8be88f57a750b8f2ed0059 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3b7760e4d20712315ed65789f80ab73fb8262256 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 23:47:41 2021 -0600 Adding hand-coded Makefile.Windows for building DLL https://github.com/Hamlib/Hamlib/issues/542 diff --git a/Makefile.Windows b/Makefile.Windows new file mode 100755 index 00000000..613e7c09 --- /dev/null +++ b/Makefile.Windows @@ -0,0 +1,9710 @@ + + + + + + +<!DOCTYPE html> +<html lang="en" + data-color-mode="light" + data-light-theme="light" + data-dark-theme="dark"> + <head> + <meta charset="utf-8"> + <link rel="dns-prefetch" href="https://github.githubassets.com"> + <link rel="dns-prefetch" href="https://avatars.githubusercontent.com"> + <link rel="dns-prefetch" href="https://github-cloud.s3.amazonaws.com"> + <link rel="dns-prefetch" href="https://user-images.githubusercontent.com/"> + + + + <link crossorigin="anonymous" media="all" integrity="sha512-UdasBeAS0uriwyLr54gKKE8RYxeMfD/ikM+zOIKI7MZjGXwQfM1zha4aFvIxspXkCm2EAxWQC1QNWyu07ku5Ig==" rel="stylesheet" href="https://github.githubassets.com/assets/frameworks-51d6ac05e012d2eae2c322ebe7880a28.css" /> + + <link crossorigin="anonymous" media="all" integrity="sha512-o4J+tBmn3RlwVnhfBv2BySdk2NdgQAoLnJ9/EKw7Uoua6x2ERCXWLLBdx8O6SeZ1kaQtDPjg+ZxMkfFKpQYipQ==" rel="stylesheet" href="https://github.githubassets.com/assets/behaviors-a3827eb419a7dd197056785f06fd81c9.css" /> + + + + <link crossorigin="anonymous" media="all" integrity="sha512-Z/uTO5JrxIlQATq+PIRNjt2OYLkjbq8VtkRTRNrX+b8rd3EIkPIZOA0mD/xYFZ6YVPr3JPL2xg6JXkltIWf08g==" rel="stylesheet" href="https://github.githubassets.com/assets/github-67fb933b926bc48950013abe3c844d8e.css" /> + + <script crossorigin="anonymous" defer="defer" integrity="sha512-8K2vvwbW+6H27Nad5ydg8PA2/aMD/LKq+EiK9s0U0hhVZxCI2tWBsYk9beAtisRw2j+Or5k2/F+6dk02nmj/PA==" type="application/javascript" src="https://github.githubassets.com/assets/environment-f0adafbf.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-3yixvhtA5nOJY+pDcqvBKztKjFwZqklw1mnoaHUlxzLSqT8hc8aJ8KPa+OjVGlOvZAp2prs7kh6cAJFDQBQ1JQ==" type="application/javascript" src="https://github.githubassets.com/assets/chunk-frameworks-df28b1be.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-Bpsh6jNrHD75e3XfQQ+wdo+ky+Ig480DD8OVdZnHZglPO+r5sXnoSvs4In/HaKtH2Di2MVNL7NJFib5zmKrayQ==" type="application/javascript" src="https://github.githubassets.com/assets/chunk-vendor-069b21ea.js"></script> + + <script crossorigin="anonymous" defer="defer" integrity="sha512-TOWq4GrLDl5mgWizcNAEVEOywj4s3Lr0QgDdFUXLept1zNuX1ja/vDsDaU8smKjzepcaDpC+sOiyrx/RL6D04w==" type="application/javascript" src="https://github.githubassets.com/assets/behaviors-4ce5aae0.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-AwxJjNYHMbBW1RDMWqHLbm5ef0HpZqNZm4BU62VDY1R3ClrM8cwzqMGk0YJDgSjC0X3HMnQLUYS8sIcRPYZ3aQ==" type="application/javascript" src="https://github.githubassets.com/assets/primer-030c498c.js"></script> + + <script crossorigin="anonymous" defer="defer" integrity="sha512-MiuFoXnjDmRNVM/xNR9yfPr8Qi8Q6+TKWIrkXp+1QJv9MW8lpBfOy0u7AuVuXQVYKIhsr5DCuCxIs1STWpujLg==" type="application/javascript" data-module-id="./chunk-color-modes.js" data-src="https://github.githubassets.com/assets/chunk-color-modes-322b85a1.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-evfy6RyDyXvLuaEEFaUaIlw9dSRgvKkF3rMeUELkvXq7sGEK/43vTg+3EE6E8nOsjpuPyYQjgS8bxzqkTjlZag==" type="application/javascript" data-module-id="./chunk-contributions-spider-graph.js" data-src="https://github.githubassets.com/assets/chunk-contributions-spider-graph-7af7f2e9.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-obMR8mPKx8OvqRe34LgnUcxeJ1qujiA4ND3H6UX13ExMlA/WfHLjEzXRmgGRcRvN/8J1nzc+Z+jgz/PLTFy6zg==" type="application/javascript" data-module-id="./chunk-drag-drop.js" data-src="https://github.githubassets.com/assets/chunk-drag-drop-a1b311f2.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-cVnIoXzYnuz2SYwsbnuCpTFzvO17cPoQV2mK82+em//c8i7V2L0VEeInplXGgfbx4d8bQGQuPPx0P0BCRfJ37g==" type="application/javascript" data-module-id="./chunk-edit.js" data-src="https://github.githubassets.com/assets/chunk-edit-7159c8a1.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-TGnbT/6B5dxVwEk7iOlwSY9mfqhfq8m05ec+KjdlfEwoieq73iBeyidClQUSmFa2snukwzF9peY8c7FJf9FARA==" type="application/javascript" data-module-id="./chunk-emoji-picker-element.js" data-src="https://github.githubassets.com/assets/chunk-emoji-picker-element-4c69db4f.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-NwYkwzxETzKUYRXumHDsBIuggkh86KmJ1WrwWZW5wTvVPf047+wOmOHI5b4D65bfdtd3WbXJ7k+3ZWoxpIaqcA==" type="application/javascript" data-module-id="./chunk-insights-graph.js" data-src="https://github.githubassets.com/assets/chunk-insights-graph-370624c3.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-ZhHO4yoDkpCF2sJkzsW3BP1RNu9ji9N6KwuBWy03eGOwkHKwBbs5gKizpeyjslAXlWOV4f9HRVN981Du0AfcvQ==" type="application/javascript" data-module-id="./chunk-jump-to.js" data-src="https://github.githubassets.com/assets/chunk-jump-to-6611cee3.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-S8aUo+fRvLif3bA63pJ03RyoYVNFJ7Q+aOmtVVHabaVFMwV1zMdE4HTEewMkbU0ZK2Ik5Q3Ob9/JE+zrNC5qaw==" type="application/javascript" data-module-id="./chunk-profile-pins-element.js" data-src="https://github.githubassets.com/assets/chunk-profile-pins-element-4bc694a3.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-E+H+wAtjiqutBvn2cnXzDIvmasIhYiS7i7JzOfFUwo+Ej8zT54OrJtP//RhwixnypgOpCF4JvqzYy6zOtORDmg==" type="application/javascript" data-module-id="./chunk-runner-groups.js" data-src="https://github.githubassets.com/assets/chunk-runner-groups-13e1fec0.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-U+Pp1bYuA3fRqhike5Go//O/vsExaZLz00lrIby+rZ88yf03nQHz3wLZR9paWkakpD7TH5nS6AUpabCc7OFWpg==" type="application/javascript" data-module-id="./chunk-sortable-behavior.js" data-src="https://github.githubassets.com/assets/chunk-sortable-behavior-53e3e9d5.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-cAsQOq53AtF8bCPWtKuMXOB2Jjt2089fKQQXtk1bNk2ZSBjx2yQOdGZWsXDfWG5H8FmjJzZsepBmOhy+wO7uAQ==" type="application/javascript" data-module-id="./chunk-toast.js" data-src="https://github.githubassets.com/assets/chunk-toast-700b103a.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-QBwrFY4kzAVN0nZmTYJLeEhi5bQ+42rE8h1g384XeZb7n62BykcUICACtaDQ473aIrRf38RSR7WDfNEIVuSlTA==" type="application/javascript" data-module-id="./chunk-tweetsodium.js" data-src="https://github.githubassets.com/assets/chunk-tweetsodium-401c2b15.js"></script> + <script crossorigin="anonymous" defer="defer" integrity="sha512-RfbLfWsDwvP53bQvgbFm/0j3n5N7IuPQ9yyQ1ah3azz9E2KVeo5ujcUGh++d+t49H0EUTKfeAZ+g9PgCVCjErw==" type="application/javascript" data-module-id="./chunk-user-status-submit.js" data-src="https://github.githubassets.com/assets/chunk-user-status-submit-45f6cb7d.js"></script> + + <script crossorigin="anonymous" defer="defer" integrity="sha512-bVgr2gL7DaSaCp/Aev1O/9V1boyT/1FCjRIYcSMOG4AqUvP9e7h3hMvR9LtX0sHt/uTv7Sp1YtF1KMDQm9E6Nw==" type="application/javascript" src="https://github.githubassets.com/assets/repositories-6d582bda.js"></script> +<script crossorigin="anonymous" defer="defer" integrity="sha512-ng+rLwG9JuJBuJQWCGyT4r3VjNUz1FNWKpqbE2zWpJJZHkkwqkYWwJxo5k+PZCuWqUWZxofbuEtLrQnnjIyTqQ==" type="application/javascript" src="https://github.githubassets.com/assets/diffs-9e0fab2f.js"></script> + + <meta name="viewport" content="width=device-width"> + + <title>Hamlib/Makefile.Windows at master · gvanem/Hamlib</title> + <meta name="description" content="Ham radio control library. Now supporting MSVC + clang-cl too. - gvanem/Hamlib"> + <link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="GitHub"> + <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub"> + <meta property="fb:app_id" content="1401488693436528"> + <meta name="apple-itunes-app" content="app-id=1477376905" /> + <meta name="twitter:image:src" content="https://avatars.githubusercontent.com/u/945271?s=400&v=4" /><meta name="twitter:site" content="@github" /><meta name="twitter:card" content="summary" /><meta name="twitter:title" content="gvanem/Hamlib" /><meta name="twitter:description" content="Ham radio control library. Now supporting MSVC + clang-cl too. - gvanem/Hamlib" /> + <meta property="og:image" content="https://avatars.githubusercontent.com/u/945271?s=400&v=4" /><meta property="og:site_name" content="GitHub" /><meta property="og:type" content="object" /><meta property="og:title" content="gvanem/Hamlib" /><meta property="og:url" content="https://github.com/gvanem/Hamlib" /><meta property="og:description" content="Ham radio control library. Now supporting MSVC + clang-cl too. - gvanem/Hamlib" /> + + + + + + <link rel="assets" href="https://github.githubassets.com/"> + <link rel="shared-web-socket" href="wss://alive.github.com/_sockets/u/8899915/ws?session=eyJ2IjoiVjMiLCJ1Ijo4ODk5OTE1LCJzIjo2NTkyOTY0MDMsImMiOjY1NzMwNzA3LCJ0IjoxNjE1MjY4ODExfQ==--2dbf41cfcdcb25546b2110fed5c954965bc58f74c20e0ffc7562ed5293c0d594" data-refresh-url="/_alive"> + <link rel="shared-web-socket-src" href="/socket-worker-5029ae85.js"> + <link rel="sudo-modal" href="/sessions/sudo_modal"> + + <meta name="request-id" content="C514:1DF1:1229255:1FF6538:60470BC3" data-pjax-transient="true" /><meta name="html-safe-nonce" content="a16fbfa9c0f8d7b2045600b8396573a9da1db93ed11f3e8527b3c39012f91b55" data-pjax-transient="true" /><meta name="visitor-payload" content="eyJyZWZlcnJlciI6Imh0dHBzOi8vZ2l0aHViLmNvbS9ndmFuZW0vSGFtbGliL2ZpbmQvbWFzdGVyIiwicmVxdWVzdF9pZCI6IkM1MTQ6MURGMToxMjI5MjU1OjFGRjY1Mzg6NjA0NzBCQzMiLCJ2aXNpdG9yX2lkIjoiMzY4NzI5MTA4Mzc3NzU5MjY2MiIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9" data-pjax-transient="true" /><meta name="visitor-hmac" content="1df62dc27d9095fb012f67844c4106d13cb7354dbe9005128d63378abfac0d56" data-pjax-transient="true" /> + + <meta name="hovercard-subject-tag" content="repository:214546134" data-pjax-transient> + + + <meta name="github-keyboard-shortcuts" content="repository,source-code" data-pjax-transient="true" /> + + + + <meta name="selected-link" value="repo_source" data-pjax-transient> + + <meta name="google-site-verification" content="c1kuD-K2HIVF635lypcsWPoD4kilo5-jA_wBFyT4uMY"> + <meta name="google-site-verification" content="KT5gs8h0wvaagLKAVWq8bbeNwnZZK1r1XQysX3xurLU"> + <meta name="google-site-verification" content="ZzhVyEFwb7w3e0-uOTltm8Jsck2F5StVihD0exw2fsA"> + <meta name="google-site-verification" content="GXs5KoUUkNCoaAZn7wPN-t01Pywp9M3sEjnt_3_ZWPc"> + + <meta name="octolytics-host" content="collector.githubapp.com" /><meta name="octolytics-app-id" content="github" /><meta name="octolytics-event-url" content="https://collector.githubapp.com/github-external/browser_event" /><meta name="octolytics-actor-id" content="8899915" /><meta name="octolytics-actor-login" content="mdblack98" /><meta name="octolytics-actor-hash" content="2eef6ecf973baf7c17cbfff04cda596b4d8d96fb9f2fbaf6d5c1152a38ce2ad3" /> + + <meta name="analytics-location" content="/<user-name>/<repo-name>/blob/show" data-pjax-transient="true" /> + + + + + + <meta name="optimizely-datafile" content="{"version": "4", "rollouts": [], "typedAudiences": [], "anonymizeIP": true, "projectId": "16737760170", "variables": [], "featureFlags": [], "experiments": [{"status": "Running", "audienceIds": [], "variations": [{"variables": [], "id": "19739506060", "key": "en"}, {"variables": [], "id": "19720506378", "key": "pt"}], "id": "19741925936", "key": "homepage_translation", "layerId": "19739776731", "trafficAllocation": [{"entityId": "19720506378", "endOfRange": 5000}, {"entityId": "19739506060", "endOfRange": 10000}], "forcedVariations": {}}], "audiences": [{"conditions": "[\"or\", {\"match\": \"exact\", \"name\": \"$opt_dummy_attribute\", \"type\": \"custom_attribute\", \"value\": \"$opt_dummy_value\"}]", "id": "$opt_dummy_audience", "name": "Optimizely-Generated Audience for Backwards Compatibility"}], "groups": [{"policy": "random", "trafficAllocation": [{"entityId": "20065350824", "endOfRange": 10000}], "experiments": [{"status": "Running", "audienceIds": [], "variations": [{"variables": [], "id": "20061181493", "key": "control"}, {"variables": [], "id": "20046091568", "key": "most_popular"}], "id": "20065350824", "key": "pricing_page", "layerId": "20047761391", "trafficAllocation": [{"entityId": "20061181493", "endOfRange": 5000}, {"entityId": "20046091568", "endOfRange": 10000}], "forcedVariations": {"1693726779.1607624005": "most_popular", "b3d9f4f9910bc46c43a8d65ab83d8570": "most_popular"}}], "id": "19972601768"}], "attributes": [{"id": "16822470375", "key": "user_id"}, {"id": "17143601254", "key": "spammy"}, {"id": "18175660309", "key": "organization_plan"}, {"id": "18813001570", "key": "is_logged_in"}, {"id": "19073851829", "key": "geo"}], "botFiltering": false, "accountId": "16737760170", "events": [{"experimentIds": [], "id": "17911811441", "key": "hydro_click.dashboard.teacher_toolbox_cta"}, {"experimentIds": [], "id": "18124116703", "key": "submit.organizations.complete_sign_up"}, {"experimentIds": [], "id": "18145892387", "key": "no_metric.tracked_outside_of_optimizely"}, {"experimentIds": [], "id": "18178755568", "key": "click.org_onboarding_checklist.add_repo"}, {"experimentIds": [], "id": "18180553241", "key": "submit.repository_imports.create"}, {"experimentIds": [], "id": "18186103728", "key": "click.help.learn_more_about_repository_creation"}, {"experimentIds": [], "id": "18188530140", "key": "test_event.do_not_use_in_production"}, {"experimentIds": [], "id": "18191963644", "key": "click.empty_org_repo_cta.transfer_repository"}, {"experimentIds": [], "id": "18195612788", "key": "click.empty_org_repo_cta.import_repository"}, {"experimentIds": [], "id": "18210945499", "key": "click.org_onboarding_checklist.invite_members"}, {"experimentIds": [], "id": "18211063248", "key": "click.empty_org_repo_cta.create_repository"}, {"experimentIds": [], "id": "18215721889", "key": "click.org_onboarding_checklist.update_profile"}, {"experimentIds": [], "id": "18224360785", "key": "click.org_onboarding_checklist.dismiss"}, {"experimentIds": [], "id": "18234832286", "key": "submit.organization_activation.complete"}, {"experimentIds": [], "id": "18252392383", "key": "submit.org_repository.create"}, {"experimentIds": [], "id": "18257551537", "key": "submit.org_member_invitation.create"}, {"experimentIds": [], "id": "18259522260", "key": "submit.organization_profile.update"}, {"experimentIds": [], "id": "18564603625", "key": "view.classroom_select_organization"}, {"experimentIds": [], "id": "18568612016", "key": "click.classroom_sign_in_click"}, {"experimentIds": [], "id": "18572592540", "key": "view.classroom_name"}, {"experimentIds": [], "id": "18574203855", "key": "click.classroom_create_organization"}, {"experimentIds": [], "id": "18582053415", "key": "click.classroom_select_organization"}, {"experimentIds": [], "id": "18589463420", "key": "click.classroom_create_classroom"}, {"experimentIds": [], "id": "18591323364", "key": "click.classroom_create_first_classroom"}, {"experimentIds": [], "id": "18591652321", "key": "click.classroom_grant_access"}, {"experimentIds": [], "id": "18607131425", "key": "view.classroom_creation"}, {"experimentIds": [], "id": "18831680583", "key": "upgrade_account_plan"}, {"experimentIds": ["20065350824"], "id": "19064064515", "key": "click.signup"}, {"experimentIds": [], "id": "19075373687", "key": "click.view_account_billing_page"}, {"experimentIds": [], "id": "19077355841", "key": "click.dismiss_signup_prompt"}, {"experimentIds": ["20065350824"], "id": "19079713938", "key": "click.contact_sales"}, {"experimentIds": ["20065350824"], "id": "19120963070", "key": "click.compare_account_plans"}, {"experimentIds": ["20065350824"], "id": "19151690317", "key": "click.upgrade_account_cta"}, {"experimentIds": [], "id": "19424193129", "key": "click.open_account_switcher"}, {"experimentIds": [], "id": "19520330825", "key": "click.visit_account_profile"}, {"experimentIds": [], "id": "19540970635", "key": "click.switch_account_context"}, {"experimentIds": ["19741925936"], "id": "19730198868", "key": "submit.homepage_signup"}, {"experimentIds": ["19741925936"], "id": "19820830627", "key": "click.homepage_signup"}, {"experimentIds": ["20065350824"], "id": "19988571001", "key": "click.create_enterprise_trial"}, {"experimentIds": ["20065350824"], "id": "20036538294", "key": "click.create_organization_team"}, {"experimentIds": [], "id": "20040653299", "key": "click.input_enterprise_trial_form"}, {"experimentIds": ["20065350824"], "id": "20062030003", "key": "click.continue_with_team"}, {"experimentIds": ["20065350824"], "id": "20068947153", "key": "click.create_organization_free"}], "revision": "485"}" /> + <!-- To prevent page flashing, the optimizely JS needs to be loaded in the + <head> tag before the DOM renders --> + <script crossorigin="anonymous" defer="defer" integrity="sha512-W1d5sgym3BsWbUe7hCryQNFytsdsH6xKMY0wpid1izznZdSd6hBG7sOj+j6ISmYkoqPonCpkWKp0aG/MGGKRKg==" type="application/javascript" src="https://github.githubassets.com/assets/optimizely-5b5779b2.js"></script> + + + + + + <meta name="hostname" content="github.com"> + <meta name="user-login" content="mdblack98"> + + + <meta name="expected-hostname" content="github.com"> + + <meta name="js-proxy-site-detection-payload" content="ZWI4NjcyODNmYTNiYjA3YjUwYjRjY2MyMzU0OTllMWM5Nzc0ZTA5OWI0ZGQ4MmUzZjA4YTViMTU3Mzk3MTk3ZHx7InJlbW90ZV9hZGRyZXNzIjoiNzUuOTguMTgwLjIyMiIsInJlcXVlc3RfaWQiOiJDNTE0OjFERjE6MTIyOTI1NToxRkY2NTM4OjYwNDcwQkMzIiwidGltZXN0YW1wIjoxNjE1MjY4ODExLCJob3N0IjoiZ2l0aHViLmNvbSJ9"> + + <meta name="enabled-features" content="MARKETPLACE_PENDING_INSTALLATIONS,JS_HTTP_CACHE_HEADERS,AUTOCOMPLETE_EMOJIS_IN_MARKDOWN_EDITOR"> + + <meta http-equiv="x-pjax-version" content="d2e5e3107f226c37aa4375cff20b50a35fecbe433c11a82d0fe1d7d19553ecc3"> + + + <link href="https://github.com/gvanem/Hamlib/commits/master.atom" rel="alternate" title="Recent Commits to Hamlib:master" type="application/atom+xml"> + + <meta name="go-import" content="github.com/gvanem/Hamlib git https://github.com/gvanem/Hamlib.git"> + + <meta name="octolytics-dimension-user_id" content="945271" /><meta name="octolytics-dimension-user_login" content="gvanem" /><meta name="octolytics-dimension-repository_id" content="214546134" /><meta name="octolytics-dimension-repository_nwo" content="gvanem/Hamlib" /><meta name="octolytics-dimension-repository_public" content="true" /><meta name="octolytics-dimension-repository_is_fork" content="true" /><meta name="octolytics-dimension-repository_parent_id" content="99623191" /><meta name="octolytics-dimension-repository_parent_nwo" content="Hamlib/Hamlib" /><meta name="octolytics-dimension-repository_network_root_id" content="99623191" /><meta name="octolytics-dimension-repository_network_root_nwo" content="Hamlib/Hamlib" /> + + + + <link rel="canonical" href="https://github.com/gvanem/Hamlib/blob/master/Makefile.Windows" data-pjax-transient> + + + <meta name="browser-stats-url" content="https://api.github.com/_private/browser/stats"> + + <meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors"> + + <meta name="browser-optimizely-client-errors-url" content="https://api.github.com/_private/browser/optimizely_client/errors"> + + <link rel="mask-icon" href="https://github.githubassets.com/pinned-octocat.svg" color="#000000"> + <link rel="alternate icon" class="js-site-favicon" type="image/png" href="https://github.githubassets.com/favicons/favicon.png"> + <link rel="icon" class="js-site-favicon" type="image/svg+xml" href="https://github.githubassets.com/favicons/favicon.svg"> + +<meta name="theme-color" content="#1e2327"> + <meta name="color-scheme" content="light dark"> + + + <link rel="manifest" href="/manifest.json" crossOrigin="use-credentials"> + + </head> + + <body class="logged-in env-production page-responsive page-blob" style="word-wrap: break-word;"> + + + <div class="position-relative js-header-wrapper "> + <a href="#start-of-content" class="p-3 color-bg-info-inverse color-text-white show-on-focus js-skip-to-content">Skip to content</a> + <span class="progress-pjax-loader width-full js-pjax-loader-bar Progress position-fixed"> + <span style="background-color: #79b8ff;width: 0%;" class="Progress-item progress-pjax-loader-bar "></span> +</span> + + + + <header class="Header js-details-container Details px-3 px-md-4 px-lg-5 flex-wrap flex-md-nowrap" role="banner" > + <div class="Header-item mt-n1 mb-n1 d-none d-md-flex"> + <a class="Header-link " href="https://github.com/" data-hotkey="g d" + aria-label="Homepage " data-ga-click="Header, go to dashboard, icon:logo"> + <svg class="octicon octicon-mark-github v-align-middle" height="32" viewBox="0 0 16 16" version="1.1" width="32" aria-hidden="true"><path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"></path></svg> +</a> + + </div> + + <div class="Header-item d-md-none"> + <button class="Header-link btn-link js-details-target" type="button" aria-label="Toggle navigation" aria-expanded="false"> + <svg height="24" class="octicon octicon-three-bars" viewBox="0 0 16 16" version="1.1" width="24" aria-hidden="true"><path fill-rule="evenodd" d="M1 2.75A.75.75 0 011.75 2h12.5a.75.75 0 110 1.5H1.75A.75.75 0 011 2.75zm0 5A.75.75 0 011.75 7h12.5a.75.75 0 110 1.5H1.75A.75.75 0 011 7.75zM1.75 12a.75.75 0 100 1.5h12.5a.75.75 0 100-1.5H1.75z"></path></svg> + </button> + </div> + + <div class="Header-item Header-item--full flex-column flex-md-row width-full flex-order-2 flex-md-order-none mr-0 mr-md-3 mt-3 mt-md-0 Details-content--hidden-not-important d-md-flex"> + <div class="header-search flex-auto js-site-search position-relative flex-self-stretch flex-md-self-auto mb-3 mb-md-0 mr-0 mr-md-3 scoped-search site-scoped-search js-jump-to" + role="combobox" + aria-owns="jump-to-results" + aria-label="Search or jump to" + aria-haspopup="listbox" + aria-expanded="false" +> + <div class="position-relative"> + <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="js-site-search-form" role="search" aria-label="Site" data-scope-type="Repository" data-scope-id="214546134" data-scoped-search-url="/gvanem/Hamlib/search" data-owner-scoped-search-url="/users/gvanem/search" data-unscoped-search-url="/search" action="/gvanem/Hamlib/search" accept-charset="UTF-8" method="get"> + <label class="form-control input-sm header-search-wrapper p-0 js-chromeless-input-container header-search-wrapper-jump-to position-relative d-flex flex-justify-between flex-items-center"> + <input type="text" + class="form-control input-sm header-search-input jump-to-field js-jump-to-field js-site-search-focus js-site-search-field is-clearable" + data-hotkey="s,/" + name="q" + value="" + placeholder="Search or jump to…" + data-unscoped-placeholder="Search or jump to…" + data-scoped-placeholder="Search or jump to…" + autocapitalize="off" + aria-autocomplete="list" + aria-controls="jump-to-results" + aria-label="Search or jump to…" + data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations" + spellcheck="false" + autocomplete="off" + > + <input type="hidden" value="Fi1hNmlXn5va3qASgDmTgGU0fDdf1q4FpKUUYZCB91EDG9fRVZEX5BkhEuBFMlgV6O8NqKfPiXt3EJTBVJsXuQ==" data-csrf="true" class="js-data-jump-to-suggestions-path-csrf" /> + <input type="hidden" class="js-site-search-type-field" name="type" > + <img src="https://github.githubassets.com/images/search-key-slash.svg" alt="" class="mr-2 header-search-key-slash"> + + <div class="Box position-absolute overflow-hidden d-none jump-to-suggestions js-jump-to-suggestions-container"> + +<ul class="d-none js-jump-to-suggestions-template-container"> + + +<li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-suggestion" role="option"> + <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="suggestion"> + <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> + <svg height="16" width="16" class="octicon octicon-repo flex-shrink-0 js-jump-to-octicon-repo d-none" title="Repository" aria-label="Repository" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path></svg> + <svg height="16" width="16" class="octicon octicon-project flex-shrink-0 js-jump-to-octicon-project d-none" title="Project" aria-label="Project" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path></svg> + <svg height="16" width="16" class="octicon octicon-search flex-shrink-0 js-jump-to-octicon-search d-none" title="Search" aria-label="Search" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path></svg> + </div> + + <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28"> + + <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> + </div> + + <div class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none js-jump-to-badge-search"> + <span class="js-jump-to-badge-search-text-default d-none" aria-label="in this repository"> + In this repository + </span> + <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> + All GitHub + </span> + <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> + </div> + + <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> + Jump to + <span class="d-inline-block ml-1 v-align-middle">↵</span> + </div> + </a> +</li> + +</ul> + +<ul class="d-none js-jump-to-no-results-template-container"> + <li class="d-flex flex-justify-center flex-items-center f5 d-none js-jump-to-suggestion p-2"> + <span class="color-text-secondary">No suggested jump to results</span> + </li> +</ul> + +<ul id="jump-to-results" role="listbox" class="p-0 m-0 js-navigation-container jump-to-suggestions-results-container js-jump-to-suggestions-results-container"> + + +<li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-scoped-search d-none" role="option"> + <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="scoped_search"> + <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> + <svg height="16" width="16" class="octicon octicon-repo flex-shrink-0 js-jump-to-octicon-repo d-none" title="Repository" aria-label="Repository" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path></svg> + <svg height="16" width="16" class="octicon octicon-project flex-shrink-0 js-jump-to-octicon-project d-none" title="Project" aria-label="Project" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path></svg> + <svg height="16" width="16" class="octicon octicon-search flex-shrink-0 js-jump-to-octicon-search d-none" title="Search" aria-label="Search" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path></svg> + </div> + + <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28"> + + <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> + </div> + + <div class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none js-jump-to-badge-search"> + <span class="js-jump-to-badge-search-text-default d-none" aria-label="in this repository"> + In this repository + </span> + <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> + All GitHub + </span> + <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> + </div> + + <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> + Jump to + <span class="d-inline-block ml-1 v-align-middle">↵</span> + </div> + </a> +</li> + + + +<li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-owner-scoped-search d-none" role="option"> + <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="owner_scoped_search"> + <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> + <svg height="16" width="16" class="octicon octicon-repo flex-shrink-0 js-jump-to-octicon-repo d-none" title="Repository" aria-label="Repository" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path></svg> + <svg height="16" width="16" class="octicon octicon-project flex-shrink-0 js-jump-to-octicon-project d-none" title="Project" aria-label="Project" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path></svg> + <svg height="16" width="16" class="octicon octicon-search flex-shrink-0 js-jump-to-octicon-search d-none" title="Search" aria-label="Search" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path></svg> + </div> + + <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28"> + + <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> + </div> + + <div class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none js-jump-to-badge-search"> + <span class="js-jump-to-badge-search-text-default d-none" aria-label="in this user"> + In this user + </span> + <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> + All GitHub + </span> + <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> + </div> + + <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> + Jump to + <span class="d-inline-block ml-1 v-align-middle">↵</span> + </div> + </a> +</li> + + + +<li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-global-search d-none" role="option"> + <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="global_search"> + <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> + <svg height="16" width="16" class="octicon octicon-repo flex-shrink-0 js-jump-to-octicon-repo d-none" title="Repository" aria-label="Repository" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path></svg> + <svg height="16" width="16" class="octicon octicon-project flex-shrink-0 js-jump-to-octicon-project d-none" title="Project" aria-label="Project" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path></svg> + <svg height="16" width="16" class="octicon octicon-search flex-shrink-0 js-jump-to-octicon-search d-none" title="Search" aria-label="Search" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path></svg> + </div> + + <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28"> + + <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> + </div> + + <div class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none js-jump-to-badge-search"> + <span class="js-jump-to-badge-search-text-default d-none" aria-label="in this repository"> + In this repository + </span> + <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> + All GitHub + </span> + <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> + </div> + + <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> + Jump to + <span class="d-inline-block ml-1 v-align-middle">↵</span> + </div> + </a> +</li> + + + <li class="d-flex flex-justify-center flex-items-center p-0 f5 js-jump-to-suggestion"> + <svg style="box-sizing: content-box; color: var(--color-icon-primary);" viewBox="0 0 16 16" fill="none" width="32" height="32" class="m-3"> + <circle cx="8" cy="8" r="7" stroke="currentColor" stroke-opacity="0.25" stroke-width="2" vector-effect="non-scaling-stroke" /> + <path d="M15 8a7.002 7.002 0 00-7-7" stroke="currentColor" stroke-width="2" stroke-linecap="round" vector-effect="non-scaling-stroke"> + <animateTransform attributeName="transform" type="rotate" from="0 8 8" to="360 8 8" dur="1s" repeatCount="indefinite" /> + </path> +</svg> + </li> +</ul> + + </div> + </label> +</form> </div> +</div> + + <nav class="d-flex flex-column flex-md-row flex-self-stretch flex-md-self-auto" aria-label="Global"> + <a class="Header-link py-md-3 d-block d-md-none py-2 border-top border-md-top-0 border-white-fade-15" data-ga-click="Header, click, Nav menu - item:dashboard:user" aria-label="Dashboard" href="/dashboard"> + Dashboard +</a> + <a class="js-selected-navigation-item Header-link mt-md-n3 mb-md-n3 py-2 py-md-3 mr-0 mr-md-3 border-top border-md-top-0 border-white-fade-15" data-hotkey="g p" data-ga-click="Header, click, Nav menu - item:pulls context:user" aria-label="Pull requests you created" data-selected-links="/pulls /pulls/assigned /pulls/mentioned /pulls" href="/pulls"> + Pull<span class="d-inline d-md-none d-lg-inline"> request</span>s +</a> + <a class="js-selected-navigation-item Header-link mt-md-n3 mb-md-n3 py-2 py-md-3 mr-0 mr-md-3 border-top border-md-top-0 border-white-fade-15" data-hotkey="g i" data-ga-click="Header, click, Nav menu - item:issues context:user" aria-label="Issues you created" data-selected-links="/issues /issues/assigned /issues/mentioned /issues" href="/issues"> + Issues +</a> + <div class="d-flex position-relative"> + <a class="js-selected-navigation-item Header-link flex-auto mt-md-n3 mb-md-n3 py-2 py-md-3 mr-0 mr-md-3 border-top border-md-top-0 border-white-fade-15" data-ga-click="Header, click, Nav menu - item:marketplace context:user" data-octo-click="marketplace_click" data-octo-dimensions="location:nav_bar" data-selected-links=" /marketplace" href="/marketplace"> + Marketplace +</a> </div> + + <a class="js-selected-navigation-item Header-link mt-md-n3 mb-md-n3 py-2 py-md-3 mr-0 mr-md-3 border-top border-md-top-0 border-white-fade-15" data-ga-click="Header, click, Nav menu - item:explore" data-selected-links="/explore /trending /trending/developers /integrations /integrations/feature/code /integrations/feature/collaborate /integrations/feature/ship showcases showcases_search showcases_landing /explore" href="/explore"> + Explore +</a> + + + <a class="Header-link d-block d-md-none mr-0 mr-md-3 py-2 py-md-3 border-top border-md-top-0 border-white-fade-15" href="/settings/profile"> + Settings +</a> + <a class="Header-link d-block d-md-none mr-0 mr-md-3 py-2 py-md-3 border-top border-md-top-0 border-white-fade-15" href="/mdblack98"> + <img class="avatar avatar-user" src="https://avatars.githubusercontent.com/u/8899915?s=40&v=4" width="20" height="20" alt="@mdblack98" /> + mdblack98 +</a> + <!-- '"` --><!-- </textarea></xmp> --></option></form><form action="/logout" accept-charset="UTF-8" method="post"><input type="hidden" name="authenticity_token" value="9foGPRdxEveHneeQVtI8xd5LVt8Dh1+39avT3/JDQMwiYXP2s7Dr/VLdZoE6TWaKejYHequAiJX+iDBxacIpYw==" /> + <button type="submit" class="Header-link mr-0 mr-md-3 py-2 py-md-3 border-top border-md-top-0 border-white-fade-15 d-md-none btn-link d-block width-full text-left" data-ga-click="Header, sign out, icon:logout" style="padding-left: 2px;"> + <svg class="octicon octicon-sign-out v-align-middle" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M2 2.75C2 1.784 2.784 1 3.75 1h2.5a.75.75 0 010 1.5h-2.5a.25.25 0 00-.25.25v10.5c0 .138.112.25.25.25h2.5a.75.75 0 010 1.5h-2.5A1.75 1.75 0 012 13.25V2.75zm10.44 4.5H6.75a.75.75 0 000 1.5h5.69l-1.97 1.97a.75.75 0 101.06 1.06l3.25-3.25a.75.75 0 000-1.06l-3.25-3.25a.75.75 0 10-1.06 1.06l1.97 1.97z"></path></svg> + Sign out + </button> +</form></nav> + + </div> + + <div class="Header-item Header-item--full flex-justify-center d-md-none position-relative"> + <a class="Header-link " href="https://github.com/" data-hotkey="g d" + aria-label="Homepage " data-ga-click="Header, go to dashboard, icon:logo"> + <svg class="octicon octicon-mark-github v-align-middle" height="32" viewBox="0 0 16 16" version="1.1" width="32" aria-hidden="true"><path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"></path></svg> +</a> + + </div> + + <div class="Header-item mr-0 mr-md-3 flex-order-1 flex-md-order-none"> + + + <notification-indicator class="js-socket-channel" data-channel="eyJjIjoibm90aWZpY2F0aW9uLWNoYW5nZWQ6ODg5OTkxNSIsInQiOjE2MTUyNjg4MTF9--ce66062df797ddca471dd58aebebccda74f6b42568a5ef2aa5076b59d88ede40"> + <a href="/notifications" + class="Header-link notification-indicator position-relative tooltipped tooltipped-sw" + + aria-label="You have no unread notifications" + data-hotkey="g n" + data-ga-click="Header, go to notifications, icon:read" + data-target="notification-indicator.link"> + <span class="mail-status " data-target="notification-indicator.modifier"></span> + <svg class="octicon octicon-bell" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path d="M8 16a2 2 0 001.985-1.75c.017-.137-.097-.25-.235-.25h-3.5c-.138 0-.252.113-.235.25A2 2 0 008 16z"></path><path fill-rule="evenodd" d="M8 1.5A3.5 3.5 0 004.5 5v2.947c0 .346-.102.683-.294.97l-1.703 2.556a.018.018 0 00-.003.01l.001.006c0 .002.002.004.004.006a.017.017 0 00.006.004l.007.001h10.964l.007-.001a.016.016 0 00.006-.004.016.016 0 00.004-.006l.001-.007a.017.017 0 00-.003-.01l-1.703-2.554a1.75 1.75 0 01-.294-.97V5A3.5 3.5 0 008 1.5zM3 5a5 5 0 0110 0v2.947c0 .05.015.098.042.139l1.703 2.555A1.518 1.518 0 0113.482 13H2.518a1.518 1.518 0 01-1.263-2.36l1.703-2.554A.25.25 0 003 7.947V5z"></path></svg> + </a> + </notification-indicator> + + </div> + + + <div class="Header-item position-relative d-none d-md-flex"> + <details class="details-overlay details-reset"> + <summary class="Header-link" + aria-label="Create new…" + data-ga-click="Header, create new, icon:add"> + <svg class="octicon octicon-plus" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.75 2a.75.75 0 01.75.75V7h4.25a.75.75 0 110 1.5H8.5v4.25a.75.75 0 11-1.5 0V8.5H2.75a.75.75 0 010-1.5H7V2.75A.75.75 0 017.75 2z"></path></svg> <span class="dropdown-caret"></span> + </summary> + <details-menu class="dropdown-menu dropdown-menu-sw"> + +<a role="menuitem" class="dropdown-item" href="/new" data-ga-click="Header, create new repository"> + New repository +</a> + + <a role="menuitem" class="dropdown-item" href="/new/import" data-ga-click="Header, import a repository"> + Import repository + </a> + +<a role="menuitem" class="dropdown-item" href="https://gist.github.com/" data-ga-click="Header, create new gist"> + New gist +</a> + + <a role="menuitem" class="dropdown-item" href="/organizations/new" data-ga-click="Header, create new organization"> + New organization + </a> + + + + <a role="menuitem" class="dropdown-item" href="/new/project" data-ga-click="Header, create new project"> + New project + </a> + + </details-menu> +</details> + + </div> + + <div class="Header-item position-relative mr-0 d-none d-md-flex"> + + <details class="details-overlay details-reset js-feature-preview-indicator-container" data-feature-preview-indicator-src="/users/mdblack98/feature_preview/indicator_check"> + + <summary class="Header-link" + aria-label="View profile and more" + data-ga-click="Header, show menu, icon:avatar"> + <img src="https://avatars.githubusercontent.com/u/8899915?s=60&v=4" alt="@mdblack98" size="20" height="20" width="20" class="avatar-user avatar avatar--small "></img> + <span class="feature-preview-indicator js-feature-preview-indicator" style="top: 1px;" hidden></span> + <span class="dropdown-caret"></span> + </summary> + <details-menu class="dropdown-menu dropdown-menu-sw" style="width: 180px" + src="/users/8899915/menu" preload> + <include-fragment> + <p class="text-center mt-3" data-hide-on-error> + <svg style="box-sizing: content-box; color: var(--color-icon-primary);" viewBox="0 0 16 16" fill="none" width="32" height="32"> + <circle cx="8" cy="8" r="7" stroke="currentColor" stroke-opacity="0.25" stroke-width="2" vector-effect="non-scaling-stroke" /> + <path d="M15 8a7.002 7.002 0 00-7-7" stroke="currentColor" stroke-width="2" stroke-linecap="round" vector-effect="non-scaling-stroke"> + <animateTransform attributeName="transform" type="rotate" from="0 8 8" to="360 8 8" dur="1s" repeatCount="indefinite" /> + </path> +</svg> + </p> + <p class="ml-1 mb-2 mt-2 color-text-primary" data-show-on-error> + <svg class="octicon octicon-alert" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.22 1.754a.25.25 0 00-.44 0L1.698 13.132a.25.25 0 00.22.368h12.164a.25.25 0 00.22-.368L8.22 1.754zm-1.763-.707c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0114.082 15H1.918a1.75 1.75 0 01-1.543-2.575L6.457 1.047zM9 11a1 1 0 11-2 0 1 1 0 012 0zm-.25-5.25a.75.75 0 00-1.5 0v2.5a.75.75 0 001.5 0v-2.5z"></path></svg> + Sorry, something went wrong. + </p> + </include-fragment> + </details-menu> +</details> + + </div> +</header> + + + </div> + + <div id="start-of-content" class="show-on-focus"></div> + + + + + + <div data-pjax-replace id="js-flash-container"> + + + <template class="js-flash-template"> + <div class="flash flash-full {{ className }}"> + <div class=" px-2" > + <button class="flash-close js-flash-close" type="button" aria-label="Dismiss this message"> + <svg class="octicon octicon-x" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"></path></svg> + </button> + + <div>{{ message }}</div> + + </div> +</div> + </template> +</div> + + + + + <include-fragment class="js-notification-shelf-include-fragment" data-base-src="https://github.com/notifications/beta/shelf"></include-fragment> + + + + + <div + class="application-main " + data-commit-hovercards-enabled + data-discussion-hovercards-enabled + data-issue-and-pr-hovercards-enabled + > + <div itemscope itemtype="http://schema.org/SoftwareSourceCode" class=""> + <main id="js-repo-pjax-container" data-pjax-container > + + + + + <div class="border-bottom shelf intro-shelf js-notice mb-0 pb-4"> + <div class="width-full container"> + <div class="width-full mx-auto shelf-content"> + <h2 class="shelf-title">Learn Git and GitHub without any code!</h2> + <p class="shelf-lead"> + Using the Hello World guide, you’ll start a branch, write comments, and open a pull request. + </p> + <a class="btn btn-primary shelf-cta" target="_blank" data-hydro-click="{"event_type":"repository.click","payload":{"target":"READ_GUIDE","repository_id":214546134,"originating_url":"https://github.com/gvanem/Hamlib/blob/master/Makefile.Windows","user_id":8899915}}" data-hydro-click-hmac="dcb27ecd85d26105b2709209a04bf0a983894a20e960c52a8f1005a82222d23a" href="https://guides.github.com/activities/hello-world/">Read the guide</a> + </div> + <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="shelf-dismiss js-notice-dismiss" action="/dashboard/dismiss_bootcamp" accept-charset="UTF-8" method="post"><input type="hidden" name="_method" value="delete" /><input type="hidden" name="authenticity_token" value="rWUm8sYzausueMap6qqUuVszTTW6yXZyif1jxLdXeuiHf9mon+lnIoHv6S4dlJOeSSnqFSs8Jq7LJpkeRxkf3Q==" /> + <button name="button" type="submit" class="mr-1 close-button tooltipped tooltipped-w" aria-label="Hide this notice forever" data-hydro-click="{"event_type":"repository.click","payload":{"target":"DISMISS_BANNER","repository_id":214546134,"originating_url":"https://github.com/gvanem/Hamlib/blob/master/Makefile.Windows","user_id":8899915}}" data-hydro-click-hmac="17f45baf6d674ba049a53da04c5a40e8609562b10c644a3f7504e6ca1d0f3262"> + <svg aria-label="Hide this notice forever" class="octicon octicon-x v-align-text-top" viewBox="0 0 16 16" version="1.1" width="16" height="16" role="img"><path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"></path></svg> +</button></form> </div> +</div> + + + + + + + + + + <div class="color-bg-secondary pt-3 hide-full-screen mb-5"> + + <div class="d-flex mb-3 px-3 px-md-4 px-lg-5"> + + <div class="flex-auto min-width-0 width-fit mr-3"> + <h1 class=" d-flex flex-wrap flex-items-center break-word f3 text-normal"> + <svg class="octicon octicon-repo-forked color-text-secondary mr-2" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M5 3.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm0 2.122a2.25 2.25 0 10-1.5 0v.878A2.25 2.25 0 005.75 8.5h1.5v2.128a2.251 2.251 0 101.5 0V8.5h1.5a2.25 2.25 0 002.25-2.25v-.878a2.25 2.25 0 10-1.5 0v.878a.75.75 0 01-.75.75h-4.5A.75.75 0 015 6.25v-.878zm3.75 7.378a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm3-8.75a.75.75 0 100-1.5.75.75 0 000 1.5z"></path></svg> + <span class="author flex-self-stretch" itemprop="author"> + <a class="url fn" rel="author" data-hovercard-type="user" data-hovercard-url="/users/gvanem/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="/gvanem">gvanem</a> + </span> + <span class="mx-1 flex-self-stretch color-text-secondary">/</span> + <strong itemprop="name" class="mr-2 flex-self-stretch"> + <a data-pjax="#js-repo-pjax-container" class="" href="/gvanem/Hamlib">Hamlib</a> + </strong> + +</h1> + + <span class="text-small lh-condensed-ultra no-wrap mt-1" data-repository-hovercards-enabled> + forked from <a data-hovercard-type="repository" data-hovercard-url="/Hamlib/Hamlib/hovercard" href="/Hamlib/Hamlib">Hamlib/Hamlib</a> + </span> + + </div> + + <ul class="pagehead-actions flex-shrink-0 d-none d-md-inline" style="padding: 2px 0;"> + + <li> + <notifications-list-subscription-form class="f5 position-relative d-flex"> + <details + class="details-reset details-overlay f5 position-relative" + data-target="notifications-list-subscription-form.details" + data-action="toggle:notifications-list-subscription-form#detailsToggled" + > + + <summary class="btn btn-sm rounded-right-0" data-hydro-click="{"event_type":"repository.click","payload":{"target":"WATCH_BUTTON","repository_id":214546134,"originating_url":"https://github.com/gvanem/Hamlib/blob/master/Makefile.Windows","user_id":8899915}}" data-hydro-click-hmac="2776c8edaad130317e2984ea2c05aa310d9d697c632e53ab465f41445603d8a5" data-ga-click="Repository, click Watch settings, action:blob#show" aria-label="Notifications settings"> + <span data-menu-button> + <span + hidden + + data-target="notifications-list-subscription-form.unwatchButtonCopy" + > + <svg class="octicon octicon-eye" height="16" viewBox="0 0 16 16" version="1.1" width="16" aria-hidden="true"><path fill-rule="evenodd" d="M1.679 7.932c.412-.621 1.242-1.75 2.366-2.717C5.175 4.242 6.527 3.5 8 3.5c1.473 0 2.824.742 3.955 1.715 1.124.967 1.954 2.096 2.366 2.717a.119.119 0 010 .136c-.412.621-1.242 1.75-2.366 2.717C10.825 11.758 9.473 12.5 8 12.5c-1.473 0-2.824-.742-3.955-1.715C2.92 9.818 2.09 8.69 1.679 8.068a.119.119 0 010-.136zM8 2c-1.981 0-3.67.992-4.933 2.078C1.797 5.169.88 6.423.43 7.1a1.619 1.619 0 000 1.798c.45.678 1.367 1.932 2.637 3.024C4.329 13.008 6.019 14 8 14c1.981 0 3.67-.992 4.933-2.078 1.27-1.091 2.187-2.345 2.637-3.023a1.619 1.619 0 000-1.798c-.45-.678-1.367-1.932-2.637-3.023C11.671 2.992 9.981 2 8 2zm0 8a2 2 0 100-4 2 2 0 000 4z"></path></svg> + Unwatch + </span> + <span + hidden + + data-target="notifications-list-subscription-form.stopIgnoringButtonCopy" + > + <svg class="octicon octicon-bell-slash" height="16" viewBox="0 0 16 16" version="1.1" width="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 1.5c-.997 0-1.895.416-2.534 1.086A.75.75 0 014.38 1.55 5 5 0 0113 5v2.373a.75.75 0 01-1.5 0V5A3.5 3.5 0 008 1.5zM4.182 4.31L1.19 2.143a.75.75 0 10-.88 1.214L3 5.305v2.642a.25.25 0 01-.042.139L1.255 10.64A1.518 1.518 0 002.518 13h11.108l1.184.857a.75.75 0 10.88-1.214l-1.375-.996a1.196 1.196 0 00-.013-.01L4.198 4.321a.733.733 0 00-.016-.011zm7.373 7.19L4.5 6.391v1.556c0 .346-.102.683-.294.97l-1.703 2.556a.018.018 0 00-.003.01.015.015 0 00.005.012.017.017 0 00.006.004l.007.001h9.037zM8 16a2 2 0 001.985-1.75c.017-.137-.097-.25-.235-.25h-3.5c-.138 0-.252.113-.235.25A2 2 0 008 16z"></path></svg> + ... [truncated message content] |
From: Michael B. <mdb...@us...> - 2021-03-09 05:43:54
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 79f58bce6f05d514ca8be88f57a750b8f2ed0059 (commit) from 0f0705d014d4e400761bd5d275e7c9ab1b374380 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 79f58bce6f05d514ca8be88f57a750b8f2ed0059 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 23:42:35 2021 -0600 Finish rig_get_vfo_list and \get_vfo_list https://github.com/Hamlib/Hamlib/issues/577 diff --git a/src/rig.c b/src/rig.c index dd77e10c..e0c9d57d 100644 --- a/src/rig.c +++ b/src/rig.c @@ -5817,15 +5817,12 @@ int HAMLIB_API rig_get_vfo_list(RIG *rig, char *buf, int buflen) { ENTERFUNC; - // to be completed if (CHECK_RIG_ARG(rig)) { RETURNFUNC(-RIG_EINVAL); } - char s[256]; - rig_sprintf_vfo(s, sizeof(s), rig->state.vfo_list); - + rig_sprintf_vfo(buf, buflen - 1, rig->state.vfo_list); RETURNFUNC(RIG_OK); } ----------------------------------------------------------------------- Summary of changes: src/rig.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-09 05:30:55
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 0f0705d014d4e400761bd5d275e7c9ab1b374380 (commit) via 5bebf5ad45cec1a4074d342b7190290066530f8c (commit) from c13624add0f0dcaffa55a99cb55695bcb8ab68fb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 0f0705d014d4e400761bd5d275e7c9ab1b374380 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 23:26:44 2021 -0600 Fix python binding for future deprecation of distutils.sysconfig Hopefully works on MacOS Also hopefully works on python2 https://github.com/Hamlib/Hamlib/issues/477 diff --git a/bindings/Makefile.am b/bindings/Makefile.am index b01407a8..5e4f81f7 100644 --- a/bindings/Makefile.am +++ b/bindings/Makefile.am @@ -3,7 +3,7 @@ # more information on swig at http://www.swig.org # -AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(top_srcdir)/bindings $(PYTHON_CPPFLAGS) \ +AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(top_srcdir)/include -I$(top_srcdir)/bindings \ $(TCL_INCLUDE_SPEC) AM_CFLAGS = -fno-strict-aliasing diff --git a/bindings/ignore.swg b/bindings/ignore.swg index abc48022..37d6c96d 100644 --- a/bindings/ignore.swg +++ b/bindings/ignore.swg @@ -194,6 +194,7 @@ %ignore rig_passband_normal; %ignore rig_passband_narrow; %ignore rig_passband_wide; +%ignore rig_get_vfo_info; %ignore rot_open; %ignore rot_close; diff --git a/bindings/py3test.py b/bindings/py3test.py index 1c8d2789..5a31cd1b 100755 --- a/bindings/py3test.py +++ b/bindings/py3test.py @@ -39,7 +39,7 @@ def StartUp(): print("freq:\t\t\t%s" % my_rig.get_freq()) my_rig.set_freq(Hamlib.RIG_VFO_A, 145550000) - (mode, width) = my_rig.get_mode() + (mode, width) = my_rig.get_mode(Hamlib.RIG_VFO_A) print("mode:\t\t\t%s\nbandwidth:\t\t%s" % (Hamlib.rig_strrmode(mode), width)) @@ -83,6 +83,9 @@ def StartUp(): print("get_channel status:\t%s" % my_rig.error_status) print("VFO:\t\t\t%s, %s" % (Hamlib.rig_strvfo(chan.vfo), chan.freq)) print("Attenuators:\t\t%s" % my_rig.caps.attenuator) + # Can't seem to get get_vfo_info to work + #(freq, width, mode, split) = my_rig.get_vfo_info(Hamlib.RIG_VFO_A,freq,width,mode,split) + #print("Rig vfo_info:\t\tfreq=%s, mode=%s, width=%s, split=%s" % (freq, mode, width, split)) print("\nSending Morse, '73'") my_rig.send_morse(Hamlib.RIG_VFO_A, "73") diff --git a/bindings/rig.swg b/bindings/rig.swg index 19f5be1d..0d1c05fd 100644 --- a/bindings/rig.swg +++ b/bindings/rig.swg @@ -70,6 +70,10 @@ typedef channel_t * const_channel_t_p; { self->error_status = rig_##f(self->rig _VFO_ARG, _##t1); } #define METHOD3_INIT(f, t1, t2, t3, i3) void f (t1 _##t1##_1, t2 _##t2##_2, t3 _##t3##_3 = i3 _VFO_DECL) \ { self->error_status = rig_##f(self->rig _VFO_ARG, _##t1##_1, _##t2##_2, _##t3##_3); } +#define METHOD4(f, t1) void f ( vfo_t vfo, t1 _##t1) \ + { self->error_status = rig_##f(self->rig _VFO_ARG, _##t1); } +#define METHOD4_INIT(f, t1, t2, t3, t4, i4) void f (t1 _##t1##_1, t2 _##t2##_2, t3 _##t3##_3, ##t4##_4 = i4 _VFO_DECL) \ + { self->error_status = rig_##f(self->rig _VFO_ARG, _##t1##_1, _##t2##_2, _##t3##_3 _##t4##_4); } /* * declare wrapper method with one output argument besides RIG* (no target vfo) */ @@ -445,6 +449,7 @@ typedef channel_t * const_channel_t_p; METHOD1VGET(get_xit, shortfreq_t) METHOD1VGET(get_ts, shortfreq_t) extern void get_ant(ant_t *ant_rx, ant_t *ant_tx, ant_t *ant_curr, value_t * OUTPUT, ant_t ant, vfo_t vfo = RIG_VFO_CURR); + extern void get_vfo_info (split_t *split, pbwidth_t *width, rmode_t *mode, freq_t *freq, vfo_t vfo = RIG_VFO_CURR); METHOD1VGET(get_mem, int) METHOD1GET(get_powerstat, powerstat_t) METHOD1GET(get_trn, int) @@ -600,6 +605,11 @@ void Rig_get_ant(Rig *self, ant_t *ant_rx, ant_t *ant_tx, ant_t *ant_curr, value { self->error_status = rig_get_ant(self->rig, vfo, ant, option, ant_curr, ant_tx, ant_rx); } +void Rig_get_vfo_info (Rig *self, split_t *split, pbwidth_t *width, rmode_t *mode, freq_t *freq, vfo_t vfo) +{ + self->error_status = rig_get_vfo_info(self->rig, vfo, freq, mode, width, split); +} + struct channel *Rig_get_chan_all(Rig *self) { @@ -618,4 +628,5 @@ struct channel *Rig_get_chan_all(Rig *self) return chans; } + %} diff --git a/include/hamlib/rig.h b/include/hamlib/rig.h index 5a892f73..17173886 100644 --- a/include/hamlib/rig.h +++ b/include/hamlib/rig.h @@ -2339,11 +2339,9 @@ extern HAMLIB_EXPORT(int) rig_get_vfo HAMLIB_PARAMS((RIG *rig, vfo_t *vfo)); -#if 0 extern HAMLIB_EXPORT(int) rig_get_vfo_info HAMLIB_PARAMS((RIG *rig, vfo_t vfo, freq_t *freq, rmode_t *mode, pbwidth_t *width, split_t *split)); -#endif extern HAMLIB_EXPORT(int) rig_get_vfo_list HAMLIB_PARAMS((RIG *rig, char *buf, int buflen)); commit 5bebf5ad45cec1a4074d342b7190290066530f8c Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 23:25:37 2021 -0600 Update flrig.h version diff --git a/rigs/dummy/flrig.h b/rigs/dummy/flrig.h index cb8908e5..78eec490 100644 --- a/rigs/dummy/flrig.h +++ b/rigs/dummy/flrig.h @@ -28,7 +28,7 @@ #include <sys/time.h> #endif -#define BACKEND_VER "20210306" +#define BACKEND_VER "20210308" #define EOM "\r" #define TRUE 1 ----------------------------------------------------------------------- Summary of changes: bindings/Makefile.am | 2 +- bindings/ignore.swg | 1 + bindings/py3test.py | 5 ++++- bindings/rig.swg | 11 +++++++++++ include/hamlib/rig.h | 2 -- rigs/dummy/flrig.h | 2 +- 6 files changed, 18 insertions(+), 5 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-08 23:29:07
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via c13624add0f0dcaffa55a99cb55695bcb8ab68fb (commit) from 207f28b2569888b0fa5a7da53f380f13f51e452b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit c13624add0f0dcaffa55a99cb55695bcb8ab68fb Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 17:20:15 2021 -0600 Fix flrig_set_split_freq_mode to allow set_freq but not set_mode during PTT https://github.com/Hamlib/Hamlib/issues/593 diff --git a/rigs/dummy/flrig.c b/rigs/dummy/flrig.c index 9556b19d..203ef8e2 100644 --- a/rigs/dummy/flrig.c +++ b/rigs/dummy/flrig.c @@ -1861,12 +1861,6 @@ static int flrig_set_split_freq_mode(RIG *rig, vfo_t vfo, freq_t freq, RETURNFUNC(-RIG_ENTARGET); } - if (priv->ptt) - { - rig_debug(RIG_DEBUG_WARN, "%s call not made as PTT=1\n", __func__); - RETURNFUNC(RIG_OK); // just return OK and ignore this - } - retval = flrig_set_freq(rig, RIG_VFO_B, freq); if (retval != RIG_OK) @@ -1882,6 +1876,12 @@ static int flrig_set_split_freq_mode(RIG *rig, vfo_t vfo, freq_t freq, if (qmode == priv->curr_modeA) { RETURNFUNC(RIG_OK); } + if (priv->ptt) + { + rig_debug(RIG_DEBUG_WARN, "%s set_mode call not made as PTT=1\n", __func__); + RETURNFUNC(RIG_OK); // just return OK and ignore this + } + retval = flrig_set_mode(rig, RIG_VFO_B, priv->curr_modeA, width); if (retval != RIG_OK) ----------------------------------------------------------------------- Summary of changes: rigs/dummy/flrig.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-08 23:00:34
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 207f28b2569888b0fa5a7da53f380f13f51e452b (commit) via 28a828b5b8516475192ca8eec2a7b7d479d5affd (commit) via 0ad32a4f8a0e81f8028ca9a35c209c45c7fa876f (commit) via 491bf07c0dc3a1d8a8f7d94634d64d04c680c393 (commit) from caafe10d7bd658ce9418747ca8ac1b4f04c2c3b7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 207f28b2569888b0fa5a7da53f380f13f51e452b Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 16:59:22 2021 -0600 Add debug to rig.c https://github.com/Hamlib/Hamlib/issues/593 diff --git a/src/rig.c b/src/rig.c index 6e1da02f..dd77e10c 100644 --- a/src/rig.c +++ b/src/rig.c @@ -3880,6 +3880,11 @@ int HAMLIB_API rig_set_split_freq_mode(RIG *rig, { retcode = caps->set_split_freq_mode(rig, vfo, tx_freq, tx_mode, tx_width); retcode2 = rig_get_split_freq(rig, vfo, &tfreq); + if (tfreq != tx_freq) + { + rig_debug(RIG_DEBUG_ERR, "%s: txfreq!=tfreq %.0f!=%.0f, retry=%d, rc1=%d, rc2=%d\n", __func__, tx_freq, tfreq, retry, retcode, retcode2); + hl_usleep(50*1000); // 50ms sleep may help here + } } while (tfreq != tx_freq && retry-- > 0 && retcode == RIG_OK && retcode2 == RIG_OK); commit 28a828b5b8516475192ca8eec2a7b7d479d5affd Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 16:54:52 2021 -0600 Add ENTERFUNC to flrig.c https://github.com/Hamlib/Hamlib/issues/593 diff --git a/rigs/dummy/flrig.c b/rigs/dummy/flrig.c index 80c196c0..9556b19d 100644 --- a/rigs/dummy/flrig.c +++ b/rigs/dummy/flrig.c @@ -1009,7 +1009,7 @@ static int flrig_get_freq(RIG *rig, vfo_t vfo, freq_t *freq) char value[MAXARGLEN]; struct flrig_priv_data *priv = (struct flrig_priv_data *) rig->state.priv; - rig_debug(RIG_DEBUG_TRACE, "%s\n", __func__); + ENTERFUNC; rig_debug(RIG_DEBUG_TRACE, "%s: vfo=%s\n", __func__, rig_strvfo(vfo)); commit 0ad32a4f8a0e81f8028ca9a35c209c45c7fa876f Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 16:44:29 2021 -0600 Update logic to suppress bogus set freq error diff --git a/src/rig.c b/src/rig.c index 59036160..6e1da02f 100644 --- a/src/rig.c +++ b/src/rig.c @@ -1616,7 +1616,7 @@ int HAMLIB_API rig_set_freq(RIG *rig, vfo_t vfo, freq_t freq) } while (tfreq != freq && retry-- > 0); - if (retry == 0) + if (retry == 0 && tfreq != freq) { rig_debug(RIG_DEBUG_ERR, "%s: unable to set frequency!!, asked for %.0f, got %.0f\n", __func__, freq, tfreq); } commit 491bf07c0dc3a1d8a8f7d94634d64d04c680c393 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 16:43:05 2021 -0600 Update comment in flrig.c diff --git a/rigs/dummy/flrig.c b/rigs/dummy/flrig.c index b99d64e4..80c196c0 100644 --- a/rigs/dummy/flrig.c +++ b/rigs/dummy/flrig.c @@ -1275,7 +1275,7 @@ static int flrig_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width) if (priv->ptt) { - rig_debug(RIG_DEBUG_WARN, "%s call not made as PTT=1\n", __func__); + rig_debug(RIG_DEBUG_WARN, "%s set_mode call not made as PTT=1\n", __func__); RETURNFUNC(RIG_OK); // just return OK and ignore this } ----------------------------------------------------------------------- Summary of changes: rigs/dummy/flrig.c | 4 ++-- src/rig.c | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |
From: Michael B. <mdb...@us...> - 2021-03-08 21:59:38
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via caafe10d7bd658ce9418747ca8ac1b4f04c2c3b7 (commit) via ac18671029c3dce079f4cec9e6a1eb34a1350b03 (commit) via 7286c1ac86c60140d2d5c358df9ea0c72bb4917f (commit) via ca9b043cbe5fb212cd758829b160d045048f6694 (commit) via 29fa3b70937f1330ea459e125a2b4fee4747f528 (commit) via 2fa65f11fd0bf2f9a2bee7577ab1d77be9895238 (commit) via e56ea59f14d62ca3da5078fd026700bc907df87c (commit) via be3748d3831d5e25bbfb77246515ab77679ddf33 (commit) from ca3e67aa27fcdd68fa880056426c80141c14dc73 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit caafe10d7bd658ce9418747ca8ac1b4f04c2c3b7 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 15:58:40 2021 -0600 Tweak the FTDX101MP power levels https://github.com/Hamlib/Hamlib/issues/592 diff --git a/rigs/yaesu/ftdx101.h b/rigs/yaesu/ftdx101.h index a0ad75b6..198bb2f9 100644 --- a/rigs/yaesu/ftdx101.h +++ b/rigs/yaesu/ftdx101.h @@ -76,7 +76,7 @@ 6, \ { \ {0, 0.0f}, \ - {35, 0.5f}, \ + {38, 0.5f}, \ {94, 0.25f}, \ {147, 0.50f}, \ {176, 0.75f}, \ @@ -89,7 +89,7 @@ 6, \ { \ {0, 0.0f}, \ - {35, 5.0f}, \ + {38, 5.0f}, \ {94, 25.0f}, \ {147, 50.0f}, \ {176, 75.0f}, \ commit ac18671029c3dce079f4cec9e6a1eb34a1350b03 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 12:06:48 2021 -0600 Add retry of PS1 during power on sequencing in newcat.c https://github.com/Hamlib/Hamlib/issues/579 diff --git a/rigs/yaesu/newcat.c b/rigs/yaesu/newcat.c index aa60d2b3..3445ab14 100644 --- a/rigs/yaesu/newcat.c +++ b/rigs/yaesu/newcat.c @@ -3153,7 +3153,6 @@ int newcat_set_powerstat(RIG *rig, powerstat_t status) case RIG_POWER_OFF: case RIG_POWER_STANDBY: ps = '0'; - write_block(&state->rigport, "\n", 0); break; default: @@ -3182,6 +3181,8 @@ int newcat_set_powerstat(RIG *rig, powerstat_t status) } rig_debug(RIG_DEBUG_TRACE, "%s: Wait #%d for power up\n", __func__, i + 1); + retval = write_block(&state->rigport, priv->cmd_str, strlen(priv->cmd_str)); + if (retval != RIG_OK) RETURNFUNC(retval); } } commit 7286c1ac86c60140d2d5c358df9ea0c72bb4917f Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 11:46:50 2021 -0600 Add RFPOWER_METER tables for FTDX101MP https://github.com/Hamlib/Hamlib/issues/592 diff --git a/rigs/yaesu/ftdx101.h b/rigs/yaesu/ftdx101.h index 5abbcfb1..a0ad75b6 100644 --- a/rigs/yaesu/ftdx101.h +++ b/rigs/yaesu/ftdx101.h @@ -101,16 +101,16 @@ { \ 11, \ { \ - {0, 0.0f}, \ - {35, 0.25f}, \ - {94, 0.125f}, \ - {133, 0.25f}, \ - {162, 0.375f}, \ - {205, 0.5f}, \ - {215, 0.6f}, \ - {225, 0.7f}, \ - {235, 0.8f}, \ - {245, 0.9f}, \ + {0, 0.00f}, \ + {69, 0.05f}, \ + {111, 0.10f}, \ + {129, 0.15f}, \ + {143, 0.20f}, \ + {158, 0.25f}, \ + {184, 0.35f}, \ + {200, 0.40f}, \ + {211, 0.45f}, \ + {222, 0.50f}, \ {255, 1.0f}, \ } \ } @@ -118,16 +118,16 @@ { \ 11, \ { \ - {0, 0.0f}, \ - {35, 5.0f}, \ - {94, 25.0f}, \ - {133, 50.0f}, \ - {162, 75.0f}, \ - {205, 100.0f}, \ - {215, 120.0f}, \ - {225, 140.0f}, \ - {235, 160.0f}, \ - {245, 180.0f}, \ + {0, 0.0f}, \ + {69, 10.0f}, \ + {111, 20.0f}, \ + {129, 30.0f}, \ + {143, 40.0f}, \ + {158, 50.0f}, \ + {184, 70.0f}, \ + {200, 80.0f}, \ + {211, 90.0f}, \ + {222, 100.0f}, \ {255, 200.0f}, \ } \ } commit ca9b043cbe5fb212cd758829b160d045048f6694 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 10:42:41 2021 -0600 Implement STRENGTH calibrations for FTDX101D/MP diff --git a/rigs/yaesu/ftdx101.c b/rigs/yaesu/ftdx101.c index bd024809..0e73d39a 100644 --- a/rigs/yaesu/ftdx101.c +++ b/rigs/yaesu/ftdx101.c @@ -37,6 +37,27 @@ #include "newcat.h" #include "ftdx101.h" +#define FTDX101D_STR_CAL { 16, \ + { \ + { 0x00, -54 }, /* S0 */ \ + { 0x01, -48 }, \ + { 0x02, -42 }, \ + { 0x03, -36 }, \ + { 0x04, -30 }, \ + { 0x05, -24 }, \ + { 0x06, -18 }, \ + { 0x07, -12 }, \ + { 0x08, -6 }, \ + { 0x09, 0 }, /* S9 */ \ + { 0x0A, 10 }, /* +10 */ \ + { 0x0B, 20 }, /* +20 */ \ + { 0x0C, 30 }, /* +30 */ \ + { 0x0D, 40 }, /* +40 */ \ + { 0x0E, 50 }, /* +50 */ \ + { 0x0F, 60 } /* +60 */ \ + } } + + const struct newcat_priv_caps ftdx101d_priv_caps = { .roofing_filter_count = 6, @@ -76,7 +97,7 @@ const struct rig_caps ftdx101d_caps = RIG_MODEL(RIG_MODEL_FTDX101D), .model_name = "FTDX-101D", .mfg_name = "Yaesu", - .version = NEWCAT_VER ".9", + .version = NEWCAT_VER ".10", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -117,8 +138,10 @@ const struct rig_caps ftdx101d_caps = .transceive = RIG_TRN_OFF, /* May enable later as the FTDX101 has an Auto Info command */ .bank_qty = 0, .chan_desc_sz = 0, - .rfpower_meter_cal = FTDX101D_RFPOWER_METER_CAL, + .rfpower_meter_cal = FTDX101D_RFPOWER_METER_WATTS_CAL, + .str_cal = FTDX101D_RFPOWER_METER_CAL, .swr_cal = FTDX101D_SWR_CAL, + .str_cal = FTDX101D_STR_CAL, .chan_list = { { 1, 99, RIG_MTYPE_MEM, NEWCAT_MEM_CAP }, RIG_CHAN_END, diff --git a/rigs/yaesu/ftdx101.h b/rigs/yaesu/ftdx101.h index 14c170be..5abbcfb1 100644 --- a/rigs/yaesu/ftdx101.h +++ b/rigs/yaesu/ftdx101.h @@ -71,14 +71,26 @@ RIG_OP_UP|RIG_OP_DOWN|RIG_OP_BAND_UP|RIG_OP_BAND_DOWN|\ RIG_OP_TO_VFO|RIG_OP_FROM_VFO|RIG_OP_TOGGLE) -// Borrowed from FLRig -- Thanks to Dave W1HKJ #define FTDX101D_RFPOWER_METER_CAL \ { \ 6, \ { \ - {0, 0.0f}, \ - {35, 5.0f}, \ - {94, 25.0f}, \ + {0, 0.0f}, \ + {35, 0.5f}, \ + {94, 0.25f}, \ + {147, 0.50f}, \ + {176, 0.75f}, \ + {205, 1.0f}, \ + } \ + } + +#define FTDX101D_RFPOWER_METER_WATTS_CAL \ + { \ + 6, \ + { \ + {0, 0.0f}, \ + {35, 5.0f}, \ + {94, 25.0f}, \ {147, 50.0f}, \ {176, 75.0f}, \ {205, 100.0f}, \ @@ -86,6 +98,23 @@ } #define FTDX101MP_RFPOWER_METER_CAL \ + { \ + 11, \ + { \ + {0, 0.0f}, \ + {35, 0.25f}, \ + {94, 0.125f}, \ + {133, 0.25f}, \ + {162, 0.375f}, \ + {205, 0.5f}, \ + {215, 0.6f}, \ + {225, 0.7f}, \ + {235, 0.8f}, \ + {245, 0.9f}, \ + {255, 1.0f}, \ + } \ + } +#define FTDX101MP_RFPOWER_METER_WATTS_CAL \ { \ 11, \ { \ diff --git a/rigs/yaesu/ftdx101mp.c b/rigs/yaesu/ftdx101mp.c index 0845f2a1..9ff6a9ec 100644 --- a/rigs/yaesu/ftdx101mp.c +++ b/rigs/yaesu/ftdx101mp.c @@ -77,7 +77,7 @@ const struct rig_caps ftdx101mp_caps = RIG_MODEL(RIG_MODEL_FTDX101MP), .model_name = "FTDX-101MP", .mfg_name = "Yaesu", - .version = NEWCAT_VER ".0", + .version = NEWCAT_VER ".1", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -118,7 +118,8 @@ const struct rig_caps ftdx101mp_caps = .transceive = RIG_TRN_OFF, /* May enable later as the FTDX101 has an Auto Info command */ .bank_qty = 0, .chan_desc_sz = 0, - .rfpower_meter_cal = FTDX101MP_RFPOWER_METER_CAL, + .rfpower_meter_cal = FTDX101MP_RFPOWER_METER_WATTS_CAL, + .str_cal = FTDX101MP_RFPOWER_METER_CAL, .swr_cal = FTDX101D_SWR_CAL, .chan_list = { { 1, 99, RIG_MTYPE_MEM, NEWCAT_MEM_CAP }, commit 29fa3b70937f1330ea459e125a2b4fee4747f528 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 10:06:35 2021 -0600 Add model/version to newcat_rig_open diff --git a/rigs/yaesu/newcat.c b/rigs/yaesu/newcat.c index 4fa5a733..aa60d2b3 100644 --- a/rigs/yaesu/newcat.c +++ b/rigs/yaesu/newcat.c @@ -510,6 +510,7 @@ int newcat_open(RIG *rig) ENTERFUNC; + rig_debug(RIG_DEBUG_TRACE, "%s: Rig=%s, version=%s\n", __func__, rig->caps->model_name, rig->caps->version); rig_debug(RIG_DEBUG_TRACE, "%s: write_delay = %i msec\n", __func__, rig_s->rigport.write_delay); commit 2fa65f11fd0bf2f9a2bee7577ab1d77be9895238 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 09:56:59 2021 -0600 Fix rc return in RETURNFUNC to parenthesize it diff --git a/src/misc.h b/src/misc.h index 6e5ceffc..c0a3a995 100644 --- a/src/misc.h +++ b/src/misc.h @@ -143,8 +143,8 @@ void errmsg(int err, char *s, const char *func, const char *file, int line); #define ERRMSG(err, s) errmsg(err, s, __func__, __FILENAME__, __LINE__) #define ENTERFUNC rig_debug(RIG_DEBUG_VERBOSE, "%s(%d):%s entered\n", __FILENAME__, __LINE__, __func__) #define RETURNFUNC(rc) do { \ - rig_debug(RIG_DEBUG_VERBOSE, "%s(%d):%s return(%ld)\n", __FILENAME__, __LINE__, __func__, (long int) rc); \ - return rc; \ + rig_debug(RIG_DEBUG_VERBOSE, "%s(%d):%s return(%ld)\n", __FILENAME__, __LINE__, __func__, (long int) (rc)); \ + return (rc); \ } while(0) #if 0 // 5.0 commit e56ea59f14d62ca3da5078fd026700bc907df87c Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 09:55:59 2021 -0600 Update rig_get_vfo_info diff --git a/include/hamlib/rig.h b/include/hamlib/rig.h index 7266bd79..5a892f73 100644 --- a/include/hamlib/rig.h +++ b/include/hamlib/rig.h @@ -1843,6 +1843,12 @@ struct rig_caps { rig_ptr_t); int (*set_vfo_opt)(RIG *rig, int status); // only for Net Rigctl device + int (*rig_get_vfo_info) (RIG *rig, + vfo_t vfo, + freq_t *freq, + rmode_t *mode, + pbwidth_t *width, + split_t *split); const char *clone_combo_set; /*!< String describing key combination to enter load cloning mode */ const char *clone_combo_get; /*!< String describing key combination to enter save cloning mode */ @@ -2333,9 +2339,11 @@ extern HAMLIB_EXPORT(int) rig_get_vfo HAMLIB_PARAMS((RIG *rig, vfo_t *vfo)); +#if 0 extern HAMLIB_EXPORT(int) rig_get_vfo_info HAMLIB_PARAMS((RIG *rig, vfo_t vfo, freq_t *freq, rmode_t *mode, pbwidth_t *width, split_t *split)); +#endif extern HAMLIB_EXPORT(int) rig_get_vfo_list HAMLIB_PARAMS((RIG *rig, char *buf, int buflen)); @@ -2815,11 +2823,6 @@ rig_set_vfo_callback HAMLIB_PARAMS((RIG *, vfo_cb_t, rig_ptr_t)); -extern HAMLIB_EXPORT(int) -rig_get_vfo_info_callback HAMLIB_PARAMS((RIG *, - vfo_cb_t, - rig_ptr_t)); - extern HAMLIB_EXPORT(int) rig_set_ptt_callback HAMLIB_PARAMS((RIG *, ptt_cb_t, commit be3748d3831d5e25bbfb77246515ab77679ddf33 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 09:54:24 2021 -0600 https://github.com/Hamlib/Hamlib/issues/514 diff --git a/tests/rigctl_parse.c b/tests/rigctl_parse.c index e83dfea0..0beeb922 100644 --- a/tests/rigctl_parse.c +++ b/tests/rigctl_parse.c @@ -138,7 +138,7 @@ struct test_table }; -#define CHKSCN1ARG(a) if ((a) != 1) { rig_debug(RIG_DEBUG_ERR,"%s: chkarg err\n", __func__);return -RIG_EINVAL;} else do {} while(0) +#define CHKSCN1ARG(a) if ((a) != 1) { rig_debug(RIG_DEBUG_ERR,"%s: chkarg err\n", __func__);RETURNFUNC(-RIG_EINVAL);} else do {} while(0) #define ACTION(f) rigctl_##f #define declare_proto_rig(f) static int (ACTION(f))(RIG *rig, \ @@ -639,6 +639,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, char arg3[MAXARGSZ + 1], *p3 = NULL; vfo_t vfo = RIG_VFO_CURR; + ENTERFUNC; rig_debug(RIG_DEBUG_TRACE, "%s: called, interactive=%d\n", __func__, interactive); @@ -661,7 +662,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { rig_debug(RIG_DEBUG_WARN, "%s: nothing to scan#1? retcode=%d\n", __func__, retcode); - return -1; + RETURNFUNC(-1); } if (cmd != 0xa) @@ -680,12 +681,12 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (scanfc(fin, "%c", &cmd) < 1) { rig_debug(RIG_DEBUG_WARN, "%s: nothing to scan#2?\n", __func__); - return -1; + RETURNFUNC(-1); } } else if (cmd == '+' && prompt) { - return 0; + RETURNFUNC(0); } if (cmd != '\\' @@ -703,7 +704,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (scanfc(fin, "%c", &cmd) < 1) { rig_debug(RIG_DEBUG_WARN, "%s: nothing to scan#3?\n", __func__); - return -1; + RETURNFUNC(-1); } } else if (cmd != '\\' @@ -716,7 +717,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, && prompt) { - return 0; + RETURNFUNC(0); } /* command by name */ @@ -727,7 +728,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (scanfc(fin, "%c", pcmd) < 1) { rig_debug(RIG_DEBUG_WARN, "%s: nothing to scan#4?\n", __func__); - return -1; + RETURNFUNC(-1); } retcode = fscanf(fin, "%s", ++pcmd); @@ -754,7 +755,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, fprintf_flush(fout, "\nRig command: "); } - return 0; + RETURNFUNC(0); } last_was_ret = 1; @@ -772,11 +773,11 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (scanfc(fin, "%c", &cmd) < 1) { rig_debug(RIG_DEBUG_WARN, "%s: nothing to scan#6?\n", __func__); - return -1; + RETURNFUNC(-1); } } - return 0; + RETURNFUNC(0); } my_rig->state.vfo_opt = *vfo_opt; @@ -789,14 +790,14 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (interactive && !prompt) { fprintf(fout, "%s0\n", NETRIGCTL_RET); } fflush(fout); - return 1; + RETURNFUNC(1); } if (cmd == '?') { usage_rig(fout); fflush(fout); - return 0; + RETURNFUNC(0); } } else @@ -806,11 +807,11 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (EOF == retcode) { - return 1; + RETURNFUNC(1); } else if (retcode < 0) { - return retcode; + RETURNFUNC(retcode); } else if ('\0' == command[1]) { @@ -831,7 +832,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, fprintf(stderr, "Command '%c' not found!\n", cmd); } - return 0; + RETURNFUNC(0); } if (!(cmd_entry->flags & ARG_NOVFO) && *vfo_opt) @@ -849,7 +850,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (scanfc(fin, "%s", arg1) < 1) { rig_debug(RIG_DEBUG_WARN, "%s: nothing to scan#7?\n", __func__); - return -1; + RETURNFUNC(-1); } vfo = rig_parse_vfo(arg1); @@ -865,7 +866,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, } else if (retcode < 0) { - return retcode; + RETURNFUNC(retcode); } vfo = rig_parse_vfo(arg1); @@ -888,7 +889,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (fgets(arg1, MAXARGSZ, fin) == NULL) { - return -1; + RETURNFUNC(-1); } if (arg1[0] == 0xa) @@ -902,7 +903,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (fgets(arg1, MAXARGSZ, fin) == NULL) { - return -1; + RETURNFUNC(-1); } } @@ -930,11 +931,11 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { fprintf(stderr, "Invalid arg for command '%s'\n", cmd_entry->name); - return 1; + RETURNFUNC(1); } else if (retcode < 0) { - return retcode; + RETURNFUNC(retcode); } p1 = arg1; @@ -958,7 +959,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (scanfc(fin, "%s", arg1) < 1) { rig_debug(RIG_DEBUG_WARN, "%s: nothing to scan#8?\n", __func__); - return -1; + RETURNFUNC(-1); } p1 = arg1; @@ -971,11 +972,11 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { fprintf(stderr, "Invalid arg for command '%s'\n", cmd_entry->name); - return 1; + RETURNFUNC(1); } else if (retcode < 0) { - return retcode; + RETURNFUNC(retcode); } p1 = arg1; @@ -1004,7 +1005,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (scanfc(fin, "%s", arg2) < 1) { rig_debug(RIG_DEBUG_WARN, "%s: nothing to scan#9?\n", __func__); - return -1; + RETURNFUNC(-1); } p2 = arg2; @@ -1018,11 +1019,11 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { fprintf(stderr, "Invalid arg for command '%s'\n", cmd_entry->name); - return 1; + RETURNFUNC(1); } else if (retcode < 0) { - return retcode; + RETURNFUNC(retcode); } p2 = arg2; @@ -1051,7 +1052,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (scanfc(fin, "%s", arg3) < 1) { rig_debug(RIG_DEBUG_WARN, "%s: nothing to scan#10?\n", __func__); - return -1; + RETURNFUNC(-1); } p3 = arg3; @@ -1066,11 +1067,11 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, fprintf(stderr, "Invalid arg for command '%s'\n", cmd_entry->name); - return 1; + RETURNFUNC(1); } else if (retcode < 0) { - return retcode; + RETURNFUNC(retcode); } p3 = arg3; @@ -1097,13 +1098,13 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (!input_line) { fprintf_flush(fout, "\n"); - return 1; + RETURNFUNC(1); } /* Q or q to quit */ if (!(strncasecmp(input_line, "q", 1))) { - return 1; + RETURNFUNC(1); } /* '?' for help */ @@ -1111,13 +1112,13 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { usage_rig(fout); fflush(fout); - return 0; + RETURNFUNC(0); } /* '#' for comment */ if (!(strncmp(input_line, "#", 1))) { - return 0; + RETURNFUNC(0); } /* Blank line entered */ @@ -1125,7 +1126,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { fprintf(fout, "? for help, q to quit.\n"); fflush(fout); - return 0; + RETURNFUNC(0); } rig_debug(RIG_DEBUG_TRACE, "%s: input_line: %s\n", __func__, input_line); @@ -1148,7 +1149,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { /* Oops! Invoke GDB!! */ fprintf_flush(fout, "\n"); - return 1; + RETURNFUNC(1); } /* At this point parsed_input contains the typed text of the command @@ -1207,7 +1208,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { fprintf(stderr, "Valid multiple character command names contain alphanumeric characters plus '_'\n"); - return 0; + RETURNFUNC(0); } } @@ -1216,13 +1217,13 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, /* Single '\' entered, prompt again */ else if ((*parsed_input[0] == '\\') && (strlen(parsed_input[0]) == 1)) { - return 0; + RETURNFUNC(0); } /* Multiple characters but no leading '\' */ else { fprintf(stderr, "Precede multiple character command names with '\\'\n"); - return 0; + RETURNFUNC(0); } cmd_entry = find_cmd_entry(cmd); @@ -1238,7 +1239,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, fprintf(stderr, "Command '%c' not found!\n", cmd); } - return 0; + RETURNFUNC(0); } /* If vfo_opt is enabled (-o|--vfo) check if already given @@ -1263,7 +1264,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (!input_line) { fprintf_flush(fout, "\n"); - return 1; + RETURNFUNC(1); } /* Blank line entered */ @@ -1271,7 +1272,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { fprintf(fout, "? for help, q to quit.\n"); fflush(fout); - return 0; + RETURNFUNC(0); } /* Get the first token of input, the rest, if any, will be @@ -1286,7 +1287,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, else { fprintf_flush(fout, "\n"); - return 1; + RETURNFUNC(1); } } @@ -1365,7 +1366,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { fprintf(fout, "? for help, q to quit.\n"); fflush(fout); - return 0; + RETURNFUNC(0); } if (input_line) @@ -1375,7 +1376,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, else { fprintf_flush(fout, "\n"); - return 1; + RETURNFUNC(1); } } @@ -1427,7 +1428,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { fprintf(fout, "? for help, q to quit.\n"); fflush(fout); - return 0; + RETURNFUNC(0); } result = strtok(input_line, " "); @@ -1439,7 +1440,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, else { fprintf_flush(fout, "\n"); - return 1; + RETURNFUNC(1); } } @@ -1493,7 +1494,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { fprintf(fout, "? for help, q to quit.\n"); fflush(fout); - return 0; + RETURNFUNC(0); } result = strtok(input_line, " "); @@ -1505,7 +1506,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, else { fprintf_flush(fout, "\n"); - return 1; + RETURNFUNC(1); } } @@ -1559,7 +1560,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, { fprintf(fout, "? for help, q to quit.\n"); fflush(fout); - return 0; + RETURNFUNC(0); } result = strtok(input_line, " "); @@ -1571,7 +1572,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, else { fprintf_flush(fout, "\n"); - return 1; + RETURNFUNC(1); } } @@ -1674,7 +1675,7 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (sync_cb) { sync_cb(0); } /* unlock if necessary */ - return retcode; + RETURNFUNC(retcode); } if (retcode != RIG_OK) @@ -1728,10 +1729,10 @@ int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, if (retcode == -RIG_ENAVAIL) { - return retcode; + RETURNFUNC(retcode); } - return retcode != RIG_OK ? 2 : 0; + RETURNFUNC(retcode != RIG_OK ? 2 : 0); } @@ -1904,6 +1905,8 @@ int set_conf(RIG *my_rig, char *conf_parms) { char *p, *n; + ENTERFUNC; + p = conf_parms; while (p && *p != '\0') @@ -1915,7 +1918,7 @@ int set_conf(RIG *my_rig, char *conf_parms) if (!q) { - return -RIG_EINVAL; + RETURNFUNC(-RIG_EINVAL); } *q++ = '\0'; @@ -1930,13 +1933,13 @@ int set_conf(RIG *my_rig, char *conf_parms) if (ret != RIG_OK) { - return ret; + RETURNFUNC(ret); } p = n; } - return RIG_OK; + RETURNFUNC(RIG_OK); } @@ -1954,6 +1957,8 @@ declare_proto_rig(set_freq) char *fmt = "%"PRIll"%c"; #endif + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%"SCNfreq, &freq)); retval = rig_set_freq(rig, vfo, freq); @@ -1964,7 +1969,7 @@ declare_proto_rig(set_freq) } - return retval; + RETURNFUNC(retval); } @@ -1976,11 +1981,13 @@ declare_proto_rig(get_freq) // cppcheck-suppress * char *fmt = "%"PRIll"%c"; + ENTERFUNC; + status = rig_get_freq(rig, vfo, &freq); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2000,7 +2007,7 @@ declare_proto_rig(get_freq) fprintf(fout, "%s%c", rig_strvfo(vfo), resp_sep); #endif - return status; + RETURNFUNC(status); } @@ -2009,8 +2016,11 @@ declare_proto_rig(set_rit) { shortfreq_t rit; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%ld", &rit)); - return rig_set_rit(rig, vfo, rit); + + RETURNFUNC(rig_set_rit(rig, vfo, rit)); } @@ -2020,11 +2030,13 @@ declare_proto_rig(get_rit) int status; shortfreq_t rit; + ENTERFUNC; + status = rig_get_rit(rig, vfo, &rit); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2034,7 +2046,7 @@ declare_proto_rig(get_rit) fprintf(fout, "%ld%c", rit, resp_sep); - return status; + RETURNFUNC(status); } @@ -2043,8 +2055,11 @@ declare_proto_rig(set_xit) { shortfreq_t xit; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%ld", &xit)); - return rig_set_xit(rig, vfo, xit); + + RETURNFUNC(rig_set_xit(rig, vfo, xit)); } @@ -2054,11 +2069,13 @@ declare_proto_rig(get_xit) int status; shortfreq_t xit; + ENTERFUNC; + status = rig_get_xit(rig, vfo, &xit); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2068,7 +2085,7 @@ declare_proto_rig(get_xit) fprintf(fout, "%ld%c", xit, resp_sep); - return status; + RETURNFUNC(status); } @@ -2078,17 +2095,19 @@ declare_proto_rig(set_mode) rmode_t mode; pbwidth_t width; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; rig_sprintf_mode(s, sizeof(s), rig->state.mode_list); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } mode = rig_parse_mode(arg1); CHKSCN1ARG(sscanf(arg2, "%ld", &width)); - return rig_set_mode(rig, vfo, mode, width); + RETURNFUNC(rig_set_mode(rig, vfo, mode, width)); } @@ -2099,11 +2118,13 @@ declare_proto_rig(get_mode) rmode_t mode; pbwidth_t width; + ENTERFUNC; + status = rig_get_mode(rig, vfo, &mode, &width); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2120,7 +2141,7 @@ declare_proto_rig(get_mode) fprintf(fout, "%ld%c", width, resp_sep); - return status; + RETURNFUNC(status); } @@ -2129,12 +2150,14 @@ declare_proto_rig(set_vfo) { int retval; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; rig_sprintf_vfo(s, sizeof(s), rig->state.vfo_list); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } vfo = rig_parse_vfo(arg1); @@ -2160,7 +2183,7 @@ declare_proto_rig(set_vfo) rig_strvfo(vfo), arg1); } - return retval; + RETURNFUNC(retval); } @@ -2169,11 +2192,13 @@ declare_proto_rig(get_vfo) { int status; + ENTERFUNC; + status = rig_get_vfo(rig, &vfo); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2183,7 +2208,7 @@ declare_proto_rig(get_vfo) fprintf(fout, "%s%c", rig_strvfo(vfo), resp_sep); - return status; + RETURNFUNC(status); } /* '\get_vfo_info' */ @@ -2198,7 +2223,7 @@ declare_proto_rig(get_vfo_info) char s[SPRINTF_MAX_SIZE]; rig_sprintf_vfo(s, sizeof(s), rig->state.vfo_list); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } vfo = rig_parse_vfo(arg1); @@ -2230,6 +2255,8 @@ declare_proto_rig(get_vfo_list) { static char prntbuf[256]; + ENTERFUNC; + rig_sprintf_vfo(prntbuf, sizeof(prntbuf), rig->state.vfo_list); if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2239,7 +2266,7 @@ declare_proto_rig(get_vfo_list) fprintf(fout, "%s%c", prntbuf[0] ? prntbuf : "None", ext_resp); - return RIG_OK; + RETURNFUNC(RIG_OK); } @@ -2249,6 +2276,8 @@ declare_proto_rig(set_ptt) int scr; ptt_t ptt; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%d", &scr)); ptt = scr; @@ -2282,10 +2311,10 @@ declare_proto_rig(set_ptt) // this case is not handled in hamlib, but we guard against // illegal parameters here. The hamlib behaviour is to switch // on PTT whenever ptt != RIG_PTT_OFF. - return -RIG_EINVAL; + RETURNFUNC(-RIG_EINVAL); } - return rig_set_ptt(rig, vfo, ptt); + RETURNFUNC(rig_set_ptt(rig, vfo, ptt)); } @@ -2295,11 +2324,13 @@ declare_proto_rig(get_ptt) int status; ptt_t ptt = 0; + ENTERFUNC; + status = rig_get_ptt(rig, vfo, &ptt); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2310,7 +2341,7 @@ declare_proto_rig(get_ptt) /* TODO MICDATA */ fprintf(fout, "%d%c", ptt, resp_sep); - return status; + RETURNFUNC(status); } @@ -2320,11 +2351,13 @@ declare_proto_rig(get_dcd) int status; dcd_t dcd; + ENTERFUNC; + status = rig_get_dcd(rig, vfo, &dcd); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2334,7 +2367,7 @@ declare_proto_rig(get_dcd) fprintf(fout, "%d%c", dcd, resp_sep); - return status; + RETURNFUNC(status); } @@ -2343,8 +2376,11 @@ declare_proto_rig(set_rptr_shift) { rptr_shift_t rptr_shift; + ENTERFUNC; + rptr_shift = rig_parse_rptr_shift(arg1); - return rig_set_rptr_shift(rig, vfo, rptr_shift); + + RETURNFUNC(rig_set_rptr_shift(rig, vfo, rptr_shift)); } @@ -2354,11 +2390,13 @@ declare_proto_rig(get_rptr_shift) int status; rptr_shift_t rptr_shift; + ENTERFUNC; + status = rig_get_rptr_shift(rig, vfo, &rptr_shift); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2368,7 +2406,7 @@ declare_proto_rig(get_rptr_shift) fprintf(fout, "%s%c", rig_strptrshift(rptr_shift), resp_sep); - return status; + RETURNFUNC(status); } @@ -2377,8 +2415,11 @@ declare_proto_rig(set_rptr_offs) { unsigned long rptr_offs; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%lu", &rptr_offs)); - return rig_set_rptr_offs(rig, vfo, rptr_offs); + + RETURNFUNC(rig_set_rptr_offs(rig, vfo, rptr_offs)); } @@ -2388,11 +2429,13 @@ declare_proto_rig(get_rptr_offs) int status; shortfreq_t rptr_offs; + ENTERFUNC; + status = rig_get_rptr_offs(rig, vfo, &rptr_offs); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2402,7 +2445,7 @@ declare_proto_rig(get_rptr_offs) fprintf(fout, "%ld%c", rptr_offs, resp_sep); - return status; + RETURNFUNC(status); } @@ -2411,8 +2454,11 @@ declare_proto_rig(set_ctcss_tone) { tone_t tone; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%u", &tone)); - return rig_set_ctcss_tone(rig, vfo, tone); + + RETURNFUNC(rig_set_ctcss_tone(rig, vfo, tone)); } @@ -2422,11 +2468,13 @@ declare_proto_rig(get_ctcss_tone) int status; tone_t tone; + ENTERFUNC; + status = rig_get_ctcss_tone(rig, vfo, &tone); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2436,7 +2484,7 @@ declare_proto_rig(get_ctcss_tone) fprintf(fout, "%d%c", tone, resp_sep); - return status; + RETURNFUNC(status); } @@ -2445,8 +2493,11 @@ declare_proto_rig(set_dcs_code) { tone_t code; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%u", &code)); - return rig_set_dcs_code(rig, vfo, code); + + RETURNFUNC(rig_set_dcs_code(rig, vfo, code)); } @@ -2456,11 +2507,13 @@ declare_proto_rig(get_dcs_code) int status; tone_t code; + ENTERFUNC; + status = rig_get_dcs_code(rig, vfo, &code); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2470,7 +2523,7 @@ declare_proto_rig(get_dcs_code) fprintf(fout, "%d%c", code, resp_sep); - return status; + RETURNFUNC(status); } @@ -2479,8 +2532,11 @@ declare_proto_rig(set_ctcss_sql) { tone_t tone; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%u", &tone)); - return rig_set_ctcss_sql(rig, vfo, tone); + + RETURNFUNC(rig_set_ctcss_sql(rig, vfo, tone)); } @@ -2490,11 +2546,13 @@ declare_proto_rig(get_ctcss_sql) int status; tone_t tone; + ENTERFUNC; + status = rig_get_ctcss_sql(rig, vfo, &tone); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2504,7 +2562,7 @@ declare_proto_rig(get_ctcss_sql) fprintf(fout, "%d%c", tone, resp_sep); - return status; + RETURNFUNC(status); } @@ -2513,8 +2571,11 @@ declare_proto_rig(set_dcs_sql) { tone_t code; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%u", &code)); - return rig_set_dcs_sql(rig, vfo, code); + + RETURNFUNC(rig_set_dcs_sql(rig, vfo, code)); } @@ -2524,11 +2585,13 @@ declare_proto_rig(get_dcs_sql) int status; tone_t code; + ENTERFUNC; + status = rig_get_dcs_sql(rig, vfo, &code); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2538,7 +2601,7 @@ declare_proto_rig(get_dcs_sql) fprintf(fout, "%d%c", code, resp_sep); - return status; + RETURNFUNC(status); } @@ -2548,8 +2611,11 @@ declare_proto_rig(set_split_freq) freq_t txfreq; vfo_t txvfo = RIG_VFO_TX; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%"SCNfreq, &txfreq)); - return rig_set_split_freq(rig, txvfo, txfreq); + + RETURNFUNC(rig_set_split_freq(rig, txvfo, txfreq)); } @@ -2560,11 +2626,13 @@ declare_proto_rig(get_split_freq) freq_t txfreq; vfo_t txvfo = RIG_VFO_TX; + ENTERFUNC; + status = rig_get_split_freq(rig, txvfo, &txfreq); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2574,7 +2642,7 @@ declare_proto_rig(get_split_freq) fprintf(fout, "%"PRIll"%c", (int64_t)txfreq, resp_sep); - return status; + RETURNFUNC(status); } @@ -2585,17 +2653,19 @@ declare_proto_rig(set_split_mode) int width; vfo_t txvfo = RIG_VFO_TX; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; rig_sprintf_mode(s, sizeof(s), rig->state.mode_list); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } mode = rig_parse_mode(arg1); CHKSCN1ARG(sscanf(arg2, "%d", &width)); - return rig_set_split_mode(rig, txvfo, mode, (pbwidth_t) width); + RETURNFUNC(rig_set_split_mode(rig, txvfo, mode, (pbwidth_t) width)); } @@ -2607,11 +2677,13 @@ declare_proto_rig(get_split_mode) pbwidth_t width; vfo_t txvfo = RIG_VFO_TX; + ENTERFUNC; + status = rig_get_split_mode(rig, txvfo, &mode, &width); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2628,7 +2700,7 @@ declare_proto_rig(get_split_mode) fprintf(fout, "%ld%c", width, resp_sep); - return status; + RETURNFUNC(status); } @@ -2640,18 +2712,20 @@ declare_proto_rig(set_split_freq_mode) int width; vfo_t txvfo = RIG_VFO_TX; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; rig_sprintf_mode(s, sizeof(s), rig->state.mode_list); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } CHKSCN1ARG(sscanf(arg1, "%"SCNfreq, &freq)); mode = rig_parse_mode(arg2); CHKSCN1ARG(sscanf(arg3, "%d", &width)); - return rig_set_split_freq_mode(rig, txvfo, freq, mode, (pbwidth_t) width); + RETURNFUNC(rig_set_split_freq_mode(rig, txvfo, freq, mode, (pbwidth_t) width)); } @@ -2664,11 +2738,13 @@ declare_proto_rig(get_split_freq_mode) pbwidth_t width; vfo_t txvfo = RIG_VFO_TX; + ENTERFUNC; + status = rig_get_split_freq_mode(rig, txvfo, &freq, &mode, &width); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2692,7 +2768,7 @@ declare_proto_rig(get_split_freq_mode) fprintf(fout, "%ld%c", width, resp_sep); - return status; + RETURNFUNC(status); } @@ -2702,6 +2778,8 @@ declare_proto_rig(set_split_vfo) int split; vfo_t tx_vfo; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%d", &split)); if (!strcmp(arg2, "?")) @@ -2709,17 +2787,17 @@ declare_proto_rig(set_split_vfo) char s[SPRINTF_MAX_SIZE]; rig_sprintf_vfo(s, sizeof(s), rig->state.vfo_list); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } tx_vfo = rig_parse_vfo(arg2); if (tx_vfo == RIG_VFO_NONE) { - return -RIG_EINVAL; + RETURNFUNC(-RIG_EINVAL); } - return rig_set_split_vfo(rig, vfo, (split_t) split, tx_vfo); + RETURNFUNC(rig_set_split_vfo(rig, vfo, (split_t) split, tx_vfo)); } @@ -2730,11 +2808,13 @@ declare_proto_rig(get_split_vfo) split_t split; vfo_t tx_vfo; + ENTERFUNC; + status = rig_get_split_vfo(rig, vfo, &split, &tx_vfo); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2751,7 +2831,7 @@ declare_proto_rig(get_split_vfo) fprintf(fout, "%s%c", rig_strvfo(tx_vfo), resp_sep); - return status; + RETURNFUNC(status); } @@ -2760,8 +2840,11 @@ declare_proto_rig(set_ts) { unsigned long ts; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%lu", &ts)); - return rig_set_ts(rig, vfo, ts); + + RETURNFUNC(rig_set_ts(rig, vfo, ts)); } @@ -2771,11 +2854,13 @@ declare_proto_rig(get_ts) int status; shortfreq_t ts; + ENTERFUNC; + status = rig_get_ts(rig, vfo, &ts); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2785,7 +2870,7 @@ declare_proto_rig(get_ts) fprintf(fout, "%ld%c", ts, resp_sep); - return status; + RETURNFUNC(status); } @@ -2798,6 +2883,8 @@ declare_proto_rig(power2mW) rmode_t mode; unsigned int mwp; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%f", &power)); CHKSCN1ARG(sscanf(arg2, "%"SCNfreq, &freq)); mode = rig_parse_mode(arg3); @@ -2806,7 +2893,7 @@ declare_proto_rig(power2mW) if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2816,7 +2903,7 @@ declare_proto_rig(power2mW) fprintf(fout, "%i%c", mwp, resp_sep); - return status; + RETURNFUNC(status); } @@ -2829,6 +2916,8 @@ declare_proto_rig(mW2power) rmode_t mode; unsigned int mwp; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%u", &mwp)); CHKSCN1ARG(sscanf(arg2, "%"SCNfreq, &freq)); mode = rig_parse_mode(arg3); @@ -2837,7 +2926,7 @@ declare_proto_rig(mW2power) if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -2847,7 +2936,7 @@ declare_proto_rig(mW2power) fprintf(fout, "%f%c", power, resp_sep); - return status; + RETURNFUNC(status); } @@ -2865,6 +2954,8 @@ declare_proto_rig(set_level) setting_t level; value_t val; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; @@ -2878,7 +2969,7 @@ declare_proto_rig(set_level) } fputc('\n', fout); - return RIG_OK; + RETURNFUNC(RIG_OK); } level = rig_parse_level(arg1); @@ -2896,7 +2987,7 @@ declare_proto_rig(set_level) if (!cfp) { - return -RIG_ENAVAIL; /* no such parameter */ + RETURNFUNC(-RIG_ENAVAIL); /* no such parameter */ } switch (cfp->type) @@ -2920,10 +3011,10 @@ declare_proto_rig(set_level) break; default: - return -RIG_ECONF; + RETURNFUNC(-RIG_ECONF); } - return rig_set_ext_level(rig, vfo, cfp->token, val); + RETURNFUNC(rig_set_ext_level(rig, vfo, cfp->token, val)); } if (RIG_LEVEL_IS_FLOAT(level)) @@ -2935,7 +3026,7 @@ declare_proto_rig(set_level) CHKSCN1ARG(sscanf(arg2, "%d", &val.i)); } - return rig_set_level(rig, vfo, level, val); + RETURNFUNC(rig_set_level(rig, vfo, level, val)); } @@ -2946,6 +3037,8 @@ declare_proto_rig(get_level) setting_t level; value_t val; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; @@ -2959,7 +3052,7 @@ declare_proto_rig(get_level) } fputc('\n', fout); - return RIG_OK; + RETURNFUNC(RIG_OK); } level = rig_parse_level(arg1); @@ -2972,14 +3065,15 @@ declare_proto_rig(get_level) if (!cfp) { - return -RIG_EINVAL; /* no such parameter */ + rig_debug(RIG_DEBUG_ERR, "%s: level not found=%s\n", __func__, arg1); + RETURNFUNC(-RIG_EINVAL); /* no such parameter */ } status = rig_get_ext_level(rig, vfo, cfp->token, &val); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if (interactive && prompt) @@ -2991,7 +3085,7 @@ declare_proto_rig(get_level) { case RIG_CONF_BUTTON: /* there's no sense in retrieving value of stateless button */ - return -RIG_EINVAL; + RETURNFUNC(-RIG_EINVAL); case RIG_CONF_CHECKBUTTON: case RIG_CONF_COMBO: @@ -3007,17 +3101,17 @@ declare_proto_rig(get_level) break; default: - return -RIG_ECONF; + RETURNFUNC(-RIG_ECONF); } - return status; + RETURNFUNC(status); } status = rig_get_level(rig, vfo, level, &val); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if (interactive && prompt) @@ -3034,7 +3128,7 @@ declare_proto_rig(get_level) fprintf(fout, "%d\n", val.i); } - return status; + RETURNFUNC(status); } @@ -3044,12 +3138,14 @@ declare_proto_rig(set_func) setting_t func; int func_stat; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; rig_sprintf_func(s, sizeof(s), rig->state.has_set_func); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } func = rig_parse_func(arg1); @@ -3062,16 +3158,16 @@ declare_proto_rig(set_func) if (!cfp) { - return -RIG_ENAVAIL; /* no such parameter */ + RETURNFUNC(-RIG_ENAVAIL); /* no such parameter */ } CHKSCN1ARG(sscanf(arg2, "%d", &func_stat)); - return rig_set_ext_func(rig, vfo, cfp->token, func_stat); + RETURNFUNC(rig_set_ext_func(rig, vfo, cfp->token, func_stat)); } CHKSCN1ARG(sscanf(arg2, "%d", &func_stat)); - return rig_set_func(rig, vfo, func, func_stat); + RETURNFUNC(rig_set_func(rig, vfo, func, func_stat)); } @@ -3082,12 +3178,14 @@ declare_proto_rig(get_func) setting_t func; int func_stat; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; rig_sprintf_func(s, sizeof(s), rig->state.has_get_func); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } func = rig_parse_func(arg1); @@ -3100,14 +3198,14 @@ declare_proto_rig(get_func) if (!cfp) { - return -RIG_EINVAL; /* no such parameter */ + RETURNFUNC(-RIG_EINVAL); /* no such parameter */ } status = rig_get_ext_func(rig, vfo, cfp->token, &func_stat); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if (interactive && prompt) @@ -3117,14 +3215,14 @@ declare_proto_rig(get_func) fprintf(fout, "%d\n", func_stat); - return status; + RETURNFUNC(status); } status = rig_get_func(rig, vfo, func, &func_stat); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if (interactive && prompt) @@ -3134,7 +3232,7 @@ declare_proto_rig(get_func) fprintf(fout, "%d\n", func_stat); - return status; + RETURNFUNC(status); } @@ -3144,12 +3242,14 @@ declare_proto_rig(set_parm) setting_t parm; value_t val; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; rig_sprintf_parm(s, sizeof(s), rig->state.has_set_parm); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } parm = rig_parse_parm(arg1); @@ -3162,7 +3262,7 @@ declare_proto_rig(set_parm) if (!cfp) { - return -RIG_EINVAL; /* no such parameter */ + RETURNFUNC(-RIG_EINVAL); /* no such parameter */ } switch (cfp->type) @@ -3190,10 +3290,10 @@ declare_proto_rig(set_parm) break; default: - return -RIG_ECONF; + RETURNFUNC(-RIG_ECONF); } - return rig_set_ext_parm(rig, cfp->token, val); + RETURNFUNC(rig_set_ext_parm(rig, cfp->token, val)); } if (RIG_PARM_IS_FLOAT(parm)) @@ -3205,7 +3305,7 @@ declare_proto_rig(set_parm) CHKSCN1ARG(sscanf(arg2, "%d", &val.i)); } - return rig_set_parm(rig, parm, val); + RETURNFUNC(rig_set_parm(rig, parm, val)); } @@ -3217,12 +3317,14 @@ declare_proto_rig(get_parm) value_t val; char buffer[RIG_BIN_MAX]; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; rig_sprintf_parm(s, sizeof(s), rig->state.has_get_parm); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } parm = rig_parse_parm(arg1); @@ -3235,7 +3337,7 @@ declare_proto_rig(get_parm) if (!cfp) { - return -RIG_EINVAL; /* no such parameter */ + RETURNFUNC(-RIG_EINVAL); /* no such parameter */ } switch (cfp->type) @@ -3260,7 +3362,7 @@ declare_proto_rig(get_parm) if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if (interactive && prompt) @@ -3272,7 +3374,7 @@ declare_proto_rig(get_parm) { case RIG_CONF_BUTTON: /* there's not sense in retrieving value of stateless button */ - return -RIG_EINVAL; + RETURNFUNC(-RIG_EINVAL); case RIG_CONF_CHECKBUTTON: case RIG_CONF_COMBO: @@ -3292,17 +3394,17 @@ declare_proto_rig(get_parm) break; default: - return -RIG_ECONF; + RETURNFUNC(-RIG_ECONF); } - return status; + RETURNFUNC(status); } status = rig_get_parm(rig, parm, &val); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if (interactive && prompt) @@ -3319,7 +3421,7 @@ declare_proto_rig(get_parm) fprintf(fout, "%d\n", val.i); } - return status; + RETURNFUNC(status); } @@ -3328,8 +3430,11 @@ declare_proto_rig(set_bank) { int bank; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%d", &bank)); - return rig_set_bank(rig, vfo, bank); + + RETURNFUNC(rig_set_bank(rig, vfo, bank)); } @@ -3338,8 +3443,11 @@ declare_proto_rig(set_mem) { int ch; + ENTERFUNC; + CHKSCN1ARG(sscanf(arg1, "%d", &ch)); - return rig_set_mem(rig, vfo, ch); + + RETURNFUNC(rig_set_mem(rig, vfo, ch)); } @@ -3349,11 +3457,13 @@ declare_proto_rig(get_mem) int status; int ch; + ENTERFUNC; + status = rig_get_mem(rig, vfo, &ch); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -3363,7 +3473,7 @@ declare_proto_rig(get_mem) fprintf(fout, "%d%c", ch, resp_sep); - return status; + RETURNFUNC(status); } @@ -3372,22 +3482,24 @@ declare_proto_rig(vfo_op) { vfo_op_t op; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; rig_sprintf_vfop(s, sizeof(s), rig->caps->vfo_ops); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } op = rig_parse_vfo_op(arg1); if (RIG_OP_NONE == op) { - return -RIG_EINVAL; + RETURNFUNC(-RIG_EINVAL); } - return rig_vfo_op(rig, vfo, op); + RETURNFUNC(rig_vfo_op(rig, vfo, op)); } @@ -3397,17 +3509,19 @@ declare_proto_rig(scan) scan_t op; int ch; + ENTERFUNC; + if (!strcmp(arg1, "?")) { char s[SPRINTF_MAX_SIZE]; rig_sprintf_scan(s, sizeof(s), rig->caps->scan_ops); fprintf(fout, "%s\n", s); - return RIG_OK; + RETURNFUNC(RIG_OK); } op = rig_parse_scan(arg1); CHKSCN1ARG(sscanf(arg2, "%d", &ch)); - return rig_scan(rig, vfo, op, ch); + RETURNFUNC(rig_scan(rig, vfo, op, ch)); } @@ -3420,6 +3534,8 @@ declare_proto_rig(set_channel) int status; char s[16]; + ENTERFUNC; + memset(&chan, 0, sizeof(channel_t)); if (isdigit((int)arg1[0])) @@ -3448,7 +3564,7 @@ declare_proto_rig(set_channel) if (!mem_caps) { - return -RIG_ECONF; + RETURNFUNC(-RIG_ECONF); } if (mem_caps->bank_num) @@ -3724,7 +3840,7 @@ declare_proto_rig(set_channel) status = rig_set_channel(rig, vfo, &chan); - return status; + RETURNFUNC(status); } @@ -3735,6 +3851,8 @@ declare_proto_rig(get_channel) int read_only = 0; channel_t chan; + ENTERFUNC; + memset(&chan, 0, sizeof(channel_t)); if (isdigit((int)arg1[0])) @@ -3754,7 +3872,7 @@ declare_proto_rig(get_channel) if (status != RIG_OK) { - return status; + RETURNFUNC(status); } status = dump_chan(fout, rig, &chan); @@ -3764,17 +3882,19 @@ declare_proto_rig(get_channel) free(chan.ext_levels); } - return status; + RETURNFUNC(status); } static int myfreq_event(RIG *rig, vfo_t vfo, freq_t freq, rig_ptr_t arg) { + ENTERFUNC; + printf("Event: freq changed to %"PRIll"Hz on %s\n", (int64_t)freq, rig_strvfo(vfo)); - return 0; + RETURNFUNC(0); } @@ -3784,34 +3904,42 @@ static int mymode_event(RIG *rig, pbwidth_t width, rig_ptr_t arg) { + ENTERFUNC; + printf("Event: mode changed to %s, width %liHz on %s\n", rig_strrmode(mode), width, rig_strvfo(vfo)); - return 0; + RETURNFUNC(0); } static int myvfo_event(RIG *rig, vfo_t vfo, rig_ptr_t arg) { + ENTERFUNC; + printf("Event: vfo changed to %s\n", rig_strvfo(vfo)); - return 0; + RETURNFUNC(0); } static int myptt_event(RIG *rig, vfo_t vfo, ptt_t ptt, rig_ptr_t arg) { + ENTERFUNC; + printf("Event: PTT changed to %i on %s\n", ptt, rig_strvfo(vfo)); - return 0; + RETURNFUNC(0); } static int mydcd_event(RIG *rig, vfo_t vfo, dcd_t dcd, rig_ptr_t arg) { + ENTERFUNC; + printf("Event: DCD changed to %i on %s\n", dcd, rig_strvfo(vfo)); - return 0; + RETURNFUNC(0); } @@ -3820,10 +3948,12 @@ declare_proto_rig(set_trn) { int trn; + ENTERFUNC; + if (!strcmp(arg1, "?")) { fprintf(fout, "OFF RIG POLL\n"); - return RIG_OK; + RETURNFUNC(RIG_OK); } if (!strcmp(arg1, "OFF")) @@ -3840,7 +3970,7 @@ declare_proto_rig(set_trn) } else { - return -RIG_EINVAL; + RETURNFUNC(-RIG_EINVAL); } if (trn != RIG_TRN_OFF) @@ -3852,7 +3982,7 @@ declare_proto_rig(set_trn) rig_set_dcd_callback(rig, mydcd_event, NULL); } - return rig_set_trn(rig, trn); + RETURNFUNC(rig_set_trn(rig, trn)); } @@ -3868,11 +3998,13 @@ declare_proto_rig(get_trn) "POLL" }; + ENTERFUNC; + status = rig_get_trn(rig, &trn); if (status != RIG_OK) { - return status; + RETURNFUNC(status); } if ((interactive && prompt) || (interactive && !prompt && ext_resp)) @@ -3885,7 +4017,7 @@ declare_proto_rig(get_trn) fprintf(fout, "%s%c", trn_txt[trn], resp_sep); } - return status; + RETURNFUNC(status); } @@ -3894,6 +4026,8 @@ d... [truncated message content] |
From: Michael B. <mdb...@us...> - 2021-03-08 14:11:28
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via ca3e67aa27fcdd68fa880056426c80141c14dc73 (commit) from 57ba6800f1bc918653a12612a88ec5abacfe70b4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit ca3e67aa27fcdd68fa880056426c80141c14dc73 Author: Michael Black W9MDB <mdb...@ya...> Date: Mon Mar 8 08:01:00 2021 -0600 Fix newcat.c set_cmd_validate to return RIG_OK when succesful https://github.com/Hamlib/Hamlib/issues/591 diff --git a/rigs/yaesu/newcat.c b/rigs/yaesu/newcat.c index 10062080..4fa5a733 100644 --- a/rigs/yaesu/newcat.c +++ b/rigs/yaesu/newcat.c @@ -9814,7 +9814,9 @@ int newcat_set_cmd(RIG *rig) if (rc == RIG_OK) { + // if we were able to set and and validate we're done rig_debug(RIG_DEBUG_TRACE, "%s: cmd_validate OK\n", __func__); + RETURNFUNC(RIG_OK); } else if (rc == -RIG_EPROTO) { diff --git a/rigs/yaesu/newcat.h b/rigs/yaesu/newcat.h index cc855037..127ebfbb 100644 --- a/rigs/yaesu/newcat.h +++ b/rigs/yaesu/newcat.h @@ -50,7 +50,7 @@ typedef char ncboolean; /* shared function version */ -#define NEWCAT_VER "20210307" +#define NEWCAT_VER "20210308" /* Hopefully large enough for future use, 128 chars plus '\0' */ #define NEWCAT_DATA_LEN 129 ----------------------------------------------------------------------- Summary of changes: rigs/yaesu/newcat.c | 2 ++ rigs/yaesu/newcat.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |