mirror of
https://github.com/holub/mame
synced 2025-07-05 18:08:04 +03:00
esprit3: Better interrupt sourcing (nw)
This commit is contained in:
parent
969175269d
commit
8f67f2681d
@ -170,7 +170,8 @@ void esprit_state::esprit3(machine_config &config)
|
|||||||
|
|
||||||
INPUT_MERGER_ANY_HIGH(config, "mainirq").output_handler().set_inputline(m_maincpu, m6502_device::IRQ_LINE);
|
INPUT_MERGER_ANY_HIGH(config, "mainirq").output_handler().set_inputline(m_maincpu, m6502_device::IRQ_LINE);
|
||||||
|
|
||||||
ACIA6850(config, "acia");
|
acia6850_device &acia(ACIA6850(config, "acia"));
|
||||||
|
acia.irq_handler().set("mainirq", FUNC(input_merger_device::in_w<2>));
|
||||||
|
|
||||||
mos6551_device &acia1(MOS6551(config, "acia1", 17.9712_MHz_XTAL / 18));
|
mos6551_device &acia1(MOS6551(config, "acia1", 17.9712_MHz_XTAL / 18));
|
||||||
acia1.set_xtal(1.8432_MHz_XTAL);
|
acia1.set_xtal(1.8432_MHz_XTAL);
|
||||||
@ -181,7 +182,9 @@ void esprit_state::esprit3(machine_config &config)
|
|||||||
acia2.irq_handler().set("mainirq", FUNC(input_merger_device::in_w<1>));
|
acia2.irq_handler().set("mainirq", FUNC(input_merger_device::in_w<1>));
|
||||||
|
|
||||||
via6522_device &via(VIA6522(config, "via", 17.9712_MHz_XTAL / 18));
|
via6522_device &via(VIA6522(config, "via", 17.9712_MHz_XTAL / 18));
|
||||||
via.irq_handler().set("mainirq", FUNC(input_merger_device::in_w<2>));
|
via.irq_handler().set_inputline(m_maincpu, m6502_device::NMI_LINE);
|
||||||
|
via.writepb_handler().set("acia", FUNC(acia6850_device::write_rxc)).bit(7);
|
||||||
|
via.writepb_handler().append("acia", FUNC(acia6850_device::write_txc)).bit(7);
|
||||||
|
|
||||||
/* video hardware */
|
/* video hardware */
|
||||||
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
|
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
|
||||||
@ -198,6 +201,7 @@ void esprit_state::esprit3(machine_config &config)
|
|||||||
crtc.set_char_width(9);
|
crtc.set_char_width(9);
|
||||||
crtc.set_update_row_callback(FUNC(esprit_state::crtc_update_row), this);
|
crtc.set_update_row_callback(FUNC(esprit_state::crtc_update_row), this);
|
||||||
crtc.set_on_update_addr_change_callback(FUNC(esprit_state::crtc_update_addr), this);
|
crtc.set_on_update_addr_change_callback(FUNC(esprit_state::crtc_update_addr), this);
|
||||||
|
//crtc.out_hsync_callback().set("via", FUNC(via6522_device::write_pb6)).invert();
|
||||||
}
|
}
|
||||||
|
|
||||||
ROM_START( esprit )
|
ROM_START( esprit )
|
||||||
|
Loading…
Reference in New Issue
Block a user