summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/cat.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/cat.cpp')
-rw-r--r--src/mame/drivers/cat.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/mame/drivers/cat.cpp b/src/mame/drivers/cat.cpp
index f56118d5591..c026a31c58d 100644
--- a/src/mame/drivers/cat.cpp
+++ b/src/mame/drivers/cat.cpp
@@ -773,7 +773,7 @@ void cat_state::cat_mem(address_map &map)
map(0x80000c, 0x80000d).r(FUNC(cat_state::cat_0080_r)).mirror(0x18FFE0); // Open bus?
map(0x80000e, 0x80000f).rw(FUNC(cat_state::cat_battery_r), FUNC(cat_state::cat_printer_control_w)).mirror(0x18FFE0); // Centronics Printer Control, keyboard led and country code enable
map(0x800010, 0x80001f).r(FUNC(cat_state::cat_0080_r)).mirror(0x18FFE0); // Open bus?
- map(0x810000, 0x81001f).rw("duartn68681", FUNC(mc68681_device::read), FUNC(mc68681_device::write)).umask16(0x00ff).mirror(0x18FFE0);
+ map(0x810000, 0x81001f).rw(m_duart, FUNC(mc68681_device::read), FUNC(mc68681_device::write)).umask16(0x00ff).mirror(0x18FFE0);
map(0x820000, 0x82003f).rw(FUNC(cat_state::cat_modem_r), FUNC(cat_state::cat_modem_w)).mirror(0x18FFC0); // AMI S35213 Modem Chip, all access is on bit 7
map(0x830000, 0x830001).r(FUNC(cat_state::cat_6ms_counter_r)).mirror(0x18FFFE); // 16bit 6ms counter clocked by output of another 16bit counter clocked at 10mhz
map(0x840000, 0x840001).rw(FUNC(cat_state::cat_2e80_r), FUNC(cat_state::cat_opr_w)).mirror(0x18FFFE); // GA2 Output port register (video enable, invert, watchdog reset, phone relays)
@@ -1074,15 +1074,15 @@ MACHINE_CONFIG_START(cat_state::cat)
MCFG_VIDEO_START_OVERRIDE(cat_state,cat)
- MCFG_DEVICE_ADD( "duartn68681", MC68681, (XTAL(19'968'000)*2)/11 ) // duart is normally clocked by 3.6864mhz xtal, but cat seemingly uses a divider from the main xtal instead which probably yields 3.63054545Mhz. There is a trace to cut and a mounting area to allow using an actual 3.6864mhz xtal if you so desire
- MCFG_MC68681_IRQ_CALLBACK(WRITELINE(*this, cat_state, cat_duart_irq_handler))
- MCFG_MC68681_A_TX_CALLBACK(WRITELINE(*this, cat_state, cat_duart_txa))
- MCFG_MC68681_B_TX_CALLBACK(WRITELINE(*this, cat_state, cat_duart_txb))
- MCFG_MC68681_OUTPORT_CALLBACK(WRITE8(*this, cat_state, cat_duart_output))
+ MC68681(config, m_duart, (XTAL(19'968'000)*2)/11); // duart is normally clocked by 3.6864mhz xtal, but cat seemingly uses a divider from the main xtal instead which probably yields 3.63054545Mhz. There is a trace to cut and a mounting area to allow using an actual 3.6864mhz xtal if you so desire
+ m_duart->irq_cb().set(FUNC(cat_state::cat_duart_irq_handler));
+ m_duart->a_tx_cb().set(FUNC(cat_state::cat_duart_txa));
+ m_duart->b_tx_cb().set(FUNC(cat_state::cat_duart_txb));
+ m_duart->outport_cb().set(FUNC(cat_state::cat_duart_output));;
CENTRONICS(config, m_ctx, centronics_devices, "printer");
m_ctx->ack_handler().set(FUNC(cat_state::prn_ack_ff));
- m_ctx->busy_handler().set("duartn68681", FUNC(mc68681_device::ip4_w)).invert();
+ m_ctx->busy_handler().set(m_duart, FUNC(mc68681_device::ip4_w)).invert();
MCFG_CENTRONICS_OUTPUT_LATCH_ADD("ctx_data_out", "ctx")
SPEAKER(config, "mono").front_center();