Changes between Initial Version and Version 1 of Ticket #7787, comment 5


Ignore:
Timestamp:
Jul 14, 2011, 9:13:58 AM (11 years ago)
Author:
ttcoder

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #7787, comment 5

    initial v1  
    44- Examining the Screen preflet more, I think I understand the sequence to be like thus: Screen [http://dev.haiku-os.org/browser/haiku/trunk/src/preferences/screen/ScreenMode.cpp#L162 calls] ->BScreen::GetModes(), which -> gets to the server side (app_server) Screen class, which -> calls AccelerantHWInterface's [http://dev.haiku-os.org/browser/haiku/trunk/src/servers/app/drawing/AccelerantHWInterface.cpp#L733 accelerant hook] ... which might (or might not, in the case of older drivers) call create_display_modes() (in accelerants/common).
    55- So in short, the Screen preflet relies on the accelerant to call (or not) create_display_modes(), which is needed to get the best possible listing of modes (from all sources: EDID Vesa modes, EDID Std modes, EDID DetailedMonitor mode, the hardcoded base modes list, the whole shebang).
     6- Edit:
     7- since r42420 create_display_mode() (called by the VESA driver and others) ensures that the General Timing Function compute_display_timing() is called at least on one mode, as a fall-back option.
     8- since r42421 the VESA driver additionally calls GTF-compute_display_timing() itself, as well, on its hardcoded list of modes.
    69- So next I have to dig in the bootloader's video.cpp file to see if it does the same (call create_display_modes()) or not..
    710