mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-10-31 13:10:19 -04:00 
			
		
		
		
	Updates to code for stand-alone ft2[.exe].
This commit is contained in:
		
							parent
							
								
									c6bc3c64bb
								
							
						
					
					
						commit
						c81af0bbe5
					
				| @ -6,7 +6,20 @@ program ft2 | |||||||
|   logical allok |   logical allok | ||||||
|   character*20 pttport |   character*20 pttport | ||||||
|   character*8 arg |   character*8 arg | ||||||
| !  integer*2 iwave2(30000) |   character*80 fname | ||||||
|  |   integer*2 id2(30000) | ||||||
|  | 
 | ||||||
|  |   open(12,file='all_ft2.txt',status='unknown',position='append') | ||||||
|  |   nargs=iargc() | ||||||
|  |   if(nargs.eq.1) then | ||||||
|  |      call getarg(1,fname) | ||||||
|  |      open(10,file=fname,status='old',access='stream') | ||||||
|  |      read(10) id2(1:22)  !Read (and ignore) the header | ||||||
|  |      read(10) id2        !Read the Rx data | ||||||
|  |      close(10) | ||||||
|  |      call ft2_decode(fname(1:17),nfqso,id2,ndecodes,mycall,hiscall,nrx) | ||||||
|  |      go to 999 | ||||||
|  |   endif | ||||||
|    |    | ||||||
|   allok=.true. |   allok=.true. | ||||||
| ! Get home-station details | ! Get home-station details | ||||||
| @ -26,13 +39,13 @@ program ft2 | |||||||
|   call padevsub(idevin,idevout) |   call padevsub(idevin,idevout) | ||||||
|   if(idevin.ne.ndevin .or. idevout.ne.ndevout) allok=.false. |   if(idevin.ne.ndevin .or. idevout.ne.ndevout) allok=.false. | ||||||
|   i1=0 |   i1=0 | ||||||
|  |   i1=ptt(nport,1,1,iptt) | ||||||
|   i1=ptt(nport,1,0,iptt) |   i1=ptt(nport,1,0,iptt) | ||||||
|   if(i1.lt.0 .and. nport.ne.0) allok=.false. |   if(i1.lt.0 .and. nport.ne.0) allok=.false. | ||||||
|   if(.not.allok) then |   if(.not.allok) then | ||||||
|      write(*,"('Please fix setup error(s) and restart.')") |      write(*,"('Please fix setup error(s) and restart.')") | ||||||
|      go to 999 |      go to 999 | ||||||
|   endif |   endif | ||||||
|   open(12,file='all_ft2.txt',status='unknown',position='append') |  | ||||||
| 
 | 
 | ||||||
|   nright=1 |   nright=1 | ||||||
|   iwrite=0 |   iwrite=0 | ||||||
| @ -52,7 +65,6 @@ program ft2 | |||||||
|   QSO_in_progress=.false. |   QSO_in_progress=.false. | ||||||
|   ntxed=0 |   ntxed=0 | ||||||
| 
 | 
 | ||||||
|   nargs=iargc() |  | ||||||
|   if(nargs.eq.3) then |   if(nargs.eq.3) then | ||||||
|      call getarg(1,txmsg) |      call getarg(1,txmsg) | ||||||
|      call getarg(2,arg) |      call getarg(2,arg) | ||||||
| @ -67,7 +79,7 @@ program ft2 | |||||||
|    |    | ||||||
| ! Start the audio streams   | ! Start the audio streams   | ||||||
|   ierr=ft2audio(idevin,idevout,npabuf,nright,y1,y2,NRING,iwrite,itx,     & |   ierr=ft2audio(idevin,idevout,npabuf,nright,y1,y2,NRING,iwrite,itx,     & | ||||||
|        iwave,nwave,nfsample,nTxOK,nTransmitting,ngo) |        iwave,nwave+3*1152,nfsample,nTxOK,nTransmitting,ngo) | ||||||
|   if(ierr.ne.0) then |   if(ierr.ne.0) then | ||||||
|      print*,'Error',ierr,' starting audio input and/or output.' |      print*,'Error',ierr,' starting audio input and/or output.' | ||||||
|   endif |   endif | ||||||
| @ -76,13 +88,15 @@ program ft2 | |||||||
| 
 | 
 | ||||||
