kopia lustrzana https://github.com/Hamlib/Hamlib
Added ECSS support to R8B and reconfigured default filter modes
git-svn-id: https://hamlib.svn.sourceforge.net/svnroot/hamlib/trunk@1800 7ae35d74-ebe9-4afe-98af-79ac388436b8Hamlib-1.2.2
rodzic
88758c164e
commit
69265579f6
|
@ -2,7 +2,7 @@
|
|||
* Hamlib Drake backend - main file
|
||||
* Copyright (c) 2001-2004 by Stephane Fillod
|
||||
*
|
||||
* $Id: drake.c,v 1.10 2004-08-08 20:14:03 fineware Exp $
|
||||
* $Id: drake.c,v 1.11 2004-08-12 02:04:30 fineware Exp $
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Library General Public License as
|
||||
|
@ -61,8 +61,6 @@
|
|||
/*
|
||||
* drake_transaction
|
||||
* We assume that rig!=NULL, rig->state!= NULL, data!=NULL, data_len!=NULL
|
||||
*
|
||||
* FIXME: this is a skeleton, rewrite me for Drake protocol
|
||||
*/
|
||||
int drake_transaction(RIG *rig, const char *cmd, int cmd_len, char *data, int *data_len)
|
||||
{
|
||||
|
@ -253,7 +251,9 @@ int drake_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width)
|
|||
|
||||
switch (mode) {
|
||||
case RIG_MODE_CW: mode_sel = MD_CW; break;
|
||||
case RIG_MODE_ECSSUSB:
|
||||
case RIG_MODE_USB: mode_sel = MD_USB; break;
|
||||
case RIG_MODE_ECSSLSB:
|
||||
case RIG_MODE_LSB: mode_sel = MD_LSB; break;
|
||||
case RIG_MODE_FM: mode_sel = MD_FM; break;
|
||||
case RIG_MODE_AMS:
|
||||
|
@ -291,8 +291,10 @@ int drake_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width)
|
|||
retval = drake_transaction (rig, mdbuf, mdbuf_len, ackbuf, &ack_len);
|
||||
}
|
||||
|
||||
if (mode == RIG_MODE_AMS || mode == RIG_MODE_AM) {
|
||||
mdbuf_len = sprintf(mdbuf, "S%c" EOM, mode==RIG_MODE_AMS?'O':'F');
|
||||
if ((mode == RIG_MODE_AMS) || (mode == RIG_MODE_ECSSUSB) || (mode == RIG_MODE_ECSSLSB) ||
|
||||
(mode == RIG_MODE_AM) || (mode == RIG_MODE_USB) || (mode == RIG_MODE_LSB)) {
|
||||
mdbuf_len = sprintf(mdbuf, "S%c" EOM,
|
||||
((mode == RIG_MODE_AMS) || (mode==RIG_MODE_ECSSUSB) || (mode==RIG_MODE_ECSSLSB))?'O':'F');
|
||||
retval = drake_transaction (rig, mdbuf, mdbuf_len, ackbuf, &ack_len);
|
||||
}
|
||||
|
||||
|
@ -385,9 +387,16 @@ int drake_get_mode(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width)
|
|||
|
||||
/*FIXME USB/LSB synch in R8B*/
|
||||
if (csynch=='4'||csynch=='5'||csynch=='6'||csynch=='7'||
|
||||
csynch=='<'||csynch=='='||csynch=='>'||csynch=='?')
|
||||
*mode = RIG_MODE_AMS;
|
||||
|
||||
csynch=='<'||csynch=='='||csynch=='>'||csynch=='?') {
|
||||
if (*mode == RIG_MODE_AM)
|
||||
*mode = RIG_MODE_AMS;
|
||||
else
|
||||
if (*mode == RIG_MODE_USB)
|
||||
*mode = RIG_MODE_ECSSUSB;
|
||||
else
|
||||
if (*mode == RIG_MODE_LSB)
|
||||
*mode = RIG_MODE_ECSSLSB;
|
||||
}
|
||||
return RIG_OK;
|
||||
}
|
||||
|
||||
|
|
16
drake/r8b.c
16
drake/r8b.c
|
@ -2,7 +2,7 @@
|
|||
* Hamlib Drake backend - R-8B description
|
||||
* Copyright (c) 2001-2004 by Stephane Fillod
|
||||
*
|
||||
* $Id: r8b.c,v 1.7 2004-08-08 20:14:46 fineware Exp $
|
||||
* $Id: r8b.c,v 1.8 2004-08-12 02:05:02 fineware Exp $
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Library General Public License as
|
||||
|
@ -30,7 +30,7 @@
|
|||
#include "drake.h"
|
||||
|
||||
|
||||
#define R8B_MODES (RIG_MODE_SSB|RIG_MODE_CW|RIG_MODE_RTTY|RIG_MODE_AM|RIG_MODE_AMS|RIG_MODE_FM)
|
||||
#define R8B_MODES (RIG_MODE_SSB|RIG_MODE_CW|RIG_MODE_RTTY|RIG_MODE_AM|RIG_MODE_ECSS|RIG_MODE_FM)
|
||||
|
||||
#define R8B_FUNC (RIG_FUNC_MN|RIG_FUNC_LOCK|RIG_FUNC_NB)
|
||||
|
||||
|
@ -138,12 +138,14 @@ const struct rig_caps r8b_caps = {
|
|||
},
|
||||
/* mode/filter list, remember: order matters! */
|
||||
.filters = {
|
||||
{RIG_MODE_SSB|RIG_MODE_CW|RIG_MODE_RTTY|RIG_MODE_AM|RIG_MODE_AMS, kHz(2.3)}, /* normal */
|
||||
{RIG_MODE_SSB|RIG_MODE_CW|RIG_MODE_RTTY|RIG_MODE_AM|RIG_MODE_AMS, kHz(6)}, /* wide */
|
||||
{RIG_MODE_SSB|RIG_MODE_CW|RIG_MODE_RTTY|RIG_MODE_AM|RIG_MODE_AMS, kHz(4)},
|
||||
{RIG_MODE_SSB|RIG_MODE_CW|RIG_MODE_RTTY|RIG_MODE_AM|RIG_MODE_AMS, kHz(1.8)}, /* narrow */
|
||||
{RIG_MODE_SSB|RIG_MODE_CW|RIG_MODE_RTTY|RIG_MODE_AM|RIG_MODE_AMS, Hz(500)},
|
||||
{RIG_MODE_FM, kHz(12)},
|
||||
{RIG_MODE_AM|RIG_MODE_ECSS, kHz(6)},
|
||||
{RIG_MODE_AM|RIG_MODE_ECSS, kHz(4)},
|
||||
{RIG_MODE_SSB|RIG_MODE_RTTY, kHz(2.3)},
|
||||
{RIG_MODE_SSB|RIG_MODE_RTTY, kHz(1.8)},
|
||||
{RIG_MODE_SSB|RIG_MODE_RTTY, kHz(4)},
|
||||
{RIG_MODE_CW, Hz(500)},
|
||||
{RIG_MODE_CW, kHz(1.8)},
|
||||
RIG_FLT_END,
|
||||
},
|
||||
.str_cal = R8B_STR_CAL,
|
||||
|
|
Ładowanie…
Reference in New Issue