From a7262c8358b1550f70f1c43acb4a5d32bdab7a4b Mon Sep 17 00:00:00 2001 From: AJR Date: Wed, 28 Mar 2018 21:38:07 -0400 Subject: freekick.cpp, nbmj91915.cpp, niyanpai.cpp: Replace MCFG_CPU_VBLANK_INT with line callbacks (nw) --- src/mame/drivers/freekick.cpp | 14 +++++++------- src/mame/drivers/nbmj9195.cpp | 9 +-------- src/mame/drivers/niyanpai.cpp | 7 ++++--- src/mame/includes/freekick.h | 2 +- src/mame/includes/galaga.h | 3 +-- src/mame/includes/nbmj9195.h | 2 -- src/mame/includes/niyanpai.h | 2 +- 7 files changed, 15 insertions(+), 24 deletions(-) diff --git a/src/mame/drivers/freekick.cpp b/src/mame/drivers/freekick.cpp index b8aea34a563..2c10ba20c7a 100644 --- a/src/mame/drivers/freekick.cpp +++ b/src/mame/drivers/freekick.cpp @@ -113,12 +113,14 @@ WRITE8_MEMBER(freekick_state::pbillrd_bankswitch_w) WRITE_LINE_MEMBER(freekick_state::nmi_enable_w) { m_nmi_en = state; + if (!m_nmi_en) + m_maincpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE); } -INTERRUPT_GEN_MEMBER(freekick_state::freekick_irqgen) +WRITE_LINE_MEMBER(freekick_state::vblank_irq) { - if (m_nmi_en) - device.execute().set_input_line(INPUT_LINE_NMI, PULSE_LINE); + if (state && m_nmi_en) + m_maincpu->set_input_line(INPUT_LINE_NMI, ASSERT_LINE); } WRITE8_MEMBER(freekick_state::oigas_5_w) @@ -735,7 +737,6 @@ MACHINE_CONFIG_START(freekick_state::omega) MCFG_CPU_IO_MAP(omega_io_map) MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map) MCFG_CPU_PERIODIC_INT_DRIVER(freekick_state, irq0_line_hold, 120) // measured on PCB - MCFG_CPU_VBLANK_INT_DRIVER("screen", freekick_state, freekick_irqgen) MCFG_DEVICE_ADD("outlatch", LS259, 0) // 3M MCFG_ADDRESSABLE_LATCH_Q0_OUT_CB(WRITELINE(freekick_state, flipscreen_w)) @@ -749,6 +750,7 @@ MACHINE_CONFIG_START(freekick_state::omega) MCFG_SCREEN_RAW_PARAMS(XTAL(18'432'000)/3, 768/2, 0, 512/2, 263, 0+16, 224+16) // unknown divisor MCFG_SCREEN_UPDATE_DRIVER(freekick_state, screen_update_gigas) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(freekick_state, vblank_irq)) MCFG_GFXDECODE_ADD("gfxdecode", "palette", freekick) MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", "proms", 0x200) @@ -775,7 +777,6 @@ MACHINE_CONFIG_START(freekick_state::base) MCFG_CPU_ADD("maincpu", Z80, XTAL(12'000'000)/4) MCFG_CPU_PROGRAM_MAP(pbillrd_map) MCFG_CPU_PERIODIC_INT_DRIVER(freekick_state, irq0_line_hold, 120) // measured on PCB - MCFG_CPU_VBLANK_INT_DRIVER("screen", freekick_state, freekick_irqgen) MCFG_DEVICE_ADD("outlatch", LS259, 0) MCFG_ADDRESSABLE_LATCH_Q2_OUT_CB(WRITELINE(freekick_state, coin1_w)) @@ -787,6 +788,7 @@ MACHINE_CONFIG_START(freekick_state::base) MCFG_SCREEN_RAW_PARAMS(XTAL(12'000'000)/2, 768/2, 0, 512/2, 263, 0+16, 224+16) MCFG_SCREEN_UPDATE_DRIVER(freekick_state, screen_update_pbillrd) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(freekick_state, vblank_irq)) MCFG_GFXDECODE_ADD("gfxdecode", "palette", freekick) MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", "proms", 0x200) @@ -824,7 +826,6 @@ MACHINE_CONFIG_START(freekick_state::pbillrdm) MCFG_CPU_PROGRAM_MAP(pbillrd_map) MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map) MCFG_CPU_PERIODIC_INT_DRIVER(freekick_state, irq0_line_hold, 120) // measured on PCB - MCFG_CPU_VBLANK_INT_DRIVER("screen", freekick_state, freekick_irqgen) MACHINE_CONFIG_END MACHINE_CONFIG_START(freekick_state::freekick) @@ -887,7 +888,6 @@ MACHINE_CONFIG_START(freekick_state::gigasm) MCFG_CPU_IO_MAP(gigas_io_map) MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map) MCFG_CPU_PERIODIC_INT_DRIVER(freekick_state, irq0_line_hold, 120) // measured on PCB - MCFG_CPU_VBLANK_INT_DRIVER("screen", freekick_state, freekick_irqgen) MCFG_DEVICE_MODIFY("outlatch") MCFG_ADDRESSABLE_LATCH_Q0_OUT_CB(WRITELINE(freekick_state, flipscreen_w)) diff --git a/src/mame/drivers/nbmj9195.cpp b/src/mame/drivers/nbmj9195.cpp index c8c256eb1cf..b08c68ccd90 100644 --- a/src/mame/drivers/nbmj9195.cpp +++ b/src/mame/drivers/nbmj9195.cpp @@ -212,13 +212,6 @@ WRITE8_MEMBER(nbmj9195_state::soundcpu_porte_w) -/* CTC of main cpu, ch0 trigger is vblank */ -INTERRUPT_GEN_MEMBER(nbmj9195_state::ctc0_trg1) -{ - m_maincpu->trg1(1); - m_maincpu->trg1(0); -} - void nbmj9195_state::machine_reset() { } @@ -2545,7 +2538,6 @@ MACHINE_CONFIG_START(nbmj9195_state::NBMJDRV1_base) MCFG_Z80_DAISY_CHAIN(daisy_chain_main) MCFG_CPU_PROGRAM_MAP(sailorws_map) MCFG_CPU_IO_MAP(sailorws_io_map) - MCFG_CPU_VBLANK_INT_DRIVER("screen", nbmj9195_state, ctc0_trg1) /* vblank is connect to ctc trigger */ MCFG_CPU_ADD("audiocpu", TMPZ84C011, 8000000) /* TMPZ84C011, 8.00 MHz */ MCFG_Z80_DAISY_CHAIN(daisy_chain_sound) @@ -2566,6 +2558,7 @@ MACHINE_CONFIG_START(nbmj9195_state::NBMJDRV1_base) MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 240-1) MCFG_SCREEN_UPDATE_DRIVER(nbmj9195_state, screen_update) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(DEVWRITELINE("maincpu", tmpz84c011_device, trg1)) MCFG_DEVCB_INVERT MCFG_PALETTE_ADD("palette", 256) diff --git a/src/mame/drivers/niyanpai.cpp b/src/mame/drivers/niyanpai.cpp index e93f22ce272..7ec211aaebc 100644 --- a/src/mame/drivers/niyanpai.cpp +++ b/src/mame/drivers/niyanpai.cpp @@ -685,9 +685,10 @@ static INPUT_PORTS_START( zokumahj ) // I don't have manual for this game. INPUT_PORTS_END -INTERRUPT_GEN_MEMBER(niyanpai_state::interrupt) +WRITE_LINE_MEMBER(niyanpai_state::vblank_irq) { - m_tmp68301->external_interrupt_0(); + if (state) + m_tmp68301->external_interrupt_0(); } @@ -696,7 +697,6 @@ MACHINE_CONFIG_START(niyanpai_state::niyanpai) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", M68000, 12288000/2) /* TMP68301, 6.144 MHz */ MCFG_CPU_PROGRAM_MAP(niyanpai_map) - MCFG_CPU_VBLANK_INT_DRIVER("screen", niyanpai_state, interrupt) MCFG_CPU_IRQ_ACKNOWLEDGE_DEVICE("tmp68301",tmp68301_device,irq_callback) MCFG_DEVICE_ADD("tmp68301", TMP68301, 0) @@ -714,6 +714,7 @@ MACHINE_CONFIG_START(niyanpai_state::niyanpai) MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 240-1) MCFG_SCREEN_UPDATE_DRIVER(niyanpai_state, screen_update) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(niyanpai_state, vblank_irq)) MCFG_PALETTE_ADD("palette", 256*3) diff --git a/src/mame/includes/freekick.h b/src/mame/includes/freekick.h index 3a03839799e..8b40fe6a745 100644 --- a/src/mame/includes/freekick.h +++ b/src/mame/includes/freekick.h @@ -62,7 +62,7 @@ public: uint32_t screen_update_pbillrd(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_freekick(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_gigas(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - INTERRUPT_GEN_MEMBER(freekick_irqgen); + DECLARE_WRITE_LINE_MEMBER(vblank_irq); void gigas_draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect ); void pbillrd_draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect ); void freekick_draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect ); diff --git a/src/mame/includes/galaga.h b/src/mame/includes/galaga.h index cf8bd80b43d..b0320f7ab4b 100644 --- a/src/mame/includes/galaga.h +++ b/src/mame/includes/galaga.h @@ -82,8 +82,7 @@ public: DECLARE_PALETTE_INIT(galaga); uint32_t screen_update_galaga(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); DECLARE_WRITE_LINE_MEMBER(screen_vblank_galaga); - INTERRUPT_GEN_MEMBER(main_vblank_irq); - INTERRUPT_GEN_MEMBER(sub_vblank_irq); + DECLARE_WRITE_LINE_MEMBER(vblank_irq); TIMER_CALLBACK_MEMBER(cpu3_interrupt_callback); void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect ); void draw_stars(bitmap_ind16 &bitmap, const rectangle &cliprect ); diff --git a/src/mame/includes/nbmj9195.h b/src/mame/includes/nbmj9195.h index d7da6b1d027..9548d1a7d06 100644 --- a/src/mame/includes/nbmj9195.h +++ b/src/mame/includes/nbmj9195.h @@ -103,8 +103,6 @@ public: DECLARE_VIDEO_START(_1layer); DECLARE_VIDEO_START(nb22090); - INTERRUPT_GEN_MEMBER(ctc0_trg1); - uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); int blitter_r(int offset, int vram); void blitter_w(int offset, int data, int vram); diff --git a/src/mame/includes/niyanpai.h b/src/mame/includes/niyanpai.h index 44c70a9807e..6fc19a9e905 100644 --- a/src/mame/includes/niyanpai.h +++ b/src/mame/includes/niyanpai.h @@ -95,7 +95,7 @@ public: void update_pixel(int vram, int x, int y); void gfxdraw(int vram); - INTERRUPT_GEN_MEMBER(interrupt); + DECLARE_WRITE_LINE_MEMBER(vblank_irq); void musobana(machine_config &config); void zokumahj(machine_config &config); -- cgit v1.2.3