/// <summary> /// Calculate CRC and compare with actual /// </summary> /// <param name="binary">Binary dump</param> private void AssertCrc(byte[] binary) { var dump = new RamDump(binary); var hasher = new XModemHasher(dump.Bytes); var crc = hasher.Calculate(dump.CrcUpTo); Assert.NotNull(crc); Assert.AreEqual(2, crc.Length); Assert.AreEqual(dump.ActualCrc[0], crc[0]); Assert.AreEqual(dump.ActualCrc[1], crc[1]); }
/// <summary> /// Change to type to target. /// </summary> /// <param name="dump">Binary dump</param> /// <returns>New dump with changed type</returns> public RamDump SwitchType(RamDump dump) { // Set new type var changed = new RamDump(dump) { Type = TargetType }; // Recalculate hash var hasher = new XModemHasher(changed.Bytes); changed.ActualCrc = hasher.Calculate(changed.CrcUpTo); return(changed); }