[6073] in Athena Bugs

home help back first fref pref prev next nref lref last post

x11r4 preprocessor conditionals in qvss_io.c

daemon@ATHENA.MIT.EDU (Ken Raeburn)
Thu Sep 20 02:11:30 1990

Date: Thu, 20 Sep 90 02:11:00 EDT
From: Ken Raeburn <Raeburn@MIT.Edu>
To: bugs@ATHENA.MIT.EDU
Cc: cfields@ATHENA.MIT.EDU

Many of the sections under "#ifdef ULTRIX3_0" would be reasonable to
use, since they apply to the SM device.  Mark Eichin's hack to set
"qvCursorSize" could be cut down to test "isSMdevice".

The compiler might be better able to optimize some of the branches that
are really identical (but are written as two different branches because
the data structures are slightly different) if the declaration of smInfo
is replaced with:

	#define smInfo ((struct sm_info *)qvInfo)

and the assignment to it deleted.

In fact, this comment near some of the relevant code indicates a likely
solution to a problem in the server I've complained about before:

/*
 * qv cursor top-left corner cannot go to negative coordinates,
 * but sm can.
 */

[I'm still not convinced the QV problem couldn't be fixed or hacked
around in kernel or server code.]

As Marc has just pointed out, this might also fix the problem that's
been reported where the mouse cursor can be moved to the far left, just
outside of a window, where it gets warped slightly to the right so the
"X" cursor can be used, which puts it inside a window, without the
cursor changing to the window's cursor.  If this lets the cursor go all
the way to the left, the changing of the cursor isn't an issue (on all
but the few remaining VS2s).

-- Ken

P.S.  I've been playing with video blanking.  (Real video blanking, not
the paint-the-screen-black stuff our servers are doing now.)  We might
be able to use it on the SM displays -- I have more tests to do -- but
the QV cuts out the entire signal, so we get the narrow-band display
that looks like the processor is switched off, so it might not be a good
idea.  If you're willing to have to deal with retraining the ops &
consulting people (and users) on this point, I can give you the changes;
they're fairly trivial....

home help back first fref pref prev next nref lref last post