Skip to Content.
Sympa Menu

baslinux - Re: [BL] SVGA X server and Tseng PCI card, was Re: Abiword in Bl2 was Re: dosemu? wp51?

baslinux AT lists.ibiblio.org

Subject: Baslinux mailing list

List archive

Chronological Thread  
  • From: sindi keesan <keesan AT sdf.lonestar.org>
  • To: baslinux AT lists.ibiblio.org
  • Subject: Re: [BL] SVGA X server and Tseng PCI card, was Re: Abiword in Bl2 was Re: dosemu? wp51?
  • Date: Tue, 18 Oct 2005 21:38:07 +0000 (UTC)

I found a site suggesting various ways to cure problems with SVGA server and Tseng. I tried horizsync 31.5 (fixed) and res 640x480 as the only mode (8 bit color). I tried Chipset "et6000", and Options "slow_dram", "pci_burst_off", "w32_interleave_off" and "noaccell". They suggest using a slower bus speed (33MHz - but I think I am already using that).

Another suggestion was to remove the Hercules MGA board because it can cause problems (including crashes, stray pixels, etc....)
ARGHH [TM] I am using this card BECAUSE it is supposed to work with the MGA card (it is PCI).

The full text is attached to this mail. Any other ideas what to do besides give up on this card with SVGA server?
I can switch to a plain S3 without framebuffer.

On Tue, 18 Oct 2005, sindi keesan wrote:

From August of this year (2005).

I have two computers with two PCI Tseng video cards, both VESA 2.0, which
I can use with David's framebuffer kernel to get 100 and 132 column small
text, or for xfbdev. I can also get 100 column text without framebuffer
using any Tseng card, which S3 can't do (just 132). So I am persisting in
trying to make the cards work in Linux.

BL2 xset does not work with BL2 Xvesa (from delilinux) or xfbdev (complied
by David Moberg) and therefore since Abiword requires xset to set the
fonts directory, I need to use standard X for Abiword and BL2. (BL3 xset
works properly with Xvesa). Standard X did not work correctly with rxvt
until I edited rgb.txt to correct an error (related to Black or black - I
had to add one of these, I forget which).

I can't use BL3 xset easily with BL2 because it uses a different
libX11.so.6. I think there is some way to point xset at an older version
of this library but if possible I would prefer not to get into that.

The 2.5MB Tseng video card in one computer works well with the SVGA
server because xset works with normal X (but not with Xvesa).

