audio is getting closer?
This commit is contained in:
@ -3,13 +3,71 @@
|
||||
#include <common.h>
|
||||
|
||||
typedef struct {
|
||||
|
||||
bool audio_enabled;
|
||||
bool ch1_left;
|
||||
bool ch1_right;
|
||||
bool ch2_left;
|
||||
bool ch2_right;
|
||||
bool ch3_left;
|
||||
bool ch3_right;
|
||||
bool ch4_left;
|
||||
bool ch4_right;
|
||||
|
||||
u8 volume_left;
|
||||
u8 volume_right;
|
||||
|
||||
float sq1_freq;
|
||||
float sq1_duty;
|
||||
float sq1_amp;
|
||||
u8 sq1_duty;
|
||||
u8 sq1_volume;
|
||||
float sq2_freq;
|
||||
float sq2_duty;
|
||||
float sq2_amp;
|
||||
u8 sq2_duty;
|
||||
u8 sq2_volume;
|
||||
|
||||
bool ready;
|
||||
u8 sq1_sample;
|
||||
float sq1_value;
|
||||
u16 sq1_period_reset;
|
||||
u16 sq1_period_timer;
|
||||
bool sq1_enable;
|
||||
bool sq1_len_enable;
|
||||
u8 sq1_sweep_pace;
|
||||
bool sq1_sweep_direction;
|
||||
u8 sq1_initial_len;
|
||||
u8 sq1_len;
|
||||
u8 sq1_initial_volume;
|
||||
bool sq1_env_direction;
|
||||
u8 sq1_env_pace;
|
||||
u8 sq1_env_timer;
|
||||
u8 sq1_sweep_step;
|
||||
u8 sq1_audio_buffer[4096];
|
||||
u32 sq1_write_head;
|
||||
u32 sq1_read_head;
|
||||
|
||||
u8 sq2_sample;
|
||||
float sq2_value;
|
||||
u16 sq2_period_reset;
|
||||
u16 sq2_period_timer;
|
||||
bool sq2_enable;
|
||||
bool sq2_len_enable;
|
||||
u8 sq2_sweep_pace;
|
||||
bool sq2_sweep_direction;
|
||||
u8 sq2_initial_len;
|
||||
u8 sq2_len;
|
||||
u8 sq2_initial_volume;
|
||||
bool sq2_env_direction;
|
||||
u8 sq2_env_pace;
|
||||
u8 sq2_env_timer;
|
||||
u8 sq2_sweep_step;
|
||||
u8 sq2_audio_buffer[4096];
|
||||
u32 sq2_write_head;
|
||||
u32 sq2_read_head;
|
||||
|
||||
} audio_context;
|
||||
|
||||
void audio_init();
|
||||
void audio_tick();
|
||||
void audio_tick();
|
||||
void audio_period_tick();
|
||||
|
||||
u8 audio_read(u16 address);
|
||||
void audio_write(u16 address, u8 value);
|
Reference in New Issue
Block a user