diff options
Diffstat (limited to 'src/devices/sound/scsp.h')
-rw-r--r-- | src/devices/sound/scsp.h | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/src/devices/sound/scsp.h b/src/devices/sound/scsp.h index 2dc780fc9e3..94a9162f15c 100644 --- a/src/devices/sound/scsp.h +++ b/src/devices/sound/scsp.h @@ -15,16 +15,6 @@ // driver code indicates should be 4, but sounds distorted then -#define MCFG_SCSP_IRQ_CB(_devcb) \ - downcast<scsp_device &>(*device).set_irq_callback(DEVCB_##_devcb); - -#define MCFG_SCSP_MAIN_IRQ_CB(_devcb) \ - downcast<scsp_device &>(*device).set_main_irq_callback(DEVCB_##_devcb); - -#define MCFG_SCSP_EXTS_CB(_devcb) \ - downcast<scsp_device &>(*device).set_exts_callback(DEVCB_##_devcb); - - class scsp_device : public device_t, public device_sound_interface, public device_rom_interface @@ -32,12 +22,8 @@ class scsp_device : public device_t, public: scsp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 22'579'200); - template <class Object> devcb_base &set_irq_callback(Object &&cb) { return m_irq_cb.set_callback(std::forward<Object>(cb)); } - template <class Object> devcb_base &set_main_irq_callback(Object &&cb) { return m_main_irq_cb.set_callback(std::forward<Object>(cb)); } - template <class Object> devcb_base &set_exts_callback(Object &&cb) { return m_exts_cb.set_callback(std::forward<Object>(cb)); } auto irq_cb() { return m_irq_cb.bind(); } auto main_irq_cb() { return m_main_irq_cb.bind(); } - auto exts_cb() { return m_exts_cb.bind(); } // SCSP register access DECLARE_READ16_MEMBER( read ); @@ -106,7 +92,6 @@ private: devcb_write8 m_irq_cb; /* irq callback */ devcb_write_line m_main_irq_cb; - devcb_read16 m_exts_cb; union { @@ -162,6 +147,8 @@ private: stream_sample_t *m_bufferl; stream_sample_t *m_bufferr; + stream_sample_t *m_exts0; + stream_sample_t *m_exts1; int m_length; |