| subroutine update(total_time,ic1,ic2) | subroutine update(total_time,ic1,ic2) | ||||||
| 
 | 
 | ||||||
|  |   use wavhdr | ||||||
|  |   type(hdr) h | ||||||
|   real*8 total_time |   real*8 total_time | ||||||
|   integer*8 count0,count1,clkfreq |   integer*8 count0,count1,clkfreq | ||||||
|   integer ptt |   integer ptt | ||||||
|   integer*2 id(30000) |   integer*2 id(30000) | ||||||
|   logical transmitted,level |   logical transmitted,level,ok | ||||||
|   character*70 line |   character*70 line | ||||||
|   character cdatetime*17 |   character cdatetime*17,fname*17,mode*8,band*6 | ||||||
|   include 'gcom1.f90' |   include 'gcom1.f90' | ||||||
|   data nt0/-1/,transmitted/.false./,snr/-99.0/ |   data nt0/-1/,transmitted/.false./,snr/-99.0/ | ||||||
|   data level/.false./ |   data level/.false./ | ||||||
| @ -157,9 +171,39 @@ subroutine update(total_time,ic1,ic2) | |||||||
|         call ft2_decode(cdatetime(),nfqso,id,ndecodes,mycall,hiscall,nrx) |         call ft2_decode(cdatetime(),nfqso,id,ndecodes,mycall,hiscall,nrx) | ||||||
|         call system_clock(count1,clkfreq) |         call system_clock(count1,clkfreq) | ||||||
| !        tdecode=float(count1-count0)/float(clkfreq) | !        tdecode=float(count1-count0)/float(clkfreq) | ||||||
| !        write(*,3001) trun |  | ||||||
| !3001    format(f10.3) |  | ||||||
| 
 | 
 | ||||||
|  |         if(ndecodes.ge.1) then | ||||||
|  |            fMHz=7.074 | ||||||
|  |            mode='FT2' | ||||||
|  |            nsubmode=1 | ||||||
|  |            ntrperiod=0 | ||||||
|  |            h=default_header(12000,30000) | ||||||
|  |            k=0 | ||||||
|  |            do i=1,250 | ||||||
|  |               sq=0 | ||||||
|  |               do n=1,120 | ||||||
|  |                  k=k+1 | ||||||
|  |                  x=id(k) | ||||||
|  |                  sq=sq + x*x | ||||||
|  |               enddo | ||||||
|  |               write(43,3043) i,0.01*i,1.e-4*sq | ||||||
|  | 3043          format(i7,f12.6,f12.3) | ||||||
|  |            enddo | ||||||
|  |            call set_wsjtx_wav_params(fMHz,mode,nsubmode,ntrperiod,id) | ||||||
|  |            band="" | ||||||
|  |            mode="" | ||||||
|  |            nsubmode=-1 | ||||||
|  |            ntrperiod=-1 | ||||||
|  |            call get_wsjtx_wav_params(id,band,mode,nsubmode,ntrperiod,ok) | ||||||
|  | !           write(*,1010) band,ntrperiod,mode,char(ichar('A')-1+id(3)) | ||||||
|  | !1010       format('Band: ',a6,'  T/R period:',i4,'   Mode: ',a8,1x,a1) | ||||||
|  | 
 | ||||||
