fixed a few errors in Proposemode: overriding B_BAD_VALUE is fixed, aborting with B_ERROR for dualhead modes in singlehead only colorspaces is fixed (routine continues with B_BAD_VALUE and in singlehead mode then). Bumped version to 0.21. It's refreshing to look from the Screenprefs app perspective :). Fixes done for 'unofficial prefs panel' Dualhead Setup 0.04 optimum compatibility (will be released soon).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14835 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
0964291534
commit
6967fb7a1c
@ -157,6 +157,23 @@ status_t PROPOSE_DISPLAY_MODE(display_mode *target, const display_mode *low, con
|
||||
}
|
||||
#endif
|
||||
|
||||
/* check colorspace versus requested dualhead mode */
|
||||
switch (target->space)
|
||||
{
|
||||
case B_CMAP8:
|
||||
case B_RGB15:
|
||||
/* mode will be made 'outside limits' when dualhead was requested */
|
||||
if (target->flags & DUALHEAD_BITS)
|
||||
{
|
||||
status = B_BAD_VALUE;
|
||||
LOG(4, ("PROPOSEMODE: WARNING: Colorspace can't be done in dualhead mode\n"));
|
||||
}
|
||||
/* clear dualhead bits if colorspace isn't supported to prevent ProposeMode
|
||||
* from aborting */
|
||||
target->flags &= ~(DUALHEAD_BITS | DUALHEAD_CAPABLE);
|
||||
break;
|
||||
}
|
||||
|
||||
/*find a nearby valid timing from that given*/
|
||||
result = gx00_crtc_validate_timing
|
||||
(
|
||||
@ -207,10 +224,6 @@ status_t PROPOSE_DISPLAY_MODE(display_mode *target, const display_mode *low, con
|
||||
{
|
||||
status = B_BAD_VALUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
status = B_OK;
|
||||
}
|
||||
LOG(4, ("PROPOSEMODE: WARNING: horizontal timing deviates too much\n"));
|
||||
}
|
||||
|
||||
@ -232,10 +245,6 @@ status_t PROPOSE_DISPLAY_MODE(display_mode *target, const display_mode *low, con
|
||||
{
|
||||
status = B_BAD_VALUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
status = B_OK;
|
||||
}
|
||||
LOG(4, ("PROPOSEMODE: WARNING: vertical timing deviates too much\n"));
|
||||
}
|
||||
|
||||
@ -260,10 +269,6 @@ status_t PROPOSE_DISPLAY_MODE(display_mode *target, const display_mode *low, con
|
||||
{
|
||||
status = B_BAD_VALUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
status = B_OK;
|
||||
}
|
||||
LOG(4, ("PROPOSEMODE: WARNING: pixelclock deviates too much\n"));
|
||||
}
|
||||
|
||||
|
@ -54,7 +54,7 @@ status_t gx00_general_powerup()
|
||||
status_t status;
|
||||
uint32 card_class;
|
||||
|
||||
LOG(1,("POWERUP: Haiku Matrox Accelerant 0.20 running.\n"));
|
||||
LOG(1,("POWERUP: Haiku Matrox Accelerant 0.21 running.\n"));
|
||||
|
||||
/* detect card type and power it up */
|
||||
switch(CFGR(DEVID))
|
||||
|
Loading…
Reference in New Issue
Block a user