LOC
OBJ
F2:3f
885750
f242
880E6000
f246
SF
F247
Sf
F246
58
F249
58
f24A
58
F24B
IF
F24C
07
F2:40
CF
f24E
F24E
68166300
F252
83C205
F255
A06600
F25e
OAFF
F25A 750E
F2:5C
24EO
F25E 80E31F
F261
OAel
F263
F263
EE
F264
A2:6600
F267
E956Ff
F26A
F26A 240F
F26C
DOEB
F26E
73F3
F270
OC20
f272: fBEF
F274
F274
8"264"00
F276
A04900
F27B
8"3E6200
F27F
SF
FleD
Sf
Fl8t
59
F282 E943FF
LINE
SOURCE
3802
"DV
DX,[BX+OFFSET
C~SOR_POSf'U
3603
"DV
CX.C~SOR_HODE
3604
PDP
DI
3605
PDP
51
3806
PDP
BX
3807
PDP
AX
J DISCARD SAVED
ex
ANO
ox
3608
POP
AX
3809
POP
DS
3810
POP
ES
3611
IRET
3812
ENOP
3813
;
--
-------------
--
- - -
__________
--------------
___________________________
_
3814
; SET
COLOR
3815
THIS
ROUTINE
WIll
ESTABLISH
THE
BACKGROUND
COLOR.
THE
OVERSCAN
3616
COLOR,
AND
THE
FOREGROUND
COLOR
SET
FOR
MECIlft1 RESOLUTION
3817
GRAPHICS
3818
;
INPUT
3819
(BH)
HAS
COLOR
10
3820
IF
BH=O. THE
BACKGROUND
COLOR
VALUE
IS
SET
38.21
FROM
THE
LOW
BITS
OF
BL
(0-31)
3822
IF
BH=l.
THE
PALETTE SELECTION
IS
HAOE
3823
BASED
ON
THE
LOW
BIT
OF
BL:
3824
O=GREEN. REO,
YELLOW
FOR
COLORS
1,2.3
3825
I=BWE.
CYAN,
I1AGENTA
FOR
COLORS
1.2.3
3826
(Bl)
HAS
THE
COLOR
VALUE
TO
BE
USED
3827
; OUTPUT
3828
THE
COLOR
SELECTION
IS
UPOATEO
3829
;
---------------------------------------------.-----
---------------------
3830
SET.COLOR
PROC
NEAR
3831
NDV
DX.ADDR.6845
I
I/O
PORT
FOR
PALETTE
3832
ADD
OX.5
; OVERSCAN
PORT
3833
"DV
AL,CRT.PALETTE
;
GET
THE
CURRENT
PALETTE VALUE
3834
D.
BH,BH
;
IS
THIS
COLOR
01
3835
JHZ
;
OUTPUT
COLOR
1
"20
3836
3837
;-----
HANDLE
COLOR
0
BY
SETTING
THE
BACKGROUND
COLOR
3838
3839
ANO
AL,OEOH
;
TURN
OF
F
lOW
5
BITS
OF
CURRENT
3840
ANO
BL,OIFH
;
TURN
OFF HIGH 3
BITS
OF
INPUT
VALUE
3841
OR
AL,BL
;
PUT
VALUE
INTO
REGISTER
3842
1119: ;
OUTPUT
THE PALETTE
DUT
OX,AL
I
OUTPUT
COLOR
SELECTION
TO
309
PORT
3844
"DV
CRT_PALETTE
,At
I SAVE THE
COLOR
VALUE
3845
J"P
VIDEO.RETURN
3846
3847
1-----
HANDLE
COLOR
1 BY SELECTING
THE
PALETTE
TO
BE
USED
3848
3849
1120:
3850
ANO
AL,ODFH
I
TURN
OFF
PALETTE SELECT
BIT
3851
5H.
BLd
1 TEST
THE
LOW
ORDER
BIT
OF
BL
3852
JNt
"19
I ALREADY
DONE
3853
OR
AL.20H
;
TURN
ON
PALETTE SELECT
BIT
3854
J"P
H19
;
GO
DO
IT
3855
SET.COLOR
ENOP
3856
;------------------------------------------------
3857
I
YIDEO
STATE
3858
RETURNS THE
CURRENT
VIDEO STATE
IN
AX
3859
I
AH
= NUtlBER
OF
COUJI1NS
ON
THE
SCREEN
3860
J
AL
=
CURRENT
VIDEO
HODE
3861
I
BH
=
CURRENT
ACTIVE
PAGE
3862
'84'
1------------------------------------------------
3863
VIDEO.STATE
PROC
NEAR
3864
MOV
AH.BYTE
PTR
CRT.COLS ;
GET
HUMBER
OF
COLut1NS
3865
HOV
At,CRT.MODE
I
CURRENT
HOOE
3866
HOV
;
GET
CURRENT
ACTIVE
PAGE
'867
PDP
D1 I
RECOVER
REGISTERS
3868
PDP
51
3869
POP
ex
I DISCARD SAVED
ax
3870
J"P
"15
;
RETURN
TO
CALLER
3871
3872
;--------------------------------------------------------
3873
;
POSITION
3874
THIS
SERVICE ROUTINE CALCULATES
THE
REGEN
3875
BUFFER
ADDRESS
OF
A
CHARACTER
11'1
THE
ALPHA
MODE
3876
INPUT
3877
A.X
=
ROW,
COLUt1N
POSITION
3878
; OUTPUT
System BIOS
5-83