summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorMichael Maltese <michaeljosephmaltese@gmail.com>2017-04-25 17:29:49 -0700
committerMichael Maltese <michaeljosephmaltese@gmail.com>2017-04-25 17:36:30 -0700
commitf9a67fbf6fd72987133d841a710ab6f417f264cb (patch)
treee89687c210872590bc981acacecf1bcc12df4f8d /Source
parent4d52df150bfb20f4892d364f00e52944ec3d3473 (diff)
FifoFileStruct: replace unions with explicit padding
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/Core/FifoPlayer/FifoFileStruct.h61
1 files changed, 28 insertions, 33 deletions
diff --git a/Source/Core/Core/FifoPlayer/FifoFileStruct.h b/Source/Core/Core/FifoPlayer/FifoFileStruct.h
index bfe6bdb741..d40f8f6a1f 100644
--- a/Source/Core/Core/FifoPlayer/FifoFileStruct.h
+++ b/Source/Core/Core/FifoPlayer/FifoFileStruct.h
@@ -15,44 +15,38 @@ enum
MIN_LOADER_VERSION = 1,
};
-#pragma pack(push, 4)
+#pragma pack(push, 1)
-union FileHeader
+struct FileHeader
{
- struct
- {
- u32 fileId;
- u32 file_version;
- u32 min_loader_version;
- u64 bpMemOffset;
- u32 bpMemSize;
- u64 cpMemOffset;
- u32 cpMemSize;
- u64 xfMemOffset;
- u32 xfMemSize;
- u64 xfRegsOffset;
- u32 xfRegsSize;
- u64 frameListOffset;
- u32 frameCount;
- u32 flags;
- u64 texMemOffset;
- u32 texMemSize;
- };
- u32 rawData[32];
+ u32 fileId;
+ u32 file_version;
+ u32 min_loader_version;
+ u64 bpMemOffset;
+ u32 bpMemSize;
+ u64 cpMemOffset;
+ u32 cpMemSize;
+ u64 xfMemOffset;
+ u32 xfMemSize;
+ u64 xfRegsOffset;
+ u32 xfRegsSize;
+ u64 frameListOffset;
+ u32 frameCount;
+ u32 flags;
+ u64 texMemOffset;
+ u32 texMemSize;
+ u8 reserved[40];
};
-union FileFrameInfo
+struct FileFrameInfo
{
- struct
- {
- u64 fifoDataOffset;
- u32 fifoDataSize;
- u32 fifoStart;
- u32 fifoEnd;
- u64 memoryUpdatesOffset;
- u32 numMemoryUpdates;
- };
- u32 rawData[16];
+ u64 fifoDataOffset;
+ u32 fifoDataSize;
+ u32 fifoStart;
+ u32 fifoEnd;
+ u64 memoryUpdatesOffset;
+ u32 numMemoryUpdates;
+ u8 reserved[32];
};
struct FileMemoryUpdate
@@ -62,6 +56,7 @@ struct FileMemoryUpdate
u64 dataOffset;
u32 dataSize;
u8 type;
+ u8 reserved[3];
};
#pragma pack(pop)