On Tue, Jan 28, 2020 at 8:20 AM Jon Elson via cctalk <cctalk at classiccmp.org>
wrote:
Soem years ago I needed to crack the CRC on a Fanuc
serial
encoder. Luckily, the CRC value
was just 5 bits. I built a device to read out and store the
data from the encoder on a PC.
Then, I wrote a little c program that had a "universal" CRC
implementation, where the polynomial
was supplied as a command line parameter.
I did basically the same thing in the 1990s to reverse-engineer the 10-bit
CRC used in HP series 30 ("Spice") calculators (from the late 1970s) for
their ROM test.
The series 30 calculators implemented the ROM self-test as a single CPU
instruction that took 1025 clock cycles to execute, verifying the CRC of
1024 words of ROM, and returning a pass/fail indication.
Later HP calculators did away with the CRC hardware. The HP-41C doesn't
have a ROM self-test built in, though there was a diagnostic ROM used
within HP, and it used a simple checksum rather than a CRC. The series 10
calculators ("Voyager") had a built-in ROM self-test, which used a simple
checksum.