summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/snes/event.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/snes/event.cpp')
-rw-r--r--src/devices/bus/snes/event.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/devices/bus/snes/event.cpp b/src/devices/bus/snes/event.cpp
index 5ce5bbca97c..fe9a367e54d 100644
--- a/src/devices/bus/snes/event.cpp
+++ b/src/devices/bus/snes/event.cpp
@@ -113,8 +113,10 @@ uint8_t sns_pfest94_device::chip_read(offs_t offset)
else
{
// DSP access
- offset &= 0x1fff;
- return m_upd7725->snesdsp_read(offset < 0x1000);
+ if (BIT(offset, 12))
+ return m_upd7725->status_r();
+ else
+ return m_upd7725->data_r();
}
}
@@ -151,8 +153,10 @@ void sns_pfest94_device::chip_write(offs_t offset, uint8_t data)
else
{
// DSP access
- offset &= 0x1fff;
- m_upd7725->snesdsp_write(offset < 0x1000, data);
+ if (BIT(~offset, 12))
+ m_upd7725->data_w(data);
+ else
+ logerror("%s: Writing DSP status to %02x, ignored", machine().describe_context(), data);
}
}