diff --git a/datasheets/28c010.pdf b/datasheets/28c010.pdf new file mode 100644 index 0000000..7da071d Binary files /dev/null and b/datasheets/28c010.pdf differ diff --git a/datasheets/71256.pdf b/datasheets/71256.pdf new file mode 100644 index 0000000..7dc14b2 Binary files /dev/null and b/datasheets/71256.pdf differ diff --git a/datasheets/AS6C4008.pdf b/datasheets/AS6C4008.pdf new file mode 100644 index 0000000..db5ff5e Binary files /dev/null and b/datasheets/AS6C4008.pdf differ diff --git a/datasheets/Clock_Dividers_Made_Easy.pdf b/datasheets/Clock_Dividers_Made_Easy.pdf new file mode 100644 index 0000000..d9801fd Binary files /dev/null and b/datasheets/Clock_Dividers_Made_Easy.pdf differ diff --git a/datasheets/UPD72020.pdf b/datasheets/UPD72020.pdf new file mode 100644 index 0000000..16682ce Binary files /dev/null and b/datasheets/UPD72020.pdf differ diff --git a/docs/links.txt b/docs/links.txt new file mode 100644 index 0000000..8006b04 --- /dev/null +++ b/docs/links.txt @@ -0,0 +1 @@ +https://hackaday.io/project/164728/logs diff --git a/docs/timing.html b/docs/timing.html new file mode 100644 index 0000000..409b22a --- /dev/null +++ b/docs/timing.html @@ -0,0 +1,1309 @@ + +

VGA Timings

+ +

The following table lists timing values for several popular resolutions.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FormatPixel Clock
(MHz)
Horizontal (in Pixels)Vertical (in Lines)
Active
Video
Front
Porch
Sync
Pulse
Back
Porch
Active
Video
Front
Porch
Sync
Pulse
Back
Porch
640x480, 60Hz25.17564016964848011231
640x480, 72Hz31.50064024401284809328
640x480, 75Hz31.50064016964848011232
640x480, 85Hz36.00064032481124801325
800x600, 56Hz38.100800321281286001414
800x600, 60Hz40.00080040128886001423
800x600, 72Hz50.000800561206460037623
800x600, 75Hz49.50080016801606001221
800x600, 85Hz56.25080032641526001327
1024x768, 60Hz65.0001024241361607683629
1024x768, 70Hz75.0001024241361447683629
1024x768, 75Hz78.750102416961767681328
1024x768, 85Hz94.500102448962087681336
Source: Rick Ballantyne, Xilinx Inc. + + + + TABLE 1 VGA CORE VIDEO MODE

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

Mode

+

Type

+

Res.

+

Colors

+

Vert.

+ +

Horz.

+

Pix Clk

+

SM and SXGA MODES

+

0, 1

+

A/N

+

320 x 200

+

16

+

70 Hz

+

31.778 KHz

+ +

25.175 MHz

+

2, 3

+

A/N

+

640 x 200

+

16

+

70 Hz

+ +

31.778 KHz

+

25.175 MHz

+

0*, 1*

+

A/N

+

320 x 350

+

16

+ +

70 Hz

+

31.778 KHz

+

25.175 MHz

+

2*, 3*

+

A/N

+

640 x 350

+ +

16

+

70 Hz

+

31.778 KHz

+

25.175 MHz

+

0+, 1+

+

A/N

+

320 x 350

+

16

+

70 Hz

+

31.778 KHz

+ +

28.322 MHz

+

2+, 3+

+

A/N

+

640 x 350

+

16

+

70 Hz

+ +

31.778 KHz

+

28.322 MHz

+

4, 5

+

APA

+

320 x 200

+

4

+ +

70 Hz

+

31.778 KHz

+

25.175 MHz

+

6

+

APA

+

640 x 200

+ +

2

+

70 Hz

+

31.778 KHz

+

25.175 MHz

+

7

+

A/N

+

720 x 350

+

Mono

+

70 Hz

+

31.778 KHz

+ +

28.322 MHz

+

7+

+

