public SimSymbol GetSymbol(string name) { SimSymbol symbol = null; if (!Symbols.TryGetValue(name, out symbol)) { throw new SimCPUException(); } return(symbol); }
public SimSymbol FindSymbol(ulong address) { // check last result first - very high cache hit ratio if (lastSymbol != null && address >= lastSymbol.Address && address < lastSymbol.EndAddress) { return(lastSymbol); } foreach (var entry in Symbols) { if (address >= entry.Value.Address && address < entry.Value.EndAddress) { lastSymbol = entry.Value; return(lastSymbol); } } return(null); }
public CallStackEntry(SimSymbol simSymbol, ulong address, bool display32) : this(simSymbol.Name, address, display32) { SimSymbol = simSymbol; }
public SimSymbol FindSymbol(ulong address) { // check last result first - very high cache hit ratio if (lastSymbol != null && address >= lastSymbol.Address && address < lastSymbol.EndAddress) { return lastSymbol; } foreach (var entry in Symbols) { if (address >= entry.Value.Address && address < entry.Value.EndAddress) { lastSymbol = entry.Value; return lastSymbol; } } return null; }