Fix IC910 satellite mode operations

https://github.com/Hamlib/Hamlib/issues/237
pull/252/head
Michael Black W9MDB 2020-05-14 10:21:47 -04:00
rodzic e52b3e762d
commit 9c4dfbc34c
2 zmienionych plików z 17 dodań i 0 usunięć

Wyświetl plik

@ -267,6 +267,7 @@ static int ic910_get_freq(RIG *rig, vfo_t vfo, freq_t *freq)
int retval;
freq_t origfreq;
vfo_t vfo_save;
struct icom_priv_data *priv = (struct icom_priv_data *) rig->state.priv;
/* start off by reading the current VFO frequency */
if ((retval = icom_get_freq(rig, RIG_VFO_CURR, &origfreq)) != RIG_OK) { return retval; }
@ -307,6 +308,14 @@ static int ic910_get_freq(RIG *rig, vfo_t vfo, freq_t *freq)
{
*freq = origfreq;
}
else if (RIG_VFO_TX == vfo) {
vfo = priv->tx_vfo;
rig_debug(RIG_DEBUG_VERBOSE, "%s: VFO_TX asked for so vfo=%s\n", __func__, rig_strvfo(vfo));
}
else if (RIG_VFO_RX == vfo) {
vfo = priv->rx_vfo;
rig_debug(RIG_DEBUG_VERBOSE, "%s: VFO_RX asked for so vfo=%s\n", __func__, rig_strvfo(vfo));
}
else { retval = -RIG_EVFO; }
return retval;

Wyświetl plik

@ -3788,6 +3788,14 @@ int icom_set_split_freq(RIG *rig, vfo_t vfo, freq_t tx_freq)
rs = &rig->state;
priv = (struct icom_priv_data *) rs->priv;
rig_debug(RIG_DEBUG_VERBOSE, "%s: satmode=%d, subvfo=%s\n", __func__, priv->satmode, rig_strvfo(priv->tx_vfo));
if (RIG_VFO_TX) {
if (priv->satmode) vfo = RIG_VFO_SUB;
else vfo = priv->tx_vfo;
}
rig_debug(RIG_DEBUG_VERBOSE, "%s: vfo is now %s\n", __func__, rig_strvfo(vfo));
if (priv->satmode && vfo == RIG_VFO_TX) vfo = RIG_VFO_SUB;
if (priv->curr_vfo == RIG_VFO_NONE)
{
retval = icom_set_default_vfo(rig);