On Thu, 3 May 2007 18:08:36 +0100, "Matthew Allum" wrote:
> On 5/3/07, Carl Worth <[EMAIL PROTECTED]> wrote:
> > But isn't this exactly one of the features provided by the new RandR
> > 1.2 stuff?
> 
> Can it - any more details ? Would seem a really nice fit if so.

Here's a link to the latest protocol specification [*]:

http://gitweb.freedesktop.org/?p=xorg/proto/randrproto.git;a=blob_plain;h=HEAD:randrproto.txt

Here's a short excerpt that talks about the new "CRTC" notion in 1.2
that's independent and configured separately from the screen:

    To extend RandR for this model, we separate out the output, CRTC
    and screen configuration information and permit them to be
    configured separately. For compatibility with the 1.1 version of
    the protocol, we make the 1.1 requests simultaneously affect both
    the screen and the (presumably sole) CRTC and output. The set of
    available outputs are presented with UTF-8 encoded names and may
    be connected to CRTCs as permitted by the underlying
    hardware. CRTC configuration is now done with full mode
    information instead of just size and refresh rate, and these modes
    have names. These names also use UTF-8 encoding. New modes may
    also be added by the user.

    Additional requests and events are provided for this new
    functionality.

       ┌────────────────────────────────┬──────────┐
    ┏━━━━━━━┳───────────────┐       ╔════════╗ ╔════════╗
    ┃   1   ┃               │       ║   A    ║ ║   B    ║
    ┃   ┏━━━╋━━━━━━━━━━━━━━━┫       ║        ║ ║        ║
    ┣━━━╋━━━┛               ┃       ╚════════╝ ╚════════╝
    │   ┃         2         ┃─────────────────┐
    │   ┃                   ┃        ╔═══════════════════╗ 
    │   ┃                   ┃        ║                   ║
    │   ┗━━━━━━━━━━━━━━━━━━━┫        ║        C          ║
    └───────────────────────┘        ║                   ║
    ┌──────┐  ┏━━━━┓  ╔══════╗       ║                   ║
    │screen│  ┃CRTC┃  ║output║       ╚═══════════════════╝
    └──────┘  ┗━━━━┛  ╚══════╝

    In this picture, the screen is covered (incompletely) by two
    CRTCs. CRTC1 is connected to two outputs, A and B. CRTC2 is
    connected to output C.  Outputs A and B will present exactly the
    same region of the screen using the same mode line. Output C will
    present a different (larger) region of the screen using a
    different mode line.

So to me that seems plenty flexible to do what's needed. The X server
could advertise two CRTCs: one covering the entire screen, and one
covering only half with pixel-doubling, and client-initiated events
could control which CRTC is connected to the output (obviously only
one in this device) at any given time.

Daniel, am I on the right track with this?

-Carl

[*] The gitweb process is spewing out the wrong character encoding, so
if you view this in a web browser, you'll need to manually change it
to UTF-8 instead of ISO-8859-1 to view it properly, (View->Character
Encoding->Unicode in firefox-ish browsers for example).

Attachment: pgp7UuYILNSET.pgp
Description: PGP signature

_______________________________________________
maemo-developers mailing list
maemo-developers@maemo.org
https://maemo.org/mailman/listinfo/maemo-developers

Reply via email to