in reply to Null \x00 being replaced by space \x20

I also am unable to duplicate your problem. I have displayed my input and output files with the hex conversion utility xxd (supplied with vim). I have also compared the two files with the windows file compare utility fc.
$xxd null_test.txt 00000000: 736f 6d65 2074 6578 7400 6d6f 7265 2074 some text.more t 00000010: 6578 740d 0a0d 0a ext.... $perl BaldGorilla.pl null_test.txt $fc null_test.txt null_test.txt.new Comparing files null_test.txt and NULL_TEST.TXT.NEW FC: no differences encountered $xxd NULL_TEST.TXT.NEW 00000000: 736f 6d65 2074 6578 7400 6d6f 7265 2074 some text.more t 00000010: 6578 740d 0a0d 0a ext.... $
Bill