summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/wd7600.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/wd7600.h')
-rw-r--r--src/devices/machine/wd7600.h15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/devices/machine/wd7600.h b/src/devices/machine/wd7600.h
index de70cef8e56..40dbb379340 100644
--- a/src/devices/machine/wd7600.h
+++ b/src/devices/machine/wd7600.h
@@ -78,10 +78,10 @@ public:
template <class Object> devcb_base &set_spkr_callback(Object &&spkr) { return m_write_spkr.set_callback(std::forward<Object>(spkr)); }
// inline configuration
- void set_cputag(const char *tag) { m_cputag = tag; }
+ template <typename T> void set_cputag(T &&tag) { m_cpu.set_tag(std::forward<T>(tag)); }
void set_isatag(const char *tag) { m_isatag = tag; }
- void set_biostag(const char *tag) { m_biostag = tag; }
- void set_keybctag(const char *tag) { m_keybctag = tag; }
+ template <typename T> void set_biostag(T &&tag) { m_bios.set_tag(std::forward<T>(tag)); }
+ template <typename T> void set_keybctag(T &&tag) { m_keybc.set_tag(std::forward<T>(tag)); }
// input lines
DECLARE_WRITE_LINE_MEMBER( irq01_w ) { m_pic1->ir1_w(state); }
@@ -195,6 +195,10 @@ private:
required_device<pit8254_device> m_ctc;
required_device<ds12885_device> m_rtc;
+ required_device<device_memory_interface> m_cpu;
+ required_device<at_keyboard_controller_device> m_keybc;
+ required_region_ptr<uint8_t> m_bios;
+
offs_t page_offset();
void set_dma_channel(int channel, bool state);
void keyboard_gatea20(int state);
@@ -202,10 +206,7 @@ private:
void a20m();
// internal state
- const char *m_cputag;
const char *m_isatag;
- const char *m_biostag;
- const char *m_keybctag;
uint8_t m_portb;
int m_iochck;
int m_nmi_mask;
@@ -228,9 +229,7 @@ private:
address_space *m_space;
address_space *m_space_io;
uint8_t *m_isa;
- uint8_t *m_bios;
uint8_t *m_ram;
- at_keyboard_controller_device *m_keybc;
};
// device type definition