Use documentation for endianness

This commit is contained in:
Matt Nadareski
2026-03-08 13:12:42 -04:00
parent e2581fc423
commit 9ce074529a
2 changed files with 7 additions and 3 deletions

View File

@@ -32,8 +32,8 @@ namespace SabreTools.Data.Models.Atari7800
/// Endianness possibly varies by version?
/// Version 1 - Big-endian
/// Version 2 - ?????
/// Version 3 - ?????
/// Version 4 - ?????
/// Version 3 - Documented as little-endian (unconfirmed)
/// Version 4 - Documented as little-endian (unconfirmed)
/// </remarks>
public uint RomSizeWithoutHeader { get; set; }

View File

@@ -66,7 +66,11 @@ namespace SabreTools.Serialization.Readers
obj.HeaderVersion = data.ReadByteValue();
obj.MagicText = data.ReadBytes(16);
obj.CartTitle = data.ReadBytes(32);
obj.RomSizeWithoutHeader = data.ReadUInt32BigEndian();
if (obj.HeaderVersion == 1)
obj.RomSizeWithoutHeader = data.ReadUInt32BigEndian();
else
obj.RomSizeWithoutHeader = data.ReadUInt32LittleEndian();
obj.CartType = (CartType)data.ReadUInt16LittleEndian();
obj.Controller1Type = (ControllerType)data.ReadByteValue();
obj.Controller2Type = (ControllerType)data.ReadByteValue();