summaryrefslogtreecommitdiff
path: root/plugins/uade2/uade-2.13/src/include/audio.h
diff options
context:
space:
mode:
authorGravatar waker <wakeroid@gmail.com>2011-03-23 21:26:26 +0100
committerGravatar waker <wakeroid@gmail.com>2011-03-23 21:26:26 +0100
commitfd302d7abc36942e7ff14b22fae1e72b4495bef1 (patch)
tree2a36f8361c907a5bea91a9d905957a709f31ea64 /plugins/uade2/uade-2.13/src/include/audio.h
parent11e63b53b8c91da89592c373bb32fc2b656c6024 (diff)
renamed soundtouch and uade2 plugin folders and output .so
Diffstat (limited to 'plugins/uade2/uade-2.13/src/include/audio.h')
-rw-r--r--plugins/uade2/uade-2.13/src/include/audio.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/plugins/uade2/uade-2.13/src/include/audio.h b/plugins/uade2/uade-2.13/src/include/audio.h
new file mode 100644
index 00000000..5716f5f9
--- /dev/null
+++ b/plugins/uade2/uade-2.13/src/include/audio.h
@@ -0,0 +1,57 @@
+ /*
+ * UAE - The Un*x Amiga Emulator
+ *
+ * Sound emulation stuff
+ *
+ * Copyright 1995, 1996, 1997 Bernd Schmidt
+ */
+
+#ifndef _UADE_AUDIO_H_
+#define _UADE_AUDIO_H_
+
+#include "sinctable.h"
+
+#define AUDIO_DEBUG 0
+/* Queue length 256 implies minimum emulated period of 8. This should be
+ * sufficient for all imaginable purposes. This must be power of two. */
+#define SINC_QUEUE_LENGTH 256
+
+typedef struct {
+ int time, output;
+} sinc_queue_t;
+
+extern struct audio_channel_data {
+ unsigned long adk_mask;
+ unsigned long evtime;
+ unsigned char dmaen, intreq2, data_written;
+ uaecptr lc, pt;
+
+ int state, wper, wlen;
+ int current_sample;
+ int sample_accum, sample_accum_time;
+ int output_state;
+ sinc_queue_t sinc_queue[SINC_QUEUE_LENGTH];
+ int sinc_queue_time;
+ int sinc_queue_head;
+ int vol;
+ uae_u16 dat, nextdat, per, len;
+
+ /* Debug variables */
+ uaecptr ptend, nextdatpt, nextdatptend, datpt, datptend;
+} audio_channel[4];
+
+extern void AUDxDAT (int nr, uae_u16 value);
+extern void AUDxVOL (int nr, uae_u16 value);
+extern void AUDxPER (int nr, uae_u16 value);
+extern void AUDxLCH (int nr, uae_u16 value);
+extern void AUDxLCL (int nr, uae_u16 value);
+extern void AUDxLEN (int nr, uae_u16 value);
+
+void audio_reset (void);
+void audio_set_filter(int filter_type, int filter_force);
+void audio_set_rate (int rate);
+void audio_set_resampler(char *name);
+void audio_use_text_scope(void);
+void update_audio (void);
+
+#endif