summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/spectrum/mgt.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/spectrum/mgt.h')
-rw-r--r--src/devices/bus/spectrum/mgt.h20
1 files changed, 8 insertions, 12 deletions
diff --git a/src/devices/bus/spectrum/mgt.h b/src/devices/bus/spectrum/mgt.h
index f75b8dc540a..b40b18c5711 100644
--- a/src/devices/bus/spectrum/mgt.h
+++ b/src/devices/bus/spectrum/mgt.h
@@ -19,7 +19,6 @@
#include "imagedev/floppy.h"
#include "machine/wd_fdc.h"
#include "bus/centronics/ctronics.h"
-#include "formats/coupedsk.h"
//**************************************************************************
// TYPE DEFINITIONS
@@ -51,16 +50,16 @@ protected:
virtual void mreq_w(offs_t offset, uint8_t data) override;
virtual uint8_t iorq_r(offs_t offset) override;
virtual void iorq_w(offs_t offset, uint8_t data) override;
- virtual DECLARE_READ_LINE_MEMBER(romcs) override;
+ virtual bool romcs() override;
- DECLARE_WRITE_LINE_MEMBER(busy_w);
+ void busy_w(int state);
required_memory_region m_rom;
required_device<wd_fdc_device_base> m_fdc;
required_device_array<floppy_connector, 2> m_floppy;
required_device<centronics_device> m_centronics;
- int m_romcs;
+ bool m_romcs;
uint8_t m_ram[8 * 1024];
bool m_centronics_busy;
};
@@ -71,18 +70,12 @@ public:
// construction/destruction
spectrum_disciple_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_INPUT_CHANGED_MEMBER(inhibit_button) { if (!newval) m_romcs = 0; };
+ DECLARE_INPUT_CHANGED_MEMBER(inhibit_button) { if (!newval) m_romcs = 0; }
protected:
- enum
- {
- TIMER_RESET
- };
-
// device-level overrides
virtual void device_start() override;
virtual void device_reset() override;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -94,7 +87,9 @@ protected:
virtual void mreq_w(offs_t offset, uint8_t data) override;
virtual uint8_t iorq_r(offs_t offset) override;
virtual void iorq_w(offs_t offset, uint8_t data) override;
- virtual DECLARE_READ_LINE_MEMBER(romcs) override;
+ virtual bool romcs() override;
+
+ TIMER_CALLBACK_MEMBER(reset_tick);
private:
required_device<spectrum_expansion_slot_device> m_exp;
@@ -105,6 +100,7 @@ private:
bool m_map;
u8 m_control;
bool m_reset_delay;
+ emu_timer *m_reset_timer;
};