some more device_add_mconfig in devices/bus (nw)

This commit is contained in:
Ivan Vangelista 2017-06-07 18:58:48 +02:00
parent 7b2e155728
commit fd1bb20b1b
123 changed files with 719 additions and 1395 deletions

View File

@ -24,10 +24,10 @@ DEFINE_DEVICE_TYPE(ABC856, abc856_device, "abc856", "ABC
//-------------------------------------------------
// MACHINE_DRIVER( abc890 )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( abc890 )
MACHINE_CONFIG_MEMBER( abc890_device::device_add_mconfig )
MCFG_ABCBUS_SLOT_ADD("io1", abcbus_cards, nullptr)
MCFG_ABCBUS_SLOT_ADD("io2", abcbus_cards, nullptr)
MCFG_ABCBUS_SLOT_ADD("io3", abcbus_cards, nullptr)
@ -39,21 +39,10 @@ MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor abc890_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc890 );
}
//-------------------------------------------------
// MACHINE_DRIVER( abc_expansion_unit )
//-------------------------------------------------
static MACHINE_CONFIG_START( abc_expansion_unit )
MACHINE_CONFIG_MEMBER( abc_expansion_unit_device::device_add_mconfig )
MCFG_ABCBUS_SLOT_ADD("io1", abc80_cards, "abc830")
MCFG_ABCBUS_SLOT_ADD("io2", abc80_cards, nullptr)
MCFG_ABCBUS_SLOT_ADD("io3", abc80_cards, nullptr)
@ -65,21 +54,10 @@ MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor abc_expansion_unit_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc_expansion_unit );
}
//-------------------------------------------------
// MACHINE_DRIVER( abc894 )
//-------------------------------------------------
static MACHINE_CONFIG_START( abc894 )
MACHINE_CONFIG_MEMBER( abc894_device::device_add_mconfig )
MCFG_ABCBUS_SLOT_ADD("io1", abcbus_cards, nullptr)
MCFG_ABCBUS_SLOT_ADD("io2", abcbus_cards, nullptr)
MCFG_ABCBUS_SLOT_ADD("io3", abcbus_cards, nullptr)
@ -87,21 +65,10 @@ MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor abc894_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc894 );
}
//-------------------------------------------------
// MACHINE_DRIVER( abc850 )
//-------------------------------------------------
static MACHINE_CONFIG_START( abc850 )
MACHINE_CONFIG_MEMBER( abc850_device::device_add_mconfig )
MCFG_ABCBUS_SLOT_ADD("io1", abcbus_cards, "abc850fdd")
MCFG_ABCBUS_SLOT_ADD("io2", abcbus_cards, "xebec")
MCFG_DEVICE_CARD_DEFAULT_BIOS("xebec", "ro202")
@ -114,21 +81,10 @@ MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor abc850_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc850 );
}
//-------------------------------------------------
// MACHINE_DRIVER( abc852 )
//-------------------------------------------------
static MACHINE_CONFIG_START( abc852 )
MACHINE_CONFIG_MEMBER( abc852_device::device_add_mconfig )
MCFG_ABCBUS_SLOT_ADD("io1", abcbus_cards, "abc850fdd")
MCFG_ABCBUS_SLOT_ADD("io2", abcbus_cards, "xebec")
MCFG_DEVICE_CARD_DEFAULT_BIOS("xebec", "basf6185")
@ -141,21 +97,10 @@ MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor abc852_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc852 );
}
//-------------------------------------------------
// MACHINE_DRIVER( abc856 )
//-------------------------------------------------
static MACHINE_CONFIG_START( abc856 )
MACHINE_CONFIG_MEMBER( abc856_device::device_add_mconfig )
MCFG_ABCBUS_SLOT_ADD("io1", abcbus_cards, "abc850fdd")
MCFG_ABCBUS_SLOT_ADD("io2", abcbus_cards, "xebec")
MCFG_DEVICE_CARD_DEFAULT_BIOS("xebec", "micr1325")
@ -167,17 +112,6 @@ static MACHINE_CONFIG_START( abc856 )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor abc856_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc856 );
}
//**************************************************************************
// LIVE DEVICE

View File

@ -28,9 +28,6 @@ public:
// construction/destruction
abc890_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:
abc890_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@ -38,6 +35,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_abcbus_interface overrides
virtual void abcbus_cs(uint8_t data) override;
virtual uint8_t abcbus_inp() override;
@ -60,8 +60,9 @@ public:
// construction/destruction
abc_expansion_unit_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
};
@ -73,8 +74,9 @@ public:
// construction/destruction
abc894_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
};
@ -86,8 +88,9 @@ public:
// construction/destruction
abc850_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
};
@ -99,8 +102,9 @@ public:
// construction/destruction
abc852_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
};
@ -112,8 +116,9 @@ public:
// construction/destruction
abc856_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
};

View File

@ -231,10 +231,10 @@ FLOPPY_FORMATS_END
//-------------------------------------------------
// MACHINE_DRIVER( abc_fd2 )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( abc_fd2 )
MACHINE_CONFIG_MEMBER( abc_fd2_device::device_add_mconfig )
MCFG_CPU_ADD(Z80_TAG, Z80, XTAL_4MHz/2)
MCFG_CPU_PROGRAM_MAP(abc_fd2_mem)
MCFG_CPU_IO_MAP(abc_fd2_io)
@ -257,18 +257,6 @@ static MACHINE_CONFIG_START( abc_fd2 )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor abc_fd2_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc_fd2 );
}
//**************************************************************************
// LIVE DEVICE
//**************************************************************************

View File

@ -33,24 +33,17 @@ public:
// construction/destruction
abc_fd2_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;
DECLARE_WRITE8_MEMBER( status_w );
DECLARE_READ8_MEMBER( pio_pa_r );
DECLARE_WRITE8_MEMBER( pio_pa_w );
DECLARE_READ8_MEMBER( pio_pb_r );
DECLARE_WRITE8_MEMBER( pio_pb_w );
DECLARE_FLOPPY_FORMATS( floppy_formats );
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_abcbus_interface overrides
virtual void abcbus_cs(uint8_t data) override;
virtual uint8_t abcbus_inp() override;
@ -61,6 +54,13 @@ protected:
virtual uint8_t abcbus_xmemfl(offs_t offset) override;
private:
DECLARE_READ8_MEMBER( pio_pa_r );
DECLARE_WRITE8_MEMBER( pio_pa_w );
DECLARE_READ8_MEMBER( pio_pb_r );
DECLARE_WRITE8_MEMBER( pio_pb_w );
DECLARE_FLOPPY_FORMATS( floppy_formats );
required_device<cpu_device> m_maincpu;
required_device<z80pio_device> m_pio;
required_device<fd1771_device> m_fdc;

View File

@ -78,10 +78,10 @@ static const z80_daisy_config daisy_chain[] =
//-------------------------------------------------
// MACHINE_DRIVER( abc_hdc )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( abc_hdc )
MACHINE_CONFIG_MEMBER( abc_hdc_device::device_add_mconfig )
MCFG_CPU_ADD(Z80_TAG, Z80, 4000000)
MCFG_CPU_PROGRAM_MAP(abc_hdc_mem)
MCFG_CPU_IO_MAP(abc_hdc_io)
@ -92,18 +92,6 @@ static MACHINE_CONFIG_START( abc_hdc )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor abc_hdc_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc_hdc );
}
//**************************************************************************
// LIVE DEVICE
//**************************************************************************

View File

@ -31,15 +31,15 @@ public:
// construction/destruction
abc_hdc_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_abcbus_interface overrides
virtual void abcbus_cs(uint8_t data) override;

View File

@ -323,10 +323,10 @@ WRITE_LINE_MEMBER( luxor_55_10828_device::fdc_drq_w )
//-------------------------------------------------
// MACHINE_DRIVER( luxor_55_10828 )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( luxor_55_10828 )
MACHINE_CONFIG_MEMBER( luxor_55_10828_device::device_add_mconfig )
MCFG_CPU_ADD(Z80_TAG, Z80, XTAL_4MHz/2)
MCFG_CPU_PROGRAM_MAP(luxor_55_10828_mem)
MCFG_CPU_IO_MAP(luxor_55_10828_io)
@ -348,17 +348,6 @@ static MACHINE_CONFIG_START( luxor_55_10828 )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor luxor_55_10828_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( luxor_55_10828 );
}
//-------------------------------------------------
// INPUT_PORTS( luxor_55_10828 )
//-------------------------------------------------

View File

