From 422b266b9b050ac28fe564ec00b6ef74d5c28892 Mon Sep 17 00:00:00 2001 From: Michael Black Date: Fri, 21 Dec 2018 12:39:20 -0500 Subject: [PATCH] Change RIG_MODE and RIG_FUNC to 64-bit values --- dummy/netrigctl.c | 8 +- include/hamlib/rig.h | 198 ++++++++++++++++++++++++++++--------------- tests/memcsv.c | 4 +- tests/rigctl_parse.c | 20 ++--- 4 files changed, 148 insertions(+), 82 deletions(-) diff --git a/dummy/netrigctl.c b/dummy/netrigctl.c index 389fa8995..f6b00b337 100644 --- a/dummy/netrigctl.c +++ b/dummy/netrigctl.c @@ -113,7 +113,7 @@ static int netrigctl_open(RIG *rig) if (ret <= 0) return (ret < 0) ? ret : -RIG_EPROTO; - ret = num_sscanf(buf, "%"SCNfreq"%"SCNfreq"%x%d%d%x%x", + ret = num_sscanf(buf, "%"SCNfreq"%"SCNfreq"%llx%d%d%x%x", &rs->rx_range_list[i].start, &rs->rx_range_list[i].end, &rs->rx_range_list[i].modes, @@ -132,7 +132,7 @@ static int netrigctl_open(RIG *rig) if (ret <= 0) return (ret < 0) ? ret : -RIG_EPROTO; - ret = num_sscanf(buf, "%"SCNfreq"%"SCNfreq"%x%d%d%x%x", + ret = num_sscanf(buf, "%"SCNfreq"%"SCNfreq"%llx%d%d%x%x", &rs->tx_range_list[i].start, &rs->tx_range_list[i].end, &rs->tx_range_list[i].modes, @@ -151,7 +151,7 @@ static int netrigctl_open(RIG *rig) if (ret <= 0) return (ret < 0) ? ret : -RIG_EPROTO; - ret = sscanf(buf, "%x%ld", + ret = sscanf(buf, "%llx%ld", &rs->tuning_steps[i].modes, &rs->tuning_steps[i].ts); if (ret != 2) @@ -165,7 +165,7 @@ static int netrigctl_open(RIG *rig) if (ret <= 0) return (ret < 0) ? ret : -RIG_EPROTO; - ret = sscanf(buf, "%x%ld", + ret = sscanf(buf, "%llx%ld", &rs->filters[i].modes, &rs->filters[i].width); if (ret != 2) diff --git a/include/hamlib/rig.h b/include/hamlib/rig.h index e39e353d6..3b6be3cce 100644 --- a/include/hamlib/rig.h +++ b/include/hamlib/rig.h @@ -760,7 +760,7 @@ enum rig_parm_e { * This can be a func, a level or a parm. * Each bit designates one of them. */ -typedef unsigned long setting_t; +typedef unsigned long long setting_t; /** * \brief Tranceive mode @@ -790,39 +790,71 @@ typedef unsigned long setting_t; * initialize the func_str.func members. TNX KA6MAL, AC6SL. - N0NB */ #define RIG_FUNC_NONE 0 /*!< '' -- No Function */ -#define RIG_FUNC_FAGC (1UL<<0) /*!< \c FAGC -- Fast AGC */ -#define RIG_FUNC_NB (1UL<<1) /*!< \c NB -- Noise Blanker */ -#define RIG_FUNC_COMP (1UL<<2) /*!< \c COMP -- Speech Compression */ -#define RIG_FUNC_VOX (1UL<<3) /*!< \c VOX -- Voice Operated Relay */ -#define RIG_FUNC_TONE (1UL<<4) /*!< \c TONE -- CTCSS Tone */ -#define RIG_FUNC_TSQL (1UL<<5) /*!< \c TSQL -- CTCSS Activate/De-activate */ -#define RIG_FUNC_SBKIN (1UL<<6) /*!< \c SBKIN -- Semi Break-in (CW mode) */ -#define RIG_FUNC_FBKIN (1UL<<7) /*!< \c FBKIN -- Full Break-in (CW mode) */ -#define RIG_FUNC_ANF (1UL<<8) /*!< \c ANF -- Automatic Notch Filter (DSP) */ -#define RIG_FUNC_NR (1UL<<9) /*!< \c NR -- Noise Reduction (DSP) */ -#define RIG_FUNC_AIP (1UL<<10) /*!< \c AIP -- RF pre-amp (AIP on Kenwood, IPO on Yaesu, etc.) */ -#define RIG_FUNC_APF (1UL<<11) /*!< \c APF -- Auto Passband/Audio Peak Filter */ -#define RIG_FUNC_MON (1UL<<12) /*!< \c MON -- Monitor transmitted signal */ -#define RIG_FUNC_MN (1UL<<13) /*!< \c MN -- Manual Notch */ -#define RIG_FUNC_RF (1UL<<14) /*!< \c RF -- RTTY Filter */ -#define RIG_FUNC_ARO (1UL<<15) /*!< \c ARO -- Auto Repeater Offset */ -#define RIG_FUNC_LOCK (1UL<<16) /*!< \c LOCK -- Lock */ -#define RIG_FUNC_MUTE (1UL<<17) /*!< \c MUTE -- Mute */ -#define RIG_FUNC_VSC (1UL<<18) /*!< \c VSC -- Voice Scan Control */ -#define RIG_FUNC_REV (1UL<<19) /*!< \c REV -- Reverse transmit and receive frequencies */ -#define RIG_FUNC_SQL (1UL<<20) /*!< \c SQL -- Turn Squelch Monitor on/off */ -#define RIG_FUNC_ABM (1UL<<21) /*!< \c ABM -- Auto Band Mode */ -#define RIG_FUNC_BC (1UL<<22) /*!< \c BC -- Beat Canceller */ -#define RIG_FUNC_MBC (1UL<<23) /*!< \c MBC -- Manual Beat Canceller */ -#define RIG_FUNC_RIT (1UL<<24) /*!< \c RIT -- Receiver Incremental Tuning */ -#define RIG_FUNC_AFC (1UL<<25) /*!< \c AFC -- Auto Frequency Control ON/OFF */ -#define RIG_FUNC_SATMODE (1UL<<26) /*!< \c SATMODE -- Satellite mode ON/OFF */ -#define RIG_FUNC_SCOPE (1UL<<27) /*!< \c SCOPE -- Simple bandscope ON/OFF */ -#define RIG_FUNC_RESUME (1UL<<28) /*!< \c RESUME -- Scan auto-resume */ -#define RIG_FUNC_TBURST (1UL<<29) /*!< \c TBURST -- 1750 Hz tone burst */ -#define RIG_FUNC_TUNER (1UL<<30) /*!< \c TUNER -- Enable automatic tuner */ -#define RIG_FUNC_XIT (1UL<<31) /*!< \c XIT -- Transmitter Incremental Tuning */ - +#define RIG_FUNC_FAGC (1ULL<<0) /*!< \c FAGC -- Fast AGC */ +#define RIG_FUNC_NB (1ULL<<1) /*!< \c NB -- Noise Blanker */ +#define RIG_FUNC_COMP (1ULL<<2) /*!< \c COMP -- Speech Compression */ +#define RIG_FUNC_VOX (1ULL<<3) /*!< \c VOX -- Voice Operated Relay */ +#define RIG_FUNC_TONE (1ULL<<4) /*!< \c TONE -- CTCSS Tone */ +#define RIG_FUNC_TSQL (1ULL<<5) /*!< \c TSQL -- CTCSS Activate/De-activate */ +#define RIG_FUNC_SBKIN (1ULL<<6) /*!< \c SBKIN -- Semi Break-in (CW mode) */ +#define RIG_FUNC_FBKIN (1ULL<<7) /*!< \c FBKIN -- Full Break-in (CW mode) */ +#define RIG_FUNC_ANF (1ULL<<8) /*!< \c ANF -- Automatic Notch Filter (DSP) */ +#define RIG_FUNC_NR (1ULL<<9) /*!< \c NR -- Noise Reduction (DSP) */ +#define RIG_FUNC_AIP (1ULL<<10) /*!< \c AIP -- RF pre-amp (AIP on Kenwood, IPO on Yaesu, etc.) */ +#define RIG_FUNC_APF (1ULL<<11) /*!< \c APF -- Auto Passband/Audio Peak Filter */ +#define RIG_FUNC_MON (1ULL<<12) /*!< \c MON -- Monitor transmitted signal */ +#define RIG_FUNC_MN (1ULL<<13) /*!< \c MN -- Manual Notch */ +#define RIG_FUNC_RF (1ULL<<14) /*!< \c RF -- RTTY Filter */ +#define RIG_FUNC_ARO (1ULL<<15) /*!< \c ARO -- Auto Repeater Offset */ +#define RIG_FUNC_LOCK (1ULL<<16) /*!< \c LOCK -- Lock */ +#define RIG_FUNC_MUTE (1ULL<<17) /*!< \c MUTE -- Mute */ +#define RIG_FUNC_VSC (1ULL<<18) /*!< \c VSC -- Voice Scan Control */ +#define RIG_FUNC_REV (1ULL<<19) /*!< \c REV -- Reverse transmit and receive frequencies */ +#define RIG_FUNC_SQL (1ULL<<20) /*!< \c SQL -- Turn Squelch Monitor on/off */ +#define RIG_FUNC_ABM (1ULL<<21) /*!< \c ABM -- Auto Band Mode */ +#define RIG_FUNC_BC (1ULL<<22) /*!< \c BC -- Beat Canceller */ +#define RIG_FUNC_MBC (1ULL<<23) /*!< \c MBC -- Manual Beat Canceller */ +#define RIG_FUNC_RIT (1ULL<<24) /*!< \c RIT -- Receiver Incremental Tuning */ +#define RIG_FUNC_AFC (1ULL<<25) /*!< \c AFC -- Auto Frequency Control ON/OFF */ +#define RIG_FUNC_SATMODE (1ULL<<26) /*!< \c SATMODE -- Satellite mode ON/OFF */ +#define RIG_FUNC_SCOPE (1ULL<<27) /*!< \c SCOPE -- Simple bandscope ON/OFF */ +#define RIG_FUNC_RESUME (1ULL<<28) /*!< \c RESUME -- Scan auto-resume */ +#define RIG_FUNC_TBURST (1ULL<<29) /*!< \c TBURST -- 1750 Hz tone burst */ +#define RIG_FUNC_TUNER (1ULL<<30) /*!< \c TUNER -- Enable automatic tuner */ +#define RIG_FUNC_XIT (1ULL<<31) /*!< \c XIT -- Transmitter Incremental Tuning */ +#define RIG_FUNC_BIT32 (1ULL<<32) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT33 (1ULL<<33) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT34 (1ULL<<34) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT35 (1ULL<<35) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT36 (1ULL<<36) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT37 (1ULL<<37) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT38 (1ULL<<38) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT39 (1ULL<<39) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT40 (1ULL<<40) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT41 (1ULL<<41) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT42 (1ULL<<42) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT43 (1ULL<<43) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT44 (1ULL<<44) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT45 (1ULL<<45) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT46 (1ULL<<46) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT47 (1ULL<<47) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT48 (1ULL<<48) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT49 (1ULL<<49) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT50 (1ULL<<50) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT51 (1ULL<<51) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT52 (1ULL<<52) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT53 (1ULL<<53) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT54 (1ULL<<54) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT55 (1ULL<<55) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT56 (1ULL<<56) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT57 (1ULL<<57) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT58 (1ULL<<58) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT59 (1ULL<<59) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT60 (1ULL<<60) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT61 (1ULL<<61) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT62 (1ULL<<62) /* available for future RIG_FUNC items */ +#define RIG_FUNC_BIT63 (1ULL<<63) /* available for future RIG_FUNC items */ +/* 63 is this highest bit number that can be used */ /** * \brief power unit macros @@ -845,38 +877,72 @@ typedef unsigned long setting_t; * \sa rig_parse_mode(), rig_strrmode() * TODO: Add new 8600 modes to rig2icom_mode() and icom2rig_mode() in frame.c */ -typedef enum { - RIG_MODE_NONE = 0, /*!< '' -- None */ - RIG_MODE_AM = (1 << 0), /*!< \c AM -- Amplitude Modulation */ - RIG_MODE_CW = (1 << 1), /*!< \c CW -- CW "normal" sideband */ - RIG_MODE_USB = (1 << 2), /*!< \c USB -- Upper Side Band */ - RIG_MODE_LSB = (1 << 3), /*!< \c LSB -- Lower Side Band */ - RIG_MODE_RTTY = (1 << 4), /*!< \c RTTY -- Radio Teletype */ - RIG_MODE_FM = (1 << 5), /*!< \c FM -- "narrow" band FM */ - RIG_MODE_WFM = (1 << 6), /*!< \c WFM -- broadcast wide FM */ - RIG_MODE_CWR = (1 << 7), /*!< \c CWR -- CW "reverse" sideband */ - RIG_MODE_RTTYR = (1 << 8), /*!< \c RTTYR -- RTTY "reverse" sideband */ - RIG_MODE_AMS = (1 << 9), /*!< \c AMS -- Amplitude Modulation Synchronous */ - RIG_MODE_PKTLSB = (1 << 10), /*!< \c PKTLSB -- Packet/Digital LSB mode (dedicated port) */ - RIG_MODE_PKTUSB = (1 << 11), /*!< \c PKTUSB -- Packet/Digital USB mode (dedicated port) */ - RIG_MODE_PKTFM = (1 << 12), /*!< \c PKTFM -- Packet/Digital FM mode (dedicated port) */ - RIG_MODE_ECSSUSB = (1 << 13), /*!< \c ECSSUSB -- Exalted Carrier Single Sideband USB */ - RIG_MODE_ECSSLSB = (1 << 14), /*!< \c ECSSLSB -- Exalted Carrier Single Sideband LSB */ - RIG_MODE_FAX = (1 << 15), /*!< \c FAX -- Facsimile Mode */ - RIG_MODE_SAM = (1 << 16), /*!< \c SAM -- Synchronous AM double sideband */ - RIG_MODE_SAL = (1 << 17), /*!< \c SAL -- Synchronous AM lower sideband */ - RIG_MODE_SAH = (1 << 18), /*!< \c SAH -- Synchronous AM upper (higher) sideband */ - RIG_MODE_DSB = (1 << 19), /*!< \c DSB -- Double sideband suppressed carrier */ - RIG_MODE_FMN = (1 << 21), /*!< \c FMN -- FM Narrow Kenwood ts990s */ - RIG_MODE_PKTAM = (1 << 22), /*!< \c PKTAM -- Packet/Digital AM mode e.g. IC7300 */ - RIG_MODE_P25 = (1 << 23), /*!< \c P25 -- APCO/P25 VHF,UHF digital mode IC-R8600 */ - RIG_MODE_DSTAR = (1 << 24), /*!< \c D-Star -- VHF,UHF digital mode IC-R8600 */ - RIG_MODE_DPMR = (1 << 25), /*!< \c dPMR -- digital PMR, VHF,UHF digital mode IC-R8600 */ - RIG_MODE_NXDNVN = (1 << 26), /*!< \c NXDN-VN -- VHF,UHF digital mode IC-R8600 */ - RIG_MODE_NXDN_N = (1 << 27), /*!< \c NXDN-N -- VHF,UHF digital mode IC-R8600 */ - RIG_MODE_DCR = (1 << 28), /*!< \c DCR -- VHF,UHF digital mode IC-R8600 */ - RIG_MODE_TESTS_MAX /*!< \c MUST ALWAYS BE LAST, Max Count for dumpcaps.c */ -} rmode_t; +#define ULL (unsigned long long) +typedef unsigned long long rmode_t; +#define RIG_MODE_NONE 0 /*!< '' -- None */ +#define RIG_MODE_AM (1ULL << 0) /*!< \c AM -- Amplitude Modulation */ +#define RIG_MODE_CW (1ULL << 1) /*!< \c CW -- CW "normal" sideband */ +#define RIG_MODE_USB (1ULL << 2) /*!< \c USB -- Upper Side Band */ +#define RIG_MODE_LSB (1ULL << 3) /*!< \c LSB -- Lower Side Band */ +#define RIG_MODE_RTTY (1ULL << 4) /*!< \c RTTY -- Radio Teletype */ +#define RIG_MODE_FM (1ULL << 5) /*!< \c FM -- "narrow" band FM */ +#define RIG_MODE_WFM (1ULL << 6) /*!< \c WFM -- broadcast wide FM */ +#define RIG_MODE_CWR (1ULL << 7) /*!< \c CWR -- CW "reverse" sideband */ +#define RIG_MODE_RTTYR (1ULL << 8) /*!< \c RTTYR -- RTTY "reverse" sideband */ +#define RIG_MODE_AMS (1ULL << 9) /*!< \c AMS -- Amplitude Modulation Synchronous */ +#define RIG_MODE_PKTLSB (1ULL << 10) /*!< \c PKTLSB -- Packet/Digital LSB mode (dedicated port) */ +#define RIG_MODE_PKTUSB (1ULL << 11) /*!< \c PKTUSB -- Packet/Digital USB mode (dedicated port) */ +#define RIG_MODE_PKTFM (1ULL << 12) /*!< \c PKTFM -- Packet/Digital FM mode (dedicated port) */ +#define RIG_MODE_ECSSUSB (1ULL << 13) /*!< \c ECSSUSB -- Exalted Carrier Single Sideband USB */ +#define RIG_MODE_ECSSLSB (1ULL << 14) /*!< \c ECSSLSB -- Exalted Carrier Single Sideband LSB */ +#define RIG_MODE_FAX (1ULL << 15) /*!< \c FAX -- Facsimile Mode */ +#define RIG_MODE_SAM (1ULL << 16) /*!< \c SAM -- Synchronous AM double sideband */ +#define RIG_MODE_SAL (1ULL << 17) /*!< \c SAL -- Synchronous AM lower sideband */ +#define RIG_MODE_SAH (1ULL << 18) /*!< \c SAH -- Synchronous AM upper (higher) sideband */ +#define RIG_MODE_DSB (1ULL << 19) /*!< \c DSB -- Double sideband suppressed carrier */ +#define RIG_MODE_FMN (1ULL << 21) /*!< \c FMN -- FM Narrow Kenwood ts990s */ +#define RIG_MODE_PKTAM (1ULL << 22) /*!< \c PKTAM -- Packet/Digital AM mode e.g. IC7300 */ +#define RIG_MODE_P25 (1ULL << 23) /*!< \c P25 -- APCO/P25 VHF,UHF digital mode IC-R8600 */ +#define RIG_MODE_DSTAR (1ULL << 24) /*!< \c D-Star -- VHF,UHF digital mode IC-R8600 */ +#define RIG_MODE_DPMR (1ULL << 25) /*!< \c dPMR -- digital PMR, VHF,UHF digital mode IC-R8600 */ +#define RIG_MODE_NXDNVN (1ULL << 26) /*!< \c NXDN-VN -- VHF,UHF digital mode IC-R8600 */ +#define RIG_MODE_NXDN_N (1ULL << 27) /*!< \c NXDN-N -- VHF,UHF digital mode IC-R8600 */ +#define RIG_MODE_DCR (1ULL << 28) /*!< \c DCR -- VHF,UHF digital mode IC-R8600 */ +#define RIG_MODE_BIT29 (1ULL << 29) /* reserved for future expansion */ +#define RIG_MODE_BIT30 (1ULL << 30) /* reserved for future expansion */ +#define RIG_MODE_BIT31 (1ULL << 31) /* reserved for future expansion */ +#define RIG_MODE_BIT32 (1ULL << 32) /* reserved for future expansion */ +#define RIG_MODE_BIT33 (1ULL << 33) /* reserved for future expansion */ +#define RIG_MODE_BIT34 (1ULL << 34) /* reserved for future expansion */ +#define RIG_MODE_BIT35 (1ULL << 35) /* reserved for future expansion */ +#define RIG_MODE_BIT36 (1ULL << 36) /* reserved for future expansion */ +#define RIG_MODE_BIT37 (1ULL << 37) /* reserved for future expansion */ +#define RIG_MODE_BIT38 (1ULL << 38) /* reserved for future expansion */ +#define RIG_MODE_BIT39 (1ULL << 39) /* reserved for future expansion */ +#define RIG_MODE_BIT40 (1ULL << 40) /* reserved for future expansion */ +#define RIG_MODE_BIT41 (1ULL << 41) /* reserved for future expansion */ +#define RIG_MODE_BIT42 (1ULL << 42) /* reserved for future expansion */ +#define RIG_MODE_BIT43 (1ULL << 43) /* reserved for future expansion */ +#define RIG_MODE_BIT44 (1ULL << 44) /* reserved for future expansion */ +#define RIG_MODE_BIT45 (1ULL << 45) /* reserved for future expansion */ +#define RIG_MODE_BIT46 (1ULL << 46) /* reserved for future expansion */ +#define RIG_MODE_BIT47 (1ULL << 47) /* reserved for future expansion */ +#define RIG_MODE_BIT48 (1ULL << 48) /* reserved for future expansion */ +#define RIG_MODE_BIT49 (1ULL << 49) /* reserved for future expansion */ +#define RIG_MODE_BIT50 (1ULL << 50) /* reserved for future expansion */ +#define RIG_MODE_BIT51 (1ULL << 51) /* reserved for future expansion */ +#define RIG_MODE_BIT52 (1ULL << 52) /* reserved for future expansion */ +#define RIG_MODE_BIT53 (1ULL << 53) /* reserved for future expansion */ +#define RIG_MODE_BIT54 (1ULL << 54) /* reserved for future expansion */ +#define RIG_MODE_BIT55 (1ULL << 55) /* reserved for future expansion */ +#define RIG_MODE_BIT56 (1ULL << 56) /* reserved for future expansion */ +#define RIG_MODE_BIT57 (1ULL << 57) /* reserved for future expansion */ +#define RIG_MODE_BIT58 (1ULL << 58) /* reserved for future expansion */ +#define RIG_MODE_BIT59 (1ULL << 59) /* reserved for future expansion */ +#define RIG_MODE_BIT60 (1ULL << 60) /* reserved for future expansion */ +#define RIG_MODE_BIT61 (1ULL << 61) /* reserved for future expansion */ +#define RIG_MODE_BIT62 (1ULL << 62) /* reserved for future expansion */ +#define RIG_MODE_TESTS_MAX (1ULL << 63) /*!< \c last bit available for 64-bit enum MUST ALWAYS BE LAST, Max Count for dumpcaps.c */ /** diff --git a/tests/memcsv.c b/tests/memcsv.c index fe3a0920c..415548b57 100644 --- a/tests/memcsv.c +++ b/tests/memcsv.c @@ -669,7 +669,7 @@ int dump_csv_chan(RIG *rig, if (mem_caps->funcs) { - fprintf(f, "%lx%c", chan.funcs, csv_sep); + fprintf(f, "%llx%c", chan.funcs, csv_sep); } if (mem_caps->ctcss_tone) @@ -940,7 +940,7 @@ int set_channel_data(RIG *rig, if (i >= 0) { - sscanf(line_data_list[i], "%lx", &chan->funcs); + sscanf(line_data_list[i], "%llx", &chan->funcs); } } diff --git a/tests/rigctl_parse.c b/tests/rigctl_parse.c index b6b5a949c..7a7ef9df1 100644 --- a/tests/rigctl_parse.c +++ b/tests/rigctl_parse.c @@ -3788,7 +3788,7 @@ declare_proto_rig(dump_state) for (i = 0; i < FRQRANGESIZ && !RIG_IS_FRNG_END(rs->rx_range_list[i]); i++) { fprintf(fout, - "%"FREQFMT" %"FREQFMT" 0x%x %d %d 0x%x 0x%x\n", + "%"FREQFMT" %"FREQFMT" 0x%llx %d %d 0x%x 0x%x\n", rs->rx_range_list[i].start, rs->rx_range_list[i].end, rs->rx_range_list[i].modes, @@ -3803,7 +3803,7 @@ declare_proto_rig(dump_state) for (i = 0; i < FRQRANGESIZ && !RIG_IS_FRNG_END(rs->tx_range_list[i]); i++) { fprintf(fout, - "%"FREQFMT" %"FREQFMT" 0x%x %d %d 0x%x 0x%x\n", + "%"FREQFMT" %"FREQFMT" 0x%llx %d %d 0x%x 0x%x\n", rs->tx_range_list[i].start, rs->tx_range_list[i].end, rs->tx_range_list[i].modes, @@ -3818,7 +3818,7 @@ declare_proto_rig(dump_state) for (i = 0; i < TSLSTSIZ && !RIG_IS_TS_END(rs->tuning_steps[i]); i++) { fprintf(fout, - "0x%x %ld\n", + "0x%llx %ld\n", rs->tuning_steps[i].modes, rs->tuning_steps[i].ts); } @@ -3828,7 +3828,7 @@ declare_proto_rig(dump_state) for (i = 0; i < FLTLSTSIZ && !RIG_IS_FLT_END(rs->filters[i]); i++) { fprintf(fout, - "0x%x %ld\n", + "0x%llx %ld\n", rs->filters[i].modes, rs->filters[i].width); } @@ -3858,12 +3858,12 @@ declare_proto_rig(dump_state) fprintf(fout, "\n"); - fprintf(fout, "0x%lx\n", rs->has_get_func); - fprintf(fout, "0x%lx\n", rs->has_set_func); - fprintf(fout, "0x%lx\n", rs->has_get_level); - fprintf(fout, "0x%lx\n", rs->has_set_level); - fprintf(fout, "0x%lx\n", rs->has_get_parm); - fprintf(fout, "0x%lx\n", rs->has_set_parm); + fprintf(fout, "0x%llx\n", rs->has_get_func); + fprintf(fout, "0x%llx\n", rs->has_set_func); + fprintf(fout, "0x%llx\n", rs->has_get_level); + fprintf(fout, "0x%llx\n", rs->has_set_level); + fprintf(fout, "0x%llx\n", rs->has_get_parm); + fprintf(fout, "0x%llx\n", rs->has_set_parm); #if 0 gran_t level_gran[RIG_SETTING_MAX]; /*!< level granularity */