[Back to CRC SWAG index] [Back to Main SWAG index] [Original]
{
From what I gather from these two routines, in order to "Normalize" a crc
value, you must reverse the order of the four bytes in the value.
Example: crc value =  $01020304
         normalized = $04030201
Am I correct in assuming this?
If so, the two procedures above fail to perform that task, so here is a BASM
routine that I have tested and works perfectly.
}
Procedure Normalize(Var crc: LongInt); Assembler;
ASM
     LES   DI, crc
     MOV   AX, WORD PTR ES:[DI]
     MOV   BX, WORD PTR ES:[DI + 2]
     XCHG  AH, AL
     XCHG  BH, BL
     MOV   WORD PTR ES:[DI + 2], AX
     MOV   WORD PTR ES:[DI], BX
End;
Please forward a copy of your response to Serge Paquin who wrote the original
request for CRC routines.
[Back to CRC SWAG index] [Back to Main SWAG index] [Original]