On 10/13/2017 09:46 PM, Chuck Guzis via cctalk wrote:
On 10/13/2017 06:27 PM, Jon Elson via cctalk wrote:

For 800 BPI I have most of this in my head, if you have any specific
questions.  (I wrote up a mostly software read/write interface for 800
BPI NRZi mag tape many years ago on a CM/M system.)

800 BPI is a VERY simple format.
...and not everyone follows the standard.  For example, some early
vendors left out the CRC before the LRCC.  Almost all drives will ignore
the omission.


Geez, I wonder how they do that? First, the CRC generator/checker is zeroed, then you clock all the data bytes into the CRC logic, then at the end, there is a 2-character-time gap, the CRC and the LRCC. If the CRC is missing, then the LRCC would be applied to the CRC checker and it wouldn't check. I'm pretty sure the formatters I've worked on would barf on such a tape (indicate CRC and LRCC errors, and the data transferred to memory would lose the last data byte.)

Apperently, IBM used a byte-FIFO, and when the full gap was detected, the last two bytes read would be the CRC and LRCC. This allowed them to handle tapes written on machines with the tape controller on the multiplexer bus, which could cause short gaps when the data was not available quite fast enough. NOTHING else could read those damn tapes! Their controller ignored gaps of up to at least 5 character times. All the DEC-compatible formatters seemed to use the 2-character-time gap to indicate CRC and LRCC follow.
Jon

Reply via email to