root/morphix/trunk/ddcxinfo/vesamode.c

Revision 2, 5.6 kB (checked in by nextime, 2 years ago)

Initial import, branching from morphix svn

Line 
1 #include "vesamode.h"
2 #ident "$Id: vesamode.c 1815 2005-04-25 08:27:54Z alextreme $"
3
4 /* Known standard VESA modes. */
5 struct vesa_mode_t known_vesa_modes[] = {
6         /* VESA 1.0/1.1 ? */
7         {0x100, 640, 400, 256,  "640x400x256"},
8         {0x101, 640, 480, 256,  "640x480x256"},
9         {0x102, 800, 600, 16,   "800x600x16"},
10         {0x103, 800, 600, 256,  "800x600x256"},
11         {0x104, 1024, 768, 16,  "1024x768x16"},
12         {0x105, 1024, 768, 256, "1024x768x256"},
13         {0x106, 1280, 1024, 16, "1280x1024x16"},
14         {0x107, 1280, 1024, 256,"1280x1024x256"},
15         {0x108, 80, 60, 16,     "80x60 (text)"},
16         {0x109, 132, 25, 16,    "132x25 (text)"},
17         {0x10a, 132, 43, 16,    "132x43 (text)"},
18         {0x10b, 132, 50, 16,    "132x50 (text)"},
19         {0x10c, 132, 60, 16,    "132x60 (text)"},
20         /* VESA 1.2+ */
21         {0x10d, 320, 200, 32768,        "320x200x32k"},
22         {0x10e, 320, 200, 65536,        "320x200x64k"},
23         {0x10f, 320, 200, 16777216,     "320x200x16m"},
24         {0x110, 640, 480, 32768,        "640x480x32k"},
25         {0x111, 640, 480, 65536,        "640x480x64k"},
26         {0x112, 640, 480, 16777216,     "640x480x16m"},
27         {0x113, 800, 600, 32768,        "800x600x32k"},
28         {0x114, 800, 600, 65536,        "800x600x64k"},
29         {0x115, 800, 600, 16777216,     "800x600x16m"},
30         {0x116, 1024, 768, 32768,       "1024x768x32k"},
31         {0x117, 1024, 768, 65536,       "1024x768x64k"},
32         {0x118, 1024, 768, 16777216,    "1024x768x16m"},
33         {0x119, 1280, 1024, 32768,      "1280x1024x32k"},
34         {0x11a, 1280, 1024, 65536,      "1280x1024x64k"},
35         {0x11b, 1280, 1024, 16777216,   "1280x1024x16m"},
36         /* VESA 2.0+ */
37         {0x120, 1600, 1200, 256,        "1600x1200x256"},
38         {0x121, 1600, 1200, 32768,      "1600x1200x32k"},
39         {0x122, 1600, 1200, 65536,      "1600x1200x64k"},
40         {    0,    0,    0, 0,          ""},
41 };
42
43 struct vesa_timing_t known_vesa_timings[] = {
44         /* Source: VESA Monitor Timing Specifications 1.0 rev 0.8 */
45         { 640,  350, 85,  31.500, { 640, 32,  64,  96,  350,32, 3, 60},
46           hsync_pos, vsync_neg, 37.861,  85.080},
47
48         { 640,  400, 85,  31.500, { 640, 32,  64,  96,  400, 1, 3, 41},
49           hsync_neg, vsync_pos, 37.861,  85.080},
50
51         { 720,  400, 85,  35.500, { 720, 36, 72,  108,  400, 1, 3, 42},
52           hsync_neg, vsync_pos, 37.861,  85.080},
53
54         { 640,  480, 60,  25.175, { 640,  8,  96,  40,  480, 2, 2, 25},
55          hsync_neg, vsync_neg,  31.469,  59.940},
56         { 640,  480, 72,  31.500, { 640, 16,  40, 120,  480, 1, 3, 20},
57          hsync_neg, vsync_neg,  37.861,  72.809},
58         { 640,  480, 75,  31.500, { 640, 16,  64, 120,  480, 1, 3, 16},
59          hsync_neg, vsync_neg,  37.500,  75.000},
60         { 640,  480, 85,  36.000, { 640, 56,  56,  80,  480, 1, 3, 25},
61          hsync_neg, vsync_neg,  43.269,  85.008},
62
63         { 800,  600, 56,  36.000, { 800, 24,  72, 128,  600, 1, 2, 22},
64          hsync_pos, vsync_pos,  35.156,  56.250},
65         { 800,  600, 60,  40.000, { 800, 40, 128,  88,  600, 1, 4, 23},
66          hsync_pos, vsync_pos,  37.879,  60.317},
67         { 800,  600, 72,  50.000, { 800, 56, 120,  64,  600,37, 6, 23},
68          hsync_pos, vsync_pos,  48.077,  72.188},
69         { 800,  600, 75,  49.500, { 800, 16,  80, 160,  600, 1, 3, 21},
70          hsync_pos, vsync_pos,  46.875,  75.000},
71         { 800,  600, 85,  56.250, { 800, 32,  64, 152,  600, 1, 3, 27},
72          hsync_pos, vsync_pos,  53.674,  85.061},
73
74         {1024,  768, 43,  44.900, {1024,  8, 176,  56,  768, 0, 4, 20},
75          hsync_pos, vsync_pos,  35.522,  86.957},
76         {1024,  768, 60,  65.000, {1024, 24, 136, 160,  768, 3, 6, 29},
77          hsync_neg, vsync_neg,  48.363,  60.004},
78         {1024,  768, 70,  75.000, {1024, 24, 136, 144,  768, 3, 6, 29},
79          hsync_neg, vsync_neg,  56.476,  70.069},
80         {1024,  768, 75,  78.750, {1024, 16,  96, 176,  768, 1, 3, 28},
81          hsync_pos, vsync_pos,  60.023,  75.029},
82         {1024,  768, 85,  94.500, {1024, 48,  96, 208,  768, 1, 3, 36},
83          hsync_pos, vsync_pos,  68.677,  84.997},
84
85         {1152,  864, 70,  94.200, {1152, 32,  96, 192,  864, 1, 3, 46},
86          hsync_pos, vsync_pos,   0.000,   0.000},
87         {1152,  864, 75, 108.000, {1152, 64, 128, 256,  864, 1, 3, 32},
88          hsync_pos, vsync_pos,  67.500,  75.000},
89         {1152,  864, 85, 121.500, {1152, 64, 128, 224,  864, 1, 3, 43},
90          hsync_pos, vsync_pos,   0.000,   0.000},
91
92         {1280,  960, 60, 108.000, {1280, 96, 112, 312,  960, 1, 3, 36},
93          hsync_pos, vsync_pos,  60.000,  60.000},
94         {1280,  960, 85, 148.500, {1280, 64, 160, 224,  960, 1, 3, 47},
95          hsync_pos, vsync_pos,  85.398,  85.002},
96
97         {1280, 1024, 60, 108.000, {1280, 48, 112, 248, 1024, 1, 3, 38},
98          hsync_pos, vsync_pos,  63.981,  60.020},
99         {1280, 1024, 75, 135.000, {1280, 16, 144, 248, 1024, 1, 3, 38},
100          hsync_pos, vsync_pos,  79.976,  75.025},
101         {1280, 1024, 85, 157.500, {1280, 64, 160, 224, 1024, 1, 3, 44},
102          hsync_pos, vsync_pos,  91.146,  85.024},
103
104         {1600, 1200, 60, 162.000, {1600, 64, 192, 304, 1200, 1, 3, 46},
105          hsync_pos, vsync_pos,  75.000,  60.000},
106         {1600, 1200, 65, 175.500, {1600, 64, 192, 304, 1200, 1, 3, 46},
107          hsync_pos, vsync_pos,  81.250,  65.000},
108         {1600, 1200, 70, 189.000, {1600, 64, 192, 304, 1200, 1, 3, 46},
109          hsync_pos, vsync_pos,  87.500,  70.000},
110         {1600, 1200, 75, 202.500, {1600, 64, 192, 304, 1200, 1, 3, 46},
111          hsync_pos, vsync_pos,  93.750,  75.000},
112         {1600, 1200, 85, 229.500, {1600, 64, 192, 304, 1200, 1, 3, 46},
113          hsync_pos, vsync_pos, 106.250,  85.000},
114
115         {1792, 1344, 60, 204.750, {1792,128, 200, 328, 1344, 1, 3, 46},
116          hsync_neg, vsync_pos,  83.640,  60.000},
117         {1792, 1344, 75, 261.000, {1792, 96, 216, 352, 1344, 1, 3, 69},
118          hsync_neg, vsync_pos, 106.270,  74.997},
119
120         {1856, 1392, 60, 218.250, {1856, 96, 224, 352, 1392, 1, 3, 43},
121          hsync_neg, vsync_pos,  86.333,  59.995},
122         {1856, 1392, 75, 288.000, {1856,128, 224, 352, 1392, 1, 3,104},
123          hsync_neg, vsync_pos, 112.500,  75.000},
124
125         {1920, 1440, 60, 234.000, {1920,128, 208, 344, 1440, 1, 3, 56},
126          hsync_neg, vsync_pos,  90.000,  60.000},
127         {1920, 1440, 75, 297.000, {1920,144, 224, 352, 1440, 1, 3, 56},
128          hsync_neg, vsync_pos, 112.500,  75.000},
129
130         {   0,    0,  0,   0.000, {   0,  0,   0,   0,    0, 0, 0,  0},
131          000000000, 000000000,   0.000,   0.000},
132 };
Note: See TracBrowser for help on using the browser.