Hola Xoo, vamos por partes dijo Jak, primero, un pic f84 tiene 2 puertos,a y b, el a dispone de 5 salidas y el b de 8 salidas, es decir, solo podras con un micro,y sin hardware adicional, disponer de solo 13 salidas para tu secuenciador....

hay ejemplos en asempber que te orientaran sobre esto ,en mi pagina
www.todopic.com.ar , en la seccion asembler, dentro de una carpeta PRINCIPIANTES...
pero muy bien te manifesto Ejmc, y de manera didactica... puedes obtener los mismos resultados de diferentes formas... y a modo de ejemplo, para tu secuencial, por ejemplo, de solo 8 salidas (puerto b)
ejemplo1
bsf portb,0
call demora
clrf portb
bsf portb,1
call demora ;quizas, dentro de la demora, al finalizar, podria estar el clrf portb... con lo cual, ya ahorrariamos de escribirlo 8 veces... y ya ahorramos memoria
y asi seguirias con los bit 2,3,4,5,6,7
luego vas nuevamente al principio..
;----------------------------------------
ejemplo2
un_contador incf,conta,f
call tabla
movwf portb
call demora
goto un_contador
luego, una tabla
secuencia movf conta,w
addwf pcl,f
retlw b"00000000"
retlw b"00000001"
retlw b"00000020"
retlw b"00000300"
y sigue la tabla, con gran cantidad de efectos o secuencias... (ver pic cantor)
y logicamente, verificar el valor del contador para que no se pase de la tabla
;-----------------------------------------------
ejemplo3
clrf status,c
bsf portb,0
call demora
rlf rota ;roto el bit a la izq
goto ejemplo3
por supuesto, hay que rotar hasta 8 veces, y verificar el bit de carri para comenzar nuevamente... estos son ejemplos escritos asi a la ligera, que logicamente se pueden depurar,mejorar, copiar/pegar etc ect...
espero te sea de hutilidad
Norberto