mirror of
https://github.com/holub/mame
synced 2025-06-07 21:33:45 +03:00
bus/isa/sb16.cpp: convert fifo size checks to a named entity
This commit is contained in:
parent
a7445f2095
commit
7a232fd4bf
@ -496,7 +496,7 @@ uint8_t sb16_lle_device::dack_r(int line)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
++m_adc_fifo_tail %= 16;
|
++m_adc_fifo_tail %= FIFO_SIZE;
|
||||||
|
|
||||||
if(m_adc_fifo_ctrl & 4)
|
if(m_adc_fifo_ctrl & 4)
|
||||||
{
|
{
|
||||||
@ -504,7 +504,7 @@ uint8_t sb16_lle_device::dack_r(int line)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(m_adc_fifo_head == ((m_adc_fifo_tail + 1) % 16))
|
if(m_adc_fifo_head == ((m_adc_fifo_tail + 1) % FIFO_SIZE))
|
||||||
m_isa->drq1_w(0);
|
m_isa->drq1_w(0);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@ -539,7 +539,7 @@ void sb16_lle_device::dack_w(int line, uint8_t data)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
++m_dac_fifo_head %= 16;
|
++m_dac_fifo_head %= FIFO_SIZE;
|
||||||
|
|
||||||
if(m_dac_fifo_ctrl & 4)
|
if(m_dac_fifo_ctrl & 4)
|
||||||
{
|
{
|
||||||
@ -573,7 +573,7 @@ uint16_t sb16_lle_device::dack16_r(int line)
|
|||||||
m_isa->drq5_w(0);
|
m_isa->drq5_w(0);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
++m_adc_fifo_tail %= 16;
|
++m_adc_fifo_tail %= FIFO_SIZE;
|
||||||
|
|
||||||
if(m_adc_fifo_ctrl & 4)
|
if(m_adc_fifo_ctrl & 4)
|
||||||
{
|
{
|
||||||
@ -581,7 +581,7 @@ uint16_t sb16_lle_device::dack16_r(int line)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(m_adc_fifo_head == ((m_adc_fifo_tail + 1) % 16))
|
if(m_adc_fifo_head == ((m_adc_fifo_tail + 1) % FIFO_SIZE))
|
||||||
m_isa->drq5_w(0);
|
m_isa->drq5_w(0);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@ -608,7 +608,7 @@ void sb16_lle_device::dack16_w(int line, uint16_t data)
|
|||||||
m_isa->drq5_w(0);
|
m_isa->drq5_w(0);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
++m_dac_fifo_head %= 16;
|
++m_dac_fifo_head %= FIFO_SIZE;
|
||||||
|
|
||||||
if(m_dac_fifo_ctrl & 4)
|
if(m_dac_fifo_ctrl & 4)
|
||||||
{
|
{
|
||||||
@ -859,12 +859,12 @@ TIMER_CALLBACK_MEMBER(sb16_lle_device::timer_tick)
|
|||||||
m_isa->drq5_w(1);
|
m_isa->drq5_w(1);
|
||||||
|
|
||||||
if((!(m_ctrl8 & 2) && !(m_mode & 1)) || (!(m_ctrl16 & 2) && (m_mode & 1)))
|
if((!(m_ctrl8 & 2) && !(m_mode & 1)) || (!(m_ctrl16 & 2) && (m_mode & 1)))
|
||||||
++m_dac_fifo_tail %= 16;
|
++m_dac_fifo_tail %= FIFO_SIZE;
|
||||||
|
|
||||||
if((!(m_ctrl8 & 2) && (m_mode & 1)) || (!(m_ctrl16 & 2) && !(m_mode & 1)))
|
if((!(m_ctrl8 & 2) && (m_mode & 1)) || (!(m_ctrl16 & 2) && !(m_mode & 1)))
|
||||||
{
|
{
|
||||||
m_adc_fifo[m_adc_fifo_head].h[0] = adcl;
|
m_adc_fifo[m_adc_fifo_head].h[0] = adcl;
|
||||||
m_adc_fifo[m_adc_fifo_head].h[1] = adcr;
|
m_adc_fifo[m_adc_fifo_head].h[1] = adcr;
|
||||||
++m_adc_fifo_head %= 16;
|
++m_adc_fifo_head %= FIFO_SIZE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -108,7 +108,8 @@ private:
|
|||||||
uint16_t h[2];
|
uint16_t h[2];
|
||||||
uint8_t b[4];
|
uint8_t b[4];
|
||||||
} samples;
|
} samples;
|
||||||
samples m_adc_fifo[16], m_dac_fifo[16];
|
static constexpr int FIFO_SIZE = 16;
|
||||||
|
samples m_adc_fifo[FIFO_SIZE], m_dac_fifo[FIFO_SIZE];
|
||||||
int m_adc_fifo_head, m_adc_fifo_tail, m_dac_fifo_head, m_dac_fifo_tail;
|
int m_adc_fifo_head, m_adc_fifo_tail, m_dac_fifo_head, m_dac_fifo_tail;
|
||||||
bool m_adc_r, m_dac_r, m_adc_h, m_dac_h, m_irq8, m_irq16, m_irq_midi;
|
bool m_adc_r, m_dac_r, m_adc_h, m_dac_h, m_irq8, m_irq16, m_irq_midi;
|
||||||
bool m_dma8_done, m_dma16_done;
|
bool m_dma8_done, m_dma16_done;
|
||||||
|
Loading…
Reference in New Issue
Block a user