ORG 0H ; Start at address 00H
JMP START_MAIN ; Goto address 80H
ORG 80H ; Relocate Program at address 80H
START_MAIN:
MOV P0,#0FEH
CALL DELAY
MOV p0,#0FDH
CALL DELAY
MOV p0,#0FBH
CALL DELAY
MOV P0,#0F7H
CALL DELAY
MOV p0,#0EFH
CALL DELAY
MOV p0,#0DFH
CALL DELAY
MOV P0,#0BFH
CALL DELAY
MOV p0,#07FH
CALL DELAY
JMP START_MAIN
DELAY: MOV R2,#10 ; Loop Register R2 = 3
ALOOP: MOV R3,#150 ; Loop Register R2 = 3
BLOOP: MOV R4,#150 ; Loop Register R2 = 3
CLOOP: DJNZ R4,CLOOP ; Decrement R0 and go CLOOP if not yet '0'
DJNZ R3,BLOOP ; Decrement R0 and go BLOOP if not yet '0'
DJNZ R2,ALOOP ; Decrement R0 and go ALOOP if not yet '0'
RET ; Return back the last caller
END ; Instruct ASM that Program Ends here