@ -60,26 +60,16 @@ public:
DECLARE_READ8_MEMBER( fdc_r );
DECLARE_WRITE8_MEMBER( fdc_w );
DECLARE_READ8_MEMBER( pio_pa_r );
DECLARE_WRITE8_MEMBER( pio_pa_w );
DECLARE_READ8_MEMBER( pio_pb_r );
DECLARE_WRITE8_MEMBER( pio_pb_w );
DECLARE_WRITE_LINE_MEMBER( fdc_intrq_w );
DECLARE_WRITE_LINE_MEMBER( fdc_drq_w );
DECLARE_FLOPPY_FORMATS( floppy_formats );
// 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_abcbus_interface overrides
virtual void abcbus_cs(uint8_t data) override;
virtual uint8_t abcbus_inp() override;
@ -89,6 +79,16 @@ protected:
virtual void abcbus_c3(uint8_t data) override;
private:
DECLARE_READ8_MEMBER( pio_pa_r );
DECLARE_WRITE8_MEMBER( pio_pa_w );
DECLARE_READ8_MEMBER( pio_pb_r );
DECLARE_WRITE8_MEMBER( pio_pb_w );
DECLARE_WRITE_LINE_MEMBER( fdc_intrq_w );
DECLARE_WRITE_LINE_MEMBER( fdc_drq_w );
DECLARE_FLOPPY_FORMATS( floppy_formats );
required_device<cpu_device> m_maincpu;
required_device<z80pio_device> m_pio;
required_device<mb8876_device> m_fdc;

View File

@ -284,10 +284,10 @@ static const z80_daisy_config z80_daisy_chain[] =
//-------------------------------------------------
// MACHINE_CONFIG( luxor_55_21046 )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( luxor_55_21046 )
MACHINE_CONFIG_MEMBER( luxor_55_21046_device::device_add_mconfig )
MCFG_CPU_ADD(Z80_TAG, Z80, XTAL_16MHz/4)
MCFG_Z80_DAISY_CHAIN(z80_daisy_chain)
MCFG_CPU_PROGRAM_MAP(luxor_55_21046_mem)
@ -306,83 +306,37 @@ static MACHINE_CONFIG_START( luxor_55_21046 )
MCFG_WD_FDC_DRQ_CALLBACK(DEVWRITELINE(Z80DMA_TAG, z80dma_device, rdy_w))
MACHINE_CONFIG_END
//-------------------------------------------------
// MACHINE_CONFIG( abc830 )
//-------------------------------------------------
static MACHINE_CONFIG_DERIVED( abc830, luxor_55_21046 )
MACHINE_CONFIG_MEMBER( abc830_device::device_add_mconfig )
luxor_55_21046_device::device_add_mconfig(config);
MCFG_FLOPPY_DRIVE_ADD(SAB1793_TAG":0", abc_floppies, "525ssdd", luxor_55_21046_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(SAB1793_TAG":1", abc_floppies, "525ssdd", luxor_55_21046_device::floppy_formats)
MACHINE_CONFIG_END
//-------------------------------------------------
// MACHINE_CONFIG( abc832 )
//-------------------------------------------------
static MACHINE_CONFIG_DERIVED( abc832, luxor_55_21046 )
MACHINE_CONFIG_MEMBER( abc832_device::device_add_mconfig )
luxor_55_21046_device::device_add_mconfig(config);
MCFG_FLOPPY_DRIVE_ADD(SAB1793_TAG":0", abc_floppies, "525qd", luxor_55_21046_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(SAB1793_TAG":1", abc_floppies, "525qd", luxor_55_21046_device::floppy_formats)
MACHINE_CONFIG_END
MACHINE_CONFIG_MEMBER( abc834_device::device_add_mconfig )
luxor_55_21046_device::device_add_mconfig(config);
MCFG_FLOPPY_DRIVE_ADD(SAB1793_TAG":0", abc_floppies, "525qd", luxor_55_21046_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(SAB1793_TAG":1", abc_floppies, "525qd", luxor_55_21046_device::floppy_formats)
MACHINE_CONFIG_END
//-------------------------------------------------
// MACHINE_CONFIG( abc838 )
//-------------------------------------------------
static MACHINE_CONFIG_DERIVED( abc838, luxor_55_21046 )
MACHINE_CONFIG_MEMBER( abc838_device::device_add_mconfig )
luxor_55_21046_device::device_add_mconfig(config);
MCFG_FLOPPY_DRIVE_ADD(SAB1793_TAG":0", abc_floppies, "8dsdd", luxor_55_21046_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(SAB1793_TAG":1", abc_floppies, "8dsdd", luxor_55_21046_device::floppy_formats)
MACHINE_CONFIG_END
//-------------------------------------------------
// MACHINE_CONFIG( abc850 )
//-------------------------------------------------
static MACHINE_CONFIG_DERIVED( abc850, luxor_55_21046 )
MACHINE_CONFIG_MEMBER( abc850_floppy_device::device_add_mconfig )
luxor_55_21046_device::device_add_mconfig(config);
MCFG_FLOPPY_DRIVE_ADD(SAB1793_TAG":0", abc_floppies, "525qd", luxor_55_21046_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(SAB1793_TAG":1", abc_floppies, nullptr, luxor_55_21046_device::floppy_formats)
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor luxor_55_21046_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( luxor_55_21046 );
}
machine_config_constructor abc830_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc830 );
}
machine_config_constructor abc832_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc832 );
}
machine_config_constructor abc834_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc832 );
}
machine_config_constructor abc838_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc838 );
}
machine_config_constructor abc850_floppy_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc850 );
}
//-------------------------------------------------
// INPUT_PORTS( luxor_55_21046 )
//-------------------------------------------------

View File

@ -54,11 +54,6 @@ public:
// construction/destruction
luxor_55_21046_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;
// not really public
DECLARE_READ8_MEMBER( out_r );
DECLARE_WRITE8_MEMBER( inp_w );
@ -67,15 +62,6 @@ public:
DECLARE_WRITE8_MEMBER( _8a_w );
DECLARE_READ8_MEMBER( _9a_r );
DECLARE_WRITE_LINE_MEMBER( dma_int_w );
DECLARE_READ8_MEMBER(memory_read_byte);
DECLARE_WRITE8_MEMBER(memory_write_byte);
DECLARE_READ8_MEMBER(io_read_byte);
DECLARE_WRITE8_MEMBER(io_write_byte);
DECLARE_WRITE_LINE_MEMBER( fdc_intrq_w );
DECLARE_FLOPPY_FORMATS( floppy_formats );
protected:
@ -85,6 +71,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_abcbus_interface overrides
virtual void abcbus_cs(uint8_t data) override;
virtual int abcbus_csb() override;
@ -96,6 +87,15 @@ protected:
virtual void abcbus_c4(uint8_t data) override;
private:
DECLARE_WRITE_LINE_MEMBER( dma_int_w );
DECLARE_READ8_MEMBER(memory_read_byte);
DECLARE_WRITE8_MEMBER(memory_write_byte);
DECLARE_READ8_MEMBER(io_read_byte);
DECLARE_WRITE8_MEMBER(io_write_byte);
DECLARE_WRITE_LINE_MEMBER( fdc_intrq_w );
required_device<cpu_device> m_maincpu;
required_device<z80dma_device> m_dma;
required_device<fd1793_device> m_fdc;
@ -125,8 +125,9 @@ public:
// construction/destruction
abc830_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
virtual ioport_constructor device_input_ports() const override;
};
@ -139,8 +140,9 @@ public:
// construction/destruction
abc832_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
virtual ioport_constructor device_input_ports() const override;
};
@ -153,8 +155,9 @@ public:
// construction/destruction
abc834_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
virtual ioport_constructor device_input_ports() const override;
};
@ -167,8 +170,9 @@ public:
// construction/destruction
abc838_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
virtual ioport_constructor device_input_ports() const override;
};
@ -181,8 +185,9 @@ public:
// construction/destruction
abc850_floppy_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
virtual ioport_constructor device_input_ports() const override;
};

View File

@ -240,11 +240,12 @@ WRITE_LINE_MEMBER( luxor_55_21056_device::write_sasi_msg )
m_sasi_msg = state;
}
//-------------------------------------------------
// MACHINE_DRIVER( luxor_55_21056 )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( luxor_55_21056 )
MACHINE_CONFIG_MEMBER( luxor_55_21056_device::device_add_mconfig )
MCFG_CPU_ADD(Z80_TAG, Z80, XTAL_8MHz/2)
MCFG_CPU_PROGRAM_MAP(luxor_55_21056_mem)
MCFG_CPU_IO_MAP(luxor_55_21056_io)
@ -272,17 +273,6 @@ static MACHINE_CONFIG_START( luxor_55_21056 )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor luxor_55_21056_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( luxor_55_21056 );
}
//-------------------------------------------------
// INPUT_PORTS( luxor_55_21046 )
//-------------------------------------------------

View File

