summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2018-07-14 23:44:55 -0400
committer AJR <ajrhacker@users.noreply.github.com>2018-07-14 23:44:55 -0400
commitce5437bdd4c39c5d97b347d187e5a7f34072c1a8 (patch)
tree7e4e503b4a779262f39f479f71710cfbb170cbdc
parent437e5b7922374bcb8c8ecebb4f68a3ec3d9f680c (diff)
cit220p: DUART timer drives something (nw)
-rw-r--r--src/mame/drivers/cit220.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/mame/drivers/cit220.cpp b/src/mame/drivers/cit220.cpp
index dae636bf56f..806ddd99cf3 100644
--- a/src/mame/drivers/cit220.cpp
+++ b/src/mame/drivers/cit220.cpp
@@ -30,6 +30,8 @@ public:
void cit220p(machine_config &config);
private:
+ virtual void machine_start() override;
+
DECLARE_WRITE_LINE_MEMBER(sod_w);
SCN2674_DRAW_CHARACTER_MEMBER(draw_character);
@@ -46,6 +48,12 @@ private:
};
+void cit220_state::machine_start()
+{
+ subdevice<i8251_device>("usart")->write_cts(0);
+}
+
+
WRITE_LINE_MEMBER(cit220_state::sod_w)
{
// probably asserts PBREQ on SCN2674 to access memory at Exxx
@@ -116,8 +124,10 @@ MACHINE_CONFIG_START(cit220_state::cit220p)
MCFG_DEVICE_ADDRESS_MAP(1, attr_map)
MCFG_VIDEO_SET_SCREEN("screen")
- MCFG_DEVICE_ADD("duart", SCN2681, 3686400)
- MCFG_MC68681_IRQ_CALLBACK(INPUTLINE("maincpu", I8085_RST55_LINE))
+ scn2681_device &duart(SCN2681(config, "duart", 3686400));
+ duart.irq_cb().set_inputline("maincpu", I8085_RST55_LINE);
+ duart.outport_cb().set("usart", FUNC(i8251_device::write_txc)).bit(3); // 9600 baud?
+ duart.outport_cb().append("usart", FUNC(i8251_device::write_rxc)).bit(3);
MCFG_DEVICE_ADD("usart", I8251, 3000000)