diff options
author | AJR <ajrhacker@users.noreply.github.com> | 2018-03-28 14:38:30 -0400 |
---|---|---|
committer | AJR <ajrhacker@users.noreply.github.com> | 2018-03-28 14:38:30 -0400 |
commit | fb583032202d4cb238506370f710d8bb70cd3e0f (patch) | |
tree | 3e3ecfc84fc93b16e12da745adf0238faff81977 | |
parent | 719209e150471624a7890f5fd18612ef0d42cb51 (diff) |
ddenlovr.cpp: Replace CPU_VBLANK_INT with SCREEN_VBLANK_CALLBACK (nw)
-rw-r--r-- | src/mame/drivers/ddenlovr.cpp | 154 |
1 files changed, 107 insertions, 47 deletions
diff --git a/src/mame/drivers/ddenlovr.cpp b/src/mame/drivers/ddenlovr.cpp index 2db837c1dd5..5a7311d8144 100644 --- a/src/mame/drivers/ddenlovr.cpp +++ b/src/mame/drivers/ddenlovr.cpp @@ -246,15 +246,17 @@ public: uint32_t screen_update_ddenlovr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_htengoku(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - INTERRUPT_GEN_MEMBER(quizchq_irq); - INTERRUPT_GEN_MEMBER(mmpanic_irq); + DECLARE_WRITE_LINE_MEMBER(ddenlovr_irq); + DECLARE_WRITE_LINE_MEMBER(quizchq_irq); + DECLARE_WRITE_LINE_MEMBER(mmpanic_irq); DECLARE_WRITE_LINE_MEMBER(quizchq_rtc_irq); DECLARE_WRITE_LINE_MEMBER(mmpanic_rtc_irq); - INTERRUPT_GEN_MEMBER(hanakanz_irq); - INTERRUPT_GEN_MEMBER(mjchuuka_irq); - INTERRUPT_GEN_MEMBER(hginga_irq); - INTERRUPT_GEN_MEMBER(mjflove_irq); - INTERRUPT_GEN_MEMBER(hparadis_irq); + DECLARE_WRITE_LINE_MEMBER(hanakanz_irq); + DECLARE_WRITE_LINE_MEMBER(mjchuuka_irq); + DECLARE_WRITE_LINE_MEMBER(funkyfig_irq); + DECLARE_WRITE_LINE_MEMBER(hginga_irq); + DECLARE_WRITE_LINE_MEMBER(mjflove_irq); + DECLARE_WRITE_LINE_MEMBER(hparadis_irq); DECLARE_WRITE_LINE_MEMBER(hanakanz_rtc_irq); DECLARE_WRITE_LINE_MEMBER(mjchuuka_rtc_irq); DECLARE_WRITE_LINE_MEMBER(hginga_rtc_irq); @@ -9744,12 +9746,17 @@ MACHINE_START_MEMBER(ddenlovr_state,sryudens) Don Den Lover Vol.1 ***************************************************************************/ +WRITE_LINE_MEMBER(ddenlovr_state::ddenlovr_irq) +{ + if (state) + m_maincpu->set_input_line(M68K_IRQ_1, HOLD_LINE); +} + MACHINE_CONFIG_START(ddenlovr_state::ddenlovr) /* basic machine hardware */ MCFG_CPU_ADD("maincpu",M68000, XTAL(24'000'000) / 2) MCFG_CPU_PROGRAM_MAP(ddenlovr_map) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, irq1_line_hold) MCFG_DEVICE_ADD("mainlatch", LS259, 0) MCFG_ADDRESSABLE_LATCH_Q1_OUT_CB(WRITELINE(ddenlovr_state, ddenlovr_blitter_irq_ack_w)) @@ -9768,6 +9775,7 @@ MACHINE_CONFIG_START(ddenlovr_state::ddenlovr) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, ddenlovr_irq)) MCFG_PALETTE_ADD("palette", 0x100) @@ -9870,9 +9878,10 @@ MACHINE_CONFIG_END 0xee is vblank 0xfc is from the 6242RTC */ -INTERRUPT_GEN_MEMBER(ddenlovr_state::quizchq_irq) +WRITE_LINE_MEMBER(ddenlovr_state::quizchq_irq) { -// int scanline = param; + if (!state) + return; /* I haven't found a irq ack register, so I need this kludge to make sure I don't lose any interrupt generated by the blitter, @@ -9883,9 +9892,10 @@ INTERRUPT_GEN_MEMBER(ddenlovr_state::quizchq_irq) m_maincpu->set_input_line_and_vector(0, HOLD_LINE, 0xee); } -WRITE_LINE_MEMBER(ddenlovr_state::quizchq_rtc_irq ) +WRITE_LINE_MEMBER(ddenlovr_state::quizchq_rtc_irq) { - m_maincpu->set_input_line_and_vector(0, HOLD_LINE, 0xfc); + if (state) + m_maincpu->set_input_line_and_vector(0, HOLD_LINE, 0xfc); } MACHINE_CONFIG_START(ddenlovr_state::quizchq) @@ -9894,7 +9904,6 @@ MACHINE_CONFIG_START(ddenlovr_state::quizchq) MCFG_CPU_ADD("maincpu", Z80, XTAL(16'000'000)/2) /* Verified */ MCFG_CPU_PROGRAM_MAP(quizchq_map) MCFG_CPU_IO_MAP(quizchq_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, quizchq_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,rongrong) MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,ddenlovr) @@ -9908,6 +9917,7 @@ MACHINE_CONFIG_START(ddenlovr_state::quizchq) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, quizchq_irq)) MCFG_PALETTE_ADD("palette", 0x100) @@ -9949,9 +9959,10 @@ MACHINE_CONFIG_END RST 20 is from the link device? */ -INTERRUPT_GEN_MEMBER(ddenlovr_state::mmpanic_irq) +WRITE_LINE_MEMBER(ddenlovr_state::mmpanic_irq) { - //int scanline = param; + if (!state) + return; /* I haven't found a irq ack register, so I need this kludge to make sure I don't lose any interrupt generated by the blitter, @@ -9960,12 +9971,14 @@ INTERRUPT_GEN_MEMBER(ddenlovr_state::mmpanic_irq) // return; m_maincpu->set_input_line_and_vector(0, HOLD_LINE, 0xcf); // RST 08, vblank + m_soundcpu->set_input_line(0, HOLD_LINE); // NMI by main cpu } -WRITE_LINE_MEMBER(ddenlovr_state::mmpanic_rtc_irq ) +WRITE_LINE_MEMBER(ddenlovr_state::mmpanic_rtc_irq) { - m_maincpu->set_input_line_and_vector(0, HOLD_LINE, 0xdf); // RST 18, clock + if (state) + m_maincpu->set_input_line_and_vector(0, HOLD_LINE, 0xdf); // RST 18, clock } MACHINE_CONFIG_START(ddenlovr_state::mmpanic) @@ -9974,12 +9987,10 @@ MACHINE_CONFIG_START(ddenlovr_state::mmpanic) MCFG_CPU_ADD("maincpu", Z80, 8000000) MCFG_CPU_PROGRAM_MAP(mmpanic_map) MCFG_CPU_IO_MAP(mmpanic_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, mmpanic_irq) MCFG_CPU_ADD("soundcpu", Z80, 3579545) MCFG_CPU_PROGRAM_MAP(mmpanic_sound_map) MCFG_CPU_IO_MAP(mmpanic_sound_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, irq0_line_hold) // NMI by main cpu MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,mmpanic) MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,ddenlovr) @@ -9993,6 +10004,7 @@ MACHINE_CONFIG_START(ddenlovr_state::mmpanic) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, mmpanic_irq)) MCFG_PALETTE_ADD("palette", 0x100) @@ -10031,8 +10043,11 @@ MACHINE_CONFIG_END 0xe2 is from the 6242RTC */ -INTERRUPT_GEN_MEMBER(ddenlovr_state::hanakanz_irq) +WRITE_LINE_MEMBER(ddenlovr_state::hanakanz_irq) { + if (!state) + return; + /* I haven't found a irq ack register, so I need this kludge to make sure I don't lose any interrupt generated by the blitter, otherwise quizchq would lock up. */ @@ -10044,6 +10059,9 @@ INTERRUPT_GEN_MEMBER(ddenlovr_state::hanakanz_irq) WRITE_LINE_MEMBER(ddenlovr_state::hanakanz_rtc_irq) { + if (!state) + return; + /* I haven't found a irq ack register, so I need this kludge to make sure I don't lose any interrupt generated by the blitter, otherwise quizchq would lock up. */ @@ -10059,7 +10077,6 @@ MACHINE_CONFIG_START(ddenlovr_state::hanakanz) MCFG_CPU_ADD("maincpu",Z80,8000000) // TMPZ84C015BF-8 MCFG_CPU_PROGRAM_MAP(hanakanz_map) MCFG_CPU_IO_MAP(hanakanz_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, hanakanz_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,hanakanz) MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,ddenlovr) @@ -10073,6 +10090,7 @@ MACHINE_CONFIG_START(ddenlovr_state::hanakanz) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, hanakanz_irq)) MCFG_PALETTE_ADD("palette", 0x200) @@ -10106,7 +10124,6 @@ MACHINE_CONFIG_START(ddenlovr_state::kotbinyo) MCFG_CPU_ADD("maincpu",Z80, XTAL(20'000'000) / 2) // !! KL5C80A12CFP @ 10MHz? (actually 4 times faster than Z80) !! MCFG_CPU_PROGRAM_MAP(hanakanz_map) MCFG_CPU_IO_MAP(kotbinyo_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, hanakanz_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,hanakanz) MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,ddenlovr) @@ -10120,6 +10137,7 @@ MACHINE_CONFIG_START(ddenlovr_state::kotbinyo) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, hanakanz_irq)) MCFG_PALETTE_ADD("palette", 0x200) @@ -10166,8 +10184,11 @@ MACHINE_CONFIG_END 0xf8 is vblank 0xfa is from the 6242RTC */ -INTERRUPT_GEN_MEMBER(ddenlovr_state::mjchuuka_irq) +WRITE_LINE_MEMBER(ddenlovr_state::mjchuuka_irq) { + if (!state) + return; + /* I haven't found a irq ack register, so I need this kludge to make sure I don't lose any interrupt generated by the blitter, otherwise quizchq would lock up. */ @@ -10179,6 +10200,9 @@ INTERRUPT_GEN_MEMBER(ddenlovr_state::mjchuuka_irq) WRITE_LINE_MEMBER(ddenlovr_state::mjchuuka_rtc_irq) { + if (!state) + return; + /* I haven't found a irq ack register, so I need this kludge to make sure I don't lose any interrupt generated by the blitter, otherwise quizchq would lock up. */ @@ -10194,7 +10218,9 @@ MACHINE_CONFIG_START(ddenlovr_state::mjchuuka) /* basic machine hardware */ MCFG_CPU_MODIFY("maincpu") MCFG_CPU_IO_MAP(mjchuuka_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, mjchuuka_irq) + + MCFG_DEVICE_MODIFY("screen") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, mjchuuka_irq)) MCFG_DEVICE_MODIFY("rtc") MCFG_MSM6242_OUT_INT_HANDLER(WRITELINE(ddenlovr_state, mjchuuka_rtc_irq)) @@ -10204,15 +10230,32 @@ MACHINE_CONFIG_START(ddenlovr_state::mjchuuka) MACHINE_CONFIG_END +WRITE_LINE_MEMBER(ddenlovr_state::funkyfig_irq) +{ + if (!state) + return; + + /* I haven't found a irq ack register, so I need this kludge to + make sure I don't lose any interrupt generated by the blitter, + otherwise quizchq would lock up. */ + //if (downcast<cpu_device *>(m_maincpu)->input_state(0)) + // return; + + m_maincpu->set_input_line_and_vector(0, HOLD_LINE, 0xf8); // RST 08, vblank + m_soundcpu->set_input_line(0, HOLD_LINE); // NMI by main cpu +} + MACHINE_CONFIG_START(ddenlovr_state::funkyfig) mmpanic(config); MCFG_CPU_MODIFY("maincpu") MCFG_CPU_PROGRAM_MAP(funkyfig_map) MCFG_CPU_IO_MAP(funkyfig_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, mjchuuka_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,funkyfig) + MCFG_DEVICE_MODIFY("screen") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, funkyfig_irq)) + MCFG_DEVICE_MODIFY("rtc") MCFG_MSM6242_OUT_INT_HANDLER(WRITELINE(ddenlovr_state, mjchuuka_rtc_irq)) @@ -10233,7 +10276,6 @@ MACHINE_CONFIG_START(ddenlovr_state::mjschuka) MCFG_CPU_ADD("maincpu",Z80,XTAL(16'000'000)/2) MCFG_CPU_PROGRAM_MAP(mjmyster_map) MCFG_CPU_IO_MAP(mjschuka_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, hginga_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,hanakanz) MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,ddenlovr) @@ -10247,6 +10289,7 @@ MACHINE_CONFIG_START(ddenlovr_state::mjschuka) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, hginga_irq)) MCFG_PALETTE_ADD("palette", 0x200) @@ -10347,9 +10390,10 @@ MACHINE_CONFIG_END 0xfa and/or 0xfc are from the blitter (almost identical) 0xee triggered by the RTC */ -INTERRUPT_GEN_MEMBER(ddenlovr_state::hginga_irq) +WRITE_LINE_MEMBER(ddenlovr_state::hginga_irq) { -// int scanline = param; + if (!state) + return; /* I haven't found a irq ack register, so I need this kludge to make sure I don't lose any interrupt generated by the blitter, @@ -10362,6 +10406,9 @@ INTERRUPT_GEN_MEMBER(ddenlovr_state::hginga_irq) WRITE_LINE_MEMBER(ddenlovr_state::hginga_rtc_irq) { + if (!state) + return; + /* I haven't found a irq ack register, so I need this kludge to make sure I don't lose any interrupt generated by the blitter, otherwise quizchq would lock up. */ @@ -10379,7 +10426,9 @@ MACHINE_CONFIG_START(ddenlovr_state::hginga) MCFG_CPU_MODIFY("maincpu") MCFG_CPU_PROGRAM_MAP(hginga_map) MCFG_CPU_IO_MAP(hginga_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, hginga_irq) + + MCFG_DEVICE_MODIFY("screen") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, hginga_irq)) MCFG_DEVICE_MODIFY("rtc") MCFG_MSM6242_OUT_INT_HANDLER(WRITELINE(ddenlovr_state, hginga_rtc_irq)) @@ -10399,7 +10448,9 @@ MACHINE_CONFIG_START(ddenlovr_state::hgokou) MCFG_CPU_MODIFY("maincpu") MCFG_CPU_PROGRAM_MAP(hgokou_map) MCFG_CPU_IO_MAP(hgokou_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, hginga_irq) + + MCFG_DEVICE_MODIFY("screen") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, hginga_irq)) MCFG_DEVICE_MODIFY("rtc") MCFG_MSM6242_OUT_INT_HANDLER(WRITELINE(ddenlovr_state, hginga_rtc_irq)) @@ -10476,16 +10527,22 @@ MACHINE_CONFIG_START(ddenlovr_state::mjmyornt) MACHINE_CONFIG_END -INTERRUPT_GEN_MEMBER(ddenlovr_state::mjflove_irq) +WRITE_LINE_MEMBER(ddenlovr_state::mjflove_irq) { - m_mjflove_irq_cause = 1; - m_maincpu->set_input_line(0, HOLD_LINE); + if (state) + { + m_mjflove_irq_cause = 1; + m_maincpu->set_input_line(0, HOLD_LINE); + } } WRITE_LINE_MEMBER(ddenlovr_state::mjflove_rtc_irq) { - m_mjflove_irq_cause = 2; - m_maincpu->set_input_line(0, HOLD_LINE); + if (state) + { + m_mjflove_irq_cause = 2; + m_maincpu->set_input_line(0, HOLD_LINE); + } } @@ -10493,15 +10550,15 @@ MACHINE_CONFIG_START(ddenlovr_state::mjflove) quizchq(config); /* basic machine hardware */ - MCFG_DEVICE_REMOVE("maincpu") - - MCFG_CPU_ADD("maincpu", Z80, XTAL(16'000'000)/2) /* Verified */ + MCFG_CPU_REPLACE("maincpu", Z80, XTAL(16'000'000)/2) /* Verified */ MCFG_CPU_PROGRAM_MAP(rongrong_map) MCFG_CPU_IO_MAP(mjflove_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, mjflove_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,mjflove) + MCFG_DEVICE_MODIFY("screen") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, mjflove_irq)) + MCFG_DEVICE_REPLACE("rtc", RTC72421, XTAL(32'768)) MCFG_MSM6242_OUT_INT_HANDLER(WRITELINE(ddenlovr_state, mjflove_rtc_irq)) @@ -10513,9 +10570,10 @@ MACHINE_CONFIG_END /* It runs in IM 2, thus needs a vector on the data bus: 0xee is vblank */ -INTERRUPT_GEN_MEMBER(ddenlovr_state::hparadis_irq) +WRITE_LINE_MEMBER(ddenlovr_state::hparadis_irq) { - device.execute().set_input_line_and_vector(0, HOLD_LINE, 0xee); + if (state) + m_maincpu->set_input_line_and_vector(0, HOLD_LINE, 0xee); } MACHINE_CONFIG_START(ddenlovr_state::hparadis) @@ -10525,7 +10583,9 @@ MACHINE_CONFIG_START(ddenlovr_state::hparadis) MCFG_CPU_MODIFY("maincpu") MCFG_CPU_PROGRAM_MAP(hparadis_map) MCFG_CPU_IO_MAP(hparadis_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, hparadis_irq) + + MCFG_DEVICE_MODIFY("screen") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, hparadis_irq)) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,hparadis) MACHINE_CONFIG_END @@ -10538,7 +10598,6 @@ MACHINE_CONFIG_START(ddenlovr_state::jongtei) MCFG_CPU_ADD("maincpu",Z80, XTAL(20'000'000) / 2) // TMPZ84C015 MCFG_CPU_PROGRAM_MAP(hanakanz_map) MCFG_CPU_IO_MAP(jongtei_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, hanakanz_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,hanakanz) MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,ddenlovr) @@ -10552,6 +10611,7 @@ MACHINE_CONFIG_START(ddenlovr_state::jongtei) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, hanakanz_irq)) MCFG_PALETTE_ADD("palette", 0x200) @@ -10591,7 +10651,6 @@ MACHINE_CONFIG_START(ddenlovr_state::sryudens) MCFG_CPU_ADD("maincpu",Z80, XTAL(16'000'000) / 2) // ? MCFG_CPU_PROGRAM_MAP(sryudens_map) MCFG_CPU_IO_MAP(sryudens_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, mjchuuka_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,sryudens) MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,ddenlovr) @@ -10605,6 +10664,7 @@ MACHINE_CONFIG_START(ddenlovr_state::sryudens) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, mjchuuka_irq)) MCFG_PALETTE_ADD("palette", 0x100) @@ -10638,7 +10698,6 @@ MACHINE_CONFIG_START(ddenlovr_state::janshinp) MCFG_CPU_ADD("maincpu",Z80, XTAL(16'000'000) / 2) MCFG_CPU_PROGRAM_MAP(janshinp_map) MCFG_CPU_IO_MAP(janshinp_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, mjchuuka_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,hanakanz) MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,ddenlovr) @@ -10652,6 +10711,7 @@ MACHINE_CONFIG_START(ddenlovr_state::janshinp) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, mjchuuka_irq)) MCFG_PALETTE_ADD("palette", 0x100) @@ -10706,7 +10766,6 @@ MACHINE_CONFIG_START(ddenlovr_state::seljan2) MCFG_CPU_ADD("maincpu",Z80, XTAL(16'000'000) / 2) MCFG_CPU_PROGRAM_MAP(seljan2_map) MCFG_CPU_IO_MAP(seljan2_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, mjchuuka_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,seljan2) MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,ddenlovr) @@ -10720,6 +10779,7 @@ MACHINE_CONFIG_START(ddenlovr_state::seljan2) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, mjchuuka_irq)) MCFG_PALETTE_ADD("palette", 0x100) @@ -10756,7 +10816,6 @@ MACHINE_CONFIG_START(ddenlovr_state::daimyojn) MCFG_CPU_ADD("maincpu",Z80, XTAL(20'000'000) / 2) MCFG_CPU_PROGRAM_MAP(hanakanz_map) MCFG_CPU_IO_MAP(daimyojn_portmap) - MCFG_CPU_VBLANK_INT_DRIVER("screen", ddenlovr_state, hanakanz_irq) MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,mjflove) MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,ddenlovr) @@ -10770,6 +10829,7 @@ MACHINE_CONFIG_START(ddenlovr_state::daimyojn) MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(ddenlovr_state, hanakanz_irq)) MCFG_PALETTE_ADD("palette", 0x200) |