diff options
author | 2017-06-07 18:58:48 +0200 | |
---|---|---|
committer | 2017-06-07 18:58:48 +0200 | |
commit | fd1bb20b1b81daeb7ab925fb4f9e82161e2f2e4c (patch) | |
tree | abe9b9828baaa83d87cbd8c8b434cc174648b8b5 /src/devices/bus/c64 | |
parent | 7b2e155728f7725a0c62d9abb2b31be5a00eea91 (diff) |
some more device_add_mconfig in devices/bus (nw)
Diffstat (limited to 'src/devices/bus/c64')
60 files changed, 214 insertions, 545 deletions
diff --git a/src/devices/bus/c64/16kb.cpp b/src/devices/bus/c64/16kb.cpp index f6112132c4e..985272d247e 100644 --- a/src/devices/bus/c64/16kb.cpp +++ b/src/devices/bus/c64/16kb.cpp @@ -19,10 +19,10 @@ DEFINE_DEVICE_TYPE(C64_16KB, c64_16kb_cartridge_device, "c64_16kb", "C64 16KB EP //------------------------------------------------- -// MACHINE_CONFIG_START( c64_16kb ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_16kb ) +MACHINE_CONFIG_MEMBER( c64_16kb_cartridge_device::device_add_mconfig ) MCFG_GENERIC_CARTSLOT_ADD("roml", generic_linear_slot, nullptr) MCFG_GENERIC_EXTENSIONS("rom,bin,80") @@ -32,17 +32,6 @@ MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_16kb_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_16kb ); -} - - -//------------------------------------------------- // INPUT_PORTS( c64_16kb ) //------------------------------------------------- diff --git a/src/devices/bus/c64/16kb.h b/src/devices/bus/c64/16kb.h index f1685ae5956..97afa77f5af 100644 --- a/src/devices/bus/c64/16kb.h +++ b/src/devices/bus/c64/16kb.h @@ -31,15 +31,15 @@ public: // construction/destruction c64_16kb_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/cpm.cpp b/src/devices/bus/c64/cpm.cpp index cc88ac95519..2d0ecbc67d9 100644 --- a/src/devices/bus/c64/cpm.cpp +++ b/src/devices/bus/c64/cpm.cpp @@ -55,27 +55,16 @@ ADDRESS_MAP_END //------------------------------------------------- -// MACHINE_CONFIG_START( c64_cpm ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_cpm ) +MACHINE_CONFIG_MEMBER( c64_cpm_cartridge_device::device_add_mconfig ) MCFG_CPU_ADD(Z80_TAG, Z80, 3000000) MCFG_CPU_PROGRAM_MAP(z80_mem) MCFG_CPU_IO_MAP(z80_io) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_cpm_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_cpm ); -} - - //************************************************************************** // INLINE HELPERS diff --git a/src/devices/bus/c64/cpm.h b/src/devices/bus/c64/cpm.h index 88e4c172da8..9590bb0015e 100644 --- a/src/devices/bus/c64/cpm.h +++ b/src/devices/bus/c64/cpm.h @@ -29,9 +29,6 @@ public: // construction/destruction c64_cpm_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - // not really public DECLARE_READ8_MEMBER( dma_r ); DECLARE_WRITE8_MEMBER( dma_w ); @@ -41,6 +38,9 @@ protected: virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw) override; diff --git a/src/devices/bus/c64/currah_speech.cpp b/src/devices/bus/c64/currah_speech.cpp index ae89a5d7831..83c28b4468a 100644 --- a/src/devices/bus/c64/currah_speech.cpp +++ b/src/devices/bus/c64/currah_speech.cpp @@ -107,28 +107,18 @@ const tiny_rom_entry *c64_currah_speech_cartridge_device::device_rom_region() co return ROM_NAME( c64_currah_speech ); } + //------------------------------------------------- -// MACHINE_CONFIG_START( c64_currah_speech ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_currah_speech ) +MACHINE_CONFIG_MEMBER( c64_currah_speech_cartridge_device::device_add_mconfig ) MCFG_SPEAKER_STANDARD_MONO("mono") MCFG_SOUND_ADD(SP0256_TAG, SP0256, 4000000) // ??? MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_currah_speech_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_currah_speech ); -} - - //************************************************************************** // INLINE HELPERS diff --git a/src/devices/bus/c64/currah_speech.h b/src/devices/bus/c64/currah_speech.h index ce2e31db8e0..44d5adb083a 100644 --- a/src/devices/bus/c64/currah_speech.h +++ b/src/devices/bus/c64/currah_speech.h @@ -30,15 +30,15 @@ public: // construction/destruction c64_currah_speech_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual const tiny_rom_entry *device_rom_region() const override; - virtual machine_config_constructor device_mconfig_additions() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual const tiny_rom_entry *device_rom_region() const override; + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/dela_ep256.cpp b/src/devices/bus/c64/dela_ep256.cpp index 86ded764b2e..3eb8951b559 100644 --- a/src/devices/bus/c64/dela_ep256.cpp +++ b/src/devices/bus/c64/dela_ep256.cpp @@ -19,10 +19,10 @@ DEFINE_DEVICE_TYPE(C64_DELA_EP256, c64_dela_ep256_cartridge_device, "delep256", //------------------------------------------------- -// MACHINE_CONFIG_START( c64_dela_ep256 ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_dela_ep256 ) +MACHINE_CONFIG_MEMBER( c64_dela_ep256_cartridge_device::device_add_mconfig ) MCFG_GENERIC_SOCKET_ADD("rom1", generic_linear_slot, nullptr) MCFG_GENERIC_EXTENSIONS("bin,rom") MCFG_GENERIC_SOCKET_ADD("rom2", generic_linear_slot, nullptr) @@ -42,17 +42,6 @@ static MACHINE_CONFIG_START( c64_dela_ep256 ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_dela_ep256_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_dela_ep256 ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/dela_ep256.h b/src/devices/bus/c64/dela_ep256.h index 44b154ae50e..bcc1992b969 100644 --- a/src/devices/bus/c64/dela_ep256.h +++ b/src/devices/bus/c64/dela_ep256.h @@ -31,14 +31,14 @@ public: // construction/destruction c64_dela_ep256_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/dela_ep64.cpp b/src/devices/bus/c64/dela_ep64.cpp index a6b6250dfbf..a817fac13f1 100644 --- a/src/devices/bus/c64/dela_ep64.cpp +++ b/src/devices/bus/c64/dela_ep64.cpp @@ -19,10 +19,10 @@ DEFINE_DEVICE_TYPE(C64_DELA_EP64, c64_dela_ep64_cartridge_device, "c64_dela_ep64 //------------------------------------------------- -// MACHINE_CONFIG_START( c64_dela_ep64 ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_dela_ep64 ) +MACHINE_CONFIG_MEMBER( c64_dela_ep64_cartridge_device::device_add_mconfig ) MCFG_GENERIC_SOCKET_ADD("eprom1", generic_linear_slot, nullptr) MCFG_GENERIC_EXTENSIONS("rom,bin") MCFG_GENERIC_SOCKET_ADD("eprom2", generic_linear_slot, nullptr) @@ -30,17 +30,6 @@ static MACHINE_CONFIG_START( c64_dela_ep64 ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_dela_ep64_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_dela_ep64 ); -} - - //************************************************************************** // LIVE DEVICE //************************************************************************** diff --git a/src/devices/bus/c64/dela_ep64.h b/src/devices/bus/c64/dela_ep64.h index 6e7aad548c8..a3e2d77bd48 100644 --- a/src/devices/bus/c64/dela_ep64.h +++ b/src/devices/bus/c64/dela_ep64.h @@ -31,14 +31,14 @@ public: // construction/destruction c64_dela_ep64_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/dela_ep7x8.cpp b/src/devices/bus/c64/dela_ep7x8.cpp index 21aa130f4e3..531e91e58c2 100644 --- a/src/devices/bus/c64/dela_ep7x8.cpp +++ b/src/devices/bus/c64/dela_ep7x8.cpp @@ -19,10 +19,10 @@ DEFINE_DEVICE_TYPE(C64_DELA_EP7X8, c64_dela_ep7x8_cartridge_device, "c64_dela_ep //------------------------------------------------- -// MACHINE_CONFIG_START( c64_dela_ep7x8 ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_dela_ep7x8 ) +MACHINE_CONFIG_MEMBER( c64_dela_ep7x8_cartridge_device::device_add_mconfig ) MCFG_GENERIC_SOCKET_ADD("rom1", generic_linear_slot, nullptr) MCFG_GENERIC_EXTENSIONS("bin,rom") MCFG_GENERIC_SOCKET_ADD("rom2", generic_linear_slot, nullptr) @@ -40,17 +40,6 @@ static MACHINE_CONFIG_START( c64_dela_ep7x8 ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_dela_ep7x8_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_dela_ep7x8 ); -} - - //************************************************************************** // LIVE DEVICE //************************************************************************** diff --git a/src/devices/bus/c64/dela_ep7x8.h b/src/devices/bus/c64/dela_ep7x8.h index e66cc211bc0..48146d1c5e1 100644 --- a/src/devices/bus/c64/dela_ep7x8.h +++ b/src/devices/bus/c64/dela_ep7x8.h @@ -31,14 +31,14 @@ public: // construction/destruction c64_dela_ep7x8_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/easyflash.cpp b/src/devices/bus/c64/easyflash.cpp index 4ecd5fd9cf2..acef92afdec 100644 --- a/src/devices/bus/c64/easyflash.cpp +++ b/src/devices/bus/c64/easyflash.cpp @@ -27,27 +27,16 @@ DEFINE_DEVICE_TYPE(C64_EASYFLASH, c64_easyflash_cartridge_device, "c64_easyflash //------------------------------------------------- -// MACHINE_CONFIG_START( c64_easyflash ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_easyflash ) +MACHINE_CONFIG_MEMBER( c64_easyflash_cartridge_device::device_add_mconfig ) MCFG_AMD_29F040_ADD(AM29F040_0_TAG) MCFG_AMD_29F040_ADD(AM29F040_1_TAG) MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_easyflash_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_easyflash ); -} - - -//------------------------------------------------- // INPUT_PORTS( c64_easyflash ) //------------------------------------------------- diff --git a/src/devices/bus/c64/easyflash.h b/src/devices/bus/c64/easyflash.h index 9760a247319..ef11fa5162d 100644 --- a/src/devices/bus/c64/easyflash.h +++ b/src/devices/bus/c64/easyflash.h @@ -30,15 +30,15 @@ public: // construction/destruction c64_easyflash_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/fcc.cpp b/src/devices/bus/c64/fcc.cpp index c40a1d33e7a..bcc90726d6c 100644 --- a/src/devices/bus/c64/fcc.cpp +++ b/src/devices/bus/c64/fcc.cpp @@ -71,27 +71,16 @@ ADDRESS_MAP_END //------------------------------------------------- -// MACHINE_CONFIG_START( c64_fcc ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_fcc ) +MACHINE_CONFIG_MEMBER( c64_final_chesscard_device::device_add_mconfig ) MCFG_CPU_ADD(G65SC02P4_TAG, M65SC02, XTAL_5MHz) MCFG_CPU_PROGRAM_MAP(c64_fcc_map) MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_final_chesscard_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_fcc ); -} - - -//------------------------------------------------- // INPUT_PORTS( c64_fcc ) //------------------------------------------------- diff --git a/src/devices/bus/c64/fcc.h b/src/devices/bus/c64/fcc.h index 3460738a389..b3fef34985f 100644 --- a/src/devices/bus/c64/fcc.h +++ b/src/devices/bus/c64/fcc.h @@ -30,11 +30,6 @@ public: // construction/destruction c64_final_chesscard_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual const tiny_rom_entry *device_rom_region() const override; - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - DECLARE_READ8_MEMBER( nvram_r ); DECLARE_WRITE8_MEMBER( nvram_w ); @@ -43,6 +38,11 @@ protected: virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual const tiny_rom_entry *device_rom_region() const override; + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_nvram_interface overrides virtual void nvram_default() override { } virtual void nvram_read(emu_file &file) override { if (m_nvram != nullptr) { file.read(m_nvram, m_nvram.bytes()); } } diff --git a/src/devices/bus/c64/geocable.cpp b/src/devices/bus/c64/geocable.cpp index f606e8ced3c..1263b8203d9 100644 --- a/src/devices/bus/c64/geocable.cpp +++ b/src/devices/bus/c64/geocable.cpp @@ -27,26 +27,15 @@ DEFINE_DEVICE_TYPE(C64_GEOCABLE, c64_geocable_device, "c64_geocable", "C64 geoCa //------------------------------------------------- -// MACHINE_CONFIG_START( c64_geocable ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_geocable ) +MACHINE_CONFIG_MEMBER( c64_geocable_device::device_add_mconfig ) MCFG_CENTRONICS_ADD("centronics", centronics_devices, "printer") MCFG_CENTRONICS_BUSY_HANDLER(WRITELINE(c64_geocable_device, output_b)) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_geocable_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_geocable ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/geocable.h b/src/devices/bus/c64/geocable.h index 7ab6f88d68f..83aa9b9133a 100644 --- a/src/devices/bus/c64/geocable.h +++ b/src/devices/bus/c64/geocable.h @@ -30,13 +30,13 @@ public: // construction/destruction c64_geocable_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - protected: // device-level overrides virtual void device_start() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_pet_user_port_interface overrides virtual DECLARE_WRITE_LINE_MEMBER(input_c) override { m_centronics->write_data0(state); } virtual DECLARE_WRITE_LINE_MEMBER(input_d) override { m_centronics->write_data1(state); } diff --git a/src/devices/bus/c64/ide64.cpp b/src/devices/bus/c64/ide64.cpp index 8a9cdd1d97d..b479a78c087 100644 --- a/src/devices/bus/c64/ide64.cpp +++ b/src/devices/bus/c64/ide64.cpp @@ -43,9 +43,10 @@ DEFINE_DEVICE_TYPE(C64_IDE64, c64_ide64_cartridge_device, "c64_ide64", "C64 IDE6 //------------------------------------------------- -// MACHINE_CONFIG_START( c64_ide64 ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_ide64 ) + +MACHINE_CONFIG_MEMBER( c64_ide64_cartridge_device::device_add_mconfig ) MCFG_ATMEL_29C010_ADD(AT29C010A_TAG) MCFG_DS1302_ADD(DS1302_TAG, XTAL_32_768kHz) @@ -54,17 +55,6 @@ MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_ide64_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_ide64 ); -} - - -//------------------------------------------------- // INPUT_PORTS( c64_ide64 ) //------------------------------------------------- diff --git a/src/devices/bus/c64/ide64.h b/src/devices/bus/c64/ide64.h index cacf380f428..b43e7bdaf98 100644 --- a/src/devices/bus/c64/ide64.h +++ b/src/devices/bus/c64/ide64.h @@ -33,15 +33,15 @@ public: // construction/destruction c64_ide64_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/ieee488.cpp b/src/devices/bus/c64/ieee488.cpp index ad3f15212f5..00a4e4c1893 100644 --- a/src/devices/bus/c64/ieee488.cpp +++ b/src/devices/bus/c64/ieee488.cpp @@ -136,11 +136,12 @@ WRITE8_MEMBER( c64_ieee488_device::tpi_pc_w ) m_roml_sel = BIT(data, 4); } + //------------------------------------------------- -// MACHINE_CONFIG_START( c64_ieee488 ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_ieee488 ) +MACHINE_CONFIG_MEMBER( c64_ieee488_device::device_add_mconfig ) MCFG_DEVICE_ADD(MOS6525_TAG, TPI6525, 0) MCFG_TPI6525_IN_PA_CB(READ8(c64_ieee488_device, tpi_pa_r)) MCFG_TPI6525_OUT_PA_CB(WRITE8(c64_ieee488_device, tpi_pa_w)) @@ -154,17 +155,6 @@ static MACHINE_CONFIG_START( c64_ieee488 ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_ieee488_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_ieee488 ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/ieee488.h b/src/devices/bus/c64/ieee488.h index 92a7de1f9f1..185a2623317 100644 --- a/src/devices/bus/c64/ieee488.h +++ b/src/devices/bus/c64/ieee488.h @@ -30,26 +30,25 @@ public: // construction/destruction c64_ieee488_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - - // not really public - DECLARE_READ8_MEMBER( tpi_pa_r ); - DECLARE_WRITE8_MEMBER( tpi_pa_w ); - DECLARE_READ8_MEMBER( tpi_pc_r ); - DECLARE_WRITE8_MEMBER( tpi_pc_w ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw) override; private: + DECLARE_READ8_MEMBER( tpi_pa_r ); + DECLARE_WRITE8_MEMBER( tpi_pa_w ); + DECLARE_READ8_MEMBER( tpi_pc_r ); + DECLARE_WRITE8_MEMBER( tpi_pc_w ); + required_device<tpi6525_device> m_tpi; required_device<ieee488_device> m_bus; required_device<c64_expansion_slot_device> m_exp; diff --git a/src/devices/bus/c64/magic_formel.cpp b/src/devices/bus/c64/magic_formel.cpp index e116ec33e8c..918a799296a 100644 --- a/src/devices/bus/c64/magic_formel.cpp +++ b/src/devices/bus/c64/magic_formel.cpp @@ -93,10 +93,10 @@ WRITE_LINE_MEMBER( c64_magic_formel_cartridge_device::pia_cb2_w ) //------------------------------------------------- -// MACHINE_CONFIG_START( c64_magic_formel ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_magic_formel ) +MACHINE_CONFIG_MEMBER( c64_magic_formel_cartridge_device::device_add_mconfig ) MCFG_DEVICE_ADD(MC6821_TAG, PIA6821, 0) MCFG_PIA_WRITEPA_HANDLER(WRITE8(c64_magic_formel_cartridge_device, pia_pa_w)) MCFG_PIA_WRITEPB_HANDLER(WRITE8(c64_magic_formel_cartridge_device, pia_pb_w)) @@ -105,17 +105,6 @@ MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_magic_formel_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_magic_formel ); -} - - -//------------------------------------------------- // INPUT_CHANGED_MEMBER( freeze ) //------------------------------------------------- diff --git a/src/devices/bus/c64/magic_formel.h b/src/devices/bus/c64/magic_formel.h index 687e9c8f935..b4427511f32 100644 --- a/src/devices/bus/c64/magic_formel.h +++ b/src/devices/bus/c64/magic_formel.h @@ -29,28 +29,27 @@ public: // construction/destruction c64_magic_formel_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - DECLARE_INPUT_CHANGED_MEMBER( freeze ); - // not really public - DECLARE_WRITE8_MEMBER( pia_pa_w ); - DECLARE_WRITE8_MEMBER( pia_pb_w ); - DECLARE_WRITE_LINE_MEMBER( pia_cb2_w ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw) override; private: + DECLARE_WRITE8_MEMBER( pia_pa_w ); + DECLARE_WRITE8_MEMBER( pia_pb_w ); + DECLARE_WRITE_LINE_MEMBER( pia_cb2_w ); + required_device<pia6821_device> m_pia; optional_shared_ptr<uint8_t> m_ram; diff --git a/src/devices/bus/c64/magic_voice.cpp b/src/devices/bus/c64/magic_voice.cpp index c53d8c28b39..a9439244e84 100644 --- a/src/devices/bus/c64/magic_voice.cpp +++ b/src/devices/bus/c64/magic_voice.cpp @@ -216,10 +216,10 @@ WRITE_LINE_MEMBER( c64_magic_voice_cartridge_device::apd_w ) //------------------------------------------------- -// MACHINE_CONFIG_START( c64_magic_voice ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_magic_voice ) +MACHINE_CONFIG_MEMBER( c64_magic_voice_cartridge_device::device_add_mconfig ) MCFG_DEVICE_ADD(MOS6525_TAG, TPI6525, 0) MCFG_TPI6525_OUT_IRQ_CB(WRITELINE(c64_magic_voice_cartridge_device, tpi_irq_w)) MCFG_TPI6525_IN_PA_CB(READ8(c64_magic_voice_cartridge_device, tpi_pa_r)) @@ -244,17 +244,6 @@ static MACHINE_CONFIG_START( c64_magic_voice ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_magic_voice_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_magic_voice ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/magic_voice.h b/src/devices/bus/c64/magic_voice.h index e801da274d6..264c2531197 100644 --- a/src/devices/bus/c64/magic_voice.h +++ b/src/devices/bus/c64/magic_voice.h @@ -31,8 +31,21 @@ public: // construction/destruction c64_magic_voice_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); +protected: + // device-level overrides + virtual void device_start() override; + virtual void device_reset() override; + // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; + virtual void device_add_mconfig(machine_config &config) override; + + // device_c64_expansion_card_interface overrides + virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; + virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; + virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw) override; + +private: + offs_t get_offset(offs_t offset); DECLARE_WRITE_LINE_MEMBER( tpi_irq_w ); DECLARE_READ8_MEMBER( tpi_pa_r ); @@ -46,19 +59,6 @@ public: DECLARE_WRITE_LINE_MEMBER( dtrd_w ); DECLARE_WRITE_LINE_MEMBER( apd_w ); -protected: - // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - - // device_c64_expansion_card_interface overrides - virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; - virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; - virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw) override; - -private: - offs_t get_offset(offs_t offset); - required_device<t6721a_device> m_vslsi; required_device<tpi6525_device> m_tpi; required_device<cmos_40105_device> m_fifo; diff --git a/src/devices/bus/c64/midi_maplin.cpp b/src/devices/bus/c64/midi_maplin.cpp index 56cfac212ed..1550d761055 100644 --- a/src/devices/bus/c64/midi_maplin.cpp +++ b/src/devices/bus/c64/midi_maplin.cpp @@ -41,10 +41,10 @@ WRITE_LINE_MEMBER( c64_maplin_midi_cartridge_device::write_acia_clock ) //------------------------------------------------- -// MACHINE_CONFIG_START( c64_maplin_midi ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_maplin_midi ) +MACHINE_CONFIG_MEMBER( c64_maplin_midi_cartridge_device::device_add_mconfig ) MCFG_DEVICE_ADD(MC6850_TAG, ACIA6850, 0) MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("mdout", midi_port_device, write_txd)) MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(c64_maplin_midi_cartridge_device, acia_irq_w)) @@ -59,17 +59,6 @@ static MACHINE_CONFIG_START( c64_maplin_midi ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_maplin_midi_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_maplin_midi ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/midi_maplin.h b/src/devices/bus/c64/midi_maplin.h index a9fefd89169..d844d007b36 100644 --- a/src/devices/bus/c64/midi_maplin.h +++ b/src/devices/bus/c64/midi_maplin.h @@ -29,22 +29,22 @@ public: // construction/destruction c64_maplin_midi_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - - DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; private: + DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); + DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); + required_device<acia6850_device> m_acia; }; diff --git a/src/devices/bus/c64/midi_namesoft.cpp b/src/devices/bus/c64/midi_namesoft.cpp index 7f328f1485a..6f9a1f855db 100644 --- a/src/devices/bus/c64/midi_namesoft.cpp +++ b/src/devices/bus/c64/midi_namesoft.cpp @@ -41,10 +41,10 @@ WRITE_LINE_MEMBER( c64_namesoft_midi_cartridge_device::write_acia_clock ) //------------------------------------------------- -// MACHINE_CONFIG_START( c64_passport_midi ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_passport_midi ) +MACHINE_CONFIG_MEMBER( c64_namesoft_midi_cartridge_device::device_add_mconfig ) MCFG_DEVICE_ADD(MC6850_TAG, ACIA6850, 0) MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("mdout", midi_port_device, write_txd)) MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(c64_namesoft_midi_cartridge_device, acia_irq_w)) @@ -59,17 +59,6 @@ static MACHINE_CONFIG_START( c64_passport_midi ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_namesoft_midi_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_passport_midi ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/midi_namesoft.h b/src/devices/bus/c64/midi_namesoft.h index 2b1a77b6e36..fe583e9cac1 100644 --- a/src/devices/bus/c64/midi_namesoft.h +++ b/src/devices/bus/c64/midi_namesoft.h @@ -29,22 +29,22 @@ public: // construction/destruction c64_namesoft_midi_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - - DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; private: + DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); + DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); + required_device<acia6850_device> m_acia; }; diff --git a/src/devices/bus/c64/midi_passport.cpp b/src/devices/bus/c64/midi_passport.cpp index 1845e0fb69f..cc7761906bb 100644 --- a/src/devices/bus/c64/midi_passport.cpp +++ b/src/devices/bus/c64/midi_passport.cpp @@ -55,10 +55,10 @@ WRITE_LINE_MEMBER( c64_passport_midi_cartridge_device::write_acia_clock ) //------------------------------------------------- -// MACHINE_CONFIG_START( c64_passport_midi ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_passport_midi ) +MACHINE_CONFIG_MEMBER( c64_passport_midi_cartridge_device::device_add_mconfig ) MCFG_DEVICE_ADD(MC6850_TAG, ACIA6850, 0) MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("mdout", midi_port_device, write_txd)) MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(c64_passport_midi_cartridge_device, acia_irq_w)) @@ -77,17 +77,6 @@ static MACHINE_CONFIG_START( c64_passport_midi ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_passport_midi_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_passport_midi ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/midi_passport.h b/src/devices/bus/c64/midi_passport.h index 2660a696189..5385e3fff91 100644 --- a/src/devices/bus/c64/midi_passport.h +++ b/src/devices/bus/c64/midi_passport.h @@ -30,23 +30,23 @@ public: // construction/destruction c64_passport_midi_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - - DECLARE_WRITE_LINE_MEMBER( ptm_irq_w ); - DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; private: + DECLARE_WRITE_LINE_MEMBER( ptm_irq_w ); + DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); + DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); + required_device<acia6850_device> m_acia; required_device<ptm6840_device> m_ptm; diff --git a/src/devices/bus/c64/midi_sci.cpp b/src/devices/bus/c64/midi_sci.cpp index bed1b59c049..efdea06b435 100644 --- a/src/devices/bus/c64/midi_sci.cpp +++ b/src/devices/bus/c64/midi_sci.cpp @@ -41,10 +41,10 @@ WRITE_LINE_MEMBER( c64_sequential_midi_cartridge_device::write_acia_clock ) //------------------------------------------------- -// MACHINE_CONFIG_START( c64_sequential_midi ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_sequential_midi ) +MACHINE_CONFIG_MEMBER( c64_sequential_midi_cartridge_device::device_add_mconfig ) MCFG_DEVICE_ADD(MC6850_TAG, ACIA6850, 0) MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("mdout", midi_port_device, write_txd)) MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(c64_sequential_midi_cartridge_device, acia_irq_w)) @@ -59,17 +59,6 @@ static MACHINE_CONFIG_START( c64_sequential_midi ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_sequential_midi_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_sequential_midi ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/midi_sci.h b/src/devices/bus/c64/midi_sci.h index b905784218a..2c3dfc7f8ff 100644 --- a/src/devices/bus/c64/midi_sci.h +++ b/src/devices/bus/c64/midi_sci.h @@ -29,22 +29,22 @@ public: // construction/destruction c64_sequential_midi_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - - DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; private: + DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); + DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); + required_device<acia6850_device> m_acia; }; diff --git a/src/devices/bus/c64/midi_siel.cpp b/src/devices/bus/c64/midi_siel.cpp index 1c11e41c490..3b6feec98fc 100644 --- a/src/devices/bus/c64/midi_siel.cpp +++ b/src/devices/bus/c64/midi_siel.cpp @@ -41,10 +41,10 @@ WRITE_LINE_MEMBER( c64_siel_midi_cartridge_device::write_acia_clock ) //------------------------------------------------- -// MACHINE_CONFIG_START( c64_siel_midi ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_siel_midi ) +MACHINE_CONFIG_MEMBER( c64_siel_midi_cartridge_device::device_add_mconfig ) MCFG_DEVICE_ADD(MC6850_TAG, ACIA6850, 0) MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("mdout", midi_port_device, write_txd)) MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(c64_siel_midi_cartridge_device, acia_irq_w)) @@ -59,17 +59,6 @@ static MACHINE_CONFIG_START( c64_siel_midi ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_siel_midi_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_siel_midi ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/midi_siel.h b/src/devices/bus/c64/midi_siel.h index 3f647c9a089..9e84f5e1852 100644 --- a/src/devices/bus/c64/midi_siel.h +++ b/src/devices/bus/c64/midi_siel.h @@ -29,22 +29,22 @@ public: // construction/destruction c64_siel_midi_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - - DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; private: + DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); + DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); + required_device<acia6850_device> m_acia; }; diff --git a/src/devices/bus/c64/multiscreen.cpp b/src/devices/bus/c64/multiscreen.cpp index 8c85ee833e2..e99eb9ef7b8 100644 --- a/src/devices/bus/c64/multiscreen.cpp +++ b/src/devices/bus/c64/multiscreen.cpp @@ -108,10 +108,10 @@ ADDRESS_MAP_END //------------------------------------------------- -// MACHINE_CONFIG_START( c64_multiscreen ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_multiscreen ) +MACHINE_CONFIG_MEMBER( c64_multiscreen_cartridge_device::device_add_mconfig ) MCFG_CPU_ADD(MC6802P_TAG, M6802, XTAL_4MHz) MCFG_CPU_PROGRAM_MAP(multiscreen_mem) @@ -120,18 +120,6 @@ static MACHINE_CONFIG_START( c64_multiscreen ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_multiscreen_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_multiscreen ); -} - - - //************************************************************************** // LIVE DEVICE //************************************************************************** diff --git a/src/devices/bus/c64/multiscreen.h b/src/devices/bus/c64/multiscreen.h index 46a72bde046..8e7b9d54f3b 100644 --- a/src/devices/bus/c64/multiscreen.h +++ b/src/devices/bus/c64/multiscreen.h @@ -31,15 +31,15 @@ public: // construction/destruction c64_multiscreen_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual const tiny_rom_entry *device_rom_region() const override; - virtual machine_config_constructor device_mconfig_additions() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual const tiny_rom_entry *device_rom_region() const override; + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/music64.cpp b/src/devices/bus/c64/music64.cpp index dbdc350291c..923c9982f3b 100644 --- a/src/devices/bus/c64/music64.cpp +++ b/src/devices/bus/c64/music64.cpp @@ -41,26 +41,15 @@ DEFINE_DEVICE_TYPE(C64_MUSIC64, c64_music64_cartridge_device, "c64_music64", "C6 //------------------------------------------------- -// MACHINE_CONFIG_START( c64_music64 ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_music64 ) +MACHINE_CONFIG_MEMBER( c64_music64_cartridge_device::device_add_mconfig ) MCFG_C64_PASSTHRU_EXPANSION_SLOT_ADD() MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_music64_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_music64 ); -} - - -//------------------------------------------------- // INPUT_PORTS( c64_music64 ) //------------------------------------------------- diff --git a/src/devices/bus/c64/music64.h b/src/devices/bus/c64/music64.h index eea75aae771..c9ae5414ac9 100644 --- a/src/devices/bus/c64/music64.h +++ b/src/devices/bus/c64/music64.h @@ -28,15 +28,15 @@ public: // construction/destruction c64_music64_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/ps64.cpp b/src/devices/bus/c64/ps64.cpp index 666e4184df2..551932a13c8 100644 --- a/src/devices/bus/c64/ps64.cpp +++ b/src/devices/bus/c64/ps64.cpp @@ -70,28 +70,18 @@ static struct votrax_sc02_interface votrax_intf = }; */ + //------------------------------------------------- -// MACHINE_CONFIG_START( c64_ps64 ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_ps64 ) +MACHINE_CONFIG_MEMBER( c64_ps64_cartridge_device::device_add_mconfig ) //MCFG_SPEAKER_STANDARD_MONO("mono") //MCFG_VOTRAX_SC02_ADD(SSI263_TAG, 2000000, votrax_intf) //MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_ps64_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_ps64 ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/ps64.h b/src/devices/bus/c64/ps64.h index d319cf5e573..4d75432d51a 100644 --- a/src/devices/bus/c64/ps64.h +++ b/src/devices/bus/c64/ps64.h @@ -30,14 +30,14 @@ public: // construction/destruction c64_ps64_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/reu.cpp b/src/devices/bus/c64/reu.cpp index 4dbdf3b2e88..01b371392c7 100644 --- a/src/devices/bus/c64/reu.cpp +++ b/src/devices/bus/c64/reu.cpp @@ -28,10 +28,10 @@ DEFINE_DEVICE_TYPE(C64_REU1764, c64_reu1764_cartridge_device, "c64_1764reu", "17 //------------------------------------------------- -// MACHINE_CONFIG_START( c64_reu ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_reu ) +MACHINE_CONFIG_MEMBER( c64_reu_cartridge_device::device_add_mconfig ) MCFG_MOS8726_ADD(MOS8726R1_TAG) MCFG_GENERIC_SOCKET_ADD("rom", generic_linear_slot, nullptr) @@ -39,17 +39,6 @@ static MACHINE_CONFIG_START( c64_reu ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_reu_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_reu ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/reu.h b/src/devices/bus/c64/reu.h index 7ace9c7b2a9..dd8b9e32d5f 100644 --- a/src/devices/bus/c64/reu.h +++ b/src/devices/bus/c64/reu.h @@ -28,10 +28,6 @@ class c64_reu_cartridge_device : public device_t, public device_c64_expansion_card_interface { -public: - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - protected: enum { @@ -47,6 +43,9 @@ protected: virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/rex_ep256.cpp b/src/devices/bus/c64/rex_ep256.cpp index 29dc8673a9f..7dc3bc27520 100644 --- a/src/devices/bus/c64/rex_ep256.cpp +++ b/src/devices/bus/c64/rex_ep256.cpp @@ -19,10 +19,10 @@ DEFINE_DEVICE_TYPE(C64_REX_EP256, c64_rex_ep256_cartridge_device, "rexexp256", " //------------------------------------------------- -// MACHINE_CONFIG_START( c64_rex_ep256 ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_rex_ep256 ) +MACHINE_CONFIG_MEMBER( c64_rex_ep256_cartridge_device::device_add_mconfig ) MCFG_GENERIC_SOCKET_ADD("rom1", generic_linear_slot, nullptr) MCFG_GENERIC_EXTENSIONS("bin,rom") MCFG_GENERIC_SOCKET_ADD("rom2", generic_linear_slot, nullptr) @@ -42,17 +42,6 @@ static MACHINE_CONFIG_START( c64_rex_ep256 ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_rex_ep256_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_rex_ep256 ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/rex_ep256.h b/src/devices/bus/c64/rex_ep256.h index 2d4cb25c95f..536929d8cdb 100644 --- a/src/devices/bus/c64/rex_ep256.h +++ b/src/devices/bus/c64/rex_ep256.h @@ -31,14 +31,14 @@ public: // construction/destruction c64_rex_ep256_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/sfx_sound_expander.cpp b/src/devices/bus/c64/sfx_sound_expander.cpp index dfa4a8ff6c9..6d7dffd2b49 100644 --- a/src/devices/bus/c64/sfx_sound_expander.cpp +++ b/src/devices/bus/c64/sfx_sound_expander.cpp @@ -38,10 +38,10 @@ WRITE_LINE_MEMBER( c64_sfx_sound_expander_cartridge_device::opl_irq_w ) //------------------------------------------------- -// MACHINE_CONFIG_START( c64_sfx_sound_expander ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_sfx_sound_expander ) +MACHINE_CONFIG_MEMBER( c64_sfx_sound_expander_cartridge_device::device_add_mconfig ) MCFG_SPEAKER_STANDARD_MONO("mono") MCFG_SOUND_ADD(YM3526_TAG, YM3526, XTAL_3_579545MHz) MCFG_YM3526_IRQ_HANDLER(WRITELINE(c64_sfx_sound_expander_cartridge_device, opl_irq_w)) @@ -52,17 +52,6 @@ MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_sfx_sound_expander_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_sfx_sound_expander ); -} - - -//------------------------------------------------- // INPUT_PORTS( c64_sfx_sound_expander ) //------------------------------------------------- diff --git a/src/devices/bus/c64/sfx_sound_expander.h b/src/devices/bus/c64/sfx_sound_expander.h index 8df5a1d6c0a..eb402bf1e54 100644 --- a/src/devices/bus/c64/sfx_sound_expander.h +++ b/src/devices/bus/c64/sfx_sound_expander.h @@ -29,17 +29,15 @@ public: // construction/destruction c64_sfx_sound_expander_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - - DECLARE_WRITE_LINE_MEMBER( opl_irq_w ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; @@ -47,6 +45,8 @@ protected: virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) override; private: + DECLARE_WRITE_LINE_MEMBER( opl_irq_w ); + required_device<ym3526_device> m_opl; required_device<c64_expansion_slot_device> m_exp; required_ioport_array<8> m_kb; diff --git a/src/devices/bus/c64/speakeasy.cpp b/src/devices/bus/c64/speakeasy.cpp index e70534ee4aa..1c5dd398482 100644 --- a/src/devices/bus/c64/speakeasy.cpp +++ b/src/devices/bus/c64/speakeasy.cpp @@ -28,10 +28,10 @@ DEFINE_DEVICE_TYPE(C64_SPEAKEASY, c64_speakeasy_cartridge_device, "c64_speakeasy //------------------------------------------------- -// MACHINE_DRIVER( speakeasy ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( speakeasy ) +MACHINE_CONFIG_MEMBER( c64_speakeasy_cartridge_device::device_add_mconfig ) MCFG_SPEAKER_STANDARD_MONO("mono") MCFG_SOUND_ADD(SC01A_TAG, VOTRAX_SC01, 720000) @@ -39,17 +39,6 @@ static MACHINE_CONFIG_START( speakeasy ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_speakeasy_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( speakeasy ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/speakeasy.h b/src/devices/bus/c64/speakeasy.h index 9ff90a460b9..8c8ecdc9403 100644 --- a/src/devices/bus/c64/speakeasy.h +++ b/src/devices/bus/c64/speakeasy.h @@ -28,13 +28,13 @@ public: // construction/destruction c64_speakeasy_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - protected: // device-level overrides virtual void device_start() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/supercpu.cpp b/src/devices/bus/c64/supercpu.cpp index b5353b24392..6b5b73b3265 100644 --- a/src/devices/bus/c64/supercpu.cpp +++ b/src/devices/bus/c64/supercpu.cpp @@ -57,10 +57,10 @@ ADDRESS_MAP_END //------------------------------------------------- -// MACHINE_CONFIG_START( c64_supercpu ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_supercpu ) +MACHINE_CONFIG_MEMBER( c64_supercpu_device::device_add_mconfig ) MCFG_CPU_ADD(G65816_TAG, G65816, 1000000) MCFG_CPU_PROGRAM_MAP(c64_supercpu_map) @@ -69,17 +69,6 @@ MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_supercpu_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_supercpu ); -} - - -//------------------------------------------------- // INPUT_PORTS( c64_supercpu ) //------------------------------------------------- diff --git a/src/devices/bus/c64/supercpu.h b/src/devices/bus/c64/supercpu.h index c3c0308d471..d901f6956b6 100644 --- a/src/devices/bus/c64/supercpu.h +++ b/src/devices/bus/c64/supercpu.h @@ -29,16 +29,16 @@ public: // construction/destruction c64_supercpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual const tiny_rom_entry *device_rom_region() const override; - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual const tiny_rom_entry *device_rom_region() const override; + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/swiftlink.cpp b/src/devices/bus/c64/swiftlink.cpp index 49ab285985b..7d7f65a62b3 100644 --- a/src/devices/bus/c64/swiftlink.cpp +++ b/src/devices/bus/c64/swiftlink.cpp @@ -35,10 +35,10 @@ DEFINE_DEVICE_TYPE(C64_SWIFTLINK, c64_swiftlink_cartridge_device, "c64_swiftlink //------------------------------------------------- -// MACHINE_CONFIG_START( c64_swiftlink ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_swiftlink ) +MACHINE_CONFIG_MEMBER( c64_swiftlink_cartridge_device::device_add_mconfig ) MCFG_DEVICE_ADD(MOS6551_TAG, MOS6551, 0) MCFG_MOS6551_XTAL(XTAL_3_6864MHz) MCFG_MOS6551_IRQ_HANDLER(WRITELINE(c64_swiftlink_cartridge_device, acia_irq_w)) @@ -53,17 +53,6 @@ MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_swiftlink_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_swiftlink ); -} - - -//------------------------------------------------- // INPUT_PORTS( c64_swiftlink ) //------------------------------------------------- diff --git a/src/devices/bus/c64/swiftlink.h b/src/devices/bus/c64/swiftlink.h index fba041f1b11..0c1f577bafe 100644 --- a/src/devices/bus/c64/swiftlink.h +++ b/src/devices/bus/c64/swiftlink.h @@ -31,22 +31,22 @@ public: // construction/destruction c64_swiftlink_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - - DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; private: + DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); + required_device<mos6551_device> m_acia; required_ioport m_io_cs; required_ioport m_io_irq; diff --git a/src/devices/bus/c64/tdos.cpp b/src/devices/bus/c64/tdos.cpp index 87faabb69e8..f8852e2b51b 100644 --- a/src/devices/bus/c64/tdos.cpp +++ b/src/devices/bus/c64/tdos.cpp @@ -150,10 +150,10 @@ DEFINE_DEVICE_TYPE(C64_TDOS, c64_tdos_cartridge_device, "c64_tdos", "C64 TDOS ca //------------------------------------------------- -// MACHINE_CONFIG_START( c64_multiscreen ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_tdos ) +MACHINE_CONFIG_MEMBER( c64_tdos_cartridge_device::device_add_mconfig ) MCFG_DEVICE_ADD(MC68A52P_TAG, MC6852, XTAL_6_5MHz) MCFG_C64_PASSTHRU_EXPANSION_SLOT_ADD() @@ -161,17 +161,6 @@ MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_tdos_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_tdos ); -} - - -//------------------------------------------------- // INPUT_PORTS( c64_tdos ) //------------------------------------------------- diff --git a/src/devices/bus/c64/tdos.h b/src/devices/bus/c64/tdos.h index 164d2fd5ca0..adf2bf874b5 100644 --- a/src/devices/bus/c64/tdos.h +++ b/src/devices/bus/c64/tdos.h @@ -29,15 +29,15 @@ public: // construction/destruction c64_tdos_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; diff --git a/src/devices/bus/c64/turbo232.cpp b/src/devices/bus/c64/turbo232.cpp index 3fc07fa27f2..8da2ccb1c5e 100644 --- a/src/devices/bus/c64/turbo232.cpp +++ b/src/devices/bus/c64/turbo232.cpp @@ -34,10 +34,10 @@ DEFINE_DEVICE_TYPE(C64_TURBO232, c64_turbo232_cartridge_device, "c64_turbo232", //------------------------------------------------- -// MACHINE_CONFIG_START( c64_turbo232 ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_turbo232 ) +MACHINE_CONFIG_MEMBER( c64_turbo232_cartridge_device::device_add_mconfig ) MCFG_DEVICE_ADD(MOS6551_TAG, MOS6551, 0) MCFG_MOS6551_XTAL(XTAL_3_6864MHz) MCFG_MOS6551_IRQ_HANDLER(WRITELINE(c64_turbo232_cartridge_device, acia_irq_w)) @@ -52,17 +52,6 @@ MACHINE_CONFIG_END //------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_turbo232_cartridge_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_turbo232 ); -} - - -//------------------------------------------------- // INPUT_PORTS( c64_turbo232 ) //------------------------------------------------- diff --git a/src/devices/bus/c64/turbo232.h b/src/devices/bus/c64/turbo232.h index 4ca2cb73084..177e044307d 100644 --- a/src/devices/bus/c64/turbo232.h +++ b/src/devices/bus/c64/turbo232.h @@ -31,22 +31,22 @@ public: // construction/destruction c64_turbo232_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual machine_config_constructor device_mconfig_additions() const override; - virtual ioport_constructor device_input_ports() const override; - - DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual void device_add_mconfig(machine_config &config) override; + virtual ioport_constructor device_input_ports() const override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; private: + DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); + required_device<mos6551_device> m_acia; required_device<rs232_port_device> m_rs232; required_ioport m_io_cs; diff --git a/src/devices/bus/c64/xl80.cpp b/src/devices/bus/c64/xl80.cpp index 87740c52558..3469a60f1c7 100644 --- a/src/devices/bus/c64/xl80.cpp +++ b/src/devices/bus/c64/xl80.cpp @@ -120,10 +120,10 @@ GFXDECODE_END //------------------------------------------------- -// MACHINE_CONFIG_START( c64_xl80 ) +// device_add_mconfig - add device configuration //------------------------------------------------- -static MACHINE_CONFIG_START( c64_xl80 ) +MACHINE_CONFIG_MEMBER( c64_xl80_device::device_add_mconfig ) MCFG_SCREEN_ADD_MONOCHROME(MC6845_SCREEN_TAG, RASTER, rgb_t::white()) MCFG_SCREEN_UPDATE_DEVICE(HD46505SP_TAG, h46505_device, screen_update) MCFG_SCREEN_SIZE(80*8, 24*8) @@ -140,17 +140,6 @@ static MACHINE_CONFIG_START( c64_xl80 ) MACHINE_CONFIG_END -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -machine_config_constructor c64_xl80_device::device_mconfig_additions() const -{ - return MACHINE_CONFIG_NAME( c64_xl80 ); -} - - //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/c64/xl80.h b/src/devices/bus/c64/xl80.h index ee3e1789fa1..cc03d6c530f 100644 --- a/src/devices/bus/c64/xl80.h +++ b/src/devices/bus/c64/xl80.h @@ -30,18 +30,15 @@ public: // construction/destruction c64_xl80_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // optional information overrides - virtual const tiny_rom_entry *device_rom_region() const override; - virtual machine_config_constructor device_mconfig_additions() const override; - - // not really public - MC6845_UPDATE_ROW( crtc_update_row ); - protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; + // optional information overrides + virtual const tiny_rom_entry *device_rom_region() const override; + virtual void device_add_mconfig(machine_config &config) override; + // device_c64_expansion_card_interface overrides virtual uint8_t c64_cd_r(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; @@ -49,6 +46,8 @@ protected: virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) override { return 0; } private: + MC6845_UPDATE_ROW( crtc_update_row ); + required_device<h46505_device> m_crtc; required_device<palette_device> m_palette; required_memory_region m_char_rom; |