A/N

+

720 x 400

+

Mono

+

70 Hz

+ +

31.778 KHz

+

28.322 MHz

+

D

+

APA

+

320 x 200

+

16

+ +

70 Hz

+

31.778 KHz

+

25.175 MHz

+

E

+

APA

+

640 x 200

+ +

16

+

70 Hz

+

31.778 KHz

+

25.175 MHz

+

F

+

APA

+

640 x 350

+

Mono

+

70 Hz

+

31.778 KHz

+ +

25.175 MHz

+

10

+

APA

+

640 x 350

+

16

+

70 Hz

+ +

31.778 KHz

+

25.175 MHz

+

11

+

APA

+

640 x 480

+

2

+ +

60Hz

+

31.778 KHz

+

25.175 MHz

+

12

+

APA

+

640 x 480

+ +

16

+

60Hz

+

31.778 KHz

+

25.175 MHz

+

13

+

APA

+

320 x 200

+

256

+

70 Hz

+

31.778 KHz

+ +

25.175 MHz

+

SXGA MODES

+ +

101

+

APA

+

640x480

+

256

+

85 Hz

+

43.3 KHz

+

36.00 MHz

+

102

+

APA

+

800 x 600

+

16

+

85 Hz

+

53.7 KHz

+ +

56.25 MHz

+

103

+

APA

+

800 x 600

+

256

+

85 Hz

+ +

53.7 KHz

+

56.25 MHz

+

104

+

+ + APA

+

1024 x 768

+

16

+

85 Hz

+

68.7 KHz

+

94.5 MHz

+

105

+

+ + APA

+ +

1024 x 768

+

256

+

85 Hz

+

68.7 KHz

+

94.5 MHz

+

106

+

+ + + APA

+

1280 x 1024

+

16

+ +

85 Hz

+

91.1 KHz

+

157.5 MHz

+

107

+

+ + APA

+

1280 x 1024

+

256

+

85 Hz

+

91.1 KHz

+ +

157.5 MHz

+

114

+

+ + + APA

+

800 x 600

+

64K

+

85 Hz

+

53.7 KHz

+

56.25 MHz

+

115

+

+ + APA

+

800 x 600

+

16.8 M

+

85 Hz

+

53.7 KHz

+

56.25 MHz

+

117

+

+ + APA

+ +

1024 x 768

+

64K

+

85 Hz

+

68.7 KHz

+

94.5 MHz

+

118

+

+ + + APA

+

1024 x 768

+

16.8 M

+ +

85 Hz

+

68.7 KHz

+

94.5 MHz

+

11A

+

+ + APA

+

1280 x 1024

+

64K

+

85 Hz

+

91.1 KHz

+ +

157.5 MHz

+

11B

+

+ + + APA

+

1280 x 1024

+

16.8 M

+

85 Hz

+

91.1 KHz

+

157.5 MHz

+ +

+ + Note: SM + Modes 0-13 only +

+ +

As with RS-232, the standard for VGA video is that there are +lots of standards. Every manufacturer seems to list different timings in + the manuals for their monitors. The values given in the table above are + not particularly critical. On a CRT monitor, the lengths of the front +and back porches control the position of the image on the display. If +the image appears offset to the right or left, or up or down, try +adjusting the front and back porch values for the corresponding +direction (or use the image position adjustments on the monitor, which +accomplish the same thing).

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Mode name
Pixel sync back activefrontwhole lineLinesline syncsync backactiveactivefrontfrontwhole framewhole frame


clock pulse porchtimeporch periodTotalwidth pulsepulse porchtimetimeporchporchperiodperiod


(MHz)(us)(pix) (pix)(pix)(pix) (pix)
(us)(us)(lin) (us)(lin) (us)(lin) (us)(lin) (us)(lin)




















