9 track tapes and block sizes

Warner Losh imp at bsdimp.com
Mon Oct 5 16:06:50 CDT 2020


On Mon, Oct 5, 2020 at 9:25 AM Chuck Guzis via cctech <cctech at classiccmp.org>
wrote:

> On 10/4/20 10:51 PM, J. David Bryan via cctech wrote:
> > On Sunday, October 4, 2020 at 16:00, Chuck Guzis via cctalk wrote:
> >
> >> A 16MB tape block is impossibly large in any case.
> >
> > The HP 3000 mag tape diagnostic attempts to write a single record from
> BOT
> > to EOT, which unfortunately fails under simulation due to the 16 MB
> > limitation.  In hindsight, it would have been better to accommodate
> record
> > lengths corresponding to the highest density and longest reel length,
> which
> > I think would need 28 bits.  Four bits for metadata identifier would
> still
> > have been be good enough, and one of those should have been dedicated to
> > "private data" that would appear invisible to programs running under
> > simulation (and could be used to include information about the tape
> image
> > with the tape image).
>
> That's interesting.   Looking at my own code for .TAP files, I see the
> following:
>
> #define TAP_FILEMARK    0x0             // 0 = filemark
> #define TAP_EOM         0xffffffff      // -1 = end of medium
> #define TAP_ERASE_GAP   0xfffffffe      // -2 = erase gap
> #define TAP_ERROR_FLAG  0x80000000      // error flag bit
> #define TAP_LENGTH_MASK 0x00ffffff      // mask for length
>
> So increasing the mask for block length wouldn't seem to be a problem,
> assuming that SIMH could support it.  There may be other high-order bit
> meanings assigned, but I've not run into them.
>

The other way to handle it, should we not be able to steal bits which
should be plan A, is to have a metadata type that says 'append this to the
prior record' which would remove the limit entirely.

Warner


More information about the cctech mailing list