From 4a5e8b3bb9c88a802c2b7744c3766e81b0a02c6c Mon Sep 17 00:00:00 2001 From: Mike Pavone Date: Sun, 16 Jun 2013 17:57:57 -0700 Subject: Add support for logging YM2612 channels to WAVE files --- ym2612.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'ym2612.h') diff --git a/ym2612.h b/ym2612.h index 41182d0..4a146c4 100644 --- a/ym2612.h +++ b/ym2612.h @@ -2,11 +2,14 @@ #define YM2612_H_ #include +#include #define NUM_PART_REGS (0xB7-0x30) #define NUM_CHANNELS 6 #define NUM_OPERATORS (4*NUM_CHANNELS) +#define YM_OPT_WAVE_LOG 1 + typedef struct { uint32_t phase_inc; uint32_t phase_counter; @@ -22,6 +25,7 @@ typedef struct { } ym_operator; typedef struct { + FILE * logfile; uint16_t fnum; int16_t output; uint8_t block_fnum_latch; @@ -70,7 +74,7 @@ typedef struct { uint8_t selected_part; } ym2612_context; -void ym_init(ym2612_context * context, uint32_t sample_rate, uint32_t master_clock, uint32_t clock_div, uint32_t sample_limit); +void ym_init(ym2612_context * context, uint32_t sample_rate, uint32_t master_clock, uint32_t clock_div, uint32_t sample_limit, uint32_t options); void ym_run(ym2612_context * context, uint32_t to_cycle); void ym_address_write_part1(ym2612_context * context, uint8_t address); void ym_address_write_part2(ym2612_context * context, uint8_t address); -- cgit v1.2.3