Usando UNISOUND para nuestras tarjetas de sonido
Si te has embarcado en la fantástica empresa que es montar o poner al día un ordenador antiguo, una de las cosas que no puede faltar es añadirle una tarjeta de sonido. Y para ello siempre es necesario usar un driver, en este caso te enseñaremos a usar UNISOUND, el driver que soporta casi todas las tarjetas para MS-DOS.
Cuando aparecieron las primeras tarjetas de sonido de la marca Adlib, los precios de las mismas eran todavía desorbitados para casi todos los mortales, no fue hasta después de un tiempo que con la irrupción en el mercado de Creative Technology Limited y su Sound Blaster 1.0, una copia mejorada de la famosa Adlib, cuando se empezaron a hacer asequibles por el consumidor medio su adquisición.
No vamos a nombrar aquí todos los fabricantes, como Roland, Gravis, etc… sino que nos vamos a enfocar en como hacer funcionar dichas tarjetas en nuestro viejunos sistemas.
Pues empecemos a analizar diferentes cosas que nos pueden producir distintos quebraderos de cabeza. Lo primero es analizar sobre que equipo queremos añadir nuestra tarjeta de sonido y el sistema operativo sobre el que la vamos a hacer correr.
Si nuestro equipo es un 8080/8086/80286 ya os aseguro que vamos a tener numerosos quebraderos de cabeza según el modelo de tarjeta que tengamos.
Modelos de Sound Blaster, aunque parezca mentira, tenemos un montón, debido a que luego se permitió también la fabricación con diferentes integrados, como la Vibra16 y que nos ponen las cosas más difíciles.
MS-DOS y sus drivers de sonido
Como los equipos que estamos analizando van a correr sobre Ms-Dos, necesitaremos por lo pronto drivers para dicho sistema, pero sobre todo nos vamos a encontrar con un problema grave. Los drivers que normalmente encontramos necesitan cargar un programa residente en memoria para hacer funcionar la tarjeta de sonido denominado TSR, y el problema de ello, es que muchos necesitan usar el famoso EMM386.sys para gestionar la parte alta de la memoria de forma EMS, y por desgracia nuestros pobres microprocesadores no son capaces de realizar dicha gestión hasta la aparición del procesador 386.
Este problema se recrudece, porque aunque existían drivers mas antiguos que no consumían tanta memoria y no necesitaban del uso del EMM386.sys, en un momento dado parece ser que se produjo una reunificación de drivers, para que se soportaran muchos modelos, y claro, con estos drivers ya no había forma de correrlo en un 286 o inferior.
Además, como encima tenemos muchos modelos de tarjetas que aparecieron muy posteriormente a las fechas de fabricación de estos ordenadores, pues tampoco teníamos drivers diseñados para funcionar en equipos tan antiguos.
Drivers oficiales de Sound Blaster
De todas formas os dejo aquí un recopilatorio de drivers para las tarjetas Sound Blaster, ojo que tenéis para más fabricantes y muchas mas cosas. Esta página es un buen punto de partida.
Os aseguro que después de una tarde entera probando unos y otros, casi seguro que vuestra tarjeta sigue sin funcionar.
Pues no os preocupéis porque vamos a vuestro rescate con un Driver Universal denominado UNISOUND.
Dicho driver desarrollado por el usuario JazeFox de la página de Vogon, se ha currado un drivers universal para una gran cantidad de modelos y fabricantes de tarjetas y que ocupa en memoria una nimiedad. Por supuesto no necesitan EMS ni nada parecido y su configuración es muy sencilla.
Aunque está pensado para tarjetas ISA PnP, ah…. el Plug and Play….., también puede funcionar en tarjetas más antiguas.
De todas formas por si todavía no tenéis ninguna tarjeta para vuestro equipo os dejo una ofertilla que he visto en Ebay por si os interesa.
Compatibilidad UNISOUND
Para que veáis una muestra de los fabricantes soportados:
ESS, Creative, ALS, CMI, ADI, Yamaha, Diamond tech, Aztech, OPTi, Crystal, community-made ones like Orpheus, AWE64 Legacy.
Bueno vamos a empezar a meternos en faena.
Lo primero que tendremos que hacer, aunque es obvio es tener nuestra tarjeta de sonido pinchada en nuestro retro ordenador.
Luego nos tenderemos que descargar el siguiente Driver.
Universal PnP Sound Card Driver for DOS v0.75e (c) JazeFox 2019-20 (UNISOUND)
Configuraciòn de las variables en MS-DOS
Una vez lo tenemos, pues evidentemente habrá que copiarlo a nuestro ordenador, para estos menesteres tendremos que tirar en la mayoría de los casos de copia a disquete.
Una vez copiado veamos que necesitamos añadir a nuestros ficheros de arranque de ms-dos.
En el fichero Autoexec.bat tan solo tendremos que añadir las siguientes líneas. Ojo nos vamos a centrar en la familia de Sound Blaster y en una configuración básica, en la documentación se detallan muchos más fabricantes.
SET BLASTER=A220 I5 D1 T4 J200 P330
UNISOUND.COM /V70
Evidentemente debemos de incluimos el directorio donde hayamos copiado el UNISOUND en el Path del Ms-dos o le indicamos directamente la ruta en el Autoexec.bat, eso según gustos.
Para añadir al Path tan solo añadimos el directorio.
SET PATH=C:\DOS;C:\UNISOUND
Aquí veis que lo único que le he indicado es que el volumen esté al 70%, pero podemos usar muchas mas opciones dependiendo de nuestra preferencias o necesidades.
Options:
/Cn Select PnP card number 'n' to initialize/read (n = 2 to 5)
/CS Initialize non-PnP Creative card (SB16 & AWE32)
/CL List all PnP cards present in the system
/R Read PnP card current settings only (can be used with /Cn)
/D Disable PnP sound card (can be used with /Cn)
/Vnn Set Master Volume level to 'nn' % (00-99)
/VWnn Set Wave Volume level to 'nn' % (00-99)
/VFnn Set FM/Synth/WT Volume level to 'nn' % (00-99)
/VLnn Set Line-in Volume level to 'nn' % (00-99)
/VCnn Set CD Volume level to 'nn' (00-99)
/VMnn Set Mic Volume level to 'nn' (00-99)
/VPnn Set PC Speaker-in Volume level to 'nn' (00-99) (Creative)
/VTnn Set Treble level to 'nn' (00-99) (Compat. Creative cards)
/VTnn Set Bass level to 'nn' (00-99) (Compat. Creative cards)
/Xxxx eXtened cards settings (see section 5 for details)
/H /? Help screen
Si analizamos un poco la configuración para la familia de tarjetas Sound Blaster, aquí tenemos el detalle de lo que necesitamos indicar según la tarjeta y ordenador donde lo ejecutemos.
A220 I5 D1 H1 P330 E620 W530 J200 C168 Rxxx M310 F388 U9
A: SB compatible base address (220 by default)
I: SB compatible IRQ number (5 by default)
D: 1st DMA (1 by default)
H: High DMA or 2nd DMA (depends on the card. Default value too).
E: SB AWE base address (620 by default). Only for cards with EMU8000.
W: WSS address for cards that require it (530 if not specified). It is
better not to use this if you don't know what you are doing.
J: Joystick game port address (if you put J0 the port is disabled)
C: IDE port address (disabled by default). If you put a value, it will
activate the IDE port (if address is valid). Valid values:
170 (secondary), 1E8 (tertiary), 168 (quaternary, recommended). Please
take into account that some cards have only 1 possible value
(usually 170), so you can try and test. C0 will force disable it.
IRQs for this port are calculated automatically (10, 11, 15) based
on the address, so it is not needed to specify them. Anyway as this
tool is launched after config.sys, if you want CD-ROM support you'll
have to load CD driver (like vide-cdd.sys) with device driver loaders
like DEVLOAD after Unisound IDE port activation.
R: Address for cards that require a CONTROL register to configure internal
stuff of the card. You should not use this parameter, every card has
its own value as default internally in the tool. Use this ONLY if
you know what you are doing.
M: Special option for Maxi Sound 64 series cards with DREAM SAM chips, it
is the primary MPU port (P is the internal port, needed to upload
firmware, but you can swap them playing with P and M values).
F: FM/OPL Base address. Default is 388. F0 to disable (not all cards allow
to disable or change this port!). Accepted values: 388, 398, 3A8, 0.
This option is useful, for example, to disable or remap CQM synth in
SB cards if you use other card with a genuine OPL chip tied to 388,
or useful for the future "AWE64 Legacy" project, with a genuine OPL.
Note that a few games (like Dynblaster) will try to use FM synth on
SB ports 2x0, and it will FM output sound (in SB with CQM for example)
anyway. Set FM volume to 0 to avoid it.
U: MPU IRQ (for cards that require it. For cards that don't use a MPU IRQ,
this parameter will be ignored). It is optional. If not set, best known
value for each card will be used.
Batería de pruebas con UNISOUND
Y como pequeña batería de pruebas aquí os dejo una tabla con los resultados con diferentes tarjetas de sonido que ha realizado el compañero Carolo.
Y el equipo sobre el que ha realizado todas las pruebas.
Aquí os dejo la tabla de resultado de pruebas.
Tarjeta de sonido | Unisound detecta y configura | Jukebox detecta OPL | Se escucha |
---|---|---|---|
Advanced Logic ALS100 (AS003 MA5ASOUND) | Sí | Sí | Sí |
Aztech 1008 (N270) | Sí | Sí | Sí |
Creative SB AWE64 PnP (CT4380) | Sí | Sí | No |
Creative SB AWE64 PnP (CT4520) | Sí | Sí | No |
Creative SB Pro 2 (CT1600) | No | Sí | Sí |
Creative SB16 (CT2910) | Sí | Sí | Sí |
Creative SB32 PnP (CT3600) | Sí | Sí | Sí |
Creative SB32 PnP (CT3620) | Sí | Sí | Sí |
Creative VIBRA 16C PnP (CT2960) | Sí | Sí | Sí |
Diamond Technologies DT-0197H (DT197A30) | Sí | Sí | No |
Expertcolor Opti Audio 16 (MED3931 VER:2.0) | Sí | Sí | Sí |
Philips PCA721AF (DXLSK81) | Sí | Sí | No |
Yamaha OPL3 SAX (A151-A00 LWHA151A00) | Sí | Sí | Sí |
Un pantallazo del arranque del driver sobre el equipo con una Sound Blaster 16 instalada.
Como podéis ver no es infalible, pero nada en la vida lo es. Y ya con esto, tan solo resta conectar nuestra flamante tarjeta a unos altavoces de la época para sumergirnos en el sonido viejuno.
Espero que os haya servido de ayuda para configurar vuestra tarjeta de sonido Sound Blaster o cualquier otra en MS-DOS.
¡Nos vemos en la siguiente entrada!
4 comentarios