Hi Bert,
I tested with $1021 instead of $A001 as the poly and it changed from 1730 to 1682 cycles - still nowhere nere ~800.

Yes, mine iterates thru the array of 9 bytes (in this case) in one go while Darrels would have to be called 9 times with a new byte in CRC_In each time. I don't think that is what makes it that much slower.

I'm new to this CRC thing as well and don't yet fully understand it enough to try to come with a completely different aproach.

Thanks!
/Henrik.