Changeset 595
- Timestamp:
- Apr 3, 2017, 3:35:13 PM (8 years ago)
- Location:
- OCO/trunk
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
OCO/trunk/drv16/wavestrm.cpp
r534 r595 218 218 // the hardware buffer is a moving target and calling it more than once 219 219 // could keep us in this loop writing 4 or 8 bytes at a time. 220 // In extre amcases we will stay stuck in this loop long enough to casue a trap rjj220 // In extreme cases we will stay stuck in this loop long enough to casue a trap rjj 221 221 if (pahw->GetSpace(StreamId, &_configinfo, &ulSpace) == FALSE) { 222 222 rprintf(("WS::ABS GetSpace failed")); … … 289 289 290 290 // get the buffer pointer and amount of data remaining 291 pDataBuf 291 pDataBuf = (ULONG)pTemp->pBuffptr + pTemp->ulBuffpos; /* points to the beginning of data in src buffer */ 292 292 ulBuffLeft = pTemp->ulBuffsz - pTemp->ulBuffpos; /* amount of src data left to transfer */ 293 //dprintf(("WS::AddBuffer buf=%lx remain=%lx, space=%lx bp=%lx dp=%lx size=%lx", pTemp->pBuffptr, ulBuffLeft, ulSpace, pTemp->ulBuffpos, pTemp->ulDonepos, pTemp->ulBuffsz)); 293 //dprintf(("WS::AddBuffer buf=%lx remain=%lx, space=%lx bp=%lx dp=%lx size=%lx", 294 // pTemp->pBuffptr, ulBuffLeft, ulSpace, pTemp->ulBuffpos, pTemp->ulDonepos, pTemp->ulBuffsz)); 294 295 ulBuffLeft = min(ulBuffLeft, ulSpace); /* the smaller of src data left or dst space available */ 295 296 … … 379 380 { 380 381 case STREAM_WRITE: 381 382 { 382 383 PSTREAMBUFFER pTemp; 383 384 ULONG ulBytes, ulDelta; … … 407 408 _ulLastPosition = ulBytes; 408 409 410 #if 0 /* DAZ 20170402 */ 409 411 if(!qhInProcess.IsElements() && !qhDone.IsElements()) { 410 //Application underrun411 412 _vUnderrunStop("WS:Process"); 412 413 break; 413 414 } 415 #endif 414 416 if (qhInProcess.IsElements()) AddBuffers(1); 415 417 // Return any buffers that have been completely written to uniaud32 … … 429 431 } 430 432 break; 431 433 } 432 434 case STREAM_READ: 433 435 { 434 436 ULONG ulDAZ; 435 437 … … 442 444 } 443 445 break; 444 446 } 445 447 default: 446 448 break; -
OCO/trunk/install/README.TXT
r590 r595 5 5 2.0 Installation 6 6 2.1 Upgrade 7 2.2 Basic Installation: Common 8 2.3 Installing HDA Support 9 2.4 Device Driver Load Options 7 2.2 Device Driver Load Options 10 8 3.0 Removal 9 4.0 Support 11 10 12 11 1.0 About Uniaud … … 14 13 15 14 Thank you for downloading Uniaud, the Universal Audio Support Driver for 16 OS/2 and eComStation. Uniaud is still under development and we need your 17 feedback to improve it. It is very important that you report your experiences, 18 both for sound cards which work and for those which may have problems (see 19 Supported Hardware). 20 21 Uniaud was a project created by InnoTek Systemberatung GmbH, now hosted 22 by Netlabs. 15 OS/2. Uniaud was a project created by InnoTek Systemberatung GmbH, now 16 hosted by Netlabs. 23 17 24 18 Uniaud is based on the Linux ALSA project. Uniaud supports a broad range … … 28 22 with integrated audio, built during or after 2004. 29 23 30 Uniaud also supports some legacyaudio hardware.24 Uniaud also supports some older audio hardware. 31 25 32 26 … … 34 28 ================== 35 29 36 2.1 Upgrade 37 ------------- 38 If Uniaud is already installed, it is safest to make a backup of your existing 39 drivers located in x:\MMOS2 (where x: is your boot volume) and just copy 40 uniaud32.sys and uniaud16.sys over them. 30 2.1 Device Driver Load Options 31 -------------------------------- 41 32 42 2.2 Basic Installation: Common 43 -------------------------------- 44 45 Uniaud installs using the built-in multimedia installer in OS/2 or 46 eComStation. Therefore, once you have downloaded the file(s) mentioned above, 47 simply unzip the package to a safe place and run install.cmd from that 48 directory. This will launch the multimedia installer which will guide you 49 through the process. 33 The Uniaud distribution comes in a self executing Warpin installer package. 34 Simply execute to install or update. 50 35 51 36 Then simply reboot at the end of the installation. Restarting the desktop 52 37 will not suffice, as the driver needs to be loaded from CONFIG.SYS. 53 38 54 2.4Device Driver Load Options55 39 2.2 Device Driver Load Options 40 -------------------------------- 56 41 57 42 The following options are supported in CONFIG.SYS: 58 43 59 44 DEVICE=x:\MMOS2\UNIAUD32.SYS /V /C:CARDNAME 45 - /A:n - Use audio adapter n where the first adapter is 0. (Really skip n adapters). 60 46 - /V - Verbose 61 - /C: CARDNAME - Force detection of specified audio hardware62 Where CARDNAMEis:47 - /C:DRIVER - Force audio hardware to *only* use the specified driver. 48 Where DRIVER is: 63 49 - SBLIVE : Sound Blaster Live! 64 50 - CS4281 : Cirrus Logic CS4281 … … 75 61 - ALI5451 : ALI 5451 76 62 - TRIDENT : Trident 4D Wave, SI7018 77 78 Default: /V (verbose messages; card detected automatically) 63 Default: Fully automatic operation. Use of switch is not recommended. 79 64 80 65 DEVICE=x:\MMOS2\UNIAUD16.SYS /V /C /M /L … … 83 68 - /M - Enable Microphone output 84 69 - /L - Enable Line-In output 85 86 Default: /V /C ((verbose messages; CD output enabled) 70 Default: /C ((verbose messages; CD output enabled) 87 71 88 72 … … 100 84 from the Multimedia GUI tool will not work. 101 85 102 4.0 Troubleshooting103 ============= ========86 4.0 Support 87 ============= 104 88 105 4.1 No Sound 106 -------------- 107 This is typically caused by one of two different issues. Either the speaker 108 output levels are set very low (or muted) or the audio device has not not been 109 activated (incorrect identification, incorrect/incompatible IRQ, etc.) 89 Uniaud is provided as-is and is currently not supported. 110 90 111 To eliminate the first possibility, download the latest LBMix mixer112 application from Hobbes:113 http://hobbes.nmsu.edu/h-search.php?key=lbmix&pushbutton=Search114 and install it. Try to adjust the volume from LBMix and/or the standard volume115 control object. Note that some devices need to have their output levels set at116 each reboot. If adjusting the output levels has no effect, then perhaps the117 hardware is not being properly identified. In that case, ensure that the /V118 option is specified on the DEVICE=x:\MMOS2\UNIAUD32.SYS line in CONFIG.SYS,119 reboot, and at the boot blob (square block in the upper left hand corner of120 the screen) press Alt-F4. This will allow you to step through the CONFIG.SYS121 processing, enabling you to read the output message from the device driver.122 Note the card which has been identified, the detected mixer, and the IRQ being123 used. Compare this information to the hardware you know to be installed, and124 if necessary, perform one of the following two actions:125 a) Force full hardware detection: Reboot, and at the boot blob press126 Alt-F1. At the "Recovery Choices" screen, select "F5 full hardware127 detection" and continue the boot sequence. Review the new output128 from the device driver details to see if your card has been properly129 identified. If that does not resolve the issue, then try the next130 option.131 132 b) Override auto-detection of your card (see _2.4 Device Driver Load133 Options_, above).134 135 Even if the card is being properly detected (or forced), it is possible that136 the IRQ which the system (or ACPI PSD) has assigned to it may be incompatible137 with the hardware. With ACPI systems, it may be necessary to adjust the IRQ in138 ACPI.CFG (see ACPI documentation for proper use of the REMAP directive). Some139 systems may allow the IRQ to be locked in BIOS setup; this may be worth trying.140 141 It is also possible that the proper information is not getting entered into142 MMPM.INI. In this case, follow the appropriate procedure:143 144 a) For eComStation 1.1 - 2.0, start the Multimedia Installer145 (MINSTALL.EXE) and select the option to reset your MMeCS settings.146 Reboot, and re-install Uniaud.147 b) For earlier releases of eComStation and for Warp, uninstall Uniaud148 (see _3.0 Removal_), reboot, and re-install.149 150 4.2 Distorted Sound151 ---------------------152 Distortion is usually caused in the output section of the audio device, due to153 the preamp circuit overdriving the signal, or due to extremely loud output154 settings causing the noise at the speakers themselves. In some cases, this155 overdrive condition may be addressed by the use of a good mixer application or156 judicious use of the volume control.157 158 Audio distortion may also be caused by device conflicts, typically with PS/2159 mice. USB devices may also cause these issues, and in both cases, the IRQ does160 not need to directly conflict with the audio hardware. Refer to the notes in161 _4.1 No Sound_ for suggestions on adjusting the IRQ. To test, try commenting162 out the mouse driver in CONFIG.SYS (caution: be sure that you are comfortable163 enough navigating your desktop without a mouse before disabling the device!)164 and rebooting. Try disconnecting all USB devices to determine the source of165 the conflict.166 167 4.3 Looping Sound168 -------------------169 170 Looping sound is defined as a very small fraction of a second of audio playing171 over and over very rapidly. If you have more than a fraction of a second of172 audio repeating, such as a whole system sound repeating, that is not a uniaud173 driver problem and is not covered here.174 175 Looping sound is a close cousin to the condition described in _4.2 Distorted Sound_,176 and in fact, is a particular type of distortion. Looping is usually caused by177 a card mis-detection or an IRQ conflict. Review the procedures outlined in178 _4.1 No Sound_ and _4.2 Distorted Sound_ to properly identify your hardware179 and to try to resolve IRQ conflicts.180 181 4.4 Hang at Boot182 ------------------183 184 This is most often seen with HDA hardware, and is typically caused by an IRQ185 conflict. Review the procedures outlined in _4.1 No Sound_ and _4.2 Distorted186 Sound_ to properly identify your hardware and to try to resolve IRQ conflicts.187 188 4.5 Hang at Desktop Start189 ---------------------------190 191 This is typically a problem in uniaud16.sys, and appears to happen more192 frequently when system sounds are enabled and startup events are occurring in193 rapid succession, seemingly" on top of each other." Try booting to a194 maintenance partition, from CD, or even to a command prompt via Alt-F1 (see195 _4.1 No Sound_ for more on Alt-F1), editing CONFIG.SYS to disable Uniaud (see196 _3.0 Removal_), rebooting, and disabling system sound. Edit CONFIG.SYS to197 un-comment the Uniaud device driver lines, and reboot.198 199 Note that when system sounds are disabled at startup, it is often possible to200 re-enable them afterward, however, once the same conditions exist as are201 present during startup (multiple events occurring almost simultaneously), the202 hang is likely to re-manifest itself.203 204 4.6 Hang During Playback205 --------------------------206 207 See the notes in _4.5 Hang at Desktop Start_ for some tips. Try limiting the208 number of audio streams attempting to be played at one time. Look for other209 sources of the condition (Flash, defective media, MPlayer codec, etc.)210 211 4.7 Traps212 -----------213 214 A typical trap involving Uniaud will be TRAP008, which indicates a direct IRQ215 conflict. Often, these are seen with HDA hardware in ACPI systems, and may216 occur right at system start, even after a complete power cycle (some data does217 not get cleared immediately between hard resets).218 219 Some suggested actions include forcing full hardware detection to ensure that220 Uniaud is indeed seeing the correct device (see _4.1 No Sound_ for221 procedures), or adjusting IRQ(s) to avoid conflicts (see _4.1 No Sound_ and222 _4.2 Distorted Sound_).223 224 To preserve the data from the trap screen, follow this procedure:225 226 N.B.: You should only do this if you have a floppy drive in your system or a227 memory dump partition. Support and directions for setting up the latter are228 beyond the scope of this document, but detailed instructions may be found at229 the following url:230 http://home.earthlink.net/~steve53/os2diags/TrapDumpRef.txt231 232 1. Press Ctrl-Alt-F10 twice (note never do this on a running system!!).233 You will be asked to insert a diskette (please note the complete234 diskette will be wiped!!). You _only_ need to fill up one diskette to235 get the trap screen.236 2. Insert the diskette.237 3. When prompted to insert the next diskette, reboot with Ctrl-Alt-Del,238 and either allow the system to boot normally, or follow one of the239 recovery procedures outlined above to temporarily disable Uniaud.240 4. Upon a successful boot, you may download and run this script:241 http://home.earthlink.net/~steve53/os2diags/DumpTrapScreen.zip to242 extract the trap screen from the diskette.243 244 Trap screen data is extremely helpful when raising a support ticket.245 246 5.0 Raising Support Tickets and Reporting Bugs247 ================================================248 249 Sometimes, the troubleshooting tips outlined above may not be enough to250 resolve a particular issue. In that case, you may raise a support ticket.251 Likewise, if you believe that you've found a bug, the Uniaud team is anxious252 to hear about it.253 254 The best option is to use the corresponding debug package for this version255 of Uniaud and UniLog.zip, both of which are available from the Netlabs ftp256 site:257 ftp.netlabs.org/pub/uniaud258 259 After replacing uniaud16.sys and uniaud32.sys with their debug counterparts,260 ensure that you copy the corresponding .sym files to x:\MMOS2. Reboot the261 system to load the debug builds.262 263 Extract UniLog.zip to a safe directory, and run UniLog.cmd from there. This264 will create a log file and will zip it into an archive. The archive will be265 located in the directory defined by your TMP environment variable. Attach266 this archive to your bug report.267 268 All bug reports should go to Uniaud Trac which may be found on:269 http://svn.netlabs.org/uniaud/report . If you do not have your own login270 credentials, you can request one at:271 http://www.netlabs.org/en/site/member/member.xml .272 273 Describe your bug briefly, but be as specific as possible. If your system has274 some exotic hardware which may or may not be involved, mention this in your275 report. Describe whatever steps you deem necessary to recreate the condition,276 whether the condition occurs sometimes, always, or very rarely. Mention any277 troubleshooting steps you have attempted prior to raising the ticket.278 279 Finally, per the above recommendation, attach the unilog zip archive to the280 ticket.281 282 283 6.0 FAQ284 =========285 286 Q. What is OS/2?287 288 A. If you ask this one, you probably don't need UniAud. Go to289 www.eComStation.com to get more information or to purchase a license.290 291 Q. What is Uniaud?292 293 A. Uniaud is the Universal Audio Support driver for OS/2 and eComStation,294 based on the Linux ALSA project (http://www.alsa.com ).295 296 Q. Uniaud detected my card successfully but I have no sound297 298 A. Follow the procedures outlined in _4.1 No Sound_.299 300 Q. Uniaud detected my card successfully but when I try to play something I got301 error: MCI Error 5134: No device driver found.302 303 A. Follow the procedures outlined in _4.1 No Sound_.304 305 Q. I installed MIDI support, but when I click on a Midi file I hear no music.306 What is happening ?307 308 A. Most audio cards don't support MIDI. So if there is no MIDI playback309 its most likely not support by Uniaud in conjunction with your chipset.310 311 Q. Where may I obtain the latest version of Uniaud?312 313 A. The latest version of Uniaud is available from Netlabs:314 ftp.netlabs.org/pub/uniaud315 316 Q. I want to assist in the development of Uniaud.317 318 A. See _7.0 Project Support_.319 320 321 7.0 Project Support322 =====================323 324 We need your feedback! Consider making a donation, and of course, report bugs.325 326 Talented developers are welcome to join the team, and others whose talents may327 lie elsewhere but who would also like to contribute may do so either by testing328 or by performing other tasks (website maintenance, documentation, education,329 etc.) For more information, stop by the Uniaud Trac Wiki:330 http://trac.netlabs.org/uniaud331 332 To make a financial contribution to the project, please visit the Mensys333 website: http://shop.mensys.nl/uk/netlabs334 -
OCO/trunk/install/audfiles.scr
r409 r595 1 81 11 2 2 0 17 2 0 "cardinfo.dll" 3 3 0 17 7 0 "audhelp.hlp" 4 4 0 17 0 0 "uniaud16.sys" 5 5 0 17 0 0 "uniaud32.sys" 6 0 17 4 0 "audplay.ico" 7 0 17 4 0 "midiplay.ico" 8 0 17 4 0 "VIDPLAY.ico" 6 9 0 17 0 0 "unimix.exe" 7 10 0 17 0 0 "closepcm.exe" 11 0 17 0 0 "pcmunlock.exe" 8 12 0 17 2 0 "uniaud.dll" 9 0 17 0 0 "uninstal.exe" 13 -
OCO/trunk/install/control.scr
r590 r595 2 2 codepage=437 3 3 filelist="audfiles.scr" 4 groupcount= 14 groupcount=2 5 5 munitcount=1 6 6 … … 44 44 ssname="OS/2 Universal Audio: Wave" 45 45 ssversion="1.9.6" 46 sssize= 68046 sssize=785 47 47 ssdll="genin.dll" 48 48 ssdllentry="InitGenin" 49 49 ssdllinputparms="178" 50 50 ssselect="VERSION" 51 /* ssinich="updini.scr" */ 51 52 53 54 55 /* OS/2 Universal Audio: FM Midi */ 56 ssgroup=18 57 ssname="OS/2 Universal Audio: FM Midi" 58 ssicon="midiplay.ico" 59 ssversion="1.9.6" 60 sssize=22 61 ssdll="genin.dll" 62 ssdllentry="InitGenin" 63 ssdllinputparms="179" 64 ssselect="VERSION" 65 -
OCO/trunk/makefile
r238 r595 81 81 debug: .SYMBOLIC 82 82 @set DEBUG=1 83 @wmake drv83 @wmake -h drv 84 84 85 85 # clean rules 86 86 clean: .SYMBOLIC 87 87 @%make alsasetup 88 @wmake - f $(%UNIBASE16)\mif\fullclean.mif clean88 @wmake -h -f $(%UNIBASE16)\mif\fullclean.mif clean 89 89 90 90 # big slam - get rid of all 91 91 fullclean: .SYMBOLIC 92 92 @%make alsasetup 93 @wmake - f $(%UNIBASE16)\mif\fullclean.mif fullclean93 @wmake -h -f $(%UNIBASE16)\mif\fullclean.mif fullclean 94 94 95 95 # ***** end of build rules ***** … … 122 122 # build uniaud16.sys 123 123 @echo **** BUILDING uniaud16.sys **** 124 @wmake - f $(%UNIBASE16)\mif\drvmake.mif124 @wmake -h -f $(%UNIBASE16)\mif\drvmake.mif 125 125 126 126 # build install files 127 127 @echo **** BUILDING install **** 128 128 @cd $(%UNIBASE16)\install 129 @wmake 129 @wmake -h 130 130 @cd .. 131 131 -
OCO/trunk/uniaud.inc
r590 r595 7 7 # BUILDVERSION must be 3 parts, and only numbers like 5.44.108 8 8 # The first and second numbers must be 1 digit 9 BUILDVERSION = 1.9. 69 BUILDVERSION = 1.9.7 10 10 11 11 # Fixpack version
Note:
See TracChangeset
for help on using the changeset viewer.