Hi Muttley,

It's hard to tell if it's a single pass program, or if the statements were extracted from other subroutines. but, assuming it's single pass (as shown).

When a PIC first powers up, the state of the output latches are undefined. So when you set a pin to output, without setting it's state first, it could go either high or low. Leaving RC1 in the wrong state during the shiftout to the first DPOT.

After both of the shiftout's execute, things would get back "in sync" again. But then the programs finished at that point. (still assuming single pass)

Maybe try setting the pins LOW instead of OUTPUT at the beginning.<br><br>