// Error codes returned by all programs

#define E_AspiInit              -1    // ASPI manager initialization error
#define E_AspiBusy              -2    // ASPI manager is busy
#define E_AspiNoDevice          -3    // Device is not installed
#define E_AspiInvalidRequest    -4    // Invalid ASPI request
#define E_AspiInvalidAdapter    -5    // Invalid host adapter number
#define E_AspiInvalidSRB        -6    // Invalid SRB
#define E_AspiAbort             -7    // ASPI request was aborted by host
#define E_AspiAbortFail         -8    // ASPI request was aborted by host
#define E_AspiUnknown           -9    // Unknown ASPI error

#define E_AdapterTimeout        -10   // Transaction timeout
#define E_AdapterExpired        -11   // SRB expired
#define E_AdapterMessageReject  -12   // Message reject
#define E_AdapterBusReset       -13   // Bus reset was detected
#define E_AdapterParityError    -14   // Parity error was detected
#define E_AdapterSenseFailed    -15   // Auto request sense failed
#define E_AdapterSelectTimeout  -16   // Selection timeout
#define E_AdapterDataOverrun    -17   // Data overrun/underrun
#define E_AdapterBusFree        -18   // Unexpected bus free
#define E_AdapterBusFailure     -19   // Target bus phase sequence failure
#define E_AdapterUnknown        -20   // Unexpected adapter error

#define E_TargetBusy            -21   // Target is busy
#define E_TargetConflict        -22   // Target reservation conflict
#define E_TargetUnknown         -23   // Unexpected target error

#define E_Recovered             -24   // Recovered error
#define E_DeviceNotReady        -25   // Device is not ready
#define E_Medium                -26   // Medium Error
#define E_Hardware              -27   // Non-recoverable hardware error
#define E_IllegalRequest        -28   // Illegal Request
#define E_UnitAttention         -29   // Unit Attention
#define E_BlankCheck            -30   // Encountered non-blank data
#define E_DeviceBusy            -31   // Device is busy
#define E_TargetAbort           -32   // Target aborted the command
#define E_VolumeOverflow        -33   // Volume overflow
#define E_EndOfMedium           -34   // End-of-Medium detected
#define E_SenseUnknown          -35   // Unexpected sense error

