[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Voodoo Banshee con aceleración 3D en Debian Woody



Saludos a todos(as)

Tengo algunos problemas para configurar el soporte 3D de una tarjeta Creative
Voodoo Banshee AGP 16MB en Debian Woody, sin embargo la aceleración 2D
funciona sin problemas.

Busqué en Internet, en la documentación de XFree86 (4.1.0), en el archivo de
la lista, he leído el 3Dfx HOWTO y otros documentos; algunos de los cuales me 
dieron la pista de usar Glide.

Instalé los paquetes Glide, luego verifiqué la configuración de XFree86 y los
módulos del kernel, no me pareció necesario modificarla (X y kernel); luego
reinicié las X.

Al probar un programa 3D como tuxracer o gltron se ejecuta _muy_ lento
(incluso como root), a 0.3 FPS aproximadamente, al ejecutar:

# glxgears -info

Muestra unos 108 FPS aproximadamente, además escribe el siguiente mensaje
(sin las líneas de "-").

---------------------
WARNING: This Mesa Library includes the Glide driver but
         you have not defined the MESA_GLX_FX env. var.
         (check the README.3DFX file for more information).

         you can disable this message with a 'export MESA_GLX_FX=disable'.
---------------------

Haciendo caso, leí el archivo README.3DFX y exporté la variable que indica
allí y ejecuto de nuevo glxgears:

---------------------
# export MESA_GLX_FX=f
# glxgears -info
gd error (glide): Can't find or access Banshee/V3 board
gd error (glide): grSstSelect:  non-existent SST
Violación de segmento
---------------------

Busqué este error en Internet, y aunque encontré varios casos, en ninguno
aparece la solución a este problema.

Es notable el hecho que el Mandrake 8.0 que estaba en esta máquina reconocía
perfectamente la tarjeta, de no poder configurarlo con Debian no tendré otra
alternativa más que... reinstalar Mandrake :-|, esta vez la versión 9.0

Me agrada Mandrake, pero Debian va mucho más rápido en esta Pentium III 500
MHz con 128MB en RAM (sin mencionar las demás ventajas de Debian... ).

A continuación les muestro con más detalle la configuración que tengo
actualmente:

(Uso la línea de "-" para separar cada archivo o mensaje, los (...)
significan líneas no relevantes de los archivos, el carácter # es una línea
comentada en un archivo o un comando en el shell en otros casos)

*) Hardware
---------------------
PC Pentium III 500 MHz
128 MB RAM
Tarjeta Madre Intel 440BX2
Creative Voodoo Banshee AGP 16MB
Monitor Samsung SyncMaster 17"
---------------------

*) Video
---------------------
1024x768x16 (En varios documentos que investigué decía que 16 bpp es la
profundidad de color adecuada para la aceleración 3D)
Soporte 2D completo
---------------------


*) Paquetes de Glide instalados:
Nota: Instalé pero no compilé el archivo device3dfx-source

---------------------
libglide2 - Graphics library for 3Dfx Voodoo based cards
libglide2-dev - development files for libglide2
glide2-bin - Binaries for glide2.
libglide3 - Graphics library for 3Dfx Voodoo based cards
libglide3-dev - development files for libglide3
device3dfx-source - Device driver source for 3Dfx boards for 2.2+kernels
mesag3-glide2 - A 3-D graphics library which uses the OpenGL API [libc6].
mesag-glide2-dev - Development library for Mesa [libc6].
bggi-target-glide - General Graphics Interface Glide2 display target
---------------------

*) El archivo /etc/X11/XF86Config-4:

---------------------
(...)

Section "Module"
  Load  "GLcore"
  Load  "bitmap"
  Load  "dbe"
  Load  "ddc"
  Load  "dri"
  Load  "extmod"
  Load  "freetype"
  Load  "glx"
  Load  "int10"
  Load  "pex5"
  Load  "record"
  Load  "speedo"
  Load  "type1"
  Load  "vbe"
  Load  "xie"
  # Load  "dga"
EndSection

(...)

Section "Device"
  Identifier  "Tarjeta de vídeo genérica"
  Driver    "tdfx"
  # Option    "UseFBDev"    "true"
  Option    "AGPmode"     "1"
  Option    "DPMS"        "on"
EndSection

(...)

Section "DRI"
  Mode  0666
EndSection

---------------------

*) Módulos del Kernel 2.4.18-bf2.4 (Planeo compilar uno a la medida en cuanto
sepa cuales son los módulos necesarios)

