Fix minor problems with YSF.

This commit is contained in:
Jonathan Naylor 2016-04-25 20:10:03 +01:00
parent 6700801653
commit fa4660d332
3 changed files with 6 additions and 12 deletions

View file

@ -34,7 +34,6 @@ m_interval(),
m_frames(0U),
m_errs(0U),
m_bits(0U),
m_headerSeen(false),
m_source(NULL),
m_dest(NULL),
m_payload(),
@ -87,7 +86,6 @@ bool CYSFControl::writeModem(unsigned char *data)
m_frames = 0U;
m_errs = 0U;
m_bits = 1U;
m_headerSeen = false;
m_timeoutTimer.start();
m_payload.reset();
m_state = RS_RF_AUDIO;
@ -120,7 +118,6 @@ bool CYSFControl::writeModem(unsigned char *data)
m_bits += 240U;
m_frames++;
m_headerSeen = true;
// valid = m_payload.processHeaderData(data + 2U);
@ -245,31 +242,29 @@ bool CYSFControl::writeModem(unsigned char *data)
break;
default: // YSF_DT_VOICE_FR_MODE
if (!m_headerSeen) {
if (fn != 0U || ft != 1U) {
// The first packet after the header is odd, don't try and regenerate it
m_errs += m_payload.processVoiceFRModeAudio(data + 2U);
m_bits += 720U;
// m_errs += m_payload.processVoiceFRModeAudio(data + 2U);
// m_bits += 720U;
valid = false;
}
break;
}
m_headerSeen = false;
bool change = false;
if (m_dest == NULL) {
if (cm == YSF_CM_GROUP) {
m_dest = (unsigned char*)"CQCQCQ ";
change = true;
} else {
} else if (valid) {
m_dest = m_payload.getDest();
if (m_dest != NULL)
change = true;
}
}
if (m_source == NULL) {
if (valid && m_source == NULL) {
m_source = m_payload.getSource();
if (m_source != NULL)
change = true;
@ -322,7 +317,6 @@ bool CYSFControl::writeModem(unsigned char *data)
m_bits += 40U;
m_frames++;
m_headerSeen = false;
if (m_duplex) {
data[0U] = TAG_DATA;

View file

@ -52,7 +52,6 @@ private:
unsigned int m_frames;
unsigned int m_errs;
unsigned int m_bits;
bool m_headerSeen;
unsigned char* m_source;
unsigned char* m_dest;
CYSFPayload m_payload;

View file

@ -1,5 +1,6 @@
/*
* Copyright (C) 2016 Jonathan Naylor, G4KLX
* Copyright (C) 2016 Matt Weyland, HB9FRV
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by