Merge pull request #1 from K6TU/1.70A

Version 1.70A - K6TU 3/19/2015
This commit is contained in:
Stephen Hicks 2015-03-23 15:48:25 -05:00
commit 88716f5190
13 changed files with 2155 additions and 2060 deletions

4
.gitignore vendored
View file

@ -11,3 +11,7 @@
*.lai
*.la
*.a
# C++Builder generated files
mmtty.exe
Debug_Build/*

View file

@ -31,7 +31,7 @@
#include <mbstring.h>
#include <SHELLAPI.H>
#define VERID "Ver1.68" //AA6YQ 1.65D->1.66G, JE3HHT 1.67
#define VERID "Ver1.70" //K6TU 1.68A -> 1.70A AA6YQ 1.65D->1.66G, JE3HHT 1.67
#define VERBETA "A"
#define VERTTL2 "MMTTY "VERID VERBETA
#define VERTTL VERTTL2" (C) JE3HHT 2000-2010."

View file

@ -106,8 +106,8 @@ FFTTones=4
SoundRxFifo=12
SoundTxFifo=4
SoundPriority=1
SoundDevice=2
SoundOutDevice=5
SoundDevice=6
SoundOutDevice=13
SoundStereo=0
SoundMMW=
Tap=512
@ -182,7 +182,7 @@ ExtLog=
RecSound=
[LogFile]
Name=
Name=Y:\Documents\Ham Radio\mmtty\.MDT
[WaterFall]
Palette=0
@ -783,8 +783,8 @@ usePTT=0
ByteWait=0
Cmdxx=0
CmdInit=
CmdRx=\$000000000F
CmdTx=\$000000010F\w10
CmdRx=RX;
CmdTx=TX;\w10
FileGNR=
OpenGNR=0
PollType=0

View file

@ -34,6 +34,12 @@
//TAgcSetDlg *AgcSetDlg;
int PageIndex = 0;
static int PageIndexBPF = 0;
// Static array to map selected audio devices from radio group index
// to unit number - one each for input & output devices
// K6TU 3/17/2015
static int InputDeviceMap[16];
static int OutputDeviceMap[16];
//---------------------------------------------------------------------
__fastcall TOptionDlg::TOptionDlg(TComponent* AOwner)
: TForm(AOwner)
@ -58,19 +64,72 @@ __fastcall TOptionDlg::TOptionDlg(TComponent* AOwner)
SetComboBox(pllVCOGain, MmttyWd->m_asVCOGain.c_str());
SetComboBox(pllLoopFC, MmttyWd->m_asLoopFC.c_str());
//K6TU
// Amended enumeration of audio units to review the
// first 32 units for each of input & output.
//
// To address the introduction of DAX by FlexRadio systems
// for their Flex-6000 series radios, only devices that do NOT
// include the substrings "IQ" or "RESERVED" are provided
// as choices to the user.
int CountUnits = 0;
int CurrentUnit = 0;
LPCSTR devName;
char *cString;
//AA6YQ 1.66
InputSoundcards->Items->BeginUpdate();
InputSoundcards->Items->Clear();
for( int i = 0; i < 16; i++ ){
InputSoundcards->Items->Add(MmttyWd->pSound->GetInputSoundcard(i));
while (CountUnits < 16 && CurrentUnit < 32) {
devName = MmttyWd->pSound->GetInputSoundcard(CurrentUnit);
cString = AnsiString(devName).c_str();
if (strstr(cString, "IQ") || strstr(cString, "RESERVED")) {
// This is one of the FlexRadio audio devices we don't want
CurrentUnit++;
continue;
}
// This is a device we want...
if (devName) {
InputSoundcards->Items->Add(devName);
InputDeviceMap[CountUnits++] = CurrentUnit++;
} else {
CurrentUnit++;
}
}
// for( int i = 0; i < 16; i++ ){
// InputSoundcards->Items->Add(MmttyWd->pSound->GetInputSoundcard(i));
// }
InputSoundcards->Items->EndUpdate();
OutputSoundcards->Items->BeginUpdate();
OutputSoundcards->Items->Clear();
for( int i = 0; i < 16; i++ ){
OutputSoundcards->Items->Add(MmttyWd->pSound->GetOutputSoundcard(i));
CountUnits = 0;
CurrentUnit = 0;
while (CountUnits < 16 && CurrentUnit < 32) {
devName = MmttyWd->pSound->GetOutputSoundcard(CurrentUnit);
cString = AnsiString(devName).c_str();
if (strstr(cString, "IQ") || strstr(cString, "RESERVED")) {
// This is one of the FlexRadio audio devices we don't want
CurrentUnit++;
continue;
}
// This is a device we want...
if (devName) {
OutputSoundcards->Items->Add(devName);
OutputDeviceMap[CountUnits++] = CurrentUnit++;
} else {
CurrentUnit++;
}
}
//for( int i = 0; i < 16; i++ ){
// OutputSoundcards->Items->Add(MmttyWd->pSound->GetOutputSoundcard(i));
//}
OutputSoundcards->Items->EndUpdate();
@ -471,16 +530,40 @@ int __fastcall TOptionDlg::Execute(CFSKDEM *fp, CFSKMOD *mp)
}
//AA6YQ 1.66
//K6TU
if (IsSoundcard (AnsiString(DevNo->Text).c_str())) { //JA7UDE 0428
InputSoundcards->ItemIndex = atoi(AnsiString(DevNo->Text).c_str()); //AA6YQ 1.66 //JA7UDE 0428
// Assuming that devices haven't been re-enumerated by Windows,
// we need to find the corresponding unit number in the map in order
// to select the right unit
int unitNum = atoi(AnsiString(DevNo->Text).c_str());
int i;
for (i=0; i < 16; i++) {
if (InputDeviceMap[i] == unitNum) {
break;
}
}
InputSoundcards->ItemIndex = i != 16 ? i : -1;
// InputSoundcards->ItemIndex = atoi(AnsiString(DevNo->Text).c_str()); //AA6YQ 1.66 //JA7UDE 0428
}
else {
InputSoundcards->ItemIndex =-1;
}
//AA6YQ 1.66
//K6TU
if (IsSoundcard (AnsiString(DevOutNo->Text).c_str())) { //JA7UDE 0428
OutputSoundcards->ItemIndex = atoi(AnsiString(DevOutNo->Text).c_str()); //AA6YQ 1.66 //JA7UDE 0428
// Assuming that devices haven't been re-enumerated by Windows,
// we need to find the corresponding unit number in the map in order
// to select the right unit
int unitNum = atoi(AnsiString(DevOutNo->Text).c_str());
int i;
for (i=0; i < 16; i++) {
if (OutputDeviceMap[i] == unitNum) {
break;
}
}
OutputSoundcards->ItemIndex = i != 16 ? i : -1;
// OutputSoundcards->ItemIndex = atoi(AnsiString(DevOutNo->Text).c_str()); //AA6YQ 1.66 //JA7UDE 0428
}
else {
OutputSoundcards->ItemIndex =-1;
@ -738,7 +821,9 @@ int __fastcall TOptionDlg::Execute(CFSKDEM *fp, CFSKMOD *mp)
sys.m_SoundPriority = SoundPriority->ItemIndex;
if( sscanf(AnsiString(DevNo->Text).c_str(), "%d", &dd) == 1 ){ //JA7UDE 0428
sys.m_SoundDevice = dd;
// Find the unit number in the input map and update
sys.m_SoundDevice = InputDeviceMap[dd];
// sys.m_SoundDevice = dd;
}
else {
sys.m_SoundDevice = -2;
@ -747,7 +832,9 @@ int __fastcall TOptionDlg::Execute(CFSKDEM *fp, CFSKMOD *mp)
//AA6YQ 1.66
if( sscanf(AnsiString(DevOutNo->Text).c_str(), "%d", &dd) == 1 ){ //JA7UDE 0428
sys.m_SoundOutDevice = dd;
// Find the unit in the output map and update
sys.m_SoundOutDevice = OutputDeviceMap[dd];
// sys.m_SoundOutDevice = dd;
}
else {
sys.m_SoundOutDevice = -2;

Binary file not shown.

View file

@ -349,7 +349,7 @@ TXECHO=0
TXBPFTAP=48
TXLPF=0
TXLPFFreq=1.000000e+02
TXWaitType=0
TXWaitType=2
TXCharWait=0
TXDiddleWait=0
TXCharWaitDiddle=0

View file

@ -46,6 +46,7 @@ __fastcall TVerDspDlg::TVerDspDlg(TComponent* AOwner)
Version->Caption = VERTTL;
LTNX->Caption =
"------ Programming ------\r\n"
"Stu, K6TU (Updated 1.66A -> 1.70A)\r\n"
"Dave, AA6YQ (updated 1.65D -> 1.66G)\r\n"
"------ Help, FAQ and Remote mode, etc... ------\r\n"
"Jan, KX2A Ken, VE5KC Bill, KB4IJ Andy, K3UK(KB2EOQ)\r\n"

Binary file not shown.

View file

@ -5,7 +5,7 @@
<MainSource>mmtty.cpp</MainSource>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Debug</Config>
<ProjectVersion>14.6</ProjectVersion>
<ProjectVersion>16.1</ProjectVersion>
<AppType>Application</AppType>
<FrameworkType>VCL</FrameworkType>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
@ -59,6 +59,7 @@
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<SanitizedProjectName>mmtty</SanitizedProjectName>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_Locale>1041</VerInfo_Locale>
<DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)</DCC_Namespace>
@ -72,7 +73,6 @@
<BCC_IncludePath>$(BDS)\include;$(BDS)\include\vcl;$(BCC_IncludePath)</BCC_IncludePath>
<TASM_IncludePath>$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)</TASM_IncludePath>
<FinalOutputDir>.</FinalOutputDir>
<OutputExt>exe</OutputExt>
<AllPackageLibs>rtl.lib;vcl.lib;vclx.lib;dbrtl.lib;vcldb.lib;bdertl.lib;vcldbx.lib</AllPackageLibs>
<TASM_Debugging>None</TASM_Debugging>
<TASM_AdditionalSwitches> /w2</TASM_AdditionalSwitches>
@ -82,6 +82,7 @@
<ILINK_LibraryPath>$(BDS)\lib\obj;$(BDS)\lib;$(BDS)\lib\psdk;$(ILINK_LibraryPath)</ILINK_LibraryPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''">
<OutputExt>exe</OutputExt>
<Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
@ -113,6 +114,7 @@
<BCC_InlineFunctionExpansion>false</BCC_InlineFunctionExpansion>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<ILINK_LibraryPath>C:\Users\Public\Documents\Embarcadero\Studio\15.0\DCP\;$(BDS)\lib\win32\release\;$(ILINK_LibraryPath)</ILINK_LibraryPath>
<BCC_AllCodeguardOptions>false</BCC_AllCodeguardOptions>
<BCC_MonitorGlobalAndStackData>false</BCC_MonitorGlobalAndStackData>
<BCC_MonitorThis>false</BCC_MonitorThis>
@ -454,6 +456,7 @@
<ProjectProperties Name="AutoShowDeps">False</ProjectProperties>
<ProjectProperties Name="ManagePaths">True</ProjectProperties>
<ProjectProperties Name="VerifyPackages">True</ProjectProperties>
<ProjectProperties Name="IndexFiles">False</ProjectProperties>
</ProjectProperties>
<Source>
<Source Name="MainSource">mmtty.cpp</Source>

View file

@ -1,6 +1,6 @@
Start Length Name Class
0001:00401000 00037F46CH _TEXT CODE
0002:00781000 00003A5DCH _DATA DATA
0003:007BB5DC 0000320D0H _BSS BSS
0001:00401000 0003BF6C4H _TEXT CODE
0002:007C1000 00003B620H _DATA DATA
0003:007FC620 000032568H _BSS BSS
0004:00000000 0000000F8H _TLS TLS

BIN
mmtty.tds

Binary file not shown.

View file

@ -33,7 +33,7 @@ LPCSTR __MK[]={
"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
"Kenwood, Elecraft ", // , MakerIndex=5
"Kenwood, Elecraft, FlexRadio ", // , MakerIndex=5
"JRC JST-245", // , MakerIndex=6
"Clear", // , MakerIndex=6
NULL, // , MakerIndex=8
@ -94,7 +94,7 @@ const POLLDEF __VT4[]={
};
const POLLDEF __VT5[]={
{ "NONE", 0 },
{ "Kenwood, Elecraft", RADIO_POLLKENWOOD },
{ "Kenwood, Elecraft, FlexRadio", RADIO_POLLKENWOOD },
{ "Kenwood, Elecraft (use auto info)", RADIO_POLLKENWOODN },
{ NULL, 0 },
};