diff options
-rw-r--r-- | src/emu/bus/a2bus/a2ssc.c | 5 | ||||
-rw-r--r-- | src/emu/bus/c64/swiftlink.c | 5 | ||||
-rw-r--r-- | src/emu/bus/c64/turbo232.c | 5 | ||||
-rw-r--r-- | src/emu/bus/pet/superpet.c | 5 | ||||
-rw-r--r-- | src/emu/machine/mos6551.c | 37 | ||||
-rw-r--r-- | src/emu/machine/mos6551.h | 36 | ||||
-rw-r--r-- | src/mess/drivers/aim65_40.c | 2 | ||||
-rw-r--r-- | src/mess/drivers/apple3.c | 2 | ||||
-rw-r--r-- | src/mess/drivers/cbm2.c | 21 | ||||
-rw-r--r-- | src/mess/drivers/clcd.c | 2 | ||||
-rw-r--r-- | src/mess/drivers/concept.c | 4 | ||||
-rw-r--r-- | src/mess/drivers/digel804.c | 2 | ||||
-rw-r--r-- | src/mess/drivers/dragon.c | 6 | ||||
-rw-r--r-- | src/mess/drivers/ec65.c | 2 | ||||
-rw-r--r-- | src/mess/drivers/microtan.c | 2 | ||||
-rw-r--r-- | src/mess/drivers/oric.c | 2 | ||||
-rw-r--r-- | src/mess/drivers/plus4.c | 10 | ||||
-rw-r--r-- | src/mess/drivers/rvoice.c | 2 | ||||
-rw-r--r-- | src/mess/drivers/thomson.c | 2 | ||||
-rw-r--r-- | src/mess/machine/coco_232.c | 2 |
20 files changed, 84 insertions, 70 deletions
diff --git a/src/emu/bus/a2bus/a2ssc.c b/src/emu/bus/a2bus/a2ssc.c index c56df3aadb1..2b0404bda5a 100644 --- a/src/emu/bus/a2bus/a2ssc.c +++ b/src/emu/bus/a2bus/a2ssc.c @@ -29,8 +29,9 @@ const device_type A2BUS_SSC = &device_creator<a2bus_ssc_device>; #define SSC_RS232_TAG "ssc_rs232" MACHINE_CONFIG_FRAGMENT( ssc ) - MCFG_MOS6551_ADD(SSC_ACIA_TAG, XTAL_1_8432MHz, WRITELINE(a2bus_ssc_device, acia_irq_w)) - MCFG_MOS6551_RXD_TXD_CALLBACKS(NULL, DEVWRITELINE(SSC_RS232_TAG, rs232_port_device, tx)) + MCFG_DEVICE_ADD(SSC_ACIA_TAG, MOS6551, XTAL_1_8432MHz) + MCFG_MOS6551_IRQ_HANDLER(WRITELINE(a2bus_ssc_device, acia_irq_w)) + MCFG_MOS6551_TXD_HANDLER(DEVWRITELINE(SSC_RS232_TAG, rs232_port_device, tx)) MCFG_RS232_PORT_ADD(SSC_RS232_TAG, default_rs232_devices, NULL) MCFG_SERIAL_OUT_RX_HANDLER(DEVWRITELINE(SSC_ACIA_TAG, mos6551_device, rxd_w)) diff --git a/src/emu/bus/c64/swiftlink.c b/src/emu/bus/c64/swiftlink.c index 00ab5170585..2552239b2a2 100644 --- a/src/emu/bus/c64/swiftlink.c +++ b/src/emu/bus/c64/swiftlink.c @@ -40,8 +40,9 @@ const device_type C64_SWIFTLINK = &device_creator<c64_swiftlink_cartridge_device //------------------------------------------------- static MACHINE_CONFIG_FRAGMENT( c64_swiftlink ) - MCFG_MOS6551_ADD(MOS6551_TAG, XTAL_3_6864MHz, WRITELINE(c64_swiftlink_cartridge_device, acia_irq_w)) - MCFG_MOS6551_RXD_TXD_CALLBACKS(NULL, DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) + MCFG_DEVICE_ADD(MOS6551_TAG, MOS6551, XTAL_3_6864MHz) + MCFG_MOS6551_IRQ_HANDLER(WRITELINE(c64_swiftlink_cartridge_device, acia_irq_w)) + MCFG_MOS6551_TXD_HANDLER(DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) MCFG_RS232_PORT_ADD(RS232_TAG, default_rs232_devices, NULL) MCFG_SERIAL_OUT_RX_HANDLER(DEVWRITELINE(MOS6551_TAG, mos6551_device, rxd_w)) diff --git a/src/emu/bus/c64/turbo232.c b/src/emu/bus/c64/turbo232.c index 8924baeeb0d..8e497cda3d3 100644 --- a/src/emu/bus/c64/turbo232.c +++ b/src/emu/bus/c64/turbo232.c @@ -40,8 +40,9 @@ const device_type C64_TURBO232 = &device_creator<c64_turbo232_cartridge_device>; //------------------------------------------------- static MACHINE_CONFIG_FRAGMENT( c64_turbo232 ) - MCFG_MOS6551_ADD(MOS6551_TAG, XTAL_3_6864MHz, WRITELINE(c64_turbo232_cartridge_device, acia_irq_w)) - MCFG_MOS6551_RXD_TXD_CALLBACKS(NULL, DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) + MCFG_DEVICE_ADD(MOS6551_TAG, MOS6551, XTAL_3_6864MHz) + MCFG_MOS6551_IRQ_HANDLER(WRITELINE(c64_turbo232_cartridge_device, acia_irq_w)) + MCFG_MOS6551_TXD_HANDLER(DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) MCFG_RS232_PORT_ADD(RS232_TAG, default_rs232_devices, NULL) MCFG_SERIAL_OUT_RX_HANDLER(DEVWRITELINE(MOS6551_TAG, mos6551_device, rxd_w)) diff --git a/src/emu/bus/pet/superpet.c b/src/emu/bus/pet/superpet.c index 9f18c0302ab..777aa907e5a 100644 --- a/src/emu/bus/pet/superpet.c +++ b/src/emu/bus/pet/superpet.c @@ -75,8 +75,9 @@ static MACHINE_CONFIG_FRAGMENT( superpet ) MCFG_MOS6702_ADD(MOS6702_TAG, XTAL_16MHz/16) - MCFG_MOS6551_ADD(MOS6551_TAG, XTAL_1_8432MHz, WRITELINE(superpet_device, acia_irq_w)) - MCFG_MOS6551_RXD_TXD_CALLBACKS(NULL, DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) + MCFG_DEVICE_ADD(MOS6551_TAG, MOS6551, XTAL_1_8432MHz) + MCFG_MOS6551_IRQ_HANDLER(WRITELINE(superpet_device, acia_irq_w)) + MCFG_MOS6551_TXD_HANDLER(DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) MCFG_RS232_PORT_ADD(RS232_TAG, default_rs232_devices, NULL) MCFG_SERIAL_OUT_RX_HANDLER(DEVWRITELINE(MOS6551_TAG, mos6551_device, rxd_w)) diff --git a/src/emu/machine/mos6551.c b/src/emu/machine/mos6551.c index db6d370e9a6..e61dcada5c4 100644 --- a/src/emu/machine/mos6551.c +++ b/src/emu/machine/mos6551.c @@ -57,11 +57,11 @@ const device_type MOS6551 = &device_creator<mos6551_device>; mos6551_device::mos6551_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : device_t(mconfig, MOS6551, "MOS6551", tag, owner, clock, "mos6551", __FILE__), device_serial_interface(mconfig, *this), - m_write_irq(*this), + m_irq_handler(*this), m_read_rxd(*this), - m_write_txd(*this), - m_write_rts(*this), - m_write_dtr(*this), + m_txd_handler(*this), + m_rts_handler(*this), + m_dtr_handler(*this), m_ctrl(0), m_cmd(CMD_RIE), m_st(ST_TDRE), @@ -80,11 +80,10 @@ mos6551_device::mos6551_device(const machine_config &mconfig, const char *tag, d void mos6551_device::device_start() { // resolve callbacks - m_write_irq.resolve_safe(); - m_read_rxd.resolve_safe(1); - m_write_txd.resolve_safe(); - m_write_rts.resolve_safe(); - m_write_dtr.resolve_safe(); + m_irq_handler.resolve_safe(); + m_txd_handler.resolve_safe(); + m_rts_handler.resolve_safe(); + m_dtr_handler.resolve_safe(); // state saving save_item(NAME(m_ctrl)); @@ -126,10 +125,10 @@ void mos6551_device::device_timer(emu_timer &timer, device_timer_id id, int para void mos6551_device::tra_callback() { - if (m_write_txd.isnull()) + if (m_txd_handler.isnull()) transmit_register_send_bit(); else - m_write_txd(transmit_register_get_data_bit()); + m_txd_handler(transmit_register_get_data_bit()); } @@ -147,7 +146,7 @@ void mos6551_device::tra_complete() if ((m_cmd & CMD_TC_MASK) == CMD_TC_TIE_RTS_LO) { m_st |= ST_IRQ; - m_write_irq(ASSERT_LINE); + m_irq_handler(ASSERT_LINE); } } } @@ -184,7 +183,7 @@ void mos6551_device::rcv_complete() if (!(m_cmd & CMD_RIE)) { m_st |= ST_IRQ; - m_write_irq(ASSERT_LINE); + m_irq_handler(ASSERT_LINE); } } @@ -247,14 +246,14 @@ void mos6551_device::update_serial() else m_connection_state &= ~DTR; - m_write_dtr((m_connection_state & DTR) ? 0 : 1); + m_dtr_handler((m_connection_state & DTR) ? 0 : 1); if ((m_cmd & CMD_TC_MASK) == CMD_TC_RTS_HI) m_connection_state &= ~RTS; else m_connection_state |= RTS; - m_write_rts((m_connection_state & RTS) ? 0 : 1); + m_rts_handler((m_connection_state & RTS) ? 0 : 1); serial_connection_out(); } @@ -283,7 +282,7 @@ READ8_MEMBER( mos6551_device::read ) case 1: data = (m_dsr << 6) | (m_dcd << 5) | m_st; m_st &= ~ST_IRQ; - m_write_irq(CLEAR_LINE); + m_irq_handler(CLEAR_LINE); break; case 2: @@ -319,7 +318,7 @@ WRITE8_MEMBER( mos6551_device::write ) if ((m_cmd & CMD_TC_MASK) == CMD_TC_TIE_RTS_LO) { m_st |= ST_IRQ; - m_write_irq(ASSERT_LINE); + m_irq_handler(ASSERT_LINE); } } break; @@ -396,7 +395,7 @@ WRITE_LINE_MEMBER( mos6551_device::dsr_w ) if (m_dsr != state) { m_st |= ST_IRQ; - m_write_irq(ASSERT_LINE); + m_irq_handler(ASSERT_LINE); } m_dsr = state; @@ -412,7 +411,7 @@ WRITE_LINE_MEMBER( mos6551_device::dcd_w ) if (m_dcd != state) { m_st |= ST_IRQ; - m_write_irq(ASSERT_LINE); + m_irq_handler(ASSERT_LINE); } m_dcd = state; diff --git a/src/emu/machine/mos6551.h b/src/emu/machine/mos6551.h index 43d28cbfe33..5292faa0ac0 100644 --- a/src/emu/machine/mos6551.h +++ b/src/emu/machine/mos6551.h @@ -39,18 +39,17 @@ // INTERFACE CONFIGURATION MACROS //************************************************************************** -#define MCFG_MOS6551_ADD(_tag, _clock, _irq) \ - MCFG_DEVICE_ADD(_tag, MOS6551, _clock) \ - downcast<mos6551_device *>(device)->set_irq_callback(DEVCB2_##_irq); +#define MCFG_MOS6551_IRQ_HANDLER(_devcb) \ + devcb = &mos6551_device::set_irq_handler(*device, DEVCB2_##_devcb); -#define MCFG_MOS6551_RXD_TXD_CALLBACKS(_rxd, _txd) \ - downcast<mos6551_device *>(device)->set_rxd_txd_callbacks(DEVCB2_##_rxd, DEVCB2_##_txd); +#define MCFG_MOS6551_TXD_HANDLER(_devcb) \ + devcb = &mos6551_device::set_txd_handler(*device, DEVCB2_##_devcb); -#define MCFG_MOS6551_RTS_CALLBACK(_rts) \ - downcast<mos6551_device *>(device)->set_rts_callback(DEVCB2_##_rts); +#define MCFG_MOS6551_RTS_HANDLER(_devcb) \ + devcb = &mos6551_device::set_rts_handler(*device, DEVCB2_##_devcb); -#define MCFG_MOS6551_DTR_CALLBACK(_dtr) \ - downcast<mos6551_device *>(device)->set_dtr_callback(DEVCB2_##_dtr); +#define MCFG_MOS6551_DTR_HANDLER(_devcb) \ + devcb = &mos6551_device::set_dtr_handler(*device, DEVCB2_##_devcb); @@ -67,13 +66,10 @@ public: // construction/destruction mos6551_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); - template<class _irq> void set_irq_callback(_irq irq) { m_write_irq.set_callback(irq); } - template<class _rxd, class _txd> void set_rxd_txd_callbacks(_rxd rxd, _txd txd) { - m_read_rxd.set_callback(rxd); - m_write_txd.set_callback(txd); - } - template<class _rts> void set_rts_callback(_rts rts) { m_write_rts.set_callback(rts); } - template<class _dtr> void set_dtr_callback(_dtr dtr) { m_write_dtr.set_callback(dtr); } + template<class _Object> static devcb2_base &set_irq_handler(device_t &device, _Object object) { return downcast<mos6551_device &>(device).m_irq_handler.set_callback(object); } + template<class _Object> static devcb2_base &set_txd_handler(device_t &device, _Object object) { return downcast<mos6551_device &>(device).m_txd_handler.set_callback(object); } + template<class _Object> static devcb2_base &set_rts_handler(device_t &device, _Object object) { return downcast<mos6551_device &>(device).m_rts_handler.set_callback(object); } + template<class _Object> static devcb2_base &set_dtr_handler(device_t &device, _Object object) { return downcast<mos6551_device &>(device).m_dtr_handler.set_callback(object); } DECLARE_READ8_MEMBER( read ); DECLARE_WRITE8_MEMBER( write ); @@ -170,11 +166,11 @@ protected: void update_serial(); - devcb2_write_line m_write_irq; + devcb2_write_line m_irq_handler; devcb2_read_line m_read_rxd; - devcb2_write_line m_write_txd; - devcb2_write_line m_write_rts; - devcb2_write_line m_write_dtr; + devcb2_write_line m_txd_handler; + devcb2_write_line m_rts_handler; + devcb2_write_line m_dtr_handler; UINT8 m_ctrl; UINT8 m_cmd; diff --git a/src/mess/drivers/aim65_40.c b/src/mess/drivers/aim65_40.c index 706aadfc174..60f88124f26 100644 --- a/src/mess/drivers/aim65_40.c +++ b/src/mess/drivers/aim65_40.c @@ -174,7 +174,7 @@ static MACHINE_CONFIG_START( aim65_40, aim65_40_state ) MCFG_VIA6522_ADD(M6522_0_TAG, 0, user_via_intf) MCFG_VIA6522_ADD(M6522_1_TAG, 0, system_via_intf) MCFG_VIA6522_ADD(M6522_2_TAG, 0, kb_via_intf) - MCFG_MOS6551_ADD(M6551_TAG, XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD(M6551_TAG, MOS6551, XTAL_1_8432MHz) MACHINE_CONFIG_END /*************************************************************************** diff --git a/src/mess/drivers/apple3.c b/src/mess/drivers/apple3.c index 578ec180fe0..196fc9a2d79 100644 --- a/src/mess/drivers/apple3.c +++ b/src/mess/drivers/apple3.c @@ -98,7 +98,7 @@ static MACHINE_CONFIG_START( apple3, apple3_state ) MCFG_APPLEFDC_ADD("fdc", apple3_fdc_interface) MCFG_LEGACY_FLOPPY_APPLE_4_DRIVES_ADD(apple3_floppy_interface,1,4) /* acia */ - MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD("acia", MOS6551, XTAL_1_8432MHz) /* via */ MCFG_VIA6522_ADD("via6522_0", 1000000, apple3_via_0_intf) diff --git a/src/mess/drivers/cbm2.c b/src/mess/drivers/cbm2.c index cf57527daf2..76e9bf38eb0 100644 --- a/src/mess/drivers/cbm2.c +++ b/src/mess/drivers/cbm2.c @@ -2166,8 +2166,11 @@ static MACHINE_CONFIG_START( p500_ntsc, p500_state ) MCFG_PLS100_ADD(PLA2_TAG) MCFG_TPI6525_ADD(MOS6525_1_TAG, p500_tpi1_intf) MCFG_TPI6525_ADD(MOS6525_2_TAG, p500_tpi2_intf) - MCFG_MOS6551_ADD(MOS6551A_TAG, XTAL_1_8432MHz, DEVWRITELINE(MOS6525_1_TAG, tpi6525_device, i4_w)) - MCFG_MOS6551_RXD_TXD_CALLBACKS(NULL, DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) + + MCFG_DEVICE_ADD(MOS6551A_TAG, MOS6551, XTAL_1_8432MHz) + MCFG_MOS6551_IRQ_HANDLER(DEVWRITELINE(MOS6525_1_TAG, tpi6525_device, i4_w)) + MCFG_MOS6551_TXD_HANDLER(DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) + MCFG_MOS6526_ADD(MOS6526_TAG, VIC6567_CLOCK, 60, DEVWRITELINE(MOS6525_1_TAG, tpi6525_device, i2_w)) MCFG_MOS6526_SERIAL_CALLBACKS(DEVWRITELINE(CBM2_USER_PORT_TAG, cbm2_user_port_device, cnt_w), DEVWRITELINE(CBM2_USER_PORT_TAG, cbm2_user_port_device, sp_w)) MCFG_MOS6526_PORT_A_CALLBACKS(READ8(cbm2_state, cia_pa_r), WRITE8(cbm2_state, cia_pa_w)) @@ -2229,8 +2232,11 @@ static MACHINE_CONFIG_START( p500_pal, p500_state ) MCFG_PLS100_ADD(PLA2_TAG) MCFG_TPI6525_ADD(MOS6525_1_TAG, p500_tpi1_intf) MCFG_TPI6525_ADD(MOS6525_2_TAG, p500_tpi2_intf) - MCFG_MOS6551_ADD(MOS6551A_TAG, XTAL_1_8432MHz, DEVWRITELINE(MOS6525_1_TAG, tpi6525_device, i4_w)) - MCFG_MOS6551_RXD_TXD_CALLBACKS(NULL, DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) + + MCFG_DEVICE_ADD(MOS6551A_TAG, MOS6551, XTAL_1_8432MHz) + MCFG_MOS6551_IRQ_HANDLER(DEVWRITELINE(MOS6525_1_TAG, tpi6525_device, i4_w)) + MCFG_MOS6551_TXD_HANDLER(DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) + MCFG_MOS6526_ADD(MOS6526_TAG, VIC6569_CLOCK, 50, DEVWRITELINE(MOS6525_1_TAG, tpi6525_device, i2_w)) MCFG_MOS6526_SERIAL_CALLBACKS(DEVWRITELINE(CBM2_USER_PORT_TAG, cbm2_user_port_device, cnt_w), DEVWRITELINE(CBM2_USER_PORT_TAG, cbm2_user_port_device, sp_w)) MCFG_MOS6526_PORT_A_CALLBACKS(READ8(cbm2_state, cia_pa_r), WRITE8(cbm2_state, cia_pa_w)) @@ -2299,8 +2305,11 @@ static MACHINE_CONFIG_START( cbm2lp_ntsc, cbm2_state ) MCFG_PLS100_ADD(PLA1_TAG) MCFG_TPI6525_ADD(MOS6525_1_TAG, tpi1_intf) MCFG_TPI6525_ADD(MOS6525_2_TAG, tpi2_intf) - MCFG_MOS6551_ADD(MOS6551A_TAG, XTAL_1_8432MHz, DEVWRITELINE(MOS6525_1_TAG, tpi6525_device, i4_w)) - MCFG_MOS6551_RXD_TXD_CALLBACKS(NULL, DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) + + MCFG_DEVICE_ADD(MOS6551A_TAG, MOS6551, XTAL_1_8432MHz) + MCFG_MOS6551_IRQ_HANDLER(DEVWRITELINE(MOS6525_1_TAG, tpi6525_device, i4_w)) + MCFG_MOS6551_TXD_HANDLER(DEVWRITELINE(RS232_TAG, rs232_port_device, tx)) + MCFG_MOS6526_ADD(MOS6526_TAG, XTAL_18MHz/9, 60, DEVWRITELINE(MOS6525_1_TAG, tpi6525_device, i2_w)) MCFG_MOS6526_SERIAL_CALLBACKS(DEVWRITELINE(CBM2_USER_PORT_TAG, cbm2_user_port_device, cnt_w), DEVWRITELINE(CBM2_USER_PORT_TAG, cbm2_user_port_device, sp_w)) MCFG_MOS6526_PORT_A_CALLBACKS(READ8(cbm2_state, cia_pa_r), WRITE8(cbm2_state, cia_pa_w)) diff --git a/src/mess/drivers/clcd.c b/src/mess/drivers/clcd.c index 8a72a6a5a84..37c0d208ff8 100644 --- a/src/mess/drivers/clcd.c +++ b/src/mess/drivers/clcd.c @@ -435,7 +435,7 @@ static MACHINE_CONFIG_START( clcd, clcd_state ) MCFG_VIA6522_ADD("via0", 0, via0_intf) MCFG_VIA6522_ADD("via1", 0, via1_intf) - MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD("acia", MOS6551, XTAL_1_8432MHz) /* video hardware */ MCFG_SCREEN_ADD("screen", LCD) diff --git a/src/mess/drivers/concept.c b/src/mess/drivers/concept.c index 20aff0aa412..daf474b624d 100644 --- a/src/mess/drivers/concept.c +++ b/src/mess/drivers/concept.c @@ -233,8 +233,8 @@ static MACHINE_CONFIG_START( concept, concept_state ) MCFG_VIA6522_ADD("via6522_0", 1022750, concept_via6522_intf) /* ACIAs */ - MCFG_MOS6551_ADD(ACIA_0_TAG, XTAL_1_8432MHz, NULL) - MCFG_MOS6551_ADD(ACIA_1_TAG, XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD(ACIA_0_TAG, MOS6551, XTAL_1_8432MHz) + MCFG_DEVICE_ADD(ACIA_1_TAG, MOS6551, XTAL_1_8432MHz) MCFG_CONCEPT_EXP_PORT_ADD("exp1", concept_exp_devices, NULL) MCFG_CONCEPT_EXP_PORT_ADD("exp2", concept_exp_devices, "fdc") // Flat cable Hard Disk Controller in Slot 2 diff --git a/src/mess/drivers/digel804.c b/src/mess/drivers/digel804.c index 47927c857ed..9dbdcd4c2a9 100644 --- a/src/mess/drivers/digel804.c +++ b/src/mess/drivers/digel804.c @@ -605,7 +605,7 @@ static MACHINE_CONFIG_START( digel804, digel804_state ) MCFG_MM74C923_ADD("74c923", digel804_keypad_intf) /* acia */ - MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD("acia", MOS6551, XTAL_1_8432MHz) MCFG_RAM_ADD(RAM_TAG) MCFG_RAM_DEFAULT_SIZE("256K") diff --git a/src/mess/drivers/dragon.c b/src/mess/drivers/dragon.c index d44f1089b1b..dedae665152 100644 --- a/src/mess/drivers/dragon.c +++ b/src/mess/drivers/dragon.c @@ -174,7 +174,7 @@ static MACHINE_CONFIG_DERIVED_CLASS( dragon64, dragon_base, dragon64_state ) MCFG_COCO_CARTRIDGE_ADD(CARTRIDGE_TAG, dragon_state::cartridge_config, dragon_cart, "dragon_fdc") // acia - MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD("acia", MOS6551, XTAL_1_8432MHz) MACHINE_CONFIG_END static MACHINE_CONFIG_DERIVED_CLASS( d64plus, dragon_base, dragon64_state ) @@ -186,7 +186,7 @@ static MACHINE_CONFIG_DERIVED_CLASS( d64plus, dragon_base, dragon64_state ) MCFG_COCO_CARTRIDGE_ADD(CARTRIDGE_TAG, dragon_state::cartridge_config, dragon_cart, "dragon_fdc") // acia - MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD("acia", MOS6551, XTAL_1_8432MHz) MACHINE_CONFIG_END static MACHINE_CONFIG_DERIVED_CLASS( dgnalpha, dragon_base, dragon_alpha_state ) @@ -198,7 +198,7 @@ static MACHINE_CONFIG_DERIVED_CLASS( dgnalpha, dragon_base, dragon_alpha_state ) MCFG_COCO_CARTRIDGE_ADD(CARTRIDGE_TAG, dragon_alpha_state::cartridge_config, dragon_cart, NULL) // acia - MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD("acia", MOS6551, XTAL_1_8432MHz) // floppy MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(coco_floppy_interface) diff --git a/src/mess/drivers/ec65.c b/src/mess/drivers/ec65.c index 99f38dd6163..94fc4a62847 100644 --- a/src/mess/drivers/ec65.c +++ b/src/mess/drivers/ec65.c @@ -271,7 +271,7 @@ static MACHINE_CONFIG_START( ec65, ec65_state ) MCFG_ACIA6850_ADD(ACIA6850_TAG, ec65_acia_intf) MCFG_VIA6522_ADD(VIA6522_0_TAG, XTAL_4MHz / 4, ec65_via_0_intf) MCFG_VIA6522_ADD(VIA6522_1_TAG, XTAL_4MHz / 4, ec65_via_1_intf) - MCFG_MOS6551_ADD(ACIA6551_TAG, XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD(ACIA6551_TAG, MOS6551, XTAL_1_8432MHz) MCFG_ASCII_KEYBOARD_ADD(KEYBOARD_TAG, keyboard_intf) MACHINE_CONFIG_END diff --git a/src/mess/drivers/microtan.c b/src/mess/drivers/microtan.c index 61f5b61f1db..a3a6878ee9d 100644 --- a/src/mess/drivers/microtan.c +++ b/src/mess/drivers/microtan.c @@ -255,7 +255,7 @@ static MACHINE_CONFIG_START( microtan, microtan_state ) MCFG_CASSETTE_ADD( "cassette", default_cassette_interface ) /* acia */ - MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD("acia", MOS6551, XTAL_1_8432MHz) /* via */ MCFG_VIA6522_ADD("via6522_0", 0, microtan_via6522_0) diff --git a/src/mess/drivers/oric.c b/src/mess/drivers/oric.c index 71489075ec9..d008cc29594 100644 --- a/src/mess/drivers/oric.c +++ b/src/mess/drivers/oric.c @@ -425,7 +425,7 @@ static MACHINE_CONFIG_DERIVED( telstrat, oric ) MCFG_MACHINE_START_OVERRIDE(oric_state, telestrat ) /* acia */ - MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD("acia", MOS6551, XTAL_1_8432MHz) /* via */ MCFG_VIA6522_ADD( "via6522_1", 1000000, telestrat_via2_interface ) diff --git a/src/mess/drivers/plus4.c b/src/mess/drivers/plus4.c index 940376bf3a1..cc78455acb2 100644 --- a/src/mess/drivers/plus4.c +++ b/src/mess/drivers/plus4.c @@ -741,7 +741,10 @@ static MACHINE_CONFIG_START( ntsc, plus4_state ) // devices MCFG_PLS100_ADD(PLA_TAG) - MCFG_MOS6551_ADD(MOS6551_TAG, XTAL_1_8432MHz, WRITELINE(plus4_state, acia_irq_w)) + + MCFG_DEVICE_ADD(MOS6551_TAG, MOS6551, XTAL_1_8432MHz) + MCFG_MOS6551_IRQ_HANDLER(WRITELINE(plus4_state, acia_irq_w)) + MCFG_MOS6529_ADD(MOS6529_USER_TAG, DEVREAD8(PLUS4_USER_PORT_TAG, plus4_user_port_device, p_r), DEVWRITE8(PLUS4_USER_PORT_TAG, plus4_user_port_device, p_w)) MCFG_MOS6529_ADD(MOS6529_KB_TAG, CONSTANT(0xff), WRITE8(plus4_state, spi_kb_w)) MCFG_PET_DATASSETTE_PORT_ADD(PET_DATASSETTE_PORT_TAG, plus4_datassette_devices, "c1531", NULL) @@ -787,7 +790,10 @@ static MACHINE_CONFIG_START( pal, plus4_state ) // devices MCFG_PLS100_ADD(PLA_TAG) - MCFG_MOS6551_ADD(MOS6551_TAG, XTAL_1_8432MHz, WRITELINE(plus4_state, acia_irq_w)) + + MCFG_DEVICE_ADD(MOS6551_TAG, MOS6551, XTAL_1_8432MHz) + MCFG_MOS6551_IRQ_HANDLER(WRITELINE(plus4_state, acia_irq_w)) + MCFG_MOS6529_ADD(MOS6529_USER_TAG, DEVREAD8(PLUS4_USER_PORT_TAG, plus4_user_port_device, p_r), DEVWRITE8(PLUS4_USER_PORT_TAG, plus4_user_port_device, p_w)) MCFG_MOS6529_ADD(MOS6529_KB_TAG, CONSTANT(0xff), WRITE8(plus4_state, spi_kb_w)) MCFG_PET_DATASSETTE_PORT_ADD(PET_DATASSETTE_PORT_TAG, plus4_datassette_devices, "c1531", NULL) diff --git a/src/mess/drivers/rvoice.c b/src/mess/drivers/rvoice.c index f1f21f484d4..63b1d71d55a 100644 --- a/src/mess/drivers/rvoice.c +++ b/src/mess/drivers/rvoice.c @@ -370,7 +370,7 @@ static MACHINE_CONFIG_START( rvoicepc, rvoice_state ) //MCFG_CPU_IO_MAP(hd63701_slave_io) MCFG_QUANTUM_TIME(attotime::from_hz(60)) - MCFG_MOS6551_ADD("acia65c51", XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD("acia65c51", MOS6551, XTAL_1_8432MHz) /* video hardware */ //MCFG_DEFAULT_LAYOUT(layout_dectalk) // hack to avoid screenless system crash diff --git a/src/mess/drivers/thomson.c b/src/mess/drivers/thomson.c index a32cd516583..f3eaeefbcbf 100644 --- a/src/mess/drivers/thomson.c +++ b/src/mess/drivers/thomson.c @@ -678,7 +678,7 @@ static MACHINE_CONFIG_START( to7, thomson_state ) MCFG_PIA6821_ADD( THOM_PIA_MODEM, to7_pia6821_modem ) /* acia */ - MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD("acia", MOS6551, XTAL_1_8432MHz) /* to7 serial io line */ MCFG_TO7_IO_LINE_ADD("to7_io") diff --git a/src/mess/machine/coco_232.c b/src/mess/machine/coco_232.c index 5750be17560..c4dc18e64e3 100644 --- a/src/mess/machine/coco_232.c +++ b/src/mess/machine/coco_232.c @@ -21,7 +21,7 @@ ***************************************************************************/ static MACHINE_CONFIG_FRAGMENT(coco_rs232) - MCFG_MOS6551_ADD(UART_TAG, XTAL_1_8432MHz, NULL) + MCFG_DEVICE_ADD(UART_TAG, MOS6551, XTAL_1_8432MHz) MACHINE_CONFIG_END //************************************************************************** |