VGA 640x48060Hz25.1753.8196456461380052531.78632 953 3015382484285916683525
VGA 640x48072Hz31.51.27401256462183252026.41793 686 2612782484184713735520
VGA 720x40070Hz28.3223.81108517261590044931.786321016 32128394043491114268449
VGA 720x35070Hz28.3223.81108517261590044931.786321811 571125035411443614268449
VGA 800x60056Hz36.00027212580621102462528.44561 568 2017177604
-1*17775625
VGA 800x60060Hz403.21288580637105662826.401064 554 2115945604
-1*16579628
VGA 800x60072Hz50.0002.41206180653104066620.801256 436 21125636047283513853666
IBM 640x48075Hz31.053.0596456461380052525.397512 761 3012292484228913333525
MAC 640x48066Hz30.2402.1164936466186452528.578631057 371382748428114999525
+ + + + +
640x480@6025.2 640 656 752 800 480 490 492 525 -vsync -hsync +
800x600@5636.0 800 824 896 1024 600 601 603 625 +hsync +vsync +
800x600@6040.0 800 840 968 1056 600 601 605 628 +hsync +vsync +
1024x768@6065.0 1024 1048 1184 1344 768 771 777 806 -vsync -hsync +
1280x960@60102.1 1280 1360 1496 1712 960 961 964 994 -hsync +vsync +
1280x1024@60108.0 1280 1328 1440 1688 1024 1025 1028 1066 +hsync +vsync +
1400x1050@60122.61 1400 1488 1640 1880 1050 1051 1054 1087 -hsync +vsync +
1600x1200@60162.0 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync +
640x350 @ 85Hz (VESA) hsync: 37.9kHz + 640x350 31.5 640 672 736 832 350 382 385 445 +hsync -vsync +
640x400 @ 85Hz (VESA) hsync: 37.9kHz + 640x400 31.5 640 672 736 832 400 401 404 445 -hsync +vsync +
720x400 @ 85Hz (VESA) hsync: 37.9kHz + 720x400 35.5 720 756 828 936 400 401 404 446 -hsync +vsync +
640x480 @ 60Hz (Industry standard) hsync: 31.5kHz + 640x480 25.2 640 656 752 800 480 490 492 525 -hsync -vsync +
640x480 @ 72Hz (VESA) hsync: 37.9kHz + 640x480 31.5 640 664 704 832 480 489 491 520 -hsync -vsync +
640x480 @ 75Hz (VESA) hsync: 37.5kHz + 640x480 31.5 640 656 720 840 480 481 484 500 -hsync -vsync +
640x480 @ 85Hz (VESA) hsync: 43.3kHz + 640x480 36.0 640 696 752 832 480 481 484 509 -hsync -vsync +
800x600 @ 56Hz (VESA) hsync: 35.2kHz + 800x600 36.0 800 824 896 1024 600 601 603 625 +hsync +vsync +
800x600 @ 60Hz (VESA) hsync: 37.9kHz + 800x600 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync +
800x600 @ 72Hz (VESA) hsync: 48.1kHz + 800x600 50.0 800 856 976 1040 600 637 643 666 +hsync +vsync +
800x600 @ 75Hz (VESA) hsync: 46.9kHz + 800x600 49.5 800 816 896 1056 600 601 604 625 +hsync +vsync +
800x600 @ 85Hz (VESA) hsync: 53.7kHz + 800x600 56.3 800 832 896 1048 600 601 604 631 +hsync +vsync +
1024x768i @ 43Hz (industry standard) hsync: 35.5kHz + 1024x768 44.9 1024 1032 1208 1264 768 768 776 817 +hsync +vsync Interlace +
1024x768 @ 60Hz (VESA) hsync: 48.4kHz + 1024x768 65.0 1024 1048 1184 1344 768 771 777 806 -hsync -vsync +
1024x768 @ 70Hz (VESA) hsync: 56.5kHz + 1024x768 75.0 1024 1048 1184 1328 768 771 777 806 -hsync -vsync +
1024x768 @ 75Hz (VESA) hsync: 60.0kHz + 1024x768 78.8 1024 1040 1136 1312 768 769 772 800 +hsync +vsync +
1024x768 @ 85Hz (VESA) hsync: 68.7kHz + 1024x768 94.5 1024 1072 1168 1376 768 769 772 808 +hsync +vsync +
1152x864 @ 75Hz (VESA) hsync: 67.5kHz + 1152x864 108.0 1152 1216 1344 1600 864 865 868 900 +hsync +vsync +
1280x960 @ 60Hz (VESA) hsync: 60.0kHz + 1280x960 108.0 1280 1376 1488 1800 960 961 964 1000 +hsync +vsync +
1280x960 @ 85Hz (VESA) hsync: 85.9kHz + 1280x960 148.5 1280 1344 1504 1728 960 961 964 1011 +hsync +vsync +
1280x1024 @ 60Hz (VESA) hsync: 64.0kHz + 1280x1024108.0 1280 1328 1440 1688 1024 1025 1028 1066 +hsync +vsync +
1280x1024 @ 75Hz (VESA) hsync: 80.0kHz + 1280x1024135.0 1280 1296 1440 1688 1024 1025 1028 1066 +hsync +vsync +
1280x1024 @ 85Hz (VESA) hsync: 91.1kHz + 1280x1024157.5 1280 1344 1504 1728 1024 1025 1028 1072 +hsync +vsync +
1600x1200 @ 60Hz (VESA) hsync: 75.0kHz + 1600x1200162.0 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync +
1600x1200 @ 65Hz (VESA) hsync: 81.3kHz + 1600x1200175.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync +
1600x1200 @ 70Hz (VESA) hsync: 87.5kHz + 1600x1200189.0 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync +
1600x1200 @ 75Hz (VESA) hsync: 93.8kHz + 1600x1200202.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync +
1600x1200 @ 85Hz (VESA) hsync: 106.3kHz + 1600x1200229.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync +
1792x1344 @ 60Hz (VESA) hsync: 83.6kHz + 1792x1344204.8 1792 1920 2120 2448 1344 1345 1348 1394 -hsync +vsync +
1792x1344 @ 75Hz (VESA) hsync: 106.3kHz + 1792x1344261.0 1792 1888 2104 2456 1344 1345 1348 1417 -hsync +vsync +
1856x1392 @ 60Hz (VESA) hsync: 86.3kHz + 1856x1392218.3 1856 1952 2176 2528 1392 1393 1396 1439 -hsync +vsync +
1856x1392 @ 75Hz (VESA) hsync: 112.5kHz + 1856x1392288.0 1856 1984 2208 2560 1392 1393 1396 1500 -hsync +vsync +
1920x1440 @ 60Hz (VESA) hsync: 90.0kHz + 1920x1440234.0 1920 2048 2256 2600 1440 1441 1444 1500 -hsync +vsync +
1920x1440 @ 75Hz (VESA) hsync: 112.5kHz + 1920x1440297.0 1920 2064 2288 2640 1440 1441 1444 1500 -hsync +vsync +
1800x1440 230 1800 1896 2088 2392 1440 1441 1444 1490 +HSync +VSync +
1800x1440 250 1800 1896 2088 2392 1440 1441 1444 1490 +HSync +VSync +
640x480 @ 100.00 Hz (GTF) hsync: 50.90 kHz; pclk: 43.16 MHz + 640x480 43.16 640 680 744 848 480 481 484 509 -HSync +Vsync +
768x576 @ 60.00 Hz (GTF) hsync: 35.82 kHz; pclk: 34.96 MHz + 768x576 34.96 768 792 872 976 576 577 580 597 -HSync +Vsync +
768x576 @ 72.00 Hz (GTF) hsync: 43.27 kHz; pclk: 42.93 MHz + 768x576 42.93 768 800 880 992 576 577 580 601 -HSync +Vsync +
768x576 @ 75.00 Hz (GTF) hsync: 45.15 kHz; pclk: 45.51 MHz + 768x576 45.51 768 808 888 1008 576 577 580 602 -HSync +Vsync +
768x576 @ 85.00 Hz (GTF) hsync: 51.42 kHz; pclk: 51.84 MHz + 768x576 51.84 768 808 888 1008 576 577 580 605 -HSync +Vsync +
768x576 @ 100.00 Hz (GTF) hsync: 61.10 kHz; pclk: 62.57 MHz + 768x576 62.57 768 816 896 1024 576 577 580 611 -HSync +Vsync +
800x600 @ 100.00 Hz (GTF) hsync: 63.60 kHz; pclk: 68.18 MHz + 800x600 68.18 800 848 936 1072 600 601 604 636 -HSync +Vsync +
1024x768 @ 100.00 Hz (GTF) hsync: 81.40 kHz; pclk: 113.31 MHz + 1024x768 113.31 1024 1096 1208 1392 768 769 772 814 -HSync +Vsync +
1152x864 @ 60.00 Hz (GTF) hsync: 53.70 kHz; pclk: 81.62 MHz + 1152x864 81.62 1152 1216 1336 1520 864 865 868 895 -HSync +Vsync +
1152x864 @ 85.00 Hz (GTF) hsync: 77.10 kHz; pclk: 119.65 MHz + 1152x864 119.65 1152 1224 1352 1552 864 865 868 907 -HSync +Vsync +
1152x864 @ 100.00 Hz (GTF) hsync: 91.50 kHz; pclk: 143.47 MHz + 1152x864 143.47 1152 1232 1360 1568 864 865 868 915 -HSync +Vsync +
1280x800 @ 60.00 Hz (GTF) hsync: 49.68 kHz; pclk: 83.46 MHz + 1280x800 83.46 1280 1344 1480 1680 800 801 804 828 -HSync +Vsync +
1280x960 @ 72.00 Hz (GTF) hsync: 72.07 kHz; pclk: 124.54 MHz + 1280x960 124.54 1280 1368 1504 1728 960 961 964 1001 -HSync +Vsync +
1280x960 @ 75.00 Hz (GTF) hsync: 75.15 kHz; pclk: 129.86 MHz + 1280x960 129.86 1280 1368 1504 1728 960 961 964 1002 -HSync +Vsync +
1280x960 @ 100.00 Hz (GTF) hsync: 101.70 kHz; pclk: 178.99 MHz + 1280x960 178.99 1280 1376 1520 1760 960 961 964 1017 -HSync +Vsync +
1280x1024 @ 100.00 Hz (GTF) hsync: 108.50 kHz; pclk: 190.96 MHz + 1280x1024 190.96 1280 1376 1520 1760 1024 1025 1028 1085 -HSync +Vsync +
1368x768 @ 60.00 Hz (GTF) hsync: 47.70 kHz; pclk: 85.86 MHz + 1368x768 85.86 1368 1440 1584 1800 768 769 772 795 -HSync +Vsync +
1400x1050 @ 60.00 Hz (GTF) hsync: 65.22 kHz; pclk: 122.61 MHz + 1400x1050 122.61 1400 1488 1640 1880 1050 1051 1054 1087 -HSync +Vsync +
1400x1050 @ 72.00 Hz (GTF) hsync: 78.77 kHz; pclk: 149.34 MHz + 1400x1050 149.34 1400 1496 1648 1896 1050 1051 1054 1094 -HSync +Vsync +
1400x1050 @ 75.00 Hz (GTF) hsync: 82.20 kHz; pclk: 155.85 MHz + 1400x1050 155.85 1400 1496 1648 1896 1050 1051 1054 1096 -HSync +Vsync +
1400x1050 @ 85.00 Hz (GTF) hsync: 93.76 kHz; pclk: 179.26 MHz + 1400x1050 179.26 1400 1504 1656 1912 1050 1051 1054 1103 -HSync +Vsync +
1400x1050 @ 100.00 Hz (GTF) hsync: 111.20 kHz; pclk: 214.39 MHz + 1400x1050 214.39 1400 1512 1664 1928 1050 1051 1054 1112 -HSync +Vsync +
1440x900 @ 60.00 Hz (GTF) hsync: 55.92 kHz; pclk: 106.47 MHz + 1440x900 106.47 1440 1520 1672 1904 900 901 904 932 -HSync +Vsync +
1600x1200 @ 100.00 Hz (GTF) hsync: 127.10 kHz; pclk: 280.64 MHz + 1600x1200 280.64 1600 1728 1904 2208 1200 1201 1204 1271 -HSync +Vsync +
1680x1050 @ 60.00 Hz (GTF) hsync: 65.22 kHz; pclk: 147.14 MHz + 1680x1050 147.14 1680 1784 1968 2256 1050 1051 1054 1087 -HSync +Vsync +
1920x1200 @ 60.00 Hz (GTF) hsync: 74.52 kHz; pclk: 193.16 MHz + 1920x1200 193.16 1920 2048 2256 2592 1200 1201 1204 1242 -HSync +Vsync +
+ +

