;practica numero 4 del laboratorio
;manejo de un modulo LCD
list p=16f84

indf    equ     0h
tmro    equ     1
pc      equ     2
status  equ     3
fsr     equ     4
ptoa    equ     5
ptob    equ     6
r0c     equ     0ch
r0d     equ     0dh
r13     equ     13h
z       equ     2h
c       equ     0h
w       equ     0h
r       equ     1h
e       equ     1h
rs      equ     0h

        org     0
        goto    inicio
        org     05

retardo movlw   0ffh
        movwf   r13

decre   decfsz  r13,r
        goto    decre
        retlw   0

control bcf     ptoa,rs
        goto    dato2

dato    bsf     ptoa,rs

dato2   bsf     ptoa,e
        movwf   ptob
        call    retardo
        bcf     ptoa,e
        call    retardo
        retlw   0

tabla2  addwf   pc,r
        retlw   "c"
        retlw   "u"
        retlw   "r"
        retlw   "s"
        retlw   "o"
        retlw   " "
        retlw   "d"
        retlw   "e"
        retlw   " "
        retlw   "m"
        retlw   "i"
        retlw   "c"
        retlw   "r"
        retlw   "o"
        retlw   "c"
        retlw   "o"
        retlw   "n"
        retlw   "t"
        retlw   "r"
        retlw   "o"
        retlw   "l"
        retlw   "a"
        retlw   "d"
        retlw   "o"
        retlw   "r"
        retlw   "e"
        retlw   "s"
        retlw   " "
        retlw   "p"
        retlw   "i"
        retlw   "c"
        retlw   " "
        retlw   " "
        retlw   " " 
        retlw   " "
        retlw   " "
        retlw   0

inicio  movlw   0fch
        tris    ptoa
        movlw   00
        tris    ptob

begin   movlw   30h
        call    control
        movlw   07h
        call    control
        movlw   0ch
        call    control

muestra movlw   0
        movwf   r0c

ciclo   movf    r0c,w
        call    tabla2
        call    dato
        movlw   09fh
        movwf   r0d

reta1   call    retardo
        call    retardo
        decfsz  r0d,r
        goto    reta1
        incf    r0c,r
        movlw   28h
        xorwf   r0c,w
        btfss   status,z
	goto	ciclo
        goto    muestra

        end
