QIC Tape help with CRC - Dwight?

Microtech Dart microtechdart at gmail.com
Mon Nov 16 02:01:02 CST 2015

Thanks, Lawrence, again.  Actually, I am writing a very specific program,
for my universal tape reader system to do these CRC checks as the program
identifies each block.

Thanks to adding the 84CF, this has now been made much, much easier.

I'm still new to all of this though, so while my program works as of
tonight, there is still much for me to learn about how these work.

Great information, please...keep it coming!

Thanks again,

On Mon, Nov 16, 2015 at 12:24 AM, Lawrence Wilkinson <ljw-cctech at ljw.me.uk>

> Ah, I thought you were writing a specific program, but if you're
> just documenting things then specifying the CRC polynomial and
> the init value as all-ones should be sufficient.
> The corresponding init parameter of reveng is "-i ffff".
> On 15/11/15 23:52, Microtech Dart wrote:
>> Lawrence, Dwight & Chuck...thank you!
>> The revelation that I can append 84CF to the 512-byte data block and the
>> 4-byte block address, is golden, and this works!
> The other thing to point out is that if you append the CRC to
> your original block, the resulting CRC should be 0000.
> e.g. 84 CF FF FF gives 0000
> This means there's no need to do a specific 'CRC check', but
> after your data block you keep feeding the CRC bytes in and
> then check that the result is 0000.
>> It would have taken a lot longer for me to figure out on my own that this
>> was a work-around, and at least one working interpretation of the
>> confusing
>> text I was quoting from the manuals.
>> I don't grasp all of the rest of what you shared fully, but now I at least
>> have an example of something that works to play with, and from there, I
>> hope to get more comfortable with this procedure, and write some programs
>> that do this checking to validate each block I read with my Universal QIC
>> reader system.
>> I've updated my web page about QIC-24 decoding CRC section to include this
>> knowledge:
>> http://mightyframe.blogspot.com/2015/08/qic-24-tape-data-block-format-decoding.html#CRC
> When specifying a CRC it's always good to provide a short
> example that can be used to validate an implementation - it
> doesn't need to be a whole block, but just 10 or so bytes
> together with the resulting CRC.
>> Thank you again!
>> -AJ
>> --
> Lawrence Wilkinson                          lawrence at ljw.me.uk
> The IBM 360/30 page                   http://www.ljw.me.uk/ibm360



More information about the cctech mailing list