Usa un solo delay (el más pequeño 500 ms). Usa una XOR para cambiar el estado de un pin y....
Utiliza una variable para saber cuándo usar las demás salidas.. me explico mejor... Si tenés un solo delay de 500ms F3 lo cambias siempre, pero F2 lo haces cuando pase 2 veces, F1 cuando pase 3 veces y por último F0 cuando pase 4 veces.