public void SetRAM(uint ramSize) { m_RAM = new MemoryChunk(ramSize); foreach (Segment segment in m_References) { if ((segment.Reference & MemoryReferenceInfo.ReferenceType) == MemoryReferenceInfo.RAM) { GetRAMReference(segment); } } }
public void SetROM(uint romSize) { m_ROM = new MemoryChunk(romSize); m_ROM.ReadOnly = true; foreach (Segment segment in m_References) { if ((segment.Reference & MemoryReferenceInfo.ReferenceType) == MemoryReferenceInfo.ROM) { GetROMReference(segment); } } }
/// <summary> /// Removes all RAM, ROM, Devices, and any segment references to the same. /// </summary> public void Reset() { foreach (Segment segment in m_References) { segment.SetMemoryReference(null); } for (int i = 0; i < m_Devices.Length; i++) { if (m_Devices[i] != null) { m_Devices[i].Dispose(); m_Devices[i] = null; } } m_RAM = null; m_ROM = null; }