-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTASK 7
More file actions
81 lines (67 loc) · 1.12 KB
/
TASK 7
File metadata and controls
81 lines (67 loc) · 1.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE,SS:CODE
;
PPIC_C EQU 1FH
PPIC EQU 1DH
PPIB EQU 1BH
PPIA EQU 19H
KEY EQU 01H
;
ORG 1000H
MOV AX , 0
MOV DS , AX
MOV AL,10000000B
OUT PPIC_C,AL
MOV AL,00000000B
OUT PPIC,AL
;
MOV AL,11111111B
OUT PPIA,AL
;
MOV AL , 01110111B ; initial value
L1: OUT PPIB , AL
CALL SCAN_F
CONTINUE:CALL TIMER
ROR AL ,1
JMP L1
;
INT 3
;
TIMER: MOV CX,WORD PTR T_VALUE
TIMER1: NOP
NOP
NOP
NOP
LOOP TIMER1
RET
DATA: DB 11000000B
DB 11111001B
DB 10100100B
DB 10110000B
DB 10011001B
DB 10010010B
DB 10000010B
DB 11111000B
DB 10000000B
DB 10010000B
DB 00H
RESIGN :
MOV AL , DL
JMP CONTINUE
SCAN_F : MOV DL , AL ; STORE INDEX OF MOTOR
IN AL,KEY
TEST AL , 10000000B
JNZ RESIGN
TEST AL , 00010000B
JNZ RESIGN
AND AL , 00001111B
CMP AL , 00000011B
JNE RESIGN
;;; SPECIAL FUN
MOV AL ,DL
MOV WORD PTR T_VALUE , 400
JMP CONTINUE
K_BUF: DB 1
T_VALUE DW 1000
CODE ENDS
END