From 9842fc438ad42cbd3f0d20350a4a951ac97f8be4 Mon Sep 17 00:00:00 2001 From: angelosa Date: Fri, 23 Feb 2018 21:49:28 +0100 Subject: doa protection was actually good this way, mangled 3d is caused by comms or core bugs (nw) --- src/mame/machine/315-5838_317-0229_comp.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/mame/machine/315-5838_317-0229_comp.cpp b/src/mame/machine/315-5838_317-0229_comp.cpp index 39b4e0ade72..f9f80522ada 100644 --- a/src/mame/machine/315-5838_317-0229_comp.cpp +++ b/src/mame/machine/315-5838_317-0229_comp.cpp @@ -331,12 +331,14 @@ READ32_MEMBER(sega_315_5838_comp_device::doa_prot_r) if (offset == 0x7ff8/4) { - retval = m_protram[m_protstate] | m_protram[m_protstate+1]<<8; + // PC=2c20 + retval = m_protram[m_protstate+1] | m_protram[m_protstate]<<8; m_protstate+=2; printf("doa_prot_read %08x %08x %08x\n", offset*4, retval, mem_mask); } else if (offset == 0x400c/4) // todo, is this actually part of the protection? it's in the address range, but decathlete doesn't have it afaik. { + // this actually looks a busy status flag m_prot_a = !m_prot_a; if (m_prot_a) retval = 0xffff; -- cgit v1.2.3