Cada vegada que canviava al framebuffer (Ctrl+Alt+F*) el monitor feia un CRECK i es notava com canviava de freqüència (degut a que el framebuffer el tenia a la opció que venia per defecte, 1024×768 a 60 Hz, i les Xfree estaven a 85 Hz).
Amb això conseguirem tenir el framebuffer a la mateixa freqüència que les X, evitant que el monitor ens hagi de fer esperar uns segons fins que adapti la freqüència de rellotge, i ademés evitarà que perdem els ulls amb unes freqüències matadores!
Abans però, cal dir que això no funciona amb el framebuffer per defecte (vesafb), ja que no es pot fer servir el fbset amb aquest driver. Cal doncs que la teva tarjeta tingui driver per al framebuffer. Mirem a /usr/src/linux/Documentation/fb/00-INDEX els drivers de framebuffers que tenim disponibles (potser per internet hi han més drivers, encara que no estiguin a la oficial…)
Aixi que s’ha d’agafar un d’aquests drivers (aty128fb, clgenfb, matrox, …), compilar-lo al kernel “built-in”, i arrancar amb l’opció video=driver:
—- Amb això ja tenim el fb a una freq adequada pels nostres ulls. Lo de baix només cal fer-ho si teniu la paranoia de tenir-ho tot en ordre 😛 —–
El driver de la 3dfx és una mica inacabat, i quan canvio coses amb el fbset estant a la mateixa frequència, se’m giren els colors. Per lo que arranco amb una freq més baixa (video=driver:
Primer hem de saber els paràmetres que estem fent servir actualment a les X, aixi que els obtenim amb un “xvidtune -show”.
usuari@domini: $ xvidtune -show "1024x768" 94.50 1024 1072 1168 1376 768 769 772 808 +hsync +vsync usuari@domini: $
Aquestes dades les posem en un arxiu buit, per exemple /home/usuari/dadesxvidtune, però afegint un Modeline al davant, de manera que ens quedi:
Modeline “1024×768” 94.50 1024 1072 1168 1376 768 769 772 808 +hsync +vsync
Ara, com a root, fem “modeline2fb /home/usuari/dadesxvidtune”, i ens hauría de donar algo així:
# modes.fb - video mode descriptions for fbset # # See fbset(8) and fb.modes(5) for more information mode "1024x768" geometry 1024 768 1024 16368 8 timings 10582 208 48 36 1 96 3 hsync high vsync high endmode
Be, agafem això i ho afegim al /etc/fb.modes, però canviem la primera linea mode “1024×768” per un altre nom, per exemple mode “elmateixquexfree”. Ja estem preparats per fer un “fbset elmateixquexfree” com a root, amb el que ens posarà el framebuffer als mateixos paràmetres que les XFree.
Ara el que volem es que això s’executi només arrancar: creem un arxiu a /etc/init.d/ (o on sigui que la teva distribució tingui els scripts d’arranc) que contingui això:
#!/bin/sh echo Canviant la frequencia del framebuffer ... fbset lamateixaquexfree echo done.
Lo de echo ho he posat perque faci bonic, però podeu eliminar les dues linies 😛
Creem el link a /etc/rcn.d (on n és un runlevel, el 2 per exemple). Desde /etc/rc2.d/ executem “ln -s ../init.d/framebuffer S09framebuffer”.
Ara podem reiniciar si volem, i comprovar que només arrancar ja tenim el fb i les X als mateixos valors.
Ale, espero que algú se n’hagi enterat, si es necessiten aclaracions, aqui estic! 😛
Salut.
Autor: mengor