diff options
author | AJR <ajrhacker@users.noreply.github.com> | 2018-04-03 16:20:42 -0400 |
---|---|---|
committer | AJR <ajrhacker@users.noreply.github.com> | 2018-04-03 16:23:11 -0400 |
commit | 8cd7955a625b1c07fc13309f86791b473a404090 (patch) | |
tree | fb2ca44052bdbab807aeef1bb130b5d3b43beb3e | |
parent | 0dbee19e6213b6003e612fa1237c8ea1d519d0c5 (diff) |
Remove sound interrupt status from atarigen base class (nw)
atarisy2.cpp: Replace MCFG_CPU_VBLANK_INT with line callback (nw)
-rw-r--r-- | src/mame/drivers/atarig1.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/atarig42.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/atarigt.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/atarigx2.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/atarisy1.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/atarisy2.cpp | 8 | ||||
-rw-r--r-- | src/mame/drivers/badlands.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/batman.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/beathead.cpp | 2 | ||||
-rw-r--r-- | src/mame/drivers/blstroid.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/cyberbal.cpp | 6 | ||||
-rw-r--r-- | src/mame/drivers/cybstorm.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/eprom.cpp | 10 | ||||
-rw-r--r-- | src/mame/drivers/gauntlet.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/offtwall.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/skullxbo.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/thunderj.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/toobin.cpp | 12 | ||||
-rw-r--r-- | src/mame/drivers/vindictr.cpp | 3 | ||||
-rw-r--r-- | src/mame/drivers/xybots.cpp | 3 | ||||
-rw-r--r-- | src/mame/includes/atarisy2.h | 2 | ||||
-rw-r--r-- | src/mame/includes/toobin.h | 8 | ||||
-rw-r--r-- | src/mame/machine/atarigen.cpp | 30 | ||||
-rw-r--r-- | src/mame/machine/atarigen.h | 4 |
24 files changed, 48 insertions, 79 deletions
diff --git a/src/mame/drivers/atarig1.cpp b/src/mame/drivers/atarig1.cpp index cea497f6ff7..431fc763324 100644 --- a/src/mame/drivers/atarig1.cpp +++ b/src/mame/drivers/atarig1.cpp @@ -37,7 +37,6 @@ void atarig1_state::update_interrupts() { m_maincpu->set_input_line(1, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(2, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -437,7 +436,7 @@ MACHINE_CONFIG_START(atarig1_state::atarig1) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_II_ADD("jsa", WRITELINE(atarig1_state, sound_int_write_line)) + MCFG_ATARI_JSA_II_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_2)) MCFG_ATARI_JSA_TEST_PORT("IN0", 14) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END diff --git a/src/mame/drivers/atarig42.cpp b/src/mame/drivers/atarig42.cpp index 9bf4f013193..1f222105e24 100644 --- a/src/mame/drivers/atarig42.cpp +++ b/src/mame/drivers/atarig42.cpp @@ -35,7 +35,6 @@ void atarig42_state::update_interrupts() { m_maincpu->set_input_line(4, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(5, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -551,7 +550,7 @@ MACHINE_CONFIG_START(atarig42_state::atarig42) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_III_ADD("jsa", WRITELINE(atarig42_state, sound_int_write_line)) + MCFG_ATARI_JSA_III_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_5)) MCFG_ATARI_JSA_TEST_PORT("IN2", 6) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END diff --git a/src/mame/drivers/atarigt.cpp b/src/mame/drivers/atarigt.cpp index 080686f2b25..2a38b9c7038 100644 --- a/src/mame/drivers/atarigt.cpp +++ b/src/mame/drivers/atarigt.cpp @@ -71,7 +71,6 @@ void atarigt_state::update_interrupts() { - m_maincpu->set_input_line(3, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); m_maincpu->set_input_line(4, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); m_maincpu->set_input_line(6, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -93,7 +92,7 @@ MACHINE_RESET_MEMBER(atarigt_state,atarigt) WRITE8_MEMBER(atarigt_state::cage_irq_callback) { - sound_int_write_line(data != 0 ? 1 : 0); + m_maincpu->set_input_line(M68K_IRQ_3, data != 0 ? ASSERT_LINE : CLEAR_LINE); } /************************************* diff --git a/src/mame/drivers/atarigx2.cpp b/src/mame/drivers/atarigx2.cpp index 2e04ae8826f..92712919627 100644 --- a/src/mame/drivers/atarigx2.cpp +++ b/src/mame/drivers/atarigx2.cpp @@ -42,7 +42,6 @@ void atarigx2_state::update_interrupts() { m_maincpu->set_input_line(4, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(5, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -1524,7 +1523,7 @@ MACHINE_CONFIG_START(atarigx2_state::atarigx2) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_ATARI_JSA_IIIS_ADD("jsa", WRITELINE(atarigx2_state, sound_int_write_line)) + MCFG_ATARI_JSA_IIIS_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_5)) MCFG_ATARI_JSA_TEST_PORT("SERVICE", 6) MCFG_SOUND_ROUTE(0, "lspeaker", 1.0) MCFG_SOUND_ROUTE(1, "rspeaker", 1.0) diff --git a/src/mame/drivers/atarisy1.cpp b/src/mame/drivers/atarisy1.cpp index 1212b71d002..b44e2644301 100644 --- a/src/mame/drivers/atarisy1.cpp +++ b/src/mame/drivers/atarisy1.cpp @@ -215,7 +215,6 @@ void atarisy1_state::update_interrupts() m_maincpu->set_input_line(2, m_joystick_int ? ASSERT_LINE : CLEAR_LINE); m_maincpu->set_input_line(3, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); m_maincpu->set_input_line(4, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(6, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -786,7 +785,7 @@ MACHINE_CONFIG_START(atarisy1_state::atarisy1) MCFG_VIDEO_START_OVERRIDE(atarisy1_state,atarisy1) /* sound hardware */ - MCFG_ATARI_SOUND_COMM_ADD("soundcomm", "audiocpu", WRITELINE(atarisy1_state, sound_int_write_line)) + MCFG_ATARI_SOUND_COMM_ADD("soundcomm", "audiocpu", INPUTLINE("maincpu", M68K_IRQ_6)) MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") MCFG_YM2151_ADD("ymsnd", ATARI_CLOCK_14MHz/4) diff --git a/src/mame/drivers/atarisy2.cpp b/src/mame/drivers/atarisy2.cpp index f12b7ba65b8..e8d6eb0f4dc 100644 --- a/src/mame/drivers/atarisy2.cpp +++ b/src/mame/drivers/atarisy2.cpp @@ -227,10 +227,10 @@ MACHINE_RESET_MEMBER(atarisy2_state,atarisy2) * *************************************/ -INTERRUPT_GEN_MEMBER(atarisy2_state::vblank_int) +WRITE_LINE_MEMBER(atarisy2_state::vblank_int) { /* clock the VBLANK through */ - if (m_interrupt_enable & 8) + if (state && BIT(m_interrupt_enable, 3)) video_int_write_line(1); } @@ -1176,7 +1176,6 @@ MACHINE_CONFIG_START(atarisy2_state::atarisy2) MCFG_CPU_ADD("maincpu", T11, MASTER_CLOCK/2) MCFG_T11_INITIAL_MODE(0x36ff) /* initial mode word has DAL15,14,11,8 pulled low */ MCFG_CPU_PROGRAM_MAP(main_map) - MCFG_CPU_VBLANK_INT_DRIVER("screen", atarisy2_state, vblank_int) MCFG_CPU_ADD("audiocpu", M6502, SOUND_CLOCK/8) MCFG_CPU_PROGRAM_MAP(sound_map) @@ -1215,11 +1214,12 @@ MACHINE_CONFIG_START(atarisy2_state::atarisy2) MCFG_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 640, 0, 512, 416, 0, 384) MCFG_SCREEN_UPDATE_DRIVER(atarisy2_state, screen_update_atarisy2) MCFG_SCREEN_PALETTE("palette") + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(atarisy2_state, vblank_int)) MCFG_VIDEO_START_OVERRIDE(atarisy2_state,atarisy2) /* sound hardware */ - MCFG_ATARI_SOUND_COMM_ADD("soundcomm", "audiocpu", WRITELINE(atarisy2_state, sound_int_write_line)) + MCFG_ATARI_SOUND_COMM_ADD("soundcomm", "audiocpu", NOOP) MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") MCFG_YM2151_ADD("ymsnd", SOUND_CLOCK/4) MCFG_SOUND_ROUTE(0, "lspeaker", 0.60) diff --git a/src/mame/drivers/badlands.cpp b/src/mame/drivers/badlands.cpp index 4bf7520b872..afe7d0eb395 100644 --- a/src/mame/drivers/badlands.cpp +++ b/src/mame/drivers/badlands.cpp @@ -177,7 +177,6 @@ Measurements - void badlands_state::update_interrupts() { m_maincpu->set_input_line(1, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(2, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -489,7 +488,7 @@ MACHINE_CONFIG_START(badlands_state::badlands) MCFG_VIDEO_START_OVERRIDE(badlands_state,badlands) /* sound hardware */ - MCFG_ATARI_SOUND_COMM_ADD("soundcomm", "audiocpu", WRITELINE(badlands_state, sound_int_write_line)) + MCFG_ATARI_SOUND_COMM_ADD("soundcomm", "audiocpu", INPUTLINE("maincpu", M68K_IRQ_2)) MCFG_SPEAKER_STANDARD_MONO("mono") MCFG_YM2151_ADD("ymsnd", ATARI_CLOCK_14MHz/4) diff --git a/src/mame/drivers/batman.cpp b/src/mame/drivers/batman.cpp index 53d55062e5d..38a9a222834 100644 --- a/src/mame/drivers/batman.cpp +++ b/src/mame/drivers/batman.cpp @@ -38,7 +38,6 @@ void batman_state::update_interrupts() { m_maincpu->set_input_line(4, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(6, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -225,7 +224,7 @@ MACHINE_CONFIG_START(batman_state::batman) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_III_ADD("jsa", WRITELINE(batman_state, sound_int_write_line)) + MCFG_ATARI_JSA_III_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_6)) MCFG_ATARI_JSA_TEST_PORT("260010", 6) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END diff --git a/src/mame/drivers/beathead.cpp b/src/mame/drivers/beathead.cpp index 09225b9ae5d..7be7af69000 100644 --- a/src/mame/drivers/beathead.cpp +++ b/src/mame/drivers/beathead.cpp @@ -389,7 +389,7 @@ MACHINE_CONFIG_START(beathead_state::beathead) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_III_ADD("jsa", WRITELINE(beathead_state, sound_int_write_line)) + MCFG_ATARI_JSA_III_ADD("jsa", NOOP) MCFG_ATARI_JSA_TEST_PORT("IN2", 6) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END diff --git a/src/mame/drivers/blstroid.cpp b/src/mame/drivers/blstroid.cpp index 1463f07d3ba..e8cc9350c27 100644 --- a/src/mame/drivers/blstroid.cpp +++ b/src/mame/drivers/blstroid.cpp @@ -39,7 +39,6 @@ void blstroid_state::update_interrupts() { m_maincpu->set_input_line(1, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); m_maincpu->set_input_line(2, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(4, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -210,7 +209,7 @@ MACHINE_CONFIG_START(blstroid_state::blstroid) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_ATARI_JSA_I_ADD("jsa", WRITELINE(blstroid_state, sound_int_write_line)) + MCFG_ATARI_JSA_I_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_4)) MCFG_ATARI_JSA_TEST_PORT("IN0", 7) MCFG_SOUND_ROUTE(0, "lspeaker", 1.0) MCFG_SOUND_ROUTE(1, "rspeaker", 1.0) diff --git a/src/mame/drivers/cyberbal.cpp b/src/mame/drivers/cyberbal.cpp index 5259ba68169..2013f79eabe 100644 --- a/src/mame/drivers/cyberbal.cpp +++ b/src/mame/drivers/cyberbal.cpp @@ -41,12 +41,10 @@ void cyberbal2p_state::update_interrupts() { m_maincpu->set_input_line(1, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(3, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } void cyberbal_state::update_interrupts() { - m_maincpu->set_input_line(1, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); m_extracpu->set_input_line(1, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -454,7 +452,7 @@ MACHINE_CONFIG_START(cyberbal_state::cyberbal) MCFG_SCREEN_PALETTE("rpalette") /* sound hardware */ - MCFG_ATARI_SOUND_COMM_ADD("soundcomm", "audiocpu", WRITELINE(cyberbal_state, sound_int_write_line)) + MCFG_ATARI_SOUND_COMM_ADD("soundcomm", "audiocpu", INPUTLINE("maincpu", M68K_IRQ_1)) MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") MCFG_YM2151_ADD("ymsnd", ATARI_CLOCK_14MHz/4) @@ -513,7 +511,7 @@ MACHINE_CONFIG_START(cyberbal2p_state::cyberbal2p) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_II_ADD("jsa", WRITELINE(cyberbal2p_state, sound_int_write_line)) + MCFG_ATARI_JSA_II_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_3)) MCFG_ATARI_JSA_TEST_PORT("IN2", 15) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END diff --git a/src/mame/drivers/cybstorm.cpp b/src/mame/drivers/cybstorm.cpp index f525a61c9d6..5c8a5c11be4 100644 --- a/src/mame/drivers/cybstorm.cpp +++ b/src/mame/drivers/cybstorm.cpp @@ -32,7 +32,6 @@ void cybstorm_state::update_interrupts() { m_maincpu->set_input_line(4, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(6, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -275,7 +274,7 @@ MACHINE_CONFIG_START(cybstorm_state::cybstorm) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_ATARI_JSA_IIIS_ADD("jsa", WRITELINE(cybstorm_state, sound_int_write_line)) + MCFG_ATARI_JSA_IIIS_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_6)) MCFG_ATARI_JSA_TEST_PORT("9F0010", 22) MCFG_SOUND_ROUTE(0, "lspeaker", 1.0) MCFG_SOUND_ROUTE(1, "rspeaker", 1.0) diff --git a/src/mame/drivers/eprom.cpp b/src/mame/drivers/eprom.cpp index 760a1800b12..f4ef46a42cc 100644 --- a/src/mame/drivers/eprom.cpp +++ b/src/mame/drivers/eprom.cpp @@ -45,10 +45,8 @@ void eprom_state::update_interrupts() { m_maincpu->set_input_line(4, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - if (m_extra != nullptr) + if (m_extra.found()) m_extra->set_input_line(4, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - - m_maincpu->set_input_line(6, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } void eprom_state::machine_start() @@ -427,7 +425,7 @@ MACHINE_CONFIG_START(eprom_state::eprom) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_I_ADD("jsa", WRITELINE(eprom_state, sound_int_write_line)) + MCFG_ATARI_JSA_I_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_6)) MCFG_ATARI_JSA_TEST_PORT("260010", 1) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MCFG_DEVICE_REMOVE("jsa:pokey") @@ -470,7 +468,7 @@ MACHINE_CONFIG_START(eprom_state::klaxp) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_II_ADD("jsa", WRITELINE(eprom_state, sound_int_write_line)) + MCFG_ATARI_JSA_II_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_6)) MCFG_ATARI_JSA_TEST_PORT("260010", 1) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END @@ -518,7 +516,7 @@ MACHINE_CONFIG_START(eprom_state::guts) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_II_ADD("jsa", WRITELINE(eprom_state, sound_int_write_line)) + MCFG_ATARI_JSA_II_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_6)) MCFG_ATARI_JSA_TEST_PORT("260010", 1) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END diff --git a/src/mame/drivers/gauntlet.cpp b/src/mame/drivers/gauntlet.cpp index 54622518cd0..234ae401861 100644 --- a/src/mame/drivers/gauntlet.cpp +++ b/src/mame/drivers/gauntlet.cpp @@ -142,7 +142,6 @@ void gauntlet_state::update_interrupts() { m_maincpu->set_input_line(4, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(6, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -523,7 +522,7 @@ MACHINE_CONFIG_START(gauntlet_state::gauntlet_base) MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(gauntlet_state, video_int_write_line)) /* sound hardware */ - MCFG_ATARI_SOUND_COMM_ADD("soundcomm", "audiocpu", WRITELINE(gauntlet_state, sound_int_write_line)) + MCFG_ATARI_SOUND_COMM_ADD("soundcomm", "audiocpu", INPUTLINE("maincpu", M68K_IRQ_6)) MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") MCFG_YM2151_ADD("ymsnd", ATARI_CLOCK_14MHz/4) diff --git a/src/mame/drivers/offtwall.cpp b/src/mame/drivers/offtwall.cpp index efcd9234e51..a4045420152 100644 --- a/src/mame/drivers/offtwall.cpp +++ b/src/mame/drivers/offtwall.cpp @@ -38,7 +38,6 @@ void offtwall_state::update_interrupts() { m_maincpu->set_input_line(4, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(6, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -380,7 +379,7 @@ MACHINE_CONFIG_START(offtwall_state::offtwall) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_III_ADD("jsa", WRITELINE(offtwall_state, sound_int_write_line)) + MCFG_ATARI_JSA_III_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_6)) MCFG_ATARI_JSA_TEST_PORT("260010", 6) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MCFG_DEVICE_REMOVE("jsa:oki1") diff --git a/src/mame/drivers/skullxbo.cpp b/src/mame/drivers/skullxbo.cpp index 7019e9555b1..457f1e84d68 100644 --- a/src/mame/drivers/skullxbo.cpp +++ b/src/mame/drivers/skullxbo.cpp @@ -39,7 +39,6 @@ void skullxbo_state::update_interrupts() { m_maincpu->set_input_line(1, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); m_maincpu->set_input_line(2, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(4, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -261,7 +260,7 @@ MACHINE_CONFIG_START(skullxbo_state::skullxbo) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_II_ADD("jsa", WRITELINE(skullxbo_state, sound_int_write_line)) + MCFG_ATARI_JSA_II_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_4)) MCFG_ATARI_JSA_TEST_PORT("FF5802", 7) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END diff --git a/src/mame/drivers/thunderj.cpp b/src/mame/drivers/thunderj.cpp index feb189cff05..8c5ac2ea950 100644 --- a/src/mame/drivers/thunderj.cpp +++ b/src/mame/drivers/thunderj.cpp @@ -55,7 +55,6 @@ void thunderj_state::update_interrupts() { m_maincpu->set_input_line(4, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); m_extra->set_input_line(4, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(6, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -282,7 +281,7 @@ MACHINE_CONFIG_START(thunderj_state::thunderj) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_ATARI_JSA_II_ADD("jsa", WRITELINE(thunderj_state, sound_int_write_line)) + MCFG_ATARI_JSA_II_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_6)) MCFG_ATARI_JSA_TEST_PORT("260012", 1) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END diff --git a/src/mame/drivers/toobin.cpp b/src/mame/drivers/toobin.cpp index fb9ff722f55..e8ff30c0454 100644 --- a/src/mame/drivers/toobin.cpp +++ b/src/mame/drivers/toobin.cpp @@ -37,6 +37,12 @@ static constexpr XTAL MASTER_CLOCK = 32_MHz_XTAL; * *************************************/ +WRITE_LINE_MEMBER(toobin_state::sound_int_write_line) +{ + m_sound_int_state = state; + update_interrupts(); +} + void toobin_state::update_interrupts() { m_maincpu->set_input_line(1, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); @@ -44,6 +50,12 @@ void toobin_state::update_interrupts() m_maincpu->set_input_line(3, m_scanline_int_state && m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } +void toobin_state::machine_start() +{ + atarigen_state::machine_start(); + save_item(NAME(m_sound_int_state)); +} + /************************************* diff --git a/src/mame/drivers/vindictr.cpp b/src/mame/drivers/vindictr.cpp index bf2bdc0c83a..6a501e34598 100644 --- a/src/mame/drivers/vindictr.cpp +++ b/src/mame/drivers/vindictr.cpp @@ -38,7 +38,6 @@ void vindictr_state::update_interrupts() { m_maincpu->set_input_line(4, m_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(6, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -214,7 +213,7 @@ MACHINE_CONFIG_START(vindictr_state::vindictr) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_ATARI_JSA_I_ADD("jsa", WRITELINE(vindictr_state, sound_int_write_line)) + MCFG_ATARI_JSA_I_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_6)) MCFG_ATARI_JSA_TEST_PORT("260010", 1) MCFG_SOUND_ROUTE(0, "lspeaker", 1.0) MCFG_SOUND_ROUTE(1, "lspeaker", 1.0) diff --git a/src/mame/drivers/xybots.cpp b/src/mame/drivers/xybots.cpp index f9fe2274e7e..101b7a5b644 100644 --- a/src/mame/drivers/xybots.cpp +++ b/src/mame/drivers/xybots.cpp @@ -38,7 +38,6 @@ void xybots_state::update_interrupts() { m_maincpu->set_input_line(1, m_video_int_state ? ASSERT_LINE : CLEAR_LINE); - m_maincpu->set_input_line(2, m_sound_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -211,7 +210,7 @@ MACHINE_CONFIG_START(xybots_state::xybots) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_ATARI_JSA_I_ADD("jsa", WRITELINE(xybots_state, sound_int_write_line)) + MCFG_ATARI_JSA_I_ADD("jsa", INPUTLINE("maincpu", M68K_IRQ_2)) MCFG_ATARI_JSA_TEST_PORT("FFE200", 8) MCFG_SOUND_ROUTE(0, "rspeaker", 1.0) MCFG_SOUND_ROUTE(1, "lspeaker", 1.0) diff --git a/src/mame/includes/atarisy2.h b/src/mame/includes/atarisy2.h index dad4499172d..03db8308ed6 100644 --- a/src/mame/includes/atarisy2.h +++ b/src/mame/includes/atarisy2.h @@ -108,7 +108,7 @@ public: DECLARE_MACHINE_RESET(atarisy2); DECLARE_VIDEO_START(atarisy2); uint32_t screen_update_atarisy2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - INTERRUPT_GEN_MEMBER(vblank_int); + DECLARE_WRITE_LINE_MEMBER(vblank_int); TIMER_CALLBACK_MEMBER(delayed_int_enable_w); TIMER_CALLBACK_MEMBER(reset_yscroll_callback); DECLARE_READ16_MEMBER(slapstic_r); diff --git a/src/mame/includes/toobin.h b/src/mame/includes/toobin.h index 43b530497c8..bf037128724 100644 --- a/src/mame/includes/toobin.h +++ b/src/mame/includes/toobin.h @@ -23,15 +23,19 @@ public: m_playfield_tilemap(*this, "playfield"), m_alpha_tilemap(*this, "alpha"), m_mob(*this, "mob"), - m_interrupt_scan(*this, "interrupt_scan") + m_interrupt_scan(*this, "interrupt_scan"), + m_sound_int_state(0) { } void toobin(machine_config &config); protected: + virtual void machine_start() override; virtual void video_start() override; virtual void update_interrupts() override; + DECLARE_WRITE_LINE_MEMBER(sound_int_write_line); + DECLARE_WRITE16_MEMBER(interrupt_scan_w); DECLARE_WRITE16_MEMBER(paletteram_w); DECLARE_WRITE16_MEMBER(intensity_w); @@ -57,6 +61,8 @@ private: double m_brightness; bitmap_ind16 m_pfbitmap; + uint8_t m_sound_int_state; + static const atari_motion_objects_config s_mob_config; }; diff --git a/src/mame/machine/atarigen.cpp b/src/mame/machine/atarigen.cpp index aa3434b69cf..a4c337dba07 100644 --- a/src/mame/machine/atarigen.cpp +++ b/src/mame/machine/atarigen.cpp @@ -810,7 +810,6 @@ void atari_vad_device::eof_update(emu_timer &timer) atarigen_state::atarigen_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), m_scanline_int_state(0), - m_sound_int_state(0), m_video_int_state(0), m_xscroll(*this, "xscroll"), m_yscroll(*this, "yscroll"), @@ -845,7 +844,6 @@ void atarigen_state::machine_start() } save_item(NAME(m_scanline_int_state)); - save_item(NAME(m_sound_int_state)); save_item(NAME(m_video_int_state)); save_item(NAME(m_slapstic_num)); @@ -860,7 +858,7 @@ void atarigen_state::machine_start() void atarigen_state::machine_reset() { // reset the interrupt states - m_video_int_state = m_sound_int_state = m_scanline_int_state = 0; + m_video_int_state = m_scanline_int_state = 0; // reset the slapstic if (m_slapstic_num != 0) @@ -919,7 +917,7 @@ void atarigen_state::scanline_int_set(screen_device &screen, int scanline) //------------------------------------------------- -// sound_int_write_line: Standard write line +// scanline_int_write_line: Standard write line // callback for the scanline interrupt //------------------------------------------------- @@ -955,30 +953,6 @@ WRITE16_MEMBER(atarigen_state::scanline_int_ack_w) //------------------------------------------------- -// sound_int_write_line: Standard write line -// callback for the sound interrupt -//------------------------------------------------- - -WRITE_LINE_MEMBER(atarigen_state::sound_int_write_line) -{ - m_sound_int_state = state; - update_interrupts(); -} - - -//------------------------------------------------- -// sound_int_ack_w: Resets the state of the sound -// interrupt. -//------------------------------------------------- - -WRITE16_MEMBER(atarigen_state::sound_int_ack_w) -{ - m_sound_int_state = 0; - update_interrupts(); -} - - -//------------------------------------------------- // video_int_write_line: Standard write line // callback for the video interrupt. //------------------------------------------------- diff --git a/src/mame/machine/atarigen.h b/src/mame/machine/atarigen.h index 69ce50f97b8..8d0985aa3a9 100644 --- a/src/mame/machine/atarigen.h +++ b/src/mame/machine/atarigen.h @@ -279,9 +279,6 @@ protected: INTERRUPT_GEN_MEMBER(scanline_int_gen); DECLARE_WRITE16_MEMBER(scanline_int_ack_w); - DECLARE_WRITE_LINE_MEMBER(sound_int_write_line); - DECLARE_WRITE16_MEMBER(sound_int_ack_w); - DECLARE_WRITE_LINE_MEMBER(video_int_write_line); DECLARE_WRITE16_MEMBER(video_int_ack_w); @@ -312,7 +309,6 @@ protected: }; uint8_t m_scanline_int_state; - uint8_t m_sound_int_state; uint8_t m_video_int_state; optional_shared_ptr<uint16_t> m_xscroll; |