mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-06-25 22:45:18 -04:00
Revert "More (final?) corrections to logic for handling SF free text messages."
This reverts commit f8079fbcbebcc1e2c9f9a951405e29582ea94483.
This commit is contained in:
parent
24db8a23eb
commit
131aca18dc
@ -38,7 +38,7 @@ subroutine foxgen(bSuperFox,fname)
|
|||||||
n=nslots
|
n=nslots
|
||||||
if(bMoreCQs) cmsg(1)(40:40)='1' !Set flag to include a CQ
|
if(bMoreCQs) cmsg(1)(40:40)='1' !Set flag to include a CQ
|
||||||
if(bSendMsg) then
|
if(bSendMsg) then
|
||||||
n=min(nslots+1,5)
|
n=min(nslots+1,3)
|
||||||
cmsg(n)=textMsg
|
cmsg(n)=textMsg
|
||||||
cmsg(n)(39:39)='1' !Set flag for text message
|
cmsg(n)(39:39)='1' !Set flag for text message
|
||||||
nslots=n
|
nslots=n
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
subroutine sftx_sub(ckey0,nslots,bSendMsg)
|
subroutine sftx_sub(ckey0)
|
||||||
|
|
||||||
! This routine is required in order to create a SuperFox transmission.
|
! This routine is required in order to create a SuperFox transmission.
|
||||||
|
|
||||||
@ -24,7 +24,7 @@ subroutine sftx_sub(ckey0,nslots,bSendMsg)
|
|||||||
integer*1 y(0:127) !Encoded symbols as i*1 integers
|
integer*1 y(0:127) !Encoded symbols as i*1 integers
|
||||||
integer chansym0(127) !Transmitted symbols, data only
|
integer chansym0(127) !Transmitted symbols, data only
|
||||||
integer isync(24) !Symbol numbers for sync tones
|
integer isync(24) !Symbol numbers for sync tones
|
||||||
common/foxcom3/nslots2,cmsg(5),itone(151)
|
common/foxcom3/nslots,cmsg(5),itone(151)
|
||||||
data isync/1,2,4,7,11,16,22,29,37,39,42,43,45,48,52,57,63,70,78,80, &
|
data isync/1,2,4,7,11,16,22,29,37,39,42,43,45,48,52,57,63,70,78,80, &
|
||||||
83,84,86,89/
|
83,84,86,89/
|
||||||
|
|
||||||
@ -34,8 +34,10 @@ subroutine sftx_sub(ckey0,nslots,bSendMsg)
|
|||||||
call sfox_init(7,127,50,'no',fspread,delay,fsample,24)
|
call sfox_init(7,127,50,'no',fspread,delay,fsample,24)
|
||||||
freeTextMsg=' '
|
freeTextMsg=' '
|
||||||
bMoreCQs=cmsg(1)(40:40).eq.'1'
|
bMoreCQs=cmsg(1)(40:40).eq.'1'
|
||||||
|
bSendMsg=cmsg(nslots)(39:39).eq.'1'
|
||||||
if(bSendMsg) then
|
if(bSendMsg) then
|
||||||
freeTextMsg=cmsg(nslots)(1:26)
|
freeTextMsg=cmsg(nslots)(1:26)
|
||||||
|
if(nslots.gt.4) nslots=4
|
||||||
endif
|
endif
|
||||||
|
|
||||||
call foxgen2(nslots,cmsg,line,foxcall) !Parse old-style Fox messages
|
call foxgen2(nslots,cmsg,line,foxcall) !Parse old-style Fox messages
|
||||||
|
@ -182,7 +182,7 @@ extern "C" {
|
|||||||
|
|
||||||
void sfox_wave_gfsk_();
|
void sfox_wave_gfsk_();
|
||||||
|
|
||||||
void sftx_sub_(char const * otp_key, int* nslots, bool* b, FCL len1);
|
void sftx_sub_(char const * otp_key, FCL len1);
|
||||||
|
|
||||||
void plotsave_(float swide[], int* m_w , int* m_h1, int* irow);
|
void plotsave_(float swide[], int* m_w , int* m_h1, int* irow);
|
||||||
|
|
||||||
@ -2673,7 +2673,11 @@ void MainWindow::statusChanged()
|
|||||||
ui->cbSendMsg->setVisible(true);
|
ui->cbSendMsg->setVisible(true);
|
||||||
if (m_config.superFox()) {
|
if (m_config.superFox()) {
|
||||||
ui->sbNslots->setVisible(false);
|
ui->sbNslots->setVisible(false);
|
||||||
|
if(ui->cbSendMsg->isChecked()) {
|
||||||
|
ui->sbNslots->setValue(4);
|
||||||
|
} else {
|
||||||
ui->sbNslots->setValue(5);
|
ui->sbNslots->setValue(5);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ui->sbNslots->setVisible(true);
|
ui->sbNslots->setVisible(true);
|
||||||
ui->sbNslots->setValue(m_Nslots0);
|
ui->sbNslots->setValue(m_Nslots0);
|
||||||
@ -9217,7 +9221,11 @@ void MainWindow::on_cbSendMsg_toggled(bool b)
|
|||||||
{
|
{
|
||||||
if (!(m_config.superFox() && m_specOp==SpecOp::FOX))
|
if (!(m_config.superFox() && m_specOp==SpecOp::FOX))
|
||||||
return; // don't do anything with slot values unless SuperFox mode
|
return; // don't do anything with slot values unless SuperFox mode
|
||||||
if(b or !b) ui->sbNslots->setValue(5); //SF always uses Nslots=5
|
if(b) {
|
||||||
|
ui->sbNslots->setValue(4); //### Is the correct value 4? Or 2? Is better logic needed? ###
|
||||||
|
} else {
|
||||||
|
ui->sbNslots->setValue(5);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::on_cbShMsgs_toggled(bool b)
|
void MainWindow::on_cbShMsgs_toggled(bool b)
|
||||||
@ -11463,8 +11471,6 @@ void MainWindow::sfox_tx() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
bool b=ui->cbSendMsg->isChecked();
|
sftx_sub_(ckey.toLatin1().constData(), (FCL)ckey.size());
|
||||||
foxcom_.bSendMsg=b;
|
|
||||||
sftx_sub_(ckey.toLatin1().constData(), &m_Nslots, &b, (FCL)ckey.size());
|
|
||||||
sfox_wave_gfsk_();
|
sfox_wave_gfsk_();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user