@ -32,11 +32,6 @@ public:
// construction/destruction
luxor_55_21056_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( sasi_status_r );
DECLARE_WRITE8_MEMBER( stat_w );
DECLARE_READ8_MEMBER( out_r );
@ -50,22 +45,16 @@ public:
DECLARE_READ8_MEMBER( sasi_rst_r );
DECLARE_WRITE8_MEMBER( sasi_rst_w );
DECLARE_READ8_MEMBER( memory_read_byte );
DECLARE_WRITE8_MEMBER( memory_write_byte );
DECLARE_READ8_MEMBER( io_read_byte );
DECLARE_WRITE8_MEMBER( io_write_byte );
DECLARE_WRITE_LINE_MEMBER( write_sasi_req );
DECLARE_WRITE_LINE_MEMBER( write_sasi_io );
DECLARE_WRITE_LINE_MEMBER( write_sasi_cd );
DECLARE_WRITE_LINE_MEMBER( write_sasi_msg );
DECLARE_WRITE_LINE_MEMBER( write_sasi_bsy );
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_abcbus_interface overrides
virtual void abcbus_cs(uint8_t data) override;
virtual uint8_t abcbus_inp() override;
@ -77,6 +66,17 @@ protected:
private:
void set_rdy(int state);
DECLARE_READ8_MEMBER( memory_read_byte );
DECLARE_WRITE8_MEMBER( memory_write_byte );
DECLARE_READ8_MEMBER( io_read_byte );
DECLARE_WRITE8_MEMBER( io_write_byte );
DECLARE_WRITE_LINE_MEMBER( write_sasi_req );
DECLARE_WRITE_LINE_MEMBER( write_sasi_io );
DECLARE_WRITE_LINE_MEMBER( write_sasi_cd );
DECLARE_WRITE_LINE_MEMBER( write_sasi_msg );
DECLARE_WRITE_LINE_MEMBER( write_sasi_bsy );
required_device<cpu_device> m_maincpu;
required_device<z80dma_device> m_dma;
required_device<scsi_port_device> m_sasibus;

View File

@ -69,10 +69,10 @@ WRITE_LINE_MEMBER( luxor_4105_device::write_sasi_cd )
//-------------------------------------------------
// MACHINE_DRIVER( luxor_4105 )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( luxor_4105 )
MACHINE_CONFIG_MEMBER( luxor_4105_device::device_add_mconfig )
MCFG_DEVICE_ADD(SASIBUS_TAG, SCSI_PORT, 0)
MCFG_SCSI_DATA_INPUT_BUFFER("sasi_data_in")
MCFG_SCSI_BSY_HANDLER(WRITELINE(luxor_4105_device, write_sasi_bsy))
@ -86,17 +86,6 @@ static MACHINE_CONFIG_START( luxor_4105 )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor luxor_4105_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( luxor_4105 );
}
//-------------------------------------------------
// INPUT_PORTS( luxor_4105 )
//-------------------------------------------------

View File

@ -38,21 +38,15 @@ public:
// construction/destruction
luxor_4105_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;
// not really public
DECLARE_WRITE_LINE_MEMBER( write_sasi_bsy );
DECLARE_WRITE_LINE_MEMBER( write_sasi_req );
DECLARE_WRITE_LINE_MEMBER( write_sasi_cd );
DECLARE_WRITE_LINE_MEMBER( write_sasi_io );
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_abcbus_interface overrides
virtual void abcbus_cs(uint8_t data) override;
virtual int abcbus_csb() override;
@ -66,6 +60,11 @@ protected:
private:
inline void update_trrq_int();
DECLARE_WRITE_LINE_MEMBER( write_sasi_bsy );
DECLARE_WRITE_LINE_MEMBER( write_sasi_req );
DECLARE_WRITE_LINE_MEMBER( write_sasi_cd );
DECLARE_WRITE_LINE_MEMBER( write_sasi_io );
required_device<scsi_port_device> m_sasibus;
required_device<output_latch_device> m_sasi_data_out;
required_device<input_buffer_device> m_sasi_data_in;

View File

@ -73,26 +73,15 @@ const tiny_rom_entry *abc_sio_device::device_rom_region() const
//-------------------------------------------------
// MACHINE_DRIVER( abc_sio )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( abc_sio )
MACHINE_CONFIG_MEMBER( abc_sio_device::device_add_mconfig )
MCFG_DEVICE_ADD(Z80CTC_TAG, Z80CTC, XTAL_4_9152MHz)
MCFG_Z80DART_ADD(Z80SIO_TAG, 0, 0, 0, 0, 0)
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor abc_sio_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc_sio );
}
//**************************************************************************
// LIVE DEVICE

View File

@ -24,15 +24,15 @@ public:
// construction/destruction
abc_sio_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_abcbus_interface overrides
virtual void abcbus_cs(uint8_t data) override;
virtual uint8_t abcbus_xmemfl(offs_t offset) override;

View File

@ -79,10 +79,10 @@ static const z80_daisy_config daisy_chain[] =
//-------------------------------------------------
// MACHINE_DRIVER( turbo_kontroller )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( turbo_kontroller )
MACHINE_CONFIG_MEMBER( turbo_kontroller_device::device_add_mconfig )
MCFG_CPU_ADD(Z80_TAG, Z80, 4000000)
MCFG_CPU_PROGRAM_MAP(turbo_kontroller_mem)
MCFG_CPU_IO_MAP(turbo_kontroller_io)
@ -90,17 +90,6 @@ static MACHINE_CONFIG_START( turbo_kontroller )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor turbo_kontroller_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( turbo_kontroller );
}
//**************************************************************************
// LIVE DEVICE

View File

@ -30,15 +30,15 @@ public:
// construction/destruction
turbo_kontroller_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_abcbus_interface overrides
virtual void abcbus_cs(uint8_t data) override;

View File

@ -124,10 +124,10 @@ DISCRETE_SOUND_END
//-------------------------------------------------
// MACHINE_DRIVER( abc77 )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( abc77 )
MACHINE_CONFIG_MEMBER( abc77_device::device_add_mconfig )
// keyboard cpu
MCFG_CPU_ADD(I8035_TAG, I8035, XTAL_4_608MHz)
MCFG_CPU_PROGRAM_MAP(abc77_map)
@ -149,17 +149,6 @@ static MACHINE_CONFIG_START( abc77 )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor abc77_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc77 );
}
//-------------------------------------------------
// INPUT_CHANGED_MEMBER( keyboard_reset )
//-------------------------------------------------

View File

@ -32,20 +32,11 @@ public:
// construction/destruction
abc77_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;
// abc_keyboard_interface overrides
virtual void txd_w(int state) override;
DECLARE_INPUT_CHANGED_MEMBER( keyboard_reset );
DECLARE_READ8_MEMBER( p1_r );
DECLARE_WRITE8_MEMBER( p2_w );
DECLARE_READ_LINE_MEMBER( t1_r );
DECLARE_WRITE_LINE_MEMBER( prog_w );
DECLARE_WRITE8_MEMBER( j3_w );
protected:
@ -56,6 +47,11 @@ protected:
virtual void device_reset() override;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
// optional information overrides
virtual 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;
enum
{
TIMER_SERIAL,
@ -84,6 +80,12 @@ protected:
// timers
emu_timer *m_serial_timer;
emu_timer *m_reset_timer;
private:
DECLARE_READ8_MEMBER( p1_r );
DECLARE_WRITE8_MEMBER( p2_w );
DECLARE_READ_LINE_MEMBER( t1_r );
DECLARE_WRITE_LINE_MEMBER( prog_w );
};

View File

@ -109,10 +109,10 @@ const tiny_rom_entry *abc800_keyboard_device::device_rom_region() const
//-------------------------------------------------
// MACHINE_DRIVER( abc800_keyboard )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( abc800_keyboard )
MACHINE_CONFIG_MEMBER( abc800_keyboard_device::device_add_mconfig )
MCFG_CPU_ADD(I8048_TAG, I8048, XTAL_5_9904MHz)
MCFG_MCS48_PORT_P1_IN_CB(READ8(abc800_keyboard_device, kb_p1_r))
MCFG_MCS48_PORT_P1_OUT_CB(WRITE8(abc800_keyboard_device, kb_p1_w))
@ -121,17 +121,6 @@ static MACHINE_CONFIG_START( abc800_keyboard )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor abc800_keyboard_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc800_keyboard );
}
//-------------------------------------------------
// INPUT_PORTS( abc800_keyboard )
//-------------------------------------------------

View File

@ -31,31 +31,30 @@ public:
// construction/destruction
abc800_keyboard_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;
// abc_keyboard_interface overrides
virtual void txd_w(int state) override;
// not really public
DECLARE_READ8_MEMBER( kb_p1_r );
DECLARE_WRITE8_MEMBER( kb_p1_w );
DECLARE_WRITE8_MEMBER( kb_p2_w );
DECLARE_READ_LINE_MEMBER( kb_t1_r );
protected:
// device-level overrides
virtual void device_start() override;
virtual void device_reset() override;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
// optional information overrides
virtual 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;
private:
inline void serial_output(int state);
inline void serial_clock();
inline void key_down(int state);
DECLARE_READ8_MEMBER( kb_p1_r );
DECLARE_WRITE8_MEMBER( kb_p1_w );
DECLARE_WRITE8_MEMBER( kb_p2_w );
DECLARE_READ_LINE_MEMBER( kb_t1_r );
required_device<cpu_device> m_maincpu;
required_ioport_array<12> m_x;

View File

