Yeah, I've decoded the pipe info. I intend to make my level dumper create an info text file for each level that includes a human-readable version of the header info, including the pipe data. I haven't gotten around to it yet because I've been working a lot lately.
I took a look at the corruption in level 4-2 and I found the strangest thing. You know how I mentioned that the 4-4 corruption was caused by the data being shifted right one bit, well the 4-2 data was shifted right half a bit! Well, not really. Floppies use MFM encoding, which stores two bits (data and clock) for every one bit of data. Apparently, the drive got out of sync and started reading the clock bits, rather than the data bits.
I was able to confirm this by manually restoring part of the level. I could see pattern to the corruption, and I had a good idea what the next few columns of the screen would look like, so I was able to manually contruct a few columns. This gave me a data set to compare to the corruption. After messing about, I remembered that magnetic media don't directly store bits on a one-to-one basis, so perhaps that was a factor. As it turns out, it was.
(In fact, the part of level 4-4 that I couldn't identify the pattern of corruption was the same thing. Not that it mattered in that case as that part was very simple, so I could just reconstruct it from scratch, but it's good to know.)
I haven't applied this info to make an uncorrupted version of the level yet, but that's my next priority. Unless I run into trouble, it should be sometime tonight.