// Token: 0x060017A0 RID: 6048 RVA: 0x00029FB8 File Offset: 0x00028FB8 public static void Subscribe <T>(MessageHandler <T> messageHandler, uint port) where T : Message { uint key = Hash.Hash32(typeof(T).ToString()); List <IPortHandler> list; if (Messenger.MessageHandlers.TryGetValue(key, out list)) { using (List <IPortHandler> .Enumerator enumerator = list.GetEnumerator()) { while (enumerator.MoveNext()) { IPortHandler portHandler = enumerator.Current; PortHandler <T> portHandler2 = (PortHandler <T>)portHandler; if (portHandler2.Port == port) { portHandler2.Handler += messageHandler; return; } } goto IL_78; } } list = new List <IPortHandler>(); Messenger.MessageHandlers.Add(key, list); IL_78: PortHandler <T> portHandler3 = new PortHandler <T>(port); portHandler3.Handler += messageHandler; list.Add(portHandler3); }
private string ImproveOperand(IOperand op) { IPortHandler handler = Parent.FindHandler(op); if (handler != null) { return(handler.Identify(op.AbsoluteAddress.Value)); } return(op.ToString()); }
public void AcquireROM() { using (var f = File.Open(Filename, FileMode.Open, FileAccess.Read, FileShare.Read)) { ROM = new byte[f.Length]; f.Read(ROM, 0, (int)f.Length); } Header = new RomHeader(Tool.Slice(ROM, 0x100, 0x150)); MBC = GetMBC(Header.MBC); Ports.Insert(0, MBC); }