SCSI Tape Emulator

Rich Alderson RichA at
Mon Oct 10 18:49:12 CDT 2016

From: Charles Anthony
Sent: Monday, October 10, 2016 12:53 PM

> Details: The .tap format is a series of tape records; each record is
> stored as a 2 byte byte count, the data (sometimes rounded to an even
> number of bytes), and a repeat of the 2 byte byte count. This format
> supports the basic tape record operations; you need to keep a pointer
> to the current record. A 'tape read' retrieves the byte count from the
> record pointed to by the pointer, retrieves the data, and advances the
> pointer to the next block. Tape marks are stored as 2 bytes of
> zeros. Skipping records forward is done by retrieving the byte count
> and calculating the new pointer value.  Skipping backward is done by
> backing the pointer up 2 bytes, and retrieving the 2nd copy of the
> byte count of the previous record, and calculating how far back to
> move the pointer. Rewind sets the pointer to 0.

Correction:  .tap format uses 4 byte counters, in little-endian order.
Order is not relevant for the EOF tape marks, of course, since they're
4 bytes of 0.

The older DECUS .tpc format uses a 2 byte counter, also little endian,
but only at the front of the record (no read backwards capability).


Rich Alderson
Vintage Computing Sr. Systems Engineer
Living Computer Museum
2245 1st Avenue S
Seattle, WA 98134

mailto:RichA at

More information about the cctalk mailing list