Find remaining non-explicit endinaness calls

This commit is contained in:
Matt Nadareski
2024-12-17 22:38:57 -05:00
parent 1790d82a6e
commit a9f937baa3
19 changed files with 283 additions and 283 deletions

View File

@@ -97,7 +97,7 @@ namespace SabreTools.Serialization.Deserializers
var obj = new CopyrightRecord();
obj.RecordType = (RecordType)data.ReadByteValue();
obj.RecordLength = data.ReadUInt24();
obj.RecordLength = data.ReadUInt24LittleEndian();
if (obj.RecordLength > 4)
{
byte[] copyright = data.ReadBytes((int)(obj.RecordLength - 4));
@@ -135,7 +135,7 @@ namespace SabreTools.Serialization.Deserializers
var obj = new DriveRevocationListRecord();
obj.RecordType = (RecordType)data.ReadByteValue();
obj.RecordLength = data.ReadUInt24();
obj.RecordLength = data.ReadUInt24LittleEndian();
obj.TotalNumberOfEntries = data.ReadUInt32BigEndian();
// Try to parse the signature blocks
@@ -191,7 +191,7 @@ namespace SabreTools.Serialization.Deserializers
var obj = new EndOfMediaKeyBlockRecord();
obj.RecordType = (RecordType)data.ReadByteValue();
obj.RecordLength = data.ReadUInt24();
obj.RecordLength = data.ReadUInt24LittleEndian();
if (obj.RecordLength > 4)
obj.SignatureData = data.ReadBytes((int)(obj.RecordLength - 4));
@@ -211,7 +211,7 @@ namespace SabreTools.Serialization.Deserializers
var obj = new ExplicitSubsetDifferenceRecord();
obj.RecordType = (RecordType)data.ReadByteValue();
obj.RecordLength = data.ReadUInt24();
obj.RecordLength = data.ReadUInt24LittleEndian();
// Try to parse the subset differences
var subsetDifferences = new List<SubsetDifference>();
@@ -259,7 +259,7 @@ namespace SabreTools.Serialization.Deserializers
var obj = new HostRevocationListRecord();
obj.RecordType = (RecordType)data.ReadByteValue();
obj.RecordLength = data.ReadUInt24();
obj.RecordLength = data.ReadUInt24LittleEndian();
obj.TotalNumberOfEntries = data.ReadUInt32BigEndian();
// Try to parse the signature blocks
@@ -317,7 +317,7 @@ namespace SabreTools.Serialization.Deserializers
var obj = new MediaKeyDataRecord();
obj.RecordType = (RecordType)data.ReadByteValue();
obj.RecordLength = data.ReadUInt24();
obj.RecordLength = data.ReadUInt24LittleEndian();
// Try to parse the media keys
var mediaKeys = new List<byte[]>();
@@ -361,7 +361,7 @@ namespace SabreTools.Serialization.Deserializers
var obj = new SubsetDifferenceIndexRecord();
obj.RecordType = (RecordType)data.ReadByteValue();
obj.RecordLength = data.ReadUInt24();
obj.RecordLength = data.ReadUInt24LittleEndian();
obj.Span = data.ReadUInt32BigEndian();
// Try to parse the offsets
@@ -388,7 +388,7 @@ namespace SabreTools.Serialization.Deserializers
var obj = new TypeAndVersionRecord();
obj.RecordType = (RecordType)data.ReadByteValue();
obj.RecordLength = data.ReadUInt24();
obj.RecordLength = data.ReadUInt24LittleEndian();
obj.MediaKeyBlockType = (MediaKeyBlockType)data.ReadUInt32BigEndian();
obj.VersionNumber = data.ReadUInt32BigEndian();
@@ -405,7 +405,7 @@ namespace SabreTools.Serialization.Deserializers
var obj = new VerifyMediaKeyRecord();
obj.RecordType = (RecordType)data.ReadByteValue();
obj.RecordLength = data.ReadUInt24();
obj.RecordLength = data.ReadUInt24LittleEndian();
obj.CiphertextValue = data.ReadBytes(0x10);
return obj;

View File

@@ -485,7 +485,7 @@ namespace SabreTools.Serialization.Deserializers
{
var lump = new VisibilityLump();
lump.NumClusters = data.ReadInt32();
lump.NumClusters = data.ReadInt32LittleEndian();
// BSP29 has an incompatible value here
int bytesNeeded = lump.NumClusters * 8;

View File

@@ -317,7 +317,7 @@ namespace SabreTools.Serialization.Deserializers
for (int i = 0; i < sectorNumbers.Length; i++)
{
sectorNumbers[i] = (SectorNumber)data.ReadUInt32();
sectorNumbers[i] = (SectorNumber)data.ReadUInt32LittleEndian();
}
return sectorNumbers;

View File

@@ -44,7 +44,7 @@ namespace SabreTools.Serialization.Deserializers
ird.AppVersion = Encoding.ASCII.GetString(appVersion);
if (ird.Version == 7)
ird.UID = data.ReadUInt32();
ird.UID = data.ReadUInt32LittleEndian();
ird.HeaderLength = data.ReadByteValue();
ird.Header = data.ReadBytes((int)ird.HeaderLength);
@@ -63,12 +63,12 @@ namespace SabreTools.Serialization.Deserializers
ird.FileHashes = new byte[ird.FileCount][];
for (int i = 0; i < ird.FileCount; i++)
{
ird.FileKeys[i] = data.ReadUInt64();
ird.FileKeys[i] = data.ReadUInt64LittleEndian();
ird.FileHashes[i] = data.ReadBytes(16) ?? [];
}
ird.ExtraConfig = data.ReadUInt16();
ird.Attachments = data.ReadUInt16();
ird.ExtraConfig = data.ReadUInt16LittleEndian();
ird.Attachments = data.ReadUInt16LittleEndian();
if (ird.Version >= 9)
ird.PIC = data.ReadBytes(115);
@@ -80,9 +80,9 @@ namespace SabreTools.Serialization.Deserializers
ird.PIC = data.ReadBytes(115);
if (ird.Version > 7)
ird.UID = data.ReadUInt32();
ird.UID = data.ReadUInt32LittleEndian();
ird.CRC = data.ReadUInt32();
ird.CRC = data.ReadUInt32LittleEndian();
return ird;
}

View File

@@ -95,10 +95,10 @@ namespace SabreTools.Serialization.Deserializers
{
var obj = new Models.InstallShieldArchiveV3.Directory();
obj.FileCount = data.ReadUInt16();
obj.ChunkSize = data.ReadUInt16();
obj.FileCount = data.ReadUInt16LittleEndian();
obj.ChunkSize = data.ReadUInt16LittleEndian();
ushort nameLength = data.ReadUInt16();
ushort nameLength = data.ReadUInt16LittleEndian();
byte[] nameBytes = data.ReadBytes(nameLength);
obj.Name = Encoding.ASCII.GetString(nameBytes);

View File

@@ -43,12 +43,12 @@ namespace SabreTools.Serialization.Deserializers
#if NET20 || NET35
if ((header.HeaderFlags & KWAJHeaderFlags.HasDecompressedLength) != 0)
extensions.DecompressedLength = data.ReadUInt32();
extensions.DecompressedLength = data.ReadUInt32LittleEndian();
if ((header.HeaderFlags & KWAJHeaderFlags.HasUnknownFlag) != 0)
extensions.UnknownPurpose = data.ReadUInt16();
extensions.UnknownPurpose = data.ReadUInt16LittleEndian();
if ((header.HeaderFlags & KWAJHeaderFlags.HasPrefixedData) != 0)
{
extensions.UnknownDataLength = data.ReadUInt16();
extensions.UnknownDataLength = data.ReadUInt16LittleEndian();
extensions.UnknownData = data.ReadBytes((int)extensions.UnknownDataLength);
}
if ((header.HeaderFlags & KWAJHeaderFlags.HasFileName) != 0)
@@ -57,17 +57,17 @@ namespace SabreTools.Serialization.Deserializers
extensions.FileExtension = data.ReadNullTerminatedAnsiString();
if ((header.HeaderFlags & KWAJHeaderFlags.HasPrefixedData) != 0)
{
extensions.ArbitraryTextLength = data.ReadUInt16();
extensions.ArbitraryTextLength = data.ReadUInt16LittleEndian();
extensions.ArbitraryText = data.ReadBytes((int)extensions.ArbitraryTextLength);
}
#else
if (header.HeaderFlags.HasFlag(KWAJHeaderFlags.HasDecompressedLength))
extensions.DecompressedLength = data.ReadUInt32();
extensions.DecompressedLength = data.ReadUInt32LittleEndian();
if (header.HeaderFlags.HasFlag(KWAJHeaderFlags.HasUnknownFlag))
extensions.UnknownPurpose = data.ReadUInt16();
extensions.UnknownPurpose = data.ReadUInt16LittleEndian();
if (header.HeaderFlags.HasFlag(KWAJHeaderFlags.HasPrefixedData))
{
extensions.UnknownDataLength = data.ReadUInt16();
extensions.UnknownDataLength = data.ReadUInt16LittleEndian();
extensions.UnknownData = data.ReadBytes((int)extensions.UnknownDataLength);
}
if (header.HeaderFlags.HasFlag(KWAJHeaderFlags.HasFileName))
@@ -76,7 +76,7 @@ namespace SabreTools.Serialization.Deserializers
extensions.FileExtension = data.ReadNullTerminatedAnsiString();
if (header.HeaderFlags.HasFlag(KWAJHeaderFlags.HasPrefixedData))
{
extensions.ArbitraryTextLength = data.ReadUInt16();
extensions.ArbitraryTextLength = data.ReadUInt16LittleEndian();
extensions.ArbitraryText = data.ReadBytes((int)extensions.ArbitraryTextLength);
}
#endif
@@ -108,12 +108,12 @@ namespace SabreTools.Serialization.Deserializers
if (Encoding.ASCII.GetString(header.Magic) != Encoding.ASCII.GetString(KWAJSignatureBytes))
return null;
header.CompressionType = (KWAJCompressionType)data.ReadUInt16();
header.CompressionType = (KWAJCompressionType)data.ReadUInt16LittleEndian();
if (header.CompressionType > KWAJCompressionType.MSZIP)
return null;
header.DataOffset = data.ReadUInt16();
header.HeaderFlags = (KWAJHeaderFlags)data.ReadUInt16();
header.DataOffset = data.ReadUInt16LittleEndian();
header.HeaderFlags = (KWAJHeaderFlags)data.ReadUInt16LittleEndian();
return header;
}

View File

@@ -57,7 +57,7 @@ namespace SabreTools.Serialization.Deserializers
if (Encoding.ASCII.GetString(header.Magic) != Encoding.ASCII.GetString(QBasicSignatureBytes))
return null;
header.RealLength = data.ReadUInt32();
header.RealLength = data.ReadUInt32LittleEndian();
return header;
}

