Uniaud for OS/2
Introduction
=============
Uniaud is a Universal Audio Support Driver for OS/2. Uniaud was a project
created by InnoTek Systemberatung GmbH, now hosted by Netlabs.
Uniaud is based on the Linux ALSA project. Uniaud supports a broad range
of PCI audio cards/chipsets, including AC'97 and HDA audio codecs. AC'97
audio codecs will be found in systems with integrated (onboard) audio,
typically built up through 2004. HDA codecs will be found in modern systems
with integrated audio, built during or after 2004.
Uniaud also supports some older audio hardware.
Copyrights and License
======================
Uniaud32
--------
(C) 2000-2002 InnoTek Systemberatung GmbH
(C) 2000-2001 Sander van Leeuwen (sandervl@xs4all.nl)
(c) Copyright IBM Corporation 1990,2000.
All rights reserved.
Copyright (c) 2011-2018 David Azarewicz
Uniaud32 is a derivative work of the IBM DDK.
Parts of Uniaud32 copied from/inspired by the Linux ALSA project;
those parts are (c) Linux ALSA maintainers.
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., 59 Temple Place, Suite 330, Boston,
MA 02111-1307 USA
The source code can be retrieved from http://trac.netlabs.org/uniaud.
In compliance to the GNU General Public License, the source code
can of course be modified/compiled to run on other products as long
as modifications will also be published as outlined in the GNU GPL.
Uniaud16
--------
Copyright (c) IBM Corporation 1994 - 1997.
Copyright (c) 2011-2018 David Azarewicz
Uniaud16 is a derivative work of the IBM DDK. Uniaud16 is not GPL.
Binary programs and documentation for the Uniaud Drivers are licensed
to and distributed by Arca Noae, LLC.
Please note that builds other than the official binary delivered by
the Arca Noae web site are not officially supported.
Installation
============
The Uniaud distribution comes in a self executing Warpin installer package.
Simply execute to install or update.
Then simply reboot at the end of the installation. Restarting the desktop
will not suffice, as the driver needs to be loaded from CONFIG.SYS.
WARNING: If you are using ACPI.PSD make sure it is version 3.23.04 or
later or kernel traps may occur when running these drivers.
Driver Command Line Options
===========================
DEVICE=x:\MMOS2\UNIAUD32.SYS /A:0 /V /C:CARDNAME
- /A:n - Use audio adapter n where the first adapter is 0.
- /V - Verbose
- /C:DRIVER - Force audio hardware to *only* use the specified driver.
Where DRIVER is:
- SBLIVE : Sound Blaster Live!
- CS4281 : Cirrus Logic CS4281
- ALS4000 : Avance Logic ALS4000
- CMEDIA : C-Media CMI8738, CMI8338
- ICH : Intel ICHx, NFORCE1/2/3
- CS46XX : Cirrus Logic CS4280, CS46XX
- VIA82XX : VIA VT82C686A/B/C, VT8233A/C, VT8235
- ESS1938 : ESS Solo-1 (ESS 1938)
- MAESTRO : ESS Maestro1/2/2E, TerraTec DMX
- MAESTRO3 : ESS Maestro3/Allegro/Canyon3D-2
- YAMAHA : Yamaha YMF 724/724F/740/740C/744/754
- ENSONIQ : Ensoniq AudioPCI ES1371/73, Creative Labs SB PCI64/128
- ALI5451 : ALI 5451
- TRIDENT : Trident 4D Wave, SI7018
Default: Fully automatic operation. Use of switch is not recommended.
DEVICE=x:\MMOS2\UNIAUD16.SYS /V /C /M /L
- /V - Verbose
- /C - Enable CD output
- /M - Enable Microphone output
- /L - Enable Line-In output
Default: /C ((verbose messages; CD output enabled)
Removal
=======
To temporarily disable Uniaud, simply comment the following two lines in
CONFIG.SYS:
DEVICE=x:\MMOS2\UNIAUD32.SYS
DEVICE=x:\MMOS2\UNIAUD16.SYS
To uninstall Uniaud, run the included uninstal.exe. This will completely and
safely remove the Uniaud entries from MMPM2.INI and CONFIG.SYS. Uninstalling
from the Multimedia GUI tool will not work.
Getting Support and Reporting Problems
======================================
Uniaud is provided as-is and is currently not in development.
For more information and to report problems please visit:
https://www.arcanoae.com
and click on SUPPORT.
Or go directly to the Uniaud support wiki at:
https://www.arcanoae.com/wiki/uniaud/
Change Log
==========
Uniaud32 v.2.02.04 06-Jan-2018 - David Azarewicz
Misc minor changes for specific Intel HDA systems (From Andy).
Added limited MSI support.
Uniaud32 v.2.02.03 08-Jun-2017 - David Azarewicz
Modified adapter selection so only one adapter is selected when /A is used.

Description of This Package
---------------------------
This package is intended to aid in the debugging of Uniaud. It includes
both the release and the debug versions of the Uniaud audio drivers
(uniaud16.sys and uniaud32.sys).
The production version in the Release directory is compiled without debug
output statements and is intended for production use.
The debug version in the Debug directory is compiled with debug output
statements enabled, and is intended to be used in situations where there
is a problem and additional debug information is requested from a developer.
The Debug directory also contains MAP and SYM files for use with a debugger.
Installation
------------
You must already have Uniaud installed to use this package.
To install the debug version, simply copy the contents of the Debug directory
to the \MMOS2 directory on your boot disk and reboot.
For example: "copy Debug\* d:\mmos2".
To install the production version, simply copy the contents of the Release
directory to the \MMOS2 directory on your boot disk and reboot.
For example: "copy Release\* d:\mmos2".
You may wish to backup your existing uniaud16.sys and uniaud32.sys files in
the \MMOS2 directory first.
How to use the debug version
----------------------------
To use the debug versions, make a backup copy of your Release uniaud32.sys and
uniaud16.sys and copy the debug versions in their place. They debug versions
output information to the alsahlp$ log and the release versions do not.
To gather all the information needed to report a problem, download UniLog.cmd
from the netlabs ftp:
ftp://ftp.netlabs.org/pub/uniaud/UniLog.zip
To create the log file, simply run UniLog.cmd, type a simple 1 line description
of the problem, and include the resulting zip file with your problem report.
To only see the alsahlp$ information yourself, you can open an OS/2 command
prompt and enter:
copy alsahlp$ uniaud.log
However this log does not contain enough information to debug a problem, so always
use the UniLog.cmd program to produce logs to include with a problem report.
The Uniaud project site is http://svn.netlabs.org/uniaud. The user mailing list
is uniaud-user@netlabs.org, and the developer's mailing list is uniaud-dev@netlabs.org.
To subscribe, append "-subscribe" to the portion of the address before the @. The
lists are archived on Gmane.org.

UniLog.cmd
Issue Reporting Package for UNIAUD
This package is for users of UNIAUD who wish to
report a problem.
If UNIAUD does not work correctly for you, please
open a ticket at http://svn.netlabs.org/uniaud/report
If you don't have a login, use guest/netlabs
To create the necessary log for tracking the issue,
please unzip all files in this package in a
temporary directory and run UniLog.cmd. If you already
have PCI.EXE installed on your system, you can copy
UniLog.cmd to any directory in your PATH.
UniLog.cmd creates a log file which you should attach
to your Ticket in the Trac system.
The most useful logs are generated with the debug
build of uniaud16 and uniaud32, also available
from Netlabs ftp.
For problems related to specific hardware, if
possible, test it under Linux. There are a number
of bootable livecd's that can be used without
installing anything to your hard drive. A problem
which also occurs in Linux is a bug in ALSA, not
in Uniaud.
TIA
The UNIAUD developement Team

Multichannel Testing tool for Uniaud
Propose:
This tool useful for setting up/testing multichannel environment.
It requires UNIAUD audio driver and latest UNIAUD API (uniaud.dll
from March 2006 or later). The tool is Presentetion Manager
application.
Usage:
Run MULTTEST.EXE . It will open PM window with an room entire.
To test separate channels just click on appropriate speaker.
To test Subwoofer click on white screen.
If you have multichannel card with number > 0, start the tool
with command line parameter -dev<card id>:
MULTTEST.EXE -dev1
This will use device number 1
To check if device support 6 channels, use UNIMIX.EXE tool:
unimix.exe -pcms
and check for PCM PLAY section. If you see something like:
PCM dev name: [NVidia CK804] mixer [subdevice #0]
PLAY
streams: 1
channels: from 2 to 6
rates: from 48000 to 96000
then you lucky sotb! :)
Problems:
The tool doesnt work (and never will) with MMOS2/DART.
The tool works only with 6 channels environment
The tool tested only with Nvidia4/Cmedia-MC6/SB Live!
If something wrong, run "MULTTEST.EXE > out.log"
then send me out.log file
Contacts:
Vlad Stelmahovsky aka Vladest
vladest@netlabs.org
Thank you for your cooperation (c) 5th element