diff options
Diffstat (limited to 'contrib/nosefart/nes_apu.c')
-rw-r--r-- | contrib/nosefart/nes_apu.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/contrib/nosefart/nes_apu.c b/contrib/nosefart/nes_apu.c index 9774e3a30..a2153cc17 100644 --- a/contrib/nosefart/nes_apu.c +++ b/contrib/nosefart/nes_apu.c @@ -1036,12 +1036,14 @@ void apu_process(void *buffer, int num_samples) /* signed 16-bit output, unsigned 8-bit */ if (16 == apu->sample_bits) { - *(int16 *)(buffer) = (int16) accum; - buffer += sizeof(int16); + int16 *q = buffer; + *q++ = accum; + buffer = q; } else { - *(uint8 *)(buffer) = (accum >> 8) ^ 0x80; - buffer += sizeof(uint8); + uint8 *q = buffer; + *q++ = (accum >> 8) ^ 0x80; + buffer = q; } } @@ -1090,6 +1092,7 @@ void apu_reset(void) apu->ext->reset(); } +void apu_build_luts(int num_samples); void apu_build_luts(int num_samples) { int i; |