Habe eine Funktion die jetzt funktioniert mit 2er Komplement
Die Funktionen oben habe ich schon getestet. Leider ohne 2er Komplement
Zitat:
Function SimpleCheckSum (const s : String) : string;
Var res : byte;
i ,test : integer;
checksum,hex : Integer;
Begin
if Length(s) div 2 <> 0 then
begin
end;
checksum := 0;
test := length(s);
I := 0;
while I < length(s) do
begin
hex := HexStrToInt((copy(s,I+1,2)));
checksum := (checksum + hex) and 255;
I := I + 2;
end;
result := IntToHex(256 - checksum and 255,0);
End;