USB keyboard, difficulty passing decimal key arguments to a function

Possibly because char is a signed type, with a valid range of values from -128 to 127.

good point, i'm kinda all over all over the place in how I misuse and understand terminology. However tested with the byte data type the same results occur