mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-11-03 13:30:52 -05:00 
			
		
		
		
	
		
			
	
	
		
			36 lines
		
	
	
		
			857 B
		
	
	
	
		
			Fortran
		
	
	
	
	
	
		
		
			
		
	
	
			36 lines
		
	
	
		
			857 B
		
	
	
	
		
			Fortran
		
	
	
	
	
	
| 
								 | 
							
								subroutine unpackpfx(ng,call1)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  character*12 call1
							 | 
						||
| 
								 | 
							
								  character*3 pfx
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  if(ng.lt.60000) then
							 | 
						||
| 
								 | 
							
								! Add-on prefix of 1 to 3 characters
							 | 
						||
| 
								 | 
							
								     n=ng
							 | 
						||
| 
								 | 
							
								     do i=3,1,-1
							 | 
						||
| 
								 | 
							
								        nc=mod(n,37)
							 | 
						||
| 
								 | 
							
								        if(nc.ge.0 .and. nc.le.9) then
							 | 
						||
| 
								 | 
							
								           pfx(i:i)=char(nc+48)
							 | 
						||
| 
								 | 
							
								        else if(nc.ge.10 .and. nc.le.35) then
							 | 
						||
| 
								 | 
							
								           pfx(i:i)=char(nc+55)
							 | 
						||
| 
								 | 
							
								        else
							 | 
						||
| 
								 | 
							
								           pfx(i:i)=' '
							 | 
						||
| 
								 | 
							
								        endif
							 | 
						||
| 
								 | 
							
								        n=n/37
							 | 
						||
| 
								 | 
							
								     enddo
							 | 
						||
| 
								 | 
							
								     call1=pfx//'/'//call1
							 | 
						||
| 
								 | 
							
								     if(call1(1:1).eq.' ') call1=call1(2:)
							 | 
						||
| 
								 | 
							
								     if(call1(1:1).eq.' ') call1=call1(2:)
							 | 
						||
| 
								 | 
							
								  else
							 | 
						||
| 
								 | 
							
								! Add-on suffix, one character
							 | 
						||
| 
								 | 
							
								     i1=index(call1,' ')
							 | 
						||
| 
								 | 
							
								     nc=ng-60000
							 | 
						||
| 
								 | 
							
								     if(nc.ge.0 .and. nc.le.9) then
							 | 
						||
| 
								 | 
							
								        call1=call1(:i1-1)//'/'//char(nc+48)
							 | 
						||
| 
								 | 
							
								     else if(nc.ge.10 .and. nc.le.35) then
							 | 
						||
| 
								 | 
							
								        call1=call1(:i1-1)//'/'//char(nc+55)
							 | 
						||
| 
								 | 
							
								     endif
							 | 
						||
| 
								 | 
							
								  endif
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  return
							 | 
						||
| 
								 | 
							
								end subroutine unpackpfx
							 |