LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   Why does monitor go out of sync in text mode but work ok in graphics mode? (https://www.linuxquestions.org/questions/linux-hardware-18/why-does-monitor-go-out-of-sync-in-text-mode-but-work-ok-in-graphics-mode-586290/)

tjsgifan 09-21-2007 05:50 AM

Why does monitor go out of sync in text mode but work ok in graphics mode?
 
Hi All,

I have a SUSE 10 install on a system with integrated ATI graphics (Basic RagePro type on a server board). I work in both graphics and text mode. Currently using an old (but good quality) CRT, it works fine in either mode.

Unfortunately, I now wish to move to a TFT display (Viewsonic VE710B in this instance) which works fine in graphics mode but if I log in to the machine in text mode the monitor gets "out-of-sync". I've looked at the xorg.conf file and it all looks OK, as I'm using the monitor set to VESA 1280x1024@60Hz. From what I can tell, the refresh rate is text mode is being pumped out at a higher frequency perhaps? But where is this set? I can't see anything in the xorg.conf file for text mode as such? Is it something obvious? I'm sorry if this is a duplicate post, but I've been googling for a couple of hours and all the problems I can find seem to be about the opposite of my problem where people can get the machine working ok in text mode but not in graphics mode!!

If I plug the CRT back into the machine in text mode it works fine, but i'm guessing that's just because the CRT's wider ranges... I tried it on another TFT (NEC Multisync 1710v) and although it comes up with an out of range error, that TFT still displays the text, albeit very fuzzy... I don't want to run that for long in case I damage the screen.

I'm pretty sure it's a simple frequency problem, but I'm stuck as to where you set it for text mode.

Any help much appreciated.

Thanks,

tjsgifan

GrapefruiTgirl 09-21-2007 06:04 AM

When you say 'text mode' do you mean in the console, like when you exit the X graphical environment? There is no specific setting for this that I am aware of - that is done in the framebuffer, not the X server.

Likely posting your xorg.conf file will help. Also, if you have the manual or specs for your monitor that isn't working right, please post the indicated Horizontal Scan rate, and vertical refresh rate, as well as the native resolution..

tjsgifan 09-21-2007 06:46 AM

Thanks for the speedy reply :) . I do mean in console mode when exited from the X graphical environment.

Output of current xorg.conf file is :

Section "Monitor"
DisplaySize 340 270
HorizSync 28-82
Identifier "Monitor[0]"
ModelName "1280X1024@60HZ"
VendorName "--> LCD"
VertRefresh 50-60
UseModes "Modes[0]"
EndSection


Section "Modes"
Identifier "Modes[0]"
Modeline "1280x1024" 105.15 1280 1360 1496 1712 1024 1025 1028 1059
Modeline "1280x960" 97.68 1280 1352 1488 1696 960 961 964 993
Modeline "1280x800" 80.58 1280 1344 1480 1680 800 801 804 827
Modeline "1152x864" 78.82 1152 1216 1336 1520 864 865 868 894
Modeline "1280x768" 77.37 1280 1344 1480 1680 768 769 772 794
Modeline "1024x768" 61.89 1024 1080 1184 1344 768 769 772 794
Modeline "800x600" 36.88 800 832 912 1024 600 601 604 621
Modeline "768x576" 33.74 768 792 872 976 576 577 580 596
Modeline "640x480" 23.06 640 656 720 800 480 481 484 497
EndSection


Section "Screen"
DefaultDepth 16
SubSection "Display"
Depth 15
Modes "1280x1024" "1280x960" "1280x800" "1152x864" "1280x768" "1024x768
" "800x600" "768x576" "640x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1280x1024" "1280x960" "1280x800" "1152x864" "1280x768" "1024x768
" "800x600" "768x576" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1280x1024" "1280x960" "1280x800" "1152x864" "1280x768" "1024x768
" "800x600" "768x576" "640x480"
EndSubSection
SubSection "Display"
Depth 32
Modes "1280x1024" "1280x960" "1280x800" "1152x864" "1280x768" "1024x768
" "800x600" "768x576" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1280x1024" "1280x960" "1280x800" "1152x864" "1280x768" "1024x768
" "800x600" "768x576" "640x480"
EndSubSection
Device "Device[0]"
Identifier "Screen[0]"
Monitor "Monitor[0]"
EndSection

Section "Device"
BoardName "Mach64 GR"
BusID "1:6:0"
Driver "ati"
Identifier "Device[0]"
Option "XaaNoPixmapCache" "on"
VendorName "ATI"
EndSection



Section "ServerLayout"
Identifier "Layout[all]"
InputDevice "Keyboard[0]" "CoreKeyboard"
InputDevice "Mouse[1]" "CorePointer"
Option "Clone" "off"
Option "Xinerama" "off"
Screen "Screen[0]"
EndSection

