internal DolphinCompressedDisc(BinaryReader reader) { Reader = reader; reader.Require(Magic); System = (DolphinCompressedDiscSystem)reader.ReadUInt32(); CompressedDataSize = reader.ReadInt64(); UncompressedDataSize = reader.ReadInt64(); BlockSize = reader.ReadInt32(); int blockCount = reader.ReadInt32(); Blocks = new Block[blockCount]; for (int index = 0; index < blockCount; index++) Blocks[index].OffsetCode = reader.ReadInt64(); for (int index = 0; index < blockCount; index++) Blocks[index].Adler32HashOfCompressedData = reader.ReadUInt32(); BlockDataOffset = reader.BaseStream.Position; }
internal DolphinCompressedDisc(BinaryReader reader) { Reader = reader; reader.Require(Magic); System = (DolphinCompressedDiscSystem)reader.ReadUInt32(); CompressedDataSize = reader.ReadInt64(); UncompressedDataSize = reader.ReadInt64(); BlockSize = reader.ReadInt32(); int blockCount = reader.ReadInt32(); Blocks = new Block[blockCount]; for (int index = 0; index < blockCount; index++) { Blocks[index].OffsetCode = reader.ReadInt64(); } for (int index = 0; index < blockCount; index++) { Blocks[index].Adler32HashOfCompressedData = reader.ReadUInt32(); } BlockDataOffset = reader.BaseStream.Position; }