Crystal Semiconductor Corporation --------------------------------- README.TXT - Crystal Semiconductor, OS/2 ICH-AC97 Audio driver -------------------------------------------------------------------------- This file contains information on how to install the Crystal Semiconductor Corporation OS/2 audio device drivers for the Intel 810/820 family of processors with a Crystal Semiconductor AC97 audio CODEC. The following topics are covered in this READ.ME file: 1) Restrictions In This Release 2) Installing On Top Of Previous Installations 3) OS/2 Version 4 and Multiple MIDI and Audio devices 4) De-Installation of Entire MMPM/2 Multimedia Subsystem, and Re-install 5) System Requirements - Requires Full Pack Version of OS/2. 6) File List for Crystal Audio Install Disk 7) Installation Procedure 8) Device Driver Command Line Options 9) Device Driver .INI file 10) Audio in WIN-OS/2 Sessions 11) Audio in DOS Sessions 12) Audio Concurrency Issues - OS/2, DOS, Win-OS/2 13) PCI Configuration - IRQ Assignment 14) Web Site - Where To Get Updated Drivers 15) Problems/Questions 1) Restrictions In This Release - Known problems ------------------------------------------------------------------------------- Permanent Restrictions: No MIDI. The Intel 810/820 audio chip set does not support FM or other MIDI playback. There is no support for DOS (Sound Blaster) game execution. 2) Installing On Top Of Previous Installations ------------------------------------------------------------------------------- No de-install is necessary prior to executing the OS/2 Multimedia installation program, minstall.exe. 3) OS/2 Version 4 and Multiple MIDI and Audio devices ------------------------------------------------------------------------------- On OS/2 Warp Version 4, the operating system has a bug where it always uses the MMPM/2 defined WaveAudio01 device for audio and the Sequencer01 device for MIDI. If the machine has more than one WaveAudio device or more than one Sequencer device, the WaveAudio02 and Sequencer02 devices are NEVER used even if the user launches a "Digital Audio 2" application. This problem applies to system sounds and all of the GUI based applications that ship with the operating system. For more information, consult IBM OS/2 APAR: "JR10933 OS/2 Merlin MIDI player always uses MIDI1 device" The system bug is a configuration issue where the workplace shell associates ".WAV" and ".MID" file extensions expressly with the "01" version of the WaveAudio and Sequencer devices. There is no method to change the association and there is no facility provided in the OS/2 Warp 4 shipped applets to select a different device. ( This support did exist in OS/2 Warp 3 ) NOTE: MMPM/2 is very capable of handling a multitude of devices. This bug however limits the functionality. The problem does not exist on OS/2 Warp version 3. To work around this problem, the Crystal installation de-installs all waveaudio and sequencer devices before installing the drivers in this package. The end result is that there will be at most 1 wave audio device and 1 MIDI device when the install is complete. 4) De-Installation of Entire MMPM/2 Multimedia Subsystem, and Re-install ------------------------------------------------------------------------------- It is not normally necessary, but should it become necessary to start from the beginning, the OS/2 Multimedia subsystem (MMPM/2) can be deleted and reinstalled without impacting the rest of the installed system. a) ERASE \MMOS2 and all subdirectories (this removes OS/2 multimedia support) Some files won't delete, this is okay. b) Use OS/2 selective install to re-install OS/2 multimedia support. It may auto-detect an audio device. You should override the auto-detection to remove the detected device. When correct, the installation panel will have no audio devices listed. c) Complete selective installation and reboot d) You are now prepared to use this diskette to install Crystal drivers. 5) System Requirements - PCI Driver Requires Full Pack Version of OS/2. ------------------------------------------------------------------------------- This installation and device drivers on this diskette will work properly only on full-pack versions of OS/2. OS/2 Warp 3.0 ( Warp 3 Red box - Not supported, see below ) OS/2 Warp 3.0 Fullpack ( Warp 3 Blue box - Supported ) OS/2 Warp Connect ( Warp 3 Blue box - Suppotted ) OS/2 Warp 4.0 ( Warp 4 "Merlin" - Supported ) In the above "Bluebox" and "Redbox" refer literally to the color of the retail OS/2 box. Red box => "Warp for Windows". Uses previously installed Windows 3.1 binaries for WinOS2. Blue box => "Full pack". Windows 3.1 binaries are shipped with OS/2. WinOS2 audio support for the PCI driver requires installation of a Windows audio driver into system.ini that are specifc to OS/2. They will NOT operate on native Windows. The installation into system.ini is done automatically during OS/2 driver "minstall" installation process. Since the WinOS2 audio driver will not operate on native Windows, it is installed only onto full pack systems. This is the reason that OS/2 Warp 3 Red-Box (Half-pack) is officially not supported for this device driver set. If you are aware of the limitations, half-pack systems can be used. On half-pack systems, the Crystal installation will not install audio drivers for WinOS2 execution. It also will not modify the system.ini of native Windows 3.1 in any circumstance. If you have native Windows 3.1 Crystal PCI audio drivers installed, they must be removed for error free WinOS2 execution on Warp 3 red-box. This requires removing the Crystal Semiconductor audio driver from system.ini before WinOS2 launch and returning them to system.ini for native Windows 3.1 execution. This process is not automated. 6) File List for Crystal Audio Install Disk ------------------------------------------------------------------------------- List of all files (sorted by name) ---------------------------------- AMPMXMCD.DLL - IBM MMOS2 Amp Mixer update, installed Warp 3 if fixpack <26 AMPMXMCD.F26 - IBM MMOS2 Amp Mixer update, installed Warp 3 if fixpack =26 AUDIOIF.DLL - IBM MMOS2 Audio VSD update, installed Warp 3 if fixpack <26 AUDIOIF.F26 - IBM MMOS2 Audio VSD update, installed Warp 3 if fixpack =26 CARDINFO.DLL - Installation control file, resource DLL. CLICHOS2.INI - Crystal Semiconductor Intel ICH 810/820 audio driver CLICHOS2.INI - Device driver configurable settings (ASCII text file) CLOCK01.SYS - IBM High res timer driver/clock, installed Warp 3 only CLOCK02.SYS - IBM High res timer driver/clock, installed Warp 3 only CONTROL.SCR - Installation control file CWINST.DLL - Crystal installation executable, called by minstall.exe CWDAEMON.EXE - Crystal OS/2 daemon application supporting WinOS2 audio CWINST.DLL - Installation DLL. Called by minstall.exe at install time. CWWINAUD.DRV - Crystal Windows 3.1 (WinOS2) Audio driver CWWINPDD.SYS - Crystal PDD which implements WinOS2 audio CWWINVDD.SYS - Crystal VDD which implements WinOS2 audio FILES.SCR - Installation control file, list of files to copy INSTALL.CMD - Installation. Support double-click start of minstall.exe MIDIMAP.CFG - MIDIMAP file for Windows 3.1 FM driver README.TXT - This file TIMER0.SYS - IBM High res timer driver, installed on Warp 3 < FP26 only 7) Installation Procedure ------------------------------------------------------------------------------- To install device support, insert the Crystal Audio for OS/2 diskette in drive A: (or whichever drive Crystal Audio for OS/2 diskette is in). Start the Multimedia Application Install program: Warp 3 - Multimedia installation program is located inside the Multimedia folder, on the OS/2 desktop. Warp 4 - Multimedia installation program is located inside the System Setup folder. The System Setup folder is located inside the OS/2 System folder, on the OS/2 desktop. Alternatively, you can execute MINSTALL from an OS/2 command prompt or browse the installation diskette with the OS/2 "drives" utility and double-click on the ICON for "install.cmd". Once you are in the multimedia installation program, select Source Drive A: (or whichever drive Crystal Audio for OS/2 diskette is in). The installation program will show Crystal Audio (ICH) (Pre-selected) Click the "install" button to proceed with the installation. Read and follow the instructions provided by the installation program. NOTE: To remove audio and MIDI drivers, select zero devices when prompted for the number of devices to install. Selectable choices are 0 and 1. The following files are installed: If system is Pre-OS/2 Warp version 4 - Update CLOCK drivers \OS2\BOOT\CLOCK01.SYS IBM high resolution timer support \OS2\BOOT\CLOCK02.SYS IBM high resolution timer support \OS2\BOOT\TIMER0.SYS IBM high resolution timer support If system is Pre-OS/2 Warp version 4 and fixpack level < 26) \MMOS2\DLL\AMPMXMCD.DLL IBM DLL for mixer API/DART (from DART DevCon) \MMOS2\DLL\AUDIOIF.DLL IBM DLL for mixer API/DART (from DART DevCon) If system is Pre-OS/2 Warp version 4 and fixpack level is 26) \MMOS2\DLL\AMPMXMCD.F26 IBM standard FP 26 DLL (un-do prior installs) \MMOS2\DLL\AUDIOIF.F26 IBM standard FP 26 DLL (un-do prior installs) If system is Pre-OS/2 Warp version 4 and fixpack level > 26) No MMPM/2 system DLLs are updated If Crystal Audio is installed: \MMOS2\CLICHOS2.SYS Crystal ICH 810/820 audio device driver \MMOS2\CLICHOS2.INI Crystal Audio driver configuration file \MMOS2\CWWINPDD.SYS Crystal PDD supporting WinOS2 audio DRV \MMOS2\CWWINVDD.SYS Crystal VDD supporting WinOS2 audio DRV \MMOS2\CWDAEMON.EXE Crystal EXE supporting WinOS2 audio DRV \MMOS2\DLL\CWINST.DLL Crystal installation DLL \OS2\MDOS\WINOS2\SYSTEM\CWWINAUD.DRV Crystal WinOS2 audio driver These lines lines will be added to the OS/2 CONFIG.SYS file.: DEVICE=C:\MMOS2\CLICHOS2.SYS /N:CWWAUD1$ DEVICE=C:\MMOS2\CWWINPDD.SYS DEVICE=C:\MMOS2\CWWINVDD.SYS RUN=C:\MMOS2\CWDAEMON.EXE These lines lines will be added to the \OS2\MDOS\WINOS2\SYSTEM.INI: Drivers section: [drivers] WAVE=CWWINAUD.drv 8) Device Driver Command Line Options ------------------------------------------------------------------------------- The following tables describe the audio driver command line options. CWCMMPM.SYS - Audio device driver command line options Option/Format Description Valid Values (* = Default Value) --------------------------------------------------------------------- /N: Name of PDD CWCAUD1$ (Name assigned by minstall) There are no other parameters. Device driver options should be set via configuration file, CWCMMPM.INI. 9) Device Driver .INI file ------------------------------------------------------------------------------- An extensive set of configurable options are contained in the file \mmos2\cwcmmpm.ini. There are no config.sys command line equivalents. All of the configurable settings are listed in the file along with comments describing their defaults and selectable values. All changes take effect the next time the system is booted. 10) Audio in WIN-OS/2 Sessions ------------------------------------------------------------------------------- Crystal Semiconductor device drivers provide outstanding support for WinOS2. - Crystal WinOS2 audio drivers are automatically installed during installation of OS/2 native audio device drivers. - Crystal WinOS2 drivers are OS/2 specific and communicate with the native OS/2 audio driver to perform audio operations. - The audio device is considered "in-use" only when WinOS2 is actively making sound. For most users, this support prevents concurancy related errors from occuring. Still, they can occur. Some details on concurancy and other tips for WinOS2 and DOS game execution follow: The installation automatically configures WinOS2 Audio when you install Crystal OS/2 Audio drivers. Windows audio drivers are installed for OS/2 Fullpack systems only. The Crystal WinOS2 drivers are OS/2 specific and when loaded under WinOS2 communicate with the OS/2 native audio device drivers to perform audio. 11) Audio in DOS Sessions ------------------------------------------------------------------------------- This device driver set provides no support for execution of DOS games. 12) Audio Concurrency Issues - OS/2, DOS, Win-OS/2 ------------------------------------------------------------------------------- MMPM/2 ------ The OS/2 multimedia subsystem (MMPM/2) is designed such that, when an application is running in the foreground (has focus), then that application takes priority over applications which do not have focus. MMPM/2 manages the device contention, forcing pauses and resumes to pass use of the device to the foreground application. This support is only available for OS/2 native applications. When DOS games or WinOS2 drivers try to use the device, MMPM/2 is not implicitly involved in mannaging contention. WinOS2 Audio ------------ When WinOS2 is quiet, it is "idle" and will not prevent MMPM/2 or other WinOS2 sessions from using the device. This also allows you to run multiple separate WinOS2 sessions with no concern of audio sharing between the sessions. MMPM/2 by contrast considers the device "busy" whenever an OS/2 multimedia application is loaded. For example, loading the OS/2 shipped Digital Audio player will mark the device as "in-use" and has historically prevented WinOS2 from using the audio device. This is often not an issue as the most prevalent OS/2 multimedia application, system sounds, releases the device after each sound is played. For more information on this subject, see OS/2 online documentation VIEW /AUDIO VIEW /MULTIMEDIA VIEW /SOUNDS This Crystal Semiconductor driver set goes one step further on WinOS2 access to the audio device. When WinOS2 needs access to the audio device, Crystal drivers send messages to MMPM/2 instructing the system to kick all OS/2 native applications off of the device. When WinOS2 stops making sound, device ownership is returned to MMPM/2 where the "paused" OS/2 native applications again get ownership. The bottom line is that contention issues are minimized. There still exists the possibility of contention. If an OS/2 native application refuses to give up ownership or if two WinOS2 applications (in two separate WinOS2 sessions) are concurrently trying to make sound, only 1 will get through. 13) PCI Configuration - IRQ Assignment ------------------------------------------------------------------------------- PCI devices do not participate in PnP ISA configuration. The traditional issues of configuring IRQ/IO/DMA resources among all of the system's ISA devices do not apply. PCI devices are configured by the system BIOS - and ONLY by the system BIOS. The OS/2 operating system includes ring-0 services that device drivers use to query their device settings. The Crystal audio driver asks OS/2 to determine if its device is present and queries the resources that have been assigned. Since the resources are assigned by the BIOS, there is no chance of conflict. PCI interrupts are also assigned by the BIOS. PCI interrupts are, by definition, shareable. Multiple devices can be assigned to the same PCI interrupt. For the most part, this means the traditional ISA style concerns over resource allocation are not an issue on PCI. The only issue that can arrise is the PCI use of an IRQ that is wanted for ISA. Switching a PCI device to a different IRQ is the domain of the system BIOS. On many systems, the IRQ assigned to a PCI device is configurable via the PC's setup panel. On others it is fixed. In all cases, the OS/2 operating system and the Crystal Semiconductor PCI audio device will use the resources assigned by the BIOS. There is no provision for runtime override. 14) Web Site - Where To Get Updated Drivers ------------------------------------------------------------------------------- This device driver supports execution on the Intel 810/820 audio devices connected to a Crystal Semiconductor AC97 audio CODEC. This device driver should NOT be used for any of the Crystal Semiconductor ISA audio CODECs, including the CS4231, CS4232, CS4236, CS4236B, CS4237B, CS4238B, CS4235 and CS4239 or any of the PCI audio devices including the CS4280, CS4614 and CS4624. Updated OS/2 drivers are posted on the Cirrus Logic corporate web site. http://www.cirrus.com/drivers/audiodrv/ 15) Problems/Questions ------------------------------------------------------------------------------- Please e-mail problems/questions to the following address: montalvo@crystal.cirrus.com