sub sound { my $WAV = new Win32::Sound::WaveOut(10000, 8, 1); my $length = $input2->get(); $length = $length*2; my $data2 = ""; my $counter = 0; for my $i (1..$length) #foreach my $loop (1..$length) { my $v2 = sin($counter/2*3.14) * 128 + 128; $data2 .= pack("c", $v2); $counter += ($add * 10)/10000; $WAV->Load($data2); # get it $WAV->Write(); # hear it $WAV->Unload(); # drop it &new_add; #get new $add value from a scale } }