Added support for linux sound ioctls:

LINUX_SNDCTL_DSP_GETOPTR
LINUX_SNDCTL_DSP_GETIPTR
LINUX_SNDCTL_DSP_SETTRIGGER
LINUX_SNDCTL_DSP_GETCAPS

With this rev level the linux realaudio player 5 and xquake should work.
This commit is contained in:
Amancio Hasty 1997-11-17 04:00:32 +00:00
parent 39f94eddcd
commit 53eaeb96ba
4 changed files with 48 additions and 6 deletions

View File

@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: linux.h,v 1.16 1997/06/02 06:45:17 msmith Exp $
* $Id: linux.h,v 1.17 1997/10/28 10:49:57 kato Exp $
*/
#ifndef _I386_LINUX_LINUX_H_
@ -500,6 +500,11 @@ struct trapframe;
#define LINUX_SNDCTL_DSP_GETOSPACE 0x500C
#define LINUX_SNDCTL_DSP_GETISPACE 0x500D
#define LINUX_SNDCTL_DSP_NONBLOCK 0x500E
#define LINUX_SNDCTL_DSP_GETCAPS 0x500F
#define LINUX_SNDCTL_DSP_GETTRIGGER 0x5010
#define LINUX_SNDCTL_DSP_SETTRIGGER 0x5010
#define LINUX_SNDCTL_DSP_GETIPTR 0x5011
#define LINUX_SNDCTL_DSP_GETOPTR 0x5012
#define LINUX_SOUND_MIXER_WRITE_VOLUME 0x4d00
#define LINUX_SOUND_MIXER_WRITE_BASS 0x4d01
#define LINUX_SOUND_MIXER_WRITE_TREBLE 0x4d02

View File

@ -1,4 +1,4 @@
/*-
/*
* Copyright (c) 1994-1995 Søren Schmidt
* All rights reserved.
*
@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: linux_ioctl.c,v 1.20 1997/07/20 16:05:59 bde Exp $
* $Id: linux_ioctl.c,v 1.21 1997/11/06 19:28:55 phk Exp $
*/
#include <sys/param.h>
@ -662,6 +662,22 @@ linux_ioctl(struct proc *p, struct linux_ioctl_args *args)
return copyout(&linux_line, (caddr_t)args->arg,
sizeof(int));
case LINUX_SNDCTL_DSP_GETOPTR :
args->cmd = SNDCTL_DSP_GETOPTR;
return ioctl(p, (struct ioctl_args *)args);
case LINUX_SNDCTL_DSP_GETIPTR :
args->cmd = SNDCTL_DSP_GETIPTR;
return ioctl(p, (struct ioctl_args *)args);
case LINUX_SNDCTL_DSP_SETTRIGGER:
args->cmd = SNDCTL_DSP_SETTRIGGER;
return ioctl(p, (struct ioctl_args *)args);
case LINUX_SNDCTL_DSP_GETCAPS:
args->cmd = SNDCTL_DSP_GETCAPS;
return ioctl(p, (struct ioctl_args *)args);
case LINUX_SNDCTL_DSP_RESET:
args->cmd = SNDCTL_DSP_RESET;
return ioctl(p, (struct ioctl_args *)args);

View File

@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: linux.h,v 1.16 1997/06/02 06:45:17 msmith Exp $
* $Id: linux.h,v 1.17 1997/10/28 10:49:57 kato Exp $
*/
#ifndef _I386_LINUX_LINUX_H_
@ -500,6 +500,11 @@ struct trapframe;
#define LINUX_SNDCTL_DSP_GETOSPACE 0x500C
#define LINUX_SNDCTL_DSP_GETISPACE 0x500D
#define LINUX_SNDCTL_DSP_NONBLOCK 0x500E
#define LINUX_SNDCTL_DSP_GETCAPS 0x500F
#define LINUX_SNDCTL_DSP_GETTRIGGER 0x5010
#define LINUX_SNDCTL_DSP_SETTRIGGER 0x5010
#define LINUX_SNDCTL_DSP_GETIPTR 0x5011
#define LINUX_SNDCTL_DSP_GETOPTR 0x5012
#define LINUX_SOUND_MIXER_WRITE_VOLUME 0x4d00
#define LINUX_SOUND_MIXER_WRITE_BASS 0x4d01
#define LINUX_SOUND_MIXER_WRITE_TREBLE 0x4d02

View File

@ -1,4 +1,4 @@
/*-
/*
* Copyright (c) 1994-1995 Søren Schmidt
* All rights reserved.
*
@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: linux_ioctl.c,v 1.20 1997/07/20 16:05:59 bde Exp $
* $Id: linux_ioctl.c,v 1.21 1997/11/06 19:28:55 phk Exp $
*/
#include <sys/param.h>
@ -662,6 +662,22 @@ linux_ioctl(struct proc *p, struct linux_ioctl_args *args)
return copyout(&linux_line, (caddr_t)args->arg,
sizeof(int));
case LINUX_SNDCTL_DSP_GETOPTR :
args->cmd = SNDCTL_DSP_GETOPTR;
return ioctl(p, (struct ioctl_args *)args);
case LINUX_SNDCTL_DSP_GETIPTR :
args->cmd = SNDCTL_DSP_GETIPTR;
return ioctl(p, (struct ioctl_args *)args);
case LINUX_SNDCTL_DSP_SETTRIGGER:
args->cmd = SNDCTL_DSP_SETTRIGGER;
return ioctl(p, (struct ioctl_args *)args);
case LINUX_SNDCTL_DSP_GETCAPS:
args->cmd = SNDCTL_DSP_GETCAPS;
return ioctl(p, (struct ioctl_args *)args);
case LINUX_SNDCTL_DSP_RESET:
args->cmd = SNDCTL_DSP_RESET;
return ioctl(p, (struct ioctl_args *)args);