Files
SabreTools.Models/SoftwareList/Rom.cs
2023-09-04 01:31:30 -04:00

96 lines
2.2 KiB
C#

using System.Xml;
using System.Xml.Serialization;
namespace SabreTools.Models.SoftwareList
{
[XmlRoot("rom")]
public class Rom
{
[Required]
[XmlAttribute("name")]
#if NET48
public string Name { get; set; }
#else
public string? Name { get; set; }
#endif
[XmlAttribute("size")]
#if NET48
public string Size { get; set; }
#else
public string? Size { get; set; }
#endif
[XmlAttribute("length")]
#if NET48
public string Length { get; set; }
#else
public string? Length { get; set; }
#endif
[XmlAttribute("crc")]
#if NET48
public string CRC { get; set; }
#else
public string? CRC { get; set; }
#endif
[XmlAttribute("sha1")]
#if NET48
public string SHA1 { get; set; }
#else
public string? SHA1 { get; set; }
#endif
/// <remarks>Numeric?</remarks>
[XmlAttribute("offset")]
#if NET48
public string Offset { get; set; }
#else
public string? Offset { get; set; }
#endif
[XmlAttribute("value")]
#if NET48
public string Value { get; set; }
#else
public string? Value { get; set; }
#endif
/// <remarks>(baddump|nodump|good) "good"</remarks>
[XmlAttribute("status")]
#if NET48
public string Status { get; set; }
#else
public string? Status { get; set; }
#endif
/// <remarks>(load16_byte|load16_word|load16_word_swap|load32_byte|load32_word|load32_word_swap|load32_dword|load64_word|load64_word_swap|reload|fill|continue|reload_plain|ignore)</remarks>
[XmlAttribute("loadflag")]
#if NET48
public string LoadFlag { get; set; }
#else
public string? LoadFlag { get; set; }
#endif
#region DO NOT USE IN PRODUCTION
/// <remarks>Should be empty</remarks>
[XmlAnyAttribute]
#if NET48
public XmlAttribute[] ADDITIONAL_ATTRIBUTES { get; set; }
#else
public XmlAttribute[]? ADDITIONAL_ATTRIBUTES { get; set; }
#endif
/// <remarks>Should be empty</remarks>
[XmlAnyElement]
#if NET48
public object[] ADDITIONAL_ELEMENTS { get; set; }
#else
public object[]? ADDITIONAL_ELEMENTS { get; set; }
#endif
#endregion
}
}