Files
SabreTools.Serialization/SabreTools.Data.Models/CHD/CompressedMapHeaderV5.cs
Matt Nadareski 7689c6dd07 Libraries
This change looks dramatic, but it's just separating out the already-split namespaces into separate top-level folders. In theory, every single one could be built into their own Nuget package. `SabreTools.Serialization` still builds the normal Nuget package that is used by all other projects and includes all namespaces.
2026-03-21 16:26:56 -04:00

46 lines
1.1 KiB
C#

using System.Runtime.InteropServices;
namespace SabreTools.Data.Models.CHD
{
/// <see href="https://github.com/mamedev/mame/blob/master/src/lib/util/chd.h"/>
[StructLayout(LayoutKind.Sequential)]
public sealed class CompressedMapHeaderV5
{
/// <summary>
/// Length of compressed map
/// </summary>
public uint Length;
/// <summary>
/// Offset of first block
/// </summary>
/// <remarks>Actually UInt48</remarks>
public ulong DataStart;
/// <summary>
/// CRC-16 of the map
/// </summary>
public ushort CRC;
/// <summary>
/// Bits used to encode complength
/// </summary>
public byte LengthBits;
/// <summary>
/// Bits used to encode self-refs
/// </summary>
public byte HunkBits;
/// <summary>
/// Bits used to encode parent unit refs
/// </summary>
public byte ParentUnitBits;
/// <summary>
/// Future use
/// </summary>
public byte Reserved;
}
}