
	CBLOCK		
	R0
	R1
	R2
	R3
	DIGITO1
	DIGITO2
	DIGITO3
	DIGITO4
	DIGITO5
	DIGITO6
	DIGITO7
	DIGITO8
	NumH
	NumM
	NumL
	COUNTBCD
	TEMP_BCD
	ENDC

LCD_Dec
   bcf      STATUS, C
   movlw   0x18
   movwf   COUNTBCD
   clrf   R0
   clrf   R1
   clrf   R2
   clrf   R3

loop24:
   rlf      NumL, f  
   rlf      NumM, f   
   rlf      NumH, f    
   rlf      R3, f
   rlf      R2, f
   rlf      R1, f
   rlf      R0, f
   decfsz   COUNTBCD, f
   goto           a_dec
	goto	BCD_ASCII 
 
a_dec:
   movlw   R3
   movwf   FSR
   call           a_bcd   
   movlw   R2
   movwf   FSR
   call           a_bcd
   movlw   R1
   movwf   FSR
   call           a_bcd
   movlw   R0
   movwf   FSR
   call           a_bcd
   goto           loop24

a_bcd:
   movf           INDF
   movlw   0X03
   addwf   INDF, w
   movwf   TEMP_BCD
   btfsc   TEMP_BCD, 3
   movwf   INDF
   movlw   0X30
   addwf   INDF, w
   movwf   TEMP_BCD
   btfsc   TEMP_BCD, 7
   movwf   INDF
 
   return

BCD_ASCII
	swapf	R0, w
	andlw	0x0F
	addlw	d'48'
	movwf	DIGITO1		
	movf	R0, w
	andlw	0x0F
	addlw	d'48'
	movwf	DIGITO2		

	swapf	R1, w
	andlw	0x0F
	addlw	d'48'
	movwf	DIGITO3		
	movwf	Tenk		
	movf	R1, w
	andlw	0x0F
	addlw	d'48'
	movwf	DIGITO4

	swapf	R2, w
	andlw	0x0F
	addlw	d'48'
	movwf	DIGITO5
	movf	R2, w
	andlw	0x0F
	addlw	d'48'
	movwf	DIGITO6

	swapf	R3, w
	andlw	0x0F
	addlw	d'48'
	movwf	DIGITO7
	movf	R3, w
	andlw	0x0F
	addlw	d'48'
	movwf	DIGITO8
	
	return