On Thu, 31 Aug 2000, Krzys Majewski wrote: > Can I take advantage of a new video card to reduce the flicker I > see in X Windows, or is this strictly a function of the monitor?
Both. In your case, it's probably the monitor. Your video card is kind of low-powered too. The thing that determines flicker is the refresh rate. This is not able to exceed the VertRefresh line in XF86Config and it too is limited by the monitor itself. Unfortunately, a monitor is also limited by the maximum dot-clock it can support (this is also called bandwidth) and the horizontal sync rate. If the dot-clock is higher than the monitor can support, the image becomes blurry and it becomes impossible to distinguish individual dots. If the horizontal sync is too high, the monitor can't display a stable picture (and it's no good for the monitor, either). My monitor (an NEC XV17) is 5 years old and has, even for the time, a pretty low H-sync of 65.5 KHz, and lowish bandwidth of 85MHz which I run at 100MHz. This is good enough for me to get 1152x864 at about 70 Hz refresh rate (or 1280x1024 at about 62 Hz - most unpleasant flicker and the wrong aspect ratio too). As resolution increases, both horizontal and vertical frequency increase. This is why refresh rates are lower at higher resolutions. Horizontal sync rates tend to place the limit on maximum resolution. The dot-clock is equal to the H-sync times the refresh rate times the vertical frequency, and refresh rate cannot exceed vertical frequency. So you might find that your monitor has plenty of vertical frequency available to display whatever refresh rate you want, but cannot use it at high resolutions because you will exceed your bandwidth. You can push the limits with your rated bandwidth (in an emergency, you can sometimes double it) to buy refresh rate, but your picture quality will decrease, and it will increase the wear on the monitor. You should try to avoid exceeding your vertical sync rate and never ever exceed the horizontal sync rate. Although dot-clock cannot exceed the bandwidth of the monitor, it cannot exceed the capabilities of your video card. This is usually determined by the video card's RAMDAC. My video card (A #9 771 with an S3-968 chip) has a pretty good 170MHz maximum dot clock; I think the average mach64 is stumbling around at 100MHz or so. Of course you don't lose anything if this is higher than your monitor bandwidth. XFree86 should tell you when it starts up, anyway. > I copied the modelines from my old machine to my new machine and they > work fine, but I'm wondering if I can do better. Typically modelines are monitor-limited. The only case where they would not be is if your video card is limited by the dot clock. > Any pointers to rtfm on the meaning of things like "hsync" and "vsync" > and "dot clock" also appreciated. Look for the XFree86-Video-Timings or Modelines HOWTO. If you can't find it, I'll send it to you. > VendorName "Magnavox" # I typed this in > ModelName "CM2015D1" # I typed this in See if you can't dig the specs up somewhere. > HorizSync 31.5 - 53 > VertRefresh 50-90 > Modeline "1024x768c" 65.0 1024 1036 1180 1304 768 771 777 802 -hsync > -vsync You can almost certainly do better than that - if your monitor is 17" or larger. If it's only 14" or 15" you might have fairly accurate readings there. Any 17" or better monitor will have a better HorizSync and bandwidth than that and, by extension, better refresh rates. That is only 65MHz of bandwidth, not very much.