cim_modes.c revision f29dbc25
1f29dbc25Smrg/*
2f29dbc25Smrg * Copyright (c) 2006 Advanced Micro Devices, Inc.
3f29dbc25Smrg *
4f29dbc25Smrg * Permission is hereby granted, free of charge, to any person obtaining a
5f29dbc25Smrg * copy of this software and associated documentation files (the "Software"),
6f29dbc25Smrg * to deal in the Software without restriction, including without limitation
7f29dbc25Smrg * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8f29dbc25Smrg * and/or sell copies of the Software, and to permit persons to whom the
9f29dbc25Smrg * Software is furnished to do so, subject to the following conditions:
10f29dbc25Smrg *
11f29dbc25Smrg * The above copyright notice and this permission notice shall be included in
12f29dbc25Smrg * all copies or substantial portions of the Software.
13f29dbc25Smrg *
14f29dbc25Smrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15f29dbc25Smrg * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16f29dbc25Smrg * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17f29dbc25Smrg * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18f29dbc25Smrg * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19f29dbc25Smrg * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20f29dbc25Smrg * DEALINGS IN THE SOFTWARE.
21f29dbc25Smrg *
22f29dbc25Smrg * Neither the name of the Advanced Micro Devices, Inc. nor the names of its
23f29dbc25Smrg * contributors may be used to endorse or promote products derived from this
24f29dbc25Smrg * software without specific prior written permission.
25f29dbc25Smrg */
26f29dbc25Smrg
27f29dbc25Smrg /*
28f29dbc25Smrg  * Cimarron mode tables.
29f29dbc25Smrg  */
30f29dbc25Smrg
31f29dbc25Smrg/*-------------------------------*/
32f29dbc25Smrg/*  PREDEFINED DISPLAY TIMINGS   */
33f29dbc25Smrg/*-------------------------------*/
34f29dbc25Smrg
35f29dbc25Smrgstatic const VG_DISPLAY_MODE CimarronDisplayModes[] = {
36f29dbc25Smrg    /* 320 x 240 PANEL */
37f29dbc25Smrg
38f29dbc25Smrg    {VG_SUPPORTFLAG_75HZ |             /* refresh rate = 75    */
39f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL,      /* Panel Mode.          */
40f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
41f29dbc25Smrg            VG_MODEFLAG_PANELOUT |     /* Panel output.        */
42f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC |     /* negative syncs */
43f29dbc25Smrg            VG_MODEFLAG_QVGA,          /* QVGA Panel size.     */
44f29dbc25Smrg            320, 240,                  /* No scaling.          */
45f29dbc25Smrg            320, 240,                  /* 320x240 active       */
46f29dbc25Smrg            320, 240,                  /* 320x240 panel        */
47f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
48f29dbc25Smrg            0x0140, 0x0148, 0x0162, 0x0180, 0x0188, 0x0190,     /* horiz timings   */
49f29dbc25Smrg            0x00F0, 0x00F4, 0x00F9, 0x00FD, 0x00FF, 0x0104,     /* vertical timings */
50f29dbc25Smrg            (31L << 16) | ((2000L * 65536L) / 10000L),  /* freq = 31.2000 MHz */
51f29dbc25Smrg        }
52f29dbc25Smrg    ,
53f29dbc25Smrg
54f29dbc25Smrg    /* 640 x 400 */
55f29dbc25Smrg
56f29dbc25Smrg    {VG_SUPPORTFLAG_70HZ |             /* refresh rate = 60    */
57f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
58f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
59f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
60f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
61f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC,     /* negative HSYNC       */
62f29dbc25Smrg            640, 400,                  /* No scaling.          */
63f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
64f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
65f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
66f29dbc25Smrg            0x280, 0x288, 0x290, 0x2F0, 0x318, 0x320,   /* horiz timings   */
67f29dbc25Smrg            0x190, 0x197, 0x19C, 0x19E, 0x1BA, 0x1C1,   /* vertical timings */
68f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
69f29dbc25Smrg            (25L << 16) | ((1750L * 65536L) / 10000L),  /* freq = 25.175 MHz    */
70f29dbc25Smrg        }
71f29dbc25Smrg    ,
72f29dbc25Smrg
73f29dbc25Smrg    /* 640x480 */
74f29dbc25Smrg
75f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
76f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
77f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
78f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
79f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
80f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
81f29dbc25Smrg            640, 480,                  /* No scaling.          */
82f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
83f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
84f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
85f29dbc25Smrg            0x0280, 0x0288, 0x0290, 0x02E8, 0x0318, 0x0320,     /* horiz timings   */
86f29dbc25Smrg            0x01E0, 0x01E8, 0x01EA, 0x01EC, 0x0205, 0x020D,     /* vertical timings */
87f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
88f29dbc25Smrg            (25L << 16) | ((1750L * 65536L) / 10000L),  /* freq = 25.175 MHz    */
89f29dbc25Smrg        }
90f29dbc25Smrg    ,
91f29dbc25Smrg
92f29dbc25Smrg    {VG_SUPPORTFLAG_70HZ |             /* refresh rate = 70    */
93f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
94f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
95f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
96f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
97f29dbc25Smrg            0,
98f29dbc25Smrg            640, 480,                  /* No scaling.          */
99f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
100f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
101f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
102f29dbc25Smrg            0x0280, 0x0280, 0x0298, 0x02D8, 0x0330, 0x0330,     /* horiz timings   */
103f29dbc25Smrg            0x01E0, 0x01E0, 0x01E2, 0x01E5, 0x01F4, 0x01F4,     /* vertical timings */
104f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
105f29dbc25Smrg            (28L << 16) | ((5600L * 65536L) / 10000L),  /* freq = 28.560 MHz    */
106f29dbc25Smrg        }
107f29dbc25Smrg    ,
108f29dbc25Smrg
109f29dbc25Smrg    {VG_SUPPORTFLAG_72HZ |             /* refresh rate = 72    */
110f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
111f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
112f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
113f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
114f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
115f29dbc25Smrg            640, 480,                  /* No scaling.          */
116f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
117f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
118f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
119f29dbc25Smrg            0x0280, 0x0288, 0x0298, 0x02c0, 0x0338, 0x0340,     /* horiz timings   */
120f29dbc25Smrg            0x01e0, 0x01e8, 0x01e9, 0x01ec, 0x0200, 0x0208,     /* vertical timings */
121f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
122f29dbc25Smrg            (31L << 16) | ((5000L * 65536L) / 10000L),  /* freq = 31.5 MHz      */
123f29dbc25Smrg        }
124f29dbc25Smrg    ,
125f29dbc25Smrg
126f29dbc25Smrg    {VG_SUPPORTFLAG_75HZ |             /* refresh rate = 75    */
127f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
128f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
129f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
130f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
131f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
132f29dbc25Smrg            640, 480,                  /* No scaling.          */
133f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
134f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
135f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
136f29dbc25Smrg            0x0280, 0x0280, 0x0290, 0x02D0, 0x0348, 0x0348,     /* horiz timings   */
137f29dbc25Smrg            0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01F4, 0x01F4,     /* vertical timings */
138f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
139f29dbc25Smrg            (31L << 16) | ((5000L * 65536L) / 10000L),  /* freq = 31.5 MHz      */
140f29dbc25Smrg        }
141f29dbc25Smrg    ,
142f29dbc25Smrg
143f29dbc25Smrg    {VG_SUPPORTFLAG_85HZ |             /* refresh rate = 85    */
144f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
145f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
146f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
147f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
148f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
149f29dbc25Smrg            640, 480,                  /* No scaling.          */
150f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
151f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
152f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
153f29dbc25Smrg            0x0280, 0x0280, 0x02B8, 0x02F0, 0x0340, 0x0340,     /* horiz timings   */
154f29dbc25Smrg            0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01FD, 0x01FD,     /* vertical timings */
155f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
156f29dbc25Smrg            (36L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 36.0 MHz      */
157f29dbc25Smrg        }
158f29dbc25Smrg    ,
159f29dbc25Smrg
160f29dbc25Smrg    {VG_SUPPORTFLAG_90HZ |             /* refresh rate = 90    */
161f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
162f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
163f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
164f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
165f29dbc25Smrg            0,
166f29dbc25Smrg            640, 480,                  /* No scaling.          */
167f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
168f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
169f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
170f29dbc25Smrg            0x0280, 0x0280, 0x02A0, 0x02E0, 0x0340, 0x0340,     /* horiz timings   */
171f29dbc25Smrg            0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01FA, 0x01FA,     /* vertical timings */
172f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
173f29dbc25Smrg            (37L << 16) | ((8890L * 65536L) / 10000L),  /* freq = 37.889 MHz    */
174f29dbc25Smrg        }
175f29dbc25Smrg    ,
176f29dbc25Smrg
177f29dbc25Smrg    {VG_SUPPORTFLAG_100HZ |            /* refresh rate = 100   */
178f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
179f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
180f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
181f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
182f29dbc25Smrg            0,
183f29dbc25Smrg            640, 480,                  /* No scaling.          */
184f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
185f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
186f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
187f29dbc25Smrg            0x0280, 0x0280, 0x02A8, 0x02E8, 0x0350, 0x0350,     /* horiz timings   */
188f29dbc25Smrg            0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01FD, 0x01FD,     /* vertical timings */
189f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
190f29dbc25Smrg            (43L << 16) | ((1630L * 65536L) / 10000L),  /* freq = 43.163 MHz    */
191f29dbc25Smrg        }
192f29dbc25Smrg    ,
193f29dbc25Smrg
194f29dbc25Smrg    /* 640 x 480 PANEL */
195f29dbc25Smrg
196f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
197f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL,      /* Panel Mode.          */
198f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
199f29dbc25Smrg            VG_MODEFLAG_PANELOUT |     /* Panel output.        */
200f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
201f29dbc25Smrg            640, 480,                  /* No scaling.          */
202f29dbc25Smrg            640, 480,                  /* 640x480 active       */
203f29dbc25Smrg            640, 480,                  /* 640x480 panel        */
204f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
205f29dbc25Smrg            0x0280, 0x0280, 0x0290, 0x02E8, 0x0318, 0x0320,     /* horiz timings   */
206f29dbc25Smrg            0x01E0, 0x01E0, 0x01EA, 0x01EC, 0x0205, 0x020D,     /* vertical timings */
207f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
208f29dbc25Smrg            (25L << 16) | ((1750L * 65536L) / 10000L),  /* freq = 25.175 MHz    */
209f29dbc25Smrg        }
210f29dbc25Smrg    ,
211f29dbc25Smrg
212f29dbc25Smrg    /* 800x600 */
213f29dbc25Smrg
214f29dbc25Smrg    {VG_SUPPORTFLAG_56HZ |             /* refresh rate = 56    */
215f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
216f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
217f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
218f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
219f29dbc25Smrg            0,
220f29dbc25Smrg            800, 600,                  /* No scaling.          */
221f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
222f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
223f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
224f29dbc25Smrg            0x0320, 0x0320, 0x0338, 0x0380, 0x0400, 0x0400,     /* horiz timings   */
225f29dbc25Smrg            0x0258, 0x0258, 0x0259, 0x025B, 0x0271, 0x0271,     /* vertical timings */
226f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
227f29dbc25Smrg            (36L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 36.0 MHz      */
228f29dbc25Smrg        }
229f29dbc25Smrg    ,
230f29dbc25Smrg
231f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
232f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
233f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
234f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
235f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
236f29dbc25Smrg            0,
237f29dbc25Smrg            800, 600,                  /* No scaling.          */
238f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
239f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
240f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
241f29dbc25Smrg            0x0320, 0x0328, 0x0348, 0x03D0, 0x0418, 0x0420,     /* horiz timings   */
242f29dbc25Smrg            0x0258, 0x0258, 0x0259, 0x025D, 0x0274, 0x0274,     /* vertical timings */
243f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
244f29dbc25Smrg            (40L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 40.00 MHz     */
245f29dbc25Smrg        }
246f29dbc25Smrg    ,
247f29dbc25Smrg
248f29dbc25Smrg    {VG_SUPPORTFLAG_70HZ |             /* refresh rate = 70    */
249f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
250f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
251f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
252f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
253f29dbc25Smrg            0,
254f29dbc25Smrg            800, 600,                  /* No scaling.          */
255f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
256f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
257f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
258f29dbc25Smrg            0x0320, 0x0320, 0x0348, 0x0398, 0x0410, 0x0410,     /* horiz timings   */
259f29dbc25Smrg            0x0258, 0x0258, 0x025c, 0x025F, 0x0274, 0x0274,     /* vertical timings */
260f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
261f29dbc25Smrg            (45L << 16) | ((7200L * 65536L) / 10000L),  /* freq = 45.72 MHz     */
262f29dbc25Smrg        }
263f29dbc25Smrg    ,
264f29dbc25Smrg
265f29dbc25Smrg    {VG_SUPPORTFLAG_72HZ |             /* refresh rate = 72    */
266f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
267f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
268f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
269f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
270f29dbc25Smrg            0,
271f29dbc25Smrg            800, 600,                  /* No scaling.          */
272f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
273f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
274f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
275f29dbc25Smrg            0x0320, 0x0320, 0x0358, 0x03D0, 0x0410, 0x0410,     /* horiz timings   */
276f29dbc25Smrg            0x0258, 0x0258, 0x027D, 0x0283, 0x029A, 0x029A,     /* vertical timings */
277f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
278f29dbc25Smrg            (49L << 16) | ((5000L * 65536L) / 10000L),  /* freq = 49.5 MHz      */
279f29dbc25Smrg        }
280f29dbc25Smrg    ,
281f29dbc25Smrg
282f29dbc25Smrg    {VG_SUPPORTFLAG_75HZ |             /* refresh rate = 75    */
283f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
284f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
285f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
286f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
287f29dbc25Smrg            0,
288f29dbc25Smrg            800, 600,                  /* No scaling.          */
289f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
290f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
291f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
292f29dbc25Smrg            0x0320, 0x0320, 0x0330, 0x0380, 0x0420, 0x0420,     /* horiz timings   */
293f29dbc25Smrg            0x0258, 0x0258, 0x0259, 0x025C, 0x0271, 0x0271,     /* vertical timings */
294f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
295f29dbc25Smrg            (49L << 16) | ((5000L * 65536L) / 10000L),  /* freq = 49.5 MHz      */
296f29dbc25Smrg        }
297f29dbc25Smrg    ,
298f29dbc25Smrg
299f29dbc25Smrg    {VG_SUPPORTFLAG_85HZ |             /* refresh rate = 85    */
300f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
301f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
302f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
303f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
304f29dbc25Smrg            0,
305f29dbc25Smrg            800, 600,                  /* No scaling.          */
306f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
307f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
308f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
309f29dbc25Smrg            0x0320, 0x0320, 0x0340, 0x0380, 0x0418, 0x0418,     /* horiz timings   */
310f29dbc25Smrg            0x0258, 0x0258, 0x0259, 0x025C, 0x0277, 0x0277,     /* vertical timings */
311f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
312f29dbc25Smrg            (56L << 16) | ((2500L * 65536L) / 10000L),  /* freq = 56.25 MHz     */
313f29dbc25Smrg        }
314f29dbc25Smrg    ,
315f29dbc25Smrg
316f29dbc25Smrg    {VG_SUPPORTFLAG_90HZ |             /* refresh rate = 90    */
317f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
318f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
319f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
320f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
321f29dbc25Smrg            0,
322f29dbc25Smrg            800, 600,                  /* No scaling.          */
323f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
324f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
325f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
326f29dbc25Smrg            0x0320, 0x0320, 0x0348, 0x03A0, 0x0420, 0x0420,     /* horiz timings   */
327f29dbc25Smrg            0x0258, 0x0258, 0x0259, 0x025C, 0x0278, 0x0278,     /* vertical timings */
328f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
329f29dbc25Smrg            (60L << 16) | ((650L * 65536L) / 10000L),   /* freq = 60.065 MHz    */
330f29dbc25Smrg        }
331f29dbc25Smrg    ,
332f29dbc25Smrg
333f29dbc25Smrg    {VG_SUPPORTFLAG_100HZ |            /* refresh rate = 100   */
334f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
335f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
336f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
337f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
338f29dbc25Smrg            0,
339f29dbc25Smrg            800, 600,                  /* No scaling.          */
340f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
341f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
342f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
343f29dbc25Smrg            0x0320, 0x0320, 0x0350, 0x03A8, 0x0430, 0x0430,     /* horiz timings   */
344f29dbc25Smrg            0x0258, 0x0258, 0x0259, 0x025C, 0x0277, 0x027C,     /* vertical timings */
345f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
346f29dbc25Smrg            (68L << 16) | ((1790L * 65536L) / 10000L),  /* freq = 68.179 MHz    */
347f29dbc25Smrg        }
348f29dbc25Smrg    ,
349f29dbc25Smrg
350f29dbc25Smrg    /* 800x600 PANEL */
351f29dbc25Smrg
352f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
353f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL,      /* Panel Mode.          */
354f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
355f29dbc25Smrg            VG_MODEFLAG_PANELOUT |     /* Panel output.        */
356f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
357f29dbc25Smrg            800, 600,                  /* No scaling.          */
358f29dbc25Smrg            800, 600,                  /* 800x600 active.      */
359f29dbc25Smrg            800, 600,                  /* 800x600 panel        */
360f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
361f29dbc25Smrg            0x0320, 0x0320, 0x0348, 0x03C8, 0x0420, 0x0420,     /* horiz timings   */
362f29dbc25Smrg            0x0258, 0x0258, 0x0259, 0x025D, 0x0274, 0x0274,     /* vertical timings */
363f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
364f29dbc25Smrg            (40L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 40.00 MHz     */
365f29dbc25Smrg        }
366f29dbc25Smrg    ,
367f29dbc25Smrg
368f29dbc25Smrg    /* 1024x768 */
369f29dbc25Smrg
370f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
371f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
372f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
373f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
374f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
375f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
376f29dbc25Smrg            1024, 768,                 /* No scaling.          */
377f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
378f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
379f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
380f29dbc25Smrg            0x0400, 0x0400, 0x0418, 0x04A0, 0x0540, 0x0540,     /* horiz timings   */
381f29dbc25Smrg            0x0300, 0x0300, 0x0303, 0x0309, 0x0326, 0x0326,     /* vertical timings */
382f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
383f29dbc25Smrg            (65L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 65.00 MHz     */
384f29dbc25Smrg        }
385f29dbc25Smrg    ,
386f29dbc25Smrg
387f29dbc25Smrg    {VG_SUPPORTFLAG_70HZ |             /* refresh rate = 70    */
388f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
389f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
390f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
391f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
392f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
393f29dbc25Smrg            1024, 768,                 /* No scaling.          */
394f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
395f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
396f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
397f29dbc25Smrg            0x0400, 0x0400, 0x0418, 0x04A0, 0x0530, 0x0530,     /* horiz timings   */
398f29dbc25Smrg            0x0300, 0x0300, 0x0303, 0x0309, 0x0326, 0x0326,     /* vertical timings */
399f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
400f29dbc25Smrg            (75L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 75.0 MHz      */
401f29dbc25Smrg        }
402f29dbc25Smrg    ,
403f29dbc25Smrg
404f29dbc25Smrg    {VG_SUPPORTFLAG_72HZ |             /* refresh rate = 72    */
405f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
406f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
407f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
408f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
409f29dbc25Smrg            0,
410f29dbc25Smrg            1024, 768,                 /* No scaling.          */
411f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
412f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
413f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
414f29dbc25Smrg            0x0400, 0x0400, 0x0438, 0x04A8, 0x0550, 0x0550,     /* horiz timings   */
415f29dbc25Smrg            0x0300, 0x0300, 0x0304, 0x0307, 0x0324, 0x0324,     /* vertical timings */
416f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
417f29dbc25Smrg            (78L << 16) | ((7500L * 65536L) / 10000L),  /* freq = 78.75 MHz     */
418f29dbc25Smrg        }
419f29dbc25Smrg    ,
420f29dbc25Smrg
421f29dbc25Smrg    {VG_SUPPORTFLAG_75HZ |             /* refresh rate = 75    */
422f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
423f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
424f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
425f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
426f29dbc25Smrg            0,
427f29dbc25Smrg            1024, 768,                 /* No scaling.          */
428f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
429f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
430f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
431f29dbc25Smrg            0x0400, 0x0400, 0x0410, 0x0470, 0x0520, 0x0520,     /* horiz timings   */
432f29dbc25Smrg            0x0300, 0x0300, 0x0301, 0x0304, 0x0320, 0x0320,     /* vertical timings */
433f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
434f29dbc25Smrg            (78L << 16) | ((7500L * 65536L) / 10000L),  /* freq = 78.75 MHz     */
435f29dbc25Smrg        }
436f29dbc25Smrg    ,
437f29dbc25Smrg
438f29dbc25Smrg    {VG_SUPPORTFLAG_85HZ |             /* refresh rate = 85    */
439f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
440f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
441f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
442f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
443f29dbc25Smrg            0,
444f29dbc25Smrg            1024, 768,                 /* No scaling.          */
445f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
446f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
447f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
448f29dbc25Smrg            0x0400, 0x0400, 0x0430, 0x0490, 0x0560, 0x0560,     /* horiz timings   */
449f29dbc25Smrg            0x0300, 0x0300, 0x0301, 0x0304, 0x0328, 0x0328,     /* vertical timings */
450f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
451f29dbc25Smrg            (94L << 16) | ((5000L * 65536L) / 10000L),  /* freq = 94.50 MHz     */
452f29dbc25Smrg        }
453f29dbc25Smrg    ,
454f29dbc25Smrg
455f29dbc25Smrg    {VG_SUPPORTFLAG_90HZ |             /* refresh rate = 90    */
456f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
457f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
458f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
459f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
460f29dbc25Smrg            0,
461f29dbc25Smrg            1024, 768,                 /* No scaling.          */
462f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
463f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
464f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
465f29dbc25Smrg            0x0400, 0x0400, 0x0440, 0x04B0, 0x0560, 0x0560,     /* horiz timings   */
466f29dbc25Smrg            0x0300, 0x0300, 0x0301, 0x0304, 0x0329, 0x0329,     /* vertical timings */
467f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
468f29dbc25Smrg            (100L << 16) | ((1870L * 65536L) / 10000L), /* freq = 100.187 MHz   */
469f29dbc25Smrg        }
470f29dbc25Smrg    ,
471f29dbc25Smrg
472f29dbc25Smrg    {VG_SUPPORTFLAG_100HZ |            /* refresh rate = 100   */
473f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
474f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
475f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
476f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
477f29dbc25Smrg            0,
478f29dbc25Smrg            1024, 768,                 /* No scaling.          */
479f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
480f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
481f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
482f29dbc25Smrg            0x0400, 0x0400, 0x0448, 0x04B8, 0x0570, 0x0570,     /* horiz timings   */
483f29dbc25Smrg            0x0300, 0x0300, 0x0301, 0x0304, 0x032E, 0x032E,     /* vertical timings */
484f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
485f29dbc25Smrg            (113L << 16) | ((3100L * 65536L) / 10000L), /* freq = 113.31 MHz    */
486f29dbc25Smrg        }
487f29dbc25Smrg    ,
488f29dbc25Smrg
489f29dbc25Smrg    /* 1024x768 PANEL */
490f29dbc25Smrg
491f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
492f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL,      /* Panel Mode.          */
493f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
494f29dbc25Smrg            VG_MODEFLAG_PANELOUT |     /* Panel output.        */
495f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
496f29dbc25Smrg            1024, 768,                 /* No scaling.          */
497f29dbc25Smrg            1024, 768,                 /* 1024x768 active.     */
498f29dbc25Smrg            1024, 768,                 /* 1024x768 panel       */
499f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
500f29dbc25Smrg            0x0400, 0x0400, 0x0418, 0x04A0, 0x0540, 0x0540,     /* horiz timings   */
501f29dbc25Smrg            0x0300, 0x0300, 0x0303, 0x0309, 0x0326, 0x0326,     /* vertical timings */
502f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
503f29dbc25Smrg            (65L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 65.00 MHz     */
504f29dbc25Smrg        }
505f29dbc25Smrg    ,
506f29dbc25Smrg
507f29dbc25Smrg    /* 1152x864 */
508f29dbc25Smrg
509f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
510f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
511f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
512f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
513f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
514f29dbc25Smrg            0,
515f29dbc25Smrg            1152, 864,                 /* No scaling.          */
516f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
517f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
518f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
519f29dbc25Smrg            0x0480, 0x0480, 0x04C0, 0x0538, 0x05F0, 0x05F0,     /* horiz timings   */
520f29dbc25Smrg            0x0360, 0x0360, 0x0361, 0x0364, 0x037F, 0x037F,     /* vertical timings */
521f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
522f29dbc25Smrg            (81L << 16) | ((6000L * 65536L) / 10000L),  /* freq = 81.60 MHz     */
523f29dbc25Smrg        }
524f29dbc25Smrg    ,
525f29dbc25Smrg
526f29dbc25Smrg    {VG_SUPPORTFLAG_70HZ |             /* refresh rate = 70    */
527f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
528f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
529f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
530f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
531f29dbc25Smrg            0,
532f29dbc25Smrg            1152, 864,                 /* No scaling.          */
533f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
534f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
535f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
536f29dbc25Smrg            0x0480, 0x0480, 0x04C8, 0x0540, 0x0600, 0x0600,     /* horiz timings   */
537f29dbc25Smrg            0x0360, 0x0360, 0x0368, 0x036B, 0x038B, 0x038B,     /* vertical timings */
538f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
539f29dbc25Smrg            (97L << 16) | ((5200L * 65536L) / 10000L),  /* freq = 97.52 MHz     */
540f29dbc25Smrg        }
541f29dbc25Smrg    ,
542f29dbc25Smrg
543f29dbc25Smrg    {VG_SUPPORTFLAG_72HZ |             /* refresh rate = 72    */
544f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
545f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
546f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
547f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
548f29dbc25Smrg            0,
549f29dbc25Smrg            1152, 864,                 /* No scaling.          */
550f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
551f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
552f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
553f29dbc25Smrg            0x0480, 0x0480, 0x04C8, 0x0548, 0x0610, 0x0610,     /* horiz timings   */
554f29dbc25Smrg            0x0360, 0x0360, 0x0367, 0x036A, 0x038B, 0x038B,     /* vertical timings */
555f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
556f29dbc25Smrg            (101L << 16) | ((4200L * 65536L) / 10000L), /* freq = 101.42 MHz    */
557f29dbc25Smrg        }
558f29dbc25Smrg    ,
559f29dbc25Smrg
560f29dbc25Smrg    {VG_SUPPORTFLAG_75HZ |             /* refresh rate = 75    */
561f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
562f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
563f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
564f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
565f29dbc25Smrg            0,
566f29dbc25Smrg            1152, 864,                 /* No scaling.          */
567f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
568f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
569f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
570f29dbc25Smrg            0x0480, 0x0480, 0x04C0, 0x0540, 0x0640, 0x0640,     /* horiz timings   */
571f29dbc25Smrg            0x0360, 0x0360, 0x0361, 0x0364, 0x0384, 0x0384,     /* vertical timings */
572f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
573f29dbc25Smrg            (108L << 16) | ((0000L * 65536L) / 10000L), /* freq = 108.00 MHz    */
574f29dbc25Smrg        }
575f29dbc25Smrg    ,
576f29dbc25Smrg
577f29dbc25Smrg    {VG_SUPPORTFLAG_85HZ |             /* refresh rate = 85    */
578f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
579f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
580f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
581f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
582f29dbc25Smrg            0,
583f29dbc25Smrg            1152, 864,                 /* No scaling.          */
584f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
585f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
586f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
587f29dbc25Smrg            0x0480, 0x0480, 0x04C8, 0x0548, 0x0610, 0x0610,     /* horiz timings   */
588f29dbc25Smrg            0x0360, 0x0360, 0x0363, 0x0366, 0x038B, 0x038B,     /* vertical timings */
589f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
590f29dbc25Smrg            (119L << 16) | ((6500L * 65536L) / 10000L), /* freq = 119.65 MHz    */
591f29dbc25Smrg        }
592f29dbc25Smrg    ,
593f29dbc25Smrg
594f29dbc25Smrg    {VG_SUPPORTFLAG_90HZ |             /* refresh rate = 90    */
595f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
596f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
597f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
598f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
599f29dbc25Smrg            0,
600f29dbc25Smrg            1152, 864,                 /* No scaling.          */
601f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
602f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
603f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
604f29dbc25Smrg            0x0480, 0x0480, 0x04D0, 0x0550, 0x0620, 0x0620,     /* horiz timings   */
605f29dbc25Smrg            0x0360, 0x0360, 0x0369, 0x036C, 0x0396, 0x0396,     /* vertical timings */
606f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
607f29dbc25Smrg            (129L << 16) | ((6000L * 65536L) / 10000L), /* freq = 129.60 MHz    */
608f29dbc25Smrg        }
609f29dbc25Smrg    ,
610f29dbc25Smrg
611f29dbc25Smrg    {VG_SUPPORTFLAG_100HZ |            /* refresh rate = 100   */
612f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
613f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
614f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
615f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
616f29dbc25Smrg            0,
617f29dbc25Smrg            1152, 864,                 /* No scaling.          */
618f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
619f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
620f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
621f29dbc25Smrg            0x0480, 0x0480, 0x04D0, 0x0550, 0x0620, 0x0620,     /* horiz timings   */
622f29dbc25Smrg            0x0360, 0x0360, 0x0363, 0x0366, 0x0396, 0x0396,     /* vertical timings */
623f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
624f29dbc25Smrg            (144L << 16) | ((0000L * 65536L) / 10000L), /* freq = 144.00 MHz    */
625f29dbc25Smrg        }
626f29dbc25Smrg    ,
627f29dbc25Smrg
628f29dbc25Smrg    /* 1152x864 PANEL */
629f29dbc25Smrg
630f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
631f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL,      /* Panel Mode.          */
632f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
633f29dbc25Smrg            VG_MODEFLAG_PANELOUT |     /* Panel output.        */
634f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
635f29dbc25Smrg            1152, 864,                 /* No scaling.          */
636f29dbc25Smrg            1152, 864,                 /* 1152x864 active.     */
637f29dbc25Smrg            1152, 864,                 /* 1152x864 panel. */
638f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
639f29dbc25Smrg            0x0480, 0x0480, 0x04C0, 0x0538, 0x05F0, 0x05F0,     /* horiz timings   */
640f29dbc25Smrg            0x0360, 0x0360, 0x0361, 0x0364, 0x037F, 0x037F,     /* vertical timings */
641f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
642f29dbc25Smrg            (81L << 16) | ((6000L * 65536L) / 10000L),  /* freq = 81.60 MHz     */
643f29dbc25Smrg        }
644f29dbc25Smrg    ,
645f29dbc25Smrg
646f29dbc25Smrg    /* 1280x1024 */
647f29dbc25Smrg
648f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
649f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
650f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
651f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
652f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
653f29dbc25Smrg            0,
654f29dbc25Smrg            1280, 1024,                /* No scaling.          */
655f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
656f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
657f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
658f29dbc25Smrg            0x0500, 0x0500, 0x0530, 0x05A0, 0x0698, 0x0698,     /* horiz timings   */
659f29dbc25Smrg            0x0400, 0x0400, 0x0401, 0x0404, 0x042A, 0x042A,     /* vertical timings */
660f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
661f29dbc25Smrg            (108L << 16) | ((0000L * 65536L) / 10000L), /* freq = 108.00 MHz    */
662f29dbc25Smrg        }
663f29dbc25Smrg    ,
664f29dbc25Smrg
665f29dbc25Smrg    {VG_SUPPORTFLAG_70HZ |             /* refresh rate = 70    */
666f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
667f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
668f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
669f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
670f29dbc25Smrg            0,
671f29dbc25Smrg            1280, 1024,                /* No scaling.          */
672f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
673f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
674f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
675f29dbc25Smrg            0x0500, 0x0500, 0x0558, 0x05E0, 0x06C0, 0x06C0,     /* horiz timings   */
676f29dbc25Smrg            0x0400, 0x0400, 0x0406, 0x0409, 0x042F, 0x042F,     /* vertical timings */
677f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
678f29dbc25Smrg            (129L << 16) | ((6000L * 65536L) / 10000L), /* freq = 129.60 MHz    */
679f29dbc25Smrg        }
680f29dbc25Smrg    ,
681f29dbc25Smrg
682f29dbc25Smrg    {VG_SUPPORTFLAG_72HZ |             /* refresh rate = 72    */
683f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
684f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
685f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
686f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
687f29dbc25Smrg            0,
688f29dbc25Smrg            1280, 1024,                /* No scaling.          */
689f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
690f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
691f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
692f29dbc25Smrg            0x0500, 0x0500, 0x0558, 0x05E0, 0x06C0, 0x06C0,     /* horiz timings   */
693f29dbc25Smrg            0x0400, 0x0400, 0x0407, 0x040A, 0x0431, 0x0431,     /* vertical timings */
694f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
695f29dbc25Smrg            (133L << 16) | ((5000L * 65536L) / 10000L), /* freq = 133.50 MHz    */
696f29dbc25Smrg        }
697f29dbc25Smrg    ,
698f29dbc25Smrg
699f29dbc25Smrg    {VG_SUPPORTFLAG_75HZ |             /* refresh rate = 75    */
700f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
701f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
702f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
703f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
704f29dbc25Smrg            0,
705f29dbc25Smrg            1280, 1024,                /* No scaling.          */
706f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
707f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
708f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
709f29dbc25Smrg            0x0500, 0x0500, 0x0510, 0x05A0, 0x0698, 0x0698,     /* horiz timings   */
710f29dbc25Smrg            0x0400, 0x0400, 0x0401, 0x0404, 0x042A, 0x042A,     /* vertical timings */
711f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
712f29dbc25Smrg            (135L << 16) | ((0000L * 65536L) / 10000L), /* freq = 135.0 MHz     */
713f29dbc25Smrg        }
714f29dbc25Smrg    ,
715f29dbc25Smrg
716f29dbc25Smrg    {VG_SUPPORTFLAG_85HZ |             /* refresh rate = 85    */
717f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
718f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
719f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
720f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
721f29dbc25Smrg            0,
722f29dbc25Smrg            1280, 1024,                /* No scaling.          */
723f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
724f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
725f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
726f29dbc25Smrg            0x0500, 0x0500, 0x0540, 0x05E0, 0x06C0, 0x06C0,     /* horiz timings   */
727f29dbc25Smrg            0x0400, 0x0400, 0x0401, 0x0404, 0x0430, 0x0430,     /* vertical timings */
728f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
729f29dbc25Smrg            (157L << 16) | ((5000L * 65536L) / 10000L), /* freq = 157.5 MHz     */
730f29dbc25Smrg        }
731f29dbc25Smrg    ,
732f29dbc25Smrg
733f29dbc25Smrg    {VG_SUPPORTFLAG_90HZ |             /* refresh rate = 90    */
734f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
735f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
736f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
737f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
738f29dbc25Smrg            0,
739f29dbc25Smrg            1280, 1024,                /* No scaling.          */
740f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
741f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
742f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
743f29dbc25Smrg            0x0500, 0x0500, 0x0560, 0x05F0, 0x06E0, 0x06E0,     /* horiz timings   */
744f29dbc25Smrg            0x0400, 0x0400, 0x040C, 0x040F, 0x0442, 0x0442,     /* vertical timings */
745f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
746f29dbc25Smrg            (172L << 16) | ((8000L * 65536L) / 10000L), /* freq = 172.80 MHz    */
747f29dbc25Smrg        }
748f29dbc25Smrg    ,
749f29dbc25Smrg
750f29dbc25Smrg    {VG_SUPPORTFLAG_100HZ |            /* refresh rate = 100   */
751f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
752f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
753f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
754f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
755f29dbc25Smrg            0,
756f29dbc25Smrg            1280, 1024,                /* No scaling.          */
757f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
758f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
759f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
760f29dbc25Smrg            0x0500, 0x0500, 0x0560, 0x05F0, 0x06E0, 0x06E0,     /* horiz timings   */
761f29dbc25Smrg            0x0400, 0x0400, 0x0406, 0x0409, 0x0442, 0x0442,     /* vertical timings */
762f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
763f29dbc25Smrg            (192L << 16) | ((0000L * 65536L) / 10000L), /* freq = 192.00 MHz    */
764f29dbc25Smrg        }
765f29dbc25Smrg    ,
766f29dbc25Smrg
767f29dbc25Smrg    /* 1280x1024 PANEL */
768f29dbc25Smrg
769f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
770f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL,      /* Panel Mode.          */
771f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
772f29dbc25Smrg            VG_MODEFLAG_PANELOUT |     /* Panel output.        */
773f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
774f29dbc25Smrg            1280, 1024,                /* No scaling.          */
775f29dbc25Smrg            1280, 1024,                /* 1280x1024 active.    */
776f29dbc25Smrg            1280, 1024,                /* 1280x1024 panel      */
777f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
778f29dbc25Smrg            0x0500, 0x0500, 0x0530, 0x05A0, 0x0698, 0x0698,     /* horiz timings   */
779f29dbc25Smrg            0x0400, 0x0400, 0x0401, 0x0404, 0x042A, 0x042A,     /* vertical timings */
780f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
781f29dbc25Smrg            (108L << 16) | ((0000L * 65536L) / 10000L), /* freq = 108.00 MHz    */
782f29dbc25Smrg        }
783f29dbc25Smrg    ,
784f29dbc25Smrg
785f29dbc25Smrg    /* 1600 x 1200 */
786f29dbc25Smrg
787f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
788f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
789f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
790f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
791f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
792f29dbc25Smrg            0,
793f29dbc25Smrg            1600, 1200,                /* No scaling.          */
794f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
795f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
796f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
797f29dbc25Smrg            0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870,     /* horiz timings   */
798f29dbc25Smrg            0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2,     /* vertical timings */
799f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
800f29dbc25Smrg            (162L << 16) | ((0000L * 65536L) / 10000L), /* freq = 162.0 MHz     */
801f29dbc25Smrg        }
802f29dbc25Smrg    ,
803f29dbc25Smrg
804f29dbc25Smrg    {VG_SUPPORTFLAG_70HZ |             /* refresh rate = 70    */
805f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
806f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
807f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
808f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
809f29dbc25Smrg            0,
810f29dbc25Smrg            1600, 1200,                /* No scaling.          */
811f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
812f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
813f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
814f29dbc25Smrg            0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870,     /* horiz timings   */
815f29dbc25Smrg            0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2,     /* vertical timings */
816f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
817f29dbc25Smrg            (189L << 16) | ((0000L * 65536L) / 10000L), /* freq = 189.0 MHz     */
818f29dbc25Smrg        }
819f29dbc25Smrg    ,
820f29dbc25Smrg
821f29dbc25Smrg    {VG_SUPPORTFLAG_72HZ |             /* refresh rate = 72    */
822f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
823f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
824f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
825f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
826f29dbc25Smrg            0,
827f29dbc25Smrg            1600, 1200,                /* No scaling.          */
828f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
829f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
830f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
831f29dbc25Smrg            0x0640, 0x0640, 0x06B0, 0x0760, 0x0880, 0x0880,     /* horiz timings   */
832f29dbc25Smrg            0x04B0, 0x04B0, 0x04BD, 0x04C0, 0x04EF, 0x04EF,     /* vertical timings */
833f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
834f29dbc25Smrg            (198L << 16) | ((0000L * 65536L) / 10000L), /* freq = 198.0 MHz     */
835f29dbc25Smrg        }
836f29dbc25Smrg    ,
837f29dbc25Smrg
838f29dbc25Smrg    {VG_SUPPORTFLAG_75HZ |             /* refresh rate = 75    */
839f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
840f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
841f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
842f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
843f29dbc25Smrg            0,
844f29dbc25Smrg            1600, 1200,                /* No scaling.          */
845f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
846f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
847f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
848f29dbc25Smrg            0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870,     /* horiz timings   */
849f29dbc25Smrg            0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2,     /* vertical timings */
850f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
851f29dbc25Smrg            (202L << 16) | ((5000L * 65536L) / 10000L), /* freq = 202.5 MHz     */
852f29dbc25Smrg        }
853f29dbc25Smrg    ,
854f29dbc25Smrg
855f29dbc25Smrg    {VG_SUPPORTFLAG_85HZ |             /* refresh rate = 85    */
856f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
857f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
858f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
859f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
860f29dbc25Smrg            0,
861f29dbc25Smrg            1600, 1200,                /* No scaling.          */
862f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
863f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
864f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
865f29dbc25Smrg            0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870,     /* horiz timings   */
866f29dbc25Smrg            0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2,     /* vertical timings */
867f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
868f29dbc25Smrg            (229L << 16) | ((5000L * 65536L) / 10000L), /* freq = 229.5 MHz     */
869f29dbc25Smrg        }
870f29dbc25Smrg    ,
871f29dbc25Smrg
872f29dbc25Smrg    {VG_SUPPORTFLAG_90HZ |             /* refresh rate = 90    */
873f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
874f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
875f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
876f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
877f29dbc25Smrg            0,
878f29dbc25Smrg            1600, 1200,                /* No scaling.          */
879f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
880f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
881f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
882f29dbc25Smrg            0x0640, 0x0640, 0x06C0, 0x0770, 0x08A0, 0x08A0,     /* horiz timings   */
883f29dbc25Smrg            0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04F0, 0x04F0,     /* vertical timings */
884f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
885f29dbc25Smrg            (251L << 16) | ((1820L * 65536L) / 10000L), /* freq = 251.182 MHz   */
886f29dbc25Smrg        }
887f29dbc25Smrg    ,
888f29dbc25Smrg
889f29dbc25Smrg    {VG_SUPPORTFLAG_100HZ |            /* refresh rate = 100   */
890f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
891f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
892f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
893f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
894f29dbc25Smrg            0,
895f29dbc25Smrg            1600, 1200,                /* No scaling.          */
896f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
897f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
898f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
899f29dbc25Smrg            0x0640, 0x0640, 0x06C0, 0x0770, 0x08A0, 0x08A0,     /* horiz timings   */
900f29dbc25Smrg            0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04F7, 0x04F7,     /* vertical timings */
901f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
902f29dbc25Smrg            (280L << 16) | ((6400L * 65536L) / 10000L), /* freq = 280.64 MHz    */
903f29dbc25Smrg        }
904f29dbc25Smrg    ,
905f29dbc25Smrg
906f29dbc25Smrg    /* 1600 x 1200  PANEL */
907f29dbc25Smrg
908f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
909f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL,      /* Panel Mode.          */
910f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
911f29dbc25Smrg            VG_MODEFLAG_PANELOUT |     /* Panel output.        */
912f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC,      /* negative syncs */
913f29dbc25Smrg            1600, 1200,                /* No scaling.          */
914f29dbc25Smrg            1600, 1200,                /* 1600x1200 Active.    */
915f29dbc25Smrg            1600, 1200,                /* 1600x1200 Panel.     */
916f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
917f29dbc25Smrg            0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870,     /* horiz timings   */
918f29dbc25Smrg            0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2,     /* vertical timings */
919f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
920f29dbc25Smrg            (162L << 16) | ((0000L * 65536L) / 10000L), /* freq = 162.0 MHz     */
921f29dbc25Smrg        }
922f29dbc25Smrg    ,
923f29dbc25Smrg
924f29dbc25Smrg    /* 1920x1440 */
925f29dbc25Smrg
926f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
927f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
928f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
929f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
930f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
931f29dbc25Smrg            0,
932f29dbc25Smrg            1920, 1440,                /* No scaling.          */
933f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
934f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
935f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
936f29dbc25Smrg            0x0780, 0x0780, 0x0800, 0x08D0, 0x0A28, 0x0A28,     /* horiz timings   */
937f29dbc25Smrg            0x05A0, 0x05A0, 0x05A1, 0x05A4, 0x05DC, 0x05DC,     /* vertical timings */
938f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
939f29dbc25Smrg            (234L << 16) | ((0000L * 65536L) / 10000L), /* freq = 234.0 MHz     */
940f29dbc25Smrg        }
941f29dbc25Smrg    ,
942f29dbc25Smrg
943f29dbc25Smrg    {VG_SUPPORTFLAG_70HZ |             /* refresh rate = 70    */
944f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
945f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
946f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
947f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
948f29dbc25Smrg            0,
949f29dbc25Smrg            1920, 1440,                /* No scaling.          */
950f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
951f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
952f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
953f29dbc25Smrg            0x0780, 0x0780, 0x0818, 0x08E8, 0x0A50, 0x0A50,     /* horiz timings   */
954f29dbc25Smrg            0x05A0, 0x05A0, 0x05A8, 0x05AB, 0x05E2, 0x05E2,     /* vertical timings */
955f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
956f29dbc25Smrg            (278L << 16) | ((4000L * 65536L) / 10000L), /* freq = 278.4 MHz     */
957f29dbc25Smrg        }
958f29dbc25Smrg    ,
959f29dbc25Smrg
960f29dbc25Smrg    {VG_SUPPORTFLAG_72HZ |             /* refresh rate = 70    */
961f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
962f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
963f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
964f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
965f29dbc25Smrg            0,
966f29dbc25Smrg            1920, 1440,                /* No scaling.          */
967f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
968f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
969f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
970f29dbc25Smrg            0x0780, 0x0780, 0x0818, 0x08E8, 0x0A50, 0x0A50,     /* horiz timings   */
971f29dbc25Smrg            0x05A0, 0x05A0, 0x05A4, 0x05A7, 0x05EB, 0x05EB,     /* vertical timings */
972f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
973f29dbc25Smrg            (288L << 16) | ((0000L * 65536L) / 10000L), /* freq = 288.0 MHz     */
974f29dbc25Smrg        }
975f29dbc25Smrg    ,
976f29dbc25Smrg
977f29dbc25Smrg    {VG_SUPPORTFLAG_75HZ |             /* refresh rate = 75    */
978f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
979f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
980f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
981f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
982f29dbc25Smrg            0,
983f29dbc25Smrg            1920, 1440,                /* No scaling.          */
984f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
985f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
986f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
987f29dbc25Smrg            0x0780, 0x0780, 0x0810, 0x08F0, 0x0A50, 0x0A50,     /* horiz timings   */
988f29dbc25Smrg            0x05A0, 0x05A0, 0x05A1, 0x05A4, 0x05DC, 0x05DC,     /* vertical timings */
989f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
990f29dbc25Smrg            (297L << 16) | ((0000L * 65536L) / 10000L), /* freq = 297.0 MHz     */
991f29dbc25Smrg        }
992f29dbc25Smrg    ,
993f29dbc25Smrg
994f29dbc25Smrg    {VG_SUPPORTFLAG_85HZ |             /* refresh rate = 85    */
995f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP
996f29dbc25Smrg            | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP |
997f29dbc25Smrg            VG_SUPPORTFLAG_32BPP,
998f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
999f29dbc25Smrg            0,
1000f29dbc25Smrg            1920, 1440,                /* No scaling.          */
1001f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
1002f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
1003f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1004f29dbc25Smrg            0x0780, 0x0780, 0x0818, 0x08F0, 0x0A60, 0x0A60,     /* horiz timings   */
1005f29dbc25Smrg            0x05A0, 0x05A0, 0x05A1, 0x05A4, 0x05E8, 0x05E8,     /* vertical timings */
1006f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings      */
1007f29dbc25Smrg            (341L << 16) | ((3490L * 65536L) / 10000L), /* freq = 341.35 MHz    */
1008f29dbc25Smrg        }
1009f29dbc25Smrg    ,
1010f29dbc25Smrg
1011f29dbc25Smrg/*-------------------------------*/
1012f29dbc25Smrg/*     PREDEFINED TV TIMINGS     */
1013f29dbc25Smrg/*-------------------------------*/
1014f29dbc25Smrg
1015f29dbc25Smrg    /* 720 x 480i NTSC */
1016f29dbc25Smrg
1017f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
1018f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_NTSC |      /* NTSC Mode.           */
1019f29dbc25Smrg            VG_SUPPORTFLAG_ADV7171 | VG_SUPPORTFLAG_SAA7127 |
1020f29dbc25Smrg            VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT,
1021f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
1022f29dbc25Smrg            VG_MODEFLAG_INTERLACED | VG_MODEFLAG_TVOUT |        /* Interlaced TV output */
1023f29dbc25Smrg            VG_MODEFLAG_HALFCLOCK |    /* DotPLL = 1/2 VOP     */
1024f29dbc25Smrg            VG_MODEFLAG_INT_FLICKER,   /* Flicker Filter Out   */
1025f29dbc25Smrg            720, 480,                  /* No downscaling.      */
1026f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
1027f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
1028f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1029f29dbc25Smrg            0x02D0, 0x02D0, 0x02E1, 0x0320, 0x035A, 0x035A,     /* horiz timings   */
1030f29dbc25Smrg            0x00F0, 0x00F0, 0x00F4, 0x00F8, 0x0107, 0x0107,     /* vertical timings */
1031f29dbc25Smrg            0x00F0, 0x00F0, 0x00F4, 0x00F8, 0x0106, 0x0106,     /*Even field timings */
1032f29dbc25Smrg            (27L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 27.0 MHz      */
1033f29dbc25Smrg        }
1034f29dbc25Smrg    ,
1035f29dbc25Smrg
1036f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
1037f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_NTSC |      /* NTSC Mode.           */
1038f29dbc25Smrg            VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT,        /* TV Mode. */
1039f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
1040f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC |     /* negative syncs */
1041f29dbc25Smrg            VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK,   /* TFT Output. */
1042f29dbc25Smrg            640, 480,                  /* No downscaling.      */
1043f29dbc25Smrg            640, 480,                  /* 640x480 active.      */
1044f29dbc25Smrg            640, 480,                  /* 640x480 panel.       */
1045f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1046f29dbc25Smrg            0x0280, 0x0280, 0x0333, 0x0373, 0x03A8, 0x03A8,     /* horiz timings   */
1047f29dbc25Smrg            0x01E0, 0x01E0, 0x01F5, 0x01F7, 0x020D, 0x020D,     /* vertical timings */
1048f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings.     */
1049f29dbc25Smrg            (25L << 16) | ((1750L * 65536L) / 10000L),  /* freq = 25.175 MHz    */
1050f29dbc25Smrg        }
1051f29dbc25Smrg    ,
1052f29dbc25Smrg
1053f29dbc25Smrg    /* 800 x 600 NTSC */
1054f29dbc25Smrg
1055f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
1056f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_8X6_NTSC |  /* 800x600 NTSC.        */
1057f29dbc25Smrg            VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT,        /* TV Mode. */
1058f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
1059f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC |     /* negative syncs */
1060f29dbc25Smrg            VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK,   /* Panel output */
1061f29dbc25Smrg            800, 600,                  /* No downscaling.      */
1062f29dbc25Smrg            800, 600,                  /* 800x600 active.      */
1063f29dbc25Smrg            800, 600,                  /* 800x600 active.      */
1064f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1065f29dbc25Smrg            0x0320, 0x0320, 0x03A7, 0x03E7, 0x03F0, 0x03F0,     /* horiz timings   */
1066f29dbc25Smrg            0x0258, 0x0258, 0x026A, 0x0272, 0x028A, 0x028A,     /* vertical timings */
1067f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings.     */
1068f29dbc25Smrg            (40L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 40.000 MHz    */
1069f29dbc25Smrg        }
1070f29dbc25Smrg    ,
1071f29dbc25Smrg
1072f29dbc25Smrg    /* 1024 x 768 NTSC */
1073f29dbc25Smrg
1074f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
1075f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_10X7_NTSC | /* 1024x768 NTSC.       */
1076f29dbc25Smrg            VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT,        /* TV Mode. */
1077f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Low bandwidth mode.  */
1078f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC |     /* negative syncs */
1079f29dbc25Smrg            VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK,   /* Panel output */
1080f29dbc25Smrg            1024, 768,                 /* No downscaling.      */
1081f29dbc25Smrg            1024, 768,                 /* 1024x768 active.     */
1082f29dbc25Smrg            1024, 768,                 /* 1024x768 active.     */
1083f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1084f29dbc25Smrg            0x0400, 0x0400, 0x0490, 0x04D0, 0x04E0, 0x04E0,     /* horiz timings   */
1085f29dbc25Smrg            0x0300, 0x0300, 0x031B, 0x031D, 0x0339, 0x0339,     /* vertical timings */
1086f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings.     */
1087f29dbc25Smrg            (65L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 65.00 MHz     */
1088f29dbc25Smrg        }
1089f29dbc25Smrg    ,
1090f29dbc25Smrg
1091f29dbc25Smrg    /* 720 x 576i PAL */
1092f29dbc25Smrg
1093f29dbc25Smrg    {VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PAL |      /* PAL Mode.            */
1094f29dbc25Smrg            VG_SUPPORTFLAG_ADV7171 | VG_SUPPORTFLAG_SAA7127 | VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT,    /* TV Mode.             */
1095f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
1096f29dbc25Smrg            VG_MODEFLAG_TVOUT | VG_MODEFLAG_INTERLACED |        /* Interlaced TV out. */
1097f29dbc25Smrg            VG_MODEFLAG_HALFCLOCK |    /* DotPLL = 1/2 VOP     */
1098f29dbc25Smrg            VG_MODEFLAG_INT_FLICKER,   /* Flicker Filter Out   */
1099f29dbc25Smrg            720, 576,                  /* No downscaling.      */
1100f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
1101f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
1102f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1103f29dbc25Smrg            0x02D0, 0x02D0, 0x02E4, 0x0324, 0x0360, 0x0360,     /* horiz timings   */
1104f29dbc25Smrg            0x0120, 0x0120, 0x0123, 0x0127, 0x0139, 0x0139,     /* vertical timings */
1105f29dbc25Smrg            0x0120, 0x0120, 0x0123, 0x0127, 0x0138, 0x0138,     /* Even timings */
1106f29dbc25Smrg            (27L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 27.0 MHz      */
1107f29dbc25Smrg        }
1108f29dbc25Smrg    ,
1109f29dbc25Smrg
1110f29dbc25Smrg    {VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PAL |      /* PAL Mode.            */
1111f29dbc25Smrg            VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT,        /* TV Mode. */
1112f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
1113f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC |     /* negative syncs */
1114f29dbc25Smrg            VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK,   /* Panel output */
1115f29dbc25Smrg            640, 480,                  /* No downscaling.      */
1116f29dbc25Smrg            640, 480,                  /* No mode dimensions.  */
1117f29dbc25Smrg            640, 480,                  /* 640x480 active.      */
1118f29dbc25Smrg            0, 0, 0, 0, 0,             /* 640x480 panel.       */
1119f29dbc25Smrg            0x0280, 0x0280, 0x030F, 0x034F, 0x0360, 0x0360,     /* horiz timings   */
1120f29dbc25Smrg            0x01E0, 0x01E0, 0x01F5, 0x01F7, 0x020D, 0x020D,     /* vertical timings */
1121f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings.     */
1122f29dbc25Smrg            (25L << 16) | ((1750L * 65536L) / 10000L),  /* freq = 25.175 MHz    */
1123f29dbc25Smrg        }
1124f29dbc25Smrg    ,
1125f29dbc25Smrg
1126f29dbc25Smrg    /* 800 x 600 PAL */
1127f29dbc25Smrg
1128f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
1129f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_8X6_PAL |   /* 800x600 PAL.         */
1130f29dbc25Smrg            VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT,        /* TV Mode. */
1131f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
1132f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC |     /* negative syncs */
1133f29dbc25Smrg            VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK,   /* Panel output */
1134f29dbc25Smrg            800, 600,                  /* No downscaling.      */
1135f29dbc25Smrg            800, 600,                  /* 800x600 active.      */
1136f29dbc25Smrg            800, 600,                  /* 800x600 active.      */
1137f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1138f29dbc25Smrg            0x0320, 0x0320, 0x03A7, 0x03E7, 0x03F0, 0x03F0,     /* horiz timings   */
1139f29dbc25Smrg            0x0258, 0x0258, 0x0270, 0x0272, 0x028A, 0x028A,     /* vertical timings */
1140f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings.     */
1141f29dbc25Smrg            (40L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 40.000 MHz    */
1142f29dbc25Smrg        }
1143f29dbc25Smrg    ,
1144f29dbc25Smrg
1145f29dbc25Smrg    /* 1024 x 768 PAL */
1146f29dbc25Smrg
1147f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
1148f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_10X7_PAL |  /* 1024x768 NTSC.       */
1149f29dbc25Smrg            VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT,        /* TV Mode. */
1150f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Low bandwidth mode.  */
1151f29dbc25Smrg            VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC |     /* negative syncs */
1152f29dbc25Smrg            VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK,   /* Panel output */
1153f29dbc25Smrg            1024, 768,                 /* No downscaling.      */
1154f29dbc25Smrg            1024, 768,                 /* 1024x768 active.     */
1155f29dbc25Smrg            1024, 768,                 /* 1024x768 active.     */
1156f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1157f29dbc25Smrg            0x0400, 0x0400, 0x0490, 0x04d0, 0x04e0, 0x04e0,     /* horiz timings   */
1158f29dbc25Smrg            0x0300, 0x0300, 0x031b, 0x031d, 0x0339, 0x0339,     /* vertical timings */
1159f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings.     */
1160f29dbc25Smrg            (65L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 65.00 MHz     */
1161f29dbc25Smrg        }
1162f29dbc25Smrg    ,
1163f29dbc25Smrg
1164f29dbc25Smrg    /* 720 x 480p HDTV */
1165f29dbc25Smrg
1166f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
1167f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_480P |      /* 720x480P.            */
1168f29dbc25Smrg            VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT,      /* TV Mode. */
1169f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
1170f29dbc25Smrg            VG_MODEFLAG_TVOUT,         /* Progressive TV out.  */
1171f29dbc25Smrg            720, 480,                  /* No scaling.          */
1172f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
1173f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
1174f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1175f29dbc25Smrg            0x02D0, 0x02D0, 0x02E0, 0x0328, 0x035A, 0x035A,     /* horiz timings   */
1176f29dbc25Smrg            0x01E0, 0x01E0, 0x01E1, 0x01E3, 0x020D, 0x020D,     /* vertical timings */
1177f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings.     */
1178f29dbc25Smrg            (27L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 27.0 MHz      */
1179f29dbc25Smrg        }
1180f29dbc25Smrg    ,
1181f29dbc25Smrg
1182f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
1183f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_480P |      /* 720x480P.            */
1184f29dbc25Smrg            VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT,        /* TV Mode. */
1185f29dbc25Smrg            VG_MODEFLAG_LOW_BAND |     /* Low bandwidth mode.  */
1186f29dbc25Smrg            VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK,   /* Panel output */
1187f29dbc25Smrg            720, 480,                  /* No scaling.          */
1188f29dbc25Smrg            720, 480,                  /* 720x480 active.      */
1189f29dbc25Smrg            720, 480,                  /* 720x480 panel.       */
1190f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1191f29dbc25Smrg            0x02D0, 0x02D0, 0x02E3, 0x0323, 0x035A, 0x035A,     /* horiz timings   */
1192f29dbc25Smrg            0x01E0, 0x01E0, 0x01E4, 0x01EA, 0x020D, 0x020D,     /* vertical timings */
1193f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings.     */
1194f29dbc25Smrg            (27L << 16) | ((0000L * 65536L) / 10000L),  /* freq = 27.0 MHz      */
1195f29dbc25Smrg        }
1196f29dbc25Smrg    ,
1197f29dbc25Smrg
1198f29dbc25Smrg    /* 1280x720p HDTV */
1199f29dbc25Smrg
1200f29dbc25Smrg    {VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_720P |     /* 1280x720P            */
1201f29dbc25Smrg            VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT,      /* TV Mode. */
1202f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
1203f29dbc25Smrg            VG_MODEFLAG_TVOUT,         /* Progressive TV out   */
1204f29dbc25Smrg            1280, 720,                 /* No scaling.          */
1205f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
1206f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
1207f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1208f29dbc25Smrg            0x0500, 0x0500, 0x0546, 0x0596, 0x0672, 0x0672,     /* horiz timings   */
1209f29dbc25Smrg            0x02D0, 0x02D0, 0x02D3, 0x02D8, 0x02EE, 0x02EE,     /* vertical timings */
1210f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* even timings         */
1211f29dbc25Smrg            (74L << 16) | ((2500L * 65536L) / 10000L),  /* freq = 74.25 MHz     */
1212f29dbc25Smrg        }
1213f29dbc25Smrg    ,
1214f29dbc25Smrg
1215f29dbc25Smrg    {VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_720P |     /* 1280x720P            */
1216f29dbc25Smrg            VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT,        /* TV Mode. */
1217f29dbc25Smrg            VG_MODEFLAG_AVG_BAND |     /* Avg bandwidth mode.  */
1218f29dbc25Smrg            VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK,   /* Panel output */
1219f29dbc25Smrg            1280, 720,                 /* No scaling.          */
1220f29dbc25Smrg            1280, 720,                 /* 1280x720 active.     */
1221f29dbc25Smrg            1280, 720,                 /* 1280x720 panel.      */
1222f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1223f29dbc25Smrg            0x0500, 0x0500, 0x0547, 0x0597, 0x0672, 0x0672,     /* horiz timings   */
1224f29dbc25Smrg            0x02D0, 0x02D0, 0x02D4, 0x02D9, 0x02EE, 0x02EE,     /* vertical timings */
1225f29dbc25Smrg            0, 0, 0, 0, 0, 0,          /* No even timings.     */
1226f29dbc25Smrg            (74L << 16) | ((2500L * 65536L) / 10000L),  /* freq = 74.25 MHz     */
1227f29dbc25Smrg        }
1228f29dbc25Smrg    ,
1229f29dbc25Smrg
1230f29dbc25Smrg    /* 1920x1080i HDTV */
1231f29dbc25Smrg
1232f29dbc25Smrg    {VG_SUPPORTFLAG_60HZ |             /* refresh rate = 60    */
1233f29dbc25Smrg            VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_1080I |     /* 1920x1080i Mode.     */
1234f29dbc25Smrg            VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_FS454 |
1235f29dbc25Smrg            VG_SUPPORTFLAG_TVOUT,
1236f29dbc25Smrg            VG_MODEFLAG_HIGH_BAND |    /* High bandwidth mode. */
1237f29dbc25Smrg            VG_MODEFLAG_INTERLACED | VG_MODEFLAG_TVOUT |        /* Interlaced TV out */
1238f29dbc25Smrg            /* Interlaced addressing */
1239f29dbc25Smrg            VG_MODEFLAG_INT_ADDRESS | VG_MODEFLAG_INVERT_SHFCLK,
1240f29dbc25Smrg            1920, 1080,                /* 2:1 downscaling.     */
1241f29dbc25Smrg            0, 0,                      /* No mode dimensions.  */
1242f29dbc25Smrg            0, 0,                      /* No panel dimensions. */
1243f29dbc25Smrg            0, 0, 0, 0, 0,             /* No panel registers   */
1244f29dbc25Smrg            0x0780, 0x0780, 0x07AD, 0x0805, 0x0898, 0x0898,     /* horiz timings   */
1245f29dbc25Smrg            0x021C, 0x021C, 0x021E, 0x0226, 0x0233, 0x0233,     /* vertical timings */
1246f29dbc25Smrg            0x021C, 0x021C, 0x021E, 0x0226, 0x0232, 0x0232,     /*even field timings */
1247f29dbc25Smrg            (74L << 16) | ((2500L * 65536L) / 10000L),  /* freq = 74.25 MHz     */
1248f29dbc25Smrg        }
1249f29dbc25Smrg    ,
1250f29dbc25Smrg};
1251f29dbc25Smrg
1252f29dbc25Smrg#define NUM_CIMARRON_DISPLAY_MODES sizeof(CimarronDisplayModes) / \
1253f29dbc25Smrg									sizeof(VG_DISPLAY_MODE)
1254f29dbc25Smrg
1255f29dbc25Smrg/*-----------------------------------*/
1256f29dbc25Smrg/*  PREDEFINED PLL FREQUENCIES       */
1257f29dbc25Smrg/*-----------------------------------*/
1258f29dbc25Smrg
1259f29dbc25Smrgstatic const PLL_FREQUENCY CimarronPLLFrequencies[] = {
1260f29dbc25Smrg    {0x000031AC, (24L << 16) | ((9230L * 65536L) / 10000L)}
1261f29dbc25Smrg    ,                                  /* 24.9230, - 4,27,13 */
1262f29dbc25Smrg    {0x0000215D, (25L << 16) | ((1750L * 65536L) / 10000L)}
1263f29dbc25Smrg    ,                                  /* 25.1750, - 3,22,14 */
1264f29dbc25Smrg    {0x00001087, (27L << 16) | ((0000L * 65536L) / 10000L)}
1265f29dbc25Smrg    ,                                  /* 27.0000, - 2, 9, 8 */
1266f29dbc25Smrg    {0x0000216C, (28L << 16) | ((3220L * 65536L) / 10000L)}
1267f29dbc25Smrg    ,                                  /* 28.3220, - 3,23,13 */
1268f29dbc25Smrg    {0x0000218D, (28L << 16) | ((5600L * 65536L) / 10000L)}
1269f29dbc25Smrg    ,                                  /* 28.5600, - 3,25,14 */
1270f29dbc25Smrg    {0x000010C9, (31L << 16) | ((2000L * 65536L) / 10000L)}
1271f29dbc25Smrg    ,                                  /* 31.2000, - 2,13,10 */
1272f29dbc25Smrg    {0x00003147, (31L << 16) | ((5000L * 65536L) / 10000L)}
1273f29dbc25Smrg    ,                                  /* 31.5000, - 4,21, 8 */
1274f29dbc25Smrg    {0x000010A7, (33L << 16) | ((320L * 65536L) / 10000L)}
1275f29dbc25Smrg    ,                                  /* 33.0320, - 2,11, 8 */
1276f29dbc25Smrg    {0x00002159, (35L << 16) | ((1120L * 65536L) / 10000L)}
1277f29dbc25Smrg    ,                                  /* 35.1120, - 3,22,10 */
1278f29dbc25Smrg    {0x00004249, (35L << 16) | ((5000L * 65536L) / 10000L)}
1279f29dbc25Smrg    ,                                  /* 35.5000, - 5,37,10 */
1280f29dbc25Smrg    {0x00000057, (36L << 16) | ((0000L * 65536L) / 10000L)}
1281f29dbc25Smrg    ,                                  /* 36.0000, - 1, 6, 8 */
1282f29dbc25Smrg    {0x0000219A, (37L << 16) | ((8890L * 65536L) / 10000L)}
1283f29dbc25Smrg    ,                                  /* 37.8890, - 3,26,11 */
1284f29dbc25Smrg    {0x00002158, (39L << 16) | ((1680L * 65536L) / 10000L)}
1285f29dbc25Smrg    ,                                  /* 39.1680, - 3,22, 9 */
1286f29dbc25Smrg    {0x00000045, (40L << 16) | ((0000L * 65536L) / 10000L)}
1287f29dbc25Smrg    ,                                  /* 40.0000, - 1, 5, 6 */
1288f29dbc25Smrg    {0x00000089, (43L << 16) | ((1630L * 65536L) / 10000L)}
1289f29dbc25Smrg    ,                                  /* 43.1630, - 1, 9,10 */
1290f29dbc25Smrg    {0x000010E7, (44L << 16) | ((9000L * 65536L) / 10000L)}
1291f29dbc25Smrg    ,                                  /* 44.9000, - 2,15, 8 */
1292f29dbc25Smrg    {0x00002136, (45L << 16) | ((7200L * 65536L) / 10000L)}
1293f29dbc25Smrg    ,                                  /* 45.7200, - 3,20, 7 */
1294f29dbc25Smrg    {0x00003207, (49L << 16) | ((5000L * 65536L) / 10000L)}
1295f29dbc25Smrg    ,                                  /* 49.5000, - 4,33, 8 */
1296f29dbc25Smrg    {0x00002187, (50L << 16) | ((0000L * 65536L) / 10000L)}
1297f29dbc25Smrg    ,                                  /* 50.0000, - 3,25, 8 */
1298f29dbc25Smrg    {0x00004286, (56L << 16) | ((2500L * 65536L) / 10000L)}
1299f29dbc25Smrg    ,                                  /* 56.2500, - 5,41, 7 */
1300f29dbc25Smrg    {0x000010E5, (60L << 16) | ((650L * 65536L) / 10000L)}
1301f29dbc25Smrg    ,                                  /* 60.0650, - 2,15, 6 */
1302f29dbc25Smrg    {0x00004214, (65L << 16) | ((0000L * 65536L) / 10000L)}
1303f29dbc25Smrg    ,                                  /* 65.0000, - 5,34, 5 */
1304f29dbc25Smrg    {0x00001105, (68L << 16) | ((1790L * 65536L) / 10000L)}
1305f29dbc25Smrg    ,                                  /* 68.1790, - 2,17, 6 */
1306f29dbc25Smrg    {0x000031E4, (74L << 16) | ((2500L * 65536L) / 10000L)}
1307f29dbc25Smrg    ,                                  /* 74.2500, - 4,31, 5 */
1308f29dbc25Smrg    {0x00003183, (75L << 16) | ((0000L * 65536L) / 10000L)}
1309f29dbc25Smrg    ,                                  /* 75.0000, - 4,25, 4 */
1310f29dbc25Smrg    {0x00004284, (78L << 16) | ((7500L * 65536L) / 10000L)}
1311f29dbc25Smrg    ,                                  /* 78.7500, - 5,41, 5 */
1312f29dbc25Smrg    {0x00001104, (81L << 16) | ((6000L * 65536L) / 10000L)}
1313f29dbc25Smrg    ,                                  /* 81.6000, - 2,17, 5 */
1314f29dbc25Smrg    {0x00006363, (94L << 16) | ((5000L * 65536L) / 10000L)}
1315f29dbc25Smrg    ,                                  /* 94.5000, - 7,55, 4 */
1316f29dbc25Smrg    {0x00005303, (97L << 16) | ((5200L * 65536L) / 10000L)}
1317f29dbc25Smrg    ,                                  /* 97.5200, - 6,49, 4 */
1318f29dbc25Smrg    {0x00002183, (100L << 16) | ((1870L * 65536L) / 10000L)}
1319f29dbc25Smrg    ,                                  /* 100.187, - 3,25, 4 */
1320f29dbc25Smrg    {0x00002122, (101L << 16) | ((4200L * 65536L) / 10000L)}
1321f29dbc25Smrg    ,                                  /* 101.420, - 3,19, 3 */
1322f29dbc25Smrg    {0x00001081, (108L << 16) | ((0000L * 65536L) / 10000L)}
1323f29dbc25Smrg    ,                                  /* 108.00,  - 2, 9, 2 */
1324f29dbc25Smrg    {0x00006201, (113L << 16) | ((3100L * 65536L) / 10000L)}
1325f29dbc25Smrg    ,                                  /* 113.31,  - 7,33, 2 */
1326f29dbc25Smrg    {0x00000041, (119L << 16) | ((6500L * 65536L) / 10000L)}
1327f29dbc25Smrg    ,                                  /* 119.65,  - 1, 5, 2 */
1328f29dbc25Smrg    {0x000041A1, (129L << 16) | ((6000L * 65536L) / 10000L)}
1329f29dbc25Smrg    ,                                  /* 129.60,  - 5,27, 2 */
1330f29dbc25Smrg    {0x00002182, (133L << 16) | ((5000L * 65536L) / 10000L)}
1331f29dbc25Smrg    ,                                  /* 133.50,  - 3,25, 3 */
1332f29dbc25Smrg    {0x000041B1, (135L << 16) | ((0000L * 65536L) / 10000L)}
1333f29dbc25Smrg    ,                                  /* 135.00,  - 5,28, 2 */
1334f29dbc25Smrg    {0x00000051, (144L << 16) | ((0000L * 65536L) / 10000L)}
1335f29dbc25Smrg    ,                                  /* 144.00,  - 1, 6, 2 */
1336f29dbc25Smrg    {0x000041E1, (148L << 16) | ((5000L * 65536L) / 10000L)}
1337f29dbc25Smrg    ,                                  /* 148.50,  - 5,31, 2 */
1338f29dbc25Smrg    {0x000062D1, (157L << 16) | ((5000L * 65536L) / 10000L)}
1339f29dbc25Smrg    ,                                  /* 157.50,  - 7,46, 2 */
1340f29dbc25Smrg    {0x000031A1, (162L << 16) | ((0000L * 65536L) / 10000L)}
1341f29dbc25Smrg    ,                                  /* 162.00,  - 4,27, 2 */
1342f29dbc25Smrg    {0x00000061, (169L << 16) | ((2030L * 65536L) / 10000L)}
1343f29dbc25Smrg    ,                                  /* 169.203, - 1, 7, 2 */
1344f29dbc25Smrg    {0x00004231, (172L << 16) | ((8000L * 65536L) / 10000L)}
1345f29dbc25Smrg    ,                                  /* 172.800, - 5,36, 2 */
1346f29dbc25Smrg    {0x00002151, (175L << 16) | ((5000L * 65536L) / 10000L)}
1347f29dbc25Smrg    ,                                  /* 175.50,  - 3,22, 2 */
1348f29dbc25Smrg    {0x000052E1, (189L << 16) | ((0000L * 65536L) / 10000L)}
1349f29dbc25Smrg    ,                                  /* 189.00,  - 6,47, 2 */
1350f29dbc25Smrg    {0x00000071, (192L << 16) | ((0000L * 65536L) / 10000L)}
1351f29dbc25Smrg    ,                                  /* 192.00,  - 1, 8, 2 */
1352f29dbc25Smrg    {0x00003201, (198L << 16) | ((0000L * 65536L) / 10000L)}
1353f29dbc25Smrg    ,                                  /* 198.00,  - 4,33, 2 */
1354f29dbc25Smrg    {0x00004291, (202L << 16) | ((5000L * 65536L) / 10000L)}
1355f29dbc25Smrg    ,                                  /* 202.50,  - 5,42, 2 */
1356f29dbc25Smrg    {0x00001101, (204L << 16) | ((7500L * 65536L) / 10000L)}
1357f29dbc25Smrg    ,                                  /* 204.75,  - 2,17, 2 */
1358f29dbc25Smrg    {0x00007481, (218L << 16) | ((2500L * 65536L) / 10000L)}
1359f29dbc25Smrg    ,                                  /* 218.25,  - 8,73, 2 */
1360f29dbc25Smrg    {0x00004170, (229L << 16) | ((5000L * 65536L) / 10000L)}
1361f29dbc25Smrg    ,                                  /* 229.50,  - 5,24, 1 */
1362f29dbc25Smrg    {0x00006210, (234L << 16) | ((0000L * 65536L) / 10000L)}
1363f29dbc25Smrg    ,                                  /* 234.00,  - 7,34, 1 */
1364f29dbc25Smrg    {0x00003140, (251L << 16) | ((1820L * 65536L) / 10000L)}
1365f29dbc25Smrg    ,                                  /* 251.182, - 4,21, 1 */
1366f29dbc25Smrg    {0x00006250, (261L << 16) | ((0000L * 65536L) / 10000L)}
1367f29dbc25Smrg    ,                                  /* 261.00,  - 7,38, 1 */
1368f29dbc25Smrg    {0x000041C0, (278L << 16) | ((4000L * 65536L) / 10000L)}
1369f29dbc25Smrg    ,                                  /* 278.40,  - 5,29, 1 */
1370f29dbc25Smrg    {0x00005220, (280L << 16) | ((6400L * 65536L) / 10000L)}
1371f29dbc25Smrg    ,                                  /* 280.64,  - 6,35, 1 */
1372f29dbc25Smrg    {0x00000050, (288L << 16) | ((0000L * 65536L) / 10000L)}
1373f29dbc25Smrg    ,                                  /* 288.00,  - 1, 6, 1 */
1374f29dbc25Smrg    {0x000041E0, (297L << 16) | ((0000L * 65536L) / 10000L)}
1375f29dbc25Smrg    ,                                  /* 297.00,  - 5,31, 1 */
1376f29dbc25Smrg    {0x00002130, (320L << 16) | ((2070L * 65536L) / 10000L)}
1377f29dbc25Smrg    ,                                  /* 320.207, - 3,20, 1 */
1378f29dbc25Smrg    {0x00006310, (341L << 16) | ((3490L * 65536L) / 10000L)}
1379f29dbc25Smrg    /* 341.349, - 7,50, 1 */
1380f29dbc25Smrg};
1381f29dbc25Smrg
1382f29dbc25Smrg#define NUM_CIMARRON_PLL_FREQUENCIES sizeof(CimarronPLLFrequencies) / \
1383f29dbc25Smrg										sizeof(PLL_FREQUENCY)
1384f29dbc25Smrg
1385f29dbc25Smrg/*-----------------------------------*/
1386f29dbc25Smrg/*  PREDEFINED FILTER COEFFICIENTS   */
1387f29dbc25Smrg/*-----------------------------------*/
1388f29dbc25Smrg
1389f29dbc25Smrgstatic const unsigned long CimarronHorizontalGraphicsFilter[][2] = {
1390f29dbc25Smrg    {0x1284A7D5, 0x000017D5},          /*  -43,  297,  296,  -43,    5  */
1391f29dbc25Smrg    {0x12A497D7, 0x000013D6},          /*  -41,  293,  298,  -42,    4  */
1392f29dbc25Smrg    {0x12D48BD7, 0x000013D6},          /*  -41,  290,  301,  -42,    4  */
1393f29dbc25Smrg    {0x13147FD7, 0x000013D5},          /*  -41,  287,  305,  -43,    4  */
1394f29dbc25Smrg    {0x133473D8, 0x000013D5},          /*  -40,  284,  307,  -43,    4  */
1395f29dbc25Smrg    {0x136467D8, 0x000013D5},          /*  -40,  281,  310,  -43,    4  */
1396f29dbc25Smrg    {0x13945FD8, 0x000013D4},          /*  -40,  279,  313,  -44,    4  */
1397f29dbc25Smrg    {0x13B453D9, 0x000013D4},          /*  -39,  276,  315,  -44,    4  */
1398f29dbc25Smrg    {0x13E447D9, 0x000013D4},          /*  -39,  273,  318,  -44,    4  */
1399f29dbc25Smrg    {0x14143BDA, 0x000013D3},          /*  -38,  270,  321,  -45,    4  */
1400f29dbc25Smrg    {0x143433DA, 0x000013D3},          /*  -38,  268,  323,  -45,    4  */
1401f29dbc25Smrg    {0x146427DA, 0x000013D3},          /*  -38,  265,  326,  -45,    4  */
1402f29dbc25Smrg    {0x14941BDB, 0x000013D2},          /*  -37,  262,  329,  -46,    4  */
1403f29dbc25Smrg    {0x14C40FDB, 0x000013D2},          /*  -37,  259,  332,  -46,    4  */
1404f29dbc25Smrg    {0x14F407DA, 0x000017D1},          /*  -38,  257,  335,  -47,    5  */
1405f29dbc25Smrg    {0x1503FBDC, 0x000013D2},          /*  -36,  254,  336,  -46,    4  */
1406f29dbc25Smrg    {0x1543F3DB, 0x000017D0},          /*  -37,  252,  340,  -48,    5  */
1407f29dbc25Smrg    {0x1563E3DD, 0x000013D1},          /*  -35,  248,  342,  -47,    4  */
1408f29dbc25Smrg    {0x1593D7DD, 0x000013D1},          /*  -35,  245,  345,  -47,    4  */
1409f29dbc25Smrg    {0x15B3CFDD, 0x000013D1},          /*  -35,  243,  347,  -47,    4  */
1410f29dbc25Smrg    {0x15E3C3DE, 0x000013D0},          /*  -34,  240,  350,  -48,    4  */
1411f29dbc25Smrg    {0x1613B7DE, 0x000013D0},          /*  -34,  237,  353,  -48,    4  */
1412f29dbc25Smrg    {0x1633ABDF, 0x000013D0},          /*  -33,  234,  355,  -48,    4  */
1413f29dbc25Smrg    {0x16639FDF, 0x000013D0},          /*  -33,  231,  358,  -48,    4  */
1414f29dbc25Smrg    {0x167397E0, 0x000013D0},          /*  -32,  229,  359,  -48,    4  */
1415f29dbc25Smrg    {0x16B38BE0, 0x000013CF},          /*  -32,  226,  363,  -49,    4  */
1416f29dbc25Smrg    {0x16E383DF, 0x000017CE},          /*  -33,  224,  366,  -50,    5  */
1417f29dbc25Smrg    {0x170373E1, 0x000013CF},          /*  -31,  220,  368,  -49,    4  */
1418f29dbc25Smrg    {0x17236BE1, 0x000013CF},          /*  -31,  218,  370,  -49,    4  */
1419f29dbc25Smrg    {0x17435FE2, 0x000013CF},          /*  -30,  215,  372,  -49,    4  */
1420f29dbc25Smrg    {0x177353E2, 0x000013CF},          /*  -30,  212,  375,  -49,    4  */
1421f29dbc25Smrg    {0x17B34BE1, 0x000017CD},          /*  -31,  210,  379,  -51,    5  */
1422f29dbc25Smrg    {0x17C33FE3, 0x000013CE},          /*  -29,  207,  380,  -50,    4  */
1423f29dbc25Smrg    {0x17F333E3, 0x000013CE},          /*  -29,  204,  383,  -50,    4  */
1424f29dbc25Smrg    {0x181327E4, 0x000013CE},          /*  -28,  201,  385,  -50,    4  */
1425f29dbc25Smrg    {0x18431FE3, 0x000017CD},          /*  -29,  199,  388,  -51,    5  */
1426f29dbc25Smrg    {0x186313E4, 0x000013CE},          /*  -28,  196,  390,  -50,    4  */
1427f29dbc25Smrg    {0x188307E5, 0x000013CE},          /*  -27,  193,  392,  -50,    4  */
1428f29dbc25Smrg    {0x18B2FBE5, 0x000013CE},          /*  -27,  190,  395,  -50,    4  */
1429f29dbc25Smrg    {0x18C2F3E6, 0x000013CE},          /*  -26,  188,  396,  -50,    4  */
1430f29dbc25Smrg    {0x18F2E7E6, 0x000013CE},          /*  -26,  185,  399,  -50,    4  */
1431f29dbc25Smrg    {0x1912DBE7, 0x000013CE},          /*  -25,  182,  401,  -50,    4  */
1432f29dbc25Smrg    {0x1952D3E6, 0x000017CC},          /*  -26,  180,  405,  -52,    5  */
1433f29dbc25Smrg    {0x1972CBE6, 0x000017CC},          /*  -26,  178,  407,  -52,    5  */
1434f29dbc25Smrg    {0x1992BFE7, 0x000017CC},          /*  -25,  175,  409,  -52,    5  */
1435f29dbc25Smrg    {0x19C2B3E7, 0x000017CC},          /*  -25,  172,  412,  -52,    5  */
1436f29dbc25Smrg    {0x19D2A7E9, 0x000013CD},          /*  -23,  169,  413,  -51,    4  */
1437f29dbc25Smrg    {0x1A029FE8, 0x000017CC},          /*  -24,  167,  416,  -52,    5  */
1438f29dbc25Smrg    {0x1A1293E9, 0x000013CE},          /*  -23,  164,  417,  -50,    4  */
1439f29dbc25Smrg    {0x1A3287EA, 0x000013CE},          /*  -22,  161,  419,  -50,    4  */
1440f29dbc25Smrg    {0x1A627FE9, 0x000017CD},          /*  -23,  159,  422,  -51,    5  */
1441f29dbc25Smrg    {0x1A7273EB, 0x000013CE},          /*  -21,  156,  423,  -50,    4  */
1442f29dbc25Smrg    {0x1AA267EB, 0x000013CE},          /*  -21,  153,  426,  -50,    4  */
1443f29dbc25Smrg    {0x1AC25FEB, 0x000013CE},          /*  -21,  151,  428,  -50,    4  */
1444f29dbc25Smrg    {0x1AE253EC, 0x000013CE},          /*  -20,  148,  430,  -50,    4  */
1445f29dbc25Smrg    {0x1B124BEB, 0x000017CD},          /*  -21,  146,  433,  -51,    5  */
1446f29dbc25Smrg    {0x1B223FED, 0x000013CE},          /*  -19,  143,  434,  -50,    4  */
1447f29dbc25Smrg    {0x1B5237EC, 0x000017CD},          /*  -20,  141,  437,  -51,    5  */
1448f29dbc25Smrg    {0x1B622BED, 0x000013CF},          /*  -19,  138,  438,  -49,    4  */
1449f29dbc25Smrg    {0x1B821FEE, 0x000013CF},          /*  -18,  135,  440,  -49,    4  */
1450f29dbc25Smrg    {0x1BA217EE, 0x000013CF},          /*  -18,  133,  442,  -49,    4  */
1451f29dbc25Smrg    {0x1BC20BEF, 0x000013CF},          /*  -17,  130,  444,  -49,    4  */
1452f29dbc25Smrg    {0x1BE203EF, 0x000013CF},          /*  -17,  128,  446,  -49,    4  */
1453f29dbc25Smrg    {0x1C01FBEE, 0x000017CF},          /*  -18,  126,  448,  -49,    5  */
1454f29dbc25Smrg    {0x1C11EFF0, 0x000013D0},          /*  -16,  123,  449,  -48,    4  */
1455f29dbc25Smrg    {0x1C41E7EF, 0x000017CF},          /*  -17,  121,  452,  -49,    5  */
1456f29dbc25Smrg    {0x1C61DFEF, 0x000017CF},          /*  -17,  119,  454,  -49,    5  */
1457f29dbc25Smrg    {0x1C61D3F1, 0x000013D1},          /*  -15,  116,  454,  -47,    4  */
1458f29dbc25Smrg    {0x1C91CBF0, 0x000017D0},          /*  -16,  114,  457,  -48,    5  */
1459f29dbc25Smrg    {0x1CA1BFF2, 0x000013D1},          /*  -14,  111,  458,  -47,    4  */
1460f29dbc25Smrg    {0x1CC1B3F2, 0x000013D2},          /*  -14,  108,  460,  -46,    4  */
1461f29dbc25Smrg    {0x1CE1AFF1, 0x000017D1},          /*  -15,  107,  462,  -47,    5  */
1462f29dbc25Smrg    {0x1CF1A3F3, 0x000013D2},          /*  -13,  104,  463,  -46,    4  */
1463f29dbc25Smrg    {0x1D1197F3, 0x000013D3},          /*  -13,  101,  465,  -45,    4  */
1464f29dbc25Smrg    {0x1D3197F2, 0x000013D2},          /*  -14,  101,  467,  -46,    4  */
1465f29dbc25Smrg    {0x1D518BF3, 0x000013D2},          /*  -13,   98,  469,  -46,    4  */
1466f29dbc25Smrg    {0x1D6183F3, 0x000013D3},          /*  -13,   96,  470,  -45,    4  */
1467f29dbc25Smrg    {0x1D817BF3, 0x000013D3},          /*  -13,   94,  472,  -45,    4  */
1468f29dbc25Smrg    {0x1D916FF4, 0x000013D4},          /*  -12,   91,  473,  -44,    4  */
1469f29dbc25Smrg    {0x1DB167F4, 0x000013D4},          /*  -12,   89,  475,  -44,    4  */
1470f29dbc25Smrg    {0x1DC15FF4, 0x000013D5},          /*  -12,   87,  476,  -43,    4  */
1471f29dbc25Smrg    {0x1DE153F5, 0x000013D5},          /*  -11,   84,  478,  -43,    4  */
1472f29dbc25Smrg    {0x1DF14BF5, 0x000013D6},          /*  -11,   82,  479,  -42,    4  */
1473f29dbc25Smrg    {0x1E1143F5, 0x000013D6},          /*  -11,   80,  481,  -42,    4  */
1474f29dbc25Smrg    {0x1E1137F7, 0x00000FD8},          /*   -9,   77,  481,  -40,    3  */
1475f29dbc25Smrg    {0x1E3133F6, 0x000013D7},          /*  -10,   76,  483,  -41,    4  */
1476f29dbc25Smrg    {0x1E412BF6, 0x000013D8},          /*  -10,   74,  484,  -40,    4  */
1477f29dbc25Smrg    {0x1E611FF7, 0x000013D8},          /*   -9,   71,  486,  -40,    4  */
1478f29dbc25Smrg    {0x1E7117F7, 0x000013D9},          /*   -9,   69,  487,  -39,    4  */
1479f29dbc25Smrg    {0x1E810FF7, 0x000013DA},          /*   -9,   67,  488,  -38,    4  */
1480f29dbc25Smrg    {0x1E9107F8, 0x000013DA},          /*   -8,   65,  489,  -38,    4  */
1481f29dbc25Smrg    {0x1EA0FFF8, 0x000013DB},          /*   -8,   63,  490,  -37,    4  */
1482f29dbc25Smrg    {0x1EB0F3F9, 0x00000FDD},          /*   -7,   60,  491,  -35,    3  */
1483f29dbc25Smrg    {0x1ED0EFF8, 0x000013DC},          /*   -8,   59,  493,  -36,    4  */
1484f29dbc25Smrg    {0x1EE0E7F9, 0x00000FDD},          /*   -7,   57,  494,  -35,    3  */
1485f29dbc25Smrg    {0x1EF0DFF9, 0x00000FDE},          /*   -7,   55,  495,  -34,    3  */
1486f29dbc25Smrg    {0x1F00D7F9, 0x00000FDF},          /*   -7,   53,  496,  -33,    3  */
1487f29dbc25Smrg    {0x1F10CFFA, 0x00000FDF},          /*   -6,   51,  497,  -33,    3  */
1488f29dbc25Smrg    {0x1F20C7FA, 0x00000FE0},          /*   -6,   49,  498,  -32,    3  */
1489f29dbc25Smrg    {0x1F20C3FA, 0x00000FE1},          /*   -6,   48,  498,  -31,    3  */
1490f29dbc25Smrg    {0x1F30BBFA, 0x00000FE2},          /*   -6,   46,  499,  -30,    3  */
1491f29dbc25Smrg    {0x1F40AFFB, 0x00000FE3},          /*   -5,   43,  500,  -29,    3  */
1492f29dbc25Smrg    {0x1F50A7FB, 0x00000FE4},          /*   -5,   41,  501,  -28,    3  */
1493f29dbc25Smrg    {0x1F60A3FB, 0x00000FE4},          /*   -5,   40,  502,  -28,    3  */
1494f29dbc25Smrg    {0x1F709BFB, 0x00000FE5},          /*   -5,   38,  503,  -27,    3  */
1495f29dbc25Smrg    {0x1F7093FC, 0x00000FE6},          /*   -4,   36,  503,  -26,    3  */
1496f29dbc25Smrg    {0x1F808FFC, 0x00000BE7},          /*   -4,   35,  504,  -25,    2  */
1497f29dbc25Smrg    {0x1F9087FC, 0x00000BE8},          /*   -4,   33,  505,  -24,    2  */
1498f29dbc25Smrg    {0x1F9083FC, 0x00000BE9},          /*   -4,   32,  505,  -23,    2  */
1499f29dbc25Smrg    {0x1FA077FD, 0x00000BEA},          /*   -3,   29,  506,  -22,    2  */
1500f29dbc25Smrg    {0x1FA073FD, 0x00000BEB},          /*   -3,   28,  506,  -21,    2  */
1501f29dbc25Smrg    {0x1FB06BFD, 0x00000BEC},          /*   -3,   26,  507,  -20,    2  */
1502f29dbc25Smrg    {0x1FC063FD, 0x00000BED},          /*   -3,   24,  508,  -19,    2  */
1503f29dbc25Smrg    {0x1FC05BFE, 0x00000BEE},          /*   -2,   22,  508,  -18,    2  */
1504f29dbc25Smrg    {0x1FC057FE, 0x00000BEF},          /*   -2,   21,  508,  -17,    2  */
1505f29dbc25Smrg    {0x1FD053FE, 0x000007F0},          /*   -2,   20,  509,  -16,    1  */
1506f29dbc25Smrg    {0x1FD04BFE, 0x000007F2},          /*   -2,   18,  509,  -14,    1  */
1507f29dbc25Smrg    {0x1FE043FE, 0x000007F3},          /*   -2,   16,  510,  -13,    1  */
1508f29dbc25Smrg    {0x1FE03BFF, 0x000007F4},          /*   -1,   14,  510,  -12,    1  */
1509f29dbc25Smrg    {0x1FE037FF, 0x000007F5},          /*   -1,   13,  510,  -11,    1  */
1510f29dbc25Smrg    {0x1FE033FF, 0x000007F6},          /*   -1,   12,  510,  -10,    1  */
1511f29dbc25Smrg    {0x1FF02BFF, 0x000007F7},          /*   -1,   10,  511,   -9,    1  */
1512f29dbc25Smrg    {0x1FF027FF, 0x000003F9},          /*   -1,    9,  511,   -7,    0  */
1513f29dbc25Smrg    {0x1FF01C00, 0x000003FA},          /*    0,    7,  511,   -6,    0  */
1514f29dbc25Smrg    {0x1FF01800, 0x000003FB},          /*    0,    6,  511,   -5,    0  */
1515f29dbc25Smrg    {0x1FF01400, 0x000003FC},          /*    0,    5,  511,   -4,    0  */
1516f29dbc25Smrg    {0x1FF00C00, 0x000003FE},          /*    0,    3,  511,   -2,    0  */
1517f29dbc25Smrg    {0x1FF00800, 0x000003FF},          /*    0,    2,  511,   -1,    0  */
1518f29dbc25Smrg    {0x1FF00400, 0x00000000},          /*    0,    1,  511,    0,    0  */
1519f29dbc25Smrg    {0x1FFFFC00, 0x00000002},          /*    0,   -1,  511,    2,    0  */
1520f29dbc25Smrg    {0x1FFFF800, 0x00000003},          /*    0,   -2,  511,    3,    0  */
1521f29dbc25Smrg    {0x1FFFF000, 0x00000005},          /*    0,   -4,  511,    5,    0  */
1522f29dbc25Smrg    {0x1FFFEC00, 0x00000006},          /*    0,   -5,  511,    6,    0  */
1523f29dbc25Smrg    {0x1FFFE800, 0x00000007},          /*    0,   -6,  511,    7,    0  */
1524f29dbc25Smrg    {0x1FFFE400, 0x000FFC09},          /*    0,   -7,  511,    9,   -1  */
1525f29dbc25Smrg    {0x1FFFDC01, 0x000FFC0A},          /*    1,   -9,  511,   10,   -1  */
1526f29dbc25Smrg    {0x1FEFDC01, 0x000FFC0B},          /*    1,   -9,  510,   11,   -1  */
1527f29dbc25Smrg    {0x1FEFD401, 0x000FFC0D},          /*    1,  -11,  510,   13,   -1  */
1528f29dbc25Smrg    {0x1FEFD001, 0x000FFC0E},          /*    1,  -12,  510,   14,   -1  */
1529f29dbc25Smrg    {0x1FEFCC01, 0x000FF810},          /*    1,  -13,  510,   16,   -2  */
1530f29dbc25Smrg    {0x1FDFCC01, 0x000FF811},          /*    1,  -13,  509,   17,   -2  */
1531f29dbc25Smrg    {0x1FDFC401, 0x000FF813},          /*    1,  -15,  509,   19,   -2  */
1532f29dbc25Smrg    {0x1FCFC002, 0x000FF814},          /*    2,  -16,  508,   20,   -2  */
1533f29dbc25Smrg    {0x1FCFB802, 0x000FF816},          /*    2,  -18,  508,   22,   -2  */
1534f29dbc25Smrg    {0x1FCFB402, 0x000FF418},          /*    2,  -19,  508,   24,   -3  */
1535f29dbc25Smrg    {0x1FBFB402, 0x000FF419},          /*    2,  -19,  507,   25,   -3  */
1536f29dbc25Smrg    {0x1FAFB002, 0x000FF41B},          /*    2,  -20,  506,   27,   -3  */
1537f29dbc25Smrg    {0x1FAFA802, 0x000FF41D},          /*    2,  -22,  506,   29,   -3  */
1538f29dbc25Smrg    {0x1F9FA802, 0x000FF01F},          /*    2,  -22,  505,   31,   -4  */
1539f29dbc25Smrg    {0x1F9FA402, 0x000FF020},          /*    2,  -23,  505,   32,   -4  */
1540f29dbc25Smrg    {0x1F8FA002, 0x000FF022},          /*    2,  -24,  504,   34,   -4  */
1541f29dbc25Smrg    {0x1F7F9803, 0x000FF024},          /*    3,  -26,  503,   36,   -4  */
1542f29dbc25Smrg    {0x1F7F9403, 0x000FEC26},          /*    3,  -27,  503,   38,   -5  */
1543f29dbc25Smrg    {0x1F6F9003, 0x000FEC28},          /*    3,  -28,  502,   40,   -5  */
1544f29dbc25Smrg    {0x1F5F9003, 0x000FEC29},          /*    3,  -28,  501,   41,   -5  */
1545f29dbc25Smrg    {0x1F4F8C03, 0x000FEC2B},          /*    3,  -29,  500,   43,   -5  */
1546f29dbc25Smrg    {0x1F3F8C03, 0x000FE82D},          /*    3,  -29,  499,   45,   -6  */
1547f29dbc25Smrg    {0x1F2F8803, 0x000FE82F},          /*    3,  -30,  498,   47,   -6  */
1548f29dbc25Smrg    {0x1F2F8003, 0x000FE831},          /*    3,  -32,  498,   49,   -6  */
1549f29dbc25Smrg    {0x1F1F7C03, 0x000FE833},          /*    3,  -33,  497,   51,   -6  */
1550f29dbc25Smrg    {0x1F0F7C03, 0x000FE435},          /*    3,  -33,  496,   53,   -7  */
1551f29dbc25Smrg    {0x1EFF7803, 0x000FE437},          /*    3,  -34,  495,   55,   -7  */
1552f29dbc25Smrg    {0x1EEF7403, 0x000FE439},          /*    3,  -35,  494,   57,   -7  */
1553f29dbc25Smrg    {0x1EDF7004, 0x000FE03B},          /*    4,  -36,  493,   59,   -8  */
1554f29dbc25Smrg    {0x1EBF7403, 0x000FE43C},          /*    3,  -35,  491,   60,   -7  */
1555f29dbc25Smrg    {0x1EAF6C04, 0x000FE03F},          /*    4,  -37,  490,   63,   -8  */
1556f29dbc25Smrg    {0x1E9F6804, 0x000FE041},          /*    4,  -38,  489,   65,   -8  */
1557f29dbc25Smrg    {0x1E8F6804, 0x000FDC43},          /*    4,  -38,  488,   67,   -9  */
1558f29dbc25Smrg    {0x1E7F6404, 0x000FDC45},          /*    4,  -39,  487,   69,   -9  */
1559f29dbc25Smrg    {0x1E6F6004, 0x000FDC47},          /*    4,  -40,  486,   71,   -9  */
1560f29dbc25Smrg    {0x1E4F6404, 0x000FD849},          /*    4,  -39,  484,   73,  -10  */
1561f29dbc25Smrg    {0x1E3F6004, 0x000FD84B},          /*    4,  -40,  483,   75,  -10  */
1562f29dbc25Smrg    {0x1E1F6003, 0x000FDC4D},          /*    3,  -40,  481,   77,   -9  */
1563f29dbc25Smrg    {0x1E1F5804, 0x000FD450},          /*    4,  -42,  481,   80,  -11  */
1564f29dbc25Smrg    {0x1DFF5804, 0x000FD452},          /*    4,  -42,  479,   82,  -11  */
1565f29dbc25Smrg    {0x1DEF5404, 0x000FD454},          /*    4,  -43,  478,   84,  -11  */
1566f29dbc25Smrg    {0x1DCF5804, 0x000FD056},          /*    4,  -42,  476,   86,  -12  */
1567f29dbc25Smrg    {0x1DBF5004, 0x000FD059},          /*    4,  -44,  475,   89,  -12  */
1568f29dbc25Smrg    {0x1D9F5004, 0x000FD05B},          /*    4,  -44,  473,   91,  -12  */
1569f29dbc25Smrg    {0x1D8F5004, 0x000FCC5D},          /*    4,  -44,  472,   93,  -13  */
1570f29dbc25Smrg    {0x1D6F5004, 0x000FCC5F},          /*    4,  -44,  470,   95,  -13  */
1571f29dbc25Smrg    {0x1D5F4804, 0x000FCC62},          /*    4,  -46,  469,   98,  -13  */
1572f29dbc25Smrg    {0x1D3F4C04, 0x000FC864},          /*    4,  -45,  467,  100,  -14  */
1573f29dbc25Smrg    {0x1D1F4C04, 0x000FCC65},          /*    4,  -45,  465,  101,  -13  */
1574f29dbc25Smrg    {0x1CFF4804, 0x000FCC68},          /*    4,  -46,  463,  104,  -13  */
1575f29dbc25Smrg    {0x1CEF4405, 0x000FC46B},          /*    5,  -47,  462,  107,  -15  */
1576f29dbc25Smrg    {0x1CCF4804, 0x000FC86C},          /*    4,  -46,  460,  108,  -14  */
1577f29dbc25Smrg    {0x1CAF4404, 0x000FC86F},          /*    4,  -47,  458,  111,  -14  */
1578f29dbc25Smrg    {0x1C9F4005, 0x000FC072},          /*    5,  -48,  457,  114,  -16  */
1579f29dbc25Smrg    {0x1C6F4404, 0x000FC474},          /*    4,  -47,  454,  116,  -15  */
1580f29dbc25Smrg    {0x1C6F3C05, 0x000FBC77},          /*    5,  -49,  454,  119,  -17  */
1581f29dbc25Smrg    {0x1C4F3C05, 0x000FBC79},          /*    5,  -49,  452,  121,  -17  */
1582f29dbc25Smrg    {0x1C1F4004, 0x000FC07B},          /*    4,  -48,  449,  123,  -16  */
1583f29dbc25Smrg    {0x1C0F3C05, 0x000FB87E},          /*    5,  -49,  448,  126,  -18  */
1584f29dbc25Smrg    {0x1BEF3C04, 0x000FBC80},          /*    4,  -49,  446,  128,  -17  */
1585f29dbc25Smrg    {0x1BCF3C04, 0x000FBC82},          /*    4,  -49,  444,  130,  -17  */
1586f29dbc25Smrg    {0x1BAF3C04, 0x000FB885},          /*    4,  -49,  442,  133,  -18  */
1587f29dbc25Smrg    {0x1B8F3C04, 0x000FB887},          /*    4,  -49,  440,  135,  -18  */
1588f29dbc25Smrg    {0x1B6F3C04, 0x000FB48A},          /*    4,  -49,  438,  138,  -19  */
1589f29dbc25Smrg    {0x1B5F3405, 0x000FB08D},          /*    5,  -51,  437,  141,  -20  */
1590f29dbc25Smrg    {0x1B2F3804, 0x000FB48F},          /*    4,  -50,  434,  143,  -19  */
1591f29dbc25Smrg    {0x1B1F3405, 0x000FAC92},          /*    5,  -51,  433,  146,  -21  */
1592f29dbc25Smrg    {0x1AEF3804, 0x000FB094},          /*    4,  -50,  430,  148,  -20  */
1593f29dbc25Smrg    {0x1ACF3804, 0x000FAC97},          /*    4,  -50,  428,  151,  -21  */
1594f29dbc25Smrg    {0x1AAF3804, 0x000FAC99},          /*    4,  -50,  426,  153,  -21  */
1595f29dbc25Smrg    {0x1A7F3804, 0x000FAC9C},          /*    4,  -50,  423,  156,  -21  */
1596f29dbc25Smrg    {0x1A6F3405, 0x000FA49F},          /*    5,  -51,  422,  159,  -23  */
1597f29dbc25Smrg    {0x1A3F3804, 0x000FA8A1},          /*    4,  -50,  419,  161,  -22  */
1598f29dbc25Smrg    {0x1A1F3804, 0x000FA4A4},          /*    4,  -50,  417,  164,  -23  */
1599f29dbc25Smrg    {0x1A0F3005, 0x000FA0A7},          /*    5,  -52,  416,  167,  -24  */
1600f29dbc25Smrg    {0x19DF3404, 0x000FA4A9},          /*    4,  -51,  413,  169,  -23  */
1601f29dbc25Smrg    {0x19CF3005, 0x000F9CAC},          /*    5,  -52,  412,  172,  -25  */
1602f29dbc25Smrg    {0x199F3005, 0x000F9CAF},          /*    5,  -52,  409,  175,  -25  */
1603f29dbc25Smrg    {0x197F3005, 0x000F98B2},          /*    5,  -52,  407,  178,  -26  */
1604f29dbc25Smrg    {0x195F3005, 0x000F98B4},          /*    5,  -52,  405,  180,  -26  */
1605f29dbc25Smrg    {0x191F3804, 0x000F9CB6},          /*    4,  -50,  401,  182,  -25  */
1606f29dbc25Smrg    {0x18FF3804, 0x000F98B9},          /*    4,  -50,  399,  185,  -26  */
1607f29dbc25Smrg    {0x18CF3804, 0x000F98BC},          /*    4,  -50,  396,  188,  -26  */
1608f29dbc25Smrg    {0x18BF3804, 0x000F94BE},          /*    4,  -50,  395,  190,  -27  */
1609f29dbc25Smrg    {0x188F3804, 0x000F94C1},          /*    4,  -50,  392,  193,  -27  */
1610f29dbc25Smrg    {0x186F3804, 0x000F90C4},          /*    4,  -50,  390,  196,  -28  */
1611f29dbc25Smrg    {0x184F3405, 0x000F8CC7},          /*    5,  -51,  388,  199,  -29  */
1612f29dbc25Smrg    {0x181F3804, 0x000F90C9},          /*    4,  -50,  385,  201,  -28  */
1613f29dbc25Smrg    {0x17FF3804, 0x000F8CCC},          /*    4,  -50,  383,  204,  -29  */
1614f29dbc25Smrg    {0x17CF3804, 0x000F8CCF},          /*    4,  -50,  380,  207,  -29  */
1615f29dbc25Smrg    {0x17BF3405, 0x000F84D2},          /*    5,  -51,  379,  210,  -31  */
1616f29dbc25Smrg    {0x177F3C04, 0x000F88D4},          /*    4,  -49,  375,  212,  -30  */
1617f29dbc25Smrg    {0x174F3C04, 0x000F88D7},          /*    4,  -49,  372,  215,  -30  */
1618f29dbc25Smrg    {0x172F3C04, 0x000F84DA},          /*    4,  -49,  370,  218,  -31  */
1619f29dbc25Smrg    {0x170F3C04, 0x000F84DC},          /*    4,  -49,  368,  220,  -31  */
1620f29dbc25Smrg    {0x16EF3805, 0x000F7CE0},          /*    5,  -50,  366,  224,  -33  */
1621f29dbc25Smrg    {0x16BF3C04, 0x000F80E2},          /*    4,  -49,  363,  226,  -32  */
1622f29dbc25Smrg    {0x167F4004, 0x000F80E5},          /*    4,  -48,  359,  229,  -32  */
1623f29dbc25Smrg    {0x166F4004, 0x000F7CE7},          /*    4,  -48,  358,  231,  -33  */
1624f29dbc25Smrg    {0x163F4004, 0x000F7CEA},          /*    4,  -48,  355,  234,  -33  */
1625f29dbc25Smrg    {0x161F4004, 0x000F78ED},          /*    4,  -48,  353,  237,  -34  */
1626f29dbc25Smrg    {0x15EF4004, 0x000F78F0},          /*    4,  -48,  350,  240,  -34  */
1627f29dbc25Smrg    {0x15BF4404, 0x000F74F3},          /*    4,  -47,  347,  243,  -35  */
1628f29dbc25Smrg    {0x159F4404, 0x000F74F5},          /*    4,  -47,  345,  245,  -35  */
1629f29dbc25Smrg    {0x156F4404, 0x000F74F8},          /*    4,  -47,  342,  248,  -35  */
1630f29dbc25Smrg    {0x154F4005, 0x000F6CFC},          /*    5,  -48,  340,  252,  -37  */
1631f29dbc25Smrg    {0x150F4804, 0x000F70FE},          /*    4,  -46,  336,  254,  -36  */
1632f29dbc25Smrg    {0x14FF4405, 0x000F6901},          /*    5,  -47,  335,  257,  -38  */
1633f29dbc25Smrg    {0x14CF4804, 0x000F6D03},          /*    4,  -46,  332,  259,  -37  */
1634f29dbc25Smrg    {0x149F4804, 0x000F6D06},          /*    4,  -46,  329,  262,  -37  */
1635f29dbc25Smrg    {0x146F4C04, 0x000F6909},          /*    4,  -45,  326,  265,  -38  */
1636f29dbc25Smrg    {0x143F4C04, 0x000F690C},          /*    4,  -45,  323,  268,  -38  */
1637f29dbc25Smrg    {0x141F4C04, 0x000F690E},          /*    4,  -45,  321,  270,  -38  */
1638f29dbc25Smrg    {0x13EF5004, 0x000F6511},          /*    4,  -44,  318,  273,  -39  */
1639f29dbc25Smrg    {0x13BF5004, 0x000F6514},          /*    4,  -44,  315,  276,  -39  */
1640f29dbc25Smrg    {0x139F5004, 0x000F6117},          /*    4,  -44,  313,  279,  -40  */
1641f29dbc25Smrg    {0x136F5404, 0x000F6119},          /*    4,  -43,  310,  281,  -40  */
1642f29dbc25Smrg    {0x133F5404, 0x000F611C},          /*    4,  -43,  307,  284,  -40  */
1643f29dbc25Smrg    {0x131F5404, 0x000F5D1F},          /*    4,  -43,  305,  287,  -41  */
1644f29dbc25Smrg    {0x12DF5C04, 0x000F5D21},          /*    4,  -41,  301,  289,  -41  */
1645f29dbc25Smrg    {0x12AF5C04, 0x000F5D24},          /*    4,  -41,  298,  292,  -41  */
1646f29dbc25Smrg};
1647f29dbc25Smrg
1648f29dbc25Smrgstatic const unsigned long CimarronVerticalGraphicsFilter[] = {
1649f29dbc25Smrg    0x3F840D05,                        /* 261, 259,  -8  */
1650f29dbc25Smrg    0x3F841D01,                        /* 257, 263,  -8  */
1651f29dbc25Smrg    0x3F8428FE,                        /* 254, 266,  -8  */
1652f29dbc25Smrg    0x3F8438FA,                        /* 250, 270,  -8  */
1653f29dbc25Smrg    0x3F8444F7,                        /* 247, 273,  -8  */
1654f29dbc25Smrg    0x3F8450F4,                        /* 244, 276,  -8  */
1655f29dbc25Smrg    0x3F845CF1,                        /* 241, 279,  -8  */
1656f29dbc25Smrg    0x3F8468EE,                        /* 238, 282,  -8  */
1657f29dbc25Smrg    0x3F8474EB,                        /* 235, 285,  -8  */
1658f29dbc25Smrg    0x3F8480E8,                        /* 232, 288,  -8  */
1659f29dbc25Smrg    0x3F7490E5,                        /* 229, 292,  -9  */
1660f29dbc25Smrg    0x3F749CE2,                        /* 226, 295,  -9  */
1661f29dbc25Smrg    0x3F74ACDE,                        /* 222, 299,  -9  */
1662f29dbc25Smrg    0x3F74B8DB,                        /* 219, 302,  -9  */
1663f29dbc25Smrg    0x3F74C0D9,                        /* 217, 304,  -9  */
1664f29dbc25Smrg    0x3F74CCD6,                        /* 214, 307,  -9  */
1665f29dbc25Smrg    0x3F74D8D3,                        /* 211, 310,  -9  */
1666f29dbc25Smrg    0x3F74E8CF,                        /* 207, 314,  -9  */
1667f29dbc25Smrg    0x3F74F4CC,                        /* 204, 317,  -9  */
1668f29dbc25Smrg    0x3F7500C9,                        /* 201, 320,  -9  */
1669f29dbc25Smrg    0x3F750CC6,                        /* 198, 323,  -9  */
1670f29dbc25Smrg    0x3F7518C3,                        /* 195, 326,  -9  */
1671f29dbc25Smrg    0x3F7520C1,                        /* 193, 328,  -9  */
1672f29dbc25Smrg    0x3F7530BD,                        /* 189, 332,  -9  */
1673f29dbc25Smrg    0x3F753CBA,                        /* 186, 335,  -9  */
1674f29dbc25Smrg    0x3F7548B7,                        /* 183, 338,  -9  */
1675f29dbc25Smrg    0x3F6558B4,                        /* 180, 342, -10  */
1676f29dbc25Smrg    0x3F6560B2,                        /* 178, 344, -10  */
1677f29dbc25Smrg    0x3F656CAF,                        /* 175, 347, -10  */
1678f29dbc25Smrg    0x3F6578AC,                        /* 172, 350, -10  */
1679f29dbc25Smrg    0x3F6584A9,                        /* 169, 353, -10  */
1680f29dbc25Smrg    0x3F658CA7,                        /* 167, 355, -10  */
1681f29dbc25Smrg    0x3F6598A4,                        /* 164, 358, -10  */
1682f29dbc25Smrg    0x3F65A8A0,                        /* 160, 362, -10  */
1683f29dbc25Smrg    0x3F65B09E,                        /* 158, 364, -10  */
1684f29dbc25Smrg    0x3F65BC9B,                        /* 155, 367, -10  */
1685f29dbc25Smrg    0x3F65C499,                        /* 153, 369, -10  */
1686f29dbc25Smrg    0x3F65D096,                        /* 150, 372, -10  */
1687f29dbc25Smrg    0x3F55E093,                        /* 147, 376, -11  */
1688f29dbc25Smrg    0x3F55E891,                        /* 145, 378, -11  */
1689f29dbc25Smrg    0x3F55F48E,                        /* 142, 381, -11  */
1690f29dbc25Smrg    0x3F56008B,                        /* 139, 384, -11  */
1691f29dbc25Smrg    0x3F560C88,                        /* 136, 387, -11  */
1692f29dbc25Smrg    0x3F561486,                        /* 134, 389, -11  */
1693f29dbc25Smrg    0x3F562083,                        /* 131, 392, -11  */
1694f29dbc25Smrg    0x3F562881,                        /* 129, 394, -11  */
1695f29dbc25Smrg    0x3F56347E,                        /* 126, 397, -11  */
1696f29dbc25Smrg    0x3F56407B,                        /* 123, 400, -11  */
1697f29dbc25Smrg    0x3F564879,                        /* 121, 402, -11  */
1698f29dbc25Smrg    0x3F465876,                        /* 118, 406, -12  */
1699f29dbc25Smrg    0x3F466074,                        /* 116, 408, -12  */
1700f29dbc25Smrg    0x3F466872,                        /* 114, 410, -12  */
1701f29dbc25Smrg    0x3F46746F,                        /* 111, 413, -12  */
1702f29dbc25Smrg    0x3F467C6D,                        /* 109, 415, -12  */
1703f29dbc25Smrg    0x3F46846B,                        /* 107, 417, -12  */
1704f29dbc25Smrg    0x3F468C69,                        /* 105, 419, -12  */
1705f29dbc25Smrg    0x3F469866,                        /* 102, 422, -12  */
1706f29dbc25Smrg    0x3F46A064,                        /* 100, 424, -12  */
1707f29dbc25Smrg    0x3F46AC61,                        /*  97, 427, -12  */
1708f29dbc25Smrg    0x3F46B45F,                        /*  95, 429, -12  */
1709f29dbc25Smrg    0x3F46BC5D,                        /*  93, 431, -12  */
1710f29dbc25Smrg    0x3F46C45B,                        /*  91, 433, -12  */
1711f29dbc25Smrg    0x3F46CC59,                        /*  89, 435, -12  */
1712f29dbc25Smrg    0x3F36DC56,                        /*  86, 439, -13  */
1713f29dbc25Smrg    0x3F36E454,                        /*  84, 441, -13  */
1714f29dbc25Smrg    0x3F36EC52,                        /*  82, 443, -13  */
1715f29dbc25Smrg    0x3F36F450,                        /*  80, 445, -13  */
1716f29dbc25Smrg    0x3F36FC4E,                        /*  78, 447, -13  */
1717f29dbc25Smrg    0x3F37004D,                        /*  77, 448, -13  */
1718f29dbc25Smrg    0x3F370C4A,                        /*  74, 451, -13  */
1719f29dbc25Smrg    0x3F371448,                        /*  72, 453, -13  */
1720f29dbc25Smrg    0x3F371C46,                        /*  70, 455, -13  */
1721f29dbc25Smrg    0x3F372444,                        /*  68, 457, -13  */
1722f29dbc25Smrg    0x3F372C42,                        /*  66, 459, -13  */
1723f29dbc25Smrg    0x3F373440,                        /*  64, 461, -13  */
1724f29dbc25Smrg    0x3F37383F,                        /*  63, 462, -13  */
1725f29dbc25Smrg    0x3F37403D,                        /*  61, 464, -13  */
1726f29dbc25Smrg    0x3F37483B,                        /*  59, 466, -13  */
1727f29dbc25Smrg    0x3F375039,                        /*  57, 468, -13  */
1728f29dbc25Smrg    0x3F375438,                        /*  56, 469, -13  */
1729f29dbc25Smrg    0x3F375C36,                        /*  54, 471, -13  */
1730f29dbc25Smrg    0x3F376434,                        /*  52, 473, -13  */
1731f29dbc25Smrg    0x3F376833,                        /*  51, 474, -13  */
1732f29dbc25Smrg    0x3F377031,                        /*  49, 476, -13  */
1733f29dbc25Smrg    0x3F377430,                        /*  48, 477, -13  */
1734f29dbc25Smrg    0x3F377C2E,                        /*  46, 479, -13  */
1735f29dbc25Smrg    0x3F37842C,                        /*  44, 481, -13  */
1736f29dbc25Smrg    0x3F37882B,                        /*  43, 482, -13  */
1737f29dbc25Smrg    0x3F47882A,                        /*  42, 482, -12  */
1738f29dbc25Smrg    0x3F479028,                        /*  40, 484, -12  */
1739f29dbc25Smrg    0x3F479427,                        /*  39, 485, -12  */
1740f29dbc25Smrg    0x3F479C25,                        /*  37, 487, -12  */
1741f29dbc25Smrg    0x3F47A024,                        /*  36, 488, -12  */
1742f29dbc25Smrg    0x3F47A822,                        /*  34, 490, -12  */
1743f29dbc25Smrg    0x3F47AC21,                        /*  33, 491, -12  */
1744f29dbc25Smrg    0x3F47B020,                        /*  32, 492, -12  */
1745f29dbc25Smrg    0x3F57B01F,                        /*  31, 492, -11  */
1746f29dbc25Smrg    0x3F57B81D,                        /*  29, 494, -11  */
1747f29dbc25Smrg    0x3F57BC1C,                        /*  28, 495, -11  */
1748f29dbc25Smrg    0x3F57C01B,                        /*  27, 496, -11  */
1749f29dbc25Smrg    0x3F57C41A,                        /*  26, 497, -11  */
1750f29dbc25Smrg    0x3F67C818,                        /*  24, 498, -10  */
1751f29dbc25Smrg    0x3F67CC17,                        /*  23, 499, -10  */
1752f29dbc25Smrg    0x3F67D016,                        /*  22, 500, -10  */
1753f29dbc25Smrg    0x3F67D415,                        /*  21, 501, -10  */
1754f29dbc25Smrg    0x3F67D814,                        /*  20, 502, -10  */
1755f29dbc25Smrg    0x3F77D813,                        /*  19, 502,  -9  */
1756f29dbc25Smrg    0x3F77DC12,                        /*  18, 503,  -9  */
1757f29dbc25Smrg    0x3F77E011,                        /*  17, 504,  -9  */
1758f29dbc25Smrg    0x3F87E010,                        /*  16, 504,  -8  */
1759f29dbc25Smrg    0x3F87E40F,                        /*  15, 505,  -8  */
1760f29dbc25Smrg    0x3F87E80E,                        /*  14, 506,  -8  */
1761f29dbc25Smrg    0x3F97E80D,                        /*  13, 506,  -7  */
1762f29dbc25Smrg    0x3F97EC0C,                        /*  12, 507,  -7  */
1763f29dbc25Smrg    0x3F97F00B,                        /*  11, 508,  -7  */
1764f29dbc25Smrg    0x3FA7F00A,                        /*  10, 508,  -6  */
1765f29dbc25Smrg    0x3FA7F409,                        /*   9, 509,  -6  */
1766f29dbc25Smrg    0x3FB7F408,                        /*   8, 509,  -5  */
1767f29dbc25Smrg    0x3FB7F408,                        /*   8, 509,  -5  */
1768f29dbc25Smrg    0x3FC7F806,                        /*   6, 510,  -4  */
1769f29dbc25Smrg    0x3FC7F806,                        /*   6, 510,  -4  */
1770f29dbc25Smrg    0x3FD7F805,                        /*   5, 510,  -3  */
1771f29dbc25Smrg    0x3FD7FC04,                        /*   4, 511,  -3  */
1772f29dbc25Smrg    0x3FE7FC03,                        /*   3, 511,  -2  */
1773f29dbc25Smrg    0x3FE7FC03,                        /*   3, 511,  -2  */
1774f29dbc25Smrg    0x3FF7FC02,                        /*   2, 511,  -1  */
1775f29dbc25Smrg    0x3FF7FC02,                        /*   2, 511,  -1  */
1776f29dbc25Smrg    0x0007FC01,                        /*   1, 511,   0  */
1777f29dbc25Smrg    0x0007FC01,                        /*   1, 511,   0  */
1778f29dbc25Smrg    0x0007FC01,                        /*   1, 511,   0  */
1779f29dbc25Smrg    0x0027FFFF,                        /*  -1, 511,   2  */
1780f29dbc25Smrg    0x0027FFFF,                        /*  -1, 511,   2  */
1781f29dbc25Smrg    0x0037FFFE,                        /*  -2, 511,   3  */
1782f29dbc25Smrg    0x0037FFFE,                        /*  -2, 511,   3  */
1783f29dbc25Smrg    0x0047FFFD,                        /*  -3, 511,   4  */
1784f29dbc25Smrg    0x0047FBFE,                        /*  -2, 510,   4  */
1785f29dbc25Smrg    0x0057FBFD,                        /*  -3, 510,   5  */
1786f29dbc25Smrg    0x0067FBFC,                        /*  -4, 510,   6  */
1787f29dbc25Smrg    0x0077F7FC,                        /*  -4, 509,   7  */
1788f29dbc25Smrg    0x0077F7FC,                        /*  -4, 509,   7  */
1789f29dbc25Smrg    0x0087F7FB,                        /*  -5, 509,   8  */
1790f29dbc25Smrg    0x0097F3FB,                        /*  -5, 508,   9  */
1791f29dbc25Smrg    0x00A7F3FA,                        /*  -6, 508,  10  */
1792f29dbc25Smrg    0x00B7EFFA,                        /*  -6, 507,  11  */
1793f29dbc25Smrg    0x00C7EBFA,                        /*  -6, 506,  12  */
1794f29dbc25Smrg    0x00D7EBF9,                        /*  -7, 506,  13  */
1795f29dbc25Smrg    0x00E7E7F9,                        /*  -7, 505,  14  */
1796f29dbc25Smrg    0x00F7E3F9,                        /*  -7, 504,  15  */
1797f29dbc25Smrg    0x0107E3F8,                        /*  -8, 504,  16  */
1798f29dbc25Smrg    0x0117DFF8,                        /*  -8, 503,  17  */
1799f29dbc25Smrg    0x0127DBF8,                        /*  -8, 502,  18  */
1800f29dbc25Smrg    0x0137DBF7,                        /*  -9, 502,  19  */
1801f29dbc25Smrg    0x0147D7F7,                        /*  -9, 501,  20  */
1802f29dbc25Smrg    0x0157D3F7,                        /*  -9, 500,  21  */
1803f29dbc25Smrg    0x0167CFF7,                        /*  -9, 499,  22  */
1804f29dbc25Smrg    0x0177CBF7,                        /*  -9, 498,  23  */
1805f29dbc25Smrg    0x0197C7F6,                        /* -10, 497,  25  */
1806f29dbc25Smrg    0x01A7C3F6,                        /* -10, 496,  26  */
1807f29dbc25Smrg    0x01B7BFF6,                        /* -10, 495,  27  */
1808f29dbc25Smrg    0x01C7BBF6,                        /* -10, 494,  28  */
1809f29dbc25Smrg    0x01E7B3F6,                        /* -10, 492,  30  */
1810f29dbc25Smrg    0x01F7B3F5,                        /* -11, 492,  31  */
1811f29dbc25Smrg    0x0207AFF5,                        /* -11, 491,  32  */
1812f29dbc25Smrg    0x0217ABF5,                        /* -11, 490,  33  */
1813f29dbc25Smrg    0x0237A3F5,                        /* -11, 488,  35  */
1814f29dbc25Smrg    0x02479FF5,                        /* -11, 487,  36  */
1815f29dbc25Smrg    0x026797F5,                        /* -11, 485,  38  */
1816f29dbc25Smrg    0x027793F5,                        /* -11, 484,  39  */
1817f29dbc25Smrg    0x02978BF5,                        /* -11, 482,  41  */
1818f29dbc25Smrg    0x02A78BF4,                        /* -12, 482,  42  */
1819f29dbc25Smrg    0x02B787F4,                        /* -12, 481,  43  */
1820f29dbc25Smrg    0x02D77FF4,                        /* -12, 479,  45  */
1821f29dbc25Smrg    0x02F777F4,                        /* -12, 477,  47  */
1822f29dbc25Smrg    0x030773F4,                        /* -12, 476,  48  */
1823f29dbc25Smrg    0x03276BF4,                        /* -12, 474,  50  */
1824f29dbc25Smrg    0x033767F4,                        /* -12, 473,  51  */
1825f29dbc25Smrg    0x03575FF4,                        /* -12, 471,  53  */
1826f29dbc25Smrg    0x037757F4,                        /* -12, 469,  55  */
1827f29dbc25Smrg    0x038753F4,                        /* -12, 468,  56  */
1828f29dbc25Smrg    0x03A74BF4,                        /* -12, 466,  58  */
1829f29dbc25Smrg    0x03C743F4,                        /* -12, 464,  60  */
1830f29dbc25Smrg    0x03E73BF4,                        /* -12, 462,  62  */
1831f29dbc25Smrg    0x040737F3,                        /* -13, 461,  64  */
1832f29dbc25Smrg    0x04272FF3,                        /* -13, 459,  66  */
1833f29dbc25Smrg    0x044727F3,                        /* -13, 457,  68  */
1834f29dbc25Smrg    0x04671FF3,                        /* -13, 455,  70  */
1835f29dbc25Smrg    0x048717F3,                        /* -13, 453,  72  */
1836f29dbc25Smrg    0x04A70FF3,                        /* -13, 451,  74  */
1837f29dbc25Smrg    0x04C703F4,                        /* -12, 448,  76  */
1838f29dbc25Smrg    0x04D6FFF4,                        /* -12, 447,  77  */
1839f29dbc25Smrg    0x04F6F7F4,                        /* -12, 445,  79  */
1840f29dbc25Smrg    0x0516EFF4,                        /* -12, 443,  81  */
1841f29dbc25Smrg    0x0536E7F4,                        /* -12, 441,  83  */
1842f29dbc25Smrg    0x0556DFF4,                        /* -12, 439,  85  */
1843f29dbc25Smrg    0x0586CFF5,                        /* -11, 435,  88  */
1844f29dbc25Smrg    0x05A6C7F5,                        /* -11, 433,  90  */
1845f29dbc25Smrg    0x05C6BFF5,                        /* -11, 431,  92  */
1846f29dbc25Smrg    0x05F6B7F4,                        /* -12, 429,  95  */
1847f29dbc25Smrg    0x0616AFF4,                        /* -12, 427,  97  */
1848f29dbc25Smrg    0x0636A3F5,                        /* -11, 424,  99  */
1849f29dbc25Smrg    0x06569BF5,                        /* -11, 422, 101  */
1850f29dbc25Smrg    0x06868FF5,                        /* -11, 419, 104  */
1851f29dbc25Smrg    0x06A687F5,                        /* -11, 417, 106  */
1852f29dbc25Smrg    0x06C67FF5,                        /* -11, 415, 108  */
1853f29dbc25Smrg    0x06E677F5,                        /* -11, 413, 110  */
1854f29dbc25Smrg    0x07166BF5,                        /* -11, 410, 113  */
1855f29dbc25Smrg    0x073663F5,                        /* -11, 408, 115  */
1856f29dbc25Smrg    0x07665BF4,                        /* -12, 406, 118  */
1857f29dbc25Smrg    0x07964BF5,                        /* -11, 402, 121  */
1858f29dbc25Smrg    0x07B643F5,                        /* -11, 400, 123  */
1859f29dbc25Smrg    0x07D637F6,                        /* -10, 397, 125  */
1860f29dbc25Smrg    0x08062BF6,                        /* -10, 394, 128  */
1861f29dbc25Smrg    0x082623F6,                        /* -10, 392, 130  */
1862f29dbc25Smrg    0x085617F6,                        /* -10, 389, 133  */
1863f29dbc25Smrg    0x08760FF6,                        /* -10, 387, 135  */
1864f29dbc25Smrg    0x08B603F5,                        /* -11, 384, 139  */
1865f29dbc25Smrg    0x08D5F7F6,                        /* -10, 381, 141  */
1866f29dbc25Smrg    0x0905EBF6,                        /* -10, 378, 144  */
1867f29dbc25Smrg    0x0925E3F6,                        /* -10, 376, 146  */
1868f29dbc25Smrg    0x0955D3F7,                        /*  -9, 372, 149  */
1869f29dbc25Smrg    0x0985C7F7,                        /*  -9, 369, 152  */
1870f29dbc25Smrg    0x09A5BFF7,                        /*  -9, 367, 154  */
1871f29dbc25Smrg    0x09D5B3F7,                        /*  -9, 364, 157  */
1872f29dbc25Smrg    0x0A05ABF6,                        /* -10, 362, 160  */
1873f29dbc25Smrg    0x0A359BF7,                        /*  -9, 358, 163  */
1874f29dbc25Smrg    0x0A658FF7,                        /*  -9, 355, 166  */
1875f29dbc25Smrg    0x0A9587F6,                        /* -10, 353, 169  */
1876f29dbc25Smrg    0x0AB57BF7,                        /*  -9, 350, 171  */
1877f29dbc25Smrg    0x0AE56FF7,                        /*  -9, 347, 174  */
1878f29dbc25Smrg    0x0B1563F7,                        /*  -9, 344, 177  */
1879f29dbc25Smrg    0x0B455BF6,                        /* -10, 342, 180  */
1880f29dbc25Smrg    0x0B754BF7,                        /*  -9, 338, 183  */
1881f29dbc25Smrg    0x0BA53FF7,                        /*  -9, 335, 186  */
1882f29dbc25Smrg    0x0BD533F7,                        /*  -9, 332, 189  */
1883f29dbc25Smrg    0x0C0523F8,                        /*  -8, 328, 192  */
1884f29dbc25Smrg    0x0C251BF8,                        /*  -8, 326, 194  */
1885f29dbc25Smrg    0x0C550FF8,                        /*  -8, 323, 197  */
1886f29dbc25Smrg    0x0C9503F7,                        /*  -9, 320, 201  */
1887f29dbc25Smrg    0x0CC4F7F7,                        /*  -9, 317, 204  */
1888f29dbc25Smrg    0x0CF4EBF7,                        /*  -9, 314, 207  */
1889f29dbc25Smrg    0x0D24DBF8,                        /*  -8, 310, 210  */
1890f29dbc25Smrg    0x0D54CFF8,                        /*  -8, 307, 213  */
1891f29dbc25Smrg    0x0D84C3F8,                        /*  -8, 304, 216  */
1892f29dbc25Smrg    0x0DB4BBF7,                        /*  -9, 302, 219  */
1893f29dbc25Smrg    0x0DE4AFF7,                        /*  -9, 299, 222  */
1894f29dbc25Smrg    0x0E149FF8,                        /*  -8, 295, 225  */
1895f29dbc25Smrg    0x0E4493F8,                        /*  -8, 292, 228  */
1896f29dbc25Smrg    0x0E7483F9,                        /*  -7, 288, 231  */
1897f29dbc25Smrg    0x0EA477F9,                        /*  -7, 285, 234  */
1898f29dbc25Smrg    0x0ED46BF9,                        /*  -7, 282, 237  */
1899f29dbc25Smrg    0x0F045FF9,                        /*  -7, 279, 240  */
1900f29dbc25Smrg    0x0F4453F8,                        /*  -8, 276, 244  */
1901f29dbc25Smrg    0x0F7447F8,                        /*  -8, 273, 247  */
1902f29dbc25Smrg    0x0FA43BF8,                        /*  -8, 270, 250  */
1903f29dbc25Smrg    0x0FD42BF9,                        /*  -7, 266, 253  */
1904f29dbc25Smrg    0x10041FF9,                        /*  -7, 263, 256  */
1905f29dbc25Smrg};
1906