mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-22 04:11:16 -05:00
Add the $DXCALL macro capability.
This commit is contained in:
parent
3e43e57858
commit
43c0752140
@ -505,6 +505,7 @@ set (wsjt_FSRCS
|
|||||||
lib/qra/q65/q65_set_list.f90
|
lib/qra/q65/q65_set_list.f90
|
||||||
lib/refspectrum.f90
|
lib/refspectrum.f90
|
||||||
lib/savec2.f90
|
lib/savec2.f90
|
||||||
|
lib/save_dxbase.f90
|
||||||
lib/sec0.f90
|
lib/sec0.f90
|
||||||
lib/sec_midn.f90
|
lib/sec_midn.f90
|
||||||
lib/setup65.f90
|
lib/setup65.f90
|
||||||
|
@ -8,6 +8,7 @@ module packjt77
|
|||||||
character (len=13), dimension(1:MAXRECENT) :: recent_calls=''
|
character (len=13), dimension(1:MAXRECENT) :: recent_calls=''
|
||||||
character (len=13) :: mycall13=''
|
character (len=13) :: mycall13=''
|
||||||
character (len=13) :: dxcall13=''
|
character (len=13) :: dxcall13=''
|
||||||
|
character (len=6) :: dxbase=''
|
||||||
integer, dimension(1:MAXHASH) :: ihash22=-1
|
integer, dimension(1:MAXHASH) :: ihash22=-1
|
||||||
integer :: nzhash=0
|
integer :: nzhash=0
|
||||||
integer n28a,n28b
|
integer n28a,n28b
|
||||||
@ -124,6 +125,11 @@ subroutine pack77(msg0,i3,n3,c77)
|
|||||||
integer ntel(3)
|
integer ntel(3)
|
||||||
|
|
||||||
msg=msg0
|
msg=msg0
|
||||||
|
if(msg(1:3).eq.'$DX') then
|
||||||
|
i1=index(msg,' ')
|
||||||
|
msg=trim(dxbase)//' '//msg(i1+1:)
|
||||||
|
endif
|
||||||
|
|
||||||
i3_hint=i3
|
i3_hint=i3
|
||||||
n3_hint=n3
|
n3_hint=n3
|
||||||
i3=-1
|
i3=-1
|
||||||
|
9
lib/save_dxbase.f90
Normal file
9
lib/save_dxbase.f90
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
subroutine save_dxbase(dxbase0)
|
||||||
|
|
||||||
|
use packjt77
|
||||||
|
character*6 dxbase0
|
||||||
|
|
||||||
|
dxbase=dxbase0
|
||||||
|
|
||||||
|
return
|
||||||
|
end subroutine save_dxbase
|
@ -184,6 +184,8 @@ extern "C" {
|
|||||||
void get_ft4msg_(int* idecode, char* line, int len);
|
void get_ft4msg_(int* idecode, char* line, int len);
|
||||||
|
|
||||||
void chk_samples_(int* m_ihsym,int* k, int* m_hsymStop);
|
void chk_samples_(int* m_ihsym,int* k, int* m_hsymStop);
|
||||||
|
|
||||||
|
void save_dxbase_(char* dxbase, int len);
|
||||||
}
|
}
|
||||||
|
|
||||||
int volatile itone[MAX_NUM_SYMBOLS]; //Audio tones for all Tx symbols
|
int volatile itone[MAX_NUM_SYMBOLS]; //Audio tones for all Tx symbols
|
||||||
@ -210,7 +212,7 @@ using SpecOp = Configuration::SpecialOperatingActivity;
|
|||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
Radio::Frequency constexpr default_frequency {14076000};
|
Radio::Frequency constexpr default_frequency {14076000};
|
||||||
QRegExp message_alphabet {"[- @A-Za-z0-9+./?#<>;]*"};
|
QRegExp message_alphabet {"[$- @A-Za-z0-9+./?#<>;]*"};
|
||||||
// grid exact match excluding RR73
|
// grid exact match excluding RR73
|
||||||
QRegularExpression grid_regexp {"\\A(?![Rr]{2}73)[A-Ra-r]{2}[0-9]{2}([A-Xa-x]{2}){0,1}\\z"};
|
QRegularExpression grid_regexp {"\\A(?![Rr]{2}73)[A-Ra-r]{2}[0-9]{2}([A-Xa-x]{2}){0,1}\\z"};
|
||||||
auto quint32_max = std::numeric_limits<quint32>::max ();
|
auto quint32_max = std::numeric_limits<quint32>::max ();
|
||||||
@ -5371,6 +5373,7 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional)
|
|||||||
auto is_type_one = !is77BitMode () && is_compound && shortList (my_callsign);
|
auto is_type_one = !is77BitMode () && is_compound && shortList (my_callsign);
|
||||||
auto const& my_grid = m_config.my_grid ().left (4);
|
auto const& my_grid = m_config.my_grid ().left (4);
|
||||||
auto const& hisBase = Radio::base_callsign (hisCall);
|
auto const& hisBase = Radio::base_callsign (hisCall);
|
||||||
|
save_dxbase_(const_cast <char *> ((hisBase + " ").left (6).toLatin1().constData()),6);
|
||||||
auto eme_short_codes = m_config.enable_VHF_features () && ui->cbShMsgs->isChecked ()
|
auto eme_short_codes = m_config.enable_VHF_features () && ui->cbShMsgs->isChecked ()
|
||||||
&& m_mode == "JT65";
|
&& m_mode == "JT65";
|
||||||
|
|
||||||
@ -5852,6 +5855,13 @@ void MainWindow::on_dxCallEntry_textChanged (QString const& call)
|
|||||||
statusUpdate ();
|
statusUpdate ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::on_dxCallEntry_editingFinished()
|
||||||
|
{
|
||||||
|
auto const& dxBase = Radio::base_callsign (m_hisCall);
|
||||||
|
save_dxbase_(const_cast <char *> ((dxBase + " ").left (6).toLatin1().constData()),6);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void MainWindow::on_dxCallEntry_returnPressed ()
|
void MainWindow::on_dxCallEntry_returnPressed ()
|
||||||
{
|
{
|
||||||
on_lookupButton_clicked();
|
on_lookupButton_clicked();
|
||||||
|
@ -204,6 +204,7 @@ private slots:
|
|||||||
void on_addButton_clicked();
|
void on_addButton_clicked();
|
||||||
void on_dxCallEntry_textChanged (QString const&);
|
void on_dxCallEntry_textChanged (QString const&);
|
||||||
void on_dxGridEntry_textChanged (QString const&);
|
void on_dxGridEntry_textChanged (QString const&);
|
||||||
|
void on_dxCallEntry_editingFinished();
|
||||||
void on_dxCallEntry_returnPressed ();
|
void on_dxCallEntry_returnPressed ();
|
||||||
void on_genStdMsgsPushButton_clicked();
|
void on_genStdMsgsPushButton_clicked();
|
||||||
void on_logQSOButton_clicked();
|
void on_logQSOButton_clicked();
|
||||||
|
Loading…
Reference in New Issue
Block a user