#DEFINE nChunks 128 && adjust chunk size for the best performance. It is very depended on the probability of differences. && do following in a loop until eof lcTemp1 = fread(nFile1Handle,nChunks) lcTemp2 = fread(nFile2Handle,nChunks) if !(lcTemp1==lcTemp2) && compare them byte by byte i = 0 for i=1 to min(len(lcTemp1),len(lcTemp2)) if !(substr(lcTemp1,i,1)==substr(lcTemp2,i,1)) ReportDifference(lnGlobalPosition+i,substr(lcTemp1,i,1),substr(lcTemp2,i,1)) && wriet the difference endif endfor endif lnGlobalPosition = lnGlobalPosition + iAnyway, above is similar to what the FC does...