-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathREADME
213 lines (162 loc) · 6.27 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
VGATEST
================================================================================
Simple DOS program used to test VGA functionality in both text and graphics
modes.
It can be compiled with Open Watcom and needs the DOS/4GW extender.
Source code at https://github.com/barotto/VGATEST
!!! Disclaimer !!!
--------------------------------------------------------------------------------
This program can and will damage the computer that you'll use it on and all of
its attached peripherals. The author(s) cannot be held responsible for any
damage occurred by the use of this program.
Use at your own risk!
Alphanumeric (A/N) tests
--------------------------------------------------------------------------------
Font Maps demo
--------------
This demo shows the double font map capability of the VGA that can be used to
display 512 different characters on screen.
Font map 0 is the default BIOS map.
Font map 1 is a 8 pixels wide BIOS map loaded with INT 10/AX=11--h
Font maps 2-7 are custom maps.
Keys:
0 to 7 = change Map A's font.
ESC = exit
Split & Pan demo
----------------
This demo shows the split screen and panning features.
Keys:
+ = increase start address value
- = decrease start address value
ARROW UP = increase vertical panning value
ARROW DOWN = decrease vertical panning value
ARROW LEFT = decrease horizontal panning value
ARROW RIGHT = increase horizontal panning value
PAGE UP = decrease split screen scanline value
PAGE DOWN = increase split screen scanline value
ESC = exit
Benchmark
---------
Performs a series of video memory access speed tests. Two values are given:
MB/s = the memory bandwidth of the video subsystem in megabytes per second;
fps = how many times per second a single video page can be filled with a fixed
character / attributes pair. This is an ideal condition and represents the
maximum fill rate.
Both values depend not only on the video card and bus speeds but also on the
CPU performance.
Keys:
ESC = exit
r = repeat tests
Video modes available
---------------------
Name Format Box Resolution
0,1 40x25 8x8 320x200
0*,1* 40x25 8x14 320x350
0+,1+ 40x25 9x16 320x400
2,3 80x25 8x8 640x200
2*,3* 80x25 8x14 640x350
2+,3+ 80x25 9x16 720x400
7 80x25 9x14 720x350
7+ 80x25 9x16 720x400
80x43 8x8 640x350
80x50 9x8 720x400
80x28 9x14 720x400
80x30 8x16 640x480 (multisync monitor only)
80x34 8x14 640x480 (multisync monitor only)
80x60 8x8 640x480 (multisync monitor only)
BEWARE: modes 80x30, 80x34, and 80x60 require a multisync monitor and they may
damage very old VGA only 31.5 kHz monitors.
All Points Addressable (APA) tests
--------------------------------------------------------------------------------
Circles demo
------------
Shows a bunch of concentric circles that rapidly change their color. Useful to
check the screen aspect ratio.
Keys:
ESC = exit
Lines demo
----------
Shows two lines (green and red) that rotates in opposite directions. In video
modes with only one available page the lines could be only partially drawn (it
depends on how fast the CPU, bus, and VGA are).
Keys:
ESC = exit
Palette demo
------------
Fills the screen with the color palette.
Keys:
ESC = exit
Worms demo
----------
Draws a bunch of worms that crawl on the screen.
Keys:
ESC = exit
Split & Pan demo
----------------
This demo shows the split screen and panning features.
Keys:
+ = increase start address value
- = decrease start address value
ARROW UP = increase Preset Row Scan value
ARROW DOWN = decrease Preset Row Scan value
ARROW LEFT = decrease Horizontal Pel Panning value
ARROW RIGHT = increase Horizontal Pel Panning value
PAGE UP = decrease split screen scanline value
PAGE DOWN = increase split screen scanline value
M = change Pixel Panning Mode value
ESC = exit
Scrolling demo
--------------
This demo smoothly scrolls two vertical bars horizontally using the AC
horizontal pel panning register and the CRTC start address.
Keys:
+ = increase scrolling amount
- = decrease scrolling amount / pause
ESC = exit
Benchmark
---------
Performs a series of video memory access speed tests. Two values are given:
MB/s = the memory bandwidth of the video subsystem in megabytes per second;
fps = how many times per second a single video page can be filled with a fixed
color value. This is an ideal condition and represents the maximum fill rate.
Both values depend not only on the video card and bus speeds but also on the
CPU performance.
Keys:
ESC = exit
r = repeat tests
Video modes available
---------------------
Name Col. Resolut. Pages Mode
04 4 320x200 1 CGA comp.
06 2 640x200 1 CGA comp.
Dh 16 320x200 8 planar
Eh 16 640x200 4 planar
Fh mono 640x350 2 planar
10h 16 640x350 2 planar
12h 16 640x480 1 planar
13h 256 320x200 1 chain4
256 160x120 13 planar (multisync monitor only)
Q 256 256x256 1 chain4
256 296x220 4 planar
Y 256 320x200 4 planar
X 256 320x240 3 planar
256 320x400 2 planar
256 360x270 2 planar
256 360x360 2 planar
256 360x480 1 planar
256 400x300 2 planar (multisync monitor only)
BEWARE: modes 160x120 and 400x300 require a multisync monitor and they can
damage very old VGA only 31.5 kHz monitors.
LICENSE
--------------------------------------------------------------------------------
This program is free software: you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.
Authors
--------------------------------------------------------------------------------
Copyright (C) 2019 Marco Bortolin
Portions of code by Robert C. Pendleton and released in the public domain.