From 28fa1835dc04e7c34aa089df5ec6d8868d9c5e4a Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Mon, 14 Sep 2020 09:18:43 -0700 Subject: [PATCH] Fix IC7300 set_parm PARM_TIME (cherry picked from commit 9c5b7499f6767ca75b8e7da52dc0e1d5b6abea60) --- rigs/icom/ic7300.c | 19 +++++++++---------- rigs/icom/icom.c | 2 +- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/rigs/icom/ic7300.c b/rigs/icom/ic7300.c index 3d2a0efc1..6cc8486b6 100644 --- a/rigs/icom/ic7300.c +++ b/rigs/icom/ic7300.c @@ -965,26 +965,25 @@ int ic7300_set_parm(RIG *rig, setting_t parm, value_t val) hr = (int)((float) val.i / 3600.0); min = (int)((float)(val.i - (hr * 3600)) / 60.0); - prmbuf[0] = 0x05; switch (rig->caps->rig_model) { case RIG_MODEL_IC7300: - prmbuf[2] = 0x00; - prmbuf[3] = 0x95; + prmbuf[0] = 0x00; + prmbuf[1] = 0x95; break; case RIG_MODEL_IC9700: - prmbuf[2] = 0x01; - prmbuf[3] = 0x80; + prmbuf[0] = 0x01; + prmbuf[1] = 0x80; break; case RIG_MODEL_IC705: - prmbuf[2] = 0x01; - prmbuf[3] = 0x66; + prmbuf[0] = 0x01; + prmbuf[1] = 0x66; break; default: return -RIG_ENIMPL; } - to_bcd_be(prmbuf + 3, (long long) hr, 2); - to_bcd_be(prmbuf + 4, (long long) min, 2); - return icom_set_raw(rig, C_CTL_MEM, S_MEM_PARM, 5, prmbuf, 0, 0); + to_bcd_be(prmbuf + 2, (long long) hr, 2); + to_bcd_be(prmbuf + 3, (long long) min, 2); + return icom_set_raw(rig, C_CTL_MEM, S_MEM_PARM, 4, prmbuf, 0, 0); default: rig_debug(RIG_DEBUG_ERR, "Unsupported set_parm %s\n", rig_strparm(parm)); diff --git a/rigs/icom/icom.c b/rigs/icom/icom.c index 6fcd4f100..06edd785c 100644 --- a/rigs/icom/icom.c +++ b/rigs/icom/icom.c @@ -5566,7 +5566,7 @@ int icom_set_parm(RIG *rig, setting_t parm, value_t val) for (i = 0; cmd && cmd[i].id.s != 0; i++) { - if (cmd[i].id.s == parm) + if (cmd[i].cmdparamtype == CMD_PARAM_TYPE_PARM && cmd[i].id.s == parm) { return icom_set_cmd(rig, RIG_VFO_NONE, (struct cmdparams *)&cmd[i], val); }