VGA timing information

+

+This documents tries to collect together information about +standard VGA card timing details. +

+

Information form HP monitor manual

+

+

Horizonal Timing

+
Horizonal Dots         640     640     640        
+Vertical Scan Lines    350     400     480
+Horiz. Sync Polarity   POS     NEG     NEG
+A (us)                 31.77   31.77   31.77     Scanline time
+B (us)                 3.77    3.77    3.77      Sync pulse lenght 
+C (us)                 1.89    1.89    1.89      Back porch
+D (us)                 25.17   25.17   25.17     Active video time
+E (us)                 0.94    0.94    0.94      Front porch
+
+
         ______________________          ________
+________|        VIDEO         |________| VIDEO (next line)
+    |-C-|----------D-----------|-E-|
+__   ______________________________   ___________
+  |_|                              |_|
+  |B|
+  |---------------A----------------|
+
+ +

Vertical Timing

+
Horizonal Dots         640     640     640
+Vertical Scan Lines    350     400     480
+Vert. Sync Polarity    NEG     POS     NEG      
+Vertical Frequency     70Hz    70Hz    60Hz
+O (ms)                 14.27   14.27   16.68     Total frame time
+P (ms)                 0.06    0.06    0.06      Sync length
+Q (ms)                 1.88    1.08    1.02      Back porch
+R (ms)                 11.13   12.72   15.25     Active video time
+S (ms)                 1.2     0.41    0.35      Front porch
+
+
         ______________________          ________