View File

@@ -62,7 +62,7 @@ namespace SabreTools.Serialization.Deserializers
return null;
header.LastChar = (char)data.ReadByteValue();
header.RealLength = data.ReadUInt32();
header.RealLength = data.ReadUInt32LittleEndian();
return header;
}

View File

@@ -103,18 +103,18 @@ namespace SabreTools.Serialization.Deserializers
if (header.Signature != SignatureString)
return null;
header.Reserved1 = data.ReadUInt32();
header.CabinetSize = data.ReadUInt32();
header.Reserved2 = data.ReadUInt32();
header.FilesOffset = data.ReadUInt32();
header.Reserved3 = data.ReadUInt32();
header.Reserved1 = data.ReadUInt32LittleEndian();
header.CabinetSize = data.ReadUInt32LittleEndian();
header.Reserved2 = data.ReadUInt32LittleEndian();
header.FilesOffset = data.ReadUInt32LittleEndian();
header.Reserved3 = data.ReadUInt32LittleEndian();
header.VersionMinor = data.ReadByteValue();
header.VersionMajor = data.ReadByteValue();
header.FolderCount = data.ReadUInt16();
header.FileCount = data.ReadUInt16();
header.Flags = (HeaderFlags)data.ReadUInt16();
header.SetID = data.ReadUInt16();
header.CabinetIndex = data.ReadUInt16();
header.FolderCount = data.ReadUInt16LittleEndian();
header.FileCount = data.ReadUInt16LittleEndian();
header.Flags = (HeaderFlags)data.ReadUInt16LittleEndian();
header.SetID = data.ReadUInt16LittleEndian();
header.CabinetIndex = data.ReadUInt16LittleEndian();
#if NET20 || NET35
if ((header.Flags & HeaderFlags.RESERVE_PRESENT) != 0)
@@ -122,7 +122,7 @@ namespace SabreTools.Serialization.Deserializers
if (header.Flags.HasFlag(HeaderFlags.RESERVE_PRESENT))
#endif
{
header.HeaderReservedSize = data.ReadUInt16();
header.HeaderReservedSize = data.ReadUInt16LittleEndian();
if (header.HeaderReservedSize > 60_000)
return null;
@@ -166,9 +166,9 @@ namespace SabreTools.Serialization.Deserializers
{
var folder = new CFFOLDER();
folder.CabStartOffset = data.ReadUInt32();
folder.DataCount = data.ReadUInt16();
folder.CompressionType = (CompressionType)data.ReadUInt16();
folder.CabStartOffset = data.ReadUInt32LittleEndian();
folder.DataCount = data.ReadUInt16LittleEndian();
folder.CompressionType = (CompressionType)data.ReadUInt16LittleEndian();
if (header.FolderReservedSize > 0)
folder.ReservedData = data.ReadBytes(header.FolderReservedSize);
@@ -201,9 +201,9 @@ namespace SabreTools.Serialization.Deserializers
{
var dataBlock = new CFDATA();
dataBlock.Checksum = data.ReadUInt32();
dataBlock.CompressedSize = data.ReadUInt16();
dataBlock.UncompressedSize = data.ReadUInt16();
dataBlock.Checksum = data.ReadUInt32LittleEndian();
dataBlock.CompressedSize = data.ReadUInt16LittleEndian();
dataBlock.UncompressedSize = data.ReadUInt16LittleEndian();
if (dataReservedSize > 0)
dataBlock.ReservedData = data.ReadBytes(dataReservedSize);
@@ -223,12 +223,12 @@ namespace SabreTools.Serialization.Deserializers
{
var file = new CFFILE();
file.FileSize = data.ReadUInt32();
file.FolderStartOffset = data.ReadUInt32();
file.FolderIndex = (FolderIndex)data.ReadUInt16();
file.Date = data.ReadUInt16();
file.Time = data.ReadUInt16();
file.Attributes = (Models.MicrosoftCabinet.FileAttributes)data.ReadUInt16();
file.FileSize = data.ReadUInt32LittleEndian();
file.FolderStartOffset = data.ReadUInt32LittleEndian();
file.FolderIndex = (FolderIndex)data.ReadUInt16LittleEndian();
file.Date = data.ReadUInt16LittleEndian();
file.Time = data.ReadUInt16LittleEndian();
file.Attributes = (Models.MicrosoftCabinet.FileAttributes)data.ReadUInt16LittleEndian();
#if NET20 || NET35
if ((file.Attributes & Models.MicrosoftCabinet.FileAttributes.NAME_IS_UTF) != 0)

View File

@@ -367,7 +367,7 @@ namespace SabreTools.Serialization.Deserializers
byte[] magicId = data.ReadBytes(4);
obj.MagicID = Encoding.ASCII.GetString(magicId).TrimEnd('\0');
obj.ContentSizeInMediaUnits = data.ReadUInt32LittleEndian();
obj.PartitionId = data.ReadUInt64();
obj.PartitionId = data.ReadUInt64LittleEndian();
obj.MakerCode = data.ReadUInt16LittleEndian();
obj.Version = data.ReadUInt16LittleEndian();
obj.VerificationHash = data.ReadUInt32LittleEndian();
@@ -433,7 +433,7 @@ namespace SabreTools.Serialization.Deserializers
obj.MagicNumber = Encoding.ASCII.GetString(magicNumber).TrimEnd('\0');
obj.ImageSizeInMediaUnits = data.ReadUInt32LittleEndian();
obj.MediaId = data.ReadBytes(8);
obj.PartitionsFSType = (FilesystemType)data.ReadUInt64();
obj.PartitionsFSType = (FilesystemType)data.ReadUInt64LittleEndian();
obj.PartitionsCryptType = data.ReadBytes(8);
obj.PartitionsTable = new PartitionTableEntry[8];
@@ -452,7 +452,7 @@ namespace SabreTools.Serialization.Deserializers
obj.PartitionIdTable = new ulong[8];
for (int i = 0; i < 8; i++)
{
obj.PartitionIdTable[i] = data.ReadUInt64();
obj.PartitionIdTable[i] = data.ReadUInt64LittleEndian();
}
obj.Reserved1 = data.ReadBytes(0x20);

View File

@@ -288,7 +288,7 @@ namespace SabreTools.Serialization.Deserializers
}
if (entry.Folder)
entry.Index = data.ReadUInt16();
entry.Index = data.ReadUInt16LittleEndian();
return entry;
}

View File

@@ -321,7 +321,7 @@ namespace SabreTools.Serialization.Deserializers
while (data.Position > 0)
{
// Read the potential signature
uint possibleSignature = data.ReadUInt32();
uint possibleSignature = data.ReadUInt32LittleEndian();
if (possibleSignature == EndOfCentralDirectoryRecordSignature)
{
long signaturePosition = data.Position - 4;
@@ -361,17 +361,17 @@ namespace SabreTools.Serialization.Deserializers
{
var record = new EndOfCentralDirectoryRecord();
record.Signature = data.ReadUInt32();
record.Signature = data.ReadUInt32LittleEndian();
if (record.Signature != EndOfCentralDirectoryRecordSignature)
return null;
record.DiskNumber = data.ReadUInt16();
record.StartDiskNumber = data.ReadUInt16();
record.TotalEntriesOnDisk = data.ReadUInt16();
record.TotalEntries = data.ReadUInt16();
record.CentralDirectorySize = data.ReadUInt32();
record.CentralDirectoryOffset = data.ReadUInt32();
record.FileCommentLength = data.ReadUInt16();
record.DiskNumber = data.ReadUInt16LittleEndian();
record.StartDiskNumber = data.ReadUInt16LittleEndian();
record.TotalEntriesOnDisk = data.ReadUInt16LittleEndian();
record.TotalEntries = data.ReadUInt16LittleEndian();
record.CentralDirectorySize = data.ReadUInt32LittleEndian();
record.CentralDirectoryOffset = data.ReadUInt32LittleEndian();
record.FileCommentLength = data.ReadUInt16LittleEndian();
if (record.FileCommentLength > 0 && data.Position + record.FileCommentLength <= data.Length)
{
byte[] commentBytes = data.ReadBytes(record.FileCommentLength);
@@ -402,7 +402,7 @@ namespace SabreTools.Serialization.Deserializers
while (data.Position > 0)
{
// Read the potential signature
uint possibleSignature = data.ReadUInt32();
uint possibleSignature = data.ReadUInt32LittleEndian();
if (possibleSignature == EndOfCentralDirectoryLocator64Signature)
{
long signaturePosition = data.Position - 4;
@@ -442,20 +442,20 @@ namespace SabreTools.Serialization.Deserializers
{
var record = new EndOfCentralDirectoryRecord64();
record.Signature = data.ReadUInt32();
record.Signature = data.ReadUInt32LittleEndian();
if (record.Signature != EndOfCentralDirectoryRecord64Signature)
return null;
record.DirectoryRecordSize = data.ReadUInt64();
record.DirectoryRecordSize = data.ReadUInt64LittleEndian();
record.HostSystem = (HostSystem)data.ReadByteValue();
record.VersionMadeBy = data.ReadByteValue();
record.VersionNeededToExtract = data.ReadUInt16();
record.DiskNumber = data.ReadUInt32();
record.StartDiskNumber = data.ReadUInt32();
record.TotalEntriesOnDisk = data.ReadUInt64();
record.TotalEntries = data.ReadUInt64();
record.CentralDirectorySize = data.ReadUInt64();
record.CentralDirectoryOffset = data.ReadUInt64();
record.VersionNeededToExtract = data.ReadUInt16LittleEndian();
record.DiskNumber = data.ReadUInt32LittleEndian();
record.StartDiskNumber = data.ReadUInt32LittleEndian();
record.TotalEntriesOnDisk = data.ReadUInt64LittleEndian();
record.TotalEntries = data.ReadUInt64LittleEndian();
record.CentralDirectorySize = data.ReadUInt64LittleEndian();
record.CentralDirectoryOffset = data.ReadUInt64LittleEndian();
// TODO: Handle the ExtensibleDataSector -- How to detect if exists?
@@ -471,27 +471,27 @@ namespace SabreTools.Serialization.Deserializers
{
var header = new CentralDirectoryFileHeader();
header.Signature = data.ReadUInt32();
header.Signature = data.ReadUInt32LittleEndian();
if (header.Signature != CentralDirectoryFileHeaderSignature)
return null;
header.HostSystem = (HostSystem)data.ReadByteValue();
header.VersionMadeBy = data.ReadByteValue();
header.VersionNeededToExtract = data.ReadUInt16();
header.Flags = (GeneralPurposeBitFlags)data.ReadUInt16();
header.CompressionMethod = (CompressionMethod)data.ReadUInt16();
header.LastModifedFileTime = data.ReadUInt16();
header.LastModifiedFileDate = data.ReadUInt16();
header.CRC32 = data.ReadUInt32();
header.CompressedSize = data.ReadUInt32();
header.UncompressedSize = data.ReadUInt32();
header.FileNameLength = data.ReadUInt16();
header.ExtraFieldLength = data.ReadUInt16();
header.FileCommentLength = data.ReadUInt16();
header.DiskNumberStart = data.ReadUInt16();
header.InternalFileAttributes = (InternalFileAttributes)data.ReadUInt16();
header.ExternalFileAttributes = data.ReadUInt32();
header.RelativeOffsetOfLocalHeader = data.ReadUInt32();
header.VersionNeededToExtract = data.ReadUInt16LittleEndian();
header.Flags = (GeneralPurposeBitFlags)data.ReadUInt16LittleEndian();
header.CompressionMethod = (CompressionMethod)data.ReadUInt16LittleEndian();
header.LastModifedFileTime = data.ReadUInt16LittleEndian();
header.LastModifiedFileDate = data.ReadUInt16LittleEndian();
header.CRC32 = data.ReadUInt32LittleEndian();
header.CompressedSize = data.ReadUInt32LittleEndian();
header.UncompressedSize = data.ReadUInt32LittleEndian();
header.FileNameLength = data.ReadUInt16LittleEndian();
header.ExtraFieldLength = data.ReadUInt16LittleEndian();
header.FileCommentLength = data.ReadUInt16LittleEndian();
header.DiskNumberStart = data.ReadUInt16LittleEndian();
header.InternalFileAttributes = (InternalFileAttributes)data.ReadUInt16LittleEndian();
header.ExternalFileAttributes = data.ReadUInt32LittleEndian();
header.RelativeOffsetOfLocalHeader = data.ReadUInt32LittleEndian();
if (header.FileNameLength > 0 && data.Position + header.FileNameLength <= data.Length)
{
@@ -539,7 +539,7 @@ namespace SabreTools.Serialization.Deserializers
while (data.Position > 0)
{
// Read the potential signature
uint possibleSignature = data.ReadUInt32();
uint possibleSignature = data.ReadUInt32LittleEndian();
if (possibleSignature == ArchiveExtraDataRecordSignature)
{
long signaturePosition = data.Position - 4;
@@ -579,11 +579,11 @@ namespace SabreTools.Serialization.Deserializers
{
var record = new ArchiveExtraDataRecord();
record.Signature = data.ReadUInt32();
record.Signature = data.ReadUInt32LittleEndian();
if (record.Signature != ArchiveExtraDataRecordSignature)
return null;
record.ExtraFieldLength = data.ReadUInt32();
record.ExtraFieldLength = data.ReadUInt32LittleEndian();
if (record.ExtraFieldLength > 0 && data.Position + record.ExtraFieldLength <= data.Length)
{
byte[] extraBytes = data.ReadBytes((int)record.ExtraFieldLength);
@@ -605,20 +605,20 @@ namespace SabreTools.Serialization.Deserializers
{
var header = new LocalFileHeader();
header.Signature = data.ReadUInt32();
header.Signature = data.ReadUInt32LittleEndian();
if (header.Signature != LocalFileHeaderSignature)
return null;
header.Version = data.ReadUInt16();
header.Flags = (GeneralPurposeBitFlags)data.ReadUInt16();
header.CompressionMethod = (CompressionMethod)data.ReadUInt16();
header.LastModifedFileTime = data.ReadUInt16();
header.LastModifiedFileDate = data.ReadUInt16();
header.CRC32 = data.ReadUInt32();
header.CompressedSize = data.ReadUInt32();
header.UncompressedSize = data.ReadUInt32();
header.FileNameLength = data.ReadUInt16();
header.ExtraFieldLength = data.ReadUInt16();
header.Version = data.ReadUInt16LittleEndian();
header.Flags = (GeneralPurposeBitFlags)data.ReadUInt16LittleEndian();
header.CompressionMethod = (CompressionMethod)data.ReadUInt16LittleEndian();
header.LastModifedFileTime = data.ReadUInt16LittleEndian();
header.LastModifiedFileDate = data.ReadUInt16LittleEndian();
header.CRC32 = data.ReadUInt32LittleEndian();
header.CompressedSize = data.ReadUInt32LittleEndian();
header.UncompressedSize = data.ReadUInt32LittleEndian();
header.FileNameLength = data.ReadUInt16LittleEndian();
header.ExtraFieldLength = data.ReadUInt16LittleEndian();
if (header.FileNameLength > 0 && data.Position + header.FileNameLength <= data.Length)
{
@@ -650,13 +650,13 @@ namespace SabreTools.Serialization.Deserializers
var dataDescriptor = new DataDescriptor();
// Signatures are expected but not required
dataDescriptor.Signature = data.ReadUInt32();
dataDescriptor.Signature = data.ReadUInt32LittleEndian();
if (dataDescriptor.Signature != DataDescriptorSignature)
data.Seek(-4, SeekOrigin.Current);
dataDescriptor.CRC32 = data.ReadUInt32();
dataDescriptor.CompressedSize = data.ReadUInt32();
dataDescriptor.UncompressedSize = data.ReadUInt32();
dataDescriptor.CRC32 = data.ReadUInt32LittleEndian();
dataDescriptor.CompressedSize = data.ReadUInt32LittleEndian();
dataDescriptor.UncompressedSize = data.ReadUInt32LittleEndian();
return dataDescriptor;
}
@@ -671,13 +671,13 @@ namespace SabreTools.Serialization.Deserializers
var zip64DataDescriptor = new DataDescriptor64();
// Signatures are expected but not required
zip64DataDescriptor.Signature = data.ReadUInt32();
zip64DataDescriptor.Signature = data.ReadUInt32LittleEndian();
if (zip64DataDescriptor.Signature != DataDescriptorSignature)
data.Seek(-4, SeekOrigin.Current);
zip64DataDescriptor.CRC32 = data.ReadUInt32();
zip64DataDescriptor.CompressedSize = data.ReadUInt64();
zip64DataDescriptor.UncompressedSize = data.ReadUInt64();
zip64DataDescriptor.CRC32 = data.ReadUInt32LittleEndian();
zip64DataDescriptor.CompressedSize = data.ReadUInt64LittleEndian();
zip64DataDescriptor.UncompressedSize = data.ReadUInt64LittleEndian();
return zip64DataDescriptor;
}

View File

@@ -95,7 +95,7 @@ namespace SabreTools.Serialization.Deserializers
}
// Set the unknown value 2
audioFile.UnknownValue2 = data.ReadUInt32();
audioFile.UnknownValue2 = data.ReadUInt32LittleEndian();
#endregion
@@ -137,7 +137,7 @@ namespace SabreTools.Serialization.Deserializers
#region Data Files Count
// Set the data files count
audioFile.DataFilesCount = data.ReadUInt32();
audioFile.DataFilesCount = data.ReadUInt32LittleEndian();
#endregion
@@ -183,11 +183,11 @@ namespace SabreTools.Serialization.Deserializers
AudioHeader audioHeader;
// Get the common header pieces
uint signature = data.ReadUInt32();
uint signature = data.ReadUInt32LittleEndian();
if (signature != SignatureUInt32)
return null;
uint version = data.ReadUInt32();
uint version = data.ReadUInt32LittleEndian();
// Build the header according to version
uint unknownOffset1;
@@ -199,16 +199,16 @@ namespace SabreTools.Serialization.Deserializers
v1.Signature = signature;
v1.Version = version;
v1.TrackID = data.ReadUInt32();
v1.UnknownOffset1 = data.ReadUInt32();
v1.UnknownOffset2 = data.ReadUInt32();
v1.UnknownOffset3 = data.ReadUInt32();
v1.Unknown1 = data.ReadUInt32();
v1.Unknown2 = data.ReadUInt32();
v1.Year = data.ReadUInt32();
v1.TrackID = data.ReadUInt32LittleEndian();
v1.UnknownOffset1 = data.ReadUInt32LittleEndian();
v1.UnknownOffset2 = data.ReadUInt32LittleEndian();
v1.UnknownOffset3 = data.ReadUInt32LittleEndian();
v1.Unknown1 = data.ReadUInt32LittleEndian();
v1.Unknown2 = data.ReadUInt32LittleEndian();
v1.Year = data.ReadUInt32LittleEndian();
v1.TrackNumber = data.ReadByteValue();
v1.Subgenre = (Subgenre)data.ReadByteValue();
v1.Duration = data.ReadUInt32();
v1.Duration = data.ReadUInt32LittleEndian();
audioHeader = v1;
unknownOffset1 = v1.UnknownOffset1;
@@ -220,29 +220,29 @@ namespace SabreTools.Serialization.Deserializers
v2.Signature = signature;
v2.Version = version;
v2.Unknown1 = data.ReadUInt32();
v2.Unknown2 = data.ReadUInt32();
v2.Unknown3 = data.ReadUInt32();
v2.Unknown4 = data.ReadUInt32();
v2.Unknown5 = data.ReadUInt32();
v2.Unknown6 = data.ReadUInt32();
v2.UnknownOffset1 = data.ReadUInt32();
v2.Unknown7 = data.ReadUInt32();
v2.Unknown8 = data.ReadUInt32();
v2.Unknown9 = data.ReadUInt32();
v2.UnknownOffset2 = data.ReadUInt32();
v2.Unknown10 = data.ReadUInt32();
v2.Unknown11 = data.ReadUInt32();
v2.Unknown12 = data.ReadUInt32();
v2.Unknown13 = data.ReadUInt32();
v2.Unknown14 = data.ReadUInt32();
v2.Unknown15 = data.ReadUInt32();
v2.Unknown16 = data.ReadUInt32();
v2.Unknown17 = data.ReadUInt32();
v2.TrackID = data.ReadUInt32();
v2.Year = data.ReadUInt32();
v2.TrackNumber = data.ReadUInt32();
v2.Unknown18 = data.ReadUInt32();
v2.Unknown1 = data.ReadUInt32LittleEndian();
v2.Unknown2 = data.ReadUInt32LittleEndian();
v2.Unknown3 = data.ReadUInt32LittleEndian();
v2.Unknown4 = data.ReadUInt32LittleEndian();
v2.Unknown5 = data.ReadUInt32LittleEndian();
v2.Unknown6 = data.ReadUInt32LittleEndian();
v2.UnknownOffset1 = data.ReadUInt32LittleEndian();
v2.Unknown7 = data.ReadUInt32LittleEndian();
v2.Unknown8 = data.ReadUInt32LittleEndian();
v2.Unknown9 = data.ReadUInt32LittleEndian();
v2.UnknownOffset2 = data.ReadUInt32LittleEndian();
v2.Unknown10 = data.ReadUInt32LittleEndian();
v2.Unknown11 = data.ReadUInt32LittleEndian();
v2.Unknown12 = data.ReadUInt32LittleEndian();
v2.Unknown13 = data.ReadUInt32LittleEndian();
v2.Unknown14 = data.ReadUInt32LittleEndian();
v2.Unknown15 = data.ReadUInt32LittleEndian();
v2.Unknown16 = data.ReadUInt32LittleEndian();
v2.Unknown17 = data.ReadUInt32LittleEndian();
v2.TrackID = data.ReadUInt32LittleEndian();
v2.Year = data.ReadUInt32LittleEndian();
v2.TrackNumber = data.ReadUInt32LittleEndian();
v2.Unknown18 = data.ReadUInt32LittleEndian();
audioHeader = v2;
unknownOffset1 = v2.UnknownOffset1 + 0x54;
@@ -253,33 +253,33 @@ namespace SabreTools.Serialization.Deserializers
return null;
}
audioHeader.TrackLength = data.ReadUInt16();
audioHeader.TrackLength = data.ReadUInt16LittleEndian();
byte[] track = data.ReadBytes(audioHeader.TrackLength);
audioHeader.Track = Encoding.ASCII.GetString(track);
audioHeader.ArtistLength = data.ReadUInt16();
audioHeader.ArtistLength = data.ReadUInt16LittleEndian();
byte[] artist = data.ReadBytes(audioHeader.ArtistLength);
audioHeader.Artist = Encoding.ASCII.GetString(artist);
audioHeader.AlbumLength = data.ReadUInt16();
audioHeader.AlbumLength = data.ReadUInt16LittleEndian();
byte[] album = data.ReadBytes(audioHeader.AlbumLength);
audioHeader.Album = Encoding.ASCII.GetString(album);
audioHeader.WriterLength = data.ReadUInt16();
audioHeader.WriterLength = data.ReadUInt16LittleEndian();
byte[] writer = data.ReadBytes(audioHeader.WriterLength);
audioHeader.Writer = Encoding.ASCII.GetString(writer);
audioHeader.PublisherLength = data.ReadUInt16();
audioHeader.PublisherLength = data.ReadUInt16LittleEndian();
byte[] publisher = data.ReadBytes(audioHeader.PublisherLength);
audioHeader.Publisher = Encoding.ASCII.GetString(publisher);
audioHeader.LabelLength = data.ReadUInt16();
audioHeader.LabelLength = data.ReadUInt16LittleEndian();
byte[] label = data.ReadBytes(audioHeader.LabelLength);
audioHeader.Label = Encoding.ASCII.GetString(label);
if (data.Position - initialOffset < unknownOffset1)
{
audioHeader.CommentsLength = data.ReadUInt16();
audioHeader.CommentsLength = data.ReadUInt16LittleEndian();
byte[] comments = data.ReadBytes(audioHeader.CommentsLength);
audioHeader.Comments = Encoding.ASCII.GetString(comments);
}
@@ -296,7 +296,7 @@ namespace SabreTools.Serialization.Deserializers
{
var unknownBlock1 = new UnknownBlock1();
unknownBlock1.Length = data.ReadUInt32();
unknownBlock1.Length = data.ReadUInt32LittleEndian();
unknownBlock1.Data = data.ReadBytes((int)unknownBlock1.Length);
return unknownBlock1;
@@ -325,10 +325,10 @@ namespace SabreTools.Serialization.Deserializers
{
var dataFile = new DataFile();
dataFile.FileNameLength = data.ReadUInt16();
dataFile.FileNameLength = data.ReadUInt16LittleEndian();
byte[] fileName = data.ReadBytes(dataFile.FileNameLength);
dataFile.FileName = Encoding.ASCII.GetString(fileName);
dataFile.DataLength = data.ReadUInt32();
dataFile.DataLength = data.ReadUInt32LittleEndian();
dataFile.Data = data.ReadBytes((int)dataFile.DataLength);
return dataFile;

View File

@@ -66,7 +66,7 @@ namespace SabreTools.Serialization.Deserializers
{
var playlistHeader = new PlaylistHeader();
playlistHeader.TrackCount = data.ReadUInt32();
playlistHeader.TrackCount = data.ReadUInt32LittleEndian();
if (playlistHeader.TrackCount > int.MaxValue)
return null;

View File

@@ -66,8 +66,8 @@ namespace SabreTools.Serialization.Deserializers
if (signature != SignatureString)
return null;
ushort majorVersion = data.ReadUInt16();
ushort minorVersion = data.ReadUInt16();
ushort majorVersion = data.ReadUInt16LittleEndian();
ushort minorVersion = data.ReadUInt16LittleEndian();
if (minorVersion != 0)
return null;
@@ -85,9 +85,9 @@ namespace SabreTools.Serialization.Deserializers
byte[] header4Name = data.ReadBytes(count: 128);
header4.Name = Encoding.Unicode.GetString(header4Name).TrimEnd('\0');
header4.HeaderMD5 = data.ReadBytes(0x10);
header4.HeaderLength = data.ReadUInt32();
header4.FileDataOffset = data.ReadUInt32();
header4.Dummy0 = data.ReadUInt32();
header4.HeaderLength = data.ReadUInt32LittleEndian();
header4.FileDataOffset = data.ReadUInt32LittleEndian();
header4.Dummy0 = data.ReadUInt32LittleEndian();
return header4;
@@ -101,9 +101,9 @@ namespace SabreTools.Serialization.Deserializers
header6.MinorVersion = minorVersion;
byte[] header6Name = data.ReadBytes(count: 128);
header6.Name = Encoding.Unicode.GetString(header6Name).TrimEnd('\0');
header6.HeaderLength = data.ReadUInt32();
header6.FileDataOffset = data.ReadUInt32();
header6.Dummy0 = data.ReadUInt32();
header6.HeaderLength = data.ReadUInt32LittleEndian();
header6.FileDataOffset = data.ReadUInt32LittleEndian();
header6.Dummy0 = data.ReadUInt32LittleEndian();
return header6;
@@ -743,14 +743,14 @@ namespace SabreTools.Serialization.Deserializers
{
var directoryHeader4 = new DirectoryHeader4();
directoryHeader4.SectionOffset = data.ReadUInt32();
directoryHeader4.SectionCount = data.ReadUInt16();
directoryHeader4.FolderOffset = data.ReadUInt32();
directoryHeader4.FolderCount = data.ReadUInt16();
directoryHeader4.FileOffset = data.ReadUInt32();
directoryHeader4.FileCount = data.ReadUInt16();
directoryHeader4.StringTableOffset = data.ReadUInt32();
directoryHeader4.StringTableCount = data.ReadUInt16();
directoryHeader4.SectionOffset = data.ReadUInt32LittleEndian();
directoryHeader4.SectionCount = data.ReadUInt16LittleEndian();
directoryHeader4.FolderOffset = data.ReadUInt32LittleEndian();
directoryHeader4.FolderCount = data.ReadUInt16LittleEndian();
directoryHeader4.FileOffset = data.ReadUInt32LittleEndian();
directoryHeader4.FileCount = data.ReadUInt16LittleEndian();
directoryHeader4.StringTableOffset = data.ReadUInt32LittleEndian();
directoryHeader4.StringTableCount = data.ReadUInt16LittleEndian();
return directoryHeader4;
}
@@ -764,14 +764,14 @@ namespace SabreTools.Serialization.Deserializers
{
var directoryHeader5 = new DirectoryHeader5();
directoryHeader5.SectionOffset = data.ReadUInt32();
directoryHeader5.SectionCount = data.ReadUInt32();
directoryHeader5.FolderOffset = data.ReadUInt32();
directoryHeader5.FolderCount = data.ReadUInt32();
directoryHeader5.FileOffset = data.ReadUInt32();
directoryHeader5.FileCount = data.ReadUInt32();
directoryHeader5.StringTableOffset = data.ReadUInt32();
directoryHeader5.StringTableCount = data.ReadUInt32();
directoryHeader5.SectionOffset = data.ReadUInt32LittleEndian();
directoryHeader5.SectionCount = data.ReadUInt32LittleEndian();
directoryHeader5.FolderOffset = data.ReadUInt32LittleEndian();
directoryHeader5.FolderCount = data.ReadUInt32LittleEndian();
directoryHeader5.FileOffset = data.ReadUInt32LittleEndian();
directoryHeader5.FileCount = data.ReadUInt32LittleEndian();
directoryHeader5.StringTableOffset = data.ReadUInt32LittleEndian();
directoryHeader5.StringTableCount = data.ReadUInt32LittleEndian();
return directoryHeader5;
}
@@ -785,16 +785,16 @@ namespace SabreTools.Serialization.Deserializers
{
var directoryHeader7 = new DirectoryHeader7();
directoryHeader7.SectionOffset = data.ReadUInt32();
directoryHeader7.SectionCount = data.ReadUInt32();
directoryHeader7.FolderOffset = data.ReadUInt32();
directoryHeader7.FolderCount = data.ReadUInt32();
directoryHeader7.FileOffset = data.ReadUInt32();
directoryHeader7.FileCount = data.ReadUInt32();
directoryHeader7.StringTableOffset = data.ReadUInt32();
directoryHeader7.StringTableCount = data.ReadUInt32();
directoryHeader7.HashTableOffset = data.ReadUInt32();
directoryHeader7.BlockSize = data.ReadUInt32();
directoryHeader7.SectionOffset = data.ReadUInt32LittleEndian();
directoryHeader7.SectionCount = data.ReadUInt32LittleEndian();
directoryHeader7.FolderOffset = data.ReadUInt32LittleEndian();
directoryHeader7.FolderCount = data.ReadUInt32LittleEndian();
directoryHeader7.FileOffset = data.ReadUInt32LittleEndian();
directoryHeader7.FileCount = data.ReadUInt32LittleEndian();
directoryHeader7.StringTableOffset = data.ReadUInt32LittleEndian();
directoryHeader7.StringTableCount = data.ReadUInt32LittleEndian();
directoryHeader7.HashTableOffset = data.ReadUInt32LittleEndian();
directoryHeader7.BlockSize = data.ReadUInt32LittleEndian();
return directoryHeader7;
}
@@ -813,11 +813,11 @@ namespace SabreTools.Serialization.Deserializers
section4.Alias = Encoding.ASCII.GetString(section4Alias).TrimEnd('\0');
byte[] section4Name = data.ReadBytes(64);
section4.Name = Encoding.ASCII.GetString(section4Name).TrimEnd('\0');
section4.FolderStartIndex = data.ReadUInt16();
section4.FolderEndIndex = data.ReadUInt16();
section4.FileStartIndex = data.ReadUInt16();
section4.FileEndIndex = data.ReadUInt16();
section4.FolderRootIndex = data.ReadUInt16();
section4.FolderStartIndex = data.ReadUInt16LittleEndian();
section4.FolderEndIndex = data.ReadUInt16LittleEndian();
section4.FileStartIndex = data.ReadUInt16LittleEndian();
section4.FileEndIndex = data.ReadUInt16LittleEndian();
section4.FolderRootIndex = data.ReadUInt16LittleEndian();
return section4;
}
@@ -836,11 +836,11 @@ namespace SabreTools.Serialization.Deserializers
section5.Alias = Encoding.ASCII.GetString(section5Alias).TrimEnd('\0');
byte[] section5Name = data.ReadBytes(64);
section5.Name = Encoding.ASCII.GetString(section5Name).TrimEnd('\0');
section5.FolderStartIndex = data.ReadUInt32();
section5.FolderEndIndex = data.ReadUInt32();
section5.FileStartIndex = data.ReadUInt32();
section5.FileEndIndex = data.ReadUInt32();
section5.FolderRootIndex = data.ReadUInt32();
section5.FolderStartIndex = data.ReadUInt32LittleEndian();
section5.FolderEndIndex = data.ReadUInt32LittleEndian();
section5.FileStartIndex = data.ReadUInt32LittleEndian();
section5.FileEndIndex = data.ReadUInt32LittleEndian();
section5.FolderRootIndex = data.ReadUInt32LittleEndian();
return section5;
}
@@ -855,12 +855,12 @@ namespace SabreTools.Serialization.Deserializers
{
var folder4 = new Folder4();
folder4.NameOffset = data.ReadUInt32();
folder4.NameOffset = data.ReadUInt32LittleEndian();
folder4.Name = null; // Read from string table
folder4.FolderStartIndex = data.ReadUInt16();
folder4.FolderEndIndex = data.ReadUInt16();
folder4.FileStartIndex = data.ReadUInt16();
folder4.FileEndIndex = data.ReadUInt16();
folder4.FolderStartIndex = data.ReadUInt16LittleEndian();
folder4.FolderEndIndex = data.ReadUInt16LittleEndian();
folder4.FileStartIndex = data.ReadUInt16LittleEndian();
folder4.FileEndIndex = data.ReadUInt16LittleEndian();
return folder4;
}
@@ -875,12 +875,12 @@ namespace SabreTools.Serialization.Deserializers
{
var folder5 = new Folder5();
folder5.NameOffset = data.ReadUInt32();
folder5.NameOffset = data.ReadUInt32LittleEndian();
folder5.Name = null; // Read from string table
folder5.FolderStartIndex = data.ReadUInt32();
folder5.FolderEndIndex = data.ReadUInt32();
folder5.FileStartIndex = data.ReadUInt32();
folder5.FileEndIndex = data.ReadUInt32();
folder5.FolderStartIndex = data.ReadUInt32LittleEndian();
folder5.FolderEndIndex = data.ReadUInt32LittleEndian();
folder5.FileStartIndex = data.ReadUInt32LittleEndian();
folder5.FileEndIndex = data.ReadUInt32LittleEndian();
return folder5;
}
@@ -895,12 +895,12 @@ namespace SabreTools.Serialization.Deserializers
{
var file4 = new File4();
file4.NameOffset = data.ReadUInt32();
file4.NameOffset = data.ReadUInt32LittleEndian();
file4.Name = null; // Read from string table
file4.Offset = data.ReadUInt32();
file4.SizeOnDisk = data.ReadUInt32();
file4.Size = data.ReadUInt32();
file4.TimeModified = data.ReadUInt32();
file4.Offset = data.ReadUInt32LittleEndian();
file4.SizeOnDisk = data.ReadUInt32LittleEndian();
file4.Size = data.ReadUInt32LittleEndian();
file4.TimeModified = data.ReadUInt32LittleEndian();
file4.Dummy0 = data.ReadByteValue();
file4.Type = data.ReadByteValue();
@@ -917,15 +917,15 @@ namespace SabreTools.Serialization.Deserializers
{
var file6 = new File6();
file6.NameOffset = data.ReadUInt32();
file6.NameOffset = data.ReadUInt32LittleEndian();
file6.Name = null; // Read from string table
file6.Offset = data.ReadUInt32();
file6.SizeOnDisk = data.ReadUInt32();
file6.Size = data.ReadUInt32();
file6.TimeModified = data.ReadUInt32();
file6.Offset = data.ReadUInt32LittleEndian();
file6.SizeOnDisk = data.ReadUInt32LittleEndian();
file6.Size = data.ReadUInt32LittleEndian();
file6.TimeModified = data.ReadUInt32LittleEndian();
file6.Dummy0 = data.ReadByteValue();
file6.Type = data.ReadByteValue();
file6.CRC32 = data.ReadUInt32();
file6.CRC32 = data.ReadUInt32LittleEndian();
return file6;
}
@@ -940,16 +940,16 @@ namespace SabreTools.Serialization.Deserializers
{
var file7 = new File7();
file7.NameOffset = data.ReadUInt32();
file7.NameOffset = data.ReadUInt32LittleEndian();
file7.Name = null; // Read from string table
file7.Offset = data.ReadUInt32();
file7.SizeOnDisk = data.ReadUInt32();
file7.Size = data.ReadUInt32();
file7.TimeModified = data.ReadUInt32();
file7.Offset = data.ReadUInt32LittleEndian();
file7.SizeOnDisk = data.ReadUInt32LittleEndian();
file7.Size = data.ReadUInt32LittleEndian();
file7.TimeModified = data.ReadUInt32LittleEndian();
file7.Dummy0 = data.ReadByteValue();
file7.Type = data.ReadByteValue();
file7.CRC32 = data.ReadUInt32();
file7.HashOffset = data.ReadUInt32();
file7.CRC32 = data.ReadUInt32LittleEndian();
file7.HashOffset = data.ReadUInt32LittleEndian();
return file7;
}

View File

@@ -410,14 +410,14 @@ namespace SabreTools.Serialization.Deserializers
{
var lump = new VisibilityLump();
lump.NumClusters = data.ReadInt32();
lump.NumClusters = data.ReadInt32LittleEndian();
lump.ByteOffsets = new int[lump.NumClusters][];
for (int i = 0; i < lump.NumClusters; i++)
{
lump.ByteOffsets[i] = new int[2];
for (int j = 0; j < 2; j++)
{
lump.ByteOffsets[i][j] = data.ReadInt32();
lump.ByteOffsets[i][j] = data.ReadInt32LittleEndian();
}
}
@@ -505,10 +505,10 @@ namespace SabreTools.Serialization.Deserializers
{
var model = new PhysModel();
model.ModelIndex = data.ReadInt32();
model.DataSize = data.ReadInt32();
model.KeydataSize = data.ReadInt32();
model.SolidCount = data.ReadInt32();
model.ModelIndex = data.ReadInt32LittleEndian();
model.DataSize = data.ReadInt32LittleEndian();
model.KeydataSize = data.ReadInt32LittleEndian();
model.SolidCount = data.ReadInt32LittleEndian();
model.Solids = new PhysSolid[model.SolidCount];
for (int i = 0; i < model.Solids.Length; i++)
{
@@ -529,7 +529,7 @@ namespace SabreTools.Serialization.Deserializers
{
var solid = new PhysSolid();
solid.Size = data.ReadInt32();
solid.Size = data.ReadInt32LittleEndian();
if (solid.Size > 0)
solid.CollisionData = data.ReadBytes(solid.Size);
@@ -563,7 +563,7 @@ namespace SabreTools.Serialization.Deserializers
{
var lump = new OcclusionLump();
lump.Count = data.ReadInt32();
lump.Count = data.ReadInt32LittleEndian();
lump.Data = new OccluderData[lump.Count];
for (int i = 0; i < lump.Count; i++)
{
@@ -571,7 +571,7 @@ namespace SabreTools.Serialization.Deserializers
if (occluderData != null)
lump.Data[i] = occluderData;
}
lump.PolyDataCount = data.ReadInt32();
lump.PolyDataCount = data.ReadInt32LittleEndian();
lump.PolyData = new OccluderPolyData[lump.Count];
for (int i = 0; i < lump.Count; i++)
{
@@ -579,11 +579,11 @@ namespace SabreTools.Serialization.Deserializers
if (polyData != null)
lump.PolyData[i] = polyData;
}
lump.VertexIndexCount = data.ReadInt32();
lump.VertexIndexCount = data.ReadInt32LittleEndian();
lump.VertexIndicies = new int[lump.VertexIndexCount];
for (int i = 0; i < lump.VertexIndexCount; i++)
{
lump.VertexIndicies[i] = data.ReadInt32();
lump.VertexIndicies[i] = data.ReadInt32LittleEndian();
}
return lump;
@@ -616,29 +616,29 @@ namespace SabreTools.Serialization.Deserializers
{
var leaf = new VbspLeaf();
leaf.Contents = (VbspContents)data.ReadUInt32();
leaf.Cluster = data.ReadInt16();
leaf.AreaFlags = data.ReadInt16();
leaf.Contents = (VbspContents)data.ReadUInt32LittleEndian();
leaf.Cluster = data.ReadInt16LittleEndian();
leaf.AreaFlags = data.ReadInt16LittleEndian();
leaf.Mins = new short[3];
for (int i = 0; i < leaf.Mins.Length; i++)
{
leaf.Mins[i] = data.ReadInt16();
leaf.Mins[i] = data.ReadInt16LittleEndian();
}
leaf.Maxs = new short[3];
for (int i = 0; i < leaf.Maxs.Length; i++)
{
leaf.Maxs[i] = data.ReadInt16();
leaf.Maxs[i] = data.ReadInt16LittleEndian();
}
leaf.FirstLeafFace = data.ReadUInt16();
leaf.NumLeafFaces = data.ReadUInt16();
leaf.FirstLeafBrush = data.ReadUInt16();
leaf.NumLeafBrushes = data.ReadUInt16();
leaf.LeafWaterDataID = data.ReadInt16();
leaf.FirstLeafFace = data.ReadUInt16LittleEndian();
leaf.NumLeafFaces = data.ReadUInt16LittleEndian();
leaf.FirstLeafBrush = data.ReadUInt16LittleEndian();
leaf.NumLeafBrushes = data.ReadUInt16LittleEndian();
leaf.LeafWaterDataID = data.ReadInt16LittleEndian();
if (version == 1)
leaf.AmbientLighting = data.ReadType<CompressedLightCube>();
else
leaf.Padding = data.ReadInt16();
leaf.Padding = data.ReadInt16LittleEndian();
return leaf;
}
@@ -653,7 +653,7 @@ namespace SabreTools.Serialization.Deserializers
var marksurfaces = new List<ushort>();
while (data.Position < offset + length)
{
marksurfaces.Add(data.ReadUInt16());
marksurfaces.Add(data.ReadUInt16LittleEndian());
}
return new MarksurfacesLump { Marksurfaces = [.. marksurfaces] };
@@ -687,7 +687,7 @@ namespace SabreTools.Serialization.Deserializers
var surfedges = new List<int>();
while (data.Position < offset + length)
{
surfedges.Add(data.ReadInt32());
surfedges.Add(data.ReadInt32LittleEndian());
}
return new SurfedgesLump { Surfedges = [.. surfedges] };
@@ -739,7 +739,7 @@ namespace SabreTools.Serialization.Deserializers
var map = new List<ushort>();
while (data.Position < offset + length)
{
map.Add(data.ReadUInt16());
map.Add(data.ReadUInt16LittleEndian());
}
return new LeafFacesLump { Map = [.. map] };
@@ -755,7 +755,7 @@ namespace SabreTools.Serialization.Deserializers
var map = new List<ushort>();
while (data.Position < offset + length)
{
map.Add(data.ReadUInt16());
map.Add(data.ReadUInt16LittleEndian());
}
return new LeafBrushesLump { Map = [.. map] };
@@ -842,7 +842,7 @@ namespace SabreTools.Serialization.Deserializers
{
var lump = new GameLump();
lump.LumpCount = data.ReadInt32();
lump.LumpCount = data.ReadInt32LittleEndian();
lump.Directories = new GameLumpDirectory[lump.LumpCount];
for (int i = 0; i < lump.LumpCount; i++)
{
@@ -914,7 +914,7 @@ namespace SabreTools.Serialization.Deserializers
var offsets = new List<int>();
while (data.Position < offset + length)
{
offsets.Add(data.ReadInt32());
offsets.Add(data.ReadInt32LittleEndian());
}
return new TexdataStringTable { Offsets = [.. offsets] };

View File

@@ -152,9 +152,9 @@ namespace SabreTools.Serialization.Deserializers
{
var obj = new DirectoryItem();
obj.FileNameCRC = data.ReadUInt32();
obj.NameOffset = data.ReadUInt32();
obj.TimeCreated = data.ReadUInt32();
obj.FileNameCRC = data.ReadUInt32LittleEndian();
obj.NameOffset = data.ReadUInt32LittleEndian();
obj.TimeCreated = data.ReadUInt32LittleEndian();
// Cache the current offset
long currentPosition = data.Position;

View File

@@ -298,10 +298,10 @@ namespace SabreTools.Serialization
dialogTemplateExtended.ExtendedStyle = (ExtendedWindowStyles)entry.Data.ReadUInt32LittleEndian(ref offset);
dialogTemplateExtended.Style = (WindowStyles)entry.Data.ReadUInt32LittleEndian(ref offset);
dialogTemplateExtended.DialogItems = entry.Data.ReadUInt16LittleEndian(ref offset);
dialogTemplateExtended.PositionX = entry.Data.ReadInt16(ref offset);
dialogTemplateExtended.PositionY = entry.Data.ReadInt16(ref offset);
dialogTemplateExtended.WidthX = entry.Data.ReadInt16(ref offset);
dialogTemplateExtended.HeightY = entry.Data.ReadInt16(ref offset);
dialogTemplateExtended.PositionX = entry.Data.ReadInt16LittleEndian(ref offset);
dialogTemplateExtended.PositionY = entry.Data.ReadInt16LittleEndian(ref offset);
dialogTemplateExtended.WidthX = entry.Data.ReadInt16LittleEndian(ref offset);
dialogTemplateExtended.HeightY = entry.Data.ReadInt16LittleEndian(ref offset);
#region Menu resource
@@ -442,10 +442,10 @@ namespace SabreTools.Serialization
dialogItemTemplate.HelpID = entry.Data.ReadUInt32LittleEndian(ref offset);
dialogItemTemplate.ExtendedStyle = (ExtendedWindowStyles)entry.Data.ReadUInt32LittleEndian(ref offset);
dialogItemTemplate.Style = (WindowStyles)entry.Data.ReadUInt32LittleEndian(ref offset);
dialogItemTemplate.PositionX = entry.Data.ReadInt16(ref offset);
dialogItemTemplate.PositionY = entry.Data.ReadInt16(ref offset);
dialogItemTemplate.WidthX = entry.Data.ReadInt16(ref offset);
dialogItemTemplate.HeightY = entry.Data.ReadInt16(ref offset);
dialogItemTemplate.PositionX = entry.Data.ReadInt16LittleEndian(ref offset);
dialogItemTemplate.PositionY = entry.Data.ReadInt16LittleEndian(ref offset);
dialogItemTemplate.WidthX = entry.Data.ReadInt16LittleEndian(ref offset);
dialogItemTemplate.HeightY = entry.Data.ReadInt16LittleEndian(ref offset);
dialogItemTemplate.ID = entry.Data.ReadUInt32LittleEndian(ref offset);
#region Class resource
@@ -548,10 +548,10 @@ namespace SabreTools.Serialization
dialogTemplate.Style = (WindowStyles)entry.Data.ReadUInt32LittleEndian(ref offset);
dialogTemplate.ExtendedStyle = (ExtendedWindowStyles)entry.Data.ReadUInt32LittleEndian(ref offset);
dialogTemplate.ItemCount = entry.Data.ReadUInt16LittleEndian(ref offset);
dialogTemplate.PositionX = entry.Data.ReadInt16(ref offset);
dialogTemplate.PositionY = entry.Data.ReadInt16(ref offset);
dialogTemplate.WidthX = entry.Data.ReadInt16(ref offset);
dialogTemplate.HeightY = entry.Data.ReadInt16(ref offset);
dialogTemplate.PositionX = entry.Data.ReadInt16LittleEndian(ref offset);
dialogTemplate.PositionY = entry.Data.ReadInt16LittleEndian(ref offset);
dialogTemplate.WidthX = entry.Data.ReadInt16LittleEndian(ref offset);
dialogTemplate.HeightY = entry.Data.ReadInt16LittleEndian(ref offset);
#region Menu resource
@@ -698,10 +698,10 @@ namespace SabreTools.Serialization
dialogItemTemplate.Style = (WindowStyles)entry.Data.ReadUInt32LittleEndian(ref offset);
dialogItemTemplate.ExtendedStyle = (ExtendedWindowStyles)entry.Data.ReadUInt32LittleEndian(ref offset);
dialogItemTemplate.PositionX = entry.Data.ReadInt16(ref offset);
dialogItemTemplate.PositionY = entry.Data.ReadInt16(ref offset);
dialogItemTemplate.WidthX = entry.Data.ReadInt16(ref offset);
dialogItemTemplate.HeightY = entry.Data.ReadInt16(ref offset);
dialogItemTemplate.PositionX = entry.Data.ReadInt16LittleEndian(ref offset);
dialogItemTemplate.PositionY = entry.Data.ReadInt16LittleEndian(ref offset);
dialogItemTemplate.WidthX = entry.Data.ReadInt16LittleEndian(ref offset);
dialogItemTemplate.HeightY = entry.Data.ReadInt16LittleEndian(ref offset);
dialogItemTemplate.ID = entry.Data.ReadUInt16LittleEndian(ref offset);
#region Class resource

View File

@@ -1045,7 +1045,7 @@ namespace SabreTools.Serialization.Wrappers
{
// Read the signature
int offset = 0;
uint signature = entryData.ReadUInt32(ref offset);
uint signature = entryData.ReadUInt32LittleEndian(ref offset);
// Reset the offset
offset = 0;