Hi,
void sercon_putchar(char *ptr) { char c = GET_GLOBAL(ptr[0]); [ ... ]
... work?
Yes. See output.c:puts_cs() as an example. It only works if it's a constant string (as opposed to a string built on the stack).
After cleaning up the code only three fixed sequences are left: reset, clear screen and move cursor right. Don't think it is worth creating a putstring function just for these.
cheers, Gerd