Both cards display with Xvesa but they crash frequently on exit from X
(making the VT unusable until I reboot). (And Abiword won't work with
Xvesa because xset won't work with it).

The second Tseng card (with 2MB RAM) won't work for me with SVGA server
and horizsync 31.5-56.4 or even lower frequencies on an IBM monitor that
worked okay with a Matrox card at 56.4 horizsync.

My other PCI video cards are not VESA 2.0 so won't do framebuffer.
My AGP video cards are VESA 2.0 but can't be used together with a Hercules
(MGA) card, which I use in order to view on two monitors at once (MGA uses
different RAM from the text part of PCI VGA). So I really want to be able
to use this PCI VESA 2.0 card with X.

When I try to run X (xinit) using SGVA X server on this second card:

Using VESA driver ..... VBE 2.0
_X11TransSocketUNIXCOnnect: Can't connect: errno = 111
(I get many repeats of this until I Ctrl-C to give up).

I set up XF86Config using xf86config (I think I also first tried Steven's
default for 256 colors, which is enough for Abiword).

BL3 works fine with Abiword and Xvesa. BL2 Xvesa won't work with BL2
xset.

So I can chroot to BL3 to run Abiword if needed, but there is still the
problem of Xvesa crashing with this Tseng card. It also sometimes freezes
up, or does other odd things (moves the screen halfway to the left and
wraps, with xpdf).

I have not tried W32 driver. It and SVGA worked equally well on the other
Tseng. Should I try it? Or attempt to make BL3 xset work in BL2 and if
so please remind me how to point it at the libc5 libX11.so.6.

I am back to this because today someone to whom I sent a text file wanted
it in WORD format. I tried VDE under dosemu, but it would not Import any
format (invalid key) and I did not want to retype the file as a WORD file.
WP5.1 does not work properly under dosemu. They were in a hurry so I did
not want to reboot into DOS, import to WP51, reformat, reboot into Linux,
and go back online to send the file. In the meantime they found someone
else to do the job in WORD.

I should have thought of using Abiword in BL3. But xpdf was also having
problems under Xvesa. And then X crashed on exit.
[1]Information for Tseng Chipset Users : Trouble shooting with the
SVGA Tseng driver
Previous: [2]Linear addressing and 16bpp/24bpp/32bpp modes
Next: [3]Acknowledgments
_________________________________________________________________

15. Trouble shooting with the SVGA Tseng driver

First of all, make sure that the default modes selected from your
XF86Config are supported by your monitor, i.e. make sure the
horizontal sync limit is correct. It is best to start with standard
640x480x256 with a 25.175 MHz clock (by specifying a single horizontal
sync of 31.5) to make sure the driver works on your configuration. The
default mode used will always be the first mode listed in the modes
line, with the highest dot clock listed for that resolution in the
timing section.

Some general hints:
* Put Option "slow_dram" in the Device Section.
* Put Option "pci_burst_off" in the Device Section.
* Put Option "w32_interleave_off" in the Device Section.
* Take out the Hercules monochrome adapter, if you have one. Many
configurations of the ET4000/W32 series do not allow one in the
system.
* Get a motherboard with its local bus running at 33 MHz. Many, if
not all, ET4000/W32 boards will surely behave in a funny way on a
50-MHz bus. You may have to use a wait state or two, but first try
without any.
* Cold-boot your machine. Do not run anything that messes with the
video hardware, including other X servers, before running
XF86_SVGA.
* In case of an ET6000 card, try specifying chipset "et6000" in the
Device Section. The card normally auto-probes from the PCI bus,
but on some systems, another on-board VGA card, although disabled,
may cause the ET6000 server to want to use the other card.

Note that some VESA standard mode timings may give problems on some
monitors (try increasing the horizontal sync pulse, i.e. the
difference between the middle two horizontal timing values, or try
multiples of 16 or 32 for all of the horizontal timing parameters).

There is a video signal, but the screen doesn't sync.
You are using a mode that your monitor cannot handle. If it is
a non-standard mode, maybe you need to tweak the timings a bit.
If it is a standard mode and frequency that your monitor should
be able to handle, try to find different timings for a similar
mode and frequency combination.

Horizontal jitter at high dot clocks.
This problem shows up especially when drawing operations such
as scrolling or blitting are in progress. There is currently no
easy fix for this, You can try the "fast_dram" option, or use a
lower dot clock. If that is not sufficient, the "noaccel"
option will almost always help (it leaves more bandwidth for
the RAMDAC). In most cases, this is caused by the video memory
not being able to provide pixel data to the RAMDAC fast enough,
so it gets fed with garbage.

`Wavy' screen.
Horizontal waving or jittering of the whole screen,
continuously (independent from drawing operations). You are
probably using a dot clock that is too high; it is also
possible that there is interference with a close MCLK. Try a
lower dot clock (sometimes even dropping it by 0.5 MHz may
work). You can also try to tweak the mode timings; try
increasing the second horizontal value somewhat. Here's a 65
MHz dot clock 1024x768 mode (about 60 Hz) that might help:

"1024x768" 65 1024 1116 1228 1328 768 783 789 818

Crash or hang after start-up (probably with a black screen).
Try the "noaccel" option. Check that the BIOS settings are OK;
in particular, disable caching of 0xa0000-0xaffff. Disabling
hidden DRAM refresh may also help.

On Linux systems, if "APM" (power management) support is
enabled in the kernel, the server may start up in power-save
mode or with a black screen. Rebuild your kernel with APM
support disabled.

Crash, hang, or trash on the screen after a graphics operation.
This may be related to a bug in one of the accelerated
functions, or a problem with the BitBLT engine. Try the
"noaccel" option. Also check the BIOS settings.

`ACL: TIMEOUT' messages from the server.
Same as for the above entry. However, on some systems, the
problem will not go away no matter what you do. It may be
related to the operating system you use (it has only been seen
on Linux systems, and even then it depends on the kernel
versions). Sometimes, choosing another MemBase may help.

Occasional erroneous pixels in text, pixel dust when moving
window-frame
Probably related to MCLK setting that is too high (can happen
with linear addressing even though banked mode runs OK). Most
(if not all) ET6000 cards are sold with the MCLK slightly over
clocked for performance (the current norm is 90 or 92 MHz),
which may cause these problems. There is currently no fix for
this. If the pixel dust is only temporary (it disappears as
soon as nothing moves on the screen anymore), then memory
bandwidth is probably the cause. The only solution is to
disable acceleration, or, if that doesn't help, using a lower
pixel clock.

Textmode is not properly restored
This has been reported on some configurations. Sometimes a
Chipset line will fix this. Normally you should be able to
restore the textmode font using a utility that sets it
(setfont, runx, restorefont on Linux).

Mostly black or blue screen when using accelerated driver features
If you are seeing a mostly black or blue screen, with only a
few icons (pixmaps) displayed, this section applies to you.

There can be several causes for this.

One is if the amount of memory is not detected (or specified)
correctly. If the server's autodetection mechanism detects too
much memory, accelerated features will not work. Define the
amount of memory in the XF86Config file. This seems to happen
sometimes on some 2.25 MB ET6000 cards, where the server
detects 2.5 MB instead (add videoram "2304" in this particular
case).

If that doesn't help, disabling acceleration (option "noaccel")
is the only solution.

Problems with DMA hardware (floppy, tape)
On some systems, the accelerated server will interfere with
other hardware that uses ISA DMA. Most notably is the PC floppy
controller and sound cards. The floppy interface cannot cope
with inordinately long bus-holds, which may occur during large
accelerated operations. The Linux-ftape module for example (a
floppy-tape driver) will generate lots of "write error"
messages when running a backup or restore operation while the
X-server is in use. These errors should not be fatal, but that
all depends on how well the operating system handles these
conditions. Linux seems to cope.

There are two possible solutions: disable acceleration using
the "noaccel" option, or disable PCI-retry (which is causing
the large bus delays) by removing the "pci_retry" option. This
will cause a very small slowdown of accelerated operations.

The "pci_retry" option applies not only to the PCI bus systems,
but has a similar effect on other busses.

"Cannot read colourmap from VGA. Will restore with default"
If this error occurs, the server was unable to properly
initialize the RAMDAC, and tries to restore a default color
map. On some unsupported RAMDACs, this will have the adverse
effect of removing all color altogether, leaving you with a
bunch of weird colors, or with a completely black screen. If
that happens, add the ramdac "normal" statement to the Device
section in your XF86Config file. In most cases, this will solve
the color problem.

Why does the server report my ModeLine with only half the pixel clock?
For ET4000W32p cards at 8bpp, some modes using a clock over 75
MHz (e.g. a 1152x910 mode with 95 MHz pixel clock) will produce
the following message in the Xserver output:

(--) SVGA: Mode "1152x910" will use pixel multiplexing

And later, when the accepted modelines are reported:

(**) SVGA: Mode "1152x910": mode clock = 47.500

This is normal, because with pixel multiplexing, only half the
clock is needed as two pixels are sent to the RAMDAC per clock
pulse.

For other screen drawing related problems, try the "noaccel" option.

If you are having driver-related problems that are not addressed by
this document, or if you have found bugs in accelerated functions, you
can try contacting the XFree86 team.

In fact, reports (success or failure) are very welcome, especially on
configurations that have not been tested. You can do this via the
BetaReport form (mail it to report AT XFree86.org). You may want to keep
an eye on forthcoming beta releases at www.xfree86.org.
_________________________________________________________________

[4]Information for Tseng Chipset Users : Trouble shooting with the
SVGA Tseng driver
Previous: [5]Linear addressing and 16bpp/24bpp/32bpp modes
Next: [6]Acknowledgments

References

1. http://www.xfree86.org/3.3.6/tseng.html
2. http://www.xfree86.org/3.3.6/tseng14.html
3. http://www.xfree86.org/3.3.6/tseng16.html
4. http://www.xfree86.org/3.3.6/tseng.html
5. http://www.xfree86.org/3.3.6/tseng14.html
6. http://www.xfree86.org/3.3.6/tseng16.html



Archive powered by MHonArc 2.6.24.

Top of Page