internal override IEnumerable<byte> AsBytes() { List<byte> list = new List<byte>(); list.Add(0x02); list.Add(0x00); list.Add(0x00); list.Add((byte)RecordType); list.Add((RecordType == HexRecordType.ExtendedLinearAddress) ? (byte)(Address >> 24) : (byte)(Address >> 12)); list.Add((RecordType == HexRecordType.ExtendedLinearAddress) ? (byte)(Address >> 16) : (byte)(Address >> 4)); list.Add(list.Checksum()); return list; }
public void Save(BinaryWriter b) { comment = "Merthsoft Token IDE"; List <byte> buffer = new List <byte>(); #region Gen buffer #region Header List <byte> headerBuffer = new List <byte>(); // Header section headerBuffer.AddRange(sigArray); headerBuffer.AddRange(fsigArray); headerBuffer.AddRange(Comment.ToByteArray(42)); headerBuffer.AddRange(((short)(Length)).GetBytes()); #endregion #region Data List <byte> dataBuffer = new List <byte>(); // Data section short nameLength = (short)Name.Length; if (Calc != CalcType.Calc85) { dataBuffer.AddRange(flag1); } else { dataBuffer.AddRange(((short)(nameLength + 4)).ToByteArray()); } dataBuffer.AddRange(((short)(DataLength)).GetBytes()); dataBuffer.Add((byte)ID); if (Calc != CalcType.Calc85) { dataBuffer.AddRange(Name.ToByteArray(8)); } else { dataBuffer.Add((byte)nameLength); dataBuffer.AddRange(Name.ToByteArray()); } if (Calc == CalcType.Calc8x) { dataBuffer.Add(version); dataBuffer.Add(archFlag); } dataBuffer.AddRange(((short)(DataLength)).GetBytes()); dataBuffer.AddRange(FullData); #endregion buffer.AddRange(headerBuffer); buffer.AddRange(dataBuffer); buffer.AddRange(dataBuffer.Checksum().GetBytes()); #endregion b.Write(buffer.ToArray()); }
internal override IEnumerable <byte> AsBytes() { List <byte> list = new List <byte>(); list.Add(0x02); list.Add(0x00); list.Add(0x00); list.Add((byte)RecordType); list.Add((RecordType == HexRecordType.ExtendedLinearAddress) ? (byte)(Address >> 24) : (byte)(Address >> 12)); list.Add((RecordType == HexRecordType.ExtendedLinearAddress) ? (byte)(Address >> 16) : (byte)(Address >> 4)); list.Add(list.Checksum()); return(list); }
internal override IEnumerable<byte> AsBytes() { List<byte> list = new List<byte>(); list.Add((byte)Data.Length); list.Add((byte)(Address >> 8)); list.Add((byte)(Address)); list.Add((byte)RecordType); foreach (var b in Data) list.Add(b); list.Add(list.Checksum()); return list; }
internal override IEnumerable <byte> AsBytes() { List <byte> list = new List <byte>(); list.Add((byte)Data.Length); list.Add((byte)(Address >> 8)); list.Add((byte)(Address)); list.Add((byte)RecordType); foreach (var b in Data) { list.Add(b); } list.Add(list.Checksum()); return(list); }