From fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 Mon Sep 17 00:00:00 2001
From: Joseph Hunkeler <jhunkeler@gmail.com>
Date: Wed, 8 Jul 2015 20:46:52 -0400
Subject: Initial commit

---
 pkg/dataio/doc/reblock.hlp | 177 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 177 insertions(+)
 create mode 100644 pkg/dataio/doc/reblock.hlp

(limited to 'pkg/dataio/doc/reblock.hlp')

diff --git a/pkg/dataio/doc/reblock.hlp b/pkg/dataio/doc/reblock.hlp
new file mode 100644
index 00000000..dd3a506a
--- /dev/null
+++ b/pkg/dataio/doc/reblock.hlp
@@ -0,0 +1,177 @@
+.help reblock Jan93 dataio
+.ih
+NAME
+reblock -- copy a file to tape or disk with optional reblocking
+.ih
+USAGE
+reblock infiles outfiles file_list
+.ih
+PARAMETERS
+.ls infiles  
+The input file list or device name, e.g. "mta1600[2]" or "mta800", "file1",
+"file1,file2", or "@infiles".
+.le
+.ls outfiles  
+The list of output files or device name, e.g. "gemini!mtb", "out1",
+"out1,out2", or "@outfiles".
+If multiple file output to disk is requested,  and the specified number
+of output files is 1, the output file names will be generated
+by concatenating the tape file number (the input files are on tape) or
+a sequence number (the input files are on disk) onto the output file
+name.
+.le
+.ls file_list
+List of tape file numbers or ranges delimited by commas,
+e.g. "1-3,5_8".
+File_list is requested only if the magtape input device is specified.
+Files will be read in ascending order regardless of the ordering of the list.
+Reading will terminate silently if EOT is reached, thus a list such as
+"1-999" may be used to read all files on the tape.
+.le
+.ls newtape  
+If the output device is magtape, newtape specifies whether the tape is
+blank or contains data.
+Newtape is requested only if no tape file number is specified, e.g. "mta1600".
+.le
+.ls outblock = INDEF
+Size of the output block  bytes.
+In the  default case and for disk output, the output block size is set to the
+file i/o disk default buffer size.
+.le
+.ls inrecord = INDEF, outrecord = INDEF
+The sizes of the input and output logical records in bytes.
+The default input and output record sizes are set equal to
+the input and output block sizes respectively. If inrecord > outrecord,
+records are trimmed; if inrecord < outrecord, records are padded; if
+inrecord = outrecord, records are simply counted. If only one of inrecord or
+outrecord is set, the undefined parameter defaults to the value of the
+other.
+.le
+.ls skipn = 0    
+The number of input blocks (tape input) or records (disk input, size inrecord)
+to be skipped.
+.le
+.ls copyn = INDEF
+The number of input blocks (tape input) or records
+(disk input, size inrecord) to be copied. Copyn defaults to a very large number.
+.le
+.ls byteswap = no
+Swap every other byte. For example if byteswap is enabled, bytes 1 2 3 4 5 6
+would become bytes 2 1 4 3 6 5 on output.
+.le
+.ls wordswap = no
+Swap every 4 bytes. For example if byteswap is enabled, bytes 1 2 3 4 5 6 7 8
+would become 4 3 2 1 8 7 6 5 on output.
+.le
+.ls pad_block = no
+If pad_block is set, reblock pads trailing blocks until they are outblock
+bytes long, otherwise trailing blocks may be short.
+.le
+.ls padchar  = 0
+Single character used to pad blocks or records.
+Padchar is only requested if pad_record or pad_block
+is set. If padchar equals one of the digits 0 through nine, records and
+blocks are padded with the face value of the character, otherwise the
+ASCII value is used.
+.le
+.ls offset = 0
+The number which added to the tape file number is appended to \fIoutfiles\fR
+to produce the output file name. For example if file_list = "1-3", outfiles =
+"out" and offset = 100, the three files out101, out102, out103 would
+be produced rather than out001, out002 and out003.
+.le
+.ls verbose = yes  
+Print messages about files, blocks copied etc.
+.le
+.ih
+DESCRIPTION
+REBLOCK is a procedure to copy disk or tape resident files to
+disk or tape. Multiple input tape or disk files may be specified.
+If multiple files are output to disk, and only one output file name is
+specified, the output file names will be
+generated by concatenating the tape file number (the input files are on tape)
+or a sequence number (the input files are on disk) onto the output file name.
+The user may request magnetic tape output to begin at a specific file on
+tape, e.g. mta1600[5] in which case file five will be overwritten if it
+exists, or at BOT or EOT. If no file number is specified REBLOCK asks
+whether the tape is new or old and begin writing at BOT or EOT as
+appropriate.
+
+Before beginning the copy, the user may request reblock to skip
+n (default 0) blocks (tape input) or logical records (disk input).
+The user can also specify that
+only n (default all) blocks (tape input) or records (disk input)
+are to be copied. Before the copy the data may be optionally word-swapped
+(default no) and/or byte-swapped (default no). If verbose is specified
+(default yes) reblock prints the input and output file names,
+the number of blocks read and written and the number of records read and
+written.
+
+Reblock
+uses the default buffer sizes supplied by mtio and file i/o to determine the 
+maximum number of bytes which can be read in a single read call. For tapes
+this corresponds to the maximum number of bytes per block permitted by the
+device. Mtio will not read more than one block per read call. Therefore the
+actual number of bytes read will be less than or equal to the mtio buffer size.
+For disk files the default buffer size set by IRAF is a multiple of the
+disk block size. If the disk file is smaller than one block
+or the last block is partially full, the number of bytes read
+will be less than the default buffer size. All magtape and disk reads are
+done with the file i/o read procedure and a call to fstati determines the number
+of bytes actually read.
+
+If all the defaults are set, a binary copy is performed.
+In tape to tape copies the block and record sizes are preserved,
+but the density may
+be changed by specifying the appropriate output file name e.g. mta800 or
+mta1600.
+Reblocking occurs in tape to disk transfers, if records, are trimmed,
+padded or counted, or if blocks are padded.
+If a disk to tape transfer is requested
+the output block size will be the default file i/o  buffer size.
+The last block in a file may be short. If uniform sized blocks are
+desired, pad_block must be set, in which case trailing partially filled
+blocks will be padded with padchar.
+
+Logical records are distinguished from blocks (physical records).
+The input and output record sizes default to
+the size of the input and output blocks respectively.
+Logical records may be shorter or longer than the  block sizes.
+
+.ih
+EXAMPLES
+1. Copy a magnetic tape preserving the record sizes but changing
+the density from 800 bpi to 1600 bpi.
+
+.nf
+	cl> reblock mtb800 mta1600[1] 1-999
+.fi
+
+2. Reblock a magnetic tape changing the block size from 4000 bytes to 8000
+bytes and padding the last block.
+
+.nf
+	cl> reblock mtb1600 mta1600[1] 1-999 outb=8000 padb+
+.fi
+
+3. Copy a series of disk fits files to tape
+
+.nf
+	cl> reblock @fitsfiles mta[1] outb=28800
+.fi
+
+4. Trim the records of a disk file.
+
+.nf
+	cl> reblock infile outfile inrec=80 outrec=72
+.fi
+
+5. Pad the records of a disk file with blanks.
+
+.nf
+	cl> reblock input output inrec=81 outrec=82 padchar=" "
+.fi
+.ih
+SEE ALSO
+t2d
+.endhelp
-- 
cgit 

