PRINT HEX$(crc32("The quick brown fox jumps over the lazy dog")) FUNCTION crc32~& (buf AS STRING) STATIC table(255) AS _UNSIGNED LONG STATIC have_table AS _BYTE DIM crc AS _UNSIGNED LONG, k AS _UNSIGNED LONG DIM i AS LONG, j AS LONG IF have_table = 0 THEN FOR i = 0 TO 255 k = i FOR j = 0 TO 7 IF (k AND 1) THEN k = _SHR(k, 1) k = k XOR &HEDB88320 ELSE k = _SHR(k, 1) END IF table(i) = k NEXT NEXT have_table = -1 END IF crc = NOT crc ' crc = &Hffffffff FOR i = 1 TO LEN(buf) crc = (_SHR(crc, 8)) XOR table((crc AND &HFF) XOR ASC(buf, i)) NEXT crc32~& = NOT crc END FUNCTION