home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 11 Util / 11-Util.zip / hpfsut02.zip / source.zip / Structures.h < prev    next >
Text File  |  1999-11-22  |  3KB  |  124 lines

  1. typedef struct
  2. {
  3.     BYTE pStatus;
  4.     BYTE startHead;
  5.     unsigned startSec : 6;
  6.     unsigned startCyl : 10;
  7.     BYTE pType;
  8.     BYTE endHead;
  9.     unsigned endSec : 6;
  10.     unsigned endCyl : 10;
  11.     ULONG bootLoc;
  12.     ULONG secCount;
  13. } PARTITIONENTRY;
  14.  
  15. typedef PARTITIONENTRY* PPARTITIONENTRY;
  16.  
  17. typedef struct
  18. {
  19.     BYTE bootCode[446];
  20.     BYTE partTable[64];
  21.     BYTE remainder[1];
  22. } BOOTRECORD;
  23.  
  24. typedef BOOTRECORD* PBOOTRECORD;
  25.  
  26. typedef struct
  27. {
  28.     ULONG totalSectors;
  29.     ULONG actualFreeSectors;
  30.     ULONG reportedFreeSectors;
  31.     ULONG sectorSize;
  32. } FREESPACEINFO;
  33.  
  34. typedef FREESPACEINFO* PFREESPACEINFO;
  35.  
  36. typedef struct
  37. {
  38.     UCHAR errorFunc[256];
  39.     UCHAR errorHome[256];
  40.     ULONG errorCode;
  41.     BOOL success;
  42. } FUNCRETURN;
  43.  
  44. typedef FUNCRETURN* PFUNCRETURN;
  45.  
  46. typedef struct
  47. {
  48.     ULONG sectorSize;
  49.     ULONG totalSectors;
  50.     ULONG dirBandSectors;
  51.     ULONG dirBandBitmapSectors;
  52.     ULONG spareDirBlockSectors;
  53.     ULONG codePageSectors;
  54.     ULONG frontStructures;
  55.     ULONG hotfixSectors;
  56.     ULONG hotfixListSectors;
  57.     ULONG bitmapListSectors;
  58.     ULONG bitmapSectors;
  59.     ULONG badSectorListSectors;
  60.     ULONG securityBlockSectors;
  61.     ULONG rootFNode;
  62.     ULONG rootDirBlock;
  63.     ULONG totalSystemSectors;
  64. } SYSTEMUSAGE;
  65.  
  66. typedef SYSTEMUSAGE* PSYSTEMUSAGE;
  67.  
  68. typedef struct
  69. {
  70.     ULONG signature[2];
  71.     BYTE version;
  72.     BYTE funcVersion;
  73.     BYTE align32[2];
  74.     ULONG rootFNode;
  75.     ULONG sectorCount;
  76.     ULONG badSectorCount;
  77.     ULONG bitmapList;
  78.     ULONG spareBitmapList;
  79.     ULONG badSectorList;
  80.     ULONG spareBadSectorList;
  81.     ULONG lastCheckDate;
  82.     ULONG lastOptimizedDate;
  83.     ULONG dirBandSectorCount;
  84.     ULONG dirBandStart;
  85.     ULONG dirBandEnd;
  86.     ULONG dirBandBitmap;
  87.     BYTE reserved[32];
  88.     ULONG securityBlock;
  89. } SUPERBLOCK;
  90.  
  91. typedef SUPERBLOCK* PSUPERBLOCK;
  92.  
  93. typedef struct
  94. {
  95.     ULONG signature[2];
  96.     BYTE partStatus;
  97.     BYTE align32[3];
  98.     ULONG hotfixList;
  99.     ULONG hotfixUsed;
  100.     ULONG hotfixTotal;
  101.     ULONG spareDirBlockCount;
  102.     ULONG spareDirBlockFree;
  103.     ULONG codePageSector;
  104.     ULONG codePageCount;
  105.     ULONG superBlockCRC;
  106.     ULONG spareBlockCRC;
  107.     BYTE reserved[60];
  108.     ULONG firstSpareDirBlock[1];
  109. } SPAREBLOCK;
  110.  
  111. typedef SPAREBLOCK* PSPAREBLOCK;
  112.  
  113. typedef struct
  114. {
  115.     unsigned bit0 : 1;
  116.     unsigned bit1 : 1;
  117.     unsigned bit2 : 1;
  118.     unsigned bit3 : 1;
  119.     unsigned bit4 : 1;
  120.     unsigned bit5 : 1;
  121.     unsigned bit6 : 1;
  122.     unsigned bit7 : 1;
  123. } BYTEBITFIELD;
  124.