public override void BusInit(IBusManager bmgr) { base.BusInit(bmgr); m_cpu = bmgr.CPU; m_ulaProfi = bmgr.FindDevice<UlaProfi3XX>(); bmgr.SubscribeWRIO(0x8002, 0x0000, writePort7FFD); bmgr.SubscribeWRIO(0xFFFF, 0xDFFD, writePortDFFD); bmgr.SubscribeRDMEM_M1(0xC000, 0x4000, readRamM1); bmgr.SubscribeRDMEM_M1(0xC000, 0x8000, readRamM1); bmgr.SubscribeRDMEM_M1(0xC000, 0xC000, readRamM1); bmgr.SubscribeRESET(busReset); }
public override void BusInit(IBusManager bmgr) { m_cpu = bmgr.CPU; m_ulaProfi = bmgr.FindDevice <UlaProfi3XX>(); bmgr.Events.SubscribeWrIo(0x8002, 0x7FFD & 0x8002, BusWritePort7FFD); bmgr.Events.SubscribeWrIo(0x2002, 0xDFFD & 0x2002, BusWritePortDFFD); bmgr.Events.SubscribeRdMemM1(0xFF00, 0x3D00, BusReadMem3D00_M1); bmgr.Events.SubscribeRdMemM1(0xC000, 0x4000, BusReadMemRamM1); bmgr.Events.SubscribeRdMemM1(0xC000, 0x8000, BusReadMemRamM1); bmgr.Events.SubscribeRdMemM1(0xC000, 0xC000, BusReadMemRamM1); bmgr.Events.SubscribeReset(BusReset); bmgr.Events.SubscribeNmiRq(BusNmiRq); bmgr.Events.SubscribeNmiAck(BusNmiAck); // Subscribe before MemoryBase.BusInit // to handle memory switches before read base.BusInit(bmgr); }