| /proc/sound, /dev/sndstat | |
| ------------------------- | |
| /proc/sound and /dev/sndstat is not supported by the | |
| driver. To find out whether the driver succeeded loading, | |
| check the kernel log (dmesg). | |
| ALaw/uLaw sample formats | |
| ------------------------ | |
| This driver does not support the ALaw/uLaw sample formats. | |
| ALaw is the default mode when opening a sound device | |
| using OSS/Free. The reason for the lack of support is | |
| that the hardware does not support these formats, and adding | |
| conversion routines to the kernel would lead to very ugly | |
| code in the presence of the mmap interface to the driver. | |
| And since xquake uses mmap, mmap is considered important :-) | |
| and no sane application uses ALaw/uLaw these days anyway. | |
| In short, playing a Sun .au file as follows: | |
| cat my_file.au > /dev/dsp | |
| does not work. Instead, you may use the play script from | |
| Chris Bagwell's sox-12.14 package (available from the URL | |
| below) to play many different audio file formats. | |
| The script automatically determines the audio format | |
| and does do audio conversions if necessary. | |
| http://home.sprynet.com/sprynet/cbagwell/projects.html | |
| Blocking vs. nonblocking IO | |
| --------------------------- | |
| Unlike OSS/Free this driver honours the O_NONBLOCK file flag | |
| not only during open, but also during read and write. | |
| This is an effort to make the sound driver interface more | |
| regular. Timidity has problems with this; a patch | |
| is available from http://www.ife.ee.ethz.ch/~sailer/linux/pciaudio.html. | |
| (Timidity patched will also run on OSS/Free). | |
| MIDI UART | |
| --------- | |
| The driver supports a simple MIDI UART interface, with | |
| no ioctl's supported. | |
| MIDI synthesizer | |
| ---------------- | |
| The card both has an OPL compatible FM synthesizer as well as | |
| a wavetable synthesizer. | |
| I haven't managed so far to get the OPL synth running. | |
| Using the wavetable synthesizer requires allocating | |
| 1-4MB of physically contiguous memory, which isn't possible | |
| currently on Linux without ugly hacks like the bigphysarea | |
| patch. Therefore, the driver doesn't support wavetable | |
| synthesis. | |
| No support from S3 | |
| ------------------ | |
| I do not get any support from S3. Therefore, the driver | |
| still has many problems. For example, although the manual | |
| states that the chip should be able to access the sample | |
| buffer anywhere in 32bit address space, I haven't managed to | |
| get it working with buffers above 16M. Therefore, the card | |
| has the same disadvantages as ISA soundcards. | |
| Given that the card is also very noisy, and if you haven't | |
| already bought it, you should strongly opt for one of the | |
| comparatively priced Ensoniq products. | |
| Thomas Sailer | |
| t.sailer@alumni.ethz.ch |