Previous 199869 Revisions Next

r23896 Sunday 23rd June, 2013 at 23:25:58 UTC by smf
don't update irq/dmarq unless they change (nw)
[src/emu/machine]ataintf.c

trunk/src/emu/machine/ataintf.c
r23895r23896
4444
4545WRITE_LINE_MEMBER( ata_interface_device::irq0_write_line )
4646{
47   m_irq[0] = state;
47   if (m_irq[0] != state)
48   {
49      m_irq[0] = state;
4850
49   set_irq(m_irq[0] == ASSERT_LINE || m_irq[1] == ASSERT_LINE);
51      set_irq(m_irq[0] == ASSERT_LINE || m_irq[1] == ASSERT_LINE);
52   }
5053}
5154
5255WRITE_LINE_MEMBER( ata_interface_device::irq1_write_line )
5356{
54   m_irq[1] = state;
57   if (m_irq[1] != state)
58   {
59      m_irq[1] = state;
5560
56   set_irq(m_irq[0] == ASSERT_LINE || m_irq[1] == ASSERT_LINE);
61      set_irq(m_irq[0] == ASSERT_LINE || m_irq[1] == ASSERT_LINE);
62   }
5763}
5864
5965WRITE_LINE_MEMBER( ata_interface_device::dmarq0_write_line )
6066{
61   m_dmarq[0] = state;
67   if (m_dmarq[0] != state)
68   {
69      m_dmarq[0] = state;
6270
63   set_dmarq(m_dmarq[0] == ASSERT_LINE || m_dmarq[1] == ASSERT_LINE);
71      set_dmarq(m_dmarq[0] == ASSERT_LINE || m_dmarq[1] == ASSERT_LINE);
72   }
6473}
6574
6675WRITE_LINE_MEMBER( ata_interface_device::dmarq1_write_line )
6776{
68   m_dmarq[1] = state;
77   if (m_dmarq[1] != state)
78   {
79      m_dmarq[1] = state;
6980
70   set_dmarq(m_dmarq[0] == ASSERT_LINE || m_dmarq[1] == ASSERT_LINE);
81      set_dmarq(m_dmarq[0] == ASSERT_LINE || m_dmarq[1] == ASSERT_LINE);
82   }
7183}
7284
7385

Previous 199869 Revisions Next


© 1997-2024 The MAME Team