@ -146,10 +146,10 @@ ADDRESS_MAP_END
//-------------------------------------------------
// MACHINE_DRIVER( abc99 )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( abc99 )
MACHINE_CONFIG_MEMBER( abc99_device::device_add_mconfig )
// keyboard CPU
MCFG_CPU_ADD(I8035_Z2_TAG, I8035, XTAL_6MHz/3) // from Z5 T0 output
MCFG_CPU_PROGRAM_MAP(abc99_z2_mem)
@ -175,17 +175,6 @@ static MACHINE_CONFIG_START( abc99 )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor abc99_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( abc99 );
}
//-------------------------------------------------
// INPUT_CHANGED_MEMBER( keyboard_reset )
//-------------------------------------------------

View File

@ -31,21 +31,12 @@ public:
// construction/destruction
abc99_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;
// abc_keyboard_interface overrides
virtual void txd_w(int state) override;
DECLARE_INPUT_CHANGED_MEMBER( keyboard_reset );
DECLARE_WRITE8_MEMBER( z2_led_w );
DECLARE_WRITE8_MEMBER( z2_p1_w );
DECLARE_READ8_MEMBER( z2_p2_r );
DECLARE_READ_LINE_MEMBER( z2_t0_r );
DECLARE_READ_LINE_MEMBER( z2_t1_r );
DECLARE_READ8_MEMBER( z5_p1_r );
DECLARE_WRITE8_MEMBER( z5_p2_w );
DECLARE_READ8_MEMBER( z5_t1_r );
@ -56,6 +47,11 @@ protected:
virtual void device_reset() override;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
// optional information overrides
virtual 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;
private:
enum
{
@ -84,6 +80,11 @@ private:
inline void key_down(int state);
inline void scan_mouse();
DECLARE_WRITE8_MEMBER( z2_p1_w );
DECLARE_READ8_MEMBER( z2_p2_r );
DECLARE_READ_LINE_MEMBER( z2_t0_r );
DECLARE_READ_LINE_MEMBER( z2_t1_r );
emu_timer *m_serial_timer;
emu_timer *m_mouse_timer;

View File

@ -59,9 +59,10 @@ const tiny_rom_entry *powermate_ide_device::device_rom_region() const
//-------------------------------------------------
// MACHINE_CONFIG_START( adam_ata )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( adam_ata )
MACHINE_CONFIG_MEMBER( powermate_ide_device::device_add_mconfig )
MCFG_ATA_INTERFACE_ADD(ATA_TAG, ata_devices, "hdd", nullptr, false)
MCFG_CENTRONICS_ADD(CENTRONICS_TAG, centronics_devices, "printer")
@ -69,17 +70,6 @@ static MACHINE_CONFIG_START( adam_ata )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor powermate_ide_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( adam_ata );
}
//**************************************************************************
// LIVE DEVICE

View File

@ -30,14 +30,14 @@ public:
// construction/destruction
powermate_ide_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;
// optional information overrides
virtual const tiny_rom_entry *device_rom_region() const override;
virtual void device_add_mconfig(machine_config &config) override;
// device_adam_expansion_slot_card_interface overrides
virtual uint8_t adam_bd_r(address_space &space, offs_t offset, uint8_t data, int bmreq, int biorq, int aux_rom_cs, int cas1, int cas2) override;
virtual void adam_bd_w(address_space &space, offs_t offset, uint8_t data, int bmreq, int biorq, int aux_rom_cs, int cas1, int cas2) override;

View File

@ -76,11 +76,12 @@ static const struct CassetteOptions adam_cassette_options =
44100 /* sample frequency */
};
//-------------------------------------------------
// MACHINE_DRIVER( adam_ddp )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( adam_ddp )
MACHINE_CONFIG_MEMBER( adam_digital_data_pack_device::device_add_mconfig )
MCFG_CPU_ADD(M6801_TAG, M6801, XTAL_4MHz)
MCFG_CPU_PROGRAM_MAP(adam_ddp_mem)
MCFG_CPU_IO_MAP(adam_ddp_io)
@ -99,17 +100,6 @@ static MACHINE_CONFIG_START( adam_ddp )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor adam_digital_data_pack_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( adam_ddp );
}
//**************************************************************************
// LIVE DEVICE

View File

@ -31,10 +31,6 @@ public:
// construction/destruction
adam_digital_data_pack_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
DECLARE_WRITE8_MEMBER( p1_w );
DECLARE_READ8_MEMBER( p2_r );
@ -45,6 +41,10 @@ protected:
// device-level overrides
virtual void device_start() override;
// optional information overrides
virtual const tiny_rom_entry *device_rom_region() const override;
virtual void device_add_mconfig(machine_config &config) override;
// device_adamnet_card_interface overrides
virtual void adamnet_reset_w(int state) override;

View File

@ -121,10 +121,10 @@ SLOT_INTERFACE_END
//-------------------------------------------------
// MACHINE_DRIVER( adam_fdc )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( adam_fdc )
MACHINE_CONFIG_MEMBER( adam_fdc_device::device_add_mconfig )
MCFG_CPU_ADD(M6801_TAG, M6801, XTAL_4MHz)
MCFG_CPU_PROGRAM_MAP(adam_fdc_mem)
MCFG_CPU_IO_MAP(adam_fdc_io)
@ -136,17 +136,6 @@ static MACHINE_CONFIG_START( adam_fdc )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor adam_fdc_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( adam_fdc );
}
//-------------------------------------------------
// INPUT_PORTS( adam_fdc )
//-------------------------------------------------

View File

@ -31,11 +31,6 @@ public:
// construction/destruction
adam_fdc_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;
// not really public
DECLARE_READ8_MEMBER( data_r );
DECLARE_READ8_MEMBER( p1_r );
@ -43,12 +38,15 @@ public:
DECLARE_READ8_MEMBER( p2_r );
DECLARE_WRITE8_MEMBER( p2_w );
DECLARE_FLOPPY_FORMATS( floppy_formats );
protected:
// device-level overrides
virtual void device_start() 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_adamnet_card_interface overrides
virtual void adamnet_reset_w(int state) override;
@ -58,6 +56,9 @@ protected:
floppy_image_device *m_floppy;
required_shared_ptr<uint8_t> m_ram;
required_ioport m_sw3;
private:
DECLARE_FLOPPY_FORMATS( floppy_formats );
};

View File

@ -70,27 +70,16 @@ ADDRESS_MAP_END
//-------------------------------------------------
// MACHINE_DRIVER( adam_kb )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( adam_kb )
MACHINE_CONFIG_MEMBER( adam_keyboard_device::device_add_mconfig )
MCFG_CPU_ADD(M6801_TAG, M6801, XTAL_4MHz)
MCFG_CPU_PROGRAM_MAP(adam_kb_mem)
MCFG_CPU_IO_MAP(adam_kb_io)
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor adam_keyboard_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( adam_kb );
}
//-------------------------------------------------
// INPUT_PORTS( adam_kb )
//-------------------------------------------------

View File

@ -29,11 +29,6 @@ public:
// construction/destruction
adam_keyboard_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;
// not really public
DECLARE_READ8_MEMBER( p1_r );
DECLARE_READ8_MEMBER( p2_r );
@ -47,6 +42,11 @@ protected:
// device-level overrides
virtual void device_start() 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_adamnet_card_interface overrides
virtual void adamnet_reset_w(int state) override;

View File

@ -70,10 +70,10 @@ ADDRESS_MAP_END
//-------------------------------------------------
// MACHINE_DRIVER( adam_prn )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( adam_prn )
MACHINE_CONFIG_MEMBER( adam_printer_device::device_add_mconfig )
MCFG_CPU_ADD(M6801_TAG, M6801, XTAL_4MHz)
MCFG_CPU_PROGRAM_MAP(adam_prn_mem)
MCFG_CPU_IO_MAP(adam_prn_io)
@ -81,17 +81,6 @@ static MACHINE_CONFIG_START( adam_prn )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor adam_printer_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( adam_prn );
}
//**************************************************************************
// LIVE DEVICE

View File

@ -29,10 +29,6 @@ public:
// construction/destruction
adam_printer_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
DECLARE_WRITE8_MEMBER( p1_w );
DECLARE_READ8_MEMBER( p2_r );
@ -45,6 +41,10 @@ protected:
// device-level overrides
virtual void device_start() override;
// optional information overrides
virtual const tiny_rom_entry *device_rom_region() const override;
virtual void device_add_mconfig(machine_config &config) override;
// device_adamnet_card_interface overrides
virtual void adamnet_reset_w(int state) override;

View File

@ -70,10 +70,10 @@ ADDRESS_MAP_END
//-------------------------------------------------
// MACHINE_DRIVER( adam_spi )
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( adam_spi )
MACHINE_CONFIG_MEMBER( adam_spi_device::device_add_mconfig )
MCFG_CPU_ADD(M6801_TAG, M6801, XTAL_4MHz)
MCFG_CPU_PROGRAM_MAP(adam_spi_mem)
MCFG_CPU_IO_MAP(adam_spi_io)
@ -90,17 +90,6 @@ static MACHINE_CONFIG_START( adam_spi )
MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor adam_spi_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( adam_spi );
}
//**************************************************************************
// LIVE DEVICE

View File

