diff cdd_fader.h @ 2080:bafb757e1cd2

Implement CD audio
author Michael Pavone <pavone@retrodev.com>
date Wed, 02 Feb 2022 01:10:07 -0800
parents
children 4fbe1e7c4a73
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cdd_fader.h	Wed Feb 02 01:10:07 2022 -0800
@@ -0,0 +1,21 @@
+#ifndef CDD_FADER_H_
+#define CDD_FADER_H_
+
+#include "render_audio.h"
+
+typedef struct {
+	audio_source *audio;
+	uint16_t     cur_attenuation;
+	uint16_t     dst_attenuation;
+	uint16_t     attenuation_step;
+	uint8_t      flags;
+	uint8_t      bytes[4];
+	uint8_t      byte_counter;
+} cdd_fader;
+
+void cdd_fader_init(cdd_fader *fader);
+void cdd_fader_attenuation_write(cdd_fader *fader, uint16_t attenuation);
+void cdd_fader_data(cdd_fader *fader, uint8_t byte);
+void cdd_fader_pause(cdd_fader *fader);
+
+#endif //CDD_FADER_H_