Actually on second thought, yes I can. I've changed the following...
void PrintCenter(int x1, int y1, char *str, image *dest, ...)
{
va_list argptr;
char msg[256];
va_start(argptr,dest);
vsprintf(msg,str,argptr);
va_end(argptr);
str=msg;
GotoXY(x1 - pixels(str)/2, y1);
PrintString(str, dest);
}
...to this:
void PrintCenter(int x1, int y1, char *str, image *dest, ...)
{
GotoXY(x1 - pixels(str)/2, y1);
PrintString(str, dest);
}