@ -32,10 +32,6 @@ public:
// construction/destruction
adam_spi_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
DECLARE_READ8_MEMBER( p2_r );
DECLARE_WRITE8_MEMBER( p2_w );
@ -44,6 +40,10 @@ protected:
// device-level overrides
virtual void device_start() override;
// optional information overrides
virtual const tiny_rom_entry *device_rom_region() const override;
virtual void device_add_mconfig(machine_config &config) override;
// device_adamnet_card_interface overrides
virtual void adamnet_reset_w(int state) override;

View File

@ -27,8 +27,7 @@
DEFINE_DEVICE_TYPE(A2232, a2232_device, "a2232", "CBM A2232 Serial Card")
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
static ADDRESS_MAP_START( iocpu_map, AS_PROGRAM, 8, a2232_device)
@ -46,7 +45,7 @@ static ADDRESS_MAP_START( iocpu_map, AS_PROGRAM, 8, a2232_device)
AM_RANGE(0xc000, 0xffff) AM_RAM AM_SHARE("shared")
ADDRESS_MAP_END
static MACHINE_CONFIG_START( a2232 )
MACHINE_CONFIG_MEMBER( a2232_device::device_add_mconfig )
// main cpu
MCFG_CPU_ADD("iocpu", M65CE02, XTAL_28_37516MHz / 8) // should run at Amiga clock 7M / 2
MCFG_CPU_PROGRAM_MAP(iocpu_map)
@ -138,11 +137,6 @@ static MACHINE_CONFIG_START( a2232 )
MCFG_RS232_CTS_HANDLER(WRITELINE(a2232_device, rs232_7_cts_w))
MACHINE_CONFIG_END
machine_config_constructor a2232_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( a2232 );
}
//**************************************************************************
// LIVE DEVICE

View File

@ -54,53 +54,25 @@ public:
// acia
DECLARE_READ8_MEMBER( acia_0_r );
DECLARE_WRITE8_MEMBER( acia_0_w );
DECLARE_WRITE_LINE_MEMBER( acia_0_irq_w );
DECLARE_READ8_MEMBER( acia_1_r );
DECLARE_WRITE8_MEMBER( acia_1_w );
DECLARE_WRITE_LINE_MEMBER( acia_1_irq_w );
DECLARE_READ8_MEMBER( acia_2_r );
DECLARE_WRITE8_MEMBER( acia_2_w );
DECLARE_WRITE_LINE_MEMBER( acia_2_irq_w );
DECLARE_READ8_MEMBER( acia_3_r );
DECLARE_WRITE8_MEMBER( acia_3_w );
DECLARE_WRITE_LINE_MEMBER( acia_3_irq_w );
DECLARE_READ8_MEMBER( acia_4_r );
DECLARE_WRITE8_MEMBER( acia_4_w );
DECLARE_WRITE_LINE_MEMBER( acia_4_irq_w );
DECLARE_READ8_MEMBER( acia_5_r );
DECLARE_WRITE8_MEMBER( acia_5_w );
DECLARE_WRITE_LINE_MEMBER( acia_5_irq_w );
DECLARE_READ8_MEMBER( acia_6_r );
DECLARE_WRITE8_MEMBER( acia_6_w );
DECLARE_WRITE_LINE_MEMBER( acia_6_irq_w );
// cia
DECLARE_READ8_MEMBER( cia_r );
DECLARE_WRITE8_MEMBER( cia_w );
DECLARE_WRITE_LINE_MEMBER( cia_irq_w );
DECLARE_READ8_MEMBER( cia_port_a_r );
DECLARE_READ8_MEMBER( cia_port_b_r );
DECLARE_WRITE8_MEMBER( cia_port_b_w );
// rs232
DECLARE_WRITE_LINE_MEMBER( rs232_1_rxd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_1_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_1_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_2_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_2_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_3_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_3_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_4_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_4_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_5_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_5_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_6_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_6_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_7_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_7_cts_w );
protected:
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
virtual void device_reset_after_children() override;
@ -127,6 +99,38 @@ private:
void update_irqs();
// acia
DECLARE_WRITE_LINE_MEMBER( acia_0_irq_w );
DECLARE_WRITE_LINE_MEMBER( acia_1_irq_w );
DECLARE_WRITE_LINE_MEMBER( acia_2_irq_w );
DECLARE_WRITE_LINE_MEMBER( acia_3_irq_w );
DECLARE_WRITE_LINE_MEMBER( acia_4_irq_w );
DECLARE_WRITE_LINE_MEMBER( acia_5_irq_w );
DECLARE_WRITE_LINE_MEMBER( acia_6_irq_w );
// cia
DECLARE_WRITE_LINE_MEMBER( cia_irq_w );
DECLARE_READ8_MEMBER( cia_port_a_r );
DECLARE_READ8_MEMBER( cia_port_b_r );
DECLARE_WRITE8_MEMBER( cia_port_b_w );
// rs232
DECLARE_WRITE_LINE_MEMBER( rs232_1_rxd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_1_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_1_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_2_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_2_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_3_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_3_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_4_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_4_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_5_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_5_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_6_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_6_cts_w );
DECLARE_WRITE_LINE_MEMBER( rs232_7_dcd_w );
DECLARE_WRITE_LINE_MEMBER( rs232_7_cts_w );
required_device<m65ce02_device> m_iocpu;
required_device<mos6551_device> m_acia_0;
required_device<mos6551_device> m_acia_1;

View File

@ -111,11 +111,10 @@ ioport_constructor a2091_device::device_input_ports() const
}
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( dmac_hdc )
MACHINE_CONFIG_MEMBER( dmac_hdc_device::device_add_mconfig )
MCFG_DMAC_ADD("dmac", 0)
MCFG_DMAC_SCSI_READ_HANDLER(READ8(dmac_hdc_device, dmac_scsi_r))
MCFG_DMAC_SCSI_WRITE_HANDLER(WRITE8(dmac_hdc_device, dmac_scsi_w))
@ -128,11 +127,6 @@ static MACHINE_CONFIG_START( dmac_hdc )
MCFG_WD33C93_IRQ_CB(WRITELINE(dmac_hdc_device, scsi_irq_w))
MACHINE_CONFIG_END
machine_config_constructor dmac_hdc_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( dmac_hdc );
}
//-------------------------------------------------
// rom_region - device-specific ROM region

View File

@ -26,17 +26,6 @@
class dmac_hdc_device : public device_t
{
public:
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual const tiny_rom_entry *device_rom_region() const override;
DECLARE_READ8_MEMBER( dmac_scsi_r );
DECLARE_WRITE8_MEMBER( dmac_scsi_w );
DECLARE_WRITE_LINE_MEMBER( dmac_int_w );
DECLARE_WRITE_LINE_MEMBER( dmac_cfgout_w ) { cfgout_w(state); }
DECLARE_WRITE_LINE_MEMBER( scsi_irq_w );
protected:
// construction/destruction
dmac_hdc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@ -45,6 +34,10 @@ protected:
virtual void device_start() override;
virtual void device_reset() override;
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
// to slot
virtual void cfgout_w(int state) = 0;
virtual void int2_w(int state) = 0;
@ -61,6 +54,13 @@ protected:
required_device<wd33c93_device> m_wdc;
std::vector<uint8_t> m_ram;
private:
DECLARE_READ8_MEMBER( dmac_scsi_r );
DECLARE_WRITE8_MEMBER( dmac_scsi_w );
DECLARE_WRITE_LINE_MEMBER( dmac_int_w );
DECLARE_WRITE_LINE_MEMBER( dmac_cfgout_w ) { cfgout_w(state); }
DECLARE_WRITE_LINE_MEMBER( scsi_irq_w );
};
// ======================> a590_device

View File

@ -54,22 +54,16 @@ DEVICE_ADDRESS_MAP_START( mmio_map, 16, buddha_device )
ADDRESS_MAP_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
static MACHINE_CONFIG_START( buddha )
MACHINE_CONFIG_MEMBER( buddha_device::device_add_mconfig )
MCFG_ATA_INTERFACE_ADD("ata_0", ata_devices, nullptr, nullptr, false)
MCFG_ATA_INTERFACE_IRQ_HANDLER(WRITELINE(buddha_device, ide_0_interrupt_w))
MCFG_ATA_INTERFACE_ADD("ata_1", ata_devices, nullptr, nullptr, false)
MCFG_ATA_INTERFACE_IRQ_HANDLER(WRITELINE(buddha_device, ide_1_interrupt_w))
MACHINE_CONFIG_END
machine_config_constructor buddha_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( buddha );
}
//-------------------------------------------------
// rom_region - device-specific ROM region
//-------------------------------------------------

View File

@ -51,12 +51,9 @@ public:
DECLARE_READ16_MEMBER( ide_1_interrupt_r );
DECLARE_WRITE16_MEMBER( ide_interrupt_enable_w );
DECLARE_WRITE_LINE_MEMBER( ide_0_interrupt_w );
DECLARE_WRITE_LINE_MEMBER( ide_1_interrupt_w );
protected:
// device-level overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
virtual void device_start() override;
@ -69,6 +66,9 @@ protected:
virtual void autoconfig_base_address(offs_t address) override;
private:
DECLARE_WRITE_LINE_MEMBER( ide_0_interrupt_w );
DECLARE_WRITE_LINE_MEMBER( ide_1_interrupt_w );
required_device<ata_interface_device> m_ata_0;
required_device<ata_interface_device> m_ata_1;

