mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-03-23 04:28:36 -04:00
More Fox progress...
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@8271 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
00e0d76fc2
commit
7e549b5d55
@ -1,12 +1,9 @@
|
||||
subroutine foxgen(mycall,mygrid6,t)
|
||||
subroutine foxgen()
|
||||
|
||||
parameter (NN=79,KK=87,NSPS=4*1920)
|
||||
parameter (NWAVE=NN*NSPS,NFFT=614400,NH=NFFT/2)
|
||||
character*(*) t
|
||||
character*32 cmsg
|
||||
character*22 msg,msgsent
|
||||
character*12 t1
|
||||
character*6 mycall,mygrid6,mygrid,call1,call2
|
||||
logical bcontest
|
||||
integer itone(NN)
|
||||
integer*1 msgbits(KK)
|
||||
@ -17,8 +14,6 @@ subroutine foxgen(mycall,mygrid6,t)
|
||||
common/foxcom/wave(NWAVE),nslots,cmsg(5)
|
||||
equivalence (x,cx),(y,cy)
|
||||
|
||||
mygrid=mygrid6(1:4)//' '
|
||||
! print*,mycall,' ',mygrid6,' ',nslots,len(t),t
|
||||
call system_clock(count0,clkfreq)
|
||||
bcontest=.false.
|
||||
i3bit=0
|
||||
@ -29,18 +24,10 @@ subroutine foxgen(mycall,mygrid6,t)
|
||||
wave=0.
|
||||
|
||||
do n=1,nslots
|
||||
ia=22*(n-1)+1
|
||||
call1=t(ia:ia+5)
|
||||
if(t(ia+7:ia+10).eq.'RR73') then
|
||||
irpt1=99
|
||||
else
|
||||
read(t(ia+7:ia+10),*) irpt1
|
||||
endif
|
||||
call2=t(ia+11:ia+16)
|
||||
read(t(ia+18:ia+21),*) irpt2
|
||||
! print*,n,call1,irpt1,call2,irpt2
|
||||
|
||||
call genft8(msg,mygrid,bcontest,i3bit,msgsent,msgbits,itone)
|
||||
i3bit=0
|
||||
print*,n,i3bit,cmsg(n)
|
||||
msg=cmsg(n)(1:22)
|
||||
call genft8(msg," ",bcontest,i3bit,msgsent,msgbits,itone)
|
||||
|
||||
f0=1500.d0 + fstep*(n-1)
|
||||
phi=0.d0
|
||||
@ -57,10 +44,6 @@ subroutine foxgen(mycall,mygrid6,t)
|
||||
enddo
|
||||
|
||||
call system_clock(count1,clkfreq)
|
||||
! time=float(count1-count0)/float(clkfreq) !Cumulative execution time
|
||||
! write(*,3001) n,k,i,time,msgsent
|
||||
!3001 format(i1,i8,i4,f10.6,2x,a22)
|
||||
! if(i.ge.m) exit
|
||||
enddo
|
||||
|
||||
sqx=0.
|
||||
|
@ -135,7 +135,7 @@ extern "C" {
|
||||
void calibrate_(char data_dir[], int* iz, double* a, double* b, double* rms,
|
||||
double* sigmaa, double* sigmab, int* irc, int len1);
|
||||
|
||||
void foxgen_(char* mycall, char* mygrid, char* tb3, int len1, int len2, int len3);
|
||||
void foxgen_();
|
||||
}
|
||||
|
||||
int volatile itone[NUM_ISCAT_SYMBOLS]; //Audio tones for all Tx symbols
|
||||
@ -3301,28 +3301,25 @@ void MainWindow::guiUpdate()
|
||||
}
|
||||
if(m_modeTx=="FT8") {
|
||||
if(m_config.bFox()) {
|
||||
int islots=0;
|
||||
QString msg[5];
|
||||
QString t1="";
|
||||
QString t1=" ";
|
||||
QString t3=ui->textBrowser3->toPlainText() + "\n";
|
||||
QString t4=ui->textBrowser4->toPlainText() + "\n";
|
||||
int islots=t3.split("\n").size() - 1;
|
||||
for(int i=0; i<m_Nslots; i++) {
|
||||
QString t0=t3.split("\n").at(i);
|
||||
if(t0=="") break;
|
||||
if(t0.length()==10) t0 += " ";
|
||||
t1 += t0;
|
||||
QString t2=t4.split("\n").at(i);
|
||||
if(t2=="") break;
|
||||
if(t2.length()==10) t2 += " ";
|
||||
t1 += t2;
|
||||
islots=i;
|
||||
}
|
||||
int len3=t1.length();
|
||||
// qDebug() << "aa" << len3 << t1;
|
||||
foxcom_.nslots=islots;
|
||||
if(len3>10) {
|
||||
foxgen_(MyCall, MyGrid, const_cast <char *> (t1.toLatin1().constData()),6,6,len3);
|
||||
msg[i]="";
|
||||
if(i<islots and t3.length() >= 11) {
|
||||
msg[i]=t3.split("\n").at(i).mid(0,7) + m_config.my_callsign() + t3.split("\n").at(i).mid(6,5);
|
||||
}
|
||||
if(msg[i]=="") msg[i]=ui->comboBoxCQ->currentText() + " " + m_config.my_callsign() +
|
||||
" " + m_config.my_grid().mid(0,4);
|
||||
msg[i] += " ";
|
||||
msg[i]=msg[i].mid(0,32);
|
||||
if(msg[i].indexOf(" RR73 ") > 6) qDebug() << "Logit:" << msg[i];
|
||||
strncpy(&foxcom_.cmsg[i][0], msg[i].toLatin1(),32);
|
||||
}
|
||||
foxcom_.nslots=m_Nslots;
|
||||
foxgen_();
|
||||
} else {
|
||||
genft8_(message, MyGrid, &bcontest, &m_i3bit, msgsent, const_cast<char *> (ft8msgbits),
|
||||
const_cast<int *> (itone), 22, 6, 22);
|
||||
@ -3861,7 +3858,7 @@ void MainWindow::doubleClickOnCall(Qt::KeyboardModifiers modifiers)
|
||||
}
|
||||
|
||||
if(m_config.bFox() and m_decodedText2) {
|
||||
if(m_nToBeCalled >= 2*m_Nslots or m_nFoxCallers==0) return;
|
||||
if(m_nToBeCalled >= (m_Nslots + 10) or m_nFoxCallers==0) return;
|
||||
QString t=cursor.block().text();
|
||||
QString c2=t.split(" ",QString::SkipEmptyParts).at(0);
|
||||
if(ui->textBrowser3->toPlainText().indexOf(c2) >= 0) return; //Don't allow same call twice
|
||||
@ -7171,9 +7168,6 @@ void MainWindow::on_sbMax_dB_valueChanged(int n)
|
||||
|
||||
void MainWindow::on_pbFoxReset_clicked()
|
||||
{
|
||||
QString t="";
|
||||
for(int i=0; i<m_Nslots; i++) {
|
||||
t += ui->comboBoxCQ->currentText() + "\n";
|
||||
}
|
||||
ui->textBrowser3->setText(t);
|
||||
ui->textBrowser3->setText("");
|
||||
ui->textBrowser4->setText("");
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user