thank you for the reply, but because the delays are inside the sequence being sent to the shift registers , (I don't know how or even if you can change that into millis once it has been sent to the shift registers) I didn't think it would slow the main program. I thought it might be due to bouncing??