Section "DRI"
Group "video"
Mode 0660
EndSection

Section "Extensions"
EndSection



New monitor, is a Viewsonic VE710B which has the following specs : Frequency fh:30~80kHz, fv:50~85Hz

Optimum resolution 1280x1024

I did just see that the "HorizSync 28-82" is slightly out of range, but I am sure i've edited that in the last 24 hours but it made no differece.

As you say, I think the console mode isn't configured in the xorg.conf anyhow, so not sure that will make any differece. The only thing I don't understand is the last Section "DRI", although I assume it's a DRIver related file?

thanks,

tjsgifan

Gethyn 09-21-2007 06:49 AM

If you're booting to console mode and that's where the problem is, it might be worth looking at different framebuffer vga modes. This is controlled by passing an argument to the kernel at boot time, for example for 1280x1024 with 24-bit colour the code is "vga=0x31B". Try some different modes and see if that helps. You can find a list of modes in section 5.3 of this page, among others.

GrapefruiTgirl 09-21-2007 07:30 AM

DRI is for Direct Rendering. I'm not sure what the 'I' stands for exactly. Some drivers, like nVidia drivers, implement DRI on their own (built in), but ATI does not, it uses X's DRI, so that is why that is there.

Now, first things first, I agree with Gethyn, above: If the console is funny right from bootup, you should look into the framebuffer settings, which are set using your bootloader (LILO or GRUB) and ALSO through the framebuffer configuration inside your kernel.
If you are running a generic kernel, it probably includes just about everything it might need, but the framebuffer might be configured less than optimally for your setup.

Seeing as how the other monitors you have seemed to work fine, I suspect the kernel is OK. It would be worth trying Gethyns suggestion, and trying a few different modes, and also try 'vga=normal' and see if that works.

As for your xorg.conf file, let's see..

1 - Change the Horiz and Vert rates to match the monitors specs exactly. This can make a difference in general functioning, despite that we are dealing with the console, not the X environment.
2 - Definitely look on Google for a Modeline calculator, or find a list of proper modelines, and make sure that your options for modelines are within the frequency ranges for your monitor. For example (and I'm no good with modelines ;) ) the first number in a modeline represents a frequency, I believe. by looking at your 1280x1024 modeline, the frequency appears to be outside the range of your monitor. Again, don't quote me here, but it's worth looking into.
3 - Does this problem occur ONLY when LEAVING X and going to a console, and NOT during boot? If so, consider this: Your xorgf.conf file has no MODULES section. It's rare for this to be the case, as loaded modules can provide functionality that is otherwise missing from X. A typical MODULES section looks like this (from my own file):
Code:

Section "Module"
    Load  "dbe"
    Load  "extmod"
    Load  "type1"
    Load  "freetype"
    Load  "glx"
    Load  "fbdevhw"
    Load  "record"
    Load  "v4l"
    Load  "int10"
#  Load  "vnc"
EndSection

Two which you should particular be interested in are 'int10' and 'fbdevhw'. Int10 uses the Int10 BIOS call to instruct the video card to refresh when leaving the X environment, and fbdevhw is the "hardware framebuffer device' as opposed to the 'software' framebuffer which might be giving you troubles.
You may or may not need some or most or all of these modules, but check in the xorg.conf man page for more details on each one, and/or check the docs for your driver too.

Finally, adding a line like
Code:

Option "ConnectedMonitor" "DFP"
in the DEVICE section tells the X server that there is a digital flat panel monitor connected to the video card. It may help, or maybe not. Can't hurt to try it though. Other types are "CRT" and "TV" (and *maybe* "LCD" but I think DFP covers that).

I hope some of this helps you, or atleast leads you to some more information which may help too. Best of luck; keep us posted!

tjsgifan 09-27-2007 08:28 AM

Update
 
OK, so changing the initial startup config to VGA="normal" worked OK, could login perfectly well in console mode. I think I had it set to a higher resolution initially as I configured the machine when connected to a very high resolution CRT. I'll try some of the other settings as well to improve it a little on the looks department.

I'm still having a problem adding Nvidia NVS 400 quad port card into the same machine, but that may take a bit of time and I'll see if I can resolve that myself first before returning here.

Thanks to everyone for fast and useful pointers.

Toby.

GrapefruiTgirl 09-27-2007 08:42 AM

Hey great that you've made progress.
Figured I'd provide one more tidbit: I use vga="771" for my console. It gives good size text in the console, while not being a crazy high-resolution that may give problems. Plus, something else to consider is which console font(s) your kernel has enabled. Some fonts do not display well on with some video cards/drivers.

I believe there's a way to select a font on the fly during boot, but I can't recall it right at the moment.

Finally, for the other video modes you can specify from lilo, check the man page if you haven't already (man lilo.conf)

All the best!


All times are GMT -5. The time now is 08:20 PM.