diff options
author | AJR <ajrhacker@users.noreply.github.com> | 2017-09-09 00:48:13 -0400 |
---|---|---|
committer | AJR <ajrhacker@users.noreply.github.com> | 2017-09-09 00:48:38 -0400 |
commit | a99be799b251842c9d8f6bb3864747e81358bf07 (patch) | |
tree | 5eac2f518c4cc11f4f917b8a5a70f597eb875040 /src/mame/drivers/kingdrby.cpp | |
parent | b3651664382090a41b938f4473b7b261f3d89f15 (diff) |
kingdrby.cpp: More plausible method of generating NMI on sound CPU (nw)
Diffstat (limited to 'src/mame/drivers/kingdrby.cpp')
-rw-r--r-- | src/mame/drivers/kingdrby.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mame/drivers/kingdrby.cpp b/src/mame/drivers/kingdrby.cpp index 15b9b1e4436..90f87d7b628 100644 --- a/src/mame/drivers/kingdrby.cpp +++ b/src/mame/drivers/kingdrby.cpp @@ -304,7 +304,7 @@ WRITE8_MEMBER(kingdrby_state::hopper_io_w) WRITE8_MEMBER(kingdrby_state::sound_cmd_w) { - m_soundcpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE); + m_soundcpu->set_input_line(INPUT_LINE_NMI, BIT(data, 7) ? ASSERT_LINE : CLEAR_LINE); m_sound_cmd = data; /* soundlatch is unneeded since we are already using perfect interleave. */ // m_soundlatch->write(space,0, data); @@ -955,6 +955,7 @@ static MACHINE_CONFIG_START( kingdrby ) // 6000-6003 PPI group modes 0/0 - B & C (lower) as input, A & C (upper) as output. MCFG_DEVICE_ADD("ppi8255_1", I8255A, 0) MCFG_I8255_OUT_PORTA_CB(WRITE8(kingdrby_state, sound_cmd_w)) + MCFG_I8255_TRISTATE_PORTA_CB(CONSTANT(0x7f)) MCFG_I8255_IN_PORTB_CB(READ8(kingdrby_state, key_matrix_r)) MCFG_I8255_IN_PORTC_CB(READ8(kingdrby_state, input_mux_r)) MCFG_I8255_OUT_PORTC_CB(WRITE8(kingdrby_state, outport2_w)) @@ -995,6 +996,7 @@ static MACHINE_CONFIG_DERIVED( kingdrbb, kingdrby ) MCFG_DEVICE_ADD("ppi8255_0", I8255A, 0) /* C as input, (all) as output */ MCFG_I8255_OUT_PORTA_CB(WRITE8(kingdrby_state, sound_cmd_w)) + MCFG_I8255_TRISTATE_PORTA_CB(CONSTANT(0x7f)) MCFG_I8255_IN_PORTB_CB(IOPORT("IN0")) MCFG_I8255_OUT_PORTB_CB(WRITE8(kingdrby_state, outportb_w)) MCFG_I8255_IN_PORTC_CB(IOPORT("IN1")) |