* 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
This commit is contained in:
Axel Dörfler 2007-10-21 21:20:38 +00:00
parent 23128566a4
commit fe2aaee7ec

View File

@ -209,14 +209,16 @@ ModeList::AddModes(edid1_info* info)
display_mode mode;
mode.timing.pixel_clock = timing.pixel_clock * 10;
mode.timing.h_display = timing.h_active;
mode.timing.h_sync_start = timing.h_blank;
mode.timing.h_sync_end = timing.h_sync_off;
mode.timing.h_total = timing.h_sync_width;
mode.timing.h_sync_start = timing.h_active + timing.h_sync_off;
mode.timing.h_sync_end = mode.timing.h_sync_start + timing.h_sync_width;
mode.timing.h_total = timing.h_active + timing.h_blank;
mode.timing.v_display = timing.v_active;
mode.timing.v_sync_start = timing.v_blank;
mode.timing.v_sync_end = timing.v_sync_off;
mode.timing.v_total = timing.v_sync_width;
mode.timing.v_sync_start = timing.v_active + timing.v_sync_off;
mode.timing.v_sync_end = mode.timing.v_sync_start + timing.v_sync_width;
mode.timing.v_total = timing.v_active + timing.v_blank;
mode.timing.flags = POSITIVE_SYNC;
if (timing.interlaced)
mode.timing.flags |= B_TIMING_INTERLACED;
mode.space = B_RGB32;
mode.virtual_width = timing.h_active;
mode.virtual_height = timing.v_active;