summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/sound/mas3507d.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/sound/mas3507d.h')
-rw-r--r--src/devices/sound/mas3507d.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/devices/sound/mas3507d.h b/src/devices/sound/mas3507d.h
index f36a4fb2004..a1c852f0eeb 100644
--- a/src/devices/sound/mas3507d.h
+++ b/src/devices/sound/mas3507d.h
@@ -5,6 +5,9 @@
#pragma once
+#include <queue>
+
+#include "sound/samples.h"
//**************************************************************************
// TYPE DEFINITIONS
@@ -21,6 +24,8 @@ public:
void i2c_scl_w(bool line);
void i2c_sda_w(bool line);
+ void set_samples(samples_device *sample) { m_samples = sample; }
+
protected:
virtual void device_start() override;
virtual void device_reset() override;
@@ -40,15 +45,16 @@ private:
void i2c_device_got_stop();
- enum { UNDEFINED, CONTROL, DATA, BAD } i2c_subdest;
+ enum { UNDEFINED, CONTROL, DATA_READ, DATA_WRITE, BAD } i2c_subdest;
enum { CMD_BAD, CMD_RUN, CMD_READ_CTRL, CMD_WRITE_REG, CMD_WRITE_MEM, CMD_READ_REG, CMD_READ_MEM } i2c_command;
int i2c_bytecount;
uint32_t i2c_io_bank, i2c_io_adr, i2c_io_count, i2c_io_val;
-
void mem_write(int bank, uint32_t adr, uint32_t val);
void run_program(uint32_t adr);
void reg_write(uint32_t adr, uint32_t val);
+
+ samples_device *m_samples;
};