updated proposemode again: now it reflects that Desktop TVout cannot be done with G450/G550 as it's officially the case. (windows mimics it by using the acceleration engine to scale down your desktop. I'm not going to set that up for us as it's never 'perfect': try heavy acc engine use in windows (afaik): updates on TV drop to below 4x per second.) Bumped version to 0.22.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14858 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Rudolf Cornelissen 2005-11-11 19:30:06 +00:00
parent d6f43ca72c
commit 68fd170643
2 changed files with 30 additions and 8 deletions

View File

@ -4,7 +4,7 @@
Other authors for MGA driver:
Mark Watson,
Rudolf Cornelissen 9/2002-11/2004
Rudolf Cornelissen 9/2002-11/2005
*/
#define MODULE_BIT 0x00400000
@ -379,15 +379,37 @@ status_t PROPOSE_DISPLAY_MODE(display_mode *target, const display_mode *low, con
}
/* set TV_CAPABLE if suitable: pixelclock is not important (defined by TVstandard) */
//fixme: modify for G100 and G200 TVout later on...
if (target->flags & DUALHEAD_CAPABLE)
switch (si->ps.card_type)
{
if (si->ps.secondary_tvout &&
(target->timing.h_display <= 1024) &&
(target->timing.v_display <= 768))
case G400:
case G400MAX:
//fixme: in theory singlehead cards can do TVout as well (if MAVEN mounted)
if (target->flags & DUALHEAD_CAPABLE)
{
target->flags |= TV_CAPABLE;
if (si->ps.secondary_tvout &&
(target->timing.h_display <= 1024) &&
(target->timing.v_display <= 768))
{
target->flags |= TV_CAPABLE;
}
}
break;
case G450:
case G550:
/* G450/G550 can only do secondary TVout in Video modes (no Desktop modes!) */
if ((target->flags & DUALHEAD_CAPABLE) && (target->flags & TV_VIDEO))
{
if (si->ps.secondary_tvout &&
(target->timing.h_display <= 1024) && /* Hscaling option exists */
(target->timing.v_display <= 576)) /* Vscaling option lacks */
{
target->flags |= TV_CAPABLE;
}
}
break;
default:
//fixme: setup for G100 and G200 TVout later on...
break;
}
/* fixme: currently the matrox driver can only do secondary TVout */

View File

@ -54,7 +54,7 @@ status_t gx00_general_powerup()
status_t status;
uint32 card_class;
LOG(1,("POWERUP: Haiku Matrox Accelerant 0.21 running.\n"));
LOG(1,("POWERUP: Haiku Matrox Accelerant 0.22 running.\n"));
/* detect card type and power it up */
switch(CFGR(DEVID))