aboutsummaryrefslogtreecommitdiff
path: root/libopna/opnassg.h
diff options
context:
space:
mode:
Diffstat (limited to 'libopna/opnassg.h')
-rw-r--r--libopna/opnassg.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/libopna/opnassg.h b/libopna/opnassg.h
index 8a59d91..0321163 100644
--- a/libopna/opnassg.h
+++ b/libopna/opnassg.h
@@ -25,10 +25,12 @@ struct opna_ssg {
bool env_hld;
bool env_holding;
unsigned mask;
+ int32_t previn[3];
+ int32_t prevout[3];
};
struct opna_ssg_resampler {
- int16_t buf[(1<<7)];
+ int16_t buf[(1<<7)*3];
unsigned index;
};
@@ -46,9 +48,10 @@ void opna_ssg_generate_raw(struct opna_ssg *ssg, int16_t *buf, int samples);
// call to buffer written with OPNA output
// samplerate: 7987200/144 Hz
// (55466.66..) Hz
+struct oscillodata;
void opna_ssg_mix_55466(
struct opna_ssg *ssg, struct opna_ssg_resampler *resampler,
- int16_t *buf, int samples);
+ int16_t *buf, int samples, struct oscillodata *oscillo, unsigned offset);
void opna_ssg_writereg(struct opna_ssg *ssg, unsigned reg, unsigned val);
unsigned opna_ssg_readreg(const struct opna_ssg *ssg, unsigned reg);
// channel level (0 - 31)