Date : Wed, 29 Feb 1984 00:16:00 cst
From : Eaton.HFED@hi-multics
Subject: disk crc emulation
I am trying to duplicate the CRC generation that occurs inside a
WD1793 floppy disk controller chip. Western Digital's application notes
on this chip specify that the crc register is preloaded with all ones and that
the crc generation commences with the address mark and continues through the
last data character.
The test data that I am attempting to use was obtained by reading
an ID field from disk. It consists of:
FE (ID Adr Mark),00,00,02,00,87 (CRC1),90 (CRC2).
I used the CRC routine from SYSLIB 2.7 feeding it 5 bytes of FE,00,00,02,00.
The result was not 87,90 as I felt it should be. Even after modifying CRCCLR
to initialize it's counter to FFFF I was still unable to duplicate the
CRC's that were generated by the WD1793.
Does the fact that the address mark is generated using a clock pattern
of C7 have anything to do with this? Are clock bits also piped through
the generator?
The CRC routine supposedly uses the same X16 + X12 + X5 + 1 polynomial as
the WD1793 chip.
Where am I missing the boat on this?
Eaton.HFED @ HI-MULTICS