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!
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-decod…
Thank you again!
-AJ
On Sun, Nov 15, 2015 at 4:49 AM, Lawrence Wilkinson <ljw-cctech at ljw.me.uk>
wrote:
On 15/11/15 11:15, Microtech Dart wrote:
(snip)
"The cyclical redundancy check (CRC) shall
consist of two bytes,
calculated
over the 512 bytes of interchange data, and the 4-byte block address,
*starting
with all ONEs, CRC initial value*, and using the CRC Generating
polynomial:
x16 + x12 + x5 + 1
*"starting with all ONEs, CRC initial value"*? What does THAT mean? Do I
need to do some kind of register shift? xorin or xorout?
It's the initial value of each bit, corresponding to the "Init before
calculation" lines in the code at the bottom of the page. There doesn't
seem to be any provision for entering this value in the online
computation (and all-zeros is *not* a good initialisation vector!)
One way around this would be to come up with a byte sequence that
gave a CRC of all ones (i.e. 84 CF) and pre-pend that to the main
sequence, and then it works. But I assume you're using some sort of
code, so just make sure it's initialised appropriately.
I've even played with
http://reveng.sourceforge.net/, but I'm having
trouble even understanding the meaning of the input values and parameters
with this.
I appreciate any feedback that anyone can give, here.
Best of luck! CRCs are fun!
--
Lawrence Wilkinson lawrence at ljw.me.uk
The IBM 360/30 page
http://www.ljw.me.uk/ibm360
--
Thanks,
-AJ
http://MicrotechM1.blogspot.com