62 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| compile insert FSERRORS_HDR
 | |
| *----------------------------------------------------------------------------
 | |
| * Advanced Revelation 2.0 Filing System Error reporting protocol
 | |
| * June 1, 1989
 | |
| * Begun: Brad Anderson
 | |
| *
 | |
| 
 | |
| * 05/16/91 - JMC   Added special user abort mode ([Esc] press).  This
 | |
| *                   is a setting for the STATUS() variable, not a message number
 | |
| 
 | |
| 
 | |
| * Error conditions are to be returned by BFSs and MFSs in the @FILE.ERROR
 | |
| * variable.  Each error code has an associated severity level.
 | |
| * If an error condition is encountered, the filing system code should set
 | |
| * 1. @FILE.ERROR to the associated code and fill in the message and detail
 | |
| *    as appropriate
 | |
| * 2. Set STATUS() to the associated severity level
 | |
| * 3. Set the FLAG (7th argument) to FALSE$ to indicate an operational failure.
 | |
| *
 | |
| * If FLAG is set to false, then the operation is defined to have failed.
 | |
| * It is important for the application to know that a WRITE or DELETE was
 | |
| * in fact not performed.  Setting FLAG to FALSE is not an appropriate protocol
 | |
| * for communicating any non-failure (informational) condition from the
 | |
| * filing system.
 | |
| *
 | |
| * "Core" error codes are blocked in groups of 100 and are integer codes.
 | |
| * Block 0 - 99 is allocated for logical error reporting.
 | |
| * Block 100 - 199 is allocated for Revelation system BFS error codes.
 | |
| * Block 200 - 299 is allocated for Revelation system MFS error codes.
 | |
| * Block 300 - 399 is allocated for BOND.SUBS errors
 | |
| * Blcok 400 - 499 is allocated for System, RTP, and R/BASIC cursor errors
 | |
| *
 | |
| * Some codes are intrinsically specific to the function of a particular
 | |
| * BFS or MFS.  Others may be and should be generally applied to a variety
 | |
| * of filing systems.  For example, code 100 is the standard status return in
 | |
| * case of an attempt to read or delete a record which does not exist.
 | |
| *
 | |
| * Block BS - Bond-subs - is allocated for codes associated with the BOND.SUBS
 | |
| * routine.
 | |
| *
 | |
| * Every error code should have an associated message in the MESSAGES file.
 | |
| * The ID of the message should be error code preceeded by "FS".
 | |
| * For example, code 105 would have an associated message "FS105"
 | |
| * If any parameters are to be passed to this message they should appear in
 | |
| * the FSMSG field of @FILE.ERROR.  This field may be multivalued.
 | |
| 
 | |
| *---- FILING SYSTEM SEVERITY LEVEL CODES --------
 | |
| * Value of STATUS() on return from Filing System.
 | |
| *
 | |
| Equate Fs_Informational$ To -2   ;* @File.Error contain FYI info.
 | |
| EQUATE FS_USER_ABORT$    TO -1   ;* The user pressed [Esc], SPECIAL!
 | |
| EQUATE FSLOGICAL$        TO 0    ;* Data does not meet logical constraints
 | |
| EQUATE FSPHYSICAL$       TO 1    ;* Structural or operational error (retryable)
 | |
| EQUATE FSFATAL$          TO 2    ;* Structural or operational error (fatal)
 | |
| 
 | |
| *---- FILE.ERROR FIELD STRUCTURE -------
 | |
| EQUATE FSCODE$           TO 1    ; * error or status code identifier
 | |
| EQUATE FSMSG$            TO 2    ; * error message data
 | |
| EQUATE FSDETAIL$         TO 3    ; * file system dependent detail data
 | |
| EQUATE FS_PREFIX$        TO 'FS' ; * used by OE for set_status  Pat Oct/04/91
 | |
| * Source Date: 16:41:47  12 JAN 1993  Build ID: OI*1.0.10  Level: 2.0
 |