«  »

Адаптер VGA. Организация и работа






( )

















" VGA. . "






: :
.. ..

:
- 103



















1994 .

- 2 -




1.
2.
2.1.
2.2.
2.3.
3.
3.1. MDA
3.2. CGA
3.3. EGA
3.4. VGA
4. VGA
4.1. -
4.2.
5. VGA
5.1.
5.2
5.3.
5.4.
5.5.
5.6.
6.

- 3 -

.

, -
. -
-
, , .
-
.
-
. , -
.
,
,
.

, .
, -
. ,
.
80 25 .
, , -
.
.
.
, IBM -
, , -
.
IBM .
-, PC XT. -
PCjr
.
PC
.
,
. -
-
.
0000 , - 8000. -
-
,
-.
, , ,
. -
,
- .
:
.
, -
.
- -
, -
,
. -
, 0463h. -
04h
0D4h - .
IBM , ,
. ,

- 4 -

,
. -
.
, - .
-
. -
.
, -
.
.
.
IBM
40 . -
-
.
, . 80
. -
,
. -
.
IBM -
,
.
,
( 43) -
. -
.
60 132 .





.
256 - -
, IBM -
. -

.
, -
,
.
, , -
. -
.
, -
, -
. , , -
.
, -
.
.

IBM , - -
. .

- 5 -



-
-
. -
. -
, .
-
.
. -
.
,

. -
. -
.
,
.
,
-
, -
, .
IBM
. -
.
.
.

. -

. , ,
-
, : 64 128 .
-
.

, -
. IBM
128
.
128 - , ,
.
16
.




, -

, -
-
. , -
-
-
, -
.
Intel 82796 Texas Instruments TMS34010

- 6 -

. IBM
,
- 8415.

. ,
,
. ,
, .





, ,
Microsoft Windows Digital Research GEM -
DOS, Presentation Manager - OS/2. -
, -
,
.
BIOS.

-
.
-
. , -
, . -

.
, .
,
. -
.
, ,
.

, CONFIG.SYS.

, ,
-
.


.

-
IBM,
. -. -
, -
. -
, -
.
, -
. -
, , . -
: -

"" -
, ,

- 7 -

, .

, IBM -
. ,
, -
.
.


.

MDA Monochrome
Display Adapter, - Monochrome Disp-
lay, Parallel Printer Adapter.
""
MDA. . -
,
IBM .
" " .
,
, , .
-
, -
.
MDA , -
,
IBM. IBM -
, -
,
, PS/2.
.
IBM , - -
.


MDA.

,
, IBM
MDA 9 14 ,
7 9 . -
,
.
, -
80 25 , -
740 350 -
252000 .


MDA.

IBM
.
, , -
( )
. IBM -
, 50 -


- 8 -

. IBM
.

-
. -
IBM -
-
- 18,1 15,525 .


.

, IBM
, - CGA (Color Grap-
hic Adapter). MDA -
. -
16 . , -
-
.
, -

. -
, IBM MDA.
, ,
(
CGA ,
). -
.
CGA - . -
.
. -
16 , -
.


CGA.

CGA
. CGA
MDA. ,

, -
. CGA - , -
.
,
.
, 15,525
60 , CGA
640 200 -
. , 2000
80 25 - MDA -
8 8 .
16 CGA 4 -
.
- . -
BIOS CGA.

- 9 -

CGA.

CGA 7
7.
- . , -
,

.
,

MDA.


.

IBM, ,
16- .
16 .
- , 8 8
-
16 , . ,
, 8
, ,
,
. -
.
CGA .
,

. -
, -
-
.
CGA
. IBM
BIOS .


.

1984 CGA . -
.

.
,
- EGA. :
,
,
IBM .


EGA.


. 640
350 . 8 14.
, MDA, -
7 9. -

- 10 -

, -
. -

, .
640 350 -
. -
IBM. ,
EGA CGA.


EGA.

, -
, EGA,
, -
. 15,525 CGA, EGA -
22,2 .
( )
60 . -
EGA ,
NTSC. .
EGA.


EGA.

EGA
. -
- , EGA 64
( , -
). , -
EGA -
-
.
, EGA -
16 -
64 640 350 .


Video Graphics Array - VGA

IBM -
-
. , IBM -
.

,
,
,
. -
-
. , -
.
Portable, , PC Portable (
) -
Convertible ( )
-
.

- 11 -

. -
,
. , -
,
,
. -
PCjr IBM
, .

,
.
.


VGA

, , VGA -
-
. VGA
. 17. -

.
-
640
480 . 16
256.
.
640 480 EGA
( 640 x 350 ) . -
VGA -
.
, ,
4:3,
,
.

VGA

256 -
. 262144 -
. , -
320 200 . CGA, -
,
,
.


- .

- ( ) -
3 ,
, .
.
,
,
, -
. . -


- 12 -

. -

. ,
-
, . , -
, -
.


.

VGA 4 .
-
, 4 -
. -
ASCII- ,
- , - .
.

- 13 -

.

,
EGA ,
. VGA -
,
"".

