================================================================ Controlador de Sonido AWE32 para Linux / FreeBSD versión 0.4.3; Nov. 1, 1998 Takashi Iwai ================================================================ * NOTAS GENERALES Esta es una extensión al controlador de sonido para la SoundBlaster AWE32 y otras tarjetas compatibles (AWE32-PnP, SB32, SB32-PnP, AWE64 & etc) para activar las operaciones de sintetizado de ondas. Este controlador está disponible para los núcleos Linux 1.2.x y 2.[012].x y también FreeBSD, en sistemas Intel x86 y DEC Alpha. Este controlador fue escrito por Takashi Iwai , y se ofrece "como está". El código fuente original (awedrv-0.4.3.tar.gz) y los paquetes binarios están disponibles en la siguiente URL: http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/awedrv/ Note que desde que el autor está lejos de este sitio web, la actualización es menos frecuente. * NOTA A LOS USUARIOS DE LINUX Para activar este controlador en los núcleos linux-2.[01].x, necesita activar las opciones "lowlevel drivers support" y "AWE32 synth support" en el menú de sonido cuando configure el núcleo y los módulos. El procedimiento preciso de instalación está descrito en el AWE64-Mini-HOWTO y en linux-kernel/Documentation/sound/AWE32. Si usa tarjetas PnP, la tarjeta debe ser inicializada antes de cargar el controlador de sonido. Hay varias formas de hacer esto: - Inicialice la tarjeta mediante las herramientas ISA PnP, y cargue el módulo de sonido. - Inicialice la tarjeta en DOS, y cargue linux con loadlin.exe - Use el controlador PnP del núcleo (para Linux-2.x.x) Las instrucciones detalladas sobre la solución usando las herramientas isapnp se encuentra en muchos documentos como el inferior. En la documentación de este paquete también se encuentra unas instrucciones resumidas. Para el proyecto del controlador PnP, por favor dirijasa a la siguiente URL: http://www-jcr.lmh.ox.ac.uk/~pnp/ * USANDO EL CONTROLADOR El awedrv tiene varios modos de reproducción para realizar fácilmente la reserva de canales en las canciones MIDI. Para oir la mejor calidad de sonido tiene que conseguir el programa secuenciador extendido, drvmidi o playmidi-2.5 Para reproducir fichero MIDI, *DEBE* cargar antes el fichero soundfont en el controlador con la utilidad sfxload. De otra manera no oirá ningún sonido! Todas las utilidades y el código fuente se encuentran en la URL anterior. La utilidad sfxload se encuentra en el paquete awesfx-0.4.3.tgz. Ahí también se encuentran los paquetes binarios. Lea las instrucciones en cada paquete para su instalación. Cargar un fichero soundfont es muy fácil. Solo necesita ejecutar el comando % sfxload synthgm.sbk sfxload transferirá el fichero "synthgm.sbk" al controlador. El programa acepta los formatos SF1 y SF2. Ahora puede escuchar música midi con un reproductor de midi. % drvmidi foo.mid Si ejecuta el reproductor de MIDI después de un reproductor de MODs, necesita cargar los ficheros soundfont de nuevo, ya que el reproductor de MODs normalmente limpia las muestras cargadas anteriormente con sus propios datos. Si tiene solo 512kb en la tarjeta de sonido, le recomiendo que use carga dinámica de las muestras a través de la opción -L de drvmidi. Hay disponible un fichero de 2MB GM/GS en la mayoría de los ficheros midi. % sfxload synthgm % drvmidi -L 2mbgmgs foo.mid Esto es una gran diferencia (créame)! Para más detalles, por favor consulte la lista FAQ que está disponible en la URL superior. Con la utilidad aweset (incluída en el paquete awesfx) se puede cambiar el estado del Coro, reverberación y los valores del mezclador. Note que algunos programa nativos del controlador awedrv (como drvmidi y xmp) cambiarán las propiedades ellos mismos. El programa aweset es efectivo solo para programas como playmidi. Disfrute. * OPCIONES DE COMPILACIÓN Las condiciones de compilación están definidas en el fichero awe_config.h. [Condiciones de compatibilidad] Las siguientes opciones se definen automáticamente cuando se usa el script de instalación automática. - AWE_MODULE_SUPPORT indica que su núcleo Linux soporta módulos para las tarjetas de sonido. (en los recientes núcleos 2.1 o 2.2 y en los núcleos parcheados de forma no oficial, como los que se distribuyen con RH5.0). Esta opción se activa automáticamente cuando usan núcleos 2.1.x. Puede pasar la dirección base y el tamaño de la memoria de esta forma a través de las siguientes opciones del módulo, io = dirección E/S del puerto (pe. 0x620) memsize = Tamaño de la DRAM en kilobytes (pe. 512) Por defecto, el controlador AWE, prueba estos valores automáticamente. [Condiciones de Hardware] NO necesita definir los siguientes dos valores. Defínalos solo cuando el controlador no pueda detectar la tarjeta adecuadamente. - AWE_DEFAULT_BASE_ADDR (por defecto: no definido) especifica la dirección del puerto base de su tarjeta AWE32. 0 significa autodetectar la dirección. - AWE_DEFAULT_MEM_SIZE (por defecto: no definido) especifica la cantidad de memoria de su tarjeta AWE32 en kilobytes. -1 significa autodetectar su tamaño. [Tamaño de la Tabla de Muestras] Desde la ver.0.4.0, las tablas de muestras se reservan dinámicamente (excepto en los sistemas Linux-1.2.x), por lo que NO necesita tocar estos parámetros. Los usuarios de Linux-1.2.x pueden necesitar incrementar estos valores al tamaño apropiado si la tarjeta de sonido está equipada con más DRAM. - AWE_MAX_SF_LISTS, AWE_MAX_SAMPLES, AWE_MAX_INFOS [Otras Condiciones] - AWE_ALWAYS_INIT_FM (por defecto: no definido) indica al controlador AWE que siempre inicialize el canal FM aunque no haya DRAM en la tarjeta. El chip Emu8000 tiene una restricción al reproducir muestras en DRAM en la que al menos dos canales deben ser ocupados como canales de intercambio. - AWE_DEBUG_ON (por defecto: definido) Activa los mensaje de depuración si se define. - AWE_HAS_GUS_COMPATIBILITY (por defecto: definido) Activa el modo de compatibilidad GUS si se define, leyendo los parches GUS y los comandos de control GUS. Defina esta opción para usar GMOD u otro reproductor para la GUS. - CONFIG_AWE32_MIDIEMU (por defecto: definido) Añade emulación MIDI por la tabla de ondas del Emu8000. El dispositivo de emulación puede ser accedido a través de un MIDI externo y se le pueden mandar códigos directamente. Se acepta XG y GS sysex/NRPN. No se permite entrada MIDI. - CONFIG_AWE32_MIXER (por defecto: no definido) Añade un dispositivo mezclador para el control del equalizador de graves/agudos de la AWE32. Puede acceder a este dispositivo a través de /dev/mixer?? (normalmente mixer01). - AWE_USE_NEW_VOLUME_CALC (por defecto: definido) Usa el nuevo método para calcular el cambio de volumen, de forma compatible con los controladores de DOS/Win drivers. Esta opción puede ser cambiada a través del programa aweset o el reproductor drvmidi. - AWE_CHECK_VTARGET (por defecto: definido) Comprueba el valor actual del volumen cuando se busca un canal para reservar una nueva voz. Esto está implementado de forma experimental en esta versión. (probablemente, esta opción no afecte demasiado a la calidad de sonido...) - AWE_ALLOW_SAMPLE_SHARING (por defecto: definido) Permite compartir muestras para los diferentes parches cargados. Esta función se encuentra disponible sólo en conjunto con awesfx-0.4.3p3. Note que esta es una opción experimental. - DEF_FM_CHORUS_DEPTH (por defecto: 0x10) La fuerza por defecto que se debe mandar al motor de efectos de coro. Desde 0 a 0xff. Números mayores habitualmente producen sonidos extraños. - DEF_FM_REVERB_DEPTH (por defecto: 0x10) La fuerza por defecto que se debe mandar al motor de efectos de reverberación. Desde 0 a 0xff. Números mayores a menudo producen sonido extraños. * AGRADECIMIENTOS Gracias a Witold Jachimczyk (witek@xfactor.wpi.edu) por sus muchos consejos sobre programación de la AWE32. Mucho código pertenece a su reproductor de MODs para la AWE32, ALMP. La conversión de awedrv a FreeBSD ha sido realizado por Randall Hopper (rhh@ct.picker.com). La nueva rutina de cálculo de volumen ha sido derivada de las rutinas compatibles ADIP de Mark Weaver. También quiero agradecer a los miembros de linux-awe-ml por sus esfuerzos por reiniciar sus sistemas muchas veces :-) * POR HACER - Completar la compatibilidad DOS/Win - salida parecida al DSP * COPYRIGHT Copyright (C) 1996-1998 Takashi Iwai This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.