use Tk::Event qw(DONT_WAIT); sub push_button { $txt -> insert ('end',"Dialing $number\n"); #$modem->dial($number); my (@n) = $number =~ /\d/g; foreach my $d (@n){ $modem->atsend( 'ATDT'. $d . Device::Modem::CR ); DoOneEvent(DONT_WAIT); } }