summaryrefslogtreecommitdiff
path: root/src/libxineadec/nosefart/nes_apu.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libxineadec/nosefart/nes_apu.h')
-rw-r--r--src/libxineadec/nosefart/nes_apu.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/libxineadec/nosefart/nes_apu.h b/src/libxineadec/nosefart/nes_apu.h
index 09b5842d9..9efbb560e 100644
--- a/src/libxineadec/nosefart/nes_apu.h
+++ b/src/libxineadec/nosefart/nes_apu.h
@@ -249,7 +249,7 @@ typedef struct apu_s
void *buffer; /* pointer to output buffer */
int num_samples;
- boolean mix_enable[6];
+ int mix_enable; /* $$$ben : should improve emulation */
int filter_type;
int32 cycle_rate;
@@ -260,6 +260,9 @@ typedef struct apu_s
void (*process)(void *buffer, int num_samples);
+ /* $$$ ben : last error string */
+ const char * errstr;
+
/* external sound chip */
apuext_t *ext;
} apu_t;
@@ -272,11 +275,11 @@ extern "C" {
/* Function prototypes */
extern apu_t *apu_create(int sample_rate, int refresh_rate, int sample_bits, boolean stereo);
extern void apu_destroy(apu_t *apu);
-extern void apu_setext(apu_t *apu, apuext_t *ext);
-extern void apu_setfilter(int filter_type);
+extern int apu_setext(apu_t *apu, apuext_t *ext);
+extern int apu_setfilter(int filter_type);
extern void apu_process(void *buffer, int num_samples);
extern void apu_reset(void);
-extern void apu_setchan(int chan, boolean enabled);
+extern int apu_setchan(int chan, boolean enabled);
extern int32 apu_getcyclerate(void);
extern apu_t *apu_getcontext(void);
@@ -286,6 +289,7 @@ extern void apu_write(uint32 address, uint8 value);
/* for visualization */
extern void apu_getpcmdata(void **data, int *num_samples, int *sample_bits);
+extern void apu_setcontext(apu_t *src_apu);
#ifdef __cplusplus
}