View File

@ -195,15 +195,10 @@ ioport_constructor apricot_keyboard_hle_device::device_input_ports() const
return INPUT_PORTS_NAME( keyboard );
}
static MACHINE_CONFIG_START( keyboard_components )
MACHINE_CONFIG_MEMBER( apricot_keyboard_hle_device::device_add_mconfig )
MCFG_MSM5832_ADD("rtc", XTAL_32_768kHz)
MACHINE_CONFIG_END
machine_config_constructor apricot_keyboard_hle_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( keyboard_components );
}
//**************************************************************************
// LIVE DEVICE

View File

@ -37,7 +37,7 @@ public:
protected:
// device_t overrides
virtual ioport_constructor device_input_ports() const override;
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
virtual void device_reset() override;

View File

@ -52,7 +52,7 @@ DEFINE_DEVICE_TYPE(BBC_OPUS3, bbc_opus3_device, "bbc_opus3", "Opus Challenger 3-
// MACHINE_DRIVER( opus3 )
//-------------------------------------------------
FLOPPY_FORMATS_MEMBER(floppy_formats)
FLOPPY_FORMATS_MEMBER(bbc_opus3_device::floppy_formats)
FLOPPY_ACORN_SSD_FORMAT,
FLOPPY_ACORN_DSD_FORMAT,
FLOPPY_ACORN_CPM_FORMAT,
@ -65,23 +65,6 @@ SLOT_INTERFACE_START(bbc_floppies)
SLOT_INTERFACE_END
MACHINE_CONFIG_START( opus3 )
/* fdc */
MCFG_WD1770_ADD("wd1770", XTAL_16MHz / 2)
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_opus3_device, fdc_drq_w))
MCFG_FLOPPY_DRIVE_ADD("wd1770:0", bbc_floppies, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("wd1770:1", bbc_floppies, nullptr, floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
/* ram disk */
MCFG_RAM_ADD("ramdisk")
MCFG_RAM_DEFAULT_SIZE("512K")
MCFG_RAM_EXTRA_OPTIONS("256K")
MCFG_RAM_DEFAULT_VALUE(0x00)
MACHINE_CONFIG_END
ROM_START( opus3 )
ROM_REGION(0x4000, "dfs_rom", 0)
ROM_DEFAULT_BIOS("ch103")
@ -94,14 +77,24 @@ ROM_START( opus3 )
ROM_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor bbc_opus3_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( opus3 );
}
MACHINE_CONFIG_MEMBER( bbc_opus3_device::device_add_mconfig )
/* fdc */
MCFG_WD1770_ADD("wd1770", XTAL_16MHz / 2)
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_opus3_device, fdc_drq_w))
MCFG_FLOPPY_DRIVE_ADD("wd1770:0", bbc_floppies, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("wd1770:1", bbc_floppies, nullptr, floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
/* ram disk */
MCFG_RAM_ADD("ramdisk")
MCFG_RAM_DEFAULT_SIZE("512K")
MCFG_RAM_EXTRA_OPTIONS("256K")
MCFG_RAM_DEFAULT_VALUE(0x00)
MACHINE_CONFIG_END
const tiny_rom_entry *bbc_opus3_device::device_rom_region() const
{

View File

@ -28,13 +28,6 @@ public:
// construction/destruction
bbc_opus3_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
DECLARE_FLOPPY_FORMATS(floppy_formats);
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual const tiny_rom_entry *device_rom_region() const override;
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
DECLARE_WRITE8_MEMBER(wd1770l_write);
DECLARE_WRITE8_MEMBER(page_w);
DECLARE_READ8_MEMBER(ramdisk_r);
@ -45,7 +38,15 @@ protected:
virtual void device_start() override;
virtual void device_reset() override;
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
private:
DECLARE_FLOPPY_FORMATS(floppy_formats);
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
required_memory_region m_dfs_rom;
required_device<ram_device> m_ramdisk;
required_device<wd1770_device> m_fdc;

View File

@ -23,7 +23,15 @@ DEFINE_DEVICE_TYPE(BBC_ACORN1770, bbc_acorn1770_device, "bbc_acorn1770", "Acorn
// MACHINE_DRIVER( acorn )
//-------------------------------------------------
FLOPPY_FORMATS_MEMBER( floppy_formats )
FLOPPY_FORMATS_MEMBER( bbc_acorn8271_device::floppy_formats )
FLOPPY_ACORN_SSD_FORMAT,
FLOPPY_ACORN_DSD_FORMAT,
FLOPPY_ACORN_CPM_FORMAT,
FLOPPY_TORCH_CPN_FORMAT,
FLOPPY_FSD_FORMAT
FLOPPY_FORMATS_END0
FLOPPY_FORMATS_MEMBER( bbc_acorn1770_device::floppy_formats )
FLOPPY_ACORN_SSD_FORMAT,
FLOPPY_ACORN_DSD_FORMAT,
FLOPPY_ACORN_CPM_FORMAT,
@ -39,27 +47,6 @@ static SLOT_INTERFACE_START( bbc_floppies_525 )
SLOT_INTERFACE("525qd", FLOPPY_525_QD)
SLOT_INTERFACE_END
static MACHINE_CONFIG_START( acorn8271 )
MCFG_DEVICE_ADD("i8271", I8271, 0)
MCFG_I8271_IRQ_CALLBACK(WRITELINE(bbc_acorn8271_device, fdc_intrq_w))
MCFG_I8271_HDL_CALLBACK(WRITELINE(bbc_acorn8271_device, motor_w))
MCFG_I8271_OPT_CALLBACK(WRITELINE(bbc_acorn8271_device, side_w))
MCFG_FLOPPY_DRIVE_ADD("i8271:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("i8271:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( acorn1770 )
MCFG_WD1770_ADD("wd1770", XTAL_16MHz / 2)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(bbc_acorn1770_device, fdc_intrq_w))
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_acorn1770_device, fdc_drq_w))
MCFG_FLOPPY_DRIVE_ADD("wd1770:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("wd1770:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
ROM_START( acorn8271 )
ROM_REGION(0x4000, "dfs_rom", 0)
ROM_DEFAULT_BIOS("dnfs120")
@ -137,19 +124,29 @@ ROM_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor bbc_acorn8271_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( acorn8271 );
}
MACHINE_CONFIG_MEMBER( bbc_acorn8271_device::device_add_mconfig )
MCFG_DEVICE_ADD("i8271", I8271, 0)
MCFG_I8271_IRQ_CALLBACK(WRITELINE(bbc_acorn8271_device, fdc_intrq_w))
MCFG_I8271_HDL_CALLBACK(WRITELINE(bbc_acorn8271_device, motor_w))
MCFG_I8271_OPT_CALLBACK(WRITELINE(bbc_acorn8271_device, side_w))
MCFG_FLOPPY_DRIVE_ADD("i8271:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("i8271:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
machine_config_constructor bbc_acorn1770_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( acorn1770 );
}
MACHINE_CONFIG_MEMBER( bbc_acorn1770_device::device_add_mconfig )
MCFG_WD1770_ADD("wd1770", XTAL_16MHz / 2)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(bbc_acorn1770_device, fdc_intrq_w))
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_acorn1770_device, fdc_drq_w))
MCFG_FLOPPY_DRIVE_ADD("wd1770:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("wd1770:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
const tiny_rom_entry *bbc_acorn8271_device::device_rom_region() const

View File

@ -31,22 +31,22 @@ public:
// construction/destruction
bbc_acorn8271_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
DECLARE_FLOPPY_FORMATS(floppy_formats);
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual const tiny_rom_entry *device_rom_region() const override;
DECLARE_WRITE_LINE_MEMBER(fdc_intrq_w);
DECLARE_WRITE_LINE_MEMBER(motor_w);
DECLARE_WRITE_LINE_MEMBER(side_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 const tiny_rom_entry *device_rom_region() const override;
private:
DECLARE_FLOPPY_FORMATS(floppy_formats);
DECLARE_WRITE_LINE_MEMBER(fdc_intrq_w);
DECLARE_WRITE_LINE_MEMBER(motor_w);
DECLARE_WRITE_LINE_MEMBER(side_w);
required_memory_region m_dfs_rom;
required_device<i8271_device> m_fdc;
required_device<floppy_connector> m_floppy0;
@ -62,14 +62,6 @@ public:
// construction/destruction
bbc_acorn1770_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
DECLARE_FLOPPY_FORMATS(floppy_formats);
// optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
virtual const tiny_rom_entry *device_rom_region() const override;
DECLARE_WRITE_LINE_MEMBER(fdc_intrq_w);
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
DECLARE_READ8_MEMBER(wd1770l_read);
DECLARE_WRITE8_MEMBER(wd1770l_write);
@ -78,7 +70,16 @@ protected:
virtual void device_start() override;
virtual void device_reset() override;
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
private:
DECLARE_FLOPPY_FORMATS(floppy_formats);
DECLARE_WRITE_LINE_MEMBER(fdc_intrq_w);
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
required_memory_region m_dfs_rom;
required_device<wd1770_device> m_fdc;
required_device<floppy_connector> m_floppy0;

View File

@ -25,7 +25,7 @@ DEFINE_DEVICE_TYPE(BBC_CUMANA2, bbc_cumana2_device, "bbc_cumana2", "Cumana QFS I
// MACHINE_DRIVER( cumana )
//-------------------------------------------------
FLOPPY_FORMATS_MEMBER( floppy_formats )
FLOPPY_FORMATS_MEMBER( bbc_cumanafdc_device::floppy_formats )
FLOPPY_ACORN_SSD_FORMAT,
FLOPPY_ACORN_DSD_FORMAT,
FLOPPY_FSD_FORMAT
@ -39,17 +39,6 @@ static SLOT_INTERFACE_START( bbc_floppies_525 )
SLOT_INTERFACE("525qd", FLOPPY_525_QD)
SLOT_INTERFACE_END
static MACHINE_CONFIG_START( cumana )
MCFG_MB8877_ADD("mb8877a", XTAL_16MHz / 16)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(bbc_cumanafdc_device, fdc_intrq_w))
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_cumanafdc_device, fdc_drq_w))
MCFG_WD_FDC_HLD_CALLBACK(WRITELINE(bbc_cumanafdc_device, motor_w))
MCFG_FLOPPY_DRIVE_ADD("mb8877a:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("mb8877a:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
ROM_START( cumana1 )
ROM_REGION(0x4000, "dfs_rom", 0)
ROM_DEFAULT_BIOS("qfs102")
@ -66,19 +55,30 @@ ROM_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor bbc_cumana1_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( cumana );
}
MACHINE_CONFIG_MEMBER( bbc_cumana1_device::device_add_mconfig )
MCFG_MB8877_ADD("mb8877a", XTAL_16MHz / 16)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(bbc_cumanafdc_device, fdc_intrq_w))
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_cumanafdc_device, fdc_drq_w))
MCFG_WD_FDC_HLD_CALLBACK(WRITELINE(bbc_cumanafdc_device, motor_w))
MCFG_FLOPPY_DRIVE_ADD("mb8877a:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("mb8877a:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
machine_config_constructor bbc_cumana2_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( cumana );
}
MACHINE_CONFIG_MEMBER( bbc_cumana2_device::device_add_mconfig )
MCFG_MB8877_ADD("mb8877a", XTAL_16MHz / 16)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(bbc_cumanafdc_device, fdc_intrq_w))
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_cumanafdc_device, fdc_drq_w))
MCFG_WD_FDC_HLD_CALLBACK(WRITELINE(bbc_cumanafdc_device, motor_w))
MCFG_FLOPPY_DRIVE_ADD("mb8877a:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("mb8877a:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
const tiny_rom_entry *bbc_cumana1_device::device_rom_region() const
{

View File

@ -59,7 +59,8 @@ class bbc_cumana1_device : public bbc_cumanafdc_device
public:
bbc_cumana1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual machine_config_constructor device_mconfig_additions() const override;
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
};
@ -68,7 +69,8 @@ class bbc_cumana2_device : public bbc_cumanafdc_device
public:
bbc_cumana2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual machine_config_constructor device_mconfig_additions() const override;
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
};

