16626d6e0Sshatty<html> 26626d6e0Sshatty<head> 36626d6e0Sshatty <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 46626d6e0Sshatty <meta name="GENERATOR" content="The DarkSite"> 593ae86bfSRudolf Cornelissen <title>Readme for Haiku Unified Nvidia graphics driver</title> 66626d6e0Sshatty</head> 76626d6e0Sshatty<body> 893ae86bfSRudolf Cornelissen<h2 align="center">Unified Nvidia graphics driver for Haiku</h2></align><br><br> 96626d6e0Sshatty<hr> 106626d6e0Sshatty<h3><strong>NOTE PLEASE:</strong><br> 111208ac27SRudolf CornelissenYou use this software at your own risk! Although I don't expect it to damage your PC, videocard or Monitor, I cannot guarantee this!</h3> 126626d6e0Sshatty<hr> 1390879508SRudolf Cornelissen<h2>Supported cards (as far as is known):</h2> 1490879508SRudolf Cornelissen<ul> 1590879508SRudolf Cornelissen <li>TNT 1/2; 1690879508SRudolf Cornelissen <li>TNT 2-M64; 1790879508SRudolf Cornelissen <li>Vanta/Aladdin TNT2; 1890879508SRudolf Cornelissen <li>GeForce 256; 191208ac27SRudolf Cornelissen <li>GeForce 2 MX/Ti/GTS/Go; 20f58eff69SRudolf Cornelissen <li>GeForce 2 Integrated GPU (Nforce); 2190879508SRudolf Cornelissen <li>GeForce 3 (Ti); 221208ac27SRudolf Cornelissen <li>GeForce 4 MX/Ti/Go; 23f58eff69SRudolf Cornelissen <li>GeForce 4 Integrated GPU (Nforce 2); 24de0194f5SRudolf Cornelissen <li>GeForce (4 MX) PCX 4300; 25e4db389dSRudolf Cornelissen <li>GeForce FX/PCX 5xxx/Go; 26e4db389dSRudolf Cornelissen <li>GeForce FX/PCX 6xxx/Go; 27e4db389dSRudolf Cornelissen <li>GeForce FX/PCX 7xxx/Go; 289aeec96cSRudolf Cornelissen <li>Quadro (2/4/FX/PCX/Go); 2990879508SRudolf Cornelissen</ul> 307d4cfc12SRudolf Cornelissen<strong>Note please:</strong><br> 317d4cfc12SRudolf CornelissenGeforce 8xxx and later series cards (NV50, G80, also known as GPGPU, general purpose graphics processing unit architecture) will NOT be supported with this driver. These cards are quite different in architecture compared to everything before so they need a seperate driver.<br> 326626d6e0Sshatty<br> 3390879508SRudolf Cornelissen<hr> 3490879508SRudolf Cornelissen<h2>Features:</h2> 3590879508SRudolf Cornelissen<ul> 36b406af49SRudolf Cornelissen <li>Hardware cursor support (on both heads on dualhead cards); 3790879508SRudolf Cornelissen <li>Full 2D acceleration; 389d7c686bSRudolf Cornelissen <li>Basic 3D acceleration for older cards: see the seperately available 3D accelerant's documentation for details; 3990879508SRudolf Cornelissen <li>Full BWindowScreen support (used for hardware pageflipping, scrolling/panning and acceleration in applications/games); 40cb44181dSRudolf Cornelissen <li>DPMS support for both DVI and most laptop panels, and for analog connected screens (on both heads on dualhead cards), <strong>but not (yet?)</strong> for external DVI panels on laptops; 416a9b090aSRudolf Cornelissen <li>B_YCbCr422 hardware overlay support on both TNT and GeForce series cards, <strong>except</strong> for GeForce 6xxx and 7xxx series (GeForce 6800 works though). Overlay output 'follows head' in dualhead stretch/switch modes; 4206343681SRudolfC <li>Dualhead support on GeForce dualhead cards (use 'Dualhead Setup' or Haiku native ScreenPrefs panel (with limitations)); 43813524fbSRudolf Cornelissen <li>DVI and laptop panel support; 44faed7a30SRudolf Cornelissen <li>Widescreen mode support (<strong>all</strong> screens must be widescreen type; 4593ae86bfSRudolf Cornelissen <li>Basic AGP mode support on AGP cards, using the new (seperate) Haiku AGP busmanager; 464879571bSRudolf Cornelissen <li>Basic ('legacy') PCIe support; 476a9b090aSRudolf Cornelissen <li>Coldstart support for analog connected screens on most cards except TNT1, GeForce 6xxx and 7xxx series; 4806343681SRudolfC <li>TVout support on cards with Brooktree BT868/BT869 and Conexant CX25870/CX25871 encoders (use 'Dualhead Setup' <strong>0.05</strong> for now); 499b53cf03SRudolf Cornelissen <li>DDC/EDID support for monitor capability detection. 5090879508SRudolf Cornelissen</ul> 5190879508SRudolf Cornelissen<strong>Known limitations:</strong> 5290879508SRudolf Cornelissen<ul> 539aeec96cSRudolf Cornelissen <li>If you want BScreen 'Sync_to_Retrace' capability make sure you enabled 'assign IRQ to VGA card' in your system BIOS (if available); 549b53cf03SRudolf Cornelissen <li>If the driver seems to create 'random' trouble make sure you have a fully functional VGA BIOS, or system BIOS for embedded cards (check for updates on the manufacturor's site). Make sure you mail me if you still have trouble but also if this version fixed that! 554157b3aeSRudolf Cornelissen <li>If on a laptop the internal panel doesn't work when you connect an external monitor, make sure you set 'output device selection' to 'internal' (instead of 'auto') in the system BIOS if it has such an option. If you have this symptom on a normal card, or on a laptop without that BIOS option then you are probably out of luck for dualhead support; 56e4db389dSRudolf Cornelissen <li><strong>NV40 architecture cards:</strong> (GeForce 6xxx, but 6800 AGP seems to be OK)<br> 57faed7a30SRudolf Cornelissen We can't control very well to which connector the card's output gets routed (lack of specs). This means you might have to experiment a bit with the way you connect your monitor to the card. 5890879508SRudolf Cornelissen</ul> 5990879508SRudolf Cornelissen<br> 6090879508SRudolf Cornelissen<hr> 6190879508SRudolf Cornelissen<h2>Installation:</h2> 62faed7a30SRudolf CornelissenIf you encounter bugs, please see if a matching bug report already exists at <a href="http://dev.haiku-os.org">the Haiku website</a>. If not, or if you are unsure, file a new one. Make sure you are as precise as possible because that will make things easier to trackdown and fix...<br> 636626d6e0Sshatty<br> 646626d6e0Sshatty<br> 656626d6e0SshattyOK, now that's all said let's get to it ;-)<br> 666626d6e0Sshatty<br> 67faed7a30SRudolf CornelissenYou don't need to de-install official drivers for this driver to work correctly. This driver will install in the user part of Haiku, so not in the system part where the official drivers are.<br> 68faed7a30SRudolf CornelissenHaiku first checks (during boot) if there are 'user-addons' that should be loaded for a device. If not, it loads it's own drivers (if any). You can select which driver should be loaded by hitting the spacebar just before the Haiku 'icons' splash screen appears. If you select <strong>disable user addons</strong> the system will load it's own drivers. If you don't do anything, the system will load the Haiku Nvidia TNT/GeForce graphics driver.<br> 696626d6e0Sshatty<br> 70faed7a30SRudolf Cornelissen<strong>Note:</strong> This might turn out to be handy if you run into trouble upon testing the driver, or if you are 'tweaking' the nvidia.settings file...<br> 716626d6e0Sshatty<br><br> 726626d6e0Sshatty<strong>actual INSTALLATION:</strong><br> 736626d6e0Sshatty<br> 7490879508SRudolf CornelissenDoubleclick on the install.sh file and follow the instructions. You have to reboot in order to load the driver. Make sure you read the <strong>Settings</strong> information below before you do that...<br> 756626d6e0Sshatty<br> 766626d6e0Sshatty<br> 776626d6e0Sshatty<strong>alternate INSTALLATION method:</strong><br> 786626d6e0Sshatty<br> 7990879508SRudolf CornelissenUnzip the zip file that contains the driver to the root folder. Now reboot and you should be using the new driver.<br> 806626d6e0Sshatty<br> 816626d6e0Sshatty<br> 8290879508SRudolf Cornelissen<strong>DE-INSTALLATION:</strong><br> 836626d6e0Sshatty<br> 8490879508SRudolf CornelissenCurrently there's no uninstall script included. Just do it manually:<br> 8590879508SRudolf Cornelissen<br> 86c09a5491SRudolfCDelete the <strong>nvidia.accelerant</strong> file in <strong>home/config/non-packaged/add-ons/accelerants/</strong><br> 87c09a5491SRudolfCDelete the <strong>nvidia.driver</strong> file in <strong>home/config/non-packaged/add-ons/kernel/drivers/bin/</strong><br> 88faed7a30SRudolf CornelissenDelete the <strong>nvidia.settings</strong> file in <strong>home/config/settings/kernel/drivers/</strong><br> 89c09a5491SRudolfCDelete the <strong>nvidia.driver shortcut</strong> in <strong>home/config/non-packaged/add-ons/kernel/drivers/dev/graphics/</strong> which pointed to the file <strong>nvidia.driver</strong>.<br> 9090879508SRudolf Cornelissen<br> 9190879508SRudolf CornelissenYou have to reboot in order to apply the original configuration.<br> 9290879508SRudolf Cornelissen<br> 936626d6e0Sshatty<br> 946626d6e0Sshatty<hr> 956626d6e0Sshatty<a name="settings"></a><h2>Settings:</h2><br> 9693ae86bfSRudolf CornelissenPlease read this information carefully *before* installing and using the Haiku Nvidia TNT/GeForce graphics driver. It might spare you some trouble afterwards..<br> 979b53cf03SRudolf Cornelissen<p>The driver uses a file named <strong>nvidia.settings</strong> to determine how to use your card. After installation this file will be located at <strong>home/config/settings/kernel/drivers/</strong>. How you should setup this file depends on what you want to do with the driver. While it has a 'failsave' default configuration, you might be able to do better than that... Anyway, read the nifty details below.<br> 986626d6e0Sshatty<br> 996626d6e0Sshatty<strong>Note:</strong> The driver only reads this file during it's initialisation. This means that you have to reboot in order to let changes take effect.<br> 1006626d6e0Sshatty<br> 1016626d6e0Sshatty<br> 1026626d6e0Sshatty<br> 1039b53cf03SRudolf Cornelissen<strong>nvidia.settings driver configuration:</strong><br> 1046626d6e0Sshatty<ul> 10503fb1718SRudolf Cornelissen <li><strong>usebios:</strong><br> 10603fb1718SRudolf CornelissenThe name of this item may be somewhat misleading, it might be changed in the future. It actually tells the driver if it should coldstart the card or not. The driver will rely on the VGA BIOS to have coldstarted the card before BeOS booted if you specify 'true'.<br> 10703fb1718SRudolf CornelissenTo make things look even more complex the driver might actually use the BIOS to determine your cards specifications on *both* possible settings. 10803fb1718SRudolf Cornelissen <ul> 10903fb1718SRudolf Cornelissen <li><strong>false:</strong><br> 11003fb1718SRudolf Cornelissen If you specify <strong>usebios false</strong> the driver will attempt to coldstart the card, which is the preferred way of doing it because of the better tuned setup if all is right. Unfortunately there's not enough info available to make this work reliably, so it's not used by default. This setting would enable you to use your nVidia card as a secondary card in your system. Be advised though that BeOS officially does not (yet) support multiple VGA cards, so you need special software in order to be able to actually use it (a video consumer node for instance). 11103fb1718SRudolf Cornelissen <li><strong>true:</strong> (default setting)<br> 11203fb1718SRudolf Cornelissen Specify <strong>usebios true</strong> unless you want to try to use a nVidia card as a secondary card in your system. 11303fb1718SRudolf Cornelissen </ul> 11403fb1718SRudolf Cornelissen <strong>Notes:</strong> 11503fb1718SRudolf Cornelissen <ul> 116e4abfd7bSRudolf Cornelissen <li>On driverversion 0.23 and before usebios had no effect at all. The cards were never coldstarted; 117d9b60a74SRudolf Cornelissen <li>Coldstarting should work on most cards except TNT1, GeForce 6xxx and GeForce 7xxx; 118dc451d3dSRudolf Cornelissen <li>Coldstarting will not yet work with laptop- and DVI panels. 11903fb1718SRudolf Cornelissen </ul> 1206626d6e0Sshatty <li><strong>memory:</strong> (disabled by default)<br> 1216626d6e0Sshatty This option enables you to override the 'memory amount autodetection' of the driver. If autodetection is working incorrect, you can manually set the amount this way. You could also lower the amount of RAM to a lower value than actually there to test with for instance overlay use in applications. So this option is probably mostly of interest to developers. Specify the RAM amount in Mb (use only 'whole' numbers!).<br> 1226626d6e0SshattyThis option is disabled by default (preceded by a '#').<br> 1236626d6e0Sshatty<li><strong>hardcursor:</strong><br> 12490879508SRudolf Cornelissen A hardcursor is nessesary for DirectWindow windowed mode support. 1256626d6e0Sshatty <ul> 1266626d6e0Sshatty <li><strong>false:</strong><br> 127881996e8SRudolf Cornelissen If you have trouble with the hardcursor (on one or both of the heads), select <strong>hardcursor false</strong>. Make sure you let me know about the hardcursor trouble also: this should not happen! 1286626d6e0Sshatty <li><strong>true:</strong> (default setting)<br> 12990879508SRudolf Cornelissen A software cursor 'flickers' a bit sometimes because it has to be redrawn constantly. So <strong>hardcursor true</strong> is the preferred setting. For DirectWindow windowed mode functionality you need to use this setting also (Chart demo app for instance). 1306626d6e0Sshatty </ul> 131d9b60a74SRudolf Cornelissen<li><strong>logmask:</strong> (set to disabled by default)<br> 132d9b60a74SRudolf CornelissenThe logmask option is very handy to track down trouble in the driver. You should only enable this if you are doing so, otherwise keep it turned off because it slows down your system. (All lines have a '#' preceding 'logmask' by default.) Logging creates a logfile called <strong>nv.(/dev/graphics name).0.log</strong> in your <strong>~ (home)</strong> folder. A second logfile may get created depending on how the driver is used (on cloning; for BWindowScreen for example). The second file is called <strong>nv.(/dev/graphics name).1.log</strong>, and it will also be in your home folder.<br> 1336626d6e0Sshatty<strong>Note:</strong> 1346626d6e0Sshatty<ul> 1356626d6e0Sshatty<li>You may only enable *one* logmask-line. The value you place after it (hexadecimal 32bit) determines what will be logged. The first 7 digits determine the part of the driver that will be logging, the last single digit determines the level of logging (like 'all messages', or only 'error messages'). 1366626d6e0Sshatty</ul> 1376626d6e0Sshatty<li><strong>dumprom:</strong><br> 1386626d6e0SshattyDumprom is another 'tool' for bug-tracking purposes. 1396626d6e0Sshatty <ul> 1406626d6e0Sshatty <li><strong>false:</strong> (default setting)<br> 1416626d6e0Sshatty Keep it set to <strong>dumprom false</strong>, unless you want the driver to dump the contents of your VGA BIOS ROM in a file. 1426626d6e0Sshatty <li><strong>true:</strong><br> 143d9b60a74SRudolf Cornelissen <strong>dumprom true</strong> lets the driver dump a copy of your VGA BIOS in a file called <strong>nv.(/dev/graphics name).rom</strong> in your <strong>~ (home)</strong> folder. 1446626d6e0Sshatty </ul> 1450669fe20SRudolf Cornelissen<li><strong>switchhead:</strong><br> 146fcbddbedSRudolf CornelissenThe driver always autodetects which output should be used as primary one, but you can let the driver 'invert' the outcome of that detection with this option (only for dualhead cards). 1470669fe20SRudolf Cornelissen <ul> 1480669fe20SRudolf Cornelissen <li><strong>false:</strong> (default setting)<br> 149fcbddbedSRudolf Cornelissen Keep it set to <strong>switchhead false</strong>, unless you feel you want the card's other output to be used as primary one. Note that if a single connected screen is found, that screen will be the driver's primary output with this setting. 1500669fe20SRudolf Cornelissen <li><strong>true:</strong><br> 151fcbddbedSRudolf Cornelissen <strong>switchhead true</strong> lets the driver 'invert' the output assignments for all modes. Use only when you have two screens connected, otherwise the one connected screen will remain black as the other (not connected) output is being used.<br> 152fcbddbedSRudolf Cornelissen </ul> 153fcbddbedSRudolf Cornelissen<strong>Note:</strong> 154fcbddbedSRudolf Cornelissen<ul> 155fcbddbedSRudolf Cornelissen <li>If the driver determines it cannot use a digital panel <strong>despite</strong> it being physically connected and powered on, using the switchhead option will not fix this. This is no fault in your card or the panel, but happens only because the driver relies on certain functions inside your cards BIOS to behave in a certain way. 1560669fe20SRudolf Cornelissen</ul> 157ee6141d2SRudolf Cornelissen <li><strong>force_pci:</strong><br> 158ee6141d2SRudolf CornelissenOn AGP cards you can block the use of AGP mode transfers. 159ee6141d2SRudolf Cornelissen <ul> 160ee6141d2SRudolf Cornelissen <li><strong>false:</strong> (default setting)<br> 161ee6141d2SRudolf CornelissenKeep this option set to <strong>force_pci false</strong>, unless the graphics card or motherboard has trouble using AGP. 162ee6141d2SRudolf Cornelissen <li><strong>true:</strong><br> 163ee6141d2SRudolf Cornelissen<strong>force_pci true</strong> prevents the graphicsdriver from activating AGP mode, so it will be using PCI mode like it has always been in the past. The downside of this is that this comes at a performance penalty if your motherboard supports the AGP 'fastwrite' (FW) option, which won't be utilized with this setting. 164966c3cc8SRudolf Cornelissen </ul> 1651cdd0417SRudolf Cornelissen<strong>Note:</strong> 1661cdd0417SRudolf Cornelissen<ul> 1671cdd0417SRudolf Cornelissen <li>If you have trouble using AGP mode, you should prefer tweaking the AGP busmanager settings file as it might well enable you to use a 'lesser' AGP mode instead of falling back to PCI mode alltogether. 1681cdd0417SRudolf Cornelissen</ul> 169de0194f5SRudolf Cornelissen <li><strong>dma_acc:</strong><br> 170860d572cSRudolf CornelissenYou can select one of two methods for (2D) acceleration here: PIO mode and DMA mode. DMA mode works 4-10 times as fast as PIO mode on modern CPU's (beyond 2Ghz or so), and should still be 2-3 times as fast as PIO mode on slower CPU's (below 500Mhz). 171de0194f5SRudolf Cornelissen <ul> 172de0194f5SRudolf Cornelissen <li><strong>false:</strong><br> 1736482dd58SRudolf CornelissenIf the default setting does not work as expected, you can try falling back to PIO mode acceleration. Note however that PIO mode is currently not working on NV40 and higher GPU's (GeForce 6200, 6600, 6800 and 7800 like types). Also, chances are that this method of acceleration will be removed in future driverversions (so be sure to let me know if you are having trouble with DMA mode!). 174de0194f5SRudolf Cornelissen <li><strong>true:</strong> (default setting)<br> 1756a9b090aSRudolf Cornelissen<strong>dma_acc true</strong> enables DMA cmd fetching by the GPU for (2D) acceleration instead of using the old PIO method (which directly programs acceleration commands inside the GPU). The DMA method works (much) faster than PIO mode depending on system CPU speed. Also the DMA method is the only method that works on NV40 and higher GPU's (GeForce 6xxx and 7xxx series) currently. 176de0194f5SRudolf Cornelissen </ul> 1779aeec96cSRudolf Cornelissen <li><strong>tv_output:</strong> (disabled by default: preceded by a '#')<br> 1789aeec96cSRudolf Cornelissen This option enables you to override the 'TV output signal cable autodetection' of the driver. If autodetection is working incorrect, you can manually select a signal type this way. Specify 0, 1 or 2 (if enabled).<br> 1799aeec96cSRudolf Cornelissen <ul> 1809aeec96cSRudolf Cornelissen <li><strong>disabled or 0:</strong> (default setting)<br> 1819aeec96cSRudolf Cornelissen With this setting the driver will autodetect which signal(s) to output for a TVout mode. Normally you can leave it at that: but it's possible that the manufacturor of your card and/or TVset made a mistake in their design concerning line 'impedance'. In this case the driver might detect incorrectly leaving you with a (almost) black-and-white or color-distorted TV picture. In such a case you would probably like to instruct the driver what signals to output, overruling the autodetection result. 1829aeec96cSRudolf Cornelissen <li><strong>1:</strong><br> 1839aeec96cSRudolf Cornelissen Force Y/C (and CVBS if supported by hardware). Use this setting if you use a Y/C cable with or without a CVBS cable (some cards have both Y/C and CVBS outputs, so you can output a head to two sets at the same time). 1849aeec96cSRudolf Cornelissen <li><strong>2:</strong><br> 1859aeec96cSRudolf Cornelissen Force CVBS on all outputs. Use this setting if you use CVBS cable(s) only. 1869aeec96cSRudolf Cornelissen </ul> 1879aeec96cSRudolf Cornelissen<strong>Notes:</strong> 1889aeec96cSRudolf Cornelissen<ul> 1899aeec96cSRudolf Cornelissen<li>Y/C stands for Luminance/Chrominance, or S-VHS. This signal is transferred using a 4 (or more) pins mini-DIN connector: two pins carry the color-info, and two pins carry the intensity-info. 1909aeec96cSRudolf Cornelissen<li>CVBS stands for 'Composite Video Baseband Signal' which means that '2 pins' carry both color- and intensity info 'frequency-multiplexed' (at the same time). This signal is transferred using a 'Tulip', 'Cinch' or RCA plugged cable (all the same thing). 1919aeec96cSRudolf Cornelissen<li>Y/C connections deliver a better image quality than CVBS connections do. Originally, CVBS connections were used for VHS video recorders (about 300 'vertical lines' horizontal resolution), while Y/C connections were used for S-VHS recorders (about 400 'vertical lines' horizontal resolution). 1929aeec96cSRudolf Cornelissen<li>Some cards only having a Y/C connector also have a seperate short cable with them which 'converts' the Y/C connector into a CVBS connector. If you use that you are in fact using a CVBS connection. 1939aeec96cSRudolf Cornelissen<li>TVsets that do not have a RCA and/or mini-DIN video connector might still be useable: most sets have a SCART connector. SCART has settings that can accomodate RGB (some sets on some inputs), Y/C and CVBS signals. You can get Y/C and CVBS to/from (switched) SCART adaptors seperately from stores. You need to set the switch (if there) to 'input', and select the signal type you want to use on your TVset. A/V stands for CVBS, and Y/C stands for Y/C. 1949aeec96cSRudolf Cornelissen<li>Turn the TVset on before setting a TVout mode if you use the driver's default 'autodetection' setting. You probably don't need to pre-select the correct TV input as turning the power on is mostly enough to enable all of the set's input 'impendances' enabling correct autodetection by the driver. 1959aeec96cSRudolf Cornelissen</ul> 196966c3cc8SRudolf Cornelissen <li><strong>unhide_fw:</strong><br> 197966c3cc8SRudolf CornelissenThis option is only used if your card is running in AGP mode. It's a real <strong>tweak</strong> option. It's officially unsupported, and it's unknown if it can do harm to your card or system. It exists because using it <strong>can</strong> speedup unaccelerated graphics <strong>a lot</strong>. Think about video playback or playing quake2 in software rendering mode... 198966c3cc8SRudolf Cornelissen <ul> 199966c3cc8SRudolf Cornelissen <li><strong>false:</strong> (default setting)<br> 200966c3cc8SRudolf CornelissenKeep this option set to <strong>unhide_fw false</strong> unless you are certain you want to try the 'unsupported' graphics speedup. NV15, NV18, NV28 and NV34 cards for example probably don't need it as they officially support the AGP FW (fastwrites) feature already. On cards supporting FW by default the unhide_fw option has no effect. 201966c3cc8SRudolf Cornelissen <li><strong>true:</strong><br> 202966c3cc8SRudolf CornelissenIf you have an older card that officially doesn't support the AGP FW feature, you could possibly get this feature anyway by setting <strong>unhide_fw true</strong>. For instance (some) NV11 cards work nicely with AGP FW enabled this way and unaccelerated graphics speedup considerably. Please <strong>make sure</strong> that at the first sign of trouble (system hanging, displaying artifacts, etc) you disable this feature here again, or you might risk <strong>destroying</strong> your card and/or AGP slot. 203966c3cc8SRudolf Cornelissen </ul> 204966c3cc8SRudolf Cornelissen <li><strong>pgm_panel:</strong><br> 205966c3cc8SRudolf CornelissenThis option only has an effect if you have a laptop panel or DVI panel connected. It's existing because it's currently impossible to setup the driver in a way every single panel outthere is happy about it. 206966c3cc8SRudolf Cornelissen <ul> 2079e06ba69SRudolf Cornelissen <li><strong>false:</strong> (default setting)<br> 208966c3cc8SRudolf CornelissenIf you select <strong>pgm_panel false</strong> the driver will not program the panel's pixelclock (refreshrate). Instead it relies on your cardBIOS to have done that correctly. While this is probably the case, it might introduce some displaying errors every now and then. 2099e06ba69SRudolf Cornelissen <li><strong>true:</strong><br> 210966c3cc8SRudolf CornelissenWith the <strong>pgm_panel true</strong> setting, the driver will fix your panel's refreshrate to 60Hz. While this should be working on all panels outthere, some panels are particular picky about refreshrates below 60.0Hz (they shut off), and some other panels are particular picky about refreshrates above 60.0Hz (they shut off). While the driver requests the hardware to set 60.0Hz, this isn't exactly possible, so the actual setting is <strong>bound</strong> to be a tiny bit below or above 60.0Hz. 211ee6141d2SRudolf Cornelissen </ul> 2129aeec96cSRudolf Cornelissen <li><strong>vga_on_tv:</strong><br> 2139aeec96cSRudolf CornelissenThis option only has an effect if you have a card with supported TV encoder chip when you use TV out modes. When set to <strong>true</strong> it provides a <strong>'tweaked'</strong> dualhead clone mode for singlehead cards and dualhead cards using singlehead modes on TV. Because this special mode can possibly destroy old VGA monitors it's disabled by default. 2149aeec96cSRudolf Cornelissen <ul> 2159aeec96cSRudolf Cornelissen <li><strong>false:</strong> (default setting)<br> 2160f2dfacaSRudolf CornelissenIf you select <strong>vga_on_tv false</strong> the driver will automatically shut-off your VGA (or DVI) monitor (by means of special internal DPMS settings) when a TVout mode is enabled on the head the monitor is connected to. This means that on singlehead cards and on dualhead cards using singlehead TV modes your only output will be on TV. This is the standard way of doing things. 2170f2dfacaSRudolf Cornelissen <li><strong>true:</strong> With this setting VGA (or DVI) output on a head is enabled concurrent with TV output on that head: that is if you select a TVout mode. This setting is a 'tweak' because the modeline used to drive your monitor is the same modeline that is used for the TV output. This means that the monitor picture positioning is probably a bit odd, in some modes it might distort somewhat, and the refreshrate will be 50Hz for PAL modes, and 60Hz for NTSC modes. Make sure you only enable this tweak if you know your monitor supports down to 50Hz refreshrate, and preferably has a failsafe built in that blocks output when out-of-range signals are sent to it (almost every newer monitor has this feature).<br> 2189aeec96cSRudolf Cornelissen </ul> 219a3a50182SRudolf Cornelissen <li><strong>force_sync:</strong><br> 220a3a50182SRudolf CornelissenThis option only has an effect on hardware accelerated 3D rendering. When set to <strong>true</strong> it forces the 3D screen updates to be synchronized to your screen's vertical retraces, preventing 'tearing' to occur. 221a3a50182SRudolf Cornelissen <ul> 222a3a50182SRudolf Cornelissen <li><strong>false:</strong> (default setting)<br> 223a3a50182SRudolf CornelissenIf you select <strong>force_sync false</strong> the driver's 3D accelerant will render 3D scenes as fast as it can, without paying attention to the actual screen's refreshrate. The upside of this setting is that you can measure the actual rendering power your card has in a specific mode for a specific application (if that application supports benchmarking). The downside is that you'll be able to witness 'tearing': the effect of seeing random horizontal distortion 'stripes' onscreen, especially when the view moves fast in a horizontal direction (like looking around in a room in Quake2). If you need the last bit of rendering power because you run a heavy app on a relatively 'slow' card, this setting might be your best option: it's a bit faster than using <strong>force_sync true</strong>. 224a3a50182SRudolf Cornelissen <li><strong>true:</strong> With this setting all tearing effects should be gone. Another reason to use this setting would be 'fixing' the driver's fps (frames per second) rendered. That is, when you are using a screen mode that your card can render at least at the speed your screen's refreshrate is set to: In this case the fps will be virtually independant of the complexity of the rendered scenes. Hardcore gamers amongst us really want this feature to get 'fixed' latencies so they can issue (firing) commands at the exact right time...<br> 225a3a50182SRudolf Cornelissen </ul> 226a3a50182SRudolf Cornelissen<strong>Note please:</strong> 227a3a50182SRudolf Cornelissen<ul> 228a3a50182SRudolf Cornelissen<li>Forcing vertical retrace synchronisation using the force_sync option 'overrules' retrace sync settings done in your applications: all applications will be synchronized to the vertical retrace events. 229a3a50182SRudolf Cornelissen</ul> 2309d7c686bSRudolf Cornelissen <li><strong>force_ws:</strong><br> 2319d7c686bSRudolf CornelissenThis option (if enabled) overrules the aspect ratio detection for screens inside the driver. When set to <strong>true</strong> it forces all monitors to be treated as widescreen types. 2329d7c686bSRudolf Cornelissen <ul> 23363e90977SRudolf Cornelissen <li><strong>false:</strong> (default setting)<br> 23463e90977SRudolf CornelissenIf you select <strong>force_ws false</strong> the driver will autodetect the screen's aspect ratio if it can, otherwise it will force 4:3 aspect. Screens that are connected with a DVI cable and screens inside a laptop are autodetected (according to the cardBIOS presets done), analog connected screens will also be autodetected if DDC/EDID works: otherwise the driver blocks widescreen modes. Connected analog TV sets are always treated like widescreen devices though. 23563e90977SRudolf Cornelissen <li><strong>true:</strong><br> With this setting all monitors are treated as being widescreen types. This setting should only be used if you are having trouble using a widescreen monitor, because on non-widescreen monitors there's a (small) chance of destroying them if used with a widescreen mode. Some non-widescreen monitors will simply shut-off or display a black screen. So use this setting with care.<br> 2369d7c686bSRudolf Cornelissen </ul> 237d9b60a74SRudolf Cornelissen<li><strong>primary:</strong> (set to disabled by default)<br> 238d9b60a74SRudolf CornelissenPrimary lets you force a certain card to be used as primary card in your system if you have multiple graphics cards installed: so it will display your desktop. To enable this (hack) feature uncomment this item and fill in the exact name of the card that is to be primary (as exported by the kerneldriver in /dev/graphics/). If you are going to select a card other than the one displaying your system's POST messages at bootup, make sure you also set 'usebios false' as otherwise the card(s) aren't coldstarted by the driver.<br> 239d9b60a74SRudolf Cornelissen<strong>Note please:</strong> 240d9b60a74SRudolf Cornelissen<ul> 241d9b60a74SRudolf Cornelissen<li>DVI and laptop panels don't work yet with the 'usebios false' setting. Analog connected screens should work though. 242d9b60a74SRudolf Cornelissen<li>Coldstarting doesn't work on TNT1 and GeForce 6xxx/7xxx cards yet. 243d9b60a74SRudolf Cornelissen<li>Primary forces the primary card by preceding the exported name by a minus-sign (-) for the selected device. This ensures that this device will be listed at the top in the /dev/graphics/ folder, which is alphabetically ordered. Please make sure you enable the 'primary' feature on just one graphics driver, otherwise it's effect isn't 'guaranteed'. 244d9b60a74SRudolf Cornelissen</ul> 245a6cde944SRudolf Cornelissen<li><strong>block_acc:</strong><br> 246a6cde944SRudolf CornelissenThis option lets you disable the acceleration engine all together if enabled. Use this as a workaround if you encounter acceleration engine trouble. 247a6cde944SRudolf Cornelissen<ul> 248a6cde944SRudolf Cornelissen<li><strong>false:</strong> (default setting)<br> 249a6cde944SRudolf CornelissenThe acceleration engine is enabled. 250a6cde944SRudolf Cornelissen<li><strong>true:</strong><br> 251a6cde944SRudolf CornelissenThe acceleration engine is disabled. 252a6cde944SRudolf Cornelissen</ul> 25306343681SRudolfC<strong>Note please:</strong> 25406343681SRudolfC<ul> 25506343681SRudolfC<li>On Haiku the acceleration engine is not used at all.<br> 25606343681SRudolfC</ul> 257*b0c69e84SRudolf Cornelissen<li><strong>check_edid:</strong><br> 258*b0c69e84SRudolf CornelissenThis option lets you disable adherence to your monitor's reported capabilities via EDID. It happens very rarely that especially older monitors report their capabilities in a non-correct way, making the driver believe it has less capabilities than it actually has. 259*b0c69e84SRudolf Cornelissen <ul> 260*b0c69e84SRudolf Cornelissen <li><strong>false:</strong><br> 261*b0c69e84SRudolf Cornelissen <strong>check_edid false</strong> prevents the driver from blocking modes your monitor does not support according to the EDID information it returns to the driver. The driver still fetches the EDID information from your monitor, and still checks it's aspect ratio. 262*b0c69e84SRudolf Cornelissen <li><strong>true:</strong> (default setting)<br> 263*b0c69e84SRudolf Cornelissen Keep it set to <strong>check_edid true</strong>, unless you have determined that your monitor supports higher resolution modes than the modes the driver lets you choose from currently. 264*b0c69e84SRudolf Cornelissen </ul> 2656626d6e0Sshatty</ul> 2666626d6e0Sshatty<hr> 2676626d6e0Sshatty<br> 2689b53cf03SRudolf CornelissenRudolf Cornelissen.<br> 269*b0c69e84SRudolf Cornelissen<p>(Page last updated on January 5, 2016)</p> 2706626d6e0Sshatty</body> 2716626d6e0Sshatty</html> 272