private static Flags Read_Flags(Stream s)
{
var flags = new Flags();
using (var br = new BinaryReader(s, Encoding.ASCII, true))
{
s.Position = 0x00;
flags.Version = br.ReadUInt32();
s.Position = 0x04;
flags.PreferredRow = (PreferredRowType)br.ReadByte();
s.Position = 0x05;
flags.BackgroundMusic = br.ReadByte() > 0;
s.Position = 0x0C;
flags.TopDrawType = (TopDrawType) br.ReadUInt32();
flags.TopFrameType = (TopFrameType) br.ReadUInt32();
s.Position = 0x20;
flags.BottomDrawType = (BottomDrawType) br.ReadUInt32();
flags.BottomFrameType = (BottomFrameType) br.ReadUInt32();
s.Position = 0x2C;
flags.CursorColor = br.ReadUInt32() > 0;
s.Position = 0x34;
flags.FolderColor = br.ReadUInt32() > 0;
s.Position = 0x3C;
flags.FolderTexture = br.ReadUInt32() > 0;
s.Position = 0x48;
flags.FileColor = br.ReadUInt32() > 0;
s.Position = 0x50;
flags.FileTexture = br.ReadUInt32() > 0;
s.Position = 0x5C;
flags.ArrowButtonColor = br.ReadUInt32() > 0;
s.Position = 0x64;
flags.ArrowColor = br.ReadUInt32() > 0;
s.Position = 0x6C;
flags.OpenCloseColor = br.ReadUInt32() > 0;
s.Position = 0x78;
flags.GameTextDrawType = (GameTextDrawType) br.ReadUInt32();
s.Position = 0x80;
flags.BottomBackgroundInnerColor = br.ReadUInt32() > 0;
s.Position = 0x88;
flags.BottomBackgroundOuterColor = br.ReadUInt32() > 0;
s.Position = 0x90;
flags.FolderBackgroundColor = br.ReadUInt32() > 0;
s.Position = 0x98;
flags.FolderArrowColor = br.ReadUInt32() > 0;
s.Position = 0xA0;
flags.BottomCornerButtonColor = br.ReadUInt32() > 0;
s.Position = 0xA8;
flags.TopCornerButtonColor = br.ReadUInt32() > 0;
s.Position = 0xB0;
flags.DemoTextColor = br.ReadUInt32() > 0;
s.Position = 0xB8;
flags.SoundEffect = br.ReadUInt32() > 0;
}
return flags;
}