Hm ich habs jetzt so ausprobiert:
pbytearray(p2)[i] := Byte(PByteArray(p2)[i] - PByteArray(p1)[i]);
hier gibts gleich range check error - ohne cheat.
Damit gibts nur mit cheat range check error
pbyte(cardinal(p2)+i)^ := pbyte(cardinal(p2)+i)^-pbyte(cardinal(p1)+i)^;
seltsam das alles

- ich könnte das natürlich wieder mit IF machen, aber das subtrahieren ist vermutlich einfach schneller als das vergleichen.
Arnulf