History log of /haiku/src/add-ons/accelerants/common/create_display_modes.cpp
Revision Date Author Comments
# eb2b3762 12-Mar-2022 Rudolf Cornelissen <rudhaiku@gmail.com>

various fgx drivers: fix cloning accelerants, allow for modelist cloning.


# 1e0fdd6d 27-Sep-2021 Rudolf Cornelissen <rudhaiku@gmail.com>

accelerants common:BWindowScreen.CanControlFrameBuffer() now says OK. Note that these mode.flags are _outputs_ from the accelerants


# 63bd351f 08-Jun-2021 Rudolf Cornelissen <rudhaiku@gmail.com>

Intel_extreme and some others: replaced 1920x1080 modeline with nVidia one. Fixes out of range for some panels


# 564aac42 07-Jan-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

Add a 1360x768 mode to the "well known modelines"

- This is the native resolution of two of my displays here
- I am bored of manually setting it with screenmode -m
- Also fix the 1366x768 modeline which was 100Hz instead of the
advertised 60Hz.


# 0ed07650 03-Jun-2014 Axel Dörfler <axeld@pinc-software.de>

create_display_modes: added missing 1600x900.

* Might help with #10878.
* 1366x768 was at the wrong spot.


# 1d5e2248 23-Nov-2012 Ithamar R. Adema <ithamar@upgrade-android.com>

Add modeline for 1366x768 resolution

This is the native resolution for my Sony Vaio laptop, but somehow is
not properly picked up automatically.


# b5cc636f 09-Dec-2011 Michael Lotz <mmlr@mlotz.ch>

Make a copy of the mode list as it might be realloced later.

The fModes array is realloc'ed as needed when adding modes. Therefore
the fModes pointer handed in to AddModes() becomes invalid once
_MakeSpace() returns in that function causing a freed memory block to
be used as input.

To avoid that we make a copy of the base mode list and then use that to
add the modes for each color space.


# 8a0a741d 10-Sep-2011 Axel Dörfler <axeld@pinc-software.de>

* Added missing but very common 1920x1080 resolution at 60Hz refresh. This
should help with #7419.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42737 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d3d53515 19-Jul-2011 Axel Dörfler <axeld@pinc-software.de>

* Add the width, and height to fill_display_mode(). This should help with #7751
this time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42454 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b2a77322 16-Jul-2011 Axel Dörfler <axeld@pinc-software.de>

* Don't crash if initialModes is NULL, but the count is not.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42440 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0ba65dce 14-Jul-2011 Axel Dörfler <axeld@pinc-software.de>

* Added TODOs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42428 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 95009aee 13-Jul-2011 Axel Dörfler <axeld@pinc-software.de>

* Imported Andy Ritger's GTF code in compute_display_timing.cpp, and mangled it
into a usable function - this has some coding style issues I did not care to
fix.
* _AddBaseMode() now computes the mode in case it is not present in the list
yet.
* This should help with bug #7787.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42420 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7badc72c 31-Jul-2009 Axel Dörfler <axeld@pinc-software.de>

* Missing EDID video modes are now added from the base mode list, resolving
a TODO.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32019 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 258ca318 15-Jan-2009 Axel Dörfler <axeld@pinc-software.de>

* Another try for ticket #2791, this time using the modeline proposed by
tigerdog; let's see how many complaints we get this time :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28913 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 79566892 03-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Removed the extraneous 640x480 modes as pointed out by Gerald.
* Disabled "timing.sync != 3" check that potentially ignores modes that we might
want to have. We could also add the mode by resolution in that case, and
ignore the timing info completely. There should be an open bug about this,
but I couldn't find it.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26762 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c54a6536 13-Apr-2008 Axel Dörfler <axeld@pinc-software.de>

