;bank0 INDF EQU 00H TMR0 EQU 01H PCL EQU 02H STATUS EQU 03H FSR EQU 04H RA EQU 05H RB EQU 06H RC EQU 07H PCLATH EQU 0AH INTCON EQU 0BH PIR1 EQU 0CH TMR1L EQU 0EH TMR1H EQU 0FH T1CON EQU 10H TMR2 EQU 11H T2CON EQU 12H CCPR1L EQU 15H CCPR1H EQU 16H CCP1CON EQU 17H RCSTA EQU 18H TXREG EQU 19H RCREG EQU 1AH CMCON EQU 1FH ;*************************************** ;bank1 ;INDF EQU 00H OPTION_BUF EQU 01H ;PCL EQU 02H ;STATUS EQU 03H ;FSR EQU 04H TRISA EQU 05H TRISB EQU 06H TRISC EQU 07H ;PCLATH EQU 0AH ;INTCON EQU 0BH PIE1 EQU 0CH PCON EQU 0EH PR2 EQU 12H TXSTA EQU 18H SPBRG EQU 19H EEDATA EQU 1AH EEADR EQU 1BH EECON1 EQU 1CH EECON2 EQU 1DH VRCON EQU 1FH ;*************************************** ;bank2 ;INDF EQU 00H ;TMR0 EQU 01H ;PCL EQU 02H ;STATUS EQU 03H ;FSR EQU 04H ;RB EQU 06H ;PCLATH EQU 0AH ;INTCON EQU 0BH ;*************************************** ;bank3 ;INDF EQU 00H ;OPTION_BUF EQU 01H ;PCL EQU 02H ;STATUS EQU 03H ;FSR EQU 04H ;TRISB EQU 06H ;PCLATH EQU 0AH ;INTCON EQU 0BH ;*************************************** C EQU 00H DC EQU 01H Z EQU 02H PD EQU 03H TO EQU 04H RP0 EQU 05H RP1 EQU 06H IRP EQU 07H ;*************************************** GOTO Q0F2 ADDLW 0FFH ADDLW 0FFH ADDLW 0FFH GOTO Q0F3 ;========================================================== Q005: IORLW 000H BTFSC STATUS,Z GOTO Q0ED MOVWF 28H MOVF 20H,W MOVWF FSR BTFSC 21H,0 BSF STATUS,IRP CLRF 20H CLRF 21H BTFSC 28H,7 GOTO Q019 MOVF INDF,W MOVWF 20H BTFSS 28H,1 GOTO Q0ED INCF FSR,F MOVF INDF,W MOVWF 21H GOTO Q0ED ;========================================================== Q019: CALL Q092 ANDWF INDF,W BTFSS STATUS,Z INCF 20H,F GOTO Q0ED ;========================================================== Q01E: MOVF 3EH,W MOVWF 20H MOVF 3CH,W MOVWF 21H MOVLW 001H MOVWF 22H CLRF 23H ;========================================================== Q025: CLRWDT CALL Q046 BTFSS STATUS,C GOTO Q039 DECFSZ 22H,F GOTO Q025 MOVLW 0FFH ADDWF 23H,F BTFSC STATUS,C GOTO Q025 ADDWF 20H,F BTFSS STATUS,C ADDWF 21H,F BTFSS STATUS,C GOTO Q0ED MOVLW 032H MOVWF 22H MOVLW 000H MOVWF 23H GOTO Q025 ;========================================================== Q039: CALL Q077 MOVLW 008H MOVWF 23H ;========================================================== Q03C: CALL Q078 CALL Q046 RRF 22H,F GOTO Q040 ;========================================================== Q040: DECFSZ 23H,F GOTO Q03C CALL Q078 BSF STATUS,C MOVF 22H,W RETURN ;========================================================== Q046: MOVF 3DH,W MOVWF FSR MOVF 3BH,W BSF FSR,7 IORWF INDF,F BCF FSR,7 ANDWF INDF,W BTFSC 39H,2 XORWF 3BH,W ADDLW 0FFH RETURN ;========================================================== Q051: MOVWF 26H MOVF 3DH,W MOVWF FSR MOVLW 009H MOVWF 27H BCF STATUS,C ;========================================================== Q057: CALL Q05D RRF 26H,F DECFSZ 27H,F GOTO Q057 BSF STATUS,C GOTO Q05D ;========================================================== Q05D: BCF FSR,7 BTFSS 39H,3 GOTO Q06C MOVF INDF,W IORWF 3BH,W BTFSS 39H,2 XORWF 3BH,W MOVWF INDF BSF FSR,7 MOVF INDF,W IORWF 3BH,W BTFSS STATUS,C XORWF 3BH,W MOVWF INDF GOTO Q078 ;========================================================== Q06C: MOVF INDF,W IORWF 3BH,W BTFSS STATUS,C XORWF 3BH,W BTFSC 39H,2 XORWF 3BH,W MOVWF INDF BSF FSR,7 COMF 3BH,W ANDWF INDF,F GOTO Q078 ;========================================================== Q077: BSF 39H,6 ;========================================================== Q078: RLF 39H,W ANDLW 006H MOVWF 20H CALL Q086 MOVWF 21H INCF 20H,F CALL Q086 BTFSS 39H,6 GOTO Q0B4 BCF 39H,6 MOVWF 20H MOVLW 002H CALL Q0D3 GOTO Q0B4 ;========================================================== Q086: MOVLW 000H MOVWF PCLATH MOVF 20H,W ADDWF PCL,F RETLW 001H RETLW 075H RETLW 003H RETLW 015H RETLW 000H RETLW 03CH RETLW 00CH RETLW 0D9H ;========================================================== Q092: MOVLW 000H MOVWF PCLATH MOVF 28H,W ANDLW 007H ADDWF PCL,F RETLW 001H RETLW 002H RETLW 004H RETLW 008H RETLW 010H RETLW 020H RETLW 040H RETLW 080H ;========================================================== Q09F: BSF STATUS,IRP ;========================================================== Q0A0: CLRF INDF INCF FSR,F ADDLW 0FFH BTFSS STATUS,Z GOTO Q0A0 GOTO Q0ED ;========================================================== Q0A6: CLRF 23H ;========================================================== Q0A7: MOVWF 22H ;========================================================== Q0A8: MOVLW 0FFH ADDWF 22H,F BTFSS STATUS,C ADDWF 23H,F BTFSS STATUS,C GOTO Q0ED MOVLW 003H MOVWF 21H MOVLW 0DFH CALL Q0B4 GOTO Q0A8 ;========================================================== Q0B3: CLRF 21H ;========================================================== Q0B4: ADDLW 0E8H MOVWF 20H COMF 21H,F MOVLW 0FCH BTFSS STATUS,C GOTO Q0BD ;========================================================== Q0BA: ADDWF 20H,F BTFSC STATUS,C GOTO Q0BA ;========================================================== Q0BD: ADDWF 20H,F CLRWDT INCFSZ 21H,F GOTO Q0BA BTFSC 20H,0 GOTO Q0C3 ;========================================================== Q0C3: BTFSS 20H,1 GOTO Q0C7 NOP GOTO Q0C7 ;========================================================== Q0C7: RETURN ;========================================================== Q0C8: BCF STATUS,C RLF 20H,F RLF 21H,F ADDLW 0FFH BTFSC STATUS,C GOTO Q0C8 MOVF 20H,W GOTO Q0ED ;========================================================== Q0D0: BCF STATUS,C RRF 21H,F RRF 20H,F ;========================================================== Q0D3: ADDLW 0FFH BTFSC STATUS,C GOTO Q0D0 MOVF 20H,W GOTO Q0ED ;========================================================== Q0D8: CLRF 21H CLRF 23H MOVWF 22H MOVLW 002H GOTO Q0DD ;========================================================== Q0DD: MOVWF 28H MOVF 23H,W SUBWF 21H,W BTFSS STATUS,Z GOTO Q0E4 MOVF 22H,W SUBWF 20H,W ;========================================================== Q0E4: MOVLW 004H BTFSC STATUS,C MOVLW 001H BTFSC STATUS,Z MOVLW 002H ANDWF 28H,W BTFSS STATUS,Z MOVLW 0FFH GOTO Q0ED ;========================================================== Q0ED: BCF STATUS,IRP BCF STATUS,RP1 BCF STATUS,RP0 CLRWDT RETURN ;========================================================== Q0F2: GOTO Q121 ;========================================================== Q0F3: MOVWF 70H SWAPF STATUS,W CLRF STATUS MOVWF 42H MOVF 3AH,W MOVWF 3AH MOVF FSR,W MOVWF 41H CLRF PCLATH BCF STATUS,IRP BCF STATUS,RP0 BTFSS INTCON,5 GOTO Q116 BTFSS INTCON,2 GOTO Q116 INCF 44H,F INCF 45H,F MOVLW 01BH SUBWF 46H,W BTFSS STATUS,C GOTO Q116 CLRF 46H INCF 43H,F MOVLW 008H SUBWF 43H,W BTFSS STATUS,C GOTO Q116 CLRF 43H INCF 40H,F INCF 3FH,F MOVLW 03CH SUBWF 40H,W BTFSS STATUS,C GOTO Q116 CLRF 40H ;========================================================== Q116: BTFSC INTCON,2 BCF INTCON,2 MOVF 41H,W MOVWF FSR MOVF 3AH,W MOVWF PCLATH SWAPF 42H,W MOVWF STATUS SWAPF 70H,F SWAPF 70H,W RETFIE ;========================================================== Q121: CALL Q336 MOVLW 001H MOVWF 23H MOVLW 02CH CALL Q0A7 BCF 7DH,6 BSF 7DH,7 ;========================================================== Q128: CALL Q193 CLRWDT BTFSS 7DH,5 GOTO Q133 CLRWDT BTFSC 7DH,6 GOTO Q132 MOVF 73H,W MOVWF 74H BSF 7DH,6 ;========================================================== Q132: BCF 7DH,5 ;========================================================== Q133: CALL Q217 CALL Q229 GOTO Q128 CLRF 6DH ;========================================================== Q137: CLRWDT MOVLW 008H SUBWF 6DH,W BTFSC STATUS,C GOTO Q143 MOVF 6DH,W ADDLW 048H MOVWF FSR MOVLW 000H MOVWF INDF INCFSZ 6DH,F GOTO Q137 ;========================================================== Q143: RETURN ;========================================================== Q144: BCF RB,3 BCF RA,4 MOVLW 003H MOVWF 6AH ;========================================================== Q148: CLRWDT MOVLW 000H SUBWF 6AH,W BTFSS STATUS,C GOTO Q173 MOVLW 080H MOVWF 79H MOVLW 001H MOVWF 69H ;========================================================== Q151: CLRWDT MOVLW 009H SUBWF 69H,W BTFSC STATUS,C GOTO Q16F BCF RB,0 MOVF 6AH,W ADDLW 050H MOVWF FSR MOVF INDF,W MOVWF 32H MOVF 32H,W ANDWF 79H,W BSF STATUS,RP0 MOVWF 21H CLRWDT MOVF 21H,W SUBLW 000H BCF STATUS,RP0 BTFSC STATUS,Z GOTO Q167 BSF RB,0 ;========================================================== Q167: BCF STATUS,C RRF 79H,F BSF RB,3 NOP NOP BCF RB,3 INCFSZ 69H,F GOTO Q151 ;========================================================== Q16F: MOVLW 001H SUBWF 6AH,F BTFSC STATUS,C GOTO Q148 ;========================================================== Q173: BSF RA,4 NOP NOP BCF RA,4 RETURN MOVLW 020H IORWF 50H,F CALL Q144 MOVLW 032H CALL Q0A6 MOVLW 0DFH ANDWF 50H,F CALL Q144 RETURN MOVLW 008H IORWF 50H,F CALL Q144 MOVLW 001H CALL Q0A6 MOVLW 0F7H ANDWF 50H,F CALL Q144 RETURN MOVLW 020H IORWF 50H,F CALL Q144 MOVLW 005H CALL Q0A6 MOVLW 0DFH ANDWF 50H,F CALL Q144 RETURN ;========================================================== Q193: CLRWDT BTFSC 7DH,4 GOTO Q198 GOTO Q199 GOTO Q199 ;==========================================================