Upstream version 3.04AU

pull/2/head
Stelios Bounanos 2008-10-27 03:44:11 +00:00
rodzic 9461dc6706
commit 2114401abf
11 zmienionych plików z 93 dodań i 75 usunięć

Wyświetl plik

@ -9,7 +9,7 @@ dnl major and minor must be integers; patch may
dnl contain other characters or be empty dnl contain other characters or be empty
m4_define(FLDIGI_MAJOR, [3]) m4_define(FLDIGI_MAJOR, [3])
m4_define(FLDIGI_MINOR, [0]) m4_define(FLDIGI_MINOR, [0])
m4_define(FLDIGI_PATCH, [4AT]) m4_define(FLDIGI_PATCH, [4AU])
AC_INIT([fldigi], FLDIGI_MAJOR.FLDIGI_MINOR[FLDIGI_PATCH], [w1hkj AT w1hkj DOT com]) AC_INIT([fldigi], FLDIGI_MAJOR.FLDIGI_MINOR[FLDIGI_PATCH], [w1hkj AT w1hkj DOT com])

Wyświetl plik

@ -1314,7 +1314,7 @@ bool clean_exit(void) {
if (logfile) if (logfile)
logfile->log_to_file_stop(); logfile->log_to_file_stop();
if (bSaveFreqList) // if (bSaveFreqList)
saveFreqList(); saveFreqList();
progStatus.saveLastState(); progStatus.saveLastState();

Wyświetl plik

@ -76,6 +76,8 @@ public:
void setConf(const char *name, const char *val); void setConf(const char *name, const char *val);
void getConf(token_t token, char *val); void getConf(token_t token, char *val);
void getConf(const char *name, char *val); void getConf(const char *name, char *val);
const char *getName();
token_t tokenLookup(const char *name); token_t tokenLookup(const char *name);
pbwidth_t passbandNormal (rmode_t mode); pbwidth_t passbandNormal (rmode_t mode);
pbwidth_t passbandNarrow (rmode_t mode); pbwidth_t passbandNarrow (rmode_t mode);

Wyświetl plik

@ -34,6 +34,8 @@ extern int movFreq();
extern int qso_movFreq(); extern int qso_movFreq();
extern int cb_qso_opMODE(); extern int cb_qso_opMODE();
extern int cb_qso_opBW(); extern int cb_qso_opBW();
extern void qso_setMode();
extern string modeString(rmode_t m);
extern void selectFreq(); extern void selectFreq();
extern void delFreq(); extern void delFreq();

Wyświetl plik

@ -620,7 +620,7 @@ bool riginitOK = false;
} }
#if USE_HAMLIB #if USE_HAMLIB
} else if (chkUSEHAMLIBis) { // start the hamlib thread } else if (chkUSEHAMLIBis) { // start the hamlib thread
if (hamlib_init(btnPTTis == 1 ? true : false) == false) { if (hamlib_init(btnPTTis == 1 ? true : false)) {
wf->USB(true); wf->USB(true);
wf->setQSY(1); wf->setQSY(1);
if (docked_rig_control) if (docked_rig_control)
@ -674,6 +674,10 @@ FL_UNLOCK();
void configuration::testCommPorts() void configuration::testCommPorts()
{ {
inpTTYdev->clear();
inpRIGdev->clear();
inpXmlRigDevice->clear();
#ifndef PATH_MAX #ifndef PATH_MAX
# define PATH_MAX 1024 # define PATH_MAX 1024
#endif #endif
@ -768,6 +772,7 @@ out:
# if USE_HAMLIB # if USE_HAMLIB
inpRIGdev->add(ttyname); inpRIGdev->add(ttyname);
# endif # endif
inpXmlRigDevice->add(ttyname);
} }
#else // __APPLE__ #else // __APPLE__
glob(tty_fmt[i], 0, NULL, &gbuf); glob(tty_fmt[i], 0, NULL, &gbuf);
@ -780,6 +785,7 @@ out:
# if USE_HAMLIB # if USE_HAMLIB
inpRIGdev->add(gbuf.gl_pathv[j]); inpRIGdev->add(gbuf.gl_pathv[j]);
# endif # endif
inpXmlRigDevice->add(ttyname);
} }
globfree(&gbuf); globfree(&gbuf);

Wyświetl plik

@ -242,8 +242,9 @@ int hamlib_setfreq(long f)
return -1; return -1;
pthread_mutex_lock(&hamlib_mutex); pthread_mutex_lock(&hamlib_mutex);
try { try {
LOG_DEBUG("%ld", f);
xcvr->setFreq(f); xcvr->setFreq(f);
wf->rfcarrier(f);//(hamlib_freq); // wf->rfcarrier(f);//(hamlib_freq);
} }
catch (const RigException& Ex) { catch (const RigException& Ex) {
show_error("SetFreq", Ex.what()); show_error("SetFreq", Ex.what());
@ -255,6 +256,8 @@ int hamlib_setfreq(long f)
int hamlib_setmode(rmode_t m) int hamlib_setmode(rmode_t m)
{ {
if (need_mode == false)
return -1;
if (xcvr->isOnLine() == false) if (xcvr->isOnLine() == false)
return -1; return -1;
pthread_mutex_lock(&hamlib_mutex); pthread_mutex_lock(&hamlib_mutex);
@ -360,17 +363,17 @@ static void *hamlib_loop(void *args)
if (modeok && (hamlib_rmode != numode)) { if (modeok && (hamlib_rmode != numode)) {
hamlib_rmode = numode; hamlib_rmode = numode;
selMode(hamlib_rmode); // selMode(hamlib_rmode);
// qso_selMode(hamlib_rmode);
show_mode(modeString(hamlib_rmode));
if (hamlib_rmode == RIG_MODE_LSB || if (hamlib_rmode == RIG_MODE_LSB ||
hamlib_rmode == RIG_MODE_CWR || hamlib_rmode == RIG_MODE_CWR ||
hamlib_rmode == RIG_MODE_PKTLSB || hamlib_rmode == RIG_MODE_PKTLSB ||
hamlib_rmode == RIG_MODE_ECSSLSB || hamlib_rmode == RIG_MODE_ECSSLSB ||
hamlib_rmode == RIG_MODE_RTTYR) { hamlib_rmode == RIG_MODE_RTTYR) {
wf->USB(false); wf->USB(false);
show_mode("LSB");
} else { } else {
wf->USB(true); wf->USB(true);
show_mode("USB");
} }
} }

Wyświetl plik

@ -64,6 +64,12 @@ void Rig::init(rig_model_t rig_model) {
caps = theRig->caps; caps = theRig->caps;
} }
const char *Rig::getName()
{
if (theRig == NULL) return "";
return (caps->model_name);
}
void Rig::get_rignames() void Rig::get_rignames()
{ {
string rig_name_model; string rig_name_model;
@ -78,35 +84,10 @@ void Rig::get_rignames()
while (prig1 != riglist.end()) { while (prig1 != riglist.end()) {
rig_name_model.clear(); rig_name_model.clear();
switch ((*prig1)->status) { rig_name_model.append((*prig1)->model_name);
case RIG_STATUS_ALPHA : rig_name_model.append(" - ");
rig_name_model.append((*prig1)->model_name); rig_name_model.append(rig_strstatus((*prig1)->status));
rig_name_model.append(" - Alpha"); rignames.push_back(rig_name_model);
rignames.push_back(rig_name_model);
break;
case RIG_STATUS_UNTESTED :
rig_name_model.append((*prig1)->model_name);
rig_name_model.append(" - Untested");
rignames.push_back(rig_name_model);
break;
case RIG_STATUS_BETA :
rig_name_model.append((*prig1)->model_name);
rig_name_model.append(" - Beta");
rignames.push_back(rig_name_model);
break;
case RIG_STATUS_BUGGY :
break;
case RIG_STATUS_NEW :
rig_name_model.append((*prig1)->model_name);
rig_name_model.append(" - New");
rignames.push_back(rig_name_model);
break;
case RIG_STATUS_STABLE :
default :
rig_name_model.append((*prig1)->model_name);
rig_name_model.append(" - Stable");
rignames.push_back(rig_name_model);
}
prig1++; prig1++;
} }
} }

Wyświetl plik

@ -966,6 +966,24 @@ bool rigCAT_init(bool useXML)
rigio.Baud(progdefaults.BaudRate(progdefaults.XmlRigBaudrate)); rigio.Baud(progdefaults.BaudRate(progdefaults.XmlRigBaudrate));
rigio.Device(progdefaults.XmlRigDevice); rigio.Device(progdefaults.XmlRigDevice);
LOG_INFO("\n\
Serial port parameters:\n\
device : %s\n\
baudrate : %d\n\
retries : %d\n\
timeout : %d\n\
initial rts: %+d\n\
use rts ptt: %c\n\
initial dts: %+d\n\
use dtr ptt: %c\n\
flowcontrol: %c",
rigio.Device().c_str(),
rigio.Baud(),
rigio.Retries(), rigio.Timeout(),
(rigio.RTS() ? +12 : -12), (rigio.RTSptt() ? 'T' : 'F'),
(rigio.DTR() ? +12 : -12), (rigio.DTRptt() ? 'T' : 'F'),
(rigio.RTSCTS() ? 'T' : 'F'));
if (rigio.OpenPort() == false) { if (rigio.OpenPort() == false) {
LOG_ERROR("Cannot open serial port %s", rigio.Device().c_str()); LOG_ERROR("Cannot open serial port %s", rigio.Device().c_str());
return false; return false;

Wyświetl plik

@ -61,16 +61,17 @@ struct rmode_name_t {
{ RIG_MODE_AMS, "AMS" }, { RIG_MODE_AMS, "AMS" },
{ RIG_MODE_PKTLSB, "PKTLSB" }, { RIG_MODE_PKTLSB, "PKTLSB" },
{ RIG_MODE_PKTUSB, "PKTUSB" }, { RIG_MODE_PKTUSB, "PKTUSB" },
{ RIG_MODE_PKTFM, "PKTFM" }, { RIG_MODE_PKTFM, "PKTFM" }
{ RIG_MODE_ECSSUSB, "ECSSUSB" }, //, // C99 trailing commas in enumerations not yet in the C++ standard
{ RIG_MODE_ECSSLSB, "ECSSLSB" }, // { RIG_MODE_ECSSUSB, "ECSSUSB" },
{ RIG_MODE_FAX, "FAX" } // { RIG_MODE_ECSSLSB, "ECSSLSB" },
// { RIG_MODE_FAX, "FAX" }
// the above are covered by our requirement that hamlib be >= 1.2.4 // the above are covered by our requirement that hamlib be >= 1.2.4
#if (defined(RIG_MODE_SAM) && defined(RIG_MODE_SAL) && defined(RIG_MODE_SAH)) #if (defined(RIG_MODE_SAM) && defined(RIG_MODE_SAL) && defined(RIG_MODE_SAH))
, // C99 trailing commas in enumerations not yet in the C++ standard , // C99 trailing commas in enumerations not yet in the C++ standard
{ RIG_MODE_SAM, "SAM" }, { RIG_MODE_SAM, "SAM" },
{ RIG_MODE_SAL, "SAL" }, { RIG_MODE_SAL, "SAL" },
{ RIG_MODE_SAH, "SAH" } { RIG_MODE_SAH, "SAH" },
#endif #endif
}; };
@ -82,6 +83,16 @@ void selMode(rmode_t m)
opMODE->value(mode_names[m].c_str()); opMODE->value(mode_names[m].c_str());
} }
void qso_selMode(rmode_t m)
{
qso_opMODE->value(mode_names[m].c_str());
}
string modeString(rmode_t m)
{
return mode_names[m].c_str();
}
void selFreq(long int f) void selFreq(long int f)
{ {
if (FreqDisp) if (FreqDisp)
@ -347,10 +358,8 @@ int cb_qso_opBW()
return 0; return 0;
} }
int movFreq() void sendFreq(long int f)
{ {
long int f;
f = FreqDisp->value();
#if USE_HAMLIB #if USE_HAMLIB
if (progdefaults.chkUSEHAMLIBis) if (progdefaults.chkUSEHAMLIBis)
hamlib_setfreq(f); hamlib_setfreq(f);
@ -362,6 +371,13 @@ int movFreq()
rigCAT_setfreq(f); rigCAT_setfreq(f);
else else
rigCAT_setfreq(f); rigCAT_setfreq(f);
}
int movFreq()
{
long int f;
f = FreqDisp->value();
sendFreq(f);
return 0; return 0;
} }
@ -370,17 +386,7 @@ int qso_movFreq()
if (!progdefaults.docked_rig_control) return 0; if (!progdefaults.docked_rig_control) return 0;
long int f; long int f;
f = qsoFreqDisp->value(); f = qsoFreqDisp->value();
#if USE_HAMLIB sendFreq(f);
if (progdefaults.chkUSEHAMLIBis)
hamlib_setfreq(f);
else
#endif
if (progdefaults.chkUSEMEMMAPis)
rigMEM_set_freq(f);
else if (progdefaults.chkUSERIGCATis)
rigCAT_setfreq(f);
else
rigCAT_setfreq(f);
return 0; return 0;
} }
@ -395,7 +401,7 @@ void selectFreq()
if (freqlist[n].rfcarrier > 0) { if (freqlist[n].rfcarrier > 0) {
FreqDisp->value(freqlist[n].rfcarrier); FreqDisp->value(freqlist[n].rfcarrier);
movFreq(); sendFreq(freqlist[n].rfcarrier);
} }
if (freqlist[n].mode != NUM_MODES) { if (freqlist[n].mode != NUM_MODES) {
@ -422,7 +428,7 @@ void qso_selectFreq()
// transceiver frequency // transceiver frequency
if (freqlist[n].rfcarrier > 0) { if (freqlist[n].rfcarrier > 0) {
qsoFreqDisp->value(freqlist[n].rfcarrier); qsoFreqDisp->value(freqlist[n].rfcarrier);
qso_movFreq(); sendFreq(freqlist[n].rfcarrier);
} }
// modem type & audio sub carrier // modem type & audio sub carrier
if (freqlist[n].mode != NUM_MODES) { if (freqlist[n].mode != NUM_MODES) {
@ -444,7 +450,7 @@ void qso_setFreq()
// transceiver frequency // transceiver frequency
if (freqlist[n].rfcarrier > 0) { if (freqlist[n].rfcarrier > 0) {
qsoFreqDisp->value(freqlist[n].rfcarrier); qsoFreqDisp->value(freqlist[n].rfcarrier);
qso_movFreq(); sendFreq(freqlist[n].rfcarrier);
} }
} }
@ -496,13 +502,22 @@ void qso_addFreq()
void setTitle() void setTitle()
{ {
if (windowTitle.length() > 0) { if (windowTitle.length() > 0) {
rigcontrol->label(windowTitle.c_str()); //std::cout << windowTitle.c_str() << std::endl;
if (progdefaults.docked_rig_control) if (rigcontrol) {
rigcontrol->label(windowTitle.c_str());
}
if (progdefaults.docked_rig_control) {
txtRigName->label(windowTitle.c_str()); txtRigName->label(windowTitle.c_str());
txtRigName->redraw_label();
}
} else { } else {
rigcontrol->label(""); if (rigcontrol) {
if (progdefaults.docked_rig_control) rigcontrol->label("");
}
if (progdefaults.docked_rig_control) {
txtRigName->label("Non CAT mode"); txtRigName->label("Non CAT mode");
txtRigName->redraw_label();
}
} }
} }
@ -586,6 +601,9 @@ LOG_DEBUG("hamlib");
} }
clearList(); clearList();
buildlist(); buildlist();
windowTitle = "Hamlib ";
windowTitle.append(xcvr->getName());
setTitle(); setTitle();

Wyświetl plik

@ -593,18 +593,6 @@ void parsePORT(size_t &p0)
} }
p0 = pend; p0 = pend;
LOG_INFO("\nSerial port parameters:\n\
retries: %d\n\
timeout: %d\n\
initial rts: %+d\n\
use rts ptt: %c\n\
initial dts: %+d\n\
use dtr ptt: %c\n\
use flowcontrol: %c",
rig.retries, rig.timeout, (rig.rts ? +12 : -12),
(rig.rtsptt ? 'T' : 'F'), (rig.dtr ? +12 : -12), (rig.dtrptt ? 'T' : 'F'),
(rig.rtscts ? 'T' : 'F'));
} }
//--------------------------------------------------------------------- //---------------------------------------------------------------------

Wyświetl plik

@ -225,7 +225,7 @@ static void sound_init_options(void)
menuSampleConverter->tooltip(src_get_description(progdefaults.sample_converter)); menuSampleConverter->tooltip(src_get_description(progdefaults.sample_converter));
valPCMvolume->value(progdefaults.PCMvolume * 100.0); valPCMvolume->value(progdefaults.PCMvolume);
btnMicIn->value(progdefaults.MicIn); btnMicIn->value(progdefaults.MicIn);
btnLineIn->value(progdefaults.LineIn); btnLineIn->value(progdefaults.LineIn);