Hola juanje:
En el código que has adjuntado, hay algo que no está claro en esta línea:
Código Delphi
[-]
IF a OR b > 255 THEN Exit;
Lo que estás expresando es
"Si el resultado de f(a∨b) es mayor que 255...", es decir,
"aplica la función OR a los valores y compara el resultado con 255...". Si lo que quieres expresar es
"Si el valor de a o el valor de b es mayor que 255...", debería ser así:
Código Delphi
[-]
IF (a > 255) OR (b > 255) THEN Exit;
Ahora bien, si realmente quieres aplicar la función OR, entonces te recomiendo la siguiente nomenclatura:
Código Delphi
[-]
IF (a OR b) > 255 THEN Exit;
Aquí los paréntesis no son obligatorios, pero ayudan a explicar que no es un error, sino que realmente quieres realizar la operación.