summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/lpci/southbridge.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/lpci/southbridge.cpp')
-rw-r--r--src/devices/bus/lpci/southbridge.cpp50
1 files changed, 25 insertions, 25 deletions
diff --git a/src/devices/bus/lpci/southbridge.cpp b/src/devices/bus/lpci/southbridge.cpp
index 8b9795b8fe5..247bc9a48db 100644
--- a/src/devices/bus/lpci/southbridge.cpp
+++ b/src/devices/bus/lpci/southbridge.cpp
@@ -135,56 +135,56 @@ southbridge_device::southbridge_device(const machine_config &mconfig, device_typ
*
**********************************************************/
-READ32_MEMBER(southbridge_device::ide1_read32_cs0_r)
+uint32_t southbridge_device::ide1_read32_cs0_r(offs_t offset, uint32_t mem_mask)
{
if (!m_ide_io_ports_enabled)
return 0xffffffff;
return m_ide->read_cs0(offset, mem_mask);
}
-WRITE32_MEMBER(southbridge_device::ide1_write32_cs0_w)
+void southbridge_device::ide1_write32_cs0_w(offs_t offset, uint32_t data, uint32_t mem_mask)
{
if (!m_ide_io_ports_enabled)
return;
m_ide->write_cs0(offset, data, mem_mask);
}
-READ32_MEMBER(southbridge_device::ide2_read32_cs0_r)
+uint32_t southbridge_device::ide2_read32_cs0_r(offs_t offset, uint32_t mem_mask)
{
if (!m_ide_io_ports_enabled)
return 0xffffffff;
return m_ide2->read_cs0(offset, mem_mask);
}
-WRITE32_MEMBER(southbridge_device::ide2_write32_cs0_w)
+void southbridge_device::ide2_write32_cs0_w(offs_t offset, uint32_t data, uint32_t mem_mask)
{
if (!m_ide_io_ports_enabled)
return;
m_ide2->write_cs0(offset, data, mem_mask);
}
-READ8_MEMBER(southbridge_device::ide1_read_cs1_r)
+uint8_t southbridge_device::ide1_read_cs1_r()
{
if (!m_ide_io_ports_enabled)
return 0xff;
return m_ide->read_cs1(1, 0xff0000) >> 16;
}
-WRITE8_MEMBER(southbridge_device::ide1_write_cs1_w)
+void southbridge_device::ide1_write_cs1_w(uint8_t data)
{
if (!m_ide_io_ports_enabled)
return;
m_ide->write_cs1(1, data << 16, 0xff0000);
}
-READ8_MEMBER(southbridge_device::ide2_read_cs1_r)
+uint8_t southbridge_device::ide2_read_cs1_r()
{
if (!m_ide_io_ports_enabled)
return 0xff;
return m_ide2->read_cs1(1, 0xff0000) >> 16;
}
-WRITE8_MEMBER(southbridge_device::ide2_write_cs1_w)
+void southbridge_device::ide2_write_cs1_w(uint8_t data)
{
if (!m_ide_io_ports_enabled)
return;
@@ -194,7 +194,7 @@ WRITE8_MEMBER(southbridge_device::ide2_write_cs1_w)
// With EISA it is possible to select whether each IRQ line is edge sensitive or level sensitive
// Each bit corresponds to an IRQ, 0 for edge triggered 1 for level sensitive
// IRQs 0 1 2 8 13 are always edge triggered
-READ8_MEMBER(southbridge_device::eisa_irq_read)
+uint8_t southbridge_device::eisa_irq_read(offs_t offset)
{
if (offset == 0)
return m_eisa_irq_mode & 0xff;
@@ -202,7 +202,7 @@ READ8_MEMBER(southbridge_device::eisa_irq_read)
return m_eisa_irq_mode >> 8;
}
-WRITE8_MEMBER(southbridge_device::eisa_irq_write)
+void southbridge_device::eisa_irq_write(offs_t offset, uint8_t data)
{
if (offset == 0)
m_eisa_irq_mode = (m_eisa_irq_mode & 0xff00) | data;
@@ -222,15 +222,15 @@ void southbridge_device::device_start()
spaceio->install_readwrite_handler(0x0000, 0x001f, read8sm_delegate(*m_dma8237_1, FUNC(am9517a_device::read)), write8sm_delegate(*m_dma8237_1, FUNC(am9517a_device::write)), 0xffffffff);
spaceio->install_readwrite_handler(0x0020, 0x003f, read8sm_delegate(*m_pic8259_master, FUNC(pic8259_device::read)), write8sm_delegate(*m_pic8259_master, FUNC(pic8259_device::write)), 0xffffffff);
spaceio->install_readwrite_handler(0x0040, 0x005f, read8sm_delegate(*m_pit8254, FUNC(pit8254_device::read)), write8sm_delegate(*m_pit8254, FUNC(pit8254_device::write)), 0xffffffff);
- spaceio->install_readwrite_handler(0x0060, 0x0063, read8_delegate(*this, FUNC(southbridge_device::at_portb_r)), write8_delegate(*this, FUNC(southbridge_device::at_portb_w)), 0x0000ff00);
- spaceio->install_readwrite_handler(0x0080, 0x009f, read8_delegate(*this, FUNC(southbridge_device::at_page8_r)), write8_delegate(*this, FUNC(southbridge_device::at_page8_w)), 0xffffffff);
+ spaceio->install_readwrite_handler(0x0060, 0x0063, read8smo_delegate(*this, FUNC(southbridge_device::at_portb_r)), write8smo_delegate(*this, FUNC(southbridge_device::at_portb_w)), 0x0000ff00);
+ spaceio->install_readwrite_handler(0x0080, 0x009f, read8sm_delegate(*this, FUNC(southbridge_device::at_page8_r)), write8sm_delegate(*this, FUNC(southbridge_device::at_page8_w)), 0xffffffff);
spaceio->install_readwrite_handler(0x00a0, 0x00bf, read8sm_delegate(*m_pic8259_slave, FUNC(pic8259_device::read)), write8sm_delegate(*m_pic8259_slave, FUNC(pic8259_device::write)), 0xffffffff);
- spaceio->install_readwrite_handler(0x00c0, 0x00df, read8_delegate(*this, FUNC(southbridge_device::at_dma8237_2_r)), write8_delegate(*this, FUNC(southbridge_device::at_dma8237_2_w)), 0xffffffff);
- spaceio->install_readwrite_handler(0x0170, 0x0177, read32_delegate(*this, FUNC(southbridge_device::ide2_read32_cs0_r)), write32_delegate(*this, FUNC(southbridge_device::ide2_write32_cs0_w)), 0xffffffff);
- spaceio->install_readwrite_handler(0x01f0, 0x01f7, read32_delegate(*this, FUNC(southbridge_device::ide1_read32_cs0_r)), write32_delegate(*this, FUNC(southbridge_device::ide1_write32_cs0_w)), 0xffffffff);
- spaceio->install_readwrite_handler(0x0374, 0x0377, read8_delegate(*this, FUNC(southbridge_device::ide2_read_cs1_r)), write8_delegate(*this, FUNC(southbridge_device::ide2_write_cs1_w)), 0xff0000);
- spaceio->install_readwrite_handler(0x03f4, 0x03f7, read8_delegate(*this, FUNC(southbridge_device::ide1_read_cs1_r)), write8_delegate(*this, FUNC(southbridge_device::ide1_write_cs1_w)), 0xff0000);
- spaceio->install_readwrite_handler(0x04d0, 0x04d3, read8_delegate(*this, FUNC(southbridge_device::eisa_irq_read)), write8_delegate(*this, FUNC(southbridge_device::eisa_irq_write)), 0x0000ffff);
+ spaceio->install_readwrite_handler(0x00c0, 0x00df, read8sm_delegate(*this, FUNC(southbridge_device::at_dma8237_2_r)), write8sm_delegate(*this, FUNC(southbridge_device::at_dma8237_2_w)), 0xffffffff);
+ spaceio->install_readwrite_handler(0x0170, 0x0177, read32s_delegate(*this, FUNC(southbridge_device::ide2_read32_cs0_r)), write32s_delegate(*this, FUNC(southbridge_device::ide2_write32_cs0_w)), 0xffffffff);
+ spaceio->install_readwrite_handler(0x01f0, 0x01f7, read32s_delegate(*this, FUNC(southbridge_device::ide1_read32_cs0_r)), write32s_delegate(*this, FUNC(southbridge_device::ide1_write32_cs0_w)), 0xffffffff);
+ spaceio->install_readwrite_handler(0x0374, 0x0377, read8smo_delegate(*this, FUNC(southbridge_device::ide2_read_cs1_r)), write8smo_delegate(*this, FUNC(southbridge_device::ide2_write_cs1_w)), 0xff0000);
+ spaceio->install_readwrite_handler(0x03f4, 0x03f7, read8smo_delegate(*this, FUNC(southbridge_device::ide1_read_cs1_r)), write8smo_delegate(*this, FUNC(southbridge_device::ide1_write_cs1_w)), 0xff0000);
+ spaceio->install_readwrite_handler(0x04d0, 0x04d3, read8sm_delegate(*this, FUNC(southbridge_device::eisa_irq_read)), write8sm_delegate(*this, FUNC(southbridge_device::eisa_irq_write)), 0x0000ffff);
spaceio->nop_readwrite(0x00e0, 0x00ef);
}
@@ -306,7 +306,7 @@ WRITE_LINE_MEMBER( southbridge_device::at_pit8254_out2_changed )
*
*************************************************************************/
-READ8_MEMBER( southbridge_device::at_page8_r )
+uint8_t southbridge_device::at_page8_r(offs_t offset)
{
uint8_t data = m_at_pages[offset % 0x10];
@@ -329,7 +329,7 @@ READ8_MEMBER( southbridge_device::at_page8_r )
}
-WRITE8_MEMBER( southbridge_device::at_page8_w )
+void southbridge_device::at_page8_w(offs_t offset, uint8_t data)
{
m_at_pages[offset % 0x10] = data;
@@ -459,7 +459,7 @@ WRITE_LINE_MEMBER( southbridge_device::pc_dack5_w ) { pc_select_dma_channel(5, s
WRITE_LINE_MEMBER( southbridge_device::pc_dack6_w ) { pc_select_dma_channel(6, state); }
WRITE_LINE_MEMBER( southbridge_device::pc_dack7_w ) { pc_select_dma_channel(7, state); }
-READ8_MEMBER( southbridge_device::at_portb_r )
+uint8_t southbridge_device::at_portb_r()
{
uint8_t data = m_at_speaker;
data &= ~0xd0; // AT BIOS don't likes this being set
@@ -475,7 +475,7 @@ READ8_MEMBER( southbridge_device::at_portb_r )
return data;
}
-WRITE8_MEMBER( southbridge_device::at_portb_w )
+void southbridge_device::at_portb_w(uint8_t data)
{
m_at_speaker = data;
m_pit8254->write_gate2(BIT(data, 0));
@@ -491,12 +491,12 @@ WRITE_LINE_MEMBER( southbridge_device::iochck_w )
m_maincpu->set_input_line(INPUT_LINE_NMI, ASSERT_LINE);
}
-READ8_MEMBER( southbridge_device::at_dma8237_2_r )
+uint8_t southbridge_device::at_dma8237_2_r(offs_t offset)
{
return m_dma8237_2->read(offset / 2);
}
-WRITE8_MEMBER( southbridge_device::at_dma8237_2_w )
+void southbridge_device::at_dma8237_2_w(offs_t offset, uint8_t data)
{
m_dma8237_2->write(offset / 2, data);
}
@@ -574,7 +574,7 @@ void southbridge_extended_device::device_reset()
southbridge_device::device_reset();
}
-WRITE8_MEMBER( southbridge_extended_device::write_rtc )
+void southbridge_extended_device::write_rtc(offs_t offset, uint8_t data)
{
if (offset==0) {
m_nmi_enabled = BIT(data,7);