home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Pascal / MAXONPASCAL2.DMS / in.adf / INCLUDE / devices / hardblocks.h < prev    next >
Encoding:
Text File  |  1994-07-25  |  4.1 KB  |  157 lines

  1. {$if not def DEVICES_HARDBLOCKS_H} CONST DEVICES_HARDBLOCKS_H=0;
  2.  
  3. { **********************************************************************
  4.   ** KickPascal-Include-Datei "devices/hardblocks.h" zu Kickstart 3.0 **
  5.   ********************************************************************** }
  6.  
  7. TYPE p_RigidDiskBlock = ^RigidDiskBlock;
  8. TYPE p_BadBlockEntry = ^BadBlockEntry;
  9. TYPE p_BadBlockBlock = ^BadBlockBlock;
  10. TYPE p_PartitionBlock = ^PartitionBlock;
  11. TYPE p_FileSysHeaderBlock = ^FileSysHeaderBlock;
  12. TYPE p_LoadSegBlock = ^LoadSegBlock;
  13.  
  14. {$if not def EXEC_IO_H;incl "exec/io.h";endif}
  15.  
  16. TYPE RigidDiskBlock = RECORD
  17.  rdb_ID                 : Long;
  18.  rdb_SummedLongs        : Long;
  19.  rdb_ChkSum             : LongInt;
  20.  rdb_HostID             : Long;
  21.  rdb_BlockBytes         : Long;
  22.  rdb_Flags              : Long;
  23.  rdb_BadBlockList       : Long;
  24.  rdb_PartitionList      : Long;
  25.  rdb_FileSysHeaderList  : Long;
  26.  rdb_DriveInit          : Long;
  27.  rdb_Reserved1          : ARRAY[0..5] OF Long;
  28.  rdb_Cylinders          : Long;
  29.  rdb_Sectors            : Long;
  30.  rdb_Heads              : Long;
  31.  rdb_Interleave         : Long;
  32.  rdb_Park               : Long;
  33.  rdb_Reserved2          : ARRAY[0..2] Of Long;
  34.  rdb_WritePreComp       : Long;
  35.  rdb_ReducedWrite       : Long;
  36.  rdb_StepRate           : Long;
  37.  rdb_Reserved3          : ARRAY[0..4] OF Long;
  38.  rdb_RDBBlocksLo        : Long;
  39.  rdb_RDBBlocksHi        : Long;
  40.  rdb_LoCylinder         : Long;
  41.  rdb_HiCylinder         : Long;
  42.  rdb_CylBlocks          : Long;
  43.  rdb_AutoParkSeconds    : Long;
  44.  rdb_Reserved4          : ARRAY[0..1] Of Long;
  45.  rdb_DiskVendor         : String[8];
  46.  rdb_DiskProduct        : String[16];
  47.  rdb_DiskRevision       : String[4];
  48.  rdb_ControllerVendor   : String[8];
  49.  rdb_ControllerProduct  : String[16];
  50.  rdb_ControllerRevision : String[4];
  51.  rdb_Reserved5          : ARRAY[0..9] Of Long;
  52. END;
  53.  
  54. CONST IDNAME_RIGIDDISK = $5244534B; { "RDSK" }
  55.  
  56. CONST RDB_LOCATION_LIMIT = 16;
  57.  
  58. CONST
  59.  RDBFB_LAST       = 0;
  60.  RDBFF_LAST       = $01;
  61.  RDBFB_LASTLUN    = 1;
  62.  RDBFF_LASTLUN    = $02;
  63.  RDBFB_LASTTID    = 2;
  64.  RDBFF_LASTTID    = $04;
  65.  RDBFB_NORESELECT = 3;
  66.  RDBFF_NORESELECT = $08;
  67.  RDBFB_DISKID     = 4;
  68.  RDBFF_DISKID     = $10;
  69.  RDBFB_CTRLRID    = 5;
  70.  RDBFF_CTRLRID    = $20;
  71.  
  72.  RDBFB_SYNCH      = 6;
  73.  RDBFF_SYNCH      = $40;
  74.  
  75.  
  76. TYPE BadBlockEntry = RECORD
  77.  bbe_BadBlock  : Long;
  78.  bbe_GoodBlock : Long;
  79. END;
  80.  
  81. TYPE BadBlockBlock = RECORD
  82.  bbb_ID          : Long;
  83.  bbb_SummedLongs : Long;
  84.  bbb_ChkSum      : LongInt;
  85.  bbb_HostID      : Long;
  86.  bbb_Next        : Long;
  87.  bbb_Reserved    : Long;
  88.  bbb_BlockPairs  : ARRAY[0..60] OF BadBlockEntry;
  89. END;
  90.  
  91. CONST IDNAME_BADBLOCK = $42414442; { "BADB" }
  92.  
  93.  
  94. TYPE PartitionBlock = RECORD
  95.  pb_ID          : Long;
  96.  pb_SummedLongs : Long;
  97.  pb_ChkSum      : LongInt;
  98.  pb_HostID      : Long;
  99.  pb_Next        : Long;
  100.  pb_Flags       : Long;
  101.  pb_Reserved1   : ARRAY[0..1] Of Long;
  102.  pb_DevFlags    : Long;
  103.  pb_DriveName   : ARRAY[0..31] OF Char;
  104.  pb_Reserved2   : ARRAY[0..14] OF Long;
  105.  pb_Environment : ARRAY[0..16] Of Long;
  106.  pb_EReserved   : ARRAY[0..14] Of Long;
  107. END;
  108.  
  109. CONST IDNAME_PARTITION = $50415254; { "PART" }
  110.  
  111. CONST
  112.  PBFB_BOOTABLE = 0;
  113.  PBFF_BOOTABLE = 1;
  114.  PBFB_NOMOUNT  = 1;
  115.  PBFF_NOMOUNT  = 2;
  116.  
  117.  
  118. TYPE FileSysHeaderBlock = RECORD
  119.  fhb_ID            : Long;
  120.  fhb_SummedLongs   : Long;
  121.  fhb_ChkSum        : LongInt;
  122.  fhb_HostID        : Long;
  123.  fhb_Next          : Long;
  124.  fhb_Flags         : Long;
  125.  fhb_Reserved1     : ARRAY[0..1] OF Long;
  126.  fhb_DosType       : Long;
  127.  fhb_Version       : Long;
  128.  fhb_PatchFlags    : Long;
  129.  fhb_Type          : Long;
  130.  fhb_Task          : Long;
  131.  fhb_Lock          : Long;
  132.  fhb_Handler       : Long;
  133.  fhb_StackSize     : Long;
  134.  fhb_Priority      : LongInt;
  135.  fhb_Startup       : LongInt;
  136.  fhb_SegListBlocks : LongInt;
  137.  fhb_GlobalVec     : LongInt;
  138.  fhb_Reserved2     : ARRAY[0..22] OF Long;
  139.  fhb_Reserved3     : ARRAY[0..20] OF Long;
  140. END;
  141.  
  142. CONST IDNAME_FILESYSHEADER = $46534844; { "FSHD" }
  143.  
  144.  
  145. TYPE LoadSegBlock = RECORD
  146.  lsb_ID          : Long;
  147.  lsb_SummedLongs : Long;
  148.  lsb_ChkSum      : LongInt;
  149.  lsb_HostID      : Long;
  150.  lsb_Next        : Long;
  151.  lsb_LoadData    : ARRAY[0..122] Of Long;
  152. END;
  153.  
  154. CONST IDNAME_LOADSEG = $4C534547; { "LSEG" }
  155.  
  156. {$endif}
  157.