Exemplo n.º 1
0
        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);
            }
        }
Exemplo n.º 2
0
 /// <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);
Exemplo n.º 3
0
 /// <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);
Exemplo n.º 4
0
 public int Read(int offset)
 {
     return(_state.Read(offset));
 }
Exemplo n.º 5
0
 /// <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);