Enable set_level checking for all Yaesu/newcat rigs.

pull/1410/head
George Baltz N3GB 2023-10-25 13:49:32 -04:00
rodzic d396623486
commit b5653852b3
1 zmienionych plików z 3 dodań i 43 usunięć

Wyświetl plik

@ -4030,12 +4030,8 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
main_sub_vfo = (RIG_VFO_B == vfo || RIG_VFO_SUB == vfo) ? '1' : '0';
}
//TODO Replace the next line
level_info = &rig->caps->level_gran[rig_setting2idx(level)];
// with the next 2 lines
//err = check_level_param(rig, level, val, &level_info);
//if (err != RIG_OK ) { RETURNFUNC(err); }
//endTODO
err = check_level_param(rig, level, val, &level_info);
if (err != RIG_OK ) { RETURNFUNC(err); }
switch (level)
{
@ -4054,19 +4050,6 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
fpf = (int)((val.f / level_info->step.f) + 0.5f );
}
//TODO Remove when global level checking enabled
if (is_ft950 || is_ft891 || is_ft991 || is_ftdx3000 || is_ftdx3000dm
|| is_ftdx101d
|| is_ftdx101mp || is_ftdx10)
{
// Minimum is 5 watts on these rigs
if (fpf < 5)
{
fpf = 5;
}
}
//endTODO
SNPRINTF(priv->cmd_str, sizeof(priv->cmd_str), "PC%03d%c", fpf, cat_term);
break;
@ -4076,9 +4059,6 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
RETURNFUNC(-RIG_ENAVAIL);
}
//TODO Remove when common level checking enabled
if (val.f > 1.0) { RETURNFUNC(-RIG_EINVAL); }
fpf = (int)((val.f / level_info->step.f) + 0.5f);
if (is_ftdx10) { main_sub_vfo = '0'; }
@ -4207,22 +4187,8 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
RETURNFUNC(-RIG_ENAVAIL);
}
//TODO Get rid of these checks when limit checking enabled
if (val.i < 300)
{
i = 300;
}
else if (val.i > 1050)
{
i = 1050;
}
else
{
i = val.i;
}
// Most Yaesu rigs seem to use range of 0-75 to represent pitch of 300..1050 Hz in 10 Hz steps
kp = (i - level_info->min.i + (level_info->step.i / 2)) / level_info->step.i;
kp = (val.i - level_info->min.i + (level_info->step.i / 2)) / level_info->step.i;
SNPRINTF(priv->cmd_str, sizeof(priv->cmd_str), "KP%02d%c", kp, cat_term);
break;
@ -4264,9 +4230,6 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
newcat_get_mode(rig, vfo, &mode, &width);
}
//TODO Remove when level_gran check enabled
if (val.f > 1.0) { RETURNFUNC(-RIG_EINVAL); }
fpf = (int) (( val.f / level_info->step.f ) + 0.5f );
SNPRINTF(priv->cmd_str, sizeof(priv->cmd_str), "MG%03d%c", fpf, cat_term);
@ -4790,9 +4753,6 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
RETURNFUNC(-RIG_ENAVAIL);
}
//TODO Remove when full level checking enabled
if (val.f > 1.0) { RETURNFUNC(-RIG_EINVAL); }
fpf = (int)((val.f / level_info->step.f) + 0.5f);
if (is_ftdx9000)