in reply to
Flushing STDIN after each character
You might want
Term::ReadKey
for reading a character at a time.
Comment on
Re: Flushing STDIN after each character
In Section
Seekers of Perl Wisdom