Приступаем
Предположим, что у вас имеется любимый видеорежим XFree86, и вы хотите перенести его в Xinside: для этого следуйте приведенным ниже инструкциям, у вас все должно получиться; в примере я использую мой любимый режим и объясню, как преобразовал его для XInside.
Строка Xfree86 выглядит примерно так:
Modeline "blahblah" DOTCLK A B C D a b c d |
Каждое из чисел A-D и a-d имеет конкретное значение: если хотите, можете взглянуть в 'Руководство по настройке видеорежимов X386/XFree86' (/usr/lib/X11/doc/VideoModes.doc), но для преобразования одного формата в другой эта теория вам абсолютно не нужна...
Моя строка видеорежима в /usr/lib/X11/XF86Config выглядит так:
Modeline "1168x876" 105 1168 1256 1544 1640 876 877 891 900 | | | | | | | | | DOT_CLK A B C D a b c d |
В Xinside, вам надо добавить секцию в файл Xtimings, который находится в etc/ (с этого момента я предполагаю, что вы находитесь в каталоге Xaccel, предположим /usr/X11/lib/X11/AcceleratedX)
! Где-то в файле. Поместите здесь необходимое название режима
[PREADJUSTED_TIMING] PreadjustedTimingName = "1168x876 @ 72Hz"; ! ! Эти четыре значения очевидны ! HorPixel = 1168; // точек VerPixel = 876; // строк PixelWidthRatio = 4; PixelHeightRatio = 3; ! ! hsync: DOT_CLK / D * 1000 [кГц] ! ! hsync = 105 / 1640 * 1000 = 64.024 кГц ! ! vsync: ( 1 / (( D / DOT_CLK ) * d) ) * 1,000,000 [Гц] ! ! vsync: ( 1 / (( 1640 / 105 ) * 900) ) * 1,000,000 ! ( 1 / 14057.1428571 ) * 1,000,000 = 71.138 Гц ! HorFrequency = 64.180; // кГц VerFrequency = 71.138; // Гц ! Очевидное значение ScanType = NONINTERLACED; ! ! Здесь проставьте значения соответственно параметрам +/-hsync и +/-vsync из настроек XFree86 ! HorSyncPolarity = POSITIVE; VerSyncPolarity = POSITIVE; ! Не изменяйте CharacterWidth = 8; // pixels ! Здесь укажите значение DOT_CLK PixelClock = 105.000; // MHz ! ! ! интервалы горизонтальной развертки: [мкс] ! HorTotalTime = D / DOT_CLK = 15.619; HorAddrTime = A / DOT_CLK = 11.124; HorBlankStart = A / DOT_CLK = 11.124; HorBlankTime = HorTotalTime - HorBlankStart = 4.495; HorSyncStart = B / DOT_CLK = 11.962; HorSyncTime = C / DOT_CLK - HorSyncStart = 2.743; ! ! интервалы вертикальной развертки: [мс] ! VerTotalTime = ( HorTotalTime * d ) / 1000 = 14.057; VerAddrTime = ( HorTotalTime * a ) / 1000 = 13.682; VerBlankStart = ( HorTotalTime * a ) / 1000 = 13.682; VerBlankTime = VerTotalTime - VerBlankStart = 0.375; VerSyncStart = ( HorTotalTime * b ) / 1000 = 13.698; VerSyncTime = ( HorTotalTime * ( c - b ) ) / 1000 = 0.219 ! И все! |
Этот вновь созданный видеорежим необходимо поместить в соответствующее место в файлах, которые я перечислю ниже.