I wrote: > such that I can't do any processing on the fly. I preinitialize an array > of bits to zero, then use a sequence like: > btfsc inport,inbit > bsf buffer+0,0 > btfsc inport,inbit > bsf buffer+0,1 > [...] I should also point out that it is not necessary to preinitialize the array if the input port bit is either the MSB or LSB of a port, and you don't need to preserve the contents of W. In the LSB case, I use: rrf inport,w rrf buffer+0 rrf inport,w rrf buffer+0 [...] Cheers, Eric