6b8afe4d37
SBlaster/Adlib/ProAudio Spectrum/Gravis/etc cards. This is a BETA test driver, please test it and get back to me!
192 lines
7.2 KiB
Plaintext
192 lines
7.2 KiB
Plaintext
Release notes for the Linux Sound Driver 1.99.9
|
|
-----------------------------------------------
|
|
|
|
******** THIS IS A BETA TEST RELEASE ********
|
|
which means that there can be some untested things. In theory
|
|
there is a risk that this driver causes some trouble to your system.
|
|
You should not use this driver before backing up your disks.
|
|
|
|
|
|
|
|
|
|
Welcome to use the Gravis UltraSound driver for Linux. This
|
|
driver still supports the same cards than version 1.0c
|
|
(SoundBlaster, SB Pro, Pro Audio Spectrum 16 and AdLib).
|
|
In addition there is rather limited support for MPU-401
|
|
(and compatible) midi cards. Also the OPL-3 synthesizer
|
|
of the SB Pro and PAS16 cards is now supported in the 4 OP
|
|
modes.
|
|
Most of the features of the /dev/sequencer device file are
|
|
available just for GUS owners.
|
|
|
|
The SoundBlaster 16 and SB 16 ASP cards are not supported.
|
|
They could work in mono mode with speeds < 22 kHz.
|
|
The OPL-3 chicp of the SB 16 should work (without problems?).
|
|
Is there anybody willing to implement the SB 16 support
|
|
(have the SB 16 and the SDK for it)?
|
|
|
|
|
|
This is the first version of the driver which has almost
|
|
all of the features which I have planned to include into
|
|
version 2.0. Some features are still missing and some ones
|
|
doesn't work.
|
|
|
|
NOTE! There are separate driver for CD-ROMS supported by
|
|
some soundcards. The driver for CDU31A (Fusion 16) is
|
|
called cdu31a-0.6.diff.z. It will be contained in the
|
|
Linux version 0.99.12. The driver for the CD-ROM of SB Pro
|
|
is sbpcd0.4.tar.gz (these were the latest versions when I wrote
|
|
this). These files should be at least at sunsite.unc.edu.
|
|
As far as I know, there is no driver for the SCSI interface of PAS16
|
|
(yet).
|
|
|
|
There is also a driver for joystick. Look for file joystick-0.5.tar.gz
|
|
(sunsite).
|
|
|
|
Since this driver is a sound driver, it will not contain support
|
|
for SCSI/CD-ROM/Joystick -devices.
|
|
|
|
Compatibility with the earlier versions
|
|
---------------------------------------
|
|
|
|
This is just like the version 1.99.7/1.99.8. There is just some minor
|
|
enhancements. Most of them are portability fixes. If you are porting
|
|
this driver to any OS, please look at the 386bsd/os.h. There is some
|
|
new macros and some macros have more parameters. In addition this file
|
|
contains some usefull comments.
|
|
|
|
**** There is some ISC and 386bsd stuff in this driver. Please stay away ****
|
|
This stuff is here just because I want to be in sync with the porters. These
|
|
ports don't work yet.
|
|
|
|
The ioctl() interface has changed completely since version 1.0c. All
|
|
programs using this driver must be at least recompiled.
|
|
The snd-util-1.99.6 package contains some utilities for this version.
|
|
|
|
The version 1.0c and earlier used a 'nonportable' ioctl calling scheme
|
|
where the input argument was passed by value and the output value was
|
|
returned as the functional return. For example setting the speed of
|
|
/dev/dsp were done as the following:
|
|
|
|
int actual_speed;
|
|
actual_speed = ioctl(fd, SOUND_PCM_WRITE_RATE, 44100);
|
|
|
|
After version 1.99.0 this must be done as the following:
|
|
|
|
int actual_speed = 44100;
|
|
ioctl(fd, SOUND_PCM_WRITE_RATE, &actual_speed);
|
|
|
|
If you have an application written for the version 1.0, you should search
|
|
for the strings SNDCTL_ and SOUND_ and to check the parameters.
|
|
|
|
Since the this version will support more than one synthesizer devices
|
|
at the same time, the ioctl(SNDCTL_FM_LOAD_INSTR) is obsolete. In addition
|
|
there is some new fields which must be initialized. Look at the sbiset.c in
|
|
the snd-util-1.99.6 package for further info.
|
|
|
|
The GUS patch format has changed since the version 1.99.3. You have to
|
|
use latest versions of the programs in the sound/gustest directory. In
|
|
addition the version 0.4g of the Adagio package supports this format.
|
|
|
|
New features
|
|
------------
|
|
|
|
There is also some changes which make this version more usable than
|
|
the version 1.0c.
|
|
|
|
- /dev/dsp and /dev/audio
|
|
|
|
The DMA buffering is now little bit more intelligent than earlier. The
|
|
buffer size is selected run-time so that a buffer holds data for 0.5 to
|
|
1.0 seconds of recording or playback. This makes recording more comfortable
|
|
than with version 1.0. With the previous version there was sometimes more
|
|
than 10 seconds of delay before the driver returned the first input byte.
|
|
|
|
There is also support for more than one digitized voice devices. The device
|
|
files /dev/dsp1 and /dev/audio1 (minor 19 and 20) are available with PAS16.
|
|
The /dev/dsp (/dev/audio) is connected to the PCM circuit of the PAS16 itself
|
|
and the /dev/dsp1 (/dev/audio1) to the SB emulation of PAS16 card. Two
|
|
dsp/audio devices are available also if you have combination of SB and GUS.
|
|
With GUS and PAS16 you will have even three dsp/audio devices. These devices
|
|
can be used independently and can be active at the same time (3 channels
|
|
at the same time propably don't work).
|
|
|
|
The dsp/audio support of PAS16 should be much cleaner now since the
|
|
constant clicking sound between the DMA blocks (about once per second) has
|
|
been eliminated.
|
|
|
|
The stereo playback of GUS doesn't work perfectly. There is lot of
|
|
clicking in the output.
|
|
|
|
- /dev/mixer
|
|
|
|
No changes.
|
|
|
|
There is no mixer for the GUS yet.
|
|
|
|
- /dev/sequencer
|
|
|
|
This part has the most changes. Mostly to support the rich
|
|
features of the Gravis UltraSound. There is also the support
|
|
for the OPL-3 synthesizer chip.
|
|
|
|
- /dev/sndstat
|
|
|
|
This is a new devicefile for debugging purposes. A better place for
|
|
it is in the /proc -directory but I was just too lazy to implement it
|
|
properly. The /dev/sndstat (major 14, minor 6) is a file which returns
|
|
info about the current configuration (see the example below). If you
|
|
send me a error/problem report, please include a printout from this
|
|
device to your message (cat /dev/sndstat).
|
|
|
|
------ cut here --- cat /dev/sndstat example --------
|
|
Sound Driver:1.99.7 (Fri Jul 9 17:01:47 GMT 1993 root@lucifer.savolai.fi)
|
|
Config options: 0x00000d4b
|
|
|
|
Major number: 14
|
|
HW config:
|
|
Type 4: Gravis Ultrasound at 0x210 irq 15 drq 6
|
|
Type 3: ProAudioSpectrum at 0x388 irq 10 drq 3
|
|
Type 2: SoundBlaster at 0x220 irq 7 drq 1
|
|
Type 1: AdLib at 0x388 irq 0 drq 0
|
|
|
|
PCM devices:
|
|
00: Gravis UltraSound
|
|
01: Pro Audio Spectrum
|
|
02: SoundBlaster 2.0
|
|
|
|
Synth devices:
|
|
00: Gravis UltraSound
|
|
01: Yamaha OPL-3
|
|
|
|
Midi devices:
|
|
00: Gravis UltraSound
|
|
01: Pro Audio Spectrum
|
|
|
|
Mixer(s) installed
|
|
------ cut here ---- End of Example -----------
|
|
|
|
|
|
Known bugs
|
|
----------
|
|
|
|
- There was clicking during stereo playback to /dev/dsp with GUS.
|
|
* Fixed in 1.99.9 *
|
|
- It's not possible to open /dev/dsp (or /dev/audio) while the
|
|
/dev/sequencer is open for output and GUS is the only soundcard
|
|
installed. It's possible if /dev/dsp is opened before /dev/sequencer
|
|
but at this time the GUS is not available for access via /dev/sequencer.
|
|
This is a limitation of the driver.
|
|
- MPU-401 driver hangs the computer on boot if there is no MPU-401 installed.
|
|
It uses by default the I/O port 0x330 whic is used by Adaptec 1542 SCSI
|
|
adapter.
|
|
- The /dev/sequencer playback to GUS sounds sometimes rather weird. Hitting
|
|
^C and playing again should solve this problem. This is propably caused by
|
|
incompatibilities between GUS and certain VLB motherboards. Try to avoid
|
|
switching between VTs while patches are being loaded to the GUS.
|
|
- There was some problems with GUS and Mitsumi CD in version 1.99.8. Fixed
|
|
in 1.99.9.
|
|
- /dev/audio sounded like stereo with GUS. Fixed in 1.99.9.
|
|
- There is a skeleton of the patch manager support. It don't work in
|
|
this version.
|