summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/sound/x1_010.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/sound/x1_010.h')
-rw-r--r--src/devices/sound/x1_010.h22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/devices/sound/x1_010.h b/src/devices/sound/x1_010.h
index fc616e99cfd..1c636d0bd98 100644
--- a/src/devices/sound/x1_010.h
+++ b/src/devices/sound/x1_010.h
@@ -5,10 +5,12 @@
#pragma once
-class x1_010_device : public device_t, public device_sound_interface, public device_rom_interface
+#include "dirom.h"
+
+class x1_010_device : public device_t, public device_sound_interface, public device_rom_interface<20>
{
public:
- x1_010_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ x1_010_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
u8 read(offs_t offset);
void write(offs_t offset, u8 data);
@@ -20,14 +22,14 @@ public:
protected:
// device-level overrides
- virtual void device_start() override;
+ virtual void device_start() override ATTR_COLD;
virtual void device_clock_changed() override;
// sound stream update overrides
- virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples) override;
+ virtual void sound_stream_update(sound_stream &stream) override;
// device_rom_interface overrides
- virtual void rom_bank_updated() override;
+ virtual void rom_bank_pre_change() override;
private:
static constexpr unsigned NUM_CHANNELS = 16;
@@ -38,12 +40,12 @@ private:
int m_rate; // Output sampling rate (Hz)
sound_stream * m_stream; // Stream handle
int m_sound_enable; // sound output enable/disable
- std::unique_ptr<uint8_t[]> m_reg; // X1-010 Register & wave form area
- std::unique_ptr<uint8_t[]> m_HI_WORD_BUF; // X1-010 16bit access ram check avoidance work
- uint32_t m_smp_offset[NUM_CHANNELS];
- uint32_t m_env_offset[NUM_CHANNELS];
+ std::unique_ptr<u8[]> m_reg; // X1-010 Register & wave form area
+ std::unique_ptr<u8[]> m_HI_WORD_BUF; // X1-010 16bit access ram check avoidance work
+ u32 m_smp_offset[NUM_CHANNELS];
+ u32 m_env_offset[NUM_CHANNELS];
- uint32_t m_base_clock;
+ u32 m_base_clock;
};
DECLARE_DEVICE_TYPE(X1_010, x1_010_device)