non-blocking getch()