Logo Espacio Linux       
Portada Taller Linux Descargas Foros Buscar Mapa del sitio Ayuda BlogEL
   Iniciar sesión | Registrarse    
 
Principal

Patrocinadores

Anuncios



Boletín Espacio Linux
Las novedades del sitio y el mundo Linux en tu email.


Taller Linux
 Estación de Trabajo en Audio
 HOWTO: Configuración básica de Ratpoison
 Guía de remasterización de Knoppix
 HOWTO: Nano, mi editor favorito
 HOWTO: Configuración Básica de IceWM


Sitios amigos

Configurando el Chip de audio CMI 8330


El chipset CMI 8330, de C-Media, es uno muy utilizado en la actualidad, sobre todo en las tarjetas madre del tipo PC100 que incorporan componentes "on-board", es decir integrados en la misma tarjeta madre. Se trata de un chipset muy económico pero con un rendimiento apenas aceptable. Dependiendo del fabricante de la tarjeta madre, es posible que pueda presentar algunos malos funcionamientos tanto en Linux como en Windows.

Configuración en Linux.

A pesar de que el Kernel proporciona soporte para CMI 8330, la configuración obtenida por «sndconfig» no funcionará. Antes de poder proceder a configurar esta tarjeta será necesario determinar los IRQ, DMA e I/O de cada dispositivo de esta tarjeta. Si se utiliza Windows 9x en la misma PC, esta información se puede recabar desde el «Administrador de dispositivos» en «Propiedades del sistema». Si no se esta utilizando Windows, convendrá instalar la tarjeta en modo MS-DOS y copiar los valores en «autoexec.bat»

Estos serían valores más comunes para CMI 8330 (pueden variar dependiendo de la tarjeta madre, yo utilizo una PC Chips 100 M570):

  • Dos mode MPU-401: I/O 0=0x300
  • MIDI MPU-401: I/O 0=0x330
  • Joystick: I/O 0=0x200
  • Sound Blaster: I/O 0=0x220, IRQ 0=05, DMA 0=01, DMA 1=05
  • Windows Sound System: I/O 0= 0x530, I/O 1= 0x388, IRQ 1=10, DMA 1=03


Una vez determinados los valores correctos, solo bastará con adaptar y modificar los archivos /etc/isapnp.conf y /etc/conf.modules para adecuar todos los valores correspondientes. Para el primero, correspondería lo siguiente:

(READPORT 0x0203)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)
# advertencia del sistema por si acaso hubisen conflictos
(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL))
(VERIFYLD N)

# Windows Sound System 

(CONFIGURE CMI0001/16777472 (LD 0
(IO 0 (SIZE 8) (BASE 0x0530))
(IO 1 (SIZE 8) (BASE 0x0388))
(INT 0 (IRQ 11 (MODE +E)))
(DMA 0 (CHANNEL 0))
(NAME "CMI0001/16777472[0]{CMI8330/C3D Audio Adapter}")
(ACT Y)
))

# midis 

(CONFIGURE CMI0001/16777472 (LD 1
(IO 0 (SIZE 2) (BASE 0x0300))
(INT 0 (IRQ 9 (MODE +E)))
(NAME "CMI0001/16777472[1]{CMI8330/C3D Audio Adapter}")
(ACT Y)
))

# Joystick

(CONFIGURE CMI0001/16777472 (LD 2
(IO 0 (SIZE 8) (BASE 0x0200))
(NAME "CMI0001/16777472[2]{CMI8330/C3D Audio Adapter}")
(ACT Y)
))

#  Soundblaster
(CONFIGURE CMI0001/16777472 (LD 3
(IO 0 (SIZE 16) (BASE 0x0220))
(INT 0 (IRQ 5 (MODE +E)))
(DMA 0 (CHANNEL 1))
(DMA 1 (CHANNEL 5))
(NAME "CMI0001/16777472[3]{CMI8330/C3D Audio Adapter}")
(ACT Y)
))

(WAITFORKEY)

NOTA: Los IRQ's pueden cambiar, otra posible opción seria para:# Windows Sound System IRQ 5; # midis IRQ 11; # Soundblaster IRQ 7, el archivo quedaría igual excepto las IRQ's.

Para el caso anterior, este sería el conf.modules sugerido:

alias sound ad1848
alias synth0 opl3
options ad1848 io=0x530 irq=11 dma=0 soundpro=1
options opl3 io=0x388

