From 92b7fc32ba54a89411b07560acd07c6acdeb302b Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Fri, 19 Jun 2020 17:19:02 -0500 Subject: [PATCH] Add get_split_vfo to ft1000mp.c and promote to stable --- rigs/yaesu/ft1000mp.c | 53 ++++++++++++++++++++++++++++++++++++++----- rigs/yaesu/ft1000mp.h | 1 + 2 files changed, 48 insertions(+), 6 deletions(-) diff --git a/rigs/yaesu/ft1000mp.c b/rigs/yaesu/ft1000mp.c index 1a8064618..c7b7fe808 100644 --- a/rigs/yaesu/ft1000mp.c +++ b/rigs/yaesu/ft1000mp.c @@ -215,9 +215,9 @@ const struct rig_caps ft1000mp_caps = RIG_MODEL(RIG_MODEL_FT1000MP), .model_name = "FT-1000MP", .mfg_name = "Yaesu", - .version = "20200618.0", + .version = "20200619.0", .copyright = "LGPL", - .status = RIG_STATUS_BETA, + .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, .ptt_type = RIG_PTT_RIG, .dcd_type = RIG_DCD_RIG, @@ -326,6 +326,7 @@ const struct rig_caps ft1000mp_caps = .get_vfo = ft1000mp_get_vfo, /* get vfo */ .set_split_vfo = ft1000mp_set_split_vfo, + .get_split_vfo = ft1000mp_get_split_vfo, .get_rit = ft1000mp_get_rit, .set_rit = ft1000mp_set_rit, @@ -343,9 +344,9 @@ const struct rig_caps ft1000mpmkv_caps = RIG_MODEL(RIG_MODEL_FT1000MPMKV), .model_name = "MARK-V FT-1000MP", .mfg_name = "Yaesu", - .version = "20200618.0", + .version = "20200619.0", .copyright = "LGPL", - .status = RIG_STATUS_BETA, + .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, .ptt_type = RIG_PTT_RIG, .dcd_type = RIG_DCD_RIG, @@ -454,6 +455,7 @@ const struct rig_caps ft1000mpmkv_caps = .get_vfo = ft1000mp_get_vfo, /* get vfo */ .set_split_vfo = ft1000mp_set_split_vfo, + .get_split_vfo = ft1000mp_get_split_vfo, .get_rit = ft1000mp_get_rit, .set_rit = ft1000mp_set_rit, @@ -471,9 +473,9 @@ const struct rig_caps ft1000mpmkvfld_caps = RIG_MODEL(RIG_MODEL_FT1000MPMKVFLD), .model_name = "MARK-V Field FT-1000MP", .mfg_name = "Yaesu", - .version = "20200618.0", + .version = "20200619.0", .copyright = "LGPL", - .status = RIG_STATUS_BETA, + .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, .ptt_type = RIG_PTT_RIG, .dcd_type = RIG_DCD_RIG, @@ -582,6 +584,7 @@ const struct rig_caps ft1000mpmkvfld_caps = .get_vfo = ft1000mp_get_vfo, /* get vfo */ .set_split_vfo = ft1000mp_set_split_vfo, + .get_split_vfo = ft1000mp_get_split_vfo, .get_rit = ft1000mp_get_rit, .set_rit = ft1000mp_set_rit, @@ -1544,3 +1547,41 @@ int ft1000mp_set_split_vfo(RIG *rig, vfo_t vfo, split_t split, vfo_t tx_vfo) return RIG_OK; } + +/* + * get split + * + */ + +int ft1000mp_get_split_vfo(RIG *rig, vfo_t vfo, split_t *split, vfo_t *tx_vfo) +{ + struct ft1000mp_priv_data *p; + int retval; + + rig_debug(RIG_DEBUG_VERBOSE, "%s: called\n", __func__); + + + p = (struct ft1000mp_priv_data *)rig->state.priv; + + /* Get flags for split status */ + retval = ft1000mp_get_update_data(rig, FT1000MP_NATIVE_UPDATE, + FT1000MP_STATUS_FLAGS_LENGTH); + + if (retval < 0) + { + return retval; + } + + if (p->update_data[0] & 0x01) + { + *tx_vfo = RIG_VFO_B; + *split = RIG_SPLIT_ON; + } + else + { + *tx_vfo = RIG_VFO_A; + *split = RIG_SPLIT_OFF; + } + + return RIG_OK; +} diff --git a/rigs/yaesu/ft1000mp.h b/rigs/yaesu/ft1000mp.h index f04cc18bc..fe2fbdc4b 100644 --- a/rigs/yaesu/ft1000mp.h +++ b/rigs/yaesu/ft1000mp.h @@ -203,6 +203,7 @@ int ft1000mp_set_freq(RIG *rig, vfo_t vfo, freq_t freq); int ft1000mp_get_freq(RIG *rig, vfo_t vfo, freq_t *freq); int ft1000mp_set_split_vfo(RIG *rig, vfo_t vfo, split_t split, vfo_t tx_vfo); +int ft1000mp_get_split_vfo(RIG *rig, vfo_t vfo, split_t *split, vfo_t *tx_vfo); int ft1000mp_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width); /* select mode */ int ft1000mp_get_mode(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width); /* get mode */