Hi,
Does the original code flush the multi-byte sequence on a timeout? I suspect it is important that one can hit ESC without having to type another key. Also, I'd prefer to avoid backwards gotos if possible.
Yes, sort of. If it didn't match an escape sequence and hasn't seen additional data on this particular sercon_handle_event call it goes on interpret the buffer content as single byte. So, effectively the timeout is the clock_update() call interval.
cheers, Gerd