|
|
| version 1.1, 2003/10/16 17:58:03 | version 1.3, 2003/10/20 12:08:01 |
|---|---|
| Line 14 static void oneshot(BEEP bp, SINT32 *pcm | Line 14 static void oneshot(BEEP bp, SINT32 *pcm |
| SINT32 remain; | SINT32 remain; |
| BPEVENT *bev; | BPEVENT *bev; |
| vol = beepcfg.vol << 11; | vol = beepcfg.vol; |
| bev = bp->event; | bev = bp->event; |
| do { | do { |
| remain = pc.sampleclock; | remain = (1 << 16); |
| samp = 0; | samp = 0; |
| while(remain >= bev->clock) { | while(remain >= bev->clock) { |
| if (--bp->events) { | if (--bp->events) { |
| Line 33 static void oneshot(BEEP bp, SINT32 *pcm | Line 33 static void oneshot(BEEP bp, SINT32 *pcm |
| if (bp->lastenable) { | if (bp->lastenable) { |
| samp += remain; | samp += remain; |
| samp *= vol; | samp *= vol; |
| samp /= pc.sampleclock; | samp >>= (16 - 11); |
| do { | do { |
| pcm[0] += samp; | pcm[0] += samp; |
| pcm[1] += samp; | pcm[1] += samp; |
| Line 43 static void oneshot(BEEP bp, SINT32 *pcm | Line 43 static void oneshot(BEEP bp, SINT32 *pcm |
| } | } |
| else { | else { |
| samp *= vol; | samp *= vol; |
| samp /= pc.sampleclock; | samp >>= (16 - 11); |
| pcm[0] += samp; | pcm[0] += samp; |
| pcm[1] += samp; | pcm[1] += samp; |
| } | } |
| bp->lastenable = bev->enable; | |
| return; | return; |
| } | } |
| } | } |
| Line 55 static void oneshot(BEEP bp, SINT32 *pcm | Line 56 static void oneshot(BEEP bp, SINT32 *pcm |
| samp += remain; | samp += remain; |
| } | } |
| samp *= vol; | samp *= vol; |
| samp /= pc.sampleclock; | samp >>= (16 - 11); |
| pcm[0] += samp; | pcm[0] += samp; |
| pcm[1] += samp; | pcm[1] += samp; |
| pcm += 2; | pcm += 2; |
| Line 86 void SOUNDCALL beep_getpcm(BEEP bp, SINT | Line 87 void SOUNDCALL beep_getpcm(BEEP bp, SINT |
| if ((count) && (beepcfg.vol)) { | if ((count) && (beepcfg.vol)) { |
| if (bp->mode == 0) { | if (bp->mode == 0) { |
| if ((bp->events) && (pc.sampleclock)) { | if (bp->events) { |
| oneshot(bp, pcm, count); | oneshot(bp, pcm, count); |
| } | } |
| } | } |