Previous 199869 Revisions Next

r18808 Friday 2nd November, 2012 at 11:44:12 UTC by hap
prevent 500gp locking up
[src/mame/drivers]namcos23.c

trunk/src/mame/drivers/namcos23.c
r18807r18808
12921292   UINT16 sram[0x20000];     // Ram-based tiles for rendering
12931293   UINT16 pczram[0x200];     // Ram-based tilemap for rendering, or something else
12941294   UINT32 adr;
1295   UINT16 status_c;
12951296};
12961297
12971298struct c421_t
r18807r18808
16711672         return m_c412.adr >> 16;
16721673      case 0xa:
16731674         return s23_c412_ram_r(space, m_c412.adr, mem_mask);
1675      case 0xc:
1676         // unknown status, 500gp reads it and waits for a transition
1677         // no other games use it?
1678         m_c412.status_c ^= 1;
1679         return m_c412.status_c;
16741680   }
16751681
16761682   logerror("c412_r %x @ %04x (%08x, %08x)\n", offset, mem_mask, space.device().safe_pc(), (unsigned int)space.device().state().state_int(MIPS3_R31));
r18807r18808
16811687{
16821688   switch (offset)
16831689   {
1684      case 8:
1690      case 0x2:
1691         // d0: cz on
1692         // other bits: no function?
1693         break;
1694      case 0x8:
16851695         m_c412.adr = (data & mem_mask) | (m_c412.adr & (0xffffffff ^ mem_mask));
16861696         break;
1687      case 9:
1697      case 0x9:
16881698         m_c412.adr = ((data & mem_mask) << 16) | (m_c412.adr & (0xffffffff ^ (mem_mask << 16)));
16891699         break;
1690      case 10:
1700      case 0xa:
16911701         s23_c412_ram_w(space, m_c412.adr, data, mem_mask);
16921702         m_c412.adr += 2;
16931703         break;

Previous 199869 Revisions Next


© 1997-2024 The MAME Team