typedef unsigned char byte;
A byte is simply another name for an unsigned char, which is defined by the C language to be an 8-bit integer.
The byte type has been defined in this library as a convenient short-hand for an unsigned 8-bit integer, and is used in a few functions. It is quite acceptable to use unsigned char instead, if you prefer, since the two are equivalent.
The possible range of numbers which can be stored in a byte are 0 to 255 inclusive.
If your compiler does not allow the definition of this type, replace all instances with unsigned char instead.