You misunderstand the direction I'm going. I have
magtape with data
already on it. I want to extract that data into a file or set of
files on the disk that I can then burn to CD-R. I can use dd to move
raw records, but I would like to also know what the block size was
for a particular file so I could reconsitute the tape later if
necessary. I'm not so worried about the VMS BACKUP tapes I need to
spin off - I want one saveset per file. If I want to dup any install
tapes (non-VAX), the blocking becomes more critical.
The emulator community is vigorously using a tape image container
format known as TAP for precisely this purpose.
Each record from tape is written to file prefixed *and* suffixed
by a four-byte record length in little-endian format. A zero-
length record is represented by a 4-byte value of zero; although
intuition might call for 8-bytes (a prefix & suffix with nothing
in between), this is not the case. The convention appears to come
directly from FORTRAN 77's handling of unformatted sequential files.
And EOF is represented by two consecutive zero-length records.
I've got code samples I can throw at you in C, Modula-2, and F77.
Regards,
-dq