

;DEFINE  SFRs RELATED TO TIMER2
	
	T2MOD EQU 0C9H	;
	T2CON EQU 0C8H	;
	RCAP2H EQU 0CBH	;
	RCAP2L EQU 0CAH	;
	TL2 EQU 0CCH	;
	TH2 EQU 0CDH	;
	CTR EQU 2AH	; USED AS COUNTER FOR T2 INTERRUPT
	TR2 BIT 0CAH	;
	EXF2 BIT 0CEH	;
;*****************************************************************************
;*****************************************************************************	


		ORG 002BH       ; INTERRUPT SERVICE ROUTINE FOR T2

ISR_T2:		DJNZ CTR, EXIT  ; DECREMENT COUNTER, EXIT IF NOT ZERO
		ACALL INPUTS    ; ELSE CALL INPUTS SUBROUTINE
		MOV CTR, #0AH   ; RESET COUNTER TO 0Ah
EXIT:		CLR EXF2        ; (CLR EXF2 => T2CON.6)
		RETI            ; RETURN FROM INTERRUPT


		ORG 0050H       ; THIS IS MAIN LOOP

MAIN:		ACALL DISPLAY   ; 
		........
		........
		........
		........
		
		SJMP MAIN       ; 


		ORG 0100H       ; BOOT / INITIALIZATION SUBROUTINE

BOOT:		MOV TMOD, #11H  ; LOAD TMOD WITH 11H (1011 binary) 
		MOV T2MOD, #02H ; LOAD T2MOD WITH 0000 0010 BINARY
		MOV T2CON, #00H ;
		MOV RCAP2L, #00H;
		MOV RCAP2H, #00H;
		MOV SP, #60H    ; LOAD SP WITH 60H
		MOV P3, #0FFH   ; 
		MOV P0, #0FFH   ; 
		MOV P2, #0FFH   ; 
		MOV P1, #0FFH   ; 
		CLR P1.1        ; TURN OFF LED1 (THIS HAPPENS TO BE T2EX PIN OF TIMER2)
		CLR P1.3        ; TURN OFF LED2
		CLR P0.2        ; TURN OFF LED3
		MOV CTR, #0AH   ; COUNTER = 0Ah
		MOV IE, #0A0H   ; (ENABLE T2, SET EA=1, REST ALL =0)
		SETB TR2        ; (SET TR2= START TIMER2)
		SJMP MAIN       ; LONG JMP TO 0030H


		ORG 0200H	; SUBRTN FOR TAKING INPUT FORM P3

INPUTS:		MOV R2, #04H    ;
		......
		......
		......
		RET             ;


		ORG 0300H	; DISPLAY SUBRTN

DISPLAY:        JB ACC.7, JMP1  ; JMP IF H=1
                SETB P1.1       ; 
                CLR P1.3        ; 
                CLR P0.2        ; 
                SJMP JMP3       ; 
JMP1:           JB ACC.6, JMP2  ; 
                CLR P1.1        ; 
                SETB P1.3       ; 
                CLR P0.2        ; 
                SJMP HR8        ; 
JMP2:           CLR P1.1        ; 
                SETB P0.2       ; 
                CLR P1.3        ; 
JMP3:           RET             ;


;*****************************************************************
;*****************************************************************