apple/rbv.cpp: Remove leftover code since it's using the pseudo-VIA device now. [R. Belmont]

This commit is contained in:
arbee 2025-04-14 07:42:47 -04:00
parent 7bb6cd259c
commit 64efa5635d
2 changed files with 0 additions and 170 deletions

View File

@ -184,36 +184,6 @@ void rbv_device::asc_irq_w(int state)
m_pseudovia->asc_irq_w(state);
}
void rbv_device::pseudovia_recalc_irqs()
{
// check slot interrupts and bubble them down to IFR
u8 slot_irqs = (~m_pseudovia_regs[2]) & 0x78;
slot_irqs &= (m_pseudovia_regs[0x12] & 0x78);
if (slot_irqs)
{
m_pseudovia_regs[3] |= 2; // any slot
}
else // no slot irqs, clear the pending bit
{
m_pseudovia_regs[3] &= ~2; // any slot
}
u8 ifr = (m_pseudovia_regs[3] & m_pseudovia_ier) & 0x1b;
if (ifr != 0)
{
m_pseudovia_regs[3] = ifr | 0x80;
m_pseudovia_ifr = ifr | 0x80;
write_irq(ASSERT_LINE);
}
else
{
write_irq(CLEAR_LINE);
}
}
u8 rbv_device::via2_video_config_r()
{
return m_montype;
@ -229,141 +199,6 @@ void rbv_device::via2_irq_w(int state)
write_irq(state);
}
u8 rbv_device::pseudovia_r(offs_t offset)
{
int data = 0;
if (offset < 0x100)
{
data = m_pseudovia_regs[offset];
if (offset == 0x10)
{
data &= ~0x38;
data |= m_montype;
}
// bit 7 of these registers always reads as 0 on pseudo-VIAs
if ((offset == 0x12) || (offset == 0x13))
{
data &= ~0x80;
}
}
else
{
offset >>= 9;
switch (offset)
{
case 13: // IFR
data = m_pseudovia_ifr;
break;
case 14: // IER
data = m_pseudovia_ier;
break;
default:
logerror("pseudovia_r: Unknown pseudo-VIA register %d access\n", offset);
break;
}
}
return data;
}
void rbv_device::pseudovia_w(offs_t offset, u8 data)
{
if (offset < 0x100)
{
switch (offset)
{
case 0x02:
m_pseudovia_regs[offset] |= (data & 0x40);
pseudovia_recalc_irqs();
break;
case 0x03: // write here to ack
if (data & 0x80) // 1 bits write 1s
{
m_pseudovia_regs[offset] |= data & 0x7f;
m_pseudovia_ifr |= data & 0x7f;
}
else // 1 bits write 0s
{
m_pseudovia_regs[offset] &= ~(data & 0x7f);
m_pseudovia_ifr &= ~(data & 0x7f);
}
pseudovia_recalc_irqs();
break;
case 0x10:
m_pseudovia_regs[offset] = data;
break;
case 0x12:
if (data & 0x80) // 1 bits write 1s
{
m_pseudovia_regs[offset] |= data & 0x7f;
}
else // 1 bits write 0s
{
m_pseudovia_regs[offset] &= ~(data & 0x7f);
}
pseudovia_recalc_irqs();
break;
case 0x13:
if (data & 0x80) // 1 bits write 1s
{
m_pseudovia_regs[offset] |= data & 0x7f;
if (data == 0xff)
m_pseudovia_regs[offset] = 0x1f; // I don't know why this is special, but the IIci ROM's POST demands it
}
else // 1 bits write 0s
{
m_pseudovia_regs[offset] &= ~(data & 0x7f);
}
break;
default:
m_pseudovia_regs[offset] = data;
break;
}
}
else
{
offset >>= 9;
switch (offset)
{
case 13: // IFR
if (data & 0x80)
{
data = 0x7f;
}
pseudovia_recalc_irqs();
break;
case 14: // IER
if (data & 0x80) // 1 bits write 1s
{
m_pseudovia_ier |= data & 0x7f;
}
else // 1 bits write 0s
{
m_pseudovia_ier &= ~(data & 0x7f);
}
pseudovia_recalc_irqs();
break;
default:
logerror("pseudovia_w: Unknown extended pseudo-VIA register %d access\n", offset);
break;
}
}
}
u8 rbv_device::dac_r(offs_t offset)
{
switch (offset)

View File

@ -53,16 +53,11 @@ private:
u8 m_montype;
bool m_monochrome;
u8 m_pseudovia_regs[256], m_pseudovia_ier, m_pseudovia_ifr;
u8 m_pal_address, m_pal_idx;
u32 *m_ram_ptr;
u32 m_ram_size;
u8 m_video_config;
u8 pseudovia_r(offs_t offset);
void pseudovia_w(offs_t offset, u8 data);
void pseudovia_recalc_irqs();
u8 via2_video_config_r();
void via2_video_config_w(u8 data);
void via2_irq_w(int state);