UNISOUND el driver definitivo para Sound Blaster en MS-DOS

Publicado por

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.

Adlib
Tarjeta de Sonido Adlib, la que lo inició todo

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.

Sound Blaster Pro
Sound Blaster PRO

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.

SB16
SB16-CT2940

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.

VOGONS Vintage Driver Library

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.

Como socio de Ebay, puedo recibir una compensación si realiza esta compra

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.

286 instalación tarjeta de sonido
Tandon 286 con tarjeta Sound Blaster Vibra16 instalada

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.

Pruebas UNISOUND
Pila de tarjetas de sonido para probar

Y el equipo sobre el que ha realizado todas las pruebas.

Equipo pruebas UNISOUND
Amstrad PC1512

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)
Aztech 1008 (N270)
Creative SB AWE64 PnP (CT4380)No
Creative SB AWE64 PnP (CT4520)No
Creative SB Pro 2 (CT1600)No
Creative SB16 (CT2910)
Creative SB32 PnP (CT3600)
Creative SB32 PnP (CT3620)
Creative VIBRA 16C PnP (CT2960)
Diamond Technologies DT-0197H (DT197A30)No
Expertcolor Opti Audio 16 (MED3931 VER:2.0)
Philips PCA721AF (DXLSK81)No
Yamaha OPL3 SAX (A151-A00 LWHA151A00)

Un pantallazo del arranque del driver sobre el equipo con una Sound Blaster 16 instalada.

Screenshot Driver UNISOUND
Sound Blaster 16

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.

Conexión externa mini jack Tarjeta de Sonido
Joystick y mini jack conectado a la salida de sonido de la Sound Blaster Vibra16

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

  1. Y el CDROM ¿Como se configura en esta tarjeta de sonido? ¿vale cualquiera o tiene que ser uno específico?

    1. Muy buenas Dwmaquero, pues sería necesarios cargar otros drivers para el tema del CDROM.
      Dependiendo de cual uses te funcionará un modelo u otro. Lo mas sencillo sería pillar uno de Creative, ya que no hay duda de que funcionen correctamente con los drivers oficiales para soporte de CDROM.
      En un 486 acabo hace poco de dejarlos configurados. Si te interesa puedo hacer un articulillo explicando un poco como se hace.
      Un saludo.

      1. Pero ¿tiene que ser un CDROM de creative para que funcione? ¿y como me explicas que un DVD LG si funciona con WIndows 95 pero con MS-DOS no hay manera de que lo detecte?
        He probado muchos drivers, IDECDROM, SBIDE, OAKCDROM y ninguno lo detecta, el DVD lo tengo configurado como primario conectado directamente a la SB 16 y repito Windows 95 lo detecta pero en el 386 va algo justo

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

6 + 4 =