diff --git a/ComLib.h b/ComLib.h index 5acfcb5..4a7fbc9 100644 --- a/ComLib.h +++ b/ComLib.h @@ -32,7 +32,10 @@ #include #define VERID "Ver1.70" //K6TU 1.68A -> 1.70A AA6YQ 1.65D->1.66G, JE3HHT 1.67 -#define VERBETA "A" +#define VERBETA "D" //JA7UDE 1.70A -> 1.70B G3WYW FT-991 CAT support + //AA6YQ 1.70C added COM16-32 to PTT/FSK port selector and Radio port selector, added 991 to Yaesu Maker selector entry + //AA6YQ 1.70D prevent shift > 4000 Hz so CSlideFFT::Create does not divide by zero + #define VERTTL2 "MMTTY "VERID VERBETA #define VERTTL VERTTL2" (C) JE3HHT 2000-2010." diff --git a/Option.dfm b/Option.dfm index 35ee220..8a80866 100644 Binary files a/Option.dfm and b/Option.dfm differ diff --git a/Rtty.cpp b/Rtty.cpp index 4e5ec65..3646e2f 100644 --- a/Rtty.cpp +++ b/Rtty.cpp @@ -740,22 +740,26 @@ void CFSKDEM::SetLPFFreq(double f) void CFSKDEM::SetMarkFreq(double d) { - m_SetMarkFreq = m_AFCMarkFreq = m_MarkFreq = d; - MakeFilter(HMark, m_Tap, ffBPF, DemSamp, m_MarkFreq-m_FilWidth, m_MarkFreq+m_FilWidth, 60, 1.0); - SetIIR(m_iirfw); - m_Phase.SetCarrierFreq(m_AFCMarkFreq); - if( m_AFCSpaceFreq > m_AFCMarkFreq ) m_Phase.SetShift(m_AFCSpaceFreq - m_AFCMarkFreq); - m_AA6YQ.SetMarkFreq(m_AFCMarkFreq); + if ((m_AFCSpaceFreq - d) < 4000) { //1.70D prevent divide by zero in M_SlideFFT.Create + m_SetMarkFreq = m_AFCMarkFreq = m_MarkFreq = d; + MakeFilter(HMark, m_Tap, ffBPF, DemSamp, m_MarkFreq-m_FilWidth, m_MarkFreq+m_FilWidth, 60, 1.0); + SetIIR(m_iirfw); + m_Phase.SetCarrierFreq(m_AFCMarkFreq); + if( m_AFCSpaceFreq > m_AFCMarkFreq ) m_Phase.SetShift(m_AFCSpaceFreq - m_AFCMarkFreq); + m_AA6YQ.SetMarkFreq(m_AFCMarkFreq); + } } void CFSKDEM::SetSpaceFreq(double d) { - m_SetSpaceFreq = m_AFCSpaceFreq = m_SpaceFreq = d; - MakeFilter(HSpace, m_Tap, ffBPF, DemSamp, m_SpaceFreq-m_FilWidth, m_SpaceFreq+m_FilWidth, 60, 1.0); - SetIIR(m_iirfw); - m_Phase.SetCarrierFreq(m_AFCMarkFreq); - if( m_AFCSpaceFreq > m_AFCMarkFreq ) m_Phase.SetShift(m_AFCSpaceFreq - m_AFCMarkFreq); - m_AA6YQ.SetSpaceFreq(m_AFCSpaceFreq); + if ((d - m_AFCMarkFreq) < 4000) { //1.70D prevent divide by zero in M_SlideFFT.Create + m_SetSpaceFreq = m_AFCSpaceFreq = m_SpaceFreq = d; + MakeFilter(HSpace, m_Tap, ffBPF, DemSamp, m_SpaceFreq-m_FilWidth, m_SpaceFreq+m_FilWidth, 60, 1.0); + SetIIR(m_iirfw); + m_Phase.SetCarrierFreq(m_AFCMarkFreq); + if( m_AFCSpaceFreq > m_AFCMarkFreq ) m_Phase.SetShift(m_AFCSpaceFreq - m_AFCMarkFreq); + m_AA6YQ.SetSpaceFreq(m_AFCSpaceFreq); + } } void CFSKDEM::AFCMarkFreq(double d) diff --git a/Sound.cpp b/Sound.cpp index 0ccffb8..53e7eb2 100644 --- a/Sound.cpp +++ b/Sound.cpp @@ -60,7 +60,7 @@ __fastcall TSound::TSound(bool CreateSuspended) m_ReqFifoSize = 0; m_IDDevice = WAVE_MAPPER; - m_IDOutDevice = WAVE_MAPPER; //AA6YQ 1.6.6 + m_IDOutDevice = WAVE_MAPPER; //AA6YQ 1.66 m_playmode = 0; m_susp = 0; m_suspack = 0; @@ -1074,7 +1074,7 @@ int __fastcall TSound::DrawFFTWater(Graphics::TBitmap *pBitmap, int sw, int XRD) //--------------------------------------------------------------------------- -//AA6YQ 1.6.6 +//AA6YQ 1.66 LPCSTR __fastcall TSound::GetInputSoundcard(unsigned int ID) { diff --git a/Sound.h b/Sound.h index 262a263..b1c7a7a 100644 --- a/Sound.h +++ b/Sound.h @@ -123,7 +123,7 @@ public: void __fastcall InitWFX(void); UINT m_IDDevice; - UINT m_IDOutDevice; //AA6YQ 1.6.6 + UINT m_IDOutDevice; //AA6YQ 1.66 int m_playmode; int m_susp; diff --git a/radioset.cpp b/radioset.cpp index 2f39292..0bf6039 100644 --- a/radioset.cpp +++ b/radioset.cpp @@ -29,7 +29,7 @@ //Define Maker groups; index is used by IsCompatible to select the correct Maker based on PollType (RADIO_POLLx) LPCSTR __MK[]={ "Yaesu FT 1000D, 1000MP, 920", //AA6YQ 1.66 cosmetic, MakerIndex=0 - "Yaesu FT 9000, 2000, 950, 450", //AA6YQ 1.66 , MakerIndex=1 + "Yaesu FT 9000, 2000, 991, 950, 450", //AA6YQ 1.66 , MakerIndex=1 "Yaesu FT 736, 817, 847, 857, 897", //AA6YQ 1.66 cosmetic, MakerIndex=2 "Icom xx=addr 01-7F", // , MakerIndex=3 "Ten-Tec Omni VI xx=addr 00-64", // , MakerIndex=4 @@ -560,3 +560,4 @@ void __fastcall TRADIOSetDlg::SBHelpClick(TObject *Sender) } //--------------------------------------------------------------------------- + diff --git a/radioset.dfm b/radioset.dfm index b2fb8e9..7deed2b 100644 Binary files a/radioset.dfm and b/radioset.dfm differ diff --git a/radioset.h b/radioset.h index 10fc7da..398e0d0 100644 --- a/radioset.h +++ b/radioset.h @@ -108,7 +108,7 @@ private: int m_DisEvent; int __fastcall IsXX(void); int __fastcall IsSame(LPCSTR v, LPCSTR t); - int __fastcall IsCompatible(int PollType, int MakerIndex); //AA6YQ 1.6.6 + int __fastcall IsCompatible(int PollType, int MakerIndex); //AA6YQ 1.66 void __fastcall SetMaker(void); void __fastcall UpdateUI(void); void __fastcall SetVFOList(void);