Page 1 of 2

Pivot monitor support on driver level?

Posted: Sun Aug 06, 2017 8:56 pm
by amifrog
I've asked this in another forum already but this might be the right spot to suggest a feature i would like to see in AOS4:

The support of pivot monitors.

That is when you turn a monitor to 90° or 270° and the screenmode handling software should recognize this, maybe after a reboot but optimaly of course onthefly.

I realize this is not easily done with a different width and height resolution swap but with a different way how the driver 'paint' the display contens.

What are your thoughts about this?

https://en.wikipedia.org/wiki/Page_orie ... on_methods

Edit
I've learned that the orientation of input/output of mouse coords x&y also has to be swapped. Input.device and stuff....

Re: Pivot monitor support on driver level?

Posted: Mon Aug 07, 2017 12:34 am
by tonyw
How can the driver know the orientation of the display? Does the DDC data stream include an indicator from a built-in accelerometer?

Re: Pivot monitor support on driver level?

Posted: Tue Aug 08, 2017 11:43 pm
by amifrog
When the Monitor type/name is known to the system (e.g. the display driver), an 'instant' swap of displaywidth and -height could be an indication of a rotated monitor. This rotation has to be checked, of course. Maybe the monitor itself reports this via communication channels on the display bus?
https://touch-base.com/documentation/Rotate.htm

Re: Pivot monitor support on driver level?

Posted: Wed Aug 09, 2017 12:03 am
by amifrog
I don't really know what to look for, but
googling
'dvi display orientation detection' brings up alot of stuff. Maybe this helps?

I cannot provide any h/w informations about monitors and their communication, sorry.

Re: Pivot monitor support on driver level?

Posted: Sat Aug 12, 2017 1:46 pm
by Raziel
Don't hold your breath, this feature is probably not even on any todo list anyway

Re: Pivot monitor support on driver level?

Posted: Wed Aug 16, 2017 9:52 pm
by amifrog
Yeah, i know.

But while implementing new features to the drivers, maybe it is recommended to add those concerns or future features onto the remarks&considerations list.;)

Re: Pivot monitor support on driver level?

Posted: Sat Aug 26, 2017 4:33 pm
by Raziel
amifrog wrote:Yeah, i know.

But while implementing new features to the drivers, maybe it is recommended to add those concerns or future features onto the remarks&considerations list.;)
I bet this will be a feature "that has to be done by program authors" that want this supported

Re: Pivot monitor support on driver level?

Posted: Wed Sep 04, 2019 4:18 am
by tonyw
I've recently been learing about EDID, the protocol used for communication between monitor and graphics device driver.

Unfortunately, nowhere in the published spec (see https://en.wikipedia.org/wiki/EDID) is monitor orientation mentioned. So I'm afraid that there appears to be no (standard) way for the software to know which way the monitor is turned. Perhaps some manufacturers have used (unused) attribute indicators in the standard for this purpose.

Re: Pivot monitor support on driver level?

Posted: Wed Sep 04, 2019 8:30 am
by nbache
tonyw wrote:Unfortunately, nowhere in the published spec (see https://en.wikipedia.org/wiki/EDID) is monitor orientation mentioned.
Just speculating: Is it possible that on other platforms this is handled by the monitor reporting a new (rotated) native resolution when it is rotated, and the driver being able to detect this change? Then we could just define screenmodes with the width and height swapped and switch to the other one.

Best regards,

Niels

Re: Pivot monitor support on driver level?

Posted: Wed Sep 04, 2019 11:55 pm
by tonyw
Niels, there are "reserved" fields in the specification, where manufacturers can define their own private attributes. I suspect that is how a pivoted monitor communicates with its driver. Remember that a Windows driver is usually provided by the monitor manufacturer, so they can define their own private modes and EDID data.

In order for someone else to use the orientation data, they would have to reverse-engineer the data (which shouldn't be that hard, considering that it's an open specification and only uses 127 bytes). Then you would have to decide what to do with it. If the user rotates her monitor from portrait to landscape, do they advise the tasks which created each screen? Each window? Or do they simply rotate the display and everything on it? There is no API at the moment (Picasso96 or graphics) that you could expand to cope with such an enhancement.