Hey Paul I just wrote a diff function and it reports differences between the originals and the clones.
Sorry about that.
Print
Print "FILE COMPARE - Reports the first 10 differences"
GETFIR_:
Print
Input "Enter first filename to compare: ",F1$
If File Exist(F1$)
FS1= File Size(F1$)
If FS1 > 0
GETSEC_:
Print
Input "Enter second filename to compare: ",F2$
If File Exist(F2$)
FS2= File Size(F2$)
If FS2 > 0
NDIFF= 0
SCANSIZE= FS1
If FS1 <> FS2
If FS2 < FS1 Then SCANSIZE= FS2
Print
Print "The files are different sizes."
Print "Only the first "+Str$(SCANSIZE)+" bytes will be compared."
Endif
Open To Read 1, F1$
Open To Read 2, F2$
For IND= 1 To SCANSIZE
Read Byte 1,FBYT1
Read Byte 2,FBYT2
If FBYT1 <> FBYT2
Inc NDIFF
Print "Byte #"+Str$(IND)+" File1 ="+Str$(FBYT1)+" File2 ="+Str$(FBYT2)
If NDIFF = 10 Then Goto FINI_
Endif
Next IND
FINI_:
Close File 1
Close File 2
If NDIFF = 0
Print
Print "No Differences."
Endif
Print
Print "Press any key."
Wait Key
End
Else
Print
Print F1$+" is empty."
Goto GETSEC_
Endif
Else
Print
Print "That File Does Not Exist!"
Goto GETSEC_
Endif
Else
Print
Print F1$+" is empty."
Goto GETFIR_
Endif
Else
Print
Print "That File Does Not Exist!"
Goto GETFIR_
Endif
The first ten differences are always at bytes #80, 96, 112, 416, 496, 576, 656, 1040, 1056, 1072
No matter what the source file those bytes end up as zero in the cloned dll.
I've switched to DBP and I got the same results.
I see the data statements are generated fine.
So it looks like a bug in the data statement values being converted into file bytes (the second routine).
I'm unique, just like everybody else.