help needed on bit of code, please, anyone????

In one reply you put that serial.print and serial.write are two different things

They are, and I explained why.

so if seems odd to the replace print with write.

What is odd was that print() used to be used to send binary data by using the optional second argument of BYTE. That was not obvious from the name of the function, nor was the BYTE name consistent with the other uses of the second argument, which was, and still is, to define the base (binary, decimal, octal, hex, etc.) to be used when converting the value to a string to be sent.

As a result of the inconsistency, and since there was a perfectly usable method to send binary data already, the BYTE keyword was removed. Now, you must use the correct function to send binary data.

Nothing confusing about it now.

Also I changed a line of code whereby I deleted the word byte from anywhere and the code compiles. So any guidance as to why ?

Reread all the answers you have been given, in light of what is above. If you still don't understand that just removing the BYTE keyword is wrong, I don't think we will be able to convince you.

If you simply run your code, you will see that it doesn't work. Maybe that will convince you.