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