Dragon64: connected ACIA to RS232 system (#6665)

* Hooked acia to format core, and connected intruupt.

* Fixed some spacing

* Helpfull logging

* removed logging

* Comment cleaning
This commit is contained in:
tim lindner 2020-05-08 20:38:25 -07:00 committed by GitHub
parent 32ee42272b
commit cc0293b1cd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 0 deletions

View File

@ -19,6 +19,7 @@
#include "formats/dmk_dsk.h"
#include "formats/sdf_dsk.h"
#include "imagedev/floppy.h"
#include "bus/rs232/rs232.h"
#include "bus/coco/dragon_amtor.h"
#include "bus/coco/dragon_fdc.h"
@ -345,12 +346,25 @@ void dragon64_state::dragon64(machine_config &config)
// acia
mos6551_device &acia(MOS6551(config, "acia", 0));
acia.set_xtal(1.8432_MHz_XTAL);
acia.irq_handler().set(FUNC(dragon64_state::acia_irq));
acia.txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, nullptr));
rs232.rxd_handler().set(acia, FUNC(mos6551_device::write_rxd));
rs232.dcd_handler().set(acia, FUNC(mos6551_device::write_dcd));
rs232.dsr_handler().set(acia, FUNC(mos6551_device::write_dsr));
rs232.cts_handler().set(acia, FUNC(mos6551_device::write_cts));
// software lists
SOFTWARE_LIST(config, "dragon_flex_list").set_original("dragon_flex");
SOFTWARE_LIST(config, "dragon_os9_list").set_original("dragon_os9");
}
WRITE_LINE_MEMBER( dragon64_state::acia_irq )
{
m_maincpu->set_input_line(M6809_IRQ_LINE, state ? ASSERT_LINE : CLEAR_LINE);
}
void dragon64_state::dragon64h(machine_config &config)
{
dragon64(config);

View File

@ -69,6 +69,7 @@ public:
void dragon64(machine_config &config);
void tanodr64h(machine_config &config);
void dragon64h(machine_config &config);
DECLARE_WRITE_LINE_MEMBER( acia_irq );
protected:
void d64_rom0(address_map &map);
void d64_rom1(address_map &map);