+________|        VIDEO         |________|  VIDEO (next frame)
+    |-Q-|----------R-----------|-S-|
+__   ______________________________   ___________
+  |_|                              |_|
+  |P|
+  |---------------O----------------|
+
+ + +

Informations source

+ +
+

More VGA mode information

+

+There are the 3 "standard" VGA modes that each VGA card is supposed +to be able to do: +

+

+Their line frequency is exactly twice that of the NTSC television system, +or almost twice that of the PAL television system. This makes it fairly +easy to implement a VGA input on a television set that uses line +doubling for the television signals so the line deflection already runs on 31 +kHz. +

+The following timings come from a list of 82 different computer timings, +and by now there will be even more. Some video cards even have variable +timing (allowing the user to set width, height and shift...). +The only standard is that there is no standard ! +

+

"640 x 350 (EGA on VGA)"    "640 x 400 VGA text"        "VGA industry standard"
+Clock frequency 25.175 MHz  Clock frequency 25.175 MHz  Clock frequency 25.175 MHz
+Line  frequency 31469 Hz    Line  frequency 31469 Hz    Line  frequency 31469 Hz
+Field frequency 70.086 Hz   Field frequency 70.086 Hz   Field frequency 59.94 Hz
+
+One line:                   One line:                   One line:
+  8 pixels front porch        8 pixels front porch        8 pixels front porch
+ 96 pixels horizontal sync   96 pixels horizontal sync   96 pixels horizontal sync
+ 40 pixels back porch        40 pixels back porch        40 pixels back porch
+  8 pixels left border        8 pixels left border        8 pixels left border
+640 pixels video            640 pixels video            640 pixels video
+  8 pixels right border       8 pixels right border       8 pixels right border
+---                         ---                         ---
+800 pixels total per line   800 pixels total per line   800 pixels total per line                             
+
+
One field:                  One field:                  One field:
+ 31 lines front porch         5 lines front porch         2 lines front porch
+  2 lines vertical sync       2 lines vertical sync       2 lines vertical sync
+ 54 lines back porch         28 lines back porch         25 lines back porch
+  6 lines top border          7 lines top border          8 lines top border
+350 lines video             400 lines video             480 lines video
+  6 lines bottom border       7 lines bottom border       8 lines bottom border
+---                         ---                         ---
+449 lines total per field   449 lines total per field   525 lines total
+per field                                                           
+
+
Sync polarity: H positive,  Sync polarity: H negative,  Sync polarity: H negative,
+               V negative                  V positive                  V negative
+Scan type: non interlaced.  Scan type: non interlaced.  Scan type: non interlaced.                                                    
+
+
+ +

