added new nv.setting called force_ws. This setting enables you to force the driver to enable use of widescreen modes independant of connected monitors. Only use if you have a widescreen monitor that the driver currently refuses to use that way. non-ws screens might not like a ws mode...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17027 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
44e1f1f918
commit
8ab0ed494c
@ -4,7 +4,7 @@
|
||||
|
||||
Other authors:
|
||||
Mark Watson,
|
||||
Rudolf Cornelissen 10/2002-3/2006.
|
||||
Rudolf Cornelissen 10/2002-4/2006.
|
||||
*/
|
||||
|
||||
#define MODULE_BIT 0x00800000
|
||||
@ -42,8 +42,8 @@ static status_t init_common(int the_fd) {
|
||||
si->settings.logmask, si->settings.memory, si->settings.hardcursor, si->settings.usebios, si->settings.switchhead, si->settings.force_pci));
|
||||
LOG(4,("init_common: dumprom %d, unhide_fw %d, pgm_panel %d, dma_acc %d, tv_output %d, vga_on_tv %d\n",
|
||||
si->settings.dumprom, si->settings.unhide_fw, si->settings.pgm_panel, si->settings.dma_acc, si->settings.tv_output, si->settings.vga_on_tv));
|
||||
LOG(4,("init_common: force_sync %d, gpu_clk %dMhz, ram_clk %dMhz\n",
|
||||
si->settings.force_sync, si->settings.gpu_clk, si->settings.ram_clk));
|
||||
LOG(4,("init_common: force_sync %d, gpu_clk %dMhz, ram_clk %dMhz, force_ws %d\n",
|
||||
si->settings.force_sync, si->settings.gpu_clk, si->settings.ram_clk, si->settings.force_ws));
|
||||
|
||||
/*Check for R4.5.0 and if it is running, use work around*/
|
||||
{
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
Other authors for NV driver:
|
||||
Mark Watson,
|
||||
Rudolf Cornelissen 9/2002-2/2006
|
||||
Rudolf Cornelissen 9/2002-4/2006
|
||||
*/
|
||||
|
||||
#define MODULE_BIT 0x00400000
|
||||
@ -230,7 +230,8 @@ status_t PROPOSE_DISPLAY_MODE(display_mode *target, const display_mode *low, con
|
||||
}
|
||||
break;
|
||||
default: /* at least one analog monitor is connected, or nothing detected at all */
|
||||
if (target_aspect > 1.34)
|
||||
/* (if forcing widescreen type was requested don't block mode) */
|
||||
if ((target_aspect > 1.34) && !(si->settings.force_ws))
|
||||
{
|
||||
LOG(4, ("PROPOSEMODE: not all output devices can display widescreen modes, aborted.\n"));
|
||||
return B_ERROR;
|
||||
|
@ -91,7 +91,7 @@ status_t nv_general_powerup()
|
||||
{
|
||||
status_t status;
|
||||
|
||||
LOG(1,("POWERUP: Haiku nVidia Accelerant 0.77 running.\n"));
|
||||
LOG(1,("POWERUP: Haiku nVidia Accelerant 0.78 running.\n"));
|
||||
|
||||
/* log VBLANK INT usability status */
|
||||
if (si->ps.int_assigned)
|
||||
|
@ -2407,6 +2407,8 @@ static void detect_panels()
|
||||
/* determine panel aspect ratio */
|
||||
si->ps.panel1_aspect =
|
||||
(si->ps.p1_timing.h_display / ((float)si->ps.p1_timing.v_display));
|
||||
/* force widescreen type if requested */
|
||||
if (si->settings.force_ws) si->ps.panel1_aspect = 1.60;
|
||||
/* horizontal timing */
|
||||
si->ps.p1_timing.h_sync_start = (DACR(FP_HSYNC_S) & 0x0000ffff) + 1;
|
||||
si->ps.p1_timing.h_sync_end = (DACR(FP_HSYNC_E) & 0x0000ffff) + 1;
|
||||
@ -2431,6 +2433,8 @@ static void detect_panels()
|
||||
/* determine panel aspect ratio */
|
||||
si->ps.panel2_aspect =
|
||||
(si->ps.p2_timing.h_display / ((float)si->ps.p2_timing.v_display));
|
||||
/* force widescreen type if requested */
|
||||
if (si->settings.force_ws) si->ps.panel2_aspect = 1.60;
|
||||
/* horizontal timing */
|
||||
si->ps.p2_timing.h_sync_start = (DAC2R(FP_HSYNC_S) & 0x0000ffff) + 1;
|
||||
si->ps.p2_timing.h_sync_end = (DAC2R(FP_HSYNC_E) & 0x0000ffff) + 1;
|
||||
|
Loading…
Reference in New Issue
Block a user