Fix issue where setting level 100% sets to 0xfe

Changed each instance of this calcualtion to use 5/4 rounding prior
to calling sprintf().  There is some issue between perl data types
and the C sprintf() implementation.  In this case perl will print
255 but sprintf will return fe.  Some instances of this were
previously fixed by adding check logic to force fe or 254 to 100%.
I modified all the instances to be consistent.