Ok, I finally figured out how to modify printf_lib to do what I want. I have posted a white paper + code out my teams web site in the white papers section.
http://www.titanrobotics.net/index2....whitepages.cfm
It is a fully buffered I/O for both the TTY and Program serial ports (i.e. streams).
It is rather nice to be able to have the user interface (to examine the health of the robot) on one port and have the diagnostics spit out on another port simutaneously.
It is also really nice to be able to put
printf() in interrupt handlers and have it work without messing up the interrupt handler.
Enjoy.