From 61b17485592df868d18276a803fe4ecf9f7f2803 Mon Sep 17 00:00:00 2001 From: AJR Date: Mon, 6 Nov 2017 11:52:42 -0500 Subject: [PATCH] dsb46: Use CTC for baud rate generation (nw) --- src/mame/drivers/dsb46.cpp | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/mame/drivers/dsb46.cpp b/src/mame/drivers/dsb46.cpp index 57c1f7936f4..a488d18a55a 100644 --- a/src/mame/drivers/dsb46.cpp +++ b/src/mame/drivers/dsb46.cpp @@ -65,7 +65,7 @@ static ADDRESS_MAP_START( dsb46_io, AS_IO, 8, dsb46_state ) AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ctc1", z80ctc_device, read, write) AM_RANGE(0x1a, 0x1a) AM_WRITE(port1a_w) //AM_RANGE(0x10, 0x10) disk related - //AM_RANGE(0x14, 0x14) ?? + //AM_RANGE(0x14, 0x14) ?? (read after CTC1 TRG3) //AM_RANGE(0x18, 0x18) ?? //AM_RANGE(0x1c, 0x1c) disk data //AM_RANGE(0x1d, 0x1d) disk status (FF = no fdc) @@ -104,7 +104,7 @@ static const z80_daisy_config daisy_chain[] = static MACHINE_CONFIG_START( dsb46 ) // basic machine hardware - MCFG_CPU_ADD("maincpu", Z80, 4000000) + MCFG_CPU_ADD("maincpu", Z80, XTAL_24MHz / 6) MCFG_CPU_PROGRAM_MAP(dsb46_mem) MCFG_CPU_IO_MAP(dsb46_io) MCFG_Z80_DAISY_CHAIN(daisy_chain) @@ -112,12 +112,12 @@ static MACHINE_CONFIG_START( dsb46 ) MCFG_MACHINE_RESET_OVERRIDE(dsb46_state, dsb46) /* video hardware */ - MCFG_DEVICE_ADD("uart_clock", CLOCK, 153600) - MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("sio", z80sio_device, txca_w)) - MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("sio", z80sio_device, rxca_w)) + MCFG_DEVICE_ADD("ctc_clock", CLOCK, XTAL_1_8432MHz) + MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("ctc1", z80ctc_device, trg0)) + MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("ctc1", z80ctc_device, trg2)) /* Devices */ - MCFG_DEVICE_ADD("sio", Z80SIO, XTAL_4MHz) + MCFG_DEVICE_ADD("sio", Z80SIO, XTAL_24MHz / 6) MCFG_Z80SIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd)) MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr)) @@ -127,8 +127,12 @@ static MACHINE_CONFIG_START( dsb46 ) MCFG_RS232_RXD_HANDLER(DEVWRITELINE("sio", z80sio_device, rxa_w)) MCFG_RS232_CTS_HANDLER(DEVWRITELINE("sio", z80sio_device, ctsa_w)) - MCFG_DEVICE_ADD("ctc1", Z80CTC, XTAL_4MHz) + MCFG_DEVICE_ADD("ctc1", Z80CTC, XTAL_24MHz / 6) MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) + MCFG_Z80CTC_ZC0_CB(DEVWRITELINE("sio", z80sio_device, rxca_w)) + MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("sio", z80sio_device, txca_w)) + MCFG_Z80CTC_ZC2_CB(DEVWRITELINE("sio", z80sio_device, rxcb_w)) + MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("sio", z80sio_device, txcb_w)) MACHINE_CONFIG_END ROM_START( dsb46 )