SuperVGA timing from NEC monitor manual

+ +
Horizontal :
+                ______________                 _____________
+               |              |               |
+_______________|  VIDEO       |_______________|  VIDEO (next line)
+
+___________   _____________________   ______________________
+           |_|                     |_|
+            B C <------D-----><-E->
+            <----------A---------->
+
+
+Vertical :
+                ______________                 _____________
+               |              |               |           
+_______________|  VIDEO       |_______________|  VIDEO (next frame)
+
+___________   _____________________   ______________________
+           |_|                     |_|
+            P Q <------R-----><-S->
+            <----------O---------->
+
+

For VESA 800*600 @ 60Hz:

+
Fh (kHz) :37.88
+A  (us)  :26.4
+B  (us)  :3.2
+C  (us)  :2.2
+D  (us)  :20.0
+E  (us)  :1.0
+
+Fv (Hz)  :60.32
+O  (ms)  :16.579
+P  (ms)  :0.106
+Q  (ms)  :0.607
+R  (ms)  :15.84
+S  (ms)  :0.026
+
+

Timing used in one VGA monitor tester product

+

+The following timings are used in VTG-KIT VGA monitor tester kit +sold my Data Sync Engineering. +

+

Mode       Horiz  Vertical  Horiz  Vert  Horiz  HSYNC  Vertical VSYNC
+           Dots   Lines     KHz    Hz    Sync   Pol    Sync     Pol
+
+VGA-480     640   480       31.5   60    3.8 us  -      64 us    -
+VGA-400     640   400       31.5   70    3.8 us  -      64 us    +
+SVGA I      800   600       35.2   56    2.0 us  -      57 us    -
+SVGA II     800   600       37.8   60    3.2 us  +     106 us    +
+SVGA III    800   600       48.0   72    2.4 us  +     125 us    +
+XGA        1024   768       48.5   60    2.0 us  -     124 us    -
+
+ \ No newline at end of file diff --git a/docs/vga_ram.txt b/docs/vga_ram.txt new file mode 100644 index 0000000..0b14243 --- /dev/null +++ b/docs/vga_ram.txt @@ -0,0 +1,27 @@ +max 256k for upd7220 +mak 2mb for upd72020 +800x600 is *barely* possible with +32k sram is the largest available in dip with the speed neccesary +blanking area *may* be possible on chip. if not the chip produces the neccesary signals. some external logic +800x600 requires dividing pixel clk by 5 to get 8mhz signal clk +this all assumes 4 bit using memory pages + +128k + 32k = 160k +5x 32k sram - a lot of ram +160k is enough for 4 bit color at 640x480 +160k is enough for 2 bit color at 800x600 +simplest to implement, both are standard vga resolutions + +32k + 8k = 40k +1x 32k sram + 1x 8k sram - two diff chips +40k is enough for 1 bit color at 640x480 +40k is enough for 4 bit color at 320x240 or 320x200 +needs linedoubling for 320x240 +needs linedoubling and blank area for 320x200 + +32k +1x 32k sram - simplest, 1 chip +32k is enough for 1 bit color at 640x400 +32k is enough for 4 bit color at 320x200 +needs blank area for 640x400 +needs linedoubling and blank area for 320x200