kopia lustrzana https://github.com/Hamlib/Hamlib
Fix some dumpcaps warnings in many rigs
rodzic
d8caad3d1b
commit
4f5bf9aadd
|
@ -315,17 +315,17 @@ enum serial_control_state_e {
|
|||
* \brief Rig type flags
|
||||
*/
|
||||
typedef enum {
|
||||
RIG_FLAG_RECEIVER = (1 << 1), /*!< Receiver */
|
||||
RIG_FLAG_TRANSMITTER = (1 << 2), /*!< Transmitter */
|
||||
RIG_FLAG_SCANNER = (1 << 3), /*!< Scanner */
|
||||
RIG_FLAG_MOBILE = (1 << 4), /*!< mobile sized */
|
||||
RIG_FLAG_HANDHELD = (1 << 5), /*!< handheld sized */
|
||||
RIG_FLAG_COMPUTER = (1 << 6), /*!< "Computer" rig */
|
||||
RIG_FLAG_TRUNKING = (1 << 7), /*!< has trunking */
|
||||
RIG_FLAG_APRS = (1 << 8), /*!< has APRS */
|
||||
RIG_FLAG_TNC = (1 << 9), /*!< has TNC */
|
||||
RIG_FLAG_DXCLUSTER = (1 << 10), /*!< has DXCluster */
|
||||
RIG_FLAG_TUNER = (1 << 11) /*!< dumb tuner */
|
||||
RIG_FLAG_RECEIVER = (1 << 1), /*!< Receiver 2 */
|
||||
RIG_FLAG_TRANSMITTER = (1 << 2), /*!< Transmitter 4 */
|
||||
RIG_FLAG_SCANNER = (1 << 3), /*!< Scanner 8 */
|
||||
RIG_FLAG_MOBILE = (1 << 4), /*!< mobile sized 16 */
|
||||
RIG_FLAG_HANDHELD = (1 << 5), /*!< handheld sized 32 */
|
||||
RIG_FLAG_COMPUTER = (1 << 6), /*!< "Computer" rig 64 */
|
||||
RIG_FLAG_TRUNKING = (1 << 7), /*!< has trunking 128 */
|
||||
RIG_FLAG_APRS = (1 << 8), /*!< has APRS 256 */
|
||||
RIG_FLAG_TNC = (1 << 9), /*!< has TNC 512 */
|
||||
RIG_FLAG_DXCLUSTER = (1 << 10), /*!< has DXCluster 1024 */
|
||||
RIG_FLAG_TUNER = (1 << 11) /*!< dumb tuner 2048 */
|
||||
} rig_type_t;
|
||||
|
||||
/**
|
||||
|
@ -1312,6 +1312,7 @@ typedef uint64_t rmode_t;
|
|||
#define RIG_MODE_BIT61 CONSTANT_64BIT_FLAG (61) /*!< \c reserved for future expansion */
|
||||
#define RIG_MODE_BIT62 CONSTANT_64BIT_FLAG (62) /*!< \c reserved for future expansion */
|
||||
#define RIG_MODE_TESTS_MAX CONSTANT_64BIT_FLAG (63) /*!< \c last bit available for 64-bit enum MUST ALWAYS BE LAST, Max Count for dumpcaps.c */
|
||||
#define RIG_MODE_ALL (0xffffffff) /*!< any mode constant */
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
|
|
@ -163,6 +163,7 @@ const struct rig_caps flrig_caps =
|
|||
.has_set_parm = RIG_PARM_SET(FLRIG_PARM),
|
||||
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
|
||||
|
|
|
@ -158,6 +158,7 @@ const struct rig_caps tci1x_caps =
|
|||
.has_set_parm = RIG_PARM_SET(TCI1X_PARM),
|
||||
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
|
||||
|
|
|
@ -134,6 +134,7 @@ struct rig_caps trxmanager_caps =
|
|||
.has_get_parm = RIG_PARM_NONE,
|
||||
.has_set_parm = RIG_PARM_NONE,
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
|
||||
|
|
|
@ -410,17 +410,21 @@ struct rig_caps GS100_caps =
|
|||
.vfo_ops = GS100_VFO_OPS,
|
||||
.rx_range_list1 = { {
|
||||
.startf = MHz(430), .endf = MHz(440), .modes = GS100_MODES,
|
||||
.low_power = -1, .high_power = -1, GS100_VFOS,
|
||||
.low_power = 0, .high_power = 0, GS100_VFOS,
|
||||
.label = "GS100#1"
|
||||
}, RIG_FRNG_END,
|
||||
},
|
||||
.tx_range_list1 = { {
|
||||
.startf = MHz(430), .endf = MHz(440), .modes = GS100_MODES,
|
||||
.low_power = -1, .high_power = -1, GS100_VFOS,
|
||||
.low_power = 0, .high_power = 0, GS100_VFOS,
|
||||
.label = "GS100#1"
|
||||
}, RIG_FRNG_END,
|
||||
},
|
||||
.tuning_steps = { {GS100_MODES, Hz(10)}, RIG_TS_END, },
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
.priv = NULL,
|
||||
.rig_init = gs100_init,
|
||||
.rig_cleanup = gs100_cleanup,
|
||||
|
|
|
@ -84,7 +84,12 @@ const struct rig_caps ic765_caps =
|
|||
.has_set_level = RIG_LEVEL_NONE,
|
||||
.has_get_parm = RIG_PARM_NONE,
|
||||
.has_set_parm = RIG_PARM_NONE,
|
||||
.level_gran = {},
|
||||
#if 0
|
||||
.level_gran =
|
||||
{
|
||||
#include "level_gran_icom.h"
|
||||
},
|
||||
#endif
|
||||
.parm_gran = {},
|
||||
.ctcss_list = NULL,
|
||||
.dcs_list = NULL,
|
||||
|
@ -131,8 +136,8 @@ const struct rig_caps ic765_caps =
|
|||
{MHz(6.9), kHz(7499.99), IC765_AM_TX_MODES, 2000, 40000, IC765_VFO_ALL},
|
||||
{MHz(9.9), MHz(1049999), IC765_OTHER_TX_MODES, 5000, 100000, IC765_VFO_ALL},
|
||||
{MHz(9.9), MHz(1049999), IC765_AM_TX_MODES, 2000, 40000, IC765_VFO_ALL},
|
||||
{MHz(13.9), kHz(14.49999), IC765_OTHER_TX_MODES, 5000, 100000, IC765_VFO_ALL},
|
||||
{MHz(13.9), kHz(14.49999), IC765_AM_TX_MODES, 2000, 40000, IC765_VFO_ALL},
|
||||
{MHz(13.9), MHz(14.49999), IC765_OTHER_TX_MODES, 5000, 100000, IC765_VFO_ALL},
|
||||
{MHz(13.9), MHz(14.49999), IC765_AM_TX_MODES, 2000, 40000, IC765_VFO_ALL},
|
||||
{kHz(17900), kHz(18499.99), IC765_OTHER_TX_MODES, 5000, 100000, IC765_VFO_ALL},
|
||||
{kHz(17900), kHz(18499.99), IC765_AM_TX_MODES, 2000, 40000, IC765_VFO_ALL},
|
||||
{MHz(20.9), kHz(21499.99), IC765_OTHER_TX_MODES, 5000, 100000, IC765_VFO_ALL},
|
||||
|
|
|
@ -85,7 +85,10 @@ const struct rig_caps ic781_caps =
|
|||
.has_set_level = RIG_LEVEL_NONE,
|
||||
.has_get_parm = RIG_PARM_NONE,
|
||||
.has_set_parm = RIG_PARM_NONE,
|
||||
.level_gran = {},
|
||||
.level_gran =
|
||||
{
|
||||
#include "level_gran_icom.h"
|
||||
},
|
||||
.parm_gran = {},
|
||||
.ctcss_list = NULL,
|
||||
.dcs_list = NULL,
|
||||
|
@ -132,8 +135,8 @@ const struct rig_caps ic781_caps =
|
|||
{MHz(6.9), kHz(7499.99), IC781_AM_TX_MODES, 2000, 75000, IC781_VFO_ALL},
|
||||
{MHz(9.9), MHz(1049999), IC781_OTHER_TX_MODES, 5000, 150000, IC781_VFO_ALL},
|
||||
{MHz(9.9), MHz(1049999), IC781_AM_TX_MODES, 2000, 75000, IC781_VFO_ALL},
|
||||
{MHz(13.9), kHz(14.49999), IC781_OTHER_TX_MODES, 5000, 150000, IC781_VFO_ALL},
|
||||
{MHz(13.9), kHz(14.49999), IC781_AM_TX_MODES, 2000, 75000, IC781_VFO_ALL},
|
||||
{MHz(13.9), MHz(14.49999), IC781_OTHER_TX_MODES, 5000, 150000, IC781_VFO_ALL},
|
||||
{MHz(13.9), MHz(14.49999), IC781_AM_TX_MODES, 2000, 75000, IC781_VFO_ALL},
|
||||
{kHz(17900), kHz(18499.99), IC781_OTHER_TX_MODES, 5000, 150000, IC781_VFO_ALL},
|
||||
{kHz(17900), kHz(18499.99), IC781_AM_TX_MODES, 2000, 75000, IC781_VFO_ALL},
|
||||
{MHz(20.9), kHz(21499.99), IC781_OTHER_TX_MODES, 5000, 150000, IC781_VFO_ALL},
|
||||
|
|
|
@ -256,28 +256,28 @@ const struct rig_caps ic910_caps =
|
|||
},
|
||||
|
||||
.rx_range_list1 = { /* USA */
|
||||
{MHz(144), MHz(148), IC910_MODES, -1, -1, IC910_VFO_ALL},
|
||||
{MHz(430), MHz(450), IC910_MODES, -1, -1, IC910_VFO_ALL},
|
||||
{MHz(1240), MHz(1300), IC910_MODES, -1, -1, IC910_VFO_ALL},
|
||||
{MHz(144), MHz(148), IC910_MODES, 0, 0, IC910_VFO_ALL},
|
||||
{MHz(430), MHz(450), IC910_MODES, 0, 0, IC910_VFO_ALL},
|
||||
{MHz(1240), MHz(1300), IC910_MODES, 0, 0, IC910_VFO_ALL},
|
||||
RIG_FRNG_END,
|
||||
},
|
||||
.tx_range_list1 = {
|
||||
{MHz(144), MHz(148), IC910_MODES, W(5), W(100), IC910_VFO_ALL},
|
||||
{MHz(430), MHz(450), IC910_MODES, W(5), W(75), IC910_VFO_ALL},
|
||||
{MHz(1240), MHz(1300), IC910_MODES, -1, -1, IC910_VFO_ALL},
|
||||
{MHz(1240), MHz(1300), IC910_MODES, 0, 0, IC910_VFO_ALL},
|
||||
RIG_FRNG_END,
|
||||
},
|
||||
|
||||
.rx_range_list2 = { /* Europe */
|
||||
{MHz(144), MHz(146), IC910_MODES, -1, -1, IC910_VFO_ALL},
|
||||
{MHz(430), MHz(440), IC910_MODES, -1, -1, IC910_VFO_ALL},
|
||||
{MHz(1240), MHz(1300), IC910_MODES, -1, -1, IC910_VFO_ALL},
|
||||
{MHz(144), MHz(146), IC910_MODES, 0, 0, IC910_VFO_ALL},
|
||||
{MHz(430), MHz(440), IC910_MODES, 0, 0, IC910_VFO_ALL},
|
||||
{MHz(1240), MHz(1300), IC910_MODES, 0, 0, IC910_VFO_ALL},
|
||||
RIG_FRNG_END,
|
||||
},
|
||||
.tx_range_list2 = {
|
||||
{MHz(144), MHz(146), IC910_MODES, W(5), W(100), IC910_VFO_ALL},
|
||||
{MHz(430), MHz(440), IC910_MODES, W(5), W(75), IC910_VFO_ALL},
|
||||
{MHz(1240), MHz(1300), IC910_MODES, -1, -1, IC910_VFO_ALL},
|
||||
{MHz(1240), MHz(1300), IC910_MODES, 0, 0, IC910_VFO_ALL},
|
||||
RIG_FRNG_END,
|
||||
},
|
||||
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
#include "hamlib/rig.h"
|
||||
#include "cal.h"
|
||||
#include "tones.h"
|
||||
#include "idx_builtin.h"
|
||||
|
||||
#ifdef HAVE_SYS_TIME_H
|
||||
#include <sys/time.h>
|
||||
|
|
|
@ -119,6 +119,8 @@ const struct rig_caps icr6_caps =
|
|||
.tuning_steps = {
|
||||
{ICR6_MODES, Hz(5000)},
|
||||
{ICR6_MODES, Hz(6250)},
|
||||
{ICR6_MODES, Hz(8330)}, // Air band only
|
||||
{ICR6_MODES, Hz(9000)}, // AM broadcast band only
|
||||
{ICR6_MODES, Hz(10000)},
|
||||
{ICR6_MODES, Hz(12500)},
|
||||
{ICR6_MODES, kHz(15)},
|
||||
|
@ -129,10 +131,6 @@ const struct rig_caps icr6_caps =
|
|||
{ICR6_MODES, kHz(100)},
|
||||
{ICR6_MODES, kHz(125)},
|
||||
{ICR6_MODES, kHz(200)},
|
||||
/* Air band only */
|
||||
{ICR6_MODES, Hz(8330)},
|
||||
/* AM broadcast band only */
|
||||
{ICR6_MODES, Hz(9000)},
|
||||
RIG_TS_END,
|
||||
},
|
||||
|
||||
|
|
|
@ -145,13 +145,13 @@ const struct rig_caps id1_caps =
|
|||
|
||||
.tuning_steps = {
|
||||
{ID1_MODES, kHz(5)},
|
||||
{ID1_MODES, kHz(6.25)},
|
||||
{ID1_MODES, kHz(10)},
|
||||
{ID1_MODES, 12500},
|
||||
{ID1_MODES, kHz(12.5)},
|
||||
{ID1_MODES, kHz(20)},
|
||||
{ID1_MODES, kHz(25)},
|
||||
{ID1_MODES, kHz(25)},
|
||||
{ID1_MODES, kHz(100)},
|
||||
{ID1_MODES, kHz(6.25)},
|
||||
RIG_TS_END,
|
||||
},
|
||||
/* mode/filter list, remember: order matters! */
|
||||
|
|
|
@ -151,8 +151,10 @@ const struct rig_caps id31_caps =
|
|||
|
||||
.tuning_steps = {
|
||||
// Rem: no support for changing tuning step
|
||||
{RIG_MODE_ALL, 1},
|
||||
RIG_TS_END,
|
||||
},
|
||||
|
||||
/* mode/filter list, remember: order matters! */
|
||||
.filters = {
|
||||
{RIG_MODE_FM, kHz(12)},
|
||||
|
|
|
@ -159,8 +159,10 @@ const struct rig_caps id4100_caps =
|
|||
|
||||
.tuning_steps = {
|
||||
// Rem: no support for changing tuning step
|
||||
{RIG_MODE_ALL, 1},
|
||||
RIG_TS_END,
|
||||
},
|
||||
|
||||
/* mode/filter list, remember: order matters! */
|
||||
.filters = {
|
||||
{RIG_MODE_FM | RIG_MODE_AM, kHz(12)},
|
||||
|
|
|
@ -164,8 +164,10 @@ const struct rig_caps id51_caps =
|
|||
|
||||
.tuning_steps = {
|
||||
// Rem: no support for changing tuning step
|
||||
{RIG_MODE_ALL, 1},
|
||||
RIG_TS_END,
|
||||
},
|
||||
|
||||
/* mode/filter list, remember: order matters! */
|
||||
.filters = {
|
||||
{RIG_MODE_FM | RIG_MODE_AM, kHz(12)},
|
||||
|
|
|
@ -161,6 +161,7 @@ const struct rig_caps id5100_caps =
|
|||
|
||||
.tuning_steps = {
|
||||
// Rem: no support for changing tuning step
|
||||
{RIG_MODE_ALL, 1},
|
||||
RIG_TS_END,
|
||||
},
|
||||
/* mode/filter list, remember: order matters! */
|
||||
|
|
|
@ -180,7 +180,8 @@ const struct rig_caps tmv7_caps =
|
|||
},
|
||||
/* mode/filter list, remember: order matters! */
|
||||
.filters = {
|
||||
RIG_FLT_END,
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
|
||||
.str_cal = { 4, { {0, -60 }, {1, -30,}, {5, 0}, {7, 20}}}, /* rought guess */
|
||||
|
|
|
@ -40,12 +40,14 @@
|
|||
#define TS480_AM_TX_MODES RIG_MODE_AM
|
||||
#define TS480_VFO (RIG_VFO_A|RIG_VFO_B)
|
||||
|
||||
#define TS480_LEVEL_ALL (RIG_LEVEL_RFPOWER|RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_SQL|RIG_LEVEL_AGC|RIG_LEVEL_MICGAIN|RIG_LEVEL_STRENGTH|RIG_LEVEL_KEYSPD|RIG_LEVEL_CWPITCH| \
|
||||
#define TS480_LEVEL_GET (RIG_LEVEL_RFPOWER|RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_SQL|RIG_LEVEL_AGC|RIG_LEVEL_MICGAIN|RIG_LEVEL_STRENGTH|RIG_LEVEL_KEYSPD|RIG_LEVEL_CWPITCH| \
|
||||
RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_NB|RIG_LEVEL_NR|RIG_LEVEL_PREAMP|RIG_LEVEL_COMP|RIG_LEVEL_ATT|RIG_LEVEL_VOXDELAY|RIG_LEVEL_VOXGAIN|RIG_LEVEL_BKIN_DLYMS| \
|
||||
RIG_LEVEL_METER|RIG_LEVEL_SWR|RIG_LEVEL_COMP_METER|RIG_LEVEL_ALC|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_SLOPE_HIGH|RIG_LEVEL_SLOPE_LOW)
|
||||
|
||||
#define TS480_LEVEL_SET (RIG_LEVEL_RFPOWER|RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_SQL|RIG_LEVEL_AGC|RIG_LEVEL_MICGAIN|RIG_LEVEL_KEYSPD|RIG_LEVEL_CWPITCH| \
|
||||
RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_NB|RIG_LEVEL_NR|RIG_LEVEL_PREAMP|RIG_LEVEL_COMP|RIG_LEVEL_ATT|RIG_LEVEL_VOXDELAY|RIG_LEVEL_VOXGAIN|RIG_LEVEL_BKIN_DLYMS| \
|
||||
RIG_LEVEL_SLOPE_HIGH|RIG_LEVEL_SLOPE_LOW)
|
||||
RIG_LEVEL_METER|RIG_LEVEL_SLOPE_HIGH|RIG_LEVEL_SLOPE_LOW)
|
||||
|
||||
#define TS480_FUNC_ALL (RIG_FUNC_NB|RIG_FUNC_COMP|RIG_FUNC_VOX|RIG_FUNC_NR|RIG_FUNC_NR|RIG_FUNC_BC|RIG_FUNC_BC2|RIG_FUNC_RIT|RIG_FUNC_XIT| \
|
||||
RIG_FUNC_TUNER|RIG_FUNC_MON|RIG_FUNC_FBKIN|RIG_FUNC_LOCK)
|
||||
|
||||
|
@ -1427,7 +1429,7 @@ const struct rig_caps ts480_caps =
|
|||
.get_ant = kenwood_get_ant,
|
||||
.scan = kenwood_scan, /* not working, invalid arguments using rigctl; kenwood_scan does only support on/off and not tone and CTCSS scan */
|
||||
.has_set_level = TS480_LEVEL_SET,
|
||||
.has_get_level = TS480_LEVEL_ALL,
|
||||
.has_get_level = TS480_LEVEL_GET,
|
||||
.set_level = kenwood_ts480_set_level,
|
||||
.get_level = kenwood_ts480_get_level,
|
||||
.set_ext_level = ts480_set_ext_level,
|
||||
|
@ -1593,8 +1595,8 @@ const struct rig_caps pt8000a_caps =
|
|||
.set_ant = kenwood_set_ant,
|
||||
.get_ant = kenwood_get_ant,
|
||||
.scan = kenwood_scan, /* not working, invalid arguments using rigctl; kenwood_scan does only support on/off and not tone and CTCSS scan */
|
||||
.has_set_level = TS480_LEVEL_ALL,
|
||||
.has_get_level = TS480_LEVEL_ALL,
|
||||
.has_set_level = TS480_LEVEL_SET,
|
||||
.has_get_level = TS480_LEVEL_GET,
|
||||
.set_level = kenwood_ts480_set_level,
|
||||
.get_level = kenwood_ts480_get_level,
|
||||
.has_get_func = TS480_FUNC_ALL,
|
||||
|
@ -1780,8 +1782,8 @@ const struct rig_caps sdruno_caps =
|
|||
.set_ant = kenwood_set_ant,
|
||||
.get_ant = kenwood_get_ant,
|
||||
.scan = kenwood_scan, /* not working, invalid arguments using rigctl; kenwood_scan does only support on/off and not tone and CTCSS scan */
|
||||
.has_set_level = TS480_LEVEL_ALL,
|
||||
.has_get_level = TS480_LEVEL_ALL,
|
||||
.has_set_level = TS480_LEVEL_SET,
|
||||
.has_get_level = TS480_LEVEL_GET,
|
||||
.set_level = kenwood_ts480_set_level,
|
||||
.get_level = kenwood_ts480_get_level,
|
||||
.set_ext_level = ts480_set_ext_level,
|
||||
|
@ -1879,6 +1881,15 @@ const struct rig_caps malachite_caps =
|
|||
{MHz(400), GHz(2), TS480_ALL_MODES, -1, -1, RIG_VFO_A, RIG_ANT_CURR, "Generic" },
|
||||
RIG_FRNG_END,
|
||||
},
|
||||
.tuning_steps = {
|
||||
{RIG_MODE_ALL, Hz(1)},
|
||||
RIG_TS_END
|
||||
},
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
|
||||
.priv = (void *)& ts480_priv_caps,
|
||||
.rig_init = malachite_init,
|
||||
.rig_open = kenwood_open,
|
||||
|
|
|
@ -40,6 +40,16 @@
|
|||
|
||||
#define TS950_GET_LEVEL (RIG_LEVEL_RAWSTR)
|
||||
|
||||
// STR_CAL borrowed from TS850
|
||||
#define TS950_STR_CAL { 4, \
|
||||
{ \
|
||||
{ 0, -54 }, \
|
||||
{ 15, 0 }, \
|
||||
{ 22,30 }, \
|
||||
{ 30, 66}, \
|
||||
} }
|
||||
|
||||
|
||||
#define cmd_trm(rig) ((struct kenwood_priv_caps *)(rig)->caps->priv)->cmdtrm
|
||||
static struct kenwood_priv_caps ts950_priv_caps =
|
||||
{
|
||||
|
@ -159,6 +169,7 @@ const struct rig_caps ts950s_caps =
|
|||
{RIG_MODE_FM, kHz(14)},
|
||||
RIG_FLT_END,
|
||||
},
|
||||
.str_cal = TS950_STR_CAL,
|
||||
.priv = (void *)& ts950_priv_caps,
|
||||
|
||||
.rig_init = kenwood_init,
|
||||
|
@ -304,6 +315,7 @@ const struct rig_caps ts950sdx_caps =
|
|||
{RIG_MODE_FM, kHz(14)},
|
||||
RIG_FLT_END,
|
||||
},
|
||||
.str_cal = TS950_STR_CAL,
|
||||
.priv = (void *)& ts950_priv_caps,
|
||||
|
||||
.rig_init = kenwood_init,
|
||||
|
|
|
@ -143,6 +143,15 @@ const struct rig_caps xg3_caps =
|
|||
{kHz(1500), MHz(200), RIG_MODE_CW, 0, 2, RIG_VFO_A, RIG_ANT_1},
|
||||
RIG_FRNG_END,
|
||||
},
|
||||
.tuning_steps = {
|
||||
{RIG_MODE_ALL, 0},
|
||||
RIG_TS_END
|
||||
},
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
|
||||
|
||||
|
||||
.priv = (void *)& xg3_priv_caps,
|
||||
|
|
|
@ -381,22 +381,26 @@ const struct rig_caps rshfiq_caps =
|
|||
|
||||
.has_get_level = RSHFIQ_LEVEL_ALL,
|
||||
|
||||
.rx_range_list1 = { {.startf = kHz(3500), .endf = MHz(30), .modes = RIG_MODE_IQ, .low_power = -1, .high_power = -1, RIG_VFO_A},
|
||||
.rx_range_list1 = { {.startf = kHz(3500), .endf = MHz(30), .modes = RIG_MODE_IQ, .low_power = 0, .high_power = 0, RIG_VFO_A},
|
||||
RIG_FRNG_END,
|
||||
},
|
||||
.rx_range_list2 = { {.startf = kHz(3500), .endf = MHz(30), .modes = RIG_MODE_IQ, .low_power = -1, .high_power = -1, RIG_VFO_A},
|
||||
.rx_range_list2 = { {.startf = kHz(3500), .endf = MHz(30), .modes = RIG_MODE_IQ, .low_power = 0, .high_power = 0, RIG_VFO_A},
|
||||
RIG_FRNG_END,
|
||||
},
|
||||
.tx_range_list1 = { {.startf = kHz(3500), .endf = kHz(3800), .modes = RIG_MODE_IQ, .low_power = -1, .high_power = -1, RIG_VFO_A},
|
||||
{.startf = kHz(7000), .endf = kHz(7200), .modes = RIG_MODE_IQ, .low_power = -1, .high_power = -1, RIG_VFO_A},
|
||||
{.startf = kHz(10100), .endf = kHz(10150), .modes = RIG_MODE_IQ, .low_power = -1, .high_power = -1, RIG_VFO_A},
|
||||
{.startf = MHz(14), .endf = kHz(14350), .modes = RIG_MODE_IQ, .low_power = -1, .high_power = -1, RIG_VFO_A},
|
||||
{.startf = MHz(21), .endf = kHz(21450), .modes = RIG_MODE_IQ, .low_power = -1, .high_power = -1, RIG_VFO_A},
|
||||
{.startf = kHz(24890), .endf = kHz(24990), .modes = RIG_MODE_IQ, .low_power = -1, .high_power = -1, RIG_VFO_A},
|
||||
{.startf = MHz(28), .endf = kHz(29700), .modes = RIG_MODE_IQ, .low_power = -1, .high_power = -1, RIG_VFO_A},
|
||||
.tx_range_list1 = { {.startf = kHz(3500), .endf = kHz(3800), .modes = RIG_MODE_IQ, .low_power = 0, .high_power = 0, RIG_VFO_A},
|
||||
{.startf = kHz(7000), .endf = kHz(7200), .modes = RIG_MODE_IQ, .low_power = 0, .high_power = 0, RIG_VFO_A},
|
||||
{.startf = kHz(10100), .endf = kHz(10150), .modes = RIG_MODE_IQ, .low_power = 0, .high_power = 0, RIG_VFO_A},
|
||||
{.startf = MHz(14), .endf = kHz(14350), .modes = RIG_MODE_IQ, .low_power = 0, .high_power = 0, RIG_VFO_A},
|
||||
{.startf = MHz(21), .endf = kHz(21450), .modes = RIG_MODE_IQ, .low_power = 0, .high_power = 0, RIG_VFO_A},
|
||||
{.startf = kHz(24890), .endf = kHz(24990), .modes = RIG_MODE_IQ, .low_power = 0, .high_power = 0, RIG_VFO_A},
|
||||
{.startf = MHz(28), .endf = kHz(29700), .modes = RIG_MODE_IQ, .low_power = 0, .high_power = 0, RIG_VFO_A},
|
||||
RIG_FRNG_END,
|
||||
},
|
||||
.tuning_steps = { {RIG_MODE_IQ, Hz(1)}, RIG_TS_END, },
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
|
||||
.rig_open = rshfiq_open,
|
||||
.get_freq = rshfiq_get_freq,
|
||||
|
|
|
@ -100,8 +100,8 @@ const struct rig_caps trp8000_caps =
|
|||
RIG_FRNG_END,
|
||||
},
|
||||
.tuning_steps = {
|
||||
{TRP8000_ALL_MODES, 100},
|
||||
{TRP8000_ALL_MODES, 10},
|
||||
{TRP8000_ALL_MODES, 100},
|
||||
{TRP8000_ALL_MODES, kHz(1)},
|
||||
RIG_TS_END,
|
||||
},
|
||||
|
|
|
@ -42,6 +42,28 @@
|
|||
|
||||
#define TT516_VFO (RIG_VFO_A|RIG_VFO_B)
|
||||
|
||||
// Taken from RX320_STR_CAL -- unknown if accurate for TT516
|
||||
#define TT516_STR_CAL { 17, { \
|
||||
{ 0, -60 }, \
|
||||
{ 10, -50 }, \
|
||||
{ 20, -40 }, \
|
||||
{ 30, -30 }, \
|
||||
{ 40, -20 }, \
|
||||
{ 50, -15 }, \
|
||||
{ 100, -10 }, \
|
||||
{ 200, -5 }, \
|
||||
{ 225, -3 }, \
|
||||
{ 256, 0 }, \
|
||||
{ 512, 1 }, \
|
||||
{ 768, 3}, \
|
||||
{ 1024, 4 }, \
|
||||
{ 1280, 5 }, \
|
||||
{ 2560, 10 }, \
|
||||
{ 5120, 20 }, \
|
||||
{ 10000, 30 }, \
|
||||
} }
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* tt516 receiver capabilities.
|
||||
|
@ -79,7 +101,9 @@ const struct rig_caps tt516_caps =
|
|||
.has_set_level = RIG_LEVEL_SET(TT516_LEVELS),
|
||||
.has_get_parm = RIG_PARM_NONE,
|
||||
.has_set_parm = RIG_PARM_NONE,
|
||||
.level_gran = {}, /* FIXME: granularity */
|
||||
.level_gran = {
|
||||
[LVL_RAWSTR] = { .min = { .i = 0 }, .max = { .i = 255 } },
|
||||
},
|
||||
.parm_gran = {},
|
||||
.ctcss_list = NULL,
|
||||
.dcs_list = NULL,
|
||||
|
@ -137,6 +161,7 @@ const struct rig_caps tt516_caps =
|
|||
{RIG_MODE_FM, kHz(15)},
|
||||
RIG_FLT_END,
|
||||
},
|
||||
.str_cal = TT516_STR_CAL,
|
||||
.priv = (void *)NULL,
|
||||
|
||||
.set_freq = tentec2_set_freq,
|
||||
|
|
|
@ -46,6 +46,27 @@
|
|||
|
||||
#define RX350_VFO_OPS (RIG_OP_TO_VFO|RIG_OP_FROM_VFO)
|
||||
|
||||
// Taken from RX320_STR_CAL -- unknown if accurate for RX350
|
||||
#define RX350_STR_CAL { 17, { \
|
||||
{ 0, -60 }, \
|
||||
{ 10, -50 }, \
|
||||
{ 20, -40 }, \
|
||||
{ 30, -30 }, \
|
||||
{ 40, -20 }, \
|
||||
{ 50, -15 }, \
|
||||
{ 100, -10 }, \
|
||||
{ 200, -5 }, \
|
||||
{ 225, -3 }, \
|
||||
{ 256, 0 }, \
|
||||
{ 512, 1 }, \
|
||||
{ 768, 3}, \
|
||||
{ 1024, 4 }, \
|
||||
{ 1280, 5 }, \
|
||||
{ 2560, 10 }, \
|
||||
{ 5120, 20 }, \
|
||||
{ 10000, 30 }, \
|
||||
} }
|
||||
|
||||
|
||||
/*
|
||||
* RX350 receiver capabilities.
|
||||
|
@ -85,7 +106,10 @@ const struct rig_caps rx350_caps =
|
|||
.has_set_level = RIG_LEVEL_SET(RX350_LEVELS),
|
||||
.has_get_parm = RX350_PARMS,
|
||||
.has_set_parm = RX350_PARMS,
|
||||
.level_gran = {}, /* FIXME: granularity */
|
||||
.level_gran =
|
||||
{
|
||||
[LVL_RAWSTR] = { .min = { .i = 0 }, .max = { .i = 255 } }
|
||||
},
|
||||
.parm_gran = {},
|
||||
.ctcss_list = NULL,
|
||||
.dcs_list = NULL,
|
||||
|
@ -131,6 +155,7 @@ const struct rig_caps rx350_caps =
|
|||
{RX350_MODES, 0}, /* 34 filters */
|
||||
RIG_FLT_END,
|
||||
},
|
||||
.str_cal = RX350_STR_CAL,
|
||||
.priv = (void *)NULL,
|
||||
|
||||
.set_freq = tentec2_set_freq,
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
#define _TENTEC2_H 1
|
||||
|
||||
#include <hamlib/rig.h>
|
||||
#include <idx_builtin.h>
|
||||
|
||||
// The include order will determine which BACKEND_VER is used
|
||||
// tentec.h may also be included and the last include is the BACKEND_VER used
|
||||
|
|
|
@ -41,6 +41,8 @@
|
|||
|
||||
#define DEFAULT_WINRADIO_PATH "/dev/winradio0"
|
||||
|
||||
#define WINRADIO_MODES RIG_MODE_AM | RIG_MODE_CW | RIG_MODE_LSB | RIG_MODE_USB | RIG_MODE_WFM | RIG_MODE_FM
|
||||
|
||||
int wr_rig_init(RIG *rig)
|
||||
{
|
||||
rig->state.rigport.type.rig = RIG_PORT_DEVICE;
|
||||
|
|
|
@ -197,22 +197,22 @@ const struct rig_caps frg100_caps =
|
|||
{ 0x33, 0x34, RIG_MTYPE_EDGE },
|
||||
},
|
||||
.rx_range_list1 = {
|
||||
{kHz(50), MHz(30), FRG100_MODES, -1, -1, FRG100_VFOS, FRG100_ANTS },
|
||||
{kHz(50), MHz(30), FRG100_MODES, 0, 0, FRG100_VFOS, FRG100_ANTS },
|
||||
RIG_FRNG_END,
|
||||
}, /* Region 1 rx ranges */
|
||||
|
||||
.tx_range_list1 = {
|
||||
{kHz(50), MHz(30), FRG100_MODES, -1, -1, FRG100_VFOS, FRG100_ANTS },
|
||||
{kHz(50), MHz(30), FRG100_MODES, 0, 0, FRG100_VFOS, FRG100_ANTS },
|
||||
RIG_FRNG_END,
|
||||
}, /* region 1 TX ranges */
|
||||
|
||||
.rx_range_list2 = {
|
||||
{kHz(50), MHz(30), FRG100_MODES, -1, -1, FRG100_VFOS, FRG100_ANTS },
|
||||
{kHz(50), MHz(30), FRG100_MODES, 0, 0, FRG100_VFOS, FRG100_ANTS },
|
||||
RIG_FRNG_END,
|
||||
}, /* Region 2 rx ranges */
|
||||
|
||||
.tx_range_list2 = {
|
||||
{kHz(50), MHz(30), FRG100_MODES, -1, -1, FRG100_VFOS, FRG100_ANTS },
|
||||
{kHz(50), MHz(30), FRG100_MODES, 0, 0, FRG100_VFOS, FRG100_ANTS },
|
||||
RIG_FRNG_END,
|
||||
}, /* region 2 TX ranges */
|
||||
|
||||
|
|
|
@ -290,7 +290,11 @@ const struct rig_caps ft600_caps =
|
|||
{FT600_ALL_RX_MODES, 1000},
|
||||
RIG_TS_END,
|
||||
},
|
||||
.filters = {},
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
|
||||
.str_cal = FT600_STR_CAL,
|
||||
.priv = NULL,
|
||||
.rig_init = ft600_init,
|
||||
|
|
|
@ -195,11 +195,11 @@ const struct rig_caps ft757gx_caps =
|
|||
},
|
||||
|
||||
/* mode/filter list, .remember = order matters! */
|
||||
.filters = {
|
||||
RIG_FLT_END,
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
|
||||
|
||||
.priv = NULL, /* private data */
|
||||
|
||||
.rig_init = ft757_init,
|
||||
|
|
|
@ -349,10 +349,10 @@ const struct rig_caps ft767gx_caps =
|
|||
|
||||
/* mode/filter list, .remember = order matters! */
|
||||
.filters = {
|
||||
RIG_FLT_END,
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
RIG_FLT_END
|
||||
},
|
||||
|
||||
|
||||
.priv = NULL, /* private data */
|
||||
|
||||
.rig_init = ft767_init,
|
||||
|
|
|
@ -626,6 +626,11 @@ const struct rig_caps ft650_caps =
|
|||
RIG_FRNG_END,
|
||||
}, /* tx range end */
|
||||
|
||||
.tuning_steps = {
|
||||
{RIG_MODE_ALL, 1},
|
||||
RIG_TS_END,
|
||||
},
|
||||
|
||||
/* mode/filter list, .remember = order matters! */
|
||||
.filters = {
|
||||
{RIG_MODE_SSB | RIG_MODE_CW, kHz(2.4)},
|
||||
|
|
|
@ -343,6 +343,7 @@ const struct rig_caps ft857_caps =
|
|||
* per testing by Rich Newsom, WA4SXZ
|
||||
*/
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
// {RIG_MODE_SSB, kHz(2.2)},
|
||||
// {RIG_MODE_CW, kHz(2.2)},
|
||||
// {RIG_MODE_CWR, kHz(2.2)},
|
||||
|
|
|
@ -348,6 +348,7 @@ const struct rig_caps ft897_caps =
|
|||
* per testing by Rich Newsom, WA4SXZ
|
||||
*/
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
// {RIG_MODE_SSB, kHz(2.2)},
|
||||
// {RIG_MODE_CW, kHz(2.2)},
|
||||
// {RIG_MODE_CWR, kHz(2.2)},
|
||||
|
@ -495,6 +496,7 @@ const struct rig_caps ft897d_caps =
|
|||
* per testing by Rich Newsom, WA4SXZ
|
||||
*/
|
||||
.filters = {
|
||||
{RIG_MODE_ALL, RIG_FLT_ANY},
|
||||
// {RIG_MODE_SSB, kHz(2.2)},
|
||||
// {RIG_MODE_CW, kHz(2.2)},
|
||||
// {RIG_MODE_CWR, kHz(2.2)},
|
||||
|
|
112
tests/dumpcaps.c
112
tests/dumpcaps.c
|
@ -36,6 +36,31 @@ int range_sanity_check(const struct freq_range_list range_list[], int rx);
|
|||
int ts_sanity_check(const struct tuning_step_list tuning_step[]);
|
||||
static void dump_chan_caps(const channel_cap_t *chan, FILE *fout);
|
||||
|
||||
struct rig_type_s
|
||||
{
|
||||
int type;
|
||||
char *description;
|
||||
};
|
||||
|
||||
struct rig_type_s rig_type[] =
|
||||
{
|
||||
{RIG_TYPE_OTHER, "Other"},
|
||||
{RIG_FLAG_RECEIVER, "Receiver"},
|
||||
{RIG_FLAG_TRANSMITTER, "Transmitter"},
|
||||
{RIG_FLAG_SCANNER, "Scanner"},
|
||||
{RIG_FLAG_MOBILE, "Mobile"},
|
||||
{RIG_FLAG_HANDHELD, "Handheld"},
|
||||
{RIG_FLAG_COMPUTER, "Computer"},
|
||||
{RIG_FLAG_TRANSCEIVER, "Transceiver"},
|
||||
{RIG_FLAG_TRUNKING, "Trunking scanner"},
|
||||
{RIG_FLAG_APRS, "APRS"},
|
||||
{RIG_FLAG_TNC, "TNC"},
|
||||
{RIG_FLAG_DXCLUSTER, "DxCluster"},
|
||||
{RIG_FLAG_DXCLUSTER, "DxCluster"},
|
||||
{RIG_FLAG_TUNER, "Tuner"},
|
||||
{-1, "?\n"}
|
||||
};
|
||||
|
||||
static int print_ext(RIG *rig, const struct confparams *cfp, rig_ptr_t ptr)
|
||||
{
|
||||
return print_ext_param(cfp, ptr);
|
||||
|
@ -51,10 +76,14 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
int can_esplit, can_echannel;
|
||||
char freqbuf[20];
|
||||
int backend_warnings = 0;
|
||||
static char prntbuf[1024]; /* a malloc would be better.. */
|
||||
char warnbuf[4096];
|
||||
char prntbuf[1024]; /* a malloc would be better.. */
|
||||
char *label1, *label2, *label3, *label4, *label5;
|
||||
char *labelrx1; // , *labelrx2, *labelrx3, *labelrx4, *labelrx5;
|
||||
|
||||
warnbuf[0] = 0;
|
||||
prntbuf[0] = 0;
|
||||
|
||||
if (!rig || !rig->caps)
|
||||
{
|
||||
return -RIG_EINVAL;
|
||||
|
@ -70,50 +99,22 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
fprintf(fout, "Backend status:\t%s\n", rig_strstatus(caps->status));
|
||||
fprintf(fout, "Rig type:\t");
|
||||
|
||||
switch (caps->rig_type & RIG_TYPE_MASK)
|
||||
char *unknown = "Unknown";
|
||||
|
||||
for (i = 0; rig_type[i].type != -1; ++i)
|
||||
{
|
||||
case RIG_TYPE_TRANSCEIVER:
|
||||
fprintf(fout, "Transceiver\n");
|
||||
break;
|
||||
if ((rig_type[i].type & caps->rig_type) == rig_type[i].type)
|
||||
{
|
||||
fprintf(fout, "%s ", rig_type[i].description);
|
||||
unknown = "";
|
||||
}
|
||||
}
|
||||
|
||||
case RIG_TYPE_HANDHELD:
|
||||
fprintf(fout, "Handheld\n");
|
||||
break;
|
||||
fprintf(fout, "%s\n", unknown);
|
||||
|
||||
case RIG_TYPE_MOBILE:
|
||||
fprintf(fout, "Mobile\n");
|
||||
break;
|
||||
|
||||
case RIG_TYPE_RECEIVER:
|
||||
fprintf(fout, "Receiver\n");
|
||||
break;
|
||||
|
||||
case RIG_TYPE_PCRECEIVER:
|
||||
fprintf(fout, "PC Receiver\n");
|
||||
break;
|
||||
|
||||
case RIG_TYPE_SCANNER:
|
||||
fprintf(fout, "Scanner\n");
|
||||
break;
|
||||
|
||||
case RIG_TYPE_TRUNKSCANNER:
|
||||
fprintf(fout, "Trunking scanner\n");
|
||||
break;
|
||||
|
||||
case RIG_TYPE_COMPUTER:
|
||||
fprintf(fout, "Computer\n");
|
||||
break;
|
||||
|
||||
case RIG_TYPE_TUNER:
|
||||
fprintf(fout, "Tuner\n");
|
||||
break;
|
||||
|
||||
case RIG_TYPE_OTHER:
|
||||
fprintf(fout, "Other\n");
|
||||
break;
|
||||
|
||||
default:
|
||||
fprintf(fout, "Unknown\n");
|
||||
if (strlen(unknown) > 0)
|
||||
{
|
||||
strcat(warnbuf, " RIG_TYPE");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -147,6 +148,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
default:
|
||||
fprintf(fout, "Unknown\n");
|
||||
strcat(warnbuf, " PTT_TYPE");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -180,6 +182,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
default:
|
||||
fprintf(fout, "Unknown\n");
|
||||
strcat(warnbuf, " DCD_TYPE");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -230,6 +233,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
default:
|
||||
fprintf(fout, "Unknown\n");
|
||||
strcat(warnbuf, " PORT_TYPE");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -384,6 +388,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
fprintf(fout,
|
||||
"Warning--backend has get RAWSTR, but not calibration data\n");
|
||||
strcat(warnbuf, " RAWSTR_level");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -396,6 +401,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
//fprintf(fout, "Warning--backend can set readonly levels=0x%0llx\n", caps->has_set_level & RIG_LEVEL_READONLY_LIST);
|
||||
fprintf(fout, "Warning--backend can set readonly levels\n");
|
||||
strcat(warnbuf, " READONLY_LEVEL");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -413,6 +419,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
if (caps->has_set_parm & RIG_PARM_READONLY_LIST)
|
||||
{
|
||||
fprintf(fout, "Warning--backend can set readonly parms!\n");
|
||||
strcat(warnbuf, " READONLY_PARM");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -427,6 +434,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
else
|
||||
{
|
||||
strcpy(prntbuf, "None. This backend might be bogus!\n");
|
||||
strcat(warnbuf, " MODE_LIST");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -439,6 +447,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
else
|
||||
{
|
||||
strcpy(prntbuf, "None. This backend might be bogus!\n");
|
||||
strcat(warnbuf, " VFO_LIST");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -531,6 +540,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " TX#1");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -542,6 +552,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " RX#1");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -553,6 +564,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " TX#2");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -564,6 +576,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " RX#2");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -575,6 +588,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " TX#3");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -586,6 +600,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " RX#3");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -597,6 +612,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " TX#4");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -608,6 +624,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " RX#4");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -619,6 +636,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " TX#5");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -630,6 +648,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " RX#5");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -653,6 +672,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
if (i == 0)
|
||||
{
|
||||
fprintf(fout, " None! This backend might be bogus!");
|
||||
strcat(warnbuf, " TUNING_STEPS");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -662,6 +682,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
|
||||
if (status)
|
||||
{
|
||||
strcat(warnbuf, " TUNING_SANE");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -685,6 +706,7 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
if (i == 0)
|
||||
{
|
||||
fprintf(fout, " None. This backend might be bogus!");
|
||||
strcat(warnbuf, " FILTERS");
|
||||
backend_warnings++;
|
||||
}
|
||||
|
||||
|
@ -903,7 +925,8 @@ int dumpcaps(RIG *rig, FILE *fout)
|
|||
fprintf(fout, "Can get power2mW:\t%c\n", caps->power2mW != NULL ? 'Y' : 'N');
|
||||
fprintf(fout, "Can get mW2power:\t%c\n", caps->mW2power != NULL ? 'Y' : 'N');
|
||||
|
||||
fprintf(fout, "\nOverall backend warnings: %d\n", backend_warnings);
|
||||
fprintf(fout, "\nOverall backend warnings: %d %c %s\n", backend_warnings,
|
||||
warnbuf[0] != 0 ? '=' : ' ', warnbuf);
|
||||
|
||||
return backend_warnings;
|
||||
}
|
||||
|
@ -1017,7 +1040,8 @@ int range_sanity_check(const struct freq_range_list range_list[], int rx)
|
|||
}
|
||||
else
|
||||
{
|
||||
if (!(range_list[i].low_power > 0 && range_list[i].high_power > 0))
|
||||
if (!(range_list[i].low_power >= RIG_FREQ_NONE
|
||||
&& range_list[i].high_power >= RIG_FREQ_NONE))
|
||||
{
|
||||
return -3;
|
||||
}
|
||||
|
|
Ładowanie…
Reference in New Issue