summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/machine/inder_sb.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/machine/inder_sb.cpp')
-rw-r--r--src/mame/machine/inder_sb.cpp63
1 files changed, 6 insertions, 57 deletions
diff --git a/src/mame/machine/inder_sb.cpp b/src/mame/machine/inder_sb.cpp
index 05e29e3ad5b..5a571a27510 100644
--- a/src/mame/machine/inder_sb.cpp
+++ b/src/mame/machine/inder_sb.cpp
@@ -56,57 +56,6 @@ WRITE16_MEMBER(inder_sb_device::megaphx_0x050000_w)
}
-void inder_sb_device::update_sound_irqs(void)
-{
- if (m_soundirq) m_audiocpu->set_input_line(INPUT_LINE_IRQ0, ASSERT_LINE);
- else m_audiocpu->set_input_line(INPUT_LINE_IRQ0, CLEAR_LINE);
-}
-
-WRITE_LINE_MEMBER(inder_sb_device::z80ctc_ch0)
-{
-// int bank = m_soundbank[0] & 7; membank("snddata")->set_entry(bank);
-// m_audiocpu->set_input_line(INPUT_LINE_IRQ0, state ? ASSERT_LINE : CLEAR_LINE);
- if (state) m_soundirq |= 0x1;
- else m_soundirq &= ~0x1;
-
- update_sound_irqs();
-}
-
-
-WRITE_LINE_MEMBER(inder_sb_device::z80ctc_ch1)
-{
-// int bank = m_soundbank[1] & 7; membank("snddata")->set_entry(bank);
-// m_audiocpu->set_input_line(INPUT_LINE_IRQ0, state ? ASSERT_LINE : CLEAR_LINE);
- if (state) m_soundirq |= 0x2;
- else m_soundirq &= ~0x2;
-
- update_sound_irqs();
-}
-
-
-WRITE_LINE_MEMBER(inder_sb_device::z80ctc_ch2)
-{
-// int bank = m_soundbank[2] & 7; membank("snddata")->set_entry(bank);
-// m_audiocpu->set_input_line(INPUT_LINE_IRQ0, state ? ASSERT_LINE : CLEAR_LINE);
- if (state) m_soundirq |= 0x4;
- else m_soundirq &= ~0x4;
-
- update_sound_irqs();
-}
-
-
-
-
-WRITE_LINE_MEMBER(inder_sb_device::z80ctc_ch3)
-{
-// int bank = m_soundbank[3] & 7; membank("snddata")->set_entry(bank);
-// m_audiocpu->set_input_line(INPUT_LINE_IRQ0, state ? ASSERT_LINE : CLEAR_LINE);
- if (state) m_soundirq |= 0x8;
- else m_soundirq &= ~0x8;
-
- update_sound_irqs();
-}
-
@@ -210,11 +159,7 @@ MACHINE_CONFIG_START(inder_sb_device::device_add_mconfig)
MCFG_DEVICE_ADD("ctc", Z80CTC, 4000000) // unk freq
// runs in IM2 , vector set to 0x20 , values there are 0xCC, 0x02, 0xE6, 0x02, 0x09, 0x03, 0x23, 0x03 (so 02cc, 02e6, 0309, 0323, all of which are valid irq handlers)
- MCFG_Z80CTC_INTR_CB(WRITELINE(inder_sb_device, z80ctc_ch0))
- MCFG_Z80CTC_ZC0_CB(WRITELINE(inder_sb_device, z80ctc_ch1))
- MCFG_Z80CTC_ZC1_CB(WRITELINE(inder_sb_device, z80ctc_ch2))
- MCFG_Z80CTC_ZC2_CB(WRITELINE(inder_sb_device, z80ctc_ch3))
- // was this correct?!?
+ MCFG_Z80CTC_INTR_CB(INPUTLINE("audiocpu", 0))
MCFG_SPEAKER_STANDARD_MONO("speaker")
MCFG_SOUND_ADD("dac0", DAC_8BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC
@@ -237,9 +182,13 @@ void inder_sb_device::device_start()
{
m_sounddata_bank->configure_entries(0, 8, memregion("user2")->base(), 0x8000);
m_sounddata_bank->set_entry(0);
+
+ save_item(NAME(m_soundbank));
+ save_item(NAME(m_soundsent));
+ save_item(NAME(m_sounddata));
+ save_item(NAME(m_soundback));
}
void inder_sb_device::device_reset()
{
- m_soundirq = 0;
}