| 1 | SoundBlaster Live! OS/2 Audio driver version 0.81 (beta)
|
|---|
| 2 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|---|
| 3 |
|
|---|
| 4 | Contents
|
|---|
| 5 | ========
|
|---|
| 6 | 1 Description
|
|---|
| 7 | 2 Features
|
|---|
| 8 | 3 History
|
|---|
| 9 | 4 Requirements
|
|---|
| 10 | 5 Installation/uninstall
|
|---|
| 11 | 6 Config.sys options
|
|---|
| 12 | 7 Known problems
|
|---|
| 13 | 8 File listing
|
|---|
| 14 | 9 Source code
|
|---|
| 15 | 10 Contacting the author
|
|---|
| 16 | 10.1 SoundBlaster Live OS/2 mailinglist
|
|---|
| 17 | 11 Warranty
|
|---|
| 18 |
|
|---|
| 19 |
|
|---|
| 20 | 1 Description
|
|---|
| 21 | =============
|
|---|
| 22 | This is the port of the open source Creative Labs SoundBlaster Live Linux audio
|
|---|
| 23 | driver.
|
|---|
| 24 | Although the driver is almost feature complete, it should still be considered
|
|---|
| 25 | beta software. (see the warranty section)
|
|---|
| 26 |
|
|---|
| 27 | This work would never have been possible without the support by Creative Labs
|
|---|
| 28 | and the current maintainers of the Linux driver.
|
|---|
| 29 |
|
|---|
| 30 |
|
|---|
| 31 | 2 Features
|
|---|
| 32 | ==========
|
|---|
| 33 | - Up to 32 simultaneous wave playback streams
|
|---|
| 34 | - One record stream
|
|---|
| 35 | - Full duplex
|
|---|
| 36 | - Support for the IOCTL90 mixer interface (designed by Joe Nord of
|
|---|
| 37 | Crystal Semiconductor and supported by the Crystal OS/2 audio drivers)
|
|---|
| 38 | - RTMIDI playback & recording
|
|---|
| 39 | --> Note: this is not the same as midi playback via MMPM/2 (midi applet)
|
|---|
| 40 | Playing midi files requires an external MIDI device
|
|---|
| 41 |
|
|---|
| 42 |
|
|---|
| 43 | 3 History
|
|---|
| 44 | =========
|
|---|
| 45 | 0.81
|
|---|
| 46 | - Master volume can now control analog inputs
|
|---|
| 47 |
|
|---|
| 48 | 0.80
|
|---|
| 49 | - DAC mixer control added (for LBMix)
|
|---|
| 50 | Updates from Ruediger Ihle:
|
|---|
| 51 | - Aux volume control fixed
|
|---|
| 52 | - Aux config.sys flag added
|
|---|
| 53 | - Warp 3 DART now works
|
|---|
| 54 |
|
|---|
| 55 | 0.75
|
|---|
| 56 | - Put back joystick code
|
|---|
| 57 | - Fix for playing small wave files
|
|---|
| 58 |
|
|---|
| 59 | 0.70
|
|---|
| 60 | - Fail to load if resource manager returned error while allocating resources.
|
|---|
| 61 | (prevents SB Live driver from allocating irq when the (e.g.) the USB driver
|
|---|
| 62 | has already claimed exclusive access)
|
|---|
| 63 | - Added new DirectAudio interface used by Odin for wave playback
|
|---|
| 64 |
|
|---|
| 65 | 0.60
|
|---|
| 66 | - Fixed detection of SB Live on some systems
|
|---|
| 67 | - Fixed video mixer control
|
|---|
| 68 | - Changed wave volume level
|
|---|
| 69 | - Fixed clicks when playing wave files with large audio buffers
|
|---|
| 70 | - Print joystick port during init + register joystick device + it's resources
|
|---|
| 71 |
|
|---|
| 72 | 0.50
|
|---|
| 73 | - Added RTMIDI playback & recording (MPU401)
|
|---|
| 74 | - Manually detect SB Live! hardware
|
|---|
| 75 | - Bugfix for TRAP D when starting playback/recording
|
|---|
| 76 |
|
|---|
| 77 | 0.25
|
|---|
| 78 | - First public beta release
|
|---|
| 79 |
|
|---|
| 80 |
|
|---|
| 81 | 4 Requirements
|
|---|
| 82 | ==============
|
|---|
| 83 | - OS/2 Warp 4 or Warp Server for e-Business
|
|---|
| 84 | (Warp 3 not tested)
|
|---|
| 85 | - Creative Labs SoundBlaster Live! or
|
|---|
| 86 | Creative Labs SoundBlaster PCI 512 soundcard
|
|---|
| 87 |
|
|---|
| 88 |
|
|---|
| 89 | 5 Installation/uninstall
|
|---|
| 90 | ========================
|
|---|
| 91 | To install the SB Live driver:
|
|---|
| 92 | - Make sure your BIOS configures the SB Live! card (assigns IRQ and IO addresses)
|
|---|
| 93 | Look for a 'PnP OS' (or similar) setting in your BIOS options and set it to
|
|---|
| 94 | 'No' or 'Off'.
|
|---|
| 95 | The SB Live! driver does not work if the BIOS doesn't assign hardware
|
|---|
| 96 | resources to the card.
|
|---|
| 97 | - Unzip driver archive
|
|---|
| 98 | - Run install.cmd
|
|---|
| 99 | - Select 'SoundBlaster Live! Wave Audio' and continue installation
|
|---|
| 100 | - Reboot
|
|---|
| 101 |
|
|---|
| 102 | To remove the SB Live driver you should proceed with the installation
|
|---|
| 103 | as described above, but select zero SB Live cards when asked.
|
|---|
| 104 |
|
|---|
| 105 | To use the SB Live's joystick port you need to install one of the
|
|---|
| 106 | OS/2 joystick drivers and tell it to you the IO port that the
|
|---|
| 107 | sb live driver prints during boot.
|
|---|
| 108 | I.e.: Sblive16 prints this during boot:
|
|---|
| 109 | SB Live! joystick at : 0xE400
|
|---|
| 110 | Change the joystick port address to E400 for the gamedd2 driver:
|
|---|
| 111 | DEVICE=C:\GAMEDD.SYS /P:E400 /W:400 /C:1E
|
|---|
| 112 |
|
|---|
| 113 | Note that this is not an ideal solution as the SB Live's joystick
|
|---|
| 114 | port address can be changed by the BIOS when hardware is added or
|
|---|
| 115 | removed.
|
|---|
| 116 | However, it's safer than mapping it to the standard joystick port address
|
|---|
| 117 | (i.e. 0x201) due to the risk of a conflict with other (audio) hardware.
|
|---|
| 118 |
|
|---|
| 119 |
|
|---|
| 120 | 6 Config.sys options
|
|---|
| 121 | ====================
|
|---|
| 122 | DEVICE=J:\MMOS2\SBLIVE16.SYS /V /C /M /L
|
|---|
| 123 | - /V: verbose (prints copyrights during driver init)
|
|---|
| 124 | - /C: enable CD audio input (default muted; can be changed with mixer app)
|
|---|
| 125 | - /M: enable microphone audio input (default muted; can be changed with mixer app)
|
|---|
| 126 | - /L: enable linein audio input (default muted; can be changed with mixer app)
|
|---|
| 127 | - /A: enable aux audio input (default muted; can be changed with mixer app)
|
|---|
| 128 |
|
|---|
| 129 | DEVICE=J:\MMOS2\SBLIVE32.SYS /D
|
|---|
| 130 | - /D: print start and end address of code
|
|---|
| 131 | (useful to locate the code that causes a trap (CS:EIP in trapscreen))
|
|---|
| 132 |
|
|---|
| 133 | The installation adds the verbose and CD settings to the config.sys line.
|
|---|
| 134 |
|
|---|
| 135 |
|
|---|
| 136 | 7 Known problems
|
|---|
| 137 | ================
|
|---|
| 138 | - Users have reported that sometimes applications can no longer play audio
|
|---|
| 139 | (unable to load mdm.dll). This apparently happens from time to time (requiring
|
|---|
| 140 | a reboot), but I have not been able to reproduce this myself.
|
|---|
| 141 | If you find a way to reliably reproduce this, please contact the author.
|
|---|
| 142 | (see section 9)
|
|---|
| 143 | - Crash in PMMERGE when installing the driver on a system that uses the Scitech
|
|---|
| 144 | display drivers.
|
|---|
| 145 | Workaround: move the first minstall window (which asks you to select the sb
|
|---|
| 146 | driver) almost completely outside of the screen and press enter.
|
|---|
| 147 | - No sound when there are still inactive audio drivers in MMOS2\mmpm2.ini.
|
|---|
| 148 | To correct the problem uninstall the SB Live and your old audio driver.
|
|---|
| 149 | You can also manually remove references to the old driver:
|
|---|
| 150 | - uninstall the SB Live driver
|
|---|
| 151 | - edit MMOS2\mmpm2.ini
|
|---|
| 152 | - search for 'Waveaudio=' section and remove any names that
|
|---|
| 153 | are listed on that line
|
|---|
| 154 | - search for 'Ampmix=' section and remove any names that
|
|---|
| 155 | are listed on that line
|
|---|
| 156 | (result: Waveaudio=
|
|---|
| 157 | Ampmix=
|
|---|
| 158 | )
|
|---|
| 159 | - reinstall the SB Live driver
|
|---|
| 160 | MMOS2\mmpm2.ini should now contain:
|
|---|
| 161 | Waveaudio=SBLIVEWAVE01
|
|---|
| 162 | Ampmix=SBLIVEAMPMIX01
|
|---|
| 163 | - reboot
|
|---|
| 164 |
|
|---|
| 165 | - IRQ conflicts can occurs with drivers that are unable to share their interrupt.
|
|---|
| 166 | (the USB drivers have this problem, but only on some systems)
|
|---|
| 167 | The SBLive driver can detect some of these conflicts and will print the
|
|---|
| 168 | following messages:
|
|---|
| 169 | Another device driver was granted exclusive access to IRQ xx
|
|---|
| 170 | Unable to allocate hardware resources! Aborting...
|
|---|
| 171 |
|
|---|
| 172 | When you see this message, you must force the BIOS to allocate another
|
|---|
| 173 | interrupt for the sblive driver.
|
|---|
| 174 |
|
|---|
| 175 |
|
|---|
| 176 | 8 File listing
|
|---|
| 177 | ==============
|
|---|
| 178 | Installation files:
|
|---|
| 179 | audfiles.scr
|
|---|
| 180 | audplay.ico
|
|---|
| 181 | AUDHELP.HLP
|
|---|
| 182 | CARDINFO.dll
|
|---|
| 183 | control.scr
|
|---|
| 184 | midiplay.ico
|
|---|
| 185 | vidplay.ico
|
|---|
| 186 |
|
|---|
| 187 | 16 bits MMPM/2 audio driver:
|
|---|
| 188 | sblive16.sys
|
|---|
| 189 |
|
|---|
| 190 | 32 bits SB Live Core audio driver:
|
|---|
| 191 | sblive32w4.sys
|
|---|
| 192 |
|
|---|
| 193 | 32 bits SB Live Core audio driver:
|
|---|
| 194 | (uses the new KEE api found in Warp 4 + Fixpack 13 or Warp Server for
|
|---|
| 195 | e-Business)
|
|---|
| 196 | sblive32kee.sys
|
|---|
| 197 |
|
|---|
| 198 |
|
|---|
| 199 | 9 Source code
|
|---|
| 200 | =============
|
|---|
| 201 | As this driver is based on the open source SoundBlaster Live Linux driver,
|
|---|
| 202 | the source code is available under the GNU LIBRARY GENERAL PUBLIC LICENSE.
|
|---|
| 203 | The CVS repository is located at the Netlabs server:
|
|---|
| 204 | set CVSROOT=:pserver:guest@www.netlabs.org:d:/netlabs.src/sbliveos2
|
|---|
| 205 | set USER=guest
|
|---|
| 206 |
|
|---|
| 207 | Login as 'guest' with password 'readonly'.
|
|---|
| 208 |
|
|---|
| 209 |
|
|---|
| 210 | 10 Contacting the author
|
|---|
| 211 | =======================
|
|---|
| 212 | When you find a bug in the driver, you can contact the author by
|
|---|
| 213 | email at sandervl@xs4all.nl.
|
|---|
| 214 | Bug reports should include the following information:
|
|---|
| 215 | - SoundBlaster Live model
|
|---|
| 216 | - OS/2 version + fixpack level
|
|---|
| 217 | - Description of the procedure to reproduce the bug
|
|---|
| 218 | - Trap description (register contents) (if you're reporting a crash)
|
|---|
| 219 | Add the /D option to the sblive32.sys config.sys line and write down
|
|---|
| 220 | the start & end address printed during the driver initialization.
|
|---|
| 221 |
|
|---|
| 222 | Please note that I do *not* want people to mail me about problems that
|
|---|
| 223 | aren't clearly bugs in the driver. There is a mailinglist at egroups.com
|
|---|
| 224 | that can be used for general questions about the driver.
|
|---|
| 225 |
|
|---|
| 226 | Also, do NOT mail the Linux authors about problems with the OS/2 driver.
|
|---|
| 227 | If a problem in the driver turns out to be a bug in their code, then I will
|
|---|
| 228 | contact them.
|
|---|
| 229 |
|
|---|
| 230 |
|
|---|
| 231 | 10.1 SoundBlaster Live OS/2 mailinglist
|
|---|
| 232 | ======================================
|
|---|
| 233 | A mailinglist to discuss the OS/2 sblive driver has been created at yahoogroups.com.
|
|---|
| 234 | Go to www.yahoogroups.com to subscribe to sbliveos2@yahoogroups.com.
|
|---|
| 235 |
|
|---|
| 236 |
|
|---|
| 237 | 11 Warranty
|
|---|
| 238 | ===========
|
|---|
| 239 | EXCEPT AS OTHERWISE RESTRICTED BY LAW, THIS WORK IS PROVIDED
|
|---|
| 240 | WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES OF ANY KIND, INCLUDING
|
|---|
| 241 | BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF FITNESS FOR A
|
|---|
| 242 | PARTICULAR PURPOSE, MERCHANTABILITY OR TITLE. EXCEPT AS
|
|---|
| 243 | OTHERWISE PROVIDED BY LAW, NO AUTHOR, COPYRIGHT HOLDER OR
|
|---|
| 244 | LICENSOR SHALL BE LIABLE TO YOU FOR DAMAGES OF ANY KIND, EVEN IF
|
|---|
| 245 | THEY HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
|---|