The xrandx X11 extension is very handy. Using it for wine makes great sense.
But... the extension also enumerates a whopping amount of modes. Each resolution has a multitude of frequencies and bit-depth variants.
Some applications are simply not prepared for that magnitude of information when they call EnumDisplaySettings() (user32) or EnumDisplayModes (ddraw).
When using "normal" windows, only a few modes are returned.
I know its not a bug, as it could happen on Windows if someone published a driver which implemented tons of silly and crooked modes.
Would it be acceptable to insert a filter in xrandx.c (X11-drv), which only allowed "normal" windows resolutions to be enumerated? Does anyone need those awkward ones?
The filter would look allot like the one in desktop.c (X11-drv) which is currently used by the desktop mode.
I already fixed a portion of the bugs caused by this, as there was a natural limitation which should be set by EnumDisplayModes() which was not honored. I sent in patch for this already. So at least now we can play the classic "Grand Theft Auto"....
Thanks,
/p
On 04/01/2008, Peter Dons Tychsen donpedro@tdcadsl.dk wrote:
The xrandx X11 extension is very handy. Using it for wine makes great sense.
But... the extension also enumerates a whopping amount of modes. Each resolution has a multitude of frequencies and bit-depth variants.
Some applications are simply not prepared for that magnitude of information when they call EnumDisplaySettings() (user32) or EnumDisplayModes (ddraw).
When using "normal" windows, only a few modes are returned.
I know its not a bug, as it could happen on Windows if someone published a driver which implemented tons of silly and crooked modes.
Would it be acceptable to insert a filter in xrandx.c (X11-drv), which only allowed "normal" windows resolutions to be enumerated? Does anyone need those awkward ones?
The filter would look allot like the one in desktop.c (X11-drv) which is currently used by the desktop mode.
I already fixed a portion of the bugs caused by this, as there was a natural limitation which should be set by EnumDisplayModes() which was not honored. I sent in patch for this already. So at least now we can play the classic "Grand Theft Auto"....
Thanks,
/p
Is this with a specific X driver? The binary nvidia driver only lists modes explicitly declared in xorg.conf.
H. Verbeet wrote:
On 04/01/2008, Peter Dons Tychsen donpedro@tdcadsl.dk wrote:
The xrandx X11 extension is very handy. Using it for wine makes great sense.
But... the extension also enumerates a whopping amount of modes. Each resolution has a multitude of frequencies and bit-depth variants.
Some applications are simply not prepared for that magnitude of information when they call EnumDisplaySettings() (user32) or EnumDisplayModes (ddraw).
When using "normal" windows, only a few modes are returned.
I know its not a bug, as it could happen on Windows if someone published a driver which implemented tons of silly and crooked modes.
Would it be acceptable to insert a filter in xrandx.c (X11-drv), which only allowed "normal" windows resolutions to be enumerated? Does anyone need those awkward ones?
The filter would look allot like the one in desktop.c (X11-drv) which is currently used by the desktop mode.
I already fixed a portion of the bugs caused by this, as there was a natural limitation which should be set by EnumDisplayModes() which was not honored. I sent in patch for this already. So at least now we can play the classic "Grand Theft Auto"....
Thanks,
/p
Is this with a specific X driver? The binary nvidia driver only lists modes explicitly declared in xorg.conf.
Huh? I don't declare any mode in the xorg.conf and i'm using the nvidia binary driver. The drivers can figure out nowadays what works or doesn't. I get 9 modes back but i have a max resolution of only 1280x1024.
bye michael