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

  1. {$if not def DOS_DOS_H} CONST DOS_DOS_H=0;
  2.  
  3. { ***********************************************************
  4.   ** KickPascal-Include-Datei "dos/dos.h" zu Kickstart 3.0 **
  5.   *********************************************************** }
  6.  
  7. TYPE p_DateStamp = ^DateStamp;
  8. TYPE p_FileInfoBlock = ^FileInfoBlock;
  9. TYPE BPTR = Long;
  10. TYPE BSTR = Long;
  11. TYPE p_InfoData = ^InfoData;
  12.  
  13. CONST DOSNAME  = "dos.library";
  14.  
  15. CONST
  16.  DOSTRUE   = -1;
  17.  DOSFALSE  =  0;
  18.  
  19. CONST
  20.  MODE_OLDFILE    = 1005;
  21.  MODE_NEWFILE    = 1006;
  22.  MODE_READWRITE  = 1004;
  23.  
  24. CONST
  25.  OFFSET_BEGINNING = -1;
  26.  OFFSET_CURRENT   =  0;
  27.  OFFSET_END       =  1;
  28.  OFFSET_BEGINING  =  OFFSET_BEGINNING;
  29.  
  30. CONST
  31.  BITSPERBYTE  =  8;
  32.  BYTESPERLONG =  4;
  33.  BITSPERLONG  = 32;
  34.  _MAXINT      = $7FFFFFFF;  { "_" ergänzt! }
  35.  DOSMAXINT    = _MAXINT;    { "DOS" ergänzt! }
  36.  _MININT      = $80000000;  { "_" ergänzt! }
  37.  DOSMININT    = _MININT;    { "DOS" ergänzt! }
  38.  
  39. CONST
  40.  SHARED_LOCK    = -2;
  41.  ACCESS_READ    = -2;
  42.  EXCLUSIVE_LOCK = -1;
  43.  ACCESS_WRITE   = -1;
  44.  
  45. TYPE DateStamp = RECORD
  46.  ds_Days   : LongInt;
  47.  ds_Minute : LongInt;
  48.  ds_Tick   : LongInt;
  49. END;
  50.  
  51. CONST TICKS_PER_SECOND = 50;
  52.  
  53.  
  54. TYPE FileInfoBlock = RECORD
  55.  fib_DiskKey      : LongInt;
  56.  fib_DirEntryType : LongInt;
  57.  fib_FileName     : String[108];
  58.  fib_Protection   : LongInt;
  59.  fib_EntryType    : LongInt;
  60.  fib_Size         : LongInt;
  61.  fib_NumBlocks    : LongInt
  62.  fib_Date         : DateStamp;
  63.  fib_Comment      : String[80];
  64.  fib_OwnerUID     : Word;
  65.  fib_OwnerGID     : Word;
  66.  fib_Reserved     : String[32];
  67. END;
  68.  
  69. CONST
  70.  FIBB_OTR_READ   = 15;
  71.  FIBB_OTR_WRITE  = 14;
  72.  FIBB_OTR_EXECUTE= 13;
  73.  FIBB_OTR_DELETE = 12;
  74.  FIBB_GRP_READ   = 11;
  75.  FIBB_GRP_WRITE  = 10;
  76.  FIBB_GRP_EXECUTE=  9;
  77.  FIBB_GRP_DELETE =  8;
  78.  
  79.  FIBB_SCRIPT  = 6;
  80.  FIBB_PURE    = 5;
  81.  FIBB_ARCHIVE = 4;
  82.  FIBB_READ    = 3;
  83.  FIBB_WRITE   = 2;
  84.  FIBB_EXECUTE = 1;
  85.  FIBB_DELETE  = 0;
  86.  
  87.  
  88.  FIBF_OTR_READ   = $8000;
  89.  FIBF_OTR_WRITE  = $4000;
  90.  FIBF_OTR_EXECUTE= $2000;
  91.  FIBF_OTR_DELETE = $1000;
  92.  FIBF_GRP_READ   = $0800;
  93.  FIBF_GRP_WRITE  = $0400;
  94.  FIBF_GRP_EXECUTE= $0200;
  95.  FIBF_GRP_DELETE = $0100;
  96.  
  97.  FIBF_SCRIPT  = $40;
  98.  FIBF_PURE    = $20;
  99.  FIBF_ARCHIVE = $10;
  100.  FIBF_READ    = $08;
  101.  FIBF_WRITE   = $04;
  102.  FIBF_EXECUTE = $02;
  103.  FIBF_DELETE  = $01;
  104.  
  105. CONST FAULT_MAX = 82;
  106.  
  107.  
  108. TYPE InfoData = RECORD
  109.  id_NumSoftErrors : LongInt;
  110.  id_UnitNumber    : LongInt;
  111.  id_DiskState     : LongInt;
  112.  id_NumBlocks     : LongInt;
  113.  id_NumBlocksUsed : LongInt;
  114.  id_BytesPerBlock : LongInt;
  115.  id_DiskType      : LongInt;
  116.  id_VolumeNode    : BPTR;
  117.  id_InUse         : LongInt;
  118. END;
  119.  
  120. CONST
  121.  ID_WRITE_PROTECTED = 80;
  122.  ID_VALIDATING      = 81;
  123.  ID_VALIDATED       = 82;
  124.  
  125. CONST
  126.  ID_NO_DISK_PRESENT = -1;
  127.  ID_UNREADABLE_DISK = $42414400; { 'BAD\0' }
  128.  ID_DOS_DISK        = $444F5300; { 'DOS\0' }
  129.  ID_FFS_DISK        = $444F5301; { 'DOS\1' }
  130.  ID_NOT_REALLY_DOS  = $4E444F53; { 'NDOS'  }
  131.  ID_KICKSTART_DISK  = $4B49434B; { 'KICK'  }
  132.  ID_MSDOS_DISK      = $4d534400; { 'MSD\0' }
  133.  
  134. CONST
  135.  ERROR_NO_FREE_STORE            = 103;
  136.  ERROR_TASK_TABLE_FULL          = 105;
  137.  ERROR_BAD_TEMPLATE             = 114;
  138.  ERROR_BAD_NUMBER               = 115;
  139.  ERROR_REQUIRED_ARG_MISSING     = 116;
  140.  ERROR_KEY_NEEDS_ARG            = 117;
  141.  ERROR_TOO_MANY_ARGS            = 118;
  142.  ERROR_UNMATCHED_QUOTES         = 119;
  143.  ERROR_LINE_TOO_LONG            = 120;
  144.  ERROR_FILE_NOT_OBJECT          = 121;
  145.  ERROR_INVALID_RESIDENT_LIBRARY = 122;
  146.  ERROR_NO_DEFAULT_DIR           = 201;
  147.  ERROR_OBJECT_IN_USE            = 202;
  148.  ERROR_OBJECT_EXISTS            = 203;
  149.  ERROR_DIR_NOT_FOUND            = 204;
  150.  ERROR_OBJECT_NOT_FOUND         = 205;
  151.  ERROR_BAD_STREAM_NAME          = 206;
  152.  ERROR_OBJECT_TOO_LARGE         = 207;
  153.  ERROR_ACTION_NOT_KNOWN         = 209;
  154.  ERROR_INVALID_COMPONENT_NAME   = 210;
  155.  ERROR_INVALID_LOCK             = 211;
  156.  ERROR_OBJECT_WRONG_TYPE        = 212;
  157.  ERROR_DISK_NOT_VALIDATED       = 213;
  158.  ERROR_DISK_WRITE_PROTECTED     = 214;
  159.  ERROR_RENAME_ACROSS_DEVICES    = 215;
  160.  ERROR_DIRECTORY_NOT_EMPTY      = 216;
  161.  ERROR_TOO_MANY_LEVELS          = 217;
  162.  ERROR_DEVICE_NOT_MOUNTED       = 218;
  163.  ERROR_SEEK_ERROR               = 219;
  164.  ERROR_COMMENT_TOO_BIG          = 220;
  165.  ERROR_DISK_FULL                = 221;
  166.  ERROR_DELETE_PROTECTED         = 222;
  167.  ERROR_WRITE_PROTECTED          = 223;
  168.  ERROR_READ_PROTECTED           = 224;
  169.  ERROR_NOT_A_DOS_DISK           = 225;
  170.  ERROR_NO_DISK                  = 226;
  171.  ERROR_NO_MORE_ENTRIES          = 232;
  172. { neu ab Kickstart 1.4 }
  173.  ERROR_IS_SOFT_LINK             = 233;
  174.  ERROR_OBJECT_LINKED            = 234;
  175.  ERROR_BAD_HUNK                 = 235;
  176.  ERROR_NOT_IMPLEMENTED          = 236;
  177.  ERROR_RECORD_NOT_LOCKED        = 240;
  178.  ERROR_LOCK_COLLISION           = 241;
  179.  ERROR_LOCK_TIMEOUT             = 242;
  180.  ERROR_UNLOCK_ERROR             = 243;
  181.  
  182. CONST
  183.  RETURN_OK    = 0;
  184.  RETURN_WARN  = 5;
  185.  RETURN_ERROR = 10;
  186.  RETURN_FAIL  = 20;
  187.  
  188. CONST
  189.  SIGBREAKB_CTRL_C = 12;
  190.  SIGBREAKB_CTRL_D = 13;
  191.  SIGBREAKB_CTRL_E = 14;
  192.  SIGBREAKB_CTRL_F = 15;
  193.  
  194.  SIGBREAKF_CTRL_C = $1000;
  195.  SIGBREAKF_CTRL_D = $2000;
  196.  SIGBREAKF_CTRL_E = $3000;
  197.  SIGBREAKF_CTRL_F = $4000;
  198.  
  199. CONST
  200.  LOCK_SAME         =  0;
  201.  LOCK_SAME_VOLUME  =  1;
  202.  LOCK_SAME_HANDLER =  LOCK_SAME_VOLUME;
  203.  LOCK_DIFFERENT    = -1;
  204.  
  205. CONST
  206.  CHANGE_LOCK = 0;
  207.  CHANGE_FH   = 1;
  208.  
  209. CONST
  210.  LINK_HARD = 0;
  211.  LINK_SOFT = 1;
  212.  
  213.  ITEM_EQUAL    = -2;
  214.  ITEM_ERROR    = -1;
  215.  ITEM_NOTHING  =  0;
  216.  ITEM_UNQUOTED =  1;
  217.  ITEM_QUOTED   =  2;
  218.  
  219. CONST
  220.  DOS_FILEHANDLE   = 0;
  221.  DOS_EXALLCONTROL = 1;
  222.  DOS_FIB          = 2;
  223.  DOS_STDPKT       = 3;
  224.  DOS_CLI          = 4;
  225.  DOS_RDARGS       = 5;
  226.  
  227. {$endif}
  228.