No sé si lo he comentado aquí, pero hace un tiempo tuve que cambiar de monitor porque el anterior estaba ya muy cascado. El caso es que el que tenía era bastante normalillo, y con 85hz a 1024x768 iba que ardía, no pasaba a de ahí. Sin embargo, éste sí soporta más frecuencias, pero no informa al servidor de las X vía EDID (unos datos que envían los monitores modernos automáticamente con sus frecuencias y demás, aparte de que creo que sólo lo hacen por el DVI y que el VGA no tiene retorno), por lo que hay que hacerlo todo a mano, y me dispongo a explicar un método sencillo que encontré (aunque a medias) en una lista de correo para crear una Modeline (parámetro para las X) adecuada para nuestro monitor, sin tener que recurrir a generadores que necesitan hasta nuestra talla de calzado para funcionar bien.
Lo primero que tenemos que hacer es asegurarnos de tener introducidos los rangos de frecuencia adecuados en nuestro XF86Config o xorg.conf, dentro de la correspondiente sección "Monitor". Esto es, en mi caso:
HorizSync 30.0 - 80.0
VertRefresh 48-170
Podemos buscar estos rangos en el manual del monitor o bien en Internet, si no tenemos ya el manual. Hecho esto, si no los teníamos ya puestos de antes, tenemos que reiniciar las X.
Bien, ahora debemos ejecutar el programa xvidtune desde una consola dentro de las X y, con cuidado de no tocar nada más, pulsaremos sobre "Show". Lo cerramos, y debería haber escrita en la consola una línea parecida a ésta, que es la mía:
"1024x768" 94.50 1024 1072 1168 1376 768 769 772 808 +hsync +vsync
El significado de cada número lo podemos mirar en la Wikipedia si nos interesa mucho. Ahora, de momento, podemos quedarnos con el 94.50, que es la frecuencia de reloj (Pixel clock) que marca el refresco, el 1376, al que llamaremos HTotal y el 808, al que llamaremos VTotal. Por otro lado, tenemos las siguientes fórmulas:
HSync = Pixel clock / HTotal
VSync = HSync / VTotal
Aún no he comentado que lo que deseamos cambiar es el Pixel clock para que nuestro monitor funcione a su máxima frecuencia (sin forzarlo, claro). Ahora, podemos razonar de dos maneras. Si conocemos cuál es la frecuencia máxima vertical a la que puede funcionar nuestro monitor a la resolución que estamos buscando, utilizaremos la segunda fórmula para hallar HSync correspondiente, y después la primera para hallar el Pixel clock. En mi caso, a 1024x768, la frecuencia máxima son 100 Hz:
HSync = VSync * VTotal = 100 * 808 = 80800 Hz (que son 80.8 Khz)
Pixel clock = HSync * HTotal = 80800 * 1376 = 111180800 (que son 111.18 Mhz)
Si, por el contrario, no conocemos la frecuencia máxima para la resolución buscada, utilizaremos directamente la máxima horizontal, en mi caso, 80 (se puede ver que 80.8 coincide aproximadamente con el valor máximo de frecuencia horizontal, siempre hay un poco más de tolerancia en ésta, de ahí ese valor):
Pixel clock = HSync * HTotal = 80000 * 1376 = 110080000 (110.08 Mhz)
Yo utilizaré el primer valor (111.18, dos decimales van bien), por ser más exacto. Ahora ya sólo tenemos que añadir la Modeline al XF86Config o xorg.conf, también en la sección "Monitor" (por ejemplo, después de los rangos de frecuencias), modificando el valor del Pixel clock en la linea que nos dió el xvidtune por el valor que hemos calculado, de tal forma que la mía ha quedado así:
Modeline "1024x768" 111.18 1024 1072 1168 1376 768 769 772 808 +hsync +vsync
Finalmente, ya sólo queda reiniciar las X y "disfrutar" de la nueva frecuencia (a algunas personas les dan dolor de cabeza las frecuencias altas, a otras personas, las bajas), que normalmente se puede comprobar si está bien fijada en el propio OSD del monitor. También es muy posible que necesitemos recolocar la imagen con los controles porque se haya movido.
Precauciones: mucho cuidado al anotar el HTotal y el VTotal (conviene fijarse en que son el último número de cada serie de 4, también llamado "back porch", se puede consultar el ya citado enlace de la Wikipedia para más información). Mucho cuidado también al hacer los cálculos, y en utilizar siempre los valores máximos de frecuencia adecuados. No conviene forzar el Pixel clock, se puede dañar el monitor. Los monitores modernos vuelven a los valores por defecto si se intentan forzar, pero los que tienen un tiempo no lo hacen.
Por cierto, por si coincide que alguien llega aquí desde algún buscador y tiene el mismo monitor que yo, comentar que el mío es un Sony HMD-A230, de 17 pulgadas. Así podrá poner mi Modeline directamente.
Posteado por phestar en informática a las 16:28