diff options
author | 2019-03-25 23:13:40 +0100 | |
---|---|---|
committer | 2019-03-25 23:13:40 +0100 | |
commit | b380514764cf857469bae61c11143a19f79a74c5 (patch) | |
tree | 63c8012e262618f08a332da31dd714281aa2c5ed /src/devices/bus/newbrain | |
parent | c24473ddff715ecec2e258a6eb38960cf8c8e98e (diff) |
Revert "conflict resolution (nw)"
This reverts commit c24473ddff715ecec2e258a6eb38960cf8c8e98e, reversing
changes made to 009cba4fb8102102168ef32870892438327f3705.
Diffstat (limited to 'src/devices/bus/newbrain')
-rw-r--r-- | src/devices/bus/newbrain/eim.cpp | 25 | ||||
-rw-r--r-- | src/devices/bus/newbrain/eim.h | 8 | ||||
-rw-r--r-- | src/devices/bus/newbrain/exp.cpp | 16 | ||||
-rw-r--r-- | src/devices/bus/newbrain/exp.h | 37 | ||||
-rw-r--r-- | src/devices/bus/newbrain/fdc.cpp | 45 | ||||
-rw-r--r-- | src/devices/bus/newbrain/fdc.h | 14 |
6 files changed, 72 insertions, 73 deletions
diff --git a/src/devices/bus/newbrain/eim.cpp b/src/devices/bus/newbrain/eim.cpp index 3f0b7a19ee0..2bafd008eb6 100644 --- a/src/devices/bus/newbrain/eim.cpp +++ b/src/devices/bus/newbrain/eim.cpp @@ -67,15 +67,14 @@ const tiny_rom_entry *newbrain_eim_device::device_rom_region() const // device_add_mconfig - add device configuration //------------------------------------------------- -void newbrain_eim_device::device_add_mconfig(machine_config &config) -{ +MACHINE_CONFIG_START(newbrain_eim_device::device_add_mconfig) // devices Z80CTC(config, m_ctc, XTAL(16'000'000)/8); m_ctc->zc_callback<0>().set(m_acia, FUNC(acia6850_device::write_rxc)); m_ctc->zc_callback<1>().set(m_acia, FUNC(acia6850_device::write_txc)); m_ctc->zc_callback<2>().set(FUNC(newbrain_eim_device::ctc_z2_w)); - TIMER(config, "z80ctc_c2").configure_periodic(FUNC(newbrain_eim_device::ctc_c2_tick), attotime::from_hz(XTAL(16'000'000)/4/13)); + MCFG_TIMER_DRIVER_ADD_PERIODIC("z80ctc_c2", newbrain_eim_device, ctc_c2_tick, attotime::from_hz(XTAL(16'000'000)/4/13)) adc0809_device &adc(ADC0809(config, ADC0809_TAG, 500000)); adc.eoc_callback().set(FUNC(newbrain_eim_device::adc_eoc_w)); @@ -93,11 +92,11 @@ void newbrain_eim_device::device_add_mconfig(machine_config &config) RS232_PORT(config, RS232_TAG, default_rs232_devices, nullptr); - NEWBRAIN_EXPANSION_SLOT(config, m_exp, XTAL(16'000'000)/8, newbrain_expansion_cards, "fdc"); + MCFG_NEWBRAIN_EXPANSION_SLOT_ADD(NEWBRAIN_EXPANSION_SLOT_TAG, XTAL(16'000'000)/8, newbrain_expansion_cards, "fdc") // internal ram RAM(config, RAM_TAG).set_default_size("96K"); -} +MACHINE_CONFIG_END //************************************************************************** @@ -145,9 +144,9 @@ void newbrain_eim_device::device_reset() // mreq_r - memory request read //------------------------------------------------- -uint8_t newbrain_eim_device::mreq_r(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) +uint8_t newbrain_eim_device::mreq_r(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) { - return m_exp->mreq_r(offset, data, romov, exrm, raminh); + return m_exp->mreq_r(space, offset, data, romov, exrm, raminh); } @@ -155,9 +154,9 @@ uint8_t newbrain_eim_device::mreq_r(offs_t offset, uint8_t data, bool &romov, in // mreq_w - memory request write //------------------------------------------------- -void newbrain_eim_device::mreq_w(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) +void newbrain_eim_device::mreq_w(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) { - m_exp->mreq_w(offset, data, romov, exrm, raminh); + m_exp->mreq_w(space, offset, data, romov, exrm, raminh); } @@ -165,9 +164,9 @@ void newbrain_eim_device::mreq_w(offs_t offset, uint8_t data, bool &romov, int & // iorq_r - I/O request read //------------------------------------------------- -uint8_t newbrain_eim_device::iorq_r(offs_t offset, uint8_t data, bool &prtov) +uint8_t newbrain_eim_device::iorq_r(address_space &space, offs_t offset, uint8_t data, bool &prtov) { - return m_exp->iorq_r(offset, data, prtov); + return m_exp->iorq_r(space, offset, data, prtov); } @@ -175,9 +174,9 @@ uint8_t newbrain_eim_device::iorq_r(offs_t offset, uint8_t data, bool &prtov) // iorq_w - I/O request write //------------------------------------------------- -void newbrain_eim_device::iorq_w(offs_t offset, uint8_t data, bool &prtov) +void newbrain_eim_device::iorq_w(address_space &space, offs_t offset, uint8_t data, bool &prtov) { - m_exp->iorq_w(offset, data, prtov); + m_exp->iorq_w(space, offset, data, prtov); } diff --git a/src/devices/bus/newbrain/eim.h b/src/devices/bus/newbrain/eim.h index 19b456338fd..3e83b22112e 100644 --- a/src/devices/bus/newbrain/eim.h +++ b/src/devices/bus/newbrain/eim.h @@ -48,10 +48,10 @@ protected: virtual void device_add_mconfig(machine_config &config) override; // device_newbrain_expansion_slot_interface overrides - virtual uint8_t mreq_r(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) override; - virtual void mreq_w(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) override; - virtual uint8_t iorq_r(offs_t offset, uint8_t data, bool &prtov) override; - virtual void iorq_w(offs_t offset, uint8_t data, bool &prtov) override; + virtual uint8_t mreq_r(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) override; + virtual void mreq_w(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) override; + virtual uint8_t iorq_r(address_space &space, offs_t offset, uint8_t data, bool &prtov) override; + virtual void iorq_w(address_space &space, offs_t offset, uint8_t data, bool &prtov) override; private: DECLARE_WRITE_LINE_MEMBER( acia_interrupt ); diff --git a/src/devices/bus/newbrain/exp.cpp b/src/devices/bus/newbrain/exp.cpp index a1a9e2210ed..b4675c3b89f 100644 --- a/src/devices/bus/newbrain/exp.cpp +++ b/src/devices/bus/newbrain/exp.cpp @@ -77,11 +77,11 @@ void newbrain_expansion_slot_device::device_reset() // mreq_r - memory request read //------------------------------------------------- -uint8_t newbrain_expansion_slot_device::mreq_r(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) +uint8_t newbrain_expansion_slot_device::mreq_r(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) { if (m_card != nullptr) { - data = m_card->mreq_r(offset, data, romov, exrm, raminh); + data = m_card->mreq_r(space, offset, data, romov, exrm, raminh); } return data; @@ -92,11 +92,11 @@ uint8_t newbrain_expansion_slot_device::mreq_r(offs_t offset, uint8_t data, bool // mreq_w - memory request write //------------------------------------------------- -void newbrain_expansion_slot_device::mreq_w(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) +void newbrain_expansion_slot_device::mreq_w(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) { if (m_card != nullptr) { - m_card->mreq_w(offset, data, romov, exrm, raminh); + m_card->mreq_w(space, offset, data, romov, exrm, raminh); } } @@ -105,11 +105,11 @@ void newbrain_expansion_slot_device::mreq_w(offs_t offset, uint8_t data, bool &r // iorq_r - I/O request read //------------------------------------------------- -uint8_t newbrain_expansion_slot_device::iorq_r(offs_t offset, uint8_t data, bool &prtov) +uint8_t newbrain_expansion_slot_device::iorq_r(address_space &space, offs_t offset, uint8_t data, bool &prtov) { if (m_card != nullptr) { - data = m_card->iorq_r(offset, data, prtov); + data = m_card->iorq_r(space, offset, data, prtov); } return data; @@ -120,11 +120,11 @@ uint8_t newbrain_expansion_slot_device::iorq_r(offs_t offset, uint8_t data, bool // iorq_w - I/O request write //------------------------------------------------- -void newbrain_expansion_slot_device::iorq_w(offs_t offset, uint8_t data, bool &prtov) +void newbrain_expansion_slot_device::iorq_w(address_space &space, offs_t offset, uint8_t data, bool &prtov) { if (m_card != nullptr) { - m_card->iorq_w(offset, data, prtov); + m_card->iorq_w(space, offset, data, prtov); } } diff --git a/src/devices/bus/newbrain/exp.h b/src/devices/bus/newbrain/exp.h index e9e56c1bd66..e3ab89a35ef 100644 --- a/src/devices/bus/newbrain/exp.h +++ b/src/devices/bus/newbrain/exp.h @@ -49,6 +49,17 @@ #define NEWBRAIN_EXPANSION_SLOT_TAG "exp" + +//************************************************************************** +// INTERFACE CONFIGURATION MACROS +//************************************************************************** + +#define MCFG_NEWBRAIN_EXPANSION_SLOT_ADD(_tag, _clock, _slot_intf, _def_slot) \ + MCFG_DEVICE_ADD(_tag, NEWBRAIN_EXPANSION_SLOT, _clock) \ + MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, false) + + + //************************************************************************** // TYPE DEFINITIONS //************************************************************************** @@ -62,24 +73,14 @@ class newbrain_expansion_slot_device : public device_t, { public: // construction/destruction - template <typename T> - newbrain_expansion_slot_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock, T &&opts, char const *dflt) - : newbrain_expansion_slot_device(mconfig, tag, owner, clock) - { - option_reset(); - opts(*this); - set_default_option(dflt); - set_fixed(false); - } - newbrain_expansion_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // computer interface - uint8_t mreq_r(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh); - void mreq_w(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh); + uint8_t mreq_r(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh); + void mreq_w(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh); - uint8_t iorq_r(offs_t offset, uint8_t data, bool &prtov); - void iorq_w(offs_t offset, uint8_t data, bool &prtov); + uint8_t iorq_r(address_space &space, offs_t offset, uint8_t data, bool &prtov); + void iorq_w(address_space &space, offs_t offset, uint8_t data, bool &prtov); protected: // device-level overrides @@ -97,12 +98,12 @@ class device_newbrain_expansion_slot_interface : public device_slot_card_interfa { public: // memory access - virtual uint8_t mreq_r(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) { return data; } - virtual void mreq_w(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) { } + virtual uint8_t mreq_r(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) { return data; } + virtual void mreq_w(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) { } // I/O access - virtual uint8_t iorq_r(offs_t offset, uint8_t data, bool &prtov) { return data; } - virtual void iorq_w(offs_t offset, uint8_t data, bool &prtov) { } + virtual uint8_t iorq_r(address_space &space, offs_t offset, uint8_t data, bool &prtov) { return data; } + virtual void iorq_w(address_space &space, offs_t offset, uint8_t data, bool &prtov) { } protected: // construction/destruction diff --git a/src/devices/bus/newbrain/fdc.cpp b/src/devices/bus/newbrain/fdc.cpp index 7cadbd0bddd..597def0509b 100644 --- a/src/devices/bus/newbrain/fdc.cpp +++ b/src/devices/bus/newbrain/fdc.cpp @@ -104,22 +104,21 @@ static void newbrain_floppies(device_slot_interface &device) // device_add_mconfig - add device configuration //------------------------------------------------- -void newbrain_fdc_device::device_add_mconfig(machine_config &config) -{ - Z80(config, m_maincpu, XTAL(4'000'000)); - m_maincpu->set_addrmap(AS_PROGRAM, &newbrain_fdc_device::newbrain_fdc_mem); - m_maincpu->set_addrmap(AS_IO, &newbrain_fdc_device::newbrain_fdc_io); +MACHINE_CONFIG_START(newbrain_fdc_device::device_add_mconfig) + MCFG_DEVICE_ADD(Z80_TAG, Z80, XTAL(4'000'000)) + MCFG_DEVICE_PROGRAM_MAP(newbrain_fdc_mem) + MCFG_DEVICE_IO_MAP(newbrain_fdc_io) UPD765A(config, m_fdc, 8'000'000, false, true); m_fdc->intrq_wr_callback().set(FUNC(newbrain_fdc_device::fdc_int_w)); - FLOPPY_CONNECTOR(config, UPD765_TAG ":0", newbrain_floppies, "525dd", floppy_image_device::default_floppy_formats); - FLOPPY_CONNECTOR(config, UPD765_TAG ":1", newbrain_floppies, "525dd", floppy_image_device::default_floppy_formats); - FLOPPY_CONNECTOR(config, UPD765_TAG ":2", newbrain_floppies, nullptr, floppy_image_device::default_floppy_formats); - FLOPPY_CONNECTOR(config, UPD765_TAG ":3", newbrain_floppies, nullptr, floppy_image_device::default_floppy_formats); + MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":0", newbrain_floppies, "525dd", floppy_image_device::default_floppy_formats) + MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":1", newbrain_floppies, "525dd", floppy_image_device::default_floppy_formats) + MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":2", newbrain_floppies, nullptr, floppy_image_device::default_floppy_formats) + MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":3", newbrain_floppies, nullptr, floppy_image_device::default_floppy_formats) - NEWBRAIN_EXPANSION_SLOT(config, m_exp, XTAL(16'000'000)/8, newbrain_expansion_cards, nullptr); -} + MCFG_NEWBRAIN_EXPANSION_SLOT_ADD(NEWBRAIN_EXPANSION_SLOT_TAG, XTAL(16'000'000)/8, newbrain_expansion_cards, nullptr) +MACHINE_CONFIG_END //************************************************************************** @@ -177,9 +176,9 @@ void newbrain_fdc_device::device_reset() // mreq_r - memory request read //------------------------------------------------- -uint8_t newbrain_fdc_device::mreq_r(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) +uint8_t newbrain_fdc_device::mreq_r(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) { - return m_exp->mreq_r(offset, data, romov, exrm, raminh); + return m_exp->mreq_r(space, offset, data, romov, exrm, raminh); } @@ -187,9 +186,9 @@ uint8_t newbrain_fdc_device::mreq_r(offs_t offset, uint8_t data, bool &romov, in // mreq_w - memory request write //------------------------------------------------- -void newbrain_fdc_device::mreq_w(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) +void newbrain_fdc_device::mreq_w(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) { - m_exp->mreq_w(offset, data, romov, exrm, raminh); + m_exp->mreq_w(space, offset, data, romov, exrm, raminh); } @@ -197,9 +196,9 @@ void newbrain_fdc_device::mreq_w(offs_t offset, uint8_t data, bool &romov, int & // iorq_r - I/O request read //------------------------------------------------- -uint8_t newbrain_fdc_device::iorq_r(offs_t offset, uint8_t data, bool &prtov) +uint8_t newbrain_fdc_device::iorq_r(address_space &space, offs_t offset, uint8_t data, bool &prtov) { - return m_exp->iorq_r(offset, data, prtov); + return m_exp->iorq_r(space, offset, data, prtov); } @@ -207,13 +206,13 @@ uint8_t newbrain_fdc_device::iorq_r(offs_t offset, uint8_t data, bool &prtov) // iorq_w - I/O request write //------------------------------------------------- -void newbrain_fdc_device::iorq_w(offs_t offset, uint8_t data, bool &prtov) +void newbrain_fdc_device::iorq_w(address_space &space, offs_t offset, uint8_t data, bool &prtov) { - m_exp->iorq_w(offset, data, prtov); + m_exp->iorq_w(space, offset, data, prtov); if ((offset & 0x20f) == 0x20f) { - io_dec_w(data); + io_dec_w(space, 0, data); } } @@ -245,7 +244,7 @@ WRITE_LINE_MEMBER( newbrain_fdc_device::fdc_int_w ) // fdc_auxiliary_w - //------------------------------------------------- -void newbrain_fdc_device::fdc_auxiliary_w(uint8_t data) +WRITE8_MEMBER( newbrain_fdc_device::fdc_auxiliary_w ) { /* @@ -279,7 +278,7 @@ void newbrain_fdc_device::fdc_auxiliary_w(uint8_t data) // fdc_control_r - //------------------------------------------------- -uint8_t newbrain_fdc_device::fdc_control_r() +READ8_MEMBER( newbrain_fdc_device::fdc_control_r ) { /* @@ -304,7 +303,7 @@ uint8_t newbrain_fdc_device::fdc_control_r() // io_dec_w - 0x20f //------------------------------------------------- -void newbrain_fdc_device::io_dec_w(uint8_t data) +WRITE8_MEMBER( newbrain_fdc_device::io_dec_w ) { /* diff --git a/src/devices/bus/newbrain/fdc.h b/src/devices/bus/newbrain/fdc.h index e5d6665a078..e5a40ae0748 100644 --- a/src/devices/bus/newbrain/fdc.h +++ b/src/devices/bus/newbrain/fdc.h @@ -40,17 +40,17 @@ protected: virtual void device_add_mconfig(machine_config &config) override; // device_newbrain_expansion_slot_interface overrides - virtual uint8_t mreq_r(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) override; - virtual void mreq_w(offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) override; - virtual uint8_t iorq_r(offs_t offset, uint8_t data, bool &prtov) override; - virtual void iorq_w(offs_t offset, uint8_t data, bool &prtov) override; + virtual uint8_t mreq_r(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) override; + virtual void mreq_w(address_space &space, offs_t offset, uint8_t data, bool &romov, int &exrm, bool &raminh) override; + virtual uint8_t iorq_r(address_space &space, offs_t offset, uint8_t data, bool &prtov) override; + virtual void iorq_w(address_space &space, offs_t offset, uint8_t data, bool &prtov) override; private: DECLARE_WRITE_LINE_MEMBER( fdc_int_w ); - void fdc_auxiliary_w(uint8_t data); - uint8_t fdc_control_r(); - void io_dec_w(uint8_t data); + DECLARE_WRITE8_MEMBER( fdc_auxiliary_w ); + DECLARE_READ8_MEMBER( fdc_control_r ); + DECLARE_WRITE8_MEMBER( io_dec_w ); void newbrain_fdc_io(address_map &map); void newbrain_fdc_mem(address_map &map); |