mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-25 05:38:46 -05:00
- Force the use of standardized CQ modifier for FT4/FT8 contest operation.
- Pass CQ modifier string to the ft4 decoder.
This commit is contained in:
parent
52075fca24
commit
a63e6e1209
@ -65,6 +65,7 @@ extern struct dec_data {
|
||||
char mygrid[6];
|
||||
char hiscall[12];
|
||||
char hisgrid[6];
|
||||
char cqstr[4];
|
||||
} params;
|
||||
} dec_data;
|
||||
|
||||
|
@ -40,6 +40,7 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
character(len=20) :: datetime
|
||||
character(len=12) :: mycall, hiscall
|
||||
character(len=6) :: mygrid, hisgrid
|
||||
character(len=4) :: cqstr
|
||||
save
|
||||
type(counting_jt4_decoder) :: my_jt4
|
||||
type(counting_jt65_decoder) :: my_jt65
|
||||
@ -53,6 +54,7 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
hiscall=transfer(params%hiscall,hiscall)
|
||||
mygrid=transfer(params%mygrid,mygrid)
|
||||
hisgrid=transfer(params%hisgrid,hisgrid)
|
||||
cqstr=transfer(params%cqstr,cqstr)
|
||||
|
||||
! initialize decode counts
|
||||
my_jt4%decoded = 0
|
||||
@ -153,7 +155,7 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
call timer('decft4 ',0)
|
||||
call my_ft4%decode(ft4_decoded,id2,params%nQSOProgress,params%nfqso, &
|
||||
params%nutc,params%nfa,params%nfb,params%ndepth, &
|
||||
logical(params%lapcqonly),ncontest,mycall,hiscall)
|
||||
logical(params%lapcqonly),ncontest,cqstr,mycall,hiscall)
|
||||
call timer('decft4 ',1)
|
||||
go to 800
|
||||
endif
|
||||
|
@ -24,7 +24,7 @@ module ft4_decode
|
||||
contains
|
||||
|
||||
subroutine decode(this,callback,iwave,nQSOProgress,nfqso, &
|
||||
nutc,nfa,nfb,ndepth,lapcqonly,ncontest,mycall,hiscall)
|
||||
nutc,nfa,nfb,ndepth,lapcqonly,ncontest,cqstr,mycall,hiscall)
|
||||
use timer_module, only: timer
|
||||
use packjt77
|
||||
include 'ft4/ft4_params.f90'
|
||||
|
@ -46,6 +46,7 @@
|
||||
character(kind=c_char) :: mygrid(6)
|
||||
character(kind=c_char) :: hiscall(12)
|
||||
character(kind=c_char) :: hisgrid(6)
|
||||
character(kind=c_char) :: cqstr(4)
|
||||
end type params_block
|
||||
|
||||
type, bind(C) :: dec_data
|
||||
|
@ -331,6 +331,7 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple,
|
||||
tx_status_label {"Receiving"},
|
||||
wsprNet {new WSPRNet {&m_network_manager, this}},
|
||||
m_appDir {QApplication::applicationDirPath ()},
|
||||
m_cqStr {""},
|
||||
m_palette {"Linrad"},
|
||||
m_mode {"JT9"},
|
||||
m_rpt {"-15"},
|
||||
@ -2932,6 +2933,7 @@ void MainWindow::decode() //decode()
|
||||
QString hisGrid {ui->dxGridEntry->text ()};
|
||||
memcpy(dec_data.params.hiscall,(hisCall + " ").toLatin1 ().constData (), sizeof dec_data.params.hiscall);
|
||||
memcpy(dec_data.params.hisgrid,(hisGrid + " ").toLatin1 ().constData (), sizeof dec_data.params.hisgrid);
|
||||
memcpy(dec_data.params.cqstr,(m_cqStr + " ").toLatin1 ().constData (), sizeof dec_data.params.cqstr);
|
||||
|
||||
//newdat=1 ==> this is new data, must do the big FFT
|
||||
//nagain=1 ==> decode only at fQSO +/- Tol
|
||||
@ -4929,16 +4931,23 @@ void MainWindow::genCQMsg ()
|
||||
}
|
||||
|
||||
QString t=ui->tx6->text();
|
||||
QStringList tlist=t.split(" ");
|
||||
if((m_mode=="FT4" or m_mode=="FT8" or m_mode=="MSK144") and
|
||||
SpecOp::NONE != m_config.special_op_id() and
|
||||
t.split(" ").at(1)==m_config.my_callsign() and
|
||||
( tlist.at(1)==m_config.my_callsign() or
|
||||
tlist.at(2)==m_config.my_callsign() ) and
|
||||
stdCall(m_config.my_callsign())) {
|
||||
if(SpecOp::NA_VHF == m_config.special_op_id()) t="CQ TEST" + t.mid(2,-1);
|
||||
if(SpecOp::EU_VHF == m_config.special_op_id()) t="CQ TEST" + t.mid(2,-1);
|
||||
if(SpecOp::FIELD_DAY == m_config.special_op_id()) t="CQ FD" + t.mid(2,-1);
|
||||
if(SpecOp::NA_VHF == m_config.special_op_id()) m_cqStr="TEST";
|
||||
if(SpecOp::EU_VHF == m_config.special_op_id()) m_cqStr="TEST";
|
||||
if(SpecOp::FIELD_DAY == m_config.special_op_id()) m_cqStr="FD";
|
||||
if(SpecOp::RTTY == m_config.special_op_id()) {
|
||||
if(m_config.RTTY_Exchange()!="SCC") t="CQ RU" + t.mid(2,-1);
|
||||
if(m_config.RTTY_Exchange()=="SCC") t="CQ SCC" + t.mid(2,-1);
|
||||
if(m_config.RTTY_Exchange()!="SCC") m_cqStr="RU";
|
||||
if(m_config.RTTY_Exchange()=="SCC") m_cqStr="SCC";
|
||||
}
|
||||
if( tlist.at(1)==m_config.my_callsign() ) {
|
||||
t="CQ " + m_cqStr + " " + tlist.at(1) + " " + tlist.at(2);
|
||||
} else {
|
||||
t="CQ " + m_cqStr + " " + tlist.at(2) + " " + tlist.at(3);
|
||||
}
|
||||
ui->tx6->setText(t);
|
||||
}
|
||||
|
@ -589,6 +589,7 @@ private:
|
||||
QString m_hisCall;
|
||||
QString m_hisGrid;
|
||||
QString m_appDir;
|
||||
QString m_cqStr;
|
||||
QString m_palette;
|
||||
QString m_dateTime;
|
||||
QString m_mode;
|
||||
|
Loading…
Reference in New Issue
Block a user