until ($filesize <= $offset) { sysseek (INTERLEAVED_DATA, $offset, 0); sysread (INTERLEAVED_DATA, $buffer, 8192); @interleaved = split(//, unpack("b*", $buffer)); $buffer = ""; while (@interleaved){ push @uninterleaved_1, shift @interleaved; push @uninterleaved_2, shift @interleaved; } $uninterleaved_1 = pack "b*", join "", @uninterleaved_1; @uninterleaved_1 = ""; $uninterleaved_2 = pack "b*", join "", @uninterleaved_2; @uninterleaved_2 = ""; syswrite (UNINTERLEAVED_1, $uninterleaved_1); syswrite (UNINTERLEAVED_2, $uninterleaved_2); $uninterleaved_1 = ""; $uninterleaved_2 = ""; $offset = $offset + 8192; }