Previous 199869 Revisions Next

r23857 Saturday 22nd June, 2013 at 07:09:39 UTC by Barry Rodewald
de_2: Get rid of some tag lookups. (no whatsnew)
[src/mame/drivers]de_2.c

trunk/src/mame/drivers/de_2.c
r23856r23857
4949         m_pia30(*this, "pia30"),
5050         m_pia34(*this, "pia34"),
5151         m_audiocpu(*this, "audiocpu"),
52         m_msm5205(*this, "msm5205")
52         m_msm5205(*this, "msm5205"),
53         m_sample_bank(*this, "sample_bank")
5354   { }
5455
5556protected:
r23856r23857
100101
101102   required_device<cpu_device> m_audiocpu;
102103   required_device<msm5205_device> m_msm5205;
104   required_memory_bank m_sample_bank;
103105   UINT8 m_sample_data;
104106   bool m_more_data;
105107   bool m_nmi_enable;
r23856r23857
116118   bool m_irq_active;
117119   UINT8 m_sound_data;
118120
119   UINT8 m_sample_bank;
121   UINT8 m_sample_bank_num;
120122   UINT8 m_msm_prescaler;
121123};
122124
r23856r23857
253255
254256MACHINE_RESET_MEMBER(de_2_state, de_2)
255257{
256   membank("sample_bank")->set_entry(0);
258   m_sample_bank->set_entry(0);
257259   m_more_data = false;
258260   m_is_alpha3 = false;
259261}
260262
261263MACHINE_RESET_MEMBER(de_2_state, de_2_alpha3)
262264{
263   membank("sample_bank")->set_entry(0);
265   m_sample_bank->set_entry(0);
264266   m_more_data = false;
265267   m_is_alpha3 = true;
266268}
r23856r23857
271273   m_irq_timer = timer_alloc(TIMER_IRQ);
272274   m_irq_timer->adjust(attotime::from_ticks(S11_IRQ_CYCLES,E_CLOCK),1);
273275   m_irq_active = false;
274   membank("sample_bank")->configure_entries(0, 16, &ROM[0x0000], 0x4000);
275   membank("sample_bank")->set_entry(0);
276   m_sample_bank->configure_entries(0, 16, &ROM[0x0000], 0x4000);
277   m_sample_bank->set_entry(0);
276278}
277279
278280WRITE_LINE_MEMBER(de_2_state::ym2151_irq_w)
r23856r23857
556558{
557559   static const UINT8 prescale[4] = { MSM5205_S96_4B, MSM5205_S48_4B, MSM5205_S64_4B, 0 };
558560
559   m_sample_bank = (data & 0x07);
560   membank("sample_bank")->set_entry(m_sample_bank);
561   m_sample_bank_num = (data & 0x07);
562   m_sample_bank->set_entry(m_sample_bank_num);
561563   m_msm_prescaler = (data & 0x30) >> 4;
562564   m_nmi_enable = (~data & 0x80);
563565   m_msm5205->playmode_w(prescale[m_msm_prescaler]);
r23856r23857
604606MACHINE_CONFIG_END
605607
606608static MACHINE_CONFIG_DERIVED( de_2_alpha3, de_2 )
607MCFG_MACHINE_RESET_OVERRIDE(de_2_state, de_2_alpha3)
609   MCFG_MACHINE_RESET_OVERRIDE(de_2_state, de_2_alpha3)
608610   MCFG_DEFAULT_LAYOUT(layout_de2a3)
609611MACHINE_CONFIG_END
610612

Previous 199869 Revisions Next


© 1997-2024 The MAME Team