Committed patch by Gerald Zajac, thanks!:
* Enabled testing the checksum of the EDID info.
* Added a version check of the EDID info.
* Added more debug output.
* In the ModeList class, changes were made to how the refresh rate is
computed and used. Previously, some of the basic VESA modes were not
added to the mode list because the computed and specified refresh rates
did not exactly match. Now if the computed refresh rate is within 1.2%
of the specified rate, the mode is added. With this change, all basic
VESA modes selected by the EDID info are now added to the mode list.
* The "additional video modes" shown in the EDID dump are now added to
the mode list. Previously, this mode data was setup but not added to
the mode list. Code was also added here to set the vertical &
horizontal sync polarity according the EDID info. The sync polarities
are set according to a VESA document that I have.
* Fixed copy_str() warning, broken removal of trailing spaces, and null
termination.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24959 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f54507d7 29-Mar-2008 Axel Dörfler <axeld@pinc-software.de>

Applied patch by Gerald Zajac:
* Adds mode 1152x864 @60 Hz
* Adds mode 1400x1050 @75 Hz
* Adds a blank line between each of the different resolutions to make
the list more readable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24638 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6c398600 02-Mar-2008 Axel Dörfler <axeld@pinc-software.de>

* Added 1280x800x60, thanks Michael!
* Also added 800x480x60.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24209 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4165dff9 01-Mar-2008 Axel Dörfler <axeld@pinc-software.de>

Added modes for 1270x720 and 1400x1050 to the generic mode list.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24189 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4020e749 19-Nov-2007 Axel Dörfler <axeld@pinc-software.de>

Replaced the old 1920x1200 resolution mode line with another one with a slightly
higher pixel clock, tested by Dr. Hartmut Reh.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22955 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fe2aaee7 21-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

* Corrected mode creation; can't reuse the EDID values as is.
* The sync flags still aren't handled correctly, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22648 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f6e4cbb9 15-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

* Rewrote BeBuild.h which had "a few" consequences (got rid of all those class
definitions).
* Minor cleanup here and there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22577 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7bdf92f3 12-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

Started a create_display_modes() function that should be used by accelerants
to create their mode list. Once it's done, it should cover all possible cases,
and allow the base mode list to reside in the app_server (under Haiku, at least),
so that all drivers will benefit from an updated list.
Right now, it might already work to a degree, but it's not yet tested.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22517 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0ed0765067b27cc80064512f930a3942be4667ff 03-Jun-2014 Axel Dörfler <axeld@pinc-software.de>

create_display_modes: added missing 1600x900.

* Might help with #10878.
* 1366x768 was at the wrong spot.


# 1d5e2248f27a05c0a4be1de8becdbb0fb9f0c693 23-Nov-2012 Ithamar R. Adema <ithamar@upgrade-android.com>

Add modeline for 1366x768 resolution

This is the native resolution for my Sony Vaio laptop, but somehow is
not properly picked up automatically.


# b5cc636fa4ccd73498a0ac8d184ff192799d5d27 09-Dec-2011 Michael Lotz <mmlr@mlotz.ch>

Make a copy of the mode list as it might be realloced later.

The fModes array is realloc'ed as needed when adding modes. Therefore
the fModes pointer handed in to AddModes() becomes invalid once
_MakeSpace() returns in that function causing a freed memory block to
be used as input.

To avoid that we make a copy of the base mode list and then use that to
add the modes for each color space.


# 8a0a741db6ecbe56b09ee5142c3628f8f05ed58a 10-Sep-2011 Axel Dörfler <axeld@pinc-software.de>

* Added missing but very common 1920x1080 resolution at 60Hz refresh. This
should help with #7419.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42737 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d3d53515a9e81be00e5c1d6eefa819de0098b2dd 19-Jul-2011 Axel Dörfler <axeld@pinc-software.de>

* Add the width, and height to fill_display_mode(). This should help with #7751
this time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42454 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b2a7732258b7a4ea3d82828e59099cbeae505091 16-Jul-2011 Axel Dörfler <axeld@pinc-software.de>

* Don't crash if initialModes is NULL, but the count is not.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42440 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0ba65dce691b3562d6f628093effb9dd87fc31c6 14-Jul-2011 Axel Dörfler <axeld@pinc-software.de>

* Added TODOs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42428 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 95009aeeb07fa52326b41fb61963185a1d1f6042 13-Jul-2011 Axel Dörfler <axeld@pinc-software.de>

