Date: Thu, 02 Oct 1997 01:07:51 -0700 From: Amancio Hasty <hasty@rah.star-gate.com> To: multimedia@freebsd.org Subject: ftp://rah.star-gate.com/pub/guspnp20.tar.gz Message-ID: <199710020807.BAA00381@rah.star-gate.com>
next in thread | raw e-mail | index | archive | help
For 3.0-current users: Bug fixes for this release: 1. utimeout does not compile with the most recent -current lars@fredriks-1.pr.mcs.net said: > *** sequencer.c.orig Wed Oct 1 09:31:40 1997 --- sequencer.c Tue Sep > 30 20:43:35 1997 *************** *** 92,97 **** --- 92,99 ---- > static void seq_reset(void); > static int pmgr_present[MAX_SYNTH_DEV] = > {0}; + static struct callout_handle sequencertimeout_ch + = > CALLOUT_HANDLE_INITIALIZER(&sequencertimeout_ch); > #if MAX_SYNTH_DEV > 15 > #error Too many synthesizer devices enabled. *************** *** > 115,121 **** > int tmp = count; > if (count < 0) ! timeout(sequencer_timer, 0, -count); > else { > if (count < current) --- 117,123 ---- > int tmp = count; > if (count < 0) ! sequencertimeout_ch = timeout(sequencer_time > r, 0, -count); > else { > if (count < current) *************** *** 125,131 **** > current = tmp; > if (!count) > count = 1; ! timeout(sequencer_timer, 0, count); > } > timer_running = 1; > } --- 127,133 ---- > current = tmp; > if (!count) > count = 1; ! sequencertimeout_ch = timeout(sequencer_timer, 0, > count); > } > timer_running = 1; > } *************** *** 134,140 **** > sound_stop_timer(void) > { > if (timer_running) ! untimeout( sequencer_timer, 0); > timer_running = 0; > } > --- 136,142 ---- > sound_stop_timer(void) > { > if (timer_running) ! untimeout( sequencer_timer, 0, > sequencertimeout_ch); > timer_running = 0; > } > 2 PAS 16 can now play quake 8) shocking@mailbox.uq.edu.au said: > This patch adds the TRIGGER capability to the PAS16 code, allowing > one to play quake!! I'll be following it up in a few days with a > patch that allows the sb clone on the PAS16 card to also be detected, > allowing for a crude form of full duplex sound. > Stephen > *** pas2_pcm.c.old Tue Sep 23 12:09:46 1997 --- pas2_pcm.c Wed Oct 1 > 20:40:37 1997 *************** *** 53,58 **** --- 53,59 ---- > static u_long pcm_count = 0; > static u_short pcm_bitsok = 8; /* mask of OK bits */ > static int my_devnum = 0; + static int open_mode = 0; > int > pcm_set_speed(int arg) *************** *** 228,233 **** --- 229,235 > ---- > pcm_count = 0; + open_mode = mode; > return 0; > } *************** *** 245,250 **** --- 247,254 ---- > pas_remove_intr(PAS_PCM_INTRBITS); > pcm_mode = PCM_NON; > + open_mode = 0; + > splx(flags); > } > *************** *** 286,292 **** --- 290,298 ---- > pcm_count = count; > } > pas_write(pas_read(FILTER_FREQUENCY) | F_F_PCM_BUFFER_COUNTER | > F_F_PCM_RATE_COUNTER, FILTER_FREQUENCY); + #ifdef NO_TRIGGER > pas_write(pas_read(PCM_CONTROL) | P_C_PCM_ENABLE | > P_C_PCM_DAC_MODE, PCM_CONTROL); + #endif > pcm_mode = PCM_DAC; > *************** *** 329,340 **** --- 335,368 ---- > pcm_count = count; > } > pas_write(pas_read(FILTER_FREQUENCY) | F_F_PCM_BUFFER_COUNTER | > F_F_PCM_RATE_COUNTER, FILTER_FREQUENCY); + #ifdef NO_TRIGGER > pas_write((pas_read(PCM_CONTROL) | P_C_PCM_ENABLE) & > ~P_C_PCM_DAC_MODE, PCM_CONTROL); + #endif > pcm_mode = PCM_ADC; > splx(flags); > } + #ifndef NO_TRIGGER + static void + pas_audio_trigger (int dev, > int state) + { + unsigned long flags; + + flags = splhigh(); + > + state &= open_mode; + + if (state & PCM_ENABLE_OUTPUT) + > pas_write (pas_read (0xF8A) | 0x40 | 0x10, 0xF8A); + else if (state > & PCM_ENABLE_INPUT) + pas_write ((pas_read (0xF8A) | 0x40) & > ~0x10, 0xF8A); + else + pas_write (pas_read (0xF8A) & ~0x40, > 0xF8A); + + splx(flags); + } + #endif > static int > pas_pcm_prepare_for_input(int dev, int bsize, int bcount) > *************** *** 363,369 **** > pas_pcm_reset, > pas_pcm_reset, > NULL, ! NULL > }; > void --- 391,400 ---- > pas_pcm_reset, > pas_pcm_reset, > NULL, ! NULL, ! NULL, ! NULL, ! pas_audio_trigger > }; > void Many Tnks to Lars and Steve for their patches! Enjoy, Amancio
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199710020807.BAA00381>