aboutsummaryrefslogtreecommitdiff
path: root/audio/rat30/files/patch-ac
diff options
context:
space:
mode:
Diffstat (limited to 'audio/rat30/files/patch-ac')
-rw-r--r--audio/rat30/files/patch-ac53
1 files changed, 53 insertions, 0 deletions
diff --git a/audio/rat30/files/patch-ac b/audio/rat30/files/patch-ac
new file mode 100644
index 000000000000..4b8e62270300
--- /dev/null
+++ b/audio/rat30/files/patch-ac
@@ -0,0 +1,53 @@
+--- src/auddev_freebsd.c.p1 Mon Sep 18 10:27:40 2000
++++ src/auddev_freebsd.c Mon Sep 18 10:30:42 2000
+@@ -204,18 +204,10 @@
+ if (audio_fd <= 0) {
+ return;
+ }
+- switch (iport) {
+- case AUDIO_MICROPHONE : if (ioctl(audio_fd, MIXER_WRITE(SOUND_MIXER_MIC), &volume) == -1) {
+- perror("Setting gain");
+- }
+- return;
+- case AUDIO_LINE_IN : if (ioctl(audio_fd, MIXER_WRITE(SOUND_MIXER_LINE), &volume) == -1) {
+- perror("Setting gain");
+- }
+- return;
++ if (ioctl(audio_fd, SOUND_MIXER_WRITE_RECLEV, &volume) == -1) {
++ perror("Setting gain");
+ }
+- printf("ERROR: Unknown iport in audio_set_gain!\n");
+- abort();
++ return;
+ }
+
+ int
+@@ -226,17 +218,8 @@
+ if (audio_fd <= 0) {
+ return (0);
+ }
+- switch (iport) {
+- case AUDIO_MICROPHONE : if (ioctl(audio_fd, MIXER_READ(SOUND_MIXER_MIC), &volume) == -1) {
+- perror("Getting gain");
+- }
+- break;
+- case AUDIO_LINE_IN : if (ioctl(audio_fd, MIXER_READ(SOUND_MIXER_LINE), &volume) == -1) {
+- perror("Getting gain");
+- }
+- break;
+- default : printf("ERROR: Unknown iport in audio_set_gain!\n");
+- abort();
++ if (ioctl(audio_fd, SOUND_MIXER_READ_RECLEV, &volume) == -1) {
++ perror("Setting gain");
+ }
+ return device_to_bat(volume & 0xff);
+ }
+@@ -263,7 +246,7 @@
+ if (audio_fd <= 0) {
+ return (0);
+ }
+- if (ioctl(audio_fd, MIXER_READ(SOUND_MIXER_VOLUME), &volume) == -1) {
++ if (ioctl(audio_fd, MIXER_READ(SOUND_MIXER_PCM), &volume) == -1) {
+ perror("Getting volume");
+ }
+ return device_to_bat(volume & 0x000000ff); /* Extract left channel volume */