countrypaul:
Having said that, it looks like serial.print is assuming you have passed a long rather than a char, which I don't understand yet.
All of the various print(type, base) overloads are piping through print(long, base) apparently to avoid code duplication. The unfortunate side effect is that Hex values print with too many leading Fs.