diff options
author | AJR <ajrhacker@users.noreply.github.com> | 2019-02-25 20:57:57 -0500 |
---|---|---|
committer | AJR <ajrhacker@users.noreply.github.com> | 2019-02-25 20:57:57 -0500 |
commit | 8efc7c322b19ab2cd0bc694457f2b178e1cd1fd1 (patch) | |
tree | 5721351ddd859db4079cd50cfb527773138ffb6a | |
parent | 579e277fda9289c23fc7770794a5698eba263856 (diff) |
bus/a1bus, bus/a2bus/a2eauxslot: Replace CPU finder with required_address_space (nw)
-rw-r--r-- | src/devices/bus/a1bus/a1bus.cpp | 6 | ||||
-rw-r--r-- | src/devices/bus/a1bus/a1bus.h | 4 | ||||
-rw-r--r-- | src/devices/bus/a2bus/a2eauxslot.cpp | 3 | ||||
-rw-r--r-- | src/devices/bus/a2bus/a2eauxslot.h | 6 | ||||
-rw-r--r-- | src/devices/bus/a2bus/a2eramworks3.cpp | 2 | ||||
-rw-r--r-- | src/devices/bus/a2bus/a2eramworks3.h | 2 | ||||
-rw-r--r-- | src/mame/drivers/apple1.cpp | 2 | ||||
-rw-r--r-- | src/mame/drivers/apple2e.cpp | 4 |
8 files changed, 15 insertions, 14 deletions
diff --git a/src/devices/bus/a1bus/a1bus.cpp b/src/devices/bus/a1bus/a1bus.cpp index b9370c084d6..1dee51c40b2 100644 --- a/src/devices/bus/a1bus/a1bus.cpp +++ b/src/devices/bus/a1bus/a1bus.cpp @@ -82,7 +82,7 @@ a1bus_device::a1bus_device(const machine_config &mconfig, const char *tag, devic a1bus_device::a1bus_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : device_t(mconfig, type, tag, owner, clock) - , m_maincpu(*this, finder_base::DUMMY_TAG) + , m_space(*this, finder_base::DUMMY_TAG, -1) , m_out_irq_cb(*this) , m_out_nmi_cb(*this) , m_device(nullptr) @@ -136,13 +136,13 @@ void a1bus_device::set_nmi_line(int state) void a1bus_device::install_device(offs_t start, offs_t end, read8_delegate rhandler, write8_delegate whandler) { - m_maincpu->space(AS_PROGRAM).install_readwrite_handler(start, end, rhandler, whandler); + m_space->install_readwrite_handler(start, end, rhandler, whandler); } void a1bus_device::install_bank(offs_t start, offs_t end, const char *tag, uint8_t *data) { // printf("install_bank: %s @ %x->%x\n", tag, start, end); - m_maincpu->space(AS_PROGRAM).install_readwrite_bank(start, end, tag); + m_space->install_readwrite_bank(start, end, tag); machine().root_device().membank(siblingtag(tag).c_str())->set_base(data); } diff --git a/src/devices/bus/a1bus/a1bus.h b/src/devices/bus/a1bus/a1bus.h index ba31301fb87..7970f150719 100644 --- a/src/devices/bus/a1bus/a1bus.h +++ b/src/devices/bus/a1bus/a1bus.h @@ -59,7 +59,7 @@ public: a1bus_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // inline configuration - template <typename T> void set_cputag(T &&tag) { m_maincpu.set_tag(std::forward<T>(tag)); } + template <typename T> void set_space(T &&tag, int spacenum) { m_space.set_tag(std::forward<T>(tag), spacenum); } auto out_irq_callback() { return m_out_irq_cb.bind(); } auto out_nmi_callback() { return m_out_nmi_cb.bind(); } @@ -84,7 +84,7 @@ protected: virtual void device_reset() override; // internal state - required_device<cpu_device> m_maincpu; + required_address_space m_space; devcb_write_line m_out_irq_cb; devcb_write_line m_out_nmi_cb; diff --git a/src/devices/bus/a2bus/a2eauxslot.cpp b/src/devices/bus/a2bus/a2eauxslot.cpp index 6a2f22601f0..774186fc49f 100644 --- a/src/devices/bus/a2bus/a2eauxslot.cpp +++ b/src/devices/bus/a2bus/a2eauxslot.cpp @@ -70,12 +70,13 @@ a2eauxslot_device::a2eauxslot_device(const machine_config &mconfig, const char * a2eauxslot_device::a2eauxslot_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : device_t(mconfig, type, tag, owner, clock) - , m_maincpu(*this, finder_base::DUMMY_TAG) + , m_space(*this, finder_base::DUMMY_TAG, -1) , m_out_irq_cb(*this) , m_out_nmi_cb(*this) , m_device(nullptr) { } + //------------------------------------------------- // device_start - device-specific startup //------------------------------------------------- diff --git a/src/devices/bus/a2bus/a2eauxslot.h b/src/devices/bus/a2bus/a2eauxslot.h index 29f3339d53a..ef145b78468 100644 --- a/src/devices/bus/a2bus/a2eauxslot.h +++ b/src/devices/bus/a2bus/a2eauxslot.h @@ -67,7 +67,7 @@ public: a2eauxslot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // inline configuration - template <typename T> void set_cputag(T &&tag) { m_maincpu.set_tag(std::forward<T>(tag)); } + template <typename T> void set_space(T &&tag, int spacenum) { m_space.set_tag(std::forward<T>(tag), spacenum); } auto out_irq_callback() { return m_out_irq_cb.bind(); } auto out_nmi_callback() { return m_out_nmi_cb.bind(); } @@ -88,7 +88,7 @@ protected: virtual void device_reset() override; // internal state - required_device<cpu_device> m_maincpu; + required_address_space m_space; devcb_write_line m_out_irq_cb; devcb_write_line m_out_nmi_cb; @@ -112,7 +112,7 @@ public: virtual uint8_t read_auxram(uint16_t offset) { printf("a2eauxslot: unhandled auxram read @ %04x\n", offset); return 0xff; } virtual void write_auxram(uint16_t offset, uint8_t data) { printf("a2eauxslot: unhandled auxram write %02x @ %04x\n", data, offset); } - virtual void write_c07x(address_space &space, uint8_t offset, uint8_t data) {} + virtual void write_c07x(uint8_t offset, uint8_t data) {} virtual uint8_t *get_vram_ptr() = 0; virtual uint8_t *get_auxbank_ptr() = 0; virtual bool allow_dhr() { return true; } diff --git a/src/devices/bus/a2bus/a2eramworks3.cpp b/src/devices/bus/a2bus/a2eramworks3.cpp index e82225cbd27..daa49dd5e59 100644 --- a/src/devices/bus/a2bus/a2eramworks3.cpp +++ b/src/devices/bus/a2bus/a2eramworks3.cpp @@ -88,7 +88,7 @@ uint8_t *a2eaux_ramworks3_device::get_auxbank_ptr() However, the software will recognize and correctly use a configuration in which all of banks 00-7F are populated for a total of 8 megabytes. So that's what we do. */ -void a2eaux_ramworks3_device::write_c07x(address_space &space, uint8_t offset, uint8_t data) +void a2eaux_ramworks3_device::write_c07x(uint8_t offset, uint8_t data) { // write to C073? if (offset == 3) diff --git a/src/devices/bus/a2bus/a2eramworks3.h b/src/devices/bus/a2bus/a2eramworks3.h index f2b327ebfab..d47d88c37d9 100644 --- a/src/devices/bus/a2bus/a2eramworks3.h +++ b/src/devices/bus/a2bus/a2eramworks3.h @@ -36,7 +36,7 @@ protected: virtual uint8_t *get_vram_ptr() override; virtual uint8_t *get_auxbank_ptr() override; virtual bool allow_dhr() override { return true; } - virtual void write_c07x(address_space &space, uint8_t offset, uint8_t data) override; + virtual void write_c07x(uint8_t offset, uint8_t data) override; private: uint8_t m_ram[8*1024*1024]; diff --git a/src/mame/drivers/apple1.cpp b/src/mame/drivers/apple1.cpp index 9a5a513665a..b6a1d60d281 100644 --- a/src/mame/drivers/apple1.cpp +++ b/src/mame/drivers/apple1.cpp @@ -611,7 +611,7 @@ MACHINE_CONFIG_START(apple1_state::apple1) m_pia->writepb_handler().set(FUNC(apple1_state::pia_display_w)); m_pia->cb2_handler().set(FUNC(apple1_state::pia_display_gate_w)); - A1BUS(config, A1_BUS_TAG, 0).set_cputag(m_maincpu); + A1BUS(config, A1_BUS_TAG, 0).set_space(m_maincpu, AS_PROGRAM); A1BUS_SLOT(config, "exp", 0, A1_BUS_TAG, apple1_cards, "cassette"); MCFG_SNAPSHOT_ADD("snapshot", apple1_state, apple1, "snp") diff --git a/src/mame/drivers/apple2e.cpp b/src/mame/drivers/apple2e.cpp index 584b1e5a43b..4547d95c5e3 100644 --- a/src/mame/drivers/apple2e.cpp +++ b/src/mame/drivers/apple2e.cpp @@ -1839,7 +1839,7 @@ WRITE8_MEMBER(apple2e_state::c000_w) case 0x78: case 0x79: case 0x7a: case 0x7b: case 0x7c: case 0x7d: if (m_auxslotdevice) { - m_auxslotdevice->write_c07x(space, offset & 0xf, data); + m_auxslotdevice->write_c07x(offset & 0xf, data); // card may have banked auxram; get a new bank pointer m_aux_bank_ptr = m_auxslotdevice->get_auxbank_ptr(); @@ -4087,7 +4087,7 @@ void apple2e_state::apple2e(machine_config &config) A2BUS_SLOT(config, "sl7", m_a2bus, apple2_cards, nullptr); A2EAUXSLOT(config, m_a2eauxslot, 0); - m_a2eauxslot->set_cputag(m_maincpu); + m_a2eauxslot->set_space(m_maincpu, AS_PROGRAM); m_a2eauxslot->out_irq_callback().set(FUNC(apple2e_state::a2bus_irq_w)); m_a2eauxslot->out_nmi_callback().set(FUNC(apple2e_state::a2bus_nmi_w)); A2EAUXSLOT_SLOT(config, "aux", apple2eaux_cards, "ext80", A2_AUXSLOT_TAG); |