Problem Statement: 8279
Write 8086 ALP to initialise 8279 and to display characters in right entry mode.
Provide also the facility to display
• Character in left entry mode.
• Rolling display.
• Flashing display
1. Left entry mode
0000:3000 MOV BX,2000
0000:3003 MOV AL,08
0000:3005 OUT 31,AL
0000:3007 MOV CL,08
0000:3009 MOV AL,D1
0000:300B OUT 31,AL
0000:300D MOV DL,FF
0000:300F DEC DL
0000:3011 JNZ 300F
0000:3013 MOV AL,[BX]
0000:3015 OUT 30,AL
0000:3017 MOV DL,FF
0000:3019 DEC DL
0000:301B JNZ 3019
0000:301D INC BX
0000:301E DEC CL
0000:3020 JNZ 3013
0000:3022 INT 3
2. Rolling display
0000:3000 MOV AL, 18
0000:3002 OUT 31, AL
0000:3004 MOV AL, D1
0000:3006 OUT 31, AL
0000:3008 CALL 1000
0000:300B MOV AL, 90
0000:300D OUT 31, AL
0000:300F MOV BX, 2000
0000:3012 MOV CL, 10
0000:3014 MOV AL, [BX]
0000:3016 OUT 30, AL
0000:3018 CALL 1000
0000:301B INC BX
0000:301C DEC CL
0000:301E JNZ 3014
0000:3020 JMP 300F
0000:3022 INT 3
0000:1000 MOV DX,FFFF
0000:1003 DEC DX
0000:1004 JNZ 1003
0000:1006 RET
3. Flashing display
0000:4000 MOV BX,2000
0000:4003 MOV AL,08
0000:4005 OUT 31,AL
0000:4007 MOV CL,08
0000:4009 MOV AL,D1
0000:400B OUT 31,AL
0000:400D CALL 1000
0000:4010 MOV AL,[BX]
0000:4012 OUT 30,AL
0000:4014 CALL 1000
0000:4017 INC BX
0000:4018 DEC CL
0000:401A JNZ 4010
0000:401C MOV AL,A3
0000:401E OUT 31,AL
0000:4020 CALL 1000
0000:4023 MOV AL,A0
0000:4025 OUT 31,AL
0000:4027 CALL 1000
0000:402A JMP 401C
0000:402C INT 3
0000:1000 MOV DX,FFFF
0000:1003 DEC DX
0000:1004 JNZ 1003
0000:1006 RET
Provide also the facility to display
• Character in left entry mode.
• Rolling display.
• Flashing display
1. Left entry mode
0000:3000 MOV BX,2000
0000:3003 MOV AL,08
0000:3005 OUT 31,AL
0000:3007 MOV CL,08
0000:3009 MOV AL,D1
0000:300B OUT 31,AL
0000:300D MOV DL,FF
0000:300F DEC DL
0000:3011 JNZ 300F
0000:3013 MOV AL,[BX]
0000:3015 OUT 30,AL
0000:3017 MOV DL,FF
0000:3019 DEC DL
0000:301B JNZ 3019
0000:301D INC BX
0000:301E DEC CL
0000:3020 JNZ 3013
0000:3022 INT 3
2. Rolling display
0000:3000 MOV AL, 18
0000:3002 OUT 31, AL
0000:3004 MOV AL, D1
0000:3006 OUT 31, AL
0000:3008 CALL 1000
0000:300B MOV AL, 90
0000:300D OUT 31, AL
0000:300F MOV BX, 2000
0000:3012 MOV CL, 10
0000:3014 MOV AL, [BX]
0000:3016 OUT 30, AL
0000:3018 CALL 1000
0000:301B INC BX
0000:301C DEC CL
0000:301E JNZ 3014
0000:3020 JMP 300F
0000:3022 INT 3
0000:1000 MOV DX,FFFF
0000:1003 DEC DX
0000:1004 JNZ 1003
0000:1006 RET
3. Flashing display
0000:4000 MOV BX,2000
0000:4003 MOV AL,08
0000:4005 OUT 31,AL
0000:4007 MOV CL,08
0000:4009 MOV AL,D1
0000:400B OUT 31,AL
0000:400D CALL 1000
0000:4010 MOV AL,[BX]
0000:4012 OUT 30,AL
0000:4014 CALL 1000
0000:4017 INC BX
0000:4018 DEC CL
0000:401A JNZ 4010
0000:401C MOV AL,A3
0000:401E OUT 31,AL
0000:4020 CALL 1000
0000:4023 MOV AL,A0
0000:4025 OUT 31,AL
0000:4027 CALL 1000
0000:402A JMP 401C
0000:402C INT 3
0000:1000 MOV DX,FFFF
0000:1003 DEC DX
0000:1004 JNZ 1003
0000:1006 RET
No comments:
Post a Comment