// /*************************************************************************** // The Disc Image Chef // ---------------------------------------------------------------------------- // // Filename : Structs.cs // Author(s) : Natalia Portillo // // Component : Disk image plugins. // // --[ Description ] ---------------------------------------------------------- // // Contains structures for Apple DiskCopy 4.2 disk images. // // --[ License ] -------------------------------------------------------------- // // This library is free software; you can redistribute it and/or modify // it under the terms of the GNU Lesser General Public License as // published by the Free Software Foundation; either version 2.1 of the // License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, but // WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, see . // // ---------------------------------------------------------------------------- // Copyright © 2011-2019 Natalia Portillo // ****************************************************************************/ namespace DiscImageChef.DiscImages { public partial class DiskCopy42 { // DiskCopy 4.2 header, big-endian, data-fork, start of file, 84 bytes struct Dc42Header { /// 0x00, 64 bytes, pascal string, disk name or "-not a Macintosh disk-", filled with garbage public string DiskName; /// 0x40, size of data in bytes (usually sectors*512) public uint DataSize; /// 0x44, size of tags in bytes (usually sectors*12) public uint TagSize; /// 0x48, checksum of data bytes public uint DataChecksum; /// 0x4C, checksum of tag bytes public uint TagChecksum; /// 0x50, format of disk, see constants public byte Format; /// 0x51, format of sectors, see constants public byte FmtByte; /// 0x52, is disk image valid? always 0x01 public byte Valid; /// 0x53, reserved, always 0x00 public byte Reserved; } } }