Sorry, the company would frown upon that. I think my problem is that I'm reading in the equivalent of 2 frames but have to discard so many bits to get to the sync. afterwhich I no longer have a frame left that's on a byte boundary. This is why I am currently writting the ascii-ized binary out to a file then reopening and going though the file to pack it back. I forgot I had changed that part of the code.