some more device_add_mconfig. Only devices/bus remains. (nw)

This commit is contained in:
Ivan Vangelista 2017-06-02 08:46:37 +02:00
parent 9881020929
commit dc7eec650a
16 changed files with 90 additions and 133 deletions

View File

@ -1344,16 +1344,12 @@ void floppy_sound_device::sound_stream_update(sound_stream &stream, stream_sampl
#define FLOPSPK "flopsndout" #define FLOPSPK "flopsndout"
MACHINE_CONFIG_START( floppy_img ) MACHINE_CONFIG_MEMBER( floppy_image_device::device_add_mconfig )
MCFG_SPEAKER_STANDARD_MONO(FLOPSPK) MCFG_SPEAKER_STANDARD_MONO(FLOPSPK)
MCFG_SOUND_ADD(FLOPSND_TAG, FLOPPYSOUND, 44100) MCFG_SOUND_ADD(FLOPSND_TAG, FLOPPYSOUND, 44100)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, FLOPSPK, 0.5) MCFG_SOUND_ROUTE(ALL_OUTPUTS, FLOPSPK, 0.5)
MACHINE_CONFIG_END MACHINE_CONFIG_END
machine_config_constructor floppy_image_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( floppy_img );
}
DEFINE_DEVICE_TYPE(FLOPPYSOUND, floppy_sound_device, "flopsnd", "Floppy sound") DEFINE_DEVICE_TYPE(FLOPPYSOUND, floppy_sound_device, "flopsnd", "Floppy sound")

View File

@ -149,7 +149,7 @@ protected:
virtual void device_reset() override; virtual void device_reset() override;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
virtual machine_config_constructor device_mconfig_additions() const override; virtual void device_add_mconfig(machine_config &config) override;
virtual void setup_characteristics() = 0; virtual void setup_characteristics() = 0;

View File

