/// If set, target shall report log exception conditions
/// </summary>
publicboolRLEC;
/// <summary>
/// Queue algorithm modifier
/// </summary>
publicbyteQueueAlgorithm;
/// <summary>
/// If set all remaining suspended I/O processes shall be aborted after the contingent allegiance condition or extended contingent allegiance condition
/// </summary>
publicbyteQErr;
/// <summary>
/// Tagged queuing is disabled
/// </summary>
publicboolDQue;
/// <summary>
/// Extended Contingent Allegiance is enabled
/// </summary>
publicboolEECA;
/// <summary>
/// Target may issue an asynchronous event notification upon completing its initialization
/// </summary>
publicboolRAENP;
/// <summary>
/// Target may issue an asynchronous event notification instead of a unit attention condition
/// </summary>
publicboolUAAENP;
/// <summary>
/// Target may issue an asynchronous event notification instead of a deferred error
/// </summary>
publicboolEAENP;
/// <summary>
/// Minimum time in ms after initialization before attempting asynchronous event notifications
/// </summary>
publicushortReadyAENHoldOffPeriod;
/// <summary>
/// Global logging target save disabled
/// </summary>
publicboolGLTSD;
/// <summary>
/// CHECK CONDITION should be reported rather than a long busy condition
/// </summary>
publicboolRAC;
/// <summary>
/// Software write protect is active
/// </summary>
publicboolSWP;
/// <summary>
/// Maximum time in 100 ms units allowed to remain busy. 0xFFFF == unlimited.
/// </summary>
publicushortBusyTimeoutPeriod;
/// <summary>
/// Task set type
/// </summary>
publicbyteTST;
/// <summary>
/// Tasks aborted by other initiator's actions should be terminated with TASK ABORTED
/// </summary>
publicboolTAS;
/// <summary>
/// Action to be taken when a medium is inserted
/// </summary>
publicbyteAutoloadMode;
/// <summary>
/// Time in seconds to complete an extended self-test
/// </summary>
publicbyteExtendedSelfTestCompletionTime;
/// <summary>
/// All tasks received in nexus with ACA ACTIVE is set and an ACA condition is established shall terminate
/// </summary>
publicboolTMF_ONLY;
/// <summary>
/// Device shall return descriptor format sense data when returning sense data in the same transactions as a CHECK CONDITION
/// </summary>
publicboolD_SENSE;
/// <summary>
/// Unit attention interlocks control
/// </summary>
publicbyteUA_INTLCK_CTRL;
/// <summary>
/// LOGICAL BLOCK APPLICATION TAG should not be modified
/// </summary>
publicboolATO;
/// <summary>
/// Protector information checking is disabled
/// </summary>
publicboolDPICZ;
/// <summary>
/// No unit attention on release
/// </summary>
publicboolNUAR;
/// <summary>
/// Application Tag mode page is enabled
/// </summary>
publicboolATMPE;
/// <summary>
/// Abort any write command without protection information
/// </summary>
publicboolRWWP;
/// <summary>
/// Supportes block lengths and protection information
sb.AppendLine("\tIf ACA is established, the task set commands shall resume after it is cleared, otherwise they shall terminate with CHECK CONDITION");
break;
case1:
sb.AppendLine("\tAll the affected commands in the task set shall be aborted when CHECK CONDITION is returned");
break;
case3:
sb.AppendLine("\tAffected commands in the task set belonging with the CHECK CONDITION nexus shall be aborted");
break;
default:
sb.AppendLine("\tReserved QErr value 2 is set");
break;
}
switch(page.UA_INTLCK_CTRL)
{
case0:
sb.AppendLine("\tLUN shall clear unit attention condition reported in the same nexus");
break;
case2:
sb.AppendLine("\tLUN shall not clear unit attention condition reported in the same nexus");
break;
case3:
sb.AppendLine("\tLUN shall not clear unit attention condition reported in the same nexus and shall establish a unit attention condition for the initiator");
break;
default:
sb.AppendLine("\tReserved UA_INTLCK_CTRL value 1 is set");
break;
}
switch(page.AutoloadMode)
{
case0:
sb.AppendLine("\tOn medium insertion, it shall be loaded for full access");
break;
case1:
sb.AppendLine("\tOn medium insertion, it shall be loaded for auxiliary memory access only");
break;
case2:
sb.AppendLine("\tOn medium insertion, it shall not be loaded");