Перенос настроек ModeLine дисплея с Windows на Linux
- Подробности
- Просмотров: 3118
Бывает в жизни так, что железо, которым мы пользуемся выполено не в лучших традициях совести. Так у меня случилось с монитором Samsung S19A300N. Поставил на комп Debian и вот: ну никак не удаётся настроить видеорежим. Вроде какой-то и выбран для вывода, но изображение так и ездит вверх-вниз влево-вправо по экрану. Если его всё же удаётся его позиционировать то обязательно что-то не так с его размером. Автонастройка есстественно не помагает. И что характерно на винде всё работало. Пришлось заставить работать на линуксе...
Итак коротко о мониторе: 18.5 дюйма, типичное разрешение - 1366x768, LED-подсветка с ШИМ-управлением, который при среднем уровни яркости таки просто выедает глаза. Но если подкрутить яркость, то можно что-то и делать с ним. Самое главное - едиственный разъем - аналоговый VGA.
Так как интерфейс аналоговый, то речь идёт о формировании несовсем коректного сигнала для этого монитора. Но винда формирует всё коректно, поэтому с неё и скопируем нужные нам настройки, а именно то, что в X11 назывют ModeLine. В этом нам пожет программа PowerStrip. Она вроде как платная но для того, чтобы скопировать ModeLine нам не нужно её покупать. Тут видим ссылку на скачивание. Качаем и ставим.
После перезагрузки запускаем программу, отвечаем на несколько тривиальных вопросов и заходим в настройки дисплея.
Оттуда заходим в расширенные настройки таймингов дисплея.
А в этих самих настройках нажимаем кнопку копирования настроек в буффер обмена.
Далее открываем любой текстровый редактор (типа Notepad) и вставляем содержимое буффера туда. Получим что-то типа этого:
PowerStrip timing parameters:
1360x768=1360,88,144,208,768,1,3,23,85908,2048
Generic timing details for 1360x768:
HFP=88 HSW=144 HBP=208 kHz=48 VFP=1 VSW=3 VBP=23 Hz=60
VESA detailed timing:
PClk=85,91 H.Active=1360 H.Blank=440 H.Offset=72 HSW=144 V.Active=768 V.Blank=27 V.Offset=1 VSW=3
Linux modeline parameters:
"1360x768" 85,908 1360 1448 1592 1800 768 769 772 795 +hsync +vsync
Последняя строка - это как раз то, что нам нужно. Остаётся применить на целевой системе.
Так как в последнее время в иксах много изменений касательно конфигурации, то привожу последовательность команд для активации полученного видеорежима на текущем сеансе работы (используется программа xrandr).
$ xrandr --newmode "1360x768_60" 85.908 1360 1448 1592 1800 768 769 772 795 +HSync +VSync
$ xrandr --addmode default "1360x768_60"
$ xrandr --output default --mode "1360x768_60"
Где default - имя выхода видеокарты, используйте xrandr, чтобы посмотреть какие выходы у Вас есть и какой активен.
Я это запихнул в .xsession и теперь видеорежим автоматически переключается при входе в систему.