From 173981be95545b4dd39e3a07886f76d30d1fc460 Mon Sep 17 00:00:00 2001 From: AJR Date: Thu, 29 Mar 2018 00:04:08 -0400 Subject: slapfght.cpp, twincobr.cpp, wardner.cpp: Replace MCFG_CPU_VBLANK_INT with line callbacks (nw) --- src/mame/drivers/slapfght.cpp | 12 ++++++------ src/mame/drivers/twincobr.cpp | 2 +- src/mame/drivers/wardner.cpp | 2 +- src/mame/includes/slapfght.h | 2 +- src/mame/includes/twincobr.h | 4 ++-- src/mame/machine/twincobr.cpp | 14 ++++++++------ 6 files changed, 19 insertions(+), 17 deletions(-) diff --git a/src/mame/drivers/slapfght.cpp b/src/mame/drivers/slapfght.cpp index 067d6ee86f7..eadd7350f00 100644 --- a/src/mame/drivers/slapfght.cpp +++ b/src/mame/drivers/slapfght.cpp @@ -372,10 +372,10 @@ void slapfght_state::slapfighb2_map(address_map &map) /**************************************************************************/ -INTERRUPT_GEN_MEMBER(slapfght_state::vblank_irq) +WRITE_LINE_MEMBER(slapfght_state::vblank_irq) { - if (m_main_irq_enabled) - device.execute().set_input_line(0, ASSERT_LINE); + if (state && m_main_irq_enabled) + m_maincpu->set_input_line(0, ASSERT_LINE); } WRITE_LINE_MEMBER(slapfght_state::irq_enable_w) @@ -895,7 +895,6 @@ MACHINE_CONFIG_START(slapfght_state::perfrman) MCFG_CPU_ADD("maincpu", Z80, XTAL(16'000'000)/4) // 4MHz? XTAL is known, divider is guessed MCFG_CPU_PROGRAM_MAP(perfrman_map) MCFG_CPU_IO_MAP(io_map_nomcu) - MCFG_CPU_VBLANK_INT_DRIVER("screen", slapfght_state, vblank_irq) MCFG_DEVICE_ADD("mainlatch", LS259, 0) MCFG_ADDRESSABLE_LATCH_Q0_OUT_CB(WRITELINE(slapfght_state, sound_reset_w)) @@ -919,6 +918,7 @@ MACHINE_CONFIG_START(slapfght_state::perfrman) MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 32*8-1) MCFG_SCREEN_UPDATE_DRIVER(slapfght_state, screen_update_perfrman) MCFG_SCREEN_VBLANK_CALLBACK(DEVWRITELINE("spriteram", buffered_spriteram8_device, vblank_copy_rising)) + MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE(slapfght_state, vblank_irq)) MCFG_SCREEN_PALETTE("palette") MCFG_GFXDECODE_ADD("gfxdecode", "palette", perfrman) @@ -946,7 +946,6 @@ MACHINE_CONFIG_START(slapfght_state::tigerh) MCFG_CPU_ADD("maincpu", Z80, XTAL(36'000'000)/6) // 6MHz MCFG_CPU_PROGRAM_MAP(tigerh_map_mcu) MCFG_CPU_IO_MAP(io_map_mcu) - MCFG_CPU_VBLANK_INT_DRIVER("screen", slapfght_state, vblank_irq) MCFG_DEVICE_ADD("mainlatch", LS259, 0) MCFG_ADDRESSABLE_LATCH_Q0_OUT_CB(WRITELINE(slapfght_state, sound_reset_w)) @@ -971,6 +970,7 @@ MACHINE_CONFIG_START(slapfght_state::tigerh) MCFG_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8-1, 32*8-1-1) MCFG_SCREEN_UPDATE_DRIVER(slapfght_state, screen_update_slapfight) MCFG_SCREEN_VBLANK_CALLBACK(DEVWRITELINE("spriteram", buffered_spriteram8_device, vblank_copy_rising)) + MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE(slapfght_state, vblank_irq)) MCFG_SCREEN_PALETTE("palette") MCFG_GFXDECODE_ADD("gfxdecode", "palette", slapfght) @@ -1017,7 +1017,6 @@ MACHINE_CONFIG_START(slapfght_state::slapfigh) MCFG_CPU_ADD("maincpu",Z80, XTAL(36'000'000)/6) // 6MHz MCFG_CPU_PROGRAM_MAP(slapfigh_map_mcu) MCFG_CPU_IO_MAP(io_map_mcu) - MCFG_CPU_VBLANK_INT_DRIVER("screen", slapfght_state, vblank_irq) MCFG_DEVICE_ADD("mainlatch", LS259, 0) MCFG_ADDRESSABLE_LATCH_Q0_OUT_CB(WRITELINE(slapfght_state, sound_reset_w)) @@ -1044,6 +1043,7 @@ MACHINE_CONFIG_START(slapfght_state::slapfigh) MCFG_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8-1, 32*8-1-1) MCFG_SCREEN_UPDATE_DRIVER(slapfght_state, screen_update_slapfight) MCFG_SCREEN_VBLANK_CALLBACK(DEVWRITELINE("spriteram", buffered_spriteram8_device, vblank_copy_rising)) + MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE(slapfght_state, vblank_irq)) MCFG_SCREEN_PALETTE("palette") MCFG_GFXDECODE_ADD("gfxdecode", "palette", slapfght) diff --git a/src/mame/drivers/twincobr.cpp b/src/mame/drivers/twincobr.cpp index 276870da5cb..87d5da0a8f6 100644 --- a/src/mame/drivers/twincobr.cpp +++ b/src/mame/drivers/twincobr.cpp @@ -656,7 +656,6 @@ MACHINE_CONFIG_START(twincobr_state::twincobr) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", M68000, XTAL(28'000'000)/4) /* 7MHz - Main board Crystal is 28MHz */ MCFG_CPU_PROGRAM_MAP(main_program_map) - MCFG_CPU_VBLANK_INT_DRIVER("screen", twincobr_state, twincobr_interrupt) MCFG_CPU_ADD("audiocpu", Z80, XTAL(28'000'000)/8) /* 3.5MHz */ MCFG_CPU_PROGRAM_MAP(sound_program_map) @@ -700,6 +699,7 @@ MACHINE_CONFIG_START(twincobr_state::twincobr) MCFG_SCREEN_RAW_PARAMS(XTAL(28'000'000)/4, 446, 0, 320, 286, 0, 240) MCFG_SCREEN_UPDATE_DRIVER(twincobr_state, screen_update_toaplan0) MCFG_SCREEN_VBLANK_CALLBACK(DEVWRITELINE("spriteram16", buffered_spriteram16_device, vblank_copy_rising)) + MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE(twincobr_state, twincobr_vblank_irq)) MCFG_SCREEN_PALETTE("palette") MCFG_GFXDECODE_ADD("gfxdecode", "palette", twincobr) diff --git a/src/mame/drivers/wardner.cpp b/src/mame/drivers/wardner.cpp index 2f0bd26d82e..8dc890f1d07 100644 --- a/src/mame/drivers/wardner.cpp +++ b/src/mame/drivers/wardner.cpp @@ -381,7 +381,6 @@ MACHINE_CONFIG_START(wardner_state::wardner) MCFG_CPU_ADD("maincpu", Z80, XTAL(24'000'000)/4) /* 6MHz */ MCFG_CPU_PROGRAM_MAP(main_program_map) MCFG_CPU_IO_MAP(main_io_map) - MCFG_CPU_VBLANK_INT_DRIVER("screen", wardner_state, wardner_interrupt) MCFG_DEVICE_ADD("membank", ADDRESS_MAP_BANK, 0) MCFG_DEVICE_PROGRAM_MAP(main_bank_map) @@ -430,6 +429,7 @@ MACHINE_CONFIG_START(wardner_state::wardner) MCFG_SCREEN_RAW_PARAMS(XTAL(14'000'000)/2, 446, 0, 320, 286, 0, 240) MCFG_SCREEN_UPDATE_DRIVER(wardner_state, screen_update_toaplan0) MCFG_SCREEN_VBLANK_CALLBACK(DEVWRITELINE("spriteram8", buffered_spriteram8_device, vblank_copy_rising)) + MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE(wardner_state, wardner_vblank_irq)) MCFG_SCREEN_PALETTE("palette") MCFG_GFXDECODE_ADD("gfxdecode", "palette", wardner) diff --git a/src/mame/includes/slapfght.h b/src/mame/includes/slapfght.h index 0b904614dff..0af1bc40019 100644 --- a/src/mame/includes/slapfght.h +++ b/src/mame/includes/slapfght.h @@ -114,7 +114,7 @@ public: uint32_t screen_update_perfrman(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_slapfight(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - INTERRUPT_GEN_MEMBER(vblank_irq); + DECLARE_WRITE_LINE_MEMBER(vblank_irq); INTERRUPT_GEN_MEMBER(sound_nmi); void tigerhb2(machine_config &config); void tigerhb1(machine_config &config); diff --git a/src/mame/includes/twincobr.h b/src/mame/includes/twincobr.h index a6d4548b75a..4bc29d2f649 100644 --- a/src/mame/includes/twincobr.h +++ b/src/mame/includes/twincobr.h @@ -108,8 +108,8 @@ public: DECLARE_MACHINE_RESET(twincobr); DECLARE_VIDEO_START(toaplan0); uint32_t screen_update_toaplan0(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - INTERRUPT_GEN_MEMBER(twincobr_interrupt); - INTERRUPT_GEN_MEMBER(wardner_interrupt); + DECLARE_WRITE_LINE_MEMBER(twincobr_vblank_irq); + DECLARE_WRITE_LINE_MEMBER(wardner_vblank_irq); void twincobr_restore_dsp(); void twincobr_create_tilemaps(); DECLARE_WRITE_LINE_MEMBER(display_on_w); diff --git a/src/mame/machine/twincobr.cpp b/src/mame/machine/twincobr.cpp index 2219b3c6ec7..2a081806c11 100644 --- a/src/mame/machine/twincobr.cpp +++ b/src/mame/machine/twincobr.cpp @@ -15,19 +15,21 @@ #define LOG(x) do { if (LOG_DSP_CALLS) logerror x; } while (0) -INTERRUPT_GEN_MEMBER(twincobr_state::twincobr_interrupt) +WRITE_LINE_MEMBER(twincobr_state::twincobr_vblank_irq) { - if (m_intenable) { + if (state && m_intenable) + { m_intenable = 0; - device.execute().set_input_line(M68K_IRQ_4, HOLD_LINE); + m_maincpu->set_input_line(M68K_IRQ_4, HOLD_LINE); } } -INTERRUPT_GEN_MEMBER(twincobr_state::wardner_interrupt) +WRITE_LINE_MEMBER(twincobr_state::wardner_vblank_irq) { - if (m_intenable) { + if (state && m_intenable) + { m_intenable = 0; - device.execute().set_input_line(0, HOLD_LINE); + m_maincpu->set_input_line(0, HOLD_LINE); } } -- cgit v1.2.3