---------------------
# lsmod
Module                  Size  Used by    Tainted: P
ppp_deflate            38944   0  (autoclean)
bsd_comp                3936   0  (autoclean)
ppp_async               6464   0  (autoclean)
ppp_generic            18728   0  (autoclean) [ppp_deflate bsd_comp
ppp_async]
slhc                    4432   0  (autoclean) [ppp_generic]
nls_iso8859-1           2880   0  (autoclean)
ide-scsi                7488   0
msr                     1376   0  (unused)
cpuid                   1184   0  (unused)
microcode               2844   0  (unused)
apm                     9148   0
ymfpci                 40800   0
ac97_codec              9568   0  [ymfpci]
soundcore               3236   2  [ymfpci]
tdfx                   35064   1
agpgart                29824   0  (unused)
keybdev                 1664   0  (unused)
usbkbd                  2848   0  (unused)
input                   3072   0  [keybdev usbkbd]
usb-uhci               20708   0  (unused)
usbcore                48032   0  [usbkbd usb-uhci]
---------------------

*) /var/log/XFree86.0.log no mostró errores relevantes y solo una
 advertencia.


---------------------
(...)
(II) LoadModule: "tdfx"
(II) Loading /usr/X11R6/lib/modules/drivers/tdfx_drv.o
(II) Module tdfx: vendor="The XFree86 Project"
  compiled for 4.1.0.1, module version = 1.0.1
  Module class: XFree86 Video Driver
  ABI class: XFree86 Video Driver, version 0.4

(...)

(II) TDFX: Driver for 3dfx Banshee/Voodoo3 chipsets: 3dfx Banshee,
  3dfx Voodoo3, 3dfx Voodoo5
(II) Primary Device is: PCI 01:00:0
(--) Assigning device section with no busID to primary device
(--) Chipset 3dfx Banshee found

(...)

(II) TDFX(0): [drm] created "tdfx" driver at busid "PCI:1:0:0"
(II) TDFX(0): [drm] added 4096 byte SAREA at 0xc98a9000
(II) TDFX(0): [drm] mapped SAREA 0xc98a9000 to 0x40014000
(II) TDFX(0): [drm] framebuffer handle = 0xfc000000
(II) TDFX(0): [drm] added 1 reserved context for kernel
(II) TDFX(0): [drm] Registers = 0xf6000000
(II) TDFX(0): visual configs initialized
(II) TDFX(0): Using XFree86 Acceleration Architecture (XAA)

(...)

(==) TDFX(0): Backing store disabled
(==) TDFX(0): Silken mouse enabled
(**) Option "dpms"
(**) TDFX(0): DPMS enabled
(II) TDFX(0): X context handle = 0x00000001
(II) TDFX(0): [drm] installed DRM signal handler
(II) TDFX(0): [DRI] installation complete
(==) TDFX(0): Direct rendering enabled
(WW) TDFX(0): Option "AGPmode" is not used

(...)
---------------------

*) En /var/log/kern.log encontré los siguientes datos:

---------------------
(...)
Jan  9 13:33:47 debian kernel: Linux agpgart interface v0.99 (c) Jeff
 Hartmann Jan  9 13:33:47 debian kernel: agpgart: Maximum main memory to use
 for agp memory: 94M
Jan  9 13:33:47 debian kernel: agpgart: Detected Intel 440BX chipset
Jan  9 13:33:47 debian kernel: agpgart: AGP aperture is 64M @ 0xf8000000
Jan  9 13:33:47 debian kernel: [drm] Initialized tdfx 1.0.0 20010216 on minor
0
(...)
---------------------

*) glxinfo muestra la siguiente información:

---------------------
# glxinfo
name of display: :0.0
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: Brian Paul
server glx version string: 1.3 Mesa 3.4.2
server glx extensions:

(...)

client glx vendor string: Brian Paul
client glx version string: 1.2 Mesa 3.4.2
client glx extensions:

(...)

GLX extensions:

(...)

OpenGL vendor string: Brian Paul
OpenGL renderer string: Mesa X11
OpenGL version string: 1.2 Mesa 3.4.2
OpenGL extensions:

(...)

glu version: 1.1 Mesa 3.4.2
glu extensions:
    GL_EXT_abgr

(...)

WARNING: This Mesa Library includes the Glide driver but
         you have not defined the MESA_GLX_FX env. var.
         (check the README.3DFX file for more information).

         you can disable this message with a 'export MESA_GLX_FX=disable'.
---------------------

Al darle valor a MESA_GLX_FX con 'f' muestra el siguiente error:

---------------------
# export MESA_GLX_FX=f
# glxinfo
gd error (glide): Can't find or access Banshee/V3 board
gd error (glide): grSstSelect:  non-existent SST
Violación de segmento
---------------------


Les agradezco de antemano su ayuda...



--
#include <iostream>
using namespace std;
int main(){
   cout << "¡Hasta entonces :-)!" << endl;
   return 0;
}



Reply to: