mister_e,

You insight is very helpful! Interrupts were, indeed killing the HSEROUT routine. Setting INTCON to "0" just before the HSEROUT allows the characters to be output properly.

Grabbing the character with HSERIN inside the ISR works as well!

This helps a lot, but I don't believe that I can disable ints during serial transmission. MAYBE I can work around this.

It would be nice to know if I have a bug in my ISR, or if PBP itself has a bug that prevents HSEROUT from being an interruptable routine.

By the way. Everyone else seems to have found a nice way to include formatted code without putting it "in line". Could you please tell me how to do that?