CODE SEGMENT
ASSUME CS:CODE
START:MOV AL,90H
MOV DX,206H
OUT DX,AL
AGAIN:MOV DX,200H
IN AL,DX
MOV BP,8
TEST AL,03H
JZ TURNOFF
TEST AL,01H
JZ DISP_0
TEST AL,02H
JZ DISP_1
JMP AGAIN
DISP_0:MOV AL,00000001B
LP1: MOV DX,202H
OUT DX,AL
ROL AL,1
CALL DELAY
DEC BP
CMP BP,0
JZ AGAIN
JMP LP1
DISP_1: MOV AL,10000000B
LP2: MOV DX,202H
OUT DX,AL
ROR AL,1
CALL DELAY
DEC BP
CMP BP,0
JZ AGAIN
JMP LP2
TURNOFF:
MOV AL,00H
MOV DX,202H
OUT DX,AL
JMP AGAIN
DELAY PROC NEAR
MOV BX,4
D1: MOV CX,10000
D2: LOOP D2
DEC BX
JNZ D1
RET
DELAY ENDP
CODE ENDS
END START
|