View File

@ -29,7 +29,7 @@ DEFINE_DEVICE_TYPE(BBC_OPUS1770, bbc_opus1770_device, "bbc_opus1770", "Opus D-DO
// MACHINE_DRIVER( opus2791 )
//-------------------------------------------------
FLOPPY_FORMATS_MEMBER( floppy_formats )
FLOPPY_FORMATS_MEMBER( bbc_opusfdc_device::floppy_formats )
FLOPPY_ACORN_SSD_FORMAT,
FLOPPY_ACORN_DSD_FORMAT,
FLOPPY_FSD_FORMAT,
@ -44,35 +44,6 @@ static SLOT_INTERFACE_START( bbc_floppies_525 )
SLOT_INTERFACE("525qd", FLOPPY_525_QD)
SLOT_INTERFACE_END
static MACHINE_CONFIG_START( opus2791 )
MCFG_WD2791_ADD("fdc", XTAL_16MHz / 16)
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_opusfdc_device, fdc_drq_w))
MCFG_WD_FDC_HLD_CALLBACK(WRITELINE(bbc_opusfdc_device, motor_w))
MCFG_FLOPPY_DRIVE_ADD("fdc:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("fdc:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( opus2793 )
MCFG_WD2793_ADD("fdc", XTAL_16MHz / 16)
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_opusfdc_device, fdc_drq_w))
MCFG_WD_FDC_HLD_CALLBACK(WRITELINE(bbc_opusfdc_device, motor_w))
MCFG_FLOPPY_DRIVE_ADD("fdc:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("fdc:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( opus1770 )
MCFG_WD1770_ADD("fdc", XTAL_16MHz / 2)
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_opusfdc_device, fdc_drq_w))
MCFG_FLOPPY_DRIVE_ADD("fdc:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("fdc:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
ROM_START( opus2791 )
ROM_REGION(0x4000, "dfs_rom", 0)
ROM_DEFAULT_BIOS("ddos315")
@ -100,25 +71,37 @@ ROM_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor bbc_opus2791_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( opus2791 );
}
MACHINE_CONFIG_MEMBER( bbc_opus2791_device::device_add_mconfig )
MCFG_WD2791_ADD("fdc", XTAL_16MHz / 16)
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_opusfdc_device, fdc_drq_w))
MCFG_WD_FDC_HLD_CALLBACK(WRITELINE(bbc_opusfdc_device, motor_w))
MCFG_FLOPPY_DRIVE_ADD("fdc:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("fdc:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
machine_config_constructor bbc_opus2793_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( opus2793 );
}
machine_config_constructor bbc_opus1770_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( opus1770 );
}
MACHINE_CONFIG_MEMBER( bbc_opus2793_device::device_add_mconfig )
MCFG_WD2793_ADD("fdc", XTAL_16MHz / 16)
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_opusfdc_device, fdc_drq_w))
MCFG_WD_FDC_HLD_CALLBACK(WRITELINE(bbc_opusfdc_device, motor_w))
MCFG_FLOPPY_DRIVE_ADD("fdc:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("fdc:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
MACHINE_CONFIG_MEMBER( bbc_opus1770_device::device_add_mconfig )
MCFG_WD1770_ADD("fdc", XTAL_16MHz / 2)
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_opusfdc_device, fdc_drq_w))
MCFG_FLOPPY_DRIVE_ADD("fdc:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("fdc:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
const tiny_rom_entry *bbc_opus2791_device::device_rom_region() const
{

View File

@ -54,7 +54,8 @@ class bbc_opus2791_device : public bbc_opusfdc_device
public:
bbc_opus2791_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual machine_config_constructor device_mconfig_additions() const override;
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
};
@ -63,7 +64,8 @@ class bbc_opus2793_device : public bbc_opusfdc_device
public:
bbc_opus2793_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual machine_config_constructor device_mconfig_additions() const override;
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
};
@ -72,7 +74,8 @@ class bbc_opus1770_device : public bbc_opusfdc_device
public:
bbc_opus1770_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual machine_config_constructor device_mconfig_additions() const override;
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
};

View File