|  |            fname=cdatetime() | ||||||
|  |            fname(14:17)='.wav' | ||||||
|  |            open(13,file=fname,status='unknown',access='stream') | ||||||
|  |            write(13) h,id | ||||||
|  |            close(13) | ||||||
|  |         endif | ||||||
|         if(autoseq .and.nrx.eq.2) QSO_in_progress=.true. |         if(autoseq .and.nrx.eq.2) QSO_in_progress=.true. | ||||||
|         if(autoseq .and. QSO_in_progress .and. nrx.ge.1 .and. nrx.le.4) then |         if(autoseq .and. QSO_in_progress .and. nrx.ge.1 .and. nrx.le.4) then | ||||||
|            lrx(nrx)=.true. |            lrx(nrx)=.true. | ||||||
| @ -220,6 +264,7 @@ subroutine transmit(nfunc,ftx,iptt) | |||||||
|   if(nfunc.eq.4) txmsg=trim(hiscall)//' '//trim(mycall)//' RR73' |   if(nfunc.eq.4) txmsg=trim(hiscall)//' '//trim(mycall)//' RR73' | ||||||
|   if(nfunc.eq.5) txmsg='TNX 73 GL' |   if(nfunc.eq.5) txmsg='TNX 73 GL' | ||||||
|   call ft2_iwave(txmsg,ftx,snrdb,iwave) |   call ft2_iwave(txmsg,ftx,snrdb,iwave) | ||||||
|  |   iwave(23041:)=0 | ||||||
|   i1=ptt(nport,1,1,iptt) |   i1=ptt(nport,1,1,iptt) | ||||||
|   ntxok=1 |   ntxok=1 | ||||||
|   n=len(trim(txmsg)) |   n=len(trim(txmsg)) | ||||||
|  | |||||||
| @ -1,6 +1,7 @@ | |||||||
| gcc -c ft2audio.c | gcc -c ft2audio.c | ||||||
| gcc -c ptt.c | gcc -c ptt.c | ||||||
| gfortran -c ../77bit/packjt77.f90 | gfortran -c ../77bit/packjt77.f90 | ||||||
|  | gfortran -c ../wavhdr.f90 | ||||||
| gfortran -c ../crc.f90 | gfortran -c ../crc.f90 | ||||||
| gfortran -o ft2 -fbounds-check -fno-second-underscore -ffpe-trap=invalid,zero -Wall -Wno-conversion -Wno-character-truncation ft2.f90 ft2_iwave.f90 ft2_decode.f90 getcandidates2.f90 ft2audio.o ptt.o libwsjt_fort.a libwsjt_cxx.a libportaudio.a ../libfftw3f_win.a -lwinmm | gfortran -o ft2 -fbounds-check -fno-second-underscore -ffpe-trap=invalid,zero -Wall -Wno-conversion -Wno-character-truncation ft2.f90 ft2_iwave.f90 ft2_decode.f90 getcandidates2.f90 ft2audio.o ptt.o /JTSDK/wsjtx-output/qt55/2.1.0/Release/build/libwsjt_fort.a /JTSDK/wsjtx-output/qt55/2.1.0/Release/build/libwsjt_cxx.a libportaudio.a ../libfftw3f_win.a -lwinmm | ||||||
| rm *.o *.mod | rm *.o *.mod | ||||||
|  | |||||||
| @ -30,5 +30,5 @@ character*3 exch | |||||||
| character*37 txmsg | character*37 txmsg | ||||||
| 
 | 
 | ||||||
| common/gcom1/snrdb,ndevin,ndevout,iwrite,itx,ngo,nTransmitting,nTxOK,nport,   & | common/gcom1/snrdb,ndevin,ndevout,iwrite,itx,ngo,nTransmitting,nTxOK,nport,   & | ||||||
|      ntxed,tx_once, y1(NRING),y2(NRING),iwave(NTZ),ltx(5),lrx(5),autoseq,      & |      ntxed,tx_once,y1(NRING),y2(NRING),iwave(NTZ+3*1152),ltx(5),lrx(5),      & | ||||||
|      QSO_in_progress,mycall,hiscall,hiscall_next,mygrid,exch,txmsg |      autoseq,QSO_in_progress,mycall,hiscall,hiscall_next,mygrid,exch,txmsg | ||||||
|  | |||||||
										
											Binary file not shown.
										
									
								
							
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user