IBM AT 5170 Technical Reference page 323

Table of Contents

Advertisement

IBM Personlll Comp'-Itel" NACRO Aaae",bler
Veraion 2.00
1-9
VIDEO!
--- 06/10/85
VIDEO DISPLAY BIOS
06-10-65
66'
PAGE
66.
1-----------------------------------------------------------------------------­
665
I WR I TE AC CURRENT
666
I
-THIS ROUTINE WRITES THE ATTRIBUTE AND CHARACTER
667
I
AT THE CURRENT CURSOR POSITION
666
I
INPUT
669
;
(AH)
=
CURRENT CRT MODE
670
(8HI
=
DISPI..AY PAGE
671
(CX)
= COUNT OF CHARACTERS TO WR I TE
672
(AI..)
= CHAR TO WR ITE
673
(BL)
= ATTR 18UTE OF CHAR TO WR
I
TE
67.
(OS)
= OAT A SEGt.4ENT
675
(ES)
= REGEN SEGMENT
676
OUTPUT
677
DISPI..AY REGEN BUFFER UPDATED
676
;
-
-
- - -
---
-
-----
-
------
-
-------
-
---
- - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - - -
----
- -
-
- - -­
679
660
0353
WR I TE AC CURRENT
PROC
NEAR
661
0353 80 FC 04
-
CMP
AH,4
IS THIS GRAPHICS
662
0356 72 08
JC
P30
66'
0358 80 FC 07
Ct.4P
AH,7
IS THIS BW CARD
664
035B 74 03
JE
P30
665
0350 E9 0582 R
Jt.4P
GRAPHICS_WRITE
666
0360
P30 :
WR I TE AC CONT I NUE
607
0360 E8 0322 R
CALL
FIND_POSITION
GET REGEN-1..0CAT I ON AND PORT ADDRESS
666
ADDRESS
IN
(D I) REG I STER
669
0363 OA OB
OR
BL,BL
CHECK MODE FLAG FOR COLOR CARD AT 80
690
0365 74 06
JZ
P32
SKIP TO RETRACE WAIT IF COLOR AT 80
691
692
0361
95
XCHG
AX,SP
GET THE ATTR/CHAR SAVED FOR FAST WRITE
69'
0368 F3/ AB
REP
STOSW
STRING WRITE TI-£ ATTRI8UTE
&
CHARACTER
69.
036A EB 16
JMP
SHORT
P35
EXIT FAST WRITE ROUTINE
695
696
;-----
WAIT FOR HORIZONTAl.. RETRACE OR VERTICAl.. RETRACE IF COI..OR 80
697
696
036C
P3 I
I
1..00P FOR EACH ATTR
I
CHAR WR I TE
699
036C 95
XCHG
BP,AX
PI..ACE AHR/CHAR BACK
IN SAVE REGISTER
900
0360
P321
WA
I
T FOR HORZ RETRACE 1..0W OR VERT I CAl..
901
0360 FB
STI
ENABI..E
INTERRLPTS FIRST
902
036E 90
NOP
ALLOW FOR INTERRUPT WINDOW
903
036F FA
CL'
BLOCK
I
NTERRUPTS FOR SINGLE LOOP
90.
0310 EC
IN
AL.OX
GET STATUS FROM THE ADAPTER
905
0311
A8 08
TEST
AL.RVRT
CHECK FOR VERT
I
CAL RETRACE FIRST
906
0373 15 09
JNZ
P3'
DO FAST WRITE NOW IF VERTICAL RETRACE
907
0375 A8 01
TEST
AL.RHRZ
IS HOR I ZONTAL RETRACE LOW THEN
906
0377 75 F4
JNZ
P32
WAIT UNTIL IT IS
909
0379
P331
WAIT FOR EITI-£R RETRACE HIGH
910
0379 EC
IN
AL,OX
GET STATUS AGAIN
911
037A A8 09
TEST
AI.., RVRT+RHRZ
I
S HOR
I
ZONT AI.. OR VERT I CAL RETRACE HIGH
912
031C 14 F8
JZ
P33
WAIT UNTIL EITHER
IS
ACTIVE
913
037E
P34:
91.
031E 95
XCHG
AX,BP
GET THE ATTR/CHAR SAVED IN (BPI
915
031F AB
STOSW
WRITE THE ATTRIBUTE AND CHARACTER
916
0380 E2 EA
LOOP
P31
AS t.4ANY T I t.4ES AS REQUESTED -
TILL CX=O
917
0362
P35:
916
0382 E9
o
12E R
EX IT
919
920
0385
921
922
I - - - - - - - - - - -- - - - --- - - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --- - - - - - - - - - ­
923
; WR I TE C CURRENT
I
92.
-THIS ROUTINE WRITES THE CHARACTER AT
925
THE CURRENT CURSOR POS I T I ON, ATTR IBUTE UNCHANGED
926
INPUT
927
(AH)
=
CURRENT CRT MODE
926
(BH)
= DISPLAY PAGE
929
(CX)
= COUNT OF CHARACTERS TO WR I TE
930
(AI..)
= CHAR TO WRITE
931
(OS)
= DATA SEGMENT
932
(ES)
= REGEN SEGt.4ENT
933
OUTPUT
93'
;
D I SPI..AY REGEN BUFFER UPDATED
935
;
------
- - - -- - - - - - - - - - - -
---
-
-
--- - - -
--
--
------------
-
---
-
-------
- -
--
- -- - - - - - - - - - -­
936
937
0365
WR I TE
C
CURRENT PROC
NEAR
936
0365 80 FC 04
-
-CMP
AH,4
I
IS THIS GRAPHICS
939
0366 72 08
JC
P40
9'0
038A 80 FC 07
Ct.4P
AH,7
I
IS THIS BW CARD
941
0380 74 03
JE
P40
942
038F E9 0582 R
.Jt.4P
GRAPHICS_WRITE
9.3
0392
P40:
944
0392 E8 0322 R
CALL
GET REGEN LOCATION AND PORT ADDRESS
945
ADDRESS
OF LOCATION IN lOll
9.6
9.7
;
-----
WAIT FOR HORIZONTAL RETRACE OR VERTICAL RETRACE IF COLOR 80
946
949
0395
P41,
WA I T FOR HORZ RETRACE LOW OR VERT I CAL
950
0395 FB
S71
ENABLE INTERRUPTS FIRST
951
0396 OA DB
OR
8L.BL
CHECK NODE FLAG FOR COLOR CARD
IN 80
952
0398 75 OF
JNZ
P43
ELSE SKIP RETRACE WAIT -
00 FAST WRITE
953
039A FA
CLI
BLOCK
INTERRUPTS FOR SINGLE LOOP
954
039B EC
IN
AL,DX
GET STATUS FROt.4 THE ADAPTER
955
039C A8 06
TEST
AL,RVRT
CHECK FOR VERT I CAL RETRACE FIRST
956
039E 75 09
JNZ
P43
00 FAST WRITE NOW IF VERTICAL RETRACE
957
03AO A8 01
TEST
AL,RHRZ
IS HOR I ZONT AI.. RETRACE LOW THEN
956
03A2 75 F1
JNZ
P41
WAIT UNTIl.. IT IS
959
03A4
P42:
WAIT FOR EITHER RETRACE HIGH
960
03A4 EC
IN
AL,DX
GET STATUS AGAIN
96'
03A5 A8 09
TEST
AL,RVRT+RHRZ
IS HORIZONTAL OR VERTICAL RETRACE HIGH
962
03A7 74 FB
JZ
P42
WAIT UNTIL EITHER RETRACE ACTIVE
963
03A9
P43:
964
03A9 88 C5
MOV
AX,8P
GET THE CHARACTER SAVE IN
(BPI
965
03AB AA
STOS8
PUT THE CHARACTER
I NTO REGEN BUFFER
966
03AC 47
INC
01
BUt.4P PO!NTER PAST ATTRIBUTE
967
03AD E2 E6
LOOP
P.,
AS MANY T!t.4ES AS REQUESTED
966
969
03AF E9
o
12E R
JMP
V IDEO_RETURN
970
971
03B2
WRITE_C_CURRENT ENDP
VIDEO1
5-151

Advertisement

Table of Contents
loading

Table of Contents