public void WriteWithRedundancyCheck(int offset, int value, out bool changed) { var shadowRamControl = _state.State.SetMmeShadowRamControlMode; if (shadowRamControl == SetMmeShadowRamControlMode.MethodPassthrough || offset < 0x200) { _state.WriteWithRedundancyCheck(offset, value, out changed); } else if (shadowRamControl == SetMmeShadowRamControlMode.MethodTrack || shadowRamControl == SetMmeShadowRamControlMode.MethodTrackWithFilter) { _shadowState.Write(offset, value); _state.WriteWithRedundancyCheck(offset, value, out changed); } else /* if (shadowRamControl == SetMmeShadowRamControlMode.MethodReplay) */ { Debug.Assert(shadowRamControl == SetMmeShadowRamControlMode.MethodReplay); _state.WriteWithRedundancyCheck(offset, _shadowState.Read(offset), out changed); } }
/// <summary> /// Reads data from the class registers. /// </summary> /// <param name="offset">Register byte offset</param> /// <returns>Data at the specified offset</returns> public int Read(int offset) => _state.Read(offset);
/// <summary> /// Reads data from the class registers. /// </summary> /// <param name="offset">Register byte offset</param> /// <returns>Data at the specified offset</returns> public override int Read(int offset) => _state.Read(offset);
public int Read(int offset) { return(_state.Read(offset)); }
/// <summary> /// Reads data from the class registers. /// </summary> /// <param name="offset">Register byte offset</param> /// <returns>Data at the specified offset</returns> public virtual int Read(int offset) => _state.Read(offset);