Skip to content

Commit c0cc646

Browse files
author
Wayne, W5XD. Round Rock
committed
sequencer stuff to accommodate wsjtx
1 parent 2d52fda commit c0cc646

File tree

4 files changed

+14
-10
lines changed

4 files changed

+14
-10
lines changed

AssemblyVersionInfo.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
// You can specify all the values or you can default the Build and Revision Numbers
1010
// by using the '*' as shown below:
1111
// [assembly: AssemblyVersion("1.0.*")]
12-
[assembly: AssemblyVersion("2.6.0.3")]
13-
[assembly: AssemblyFileVersion("2.6.0.3")]
12+
[assembly: AssemblyVersion("2.6.0.4")]
13+
[assembly: AssemblyFileVersion("2.6.0.4")]
1414
// If you plan to give the built files ot another Op, please add your callsign in the Version string.
15-
[assembly: AssemblyInformationalVersion("2.6.0.3 BETA built by - YOURCALLSIGN")]
15+
[assembly: AssemblyInformationalVersion("2.6.0.4 BETA built by - YOURCALLSIGN")]

InstallDigiRite/Product.wxs

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
!!
1818
-->
1919
<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:ui="http://wixtoolset.org/schemas/v4/wxs/ui">
20-
<?define VersionNumber = 206.0.3.0 ?>
20+
<?define VersionNumber = 206.0.4.0 ?>
2121
<?define BuildersName = PUT YOUR NAME HERE ?>
2222
<!--The numbering convention depends on the number of the WSJTX build DigiRite is derived from. Call that number A.B.C.
2323
For DigiRite, this installer version number is AB.C.D.0 where AB is 100 times A plus B, and D is the

InstallDigiRiteX64/ProductX64.wxs

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ GUIDS: UpgradeCode MUST match between x64 and x86
44
All other GUIDs must NOT match.
55
-->
66
<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:ui="http://wixtoolset.org/schemas/v4/wxs/ui">
7-
<?define VersionNumber = 206.0.3.0 ?>
7+
<?define VersionNumber = 206.0.4.0 ?>
88
<?define BuildersName = PUT YOUR NAME HERE ?>
99
<!--The numbering convention depends on the number of the WSJTX build DigiRite is derived from. Call that number A.B.C.
1010
For DigiRite, this installer version number is AB.C.D.0 where AB is 100 time A plus B, and D is the

Qso2MessageExchange.cs

+9-5
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ public interface IQsoSequencerCallbacks
124124
private bool haveLoggedReport = false;
125125
private bool haveSentReport = false;
126126
private bool haveSentGrid = false;
127+
private bool haveReceivedQsl = false;
127128
private bool haveReceivedWrongExchange = false;
128129
private string ackOfAckGrid;
129130
private int AckMoreAcks = 0;
@@ -183,7 +184,7 @@ public void OnReceived(bool directlyToMe, CallQsled callQsled, XDpack77.Pack77Me
183184
if (!String.IsNullOrEmpty(gs))
184185
{ // received a grid
185186
haveGrid = true;
186-
if (!msgHasR)
187+
if (!msgHasR && !directlyToMe && !haveReceivedQsl)
187188
eToSend = () => cb.SendExchange(ExchangeTypes.GRID_SQUARE, haveGrid & haveReport, () =>
188189
{ haveSentGrid = true; });
189190
}
@@ -192,7 +193,7 @@ public void OnReceived(bool directlyToMe, CallQsled callQsled, XDpack77.Pack77Me
192193
if (rp > XDpack77.Pack77Message.Message.NO_DB)
193194
{ // received a dB report
194195
haveReport = true;
195-
if (!msgHasR)
196+
if (!msgHasR && !haveReceivedQsl)
196197
eToSend = () => cb.SendExchange(ExchangeTypes.DB_REPORT, haveReport & haveGrid, () =>
197198
{ haveSentReport = true; });
198199
}
@@ -214,10 +215,10 @@ public void OnReceived(bool directlyToMe, CallQsled callQsled, XDpack77.Pack77Me
214215
if (eToSend == null && !haveReceivedWrongExchange)
215216
{
216217
if (!haveReport)
217-
eToSend = () => cb.SendExchange(ExchangeTypes.DB_REPORT, haveReport, () =>
218+
eToSend = () => cb.SendExchange(ExchangeTypes.DB_REPORT, haveReport & haveGrid, () =>
218219
{ haveSentReport = true; });
219220
else if (!haveGrid)
220-
eToSend = () => cb.SendExchange(ExchangeTypes.GRID_SQUARE, haveGrid, () =>
221+
eToSend = () => cb.SendExchange(ExchangeTypes.GRID_SQUARE, haveReport & haveGrid, () =>
221222
{ haveSentGrid = true; });
222223
else if (directlyToMe && haveSentReport)
223224
{
@@ -231,10 +232,12 @@ public void OnReceived(bool directlyToMe, CallQsled callQsled, XDpack77.Pack77Me
231232
};
232233
}
233234
}
235+
if (msgHasR)
236+
haveReceivedQsl = true;
234237
bool isMe = callQsled == CallQsled.IsMe || directlyToMe;
235238
XDpack77.Pack77Message.QSL qsl = msg as XDpack77.Pack77Message.QSL;
236239
// is this message a QSL to end the QSO?
237-
if (callQsled != CallQsled.None)
240+
if (callQsled != CallQsled.None || haveReceivedQsl)
238241
{
239242
if (haveReceivedWrongExchange)
240243
return;
@@ -261,6 +264,7 @@ public void OnReceived(bool directlyToMe, CallQsled callQsled, XDpack77.Pack77Me
261264
return;
262265
}
263266
};
267+
haveReceivedQsl = true;
264268
// do it now? or wait to see if multi-streaming partner sends a message directlyToMe
265269
if (isMe)
266270
toDoOnAck();

0 commit comments

Comments
 (0)