@ -27,7 +27,7 @@ DEFINE_DEVICE_TYPE(BBC_WEDDB3, bbc_weddb3_device, "bbc_weddb3", "Watford Electro
// MACHINE_DRIVER( watford )
//-------------------------------------------------
FLOPPY_FORMATS_MEMBER( floppy_formats )
FLOPPY_FORMATS_MEMBER( bbc_watfordfdc_device::floppy_formats )
FLOPPY_ACORN_SSD_FORMAT,
FLOPPY_ACORN_DSD_FORMAT,
FLOPPY_FSD_FORMAT
@ -41,26 +41,6 @@ static SLOT_INTERFACE_START( bbc_floppies_525 )
SLOT_INTERFACE("525qd", FLOPPY_525_QD)
SLOT_INTERFACE_END
static MACHINE_CONFIG_START( weddb2 )
MCFG_WD1772_ADD("wd1772", XTAL_16MHz / 2)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(bbc_weddb2_device, fdc_intrq_w))
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_weddb2_device, fdc_drq_w))
MCFG_FLOPPY_DRIVE_ADD("wd1772:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("wd1772:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( weddb3 )
MCFG_WD1770_ADD("wd1770", XTAL_16MHz / 2)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(bbc_weddb3_device, fdc_intrq_w))
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_weddb3_device, fdc_drq_w))
MCFG_FLOPPY_DRIVE_ADD("wd1770:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("wd1770:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
ROM_START( weddb2 )
ROM_REGION(0x4000, "dfs_rom", 0)
ROM_DEFAULT_BIOS("ddfs153")
@ -81,19 +61,28 @@ ROM_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor bbc_weddb2_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( weddb2 );
}
MACHINE_CONFIG_MEMBER( bbc_weddb2_device::device_add_mconfig )
MCFG_WD1772_ADD("wd1772", XTAL_16MHz / 2)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(bbc_weddb2_device, fdc_intrq_w))
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_weddb2_device, fdc_drq_w))
MCFG_FLOPPY_DRIVE_ADD("wd1772:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("wd1772:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
machine_config_constructor bbc_weddb3_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( weddb3 );
}
MACHINE_CONFIG_MEMBER( bbc_weddb3_device::device_add_mconfig )
MCFG_WD1770_ADD("wd1770", XTAL_16MHz / 2)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(bbc_weddb3_device, fdc_intrq_w))
MCFG_WD_FDC_DRQ_CALLBACK(WRITELINE(bbc_weddb3_device, fdc_drq_w))
MCFG_FLOPPY_DRIVE_ADD("wd1770:0", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("wd1770:1", bbc_floppies_525, "525qd", floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
const tiny_rom_entry *bbc_weddb2_device::device_rom_region() const
{

View File

@ -26,14 +26,15 @@ class bbc_watfordfdc_device :
{
public:
DECLARE_FLOPPY_FORMATS(floppy_formats);
DECLARE_WRITE_LINE_MEMBER(fdc_intrq_w);
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
protected:
// construction/destruction
bbc_watfordfdc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
DECLARE_FLOPPY_FORMATS(floppy_formats);
DECLARE_WRITE_LINE_MEMBER(fdc_intrq_w);
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
};
class bbc_weddb2_device : public bbc_watfordfdc_device
@ -41,9 +42,6 @@ class bbc_weddb2_device : public bbc_watfordfdc_device
public:
bbc_weddb2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual machine_config_constructor device_mconfig_additions() const override;
virtual const tiny_rom_entry *device_rom_region() const override;
DECLARE_READ8_MEMBER(wd177xl_read);
DECLARE_WRITE8_MEMBER(wd177xl_write);
@ -52,6 +50,9 @@ protected:
virtual void device_start() override;
virtual void device_reset() override;
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
private:
required_memory_region m_dfs_rom;
required_device<wd_fdc_device_base> m_fdc;
@ -66,9 +67,6 @@ class bbc_weddb3_device : public bbc_watfordfdc_device
public:
bbc_weddb3_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual machine_config_constructor device_mconfig_additions() const override;
virtual const tiny_rom_entry *device_rom_region() const override;
DECLARE_READ8_MEMBER(wd177xl_read);
DECLARE_WRITE8_MEMBER(wd177xl_write);
@ -77,6 +75,9 @@ protected:
virtual void device_start() override;
virtual void device_reset() override;
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
private:
required_memory_region m_dfs_rom;
required_device<wd_fdc_device_base> m_fdc;

View File

@ -29,24 +29,11 @@ ROM_START( kanji )
ROM_LOAD("kanji.rom", 0x00000, 0x20000, BAD_DUMP CRC(de99a726) SHA1(65fead5d0d779b242f6e0ac25fcc9899dc343101))
ROM_END
MACHINE_CONFIG_START( kanji )
// nothing to add
MACHINE_CONFIG_END
/***************************************************************************
FUNCTION PROTOTYPES
***************************************************************************/
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor bml3bus_kanji_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( kanji );
}
//-------------------------------------------------
// rom_region - device-specific ROM region
//-------------------------------------------------

View File

@ -27,10 +27,6 @@ public:
// construction/destruction
bml3bus_kanji_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 const tiny_rom_entry *device_rom_region() const override;
DECLARE_READ8_MEMBER(bml3_kanji_r);
DECLARE_WRITE8_MEMBER(bml3_kanji_w);
@ -38,6 +34,9 @@ protected:
virtual void device_start() override;
virtual void device_reset() override;
// optional information overrides
virtual const tiny_rom_entry *device_rom_region() const override;
uint16_t m_kanji_addr;
private:

View File

@ -42,7 +42,16 @@ ROM_START( mp1802 )
ROM_LOAD( "mp1802.rom", 0xf800, 0x800, BAD_DUMP CRC(8d0dc101) SHA1(92f7d1cebecafa7472e45c4999520de5c01c6dbc))
ROM_END
MACHINE_CONFIG_START( mp1802 )
/***************************************************************************
FUNCTION PROTOTYPES
***************************************************************************/
//-------------------------------------------------
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_MEMBER( bml3bus_mp1802_device::device_add_mconfig )
MCFG_MB8866_ADD("fdc", XTAL_1MHz)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(bml3bus_mp1802_device, bml3_wd17xx_intrq_w))
@ -52,20 +61,6 @@ MACHINE_CONFIG_START( mp1802 )
MCFG_FLOPPY_DRIVE_ADD("fdc:3", mp1802_floppies, "", floppy_image_device::default_floppy_formats)
MACHINE_CONFIG_END
/***************************************************************************
FUNCTION PROTOTYPES
***************************************************************************/
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor bml3bus_mp1802_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( mp1802 );
}
//-------------------------------------------------
// rom_region - device-specific ROM region
//-------------------------------------------------

View File

@ -31,19 +31,20 @@ public:
// construction/destruction
bml3bus_mp1802_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 const tiny_rom_entry *device_rom_region() const override;
DECLARE_READ8_MEMBER(bml3_mp1802_r);
DECLARE_WRITE8_MEMBER(bml3_mp1802_w);
DECLARE_WRITE_LINE_MEMBER(bml3_wd17xx_intrq_w);
protected:
virtual void device_start() override;
virtual void device_reset() override;
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
private:
DECLARE_WRITE_LINE_MEMBER(bml3_wd17xx_intrq_w);
required_device<mb8866_device> m_fdc;
required_device<floppy_connector> m_floppy0;
required_device<floppy_connector> m_floppy1;

View File

@ -45,25 +45,20 @@ ROM_START( mp1805 )
ROM_LOAD( "mp1805.rom", 0xf800, 0x0800, BAD_DUMP CRC(b532d8d9) SHA1(6f1160356d5bf64b5926b1fdb60db414edf65f22))
ROM_END
MACHINE_CONFIG_START( mp1805 )
MCFG_DEVICE_ADD( "mc6843", MC6843, 0 )
MCFG_MC6843_IRQ_CALLBACK(WRITELINE(bml3bus_mp1805_device, bml3_mc6843_intrq_w))
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(bml3_mp1805_floppy_interface)
MACHINE_CONFIG_END
/***************************************************************************
FUNCTION PROTOTYPES
***************************************************************************/
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
// device_add_mconfig - add device configuration
//-------------------------------------------------
machine_config_constructor bml3bus_mp1805_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( mp1805 );
}
MACHINE_CONFIG_MEMBER( bml3bus_mp1805_device::device_add_mconfig )
MCFG_DEVICE_ADD( "mc6843", MC6843, 0 )
MCFG_MC6843_IRQ_CALLBACK(WRITELINE(bml3bus_mp1805_device, bml3_mc6843_intrq_w))
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(bml3_mp1805_floppy_interface)
MACHINE_CONFIG_END
//-------------------------------------------------
// rom_region - device-specific ROM region

View File

@ -30,22 +30,22 @@ public:
// construction/destruction
bml3bus_mp1805_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 const tiny_rom_entry *device_rom_region() const override;
DECLARE_READ8_MEMBER(bml3_mp1805_r);
DECLARE_WRITE8_MEMBER(bml3_mp1805_w);
DECLARE_WRITE_LINE_MEMBER( bml3_mc6843_intrq_w );
protected:
virtual void device_start() override;
virtual void device_reset() override;
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
required_device<mc6843_device> m_mc6843;
private:
DECLARE_WRITE_LINE_MEMBER( bml3_mc6843_intrq_w );
uint8_t *m_rom;
};

View File

@ -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")
@ -31,17 +31,6 @@ static MACHINE_CONFIG_START( c64_16kb )
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 )
//-------------------------------------------------

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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
//**************************************************************************

View File

@ -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;

View File

@ -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
//**************************************************************************

View File

@ -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;

View File

@ -27,26 +27,15 @@ 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 )
//-------------------------------------------------

View File

@ -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;

View File

@ -71,26 +71,15 @@ 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 )
//-------------------------------------------------

View File

@ -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()); } }

View File

@ -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

View File

@ -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); }

View File

@ -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)
@ -53,17 +54,6 @@ static MACHINE_CONFIG_START( c64_ide64 )
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 )
//-------------------------------------------------

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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))
@ -104,17 +104,6 @@ static MACHINE_CONFIG_START( c64_magic_formel )
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 )
//-------------------------------------------------

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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

View File

@ -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;
};

View File

@ -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

View File

@ -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;
};

View File

@ -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

View File

@ -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;

View File

@ -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

View File

@ -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;
};

View File

@ -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

View File

@ -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;
};

View File

@ -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
//**************************************************************************

View File

@ -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;

View File

@ -41,25 +41,14 @@ 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 )
//-------------------------------------------------

View File

@ -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;

Some files were not shown because too many files have changed in this diff Show More