Previous 15994 Revisions Next

r8798 Wednesday 18th August, 2010 at 16:03:41 UTC by Angelo Salese
[A310] Fixed a fatal bug in MEMC handling
[src/mame/machine]archimds.c

src/mame/machine/archimds.c
r8797r8798
492492            // if that did it, clear the IRQ
493493            if (ioc_regs[IRQ_STATUS_A] == 0)
494494            {
495               printf("IRQ clear A\n");
495496               cputag_set_input_line(space->machine, "maincpu", ARM_IRQ_LINE, CLEAR_LINE);
496497            }
497498            break;
r8797r8798
837838         log <<= 23;
838839         log |= (data & 0x7f8000);
839840         memc = ((data & 0x80) ? 1 : 0) | ((data & 0x1000) ? 2 : 0);
841         //printf("Mapping %08X to %08X\n",0x2000000+(phys*32768),(((data >> 15)&0xff)|((data >> 2)&0x300)));
840842         break;
841843   }
842844
r8797r8798
846848   memc_latchrom = 0;
847849
848850   // now go ahead and set the mapping in the page table
849   memc_pages[log] = phys * memc;
851   memc_pages[log] = phys + (memc*0x80);
850852
851853//  printf("MEMC_PAGE(%d): W %08x: log %x to phys %x, MEMC %d, perms %d\n", memc_pagesize, data, log, phys, memc, perms);
852854}

Previous 15994 Revisions Next


© 1998-2018 The MESS Team