mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
atarisy1, gauntlet: re-add boost interleave on soundlatch write
This commit is contained in:
parent
c3a36ca0d4
commit
f6942dd17a
@ -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);
|
||||
|
@ -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);
|
||||
|
||||
|
@ -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();
|
||||
|
@ -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);
|
||||
|
@ -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)); });
|
||||
}
|
||||
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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 */
|
||||
|
Loading…
Reference in New Issue
Block a user