Add MainA/B SubA/B to icom.c

https://github.com/Hamlib/Hamlib/issues/730
pull/739/head
Mike Black W9MDB 2021-07-05 17:04:24 -05:00
rodzic 21ade6493a
commit 65c77953f8
2 zmienionych plików z 13 dodań i 18 usunięć

Wyświetl plik

@ -1111,26 +1111,17 @@ int icom_set_freq(RIG *rig, vfo_t vfo, freq_t freq)
RETURNFUNC(-RIG_ERJCTED);
}
if (vfo == RIG_VFO_MAIN)
{
priv->main_freq = freq;
}
else if (vfo == RIG_VFO_SUB)
{
priv->sub_freq = freq;
}
priv->curr_freq = freq;
switch (vfo)
{
case RIG_VFO_MAIN_A:
case RIG_VFO_SUB_A:
case RIG_VFO_A: priv->vfoa_freq = freq; break;
case RIG_VFO_MAIN_A: priv->maina_freq = freq; break;
case RIG_VFO_SUB_A: priv->suba_freq = freq; break;
case RIG_VFO_MAIN_B:
case RIG_VFO_SUB_B:
case RIG_VFO_B: priv->vfob_freq = freq; break;
case RIG_VFO_MAIN_B: priv->mainb_freq = freq;
case RIG_VFO_SUB_B: priv->subb_freq = freq;
case RIG_VFO_MAIN: priv->main_freq = freq; break;
@ -1377,13 +1368,13 @@ int icom_get_freq(RIG *rig, vfo_t vfo, freq_t *freq)
switch (vfo)
{
case RIG_VFO_MAIN_A:
case RIG_VFO_SUB_A:
case RIG_VFO_A: priv->vfoa_freq = *freq; break;
case RIG_VFO_MAIN_A: priv->maina_freq = *freq; break;
case RIG_VFO_SUB_A: priv->suba_freq = *freq; break;
case RIG_VFO_MAIN_B:
case RIG_VFO_SUB_B:
case RIG_VFO_B: priv->vfob_freq = *freq; break;
case RIG_VFO_MAIN_B: priv->mainb_freq = *freq; break;
case RIG_VFO_SUB_B: priv->subb_freq = *freq; break;
case RIG_VFO_MAIN: priv->main_freq = *freq; break;

Wyświetl plik

@ -30,7 +30,7 @@
#include <sys/time.h>
#endif
#define BACKEND_VER "20210703"
#define BACKEND_VER "20210705"
#define ICOM_IS_SECONDARY_VFO(vfo) ((vfo) & (RIG_VFO_B | RIG_VFO_SUB | RIG_VFO_SUB_B | RIG_VFO_MAIN_B))
#define ICOM_GET_VFO_NUMBER(vfo) (ICOM_IS_SECONDARY_VFO(vfo) ? 0x01 : 0x00)
@ -251,6 +251,10 @@ struct icom_priv_data
freq_t curr_freq; /*!< Our current freq depending on which vfo is selected */
freq_t main_freq; /*!< Track last setting of main -- not being used yet */
freq_t sub_freq; /*!< Track last setting of sub -- not being used yet */
freq_t maina_freq;
freq_t mainb_freq;
freq_t suba_freq;
freq_t subb_freq;
freq_t vfoa_freq; /*!< Track last setting of vfoa -- used to return last freq when ptt is asserted */
freq_t vfob_freq; /*!< Track last setting of vfob -- used to return last freq when ptt is asserted */
int x25cmdfails; /*!< This will get set if the 0x25 command fails so we try just once */