@ -248,10 +248,10 @@ FLOPPY_FORMATS_MEMBER( pdc_device::floppy_formats )
FLOPPY_FORMATS_END FLOPPY_FORMATS_END
//------------------------------------------------- //-------------------------------------------------
// MACHINE_DRIVER( pdc ) // device_add_mconfig - add device configuration
//------------------------------------------------- //-------------------------------------------------
static MACHINE_CONFIG_START( pdc ) MACHINE_CONFIG_MEMBER( pdc_device::device_add_mconfig )
/* CPU - Zilog Z0840006PSC */ /* CPU - Zilog Z0840006PSC */
MCFG_CPU_ADD(Z80_TAG, Z80, XTAL_10MHz / 2) MCFG_CPU_ADD(Z80_TAG, Z80, XTAL_10MHz / 2)
MCFG_CPU_PROGRAM_MAP(pdc_mem) MCFG_CPU_PROGRAM_MAP(pdc_mem)
@ -284,16 +284,6 @@ static MACHINE_CONFIG_START( pdc )
MCFG_MFM_HARDDISK_CONN_ADD("h1", pdc_harddisks, nullptr, MFM_BYTE, 3000, 20, MFMHD_GEN_FORMAT) MCFG_MFM_HARDDISK_CONN_ADD("h1", pdc_harddisks, nullptr, MFM_BYTE, 3000, 20, MFMHD_GEN_FORMAT)
MACHINE_CONFIG_END MACHINE_CONFIG_END
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor pdc_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( pdc );
}
ioport_constructor pdc_device::device_input_ports() const ioport_constructor pdc_device::device_input_ports() const
{ {
return INPUT_PORTS_NAME( pdc_ports ); return INPUT_PORTS_NAME( pdc_ports );

View File

@ -36,23 +36,11 @@ public:
/* Constructor and Destructor */ /* Constructor and Destructor */
pdc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); pdc_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;
virtual const tiny_rom_entry *device_rom_region() const override;
/* Callbacks */ /* Callbacks */
template <class Object> static devcb_base &m68k_r_callback(device_t &device, Object &&cb) { return downcast<pdc_device &>(device).m_m68k_r_cb.set_callback(std::forward<Object>(cb)); } template <class Object> static devcb_base &m68k_r_callback(device_t &device, Object &&cb) { return downcast<pdc_device &>(device).m_m68k_r_cb.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &m68k_w_callback(device_t &device, Object &&cb) { return downcast<pdc_device &>(device).m_m68k_w_cb.set_callback(std::forward<Object>(cb)); } template <class Object> static devcb_base &m68k_w_callback(device_t &device, Object &&cb) { return downcast<pdc_device &>(device).m_m68k_w_cb.set_callback(std::forward<Object>(cb)); }
/* Read and Write members */ /* Read and Write members */
DECLARE_WRITE_LINE_MEMBER(i8237_hreq_w);
DECLARE_WRITE_LINE_MEMBER(i8237_eop_w);
DECLARE_READ8_MEMBER(i8237_dma_mem_r);
DECLARE_WRITE8_MEMBER(i8237_dma_mem_w);
DECLARE_READ8_MEMBER(i8237_fdc_dma_r);
DECLARE_WRITE8_MEMBER(i8237_fdc_dma_w);
DECLARE_WRITE_LINE_MEMBER(hdd_irq); DECLARE_WRITE_LINE_MEMBER(hdd_irq);
DECLARE_READ8_MEMBER(p0_7_r); DECLARE_READ8_MEMBER(p0_7_r);
@ -64,12 +52,6 @@ public:
DECLARE_READ8_MEMBER(p39_r); DECLARE_READ8_MEMBER(p39_r);
DECLARE_WRITE8_MEMBER(p50_5f_w); DECLARE_WRITE8_MEMBER(p50_5f_w);
DECLARE_READ8_MEMBER(m68k_dma_r);
DECLARE_WRITE8_MEMBER(m68k_dma_w);
DECLARE_WRITE_LINE_MEMBER(fdc_irq);
DECLARE_FLOPPY_FORMATS( floppy_formats );
/* Main CPU accessible registers */ /* Main CPU accessible registers */
uint8_t reg_p0; uint8_t reg_p0;
uint8_t reg_p1; uint8_t reg_p1;
@ -87,6 +69,24 @@ protected:
/* Device-level overrides */ /* Device-level overrides */
virtual void device_start() override; virtual void device_start() override;
virtual void device_reset() 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;
virtual const tiny_rom_entry *device_rom_region() const override;
private:
DECLARE_WRITE_LINE_MEMBER(i8237_hreq_w);
DECLARE_WRITE_LINE_MEMBER(i8237_eop_w);
DECLARE_READ8_MEMBER(i8237_dma_mem_r);
DECLARE_WRITE8_MEMBER(i8237_dma_mem_w);
DECLARE_READ8_MEMBER(i8237_fdc_dma_r);
DECLARE_WRITE8_MEMBER(i8237_fdc_dma_w);
DECLARE_READ8_MEMBER(m68k_dma_r);
DECLARE_WRITE8_MEMBER(m68k_dma_w);
DECLARE_WRITE_LINE_MEMBER(fdc_irq);
DECLARE_FLOPPY_FORMATS( floppy_formats );
/* Protected variables */ /* Protected variables */
//uint32_t fdd_68k_dma_address; //uint32_t fdd_68k_dma_address;

View File

@ -126,18 +126,13 @@ DEFINE_DEVICE_TYPE(DUSCC68562, duscc68562_device, "duscc68562", "Philips
DEFINE_DEVICE_TYPE(DUSCC68C562, duscc68c562_device, "duscc68c562", "Philips SCN68C562 Dual SCC") DEFINE_DEVICE_TYPE(DUSCC68C562, duscc68c562_device, "duscc68c562", "Philips SCN68C562 Dual SCC")
//------------------------------------------------- //-------------------------------------------------
// device_mconfig_additions - // device_add_mconfig - add device configuration
//------------------------------------------------- //-------------------------------------------------
MACHINE_CONFIG_START( duscc ) MACHINE_CONFIG_MEMBER( duscc_device::device_add_mconfig )
MCFG_DEVICE_ADD(CHANA_TAG, DUSCC_CHANNEL, 0) MCFG_DEVICE_ADD(CHANA_TAG, DUSCC_CHANNEL, 0)
MCFG_DEVICE_ADD(CHANB_TAG, DUSCC_CHANNEL, 0) MCFG_DEVICE_ADD(CHANB_TAG, DUSCC_CHANNEL, 0)
MACHINE_CONFIG_END MACHINE_CONFIG_END
machine_config_constructor duscc_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( duscc );
}
//************************************************************************** //**************************************************************************
// LIVE DEVICE // LIVE DEVICE
//************************************************************************** //**************************************************************************

View File

@ -668,7 +668,7 @@ protected:
// device-level overrides // device-level overrides
virtual void device_start() override; virtual void device_start() override;
virtual void device_reset() override; virtual void device_reset() override;
virtual machine_config_constructor device_mconfig_additions() const override; virtual void device_add_mconfig(machine_config &config) override;
// internal interrupt management // internal interrupt management
void check_interrupts(); void check_interrupts();

View File

@ -328,7 +328,7 @@ void generic_terminal_device::kbd_put(u8 data)
VIDEO HARDWARE VIDEO HARDWARE
***************************************************************************/ ***************************************************************************/
static MACHINE_CONFIG_START( generic_terminal ) MACHINE_CONFIG_MEMBER( generic_terminal_device::device_add_mconfig )
MCFG_SCREEN_ADD_MONOCHROME(TERMINAL_SCREEN_TAG, RASTER, rgb_t::white()) MCFG_SCREEN_ADD_MONOCHROME(TERMINAL_SCREEN_TAG, RASTER, rgb_t::white())
MCFG_SCREEN_REFRESH_RATE(50) MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
@ -346,11 +346,6 @@ static MACHINE_CONFIG_START( generic_terminal )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bell", 0.50) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bell", 0.50)
MACHINE_CONFIG_END MACHINE_CONFIG_END
machine_config_constructor generic_terminal_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME(generic_terminal);
}
void generic_terminal_device::device_start() void generic_terminal_device::device_start()
{ {
m_buffer = std::make_unique<uint8_t []>(m_width * m_height); m_buffer = std::make_unique<uint8_t []>(m_width * m_height);

View File

@ -29,20 +29,14 @@ INPUT_PORTS_EXTERN( generic_terminal );
class generic_terminal_device : public device_t class generic_terminal_device : public device_t
{ {
public: public:
static constexpr unsigned TERMINAL_WIDTH = 80;
static constexpr unsigned TERMINAL_HEIGHT = 24;
generic_terminal_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); generic_terminal_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
template <class Object> static void set_keyboard_callback(device_t &device, Object &&cb) template <class Object> static void set_keyboard_callback(device_t &device, Object &&cb)
{ downcast<generic_terminal_device &>(device).m_keyboard_cb = std::forward<Object>(cb); } { downcast<generic_terminal_device &>(device).m_keyboard_cb = std::forward<Object>(cb); }
DECLARE_WRITE8_MEMBER(write) { term_write(data); } DECLARE_WRITE8_MEMBER(write) { term_write(data); }
void kbd_put(u8 data);
uint32_t update(screen_device &device, bitmap_rgb32 &bitmap, const rectangle &cliprect);
virtual ioport_constructor device_input_ports() const override; void kbd_put(u8 data);
virtual machine_config_constructor device_mconfig_additions() const override;
protected: protected:
enum { BELL_TIMER_ID = 20'000 }; enum { BELL_TIMER_ID = 20'000 };
@ -53,11 +47,16 @@ protected:
virtual void device_start() override; virtual void device_start() override;
virtual void device_reset() override; virtual void device_reset() override;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
virtual ioport_constructor device_input_ports() const override;
virtual void device_add_mconfig(machine_config &config) override;
virtual void send_key(uint8_t code) { if (!m_keyboard_cb.isnull()) m_keyboard_cb(code); } virtual void send_key(uint8_t code) { if (!m_keyboard_cb.isnull()) m_keyboard_cb(code); }
optional_device<palette_device> m_palette; optional_device<palette_device> m_palette;
required_ioport m_io_term_conf; required_ioport m_io_term_conf;
static constexpr unsigned TERMINAL_WIDTH = 80;
static constexpr unsigned TERMINAL_HEIGHT = 24;
unsigned const m_width; unsigned const m_width;
unsigned const m_height; unsigned const m_height;
std::unique_ptr<uint8_t []> m_buffer; std::unique_ptr<uint8_t []> m_buffer;
@ -67,6 +66,7 @@ private:
void scroll_line(); void scroll_line();
void write_char(uint8_t data); void write_char(uint8_t data);
void clear(); void clear();
uint32_t update(screen_device &device, bitmap_rgb32 &bitmap, const rectangle &cliprect);
uint8_t m_framecnt; uint8_t m_framecnt;
uint8_t m_y_pos; uint8_t m_y_pos;

View File

@ -21,7 +21,7 @@
DEFINE_DEVICE_TYPE(WD7600, wd7600_device, "wd7600", "Western Digital WD7600 chipset") DEFINE_DEVICE_TYPE(WD7600, wd7600_device, "wd7600", "Western Digital WD7600 chipset")
static MACHINE_CONFIG_START( wd7600 ) MACHINE_CONFIG_MEMBER( wd7600_device::device_add_mconfig )
MCFG_DEVICE_ADD("dma1", AM9517A, 0) MCFG_DEVICE_ADD("dma1", AM9517A, 0)
MCFG_I8237_OUT_HREQ_CB(DEVWRITELINE("dma2", am9517a_device, dreq0_w)) MCFG_I8237_OUT_HREQ_CB(DEVWRITELINE("dma2", am9517a_device, dreq0_w))
MCFG_I8237_OUT_EOP_CB(WRITELINE(wd7600_device, dma1_eop_w)) MCFG_I8237_OUT_EOP_CB(WRITELINE(wd7600_device, dma1_eop_w))
@ -69,10 +69,6 @@ static MACHINE_CONFIG_START( wd7600 )
MCFG_MC146818_CENTURY_INDEX(0x32) MCFG_MC146818_CENTURY_INDEX(0x32)
MACHINE_CONFIG_END MACHINE_CONFIG_END
machine_config_constructor wd7600_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( wd7600 );
}
void wd7600_device::static_set_cputag(device_t &device, const char *tag) void wd7600_device::static_set_cputag(device_t &device, const char *tag)
{ {

View File

@ -66,9 +66,6 @@ public:
// construction/destruction // construction/destruction
wd7600_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); wd7600_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;
// callbacks // callbacks
template <class Object> devcb_base &set_ior_callback(Object &&ior) { return m_read_ior.set_callback(std::forward<Object>(ior)); } template <class Object> devcb_base &set_ior_callback(Object &&ior) { return m_read_ior.set_callback(std::forward<Object>(ior)); }
template <class Object> devcb_base &set_iow_callback(Object &&iow) { return m_write_iow.set_callback(std::forward<Object>(iow)); } template <class Object> devcb_base &set_iow_callback(Object &&iow) { return m_write_iow.set_callback(std::forward<Object>(iow)); }
@ -86,51 +83,6 @@ public:
static void static_set_biostag(device_t &device, const char *tag); static void static_set_biostag(device_t &device, const char *tag);
static void static_set_keybctag(device_t &device, const char *tag); static void static_set_keybctag(device_t &device, const char *tag);
DECLARE_WRITE_LINE_MEMBER(rtc_irq_w);
DECLARE_WRITE_LINE_MEMBER( pic1_int_w ) { m_write_intr(state); }
DECLARE_READ8_MEMBER( pic1_slave_ack_r );
DECLARE_WRITE_LINE_MEMBER( ctc_out1_w );
DECLARE_WRITE_LINE_MEMBER( ctc_out2_w );
DECLARE_WRITE8_MEMBER( rtc_w );
DECLARE_WRITE8_MEMBER( keyb_cmd_w );
DECLARE_WRITE8_MEMBER( keyb_data_w );
DECLARE_READ8_MEMBER( keyb_data_r );
DECLARE_READ8_MEMBER( keyb_status_r );
DECLARE_WRITE8_MEMBER( a20_reset_w );
DECLARE_READ8_MEMBER( a20_reset_r );
DECLARE_READ8_MEMBER( portb_r );
DECLARE_WRITE8_MEMBER( portb_w );
DECLARE_WRITE8_MEMBER( dma_page_w ) { m_dma_page[offset & 0x0f] = data; }
DECLARE_READ8_MEMBER( dma_page_r ) { return m_dma_page[offset & 0x0f]; }
DECLARE_READ8_MEMBER( dma_read_byte );
DECLARE_WRITE8_MEMBER( dma_write_byte );
DECLARE_READ8_MEMBER( dma_read_word );
DECLARE_WRITE8_MEMBER( dma_write_word );
DECLARE_WRITE_LINE_MEMBER( dma1_eop_w );
DECLARE_READ8_MEMBER( dma1_ior0_r ) { return m_read_ior(0); }
DECLARE_READ8_MEMBER( dma1_ior1_r ) { return m_read_ior(1); }
DECLARE_READ8_MEMBER( dma1_ior2_r ) { return m_read_ior(2); }
DECLARE_READ8_MEMBER( dma1_ior3_r ) { return m_read_ior(3); }
DECLARE_READ8_MEMBER( dma2_ior1_r ) { uint16_t result = m_read_ior(5); m_dma_high_byte = result >> 8; return result; }
DECLARE_READ8_MEMBER( dma2_ior2_r ) { uint16_t result = m_read_ior(6); m_dma_high_byte = result >> 8; return result; }
DECLARE_READ8_MEMBER( dma2_ior3_r ) { uint16_t result = m_read_ior(7); m_dma_high_byte = result >> 8; return result; }
DECLARE_WRITE8_MEMBER( dma1_iow0_w ) { m_write_iow(0, data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma1_iow1_w ) { m_write_iow(1, data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma1_iow2_w ) { m_write_iow(2, data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma1_iow3_w ) { m_write_iow(3, data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma2_iow1_w ) { m_write_iow(5, (m_dma_high_byte << 8) | data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma2_iow2_w ) { m_write_iow(6, (m_dma_high_byte << 8) | data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma2_iow3_w ) { m_write_iow(7, (m_dma_high_byte << 8) | data, 0xffff); }
DECLARE_WRITE_LINE_MEMBER( dma1_dack0_w ) { set_dma_channel(0, state); }
DECLARE_WRITE_LINE_MEMBER( dma1_dack1_w ) { set_dma_channel(1, state); }
DECLARE_WRITE_LINE_MEMBER( dma1_dack2_w ) { set_dma_channel(2, state); }
DECLARE_WRITE_LINE_MEMBER( dma1_dack3_w ) { set_dma_channel(3, state); }
DECLARE_WRITE_LINE_MEMBER( dma2_dack0_w );
DECLARE_WRITE_LINE_MEMBER( dma2_dack1_w ) { set_dma_channel(5, state); }
DECLARE_WRITE_LINE_MEMBER( dma2_dack2_w ) { set_dma_channel(6, state); }
DECLARE_WRITE_LINE_MEMBER( dma2_dack3_w ) { set_dma_channel(7, state); }
DECLARE_WRITE_LINE_MEMBER( dma2_hreq_w ) { m_write_hold(state); }
// input lines // input lines
DECLARE_WRITE_LINE_MEMBER( irq01_w ) { m_pic1->ir1_w(state); } DECLARE_WRITE_LINE_MEMBER( irq01_w ) { m_pic1->ir1_w(state); }
DECLARE_WRITE_LINE_MEMBER( irq03_w ) { m_pic1->ir3_w(state); } DECLARE_WRITE_LINE_MEMBER( irq03_w ) { m_pic1->ir3_w(state); }
@ -178,8 +130,55 @@ protected:
// device-level overrides // device-level overrides
virtual void device_start() override; virtual void device_start() override;
virtual void device_reset() override; virtual void device_reset() override;
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
private: private:
DECLARE_WRITE_LINE_MEMBER(rtc_irq_w);
DECLARE_WRITE_LINE_MEMBER( pic1_int_w ) { m_write_intr(state); }
DECLARE_READ8_MEMBER( pic1_slave_ack_r );
DECLARE_WRITE_LINE_MEMBER( ctc_out1_w );
DECLARE_WRITE_LINE_MEMBER( ctc_out2_w );
DECLARE_WRITE8_MEMBER( rtc_w );
DECLARE_WRITE8_MEMBER( keyb_cmd_w );
DECLARE_WRITE8_MEMBER( keyb_data_w );
DECLARE_READ8_MEMBER( keyb_data_r );
DECLARE_READ8_MEMBER( keyb_status_r );
DECLARE_WRITE8_MEMBER( a20_reset_w );
DECLARE_READ8_MEMBER( a20_reset_r );
DECLARE_READ8_MEMBER( portb_r );
DECLARE_WRITE8_MEMBER( portb_w );
DECLARE_WRITE8_MEMBER( dma_page_w ) { m_dma_page[offset & 0x0f] = data; }
DECLARE_READ8_MEMBER( dma_page_r ) { return m_dma_page[offset & 0x0f]; }
DECLARE_READ8_MEMBER( dma_read_byte );
DECLARE_WRITE8_MEMBER( dma_write_byte );
DECLARE_READ8_MEMBER( dma_read_word );
DECLARE_WRITE8_MEMBER( dma_write_word );
DECLARE_WRITE_LINE_MEMBER( dma1_eop_w );
DECLARE_READ8_MEMBER( dma1_ior0_r ) { return m_read_ior(0); }
DECLARE_READ8_MEMBER( dma1_ior1_r ) { return m_read_ior(1); }
DECLARE_READ8_MEMBER( dma1_ior2_r ) { return m_read_ior(2); }
DECLARE_READ8_MEMBER( dma1_ior3_r ) { return m_read_ior(3); }
DECLARE_READ8_MEMBER( dma2_ior1_r ) { uint16_t result = m_read_ior(5); m_dma_high_byte = result >> 8; return result; }
DECLARE_READ8_MEMBER( dma2_ior2_r ) { uint16_t result = m_read_ior(6); m_dma_high_byte = result >> 8; return result; }
DECLARE_READ8_MEMBER( dma2_ior3_r ) { uint16_t result = m_read_ior(7); m_dma_high_byte = result >> 8; return result; }
DECLARE_WRITE8_MEMBER( dma1_iow0_w ) { m_write_iow(0, data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma1_iow1_w ) { m_write_iow(1, data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma1_iow2_w ) { m_write_iow(2, data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma1_iow3_w ) { m_write_iow(3, data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma2_iow1_w ) { m_write_iow(5, (m_dma_high_byte << 8) | data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma2_iow2_w ) { m_write_iow(6, (m_dma_high_byte << 8) | data, 0xffff); }
DECLARE_WRITE8_MEMBER( dma2_iow3_w ) { m_write_iow(7, (m_dma_high_byte << 8) | data, 0xffff); }
DECLARE_WRITE_LINE_MEMBER( dma1_dack0_w ) { set_dma_channel(0, state); }
DECLARE_WRITE_LINE_MEMBER( dma1_dack1_w ) { set_dma_channel(1, state); }
DECLARE_WRITE_LINE_MEMBER( dma1_dack2_w ) { set_dma_channel(2, state); }
DECLARE_WRITE_LINE_MEMBER( dma1_dack3_w ) { set_dma_channel(3, state); }
DECLARE_WRITE_LINE_MEMBER( dma2_dack0_w );
DECLARE_WRITE_LINE_MEMBER( dma2_dack1_w ) { set_dma_channel(5, state); }
DECLARE_WRITE_LINE_MEMBER( dma2_dack2_w ) { set_dma_channel(6, state); }
DECLARE_WRITE_LINE_MEMBER( dma2_dack3_w ) { set_dma_channel(7, state); }
DECLARE_WRITE_LINE_MEMBER( dma2_hreq_w ) { m_write_hold(state); }
devcb_read16 m_read_ior; devcb_read16 m_read_ior;
devcb_write16 m_write_iow; devcb_write16 m_write_iow;
devcb_write8 m_write_tc; devcb_write8 m_write_tc;

View File

@ -56,20 +56,14 @@ DEFINE_DEVICE_TYPE(UPD7201, upd7201_device, "upd7201", "NEC uPD
//------------------------------------------------- //-------------------------------------------------
// device_mconfig_additions - // device_add_mconfig - add device configuration
//------------------------------------------------- //-------------------------------------------------
MACHINE_CONFIG_START( z80dart ) MACHINE_CONFIG_MEMBER( z80dart_device::device_add_mconfig )
MCFG_DEVICE_ADD(CHANA_TAG, Z80DART_CHANNEL, 0) MCFG_DEVICE_ADD(CHANA_TAG, Z80DART_CHANNEL, 0)
MCFG_DEVICE_ADD(CHANB_TAG, Z80DART_CHANNEL, 0) MCFG_DEVICE_ADD(CHANB_TAG, Z80DART_CHANNEL, 0)
MACHINE_CONFIG_END MACHINE_CONFIG_END
machine_config_constructor z80dart_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( z80dart );
}
//************************************************************************** //**************************************************************************
// LIVE DEVICE // LIVE DEVICE

View File

@ -545,7 +545,7 @@ protected:
// device-level overrides // device-level overrides
virtual void device_start() override; virtual void device_start() override;
virtual void device_reset() override; virtual void device_reset() override;
virtual machine_config_constructor device_mconfig_additions() const override; virtual void device_add_mconfig(machine_config &config) override;
// device_z80daisy_interface overrides // device_z80daisy_interface overrides
virtual int z80daisy_irq_state() override; virtual int z80daisy_irq_state() override;

View File

@ -146,17 +146,13 @@ DEFINE_DEVICE_TYPE(SCC85233, scc85233_device, "scc85233", "Zilog Z85
DEFINE_DEVICE_TYPE(SCC8523L, scc8523l_device, "scc8523l", "Zilog Z8523L SCC") DEFINE_DEVICE_TYPE(SCC8523L, scc8523l_device, "scc8523l", "Zilog Z8523L SCC")
//------------------------------------------------- //-------------------------------------------------
// device_mconfig_additions - // device_add_mconfig - add device configuration
//------------------------------------------------- //-------------------------------------------------
MACHINE_CONFIG_START( z80scc ) MACHINE_CONFIG_MEMBER( z80scc_device::device_add_mconfig )
MCFG_DEVICE_ADD(CHANA_TAG, Z80SCC_CHANNEL, 0) MCFG_DEVICE_ADD(CHANA_TAG, Z80SCC_CHANNEL, 0)
MCFG_DEVICE_ADD(CHANB_TAG, Z80SCC_CHANNEL, 0) MCFG_DEVICE_ADD(CHANB_TAG, Z80SCC_CHANNEL, 0)
MACHINE_CONFIG_END MACHINE_CONFIG_END
machine_config_constructor z80scc_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( z80scc );
}
//************************************************************************** //**************************************************************************
// LIVE DEVICE // LIVE DEVICE

View File

@ -722,7 +722,7 @@ protected:
// device-level overrides // device-level overrides
virtual void device_start() override; virtual void device_start() override;
virtual void device_reset() override; virtual void device_reset() override;
virtual machine_config_constructor device_mconfig_additions() const override; virtual void device_add_mconfig(machine_config &config) override;
// device_z80daisy_interface overrides // device_z80daisy_interface overrides
virtual int z80daisy_irq_state() override; virtual int z80daisy_irq_state() override;

View File

@ -104,17 +104,13 @@ DEFINE_DEVICE_TYPE(UPD7201_NEW, upd7201_new_device, "upd7201_new", "NEC uP
DEFINE_DEVICE_TYPE(I8274_NEW, i8274_new_device, "i8274_new", "Intel 8274 MPSC (new)") // Remove trailing N when z80dart.cpp's 8274 implementation is fully replaced DEFINE_DEVICE_TYPE(I8274_NEW, i8274_new_device, "i8274_new", "Intel 8274 MPSC (new)") // Remove trailing N when z80dart.cpp's 8274 implementation is fully replaced
//------------------------------------------------- //-------------------------------------------------
// device_mconfig_additions - // device_add_mconfig - add device configuration
//------------------------------------------------- //-------------------------------------------------
MACHINE_CONFIG_START( z80sio ) MACHINE_CONFIG_MEMBER( z80sio_device::device_add_mconfig )
MCFG_DEVICE_ADD(CHANA_TAG, Z80SIO_CHANNEL, 0) MCFG_DEVICE_ADD(CHANA_TAG, Z80SIO_CHANNEL, 0)
MCFG_DEVICE_ADD(CHANB_TAG, Z80SIO_CHANNEL, 0) MCFG_DEVICE_ADD(CHANB_TAG, Z80SIO_CHANNEL, 0)
MACHINE_CONFIG_END MACHINE_CONFIG_END
machine_config_constructor z80sio_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( z80sio );
}
//************************************************************************** //**************************************************************************
// LIVE DEVICE // LIVE DEVICE

View File

@ -499,7 +499,7 @@ protected:
// device-level overrides // device-level overrides
virtual void device_start() override; virtual void device_start() override;
virtual void device_reset() override; virtual void device_reset() override;
virtual machine_config_constructor device_mconfig_additions() const override; virtual void device_add_mconfig(machine_config &config) override;
// device_z80daisy_interface overrides // device_z80daisy_interface overrides
virtual int z80daisy_irq_state() override; virtual int z80daisy_irq_state() override;