Subject: New ProAudio Spectrum audio driver ready for test
To: None <current-users@netbsd.org>
From: John F. Woods <jfw@jfwhome.funhouse.com>
List: current-users
Date: 08/08/1998 11:08:54
I have written an audio driver for the ProAudio Spectrum 16 card using
the actual PAS programming interface (rather than the SB 1 emulation
currently in use).  It appears to work quite well (though I may not
have the mixer device query stuff quite right; xmix appears to work,
except for the record level (which I think is a failing of the
libossaudio layer)).

I'd appreciate it if people with ProAudio Spectrum cards would give it
a try.  Note that it will refuse to work on PAS-Plus and PAS-CDPC
cards; if you have either of those, I'd like to know that it correctly
detects them (and I'd like to know how many people have those so I
know whether it's worth folding the previous support into the new
driver; maybe it would be better to just keep the old pas driver as an
alternative).  I'd also appreciate general code review by any core
types who would like to look the driver over for code-quality and
formatting issues.

You'll need _this morning_'s sources (August 8) because I've already
added MIDI support (whee!) but it might be sufficient to simply remove
the "midi.h" line from pas_native.c, in which case I think you can be
a couple of weeks out of date to compile it.  The necessary files are
in

	ftp://ftp.funhouse.com/pub/pas_native.c
	ftp://ftp.funhouse.com/pub/pas_reg.h
	ftp://ftp.funhouse.com/pub/pas_var.h
	ftp://ftp.funhouse.com/pub/files.isa.diff

Note that the current kernel config files have the wrong address for
the "pas" driver; you'll want to change 0x220 to 0x388 or whatever's
appropriate (or try "port ?" if you feel really adventurous (#define
FISH_ABOUT_FOR_CARD in pas_native.c first) -- I *think* I have it
coded right, but I haven't actually tested it -- and it might mess up
other cards something fierce...).  Also, if you want to test the
joystick support, add "flags 2" to the config line (and enable joy0).

Note that the ProAudio Spectrum can use either an 8-bit or a 16-bit
DMA channel (and it will correctly handle 16-bit samples over 8-bit
channels, as well as 8-bit samples over 16-bit channels (hmm, I
haven't tried the latter...)).  It can, in fact, operate the
SoundBlaster emulation simultaneously with the main PCM engine, but I
haven't enabled this.

I haven't tried stereo playback (I need to find or synthesize some
stereo sound samples) or recording.  I'm pretty sure recording is
unlikely to be a source of trouble, and fairly sure I got stereo
handling correct.

Yours in better sound,

John Woods
jfw@funhouse.com