sscsih.inc 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. const
  2. __TEST_UNIT_READY = $00;
  3. __REZERO_UNIT = $01;
  4. __REQUEST_SENSE = $03;
  5. __FORMAT_UNIT = $04;
  6. __READ_BLOCK_LIMITS = $05;
  7. __REASSIGN_BLOCKS = $07;
  8. __READ_6 = $08;
  9. __WRITE_6 = $0a;
  10. __SEEK_6 = $0b;
  11. __READ_REVERSE = $0f;
  12. __WRITE_FILEMARKS = $10;
  13. __SPACE = $11;
  14. __INQUIRY = $12;
  15. __RECOVER_BUFFERED_DATA = $14;
  16. __MODE_SELECT = $15;
  17. __RESERVE = $16;
  18. __RELEASE = $17;
  19. __COPY = $18;
  20. __ERASE = $19;
  21. __MODE_SENSE = $1a;
  22. __START_STOP = $1b;
  23. __RECEIVE_DIAGNOSTIC = $1c;
  24. __SEND_DIAGNOSTIC = $1d;
  25. __ALLOW_MEDIUM_REMOVAL = $1e;
  26. __SET_WINDOW = $24;
  27. __READ_CAPACITY = $25;
  28. __READ_10 = $28;
  29. __WRITE_10 = $2a;
  30. __SEEK_10 = $2b;
  31. __WRITE_VERIFY = $2e;
  32. __VERIFY = $2f;
  33. __SEARCH_HIGH = $30;
  34. __SEARCH_EQUAL = $31;
  35. __SEARCH_LOW = $32;
  36. __SET_LIMITS = $33;
  37. __PRE_FETCH = $34;
  38. __READ_POSITION = $34;
  39. __SYNCHRONIZE_CACHE = $35;
  40. __LOCK_UNLOCK_CACHE = $36;
  41. __READ_DEFECT_DATA = $37;
  42. __MEDIUM_SCAN = $38;
  43. __COMPARE = $39;
  44. __COPY_VERIFY = $3a;
  45. __WRITE_BUFFER = $3b;
  46. __READ_BUFFER = $3c;
  47. __UPDATE_BLOCK = $3d;
  48. __READ_LONG = $3e;
  49. __WRITE_LONG = $3f;
  50. __CHANGE_DEFINITION = $40;
  51. __WRITE_SAME = $41;
  52. __READ_TOC = $43;
  53. __LOG_SELECT = $4c;
  54. __LOG_SENSE = $4d;
  55. __MODE_SELECT_10 = $55;
  56. __RESERVE_10 = $56;
  57. __RELEASE_10 = $57;
  58. __MODE_SENSE_10 = $5a;
  59. __PERSISTENT_RESERVE_IN = $5e;
  60. __PERSISTENT_RESERVE_OUT = $5f;
  61. __MOVE_MEDIUM = $a5;
  62. __READ_12 = $a8;
  63. __WRITE_12 = $aa;
  64. __WRITE_VERIFY_12 = $ae;
  65. __SEARCH_HIGH_12 = $b0;
  66. __SEARCH_EQUAL_12 = $b1;
  67. __SEARCH_LOW_12 = $b2;
  68. __READ_ELEMENT_STATUS = $b8;
  69. __SEND_VOLUME_TAG = $b6;
  70. __WRITE_LONG_2 = $ea;
  71. GOOD = $00;
  72. CHECK_CONDITION = $01;
  73. CONDITION_GOOD = $02;
  74. BUSY = $04;
  75. INTERMEDIATE_GOOD = $08;
  76. INTERMEDIATE_C_GOOD = $0a;
  77. RESERVATION_CONFLICT = $0c;
  78. COMMAND_TERMINATED = $11;
  79. QUEUE_FULL = $14;
  80. STATUS_MASK = $3e;
  81. NO_SENSE = $00;
  82. RECOVERED_ERROR = $01;
  83. NOT_READY = $02;
  84. MEDIUM_ERROR = $03;
  85. HARDWARE_ERROR = $04;
  86. ILLEGAL_REQUEST = $05;
  87. UNIT_ATTENTION = $06;
  88. DATA_PROTECT = $07;
  89. BLANK_CHECK = $08;
  90. COPY_ABORTED = $0a;
  91. ABORTED_COMMAND = $0b;
  92. VOLUME_OVERFLOW = $0d;
  93. MISCOMPARE = $0e;
  94. TYPE_DISK = $00;
  95. TYPE_TAPE = $01;
  96. TYPE_PROCESSOR = $03;
  97. TYPE_WORM = $04;
  98. TYPE_ROM = $05;
  99. TYPE_SCANNER = $06;
  100. TYPE_MOD = $07;
  101. TYPE_MEDIUM_CHANGER = $08;
  102. TYPE_ENCLOSURE = $0d;
  103. TYPE_NO_LUN = $7f;
  104. type
  105. Pccs_modesel_head = ^ccs_modesel_head;
  106. ccs_modesel_head = record
  107. _r1 : byte;
  108. medium : byte;
  109. _r2 : byte;
  110. block_desc_length : byte;
  111. density : byte;
  112. number_blocks_hi : byte;
  113. number_blocks_med : byte;
  114. number_blocks_lo : byte;
  115. _r3 : byte;
  116. block_length_hi : byte;
  117. block_length_med : byte;
  118. block_length_lo : byte;
  119. end;
  120. const
  121. COMMAND_COMPLETE = $00;
  122. EXTENDED_MESSAGE = $01;
  123. EXTENDED_MODIFY_DATA_POINTER = $00;
  124. EXTENDED_SDTR = $01;
  125. EXTENDED_EXTENDED_IDENTIFY = $02;
  126. EXTENDED_WDTR = $03;
  127. SAVE_POINTERS = $02;
  128. RESTORE_POINTERS = $03;
  129. DISCONNECT = $04;
  130. INITIATOR_ERROR = $05;
  131. ABORT = $06;
  132. MESSAGE_REJECT = $07;
  133. NOP = $08;
  134. MSG_PARITY_ERROR = $09;
  135. LINKED_CMD_COMPLETE = $0a;
  136. LINKED_FLG_CMD_COMPLETE = $0b;
  137. BUS_DEVICE_RESET = $0c;
  138. INITIATE_RECOVERY = $0f;
  139. RELEASE_RECOVERY = $10;
  140. SIMPLE_QUEUE_TAG = $20;
  141. HEAD_OF_QUEUE_TAG = $21;
  142. ORDERED_QUEUE_TAG = $22;
  143. SCSI_IOCTL_GET_IDLUN = $5382;
  144. SCSI_IOCTL_TAGGED_ENABLE = $5383;
  145. SCSI_IOCTL_TAGGED_DISABLE = $5384;
  146. SCSI_IOCTL_PROBE_HOST = $5385;
  147. SCSI_IOCTL_GET_BUS_NUMBER = $5386;
  148. { ---------------------------------------------------------------------
  149. Borland compatibility types
  150. ---------------------------------------------------------------------}
  151. // Type