diff --git a/src/devices/bus/isa/sb16.cpp b/src/devices/bus/isa/sb16.cpp index 16c759c951d..55c5588d9df 100644 --- a/src/devices/bus/isa/sb16.cpp +++ b/src/devices/bus/isa/sb16.cpp @@ -496,7 +496,7 @@ uint8_t sb16_lle_device::dack_r(int line) return ret; } - ++m_adc_fifo_tail %= 16; + ++m_adc_fifo_tail %= FIFO_SIZE; if(m_adc_fifo_ctrl & 4) { @@ -504,7 +504,7 @@ uint8_t sb16_lle_device::dack_r(int line) 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); return ret; } @@ -539,7 +539,7 @@ void sb16_lle_device::dack_w(int line, uint8_t data) return; } - ++m_dac_fifo_head %= 16; + ++m_dac_fifo_head %= FIFO_SIZE; if(m_dac_fifo_ctrl & 4) { @@ -573,7 +573,7 @@ uint16_t sb16_lle_device::dack16_r(int line) m_isa->drq5_w(0); return ret; } - ++m_adc_fifo_tail %= 16; + ++m_adc_fifo_tail %= FIFO_SIZE; if(m_adc_fifo_ctrl & 4) { @@ -581,7 +581,7 @@ uint16_t sb16_lle_device::dack16_r(int line) 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); return ret; } @@ -608,7 +608,7 @@ void sb16_lle_device::dack16_w(int line, uint16_t data) m_isa->drq5_w(0); return; } - ++m_dac_fifo_head %= 16; + ++m_dac_fifo_head %= FIFO_SIZE; if(m_dac_fifo_ctrl & 4) { @@ -859,12 +859,12 @@ TIMER_CALLBACK_MEMBER(sb16_lle_device::timer_tick) m_isa->drq5_w(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))) { m_adc_fifo[m_adc_fifo_head].h[0] = adcl; m_adc_fifo[m_adc_fifo_head].h[1] = adcr; - ++m_adc_fifo_head %= 16; + ++m_adc_fifo_head %= FIFO_SIZE; } } diff --git a/src/devices/bus/isa/sb16.h b/src/devices/bus/isa/sb16.h index a54fe0ae489..9facc1e201e 100644 --- a/src/devices/bus/isa/sb16.h +++ b/src/devices/bus/isa/sb16.h @@ -108,7 +108,8 @@ private: uint16_t h[2]; uint8_t b[4]; } 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; 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;