summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/nsg6809.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/nsg6809.cpp')
-rw-r--r--src/mame/drivers/nsg6809.cpp27
1 files changed, 14 insertions, 13 deletions
diff --git a/src/mame/drivers/nsg6809.cpp b/src/mame/drivers/nsg6809.cpp
index 1029a53f018..32904a6bef1 100644
--- a/src/mame/drivers/nsg6809.cpp
+++ b/src/mame/drivers/nsg6809.cpp
@@ -55,7 +55,7 @@ public:
private:
void main_map(address_map &map);
- required_device<cpu_device> m_maincpu;
+ required_device<mc6809_device> m_maincpu;
};
@@ -71,22 +71,23 @@ void nsg6809_state::main_map(address_map &map)
static INPUT_PORTS_START( pitchhit )
INPUT_PORTS_END
-MACHINE_CONFIG_START(nsg6809_state::pitchhit)
- MCFG_DEVICE_ADD("maincpu", MC6809, XTAL(4'000'000)) // clock buffered through 74HC4060
- MCFG_DEVICE_PROGRAM_MAP(main_map)
+void nsg6809_state::pitchhit(machine_config &config)
+{
+ MC6809(config, m_maincpu, XTAL(4'000'000)); // clock buffered through 74HC4060
+ m_maincpu->set_addrmap(AS_PROGRAM, &nsg6809_state::main_map);
- MCFG_DEVICE_ADD("via", VIA6522, XTAL(4'000'000) / 4)
- MCFG_VIA6522_IRQ_HANDLER(WRITELINE("mainirq", input_merger_device, in_w<0>))
+ via6522_device &via(VIA6522(config, "via", XTAL(4'000'000) / 4));
+ via.irq_handler().set("mainirq", FUNC(input_merger_device::in_w<0>));
- MCFG_DEVICE_ADD("acia", MOS6551, 0)
- MCFG_MOS6551_XTAL(XTAL(1'843'200))
- MCFG_MOS6551_IRQ_HANDLER(WRITELINE("mainirq", input_merger_device, in_w<1>))
+ mos6551_device &acia(MOS6551(config, "acia", 0));
+ acia.set_xtal(XTAL(1'843'200));
+ acia.irq_handler().set("mainirq", FUNC(input_merger_device::in_w<1>));
- MCFG_WATCHDOG_ADD("deadman")
+ WATCHDOG_TIMER(config, "deadman", 0);
- MCFG_INPUT_MERGER_ANY_HIGH("mainirq")
- MCFG_INPUT_MERGER_OUTPUT_HANDLER(INPUTLINE("maincpu", M6809_IRQ_LINE))
-MACHINE_CONFIG_END
+ input_merger_device &merger(INPUT_MERGER_ANY_HIGH(config, "mainirq"));
+ merger.output_handler().set_inputline(m_maincpu, M6809_IRQ_LINE);
+}
/*