public Memory() { // Set up handled addresses based on the system type. if (Configuration.SystemType == SystemType.AltoI) { _addresses = new MemoryRange[] { new MemoryRange(0, _memTop), // Main bank of RAM to 176777; IO page above this. }; } else { _addresses = new MemoryRange[] { new MemoryRange(0, _memTop), // Main bank of RAM to 176777; IO page above this. new MemoryRange(_xmBanksStart, (ushort)(_xmBanksStart + 16)), // Memory bank registers }; } Reset(); }
public bool Overlaps(MemoryRange other) { return((other.Start >= this.Start && other.Start <= this.End) || (other.End >= this.Start && other.End <= this.End)); }