{ local $/ = \2; my $TileData = 0x0000; while(my $TileData = <$fhin>) { if(length($TileData) != 2) { warn "Warning: The input file had an uneven length. Last byte read: $TileData."; last; } my $NewTileData = (($TileData & 0xFC7F) | ($GFXFileBits)); print {$fhout} $NewTileData; } }