; Copyright 1996 Acorn Computers Ltd
;
; Licensed under the Apache License, Version 2.0 (the "License");
; you may not use this file except in compliance with the License.
; You may obtain a copy of the License at
;
;     http://www.apache.org/licenses/LICENSE-2.0
;
; Unless required by applicable law or agreed to in writing, software
; distributed under the License is distributed on an "AS IS" BASIS,
; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
; See the License for the specific language governing permissions and
; limitations under the License.
;

; SCSI driver errors

 ^ &00020100
 AddError SCSI_NoRoom,        "No room for SCSI driver workspace"
 AddError SCSI_SWIunkn,       "Unknown SCSI SWI number"
 AddError SCSI_RCunkn,        "Unknown reason code for SCSI SWI"
 AddError SCSI_BadReset,      "SCSI bus failed to reset"
 AddError SCSI_BadHostID,     "Invalid SCSI host ID"
 AddError SCSI_BadDevID,      "Invalid SCSI device ID"
 AddError SCSI_NoDevice,      "No hardware at this device ID"
 AddError SCSI_Established,   "Device already established"
 AddError SCSI_NotEstablished,"Device not established"
 AddError SCSI_NotIdle       ,"Device not idle"

 AddError SCSI_Timeout       ,"Timeout"  ;On selection,
 AddError SCSI_Timeout2      ,"Timeout"  ;During execution
 AddError SCSI_QueueNotEmpty ,"Command queue not empty"
 AddError SCSI_QueueFull     ,"Command queue full"
 AddError SCSI_DevReserved   ,"SCSI driver reservation error"
 AddError SCSI_InvalidParms  ,"Invalid parameters"  ;wrong number
 AddError SCSI_ParmError     ,"Parameter error"     ;
 AddError SCSI_NotFromIRQ    ,"Not callable from IRQ routine";

 AddError SCSI_AbortOp       ,"Operation aborted"
 AddError SCSI_Died          ,"Unexpected disconnection"

 AddError SCSI_WrongMEMC     ,"SCSI requires MEMC1a - see your dealer"

;
; Interpretations of the returned target status byte for status other than GOOD
;
 ^ &00020100 + &80
 AddError SCSI_CheckCondition,"Target status - Check condition"
 AddError SCSI_Busy          ,"Target status - Busy"
 AddError SCSI_StatusUnkn    ,"Target status - Unknown"

;
; If a command reports a status of CHECK CONDITION, the driver may be set
; to automaticaly perform a 'request sense'.
;
; Interpretations of the 'Sense Key' field of an 'Extended Sense Data block'
;
 ^ &00020100 + &C0
 AddError SCSI_CC_NoSense       , "Target error - No sense"
 AddError SCSI_RecoveredError   , "Target error - Recovered error"
 AddError SCSI_CC_NotReady      , "Target error - Not ready"
 AddError SCSI_CC_MediumError   , "Target error - Medium error"
 AddError SCSI_CC_HardwareError , "Target error - Hardware error"
 AddError SCSI_CC_IllegalRequest, "Target error - Illegal request"
 AddError SCSI_CC_UnitAttention , "Target error - Unit attention"
 AddError SCSI_CC_DataProtect   , "Target error - Data protect"
 AddError SCSI_CC_BlankCheck    , "Target error - Blank check"
 AddError SCSI_CC_VendorUnique  , "Target error - Vendor unique"
 AddError SCSI_CC_CopyAborted   , "Target error - Copy aborted"
 AddError SCSI_CC_AbortedCommand, "Target error - Aborted command"
 AddError SCSI_CC_Equal         , "Target error - Equal"
 AddError SCSI_CC_VolumeOverflow, "Target error - Volume overflow"
 AddError SCSI_CC_Miscompare    , "Target error - Miscompare"
 AddError SCSI_CC_Reserved      , "Target error - Reserved sense key"
;
; Non-extended sense, or extended sense, but error code <> 0
;
 AddError SCSI_CC_UnKn          , "Target error - Unknown"


        END