        ORG 0
        SJMP MAIN

        ORG 000BH
        SJMP TIMER0_ISR

        ORG 0030H
MAIN:
        MOV DPTR, #300H
        MOV TMOD, #01H
        MOV TH0, #0F0H
        MOV TL0, #00H
        MOV IE, #82H
        MOV A, #0FH
        MOV R0, A

COUNTER:
        ACALL DELAY
        MOV A, R0
        MOVC A, @A+DPTR
        MOV P1, A
        DJNZ R0, COUNTER
        SJMP RESET

RESET:
        ACALL DELAY
        MOV A, R0
        MOVC A, @A+DPTR
        MOV P1, A
        SETB TR0
LOCK:   JZ LOCK
        SJMP COUNTER

DELAY:  MOV R1, #100
LOOP:   NOP
        DJNZ R1, LOOP
        RET

        ORG 0080H
TIMER0_ISR:
        CLR TR0
        MOV TH0, #0F0H
        MOV TL0, #00H
        MOV A, #0FH
        MOV R0, A
        RETI

        ORG 300H
BINARY_TO_7SEG_TABLE:
        DB 129, 207, 146, 134, 204, 164, 160, 143, 128, 132, 136, 224, 177, 194, 176, 184

        END