* Imported Andy Ritger's GTF code in compute_display_timing.cpp, and mangled it
into a usable function - this has some coding style issues I did not care to
fix.
* _AddBaseMode() now computes the mode in case it is not present in the list
yet.
* This should help with bug #7787.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42420 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7badc72cf1d72904b4665b908f27d7326d6685e4 31-Jul-2009 Axel Dörfler <axeld@pinc-software.de>

* Missing EDID video modes are now added from the base mode list, resolving
a TODO.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32019 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 258ca3186eef16131155bfbaaae14b3f5265958e 15-Jan-2009 Axel Dörfler <axeld@pinc-software.de>

* Another try for ticket #2791, this time using the modeline proposed by
tigerdog; let's see how many complaints we get this time :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28913 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7956689223fde2b21a996bfdc9a7849705f3d1dc 03-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Removed the extraneous 640x480 modes as pointed out by Gerald.
* Disabled "timing.sync != 3" check that potentially ignores modes that we might
want to have. We could also add the mode by resolution in that case, and
ignore the timing info completely. There should be an open bug about this,
but I couldn't find it.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26762 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c54a6536d67c85b7d54ee153ac984200bdbf727f 13-Apr-2008 Axel Dörfler <axeld@pinc-software.de>

Committed patch by Gerald Zajac, thanks!:
* Enabled testing the checksum of the EDID info.
* Added a version check of the EDID info.
* Added more debug output.
* In the ModeList class, changes were made to how the refresh rate is
computed and used. Previously, some of the basic VESA modes were not
added to the mode list because the computed and specified refresh rates
did not exactly match. Now if the computed refresh rate is within 1.2%
of the specified rate, the mode is added. With this change, all basic
VESA modes selected by the EDID info are now added to the mode list.
* The "additional video modes" shown in the EDID dump are now added to
the mode list. Previously, this mode data was setup but not added to
the mode list. Code was also added here to set the vertical &
horizontal sync polarity according the EDID info. The sync polarities
are set according to a VESA document that I have.
* Fixed copy_str() warning, broken removal of trailing spaces, and null
termination.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24959 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f54507d7482f7db8a3339714a0bd8f177145658e 29-Mar-2008 Axel Dörfler <axeld@pinc-software.de>

Applied patch by Gerald Zajac:
* Adds mode 1152x864 @60 Hz
* Adds mode 1400x1050 @75 Hz
* Adds a blank line between each of the different resolutions to make
the list more readable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24638 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6c39860087174880c320fd410aa6b3a9e1c3f119 02-Mar-2008 Axel Dörfler <axeld@pinc-software.de>

* Added 1280x800x60, thanks Michael!
* Also added 800x480x60.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24209 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4165dff999d4b691fdb33509ad1e0be6f998d524 01-Mar-2008 Axel Dörfler <axeld@pinc-software.de>

Added modes for 1270x720 and 1400x1050 to the generic mode list.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24189 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4020e749da6a20d18149a4b143f6e8b8921191e0 19-Nov-2007 Axel Dörfler <axeld@pinc-software.de>

Replaced the old 1920x1200 resolution mode line with another one with a slightly
higher pixel clock, tested by Dr. Hartmut Reh.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22955 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fe2aaee7ecd42620c6c4ca0fe7e491b5df0cb807 21-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

* Corrected mode creation; can't reuse the EDID values as is.
* The sync flags still aren't handled correctly, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22648 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f6e4cbb95290a74b33d012600438b84742b0e572 15-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

* Rewrote BeBuild.h which had "a few" consequences (got rid of all those class
definitions).
* Minor cleanup here and there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22577 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7bdf92f3f7bb32ada0a6f2c705f66bff0aecf3b4 12-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

Started a create_display_modes() function that should be used by accelerants
to create their mode list. Once it's done, it should cover all possible cases,
and allow the base mode list to reside in the app_server (under Haiku, at least),
so that all drivers will benefit from an updated list.
Right now, it might already work to a degree, but it's not yet tested.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22517 a95241bf-73f2-0310-859d-f6bbb57e9c96