IntToHex() braucht 2 Parameter, da gehört noch die Anzahl Stellen dazu, z.B. IntToHex(123, 2).
In alten Delphiversionen war das mal so, ja. Heute wird ohne den zweiten Parameter schlicht die Größe des Datentyps als Standard verwendet.
Beim Datentyp Byte wird so per Compiler Magic aus IntToHex(ByteValue) einfach IntToHex(ByteValue, 2). Ich gehe mal bei Bytes[a] davon aus, dass auch hier die 2 als zweiter Parameter korrekt ist und diese dann bei älteren Delphiversionen angegeben werden muss.