// Error codes returned by all programs

#define E_NoErr         0     // No Error 
#define E_NoAspi        -1    // No ASPI Manager Installed 
#define E_Busy          -2    // ASPI module is busy (should never occur) 
#define E_AspiErr       -3    // Undefined ASPI error 
#define E_NoMem         -4    // Can't allocate memory 
#define E_NoDevice      -5    // The device is not installed 
#define E_AspiInval     -6    // Invalid ASPI request 
#define E_NoAdapter     -7    // Invalid Host Adapter Number 
#define E_Abort         -8    // ASPI request aborted by Host 
#define E_SelTimeout    -9    // Selection Timeout 
#define E_DataOverrun   -10   // Data over-run/under-run 
#define E_BusFree       -11   // Unexpected Bus Free 
#define E_BusFail       -12   // Target bus phase sequence failure 
#define E_TargetBusy    -13   // The specified Target/LUN is busy 
#define E_Reservation   -14   // Reservation conflict 
#define E_Recovered     -15   // Recovered error 
#define E_NotReady      -16   // Device cannot be accessed 
#define E_Medium        -17   // Medium Error 
#define E_Hardware      -18   // Non recoverable hardware error 
#define E_IllegalReq    -19   // Illegal Request 
#define E_UnitAttention -20   // Unit Attention 
#define E_DataProtect   -21   // The block is protected 
#define E_BlankCheck    -22   // Encountered non blank data 
#define E_DriveBusy     -23   // Drive is busy 
#define E_TargetAbort   -24   // Target aborted command 
#define E_VolOverflow   -25   // Volume overflow 
#define E_Miscompare    -26   // Source and data did not match 
#define E_IOErr         -27   // An I/O error of unknown cause 
#define E_EndOfMedium   -28   // End-of-Medium detected 

