summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Olivier Galibert <galibert@pobox.com>2019-12-22 20:19:58 +0100
committer Olivier Galibert <galibert@pobox.com>2019-12-22 20:20:14 +0100
commit4f5a836c89ed6cc7911667b3267918695d11a97a (patch)
tree6928649f3dec5e73f47aaf3c4f4c97563528cb07
parentd495a669ebe0e8cbd28e28f6750d492538fa9d8e (diff)
vf: Hack to get rid of the ram collisions makes things work... (nw)
-rw-r--r--src/mame/machine/model1.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/mame/machine/model1.cpp b/src/mame/machine/model1.cpp
index 09682d3bb4a..5cf0749eb53 100644
--- a/src/mame/machine/model1.cpp
+++ b/src/mame/machine/model1.cpp
@@ -156,13 +156,17 @@ READ32_MEMBER(model1_state::copro_ramadr_r)
WRITE32_MEMBER(model1_state::copro_ramdata_w)
{
- COMBINE_DATA(&m_copro_ram_data[m_copro_ram_adr[offset >> 3] & 0x1fff]);
+ if(m_copro_ram_adr[offset >> 3] & 0x40000) {
+ COMBINE_DATA(&m_copro_ram_data[0x1000 | (m_copro_ram_adr[offset >> 3] & 0x1fff)]);
+ } else {
+ COMBINE_DATA(&m_copro_ram_data[m_copro_ram_adr[offset >> 3] & 0x1fff]);
+ }
m_copro_ram_adr[offset >> 3] ++;
}
READ32_MEMBER(model1_state::copro_ramdata_r)
{
- u32 val = m_copro_ram_data[m_copro_ram_adr[offset >> 3] & 0x1fff];
+ u32 val = (m_copro_ram_adr[offset >> 3] & 0x40000) ? m_copro_ram_data[0x1000 | (m_copro_ram_adr[offset >> 3] & 0x1fff)] : m_copro_ram_data[m_copro_ram_adr[offset >> 3] & 0x1fff];
if(!machine().side_effects_disabled())
m_copro_ram_adr[offset >> 3] ++;
return val;