Commit Graph

98 Commits

Author SHA1 Message Date
mycroft 20ec08b84e Oops. 1998-08-10 01:17:33 +00:00
mycroft 10148394d2 Call set_params if usemode changes. 1998-08-10 01:13:20 +00:00
mycroft 17431823fb Add trigger_output and trigger_input entry points, which replace
init_{in,out}put and start_{in,out}put, and are only called once.
1998-08-09 20:28:07 +00:00
mycroft a2fc689833 Make sure output is thoroughly halted on close, and remember that we stopped
it.
1998-08-09 07:25:58 +00:00
mycroft 9bedf069cd Mask off extra usemode bits. 1998-08-09 05:44:51 +00:00
mycroft b3853549b3 Always copy back both the record and play parameters, in case the driver had
to change one behind our back.
1998-08-09 04:54:44 +00:00
augustss 48bae9ee88 Add MIDI support. The MIDI devices can be accessed as ``raw'' through
the /dev/rmidiN devices, or with a sequencer interface via /dev/music.
So far the only supported MIDI device is the MPU401 port on SoundBlaster
(and only on SB on isapnp, since we do not have locators with multiple
values yet).
1998-08-07 00:00:55 +00:00
augustss 28e2d6024a Clarify a comment. 1998-08-05 16:38:09 +00:00
augustss 5b057ab09f Allow option AUDIO_INTR_TIME even if the platform does not support
FP in the kernel.
1998-08-04 11:26:14 +00:00
mycroft f37f08c48e This doesn't need opt_compat_netbsd.h any more. 1998-07-09 09:27:33 +00:00
mycroft 401accfd7a Don't #ifdef the encoding compatibility crud. It's needed for source
compatibility with other systems and much third party software.
1998-07-09 02:45:45 +00:00
jonathan d275e56dee * defopt COMPAT_{09,10,11,12,13} and COMPAT_NOMID.
TODO: revisit interaction between native compat and emul compat usage.
1998-07-05 08:49:30 +00:00
augustss 54281b8662 Avoid spaces in tsleep() string. 1998-05-18 18:27:43 +00:00
augustss 88edb37522 Be more verbose if attaching the audio device fails. 1998-05-15 15:45:58 +00:00
augustss df71a424d6 Change debug printing a littel again. 1998-04-28 23:19:20 +00:00
augustss 127acabd9c Add a few more debug messages and clean up debug printing a little. 1998-04-28 09:07:12 +00:00
augustss 44c6ce78d2 Avoid the name free so the MALLOCLOG option works again.
Fix some typos.
1998-03-03 09:16:15 +00:00
thorpej 43ba4e27bd Adjust for config changes. 1998-01-12 08:44:08 +00:00
augustss a908b2b30e Fix three problems spotted by mycroft:
- Closing the audio device should stop recording.
- Manipulating the pause function could accidentally start playing or recording.
- AUDIO_FLUSH could accidentally start playing or recording.
1997-12-03 01:01:19 +00:00
augustss b366d54e2e Fix slight glitch in last commit when AUDIO_DEBUG is on. 1997-10-29 02:11:45 +00:00
augustss 9f84e63746 Do audio attachment the right way. From Chris Demetriou.
(Maybe I'll get the hang of the configuration stuff one of these days. :-)
1997-10-29 02:00:20 +00:00
augustss e7029fc0da Make the audio API (almost) SunOS compatible.
The changes is to allow some limited mixer manipulation through
the audio device (instead of the mixer device).
This rendered 4 methods in audio_hw_if unused so garbage collect these.
1997-10-19 07:41:33 +00:00
is 25ea46120a TMS320AV110 (mpeg layer 2 decoder chip) and ZBUS Melody board, which uses it.
No optionboards yet for Melody, only audio driver.
MPEG data types for audio.c
1997-10-16 23:57:56 +00:00
augustss 31ab81c6e4 Aignore interrupts if the device isn't open. 1997-10-16 16:41:18 +00:00
augustss 0d79fbe5c5 Don't test for unused methods. 1997-10-14 18:43:42 +00:00
mycroft 3cdff9d435 GETPROPS does not indicate whether the device is currently in full-duplex
mode.  Reinstate GETFD to return this information.
1997-10-11 11:16:28 +00:00
augustss 4f2068ec29 Sanity check hi/lo water mark settings better. 1997-10-07 22:40:43 +00:00
augustss ffcdaf144d Move around splaudio() to (hopefully) get rid of some rare race conditions.
Add a missing call to round_blocksize.
Add some MIDI stuff that will be used in the future.
1997-09-06 01:14:48 +00:00
thorpej d2a9d1970d Don't deference a bad pointers if you try to open an audio device that's
not configured.
1997-08-27 18:54:28 +00:00
augustss 955e1e9119 Make sure audio device starts in half-duplex mode and document the fact. 1997-08-26 19:03:55 +00:00
augustss 6616d47838 - Change audio_hw_if a little: set_param now sets the play and record modes
at the same time instead by using two different calls.  This enables
  it to check more easily if the combined mode is all right.
- Improve the error checking in audio.c.
- Add a new audio property, AUDIO_PROP_INDEPENDENT, show if the
  play and record settings are independent.
- Fix some buglets in audio.c.
1997-08-24 22:31:23 +00:00
augustss 332ad95e76 Change the MI audio driver so it attaches to the MD driver in the
normal way.  This requires adding a line to the config files to
get audio to work again.
1997-08-19 23:49:33 +00:00
augustss e5b75f05d4 Make a slight change to when blocksize, hi- and lo-water marks are
recalculated.  The new semantics is more intuitive(?) and makes Doom
work :-)
1997-08-18 23:20:09 +00:00
augustss 34085fae66 Implement /dev/audioctl. It behaves much like /dev/sound, but only
allows ioctl() and can be opened at any time.
1997-08-18 21:19:02 +00:00
augustss 8f096d087f Implement delivery of SIGIO on changes to /dev/mixer. 1997-08-11 01:38:12 +00:00
augustss 9a770a177f Make setting the audio block size sticky.
Change the calculated block size to correspond to 50 ms of sound
(was 20 ms, it seems needlessly small).
1997-08-08 00:03:26 +00:00
augustss 3c6f8bc89e Restructure a little to make sure AUDIO_FLUSH restarts the looping DMA. 1997-08-06 23:08:26 +00:00
fair aae99e192d %x -> 0x%x 1997-08-06 07:39:59 +00:00
augustss c392128002 Audio:
* Make it possible to use software assisted encodings that expand the
  sample size.
