diff options
Diffstat (limited to 'src/devices/sound/mas3507d.h')
-rw-r--r-- | src/devices/sound/mas3507d.h | 10 |
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; }; |