ͻ

.. ..
͹
3C2 (w)
3CC (r)
Ķ
3C2 0 ( )
Ķ
3BA 3DA
3CA (r)
Ķ
3BA 3DA 1 ( )
Ķ
3C3
ͼ



Ŀ
X


/



/



D7,D6
0 0
0 1 350
1 0 400
1 1 480
D5 , -
0 , - 1.
64 .
D3,D2
0 0 640 ( 320 )
0 1 720
1 0
1 1
D1 0,
. .
D0 0, -
( 3Bx ), -
( 3Dx ).

- 14 -


Ŀ
X X X X 0 X X X



0
Ŀ
X X X X X X




D4 1,
IRQ2 - .
D7 ( -
)


1
Ŀ
X X X X



-



D5,D4 2 8 ,
VGA.
D3 1 -
.
D0 0 .



Ŀ
X X X X X X X



D0 0, -
/ -
.

- 15 -

.

pp p p pp -
p pp ( p )
. pp p p -
p p 3C4h p p p
3C5h.

ͻ

͹
00
Ķ
01
Ķ
02
Ķ
03
Ķ
04
ͼ



Ŀ
X X X X X X

p p
p p

D0 p 0 p p
pp. p p -
.
D1 D0, pp
p .


Ŀ
X X X X X X

p
pp

D0 p p p-
pp 720 p.
p 0, p p - 9 , 8
.
D1 p 1, pp
( p p ).


Ŀ
X X X X

0
1
2
3

- 16 -


D0,D1,D2,D3 p 1,
.



Ŀ
X X


p
pp ( D3 = 0 )
p
pp ( D3 = 1 )
p
pp ( D3 = 0 )
p
pp ( D3 = 1 )

p p
p VGA 8 .
1 2 . D3 -
, :
D5 D3 D2 ( D3 = 1 )
D4 D1 D0 ( D3 = 0 )
0 0 0 1
0 0 1 2
0 1 0 3
0 1 1 4
1 0 0 5
1 0 1 6
1 1 0 7
1 1 1 8
1 ,
D5, D3, D2 D4, D1, D0 .



Ŀ
X X X X X X 0

/


D2 0, -
0 , - .

- 17 -

.


.
9 .
3CEh 3CFh.

ͻ

͹
00 /
Ķ
01 /
Ķ
02
Ķ
03
Ķ
04
Ķ
05
Ķ
06
Ķ
07
Ķ
08
ͼ


/
Ŀ


,
0
,
1
,
2
,
3


-
/ 8 ,
.

- 18 -

/
Ŀ



0

1

2

3


D3, D2, D1, D0 - 0 -
, -
, -
/.



Ŀ
X X X X


0

1

2

3


. 1 -
8 . -
. 4.



Ŀ
X X X





D2, D1, D0 - ( 0 - 7 ),
, -

D4, D3 - , ,
-:
D4 D3
0 0
0 1 " "
1 0 " "
1 1 " "
.

- 19 -



Ŀ
X X X X X X




D1, D0 - ,
.



Ŀ
X X





/

256


D1, D0 - :

D1 D0 N
0 0 0
0 1 1 -
1 0 2 N-
N ,
1 1 -
0 : ,
, -
( . 1 ).
1 :
.

4 -.
-
, ( . 2 ).
2 : -
, -
( . 3 ).
D3 - 1, -
.
D4 - ,

, - .
D5 - 4 5 -
" 2 ".
D6 - 256 .

- 20 -


Ŀ
X X X X X X X




D0 - 0 1
.



Ŀ
X X X X

0
1
2
3

.
- D0 - D3 0,
.



Ŀ



0 .
- 0,
-,
.

- 21 -

.

-
, , -
. --
. -
.
:

3B4h 3B5h
3D4h 3D5h
-
BIOS 0000:0463.

ͻ

͹
00
Ķ
01

Ķ
02

Ķ
03

Ķ
04

Ķ
05

Ķ
06
Ķ
07
Ķ
08

Ķ
09
Ķ
0A
Ķ
0B
Ķ
0C
Ķ
0D
Ķ
0E
Ķ
0F
Ķ
10
Ķ
11

- 22 -

Ķ
12
Ķ
13
Ķ
14
Ķ
15

Ķ
16

Ķ
17
Ķ
18
ͼ



Ŀ



-
, .
5 , .



Ŀ



= - 1.



Ŀ




.



Ŀ
1





D4 - D0 ,
-
.
D5, D6 - . -

- 23 -

, -
.



Ŀ




.



Ŀ
X X X





.



Ŀ



-
, -
. -
10 . 9 10 -
.



Ŀ


-
(8)

(8)


(8)


(8)

(8)
-
(9)

(9)



- 24 -

(9)

-
, 8 .



Ŀ
X



-


D4 - D0 -
, -
. 0,
.
D6, D5 -

8 .



Ŀ




9 -
-

9



D4 - D0 1.
D7 1,
200
.



Ŀ
X X





D4 - D0
.
D5 1, .

- 25 -


