Mercurial > repos > simple16
view src/audio.h @ 34:4a093f15fb1b
Finish controller test for controller 1
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 03 Apr 2016 19:03:35 -0700 |
parents | 4c9dbfa30a66 |
children |
line wrap: on
line source
#ifndef AUDIO_H_ #define AUDIO_H_ #define NUM_CHANNELS 4 typedef struct { int16_t *writebuffer; int16_t *playbuffer; uint64_t buffer_fraction; uint64_t buffer_inc; uint32_t buffer_pos; uint32_t buffer_size; uint32_t cycles; uint32_t clock_inc; uint16_t timer_load[NUM_CHANNELS]; uint16_t timer_cur[NUM_CHANNELS]; int16_t value[NUM_CHANNELS]; uint8_t volume[NUM_CHANNELS]; int16_t buffer[]; } audio; audio *alloc_audio(uint32_t master_clock, uint32_t clock_div, int sample_rate, int buffer_size); void audio_run(audio *context, uint32_t target); void audio_write_freq(audio *context, int channel, uint16_t value); void audio_write_vol(audio *context, int pair, uint16_t value); #endif //AUDIO_H_