#!/bin/sh
#set -x
CWPROOT=/prog1/SeismicUnix; export CWPROOT
PATH=$CWPROOT/bin:$PATH; export PATH

#  This script will read the tape image files (*.tif) from disk and write
#  data in SEG-Y format to a tape.
#  The files are supposed to be named:  1.tif, 2.tif, 3.tif ...

dir=p25           # set directory where tif files are stored
first=248         # set first file number
last=252          # set last file number
tape=/dev/rmt/2n  # set tape device to use

########################################################################

# Header files used for SEG-Y tapes
header=theader.ascii
binary=theader.bin

mt -f $tape rewind

# Generate a list of file names
filenr=$first
filelist="$dir/$filenr.tif"
while [ $filenr -lt $last ]; do
   filenr=`expr $filenr + 1`
   filelist="$filelist $dir/$filenr.tif"
done
echo List of files:
echo $filelist

# Make a fifo node to be used by tifread (avoid use of temporary files)
fifo_node=fifo_$$
mkfifo $fifo_node
sleep 4

# Send data to the fifo node
cat $filelist > $fifo_node &
sleep 4

# Read tif file, convert from SEG-D, and write SEG-Y to tape
echo Start writing tape...
./tifread $fifo_node | \
segdread tape=- use_stdio=1 ns=6144 | \
segywrite tape=$tape hfile=$header bfile=$binary verbose=1 vblock=240

mt -f $tape eof 3
echo Rewinding tape...
mt -f $tape rewind
/bin/rm -f $fifo_node

echo "Done!"

exit