atarisy1, gauntlet: re-add boost interleave on soundlatch write

This commit is contained in:
hap 2022-08-30 23:59:39 +02:00
parent c3a36ca0d4
commit f6942dd17a
7 changed files with 5 additions and 20 deletions

View File

@ -778,6 +778,7 @@ void atarisy1_state::atarisy1(machine_config &config)
GENERIC_LATCH_8(config, m_soundlatch);
m_soundlatch->data_pending_callback().set_inputline(m_audiocpu, m6502_device::NMI_LINE);
m_soundlatch->data_pending_callback().append([this](int state) { if (state) machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(100)); });
GENERIC_LATCH_8(config, m_mainlatch);
m_mainlatch->data_pending_callback().set_inputline(m_maincpu, M68K_IRQ_6);

View File

@ -303,14 +303,6 @@ void atarisy2_state::sound_irq_ack_w(uint8_t data)
}
WRITE_LINE_MEMBER(atarisy2_state::boost_interleave_hack)
{
// apb3 fails the self-test with a 100 µs delay or less
if (state)
machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(200));
}
/*************************************
*
@ -1267,7 +1259,7 @@ void atarisy2_state::atarisy2(machine_config &config)
GENERIC_LATCH_8(config, m_soundlatch);
m_soundlatch->data_pending_callback().set_inputline(m_audiocpu, m6502_device::NMI_LINE);
m_soundlatch->data_pending_callback().append(FUNC(atarisy2_state::boost_interleave_hack));
m_soundlatch->data_pending_callback().append([this](int state) { if (state) machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(200)); });
GENERIC_LATCH_8(config, m_mainlatch);

View File

@ -127,7 +127,6 @@ private:
void int_enable_w(uint8_t data);
INTERRUPT_GEN_MEMBER(sound_irq_gen);
void sound_irq_ack_w(uint8_t data);
DECLARE_WRITE_LINE_MEMBER(boost_interleave_hack);
void bankselect_w(offs_t offset, uint16_t data);
uint16_t switch_r();
uint8_t switch_6502_r();

View File

@ -507,6 +507,7 @@ void gauntlet_state::gauntlet_base(machine_config &config)
GENERIC_LATCH_8(config, m_soundlatch);
m_soundlatch->data_pending_callback().set_inputline(m_audiocpu, m6502_device::NMI_LINE);
m_soundlatch->data_pending_callback().append([this](int state) { if (state) machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(100)); });
GENERIC_LATCH_8(config, m_mainlatch);
m_mainlatch->data_pending_callback().set_inputline(m_maincpu, M68K_IRQ_6);

View File

@ -315,11 +315,11 @@ void starwars_state::starwars(machine_config &config)
GENERIC_LATCH_8(config, m_soundlatch);
m_soundlatch->data_pending_callback().set(m_riot, FUNC(riot6532_device::pa7_w));
m_soundlatch->data_pending_callback().append(FUNC(starwars_state::boost_interleave_hack));
m_soundlatch->data_pending_callback().append([this](int state) { if (state) machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(100)); });
GENERIC_LATCH_8(config, m_mainlatch);
m_mainlatch->data_pending_callback().set(m_riot, FUNC(riot6532_device::pa6_w));
m_mainlatch->data_pending_callback().append(FUNC(starwars_state::boost_interleave_hack));
m_mainlatch->data_pending_callback().append([this](int state) { if (state) machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(100)); });
}

View File

@ -84,7 +84,6 @@ private:
void starwars_math_w(offs_t offset, uint8_t data);
uint8_t starwars_main_ready_flag_r();
DECLARE_WRITE_LINE_MEMBER(boost_interleave_hack);
void starwars_soundrst_w(uint8_t data);
void quad_pokeyn_w(offs_t offset, uint8_t data);
virtual void machine_reset() override;

View File

@ -53,13 +53,6 @@ void starwars_state::r6532_porta_w(uint8_t data)
*
*************************************/
WRITE_LINE_MEMBER(starwars_state::boost_interleave_hack)
{
if (state)
machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(100));
}
uint8_t starwars_state::starwars_main_ready_flag_r()
{
return m_riot->porta_in_get() & 0xc0; /* only upper two flag bits mapped */