IBM AT 5170 Technical Reference page 317

Table of Contents

Advertisement

IBM Pel"sonal Computel" MACRO Assemblel"
Vel"SiOM 2.00
1-3
VIDEOI
---
06/10/85
VIDEO DISPLAY BIOS
06-10-85
229
0040 8E C6
MOV
ES,SI
I
SET UP TO POINT AT VIDEO MEMORY AREAS
230
004F
M3t
231
004F SB FO
MOV
SI,AX
MOVE COMMAND TO LOOK UP REG I STER
232
0051
CI EE OS
SHR
S
1,8
SHIFT COMMAND TO f;ORM BYTE OFFSET
233
0054 01 E6
SAL
S
1,1
TIlES
2.
FOR WORD TABLE LOOKUP
234
005& 83 FE 28
eMP
SI,Mll
TEST FOR WITHIN TABLE RANGE
235
0059 73 09
ON8
M4
BRANCH TO EX
I
T
I F NOT A VAL I 0 COMMAND
23.
237
005B SA 26 0049 R
MOV
AH,OCRT MODE
I MOVE CURRENT MODE II-no AH
238
005F 2EI FF 1.4 0000 R
..IMP
WORD PTJ!( CS:[SI+OFFSET Mt]
I GO TO SELECTED FUNCTION
23.
240
0064
1.44:
; COMMAND NOT VALID
241
0064 E9 012E R
..IMP
VIDEO RETURN
;
00 NOTHING IF NOT IN VALID RANCE
242
00&7
VIDEO
[0
I
ENDP ­
243
I - - - -::---
= -
~---
------------------------------------------­
24.
;
SET MODE
I
24S
;
-
THIS ROUTINE INITIALIZES THE ATTACHMENT TO
24.
;
I NPUT THE SELECTED MODE.
THE SCREEN I S BLANKED.
247
246
I
AL 1
=
MODE SELECTED
I
RANGE 0 - 7 )
24.
; OUTPUT
250
;
NONE
251
;~~
-
~;~~
-
-
------
;~;~
-
---
~~~~
--- -
--
- - - - - - - - - - - - - - - -
--
- - - - ­
252
0067
253
0067 BA 0304
-
MOV
DX.03D4H
ADDRESS OF COLOR CARD
254
0061. 83 FF 30
CMP
DI.30H
IS BW CARD INSTALLED
255
0060 75 04
JNE
M8
OK WITH COLOR
256
006F' BO 07
MOV
AL,7
INDICATE INTERNAL BW CARD MODE
257
0071
B2 B4
MOV
DL, OB4H
ADDRESS OF BW
I MONOCHROME I CARD
258
0073
MB:
259
0073 A2 0049 R
MOV
PCRT MODE, AL
SAVE MODE I N GLOBAL VAR I A8LE
260
007& 89 16 0063 R
MOV
OADDR 6845, OX
SAVE ADDRESS OF BASE
2&1
0071. C6 06 0084 R 18
MOV
OROWS-;25-1
INITIALIZE DEFAULT ROW COUNT OF 25
2&2
007F
IE
PUSH
as
SAVE POINTER TO DATA SEGMENT
2&3
0080 50
PUSH
AX
SAVE MODE NUMBER (AL)
2&4
0081
98
C8W
CLEAR HIGH BYTE OF
~ODE
2&5
0082 8B FO
MOV
SI,AX
;
SET TABLE_ POINTER.
INDEXED BY MODE
2&&
0084 2EI 8A S4 0000 E
MOV
AL,CS; [SI
+ OFFSET
1.47]
I GET THE MODE SET VALUE FROM TABLE
2&7
0089 A2 0065 R
MOV
PCRT MODE SET .Al
I
SAVE THE MODE SET VALUE
2&8
008C 24 37
ANa
AL,037H
-
I VIDEO OFF. SAVE HIGH RESOLUTION BIT
2&9
008E 52
PUSH
OX
I SAVE OUTPUT PORT VALUE
270
008F 83 C2 04
AOO
DX,4
I
PO
I
NT TO CONTROL REG I S TER
271
0092 EE
OUT
DX,Al
I
RESET VIDEO TO OFF TO SUPPRESS ROLLING
272
0093 5A
POP
OX
I BACK TO BASE REG I STER
273
ASSUME
DS:ABSO
274
0094 2B DB
SU8
BX,BX
;
SET UP FOR ABSO SEGMENT
275
009& 8E DB
MOV
DS,ex
I
ESTA8L:ISH VECTOR TAeLE ADDRESSING
27&
0098 C5 IE 0074 R
LOS
8X.OPARM PTR
I GET POINTER TO VIDEO PARMS
277
ASSUME
DS:CODE ­
278
009C 58
POP
AX
RECOVER MODE NUMBER
IN
(AL)
279
0090 B9 00 I 0
MOV
CX.I6
lENGTH OF EACH ROW OF TABLE
280
OOAO 3C 02
CMP
AL,2
DETERM I NE WH I CH ONE TO USE
281
00A2 72 OE
MODEISOORI
JC
M'
282
00A4 03 09
AOO
BX.CX
NEXT ROW OF
INITIALIZATION TABLE
283
OOA& 3C 04
CMP
AL.4
284
00A8 72 OB
JC
MODEIS20R3
M'
285
OOAA 03 09
AOO
ex.cx
MOVE TO GRAPHICS ROW OF INIT_TABLE
286
OOAC 3C 07
CMP
AL.7
287
OOAE 72 02
JC
MODE
IS 4,5, OR &
288
0080 03 09
AOO
8X,CX
MOVE TO BW CARD ROW OF
INIT_TA8LE
26'
M'
2.0
8X POINTS TO CORRECT ROW OF INITIALIZATION TABLE
291
292
00B2
1049:
OUT INIT
293
00B2 50
PUSH
AX
SAVE MODE IN
(AU
294
00B3 8B 47 OA
MOV
AX,[8X+IO]
GET THE CURSOR MODE FROM THE TABLE
295
00B6 86 EO
XCHG
AH,AL
PUT CURSOR MODE
IN CORRECT POSITION
29&
00B8
IE
PUSH
as
SAVE TABLE SEGMENT PO INTER
297
ASSUME
DS:DATA
298
00B9 E8 0000
E
CALL
005
POINT OS TO DATA SECiMENT
299
OOBC A3 0060 R
MOV
eIICURSOR MODE,AX
PLACE INTO BIOS DATA SAVE AREA
300
ASSUME
DS:CODE­
30 I
OOBF
IF
POP
as
I
RESTORE THE TABLE SEGMENT POINTER
302
OOCO 32 E4
XOR
AH,AH
I
AH I S REG I STER NUMBER OUR I NG LOOP
303
304
1-----
LOOP THROUGH TABLE, OUTPUTTING REGISTER ADDRESS, THEN VALUE FROM TABLE
305
30&
00C2
I
INITIALIZATION LOOP
307
00C2 8A C4
MOV
AL,AH
1
GET 6S45 REG
I
STER NUMBER
308
00C4 EE
OUT
DX,Al
309
00C5 42
INC
OX
; POINT TO DATA PORT
310
OOC& FE C4
INC
AH
I
NEXT REG I STER VALUE
31 I
OOCS 8A 07
MOV
AL, [BX]
I GET TABLE VALUE
312
OOCA EE
OUT
aX,Al
lOUT TO CHIP
313
OOCB 43
INC
8X
;
NEXT IN TABLE
314
OOCC 4A
OEC
OX
I
BACK TO PO
I
NTER REG
I
S TER
315
OOCO E2 F3
LOOP
MIa
I
00 THE WHOl,.E TABLE
316
OOCF 58
POP
AX
1
GET MODE BACK I NTO'
I
Al I
317
0000
IF
POP
as
I
RECOVER SEGMENT VALUE
316
ASSUME
OS:OATA
319
320
FILL REGEN AREA WITH BLANK
321
322
0001
33 FF
XOR
01,01
SET UP PO I NTER FOR REGEN
323
0003 89 3E 004E R
MOV
eIICRT START .01
START ADDRESS SAVED
IN GLOBAL
324
0007 C& 0& 00&2 R 00
MOV
(tACTTvE PAGE.O
SET PAGE VALUE
325
OODC B9 2000
MOV
CX.8192-
NUMBER OF WORDS I N COLOR CARD
32&
OOoF 3C 04
CMP
AL,4
TEST FOR GRAPH I CS
327
OOE 1 72 01.
OC
MI2
NO GRAPHICS INIT
328
00E3 3C 07
CMP
Al,.,7
TEST FOR BW-CARD
329
00E5 74 04
JE
M"
BW CARD INIT
330
00E7 33 CO
XOR
AX,AX
FILL FOR GRAPHICS MODE
331
00E9 E8 as
OMP
SHORT MI3
CLEAR BUFFER
332
OOEB
1041 I:
BW CARD
I NIT
333
OOEB B5 08
MOV
CH,08H
BUFFER 51 ZE ON BW CARD (20481
334
OOEo
10412:
NO GRAPHICS INIT
335
OOEO B8 0720
MOV
FILL CHAR FOR ALPHA + ATTRIBUTE
336
OOFO
M13:
CLEAR BUFFER
337
OOFO F31 AB
REP
STOS.
FILL THE REGEN BUFFER WITH BLANKS
336
33'
; - - - - -
ENABLE V IDEO AND CORRECT PORT SETT I NG
340
34 I
00F2 88 16 0063 R
MOV
DX,OADDR &845
I PREPARE TO OUTPUT TO V IDEO ENABLE PORT
342
00F6 S3 C2 04
ADD
DX.4
-
; POINT TO THE MODE CONTROL REGISTER
VIDEO1
5-145

Advertisement

Table of Contents
loading

Table of Contents