NewSoftSerial (or SoftSerial on 1.0) - no peek()?

You could try something as complex as (untested):

unsigned char peek(unsigned char *where)
{  return *where;
}