* Use 16 bits per sample when emulating mulaw coding on the SB.
* Prepare for SB16 without CT1745 mixer.
1997-08-04 09:29:51 +00:00
augustss 3bef8402d3 Implement FIONBIO in audio_ioctl. 1997-08-01 17:04:00 +00:00
augustss 658656bb99 Audio changes:
- Change the way attach and open works to allow multiple audio
	  devices.
	- Split the mulaw.c file into two to avoid dragging in mulaw
	  convertsion when they are not needed.  Add 16 bit alaw/mulaw tables.
	- Change the way audio properties are gotten.
	- Recognize more versions os SoundBlaster.
1997-07-31 22:33:08 +00:00
augustss a63034762b Audio: Remove the machine dependant code I put in audio.c by mistake.
This adds another method to audio_hw_if.  Also remove a field from
audio_hw_if that was not read-only.
1997-07-28 20:56:05 +00:00
augustss d5b1561c91 Temporary fix to make it compile on non-i386. 1997-07-28 09:28:04 +00:00
augustss f6cd87f322 audio: Minor cleanup and enable looping DMA for PSS and PAS. 1997-07-28 01:31:50 +00:00
augustss d58bc6796f audio: Simplify handling of AUDIO_SETFD and committing of encoding mode. 1997-07-27 23:51:48 +00:00
augustss 63decd9438 Fix divide by 0 bug in audio driver. 1997-07-27 23:06:04 +00:00
augustss 9745684ebe Changes to the sudio system:
- It is now possible to handle devices that want "looping" DMA,
    e.g. the SoundBlaster correctly.  The WSS and SB drivers use this.
    To do this several new methods were introduced in audio_hw_if.
  - Different silence handling (forced by previous change).
  - The audio driver can now be mmap()-ed, but due to problems in
    the VM system only for writing for now.
  - The OSS (Linux) audio emulation takes advantage of some of the
    new features.
1997-07-27 01:16:32 +00:00
augustss 8727da130b In the name of backwards compatibility AUDIO_ENCODING_LINEAR has been
renamed AUDIO_ENCODING_SLINEAR and AUDIO_ENCODING_LINEAR reverts to the
NetBSD 1.2 sematics.  A kernel with COMPAT_12 defined will accept
AUDIO_ENCODING_LINEAR and treat it as before, without COMPAT_12 it
will be rejected.
1997-07-15 07:46:04 +00:00
augustss 73ff4bd775 Allow more than one hardware driver to attach to the audio upper layer. 1997-05-27 23:24:56 +00:00
augustss 1fd29f4172 Make the audio default parameters into a globally accessible constant. 1997-05-20 12:51:43 +00:00