home *** CD-ROM | disk | FTP | other *** search
/ Mac-Source 1994 July / Mac-Source_July_1994.iso / Modula / Source / OSCONSTANTS.DEF < prev    next >
Text File  |  1985-04-26  |  5KB  |  105 lines

  1. (*=================================================================================*)
  2. DEFINITION MODULE osconstants; (* Franz Kronseder 05.02.85 *)
  3.                                (* last modification 06.02.85 *)
  4. (* MODULA constant definitions from the UNIT intrfc/osintf for the MacIntosh *)
  5.  
  6. EXPORT QUALIFIED
  7. NoErr,MemFullErr,NilHandleErr,MemWZErr,MemPurErr,DirFulErr,DskFulErr,NSVErr,
  8.  IOErr,BdNamErr,FNOpnErr,EOFErr,PosErr,MFulErr,TMFOErr,FNFErr,WPrErr,FLckdErr,
  9. VLckdErr,FBsyErr,DupFNErr,OpWrErr ,ParamErr,RFNumErr,GFPErr,VolOffLinErr,
  10.  PermErr,VolOnLinErr,NSDrvErr,NoMacDskErr,ExtFSErr,FSDSErr,BadMDBErr,WrPermErr,
  11.  firstDskErr,lastDskErr,MaxSize,fHasBundle,fInvisible;
  12.  
  13. CONST
  14.   NoErr        =    0;     (* All is well *)
  15.   MemFullErr   = -108;     (* Not enough room in heap zone *)
  16.   NilHandleErr = -109;     (* Master Pointer was NIL in HandleZone or other    *)
  17.   MemWZErr     = -111;     (* WhichZone failed (applied to free block)         *)
  18.   MemPurErr    = -112;     (* trying to purge a locked or non-purgeable block  *)
  19.  
  20.   (*file system error codes*)
  21.   DirFulErr   =    -33;     (* Directory full*)
  22.   DskFulErr   =    -34;     (* disk full*)
  23.   NSVErr      =    -35;     (* no such volume*)
  24.   IOErr       =    -36;     (* I/O error (bummers)*)
  25.   BdNamErr    =    -37;     (* there may be no bad names in the final system!*)
  26.   FNOpnErr    =    -38;     (* File not open*)
  27.   EOFErr      =    -39;     (* End of file*)
  28.   PosErr      =    -40;     (* tried to position to before start of file (r/w)*)
  29.   MFulErr     =    -41;     (* memory full(open) or file won't fit (load)*)
  30.   TMFOErr     =    -42;     (* too many files open*)
  31.   FNFErr      =    -43;     (* File not found*)
  32.  
  33.   WPrErr      =    -44;     (* diskette is write protected*)
  34.   FLckdErr    =    -45;     (* file is locked*)
  35.   VLckdErr    =    -46;     (* volume is locked*)
  36.   FBsyErr     =    -47;     (* File is busy (delete)*)
  37.   DupFNErr    =    -48;     (* duplicate filename (rename)*)
  38.   OpWrErr     =    -49;     (* file already open with with write permission*)
  39.   ParamErr    =    -50;    (* error in user parameter list*)
  40.   RFNumErr    =    -51;     (* refnum error*)
  41.   GFPErr      =    -52;     (* get file position error*)
  42.   VolOffLinErr =   -53;     (* volume not on line error (was Ejected)*)
  43.   PermErr     =    -54;     (* permissions error (on file open)*)
  44.   VolOnLinErr =    -55;     (* drive volume already on-line at MountVol*)
  45.   NSDrvErr    =    -56;     (* no such drive (tried to mount a bad drive num)*)
  46.   NoMacDskErr =    -57;     (* not a mac diskette (sig bytes are wrong)*)
  47.   ExtFSErr    =    -58;     (* volume in question belongs to an external fs*)
  48.   FSDSErr     =    -59;     (* file system deep s--t error:*)
  49.                               (*  during rename the old entry was deleted *)
  50.                               (*  but could not be restored . . .*)
  51.   BadMDBErr   =    -60;     (* bad master directory block*)
  52.   WrPermErr   =    -61;     (* write permissions error*)
  53.   firstDskErr =    -84;     (*first of the range of low-level disk errors*)
  54.   lastDskErr  =    -64;     (*last of the range of low-level disk errors*)
  55.  
  56.   MaxSize    = 800000H;  (* Max data block size is 512K bytes  *)
  57.  
  58.   (*finder constants*)
  59.   fHasBundle = 32;
  60.   fInvisible = 64;
  61.   
  62.   (* Modula-2 Halt Indices :
  63.     -11 : uninitialized interrupt vector
  64.     -10 : interrupt format error
  65.      -9 : Line 1111 emulator interrupt
  66.      -8 : Line 1010 emulator interrupt
  67.      -7 : Privilege Violation Trap
  68.      -6 : Arithmetic overflow (TRAPV Trap)
  69.      -5 : Index out of range (CHK Trap)
  70.      -4 : Zero Divide (ZerDivTrap)
  71.      -3 : Illegal Instruction Trap
  72.      -2 : Address Error Trap (Odd Address)
  73.      -1 : Bus Error Trap (Timeout)
  74.       0 : HALT called
  75.       1 : No RETURN from function
  76.       2 : CASE Index out of range
  77.       3 : Stack overflow
  78.       4 : Index or value out of range
  79.       5 : Arithmetic overflow (REAL)
  80.       6 : Improper workspace to NEWPROCESS
  81.       7 : Coroutine terminates
  82.       8 : Call to unimplemented SYSTEMX routine
  83.       
  84.     *)
  85.     
  86.     (* 
  87.     Bomb IDs that may occur because of errors in Modula-2 programs:
  88.     ID= 2 : Address Error (odd address, bad Pointer value)
  89.     ID= 3 : illegal instruction trap
  90.     ID= 4 : zero divide trap
  91.     ID= 5 : check trap error (array bound error etc)
  92.     ID= 6 : overflow trap
  93.     ID= 7 : privilege violation trap
  94.     ID= 9 : Line 1010 trap
  95.     ID=10 : Line 1111 trap
  96.     ID=11 : miscellaneous traps
  97.     
  98.     note: these errors occur most probably because of overwritten programs
  99.     *)
  100.     
  101.  
  102. END osconstants.
  103. (*=================================================================================*)
  104.  
  105.