Ŀ
X





D4 - D0
.
D6, D5 -
, , .



Ŀ



,
.


,
Ŀ



.



Ŀ




. 10 .
.
.



Ŀ













D3 - D0 4

- 26 -

, -
.
D4 0
-
.
D5 0,
IRQ2 .
0 D4 .
D6 1, -
5
3.
D7 . -
1, 0 - 7 -
.
.



Ŀ



,
. -
, 1 , -
. 10 .
.



Ŀ



2- .
, -
, 2 ( 80 -
40 ). -
-
.
-
. n
adr, off,
n+1 adr+off.



Ŀ
X






D5 1, - -
4 1.
D6 1, .

- 27 -




Ŀ



-
. 10 . 9- -
. 10- -
.



Ŀ




, .



Ŀ



D0 EGA. 0 -
2 8 .
, -
.
D1 0 -
Hercules.
D2 0,
,
.
D3 0, -
1 - , -
2 -.
D4 1, -
. -
.
D6, D5 D6 1, ,
- 2- . D5
4- .
D7 0,
.



Ŀ



-
.
, , -
0

- 28 -

2 : ,
,
, .
10 . 9- -
, 10- - .

- 29 -

.


. 3C0h,
.

3BAh 3DAh - -
. , 3C0h,
.

ͻ

͹
00-0F ( 0 - 15 )
Ķ
10
Ķ
11
Ķ
12
Ķ
13
Ķ
14
ͼ



Ŀ
X X

P0
P1
P2
P3
P4
P5



Ŀ
X



9-
/
-

13h


D0 , 0, - 1.
D1 - 1, - 0.
D2 720
8 9 -
. 1, 9 8,
9 - .

- 30 -

D3 1, D7
, - .
D5 -
-
. 1,
.
D6 256 ,
0.
D7 P4 P5.
0, P4 P5 ,
- D0 D1 .



Ŀ
X X

P0
P1
P2
P3
P4
P5

.



Ŀ
X X





D0 - D3 . -
0,
.
D4 - D5 -
1 .



Ŀ
X X X X




D0 - D3 . -
:

- 31 -

D3 D2 D1 D0 256

0 0 0 0 8 0 0
0 0 0 1 0 - 1
0 0 1 0 1 1 2
0 0 1 1 2 - 3
0 1 0 0 3 2 4
0 1 0 1 4 - 5
0 1 1 0 5 3 6
0 1 1 1 6 - 7
1 0 0 0 7 - -
1 0 0 1 - - -
. . . . . . . . .
1 1 1 1 - - -



Ŀ
X X X X

P4
P5
P6
P7

D0 - D1 4
5 ( D7 ).
D2 - D3 -
, . 256-
.

- 32 -

.

VGA , 3 -
R, G B.
, -
.
-
3 . 8-
256 .
3 6- , -
3 . -
256
262144 .

ͻ

͹
3C6
Ķ
3C7 ( )
Ķ
3C7
( )
Ķ
3C8 a

Ķ
3C9
ͼ



Ŀ



IBM VGA , -
.



Ŀ
X X X X X X




D0 - D1 03h, -
, 0h - .



Ŀ





- 33 -


-
3 6- . 3 -
1.



Ŀ






-
3 6- . 3 -
1.



Ŀ
X X




.
( ) 3
( ) 6 ( ) . -
6 , - -
, - .
,
3 .
.
-
240 .

- 34 -






. 1

0

Ŀ
XXXX1100 \

Ŀ
XXXX0100 \

-
Ŀ Ŀ
11111111>ij11110000 3
/ ^
Ŀ Ŀ
00000000>ij00000000 2
/ ^
Ŀ Ŀ
10101010>ij10101001 1
/ ^
Ŀ Ŀ
01010101>ij01011001 0
/ ^

Ŀ
Ŀ Ŀ
01111001 00001111

>
Ŀ
Ŀ Ŀ
XXX00000 01111001




- 35 -





. 2

1
-
Ŀ Ŀ
11111111ij11111111 3

Ŀ Ŀ
11111111ij11111111 2

Ŀ Ŀ
11111111ij11111111 1

Ŀ Ŀ
11111111ij11111111 0



- 36 -





. 3


2
-
Ŀ Ŀ
11111111ij11110000 3

Ŀ Ŀ
00000000ij00001111 2

Ŀ Ŀ
10101010ij10101111 1

Ŀ Ŀ
01010101ij01010000 0



Ŀ Ŀ
XXXX0110 00001111



- 37 -




. 4
Ŀ
XXXX0111

Ŀ
XXXX1101

Ŀ
3 11110000

Ŀ
2 01010111

Ŀ
1 10101101

Ŀ
0 01010000



Ŀ
01010000




- 38 -






1. .. , ..
CGA,EGA VGA
, - , 1992

2. ..
IBM
, , 1993

3. ..
VGA
" - ", 1'1993, . 46 - 49

4. .
VGA. 256
"", 1'1993, . 67 - 74

5 ..

" ", 1'1993, . 115 - 125


?
?
?