O bien se puede utilizar este otro, un tanto más viejo:

alias sound ad1848
pre-install sound insmod sound dmabuf=1
alias midi opl3
options opl3 io=0x388
alias midi mpu401
options mpu401 io=0x300 irq=9
options ad1848 io=0x530 irq=11 dma=0 soundpro=1

Cristian Othon Martínez Vera sugiere que tambien puede utilizarse esta variante, que en la mayoría de los casos funcionará mejor, sobre todo si hay ciertos efectos indeseables y distorción al mover ventanas o hacer "scroll" (algo común con la tarjeta de video Sis 6326):

# Leemos a partir del siguiente puerto disponible 
# para PnP. Hacerlo desde el indicado por omision nos 
# hace perder la configuracion de MIDI y del puerto de
# juegos

(READPORT 0x020b)
(ISOLATE PRESERVE)
(IDENTIFY *)

# WSS
(CONFIGURE CMI0001/16777472 (LD 0
 (IO 0 (BASE 0x0530))
 (IO 1 (BASE 0x0388))
# Una interrupcion que casi no interfiere con nada y
# nos permite full duplex
 (INT 0 (IRQ 11 (MODE +E)))
 (DMA 0 (CHANNEL 0))
 (ACT Y)
))

# MIDI
(CONFIGURE CMI0001/16777472 (LD 1
 (IO 0 (BASE 0x0330))
 (INT 0 (IRQ 9 (MODE +E)))
 (ACT Y)
))

# Puerto de juegos
(CONFIGURE CMI0001/16777472 (LD 2
 (IO 0 (BASE 0x0200))
 (ACT Y)
))

# Y emulacion SB
(CONFIGURE CMI0001/16777472 (LD 3
 (IO 0 (BASE 0x0220))
 (INT 0 (IRQ 5 (MODE +E)))
 (DMA 0 (CHANNEL 1))
 (DMA 1 (CHANNEL 5))
 (ACT Y)
))

(WAITFORKEY)

Cristian Othon Martínez Vera sugiere lo siguiente para conf.modules, siempre que se tenga un núcleo 2.2.5 o superior (RedHat 5.2 o superior). Este utiliza un controlador, cs4232, de mejor nivel que ad1848. El -k hace que el módulo se limpie en el caso de que no se este utilizando:

alias sound cs4232
pre-install sound insmod sound dmabuf=1
options -k cs4232 io=0x534 irq=11 dma=0 dma2=1
alias mpu mpu401
options -k mpu401 io=0x330 irq=9
alias midi opl3
options -k opl3 io=0x388

O esta otra:

alias sound ad1848
pre-install sound insmod sound dmabuf=1
options -k ad1848 io=0x530 irq=11 dma=0 dma2=1 soundpro=1
alias mpu mpu401
options -k mpu401 io=0x330 irq=9
alias midi opl3
options -k opl3 io=0x388

Al concluir esto, convendrá reiniciar el sistema para poder probar adecuadamente la configuración. No es buena idea probar reproduciendo un archivo MIDI, debido a que, dependiendo del software utilizado, no se podrán apreciar todos los instrumentos. Será más conveniente hacerlo con un archivo de ondas (*.wav) o bien con un archivo Mp3. Si todo funciona correctamente deberán de respaldarse /etc/isapnp.conf y /etc/conf.modules en un disquete, ya que esto ahorrará tiempo si en el futuro fuese necesario realizar una reinstalación.

Aunque no es indispensable, puede ser conveniente recompilar el Kernel para poder cargar los módulos correctamente. De tal forma debe especificarse lo siguiente en la sección correspondiente al audio:

CONFIG_SOUND_CMPCI=m # Modulo experimental
# en Kernels recientes (Oct-1999)
CONFIG_SOUND=m
CONFIG_SOUND_OSS=m
CONFIG_SOUND_SB=m
CONFIG_SOUND_ADLIB=m
CONFIG_SOUND_MPU401=m
CONFIG_SOUND_MSS=m

El resto de los módulos de audio no son necesarios, por lo que pueden omitirse de la configuración, mismo que economizará memoria y recursos.









Copyright © 2003 por Espacio Linux


[ Volver Atrás ]
Content ©
 



Copyright | Términos de uso | Política de privacidad | Publicidad | Contáctanos | Blog