Como configurar correctamente las X's en Slackware con xorg. Muchas veces he visto en los foros o chats a gente preguntando porque no jala el entorno grafico en su sistema, o porque no agarra otras resoluciones o cosas por el estilo en Slackware, bien esto la mayoria de las veces es debido a que no esta correctamente configurado para trabajar con el hardware que uno tiene, porque? En Slackware no hace deteccion de hardware para el video ni monitor ya que Slackware es simple y siguiendo la filosofia de "do it by yourself", osea, hazlo por ti mismo. En Slackare 10 viene con xorg que es el servidor de X, y como ya dije no se hace deteccion de hardware (monitor ni video) por lo que carga un archivo de configuracion muy generico con una configuracion de driver de video usando el "vesa" y para el monitor usando unas frecuencias Horizontal y Vertical tambien genericas, lo mismo para las resoluciones. Esto quizas funcione pero puede ser que no sea optimo y no aprobeche nuestro hardware, entonces procederemos a configurarlo para que sea mas optimo. Antes de empezar me gustaria hacer una recomendacion, conozcan su hardware, esto ayudara mucho a la hora de las configuraciones, si conocen las especificaiones tecnicas de su hardware, en este caso de la tarjeta de video y el monitor sera de mas ayuda, esto lo pueden obtener de los manuales de su hardware, o buscando en la pagina de los fabricantes de su hardware, para saberlo casi siempre se encuentra en alguna etiqueta detras del monitor o en una etiqueta en la parte trasera de la tarjeta de video (suponiendo que es PCI o AGP) si es integrada a la tarjeta madre, pues entonces la informacion deberia de estar incluida en el manual de la tarjeta madre. Entonces empieza el proceso de investigacion, y los datos que deberemos de obenter par la tarjeta de video son: En este caso es una tarjeta de video integrada a la tarjeta madre y lo obtube asi: $ /sbin/lspci | grep VGA 00:02.0 VGA compatible controller: Intel Corp. 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (rev 01) Ahora los datos que necesitamos para el Monitor: Modelo: Frecuencia Horizontal: Frecuencia Vertical: Resoluciones que soporta: Resolucion Maxima: Todo esto lo pueden ver en los manuales de su monitor o en la pagina de el fabricante de seguro lo encuentran. En este casi es un monitor Samsung SyncMaster 753s con la siguientes caracteristicas: Tamaño del Tubo: 17". Tipo de tubo: FST. Tamaño del punto: 0,23 mm Frecuencia Horizontal: 30-70kHz. Frecuencia Vertical:50-160Hz. Ancho de Banda:110MHz. Resolución Máxima:1280x1024 a 65Hz. Consumo:80W.Estándar Radiación:MPRII. Plug & Play. Peana Multimedia opcional (SP-S301N). Dimensiones (AnchoxAltoxProf.)mm:398x412x400. Bien ahora que conocemos las especificaciones tecnicas de nuestro hardware procederemos a configurar las X's, claro no sin antes hacer un respaldo de nuestro archivo de configuracion actual, asi: # cd /etc/X11 # cp xorg.conf xorg.conf.orig Entonces abres el archivo xorg.conf con tu editor de texto favorito y vamos a la seccion que esta marcada como: Section "Monitor" La cual por default esta asi (sin los comentarios): Section "Monitor" Identifier "My Monitor" HorizSync 31.5 - 50.0 VertRefresh 40-90 EndSection Entonces segun nuestra configuracion lo dejaremos asi: Section "Monitor" Identifier "My Monitor" HorizSync 30 - 70 VertRefresh 50 - 160 EndSection Ahora lo que sigue es configurar la seccion para nuestra tarjeta de video, lo haremos editando la seccion llamada "Device", por default esta asi: Section "Device" Identifier "VESA Framebuffer" Driver "vesa" #VideoRam 4096 # Insert Clocks lines here if appropriate EndSection Y de acuerdo a nuestra informacion la dejaremos asi: Section "Device" Identifier "Intel i810" Driver "i810" VendorName "Intel Corp." BoardName "82845G/GL[Brookdale-G]" EndSection La ruta de donde xorg busca los drivers para las tarjetas de video es: /usr/X11R6/lib/modules/drivers/ Ahi podremos ver algo asi: $ ls /usr/X11R6/lib/modules/drivers/ apm_drv.o cyrix_drv.o mga_drv.o s3_drv.o tseng_drv.o ark_drv.o dummy_drv.o neomagic_drv.o s3virge_drv.o vesa_drv.o ati_drv.o fbdev_drv.o nsc_drv.o savage_drv.o vga_drv.o atimisc_drv.o glint_drv.o nv_drv.o siliconmotion_drv.o via_drv.o chips_drv.o i128_drv.o r128_drv.o sis_drv.o vmware_drv.o cirrus_alpine.o i740_drv.o radeon_drv.o tdfx_drv.o cirrus_drv.o i810_drv.o rendition_drv.o tga_drv.o cirrus_laguna.o linux/ riva128.o trident_drv.o De ahi fue de donde saque el nombre para el driver de esta tarjeta. Y en `/usr/X11R6/lib/modules/dri` estan los drivers para las tarjetas que usan DRI (Direct Rendering Infrastructure) los cuales son necesarios para tarjetas que usan aceleracion grafica (3D). Lo cual es algo asi: $ ls /usr/X11R6/lib/modules/dri gamma_dri.so i830_dri.so r128_dri.so radeon_dri.so tdfx_dri.so i810_dri.so mga_dri.so r200_dri.so sis_dri.so Bien, ahora tendremos que hacer en unos cambios en la seccion "Screen" para que utilice la informacion que cambiamos, por defaul empieza asi: Section "Screen" Identifier "Screen 1" Device "VESA Framebuffer" Monitor "My Monitor" Y lo cambiaremos para que en Device use el Identifier que definimos en la seccion de "Device" osea quedaria esa parte asi: Section "Screen" Identifier "Screen 1" Device "Intel i810" Monitor "My Monitor" Lo que sigue es revisar la configuracion de las resoluciones que usaremos, por default esta asi: DefaultDepth 24 Subsection "Display" Depth 8 Modes "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 16 Modes "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 24 Modes "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 32 Modes "1024x768" "800x600" "640x480" EndSubsection EndSection En el DefaultDepth esta para usar la de 24 la cual usa las resoluciones: Modes "1024x768" "800x600" "640x480" Y como nuestro monitor soporta una resolucion hasta: "1280x1024", entonces lo agregaremos para que tambien la use de manera que la parte de Modes de el Depth 24 este asi: Subsection "Display" Depth 24 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubsection En general nuestra seccion de "Screen" (sin comentarios) quedaria asi para funcionar con este hardware: Section "Screen" Identifier "Screen 1" Device "Intel i810" Monitor "My Monitor" DefaultDepth 24 Subsection "Display" Depth 8 Modes "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 16 Modes "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 24 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 32 Modes "1024x768" "800x600" "640x480" EndSubsection EndSection Y por ultimo ( Si es que tu tarjeta de video tiene soporte para aceleracion grafica, 3D) agregaremos al final de nuestro archivo lo siguiente para que cualquier usuario pueda hacer uso de la aceleracion grafica, asi: Section "DRI" Mode 0666 EndSection Ya que hemos editado todo esto guardamos el archivo y reinicamos las X's y si se siguieron correctamente las instrucciones ya tendrias un mejor entorno grafico, el cual ya es mas optimo para nuestro hardware. Si reiniciaste tu entorno grafico y tienes aceleracion 3D (DRI) lo compruebas corriendo el siguiente comando: $ glxinfo | grep direct direct rendering: Yes Ahora puedes ver que tan bien trabajan tus graficos (solo con DRI) viendo los Frames por segundo que usa con el comando "glxgears". Bien, pues esto es basicamente lo que debes de conocer y configurar para que tus X's trabajen correctamente. Si algo salio mal, siempre puedes volver a usar el xorg.conf.orig que respaldamos y volver a revisar los pasos y ver que todo se haya hecho bien, si tienes algun problema puedes mandarme un correo a jmedina@tuxjm.net y en lo que pueda te ayudo. Mi configuracion con Monitor Compaq 7550 y Radeon 9000 64Mb. Section "Monitor" Identifier "Compaq 7550" Option "DPMS" "true" VendorName "COMPAQ" ModelName "Compaq 7550" HorizSync 30 - 86 VertRefresh 50 - 140 EndSection Section "Device" ### Available Driver options are:- # sw_cursor is needed for some ati and radeon cards Option "sw_cursor" #Option "hw_cursor" #Option "NoAccel" #Option "ShowCache" #Option "ShadowFB" #Option "UseFBDev" #Option "Rotate" Identifier "Radeon 9000" Driver "radeon" VendorName "ATI" BoardName "ATI" # BusID "PCI:1:0:0" EndSection Section "Screen" Identifier "Screen 1" Device "Radeon 9000" Monitor "Compaq 7550" DefaultDepth 24 Subsection "Display" Depth 8 Modes "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 16 Modes "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 24 Modes "1280x1024" "1152x864" "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 32 Modes "1280x1024" "1152x864" "1024x768" "800x600" "640x480" EndSubsection EndSection Esto es usando el driver que trae xorg, si embargo puedes usar el driver original de ATI, pero eso solo cuando ya tengas una mejor idea de como funciona las X, tengas idea de como compilar un kernel, como agregar un modulo y cosas asi: todo esta bien descrito en este documento: http://www.rage3d.com/content/articles/atilinuxhowto/ Saludos. Slackware Rulz!!!!!.