From 3e9dc68be07fbd1030a4e1e884b4564d31711699 Mon Sep 17 00:00:00 2001 From: Ivan Vangelista Date: Mon, 20 Jun 2016 17:25:57 +0200 Subject: [PATCH] more trampolines removal (nw) --- src/mame/drivers/big10.cpp | 14 +------------- src/mame/drivers/cliffhgr.cpp | 10 +--------- src/mame/drivers/cvs.cpp | 10 +++++----- src/mame/drivers/h19.cpp | 7 +------ src/mame/drivers/irisha.cpp | 14 +------------- src/mame/drivers/junior.cpp | 9 +-------- src/mame/drivers/kas89.cpp | 13 +------------ src/mame/drivers/kurukuru.cpp | 10 ++-------- src/mame/drivers/metalmx.cpp | 7 +------ src/mame/drivers/myvision.cpp | 8 +------- src/mame/drivers/sangho.cpp | 10 ++-------- src/mame/drivers/sfkick.cpp | 7 +------ src/mame/drivers/sg1000.cpp | 15 +++------------ src/mame/drivers/sg1000a.cpp | 7 +------ src/mame/drivers/sothello.cpp | 8 +------- src/mame/drivers/tapatune.cpp | 10 +--------- src/mame/drivers/tonton.cpp | 13 +------------ src/mame/includes/cvs.h | 1 + src/mame/includes/metalmx.h | 1 - src/mame/includes/sg1000.h | 2 -- 20 files changed, 26 insertions(+), 150 deletions(-) diff --git a/src/mame/drivers/big10.cpp b/src/mame/drivers/big10.cpp index 26b7c4c05e7..a7979070457 100644 --- a/src/mame/drivers/big10.cpp +++ b/src/mame/drivers/big10.cpp @@ -82,7 +82,6 @@ public: DECLARE_READ8_MEMBER(mux_r); DECLARE_WRITE8_MEMBER(mux_w); virtual void machine_reset() override; - DECLARE_WRITE_LINE_MEMBER(big10_vdp_interrupt); required_device m_maincpu; required_ioport m_in1; required_ioport m_in2; @@ -93,17 +92,6 @@ public: #define VDP_MEM 0x40000 -/*************************************** -* Interrupt handling & Video * -***************************************/ - -WRITE_LINE_MEMBER(big10_state::big10_vdp_interrupt) -{ - m_maincpu->set_input_line(0, (state ? ASSERT_LINE : CLEAR_LINE)); -} - - - /************************************* * Machine Reset * *************************************/ @@ -245,7 +233,7 @@ static MACHINE_CONFIG_START( big10, big10_state ) /* video hardware */ MCFG_V9938_ADD("v9938", "screen", VDP_MEM, MASTER_CLOCK) - MCFG_V99X8_INTERRUPT_CALLBACK(WRITELINE(big10_state, big10_vdp_interrupt)) + MCFG_V99X8_INTERRUPT_CALLBACK(INPUTLINE("maincpu", 0)) MCFG_V99X8_SCREEN_ADD_NTSC("screen", "v9938", MASTER_CLOCK) /* sound hardware */ diff --git a/src/mame/drivers/cliffhgr.cpp b/src/mame/drivers/cliffhgr.cpp index 4723364d7e4..1f49f2b173d 100644 --- a/src/mame/drivers/cliffhgr.cpp +++ b/src/mame/drivers/cliffhgr.cpp @@ -114,7 +114,6 @@ public: DECLARE_READ8_MEMBER(cliff_irq_ack_r); DECLARE_WRITE8_MEMBER(cliff_ldwire_w); DECLARE_WRITE8_MEMBER(cliff_sound_overlay_w); - DECLARE_WRITE_LINE_MEMBER(vdp_interrupt); DECLARE_DRIVER_INIT(cliff); virtual void machine_start() override; virtual void machine_reset() override; @@ -221,13 +220,6 @@ TIMER_CALLBACK_MEMBER(cliffhgr_state::cliff_irq_callback) m_irq_timer->adjust(m_screen->time_until_pos(param * 2), param); } -WRITE_LINE_MEMBER(cliffhgr_state::vdp_interrupt) -{ - m_maincpu->set_input_line(INPUT_LINE_NMI, state ? ASSERT_LINE : CLEAR_LINE); -} - - - void cliffhgr_state::machine_start() { m_irq_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(cliffhgr_state::cliff_irq_callback),this)); @@ -695,7 +687,7 @@ static MACHINE_CONFIG_START( cliffhgr, cliffhgr_state ) /* start with the TMS9928a video configuration */ MCFG_DEVICE_ADD( "tms9928a", TMS9128, XTAL_10_738635MHz / 2 ) /* TMS9128NL on the board */ MCFG_TMS9928A_VRAM_SIZE(0x4000) - MCFG_TMS9928A_OUT_INT_LINE_CB(WRITELINE(cliffhgr_state, vdp_interrupt)) + MCFG_TMS9928A_OUT_INT_LINE_CB(INPUTLINE("maincpu", INPUT_LINE_NMI)) /* override video rendering and raw screen info */ MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc") diff --git a/src/mame/drivers/cvs.cpp b/src/mame/drivers/cvs.cpp index 387809af5f8..ee26f242769 100644 --- a/src/mame/drivers/cvs.cpp +++ b/src/mame/drivers/cvs.cpp @@ -229,11 +229,11 @@ INTERRUPT_GEN_MEMBER(cvs_state::cvs_main_cpu_interrupt) } -static void cvs_slave_cpu_interrupt( cpu_device *cpu, int state ) +WRITE_LINE_MEMBER(cvs_state::cvs_slave_cpu_interrupt) { - cpu->set_input_line_vector(0, 0x03); - //cpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE); - cpu->set_input_line(0, state ? HOLD_LINE : CLEAR_LINE); + m_audiocpu->set_input_line_vector(0, 0x03); + //m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE); + m_audiocpu->set_input_line(0, state ? HOLD_LINE : CLEAR_LINE); } @@ -435,7 +435,7 @@ WRITE8_MEMBER(cvs_state::audio_command_w) LOG(("data %02x\n", data)); /* cause interrupt on audio CPU if bit 7 set */ m_soundlatch->write(space, 0, data); - cvs_slave_cpu_interrupt(m_audiocpu, data & 0x80 ? 1 : 0); + cvs_slave_cpu_interrupt(data & 0x80 ? 1 : 0); } diff --git a/src/mame/drivers/h19.cpp b/src/mame/drivers/h19.cpp index e479dfd7e08..8a5c968021d 100644 --- a/src/mame/drivers/h19.cpp +++ b/src/mame/drivers/h19.cpp @@ -81,7 +81,6 @@ public: UINT8 m_term_data; virtual void machine_reset() override; virtual void video_start() override; - DECLARE_WRITE_LINE_MEMBER(h19_ace_irq); protected: virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; @@ -357,10 +356,6 @@ MC6845_UPDATE_ROW( h19_state::crtc_update_row ) } } -WRITE_LINE_MEMBER(h19_state::h19_ace_irq) -{ - m_maincpu->set_input_line(0, (state ? HOLD_LINE : CLEAR_LINE)); -} /* F4 Character Displayer */ static const gfx_layout h19_charlayout = @@ -410,7 +405,7 @@ static MACHINE_CONFIG_START( h19, h19_state ) MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI)) // frame pulse MCFG_DEVICE_ADD("ins8250", INS8250, XTAL_12_288MHz / 4) // 3.072mhz clock which gets divided down for the various baud rates - MCFG_INS8250_OUT_INT_CB(WRITELINE(h19_state, h19_ace_irq)) // interrupt + MCFG_INS8250_OUT_INT_CB(INPUTLINE("maincpu", 0)) // interrupt MCFG_DEVICE_ADD(KEYBOARD_TAG, GENERIC_KEYBOARD, 0) MCFG_GENERIC_KEYBOARD_CB(WRITE8(h19_state, h19_kbd_put)) diff --git a/src/mame/drivers/irisha.cpp b/src/mame/drivers/irisha.cpp index 219bea42580..0f9f884fd4c 100644 --- a/src/mame/drivers/irisha.cpp +++ b/src/mame/drivers/irisha.cpp @@ -46,7 +46,6 @@ public: DECLARE_WRITE_LINE_MEMBER(speaker_w); DECLARE_WRITE_LINE_MEMBER(write_uart_clock); TIMER_CALLBACK_MEMBER(irisha_key); - DECLARE_WRITE_LINE_MEMBER(irisha_pic_set_int_line); UINT32 screen_update_irisha(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); required_shared_ptr m_p_videoram; @@ -289,17 +288,6 @@ WRITE8_MEMBER(irisha_state::irisha_8255_portc_w) update_speaker(); } -/************************************************* - - i8259 - -*************************************************/ - -WRITE_LINE_MEMBER(irisha_state::irisha_pic_set_int_line) -{ - m_maincpu->set_input_line(0, state ? HOLD_LINE : CLEAR_LINE); -} - /************************************************* @@ -425,7 +413,7 @@ static MACHINE_CONFIG_START( irisha, irisha_state ) MCFG_I8255_IN_PORTC_CB(READ8(irisha_state, irisha_8255_portc_r)) MCFG_I8255_OUT_PORTC_CB(WRITE8(irisha_state, irisha_8255_portc_w)) - MCFG_PIC8259_ADD( "pic8259", WRITELINE(irisha_state,irisha_pic_set_int_line), VCC, NOOP) + MCFG_PIC8259_ADD( "pic8259", INPUTLINE("maincpu", 0), VCC, NOOP) MACHINE_CONFIG_END /* ROM definition */ diff --git a/src/mame/drivers/junior.cpp b/src/mame/drivers/junior.cpp index 2e54b74339e..7cf9f09ccce 100644 --- a/src/mame/drivers/junior.cpp +++ b/src/mame/drivers/junior.cpp @@ -45,7 +45,6 @@ public: DECLARE_READ8_MEMBER(junior_riot_b_r); DECLARE_WRITE8_MEMBER(junior_riot_a_w); DECLARE_WRITE8_MEMBER(junior_riot_b_w); - DECLARE_WRITE_LINE_MEMBER(junior_riot_irq); UINT8 m_port_a; UINT8 m_port_b; UINT8 m_led_time[6]; @@ -182,12 +181,6 @@ WRITE8_MEMBER( junior_state::junior_riot_b_w ) } -WRITE_LINE_MEMBER( junior_state::junior_riot_irq ) -{ - m_maincpu->set_input_line(M6502_IRQ_LINE, state ? HOLD_LINE : CLEAR_LINE); -} - - TIMER_DEVICE_CALLBACK_MEMBER(junior_state::junior_update_leds) { int i; @@ -233,7 +226,7 @@ static MACHINE_CONFIG_START( junior, junior_state ) MCFG_MOS6530n_OUT_PA_CB(WRITE8(junior_state, junior_riot_a_w)) MCFG_MOS6530n_IN_PB_CB(READ8(junior_state, junior_riot_b_r)) MCFG_MOS6530n_OUT_PB_CB(WRITE8(junior_state, junior_riot_b_w)) - MCFG_MOS6530n_IRQ_CB(WRITELINE(junior_state, junior_riot_irq)) + MCFG_MOS6530n_IRQ_CB(INPUTLINE("maincpu", M6502_IRQ_LINE)) MCFG_TIMER_DRIVER_ADD_PERIODIC("led_timer", junior_state, junior_update_leds, attotime::from_hz(50)) MACHINE_CONFIG_END diff --git a/src/mame/drivers/kas89.cpp b/src/mame/drivers/kas89.cpp index 3876b2f2da5..e7f7c8305f7 100644 --- a/src/mame/drivers/kas89.cpp +++ b/src/mame/drivers/kas89.cpp @@ -255,20 +255,9 @@ public: virtual void machine_reset() override; TIMER_DEVICE_CALLBACK_MEMBER(kas89_nmi_cb); TIMER_DEVICE_CALLBACK_MEMBER(kas89_sound_nmi_cb); - DECLARE_WRITE_LINE_MEMBER(kas89_vdp_interrupt); }; -/*************************************** -* Interrupt handling & Video * -***************************************/ - -WRITE_LINE_MEMBER(kas89_state::kas89_vdp_interrupt) -{ - m_maincpu->set_input_line(0, (state ? ASSERT_LINE : CLEAR_LINE)); -} - - /************************************* * Machine Start & Reset * *************************************/ @@ -778,7 +767,7 @@ static MACHINE_CONFIG_START( kas89, kas89_state ) /* video hardware */ MCFG_V9938_ADD("v9938", "screen", VDP_MEM, MASTER_CLOCK) - MCFG_V99X8_INTERRUPT_CALLBACK(WRITELINE(kas89_state,kas89_vdp_interrupt)) + MCFG_V99X8_INTERRUPT_CALLBACK(INPUTLINE("maincpu", 0)) MCFG_V99X8_SCREEN_ADD_NTSC("screen", "v9938", MASTER_CLOCK) /* sound hardware */ diff --git a/src/mame/drivers/kurukuru.cpp b/src/mame/drivers/kurukuru.cpp index 97583306a37..2e003469c0c 100644 --- a/src/mame/drivers/kurukuru.cpp +++ b/src/mame/drivers/kurukuru.cpp @@ -293,7 +293,6 @@ public: virtual void machine_start() override; virtual void machine_reset() override; DECLARE_WRITE_LINE_MEMBER(kurukuru_msm5205_vck); - DECLARE_WRITE_LINE_MEMBER(kurukuru_vdp_interrupt); }; #define MAIN_CLOCK XTAL_21_4772MHz @@ -309,11 +308,6 @@ public: * Interrupts * *************************************************/ -WRITE_LINE_MEMBER(kurukuru_state::kurukuru_vdp_interrupt) -{ - m_maincpu->set_input_line(0, (state ? ASSERT_LINE : CLEAR_LINE)); -} - void kurukuru_state::update_sound_irq(UINT8 cause) { @@ -735,7 +729,7 @@ static MACHINE_CONFIG_START( kurukuru, kurukuru_state ) /* video hardware */ MCFG_V9938_ADD("v9938", "screen", VDP_MEM, MAIN_CLOCK) - MCFG_V99X8_INTERRUPT_CALLBACK(WRITELINE(kurukuru_state,kurukuru_vdp_interrupt)) + MCFG_V99X8_INTERRUPT_CALLBACK(INPUTLINE("maincpu", 0)) MCFG_V99X8_SCREEN_ADD_NTSC("screen", "v9938", MAIN_CLOCK) MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(HOPPER_PULSE), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_LOW ) @@ -773,7 +767,7 @@ static MACHINE_CONFIG_START( ppj, kurukuru_state ) /* video hardware */ MCFG_V9938_ADD("v9938", "screen", VDP_MEM, MAIN_CLOCK) - MCFG_V99X8_INTERRUPT_CALLBACK(WRITELINE(kurukuru_state,kurukuru_vdp_interrupt)) + MCFG_V99X8_INTERRUPT_CALLBACK(INPUTLINE("maincpu", 0)) MCFG_V99X8_SCREEN_ADD_NTSC("screen", "v9938", MAIN_CLOCK) MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(HOPPER_PULSE), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_LOW ) diff --git a/src/mame/drivers/metalmx.cpp b/src/mame/drivers/metalmx.cpp index c4053720c6e..e5e18ae26e6 100644 --- a/src/mame/drivers/metalmx.cpp +++ b/src/mame/drivers/metalmx.cpp @@ -482,11 +482,6 @@ WRITE32_MEMBER(metalmx_state::host_vram_w) COMBINE_DATA(m_gsp_vram + offset * 2); } -WRITE_LINE_MEMBER(metalmx_state::tms_interrupt) -{ - m_maincpu->set_input_line(4, state ? HOLD_LINE : CLEAR_LINE); -} - WRITE32_MEMBER(metalmx_state::timer_w) { @@ -703,7 +698,7 @@ static MACHINE_CONFIG_START( metalmx, metalmx_state ) MCFG_TMS340X0_HALT_ON_RESET(TRUE) /* halt on reset */ MCFG_TMS340X0_PIXEL_CLOCK(4000000) /* pixel clock */ MCFG_TMS340X0_PIXELS_PER_CLOCK(2) /* pixels per clock */ - MCFG_TMS340X0_OUTPUT_INT_CB(WRITELINE(metalmx_state, tms_interrupt)) + MCFG_TMS340X0_OUTPUT_INT_CB(INPUTLINE("maincpu", 4)) MCFG_CPU_ADD("dsp32c_1", DSP32C, 40000000) /* Unverified */ MCFG_CPU_PROGRAM_MAP(dsp32c_1_map) diff --git a/src/mame/drivers/myvision.cpp b/src/mame/drivers/myvision.cpp index e5c32a4c158..2d30a206519 100644 --- a/src/mame/drivers/myvision.cpp +++ b/src/mame/drivers/myvision.cpp @@ -44,7 +44,6 @@ public: , m_io_row3(*this, "ROW3") { } - DECLARE_WRITE_LINE_MEMBER( vdp_interrupt ); DECLARE_DEVICE_IMAGE_LOAD_MEMBER( cart ); DECLARE_READ8_MEMBER( ay_port_a_r ); DECLARE_READ8_MEMBER( ay_port_b_r ); @@ -158,11 +157,6 @@ DEVICE_IMAGE_LOAD_MEMBER( myvision_state, cart ) } -WRITE_LINE_MEMBER(myvision_state::vdp_interrupt) -{ - m_maincpu->set_input_line(INPUT_LINE_IRQ0, state); -} - READ8_MEMBER( myvision_state::ay_port_a_r ) { UINT8 data = 0xFF; @@ -217,7 +211,7 @@ static MACHINE_CONFIG_START( myvision, myvision_state ) /* video hardware */ MCFG_DEVICE_ADD( "tms9918", TMS9918A, XTAL_10_738635MHz / 2 ) /* Exact model not verified */ MCFG_TMS9928A_VRAM_SIZE(0x4000) /* Not verified */ - MCFG_TMS9928A_OUT_INT_LINE_CB(WRITELINE(myvision_state, vdp_interrupt)) + MCFG_TMS9928A_OUT_INT_LINE_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) MCFG_TMS9928A_SCREEN_ADD_NTSC( "screen" ) MCFG_SCREEN_UPDATE_DEVICE( "tms9918", tms9918a_device, screen_update ) diff --git a/src/mame/drivers/sangho.cpp b/src/mame/drivers/sangho.cpp index 4f401081ef3..3471d5b1eae 100644 --- a/src/mame/drivers/sangho.cpp +++ b/src/mame/drivers/sangho.cpp @@ -96,7 +96,6 @@ public: DECLARE_MACHINE_RESET(sexyboom); void pzlestar_map_banks(); void sexyboom_map_bank(int bank); - DECLARE_WRITE_LINE_MEMBER(msx_vdp_interrupt); DECLARE_READ8_MEMBER(sec_slot_r); DECLARE_WRITE8_MEMBER(sec_slot_w); }; @@ -450,11 +449,6 @@ MACHINE_RESET_MEMBER(sangho_state,sexyboom) sexyboom_map_bank(3); } -WRITE_LINE_MEMBER(sangho_state::msx_vdp_interrupt) -{ - m_maincpu->set_input_line(0, (state ? HOLD_LINE : CLEAR_LINE)); -} - static MACHINE_CONFIG_START( pzlestar, sangho_state ) @@ -463,7 +457,7 @@ static MACHINE_CONFIG_START( pzlestar, sangho_state ) MCFG_CPU_IO_MAP(pzlestar_io_map) MCFG_V9958_ADD("v9958", "screen", 0x20000, XTAL_21_4772MHz) // typical 9958 clock, not verified - MCFG_V99X8_INTERRUPT_CALLBACK(WRITELINE(sangho_state,msx_vdp_interrupt)) + MCFG_V99X8_INTERRUPT_CALLBACK(INPUTLINE("maincpu", 0)) MCFG_V99X8_SCREEN_ADD_NTSC("screen", "v9958", XTAL_21_4772MHz) MCFG_MACHINE_RESET_OVERRIDE(sangho_state,pzlestar) @@ -482,7 +476,7 @@ static MACHINE_CONFIG_START( sexyboom, sangho_state ) MCFG_CPU_IO_MAP(sexyboom_io_map) MCFG_V9958_ADD("v9958", "screen", 0x20000, XTAL_21_4772MHz) // typical 9958 clock, not verified - MCFG_V99X8_INTERRUPT_CALLBACK(WRITELINE(sangho_state,msx_vdp_interrupt)) + MCFG_V99X8_INTERRUPT_CALLBACK(INPUTLINE("maincpu", 0)) MCFG_V99X8_SCREEN_ADD_NTSC("screen", "v9958", XTAL_21_4772MHz) MCFG_MACHINE_RESET_OVERRIDE(sangho_state,sexyboom) diff --git a/src/mame/drivers/sfkick.cpp b/src/mame/drivers/sfkick.cpp index d5df1f84698..57da05b35fd 100644 --- a/src/mame/drivers/sfkick.cpp +++ b/src/mame/drivers/sfkick.cpp @@ -204,7 +204,6 @@ public: void sfkick_remap_banks(); void sfkick_bank_set(int num, int data); DECLARE_WRITE_LINE_MEMBER(irqhandler); - DECLARE_WRITE_LINE_MEMBER(sfkick_vdp_interrupt); required_device m_maincpu; required_device m_soundcpu; required_memory_region m_region_bios; @@ -558,10 +557,6 @@ static INPUT_PORTS_START( sfkick ) PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) INPUT_PORTS_END -WRITE_LINE_MEMBER(sfkick_state::sfkick_vdp_interrupt) -{ - m_maincpu->set_input_line(0, (state ? HOLD_LINE : CLEAR_LINE)); -} void sfkick_state::machine_reset() { @@ -595,7 +590,7 @@ static MACHINE_CONFIG_START( sfkick, sfkick_state ) MCFG_CPU_IO_MAP(sfkick_sound_io_map) MCFG_V9938_ADD("v9938", "screen", 0x80000, MASTER_CLOCK) - MCFG_V99X8_INTERRUPT_CALLBACK(WRITELINE(sfkick_state,sfkick_vdp_interrupt)) + MCFG_V99X8_INTERRUPT_CALLBACK(INPUTLINE("maincpu", 0)) MCFG_V99X8_SCREEN_ADD_NTSC("screen", "v9938", MASTER_CLOCK) MCFG_DEVICE_ADD("ppi8255", I8255A, 0) diff --git a/src/mame/drivers/sg1000.cpp b/src/mame/drivers/sg1000.cpp index e860f5537e6..26f9ea7a936 100644 --- a/src/mame/drivers/sg1000.cpp +++ b/src/mame/drivers/sg1000.cpp @@ -454,15 +454,6 @@ INPUT_PORTS_END DEVICE CONFIGURATION ***************************************************************************/ -/*------------------------------------------------- - TMS9928a_interface tms9928a_interface --------------------------------------------------*/ - -WRITE_LINE_MEMBER(sg1000_state::sg1000_vdp_interrupt) -{ - m_maincpu->set_input_line(INPUT_LINE_IRQ0, state); -} - /*------------------------------------------------- I8255 INTERFACE -------------------------------------------------*/ @@ -724,7 +715,7 @@ static MACHINE_CONFIG_START( sg1000, sg1000_state ) /* video hardware */ MCFG_DEVICE_ADD( TMS9918A_TAG, TMS9918A, XTAL_10_738635MHz / 2 ) MCFG_TMS9928A_VRAM_SIZE(0x4000) - MCFG_TMS9928A_OUT_INT_LINE_CB(WRITELINE(sg1000_state, sg1000_vdp_interrupt)) + MCFG_TMS9928A_OUT_INT_LINE_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) MCFG_TMS9928A_SCREEN_ADD_NTSC( SCREEN_TAG ) MCFG_SCREEN_UPDATE_DEVICE( TMS9918A_TAG, tms9918a_device, screen_update ) @@ -774,7 +765,7 @@ static MACHINE_CONFIG_START( sc3000, sc3000_state ) /* video hardware */ MCFG_DEVICE_ADD( TMS9918A_TAG, TMS9918A, XTAL_10_738635MHz / 2 ) MCFG_TMS9928A_VRAM_SIZE(0x4000) - MCFG_TMS9928A_OUT_INT_LINE_CB(WRITELINE(sg1000_state, sg1000_vdp_interrupt)) + MCFG_TMS9928A_OUT_INT_LINE_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) MCFG_TMS9928A_SCREEN_ADD_NTSC( SCREEN_TAG ) MCFG_SCREEN_UPDATE_DEVICE( TMS9918A_TAG, tms9918a_device, screen_update ) @@ -823,7 +814,7 @@ static MACHINE_CONFIG_START( sf7000, sf7000_state ) /* video hardware */ MCFG_DEVICE_ADD( TMS9918A_TAG, TMS9918A, XTAL_10_738635MHz / 2 ) MCFG_TMS9928A_VRAM_SIZE(0x4000) - MCFG_TMS9928A_OUT_INT_LINE_CB(WRITELINE(sg1000_state, sg1000_vdp_interrupt)) + MCFG_TMS9928A_OUT_INT_LINE_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) MCFG_TMS9928A_SCREEN_ADD_NTSC( SCREEN_TAG ) MCFG_SCREEN_UPDATE_DEVICE( TMS9918A_TAG, tms9918a_device, screen_update ) diff --git a/src/mame/drivers/sg1000a.cpp b/src/mame/drivers/sg1000a.cpp index 0e43b6c527b..f3909fc8205 100644 --- a/src/mame/drivers/sg1000a.cpp +++ b/src/mame/drivers/sg1000a.cpp @@ -129,7 +129,6 @@ public: m_maincpu(*this, "maincpu"), m_decrypted_opcodes(*this, "decrypted_opcodes") { } - DECLARE_WRITE_LINE_MEMBER(vdp_interrupt); DECLARE_WRITE8_MEMBER(sg1000a_coin_counter_w); DECLARE_DRIVER_INIT(sg1000a); required_device m_maincpu; @@ -247,10 +246,6 @@ static INPUT_PORTS_START( dokidoki ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) INPUT_PORTS_END -WRITE_LINE_MEMBER(sg1000a_state::vdp_interrupt) -{ - m_maincpu->set_input_line(INPUT_LINE_IRQ0, state); -} WRITE8_MEMBER(sg1000a_state::sg1000a_coin_counter_w) { @@ -278,7 +273,7 @@ static MACHINE_CONFIG_START( sg1000a, sg1000a_state ) /* video hardware */ MCFG_DEVICE_ADD( "tms9928a", TMS9928A, XTAL_10_738635MHz / 2 ) MCFG_TMS9928A_VRAM_SIZE(0x4000) - MCFG_TMS9928A_OUT_INT_LINE_CB(WRITELINE(sg1000a_state, vdp_interrupt)) + MCFG_TMS9928A_OUT_INT_LINE_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) MCFG_TMS9928A_SCREEN_ADD_NTSC( "screen" ) MCFG_SCREEN_UPDATE_DEVICE( "tms9928a", tms9928a_device, screen_update ) diff --git a/src/mame/drivers/sothello.cpp b/src/mame/drivers/sothello.cpp index b83cb10e50b..58d91f6641c 100644 --- a/src/mame/drivers/sothello.cpp +++ b/src/mame/drivers/sothello.cpp @@ -82,7 +82,6 @@ public: TIMER_CALLBACK_MEMBER(subcpu_suspend); TIMER_CALLBACK_MEMBER(subcpu_resume); DECLARE_WRITE_LINE_MEMBER(adpcm_int); - DECLARE_WRITE_LINE_MEMBER(sothello_vdp_interrupt); void unlock_shared_ram(); required_device m_maincpu; required_device m_soundcpu; @@ -329,11 +328,6 @@ static INPUT_PORTS_START( sothello ) INPUT_PORTS_END -WRITE_LINE_MEMBER(sothello_state::sothello_vdp_interrupt) -{ - m_maincpu->set_input_line(0, (state ? HOLD_LINE : CLEAR_LINE)); -} - WRITE_LINE_MEMBER(sothello_state::adpcm_int) { /* only 4 bits are used */ @@ -363,7 +357,7 @@ static MACHINE_CONFIG_START( sothello, sothello_state ) /* video hardware */ MCFG_V9938_ADD("v9938", "screen", VDP_MEM, MAIN_CLOCK) - MCFG_V99X8_INTERRUPT_CALLBACK(WRITELINE(sothello_state,sothello_vdp_interrupt)) + MCFG_V99X8_INTERRUPT_CALLBACK(INPUTLINE("maincpu", 0)) MCFG_V99X8_SCREEN_ADD_NTSC("screen", "v9938", MAIN_CLOCK) /* sound hardware */ diff --git a/src/mame/drivers/tapatune.cpp b/src/mame/drivers/tapatune.cpp index e02844b555f..4ee9c78311a 100644 --- a/src/mame/drivers/tapatune.cpp +++ b/src/mame/drivers/tapatune.cpp @@ -82,8 +82,6 @@ public: virtual void machine_start() override; virtual void machine_reset() override; - DECLARE_WRITE_LINE_MEMBER(crtc_vsync); - DECLARE_WRITE16_MEMBER(palette_w); DECLARE_READ16_MEMBER(read_from_z80); DECLARE_WRITE16_MEMBER(write_to_z80); @@ -197,12 +195,6 @@ WRITE16_MEMBER(tapatune_state::palette_w) } -WRITE_LINE_MEMBER(tapatune_state::crtc_vsync) -{ - m_videocpu->set_input_line(2, state ? HOLD_LINE : CLEAR_LINE); -} - - /************************************* * * 68000 <-> Z80 comms @@ -537,7 +529,7 @@ static MACHINE_CONFIG_DERIVED( tapatune, tapatune_base ) MCFG_MC6845_CHAR_WIDTH(5) MCFG_MC6845_BEGIN_UPDATE_CB(tapatune_state, crtc_begin_update) MCFG_MC6845_UPDATE_ROW_CB(tapatune_state, crtc_update_row) - MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(tapatune_state, crtc_vsync)) + MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("videocpu", 2)) /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) diff --git a/src/mame/drivers/tonton.cpp b/src/mame/drivers/tonton.cpp index 36770d448a8..c972ac250d2 100644 --- a/src/mame/drivers/tonton.cpp +++ b/src/mame/drivers/tonton.cpp @@ -46,7 +46,6 @@ public: DECLARE_WRITE8_MEMBER(ay_bout_w); virtual void machine_start() override; virtual void machine_reset() override; - DECLARE_WRITE_LINE_MEMBER(tonton_vdp0_interrupt); required_device m_maincpu; required_device m_hopper; }; @@ -59,16 +58,6 @@ public: #define VDP_MEM 0x30000 -/************************************************* -* Video Hardware * -*************************************************/ - -WRITE_LINE_MEMBER(tonton_state::tonton_vdp0_interrupt) -{ - m_maincpu->set_input_line(0, (state ? HOLD_LINE : CLEAR_LINE)); -} - - /************************************************* * Multi-Purpose Output Port * *************************************************/ @@ -232,7 +221,7 @@ static MACHINE_CONFIG_START( tonton, tonton_state ) /* video hardware */ MCFG_V9938_ADD("v9938", "screen", VDP_MEM, MAIN_CLOCK) - MCFG_V99X8_INTERRUPT_CALLBACK(WRITELINE(tonton_state,tonton_vdp0_interrupt)) + MCFG_V99X8_INTERRUPT_CALLBACK(INPUTLINE("maincpu", 0)) MCFG_V99X8_SCREEN_ADD_NTSC("screen", "v9938", MAIN_CLOCK) MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(HOPPER_PULSE), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_LOW ) diff --git a/src/mame/includes/cvs.h b/src/mame/includes/cvs.h index 1e46b126a5f..6450e90fb3b 100644 --- a/src/mame/includes/cvs.h +++ b/src/mame/includes/cvs.h @@ -94,6 +94,7 @@ public: we can use the same gfx_layout */ DECLARE_READ_LINE_MEMBER(speech_rom_read_bit); DECLARE_WRITE_LINE_MEMBER(write_s2650_flag); + DECLARE_WRITE_LINE_MEMBER(cvs_slave_cpu_interrupt); DECLARE_READ8_MEMBER(cvs_input_r); DECLARE_WRITE8_MEMBER(cvs_speech_rom_address_lo_w); DECLARE_WRITE8_MEMBER(cvs_speech_rom_address_hi_w); diff --git a/src/mame/includes/metalmx.h b/src/mame/includes/metalmx.h index 9c321e209c6..ee0514a329c 100644 --- a/src/mame/includes/metalmx.h +++ b/src/mame/includes/metalmx.h @@ -51,7 +51,6 @@ public: DECLARE_WRITE32_MEMBER(timer_w); DECLARE_DRIVER_INIT(metalmx); DECLARE_WRITE8_MEMBER(cage_irq_callback); - DECLARE_WRITE_LINE_MEMBER(tms_interrupt); virtual void machine_reset() override; virtual void video_start() override; UINT32 screen_update_metalmx(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); diff --git a/src/mame/includes/sg1000.h b/src/mame/includes/sg1000.h index 6cfd014433f..3f994977f7b 100644 --- a/src/mame/includes/sg1000.h +++ b/src/mame/includes/sg1000.h @@ -66,8 +66,6 @@ public: /* keyboard state */ UINT8 m_keylatch; - - DECLARE_WRITE_LINE_MEMBER(sg1000_vdp_interrupt); }; class sc3000_state : public sg1000_state