home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / S2R10_C.ZIP / S2R10C07.SI < prev    next >
Text File  |  1990-03-09  |  259KB  |  5,202 lines

  1. .RR--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!
  2. .RM 78
  3. .PL 62
  4. .LM 1
  5. .RM 78
  6. .MT3
  7. .MB4
  8. .HM1
  9. .FM1
  10. .PO10
  11. .CW10
  12. .SR2
  13. .UJ0
  14. .OJ0
  15. .UL1
  16. .heAll Device Types                                                        3/9/90
  17. .foSCSI-2 draft proposed American National Standard        7-#      Revision 10c
  18. .pn 1
  19. .cp 30
  20. .aw off
  21. .pm 0
  22. 7. All Device Types
  23. .aw on
  24. .pm 3
  25.  
  26. .cp 20
  27. .aw off
  28. .pm 0
  29. 7.1. Model for All Device Types
  30. .aw on
  31. .pm 3
  32.  
  33. ááThi≤ mode∞ describe≤ somσ oµ thσ genera∞ characteristic≤ expecteΣ oµ mos⌠ ì
  34. SCS╔ devices«  I⌠ i≤ no⌠ intendeΣ t∩ definσ an∙ requirement≤ no≥ i≤ i⌠ ì
  35. intendeΣ t∩ alte≥ an∙ requirement≤ defineΣ elsewherσ iε thi≤ standard«  ì
  36. Sectioε ╢ oµ thi≤ standarΣ als∩ contain≤ mode∞ informatioε pertaininτ t∩ al∞ ì
  37. devicσ types.
  38.  
  39. .cp 5
  40. .pm 0
  41. .lm 1
  42. .aw off
  43. 7.1.1. SCS╔ Addresses
  44. .pm 3
  45. .aw on
  46.  
  47. ááTherσ arσ tw∩ level≤ oµ addresse≤ withiε thσ SCS╔ architecture║ thσ SCS╔ ì
  48. devicσ addres≤ anΣ thσ logica∞ uni⌠ numbe≥ o≥ targe⌠ routinσ number.
  49.  
  50. .cp 5
  51. .pm 0
  52. .lm 1
  53. .aw off
  54. 7.1.1.1. SCS╔ Devicσ Address
  55. .pm 3
  56. .aw on
  57. ááSCS╔ device≤ occup∙ (i.e.¼ responΣ to⌐ onσ addres≤ oε thσ SCS╔ bus«  ì
  58. Generall∙ thσ SCS╔ devicσ provide≤ ß mean≤ (e.g.¼ switches¼ jumpers⌐ t∩ selec⌠ ì
  59. onσ oµ thσ eigh⌠ availablσ addresse≤ (░ througΦ 7)«  Thi≤ addres≤ i≤ useΣ ì
  60. durinτ bu≤ arbitratioε anΣ selectioε o≥ reselectioε oµ SCS╔ devices«  EacΦ ì
  61. devicσ oε thσ SCS╔ bu≤ i≤ assigneΣ aε uniquσ address.
  62.  
  63. ááNormally¼ thσ SCS╔ devicσ addres≤ i≤ se⌠ wheε thσ systeφ i≤ configureΣ anΣ ì
  64. i⌠ remain≤ statiπ thereafter«  Somσ system≤ anΣ device≤ providσ vendo≥-ì
  65. specifiπ mean≤ t∩ alte≥ thi≤ addres≤ a⌠ othe≥ times.
  66.  
  67. .cp 5
  68. .pm 0
  69. .lm 1
  70. .aw off
  71. 7.1.1.2. Logica∞ Units
  72. .pm 3
  73. .aw on
  74. ááEacΦ targe⌠ ha≤ onσ o≥ morσ logica∞ units¼ beginninτ witΦ logica∞ uni⌠ zero«  ì
  75. Therσ i≤ ß maximuφ oµ eigh⌠ logica∞ units«  Thesσ logica∞ unit≤ arσ usuall∙ ì
  76. mappeΣ directl∙ t∩ periphera∞ devices¼ bu⌠ the∙ ma∙ bσ ß portioε oµ ß ì
  77. periphera∞ devicσ o≥ ma∙ comprisσ multiplσ periphera∞ devices.
  78.  
  79. ááAε initiato≥ caε determinσ whethe≥ ß targe⌠ implement≤ ß logica∞ uni⌠ b∙ ì
  80. issuinτ aε INQUIR┘ commanΣ anΣ examininτ thσ returneΣ periphera∞ qualifie≥ anΣ ì
  81. periphera∞ devicσ type.
  82.  
  83. ááThσ concep⌠ oµ ß logica∞ uni⌠ i≤ no⌠ defineΣ fo≥ aε initiator«  (Aε SCS╔ ì
  84. devicσ ma∙ implemen⌠ botΦ thσ initiato≥ rolσ anΣ thσ targe⌠ role«  Iε thi≤ ì
  85. casσ logica∞ unit(s⌐ arσ defineΣ onl∙ fo≥ thσ targe⌠ role.)
  86.  
  87. .cp 5
  88. .pm 0
  89. .lm 1
  90. .aw off
  91. 7.1.1.3. Targe⌠ Routines
  92. .pm 3
  93. .aw on
  94. ááAε optiona∞ featurσ oµ thσ SCS╔ architecturσ permit≤ eacΦ targe⌠ t∩ havσ onσ ì
  95. o≥ morσ targe⌠ routines¼ beginninτ witΦ targe⌠ routinσ numbe≥ zero«  Therσ i≤ ì
  96. ß maximuφ oµ eigh⌠ targe⌠ routines«  Thesσ targe⌠ routine≤ arσ processe≤ tha⌠ ì
  97. executσ directl∙ oε thσ targe⌠ anΣ arσ no⌠ associateΣ witΦ ß particula≥ ì
  98. logica∞ uni⌠ o≥ periphera∞ device«  Targe⌠ routine≤ arσ addresseΣ usinτ thσ ì
  99. LUNTA╥ bi⌠ oµ thσ IDENTIF┘ messagσ (seσ 5.6.7).
  100.  
  101. ááTarge⌠ routine≤ arσ principall∙ intendeΣ t∩ returε informatioε abou⌠ thσ ì
  102. targe⌠ anΣ thσ onl∙ valiΣ command≤ arσ INQUIR┘ anΣ REQUES╘ SENSE.
  103.  
  104. .cp 6è.pm 0
  105. .lm 1
  106. .aw off
  107. 7.1.2. CommanΣ≤ ImplementeΣ b∙ al∞ SCS╔ Devices
  108. .pm 3
  109. .aw on
  110.  
  111. ááThi≤ standarΣ define≤ fou≥ command≤ tha⌠ al∞ SCS╔-▓ target≤ implement║ ì
  112. INQUIRY¼ REQUES╘ SENSE¼ SEN─ DIAGNOSTIC¼ anΣ TES╘ UNI╘ READY«  Thesσ command≤ ì
  113. arσ useΣ t∩ configurσ thσ system¼ t∩ tes⌠ targets¼ anΣ t∩ returε importan⌠ ì
  114. informatioε concerninτ error≤ anΣ exceptioε conditions.
  115.  
  116. .cp 5
  117. .pm 0
  118. .lm 1
  119. .aw off
  120. 7.1.2.1. Usinτ thσ INQUIRY Command
  121. .pm 3
  122. .aw on
  123. ááThσ INQUIR┘ commanΣ ma∙ bσ useΣ b∙ ß systeφ t∩ determinσ thσ configuratioε ì
  124. oµ thσ SCS╔ bus«  Targe⌠ device≤ responΣ witΦ informatioε tha⌠ include≤ thei≥ ì
  125. typσ anΣ standarΣ leve∞ anΣ ma∙ includσ thσ vendor'≤ identification¼ mode∞ ì
  126. numbe≥ anΣ othe≥ usefu∞ information«  I⌠ i≤ recommendeΣ tha⌠ SCS╔ target≤ bσ ì
  127. capablσ oµ returninτ thi≤ informatioε (o≥ whateve≥ par⌠ oµ i⌠ tha⌠ i≤ ì
  128. available⌐ upoε completinτ powe≥-oε initialization«  Aε SCS╔ devicσ ma∙ takσ ì
  129. longe≥ t∩ ge⌠ certaiε portion≤ oµ thi≤ information¼ especiall∙ iµ i⌠ retrieve≤ ì
  130. thσ informatioε froφ thσ medium.
  131.  
  132. .cp 5
  133. .pm 0
  134. .lm 1
  135. .aw off
  136. 7.1.2.2. Usinτ thσ REQUES╘ SENS┼ Command
  137. .pm 3
  138. .aw on
  139. ááWheneve≥ ß contingen⌠ allegiancσ conditioε (6.6⌐ i≤ established¼ thσ ì
  140. initiato≥ tha⌠ receiveΣ thσ erro≥ shoulΣ issuσ ß REQUES╘ SENS┼ commanΣ t∩ ì
  141. receivσ thσ sensσ datß describinτ wha⌠ causeΣ thσ contingen⌠ allegiancσ ì
  142. condition«  Iµ thσ initiato≥ issue≤ somσ othe≥ command¼ thσ sensσ datß i≤ ì
  143. lost.
  144.  
  145. .cp 5
  146. .pm 0
  147. .lm 1
  148. .aw off
  149. 7.1.2.3. Usinτ thσ SEN─ DIAGNOSTIC Command
  150. .pm 3
  151. .aw on
  152. ááThσ SEN─ DIAGNOSTI├ commanΣ provide≤ ß mean≤ t∩ reques⌠ thσ targe⌠ t∩ ì
  153. perforφ ß selµ test«  Whilσ thσ tes⌠ i≤ targe⌠ specific¼ thσ mean≤ oµ ì
  154. requestinτ thσ tes⌠ i≤ standardizeΣ anΣ thσ responsσ i≤ simpl∙ GOO─ statu≤ iµ ì
  155. al∞ i≤ wel∞ o≥ CHEC╦ CONDITIO╬ statu≤ iµ thσ tes⌠ fails.
  156.  
  157. ááThσ SEN─ DIAGNOSTI├ commanΣ als∩ provide≤ othe≥ powerfu∞ feature≤ wheε useΣ ì
  158. iε conjunctioε witΦ thσ RECEIV┼ DIAGNOSTI├ RESULT╙ command¼ bu⌠ thi≤ ì
  159. capabilit∙ i≤ optional.
  160.  
  161. .cp 5
  162. .pm 0
  163. .lm 1
  164. .aw off
  165. 7.1.2.4. Usinτ thσ TES╘ UNI╘ READY Command
  166. .pm 3
  167. .aw on
  168. ááThσ TES╘ UNI╘ READ┘ commanΣ i≤ usefu∞ iε tha⌠ i⌠ allow≤ aε initiato≥ t∩ pol∞ ì
  169. ß logica∞ uni⌠ unti∞ i⌠ i≤ read∙ withou⌠ thσ neeΣ t∩ allocatσ spacσ fo≥ ì
  170. returneΣ data«  I⌠ i≤ especiall∙ usefu∞ t∩ checδ cartridgσ statu≤ oµ logica∞ ì
  171. unit≤ witΦ removablσ media«  Target≤ arσ expecteΣ t∩ responΣ promptl∙ t∩ ì
  172. indicatσ thσ curren⌠ statu≤ oµ thσ devicσ (i.e.¼ ß targe⌠ shoulΣ avoiΣ length∙ ì
  173. disconnection≤ iε aε attemp⌠ t∩ responΣ witΦ GOO─ status)«  
  174.  
  175.  
  176. .cp 20è.aw off
  177. .pm 0
  178. 7.2. Commands for All Device Types
  179. .aw on
  180. .pm 3
  181.  
  182. ááThσ operatioε code≤ fo≥ command≤ tha⌠ appl∙ t∩ al∞ devicσ type≤ arσ listeΣ ì
  183. iε Tablσ ╖-1.
  184.  
  185. .aw off
  186. .pm 0
  187. .cp  
  188.                   Table 7-1: Commands for All Device Types
  189.  
  190. ==============================================================================
  191.                                    Operation         
  192. Command Name                         Code       Type    Section
  193. ------------------------------------------------------------------------------
  194. CHANGE DEFINITION                     40h        O       7.2.1
  195. COMPARE                               39h        O       7.2.2
  196. COPY                                  18h        O       7.2.3
  197. COPY AND VERIFY                       3Ah        ╧       7.2.4
  198. INQUIRY                               12h        M       7.2.5
  199. LOG SELECT                            4Ch        O       7.2.6
  200. LOG SENSE                             4Dh        O       7.2.7
  201. MODE SELECT(6)                        15h        Z       7.2.8
  202. MODE SELECT(10)                       55h        Z       7.2.9
  203. MODE SENSE(6)                         1Ah        Z       7.2.10
  204. MODE SENSE(10)                        5Ah        Z       7.2.11
  205. READ BUFFER                           3Ch        O       7.2.12
  206. RECEIVE DIAGNOSTIC RESULTS            1Ch        O       7.2.13
  207. REQUEST SENSE                         03h        M       7.2.14
  208. SEND DIAGNOSTIC                       1Dh        O       7.2.15
  209. TEST UNIT READY                       00h        M       7.2.16
  210. WRITE BUFFER                          3Bh        O       7.2.17
  211. ==============================================================================
  212.  
  213.   Key║  ═ ╜ CommanΣ implementatioε i≤ mandatory.
  214.         O ╜ CommanΣ implementatioε i≤ optional.
  215.         Z ╜ CommanΣ implementatioε i≤ devicσ typσ specific.
  216.  
  217. .aw on
  218. .cp 35è.aw off
  219. .pm 0
  220. 7.2.1. CHANGE DEFINITION Command
  221.  
  222.  
  223.                     Table 7-2: CHANGE DEFINITION Command
  224.  
  225. ==============================================================================
  226.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  227. Byte |        |        |        |        |        |        |        |        |
  228. ==============================================================================
  229.  0   |                           Operation Code (40h)                        |
  230. -----|-----------------------------------------------------------------------|
  231.  1   | Logical Unit Number      |              Reserved                      |
  232. -----|-----------------------------------------------------------------------|
  233.  2   |                  Reserved                                    |  Save  |
  234. -----|-----------------------------------------------------------------------|
  235.  3   |Reserved|                  Definition Parameter                        |
  236. -----|-----------------------------------------------------------------------|
  237.  4   |                           Reserved                                    |
  238. -----|-----------------------------------------------------------------------|
  239.  5   |                           Reserved                                    |
  240. -----|-----------------------------------------------------------------------|
  241.  6   |                           Reserved                                    |
  242. -----|-----------------------------------------------------------------------|
  243.  7   |                           Reserved                                    |
  244. -----|-----------------------------------------------------------------------|
  245.  8   |                           Parameter Data Length                       |
  246. -----|-----------------------------------------------------------------------|
  247.  9   |                           Control                                     |
  248. ==============================================================================
  249. .pm 3
  250. .aw on
  251.  
  252.  
  253. ááThσ CHANG┼ DEFINITIO╬ commanΣ (Tablσ ╖-2⌐ modifie≤ thσ operatinτ definitioε ì
  254. oµ thσ selecteΣ logica∞ uni⌠ o≥ targe⌠ witΦ respec⌠ t∩ command≤ froφ thσ ì
  255. selectinτ initiato≥ o≥ fo≥ al∞ initiators« 
  256.  
  257. áá┴ savσ contro∞ bi⌠ (Save⌐ oµ zer∩ indicate≤ tha⌠ thσ targe⌠ shal∞ no⌠ savσ ì
  258. thσ operatinτ definition«  ┴ Savσ bi⌠ oµ onσ indicate≤ tha⌠ thσ targe⌠ shal∞ ì
  259. savσ thσ operatinτ definitioε t∩ noε-volatilσ memory« 
  260.  
  261. ááThσ definitioε paramete≥ fielΣ i≤ defineΣ iε Tablσ ╖-3.
  262.  
  263. .cp 12
  264. .aw off
  265. .pm 0
  266.                     Table 7-3: Definition Parameter Field
  267.  
  268.               =================================================
  269.               Value     Meaning of Definition Parameter
  270.               ----¡     --------------------------------------¡
  271.                00h      Usσ Curren⌠ Operating Definitioε 
  272.                01h      SCSI-1 Operating Definition
  273.                02h      CCS Operating Definition
  274.                03h      SCSI-2 Operating Definition
  275.               04-3Fh    Reserved
  276.               40-7Fh    Vendo≥ Specific
  277.               =================================================
  278. .aw on
  279. .pm 3
  280.  
  281. è.lm 3
  282. ááIMPLEMENTOR╙ NOTE║ Thσ curren⌠ operatinτ definitioε paramete≥ value≤ ì
  283. ááestablisΦ operatinτ definition≤ compatiblσ witΦ thσ appropriatσ SCS╔ ì
  284. ááspecification«  Vendo≥-specifiπ value≤ arσ availablσ fo≥ thosσ application≤ ì
  285. ááwherσ morσ comple° operatioε definitioε change≤ arσ required« Definition≤ ì
  286. áásupporteΣ b∙ ß devicσ arσ returneΣ iε thσ implementeΣ operatinτ definitioε ì
  287. áápagσ (seσ 7.3.4.3).
  288. .lm 1
  289.  
  290. ááThσ paramete≥ datß lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ ì
  291. paramete≥ datß tha⌠ shal∞ bσ transferreΣ froφ thσ initiato≥ t∩ thσ target«  ┴ ì
  292. paramete≥ datß lengtΦ oµ zer∩ indicate≤ tha⌠ n∩ datß shal∞ bσ transferred«  ì
  293. Thi≤ conditioε shal∞ no⌠ bσ considereΣ a≤ aε error«  Paramete≥ datß length≤ ì
  294. greate≥ thaε zer∩ indicatσ thσ numbe≥ oµ byte≤ oµ paramete≥ datß tha⌠ shal∞ bσ ì
  295. transferred.
  296.  
  297. ááThσ paramete≥ datß i≤ vendo≥ specific.
  298.  
  299. .lm3
  300. ááIMPLEMENTOR╙ NOTE║  Thσ paramete≥ datß ma∙ bσ useΣ t∩ specif∙ ß passworΣ t∩ ì
  301. áávalidatσ aε operatinτ definitioε change«  
  302. .lm1
  303.  
  304. ááThσ CHANG┼ DEFINITIO╬ commanΣ cause≤ onσ oµ thσ operatinτ definitioε ì
  305. modification≤ listeΣ below:
  306. áá(1⌐ Changσ thσ operatinτ definitioε oµ ß logica∞ uni⌠ relativσ t∩ thσ ì
  307. initiato≥ tha⌠ issueΣ thσ command«  Iε thi≤ case¼ thσ targe⌠ i≤ capablσ oµ ì
  308. maintaininτ aε uniquσ operatinτ definitioε fo≥ eacΦ logica∞ uni⌠ relativσ t∩ ì
  309. eacΦ initiato≥ iε thσ system.
  310. .cp 5
  311. áá(2⌐ Changσ thσ operatinτ definitioε oµ thσ targe⌠ relativσ t∩ thσ initiato≥ ì
  312. tha⌠ issueΣ thσ command«  Iε thi≤ case¼ thσ targe⌠ i≤ capablσ oµ maintaininτ ì
  313. aε uniquσ operatinτ definition¼ fo≥ eacΦ initiato≥ iε thσ system¼ tha⌠ applie≤ ì
  314. t∩ al∞ logica∞ unit≤ oµ thσ target.
  315. .cp 5
  316. áá(3⌐ Thσ operatinτ definitioε oµ ß logica∞ uni⌠ relativσ t∩ al∞ initiator≤ iε ì
  317. thσ system«  Iε thi≤ case¼ thσ targe⌠ i≤ capablσ oµ maintaininτ aε uniquσ ì
  318. operatinτ definitioε fo≥ eacΦ logica∞ uni⌠ relativσ t∩ al∞ initiator≤ iε thσ ì
  319. system.
  320. .cp 5
  321. áá(4⌐ Thσ operatinτ definitioε oµ thσ targe⌠ relativσ t∩ al∞ initiator≤ iε thσ ì
  322. system«  Iε thi≤ case¼ thσ targe⌠ i≤ capablσ oµ maintaininτ onl∙ onσ operatinτ ì
  323. definition.
  324.  
  325. .lm 3
  326. ááIMPLEMENTOR╙ NOTE:
  327. áá(1⌐ Thi≤ standarΣ doe≤ no⌠ providσ ß direc⌠ mean≤ t∩ determinσ whicΦ oµ thσ ì
  328. ááabovσ fou≥ method≤ ha≤ beeε implementeΣ b∙ thσ target«  Aε indirec⌠ mean≤ oµ ì
  329. áádetermininτ whicΦ methoΣ i≤ implementeΣ exist≤ iε tha⌠ thσ targe⌠ i≤ ì
  330. áárequireΣ t∩ inforφ affecteΣ initiator≤ oµ operatinτ definitioε change≤ viß ì
  331. ááthσ uni⌠ attentioε condition«  
  332. áá(2⌐ Case≤ (3⌐ anΣ (4)¼ above¼ ma∙ resul⌠ iε incompatibilitie≤ iµ therσ arσ ì
  333. ááothe≥ initiator≤ iε thσ systeφ operateΣ belo≈ thσ SCS╔-▓ level«  
  334. .lm 1
  335.  
  336. .cp 5
  337. ááThσ operatinτ definitioε i≤ modifieΣ afte≥ successfu∞ completioε oµ thσ ì
  338. command«  ┴ targe⌠ shal∞ conside≥ thσ commanΣ successfull∙ completeΣ wheε i⌠ ì
  339. detect≤ thσ assertioε oµ thσ AC╦ signa∞ fo≥ thσ COMMAN─ COMPLET┼ message«  Thσ ì
  340. initiato≥ shoulΣ verif∙ thσ ne≈ operatinτ definitioε b∙ issuinτ aε INQUIR┘ ì
  341. commanΣ requestinτ thσ implementeΣ operatinτ definitioε pagσ (seσ Tablσ ╖-75)« 
  342.  
  343. ááI⌠ i≤ permissiblσ fo≥ aε SCS╔-▓ devicσ tha⌠ ha≤ it≤ definitioε changeΣ t∩ aε ì
  344. SCS╔-▒ devicσ t∩ accep⌠ ß CHANG┼ DEFINITIO╬ command.
  345. è
  346. .lm 3
  347. ááIMPLEMENTOR╙ NOTE║  Thσ methoΣ oµ changinτ thσ operatinτ definitioε i≤ ì
  348. ááimplementatioε dependent«  Somσ implementation≤ ma∙ requirσ thσ target'≤ ì
  349. ááoperatinτ modσ bσ rσ-initializeΣ a≤ iµ ß powe≥-u≡ o≥ harΣ-rese⌠ haΣ ì
  350. ááoccurred«  Othe≥ implementation≤ ma∙ modif∙ onl∙ thosσ operatinτ definition≤ ì
  351. áátha⌠ arσ affecteΣ b∙ thσ CHANG┼ DEFINITIO╬ command.
  352. .lm 1
  353.  
  354. ááIµ thσ CHANG┼ DEFINITIO╬ commanΣ i≤ no⌠ executeΣ successfull∙ fo≥ an∙ ì
  355. reason¼ thσ operatinτ definitioε shal∞ remaiε thσ samσ a≤ i⌠ wa≤ beforσ thσ ì
  356. CHANG┼ DEFINITIO╬ commanΣ wa≤ attempted«  Iµ i⌠ i≤ impossiblσ t∩ returε t∩ thσ ì
  357. previou≤ operatinτ definition¼ aε uni⌠ attentioε conditioε shal∞ bσ generateΣ ì
  358. b∙ thσ target«  
  359.  
  360. .lm 3
  361. ááIMPLEMENTOR╙ NOTE║  Thσ presen⌠ operatinτ definitioε oµ thσ targe⌠ ma∙ ì
  362. ááalway≤ bσ interrogateΣ througΦ thσ INQUIR┘ command«  Wheε aε SCS╔-▓ targe⌠ ì
  363. ááha≤ it≤ operatinτ definitioε changeΣ t∩ CC╙ o≥ SCS╔-1¼ certaiε change≤ arσ ì
  364. ááneedeΣ t∩ promotσ compatibilit∙ witΦ prσ-existinτ SCS╔-▒ initiators«  Thσ ì
  365. áárecommendeΣ change≤ arσ a≤ follows:
  366. áá(1⌐ Thσ targe⌠ shoulΣ no⌠ initiatσ selection≤ t∩ othe≥ SCS╔ device≤ t∩ ì
  367. áádeterminσ iµ an∙ initiator≤ suppor⌠ AEN«  Thσ targe⌠ shoulΣ assumσ tha⌠ nonσ ì
  368. ááarσ capablσ oµ receivinτ AE╬ anΣ no⌠ issuσ aε AEN.
  369. áá(2⌐ Thσ targe⌠ shoulΣ no⌠ generatσ extendeΣ contigen⌠ allegiancσ condition≤ ì
  370. ááb∙ issuinτ aε INITIAT┼ RECOVER┘ message.
  371. áá(3⌐ Iµ ß REQUES╘ SENS┼ commanΣ witΦ aε allocatioε lengtΦ oµ zer∩ i≤ ì
  372. ááreceived¼ thσ targe⌠ shoulΣ returε fou≥ byte≤ oµ sensσ data.
  373. áá(4⌐ Iµ aε INQUIR┘ commanΣ i≤ received¼ thσ returneΣ datß shoulΣ havσ ì
  374. ááappropriatσ value≤ iε thσ ANS╔ versioε anΣ responsσ datß forma⌠ fields«  Thσ ì
  375. ááfeature≤ supporteΣ bit≤ shoulΣ bσ zero.
  376. áá(5⌐ ┴ changσ iε thσ operatinτ definitioε ma∙ changσ thσ vendo≥ identifier¼ ì
  377. ááthσ devicσ type¼ thσ devicσ model¼ thσ SCS╔ implementatioε level¼ thσ ì
  378. áácommanΣ set¼ anΣ an∙ othe≥ operatinτ characteristics«  
  379. .lm1
  380.  
  381. ááAfte≥ ß powe≥-oε conditioε o≥ ß harΣ RESE╘ condition¼ thσ targe⌠ shal∞ se⌠ ì
  382. it≤ initia∞ operatinτ definitioε t∩ thσ las⌠ saveΣ value¼ iµ savinτ i≤ ì
  383. implemented¼ o≥ it≤ defaul⌠ value¼ iµ savinτ i≤ no⌠ implemented.
  384.  
  385. .cp 35è.aw 0
  386. .pm 0
  387. 7.2.2. COMPARE Command
  388.  
  389.  
  390.                          Table 7-4: COMPARE Command
  391.  
  392. ==============================================================================
  393.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  394. Byte |        |        |        |        |        |        |        |        |
  395. ==============================================================================
  396.  0   |                           Operation Code (39h)                        |
  397. -----|-----------------------------------------------------------------------|
  398.  1   | Logical Unit Number      |              Reserved             |  Pad   |
  399. -----|-----------------------------------------------------------------------|
  400.  2   |                           Reserved                                    |
  401. -----|-----------------------------------------------------------------------|
  402.  3   | (MSB)                                                                 |
  403. - - -|- -                        Parameter List Length                    - -|
  404.  5   |                                                                 (LSB) |
  405. -----|-----------------------------------------------------------------------|
  406.  6   |                                                                       |
  407. - - -|- -                        Reserved                                 - -|
  408.  8   |                                                                       |
  409. -----|-----------------------------------------------------------------------|
  410.  9   |                           Control                                     |
  411. ==============================================================================
  412. .aw 1
  413. .pm 3
  414.  
  415.  
  416. ááThσ COMPAR┼ commanΣ (Tablσ ╖-4⌐ provide≤ thσ mean≤ t∩ comparσ datß froφ onσ ì
  417. logica∞ uni⌠ witΦ anothe≥ o≥ thσ samσ logica∞ uni⌠ iε ß manne≥ simila≥ t∩ thσ ì
  418. COP┘ command« 
  419.  
  420. ááThi≤ commanΣ function≤ iε thσ samσ manne≥ a≤ thσ COP┘ command¼ excep⌠ tha⌠ ì
  421. thσ datß froφ thσ sourcσ i≤ compareΣ oε ß bytσ-b∙-bytσ basi≤ witΦ thσ datß ì
  422. froφ thσ destination«  Thσ paramete≥ lis⌠ transferreΣ t∩ thσ targe⌠ i≤ thσ ì
  423. samσ a≤ fo≥ thσ COP┘ command«  Thi≤ paramete≥ lis⌠ contain≤ thσ informatioε t∩ ì
  424. identif∙ thσ logica∞ unit≤ involveΣ iε thσ comparisoε anΣ thσ lengtΦ oµ thσ ì
  425. comparison«  (Seσ 7.2.│ fo≥ additiona∞ informatioε abou⌠ thσ COP┘ command.)
  426.  
  427. ááIµ thσ comparisoε i≤ unsuccessful¼ thσ commanΣ shal∞ bσ terminateΣ witΦ ì
  428. CHEC╦ CONDITIO╬ statu≤ anΣ thσ sensσ ke∙ shal∞ bσ se⌠ t∩ MISCOMPARE«  Thσ ì
  429. remaininτ field≤ iε thσ sensσ datß shal∞ bσ se⌠ a≤ documenteΣ iε thσ COP┘ ì
  430. command.
  431.  
  432. .cp 35è.aw off
  433. .pm 0
  434. 7.2.3. COPY Command
  435.  
  436.  
  437.                            Table 7-5: COPY Command
  438.  
  439. ==============================================================================
  440.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  441. Byte |        |        |        |        |        |        |        |        |
  442. ==============================================================================
  443.  0   |                           Operation Code (18h)                        |
  444. -----|-----------------------------------------------------------------------|
  445.  1   | Logical Unit Number      |              Reserved             |  Pad   |
  446. -----|-----------------------------------------------------------------------|
  447.  2   | (MSB)                                                                 |
  448. - - -|- -                        Parameter List Length                    - -|
  449.  4   |                                                                 (LSB) |
  450. -----|-----------------------------------------------------------------------|
  451.  5   |                           Control                                     |
  452. ==============================================================================
  453. .aw on
  454. .pm 3
  455.  
  456.  
  457. ááThσ COP┘ commanΣ (Tablσ ╖-5⌐ provide≤ ß mean≤ t∩ cop∙ datß froφ onσ logica∞ ì
  458. uni⌠ t∩ anothe≥ o≥ thσ samσ logica∞ unit«  Thσ logica∞ uni⌠ tha⌠ receive≤ anΣ ì
  459. perform≤ thσ COP┘ commanΣ i≤ calleΣ thσ cop∙ manager«  Thσ cop∙ manage≥ i≤ ì
  460. responsiblσ fo≥ copyinτ datß froφ ß logica∞ uni⌠ (sourcσ device⌐ t∩ ß logica∞ ì
  461. uni⌠ (destinatioε device)«  Thesσ logica∞ unit≤ ma∙ residσ oε differen⌠ SCS╔ ì
  462. device≤ o≥ thσ samσ SCS╔ devicσ (iε fac⌠ al∞ threσ ma∙ bσ thσ samσ logica∞ ì
  463. unit)«  Somσ SCS╔ device≤ tha⌠ implemen⌠ thi≤ commanΣ ma∙ no⌠ suppor⌠ copie≤ ì
  464. t∩ o≥ froφ anothe≥ SCS╔ device¼ o≥ ma∙ no⌠ suppor⌠ thirΣ part∙ copie≤ (i.e.¼ ì
  465. botΦ thσ sourcσ anΣ thσ destinatioε logica∞ unit≤ residσ oε othe≥ SCS╔ ì
  466. devices).
  467.  
  468. ááThσ paΣ bi⌠ (7.2.3.7⌐ i≤ useΣ iε conjunctioε witΦ thσ Ca⌠ bi⌠ (7.2.3.7⌐ iε ì
  469. thσ segmen⌠ descriptor≤ t∩ definσ wha⌠ actioε shoulΣ bσ takeε wheε ß segmen⌠ ì
  470. oµ thσ cop∙ doe≤ no⌠ fi⌠ exactl∙ int∩ aε intege≥ numbe≥ oµ destinatioε blocks« 
  471. ááThσ paramete≥ lis⌠ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ ì
  472. parameter≤ tha⌠ shal∞ bσ sen⌠ durinτ thσ DAT┴ OU╘ phasσ oµ thσ command«  ┴ ì
  473. paramete≥ lis⌠ lengtΦ oµ zer∩ indicate≤ tha⌠ n∩ datß shal∞ bσ transferred« ì
  474. Thi≤ conditioε shal∞ no⌠ bσ considereΣ a≤ aε error.
  475.  
  476. ááThσ COP┘ paramete≥ lis⌠ (Tablσ ╖-6⌐ begin≤ witΦ ß fou≥-bytσ heade≥ tha⌠ ì
  477. contain≤ thσ COP┘ functioε codσ anΣ priority«  Followinτ thσ heade≥ i≤ onσ o≥ ì
  478. morσ segmen⌠ descriptors« 
  479.  
  480. .cp 30è.aw off
  481. .pm 0
  482.                        Table 7-6: COPY Parameter List
  483.  
  484. ==============================================================================
  485.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  486. Byte |        |        |        |        |        |        |        |        |
  487. ==============================================================================
  488.  0   |         COPY Function Code                 |         Priority         |
  489. -----|-----------------------------------------------------------------------|
  490.  1   |                           Vendor Specific                             |
  491. -----|-----------------------------------------------------------------------|
  492.  2   |                           Reserved                                    |
  493. -----|-----------------------------------------------------------------------|
  494.  3   |                           Reserved                                    |
  495. ==============================================================================
  496.      |                         Segment Descriptor(s)                         |
  497. ==============================================================================
  498.  0 - |                           Segment Descriptor 0                        |
  499.  xx  |                     (See specific table for length.)                  |
  500. -----|-----------------------------------------------------------------------|
  501.      |                                 .                                     |
  502.      |                                 .                                     |
  503.      |                                 .                                     |
  504. -----|-----------------------------------------------------------------------|
  505.  0 - |                           Segment Descriptor n                        |
  506.  xx  |                     (See specific table for length.)                  |
  507. ==============================================================================
  508. .aw on
  509. .pm 3
  510.  
  511.  
  512. ááThσ COP┘ functioε codσ fielΣ define≤ ß specifiπ forma⌠ fo≥ thσ segmen⌠ ì
  513. descriptors«  Thσ COP┘ functioε code≤ arσ defineΣ iε Tablσ ╖-7«  ┴ targe⌠ neeΣ ì
  514. no⌠ suppor⌠ al∞ functioε code≤ fo≥ it≤ devicσ type.
  515.  
  516. ááThσ priorit∙ fielΣ oµ thσ COP┘ paramete≥ lis⌠ establishe≤ thσ relativσ ì
  517. priorit∙ oµ thi≤ COP┘ commanΣ t∩ othe≥ command≤ beinτ executeΣ b∙ thσ samσ ì
  518. target«  Al∞ othe≥ command≤ arσ assumeΣ t∩ havσ ß priorit∙ oµ 1«  Priority░ ì
  519. i≤ thσ highes⌠ priorit∙ witΦ increasinτ value≤ indicatinτ lowe≥ priorities.
  520.  
  521. ááThσ segmen⌠ descripto≥ format≤ arσ determineΣ b∙ thσ COP┘ functioε code«  ì
  522. Thσ segmen⌠ descripto≥ forma⌠ useΣ fo≥ blocδ device≤ (i.e.¼ writσ-once¼ C─-ì
  523. ROM¼ optica∞-memory¼ anΣ direc⌠-acces≤ devices⌐ shal∞ bσ thσ same«  Thσ ì
  524. segmen⌠ descripto≥ forma⌠ useΣ fo≥ streaφ device≤ (i.e.¼ printer¼ processor¼ ì
  525. communications¼ anΣ sequentia∞-acces≤ devices)¼ shal∞ bσ thσ same«  Thu≤ ß ì
  526. cop∙ operatioε froφ ß writσ-oncσ devicσ t∩ ß printe≥ devicσ use≤ thσ samσ ì
  527. segmen⌠ descripto≥ forma⌠ a≤ ß cop∙ operatioε froφ ß direc⌠-acces≤ devicσ t∩ ß ì
  528. sequentia∞-acces≤ devicσ (seσ Tablσ ╖-7)«  Thσ segmen⌠ descripto≥ format≤ arσ ì
  529. describeΣ iε Table≤ ╖-╕ througΦ ╖-11«  ┴ maximuφ oµ 25╢ segmen⌠ descriptor≤ ì
  530. arσ permitted«  Thσ segmen⌠ descriptor≤ arσ identifieΣ b∙ ascendinτ number≤ ì
  531. beginninτ witΦ zero.
  532.  
  533. .cp18è.aw off
  534. .pm 0
  535.                        Table 7-7: COPY Function Codes
  536.  
  537. ==============================================================================
  538.        Peripheral Device Type                   COPY      Segmen⌠             
  539.        ----------------------                 Function   Descriptor           
  540. Source                  Destination             Code       Table    Comment≤ 
  541. ------------------------------------------------------------------------------
  542. Blocδ Devices           Streaφ Device≤            0         7-8               
  543. (Devicσ type≤ 0,4,5,7)  (Devicσ type≤ 1,2,3,9)                                
  544. Streaφ Device≤          Blocδ Devices             1         7-8     (Notσ 3⌐  
  545. (Devicσ type≤ 1,3,9)    (Devicσ type≤ 0,4,5,7)                                
  546. Blocδ Devices           Blocδ Device≤             2         7-9     (Notσ 3⌐  
  547. (Devicσ type≤ 0,4,5,7⌐  (Devicσ type≤ 0,4,5,7)                                
  548. Streaφ Device≤          Streaφ Device≤            3         7-10              
  549. (Devicσ type≤ 1,3,9)    (Devicσ type≤ 1,2,3,9)                                
  550. Sequential-Access       Sequential-Access         4         7-11    Image Copy
  551. (Devicσ type 1)         (Devicσ type 1)                                       
  552. ==============================================================================
  553. .aw on
  554. .pm 3
  555.  
  556. .lm 3
  557. .pm 3
  558. ááNOTES:
  559. áá(1⌐ COP┘ functioε code≤ 05Φ ¡ 0FΦ arσ reserved.
  560. áá(2⌐ COP┘ functioε code≤ 10Φ ¡ 1FΦ arσ vendo≥ specific.
  561. áá(3⌐ Wheε usinτ thσ COMPAR┼ commanΣ thσ destinatioε blocδ devicσ ma∙ bσ ß C─-ì
  562. ááRO═ devicσ o≥ aε optica∞-memor∙ devicσ tha⌠ use≤ reaΣ-onl∙ media« 
  563. .lm 1
  564. .pm 3
  565.  
  566. .cp 10
  567. .aw off
  568. .pm 0
  569. 7.2.3.1. Errors Detected by the Managing SCSI Device
  570. .pm 3
  571. .aw on
  572. ááTw∩ classe≤ oµ exceptioε condition≤ ma∙ occu≥ durinτ executioε oµ ß COP┘ ì
  573. command«  Thσ firs⌠ clas≤ consist≤ oµ thosσ exceptioε condition≤ detecteΣ b∙ ì
  574. thσ SCS╔ devicσ tha⌠ receiveΣ thσ COP┘ commanΣ anΣ i≤ managinτ thσ executioε ì
  575. oµ thσ command«  Thesσ condition≤ includσ parit∙ error≤ whilσ transferrinτ thσ ì
  576. COP┘ commanΣ anΣ statu≤ byte¼ invaliΣ parameter≤ iε thσ COP┘ command¼ invaliΣ ì
  577. segmen⌠ descriptors¼ anΣ inabilit∙ oµ thσ SCS╔ devicσ controllinτ thσ COP┘ ì
  578. function≤ t∩ continuσ operating«  Iε thσ even⌠ oµ sucΦ aε exceptioε condition¼ ì
  579. thσ SCS╔ devicσ managinτ thσ COP┘ shall:
  580. áá(1⌐ Terminatσ thσ COP┘ commanΣ witΦ CHEC╦ CONDITIO╬ status.
  581. áá(2⌐ Thσ valiΣ bi⌠ iε thσ sensσ datß shal∞ bσ se⌠ t∩ one«  Thσ segmen⌠ numbe≥ ì
  582. shal∞ contaiε thσ numbe≥ oµ thσ segmen⌠ descripto≥ beinτ processeΣ a⌠ thσ timσ ì
  583. thσ exceptioε conditioε i≤ detected«  Thσ sensσ ke∙ shal∞ contaiε thσ sensσ ì
  584. ke∙ codσ describinτ thσ exceptioε conditioε (i.e.¼ no⌠ COP┘ ABORTED)«  Thσ ì
  585. informatioε fielΣ shal∞ contaiε thσ differencσ betweeε thσ numbe≥ oµ block≤ ì
  586. fielΣ iε thσ segmen⌠ descripto≥ beinτ processeΣ a⌠ thσ timσ oµ thσ failurσ anΣ ì
  587. thσ numbe≥ oµ block≤ successfull∙ copied«  Thi≤ numbe≥ i≤ thσ residuσ oµ ì
  588. unprocesseΣ block≤ remaininτ fo≥ thσ segmen⌠ descriptor.
  589.  
  590. .cp7
  591. .aw off
  592. .pm 0
  593. 7.2.3.2. Errors Detected by a Target
  594. .pm 3
  595. .aw on
  596. ááThσ seconΣ clas≤ oµ error≤ consist≤ oµ exceptioε condition≤ detecteΣ b∙ thσ ì
  597. SCS╔ devicσ transferrinτ datß a⌠ thσ reques⌠ oµ thσ SCS╔ devicσ managinτ thσ ì
  598. transfer«  Thσ SCS╔ devicσ managinτ thσ COP┘ commanΣ detect≤ exceptioε ì
  599. condition≤ b∙ receivinτ CHEC╦ CONDITIO╬ statu≤ froφ onσ oµ thσ SCS╔ device≤ i⌠ ì
  600. i≤ managing«  I⌠ theε shal∞ recove≥ thσ sensσ datß associateΣ witΦ thσ ì
  601. exceptioε condition.
  602.  
  603. .cp 4èááThσ SCS╔ devicσ managinτ thσ COP┘ commanΣ ma∙ als∩ bσ thσ sourcσ o≥ ì
  604. destinatioε SCS╔ devicσ (o≥ both)«  I⌠ shal∞ distinguisΦ betweeε ß failurσ oµ ì
  605. thσ managemen⌠ oµ thσ COP┘ anΣ ß failurσ oµ thσ datß transfe≥ beinτ requested« ì
  606. I⌠ shal∞ theε creatσ thσ appropriatσ sensσ datß internally.
  607.  
  608. .cp 10
  609. ááAfte≥ recoverinτ thσ sensσ datß associateΣ witΦ thσ detecteΣ error¼ thσ SCS╔ ì
  610. devicσ managinτ thσ COP┘ commanΣ shall:
  611. áá(1⌐ Terminatσ thσ COP┘ commanΣ witΦ CHEC╦ CONDITIO╬ status.
  612. áá(2⌐ Thσ valiΣ bi⌠ iε thσ sensσ datß shal∞ bσ se⌠ t∩ one«  Thσ segmen⌠ numbe≥ ì
  613. shal∞ contaiε thσ numbe≥ oµ thσ segmen⌠ descripto≥ beinτ processeΣ a⌠ thσ timσ ì
  614. thσ exceptioε conditioε i≤ detected«  Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ COP┘ ì
  615. ABORTED«  Thσ informatioε fielΣ shal∞ contaiε thσ differencσ betweeε thσ ì
  616. numbe≥ oµ block≤ fielΣ iε thσ segmen⌠ descripto≥ beinτ processeΣ a⌠ thσ timσ ì
  617. oµ thσ failurσ anΣ thσ numbe≥ oµ block≤ successfull∙ copied«  Thi≤ numbe≥ i≤ ì
  618. thσ residuσ oµ unprocesseΣ block≤ remaininτ fo≥ thσ segmen⌠ descriptor.
  619.  
  620. ááThσ firs⌠ bytσ oµ thσ commanΣ-specifiπ informatioε fielΣ shal∞ specif∙ thσ ì
  621. startinτ bytσ number¼ relativσ t∩ thσ firs⌠ bytσ oµ sensσ data¼ oµ aε areß ì
  622. tha⌠ contain≤ (unchanged⌐ thσ sourcσ logica∞ unit'≤ statu≤ bytσ anΣ sensσ ì
  623. data«  ┴ zer∩ valuσ indicate≤ tha⌠ n∩ statu≤ bytσ o≥ sensσ datß i≤ beinτ ì
  624. returneΣ fo≥ thσ sourcσ logica∞ unit.
  625.  
  626. ááThσ seconΣ bytσ oµ thσ commanΣ-specifiπ informatioε fielΣ shal∞ specif∙ thσ ì
  627. startinτ bytσ number¼ relativσ t∩ thσ firs⌠ bytσ oµ sensσ data¼ oµ aε areß ì
  628. tha⌠ contain≤ (unchanged⌐ thσ destinatioε logica∞ unit'≤ statu≤ bytσ anΣ sensσ ì
  629. data«  ┴ zer∩ valuσ indicate≤ tha⌠ n∩ statu≤ bytσ o≥ sensσ datß i≤ beinτ ì
  630. returneΣ fo≥ thσ destinatioε logica∞ unit.
  631.  
  632. .aw off
  633. .pm 0 
  634. 7.2.3.3. COPY Function Code 00h and 01h
  635. .pm 3
  636. .aw on
  637. ááThσ forma⌠ fo≥ thσ segmen⌠ descriptor≤ fo≥ COP┘ transfer≤ betweeε blocδ anΣ ì
  638. streaφ device≤ i≤ specifieΣ iε Tablσ ╖-8«  Thi≤ forma⌠ i≤ requireΣ fo≥ COP┘ ì
  639. functioε code≤ 00Φ o≥ 01h«  Thσ segmen⌠ descripto≥ ma∙ bσ repeateΣ u≡ t∩ 25╢ ì
  640. time≤ withiε thσ paramete≥ lis⌠ lengtΦ specifieΣ iε thσ commanΣ descripto≥ ì
  641. block.
  642.  
  643. .cp 22è.aw off
  644. .pm 0
  645.       Table 7-8: Segment Descriptor for COPY Function Codes 00h and 01h
  646.  
  647. ==============================================================================
  648.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  649. Byte |        |        |        |        |        |        |        |        |
  650. ==============================================================================
  651.  0   | Source Address           |Reserved|  Cat   |     Source LUN           |
  652. -----|-----------------------------------------------------------------------|
  653.  1   | Destination Address      |   Reserved      |     Destination LUN      |
  654. -----|-----------------------------------------------------------------------|
  655.  2   | (MSB)                                                                 |
  656. -----|---                        Stream Device Blocδ Length               ---|
  657.  3   |                                                                 (LSB) |
  658. -----|-----------------------------------------------------------------------|
  659.  4   | (MSB)                                                                 |
  660. - - -|- -                        Block Device Number of Blocks            - -|
  661.  7   |                                                                 (LSB) |
  662. -----|-----------------------------------------------------------------------|
  663.  8   | (MSB)                                                                 |
  664. - - -|- -                        Block Device Logical Block Address       - -|
  665. 11   |                                                                 (LSB) |
  666. ==============================================================================
  667. .aw on
  668. .pm 3
  669.  
  670.  
  671. .cp 10
  672. ááThσ sourcσ addres≤ anΣ sourcσ LU╬ field≤ specif∙ thσ SCS╔ bu≤ I─ anΣ logica∞ ì
  673. uni⌠ oµ thσ devicσ t∩ cop∙ thσ datß froφ fo≥ thi≤ segmen⌠ oµ thσ COP┘ command« ì
  674. Thσ destinatioε addres≤ anΣ destinatioε LU╬ field≤ specif∙ thσ SCS╔ bu≤ I─ anΣ ì
  675. logica∞ uni⌠ t∩ cop∙ thσ datß t∩ fo≥ thi≤ segmen⌠ oµ thσ COP┘ command«  Somσ ì
  676. SCS╔ device≤ ma∙ no⌠ suppor⌠ thirΣ-part∙ COP┘ iε whicΦ thσ copyinτ SCS╔ devicσ ì
  677. i≤ no⌠ thσ sourcσ o≥ destinatioε device«  Somσ SCS╔ device≤ onl∙ suppor⌠ COP┘ ì
  678. withiε thσ SCS╔ devicσ anΣ no⌠ t∩ othe≥ SCS╔ devices«  Iµ aε unsupporteΣ COP┘ ì
  679. operatioε i≤ requested¼ thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ CONDITIO╬ ì
  680. statu≤ anΣ thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ ì
  681. sensσ codσ oµ INVALI─ FIEL─ I╬ PARAMETE╥ LIS╘ (seσ 7.2.3.1).
  682.  
  683. áá┴ catenatσ (Cat⌐ bi⌠ (optional⌐ oµ onσ indicate≤ tha⌠ thσ COP┘ manage≥ shal∞ ì
  684. catenatσ thσ las⌠ sourcσ blocδ oµ ß segmen⌠ witΦ thσ firs⌠ sourcσ blocδ oµ thσ ì
  685. nex⌠ segmen⌠ iµ thσ las⌠ sourcσ blocδ doe≤ no⌠ enΣ exactl∙ a⌠ thσ enΣ oµ thσ ì
  686. destinatioε block«  Thσ definitioε oµ ß ca⌠ bi⌠ oµ zer∩ depend≤ oε thσ settinτ ì
  687. oµ thσ paΣ bi⌠ iε thσ commanΣ descripto≥ blocδ  (seσ 7.2.3.7).
  688.  
  689. ááThσ streaφ devicσ blocδ-lengtΦ fielΣ specifie≤ thσ blocδ lengtΦ t∩ bσ useΣ ì
  690. oε thσ streaφ devicσ logica∞ uni⌠ durinτ thi≤ segmen⌠ oµ thσ COP┘ command«  Iµ ì
  691. thσ SCS╔ devicσ managinτ thσ COP┘ know≤ thi≤ blocδ lengtΦ i≤ no⌠ supported¼ ì
  692. thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ thσ sensσ ke∙ ì
  693. shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ sensσ codσ oµ INVALI─ FIEL─ ì
  694. I╬ PARAMETE╥ LIS╘ « Iµ thσ blocδ lengtΦ i≤ founΣ t∩ bσ invaliΣ whilσ executinτ ì
  695. ß reaΣ o≥ writσ operatioε t∩ thσ streaφ device¼ thσ commanΣ shal∞ bσ ì
  696. terminateΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ thσ sensσ ke∙ shal∞ bσ se⌠ t∩ COP┘ ì
  697. ABORTE─ (seσ 7.2.3.2).
  698.  
  699. .cp5èááThσ blocδ devicσ numbe≥ oµ block≤ fielΣ specifie≤ thσ numbe≥ oµ block≤ iε ì
  700. thσ curren⌠ segmen⌠ t∩ bσ copied«  ┴ valuσ oµ zer∩ indicate≤ tha⌠ n∩ block≤ ì
  701. shal∞ bσ transferreΣ iε thi≤ segment.
  702.  
  703. ááThσ blocδ devicσ logica∞ blocδ addres≤ fielΣ specifie≤ thσ startinτ logica∞ ì
  704. blocδ addres≤ oε thσ logica∞ uni⌠ fo≥ thi≤ segment.
  705.  
  706. .cp 10
  707. .aw off
  708. .pm 0
  709. 7.2.3.4. COPY Function Code 02h
  710. .pm 3
  711. .aw on
  712. ááThσ forma⌠ fo≥ thσ segmen⌠ descriptor≤ fo≥ COP┘ transfer≤ amonτ blocδ ì
  713. device≤ i≤ specifieΣ iε Tablσ ╖-9«  Thi≤ forma⌠ i≤ requireΣ fo≥ COP┘ functioε ì
  714. codσ 02h«  Thσ segmen⌠ descripto≥ ma∙ bσ repeateΣ u≡ t∩ 25╢ time≤ withiε thσ ì
  715. paramete≥ lis⌠ lengtΦ specifieΣ iε thσ commanΣ descripto≥ block.
  716.  
  717. .cp 27
  718. .aw off
  719. .pm 0
  720.           Table 7-9: Segment Descriptor for COPY Function Code 02h
  721.  
  722. ==============================================================================
  723.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  724. Byte |        |        |        |        |        |        |        |        |
  725. ==============================================================================
  726.  0   | Source Address           |   DC   |  Cat   | Source LUN               |
  727. -----|-----------------------------------------------------------------------|
  728.  1   | Destination Address      |   Reserved      | Destination LUN          |
  729. -----|-----------------------------------------------------------------------|
  730.  2   |                              Reserved                                 |
  731. -----|-----------------------------------------------------------------------|
  732.  3   |                              Reserved                                 |
  733. -----|-----------------------------------------------------------------------|
  734.  4   | (MSB)                                                                 |
  735. - - -|- -                Number of Blocks                                 - -|
  736.  7   |                                                                 (LSB) |
  737. -----|-----------------------------------------------------------------------|
  738.  8   | (MSB)                                                                 |
  739. - - -|- -                Source Logical Block Address                     - -|
  740. 11   |                                                                 (LSB) |
  741. -----|-----------------------------------------------------------------------|
  742. 12   | (MSB)                                                                 |
  743. - - -|- -                Destination Logical Block Address                - -|
  744. 15   |                                                                 (LSB) |
  745. ==============================================================================
  746. .aw on
  747. .pm 3
  748.  
  749.  
  750. ááSeσ 7.2.3.│ fo≥ definition≤ oµ thσ sourcσ address¼ thσ sourcσ LUN¼ thσ ì
  751. destinatioε address¼ thσ destinatioε LUN¼ anΣ CA╘ fields.
  752.  
  753. .cp 3
  754. áá┴ destinatioε coun⌠ (DC⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ numbe≥ oµ block≤ ì
  755. fielΣ refer≤ t∩ thσ sourcσ logica∞ unit«  ┴ D├ bi⌠ oµ onσ indicate≤ tha⌠ thσ ì
  756. numbe≥ oµ block≤ fielΣ refer≤ t∩ thσ destinatioε logica∞ unit« 
  757.  
  758. .cp 3
  759. ááThσ numbe≥ oµ block≤ fielΣ specifie≤ thσ numbe≥ oµ block≤ t∩ bσ transferreΣ ì
  760. t∩ o≥ froφ (dependinτ oε thσ D├ bit⌐ thσ blocδ devicσ durinτ thi≤ segment«  ┴ ì
  761. valuσ oµ zer∩ indicate≤ tha⌠ n∩ block≤ shal∞ bσ transferred.
  762.  
  763. ááThσ sourcσ logica∞ blocδ addres≤ fielΣ specifie≤ thσ startinτ logica∞ blocδ ì
  764. addres≤ oε thσ sourcσ blocδ device« 
  765. è.cp2
  766. ááThσ destinatioε logica∞ blocδ addres≤ fielΣ specifie≤ thσ startinτ logica∞ ì
  767. blocδ addres≤ oε thσ destinatioε blocδ device.
  768.  
  769. .aw off
  770. .pm 0
  771. 7.2.3.5. COPY Function Code 03h
  772. .aw on
  773. .pm 3
  774. ááThσ forma⌠ fo≥ thσ segmen⌠ descriptor≤ fo≥ COP┘ transfer≤ amonτ streaφ ì
  775. device≤ i≤ specifieΣ b∙ Tablσ ╖-10«  Thi≤ forma⌠ i≤ requireΣ fo≥ COP┘ functioε ì
  776. codσ 03h«  Thσ segmen⌠ descripto≥ ma∙ bσ repeateΣ u≡ t∩ 25╢ time≤ withiε thσ ì
  777. paramete≥ lis⌠ lengtΦ specifieΣ iε thσ commanΣ descripto≥ block.
  778.  
  779. .cp 27
  780. .aw off
  781. .pm 0
  782.           Table 7-10: Segment Descriptor for COPY Function Code 03h
  783.  
  784. ==============================================================================
  785.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  786. Byte |        |        |        |        |        |        |        |        |
  787. ==============================================================================
  788.  0   | Source Address           |   DC   |  Cat   | Source LUN               |
  789. -----|-----------------------------------------------------------------------|
  790.  1   | Destination Address      |   Reserved      | Destination LUN          |
  791. -----|-----------------------------------------------------------------------|
  792.  2   |                              Reserved                                 |
  793. -----|-----------------------------------------------------------------------|
  794.  3   |                              Reserved                                 |
  795. -----|-----------------------------------------------------------------------|
  796.  4   | (MSB)                                                                 |
  797. -----|---                        Source Block Length                      ---|
  798.  5   |                                                                 (LSB) |
  799. -----|-----------------------------------------------------------------------|
  800.  6   | (MSB)                                                                 |
  801. -----|---                        Destination Block Length                 ---|
  802.  7   |                                                                 (LSB) |
  803. -----|-----------------------------------------------------------------------|
  804.  8   | (MSB)                                                                 |
  805. - - -|- -                        Number of Blocks                         - -|
  806. 11   |                                                                 (LSB) |
  807. ==============================================================================
  808. .aw on
  809. .pm 3
  810.  
  811.  
  812. ááSeσ 7.2.3.│ fo≥ definition≤ oµ thσ sourcσ address¼ thσ sourcσ LUN¼ thσ ì
  813. destinatioε address¼ thσ destinatioε LUN¼ anΣ CA╘ fields.
  814.  
  815. áá┴ destinatioε coun⌠ (DC⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ numbe≥ oµ block≤ ì
  816. fielΣ refer≤ t∩ thσ sourcσ logica∞ unit«  ┴ D├ bi⌠ oµ onσ indicate≤ tha⌠ thσ ì
  817. numbe≥ oµ block≤ fielΣ refer≤ t∩ thσ destinatioε logica∞ unit« 
  818.  
  819. ááThσ sourcσ blocδ lengtΦ fielΣ specifie≤ thσ blocδ-lengtΦ oµ thσ sourcσ ì
  820. devicσ fo≥ thi≤ segmen⌠ oµ thσ COPY«  ┴ zer∩ iε thi≤ fielΣ indicate≤ variablσ ì
  821. blocδ-length«  Fo≥ noε-zer∩ values¼ thi≤ fielΣ shal∞ matcΦ thσ logica∞ unit'≤ ì
  822. actua∞ blocδ-length« 
  823.  
  824. ááIµ blocδ-lengtΦ mismatche≤ arσ detecteΣ prio≥ t∩ thσ beginninτ oµ thσ reaΣ ì
  825. operatioε b∙ thσ SCS╔ devicσ managinτ thσ COPY¼ thσ commanΣ shal∞ bσ ì
  826. terminateΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ ì
  827. REQUES╘ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
  828. PARAMETE╥ LIS╘ (seσ 7.2.3.1)« 
  829. è.cp 4
  830. ááIµ thσ mismatche≤ arσ detecteΣ durinτ thσ reaΣ operatioε b∙ thσ COP┘ ì
  831. manager¼ thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ ì
  832. sensσ ke∙ shal∞ bσ se⌠ t∩ COP┘ ABORTE─ (seσ 7.2.3.2)«  anΣ thσ additiona∞ ì
  833. sensσ codσ shal∞ bσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
  834.  
  835. .cp 4
  836. ááThσ destinatioε blocδ-lengtΦ fielΣ specifie≤ thσ blocδ lengtΦ t∩ bσ useΣ oε ì
  837. thσ destinatioε logica∞ uni⌠ durinτ thσ COPY«  Destinatioε blocδ lengtΦ ì
  838. mismatche≤ arσ handleΣ iε aε analogou≤ manne≥ a≤ sourcσ blocδ lengtΦ ì
  839. mismatches.
  840.  
  841. .cp 3
  842. ááThσ numbe≥ oµ block≤ fielΣ specifie≤ thσ numbe≥ oµ block≤ t∩ bσ transferreΣ ì
  843. t∩ o≥ froφ (dependinτ oε thσ D├ bit⌐ thσ devicσ durinτ thi≤ segment«  ┴ valuσ ì
  844. oµ zer∩ indicate≤ tha⌠ n∩ block≤ shal∞ bσ transferred.
  845.  
  846. .aw off
  847. .pm 0
  848. 7.2.3.6. COPY Function Code 04h
  849. .aw on
  850. .pm 3
  851. ááThσ forma⌠ fo≥ thσ segmen⌠ descriptor≤ fo≥ imagσ COP┘ transfer≤ betweeε ì
  852. sequentia∞-acces≤ device≤ i≤ specifieΣ iε Tablσ ╖-11«  Thi≤ forma⌠ i≤ requireΣ ì
  853. fo≥ COP┘ functioε codσ 04h«  Thσ segmen⌠ descripto≥ ma∙ bσ repeateΣ u≡ t∩ 25╢ ì
  854. time≤ withiε thσ paramete≥ lis⌠ lengtΦ specifieΣ iε thσ commanΣ descripto≥ ì
  855. block.
  856.  
  857. .cp 32
  858. .aw off
  859. .pm 0
  860.           Table 7-11: Segment Descriptor for COPY Function Code 04h
  861.  
  862. ==============================================================================
  863.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  864. Byte |        |        |        |        |        |        |        |        |
  865. ==============================================================================
  866.  0   | Source Address           |   Reserved      | Source LUN               |
  867. -----|-----------------------------------------------------------------------|
  868.  1   | Destination Address      |   Reserved      | Destination LUN          |
  869. -----|-----------------------------------------------------------------------|
  870.  2   |                              Count                                    |
  871. -----|-----------------------------------------------------------------------|
  872.  3   |                                                                       |
  873. - - -|- -                           Reserved                              - -|
  874.  7   |                                                                       |
  875. -----|-----------------------------------------------------------------------|
  876.  8   |                                                                       |
  877. - - -|- -                           Vendor Specific                       - -|
  878. 11   |                                                                       |
  879. ==============================================================================
  880. .aw on
  881. .pm 3
  882.  
  883.  
  884. ááSeσ 7.2.3.│ fo≥ definition≤ oµ thσ sourcσ address¼ thσ sourcσ LUN¼ thσ ì
  885. destinatioε address¼ thσ destinatioε LUN¼ anΣ CA╘ fields.
  886.  
  887. .cp 11èááThσ imagσ modσ COP┘ commanΣ copie≤ aε exac⌠ imagσ oµ thσ sourcσ devicσ ì
  888. mediuφ t∩ thσ destinatioε devicσ medium¼ beginninτ a⌠ thei≥ curren⌠ positions« ì
  889. Thσ cop∙ functioε terminate≤ wheε thσ sourcσ device:
  890. áá(1⌐ encounter≤ aε enΣ-oµ-partitioε a≤ defineΣ b∙ thσ sourcσ device
  891. áá(2⌐ encounter≤ aε enΣ-oµ-datß a≤ defineΣ b∙ thσ sourcσ devicσ (i.e.¼ BLAN╦ ì
  892. CHEC╦ sensσ key)
  893. áá(3⌐ ha≤ copieΣ thσ numbe≥ oµ consecutivσ filemark≤ specifieΣ iε thσ coun⌠ ì
  894. fielΣ froφ thσ sourcσ devicσ t∩ thσ destinatioε device
  895. áá(4⌐ ha≤ copieΣ thσ numbe≥ oµ consecutivσ setmark≤ specifieΣ iε thσ coun⌠ ì
  896. fielΣ froφ thσ sourcσ devicσ t∩ thσ destinatioε device¼ iµ thσ RSmδ bi⌠ iε thσ ì
  897. devicσ configuratioε pagσ (seσ 9.3.3.1⌐ i≤ one« 
  898.  
  899. .cp 6
  900. áá┴ coun⌠ fielΣ oµ zer∩ indicate≤ tha⌠ thσ COP┘ commanΣ shal∞ no⌠ terminatσ ì
  901. duσ t∩ an∙ numbe≥ oµ consecutivσ filemark≤ o≥ setmarks«  Othe≥ erro≥ o≥ ì
  902. exceptioε condition≤ (e.g.¼ earl∙-warninτ enΣ-oµ-partitioε oε thσ destinatioε ì
  903. device⌐ ma∙ causσ thσ COP┘ commanΣ t∩ terminatσ prio≥ t∩ completion«  Iε sucΦ ì
  904. cases¼ i⌠ i≤ no⌠ possiblσ t∩ calculatσ ß residue¼ s∩ thσ informatioε fielΣ iε ì
  905. thσ sensσ datß shal∞ bσ se⌠ t∩ zero.
  906.  
  907. .cp 7
  908. .aw off
  909. .pm 0
  910. 7.2.3.7. Copie≤ WitΦ Unequa∞ Blocδ Lengths
  911. .aw on
  912. .pm 3
  913. ááWheε copyinτ datß betweeε tw∩ device≤ witΦ unequa∞ blocδ lengths¼ i⌠ i≤ ì
  914. possiblσ fo≥ thσ las⌠ sourcσ blocδ t∩ no⌠ completel∙ fil∞ thσ las⌠ destinatioε ì
  915. blocδ fo≥ onσ o≥ morσ segment≤ iε thσ COP┘ command«  Tw∩ optiona∞ bit≤ arσ ì
  916. defineΣ t∩ assis⌠ iε controllinτ thσ cop∙ manager'≤ action≤ iε thi≤ ì
  917. circumstance«  Thσ PaΣ bi⌠ (iε thσ commanΣ descripto≥ block⌐ anΣ thσ Ca⌠ bi⌠ ì
  918. (iε eacΦ applicablσ segmen⌠ descriptor⌐ arσ defineΣ iε Tablσ ╖-12.
  919.  
  920. .cp18
  921. .aw off
  922. .pm 0
  923. .cp  
  924.                     Table 7-12: Pad and Cat Bit Definition
  925.  
  926. ==============================================================================
  927.  Pad Cat   COPY Manager's Action
  928. ---- ----  -------------------------------------------------------------------
  929. .aw on
  930. .pm 3
  931. .lm 12     
  932. áá0   0    Oε inexac⌠ segments¼ i⌠ i≤ devicσ specifiπ whethe≥ thσ COP┘ manage≥ ì
  933. áááááááááááreject≤ thσ COP┘ commanΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ ILLEGA╠ ì
  934. áááááááááááREQUES╘ sensσ key¼ thσ COP┘ manage≥ write≤ o≥ accept≤ shor⌠ block≤ ì
  935. ááááááááááá(variablσ-blocδ modσ oε sequentia∞-acces≤ devices)¼ o≥ thσ COP┘ ì
  936. ááááááááááámanage≥ add≤ paΣ character≤ (00h⌐ t∩ thσ destinatioε blocδ o≥ ì
  937. ááááááááááástrip≤ paΣ character≤ froφ thσ sourcσ block.
  938.  
  939. áá1   0    Oε inexac⌠ segments¼ thσ COP┘ manage≥ shal∞ adΣ paΣ character≤ ì
  940. ááááááááááá(00h⌐ t∩ thσ destinatioε blocδ t∩ completel∙ fil∞ thσ blocδ o≥ i⌠ ì
  941. áááááááááááshal∞ stri≡ paΣ character≤ froφ thσ sourcσ block¼ alway≤ stoppinτ ì
  942. áááááááááááa⌠ thσ enΣ oµ ß completσ block.
  943.  
  944. ááX   1    Thσ COP┘ manage≥ shal∞ alway≤ writσ o≥ reaΣ completσ blocks«  Oε ì
  945. áááááááááááinexac⌠ segments¼ thσ remainde≥ oµ thσ blocδ contain≤ datß froφ thσ ì
  946. ááááááááááánex⌠ segment«  Thi≤ codσ i≤ no⌠ valiΣ iε thσ las⌠ segmen⌠ oµ thσ ì
  947. áááááááááááCOP┘ command.
  948. .pm 0
  949. .lm 1
  950. ==============================================================================
  951.  
  952.  
  953. .lm 3
  954. ááIMPLEMENTOR╙ NOTE║  Usσ oµ paΣ character≤ i≤ intendeΣ t∩ assis⌠ iε managinτ ì
  955. ááCOP┘ command≤ betweeε device≤ oµ differen⌠ blocδ length≤ wherσ partia∞-blocδ ì
  956. ááresidue≤ ma∙ occur«  Thσ initiato≥ whicΦ issueΣ thσ COP┘ commanΣ i≤ ì
  957. ááresponsiblσ fo≥ managemen⌠ oµ thesσ paΣ area≤ (i.e.¼ rememberinτ wherσ the∙ ìèááare)«  Onσ possiblσ methoΣ i≤ t∩ writσ thσ COP┘ paramete≥ lis⌠ informatioε ì
  958. áát∩ thσ destinatioε mediuφ prio≥ t∩ issuinτ thσ COP┘ commanΣ fo≥ backu≡ anΣ ì
  959. áát∩ reaΣ thi≤ informatioε prio≥ t∩ issuinτ thσ COP┘ commanΣ fo≥ restore.
  960. .lm 1
  961.  
  962. .cp 35
  963. .aw off
  964. .pm 0
  965. 7.2.4. COPY AND VERIFY Command
  966.  
  967.  
  968.                      Table 7-13: COPY AND VERIFY Command
  969.  
  970. ==============================================================================
  971.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  972. Byte |        |        |        |        |        |        |        |        |
  973. ==============================================================================
  974.  0   |                           Operation Code (3Ah)                        |
  975. -----|-----------------------------------------------------------------------|
  976.  1   | Logical Unit Number      |        Reserved          | BytChk |  Pad   |
  977. -----|-----------------------------------------------------------------------|
  978.  2   |                           Reserved                                    |
  979. -----|-----------------------------------------------------------------------|
  980.  3   | (MSB)                                                                 |
  981. - - -|- -                        Parameter List Length                    - -|
  982.  5   |                                                                 (LSB) |
  983. -----|-----------------------------------------------------------------------|
  984.  6   |                                                                       |
  985. - - -|- -                        Reserved                                 - -|
  986.  8   |                                                                       |
  987. -----|-----------------------------------------------------------------------|
  988.  9   |                           Control                                     |
  989. ==============================================================================
  990. .aw on
  991. .pm 3
  992.  
  993.  
  994. ááThσ COP┘ AN─ VERIF┘ commanΣ (Tablσ ╖-13⌐ perform≤ thσ samσ functioε a≤ thσ ì
  995. COP┘ command¼ excep⌠ tha⌠ ß verificatioε oµ thσ datß writteε t∩ thσ ì
  996. destinatioε logica∞ uni⌠ i≤ performeΣ afte≥ thσ datß i≤ written«  Thσ ì
  997. paramete≥ lis⌠ transferreΣ t∩ thσ targe⌠ i≤ thσ samσ a≤ fo≥ thσ COP┘ command« ì
  998. Thi≤ paramete≥ lis⌠ contain≤ thσ informatioε t∩ identif∙ thσ logica∞ unit≤ ì
  999. involveΣ iε thσ cop∙ anΣ thσ lengtΦ oµ thσ copy«  Seσ 7.2.│ fo≥ additiona∞ ì
  1000. informatioε abou⌠ thσ COP┘ command.
  1001.  
  1002. áá┴ bytσ checδ (BytChk⌐ bi⌠ oµ zer∩ cause≤ ß mediuφ verificatioε t∩ bσ ì
  1003. performeΣ witΦ n∩ datß comparison«  ┴ BytChδ bi⌠ oµ onσ cause≤ ß bytσ-b∙-bytσ ì
  1004. comparσ oµ datß writteε oε thσ destinatioε mediuφ anΣ thσ datß transferreΣ ì
  1005. froφ thσ sourcσ medium«  Iµ thσ comparσ i≤ unsuccessfu∞ fo≥ an∙ reason¼ thσ ì
  1006. cop∙ manage≥ shal∞ returε CHEC╦ CONDITIO╬ statu≤ witΦ thσ sensσ ke∙ se⌠ t∩ ì
  1007. MISCOMPARE«  Thσ remaininτ field≤ iε thσ sensσ datß shal∞ bσ se⌠ a≤ documenteΣ ì
  1008. iε thσ COP┘ command.
  1009.  
  1010.  
  1011. .cp 35è.aw off
  1012. .pm 0
  1013. 7.2.5. INQUIRY Command
  1014.  
  1015.  
  1016.                          Table 7-14: INQUIRY Command
  1017.  
  1018. ==============================================================================
  1019.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  1020. Byte |        |        |        |        |        |        |        |        |
  1021. ==============================================================================
  1022.  0   |                           Operation Code (12h)                        |
  1023. -----|-----------------------------------------------------------------------|
  1024.  1   | Logical Unit Number      |                  Reserved         ⁿ  EVPD  |
  1025. -----|-----------------------------------------------------------------------|
  1026.  2   |                           Pagσ Code                                   |
  1027. -----|-----------------------------------------------------------------------|
  1028.  3   |                           ReserveΣ                                    |
  1029. -----|-----------------------------------------------------------------------|
  1030.  4   |                           Allocation Length                           |
  1031. -----|-----------------------------------------------------------------------|
  1032.  5   |                           Control                                     |
  1033. ==============================================================================
  1034. .aw on
  1035. .pm 3
  1036.  
  1037.  
  1038. ááThσ INQUIR┘ commanΣ (Tablσ ╖-14⌐ request≤ tha⌠ informatioε regardinτ ì
  1039. parameter≤ oµ thσ targe⌠ anΣ it≤ attacheΣ periphera∞ device(s⌐ bσ sen⌠ t∩ thσ ì
  1040. initiator«  Aε optioε allow≤ thσ initiato≥ t∩ reques⌠ additiona∞ informatioε ì
  1041. abou⌠ thσ targe⌠ o≥ logica∞ uni⌠ (seσ 7.2.5.2).
  1042.  
  1043. .cp6
  1044. ááAε enablσ vita∞ produc⌠ datß (EVPD⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ targe⌠ ì
  1045. shal∞ returε thσ optiona∞ vita∞ produc⌠ datß specifieΣ b∙ thσ pagσ codσ field«  ì
  1046. Iµ thσ targe⌠ doe≤ no⌠ suppor⌠ vita∞ produc⌠ datß anΣ thi≤ bi⌠ i≤ se⌠ t∩ one¼ ì
  1047. thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ witΦ thσ sensσ ke∙ se⌠ t∩ ì
  1048. ILLEGA╠ REQUES╘ anΣ aε additiona∞ sensσ codσ oµ INVALI─ FIEL─ I╬ CDB.
  1049.  
  1050. .cp5
  1051. ááAε EVP─ bi⌠ oµ zer∩ specifie≤ tha⌠ thσ targe⌠ shal∞ returε thσ standarΣ ì
  1052. INQUIR┘ data«  Iµ thσ pagσ codσ fielΣ i≤ no⌠ zero¼ thσ targe⌠ shal∞ returε ì
  1053. CHEC╦ CONDITIO╬ statu≤ witΦ thσ sensσ ke∙ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ aε ì
  1054. additiona∞ sensσ codσ oµ INVALI─ FIEL─ I╬ CDB.
  1055.  
  1056. .cp 2
  1057. ááThσ pagσ codσ fielΣ specifie≤ whicΦ pagσ oµ vita∞ produc⌠ datß informatioε ì
  1058. thσ targe⌠ shal∞ returε (seσ 7.3.4).
  1059.  
  1060. .c≡ 4
  1061. ááThσ INQUIR┘ commanΣ shal∞ returε CHEC╦ CONDITIO╬ statu≤ onl∙ wheε thσ targe⌠ ì
  1062. canno⌠ returε thσ requesteΣ INQUIR┘ data« 
  1063.  
  1064. .cp 5
  1065. .lm 3
  1066. ááIMPLEMENTOR╙ NOTE║  I⌠ i≤ recommendeΣ tha⌠ thσ INQUIR┘ datß bσ returneΣ eveε ì
  1067. ááthougΦ thσ periphera∞ devicσ ma∙ no⌠ bσ read∙ fo≥ othe≥ commands.
  1068. .lm 1
  1069.  
  1070. .cp 5
  1071. ááIµ aε INQUIR┘ commanΣ i≤ receiveΣ froφ aε initiato≥ witΦ ß pendinτ uni⌠ ì
  1072. attentioε conditioε (i.e.¼ beforσ thσ targe⌠ report≤ CHEC╦ CONDITIO╬ status)¼ ì
  1073. thσ targe⌠ shal∞ perforφ thσ INQUIR┘ commanΣ anΣ shal∞ no⌠ clea≥ thσ uni⌠ ì
  1074. attentioε conditioε (seσ 6.9).
  1075.  
  1076. .cp 4è.lm 3
  1077. ááIMPLEMENTOR╙ NOTES:
  1078. áá(1⌐ Thσ INQUIR┘ commanΣ i≤ typicall∙ useΣ b∙ thσ initiato≥ afte≥ ß rese⌠ o≥ ì
  1079. áápowe≥-u≡ conditioε t∩ determinσ thσ devicσ type≤ fo≥ systeφ configuration«  ì
  1080. ááT∩ minimizσ delay≤ afte≥ ß rese⌠ o≥ powe≥-u≡ conditioε thσ standarΣ INQUIR┘ ì
  1081. áádatß shoulΣ bσ availablσ withou⌠ incurrinτ an∙ mediß acces≤ delays«  Iµ thσ ì
  1082. áátarge⌠ doe≤ storσ somσ oµ thσ INQUIR┘ datß oε thσ devicσ i⌠ ma∙ returε zero≤ ì
  1083. ááo≥ ASCI╔ space≤ (20h⌐ iε thosσ field≤ unti∞ thσ datß i≤ availablσ froφ thσ ì
  1084. áádevice.
  1085. áá(2⌐ Thσ INQUIR┘ datß ma∙ changσ a≤ thσ targe⌠ execute≤ it≤ initializatioε ì
  1086. áásequencσ o≥ iε responsσ t∩ ß CHANG┼ DEFINITIO╬ command«  Fo≥ example¼ thσ ì
  1087. áátarge⌠ ma∙ contaiε ß minimuφ commanΣ se⌠ iε it≤ noε-volatilσ memor∙ anΣ ma∙ ì
  1088. ááloaΣ it≤ fina∞ firmwarσ froφ thσ devicσ wheε i⌠ become≤ ready«  Afte≥ i⌠ ha≤ ì
  1089. ááloadeΣ thσ firmwarσ i⌠ ma∙ suppor⌠ morσ option≤ anΣ thereforσ returε ì
  1090. áádifferen⌠ supporteΣ option≤ informatioε iε thσ INQUIR┘ data.
  1091. .lm 1
  1092.  
  1093. .cp 10
  1094. .pm 0
  1095. .aw off
  1096. 7.2.5.1. Standard INQUIRY Data
  1097. .pm 3
  1098. .aw on
  1099. ááThσ standarΣ INQUIR┘ datß (Tablσ ╖-15⌐ contain≤ 3╢ requireΣ bytes¼ followeΣ ì
  1100. b∙ ß variablσ numbe≥ oµ vendo≥-specifiπ parameters«  Byte≤ 5╢ througΦ 95¼ iµ ì
  1101. returned¼ arσ reserveΣ fo≥ futurσ standardization«  
  1102.  
  1103. .cp 50èááThσ standarΣ INQUIR┘ datß forma⌠ i≤ showε iε Tablσ ╖-15.
  1104.  
  1105. .cp 48
  1106. .pm 0
  1107. .aw off
  1108.                    Table 7-15: Standard INQUIRY Data Format
  1109.  
  1110. ==============================================================================
  1111.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  1112. Byte |        |        |        |        |        |        |        |        |
  1113. ==============================================================================
  1114.  0   | Peripheral Qualifier     |           Peripheral Device Type           |
  1115. -----|-----------------------------------------------------------------------|
  1116.  1   |  RMB   |                  Device-Typσ Modifier                        |
  1117. -----|-----------------------------------------------------------------------|
  1118.  2   |   ISO Version   |       ECMA Version       |  ANSI-Approved Version   |
  1119. -----|-----------------------------------------------------------------------|
  1120.  3   |  AENC  | TrmIOP ⁿ     Reserved    |         Response Data Format      |
  1121. -----|-----------------------------------------------------------------------|
  1122.  4   |                           Additional Length (n-4)                     |
  1123. -----|-----------------------------------------------------------------------|
  1124.  5   |                           Reserved                                    |
  1125. -----|-----------------------------------------------------------------------|
  1126.  6   |                           Reserved                                    |
  1127. -----|-----------------------------------------------------------------------|
  1128.  7   | RelAdr | WBus32 | WBus16 |  Sync  | Linked |Reservσdⁿ CmdQue ⁿ SftRσ  |
  1129. -----|-+---------------------------------------------------------------------|
  1130.  8   | (MSB)                                                                 |
  1131. - - -|- -                        Vendor Identification                    - -|
  1132.  15  |                                                                 (LSB) |
  1133. -----|-+---------------------------------------------------------------------|
  1134.  16  | (MSB)                                                                 |
  1135. - - -|- -                        Product Identification                   - -|
  1136.  31  |                                                                 (LSB) |
  1137. -----|-+---------------------------------------------------------------------|
  1138.  32  | (MSB)                                                                 |
  1139. - - -|- -                        Product Revision Level                   - -|
  1140.  35  |                                                                 (LSB) |
  1141. -----|-+---------------------------------------------------------------------|
  1142.  36  |                                                                       |
  1143. - - -|- -                        Vendor Specific                          - -|
  1144.  55  |                                                                       |
  1145. -----|-+---------------------------------------------------------------------|
  1146.  56  |                                                                       |
  1147. - - -|- -                        Reserved                                 - -|
  1148.  95  |                                                                       |
  1149. ============================================================================== ì
  1150.      |                       Vendor-Specific Parameters                      |
  1151. ==============================================================================
  1152. 96 to|                           Vendor-Specific                             |
  1153.  n   |                           Parameter Bytes                             |
  1154. ==============================================================================
  1155. .aw1
  1156. .pm3
  1157.  
  1158.  
  1159. .cp6èááThσ periphera∞ qualifie≥ anΣ periphera∞ devicσ-typσ field≤ identif∙ thσ ì
  1160. devicσ currentl∙ connecteΣ t∩ thσ logica∞ unit«  Iµ thσ targe⌠ i≤ no⌠ capablσ ì
  1161. oµ supportinτ ß devicσ oε thi≤ logica∞ unit¼ thi≤ fielΣ shal∞ bσ se⌠ t∩ 7FΦ ì
  1162. (periphera∞ qualifie≥ se⌠ t∩ 011Γ anΣ periphera∞ devicσ typσ se⌠ t∩ 1Fh)«  Thσ ì
  1163. periphera∞ qualifie≥ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ devicσ typσ ì
  1164. i≤ defineΣ iε Tablσ ╖-17.
  1165.  
  1166. .cp 30
  1167. .aw off
  1168. .pm 0
  1169.                        Table 7-16: Peripheral Qualifier
  1170.  
  1171. ==============================================================================
  1172. Qualifier     Description
  1173. --------¡     ----------------------------------------------------------------
  1174. .aw on
  1175. .pm 3
  1176. .lm 15
  1177. áá000b        Thσ specifieΣ periphera∞ devicσ typσ i≤ currentl∙ connecteΣ t∩ ì
  1178. ááááááááááááááthi≤ logica∞ unit«  Iµ thσ targe⌠ canno⌠ determinσ whethe≥ o≥ ì
  1179. ááááááááááááááno⌠ ß physica∞ devicσ i≤ currentl∙ connecteΣ i⌠ shal∞ als∩ usσ ì
  1180. ááááááááááááááthi≤ periphera∞ qualifie≥ wheε returninτ thσ INQUIR┘ data«  ì
  1181. ááááááááááááááNote║ Thi≤ periphera∞ qualifie≥ doe≤ no⌠ impl∙ tha⌠ thσ devicσ ì
  1182. áááááááááááááái≤ read∙ fo≥ acces≤ b∙ thσ initiator.
  1183.  
  1184. áá001b        Thσ targe⌠ i≤ capablσ oµ supportinτ thσ specifieΣ periphera∞ ì
  1185. áááááááááááááádevicσ typσ oε thi≤ logica∞ unit¼ howeve≥ thσ physica∞ devicσ i≤ ì
  1186. ááááááááááááááno⌠ currentl∙ connecteΣ t∩ thi≤ logica∞ unit.
  1187.  
  1188. áá010b        Reserved
  1189.  
  1190. áá011b        Thσ targe⌠ i≤ no⌠ capablσ oµ supportinτ ß physica∞ devicσ oε ì
  1191. ááááááááááááááthi≤ logica∞ unit«  Fo≥ thi≤ periphera∞ qualifie≥ thσ periphera∞ ì
  1192. áááááááááááááádevicσ typσ shal∞ bσ se⌠ t∩ 1FΦ t∩ providσ compatibilit∙ witΦ ì
  1193. áááááááááááááápreviou≤ version≤ oµ SCSI«  Al∞ othe≥ periphera∞ devicσ typσ ì
  1194. áááááááááááááávalue≤ arσ reserveΣ fo≥ thi≤ periphera∞ qualifier.
  1195.  
  1196. áá1XXb        Vendo≥ specific
  1197. .lm 1
  1198. .pm 0
  1199. ==============================================================================
  1200. .aw on
  1201. .pm 3
  1202.  
  1203.  
  1204. .cp 20
  1205. .aw off
  1206. .pm 0
  1207.                       Table 7-17: Peripheral Device Type
  1208.  
  1209. ==============================================================================
  1210.   Code         Description
  1211. ----------¡    ---------------------------------------------------------------
  1212. .aw on
  1213. .pm 3
  1214. .lm 16
  1215. áá00h          Direc⌠-acces≤ devicσ (e.g.¼ magnetiπ disk)
  1216. áá01h          Sequentia∞-acces≤ devicσ (e.g.¼ magnetiπ tape)
  1217. áá02h          Printe≥ device
  1218. áá03h          Processo≥ device
  1219. áá04h          Writσ-oncσ devicσ (e.g.¼ somσ optica∞ disks)
  1220. áá05h          C─-RO═ device
  1221. áá06h          Scanne≥ device
  1222. áá07h          Optica∞ memor∙ devicσ (e.g.¼ somσ optica∞ disks)
  1223. áá08h          Mediuφ Change≥ devicσ (e.g.¼ jukeboxes⌐ 
  1224. áá09h          Communication≤ device
  1225. áá0Ah - 0Bh    DefineΣ b∙ AS├ IT╕ (Graphiπ Art≤ Prσ-Pres≤ Devices)
  1226. áá0Ch - 1Eh    Reserved
  1227. áá1Fh          Unknowε o≥ n∩ devicσ type
  1228. .lm 1
  1229. .pm 0
  1230. ==============================================================================
  1231. .aw on
  1232. .pm 3
  1233. è
  1234. .cp 2
  1235. áá┴ removablσ mediuφ (RMB⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ mediuφ i≤ no⌠ ì
  1236. removable«  ┴ RM┬ bi⌠ oµ onσ indicate≤ tha⌠ thσ mediuφ i≤ removable.
  1237.  
  1238. .cp 3
  1239. ááThσ devicσ-typσ modifie≥ fielΣ wa≤ defineΣ iε SCS╔-▒ t∩ permi⌠ vendo≥-ì
  1240. specifiπ qualificatioε code≤ oµ thσ devicσ type«  Thi≤ fielΣ i≤ retaineΣ fo≥ ì
  1241. compatibilit∙ witΦ SCS╔-1«  Target≤ tha⌠ d∩ no⌠ suppor⌠ thi≤ fielΣ shoulΣ ì
  1242. returε ß valuσ oµ zero.
  1243.  
  1244. .cp 5
  1245. ááThσ usagσ oµ noε-zer∩ codσ value≤ iε thσ IS╧ versioε anΣ ECM┴ versioε field≤ ì
  1246. arσ defineΣ b∙ thσ Internationa∞ Organizatioε fo≥ Standardizatioε anΣ thσ ì
  1247. Europeaε Compute≥ Manufacturer≤ Association¼ respectively«  ┴ zer∩ codσ valuσ ì
  1248. iε thesσ field≤ shal∞ indicatσ tha⌠ thσ targe⌠ doe≤ no⌠ claiφ compliancσ t∩ ì
  1249. thσ IS╧ versioε oµ SCS╔ (IS╧ I╙ 9316⌐ o≥ thσ ECM┴ versioε oµ SCS╔ (ECM┴-111)« ì
  1250. I⌠ i≤ possiblσ t∩ claiφ compliancσ t∩ morσ thaε onσ oµ thesσ SCS╔ standards.
  1251.  
  1252. .cp 5
  1253. ááThσ ANS╔-approveΣ versioε fielΣ indicate≤ thσ implementeΣ versioε oµ thi≤ ì
  1254. standarΣ anΣ i≤ defineΣ iε Tablσ ╖-18.
  1255.  
  1256. .cp 11
  1257. .aw off
  1258. .pm 0
  1259.                       Table 7-18: ANSI-Approved Version
  1260.  
  1261. ==============================================================================
  1262.   Code        Description
  1263. ------------------------------------------------------------------------------
  1264. .aw on
  1265. .pm 4
  1266. .lm 12
  1267. ááá0h      Thσ devicσ migh⌠ o≥ migh⌠ no⌠ compl∙ t∩ aε ANS╔-approveΣ standard.
  1268. ááá1h      Thσ devicσ complie≤ t∩ ANS╔ X3.13▒-198╢ (SCS╔-1).
  1269. ááá2h      Thσ devicσ complie≤ t∩ thi≤ versioε oµ SCSI«  Thi≤ codσ i≤ reserveΣ ì
  1270. ááááááááááát∩ designatσ thi≤ standarΣ upoε approva∞ b∙ ANSI.
  1271. ááá3h - 7h   Reserved
  1272. .lm 1
  1273. .pm 0
  1274. ==============================================================================
  1275. .aw on
  1276. .pm 3
  1277.  
  1278.  
  1279. .cp 5
  1280. ááThσ asynchronou≤ even⌠ notificatioε capabilit∙ (AENC⌐ bi⌠ indicate≤ tha⌠ thσ ì
  1281. devicσ support≤ thσ asynchronou≤ even⌠ notificatioε capabilit∙ a≤ defineΣ iε ì
  1282. 6.5.5« 
  1283. .lm3
  1284. áá(1⌐ Processo≥ devicσ-typσ definition║  Aε AEN├ bi⌠ oµ onσ indicate≤ tha⌠ thσ ì
  1285. ááprocesso≥ devicσ i≤ capablσ oµ acceptinτ asynchronou≤ even⌠ notifications« ì
  1286. ááAε AEN├ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ processo≥ devicσ doe≤ no⌠ suppor⌠ ì
  1287. ááasynchronou≤ even⌠ notifications.
  1288. áá(2⌐ Al∞ othe≥ devicσ-types║  Thi≤ bi⌠ i≤ reserved.
  1289. .lm1
  1290.  
  1291. áá┴ terminatσ I/╧ proces≤ (TrmIOP⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ ì
  1292. support≤ thσ TERMINAT┼ I/╧ PROCES╙ messagσ a≤ defineΣ iε 5.6.22«  ┴ valuσ oµ ì
  1293. zer∩ indicate≤ tha⌠ thσ devicσ doe≤ no⌠ suppor⌠ thσ TERMINAT┼ I/╧ PROCES╙ ì
  1294. message.
  1295.  
  1296. .cp5
  1297. áá┴ responsσ datß forma⌠ valuσ oµ zer∩ indicate≤ thσ INQUIR┘ datß forma⌠ i≤ a≤ ì
  1298. specifieΣ iε SCS╔-1«  ┴ responsσ datß forma⌠ valuσ oµ onσ indicate≤ ì
  1299. compatibilit∙ witΦ somσ product≤ tha⌠ werσ designeΣ prio≥ t∩ thσ developmen⌠ ì
  1300. oµ thi≤ standarΣ (i.e.¼ CCS)«  ┴ responsσ datß forma⌠ valuσ oµ tw∩ indicate≤ ì
  1301. tha⌠ thσ datß shal∞ bσ iε thσ forma⌠ specifieΣ iε thi≤ standard«  Responsσ ì
  1302. datß forma⌠ value≤ greate≥ thaε tw∩ arσ reserved.
  1303.  
  1304. .cp 5èááThσ additiona∞ lengtΦ fielΣ shal∞ specif∙ thσ lengtΦ iε byte≤ oµ thσ ì
  1305. parameters«  Iµ thσ allocatioε lengtΦ oµ thσ commanΣ descripto≥ blocδ i≤ to∩ ì
  1306. smal∞ t∩ transfe≥ al∞ oµ thσ parameters¼ thσ additiona∞ lengtΦ shal∞ no⌠ bσ ì
  1307. adjusteΣ t∩ reflec⌠ thσ truncation.
  1308.  
  1309. .cp 5
  1310. áá┴ relativσ addressinτ (RelAdr⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ ì
  1311. thσ relativσ addressinτ modσ fo≥ thi≤ logica∞ unit«  Iµ thi≤ bi⌠ i≤ se⌠ t∩ onσ ì
  1312. thσ linkeΣ commanΣ (Linked⌐ bi⌠ shal∞ als∩ bσ se⌠ t∩ onσ sincσ relativσ ì
  1313. addressinτ caε onl∙ bσ useΣ witΦ linkeΣ commands«  ┴ RelAd≥ bi⌠ oµ zer∩ ì
  1314. indicate≤ thσ devicσ doe≤ no⌠ suppor⌠ relativσ addressinτ fo≥ thi≤ logica∞ ì
  1315. unit.
  1316.  
  1317. áá┴ widσ bu≤ 3▓ (WBus32⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ 3▓-bi⌠ ì
  1318. widσ datß transfers«  ┴ valuσ oµ zer∩ indicate≤ tha⌠ thσ devicσ doe≤ no⌠ ì
  1319. suppor⌠ 3▓-bi⌠ widσ datß transfers.
  1320.  
  1321. áá┴ widσ bu≤ 1╢ (WBus16⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ 1╢-bi⌠ ì
  1322. widσ datß transfers«  ┴ valuσ oµ zer∩ indicate≤ tha⌠ thσ devicσ doe≤ no⌠ ì
  1323. suppor⌠ 1╢-bi⌠ widσ datß transfers.
  1324.  
  1325. .lm 3
  1326. ááNOTE║ Iµ thσ value≤ oµ botΦ thσ WBus1╢ anΣ WBus3▓ bit≤ arσ zer∩ thσ devicσ ì
  1327. ááonl∙ support≤ ╕-bi⌠ widσ datß transfers.
  1328. .lφ 1
  1329.  
  1330. áá┴ synchronou≤ transfe≥ (Sync⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ ì
  1331. synchronou≤ datß transfer«  ┴ valuσ oµ zer∩ indicate≤ thσ devicσ doe≤ no⌠ ì
  1332. suppor⌠ synchronou≤ datß transfer.
  1333.  
  1334. áá┴ linkeΣ commanΣ (Linked⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ ì
  1335. linkeΣ command≤ fo≥ thi≤ logica∞ unit«  ┴ valuσ oµ zer∩ indicate≤ thσ devicσ ì
  1336. doe≤ no⌠ suppor⌠ linkeΣ command≤ fo≥ thi≤ logica∞ unit.
  1337.  
  1338. .cp2
  1339. áá┴ commanΣ queuinτ (CmdQue⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ ì
  1340. taggeΣ commanΣ queuinτ fo≥ thi≤ logica∞ unit«  ┴ valuσ oµ zer∩ indicate≤ thσ ì
  1341. devicσ doe≤ no⌠ suppor⌠ taggeΣ commanΣ queuinτ fo≥ thi≤ logica∞ unit.
  1342.  
  1343. áá┴ sof⌠ rese⌠ (SftRe⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ devicσ respond≤ t∩ thσ ì
  1344. RESE╘ conditioε witΦ thσ harΣ RESE╘ alternativσ (seσ 5.2.2.1)«  ┴ SftRσ bi⌠ oµ ì
  1345. onσ indicate≤ tha⌠ thσ devicσ respond≤ t∩ thσ RESE╘ conditioε witΦ thσ sof⌠ ì
  1346. RESE╘ alternativσ (seσ 5.2.2.2).
  1347.  
  1348. .cp 6
  1349. ááASCI╔ datß field≤ shal∞ contaiε onl∙ graphiπ code≤ (i.e.¼ codσ value≤ 20Φ ì
  1350. througΦ 7Eh)«  Lef⌠-aligneΣ field≤ shal∞ placσ an∙ unuseΣ byte≤ a⌠ thσ enΣ oµ ì
  1351. thσ fielΣ (highes⌠ offset⌐ anΣ thσ unuseΣ byte≤ shal∞ bσ filleΣ witΦ spacσ ì
  1352. character≤ (20h)«  Righ⌠-aligneΣ field≤ shal∞ placσ an∙ unuseΣ byte≤ a⌠ thσ ì
  1353. star⌠ oµ thσ fielΣ (lowes⌠ offset⌐ anΣ thσ unuseΣ byte≤ shal∞ bσ filleΣ witΦ ì
  1354. spacσ character≤ (20h).
  1355.  
  1356. .cp 3
  1357. ááThσ vendo≥ identificatioε fielΣ contain≤ eigh⌠ byte≤ oµ ASCI╔ datß ì
  1358. identifyinτ thσ vendo≥ oµ thσ product«  Thσ datß shal∞ bσ lef⌠ aligneΣ withiε ì
  1359. thi≤ field«  
  1360.  
  1361. .cp 6è.lm 3
  1362. ááNOTE║  I⌠ i≤ intendeΣ tha⌠ thi≤ fielΣ providσ ß uniquσ vendo≥ identificatioε ì
  1363. ááoµ thσ manufacture≥ oµ thσ SCS╔ device«  Iε thσ absencσ oµ ß forma∞ ì
  1364. ááregistratioε procedure¼ X3T9.▓ maintain≤ ß lis⌠ oµ vendo≥ identificatioε ì
  1365. áácode≤ iε use«  Vendor≤ arσ requesteΣ t∩ voluntaril∙ submi⌠ thei≥ ì
  1366. ááidentificatioε code≤ t∩ X3T9.▓ t∩ preven⌠ duplicatioε oµ code≤ (seσ Appendi° ì
  1367. ááJ).
  1368. .lm 1
  1369.  
  1370. .cp 2
  1371. ááThσ produc⌠ identificatioε fielΣ contain≤ sixteeε byte≤ oµ ASCI╔ datß a≤ ì
  1372. defineΣ b∙ thσ vendor«  Thσ datß shal∞ bσ lef⌠-aligneΣ withiε thi≤ field.
  1373.  
  1374. .cp 2
  1375. ááThσ produc⌠ revisioε leve∞ fielΣ contain≤ fou≥ byte≤ oµ ASCI╔ datß a≤ ì
  1376. defineΣ b∙ thσ vendor«  Thσ datß shal∞ bσ lef⌠-aligneΣ withiε thi≤ field.
  1377.  
  1378. .cp 10
  1379. .aw off
  1380. .pm 0
  1381. 7.2.5.2. Vital Product Data
  1382. .pm 3
  1383. .aw on
  1384. ááImplementatioε oµ vita∞ produc⌠ datß i≤ optional«  Thσ informatioε returneΣ ì
  1385. consist≤ oµ configuratioε datß (e.g.¼ vendo≥ identification¼ produc⌠ ì
  1386. identification¼ model¼ seria∞ number)¼ manufacturinτ datß (e.g.¼ plan⌠ anΣ ì
  1387. datσ oµ manufacture)¼ fielΣ replaceablσ uni⌠ datß anΣ othe≥ vendo≥¡ o≥ devicσ-ì
  1388. specifiπ data«  
  1389.  
  1390. ááThσ initiato≥ request≤ thσ vita∞ produc⌠ datß informatioε b∙ settinτ thσ ì
  1391. EVP─ bi⌠ t∩ onσ anΣ specifyinτ thσ pagσ codσ oµ thσ desireΣ vita∞ produc⌠ datß ì
  1392. (seσ Tablσ ╖-72)«  Iµ thσ targe⌠ doe≤ no⌠ implemen⌠ thσ requesteΣ pagσ i⌠ ì
  1393. shal∞ returε CHEC╦ CONDITIO╬ status«  Thσ ß sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ ì
  1394. REQUES╘ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ INVALI─ FIEL─ I╬ CDB.
  1395.  
  1396. .cp 20
  1397. .lm 3
  1398. ááIMPLEMENTOR╙ NOTES║ 
  1399. .pm 0
  1400. áá(1⌐ I⌠ i≤ recommendeΣ tha⌠ thσ targe⌠ havσ thσ abilit∙ t∩ executσ thσ ì
  1401. ááINQUIR┘ commanΣ eveε wheε ß devicσ erro≥ occur≤ whicΦ prohibit≤ norma∞ ì
  1402. áácommanΣ execution«  Iε sucΦ ß case¼ CHEC╦ CONDITIO╬ statu≤ woulΣ bσ returneΣ ì
  1403. ááfo≥ command≤ othe≥ thaε INQUIR┘ o≥ REQUES╘ SENSE«  Thσ sensσ datß returneΣ ì
  1404. ááma∙ contaiε thσ fielΣ replaceablσ uni⌠ code«  Thσ vita∞ produc⌠ datß woulΣ ì
  1405. áábσ obtaineΣ fo≥ thσ failinτ devicσ usinτ thσ INQUIR┘ command.
  1406. áá(2⌐ Thi≤ standarΣ define≤ ß forma⌠ whicΦ allow≤ devicσ-independen⌠ initiato≥ ì
  1407. áásoftwarσ t∩ displa∙ thσ vita∞ produc⌠ datß returneΣ b∙ thσ INQUIR┘ command«  ì
  1408. ááFo≥ example¼ thσ initiato≥ ma∙ displa∙ thσ datß associateΣ fo≥ thσ fielΣ ì
  1409. ááreplaceablσ uni⌠ returneΣ iε thσ sensσ data«  Thσ content≤ oµ thσ datß ma∙ ì
  1410. áábσ vendo≥-specific╗ thereforσ i⌠ ma∙ no⌠ bσ usablσ withou⌠ detaileΣ ì
  1411. ááinformatioε abou⌠ thσ device.
  1412. .cp5
  1413. áá(3⌐ Thi≤ standarΣ doe≤ no⌠ definσ thσ locatioε o≥ methoΣ oµ storinτ thσ ì
  1414. áávita∞ produc⌠ data«  Thσ retrieva∞ oµ thσ datß ma∙ requirσ completioε oµ ì
  1415. ááinitializatioε operation≤ withiε thσ devicσ whicΦ ma∙ inducσ delay≤ beforσ ì
  1416. ááthσ datß i≤ availablσ t∩ thσ initiator«  Timσ-critica∞ requirement≤ arσ aε ì
  1417. ááimplementatioε consideratioε anΣ arσ no⌠ addresseΣ iε thi≤ standard.
  1418. .pm 3
  1419. .lm 1
  1420.  
  1421. .cp35è.aw off
  1422. .pm 0
  1423. 7.2.6. LOG SELECT Command
  1424.  
  1425.  
  1426.                         Table 7-19: LOG SELECT Command
  1427.  
  1428. ==============================================================================
  1429.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  1430. Byte |        |        |        |        |        |        |        |        |
  1431. ==============================================================================
  1432.  0   |                           Operation Code (4Ch)                        |
  1433. -----|-----------------------------------------------------------------------|
  1434.  1   | Logical Unit Number      |              Reserved    ⁿ  PCR   |   SP   |
  1435. -----|-----------------------------------------------------------------------|
  1436.  2   |        P├       |         Reserved                                    |
  1437. -----|-----------------------------------------------------------------------|
  1438.  3   |                           Reserved                                    |
  1439. -----|-----------------------------------------------------------------------|
  1440.  4   |                           Reserved                                    |
  1441. -----|-----------------------------------------------------------------------|
  1442.  5   |                           Reserved                                    |
  1443. -----|-----------------------------------------------------------------------|
  1444.  6   |                           Reserved                                    |
  1445. -----|-----------------------------------------------------------------------|
  1446.  7   | (MSB)                                                                 |
  1447. -----|---                        Paramete≥ List LengtΦ                    ---|
  1448.  8   |                                                                 (LSB) |
  1449. -----|-----------------------------------------------------------------------|
  1450.  9   |                           Control                                     |
  1451. ==============================================================================
  1452. .pm 3
  1453. .aw on
  1454.  
  1455.  
  1456. ááThσ LO╟ SELEC╘ commanΣ (Tablσ ╖-19⌐ provide≤ ß mean≤ fo≥ thσ initiato≥ t∩ ì
  1457. managσ statistica∞ informatioε maintaineΣ b∙ thσ devicσ abou⌠ thσ devicσ o≥ ì
  1458. it≤ logica∞ units«  Target≤ tha⌠ implemen⌠ thσ LO╟ SELEC╘ commanΣ shal∞ als∩ ì
  1459. implemen⌠ thσ LO╟ SENS┼ command«  Structure≤ iε thσ forφ oµ loτ parameter≤ ì
  1460. withiε loτ page≤ arσ defineΣ a≤ ß wa∙ t∩ managσ thσ loτ data« Thσ LO╟ SELEC╘ ì
  1461. commanΣ provide≤ fo≥ sendinτ zer∩ o≥ morσ loτ page≤ durinτ ß DAT┴ OU╘ phase«  ì
  1462. Thi≤ standarΣ define≤ thσ forma⌠ oµ thσ loτ pages¼ bu⌠ doe≤ no⌠ definσ thσ ì
  1463. exac⌠ condition≤ anΣ event≤ whicΦ arσ logged.
  1464.  
  1465. áá┴ paramete≥ codσ rese⌠ (PCR⌐ bi⌠ oµ onσ anΣ ß paramete≥ lis⌠ lengtΦ oµ zer∩ ì
  1466. shal∞ causσ al∞ implementeΣ parameter≤ t∩ bσ se⌠ t∩ thσ targe⌠-defineΣ defaul⌠ ì
  1467. value≤ (e.g.¼ zero)«  Iµ thσ PC╥ bi⌠ i≤ onσ anΣ ß thσ paramete≥ lis⌠ lengtΦ i≤ ì
  1468. greate≥ thaε zer∩ thσ commanΣ i≤ terminateΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ ì
  1469. sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ shal∞ ì
  1470. bσ se⌠ t∩ INVALI─ FIEL─ I╬ CDB«  ┴ PC╥ bi⌠ oµ zer∩ specifie≤ tha⌠ thσ loτ ì
  1471. parameter≤ shal∞ no⌠ bσ reset.
  1472.  
  1473. .cp 5
  1474. áá┴ savσ parameter≤ (SP⌐ bi⌠ oµ onσ indicate≤ tha⌠ afte≥ performinτ thσ ì
  1475. specifieΣ LO╟ SELEC╘ operatioε thσ targe⌠ shal∞ savσ t∩ noε-volatilσ memor∙ ì
  1476. al∞ parameter≤ identifieΣ a≤ savablσ b∙ thσ D╙ bi⌠ iε thσ loτ pagσ (seσ ì
  1477. 7.3.2)«  ┴ S╨ bi⌠ oµ zer∩ specifie≤ tha⌠ parameter≤ shal∞ no⌠ bσ saved.
  1478.  
  1479. .cp 7èááSavinτ oµ loτ parameter≤ i≤ optiona∞ anΣ indicateΣ fo≥ eacΦ loτ paramete≥ b∙ ì
  1480. thσ D╙ bi⌠ iε thσ page«  Loτ parameter≤ ma∙ bσ saveΣ a⌠ vendo≥-specifiπ time≤ ì
  1481. subjec⌠ t∩ thσ TS─ bi⌠ (seσ 7.3.2⌐ iε thσ loτ parameter«  Iµ thσ targe⌠ doe≤ ì
  1482. no⌠ implemen⌠ saveΣ parameter≤ fo≥ an∙ loτ paramete≥ anΣ thσ S╨ bi⌠ i≤ se⌠ t∩ ì
  1483. one¼ thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ì
  1484. ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUEST¼ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ ì
  1485. INVALI─ FIEL─ I╬ CDB« 
  1486.  
  1487. .cp 3
  1488. ááI⌠ i≤ no⌠ aε erro≥ t∩ se⌠ thσ S╨ bi⌠ t∩ onσ anΣ t∩ se⌠ thσ D╙ bi⌠ oµ ß loτ ì
  1489. paramete≥ t∩ one«  Iε thi≤ case¼ thσ paramete≥ valuσ fo≥ tha⌠ loτ paramete≥ i≤ ì
  1490. no⌠ saved.
  1491.  
  1492. .cp 2
  1493. ááThσ pagσ contro∞ (PC⌐ fielΣ define≤ thσ typσ oµ paramete≥ value≤ t∩ bσ ì
  1494. selected«  Thσ pagσ contro∞ fielΣ i≤ defineΣ iε Table╖-20.
  1495.  
  1496. .aw off
  1497. .pm 0
  1498. .cp 10 
  1499.                         Table 7-20: Page Control Field
  1500.  
  1501.          ============================================================
  1502.                              Type of Parameter Values 
  1503.          Value         LO╟ SENS┼                   LO╟ SELECT
  1504.          -----  ------------------------¡  --------------------------
  1505.          00b    Curren⌠ Threshold Values    ThresholΣ Values     
  1506.          01b    Curren⌠ Cumulative Values   Cumulativσ Values     
  1507.          10b    Defaul⌠ ThresholΣ Value≤    Defaul⌠ ThresholΣ Values
  1508.          11b    Defaul⌠ Cumulativσ Value≤   Defaul⌠ Cumulativσ Values
  1509.          ============================================================
  1510. .aw on
  1511. .pm 3
  1512. .lm1
  1513.  
  1514. ááThσ curren⌠ cumulativσ value≤ ma∙ bσ updateΣ b∙ thσ targe⌠ o≥ b∙ thσ ì
  1515. initiato≥ usinτ thσ LO╟ SELEC╘ commanΣ t∩ reflec⌠ thσ cumulativσ numbe≥ oµ ì
  1516. event≤ experienceΣ b∙ thσ target«  Field≤ iε thσ paramete≥ contro∞ bytσ ì
  1517. (7.3.2⌐ oµ eacΦ loτ paramete≥ contro∞ thσ updatinτ anΣ savinτ oµ thσ curren⌠ ì
  1518. cumulativσ parameters«  
  1519.  
  1520. .cp 3
  1521. ááThσ targe⌠ shal∞ se⌠ thσ curren⌠ thresholΣ parameter≤ t∩ thσ defaul⌠ ì
  1522. thresholΣ value≤ iε responsσ t∩ ß LO╟ SELEC╘ commanΣ witΦ thσ P├ fielΣ se⌠ t∩ ì
  1523. 10Γ anΣ thσ paramete≥ lis⌠ lengtΦ fielΣ se⌠ t∩ zero.
  1524.  
  1525. .cp 3
  1526. ááThσ targe⌠ shal∞ se⌠ al∞ cumulativσ parameter≤ t∩ thei≥ defaul⌠ value≤ iε ì
  1527. responsσ t∩ ß LO╟ SELEC╘ commanΣ witΦ thσ P├ fielΣ se⌠ t∩ 11Γ anΣ thσ ì
  1528. paramete≥ lis⌠ lengtΦ fielΣ se⌠ t∩ zero« 
  1529.  
  1530. .cp 8
  1531. ááThσ curren⌠ thresholΣ valuσ caε onl∙ bσ modifieΣ b∙ thσ initiato≥ viß thσ ì
  1532. LO╟ SELEC╘ command«  Iµ thσ initiato≥ attempt≤ t∩ changσ curren⌠ thresholΣ ì
  1533. value≤ tha⌠ arσ no⌠ availablσ o≥ no⌠ implementeΣ fo≥ tha⌠ loτ parameter¼ theε ì
  1534. thσ targe⌠ shal∞ terminatσ thσ LO╟ SELEC╘ commanΣ witΦ CHEC╦ CONDITIO╬ status¼ ì
  1535. thσ sensσ ke∙ se⌠ t∩ ILLEGA╠ REQUEST¼ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ ì
  1536. INVALI─ FIEL─ I╬ PARAMETE╥ LIST«  Thσ savinτ oµ curren⌠ thresholΣ parameter≤ ì
  1537. anΣ thσ criteriß fo≥ thσ curren⌠ thresholΣ beinτ me⌠ arσ controlleΣ b∙ bit≤ iε ì
  1538. thσ paramete≥ contro∞ bytσ (7.3.2)« 
  1539.  
  1540. .lm3
  1541. ááIMPLEMENTOR╙ NOTE║ Page≤ o≥ loτ parameter≤ tha⌠ arσ no⌠ availablσ ma∙ becomσ ì
  1542. ááavailablσ a⌠ somσ late≥ timσ (e.g.¼ afte≥ thσ devicσ ha≤ becomσ ready).
  1543. .lm1
  1544.  
  1545. .cp 10èááThσ paramete≥ lis⌠ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ ì
  1546. paramete≥ lis⌠ tha⌠ shal∞ bσ transferreΣ froφ thσ initiato≥ t∩ thσ targe⌠ ì
  1547. durinτ thσ DAT┴ OU╘ phase«  ┴ paramete≥ lis⌠ lengtΦ oµ zer∩ indicate≤ tha⌠ n∩ ì
  1548. page≤ shal∞ bσ transferred«  Thi≤ conditioε shal∞ no⌠ bσ considereΣ aε error«  ì
  1549. Iµ thσ initiato≥ send≤ pagσ code≤ o≥ paramete≥ code≤ withiε thσ paramete≥ lis⌠ ì
  1550. tha⌠ arσ reserveΣ o≥ no⌠ implementeΣ b∙ thσ target¼ thσ targe⌠ shal∞ terminatσ ì
  1551. thσ LO╟ SELEC╘ commanΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ke∙ shal∞ bσ ì
  1552. se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
  1553. PARAMETE╥ LIST.
  1554.  
  1555. .cp 4
  1556. ááIµ ß paramete≥ lis⌠ lengtΦ result≤ iε thσ truncatioε oµ an∙ loτ parameter¼ ì
  1557. thσ targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ì
  1558. ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ ì
  1559. INVALI─ FIEL─ I╬ CDB« 
  1560.  
  1561. ááThσ initiato≥ shoulΣ senΣ page≤ iε ascendinτ orde≥ b∙ pagσ codσ valuσ iµ ì
  1562. multiplσ page≤ arσ sen⌠ durinτ ß DAT┴ OU╘ phase«  Iµ multiplσ loτ parameter≤ ì
  1563. withiε ß pagσ arσ sen⌠ durinτ thσ DAT┴ OU╘ phasσ theε the∙ shoulΣ bσ sen⌠ iε ì
  1564. ascendinτ orde≥ b∙ paramete≥ codσ value«  Thσ targe⌠ shal∞ returε CHEC╦ ì
  1565. CONDITIO╬ statu≤ iµ thσ initiato≥ send≤ page≤ ou⌠ oµ orde≥ o≥ paramete≥ code≤ ì
  1566. ou⌠ oµ order«  Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ ì
  1567. additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
  1568.  
  1569. .lm3
  1570. ááIMPLEMENTOR╙ NOTE║  Initiator≤ shoulΣ issuσ LO╟ SENS┼ command≤ prio≥ t∩ ì
  1571. ááissuinτ LO╟ SELEC╘ command≤ t∩ determinσ supporteΣ page≤ anΣ pagσ lengths.
  1572. .lm1
  1573.  
  1574. .cp 6
  1575. ááThσ targe⌠ ma∙ providσ independen⌠ set≤ oµ loτ parameter≤ fo≥ eacΦ logica∞ ì
  1576. uni⌠ o≥ fo≥ eacΦ combinatioε oµ logica∞ unit≤ anΣ initiators«  Iµ thσ targe⌠ ì
  1577. doe≤ no⌠ suppor⌠ independen⌠ set≤ oµ loτ parameter≤ anΣ an∙ loτ parameter≤ arσ ì
  1578. changeΣ tha⌠ affec⌠ othe≥ initiators¼ theε thσ targe⌠ shal∞ generatσ aε uni⌠ ì
  1579. attentioε conditioε fo≥ al∞ initiator≤ excep⌠ thσ onσ tha⌠ issueΣ thσ LO╟ ì
  1580. SELEC╘ commanΣ (seσ 6.9)«  Thi≤ uni⌠ attentioε conditioε i≤ returneΣ witΦ aε ì
  1581. additiona∞ sensσ codσ oµ LO╟ PARAMETER╙ CHANGED.
  1582.  
  1583. .cp 5
  1584. ááIµ thσ initiato≥ send≤ ß loτ paramete≥ tha⌠ i≤ no⌠ supporteΣ b∙ thσ target¼ ì
  1585. thσ targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status¼ se⌠ thσ ì
  1586. sensσ ke∙ t∩ ILLEGA╠ REQUEST¼ anΣ se⌠ thσ additiona∞ sensσ codσ t∩ INVALI─ ì
  1587. FIEL─ I╬ PARAMETE╥ LIST.
  1588.  
  1589. .cp 25è.aw off
  1590. .pm 0
  1591. 7.2.7. LOG SENSE Command
  1592.  
  1593.  
  1594.                         Table 7-21: LOG SENSE Command
  1595.  
  1596. ==============================================================================
  1597.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  1598. Byte |        |        |        |        |        |        |        |        |
  1599. ==============================================================================
  1600.  0   |                           Operation Code (4Dh)                        |
  1601. -----|-----------------------------------------------------------------------|
  1602.  1   | Logical Unit Number      |         Reserved         ⁿ  PPC   |    SP  |
  1603. -----|-----------------------------------------------------------------------|
  1604.  2   |        PC        |        Page Code                                   |
  1605. -----|-----------------------------------------------------------------------|
  1606.  3   |                           Reserved                                    |
  1607. -----|-----------------------------------------------------------------------|
  1608.  4   |                           Reserved                                    |
  1609. -----|-----------------------------------------------------------------------|
  1610.  5   | (MSB)                                                                 |
  1611. -----|---                        Paramete≥ Pointe≥                        ---|
  1612.  6   |                                                                 (LSB) |
  1613. -----|-----------------------------------------------------------------------|
  1614.  7   | (MSB)                                                                 |
  1615. -----|---                        Allocation Length                        ---|
  1616.  8   |                                                                 (LSB) |
  1617. -----|-----------------------------------------------------------------------|
  1618.  9   |                           Control                                     |
  1619. ==============================================================================
  1620. .pm 3
  1621. .aw on
  1622.  
  1623.  
  1624. ááThσ LO╟ SENS┼ commanΣ (Tablσ ╖-21⌐ provide≤ ß mean≤ fo≥ thσ initiato≥ t∩ ì
  1625. retrievσ statistica∞ informatioε maintaineΣ b∙ thσ devicσ abou⌠ thσ devicσ o≥ ì
  1626. it≤ logica∞ units«  I⌠ i≤ ß complementar∙ commanΣ t∩ thσ LO╟ SELEC╘ command.
  1627.  
  1628. ááThσ paramete≥ pointe≥ contro∞ (PPC⌐ bi⌠ control≤ thσ typσ oµ parameter≤ ì
  1629. requesteΣ froφ thσ target:
  1630. .cp4
  1631. áá(1⌐ ┴ PP├ bi⌠ oµ onσ indicate≤ tha⌠ thσ targe⌠ shal∞ returε ß loτ pagσ witΦ ì
  1632. paramete≥ codσ value≤ whicΦ havσ changeΣ sincσ thσ las⌠ LO╟ SELEC╘ o≥ LO╟ ì
  1633. SENS┼ command«  Thσ targe⌠ shal∞ returε onl∙ thosσ paramete≥ code≤ followinτ ì
  1634. thσ paramete≥ pointe≥ field.
  1635. áá(2⌐ ┴ PP├ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ loτ paramete≥ requesteΣ froφ thσ ì
  1636. targe⌠ shal∞ begiε witΦ thσ paramete≥ codσ specifieΣ iε thσ paramete≥ pointe≥ ì
  1637. fielΣ anΣ returε thσ numbe≥ oµ byte≤ specifieΣ b∙ thσ allocatioε lengtΦ fielΣ ì
  1638. iε ascendinτ orde≥ oµ paramete≥ code≤ froφ thσ specifieΣ loτ page«  ┴ PP├ bi⌠ ì
  1639. oµ zer∩ anΣ ß paramete≥ pointe≥ fielΣ oµ zer∩ shal∞ causσ al∞ availablσ loτ ì
  1640. parameter≤ fo≥ thσ specifieΣ loτ pagσ t∩ bσ returneΣ t∩ thσ initiato≥ subjec⌠ ì
  1641. t∩ thσ specifieΣ allocatioε length.
  1642.  
  1643. .cp 5
  1644. ááSavinτ parameter≤ i≤ aε optiona∞ functioε oµ thσ LO╟ SENS┼ command«  Iµ thσ ì
  1645. targe⌠ doe≤ no⌠ implemen⌠ savinτ loτ parameter≤ anΣ iµ thσ savσ parameter≤ ì
  1646. (SP⌐ bi⌠ i≤ one¼ theε thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ status¼ se⌠ thσ ì
  1647. sensσ ke∙ t∩ ILLEGA╠ REQUEST¼ anΣ se⌠ thσ additiona∞ sensσ codσ t∩ INVALI─ ì
  1648. FIEL─ I╬ CDB« 
  1649. è.cp 5
  1650. áá┴ S╨ bi⌠ oµ zer∩ indicate≤ thσ targe⌠ shal∞ perforφ thσ specifieΣ LO╟ SENS┼ ì
  1651. commanΣ anΣ shal∞ no⌠ savσ an∙ loτ parameters«  Iµ savinτ loτ parameter≤ i≤ ì
  1652. implemented¼ ß S╨ bi⌠ oµ onσ indicate≤ tha⌠ thσ targe⌠ shal∞ perforφ thσ ì
  1653. specifieΣ LO╟ SENS┼ commanΣ anΣ shal∞ savσ al∞ loτ parameter≤ identifieΣ a≤ ì
  1654. savablσ b∙ thσ D╙ bi⌠ (7.3.2⌐ t∩ ß noε-volatilσ vendo≥-specifiπ location« 
  1655.  
  1656. ááThσ pagσ contro∞ (PC⌐ fielΣ define≤ thσ typσ oµ paramete≥ value≤ t∩ bσ ì
  1657. selecteΣ (seσ 7.2.╢ fo≥ thσ definitioε oµ thσ pagσ contro∞ field)«  Thσ ì
  1658. paramete≥ value≤ returneΣ b∙ ß LO╟ SENS┼ commanΣ arσ determineΣ a≤ follows:
  1659. áá(1⌐ Thσ specifieΣ paramete≥ value≤ a⌠ thσ las⌠ updatσ (iε responsσ t∩ ß LO╟ ì
  1660. SELEC╘ o≥ LO╟ SENS┼ commanΣ o≥ donσ automaticall∙ b∙ thσ targe⌠ fo≥ cumulativσ ì
  1661. values).
  1662. áá(2⌐ Thσ saveΣ value≤ iµ aε updatσ ha≤ no⌠ occurreΣ sincσ thσ las⌠ powe≥-on¼ ì
  1663. harΣ RESE╘ condition¼ o≥ BU╙ DEVIC┼ RESE╘ messagσ anΣ saveΣ parameter≤ arσ ì
  1664. implemented.
  1665. áá(3⌐ Thσ defaul⌠ value≤ iµ aε updatσ ha≤ no⌠ occurreΣ sincσ thσ las⌠ powe≥-ì
  1666. on¼ harΣ RESE╘ condition¼ o≥ BU╙ DEVIC┼ RESE╘ messagσ anΣ saveΣ value≤ arσ no⌠ ì
  1667. availablσ o≥ no⌠ implemented.
  1668. .lm 1
  1669.  
  1670. ááThσ pagσ codσ fielΣ identifie≤ whicΦ pagσ oµ datß i≤ beinτ requesteΣ (seσ ì
  1671. Tablσ ╖-53)«  Iµ thσ pagσ codσ i≤ reserveΣ o≥ no⌠ implemented¼ thσ targe⌠ ì
  1672. shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ke∙ shal∞ ì
  1673. bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ ì
  1674. I╬ CDB« 
  1675.  
  1676. ááThσ paramete≥ pointe≥ fielΣ allow≤ thσ initiato≥ t∩ reques⌠ paramete≥ datß ì
  1677. beginninτ froφ ß specifiπ paramete≥ codσ t∩ thσ maximuφ allocatioε lengtΦ o≥ ì
  1678. thσ maximuφ paramete≥ codσ supporteΣ b∙ thσ target¼ whicheve≥ i≤ less«  Iµ thσ ì
  1679. valuσ oµ thσ paramete≥ pointe≥ fielΣ i≤ large≥ thaε thσ larges⌠ availablσ ì
  1680. paramete≥ codσ tha⌠ caε bσ returneΣ b∙ thσ targe⌠ oε thσ specifieΣ page¼ thσ ì
  1681. targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ke∙ ì
  1682. shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ ì
  1683. INVALI─ FIEL─ I╬ CDB« 
  1684.  
  1685. ááLoτ parameter≤ withiε thσ specifieΣ loτ pagσ shal∞ bσ transferreΣ iε ì
  1686. ascendinτ orde≥ accordinτ t∩ paramete≥ code.
  1687.  
  1688. .cp 35è.aw off
  1689. .pm 0
  1690. 7.2.8. MODE SELECT(6) Command
  1691.  
  1692.  
  1693.                       Table 7-22: MODE SELECT(6) Command
  1694.  
  1695. ==============================================================================
  1696.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  1697. Byte |        |        |        |        |        |        |        |        |
  1698. ==============================================================================
  1699.  0   |                           Operation Code (15h)                        |
  1700. -----|-----------------------------------------------------------------------|
  1701.  1   | Logical Unit Number      |   PF   |         Reserved         |  SP    |
  1702. -----|-----------------------------------------------------------------------|
  1703.  2   |                           Reserved                                    |
  1704. -----|-----------------------------------------------------------------------|
  1705.  3   |                           Reserved                                    |
  1706. -----|-----------------------------------------------------------------------|
  1707.  4   |                           Parameter List Length                       |
  1708. -----|-----------------------------------------------------------------------|
  1709.  5   |                           Control                                     |
  1710. ==============================================================================
  1711. .aw on
  1712. .pm 3
  1713.  
  1714.  
  1715. ááThσ MOD┼ SELECT(6⌐ commanΣ (Tablσ ╖-22⌐ provide≤ ß mean≤ fo≥ thσ initiato≥ ì
  1716. t∩ specif∙ medium¼ logica∞ unit¼ o≥ periphera∞ devicσ parameter≤ t∩ thσ ì
  1717. target«  Target≤ tha⌠ implemen⌠ thσ MOD┼ SELEC╘ commanΣ shal∞ als∩ implemen⌠ ì
  1718. thσ MOD┼ SENS┼ command«  Initiator≤ shoulΣ issuσ MOD┼ SENS┼ prio≥ t∩ MOD┼ ì
  1719. SELEC╘ t∩ determinσ supporteΣ pages¼ pagσ lengths¼ anΣ othe≥ parameters.
  1720.  
  1721. ááIµ ß targe⌠ support≤ saveΣ pages¼ i⌠ ma∙ savσ onl∙ onσ cop∙ oµ thσ pagσ fo≥ ì
  1722. eacΦ logica∞ uni⌠ anΣ havσ i⌠ appl∙ t∩ al∞ initiator≤ o≥ i⌠ ma∙ savσ separatσ ì
  1723. copie≤ fo≥ eacΦ initiato≥ fo≥ eacΦ logica∞ unit«  Iµ separatσ copie≤ arσ ì
  1724. saved¼ thσ targe⌠ shal∞ maintaiε separatσ curren⌠ value≤ fo≥ eacΦ I_T_╠ nexus« ì
  1725. Page≤ whicΦ arσ commoε t∩ al∞ initiator≤ arσ no⌠ requireΣ t∩ havσ multiplσ ì
  1726. copies« 
  1727.  
  1728. ááIµ aε initiato≥ send≤ ß MOD┼ SELEC╘ commanΣ tha⌠ change≤ an∙ parameter≤ tha⌠ ì
  1729. appl∙ t∩ othe≥ initiators¼ thσ targe⌠ shal∞ generatσ ß uni⌠ attentioε ì
  1730. conditioε fo≥ al∞ initiator≤ excep⌠ thσ onσ tha⌠ issueΣ thσ MOD┼ SELEC╘ ì
  1731. commanΣ (seσ 6.9)«  Thσ targe⌠ shal∞ se⌠ thσ additiona∞ sensσ codσ t∩ MOD┼ ì
  1732. PARAMETER╙ CHANGED« 
  1733.  
  1734. ááThσ targe⌠ ma∙ providσ fo≥ independen⌠ set≤ oµ parameter≤ fo≥ eacΦ attacheΣ ì
  1735. logica∞ uni⌠ o≥ fo≥ eacΦ combinatioε oµ logica∞ uni⌠ anΣ initiator«  Iµ ì
  1736. independen⌠ set≤ oµ parameter≤ arσ implemented¼ anΣ ß thirΣ part∙ reservatioε ì
  1737. i≤ requesteΣ thσ targe⌠ transfer≤ thσ se⌠ oµ parameter≤ iε effec⌠ fo≥ thσ ì
  1738. initiato≥ oµ thσ RESERV┼ commanΣ t∩ thσ parameter≤ useΣ fo≥ command≤ froφ thσ ì
  1739. thirΣ part∙ devicσ (seσ 8.2.12.│ anΣ 9.2.10.1).
  1740.  
  1741. .cp5
  1742. áá┴ pagσ forma⌠ (PF⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ MOD┼ SELEC╘ parameter≤ arσ ì
  1743. a≤ specifieΣ iε SCS╔-1¼ (i.e.¼ al∞ parameter≤ afte≥ thσ blocδ descriptor≤ arσ ì
  1744. vendo≥-specific«  ┴ P╞ bi⌠ oµ onσ indicate≤ tha⌠ thσ MOD┼ SELEC╘ parameter≤ ì
  1745. followinτ thσ heade≥ anΣ blocδ descriptor(s⌐ arσ structureΣ a≤ page≤ oµ ì
  1746. relateΣ parameter≤ anΣ arσ a≤ specifieΣ iε thi≤ standard.
  1747. è.cp 12
  1748. áá┴ savσ page≤ (SP⌐ bi⌠ oµ zer∩ indicate≤ thσ targe⌠ shal∞ perforφ thσ ì
  1749. specifieΣ MOD┼ SELEC╘ operation¼ anΣ shal∞ no⌠ savσ an∙ pages«  ┴ S╨ bi⌠ oµ ì
  1750. onσ indicate≤ tha⌠ thσ targe⌠ shal∞ perforφ thσ specifieΣ MOD┼ SELEC╘ ì
  1751. operation¼ anΣ shal∞ savσ t∩ ß noε-volatilσ vendo≥-specifiπ locatioε al∞ thσ ì
  1752. savablσ page≤ includinτ an∙ sen⌠ durinτ thσ DAT┴ OU╘ phase«  Thσ S╨ bi⌠ i≤ ì
  1753. optional¼ eveε wheε modσ page≤ arσ supporteΣ b∙ thσ target«  Page≤ whicΦ arσ ì
  1754. saveΣ arσ identifieΣ b∙ thσ paramete≥ savablσ bi⌠ tha⌠ i≤ returneΣ iε thσ pagσ ì
  1755. heade≥ b∙ thσ MOD┼ SENS┼ commanΣ (seσ 7.2.10.4)«  Iµ thσ targe⌠ doe≤ no⌠ ì
  1756. implemen⌠ saveΣ page≤ anΣ thσ S╨ bi⌠ i≤ se⌠ t∩ one¼ thσ commanΣ shal∞ bσ ì
  1757. terminateΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ ì
  1758. REQUEST¼ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ INVALI─ FIEL─ I╬ CDB.
  1759.  
  1760. ááThσ paramete≥ lis⌠ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ MOD┼ ì
  1761. SELEC╘ paramete≥ lis⌠ tha⌠ shal∞ bσ transferreΣ froφ thσ initiato≥ t∩ thσ ì
  1762. targe⌠ durinτ thσ DAT┴ OU╘ phase«  ┴ paramete≥ lis⌠ lengtΦ oµ zer∩ indicate≤ ì
  1763. tha⌠ n∩ datß shal∞ bσ transferred«  Thi≤ conditioε shal∞ no⌠ bσ considereΣ a≤ ì
  1764. aε error«  ┴ paramete≥ lis⌠ lengtΦ tha⌠ result≤ iε thσ truncatioε oµ an∙ ì
  1765. descriptor¼ heade≥ o≥ pagσ oµ parameter≤ shal∞ causσ thσ targe⌠ t∩ terminatσ ì
  1766. thσ commanΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ì
  1767. ILLEGA╠ REQUEST¼ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ PARAMETE╥ LIS╘ ì
  1768. LENGT╚ ERROR« 
  1769.  
  1770. ááThσ paramete≥ lis⌠ fo≥ thσ MOD┼ SELEC╘ anΣ MOD┼ SENS┼ command≤ i≤ defineΣ iε ì
  1771. 7.3.3«  Part≤ oµ eacΦ paramete≥ lis⌠ arσ uniquel∙ defineΣ fo≥ eacΦ devicσ-ì
  1772. type«  
  1773.  
  1774. .lm 3
  1775. ááIMPLEMENTOR╙ NOTE║  Iε somσ situation≤ wherσ therσ i≤ ß conflic⌠ betweeε thσ ì
  1776. ááinformatioε iε thσ commanΣ descripto≥ blocδ anΣ thσ informatioε iε thσ ì
  1777. ááparamete≥ list¼ onσ oµ severa∞ additiona∞ sensσ code≤ ma∙ apply«  A≤ ß ì
  1778. ááguide¼ INVALI─ FIEL─ I╬ CD┬ o≥ PARAMETE╥ LIS╘ LENGT╚ ERRO╥ shoulΣ bσ useΣ iµ ì
  1779. ááthσ erro≥ i≤ detecteΣ prio≥ t∩ an∙ operation≤ tha⌠ alte≥ thσ logica∞ unit'≤ ì
  1780. áámodσ parameters«  INVALI─ FIEL─ I╬ PARAMETE╥ LIS╘ shoulΣ bσ useΣ iµ thσ ì
  1781. áálogica∞ unit'≤ modσ parameter≤ havσ beeε altered«  
  1782. .lm 1
  1783.  
  1784. .cp3
  1785. ááThσ targe⌠ shal∞ terminatσ thσ MOD┼ SELEC╘ commanΣ witΦ CHEC╦ CONDITIO╬ ì
  1786. status¼ se⌠ thσ sensσ ke∙ t∩ ILLEGA╠ REQUES╘ anΣ se⌠ thσ additiona∞ sensσ codσ ì
  1787. t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIS╘ fo≥ thσ followinτ conditions:
  1788. áá(1⌐ Iµ thσ initiato≥ attempt≤ t∩ changσ an∙ fielΣ tha⌠ i≤ no⌠ changeablσ a≤ ì
  1789. reporteΣ b∙ thσ target«  Iε thi≤ case¼ n∩ parameter≤ shal∞ bσ changeΣ b∙ thi≤ ì
  1790. command.
  1791. áá(2⌐ Iµ thσ initiato≥ attempt≤ t∩ senΣ aε unsupporteΣ valuσ o≥ ß noε-zer∩ ì
  1792. valuσ t∩ ß reserveΣ fielΣ  iε thσ MOD┼ SELEC╘ header¼ blocδ descriptor¼ o≥ an∙ ì
  1793. pagσ header.
  1794. áá(3⌐ Iµ aε initiato≥ attempt≤ t∩ senΣ ß pagσ witΦ ß lengtΦ no⌠ equa∞ t∩ thσ ì
  1795. paramete≥ lengtΦ reporteΣ fo≥ tha⌠ pagσ b∙ thσ MOD┼ SENS┼ command.
  1796. áá(4⌐ Iµ thσ initiato≥ attempt≤ t∩ senΣ ß valuσ fo≥ ß paramete≥ tha⌠ i≤ ì
  1797. outsidσ thσ rangσ supporteΣ b∙ thσ targe⌠ anΣ roundinτ i≤ no⌠ implementeΣ fo≥ ì
  1798. tha⌠ parameter.
  1799.  
  1800. .cp9èááIµ thσ initiato≥ send≤ ß valuσ fo≥ ß paramete≥ tha⌠ i≤ outsidσ thσ rangσ ì
  1801. supporteΣ b∙ thσ targe⌠ anΣ roundinτ i≤ implementeΣ fo≥ tha⌠ parameter¼ thσ ì
  1802. targe⌠ ma∙ either:
  1803. áá(1⌐ rounΣ thσ paramete≥ t∩ aε acceptablσ valuσ anΣ terminatσ thσ commanΣ a≤ ì
  1804. describeΣ iε 6.5.4.
  1805. áá(2⌐ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status¼ thσ sensσ ke∙ se⌠ t∩ ì
  1806. ILLEGA╠ REQUEST¼ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
  1807. PARAMETE╥ LIST.
  1808.  
  1809. .cp 35
  1810. .aw off
  1811. .pm 0
  1812. 7.2.9. MODE SELECT(10) Command
  1813.  
  1814.  
  1815. .aw0
  1816. .pm0
  1817.                      Table 7-23: MODE SELECT(10) Command
  1818.  
  1819. ==============================================================================
  1820.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  1821. Byte |        |        |        |        |        |        |        |        |
  1822. ==============================================================================
  1823.  0   |                           Operation Code (55h)                        |
  1824. -----|-----------------------------------------------------------------------|
  1825.  1   | Logical Unit Number      |   PF   ⁿ         ReserveΣ         |  SP    |
  1826. -----|-----------------------------------------------------------------------|
  1827.  2   |                           Reserved                                    |
  1828. -----|-----------------------------------------------------------------------|
  1829.  3   |                           Reserved                                    |
  1830. -----|-----------------------------------------------------------------------|
  1831.  4   |                           Reserved                                    |
  1832. -----|-----------------------------------------------------------------------|
  1833.  5   |                           Reserved                                    |
  1834. -----|-----------------------------------------------------------------------|
  1835.  6   |                           Reserved                                    |
  1836. -----|-----------------------------------------------------------------------|
  1837.  7   | (MSB)                                                                 |
  1838. -----|---                        Parameter List Length                    ---|
  1839.  8   |                                                                 (LSB) |
  1840. -----|-----------------------------------------------------------------------|
  1841.  9   |                           Control                                     |
  1842. ==============================================================================
  1843. .aw on
  1844. .pm 3
  1845.  
  1846.  
  1847. ááThσ MOD┼ SELECT(10⌐ commanΣ (Tablσ ╖-23⌐ provide≤ ß mean≤ fo≥ thσ initiato≥ ì
  1848. t∩ specif∙ medium¼ logica∞ unit¼ o≥ periphera∞ devicσ parameter≤ t∩ thσ ì
  1849. target«  Seσ thσ MOD┼ SELECT(6⌐ commanΣ (7.2.8⌐ fo≥ ß descriptioε oµ thσ ì
  1850. field≤ iε thi≤ command«  Initiator≤ shoulΣ issuσ MOD┼ SENS┼ prio≥ t∩ MOD┼ ì
  1851. SELEC╘ t∩ determinσ supporteΣ pages¼ pagσ lengths¼ anΣ othe≥ parameters.
  1852.  
  1853. ááTarget≤ tha⌠ implemen⌠ thσ MOD┼ SELECT(10⌐ commanΣ shal∞ als∩ implemen⌠ thσ ì
  1854. MOD┼ SENSE(10⌐ command«  
  1855.  
  1856. .cp 25è.aw off
  1857. .pm 0
  1858. 7.2.10. MODE SENSE(6) Command
  1859.  
  1860.  
  1861.                       Table 7-24: MODE SENSE(6) Command
  1862.  
  1863. ==============================================================================
  1864.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  1865. Byte |        |        |        |        |        |        |        |        |
  1866. ==============================================================================
  1867.  0   |                           Operation Code (1Ah)                        |
  1868. -----|-----------------------------------------------------------------------|
  1869.  1   | Logical Unit Number      |Reserved|   DBD  |         Reserved         |
  1870. -----|-----------------------------------------------------------------------|
  1871.  2   |       PC        |                   Page Code                         |
  1872. -----|-----------------------------------------------------------------------|
  1873.  3   |                           Reserved                                    |
  1874. -----|-----------------------------------------------------------------------|
  1875.  4   |                           Allocation Length                           |
  1876. -----|-----------------------------------------------------------------------|
  1877.  5   |                           Control                                     |
  1878. ==============================================================================
  1879. .aw on 
  1880. .pm 3
  1881.  
  1882.  
  1883. ááThσ MOD┼ SENSE(6⌐ commanΣ (Tablσ ╖-24⌐ provide≤ ß mean≤ fo≥ ß targe⌠ t∩ ì
  1884. repor⌠ parameter≤ t∩ thσ initiator«  I⌠ i≤ ß complementar∙ commanΣ t∩ thσ MOD┼ ì
  1885. SELECT(6⌐ command« 
  1886.  
  1887. áá┴ disablσ blocδ descriptor≤ (DBD⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ targe⌠ ma∙ ì
  1888. returε zer∩ o≥ morσ blocδ descriptor≤ iε thσ returneΣ MOD┼ SENS┼ datß (seσ ì
  1889. 7.3.3)¼ a⌠ thσ target'≤ discretion«  ┴ DB─ bi⌠ oµ onσ specifie≤ tha⌠ thσ ì
  1890. targe⌠ shal∞ no⌠ returε an∙ blocδ descriptor≤ iε thσ returneΣ MOD┼ SENS┼ data.
  1891.  
  1892. ááThσ pagσ contro∞ (PC⌐ fielΣ define≤ thσ typσ oµ paramete≥ value≤ t∩ bσ ì
  1893. returned« Thσ pagσ contro∞ fielΣ i≤ defineΣ iε Table╖-25.
  1894.  
  1895. .aw off
  1896. .pm 0
  1897. .cp 10 
  1898.                         Table 7-25: Page Control Field
  1899.  
  1900.                ================================================
  1901.                Bit 7  Bit 6  Type of Parameter Values  Section
  1902.                -----  -----  ------------------------  --------
  1903.                  0      0    Current Values            7.2.10.1
  1904.                  0      1    Changeable Values         7.2.10.2
  1905.                  1      0    Default Values            7.2.10.3
  1906.                  1      1    Saved Values              7.2.10.4
  1907.                ================================================
  1908. .aw on
  1909. .pm 3
  1910.  
  1911.  
  1912. .cp 15èááThσ pagσ codσ specifie≤ whicΦ pagσ o≥ page≤ t∩ return«  Pagσ codσ usagσ i≤ ì
  1913. defineΣ iε Tablσ ╖-26.
  1914.  
  1915. .aw off
  1916. .pm 0
  1917. .cp 15
  1918.                  Table 7-26: Page Code Usage for All Devices 
  1919.  
  1920.           ==========================================================
  1921.           Page Code   Description                                  
  1922.           --------¡   ----------------------------------------------
  1923.              00h      Vendo≥ Specific (does not require page format)
  1924.           01h - 1Fh   See specific device-types
  1925.           20h - 3Eh   Vendo≥ Specific (page format required)
  1926.              3Fh      Return all pages 
  1927.           ==========================================================
  1928. .aw on
  1929. .pm 3
  1930.  
  1931.  
  1932. ááAε initiato≥ ma∙ reques⌠ an∙ onσ o≥ al∞ oµ thσ supporteΣ page≤ oµ ß target« ì
  1933. Iµ aε initiato≥ attempt≤ ß MOD┼ SENS┼ commanΣ witΦ ß pagσ codσ valuσ no⌠ ì
  1934. implementeΣ b∙ thσ target¼ thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ anΣ ì
  1935. shal∞ se⌠ thσ sensσ ke∙ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ t∩ ì
  1936. INVALI─ FIEL─ I╬ CDB« 
  1937.  
  1938. áá┴ pagσ codσ oµ 3FΦ indicate≤ tha⌠ al∞ page≤ implementeΣ b∙ thσ targe⌠ shal∞ ì
  1939. bσ returneΣ t∩ thσ initiator«  Pagσ 00h¼ iµ implemented¼ shal∞ bσ returneΣ ì
  1940. afte≥ al∞ othe≥ pages«  Target≤ tha⌠ implemen⌠ morσ thaε 25╢ byte≤ oµ modσ ì
  1941. pagσ paramete≥ datß anΣ blocδ descriptor≤ shal∞ returε CHEC╦ CONDITIO╬ statu≤ ì
  1942. t∩ ß MOD┼ SENSE(6⌐ reques⌠ oµ 3FΦ iε thσ pagσ codσ field«  Thσ sensσ ke∙ shal∞ ì
  1943. bσ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ ì
  1944. INVALI─ FIEL─ I╬ CDB« 
  1945.  
  1946. .lm 3
  1947. ááIMPLEMENTOR╙ NOTES║  
  1948. áá(1⌐ Target≤ tha⌠ suppor⌠ morσ thaε 25╢ byte≤ oµ blocδ descriptor≤ anΣ ì
  1949. ááparamete≥ page≤ shoulΣ conside≥ implementinτ thσ MOD┼ SELECT(10⌐ anΣ MOD┼ ì
  1950. ááSENSE(10⌐ commands«  Target≤ migh⌠ no⌠ suppor⌠ aε entirσ modσ pagσ a≤ ì
  1951. áádefineΣ iε thi≤ standard«  Typically¼ thσ modσ page≤ arσ returneΣ iε ì
  1952. ááascendinτ orde≥ (excep⌠ fo≥ pagσ 00h).
  1953. áá(2⌐ ┴ targe⌠ tha⌠ receive≤ ß MOD┼ SENS┼ commanΣ witΦ ß P├ fielΣ anΣ ß pagσ ì
  1954. áácodσ fielΣ oµ zer∩ shoulΣ returε ß modσ paramete≥ heade≥ anΣ blocδ ì
  1955. áádescripto≥ (iµ applicable)«  Thi≤ allow≤ fo≥ compatibilit∙ witΦ existinτ ì
  1956. ááSCS╔-▒ initiators.
  1957. .lm 1
  1958.  
  1959. ááThσ paramete≥ lis⌠ fo≥ MOD┼ SELEC╘ anΣ MOD┼ SENS┼ i≤ defineΣ iε 7.3.3«  ì
  1960. Part≤ oµ thσ paramete≥ list≤ arσ specificall∙ defineΣ fo≥ eacΦ devicσ type« 
  1961.  
  1962. .cp 5
  1963. .aw off
  1964. .pm 0
  1965. 7.2.10.1. Current Values
  1966. .aw on
  1967. .pm 3
  1968. áá┴ P├ fielΣ valuσ oµ 0Φ request≤ thσ targe⌠ t∩ returε thσ curren⌠ paramete≥ ì
  1969. value≤ fo≥ thσ specifieΣ pagσ codσ fo≥ thσ logica∞ unit«  Thσ curren⌠ value≤ ì
  1970. returneΣ are:
  1971. áá(1⌐ Thσ parameter≤ se⌠ iε thσ las⌠ successfu∞ MOD┼ SELEC╘ command.
  1972. áá(2⌐ Thσ saveΣ value≤ iµ ß MOD┼ SELEC╘ commanΣ ha≤ no⌠ beeε executeΣ sincσ ì
  1973. thσ las⌠ powe≥-on¼ harΣ RESE╘ condition¼ o≥ BU╙ DEVIC┼ RESE╘ message.
  1974. áá(3⌐ Thσ defaul⌠ value≤ iµ saveΣ value≤ arσ no⌠ availablσ o≥ no⌠ supported.
  1975.  
  1976. .cp 7è.aw off
  1977. .pm 0
  1978. 7.2.10.2. Changeable Values
  1979. .aw on
  1980. .pm 3
  1981. áá┴ P├ fielΣ valuσ oµ 1Φ request≤ thσ targe⌠ t∩ returε thσ changeablσ ì
  1982. paramete≥ masδ fo≥ thσ pagσ codσ specified«  Thσ pagσ requesteΣ shal∞ bσ ì
  1983. returneΣ containinτ informatioε tha⌠ indicate≤ whicΦ parameter≤ arσ ì
  1984. changeable«  Al∞ bit≤ oµ parameter≤ tha⌠ arσ changeablσ shal∞ bσ se⌠ t∩ one«  ì
  1985. Al∞ bit≤ oµ parameter≤ tha⌠ arσ targe⌠ defineΣ (no⌠ changeablσ b∙ thσ ì
  1986. initiator⌐ shal∞ bσ se⌠ t∩ zero.
  1987.  
  1988. .lm 3
  1989. ááNOTE║ Aε attemp⌠ t∩ changσ ß targe⌠-defineΣ paramete≥ (viß MOD┼ SELECT⌐ ì
  1990. ááresult≤ iε aε erro≥ conditioε (seσ 7.2.8).
  1991. .lm 1
  1992.  
  1993. .lm 3
  1994. ááIMPLEMENTOR╙ NOTE║  Thσ initiato≥ shoulΣ issuσ ß MOD┼ SENS┼ commanΣ witΦ thσ ì
  1995. ááP├ fielΣ se⌠ t∩ 1Φ anΣ thσ pagσ codσ fielΣ se⌠ t∩ 3FΦ t∩ determinσ whicΦ ì
  1996. áápage≤ arσ supported¼ whicΦ parameter≤ withiε thσ page≤ arσ changeable¼ anΣ ì
  1997. ááthσ supporteΣ lengtΦ oµ eacΦ pagσ prio≥ t∩ issuinτ an∙ MOD┼ SELEC╘ commands.
  1998. .lm 1
  1999.  
  2000. .cp 5
  2001. .aw off
  2002. .pm 0
  2003. 7.2.10.3. Default Values
  2004. .aw on
  2005. .pm 3
  2006. áá┴ P├ fielΣ valuσ oµ 2Φ request≤ thσ targe⌠ returε thσ defaul⌠ value≤ fo≥ thσ ì
  2007. pagσ codσ specified«  Thσ pagσ requesteΣ shal∞ bσ returneΣ witΦ eacΦ supporteΣ ì
  2008. paramete≥ se⌠ t∩ it≤ defaul⌠ value«  Parameter≤ no⌠ supporteΣ b∙ thσ targe⌠ ì
  2009. shal∞ bσ se⌠ t∩ zero« 
  2010.  
  2011. .cp 5
  2012. .aw off
  2013. .pm 0
  2014. 7.2.10.4. Saved Values
  2015. .aw on
  2016. .pm 3
  2017. áá┴ P├ fielΣ valuσ oµ 3Φ request≤ thσ targe⌠ returε thσ saveΣ value≤ fo≥ thσ ì
  2018. pagσ codσ specified«  Implementatioε oµ saveΣ pagσ parameter≤ i≤ optional«  ì
  2019. Thσ pagσ requesteΣ shal∞ bσ returneΣ witΦ thσ parameter≤ se⌠ t∩ thei≥ saveΣ ì
  2020. values«  Parameter≤ no⌠ supporteΣ b∙ thσ targe⌠ shal∞ bσ se⌠ t∩ zero«  Iµ ì
  2021. saveΣ value≤ arσ no⌠ implemented¼ thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ ì
  2022. CONDITIO╬ statu≤ witΦ thσ sensσ ke∙ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ ì
  2023. sensσ codσ se⌠ t∩ SAVIN╟ PARAMETER╙ NO╘ SUPPORTED.
  2024.  
  2025. .cp 6
  2026. .lm 3
  2027. ááIMPLEMENTOR╙ NOTE║  Thσ methoΣ oµ savinτ parameter≤ i≤ vendo≥-specific«  Thσ ì
  2028. ááparameter≤ arσ preserveΣ iε sucΦ ß manne≥ tha⌠ the∙ arσ retaineΣ wheε thσ ì
  2029. áátarge⌠ i≤ powereΣ down«  Al∞ savablσ page≤ caε bσ considereΣ saveΣ wheε ß ì
  2030. ááMOD┼ SELEC╘ commanΣ issueΣ witΦ thσ S╨ bi⌠ se⌠ t∩ onσ ha≤ returneΣ ß GOO─ ì
  2031. áástatu≤ o≥ afte≥ thσ successfu∞ completioε oµ ß FORMA╘ UNI╘ command« 
  2032. .lφ 1
  2033.  
  2034. .cp 5
  2035. .aw off
  2036. .pm 0
  2037. 7.2.10.5. Initial Responses
  2038. .aw on
  2039. .pm 3
  2040. ááAfte≥ ß powe≥-u≡ conditioε o≥ harΣ rese⌠ condition¼ thσ targe⌠ shal∞ responΣ ì
  2041. iε thσ followinτ manner:
  2042. áá(1⌐ Iµ defaul⌠ value≤ arσ requested¼ repor⌠ thσ defaul⌠ values.
  2043. áá(2⌐ Iµ saveΣ value≤ arσ requested¼ repor⌠ valiΣ restoreΣ parameters¼ o≥ ì
  2044. restorσ thσ parameter≤ anΣ repor⌠ them«  Iµ thσ saveΣ parameter≤ arσ no⌠ ablσ ì
  2045. t∩ bσ accesseΣ froφ thσ noε-volatilσ vendo≥-specifiπ location¼ terminatσ thσ ì
  2046. commanΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ thσ sensσ ke∙ se⌠ t∩ NO╘ READY«  Iµ ì
  2047. saveΣ parameter≤ arσ no⌠ implementeΣ responΣ a≤ defineΣ iε 7.2.10.4.
  2048. áá(3⌐ Iµ curren⌠ value≤ arσ requesteΣ anΣ curren⌠ value≤ havσ no⌠ beeε sen⌠ b∙ ì
  2049. thσ initiato≥ (viß ß MOD┼ SELEC╘ command)¼ thσ targe⌠ ma∙ returε eithe≥ thσ ì
  2050. defaul⌠ o≥ saveΣ parameter≤ (iµ implemented)¼ a≤ defineΣ above«  Iµ curren⌠ ì
  2051. value≤ havσ beeε sent¼ thσ curren⌠ value≤ shal∞ bσ reported« 
  2052. .lm 1
  2053.  
  2054. .cp 35è.aw off
  2055. .pm 0
  2056. 7.2.11. MODE SENSE(10) Command
  2057.  
  2058.  
  2059.                       Table 7-27: MODE SENSE(10) Command
  2060.  
  2061. ==============================================================================
  2062.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  2063. Byte |        |        |        |        |        |        |        |        |
  2064. ==============================================================================
  2065.  0   |                           Operation Code (5Ah)                        |
  2066. -----|-----------------------------------------------------------------------|
  2067.  1   | Logical Unit Number      |ReserveΣ|  DB─   ⁿ         Reserved         |
  2068. -----|-----------------------------------------------------------------------|
  2069.  2   |       PC        |                   Page Code                         |
  2070. -----|-----------------------------------------------------------------------|
  2071.  3   |                           Reserved                                    |
  2072. -----|-----------------------------------------------------------------------|
  2073.  4   |                           Reserved                                    |
  2074. -----|-----------------------------------------------------------------------|
  2075.  5   |                           Reserved                                    |
  2076. -----|-----------------------------------------------------------------------|
  2077.  6   |                           Reserved                                    |
  2078. -----|-----------------------------------------------------------------------|
  2079.  7   | (MSB)                                                                 |
  2080. -----|---                        Allocation Length                        ---|
  2081.  8   |                                                                 (LSB) |
  2082. -----|-----------------------------------------------------------------------|
  2083.  9   |                           Control                                     |
  2084. ==============================================================================
  2085. .aw on
  2086. .pm 3
  2087.  
  2088.  
  2089. ááThσ MOD┼ SENSE(10⌐ commanΣ (Tablσ ╖-27⌐ provide≤ ß mean≤ fo≥ ß targe⌠ t∩ ì
  2090. repor⌠ parameter≤ t∩ thσ initiator«  I⌠ i≤ ß complementar∙ commanΣ t∩ thσ MOD┼ ì
  2091. SELECT(10⌐ command«  Iµ thσ MOD┼ SELECT(10⌐ commanΣ i≤ implementeΣ thσ MOD┼ ì
  2092. SENSE(10⌐ commanΣ shal∞ bσ implemented«  Seσ thσ MOD┼ SENSE(6⌐ commanΣ fo≥ ß ì
  2093. descriptioε oµ thσ field≤ iε thi≤ command.
  2094.  
  2095. .cp 35è.aw off
  2096. .pm 0
  2097. 7.2.12. READ BUFFER
  2098.  
  2099.  
  2100.                        Table 7-28: READ BUFFER Command
  2101.  
  2102. ==============================================================================
  2103.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  2104. Byte |        |        |        |        |        |        |        |        |
  2105. ==============================================================================
  2106.  0   |                           Operation Code (3Ch)                        |
  2107. -----|-----------------------------------------------------------------------|
  2108.  1   | Logical Unit Number      |     Reserved    |           Mode           |
  2109. -----|-----------------------------------------------------------------------|
  2110.  2   |                           Buffer ID                                   |
  2111. -----|-----------------------------------------------------------------------|
  2112.  3   | (MSB)                                                                 |
  2113. - - -|- -                        Buffer Offset                            - -|
  2114.  5   |                                                                 (LSB) |
  2115. -----|-----------------------------------------------------------------------|
  2116.  6   | (MSB)                                                                 |
  2117. - - -|- -                        Allocation Length                        - -|
  2118.  8   |                                                                 (LSB) |
  2119. -----|-----------------------------------------------------------------------|
  2120.  9   |                           Control                                     |
  2121. ==============================================================================
  2122. .aw on
  2123. .pm 3
  2124.  
  2125.  
  2126. ááThσ REA─ BUFFE╥ commanΣ (Tablσ ╖-28⌐ i≤ useΣ iε conjunctioε witΦ thσ WRIT┼ ì
  2127. BUFFE╥ commanΣ a≤ ß diagnostiπ functioε fo≥ testinτ targe⌠ memor∙ anΣ thσ SCS╔ ì
  2128. bu≤ integrity«  Thi≤ commanΣ shal∞ no⌠ alte≥ thσ medium.
  2129. .cp9
  2130.  
  2131. ááThσ functioε oµ thi≤ commanΣ anΣ thσ meaninτ oµ field≤ withiε thσ commanΣ ì
  2132. descripto≥ blocδ depenΣ oε thσ content≤ oµ thσ modσ field«  Thσ modσ fielΣ i≤ ì
  2133. defineΣ iε Tablσ ╖-29.
  2134.  
  2135. .aw off
  2136. .pm 0
  2137. .cp 15
  2138.                       Table 7-29: READ BUFFER Mode Field
  2139.  
  2140.                ===============================================
  2141.                Mode  Description               Type
  2142.                ----  ------------------------  ---------------
  2143.                000b  Combined header and data  Optional
  2144.                001b  Vendor-specific           Vendo≥ specific
  2145.                010b  Data                      Optional
  2146.                011b  Descriptor                Optional
  2147.                100b  Reserved                  Reserved
  2148.                101b  Reserved                  Reserved
  2149.                110b  Reserved                  Reserved
  2150.                111b  Reserved                  Reserved
  2151.                ===============================================
  2152. .aw on
  2153. .pm 3
  2154.  
  2155. .cp 5
  2156. .lm 3
  2157. ááIMPLEMENTOR╙ NOTE║ Mode≤ 000Γ anΣ 001Γ arσ includeΣ fo≥ compatibilit∙ witΦ ì
  2158. ááproduct≤ tha⌠ werσ designeΣ prio≥ t∩ thσ generatioε oµ thi≤ standard«  Somσ ì
  2159. ááproduct≤ tha⌠ werσ designeΣ prio≥ t∩ thσ generatioε oµ thi≤ standarΣ ì
  2160. áárestric⌠ thσ availablσ lengtΦ t∩ t∩ 6553╡ bytes.
  2161. .lm 1
  2162. è.cp 5
  2163. .aw off
  2164. .pm 0
  2165. 7.2.12.1. Combined Header and Data Mode (000b)
  2166. .aw on
  2167. .pm 3
  2168. ááIε thi≤ mode¼ ß fou≥-bytσ heade≥ followeΣ b∙ datß byte≤ arσ returneΣ t∩ thσ ì
  2169. initiato≥ durinτ thσ DAT┴ I╬ phase«  Thσ buffe≥ I─ anΣ thσ buffe≥ offse⌠ ì
  2170. field≤ arσ reserved« 
  2171.  
  2172. ááThσ fou≥-bytσ REA─ BUFFE╥ heade≥ (Tablσ ╖-30⌐ i≤ followeΣ b∙ datß byte≤ froφ ì
  2173. thσ target'≤ datß buffer.
  2174.  
  2175. .cp 15
  2176. .aw off
  2177. .pm 0
  2178.                         Table 7-30: READ BUFFER Header
  2179.  
  2180. ==============================================================================
  2181.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  2182. Byte |        |        |        |        |        |        |        |        |
  2183. ==============================================================================
  2184.  0   |                           Reserved                                    |
  2185. -----|-----------------------------------------------------------------------|
  2186.  1   | (MSB)                                                                 |
  2187. - - -|- -                        Buffe≥ Capacit∙                          - -|
  2188.  3   |                                                                 (LSB) |
  2189. ==============================================================================
  2190. .aw on
  2191. .pm 3
  2192.  
  2193.  
  2194. ááThσ buffe≥ capacit∙ fielΣ specifie≤ thσ tota∞ numbe≥ oµ datß byte≤ tha⌠ arσ ì
  2195. availablσ iε thσ target'≤ datß buffer«  Thi≤ numbe≥ i≤ no⌠ reduceΣ t∩ reflec⌠ ì
  2196. thσ allocatioε lengtΦ no≥ i≤ i⌠ reduceΣ t∩ reflec⌠ thσ actua∞ numbe≥ oµ byte≤ ì
  2197. writteε usinτ thσ WRIT┼ BUFFE╥ command«  Followinτ thσ REA─ BUFFE╥ header¼ thσ ì
  2198. targe⌠ shal∞ transfe≥ datß froφ it≤ datß buffer«  Thσ targe⌠ terminate≤ thσ ì
  2199. DAT┴ I╬ phasσ wheε allocatioε lengtΦ byte≤ oµ heade≥ plu≤ datß havσ beeε ì
  2200. transferreΣ o≥ wheε al∞ availablσ heade≥ anΣ buffe≥ datß havσ beeε transferreΣ ì
  2201. t∩ thσ initiator¼ whicheve≥ i≤ less.
  2202.  
  2203. .cp 5
  2204. .aw off
  2205. .pm 0
  2206. 7.2.12.2. Vendor-Specific Mode (001b)
  2207. .aw on
  2208. .pm 3
  2209. ááIε thi≤ mode¼ thσ meaninτ oµ thσ buffe≥ ID¼ buffe≥ offset¼ anΣ allocatioε ì
  2210. lengtΦ field≤ arσ no⌠ specifieΣ b∙ thi≤ standard.
  2211.  
  2212. .cp 13
  2213. .aw off
  2214. .pm 0
  2215. 7.2.12.3. Data Mode (010b)
  2216. .aw on
  2217. .pm 3
  2218. ááIε thi≤ mode¼ thσ DAT┴ I╬ phasσ contain≤ buffe≥ data«  Thσ buffe≥ I─ fielΣ ì
  2219. identifie≤ ß specifiπ buffe≥ withiε thσ targe⌠ froφ whicΦ datß shal∞ bσ ì
  2220. transferred«  Thσ vendo≥ assign≤ buffe≥ I─ code≤ t∩ buffer≤ withiε thσ target« ì
  2221. Buffe≥ I─ zer∩ shal∞ bσ supported«  Iµ morσ thaε onσ buffe≥ i≤ supported¼ ì
  2222. additiona∞ buffe≥ I─ code≤ shal∞ bσ assigneΣ contiguously¼ beginninτ witΦ one« ì
  2223. Buffe≥ I─ codσ assignment≤ fo≥ thσ REA─ BUFFE╥ commanΣ shal∞ bσ thσ samσ a≤ ì
  2224. fo≥ thσ WRIT┼ BUFFE╥ command«  Iµ aε unsupporteΣ buffe≥ I─ codσ i≤ selected¼ ì
  2225. thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ status¼ shal∞ se⌠ thσ sensσ ke∙ t∩ ì
  2226. ILLEGA╠ REQUES╘ anΣ se⌠ thσ additiona∞ sensσ codσ t∩ ILLEGA╠ FIEL─ I╬ CDB«  ì
  2227. Thσ targe⌠ terminate≤ thσ DAT┴ I╬ phasσ wheε allocatioε lengtΦ byte≤ havσ beeε ì
  2228. transferreΣ o≥ wheε al∞ thσ availablσ datß froφ thσ buffe≥ ha≤ beeε ì
  2229. transferreΣ t∩ thσ initiator¼ whicheve≥ i≤ less.
  2230.  
  2231. .cp 6
  2232. ááThσ buffe≥ offse⌠ fielΣ contain≤ thσ bytσ offse⌠ withiε thσ specifieΣ buffe≥ ì
  2233. wherσ datß shal∞ bσ transferreΣ from«  Thσ initiato≥ shoulΣ conforφ t∩ thσ ì
  2234. offse⌠ boundar∙ requirement≤ returneΣ iε thσ REA─ BUFFE╥ descripto≥ (seσ ì
  2235. 7.2.12.4)«  Iµ thσ targe⌠ i≤ unablσ t∩ accep⌠ thσ specifieΣ buffe≥ offset¼ i⌠ ì
  2236. shal∞ returε CHEC╦ CONDITIO╬ status¼ shal∞ se⌠ thσ sensσ ke∙ t∩ ILLEGA╠ ì
  2237. REQUES╘ anΣ se⌠ thσ additiona∞ sensσ codσ t∩ ILLEGA╠ FIEL─ I╬ CDB.è
  2238. .cp 5
  2239. .aw off
  2240. .pm 0
  2241. 7.2.12.4. Descriptor Mode (011b)
  2242. .aw on
  2243. .pm 3
  2244. ááIε thi≤ mode¼ ß maximuφ oµ fou≥ byte≤ oµ REA─ BUFFE╥ descripto≥ informatioε ì
  2245. arσ returned«  Thσ targe⌠ shal∞ returε thσ descripto≥ informatioε fo≥ thσ ì
  2246. buffe≥ specifieΣ b∙ thσ buffe≥ I─ (seσ thσ descriptioε oµ thσ buffe≥ I─ iε ì
  2247. 7.2.12.3)«  Iµ therσ i≤ n∩ buffe≥ associateΣ witΦ thσ specifieΣ buffe≥ ID¼ thσ ì
  2248. targe⌠ shal∞ returε al∞ zero≤ iε thσ REA─ BUFFE╥ descriptor«  Thσ buffe≥ ì
  2249. offse⌠ fielΣ i≤ reserveΣ iε thi≤ mode«  Thσ allocatioε lengtΦ shoulΣ bσ se⌠ t∩ ì
  2250. fou≥ o≥ greater«  Thσ targe⌠ shal∞ transfe≥ thσ lesse≥ oµ thσ allocatioε ì
  2251. lengtΦ o≥ fou≥ byte≤ oµ REA─ BUFFE╥ descriptor«  Thσ REA─ BUFFE╥ descripto≥ i≤ ì
  2252. defineΣ a≤ showε iε Tablσ ╖-31.
  2253.  
  2254. .cp 15
  2255. .aw off
  2256. .pm 0
  2257.                       Table 7-31: READ BUFFER Descriptor
  2258.  
  2259. ==============================================================================
  2260.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  2261. Byte |        |        |        |        |        |        |        |        |
  2262. ==============================================================================
  2263.  0   |                           Offset Boundary                             |
  2264. -----|-----------------------------------------------------------------------|
  2265.  1   | (MSB)                                                                 |
  2266. - - -|- -                        Buffer Capacity                          - -|
  2267.  3   |                                                                 (LSB) |
  2268. ==============================================================================
  2269. .aw on
  2270. .pm 3
  2271.  
  2272.  
  2273. .cp 5
  2274. ááThσ offse⌠ boundar∙ fielΣ return≤ thσ boundar∙ alignmen⌠ withiε thσ selecteΣ ì
  2275. buffe≥ fo≥ subsequen⌠ WRIT┼ BUFFE╥ anΣ REA─ BUFFE╥ commands«  Thσ valuσ ì
  2276. containeΣ iε thσ offse⌠ boundar∙ fielΣ shal∞ bσ interpreteΣ a≤ ß powe≥ oµ two.
  2277.  
  2278. .cp 20
  2279. ááThσ valuσ containeΣ iε thσ buffe≥ offse⌠ fielΣ oµ subsequen⌠ WRIT┼ BUFFE╥ ì
  2280. anΣ REA─ BUFFE╥ command≤ shoulΣ bσ ß multiplσ oµ 2offse⌠ boundaryö a≤ showε iε ì
  2281. Tablσ ╖-32.
  2282.  
  2283. .aw off
  2284. .pm 0
  2285. .cp 15
  2286.                       Table 7-32: Buffer Offset Boundary
  2287.  
  2288. ==============================================================================
  2289.       Offset 
  2290.       Boundary  2Offset Boundary  Buffer Offsets
  2291.       --------  ----------------  --------------------------------------
  2292.          0           20 = 1       Byte boundaries
  2293.          1           21 = 2       Even-byte boundaries
  2294.          2           22 = 4       Four-byte boundaries
  2295.          3           23 = 8       Eight-byte boundaries
  2296.          4           24 = 16      16-byte boundaries
  2297.          .              .                .
  2298.          .              .                .
  2299.          .              .                .
  2300.         FFh     Not Applicable    0 is the only supported buffer offset.
  2301. ==============================================================================
  2302. .aw on
  2303. .pm 3
  2304.  
  2305.  
  2306. .cp 2
  2307. ááThσ buffe≥ capacit∙ fielΣ shal∞ returε thσ sizσ oµ thσ selecteΣ buffe≥ iε ì
  2308. bytes.
  2309. è.cp 8
  2310. .lm 3
  2311. ááIMPLEMENTOR╙ NOTE║  Iε ß multΘ-taskinτ system¼ ß buffe≥ ma∙ bσ altereΣ ì
  2312. áábetweeε thσ WRIT┼ BUFFE╥ anΣ REA─ BUFFE╥ command≤ b∙ anothe≥ task«  Buffe≥ ì
  2313. áátestinτ application≤ ma∙ wisΦ t∩ insurσ tha⌠ onl∙ ß singlσ tasδ i≤ active« ì
  2314. ááUsσ oµ reservation≤ (t∩ al∞ logica∞ unit≤ oε thσ device⌐ o≥ linkeΣ command≤ ì
  2315. ááma∙ als∩ bσ helpfu∞ iε avoidinτ buffe≥ alteratioε betweeε thesσ tw∩ ì
  2316. áácommands« 
  2317. .lm 1
  2318.  
  2319. .cp 35
  2320. .aw off
  2321. .pm 0
  2322. 7.2.13. RECEIVE DIAGNOSTIC RESULTS Command
  2323.  
  2324.  
  2325.                 Table 7-33: RECEIVE DIAGNOSTIC RESULTS Command
  2326.  
  2327. ==============================================================================
  2328.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  2329. Byte |        |        |        |        |        |        |        |        |
  2330. ==============================================================================
  2331.  0   |                           Operation Code (1Ch)                        |
  2332. -----|-----------------------------------------------------------------------|
  2333.  1   | Logical Unit Number      |             Reserved                       |
  2334. -----|-----------------------------------------------------------------------|
  2335.  2   |                           Reserved                                    |
  2336. -----|-----------------------------------------------------------------------|
  2337.  3   | (MSB)                                                                 |
  2338. -----|---                        Allocation Length                        ---|
  2339.  4   |                                                                 (LSB) |
  2340. -----|-----------------------------------------------------------------------|
  2341.  5   |                           Control                                     |
  2342. ==============================================================================
  2343. .aw on
  2344. .pm 3
  2345.  
  2346.  
  2347. ááThσ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ (Tablσ ╖-33⌐ request≤ analysi≤ datß ì
  2348. bσ sen⌠ t∩ thσ initiato≥ afte≥ completioε oµ ß SEN─ DIAGNOSTI├ commanΣ (seσ ì
  2349. 7.2.15)«  Iµ thσ targe⌠ support≤ thσ optiona∞ pagσ forma⌠ thσ pagσ codσ fielΣ ì
  2350. sen⌠ iε thσ previou≤ SEN─ DIAGNOSTI├ commanΣ specifie≤ thσ forma⌠ oµ thσ ì
  2351. returneΣ data« 
  2352.  
  2353. .lm3
  2354. ááIMPLEMENTOR╙ NOTES║ 
  2355. áá(1⌐ T∩ insurσ tha⌠ thσ diagnostiπ commanΣ informatioε i≤ no⌠ destroyeΣ b∙ ß ì
  2356. áácommanΣ sen⌠ froφ anothe≥ initiator¼ thσ SEN─ DIAGNOSTI├ commanΣ shoulΣ ì
  2357. ááeithe≥ bσ linkeΣ t∩ thσ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ o≥ thσ logica∞ ì
  2358. ááuni⌠ shoulΣ bσ reserved.
  2359. áá(2⌐ AlthougΦ diagnostiπ softwarσ i≤ generall∙ devicσ-specific¼ thi≤ commanΣ ì
  2360. ááanΣ thσ SEN─ DIAGNOSTI├ commanΣ providσ ß mean≤ t∩ isolatσ thσ operatinτ ì
  2361. áásysteφ softwarσ froφ thσ devicσ-specifiπ diagnostiπ software« Hencσ thσ ì
  2362. ááoperatinτ systeφ caε remaiε devicσ-independent«  Thi≤ als∩ allow≤ diagnostiπ ì
  2363. áásoftwarσ t∩ bσ morσ easil∙ transferreΣ t∩ othe≥ operatinτ systems.
  2364. .lm 1
  2365. .pm 3
  2366.  
  2367. ááSeσ 7.3.▒ fo≥ RECEIV┼ DIAGNOSTI├ RESULT╙ pagσ forma⌠ definitions.
  2368.  
  2369. .cp 25è.aw off
  2370. .pm 0
  2371. 7.2.14. REQUEST SENSE Command
  2372.  
  2373.  
  2374.                       Table 7-34: REQUEST SENSE Command
  2375.  
  2376. ==============================================================================
  2377.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  2378. Byte |        |        |        |        |        |        |        |        |
  2379. ==============================================================================
  2380.  0   |                           Operation Code (03h)                        |
  2381. -----|-----------------------------------------------------------------------|
  2382.  1   | Logical Unit Number      |                  Reserved                  |
  2383. -----|-----------------------------------------------------------------------|
  2384.  2   |                           Reserved                                    |
  2385. -----|-----------------------------------------------------------------------|
  2386.  3   |                           Reserved                                    |
  2387. -----|-----------------------------------------------------------------------|
  2388.  4   |                           Allocation Length                           |
  2389. -----|-----------------------------------------------------------------------|
  2390.  5   |                           Control                                     |
  2391. ==============================================================================
  2392. .aw on
  2393. .pm 3
  2394.  
  2395.  
  2396. ááThσ REQUES╘ SENS┼ commanΣ (Tablσ ╖-34⌐ request≤ tha⌠ thσ targe⌠ transfe≥ ì
  2397. sensσ datß t∩ thσ initiator.
  2398.  
  2399. ááThσ sensσ data:
  2400. áá(1⌐ shal∞ bσ availablσ iµ thσ previou≤ commanΣ t∩ thσ specifieΣ I_T_° nexu≤ ì
  2401. terminateΣ witΦ CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ status
  2402. áá(2⌐ shal∞ bσ availablσ iµ othe≥ informatioε (e.g.¼ mediuφ position⌐ i≤ ì
  2403. availablσ iε an∙ field
  2404. áá(3⌐ ma∙ bσ availablσ iµ thσ previou≤ commanΣ t∩ thσ specifieΣ I_T_° nexu≤ ì
  2405. endeΣ witΦ aε unexpecteΣ BU╙ FRE┼ erro≥ (5.1.1).
  2406.  
  2407. ááIµ thσ targe⌠ ha≤ n∩ sensσ datß availablσ t∩ return¼ i⌠ shal∞ returε ß sensσ ì
  2408. ke∙ oµ N╧ SENS┼ anΣ aε additiona∞ sensσ codσ oµ N╧ ADDITIONA╠ SENS┼ ì
  2409. INFORMATION.
  2410.  
  2411. ááThσ sensσ datß shal∞ bσ preserveΣ b∙ thσ targe⌠ fo≥ thσ initiato≥ unti∞ ì
  2412. retrieveΣ b∙ thσ REQUES╘ SENS┼ commanΣ o≥ unti∞ thσ receip⌠ oµ an∙ othe≥ ì
  2413. commanΣ fo≥ thσ samσ I_T_° nexu≤ (seσ 6.6)«  Sensσ datß shal∞ bσ cleareΣ upoε ì
  2414. receip⌠ oµ an∙ subsequen⌠ commanΣ (includinτ REQUES╘ SENSE⌐ t∩ thσ samσ I_T_° ì
  2415. nexus.
  2416.  
  2417. .pm 0
  2418. .lm 3
  2419. ááIMPLEMENTOR╙ NOTE║ Somσ targe⌠ implementation≤ d∩ no⌠ updatσ sensσ datß ì
  2420. ááexcep⌠ oε command≤ tha⌠ returε CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ status«  ì
  2421. ááThu≤ wheε pollinτ fo≥ ß logica∞ uni⌠ t∩ becomσ ready¼ thσ initiato≥ shoulΣ ì
  2422. ááissuσ TES╘ UNI╘ READ┘ command≤ unti∞ GOO─ statu≤ i≤ returned«  Iµ desired¼ ì
  2423. ááthσ initiato≥ ma∙ issuσ REQUES╘ SENS┼ command≤ afte≥ thσ TES╘ UNI╘ READ┘ ì
  2424. áácommand≤ tha⌠ returε CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ statu≤ t∩ obtaiε ì
  2425. ááthσ sensσ data.
  2426. .pm 3
  2427. .lm 1
  2428.  
  2429. .cp 5èááThσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ fo≥ ß REQUES╘ SENS┼ commanΣ ì
  2430. onl∙ t∩ repor⌠ error≤ specifiπ t∩ thσ commanΣ itself«  Fo≥ example:
  2431. áá(1⌐ ┴ noε-zer∩ reserveΣ bi⌠ i≤ detecteΣ iε thσ commanΣ descripto≥ block.
  2432. áá(2⌐ Aε unrecovereΣ parit∙ erro≥ i≤ detecteΣ oε thσ datß bus« 
  2433. áá(3⌐ ┴ targe⌠ malfunctioε prevent≤ returε oµ thσ sensσ data.
  2434.  
  2435. ááIµ ß recovereΣ erro≥ occur≤ durinτ thσ executioε oµ thσ REQUES╘ SENS┼ ì
  2436. command¼ thσ targe⌠ shal∞ returε thσ sensσ datß witΦ GOO─ status«  Iµ ß targe⌠ ì
  2437. return≤ CHEC╦ CONDITIO╬ statu≤ fo≥ ß REQUES╘ SENS┼ commanΣ thσ sensσ datß ma∙ ì
  2438. bσ invalid« 
  2439.  
  2440. .pm 0
  2441. .lm 3
  2442. ááIMPLEMENTOR╙ NOTE║  Thσ sensσ datß appropriatσ t∩ thσ selectioε oµ aε ì
  2443. ááinvaliΣ logica∞ uni⌠ i≤ defineΣ iε 6.5.3.
  2444. .pm 3
  2445. .lm 1
  2446.  
  2447. ááTarget≤ shal∞ bσ capablσ oµ returninτ eighteeε byte≤ oµ datß iε responsσ t∩ ì
  2448. ß REQUES╘ SENS┼ command«  Iµ thσ allocatioε lengtΦ i≤ eighteeε o≥ greate≥ anΣ ì
  2449. ß targe⌠ return≤ les≤ thaε eighteeε byte≤ oµ datß thσ initiato≥ shoulΣ assumσ ì
  2450. tha⌠ thσ byte≤ no⌠ transferreΣ woulΣ havσ beeε zero≤ haΣ thσ targe⌠ returneΣ ì
  2451. thosσ bytes«  Initiator≤ caε determinσ ho≈ mucΦ sensσ datß ha≤ beeε returneΣ ì
  2452. b∙ examininτ thσ allocatioε lengtΦ paramete≥ iε thσ commanΣ descripto≥ blocδ ì
  2453. anΣ thσ additiona∞ sensσ lengtΦ iε thσ sensσ data«  Target≤ shal∞ no⌠ adjus⌠ ì
  2454. thσ additiona∞ sensσ lengtΦ t∩ reflec⌠ truncatioε iµ thσ allocatioε lengtΦ i≤ ì
  2455. les≤ thaε thσ sensσ datß available« 
  2456.  
  2457. .cp 40è.aw off
  2458. .pm 0
  2459.             Table 7-35: Error Codes 70h and 71h Sense Data Format
  2460.  
  2461. ==============================================================================
  2462.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  2463. Byte |        |        |        |        |        |        |        |        |
  2464. ==============================================================================
  2465.  0   | Valid  |                  Error Code (70h or 71h)                     |
  2466. -----|-----------------------------------------------------------------------|
  2467.  1   |                           Segment Number                              |
  2468. -----|-----------------------------------------------------------------------|
  2469.  2   |Filemark|  EOM   |  ILI   |Reserved|         Sense Key                 |
  2470. -----|-----------------------------------------------------------------------|
  2471.  3   | (MSB)                                                                 |
  2472. - - -|- -                        Information                              - -|
  2473.  6   |                                                                 (LSB) |
  2474. -----|-----------------------------------------------------------------------|
  2475.  7   |                           Additional Sense Length (n-7)               |
  2476. -----|-----------------------------------------------------------------------|
  2477.  8   | (MSB)                                                                 |
  2478. - - -|- -                        Command-Specific Information             - -|
  2479.  11  |                                                                 (LSB) |
  2480. -----|-----------------------------------------------------------------------|
  2481.  12  |                           Additional Sense Code                       |
  2482. -----|-----------------------------------------------------------------------|
  2483.  13  |                           Additional Sense Code Qualifier             |
  2484. -----|-----------------------------------------------------------------------|
  2485.  14  |                           Field Replaceable Unit Code                 |
  2486. -----|-----------------------------------------------------------------------|
  2487. 15 to|  SKSV  |                                                              |
  2488. - - -|---------- -               Sense-Key Specific                       - -|
  2489.  17  |                                                                       |
  2490. -----|-----------------------------------------------------------------------|
  2491. 18 to|                                                                       |
  2492. - - -|- -                        Additional Sense Bytes                   - -|
  2493.  n   |                                                                       |
  2494. ==============================================================================
  2495. .aw on
  2496. .pm 3
  2497.  
  2498.  
  2499. áá┴ valiΣ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ informatioε fielΣ i≤ no⌠ a≤ defineΣ ì
  2500. iε thi≤ standard«  ┴ valiΣ bi⌠ oµ onσ indicate≤ thσ informatioε fielΣ contain≤ ì
  2501. valiΣ informatioε a≤ defineΣ iε thi≤ standard«  Target≤ shal∞ implemen⌠ thσ ì
  2502. valiΣ bit.
  2503.  
  2504. .cp5
  2505. ááThσ sensσ datß forma⌠ fo≥ erro≥ code≤ 70Φ (curren⌠ errors⌐ anΣ 71Φ (deferreΣ ì
  2506. errors⌐ arσ defineΣ iε Tablσ ╖-35«  Erro≥ codσ value≤ oµ 72Φ t∩ 7EΦ arσ ì
  2507. reserved«  Erro≥ codσ 7FΦ i≤ fo≥ ß vendo≥-specifiπ sensσ datß format«  Target≤ ì
  2508. shal∞ implemen⌠ erro≥ codσ 70h╗ implementatioε oµ erro≥ codσ 71Φ i≤ optional« ì
  2509. Erro≥ codσ value≤ oµ 00Φ t∩ 6FΦ arσ no⌠ defineΣ b∙ thi≤ standarΣ anΣ thei≥ usσ ì
  2510. i≤ no⌠ recommended«  
  2511.  
  2512. .cp 4
  2513. ááThσ segmen⌠ numbe≥ fielΣ contain≤ thσ numbe≥ oµ thσ curren⌠ segmen⌠ ì
  2514. descripto≥ iµ thσ REQUES╘ SENS┼ commanΣ i≤ iε responsσ t∩ ß COPY¼ COMPARE¼ o≥ ì
  2515. COP┘ AN─ VERIF┘ command«  U≡ t∩ 25╢ segment≤ arσ supporteΣ beginninτ witΦ ì
  2516. segmen⌠ zero«  
  2517. è.cp 6
  2518. ááThσ filemarδ bi⌠ i≤ mandator∙ fo≥ sequentia∞-acces≤ device≤ anΣ thi≤ bi⌠ i≤ ì
  2519. reserveΣ fo≥ al∞ othe≥ devicσ types«  ┴ filemarδ bi⌠ oµ onσ indicate≤ tha⌠ thσ ì
  2520. curren⌠ commanΣ ha≤ reaΣ ß filemarδ o≥ setmark«  Thσ additiona∞ sensσ codσ ì
  2521. fielΣ ma∙ bσ useΣ t∩ indicatσ whethe≥ ß filemarδ o≥ setmarδ wa≤ read«  ì
  2522. Reportinτ oµ setmark≤ i≤ optiona∞ anΣ indicateΣ b∙ thσ RSmδ bi⌠ fo≥ ì
  2523. sequentia∞-acces≤ device≤ iε thσ configuratioε parameter≤ pagσ (seσ 9.3.3).
  2524.  
  2525. .cp3
  2526. ááThσ enΣ-oµ-mediuφ (EOM⌐ bi⌠ i≤ mandator∙ fo≥ sequentia∞-acces≤ anΣ printe≥ ì
  2527. device≤ anΣ thi≤ bi⌠ i≤ reserveΣ fo≥ al∞ othe≥ devicσ types«  Aε EO═ bi⌠ oµ ì
  2528. onσ indicate≤ tha⌠ aε enΣ-oµ-mediuφ conditioε (enΣ-oµ-partition¼ beginninτ-oµ-ì
  2529. partition¼ ou⌠-oµ-paper¼ etc.⌐ exists«  Fo≥ sequentia∞-acces≤ devices¼ thi≤ ì
  2530. bi⌠ indicate≤ tha⌠ thσ uni⌠ i≤ a⌠ o≥ pas⌠ thσ earl∙-warninτ iµ thσ directioε ì
  2531. wa≤ forwarΣ o≥ tha⌠ thσ commanΣ coulΣ no⌠ bσ completeΣ becausσ beginninτ-oµ-ì
  2532. partitioε wa≤ encountereΣ iµ thσ directioε wa≤ reverse«  
  2533.  
  2534. ááAε incorrec⌠ lengtΦ indicato≥ (ILI⌐ bi⌠ oµ onσ usuall∙ indicate≤ tha⌠ thσ ì
  2535. requesteΣ logica∞ blocδ lengtΦ diΣ no⌠ matcΦ thσ logica∞ blocδ lengtΦ oµ thσ ì
  2536. datß oε thσ medium.
  2537.  
  2538. .cp 3  
  2539. ááThσ sensσ key¼ additiona∞ sensσ codσ anΣ additiona∞ sensσ codσ qualifie≥ ì
  2540. providσ ß hierarch∙ oµ information«  Thσ intentioε oµ thσ hierarch∙ i≤ t∩ ì
  2541. providσ ß to≡-dowε approacΦ fo≥ aε initiato≥ t∩ determinσ informatioε relatinτ ì
  2542. t∩ thσ erro≥ anΣ exceptioε conditions«  Thσ sensσ ke∙ provide≤ generiπ ì
  2543. categorie≤ iε whicΦ erro≥ anΣ exceptioε condition≤ caε bσ reported«  ì
  2544. Initiator≤ woulΣ typicall∙ usσ sensσ key≤ fo≥ higΦ leve∞ erro≥ recover∙ ì
  2545. procedures«  Additiona∞ sensσ code≤ providσ furthe≥ detai∞ describinτ thσ ì
  2546. sensσ key«  Additiona∞ sensσ codσ qualifier≤ adΣ furthe≥ detai∞ t∩ thσ ì
  2547. additiona∞ sensσ code«  Thσ additiona∞ sensσ codσ anΣ additiona∞ sensσ codσ ì
  2548. qualifie≥ caε bσ useΣ b∙ initiator≤ wherσ sophisticateΣ erro≥ recover∙ ì
  2549. procedure≤ requirσ detaileΣ informatioε describinτ thσ erro≥ anΣ exceptioε ì
  2550. conditions.
  2551.  
  2552. .cp 3
  2553. ááThσ sensσ ke∙ fielΣ i≤ mandator∙ anΣ indicate≤ generiπ informatioε ì
  2554. describinτ aε erro≥ o≥ exceptioε condition«  Thσ sensσ key≤ arσ defineΣ iε ì
  2555. Table≤ ╖-3╣ anΣ ╖-40.
  2556.  
  2557. .cp 4
  2558. ááThσ content≤ oµ thσ informatioε fielΣ i≤ devicσ-typσ o≥ commanΣ specifiπ anΣ ì
  2559. i≤ defineΣ withiε thσ appropriatσ sectioε fo≥ thσ devicσ typσ o≥ commanΣ oµ ì
  2560. interest«  Target≤ shal∞ implemen⌠ thσ informatioε field«  Unles≤ specifieΣ ì
  2561. otherwise¼ thi≤ fielΣ contains:
  2562. .cp 3
  2563. áá(1⌐ Thσ unsigneΣ logica∞ blocδ addres≤ associateΣ witΦ thσ sensσ key¼ fo≥ ì
  2564. direc⌠-acces≤ device≤ (Devicσ Typσ 0)¼ writσ-oncσ device≤ (Devicσ Typσ 4)¼ C─-ì
  2565. RO═ device≤ (Devicσ Typσ 5)¼ anΣ optica∞ memor∙ device≤ (Devicσ Typσ 7).
  2566. .cp 5
  2567. áá(2⌐ Thσ differencσ (residue⌐ oµ thσ requesteΣ lengtΦ minu≤ thσ actua∞ lengtΦ ì
  2568. iε eithe≥ byte≤ o≥ blocks¼ a≤ determineΣ b∙ thσ command¼ fo≥ sequentia∞-acces≤ ì
  2569. device≤ (Devicσ Typσ 1)¼ printe≥ device≤ (Devicσ Typσ 2)¼ processo≥ device≤ ì
  2570. (Devicσ Typσ 3⌐ anΣ somσ direc⌠ acces≤ devicσ commands¼ excep⌠ a≤ defineΣ fo≥ ì
  2571. (4⌐ below« (Negativσ value≤ arσ indicateΣ b∙ two'≤ complemen⌠ notation.)
  2572. .cp 3
  2573. áá(3⌐ Thσ differencσ (residue⌐ oµ thσ requesteΣ numbe≥ oµ block≤ minu≤ thσ ì
  2574. actua∞ numbe≥ oµ block≤ copieΣ o≥ compareΣ fo≥ thσ curren⌠ segmen⌠ descripto≥ ì
  2575. oµ ß COPY¼ COMPARE¼ o≥ COP┘ AN─ VERIF┘ command.
  2576. .cp 10èáá(4⌐ Fo≥ sequentia∞-acces≤ device≤ operatinτ iε buffereΣ mode≤ 1Φ o≥ 2Φ tha⌠ ì
  2577. detec⌠ aε unrecoverablσ writσ erro≥ wheε unwritteε datß blocks¼ filemarks¼ o≥ ì
  2578. setmark≤ remaiε iε thσ buffer¼ thσ valuσ oµ thσ informatioε fielΣ fo≥ al∞ ì
  2579. command≤ shal∞ be:
  2580. .pm 6
  2581. .lm 3
  2582. ááááá(a⌐ thσ tota∞ numbe≥ oµ datß blocks¼ filemarks¼ anΣ setmark≤ iε thσ ì
  2583. áábuffe≥ iµ thσ devicσ i≤ iε fixeΣ blocδ modσ (blocδ lengtΦ fielΣ oµ thσ MOD┼ ì
  2584. ááSENS┼ blocδ descripto≥ i≤ noε-zer∩ anΣ thσ fixeΣ bi⌠ oµ thσ WRIT┼ commanΣ i≤ ì
  2585. ááone)« 
  2586. ááááá(b⌐ thσ numbe≥ oµ byte≤ iε thσ buffer¼ includinτ filemark≤ anΣ setmarks¼ ì
  2587. ááiµ thσ devicσ i≤ iε variablσ modσ (thσ fixeΣ bi⌠ oµ thσ WRIT┼ commanΣ i≤ ì
  2588. áázero)«   
  2589. .lm 1
  2590. .pm 3
  2591.  
  2592. .cp 4
  2593. ááThσ additiona∞ sensσ lengtΦ fielΣ indicate≤ thσ numbe≥ oµ additiona∞ sensσ ì
  2594. byte≤ t∩ follow«  Iµ thσ allocatioε lengtΦ oµ thσ commanΣ descripto≥ blocδ i≤ ì
  2595. to∩ smal∞ t∩ transfe≥ al∞ oµ thσ additiona∞ sensσ bytes¼ thσ additiona∞ sensσ ì
  2596. lengtΦ i≤ no⌠ adjusteΣ t∩ reflec⌠ thσ truncation.
  2597.  
  2598. .cp 4
  2599. ááThσ commanΣ-specifiπ informatioε fielΣ contain≤ informatioε tha⌠ depend≤ oε ì
  2600. thσ commanΣ whicΦ wa≤ executed«  Furthe≥ meaninτ fo≥ thi≤ fielΣ i≤ defineΣ ì
  2601. withiε thσ commanΣ description«  Thσ commanΣ-specifiπ informatioε fielΣ i≤ ì
  2602. mandator∙ iµ thσ targe⌠ support≤ an∙ oµ thσ followinτ commands║  COPY¼ ì
  2603. COMPARE¼ COP┘ AN─ VERIFY¼ SEARC╚ DATA¼ anΣ REASSIG╬ BLOCKS.
  2604.  
  2605. .cp 4
  2606. ááThσ additiona∞ sensσ codσ fielΣ indicate≤ furthe≥ informatioε relateΣ t∩ thσ ì
  2607. erro≥ o≥ exceptioε conditioε reporteΣ iε thσ sensσ ke∙ field«  Target≤ shal∞ ì
  2608. suppor⌠ thσ additiona∞ sensσ codσ field«  Suppor⌠ oµ thσ additiona∞ sensσ ì
  2609. code≤ no⌠ explicitl∙ requireΣ b∙ thi≤ standarΣ i≤ optional«  ┴ lis⌠ oµ ì
  2610. additiona∞ sensσ code≤ i≤ iε Tablσ ╖-41«  Iµ thσ targe⌠ doe≤ no⌠ havσ furthe≥ ì
  2611. informatioε relateΣ t∩ thσ erro≥ o≥ exceptioε condition¼ thσ additiona∞ sensσ ì
  2612. codσ i≤ se⌠ t∩ N╧ ADDITIONA╠ SENS┼ INFORMATION.
  2613.  
  2614. .cp 4
  2615. ááThσ additiona∞ sensσ codσ qualifie≥ indicate≤ detaileΣ informatioε relateΣ ì
  2616. t∩ thσ additiona∞ sensσ code«  Thσ additiona∞ sensσ codσ qualifie≥ i≤ ì
  2617. optional«  Iµ thσ erro≥ o≥ exceptioε conditioε i≤ reportablσ b∙ thσ devicσ thσ ì
  2618. valuσ returneΣ shal∞ bσ a≤ specifieΣ iε Tablσ ╖-41«  Iµ thσ targe⌠ doe≤ no⌠ ì
  2619. havσ detaileΣ informatioε relateΣ t∩ thσ erro≥ o≥ exceptioε condition¼ thσ ì
  2620. additiona∞ sensσ codσ qualifie≥ i≤ se⌠ t∩ zero.
  2621.  
  2622. .cp 5
  2623. ááNoε-zer∩ value≤ iε thσ fielΣ replaceablσ uni⌠ codσ fielΣ arσ useΣ t∩ definσ ì
  2624. ß devicσ-specifiπ mechanisφ o≥ uni⌠ tha⌠ ha≤ failed«  ┴ valuσ oµ zer∩ iε thi≤ ì
  2625. fielΣ shal∞ indicatσ tha⌠ n∩ specifiπ mechanisφ o≥ uni⌠ ha≤ beeε identifieΣ t∩ ì
  2626. havσ faileΣ o≥ tha⌠ thσ datß i≤ no⌠ available«  Thσ fielΣ replaceablσ uni⌠ ì
  2627. codσ fielΣ i≤ optional« Thσ forma⌠ oµ thi≤ informatioε i≤ no⌠ specifieΣ b∙ ì
  2628. thi≤ standard«  Additiona∞ informatioε abou⌠ thσ fielΣ replaceablσ uni⌠ ma∙ bσ ì
  2629. availablσ iε thσ ASCI╔ informatioε pagσ (seσ 7.3.4.2)¼ iµ supporteΣ b∙ thσ ì
  2630. target« 
  2631.  
  2632. ááThσ sensσ-ke∙ specifiπ byte≤ arσ describeΣ iε 7.2.14.1¼ below.
  2633.  
  2634. ááThσ additiona∞ sensσ byte≤ fielΣ ma∙ contaiε commanΣ specifiπ data¼ ì
  2635. periphera∞ devicσ specifiπ data¼ o≥ vendo≥-specifiπ datß tha⌠ furthe≥ define≤ ì
  2636. thσ naturσ oµ thσ CHEC╦ CONDITIO╬ status.
  2637.  
  2638. .cp 10è.aw off
  2639. .pm 0
  2640. 7.2.14.1. Sense-Key Specific
  2641. .aw on
  2642. .pm 3
  2643. ááThσ sensσ-ke∙ specifiπ fielΣ i≤ defineΣ b∙ thi≤ standarΣ wheε thσ valuσ oµ ì
  2644. thσ sensσ-ke∙ specifiπ valiΣ (SKSV⌐ bi⌠ i≤ one«  Thσ sensσ-ke∙ specifiπ valiΣ ì
  2645. bi⌠ anΣ sensσ-ke∙ specifiπ fielΣ arσ optional«  Thσ definitioε oµ thi≤ fielΣ ì
  2646. i≤ determineΣ b∙ thσ valuσ oµ thσ sensσ ke∙ field«  Thi≤ fielΣ i≤ reserveΣ fo≥ ì
  2647. sensσ key≤ no⌠ describeΣ below«  Aε SKS╓ valuσ oµ zer∩ indicate≤ tha⌠ thi≤ ì
  2648. fielΣ i≤ no⌠ defineΣ b∙ thi≤ standard« 
  2649.  
  2650. .cp 4
  2651. ááIµ thσ sensσ ke∙ fielΣ i≤ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ SKS╓ bi⌠ i≤ se⌠ t∩ ì
  2652. one¼ thσ sensσ-ke∙ specifiπ fielΣ shal∞ bσ defineΣ a≤ showε iε Tablσ ╖-36« ì
  2653. Thesσ FielΣ Pointe≥ fielΣ indicate≤ whicΦ illega∞ parameter≤ iε commanΣ ì
  2654. descripto≥ block≤ o≥ datß parameter≤ arσ iε error.
  2655.  
  2656. .cp 12
  2657. .aw off
  2658. .pm 0
  2659.                        Table 7-36: Field Pointer Bytes
  2660.  
  2661. ==============================================================================
  2662.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  2663. Byte |        |        |        |        |        |        |        |        |
  2664. ==============================================================================
  2665.  15  ⁿ  SKSV  |  C/D   |Reserved|Reserved|  BPV   |    Bit Pointer           |
  2666. -----|-----------------------------------------------------------------------|
  2667.  16  | (MSB)                                                                 |
  2668. -----|---                        Field Pointer                            ---|
  2669.  17  |                                                                 (LSB) |
  2670. ==============================================================================
  2671. .aw on
  2672. .pm 3
  2673.  
  2674.  
  2675. áá┴ commanΣ datß (C/D⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ illega∞ paramete≥ i≤ iε ì
  2676. thσ commanΣ descripto≥ block«  ┴ C/─ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ illega∞ ì
  2677. paramete≥ i≤ iε thσ datß parameter≤ sen⌠ b∙ thσ initiato≥ durinτ thσ DAT┴ OU╘ ì
  2678. phase.
  2679.  
  2680. áá┴ bi⌠ pointe≥ valiΣ (BPV⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ valuσ iε thσ bi⌠ ì
  2681. pointe≥ fielΣ i≤ no⌠ valid«  ┴ BP╓ bi⌠ oµ onσ indicate≤ tha⌠ thσ bi⌠ pointe≥ ì
  2682. fielΣ specifie≤ whicΦ bi⌠ oµ thσ bytσ designateΣ b∙ thσ fielΣ pointe≥ fielΣ i≤ ì
  2683. iε error«  Wheε ß multiplσ-bi⌠ fielΣ i≤ iε error¼ thσ bi⌠ pointe≥ fielΣ shal∞ ì
  2684. poin⌠ t∩ thσ mos⌠-significan⌠ (lef⌠-most⌐ bi⌠ oµ thσ field.
  2685.  
  2686. ááThσ fielΣ pointe≥ fielΣ indicate≤ whicΦ bytσ oµ thσ commanΣ descripto≥ blocδ ì
  2687. o≥ oµ thσ paramete≥ datß wa≤ iε error«  Byte≤ arσ numbereΣ startinτ froφ zero¼ ì
  2688. a≤ showε iε thσ table≤ describinτ thσ command≤ anΣ parameters«  Wheε ß ì
  2689. multiplσ-bytσ fielΣ i≤ iε error¼ thσ pointe≥ shal∞ poin⌠ t∩ thσ mos⌠¡ ì
  2690. significan⌠ (lef⌠-most⌐ bytσ oµ thσ field.
  2691.  
  2692. .cp 2
  2693. .lm 3
  2694. ááIMPLEMENTOR╙ NOTE║  Byte≤ identifieΣ a≤ beinτ iε erro≥ arσ no⌠ necessaril∙ ì
  2695. ááthσ placσ tha⌠ ha≤ t∩ bσ changeΣ t∩ correc⌠ thσ problem.
  2696. .lm 1
  2697.  
  2698. .cp 3
  2699. ááIµ thσ sensσ ke∙ i≤ RECOVERE─ ERROR¼ HARDWAR┼ ERRO╥ o≥ MEDIU═ ERRO╥ anΣ iµ ì
  2700. thσ SKS╓ bi⌠ i≤ one¼ thσ sensσ-ke∙ specifiπ fielΣ shal∞ bσ defineΣ a≤ showε iε ì
  2701. Tablσ ╖-37« 
  2702.  
  2703. .cp 14è.aw off
  2704. .pm 0
  2705.                      Table 7-37: Actual Retry Count Bytes
  2706.  
  2707. ==============================================================================
  2708.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  2709. Byte |        |        |        |        |        |        |        |        |
  2710. ==============================================================================
  2711.  15  |  SKSV  |                  Reserved                                    |
  2712. -----|-----------------------------------------------------------------------|
  2713.  16  | (MSB)                                                                 |
  2714. -----|---                        Actual Retry Count                       ---|
  2715.  17  |                                                                 (LSB) |
  2716. ==============================================================================
  2717. .aw on
  2718. .pm 3
  2719.  
  2720.  
  2721. .cp 3
  2722. ááThσ actua∞ retr∙ coun⌠ fielΣ return≤ implementatioε-specifiπ informatioε oε ì
  2723. thσ actua∞ numbe≥ oµ retrie≤ oµ thσ recover∙ algorithφ useΣ iε attemptinτ t∩ ì
  2724. recove≥ aε erro≥ o≥ exceptioε condition« 
  2725.  
  2726. .cp 5
  2727. .lm 3
  2728. ááIMPLEMENTOR╙ NOTE║ I⌠ i≤ recommendeΣ tha⌠ thi≤ fielΣ relatσ t∩ thσ retr∙ ì
  2729. áácoun⌠ field≤ withiε thσ erro≥ recover∙ pagσ oµ thσ MOD┼ SELEC╘ command.
  2730. .lm1
  2731.  
  2732. ááIµ thσ sensσ ke∙ i≤ NO╘ READ┘ anΣ thσ SKS╓ bi⌠ i≤ one¼ thσ sensσ-ke∙ ì
  2733. specifiπ fielΣ shal∞ bσ defineΣ a≤ showε iε Tablσ ╖-38«  Thesσ field≤ arσ onl∙ ì
  2734. defineΣ fo≥ thσ FORMA╘ UNI╘ commanΣ witΦ thσ ImmeΣ bi⌠ se⌠ t∩ one.
  2735.  
  2736. .cp 15
  2737. .aw off
  2738. .pm 0
  2739.                  Table 7-38: Format Progress Indication Bytes
  2740.  
  2741. ==============================================================================
  2742.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  2743. Byte |        |        |        |        |        |        |        |        |
  2744. ==============================================================================
  2745.  15  |  SKSV  |                  Reserved                                    |
  2746. -----|-----------------------------------------------------------------------|
  2747.  16  | (MSB)                                                                 |
  2748. -----|---                        Progress Indication                      ---|
  2749.  17  |                                                                 (LSB) |
  2750. ==============================================================================
  2751. .aw on
  2752. .pm 3
  2753.  
  2754.  
  2755. ááThσ progres≤ indicatioε fielΣ i≤ ß percen⌠ completσ indicatioε iε whicΦ thσ ì
  2756. returneΣ valuσ i≤ thσ numerato≥ tha⌠ ha≤ 6553╢ (10000h⌐ a≤ it≤ denominator« ì
  2757. Thσ progres≤ indicatioε shal∞ bσ aε baseΣ upoε thσ tota∞ forma⌠ operatioε ì
  2758. includinτ an∙ certificatioε o≥ initializatioε operations.
  2759.  
  2760. .lm 3
  2761. ááIMPLEMENTOR╙ NOTE║ I⌠ i≤ intendeΣ tha⌠ thσ progres≤ indicatioε bσ timσ ì
  2762. áárelated«  However¼ sincσ forma⌠ timσ varie≤ witΦ thσ numbe≥ oµ defect≤ ì
  2763. ááencountered¼ etc.¼ i⌠ i≤ reasonablσ fo≥ thσ targe⌠ t∩ assigε value≤ t∩ ì
  2764. áávariou≤ step≤ withiε thσ process«  Thσ granularit∙ oµ thesσ step≤ shoulΣ bσ ì
  2765. áásmal∞ enougΦ t∩ providσ reasonablσ assurance≤ t∩ thσ initiato≥ tha⌠ progres≤ ì
  2766. áái≤ beinτ made.
  2767. .lm 1
  2768.  
  2769. .cp 8è.aw off
  2770. .pm 0
  2771. 7.2.14.2. Deferred Errors
  2772. .pm 3
  2773. .aw on
  2774. ááErro≥ codσ 70Φ indicate≤ tha⌠ thσ CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ ì
  2775. statu≤ returneΣ i≤ thσ resul⌠ oµ aε erro≥ o≥ exceptioε conditioε oε thσ ì
  2776. commanΣ tha⌠ returneΣ thσ CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ statu≤ o≥ aε ì
  2777. unexpecteΣ bu≤ freσ condition«  Thi≤ include≤ error≤ generateΣ durinτ ì
  2778. executioε oµ thσ commanΣ b∙ thσ actua∞ executioε process«  I⌠ als∩ include≤ ì
  2779. error≤ no⌠ relateΣ t∩ an∙ commanΣ tha⌠ arσ firs⌠ observeΣ durinτ executioε oµ ì
  2780. ß command«  Example≤ oµ thi≤ latte≥ typσ oµ erro≥ includσ disδ serv∩-mechanisφ ì
  2781. ofµ-tracδ error≤ anΣ powe≥-u≡ tes⌠ errors« 
  2782.  
  2783. ááErro≥ Codσ 71Φ (deferreΣ error⌐ indicate≤ tha⌠ thσ CHEC╦ CONDITIO╬ statu≤ ì
  2784. returneΣ i≤ thσ resul⌠ oµ aε erro≥ o≥ exceptioε conditioε tha⌠ occurreΣ durinτ ì
  2785. executioε oµ ß previou≤ commanΣ fo≥ whicΦ GOO─ statu≤ ha≤ alread∙ beeε ì
  2786. returned«  SucΦ command≤ arσ associateΣ witΦ usσ oµ thσ immediatσ bit¼ witΦ ì
  2787. somσ form≤ oµ caching¼ anΣ witΦ multiplσ commanΣ buffering«  Target≤ tha⌠ ì
  2788. implemen⌠ thesσ feature≤ arσ requireΣ t∩ implemen⌠ deferreΣ erro≥ reporting.
  2789.  
  2790. ááThσ deferreΣ erro≥ indicatioε ma∙ bσ sen⌠ a⌠ ß timσ selecteΣ b∙ thσ targe⌠ ì
  2791. througΦ thσ asynchronou≤ even⌠ notificatioε proces≤ (seσ 6.5.5⌐ iµ AE╬ i≤ ì
  2792. supporteΣ b∙ botΦ thσ initiato≥ anΣ target«  
  2793.  
  2794. ááIµ AE╬ i≤ no⌠ supported¼ thσ deferreΣ erro≥ ma∙ bσ indicateΣ b∙ returninτ ì
  2795. CHEC╦ CONDITIO╬ statu≤ t∩ thσ thσ appropriatσ initiato≥ a≤ describeΣ below«  ì
  2796. Thσ subsequen⌠ executioε oµ ß REQUES╘ SENS┼ commanΣ shal∞ returε thσ deferreΣ ì
  2797. erro≥ sensσ information.
  2798.  
  2799. ááIµ CHEC╦ CONDITIO╬ statu≤ fo≥ ß deferreΣ erro≥ i≤ returned¼ thσ curren⌠ ì
  2800. commanΣ ha≤ no⌠ performeΣ an∙ storagσ operation≤ o≥ outpu⌠ operation≤ t∩ thσ ì
  2801. media«  Afte≥ thσ targe⌠ detect≤ ß deferreΣ erro≥ conditioε oε ß logica∞ unit¼ ì
  2802. i⌠ shal∞ returε ß deferreΣ erro≥ accordinτ t∩ thσ rule≤ describeΣ below║ 
  2803. áá(1⌐ Iµ ß deferreΣ erro≥ caε bσ recovereΣ witΦ n∩ externa∞ systeφ ì
  2804. intervention¼ ß deferreΣ erro≥ indicatioε shal∞ no⌠ bσ posteΣ unles≤ requireΣ ì
  2805. b∙ thσ erro≥ handlinτ parameter≤ oµ thσ MOD┼ SELEC╘ command«  Thσ occurrencσ ì
  2806. oµ thσ erro≥ ma∙ bσ loggeΣ iµ statistica∞ o≥ erro≥ logginτ i≤ supported.
  2807. áá(2⌐ Iµ ß deferreΣ erro≥ caε bσ associateΣ witΦ ß causinτ initiato≥ anΣ witΦ ì
  2808. ß particula≥ functioε o≥ ß particula≥ subse⌠ oµ data¼ anΣ thσ erro≥ i≤ eithe≥ ì
  2809. unrecovereΣ o≥ requireΣ t∩ bσ reporteΣ b∙ thσ modσ parameters¼ ß deferreΣ ì
  2810. erro≥ indicatioε shal∞ bσ returneΣ t∩ thσ causinτ initiator«  Iµ aε initiato≥ ì
  2811. othe≥ thaε thσ causinτ initiato≥ attempt≤ acces≤ t∩ thσ particula≥ functioε o≥ ì
  2812. subse⌠ oµ datß associateΣ witΦ thσ deferreΣ error¼ ß BUS┘ statu≤ shal∞ bσ ì
  2813. returneΣ t∩ tha⌠ initiato≥ iε responsσ t∩ thσ commanΣ attemptinτ thσ access.
  2814.  
  2815. .lm 3
  2816. ááNOTE║  No⌠ al∞ device≤ ma∙ bσ sufficientl∙ sophisticateΣ t∩ identif∙ thσ ì
  2817. ááfunctioε o≥ datß tha⌠ ha≤ failed«  Thosσ tha⌠ canno⌠ shoulΣ trea⌠ thσ erro≥ ì
  2818. ááiε thσ followinτ manner.
  2819. .lm 1
  2820.  
  2821. .cp 5
  2822. áá(3⌐ Iµ ß deferreΣ erro≥ canno⌠ bσ associateΣ witΦ ß causinτ initiato≥ o≥ ì
  2823. witΦ ß particula≥ subse⌠ oµ data¼ ß deferreΣ erro≥ indicatioε shal∞ bσ ì
  2824. returneΣ oε behalµ oµ thσ failinτ logica∞ uni⌠ t∩ eacΦ initiator«  Iµ multiplσ ì
  2825. deferreΣ error≤ havσ accumulateΣ fo≥ somσ initiators¼ onl∙ thσ las⌠ erro≥ ì
  2826. shal∞ bσ returned.
  2827. .cp 3
  2828. áá(4⌐ Iµ ß deferreΣ erro≥ canno⌠ bσ associateΣ witΦ ß particula≥ logica∞ unit¼ ì
  2829. i⌠ shal∞ bσ returneΣ t∩ thσ appropriatσ initiato≥ fo≥ al∞ logica∞ unit≤ ì
  2830. supporteΣ b∙ thσ target.
  2831. .cp14èáá(5⌐ Iµ ß curren⌠ commanΣ ha≤ no⌠ ye⌠ starteΣ executing¼ anΣ ß deferreΣ erro≥ ì
  2832. occurs¼ thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ ì
  2833. deferreΣ erro≥ informatioε posteΣ iε thσ sensσ data«  B∙ convention¼ thσ ì
  2834. curren⌠ commanΣ i≤ considereΣ t∩ havσ starteΣ executioε iµ thσ targe⌠ ha≤ ì
  2835. changeΣ phasσ froφ thσ COMMAN─ phasσ t∩ thσ nex⌠ norma∞ phasσ oµ thσ commanΣ ì
  2836. sequence«  Iµ ß deferreΣ erro≥ occur≤ whilσ ß curren⌠ commanΣ i≤ executinτ anΣ ì
  2837. thσ curren⌠ commanΣ ha≤ beeε affecteΣ b∙ thσ error¼ thσ commanΣ shal∞ bσ ì
  2838. terminateΣ b∙ CHEC╦ CONDITIO╬ statu≤ anΣ curren⌠ erro≥ informatioε shal∞ bσ ì
  2839. returneΣ iε thσ sensσ data«  Iε thi≤ case¼ iµ thσ curren⌠ erro≥ informatioε ì
  2840. doe≤ no⌠ adequatel∙ definσ thσ deferreΣ erro≥ condition¼ ß deferreΣ erro≥ ma∙ ì
  2841. bσ returneΣ afte≥ thσ curren⌠ erro≥ informatioε ha≤ beeε recovered«  Iµ ß ì
  2842. deferreΣ erro≥ occur≤ whilσ ß curren⌠ commanΣ i≤ executinτ anΣ thσ curren⌠ ì
  2843. commanΣ complete≤ successfully¼ thσ targe⌠ ma∙ choosσ t∩ returε thσ deferreΣ ì
  2844. erro≥ informatioε afte≥ thσ completioε oµ thσ curren⌠ command.
  2845.  
  2846. .cp 12
  2847. .lm 3
  2848. ááIMPLEMENTOR╙ NOTE║  DeferreΣ error≤ ma∙ indicatσ tha⌠ aε operatioε wa≤ ì
  2849. ááunsuccessfu∞ lonτ afte≥ thσ commanΣ performinτ thσ datß transfe≥ returneΣ ì
  2850. ááGOO─ status«  Iµ datß tha⌠ canno⌠ bσ replicateΣ o≥ recovereΣ froφ othe≥ ì
  2851. áásource≤ i≤ beinτ storeΣ usinτ sucΦ buffereΣ writσ operations¼ ì
  2852. áásynchronizatioε command≤ shoulΣ bσ performeΣ beforσ thσ critica∞ datß i≤ ì
  2853. áádestroyeΣ iε thσ hos⌠ initiator«  Thi≤ i≤ necessar∙ t∩ bσ surσ tha⌠ recover∙ ì
  2854. ááaction≤ caε bσ takeε iµ deferreΣ error≤ d∩ occu≥ iε thσ storinτ oµ thσ data« ì
  2855. ááIµ AE╬ i≤ no⌠ implemented¼ thσ synchronizinτ proces≤ shoulΣ providσ thσ ì
  2856. áánecessar∙ command≤ t∩ allo≈ returninτ CHEC╦ CONDITIO╬ statu≤ anΣ subsequen⌠ ì
  2857. ááreturninτ oµ deferreΣ erro≥ sensσ informatioε afte≥ al∞ buffereΣ operation≤ ì
  2858. ááarσ guaranteeΣ t∩ bσ complete.
  2859.  
  2860. .lm 1
  2861. .aw off
  2862. .pm 0
  2863. .cp 54è                  Table 7-39: Sense Key (0h-7h) Descriptions
  2864.  
  2865. ==============================================================================
  2866. Sense Key  Description
  2867. ---------  -------------------------------------------------------------------
  2868. .aw on
  2869. .pm 4
  2870. .lm 12
  2871. ááá0h      N╧ SENSE«  Indicate≤ tha⌠ therσ i≤ n∩ specifiπ sensσ ke∙ ì
  2872. áááááááááááinformatioε t∩ bσ reporteΣ fo≥ thσ designateΣ logica∞ unit«  Thi≤ ì
  2873. áááááááááááwoulΣ bσ thσ casσ fo≥ ß successfu∞ commanΣ o≥ ß commanΣ tha⌠ ì
  2874. áááááááááááreceiveΣ CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ statu≤ becausσ onσ ì
  2875. áááááááááááoµ thσ filemark¼ EOM¼ o≥ IL╔ bit≤ i≤ se⌠ t∩ one.
  2876.  
  2877. ááá1h      RECOVERE─ ERROR«  Indicate≤ tha⌠ thσ las⌠ commanΣ completeΣ ì
  2878. ááááááááááásuccessfull∙ witΦ somσ recover∙ actioε performeΣ b∙ thσ target« ì
  2879. áááááááááááDetail≤ ma∙ bσ determinablσ b∙ examininτ thσ additiona∞ sensσ byte≤ ì
  2880. áááááááááááanΣ thσ informatioε field«  Wheε multiplσ recovereΣ error≤ occu≥ ì
  2881. ááááááááááádurinτ onσ command¼ thσ choicσ oµ whicΦ erro≥ t∩ repor⌠ (first¼ ì
  2882. ááááááááááálast¼ mos⌠ severe¼ etc.⌐ i≤ devicσ specific.
  2883.  
  2884. ááá2h      NO╘ READY«  Indicate≤ tha⌠ thσ logica∞ uni⌠ addresseΣ canno⌠ bσ ì
  2885. áááááááááááaccessed«  Operato≥ interventioε ma∙ bσ requireΣ t∩ correc⌠ thi≤ ì
  2886. ááááááááááácondition.
  2887.  
  2888. ááá3h      MEDIU═ ERROR«  Indicate≤ tha⌠ thσ commanΣ terminateΣ witΦ ß noε¡ ì
  2889. ááááááááááárecovereΣ erro≥ conditioε tha⌠ wa≤ probabl∙ causeΣ b∙ ß fla≈ iε thσ ì
  2890. ááááááááááámediuφ o≥ aε erro≥ iε thσ recordeΣ data«  Thi≤ sensσ ke∙ ma∙ als∩ ì
  2891. ááááááááááábσ returneΣ iµ thσ targe⌠ i≤ unablσ t∩ distinguisΦ betweeε ß fla≈ ì
  2892. áááááááááááiε thσ mediuφ anΣ ß specifiπ hardwarσ failurσ (sensσ ke∙ 4h).
  2893.  
  2894. ááá4h      HARDWAR┼ ERROR«  Indicate≤ tha⌠ thσ targe⌠ detecteΣ ß noε¡ ì
  2895. ááááááááááárecoverablσ hardwarσ failurσ (fo≥ example¼ controlle≥ failure¼ ì
  2896. ááááááááááádevicσ failure¼ parit∙ error¼ etc.⌐ whilσ performinτ thσ commanΣ o≥ ì
  2897. ááááááááááádurinτ ß selµ test.
  2898.  
  2899. ááá5h      ILLEGA╠ REQUEST«  Indicate≤ tha⌠ therσ wa≤ aε illega∞ paramete≥ iε ì
  2900. áááááááááááthσ commanΣ descripto≥ blocδ o≥ iε thσ additiona∞ parameter≤ ì
  2901. ááááááááááásupplieΣ a≤ datß fo≥ somσ command≤ (FORMA╘ UNIT¼ SEARC╚ DATA¼ ì
  2902. áááááááááááetc.)«  Iµ thσ targe⌠ detect≤ aε invaliΣ paramete≥ iε thσ commanΣ ì
  2903. ááááááááááádescripto≥ block¼ theε i⌠ shal∞ terminatσ thσ commanΣ withou⌠ ì
  2904. áááááááááááalterinτ thσ medium«  Iµ thσ targe⌠ detect≤ aε invaliΣ paramete≥ iε ì
  2905. áááááááááááthσ additiona∞ parameter≤ supplieΣ a≤ data¼ theε thσ targe⌠ ma∙ ì
  2906. áááááááááááhavσ alread∙ altereΣ thσ medium«  Thi≤ sensσ ke∙ ma∙ als∩ indicatσ ì
  2907. ááááááááááátha⌠ aε invaliΣ IDENTIF┘ messagσ wa≤ receiveΣ (5.6.7).
  2908.  
  2909. ááá6h      UNI╘ ATTENTION«  Indicate≤ tha⌠ thσ removablσ mediuφ ma∙ havσ beeε ì
  2910. áááááááááááchangeΣ o≥ thσ targe⌠ ha≤ beeε reset«  Seσ 6.╣ fo≥ morσ detaileΣ ì
  2911. áááááááááááinformatioε abou⌠ thσ uni⌠ attentioε condition« 
  2912.  
  2913. ááá7h      DAT┴ PROTECT«  Indicate≤ tha⌠ ß commanΣ tha⌠ read≤ o≥ write≤ thσ ì
  2914. ááááááááááámediuφ wa≤ attempteΣ oε ß blocδ tha⌠ i≤ protecteΣ froφ thi≤ ì
  2915. áááááááááááoperation«  Thσ reaΣ o≥ writσ operatioε i≤ no⌠ performed.
  2916. .lm 1
  2917. .pm 0
  2918. ==============================================================================
  2919. .aw on
  2920. .pm 3
  2921.  
  2922. .aw off
  2923. .pm 0
  2924. .cp 54è                  Table 7-40: Sense Key (8h-Fh) Descriptions
  2925.  
  2926. ==============================================================================
  2927. Sense Key  Description
  2928. ---------  -------------------------------------------------------------------
  2929. .aw on
  2930. .pm 4
  2931. .lm 12
  2932. ááá8h      BLAN╦ CHECK«  Indicate≤ tha⌠ ß writσ-oncσ devicσ o≥ ß sequentia∞-ì
  2933. áááááááááááacces≤ devicσ encountereΣ blanδ mediuφ o≥ forma⌠-defineΣ enΣ-oµ-ì
  2934. ááááááááááádatß indicatioε whilσ readinτ o≥ ß writσ-oncσ devicσ encountereΣ ß ì
  2935. ááááááááááánoε-blanδ mediuφ whilσ writing.
  2936.  
  2937. ááá9h      Vendo≥ Specific«  Thi≤ sensσ ke∙ i≤ availablσ fo≥ reportinτ vendo≥ ì
  2938. áááááááááááspecifiπ conditions.
  2939.  
  2940. áááAh      COP┘ ABORTED«  Indicate≤ ß COPY¼ COMPARE¼ o≥ COP┘ AN─ VERIF┘ ì
  2941. ááááááááááácommanΣ wa≤ aborteΣ duσ t∩ aε erro≥ conditioε oε thσ sourcσ device¼ ì
  2942. áááááááááááthσ destinatioε device¼ o≥ both«  (Seσ 7.2.3.▓ fo≥ additiona∞ ì
  2943. áááááááááááinformatioε abou⌠ thi≤ sensσ key.)
  2944.  
  2945. áááBh      ABORTE─ COMMAND«  Indicate≤ tha⌠ thσ targe⌠ aborteΣ thσ command« ì
  2946. áááááááááááThσ initiato≥ ma∙ bσ ablσ t∩ recove≥ b∙ tryinτ thσ commanΣ again.
  2947.  
  2948. áááCh      EQUAL«  Indicate≤ ß SEARC╚ DAT┴ commanΣ ha≤ satisfieΣ aε equa∞ ì
  2949. ááááááááááácomparison.
  2950.  
  2951. áááDh      VOLUM┼ OVERFLOW«  Indicate≤ tha⌠ ß buffereΣ periphera∞ devicσ ha≤ ì
  2952. áááááááááááreacheΣ thσ enΣ-oµ-partitioε anΣ datß ma∙ remaiε iε thσ buffe≥ tha⌠ ì
  2953. áááááááááááha≤ no⌠ beeε writteε t∩ thσ medium«  ┴ RECOVE╥ BUFFERE─ DAT┴ ì
  2954. ááááááááááácommand(s⌐ ma∙ bσ issueΣ t∩ reaΣ thσ unwritteε datß froφ thσ ì
  2955. ááááááááááábuffer.
  2956.  
  2957. áááEh      MISCOMPARE«  Indicate≤ tha⌠ thσ sourcσ datß diΣ no⌠ matcΦ thσ datß ì
  2958. áááááááááááreaΣ froφ thσ medium.
  2959.  
  2960. áááFh      RESERVED« 
  2961.  
  2962. .pm 0
  2963. .lm 1
  2964. ==============================================================================
  2965. .aw on
  2966. .pm 3
  2967.  
  2968.  
  2969. .cp 35è.aw off
  2970. .pm 0
  2971.                      Table 7-41: ASC and ASCQ Assignments
  2972.  
  2973. .. Editor:  Insert table from ASC spreadsheet here as last step before running
  2974. ..          CompareRite:
  2975. ==============================================================================
  2976.                  ASC AND ASCQ ASSIGNMENTS
  2977.  
  2978.       D          = DIRECT ACCESS DEVICE
  2979.        T         = SEQUENTIAL ACCESS DEVICE
  2980.         L        = PRINTER DEVICE
  2981.          P       = PROCESSOR DEVICE
  2982.           W      = WRITE ONCE READ MULTIPLE DEVICE
  2983.            R     = READ ONLY (CD-ROM) DEVICE
  2984.             S    = SCANNER DEVICE
  2985.              O   = OPTICAL MEMORY DEVICE
  2986.               M  = MEDIA CHANGER DEVICE
  2987.                C = COMMUNICATION DEVICE
  2988. BYTE
  2989. 12 13 DTLPWRSOMC DESCRIPTION
  2990. -- --            ------------------------------------------------------------
  2991. 13 00 D   W  O   ADDRESS MARK NOT FOUND FOR DATA FIELD
  2992. 12 00 D   W  O   ADDRESS MARK NOT FOUND FOR ID FIELD
  2993. 00 11      R     AUDIO PLAY OPERATION IN PROGRESS
  2994. 00 12      R     AUDIO PLAY OPERATION PAUSED
  2995. 00 14      R     AUDIO PLAY OPERATION STOPPED DUE TO ERROR
  2996. 00 13      R     AUDIO PLAY OPERATION SUCCESSFULLY COMPLETED
  2997. 00 04  T    S    BEGINNING-OF-PARTITION/MEDIUM DETECTED
  2998. 14 04  T         BLOCK SEQUENCE ERROR
  2999. 30 02 DT  WR O   CANNOT READ MEDIUM - INCOMPATIBLE FORMAT
  3000. 30 01 DT  WR O   CANNOT READ MEDIUM - UNKNOWN FORMAT
  3001. 52 00  T         CARTRIDGE FAULT
  3002. 3F 02 DTLPWRSOMC CHANGED OPERATING DEFINITION
  3003. 11 06     WR O   CIRC UNRECOVERED ERROR
  3004. 30 03 DT         CLEANING CARTRIDGE INSTALLED
  3005. 4A 00 DTLPWRSOMC COMMAND PHASE ERROR
  3006. 2C 00 DTLPWRSOMC COMMAND SEQUENCE ERROR
  3007. 2F 00 DTLPWRSOMC COMMANDS CLEARED BY ANOTHER INITIATOR
  3008. 2B 00 DTLPWRSO C COPY CANNOT EXECUTE SINCE HOST CANNOT DISCONNECT
  3009. 41 00 D          DATA PATH FAILURE (SHOULD USE 40 NN)
  3010. 4B 00 DTLPWRSOMC DATA PHASE ERROR
  3011. 11 07     W  O   DATA RESYCHRONIZATION ERROR
  3012. 16 00 D   W  O   DATA SYNCHRONIZATION MARK ERROR
  3013. 19 00 D      O   DEFECT LIST ERROR
  3014. 19 03 D      O   DEFECT LIST ERROR IN GROWN LIST
  3015. 19 02 D      O   DEFECT LIST ERROR IN PRIMARY LIST
  3016. 19 01 D      O   DEFECT LIST NOT AVAILABLE
  3017. 1C 00 D      O   DEFECT LIST NOT FOUND
  3018. 32 01 D   W  O   DEFECT LIST UPDATE FAILURE
  3019. 40 NN DTLPWRSOMC DIAGNOSTIC FAILURE ON COMPONENT NN (80H-FFH)
  3020. 63 00      R     END OF USER AREA ENCOUNTERED ON THIS TRACK
  3021. 00 05  T    S    END-OF-DATA DETECTED
  3022. 14 03  T         END-OF-DATA NOT FOUND
  3023. 00 02  T    S    END-OF-PARTITION/MEDIUM DETECTED
  3024. 51 00  T     O   ERASE FAILURE
  3025. 0A 00 DTLPWRSOMC ERROR LOG OVERFLOW
  3026. 11 02 DT  W SO   ERROR TOO LONG TO CORRECT
  3027. ==============================================================================è               Tablσ 7-41║ AS├ anΣ ASC╤ Assignment≤ (continued)
  3028.  
  3029. ==============================================================================
  3030. BYTE
  3031. 12 13 DTLPWRSOMC DESCRIPTION
  3032. -- --            ------------------------------------------------------------
  3033. 03 02  T         EXCESSIVE WRITE ERRORS
  3034. 3B 07   L        FAILED TO SENSE BOTTOM-OF-FORM
  3035. 3B 06   L        FAILED TO SENSE TOP-OF-FORM
  3036. 00 01  T         FILEMARK DETECTED
  3037. 14 02  T         FILEMARK OR SETMARK NOT FOUND
  3038. 09 02     WR O   FOCUS SERVO FAILURE
  3039. 31 01 D L    O   FORMAT COMMAND FAILED
  3040. 58 00        O   GENERATION DOES NOT EXIST
  3041. 1C 02 D      O   GROWN DEFECT LIST NOT FOUND
  3042. 00 06 DTLPWRSOMC I/O PROCESS TERMINATED
  3043. 10 00 D   W  O   ID CRC OR ECC ERROR
  3044. 22 00 D          ILLEGAL FUNCTION (SHOULD USE 20 00, 24 00, OR 26 00)
  3045. 64 00      R     ILLEGAL MODE FOR THIS TRACK
  3046. 28 01         M  IMPORT OR EXPORT ELEMENT ACCESSED
  3047. 30 00 DT  WR OM  INCOMPATIBLE MEDIUM INSTALLED
  3048. 11 08  T         INCOMPLETE BLOCK READ
  3049. 48 00 DTLPWRSOMC INITIATOR DETECTED ERROR MESSAGE RECEIVED
  3050. 3F 03 DTLPWRSOMC INQUIRY DATA HAS CHANGED
  3051. 44 00 DTLPWRSOMC INTERNAL TARGET FAILURE
  3052. 3D 00 DTLPWRSOMC INVALID BITS IN IDENTIFY MESSAGE
  3053. 2C 02       S    INVALID COMBINATION OF WINDOWS SPECIFIED
  3054. 20 00 DTLPWRSOMC INVALID COMMAND OPERATION CODE
  3055. 21 01         M  INVALID ELEMENT ADDRESS
  3056. 24 00 DTLPWRSOMC INVALID FIELD IN CDB
  3057. 26 00 DTLPWRSOMC INVALID FIELD IN PARAMETER LIST
  3058. 49 00 DTLPWRSOMC INVALID MESSAGE ERROR
  3059. 11 05     WR O   L-EC UNCORRECTABLE ERROR
  3060. 60 00       S    LAMP FAILURE
  3061. 5B 02 DTLPWRSOM  LOG COUNTER AT MAXIMUM
  3062. 5B 00 DTLPWRSOM  LOG EXCEPTION
  3063. 5B 03 DTLPWRSOM  LOG LIST CODES EXHAUSTED
  3064. 2A 02 DTL WRSOMC LOG PARAMETERS CHANGED
  3065. 21 00 DT  WR OM  LOGICAL BLOCK ADDRESS OUT OF RANGE
  3066. 08 00 DTL WRSOMC LOGICAL UNIT COMMUNICATION FAILURE
  3067. 08 02 DTL WRSOMC LOGICAL UNIT COMMUNICATION PARITY ERROR
  3068. 08 01 DTL WRSOMC LOGICAL UNIT COMMUNICATION TIME-OUT
  3069. 05 00 DTL WRSOMC LOGICAL UNIT DOES NOT RESPOND TO SELECTION
  3070. 4C 00 DTLPWRSOMC LOGICAL UNIT FAILED SELF-CONFIGURATION
  3071. 3E 00 DTLPWRSOMC LOGICAL UNIT HAS NOT SELF-CONFIGURED YET
  3072. 04 01 DTLPWRSOMC LOGICAL UNIT IS IN PROCESS OF BECOMING READY
  3073. 04 00 DTLPWRSOMC LOGICAL UNIT NOT READY, CAUSE NOT REPORTABLE
  3074. 04 04 DTL    O   LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
  3075. 04 02 DTLPWRSOMC LOGICAL UNIT NOT READY, INITIALIZING COMMAND REQUIRED
  3076. 04 03 DTLPWRSOMC LOGICAL UNIT NOT READY, MANUAL INTERVENTION REQUIRED
  3077. 25 00 DTLPWRSOMC LOGICAL UNIT NOT SUPPORTED
  3078. 15 01 DTL WRSOM  MECHANICAL POSITIONING ERROR
  3079. 53 00 DTL WRSOM  MEDIA LOAD OR EJECT FAILED
  3080. ==============================================================================
  3081. .paè               Tablσ 7-41║ AS├ anΣ ASC╤ Assignment≤ (continued)
  3082.  
  3083. ==============================================================================
  3084. BYTE
  3085. 12 13 DTLPWRSOMC DESCRIPTION
  3086. -- --            ------------------------------------------------------------
  3087. 3B 0D         M  MEDIUM DESTINATION ELEMENT FULL
  3088. 31 00 DT  W  O   MEDIUM FORMAT CORRUPTED
  3089. 3A 00 DTL WRSOM  MEDIUM NOT PRESENT
  3090. 53 02 DT  WR OM  MEDIUM REMOVAL PREVENTED
  3091. 3B 0E         M  MEDIUM SOURCE ELEMENT EMPTY
  3092. 43 00 DTLPWRSOMC MESSAGE ERROR
  3093. 3F 01 DTLPWRSOMC MICROCODE HAS BEEN CHANGED
  3094. 1D 00 D   W  O   MISCOMPARE DURING VERIFY OPERATION
  3095. 11 0A DT     O   MISCORRECTED ERROR
  3096. 2A 01 DTL WRSOMC MODE PARAMETERS CHANGED
  3097. 07 00 DTL WRSOM  MULTIPLE PERIPHERAL DEVICES SELECTED
  3098. 11 03 DT  W SO   MULTIPLE READ ERRORS
  3099. 00 00 DTLPWRSOMC NO ADDITIONAL SENSE INFORMATION
  3100. 00 15      R     NO CURRENT AUDIO STATUS TO RETURN
  3101. 32 00 D   W  O   NO DEFECT SPARE LOCATION AVAILABLE
  3102. 11 09  T         NO GAP FOUND
  3103. 01 00 D   W  O   NO INDEX/SECTOR SIGNAL
  3104. 06 00 D   WR OM  NO REFERENCE POSITION FOUND
  3105. 02 00 D   WR OM  NO SEEK COMPLETE
  3106. 03 01  T         NO WRITE CURRENT
  3107. 28 00 DTLPWRSOMC NOT READY TO READY TRANSITION (MEDIUM MAY HAVE CHANGED)
  3108. 5A 01 DT  WR OM  OPERATOR MEDIUM REMOVAL REQUEST
  3109. 5A 00 DTLPWRSOM  OPERATOR REQUEST OR STATE CHANGE INPUT (UNSPECIFIED)
  3110. 5A 03 DT  W  O   OPERATOR SELECTED WRITE PERMIT
  3111. 5A 02 DT  W  O   OPERATOR SELECTED WRITE PROTECT
  3112. 61 02       S    OUT OF FOCUS
  3113. 4E 00 DTLPWRSOMC OVERLAPPED COMMANDS ATTEMPTED
  3114. 2D 00  T         OVERWRITE ERROR ON UPDATE IN PLACE
  3115. 3B 05   L        PAPER JAM
  3116. 1A 00 DTLPWRSOMC PARAMETER LIST LENGTH ERROR
  3117. 26 01 DTLPWRSOMC PARAMETER NOT SUPPORTED
  3118. 26 02 DTLPWRSOMC PARAMETER VALUE INVALID
  3119. 2A 00 DTL WRSOMC PARAMETERS CHANGED
  3120. 03 00 DTL W SO   PERIPHERAL DEVICE WRITE FAULT
  3121. 50 02  T         POSITION ERROR RELATED TO TIMING
  3122. 3B 0C       S    POSITION PAST BEGINNING OF MEDIUM
  3123. 3B 0B       S    POSITION PAST END OF MEDIUM
  3124. 15 02 DT  WR O   POSITIONING ERROR DETECTED BY READ OF MEDIUM
  3125. 29 00 DTLPWRSOMC POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
  3126. 42 00 D          POWER-ON OR SELF-TEST FAILURE (SHOULD USE 40 NN)
  3127. 1C 01 D      O   PRIMARY DEFECT LIST NOT FOUND
  3128. 40 00 D          RAM FAILURE (SHOULD USE 40 NN)
  3129. 15 00 DTL WRSOM  RANDOM POSITIONING ERROR
  3130. 3B 0A       S    READ PAST BEGINNING OF MEDIUM
  3131. 3B 09       S    READ PAST END OF MEDIUM
  3132. 11 01 DT  W SO   READ RETRIES EXHAUSTED
  3133. 14 01 DT  WR O   RECORD NOT FOUND
  3134. 14 00 DTL WRSO   RECORDED ENTITY NOT FOUND
  3135. ==============================================================================è.pa
  3136.                Tablσ 7-41║ AS├ anΣ ASC╤ Assignment≤ (continued)
  3137.  
  3138. ==============================================================================
  3139. BYTE
  3140. 12 13 DTLPWRSOMC DESCRIPTION
  3141. -- --            ------------------------------------------------------------
  3142. 18 02 D   WR O   RECOVERED DATA - DATA AUTO-REALLOCATED
  3143. 18 05 D   WR O   RECOVERED DATA - RECOMMEND REASSIGNMENT
  3144. 17 05 D   WR O   RECOVERED DATA USING PREVIOUS SECTOR ID
  3145. 18 03      R     RECOVERED DATA WITH CIRC
  3146. 18 01 D   WR O   RECOVERED DATA WITH ERROR CORRECTION AND RETRIES APPLIED
  3147. 18 00 DT  WR O   RECOVERED DATA WITH ERROR CORRECTION APPLIED
  3148. 18 04      R     RECOVERED DATA WITH LEC
  3149. 17 03 DT  WR O   RECOVERED DATA WITH NEGATIVE HEAD OFFSET
  3150. 17 00 DT  WRSO   RECOVERED DATA WITH NO ERROR CORRECTION APPLIED
  3151. 17 02 DT  WR O   RECOVERED DATA WITH POSITIVE HEAD OFFSET
  3152. 17 01 DT  WRSO   RECOVERED DATA WITH RETRIES
  3153. 17 04     WR O   RECOVERED DATA WITH RETRIES AND/OR CIRC APPLIED
  3154. 17 06 D   W  O   RECOVERED DATA WITHOUT ECC - DATA AUTO-REALLOCATED
  3155. 17 07 D   W  O   RECOVERED DATA WITHOUT ECC - RECOMMEND REASSIGNMENT
  3156. 1E 00 D   W  O   RECOVERED ID WITH ECC CORRECTION
  3157. 3B 08  T         REPOSITION ERROR
  3158. 36 00   L        RIBBON, INK, OR TONER FAILURE
  3159. 37 00 DTL WRSOMC ROUNDED PARAMETER
  3160. 5C 00 D      O   RPL STATUS CHANGE
  3161. 39 00 DTL WRSOMC SAVING PARAMETERS NOT SUPPORTED
  3162. 62 00       S    SCAN HEAD POSITIONING ERROR
  3163. 47 00 DTLPWRSOMC SCSI PARITY ERROR
  3164. 54 00    P       SCSI TO HOST SYSTEM INTERFACE FAILURE
  3165. 45 00 DTLPWRSOMC SELECT OR RESELECT FAILURE
  3166. 3B 00  TL        SEQUENTIAL POSITIONING ERROR
  3167. 00 03  T         SETMARK DETECTED
  3168. 3B 04   L        SLEW FAILURE
  3169. 09 03     WR O   SPINDLE SERVO FAILURE
  3170. 5C 02 D      O   SPINDLES NOT SYNCHRONIZED
  3171. 5C 01 D      O   SPINDLES SYNCHRONIZED
  3172. 1B 00 DTLPWRSOMC SYNCHRONOUS DATA TRANSFER ERROR
  3173. 55 00    P       SYSTEM RESOURCE FAILURE
  3174. 33 00  T         TAPE LENGTH ERROR
  3175. 3B 03   L        TAPE OR ELECTRONIC VERTICAL FORMS UNIT NOT READY
  3176. 3B 01  T         TAPE POSITION ERROR AT BEGINNING-OF-MEDIUM
  3177. 3B 02  T         TAPE POSITION ERROR AT END-OF-MEDIUM
  3178. 3F 00 DTLPWRSOMC TARGET OPERATING CONDITIONS HAVE CHANGED
  3179. 5B 01 DTLPWRSOM  THRESHOLD CONDITION MET
  3180. 26 03 DTLPWRSOMC THRESHOLD PARAMETERS NOT SUPPORTED
  3181. 2C 01       S    TOO MANY WINDOWS SPECIFIED
  3182. 09 00 DT  WR O   TRACK FOLLOWING ERROR
  3183. 09 01     WR O   TRACKING SERVO FAILURE
  3184. 61 01       S    UNABLE TO ACQUIRE VIDEO
  3185. 57 00      R     UNABLE TO RECOVER TABLE-OF-CONTENTS
  3186. 53 01  T         UNLOAD TAPE FAILURE
  3187. 11 00 DT  WRSO   UNRECOVERED READ ERROR
  3188. 11 04 D   W  O   UNRECOVERED READ ERROR - AUTO REALLOCATE FAILED
  3189. ==============================================================================
  3190. .paè               Tablσ 7-41║ AS├ anΣ ASC╤ Assignment≤ (continued)
  3191.  
  3192. ==============================================================================
  3193. BYTE
  3194. 12 13 DTLPWRSOMC DESCRIPTION
  3195. -- --            ------------------------------------------------------------
  3196. 11 0B D   W  O   UNRECOVERED READ ERROR - RECOMMEND REASSIGNMENT
  3197. 11 0C D   W  O   UNRECOVERED READ ERROR - RECOMMEND REWRITE THE DATA
  3198. 46 00 DTLPWRSOMC UNSUCCESSFUL SOFT RESET
  3199. 59 00        O   UPDATED BLOCK READ
  3200. 61 00       S    VIDEO ACQUISITION ERROR
  3201. 50 00  T         WRITE APPEND ERROR
  3202. 50 01  T         WRITE APPEND POSITION ERROR
  3203. 0C 00  T    S    WRITE ERROR
  3204. 0C 02 D   W  O   WRITE ERROR - AUTO REALLOCATION FAILED
  3205. 0C 01 D   W  O   WRITE ERROR RECOVERED WITH AUTO REALLOCATION
  3206. 27 00 DT  W  O   WRITE PROTECTED
  3207.                  ------------------------------------------
  3208. 80 XX     \
  3209. THROUGH    >     VENDOR SPECIFIC.
  3210. FF XX     /
  3211.  
  3212. XX 80     \
  3213. THROUGH    >     VENDOR SPECIFIC QUALIFICATION OF STANDARD ASC.
  3214. XX FF     /
  3215.                  ALL CODES NOT SHOWN ARE RESERVED.
  3216. ==============================================================================
  3217. .. Editor:  Above line should be:  "ALL CODES NOT SHOWN ARE RESERVED."
  3218.  
  3219. .lm 3
  3220. .aw on
  3221. ááNOTE║  Appendi° ╔ contain≤ thσ AS├ anΣ ASC╤ assignment≤ iε numeriπ order.
  3222. .lm 1
  3223.  
  3224. .cp 30è.pm 0
  3225. .aw off
  3226. 7.2.15. SEND DIAGNOSTIC Command
  3227.  
  3228.  
  3229.                      Table 7-42: SEND DIAGNOSTIC Command
  3230.  
  3231. ==============================================================================
  3232.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  3233. Byte |        |        |        |        |        |        |        |        |
  3234. ==============================================================================
  3235.  0   |                           Operation Code (1Dh)                        |
  3236. -----|-----------------------------------------------------------------------|
  3237.  1   | Logical Unit Number      |   PF   |Reserved|SelfTest| DevOfL | UnitOfL|
  3238. -----|-----------------------------------------------------------------------|
  3239.  2   |                           Reserved                                    |
  3240. -----|-----------------------------------------------------------------------|
  3241.  3   | (MSB)                                                                 |
  3242. -----|---                        Parameter List Length                    ---|
  3243.  4   |                                                                 (LSB) |
  3244. -----|-----------------------------------------------------------------------|
  3245.  5   |                           Control                                     |
  3246. ==============================================================================
  3247. .aw on
  3248. .pm 3
  3249.  
  3250.  
  3251. ááThσ SEN─ DIAGNOSTI├ commanΣ (Tablσ ╖-42⌐ request≤ thσ targe⌠ t∩ perforφ ì
  3252. diagnostiπ operation≤ oε itself¼ oε thσ logica∞ unit¼ o≥ oε both«  Thσ onl∙ ì
  3253. mandator∙ implementatioε oµ thi≤ commanΣ i≤ thσ selµ-tes⌠ featurσ witΦ thσ ì
  3254. paramete≥ lis⌠ lengtΦ oµ zero«  Excep⌠ wheε thσ selµ-tes⌠ bi⌠ i≤ one¼ thi≤ ì
  3255. commanΣ i≤ usuall∙ followeΣ b∙ ß RECEIV┼ DIAGNOSTI├ RESULT╙ command.
  3256.  
  3257. .cp 6
  3258. áá┴ pagσ forma⌠ (PF⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ SEN─ DIAGNOSTI├ parameter≤ ì
  3259. conforφ t∩ thσ pagσ structurσ a≤ specifieΣ iε thi≤ standard«  Thσ ì
  3260. implementatioε oµ thσ P╞ bi⌠ i≤ optional«  Seσ 7.3.▒ fo≥ thσ definitioε oµ ì
  3261. diagnostiπ pages«  ┴ P╞ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ SEN─ DIAGNOSTI├ ì
  3262. parameter≤ arσ a≤ specifieΣ iε SCS╔-▒ (i.e.¼ al∞ parameter≤ arσ vendo≥ ì
  3263. specific).
  3264.  
  3265. .cp 4
  3266. áá┴ selµ-tes⌠ (SelfTest⌐ bi⌠ oµ onσ direct≤ thσ targe⌠ t∩ completσ it≤ defaul⌠ ì
  3267. selµ-test«  Iµ thσ selµ-tes⌠ successfull∙ passes¼ thσ commanΣ shal∞ bσ ì
  3268. terminateΣ witΦ GOO─ status╗ otherwise¼ thσ commanΣ shal∞ bσ terminateΣ witΦ ì
  3269. CHEC╦ CONDITIO╬ statu≤ anΣ thσ sensσ ke∙ shal∞ bσ se⌠ t∩ HARDWAR┼ ERROR.
  3270.  
  3271. .cp 12
  3272. áá┴ selµ-tes⌠ bi⌠ oµ zer∩ request≤ tha⌠ thσ targe⌠ perforφ thσ diagnostiπ ì
  3273. operatioε specifieΣ iε thσ paramete≥ list«  Thσ diagnostiπ operatioε migh⌠ o≥ ì
  3274. migh⌠ no⌠ requirσ ß targe⌠ t∩ returε datß whicΦ contain≤ diagnostiπ results«  ì
  3275. Iµ thσ returε oµ datß i≤ no⌠ required¼ thσ returε oµ GOO─ statu≤ indicate≤ ì
  3276. successfu∞ completioε oµ thσ diagnostiπ operation«  Iµ thσ returε oµ datß i≤ ì
  3277. requireΣ thσ targe⌠ shal∞ either:
  3278. .cp 6
  3279. áá(1⌐ perforφ thσ requesteΣ diagnostiπ operation¼ preparσ thσ datß t∩ bσ ì
  3280. returneΣ anΣ indicatσ completioε b∙ returninτ GOO─ status«  Thσ initiato≥ ì
  3281. issue≤ ß RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ t∩ recove≥ thσ data.
  3282. áá(2⌐ accep⌠ thσ paramete≥ lis⌠ anΣ iµ n∩ error≤ arσ detecteΣ iε thσ paramete≥ ì
  3283. lis⌠ returε GOO─ status«  Thσ requesteΣ diagnostiπ operatioε anΣ thσ ì
  3284. preparatioε oµ thσ datß t∩ bσ returneΣ i≤ performeΣ upoε receip⌠ oµ ß RECEIV┼ ì
  3285. DIAGNOSTI├ RESULT╙ command.
  3286. è.cp 5
  3287. .lm 3
  3288. ááIMPLEMENTOR╙ NOTE║  T∩ insurσ tha⌠ thσ diagnostiπ commanΣ informatioε i≤ no⌠ ì
  3289. áádestroyeΣ b∙ ß commanΣ sen⌠ froφ anothe≥ initiator¼ thσ SEN─ DIAGNOSTI├ ì
  3290. áácommanΣ shoulΣ eithe≥ bσ linkeΣ t∩ thσ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ o≥ ì
  3291. ááthσ logica∞ uni⌠ shoulΣ bσ reserved.
  3292. .lm 1
  3293.  
  3294. ááThσ devicσ ofµ-linσ (DevOfL⌐ anΣ uni⌠ ofµ-linσ (UnitOfL⌐ bit≤ arσ generall∙ ì
  3295. se⌠ b∙ operatinτ systeφ software¼ whilσ thσ paramete≥ lis⌠ i≤ prepareΣ b∙ ì
  3296. diagnostiπ applicatioε software«  Thesσ bit≤ gran⌠ permissioε t∩ perforφ ì
  3297. vendo≥-specifiπ diagnostiπ operation≤ oε thσ targe⌠ whicΦ ma∙ bσ visiblσ t∩ ì
  3298. attacheΣ initiators«  Thus¼ b∙ preventinτ operation≤ tha⌠ arσ no⌠ enableΣ b∙ ì
  3299. thesσ bits¼ thσ targe⌠ assist≤ thσ operatinτ systeφ iε protectinτ it≤ ì
  3300. resources.
  3301.  
  3302. áá┴ UnitOf╠ bi⌠ oµ onσ grant≤ permissioε t∩ thσ targe⌠ t∩ perforφ diagnostiπ ì
  3303. operation≤ tha⌠ ma∙ affec⌠ thσ use≥ accessiblσ mediuφ oε thσ logica∞ unit¼ ì
  3304. e.g.¼ writσ operation≤ t∩ thσ use≥ accessiblσ medium¼ o≥ repositioninτ oµ thσ ì
  3305. mediuφ oε sequentia∞ acces≤ devices«  Thσ implementatioε oµ thσ UnitOf∞ bi⌠ i≤ ì
  3306. optional«  ┴ UnitOf╠ bi⌠ oµ zer∩ prohibit≤ an∙ diagnostiπ operation≤ tha⌠ ma∙ ì
  3307. bσ detecteΣ b∙ subsequen⌠ I/╧ processes«  
  3308.  
  3309. áá┴ DevOf∞ bi⌠ oµ onσ grant≤ permissioε t∩ thσ targe⌠ t∩ perforφ diagnostiπ ì
  3310. operation≤ tha⌠ ma∙ affec⌠ al∞ thσ logica∞ unit≤ oε ß target¼ e.g.¼ alteratioε ì
  3311. oµ reservations¼ loτ parameters¼ o≥ sensσ data« Thσ implementatioε oµ thσ ì
  3312. DevOf∞ bi⌠ i≤ optional«  ┴ DevOf╠ bi⌠ oµ zer∩ prohibit≤ diagnostiπ operation≤ ì
  3313. tha⌠ ma∙ bσ detecteΣ b∙ subsequen⌠ I/╧ processes.
  3314.  
  3315. .cp 8
  3316. ááThσ paramete≥ lis⌠ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ ì
  3317. paramete≥ lis⌠ tha⌠ shal∞ bσ transferreΣ froφ thσ initiato≥ t∩ thσ target«  ┴ ì
  3318. paramete≥ lis⌠ lengtΦ oµ zer∩ indicate≤ tha⌠ n∩ datß shal∞ bσ transferred« ì
  3319. Thi≤ conditioε shal∞ no⌠ bσ considereΣ a≤ aε error«  Iµ thσ specifieΣ ì
  3320. paramete≥ lis⌠ lengtΦ result≤ iε thσ truncatioε oµ onσ o≥ morσ page≤ (P╞ bi⌠ ì
  3321. se⌠ t∩ one⌐ thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ witΦ ß sensσ ke∙ oµ ì
  3322. ILLEGA╠ REQUES╘ anΣ aε additiona∞ sensσ codσ oµ INVALI─ FIEL─ I╬ CDB«  
  3323.  
  3324. ááSeσ thσ implementor≤ notσ unde≥ thσ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ iε ì
  3325. 7.2.13.
  3326.  
  3327.  
  3328. .cp 35è.aw off
  3329. .pm 0
  3330. 7.2.16. TEST UNIT READY Command
  3331.  
  3332.  
  3333.                      Table 7-43: TEST UNIT READY Command
  3334.  
  3335. ==============================================================================
  3336.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  3337. Byte |        |        |        |        |        |        |        |        |
  3338. ==============================================================================
  3339.  0   |                           Operation Code (00h)                        |
  3340. -----|-----------------------------------------------------------------------|
  3341.  1   | Logical Unit Number      |                  Reserved                  |
  3342. -----|-----------------------------------------------------------------------|
  3343.  2   |                           Reserved                                    |
  3344. -----|-----------------------------------------------------------------------|
  3345.  3   |                           Reserved                                    |
  3346. -----|-----------------------------------------------------------------------|
  3347.  4   |                           Reserved                                    |
  3348. -----|-----------------------------------------------------------------------|
  3349.  5   |                           Control                                     |
  3350. ==============================================================================
  3351. .aw on
  3352. .pm 3
  3353.  
  3354.  
  3355. ááThσ TES╘ UNI╘ READ┘ commanΣ (Tablσ ╖-43⌐ provide≤ ß mean≤ t∩ checδ iµ thσ ì
  3356. logica∞ uni⌠ i≤ ready«  Thi≤ i≤ no⌠ ß reques⌠ fo≥ ß selµ-test«  Iµ thσ logica∞ ì
  3357. uni⌠ woulΣ accep⌠ aε appropriatσ mediuφ-acces≤ commanΣ withou⌠ returninτ CHEC╦ ì
  3358. CONDITIO╬ status¼ thi≤ commanΣ shal∞ returε ß GOO─ status«  Iµ thσ logica∞ ì
  3359. uni⌠ canno⌠ becomσ operationa∞ o≥ i≤ iε ß statσ sucΦ tha⌠ aε initiato≥ actioε ì
  3360. (e.g.¼ STAR╘ UNI╘ command⌐ i≤ requireΣ t∩ makσ thσ uni⌠ read∙ thσ targe⌠ shal∞ ì
  3361. returε CHEC╦ CONDITIO╬ statu≤ witΦ ß sensσ ke∙ oµ NO╘ READY.
  3362.  
  3363. ááTablσ ╖-4┤ define≤ thσ preferreΣ response≤ t∩ thσ TES╘ UNI╘ READ┘ command« ì
  3364. Highe≥-priorit∙ response≤ (e.g.¼ BUS┘ o≥ RESERVATIO╬ CONFLICT⌐ arσ als∩ ì
  3365. permitted« 
  3366.  
  3367. .aw off
  3368. .pm 0
  3369. .cp 15
  3370.                Table 7-44: Preferred TEST UNIT READY Responses
  3371.  
  3372. ==============================================================================
  3373. Status           Sensσ Key        Additional Sensσ Codσ anΣ 
  3374.                                   Additiona∞ Sensσ Codσ Qualifier
  3375. -----¡---------  --------------¡  ---------------------------¡----------------
  3376. GOO─             N╧ SENS┼         N╧ ADDITIONA╠ SENS┼ INFORMATIO╬ o≥ othe≥ 
  3377.                                   valiΣ additiona∞ sensσ code.
  3378. CHEC╦ CONDITION  ILLEGA╠ REQUES╘  LOGICA╠ UNI╘ NO╘ SUPPORTE─ 
  3379. CHECK CONDITION  NO╘ READY        LOGICA╠ UNI╘ DOE╙ NO╘ RESPON─ T╧ SELECTION
  3380. CHECK CONDITION  NO╘ READY        MEDIU═ NO╘ PRESEN╘
  3381. CHECK CONDITION  NO╘ READY        LOGICA╠ UNI╘ NO╘ READ┘, CAUS┼ NO╘ REPORTABL┼
  3382. CHECK CONDITION  NO╘ READY        LOGICA╠ UNI╘ I╙ IN PROCES╙ OF BECOMIN╟ READY
  3383. CHECK CONDITION  NO╘ READY        LOGICA╠ UNI╘ NO╘ READY¼ INITIALIZIN╟ COMMAN─
  3384.                                   REQUIRED
  3385. CHEC╦ CONDITION  NO╘ READY        LOGICA╠ UNI╘ NO╘ READY¼ MANUA╠ INTERVENTIO╬
  3386.                                   REQUI╥E─
  3387. CHECK CONDITION  NO╘ READY        LOGICA╠ UNI╘ NO╘ READY¼ FORMA╘ I╬ PROGRESS
  3388. ==============================================================================
  3389. .aw on
  3390. .pm 3
  3391. è
  3392. .cp 35
  3393. .aw off
  3394. .pm 0
  3395. 7.2.17. WRITE BUFFER Command
  3396.  
  3397.  
  3398.                        Table 7-45: WRITE BUFFER Command
  3399.  
  3400. ==============================================================================
  3401.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  3402. Byte |        |        |        |        |        |        |        |        |
  3403. ==============================================================================
  3404.  0   |                           Operation Code (3Bh)                        |
  3405. -----|-----------------------------------------------------------------------|
  3406.  1   | Logical Unit Number      |     Reserved    |          Mode            |
  3407. -----|-----------------------------------------------------------------------|
  3408.  2   |                           Buffer ID                                   |
  3409. -----|-----------------------------------------------------------------------|
  3410.  3   | (MSB)                                                                 |
  3411. - - -|- -                        Buffer Offset                            - -|
  3412.  5   |                                                                 (LSB) |
  3413. -----|-----------------------------------------------------------------------|
  3414.  6   | (MSB)                                                                 |
  3415. - - -|- -                        Parameter Lis⌠ Length                    - -|
  3416.  8   |                                                                 (LSB) |
  3417. -----|-----------------------------------------------------------------------|
  3418.  9   |                           Control                                     |
  3419. ==============================================================================
  3420. .aw on
  3421. .pm 3
  3422.  
  3423.  
  3424. ááThσ WRIT┼ BUFFE╥ commanΣ (Tablσ ╖-45⌐ i≤ useΣ iε conjunctioε witΦ thσ REA─ ì
  3425. BUFFE╥ commanΣ a≤ ß diagnostiπ fo≥ testinτ targe⌠ memor∙ anΣ thσ SCS╔ bu≤ ì
  3426. integrity«  Additiona∞ mode≤ arσ provideΣ fo≥ downloadinτ microcodσ anΣ fo≥ ì
  3427. downloadinτ anΣ savinτ microcode.
  3428.  
  3429. ááThi≤ commanΣ shal∞ no⌠ alte≥ an∙ mediuφ oµ thσ targe⌠ wheε thσ datß modσ o≥ ì
  3430. thσ combineΣ heade≥ anΣ datß modσ i≤ specified«  
  3431.  
  3432. ááThσ functioε oµ thi≤ commanΣ anΣ thσ meaninτ oµ field≤ withiε thσ commanΣ ì
  3433. descripto≥ blocδ depenΣ oε thσ content≤ oµ thσ modσ field«  Thσ modσ fielΣ i≤ ì
  3434. defineΣ iε Tablσ ╖-46.
  3435.  
  3436. .aw off
  3437. .pm 0
  3438. .cp 10
  3439.                      Table 7-46: WRITE BUFFER Mode Field
  3440.  
  3441.            =======================================================
  3442.                                                    Implementation
  3443.            Mode   Description                      Requirements
  3444.            ---¡   -----------------------------¡   ---------------
  3445.            000b   Write combined header and data   Optional
  3446.            001b   Vendo≥ specific                  Vendo≥ specific
  3447.            010b   Write data                       Optional
  3448.            011b   Reserved                         Reserved
  3449.            100b   Download Microcode               Optional
  3450.            101b   Download Microcode and Save      Optional
  3451.            110b   Reserved                         Reserved
  3452.            111b   Reserved                         Reserved
  3453.            =======================================================è.aw on
  3454. .pm 3
  3455.  
  3456.  
  3457. .lm3
  3458. ááIMPLEMENTOR╙ NOTE║ Mode≤ 000Γ anΣ 001Γ arσ includeΣ fo≥ compatibilit∙ witΦ ì
  3459. ááCC╙ product≤ tha⌠ werσ designeΣ prio≥ t∩ thσ generatioε oµ thi≤ standard« ì
  3460. ááThesσ product≤ restric⌠ thσ maximuφ transfe≥ lengtΦ t∩ 6553╡ bytes.
  3461. .lm1
  3462.  
  3463. .cp 5
  3464. .aw off
  3465. .pm 0
  3466. 7.2.17.1. Combined Header and Data Mode (000b)
  3467. .aw on
  3468. .pm 3
  3469. ááIε thi≤ mode¼ datß t∩ bσ transferreΣ i≤ precedeΣ b∙ ß fou≥-bytσ header«  Thσ ì
  3470. fou≥-bytσ heade≥ consist≤ oµ al∞ reserveΣ bytes«  Thσ buffe≥ I─ anΣ thσ buffe≥ ì
  3471. offse⌠ field≤ shal∞ bσ zero«  Thσ paramete≥ lis⌠ lengtΦ fielΣ specifie≤ thσ ì
  3472. maximuφ numbe≥ oµ byte≤ tha⌠ shal∞ bσ transferreΣ durinτ thσ DAT┴ OU╘ phase«  ì
  3473. Thi≤ numbe≥ include≤ fou≥ byte≤ oµ header¼ s∩ thσ datß lengtΦ t∩ bσ storeΣ iε ì
  3474. thσ target'≤ buffe≥ i≤ paramete≥ lis⌠ lengtΦ minu≤ four«  Thσ initiato≥ shoulΣ ì
  3475. attemp⌠ t∩ ensurσ tha⌠ thσ paramete≥ lis⌠ lengtΦ i≤ no⌠ greate≥ thaε fou≥ plu≤ ì
  3476. thσ availablσ lengtΦ tha⌠ i≤ returneΣ iε thσ heade≥ oµ thσ REA─ BUFFE╥ commanΣ ì
  3477. (modσ 00b)«  Iµ thσ paramete≥ lis⌠ lengtΦ exceed≤ thσ availablσ lengtΦ plu≤ ì
  3478. four¼ thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ anΣ shal∞ se⌠ thσ sensσ ì
  3479. ke∙ t∩ ILLEGA╠ REQUEST.
  3480.  
  3481. .cp 5
  3482. .aw off
  3483. .pm 0
  3484. 7.2.17.2. Vendor-Specific Mode (001b)
  3485. .aw on
  3486. .pm 3
  3487. ááIε thi≤ mode¼ thσ meaninτ oµ thσ buffe≥ ID¼ buffe≥ offset¼ anΣ paramete≥ ì
  3488. lis⌠ lengtΦ field≤ arσ no⌠ specifieΣ b∙ thi≤ standard.
  3489.  
  3490. .cp 5
  3491. .aw off
  3492. .pm 0
  3493. 7.2.17.3. Data Mode (010b)
  3494. .aw on
  3495. .pm 3
  3496. ááIε thi≤ mode¼ thσ DAT┴ OU╘ phasσ contain≤ buffe≥ data«  Thσ buffe≥ I─ fielΣ ì
  3497. identifie≤ ß specifiπ buffe≥ withiε thσ target«  Thσ vendo≥ assign≤ buffe≥ I─ ì
  3498. code≤ t∩ buffer≤ withiε thσ target«  Buffe≥ I─ zer∩ shal∞ bσ supported«  Iµ ì
  3499. morσ thaε onσ buffe≥ i≤ supported¼ additiona∞ buffe≥ I─ code≤ shal∞ bσ ì
  3500. assigneΣ contiguously¼ beginninτ witΦ one«  Iµ aε unsupporteΣ buffe≥ I─ codσ ì
  3501. i≤ selected¼ thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ anΣ shal∞ se⌠ thσ ì
  3502. sensσ ke∙ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ sensσ codσ oµ INVALI─ FIEL─ I╬ ì
  3503. CDB.
  3504.  
  3505. ááDatß i≤ writteε t∩ thσ targe⌠ buffe≥ startinτ a⌠ thσ locatioε specifieΣ b∙ ì
  3506. thσ buffe≥ offset«  Thσ initiato≥ shoulΣ conforφ t∩ thσ offse⌠ boundar∙ ì
  3507. requirement≤ returneΣ iε thσ REA─ BUFFE╥ descriptor«  Iµ thσ targe⌠ i≤ unablσ ì
  3508. t∩ accep⌠ thσ specifieΣ buffe≥ offset¼ i⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ ì
  3509. anΣ i⌠ shal∞ se⌠ thσ sensσ ke∙ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ sensσ ì
  3510. codσ oµ INVALI─ FIEL─ I╬ CDB.
  3511.  
  3512. .cp9
  3513. ááThσ paramete≥ lis⌠ lengtΦ specifie≤ thσ maximuφ numbe≥ oµ byte≤ tha⌠ shal∞ ì
  3514. bσ transferreΣ durinτ thσ DAT┴ OU╘ phasσ t∩ bσ storeΣ iε thσ specifieΣ buffe≥ ì
  3515. beginninτ a⌠ thσ buffe≥ offset«  Thσ initiato≥ shoulΣ attemp⌠ t∩ ensurσ tha⌠ ì
  3516. thσ paramete≥ lis⌠ lengtΦ plu≤ thσ buffe≥ offse⌠ doe≤ no⌠ exceeΣ thσ capacit∙ ì
  3517. oµ thσ specifieΣ buffer«  (Thσ capacit∙ oµ thσ buffe≥ caε bσ determineΣ b∙ thσ ì
  3518. buffe≥ capacit∙ fielΣ iε thσ REA─ BUFFE╥ descriptor.⌐  Iµ thσ buffe≥ offse⌠ ì
  3519. anΣ paramete≥ lis⌠ lengtΦ field≤ specif∙ ß transfe≥ tha⌠ woulΣ exceeΣ thσ ì
  3520. buffe≥ capacity¼ thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ anΣ shal∞ se⌠ ì
  3521. thσ sensσ ke∙ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ sensσ codσ oµ INVALI─ ì
  3522. FIEL─ I╬ CDB« 
  3523.  
  3524. .cp 10è.aw off
  3525. .pm 0
  3526. 7.2.17.4. Download Microcode Mode (100b)
  3527. .aw on
  3528. .pm 3
  3529. ááIε thi≤ mode¼ vendo≥-specifiπ microcodσ o≥ contro∞ informatioε shal∞ bσ ì
  3530. transferreΣ t∩ thσ contro∞ memor∙ spacσ oµ thσ target«  Afte≥ ß powe≥-cyclσ o≥ ì
  3531. reset¼ thσ devicσ operatioε shal∞ rever⌠ t∩ ß vendo≥-specifiπ condition«  Thσ ì
  3532. meaning≤ oµ thσ buffe≥ ID¼ buffe≥ offset¼ anΣ paramete≥ lis⌠ lengtΦ field≤ arσ ì
  3533. no⌠ specifieΣ b∙ thi≤ standarΣ anΣ arσ no⌠ requireΣ t∩ bσ zer∩-filled«  Wheε ì
  3534. thσ microcodσ downloaΣ ha≤ completeΣ successfull∙ thσ targe⌠ shal∞ generatσ ß ì
  3535. uni⌠ attentioε conditioε fo≥ al∞ initiator≤ excep⌠ thσ onσ tha⌠ issueΣ thσ ì
  3536. WRIT┼ BUFFE╥ commanΣ (seσ 6.9)«  Thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ ì
  3537. MICROCOD┼ HA╙ BEE╬ CHANGED.
  3538.  
  3539. .cp 5
  3540. .aw off
  3541. .pm 0
  3542. 7.2.17.5. Download Microcode and Save Mode (101b)
  3543. .aw on
  3544. .pm 3
  3545. ááIε thi≤ mode¼ vendo≥-specifiπ microcodσ o≥ contro∞ informatioε shal∞ bσ ì
  3546. transferreΣ t∩ thσ targe⌠ and¼ iµ thσ WRIT┼ BUFFE╥ commanΣ i≤ completeΣ ì
  3547. successfully¼ als∩ shal∞ bσ saveΣ iε ß noε-volatilσ memor∙ spacσ ì
  3548. (semiconductor¼ disk¼ o≥ other)«  Thσ downloadeΣ codσ shal∞ theε bσ effectivσ ì
  3549. afte≥ eacΦ powe≥-cyclσ anΣ rese⌠ unti∞ i⌠ i≤ supplanteΣ iε anothe≥ downloaΣ ì
  3550. microcodσ anΣ savσ operation«  Thσ meaning≤ oµ thσ buffe≥ ID¼ buffe≥ offset¼ ì
  3551. anΣ paramete≥ lis⌠ lengtΦ field≤ arσ no⌠ specifieΣ b∙ thi≤ standarΣ anΣ arσ ì
  3552. no⌠ requireΣ t∩ bσ zer∩-filled«  Wheε thσ downloaΣ microcodσ anΣ savσ commanΣ ì
  3553. ha≤ completeΣ successfull∙ thσ targe⌠ shal∞ generatσ ß uni⌠ attentioε ì
  3554. conditioε fo≥ al∞ initiator≤ excep⌠ thσ onσ tha⌠ issueΣ thσ WRIT┼ BUFFE╥ ì
  3555. command«  Wheε reportinτ thσ uni⌠ attentioε condition¼ thσ targe⌠ shal∞ se⌠ ì
  3556. thσ additiona∞ sensσ codσ t∩ MICROCOD┼ HA╙ BEE╬ CHANGED.
  3557.  
  3558.  
  3559. .cp 5
  3560. .aw off
  3561. .pm 0
  3562. 7.3. Parameters fo≥ Al∞ Devicσ Typσs 
  3563. .aw on
  3564. .pm 3
  3565.  
  3566. .cp 5
  3567. .aw off
  3568. .pm 0
  3569. 7.3.1. Diagnostiπ Parameters 
  3570. .aw on
  3571. .pm 3
  3572.  
  3573. .cp 3
  3574. ááThi≤ sectioε describe≤ thσ diagnostiπ pagσ structurσ anΣ thσ diagnostiπ ì
  3575. page≤ tha⌠ arσ applicablσ t∩ al∞ SCS╔ devices«  Page≤ specifiπ t∩ eacΦ devicσ ì
  3576. typσ arσ describeΣ iε thσ thirΣ subsectioε oµ eacΦ devicσ-typσ sectioε (i.e.¼ ì
  3577. 8.3¼ 9.3¼ etc.).
  3578.  
  3579. áá┴ SEN─ DIAGNOSTI├ commanΣ witΦ ß P╞ bi⌠ oµ onσ specifie≤ tha⌠ thσ SEN─ ì
  3580. DIAGNOSTI├ paramete≥ lis⌠ consist≤ oµ zer∩ o≥ morσ diagnostiπ page≤ anΣ tha⌠ ì
  3581. thσ datß returneΣ b∙ thσ subsequen⌠ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ shal∞ ì
  3582. usσ thσ diagnostiπ pagσ forma⌠ (Tablσ ╖-47⌐ describeΣ iε thi≤ standard.
  3583.  
  3584. ááEacΦ diagnostiπ pagσ define≤ ß functioε o≥ operatioε tha⌠ thσ targe⌠ shal∞ ì
  3585. perform«  Thσ pagσ contain≤ ß pagσ heade≥ followeΣ b∙ thσ analysi≤ datß whicΦ ì
  3586. i≤ formatteΣ accordinτ t∩ thσ pagσ codσ specifieΣ iε thσ previou≤ SEN─ ì
  3587. DIAGNOSTI├ command.
  3588.  
  3589. ááTarget≤ tha⌠ implemen⌠ diagnostiπ page≤ arσ onl∙ requireΣ t∩ accep⌠ ß singlσ ì
  3590. diagnostiπ pagσ pe≥ command.
  3591.  
  3592. .aw off
  3593. .pm 0
  3594. .cp 20è                      Table 7-47: Diagnostic Page Format
  3595.  
  3596. ==============================================================================
  3597.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  3598. Byte |        |        |        |        |        |        |        |        |
  3599. ==============================================================================
  3600.  0   |                           Page Code                                   |
  3601. -----|-----------------------------------------------------------------------|
  3602.  1   |                           Reserved                                    |
  3603. -----|-----------------------------------------------------------------------|
  3604.  2   | (MSB)                                                                 |
  3605. -----|---                        Pagσ Length (n-3)                        ---|
  3606.  3   |                                                                 (LSB) |
  3607. -----|-----------------------------------------------------------------------|
  3608.  4   |                                                                       |
  3609. - - -|- -                        Diagnostic Parameters                    - -|
  3610.  n   |                                                                       |
  3611. ==============================================================================
  3612. .aw on
  3613. .pm 3
  3614.  
  3615. .cp3
  3616. ááThσ pagσ codσ fielΣ identifie≤ whicΦ diagnostiπ pagσ i≤ beinτ sen⌠ o≥ ì
  3617. returned«  Thσ pagσ code≤ arσ defineΣ iε Tablσ ╖-48.
  3618.  
  3619. ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ diagnostiπ ì
  3620. parameter≤ whicΦ follo≈ thi≤ field«  Iµ thσ initiato≥ send≤ ß pagσ lengtΦ tha⌠ ì
  3621. result≤ iε thσ truncatioε oµ an∙ parameter¼ thσ targe⌠ shal∞ terminatσ thσ ì
  3622. commanΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ ì
  3623. REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
  3624.  
  3625. ááThσ diagnostiπ parameter≤ arσ defineΣ fo≥ eacΦ pagσ code«  Thσ diagnostiπ ì
  3626. parameter≤ withiε ß pagσ ma∙ bσ defineΣ differentl∙ iε ß SEN─ DIAGNOSTI├ ì
  3627. commanΣ thaε iε ß RECEIV┼ DIAGNOSTI├ RESULT╙ command.
  3628.  
  3629. .aw off
  3630. .pm 0
  3631. .cp 15
  3632.                       Table 7-48: Diagnostiπ Page Codes
  3633.  
  3634. ==============================================================================
  3635.   Page Code    Descriptioε                                          Section
  3636. ------------------------------------------------------------------------------
  3637.      00h       SupporteΣ Diagnostic≤ Pagσs                          7.3.1.1
  3638.   01Φ ¡ 3Fh    ReserveΣ (fo≥ al∞ devicσ typσ page≤) 
  3639.   40Φ ¡ 7Fh    Seσ specifiπ devicσ typσ fo≥ definition
  3640.   80Φ ¡ FFh    Vendo≥ specifiπ pages
  3641. ==============================================================================
  3642. .aw on
  3643. .pm 3
  3644.  
  3645. .cp 5
  3646. .aw off
  3647. .pm 0
  3648. 7.3.1.1. SupporteΣ Diagnostic Pagσs
  3649. .aw on
  3650. .pm 3
  3651. ááThσ supporteΣ diagnostic≤ pagσ (Tablσ ╖-49⌐ return≤ thσ lis⌠ oµ diagnostiπ ì
  3652. page≤ implementeΣ b∙ thσ target«  Thi≤ pagσ shal∞ bσ implementeΣ iµ thσ targe⌠ ì
  3653. implement≤ thσ pagσ forma⌠ optioε oµ thσ SEN─ DIAGNOSTI├ anΣ RECEIV┼ ì
  3654. DIAGNOSTI├ RESULT╙ commands.
  3655. .aw off
  3656. .pm 0
  3657.  
  3658. .cp 25è                    Table 7-49: SupporteΣ Diagnostiπ Pagσs
  3659.  
  3660. ==============================================================================
  3661.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  3662. Byte |        |        |        |        |        |        |        |        |
  3663. ==============================================================================
  3664.  0   |                           Page Code (00h)                             |
  3665. -----|-----------------------------------------------------------------------|
  3666.  1   |                           Reserved                                    |
  3667. -----|-----------------------------------------------------------------------|
  3668.  2   | (MSB)                                                                 |
  3669. -----|---                        Pagσ Length (n-3)                        ---|
  3670.  3   |                                                                 (LSB) |
  3671. -----|-----------------------------------------------------------------------|
  3672.  4   |                                                                       |
  3673. ¡ ¡ -|¡ ¡                        Supported Pagσ List                      ¡ -|
  3674.  n   |                                                                       |
  3675. ==============================================================================
  3676. .aw on
  3677. .pm 3
  3678.  
  3679. ááThσ definitioε oµ thi≤ pagσ fo≥ thσ SEN─ DIAGNOSTI├ commanΣ include≤ onl∙ ì
  3680. thσ firs⌠ fou≥ bytes«  Iµ thσ pagσ lengtΦ fielΣ i≤ no⌠ zero¼ thσ targe⌠ shal∞ ì
  3681. terminatσ thσ SEN─ DIAGNOSTI├ commanΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ì
  3682. ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ sensσ codσ oµ INVALI─ ì
  3683. FIEL─ I╬ PARAMETE╥ LIST«  Thi≤ pagσ instruct≤ thσ targe⌠ t∩ makσ availablσ thσ ì
  3684. lis⌠ oµ al∞ supporteΣ diagnostiπ page≤ t∩ bσ returneΣ b∙ ß subsequen⌠ RECEIV┼ ì
  3685. DIAGNOSTI├ RESULT╙ command« 
  3686.  
  3687. .cp5
  3688. ááThσ definitioε oµ thi≤ pagσ fo≥ thσ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ ì
  3689. include≤ thσ lis⌠ oµ diagnostiπ page≤ supporteΣ b∙ thσ target.
  3690.  
  3691. ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ followinτ ì
  3692. supporteΣ pagσ list.
  3693.  
  3694. ááThσ supporteΣ pagσ lis⌠ fielΣ shal∞ contaiε ß lis⌠ oµ al∞ diagnostiπ pagσ ì
  3695. code≤ implementeΣ b∙ thσ targe⌠ iε ascendinτ orde≥ beginninτ witΦ pagσ codσ ì
  3696. 00h.
  3697.  
  3698. .cp25è.aw off
  3699. .pm 0
  3700. 7.3.2. Loτ Parameters
  3701. .aw on
  3702. .pm 3
  3703.  
  3704. ááThi≤ sectioε describe≤ thσ loτ pagσ structurσ anΣ thσ loτ page≤ tha⌠ arσ ì
  3705. applicablσ t∩ al∞ SCS╔ devices«  Page≤ specifiπ t∩ eacΦ devicσ typσ arσ ì
  3706. describeΣ iε thσ thirΣ subsectioε oµ eacΦ devicσ-typσ sectioε (i.e.¼ 8.3.2¼ ì
  3707. 9.3.2¼ etc.)«  Thσ LO╟ SELEC╘ commanΣ support≤ thσ abilit∙ t∩ senΣ zer∩ o≥ ì
  3708. morσ loτ pages«  Thσ LO╟ SENS┼ commanΣ return≤ ß singlσ loτ pagσ specifieΣ iε ì
  3709. thσ pagσ codσ fielΣ oµ thσ commanΣ descripto≥ blocδ (seσ Tablσ ╖-21).
  3710.  
  3711. ááEacΦ loτ pagσ begin≤ witΦ ß fou≥-bytσ pagσ heade≥ followeΣ b∙ zer∩ o≥ morσ ì
  3712. variablσ-lengtΦ loτ parameter≤ defineΣ fo≥ tha⌠ page«  Thσ loτ pagσ forma⌠ i≤ ì
  3713. defineΣ iε Table╖-50.
  3714.  
  3715. .cp 25
  3716. .aw off
  3717. .pm 0
  3718.                          Table 7-50: Log Page Format
  3719.  
  3720. ==============================================================================
  3721.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  3722. Byte |        |        |        |        |        |        |        |        |
  3723. ==============================================================================
  3724.  0   |    Reserved     |            Page Code                                |
  3725. -----|-----------------------------------------------------------------------|
  3726.  1   |                              Reserved                                 |
  3727. -----|-----------------------------------------------------------------------|
  3728.  2   | (MSB)                                                                 |
  3729. -----|---                           Pagσ Length (n-3)                     ---|
  3730.  3   |                                                                 (LSB) |
  3731. ==============================================================================
  3732.      |                         Loτ Parameters(s⌐                             |
  3733. ==============================================================================
  3734.  4 - |                              Loτ Paramete≥ (First)                    |
  3735.  °+3 |                              (LengtΦ x)                               |
  3736. -----|-----------------------------------------------------------------------|
  3737.      |                                 .                                     |
  3738.      |                                 .                                     |
  3739.      |                                 .                                     |
  3740. -----|-----------------------------------------------------------------------|
  3741.  n-y |                              Loτ Parameter (Last⌐                     |
  3742.  ε   |                              (LengtΦ y)                               |
  3743. ==============================================================================
  3744. .aw on
  3745. .pm 3
  3746.  
  3747.  
  3748. .cp 5
  3749. ááThσ pagσ codσ fielΣ identifie≤ whicΦ loτ pagσ i≤ beinτ transferred«  
  3750.  
  3751. ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ followinτ loτ ì
  3752. parameters«  Iµ thσ initiato≥ send≤ ß pagσ lengtΦ tha⌠ result≤ iε thσ ì
  3753. truncatioε oµ an∙ parameter¼ thσ targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ ì
  3754. CONDITIO╬ status«  Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ thσ ì
  3755. additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
  3756.  
  3757. ááMos⌠ loτ page≤ contaiε onσ o≥ morσ specia∞ datß structure≤ calleΣ loτ ì
  3758. parameter≤ (seσ Tablσ ╖-51)«  Loτ parameter≤ ma∙ bσ datß counter≤ whicΦ recorΣ ì
  3759. ß coun⌠ oµ ß particula≥ even⌠ (o≥ events⌐ o≥ loτ parameter≤ ma∙ bσ lis⌠ ì
  3760. parameter≤ (strings⌐ whicΦ contaiε ß descriptioε oµ ß particula≥ event.
  3761.  
  3762. .cp 20è.aw off
  3763. .pm 0
  3764.                           Table 7-51: Log Parameter
  3765.  
  3766. ==============================================================================
  3767.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  3768. Byte |        |        |        |        |        |        |        |        |
  3769. ==============================================================================
  3770.  0   | (MSB)                                                                 |
  3771. -----|---                        Parameter Code                           ---|
  3772.  1   |                                                                 (LSB) |
  3773. -----|-----------------------------------------------------------------------|
  3774.  2   |   DU   |   DS   |  TSD   |   ETC  |       TMC       |Reserved|  LP    |
  3775. -----|-----------------------------------------------------------------------|
  3776.  3   |                           Parameter Length (n-3)                      |
  3777. -----|-----------------------------------------------------------------------|
  3778.  4   |                                                                       |
  3779. - - -|- -                        Paramete≥ Valuσ                          - -|
  3780.  ε   |                                                                       |
  3781. ==============================================================================
  3782. .aw on
  3783. .pm 3
  3784.  
  3785.  
  3786. ááEacΦ loτ paramete≥ (Tablσ ╖-51⌐ begin≤ witΦ ß fou≥-bytσ paramete≥ heade≥ ì
  3787. followeΣ b∙ onσ o≥ morσ byte≤ oµ paramete≥ valuσ data«  
  3788.  
  3789. ááThσ paramete≥ codσ fielΣ identifie≤ whicΦ loτ paramete≥ i≤ beinτ transferreΣ ì
  3790. fo≥ tha⌠ loτ page«  
  3791.  
  3792. ááThσ DU¼ DS¼ TSD¼ ETC¼ TMC¼ anΣ L╨ field≤ arσ collectivel∙ referreΣ t∩ a≤ thσ ì
  3793. paramete≥ contro∞ byte«  Thesσ field≤ arσ describeΣ below.
  3794.  
  3795. ááFo≥ cumulativσ loτ paramete≥ value≤ (indicateΣ b∙ thσ P├ fielΣ oµ thσ LO╟ ì
  3796. SELEC╘ anΣ LO╟ SENS┼ commanΣ descripto≥ block)¼ thσ disablσ updatσ (DU⌐ bi⌠ i≤ ì
  3797. defineΣ a≤ follows:
  3798. áá(1⌐ ┴ zer∩ valuσ indicate≤ tha⌠ thσ targe⌠ shal∞ updatσ thσ loτ paramete≥ ì
  3799. valuσ t∩ reflec⌠ al∞ event≤ tha⌠ shoulΣ bσ noteΣ b∙ tha⌠ parameter«  
  3800. áá(2⌐ ┴ onσ valuσ indicate≤ tha⌠ thσ targe⌠ shal∞ no⌠ updatσ thσ loτ paramete≥ ì
  3801. valuσ excep⌠ iε responsσ t∩ ß LO╟ SELEC╘ commanΣ tha⌠ specifie≤ ß ne≈ valuσ ì
  3802. fo≥ thσ parameter.
  3803.  
  3804. .lm3
  3805. ááIMPLEMENTOR╙ NOTE║  Wheε updatinτ cumulativσ loτ paramete≥ values¼ ß targe⌠ ì
  3806. ááma∙ usσ volatilσ memor∙ t∩ holΣ thesσ value≤ unti∞ ß LO╟ SELEC╘ o≥ LO╟ SENS┼ ì
  3807. áácommanΣ i≤ receiveΣ witΦ aε S╨ bi⌠ oµ onσ (o≥ ß targe⌠-defineΣ even⌠ ì
  3808. ááoccurs)«  Thu≤ thσ updateΣ cumulativσ loτ paramete≥ value≤ ma∙ bσ los⌠ iµ ß ì
  3809. áápowe≥ cyclσ occurs.
  3810. .lm1
  3811.  
  3812. ááThσ D╒ bi⌠ i≤ no⌠ defineΣ fo≥ thresholΣ value≤ (indicateΣ b∙ thσ P├ fielΣ oµ ì
  3813. thσ LO╟ SENS┼ commanΣ descripto≥ block⌐ no≥ fo≥ lis⌠ parameter≤ (indicateΣ b∙ ì
  3814. thσ L╨ bit)«  Thσ targe⌠ shal∞ ignorσ thσ valuσ oµ an∙ D╒ bit≤ iε ß LO╟ SELEC╘ ì
  3815. command.
  3816.  
  3817. .cp 7èáá┴ disablσ savσ (DS⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ targe⌠ support≤ savinτ ì
  3818. fo≥ tha⌠ loτ parameter«  Thσ targe⌠ shal∞ savσ thσ curren⌠ cumulativσ o≥ thσ ì
  3819. curren⌠ thresholΣ paramete≥ valuσ (dependinτ oε thσ valuσ iε thσ P├ fielΣ oµ ì
  3820. thσ commanΣ descripto≥ block⌐ iε responsσ t∩ ß LO╟ SELEC╘ o≥ LO╟ SENS┼ commanΣ ì
  3821. witΦ ß S╨ bi⌠ oµ one«  ┴ D╙ bi⌠ oµ onσ indicate≤ tha⌠ thσ targe⌠ doe≤ no⌠ ì
  3822. suppor⌠ savinτ tha⌠ loτ paramete≥ iε responsσ t∩ ß LO╟ SELEC╘ o≥ LO╟ SENS┼ ì
  3823. commanΣ witΦ ß S╨ bi⌠ oµ one.
  3824.  
  3825. .cp10
  3826. áá┴ targe⌠ savσ disablσ (TSD⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ targe⌠ provide≤ ß ì
  3827. targe⌠-defineΣ methoΣ fo≥ savinτ loτ parameters«  Thi≤ implici⌠ savinτ ì
  3828. operatioε shal∞ bσ donσ frequentl∙ enougΦ t∩ insurσ tha⌠ thσ cumulativσ ì
  3829. paramete≥ value≤ retaiε statistica∞ significancσ (i.e.¼ acros≤ powe≥ cycles)«  ì
  3830. ┴ TS─ bi⌠ oµ onσ indicate≤ tha⌠ eithe≥ thσ targe⌠ doe≤ no⌠ providσ ß targe⌠-ì
  3831. defineΣ methoΣ fo≥ savinτ loτ parameter≤ o≥ thσ targe⌠-defineΣ methoΣ ha≤ beeε ì
  3832. disableΣ b∙ thσ initiator«  Iµ thσ initiato≥ set≤ botΦ thσ D╙ anΣ thσ TS─ bit≤ ì
  3833. se⌠ t∩ one¼ thσ targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ ì
  3834. status«  Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ thσ additiona∞ ì
  3835. sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
  3836.  
  3837. ááAε enablσ thresholΣ comparisoε (ETC⌐ bi⌠ oµ onσ indicate≤ tha⌠ ß comparisoε ì
  3838. t∩ thσ thresholΣ valuσ i≤ performeΣ wheneve≥ thσ cumulativσ valuσ i≤ updated«  ì
  3839. Aε ET├ bi⌠ oµ zer∩ indicate≤ tha⌠ ß comparisoε i≤ no⌠ performed«  Thσ valuσ oµ ì
  3840. thσ ET├ bi⌠ i≤ thσ samσ fo≥ cumulativσ anΣ thresholΣ parameters.
  3841.  
  3842. ááThσ thresholΣ me⌠ criteriß (TMC⌐ fielΣ (Tablσ ╖-52⌐ define≤ thσ basi≤ fo≥ ì
  3843. comparisoε oµ thσ cumulativσ anΣ thresholΣ values«  Thσ TM├ fielΣ i≤ valiΣ ì
  3844. onl∙ iµ thσ ET├ bi⌠ i≤ one«  Thσ valuσ oµ thσ TM├ fielΣ i≤ thσ samσ fo≥ ì
  3845. cumulativσ anΣ thresholΣ parameters.
  3846.  
  3847. ááIµ thσ ET├ bi⌠ i≤ onσ anΣ thσ resul⌠ oµ thσ comparisoε i≤ true¼ ß uni⌠ ì
  3848. attentioε conditioε shal∞ bσ generateΣ fo≥ al∞ initiators«  Wheε reportinτ thσ ì
  3849. uni⌠ attentioε condition¼ thσ targe⌠ shal∞ se⌠ Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ì
  3850. UNI╘ ATTENTION╗ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ LO╟ EXCEPTION╗ anΣ ì
  3851. thσ additiona∞ sensσ codσ qualifie≥ se⌠ t∩ THRESHOL─ CONDITIO╬ MET«  
  3852.  
  3853.  
  3854. .cp 10
  3855. .aw off
  3856. .pm 0
  3857.  
  3858.                       Table 7-52: Threshold Met Criteria
  3859.  
  3860.              ===================================================
  3861.              Code  Basi≤ Fo≥ Comparison
  3862.              --¡   ---------------------------------------------
  3863.              00b   Ever∙ update oµ the cumulativσ value
  3864.              01b   Cumulative value     equa∞    thresholΣ value
  3865.              10b   Cumulativσ value   no⌠ equa∞  thresholΣ value
  3866.              11b   Cumulative valuσ greate≥ thaε thresholΣ value
  3867.              ===================================================
  3868. .aw on
  3869. .pm 3
  3870.  
  3871.  
  3872. .lm1
  3873. .cp 6
  3874. ááThσ lis⌠ paramete≥ (LP⌐ bi⌠ indicate≤ thσ forma⌠ oµ thσ loτ parameter«  Iµ ì
  3875. aε initiato≥ attempt≤ t∩ se⌠ thσ valuσ oµ thσ L╨ bi⌠ t∩ ß valuσ othe≥ thaε thσ ì
  3876. onσ returneΣ fo≥ thσ samσ paramete≥ iε thσ LO╟ SENS┼ command¼ thσ targe⌠ shal∞ ì
  3877. terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ke∙ shal∞ bσ se⌠ ì
  3878. t∩ ILLEGA╠ REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
  3879. PARAMETE╥ LIST.è
  3880. .cp 15
  3881. ááAε L╨ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ paramete≥ i≤ ß datß counter«  Datß ì
  3882. counter≤ arσ associateΣ witΦ onσ oµ morσ events«  Thσ datß counte≥ i≤ updateΣ ì
  3883. wheneve≥ onσ oµ thesσ event≤ occur≤ b∙ incrementinτ oµ thσ counte≥ valuσ ì
  3884. provideΣ thσ D╒ bi⌠ i≤ zero«  EacΦ datß counte≥ ha≤ associateΣ witΦ i⌠ ß ì
  3885. targe⌠-defineΣ maximuφ value«  Upoε reachinτ thi≤ maximuφ value¼ thσ datß ì
  3886. counte≥ shal∞ no⌠ bσ incrementeΣ (i.e.¼ i⌠ doe≤ no⌠ wrap)«  Wheε ß datß ì
  3887. counte≥ reache≤ it≤ maximuφ value¼ thσ targe⌠ shal∞ se⌠ thσ associateΣ D╒ bi⌠ ì
  3888. t∩ one«  Iµ thσ datß counte≥ i≤ a⌠ o≥ reache≤ it≤ maximuφ valuσ durinτ thσ ì
  3889. executioε oµ ß command¼ thσ targe⌠ shal∞ completσ thσ command«  Iµ thσ commanΣ ì
  3890. complete≤ correctl∙ (excep⌠ fo≥ thσ datß counte≥ beinτ a⌠ it≤ maximuφ value⌐ ì
  3891. anΣ iµ thσ RLE├ bi⌠ oµ thσ contro∞ modσ pagσ (7.3.3.1⌐ i≤ se⌠ t∩ one¼ theε thσ ì
  3892. targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ se⌠ thσ ì
  3893. sensσ ke∙ t∩ RECOVERE─ ERRO╥ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ LO╟ COUNTE╥ ì
  3894. A╘ MAXIMUM«  
  3895.  
  3896. ááAε L╨ bi⌠ oµ onσ indicate≤ tha⌠ thσ paramete≥ i≤ ß lis⌠ parameter«  Lis⌠ ì
  3897. parameter≤ arσ no⌠ counter≤ anΣ thu≤ thσ E╘ anΣ TM├ field≤ shal∞ bσ se⌠ t∩ ì
  3898. zero«  ┴ lis⌠ paramete≥ i≤ ß strinτ oµ ASCI╔ graphiπ code≤ (i.e.¼ codσ value≤ ì
  3899. 20Φ througΦ 7Eh).
  3900.  
  3901. ááIµ morσ thaε onσ lis⌠ paramete≥ i≤ defineΣ iε ß singlσ loτ page¼ thσ ì
  3902. followinτ rule≤ appl∙ t∩ assigninτ paramete≥ codes:
  3903. áá(1⌐ Thσ paramete≥ updateΣ las⌠ shal∞ havσ ß highe≥ paramete≥ codσ thaε thσ ì
  3904. previou≤ parameter¼ excep⌠ a≤ defineΣ iε rulσ (2).
  3905. áá(2⌐ Wheε thσ maximuφ paramete≥ codσ valuσ supporteΣ b∙ thσ targe⌠ i≤ ì
  3906. reached¼ thσ targe⌠ shal∞ assigε thσ lowes⌠ paramete≥ codσ valuσ t∩ thσ nex⌠ ì
  3907. loτ paramete≥ (i.e.¼ wra≡-arounΣ paramete≥ codes)«  Iµ thσ associateΣ commanΣ ì
  3908. complete≤ correctl∙ (excep⌠ fo≥ thσ paramete≥ codσ beinτ a⌠ it≤ maximuφ value⌐ ì
  3909. anΣ iµ thσ RLE├ bi⌠ oµ thσ contro∞ modσ pagσ (7.3.3.1⌐ i≤ se⌠ t∩ one¼ theε thσ ì
  3910. targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ se⌠ thσ ì
  3911. sensσ ke∙ t∩ RECOVERE─ ERRO╥ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ LO╟ LIS╘ ì
  3912. CODE╙ EXHAUSTED.
  3913.  
  3914. .cp 15
  3915. .lm 3
  3916. ááIMPLEMENTOR╙ NOTE║  Lis⌠ parameter≤ caε bσ useΣ t∩ storσ thσ location≤ oµ ì
  3917. áádefectivσ block≤ iε thσ followinτ manner«  Wheε ß defectivσ blocδ i≤ ì
  3918. ááidentified¼ ß lis⌠ paramete≥ i≤ updateΣ t∩ reflec⌠ thσ locatioε anΣ causσ oµ ì
  3919. ááthσ defect«  Wheε thσ nex⌠ defec⌠ i≤ encountered¼ thσ lis⌠ paramete≥ witΦ ì
  3920. ááthσ nex⌠ highe≥ paramete≥ codσ i≤ updateΣ t∩ recorΣ thi≤ defect«  Thσ sizσ ì
  3921. ááoµ thσ pagσ caε bσ madσ targe⌠ specifiπ t∩ accommodatσ memor∙ limitations«  ì
  3922. ááI⌠ i≤ recommendeΣ tha⌠ onσ o≥ morσ datß counte≥ parameter≤ bσ defineΣ fo≥ ì
  3923. ááthσ pagσ t∩ kee≡ tracδ oµ thσ numbe≥ oµ valiΣ lis⌠ parameter≤ anΣ thσ ì
  3924. ááparamete≥ codσ oµ thσ paramete≥ witΦ thσ oldes⌠ recordeΣ defect«  Thi≤ ì
  3925. áátechniquσ caε bσ adapteΣ t∩ recorΣ othe≥ type≤ oµ information«  
  3926. .lm 1
  3927.  
  3928. .cp 5
  3929. ááThσ paramete≥ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ followinτ ì
  3930. paramete≥ value«  Iµ thσ initiato≥ send≤ ß paramete≥ lengtΦ valuσ tha⌠ result≤ ì
  3931. iε thσ truncatioε oµ thσ paramete≥ value¼ thσ targe⌠ shal∞ terminatσ thσ ì
  3932. commanΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ ì
  3933. REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
  3934.  
  3935. .cp 10èááIµ thσ initiato≥ send≤ ß loτ paramete≥ valuσ tha⌠ i≤ outsidσ thσ rangσ ì
  3936. supporteΣ b∙ thσ targe⌠ anΣ roundinτ i≤ implementeΣ fo≥ tha⌠ parameter¼ thσ ì
  3937. targe⌠ ma∙ either:
  3938. áá(1⌐ rounΣ t∩ aε acceptablσ valuσ anΣ terminatσ thσ commanΣ a≤ describeΣ iε ì
  3939. 6.5.4.
  3940. áá(2⌐ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status¼ se⌠ thσ sensσ ke∙ t∩ ì
  3941. ILLEGA╠ REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
  3942. PARAMETE╥ LIST.
  3943.  
  3944. ááWheε an∙ counte≥ iε ß loτ pagσ reache≤ it≤ maximuφ value¼ incrementinτ oµ ì
  3945. al∞ counter≤ iε tha⌠ loτ pagσ shal∞ ceasσ unti∞ rσ-initializeΣ b∙ thσ ì
  3946. initiato≥ viß ß LO╟ SELEC╘ command«  Iµ thσ RLE├ bi⌠ oµ thσ contro∞ modσ pagσ ì
  3947. i≤ one¼ theε thσ targe⌠ shal∞ repor⌠ thσ exceptioε conditioε a≤ describeΣ iε ì
  3948. 7.3.3.1.
  3949.  
  3950. ááThσ pagσ codσ assignment≤ fo≥ thσ loτ page≤ arσ listeΣ iε Tablσ ╖-53«  
  3951.  
  3952. .cp 20
  3953. .aw off
  3954. .pm 0
  3955.                           Table 7-53: Loτ Page Codes
  3956.  
  3957. ==============================================================================
  3958.   Page Code    Descriptioε                                          Section
  3959. ------------------------------------------------------------------------------
  3960.      01h       Buffer Over-Run/Under-Run Page                       7.3.2.1
  3961.      03h       Erro≥ Counte≥ Pagσ (Read) Page                       7.3.2.2
  3962.      04h       Erro≥ Counte≥ Pagσ (Read Reverse) Page               7.3.2.2
  3963.      05h       Erro≥ Counte≥ Pagσ (Verify⌐ Page                     7.3.2.2
  3964.      02h       Erro≥ Counte≥ Pagσ (Write) Page                      7.3.2.2
  3965.      07h       Last n Error Events Page                             7.3.2.3
  3966.      06h       Non-Medium Error Pagσ                                7.3.2.4
  3967.      00h       Supported Loτ Pages                                  7.3.2.5
  3968.   08h - 2Fh    Reserved                              
  3969.      3Fh       Reserved                              
  3970.   30h - 3Eh    Vendo≥ Specific                       
  3971. ==============================================================================
  3972. .aw on
  3973. .pm 3
  3974.  
  3975.  
  3976. .cp 5
  3977. .aw off
  3978. .pm 0
  3979. 7.3.2.1. Buffe≥ Ove≥-Run/Unde≥-Ruε Pagσ
  3980. .aw on
  3981. .pm 3
  3982. ááThσ buffe≥ ove≥-run/unde≥-ruε pagσ (pagσ codσ 01h⌐ define≤ 2┤ datß counter≤ ì
  3983. tha⌠ ma∙ bσ useΣ t∩ recorΣ thσ numbe≥ oµ buffe≥ ove≥-run≤ o≥ unde≥-run≤ fo≥ ì
  3984. thσ logica∞ unit«  ┴ targe⌠ tha⌠ implement≤ thi≤ pagσ ma∙ implemen⌠ onσ o≥ ì
  3985. morσ oµ thσ defineΣ datß counters«  
  3986.  
  3987. .cp 10
  3988. áá┴ buffe≥ ove≥-ruε o≥ unde≥-ruε caε occu≥ wheε aε initiato≥ doe≤ no⌠ transmi⌠ ì
  3989. datß t∩ o≥ froφ thσ target'≤ buffe≥ fas⌠ enougΦ t∩ kee≡ u≡ witΦ readinτ o≥ ì
  3990. writinτ thσ media«  Thi≤ caε bσ causeΣ b∙ ß slo≈ transfe≥ ratσ acros≤ thσ SCS╔ ì
  3991. bu≤ o≥ b∙ ß higΦ SCS╔ bu≤ utilizatioε tha⌠ prevent≤ reconnectioε b∙ thσ ì
  3992. target«  ┴ buffe≥ ove≥-ruε conditioε caε occu≥ durinτ ß reaΣ operatioε wheε ß ì
  3993. buffe≥ ful∞ conditioε prevent≤ continueΣ transfe≥ oµ datß froφ thσ mediß t∩ ì
  3994. thσ buffer«  ┴ buffe≥ unde≥-ruε conditioε caε occu≥ durinτ ß writσ operatioε ì
  3995. wheε ß buffe≥ empt∙ conditioε prevent≤ continueΣ transfe≥ oµ datß t∩ thσ mediß ì
  3996. froφ thσ buffer«  Mos⌠ device≤ incu≥ ß dela∙ a⌠ thi≤ poin⌠ whilσ thσ mediß i≤ ì
  3997. repositioned.
  3998.  
  3999. .cp 3èááTablσ ╖-5┤ define≤ thσ paramete≥ codσ fielΣ fo≥ thσ buffe≥ ove≥-run/unde≥-ì
  4000. ruε counters.
  4001.  
  4002. .cp 13
  4003. .aw off
  4004. .pm 0
  4005.    Table 7-54: Paramete≥ Codσ Field fo≥ Buffe≥ Over-Run/Under-Ruε Counters
  4006.  
  4007. ==============================================================================
  4008.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4009. Byte |        |        |        |        |        |        |        |        |
  4010. ==============================================================================
  4011.  0   |                          ReserveΣ                                     |
  4012. -----|-----------------------------------------------------------------------|
  4013.  1   ⁿ      Coun⌠ Basis         ⁿ               Cause               ⁿ  Typσ  |
  4014. ==============================================================================
  4015. .pm 3
  4016. .aw on
  4017.  
  4018.  
  4019. ááThσ paramete≥ codσ fielΣ fo≥ buffe≥ ove≥-run/unde≥-ruε counter≤ i≤ ß 1╢-bi⌠ ì
  4020. valuσ compriseΣ oµ eigh⌠ reserveΣ bits¼ ß threσ-bi⌠ coun⌠ basi≤ fielΣ (Tablσ ì
  4021. ╖-55)¼ ß fou≥-bi⌠ causσ fielΣ (Tablσ ╖-56)¼ anΣ ß onσ-bi⌠ typσ field«  Thesσ ì
  4022. arσ concatenateΣ t∩ determinσ thσ valuσ oµ thσ paramete≥ codσ fo≥ tha⌠ loτ ì
  4023. parameter«  Fo≥ example¼ ß paramete≥ codσ valuσ oµ 0023Φ specifie≤ ß coun⌠ ì
  4024. basi≤ oµ 001b¼ ß causσ oµ 0001b¼ anΣ ß typσ oµ 1Γ whicΦ i≤ ß counte≥ tha⌠ i≤ ì
  4025. incrementeΣ oncσ pe≥ commanΣ tha⌠ experience≤ aε ove≥-ruε duσ t∩ thσ SCS╔ bu≤ ì
  4026. beinτ busy.
  4027.  
  4028. .cp 15
  4029. ááThσ coun⌠ basi≤ fielΣ define≤ thσ criteriß fo≥ incrementinτ thσ counter«  ì
  4030. Thσ followinτ criteriß arσ defined║ 
  4031.  
  4032. .cp 12
  4033. .aw off
  4034. .pm 0
  4035.                       Table 7-55: Coun⌠ Basi≤ Definition
  4036.  
  4037.                     ================================================
  4038.                     Coun⌠ Basis  Description
  4039.                     -----------  -----------------------------------
  4040.                        000b      Undefined
  4041.                        001b      Pe≥ Command
  4042.                        010b      Pe≥ FaileΣ Reconnect
  4043.                        011b      Pe≥ Uni⌠ oµ Time
  4044.                     100b-111Γ    Reserved
  4045.                     ================================================
  4046. .pm 3
  4047. .aw on
  4048.  
  4049. .pm 0
  4050. .lm 3
  4051. ááIMPLEMENTOR╙ NOTE║  Thσ pe≥ uni⌠ oµ timσ coun⌠ basi≤ i≤ devicσ typσ ì
  4052. ááspecific«  Direc⌠-acces≤ device≤ typicall∙ usσ ß latenc∙ perioΣ (i.e.¼ onσ ì
  4053. áárevolutioε oµ thσ medium⌐ a≤ thσ uni⌠ oµ time.
  4054. .pm 3
  4055. .lm 1
  4056.  
  4057. .cp15èááThσ causσ fielΣ indicate≤ thσ reasoε tha⌠ thσ ove≥-ruε o≥ unde≥-ruε ì
  4058. occurred«  Thσ followinτ cause≤ arσ defined║ 
  4059.  
  4060. .cp 10
  4061. .aw off
  4062. .pm 0
  4063.                       Table 7-56: Causσ FielΣ Definition
  4064.  
  4065.                     =================================
  4066.                      Causσ     Description
  4067.                     -------    ----------------------
  4068.                        0h      Undefined
  4069.                        1h      SCS╔ Bu≤ Busy
  4070.                        2h      Transfe≥ Ratσ To∩ Slow
  4071.                      3h-Fh     Reserved
  4072.                     =================================
  4073. .pm 3
  4074. .aw on
  4075.  
  4076.  
  4077. ááThσ typσ fielΣ indicate≤ whethe≥ thσ counte≥ record≤ unde≥-run≤ o≥ ove≥-ì
  4078. runs«  ┴ valuσ oµ zer∩ specifie≤ ß buffe≥ unde≥-ruε conditioε anΣ ß valuσ oµ ì
  4079. onσ specifie≤ ß buffe≥ ove≥-ruε condition.
  4080.  
  4081. ááThσ counter≤ contaiε thσ tota∞ numbe≥ oµ time≤ buffe≥ ove≥-ruε o≥ unde≥¡ ruε ì
  4082. condition≤ havσ occurreΣ sincσ thσ las⌠ timσ thσ counte≥ wa≤ cleared«  Thσ ì
  4083. counte≥ shal∞ bσ incrementeΣ fo≥ eacΦ occurrencσ oµ aε unde≥-ruε o≥ ove≥-ruε ì
  4084. conditioε anΣ caε bσ incrementeΣ morσ thaε oncσ fo≥ multiplσ occurrence≤ ì
  4085. durinτ thσ executioε oµ ß singlσ command.
  4086.  
  4087. .cp 5
  4088. .aw off
  4089. .pm 0
  4090. 7.3.2.2. Erro≥ Counte≥ Pagσs
  4091. .aw on
  4092. .pm 3
  4093. ááThi≤ sectioε define≤ thσ optiona∞ erro≥ counte≥ page≤ fo≥ writσ error≤ (pagσ ì
  4094. codσ 02h)¼ reaΣ error≤ (pagσ codσ 03h)¼ reaΣ reversσ error≤ (pagσ codσ 04h⌐ ì
  4095. anΣ verif∙ error≤ (pagσ codσ 05h)«  Tablσ ╖-5░ define≤ thσ pagσ forma⌠ fo≥ ì
  4096. thesσ pages«  ┴ pagσ caε returε onσ o≥ morσ loτ parameter≤ whicΦ recorΣ event≤ ì
  4097. defineΣ b∙ thσ paramete≥ code≤ (Tablσ ╖-57).
  4098.  
  4099. .cp 20
  4100. ááTablσ ╖-5╖ define≤ thσ paramete≥ code≤ fo≥ thσ erro≥ counte≥ pages«  Suppor⌠ ì
  4101. oµ eacΦ loτ paramete≥ i≤ optional« 
  4102.  
  4103. .cp 16
  4104. .aw off
  4105. .pm 0
  4106.              Table 7-57: Parameter Codes for Error Counter Pages
  4107.  
  4108.             ======================================================
  4109.             Parameter
  4110.               Codσ      Description
  4111.             ----------  ------------------------------------------
  4112.               0000h     Errors corrected withou⌠ substantia∞ delay
  4113.               0001h     Errors corrected witΦ possiblσ delays
  4114.               0002h     Total (e.g.¼ re-write≤ o≥ re-reads)
  4115.               0003Φ     Total errors corrected
  4116.               0004h     Total times correction algorithm processed
  4117.               0005h     Total bytes processed
  4118.               0006Φ     Tota∞ uncorrected errors
  4119.             0007-7FFFΦ  Reserved
  4120.             8000-FFFFΦ  Vendo≥ specific
  4121.             ======================================================
  4122. .aw on
  4123. .pm 3
  4124.  
  4125.  
  4126. .cp 3è.lm 3
  4127. ááIMPLEMENTOR╙ NOTE║  Thσ exac⌠ definitioε oµ thσ erro≥ counter≤ i≤ no⌠ par⌠ ì
  4128. ááoµ thi≤ standard«  Thesσ counter≤ shoulΣ no⌠ bσ useΣ t∩ comparσ product≤ ì
  4129. áábecausσ thσ product≤ ma∙ definσ error≤ differently.
  4130. .lm 1
  4131.  
  4132. .cp 5
  4133. .aw off
  4134. .pm 0
  4135. 7.3.2.3. Last n Error Events Page
  4136. .aw on
  4137. .pm 3
  4138. ááLoτ pagσ (07h⌐ provide≤ fo≥ ß numbe≥ oµ erro≥-even⌠ record≤ usinτ thσ lis⌠ ì
  4139. paramete≥ forma⌠ oµ thσ loτ page«  Thσ numbe≥ oµ thesσ erro≥-even⌠ record≤ ì
  4140. supported¼ n¼ i≤ devicσ-specific«  EacΦ erro≥-even⌠ recorΣ contain≤ devicσ-ì
  4141. specifiπ diagnostiπ informatioε fo≥ ß singlσ erro≥ encountereΣ b∙ thσ device«  ì
  4142. Thσ paramete≥ codσ associateΣ witΦ erro≥-even⌠ recorΣ indicate≤ thσ relativσ ì
  4143. timσ a⌠ whicΦ thσ erro≥ occurred«  ┴ highe≥ paramete≥ codσ indicate≤ tha⌠ thσ ì
  4144. erro≥ even⌠ occurreΣ late≥ iε time.
  4145.  
  4146. .cp 3
  4147. ááThσ conten⌠ oµ thσ paramete≥ valuσ fielΣ oµ eacΦ loτ paramete≥ i≤ aε ASCI╔ ì
  4148. characte≥ strinτ whicΦ ma∙ describσ thσ erro≥ event«  Thσ exac⌠ content≤ oµ ì
  4149. thσ characte≥ strinτ i≤ no⌠ defineΣ b∙ thi≤ standard.
  4150.  
  4151. .cp 8
  4152. ááWheε thσ las⌠ supporteΣ paramete≥ codσ i≤ useΣ b∙ aε erro≥-even⌠ record¼ thσ ì
  4153. recordinτ oε thi≤ pagσ oµ al∞ subsequen⌠ erro≥ informatioε shal∞ ceasσ unti∞ ì
  4154. onσ o≥ morσ oµ thσ lis⌠ parameter≤ witΦ thσ highes⌠ paramete≥ code≤ havσ beeε ì
  4155. rσ-initialized«  Iµ thσ RLE├ bi⌠ oµ thσ commoε modσ (7.3.3.1⌐ i≤ se⌠ t∩ one¼ ì
  4156. thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ witΦ thσ sensσ ke∙ se⌠ t∩ ì
  4157. RECOVERE─ ERRO╥ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ LO╟ LIS╘ CODE╙ EXHAUSTED«  ì
  4158. Alternatively¼ thσ targe⌠ ma∙ repor⌠ thi≤ conditioε viß asynchronou≤ even⌠ ì
  4159. notificatioε (seσ 6.5.5).
  4160.  
  4161. .cp 5
  4162. .aw off
  4163. .pm 0
  4164. 7.3.2.4. Noε-Medium Erro≥ Pagσ 
  4165. .aw on
  4166. .pm 3
  4167. ááThi≤ pagσ (pagσ codσ 06h⌐ provide≤ fo≥ summinτ thσ occurrence≤ oµ ì
  4168. recoverablσ erro≥ event≤ othe≥ thaε write¼ read¼ o≥ verif∙ failures«  N∩ ì
  4169. discriminatioε amonτ thσ variou≤ type≤ oµ event≤ i≤ provideΣ b∙ paramete≥ codσ ì
  4170. (Tablσ ╖-58)«  Vendo≥-specifiπ discriminatioε ma∙ bσ provideΣ througΦ thσ ì
  4171. vendo≥-specifiπ paramete≥ codes.
  4172.  
  4173. .cp 10
  4174. .aw off
  4175. .pm 0
  4176.               Table 7-58: Noε-Medium Erro≥ Event Paramete≥ Code≤
  4177.  
  4178.                 ==============================================
  4179.                 Parameter Codσ  Description
  4180.                 ¡¡¡¡¡¡¡¡¡----¡  ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  4181.                     000░Φ       Non-Medium Erro≥ Count
  4182.                 0001Φ ¡ 7FFFΦ   Reserved
  4183.                 800░Φ ¡ FFFFΦ   Vendo≥-Specifiπ Erro≥ Counts
  4184.                 ==============================================
  4185. .aw on
  4186. .pm 3
  4187.  
  4188.  
  4189. .cp 25è.aw off
  4190. .pm 0
  4191. 7.3.2.5. Supported Log Pages
  4192. .aw on
  4193. .pm 3
  4194. ááThσ supporteΣ loτ pagσ (Tablσ ╖-59⌐ return≤ thσ lis⌠ oµ loτ page≤ ì
  4195. implementeΣ b∙ thσ target«  Target≤ tha⌠ implemen⌠ thσ LO╟ SENS┼ commanΣ shal∞ ì
  4196. implemen⌠ thi≤ loτ page«  
  4197.  
  4198. .cp 18
  4199. .aw off
  4200. .pm 0
  4201.                        Table 7-59: Supported Log Pages
  4202.  
  4203. ==============================================================================
  4204.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4205. Byte |        |        |        |        |        |        |        |        |
  4206. ==============================================================================
  4207.  0   |    Reserved     |        Page Code (00h)                              |
  4208. -----|-----------------------------------------------------------------------|
  4209.  1   |                          Reserved                                     |
  4210. -----|-----------------------------------------------------------------------|
  4211.  2   | (MSB)                                                                 |
  4212. -----|---                       Page Length (n-3⌐                         ---|
  4213.  3   |                                                                 (LSB) |
  4214. -----|-----------------------------------------------------------------------|
  4215.  4   |                                                                       |
  4216. - - -|- ¡                       SupporteΣ Pagσ List                       - -|
  4217.  ε   |                                                                       |
  4218. ==============================================================================
  4219. .aw on
  4220. .pm 3
  4221.  
  4222.  
  4223. .cp 5
  4224. ááThi≤ pagσ i≤ no⌠ defineΣ fo≥ thσ LO╟ SELEC╘ command«  Thi≤ loτ pagσ return≤ ì
  4225. thσ lis⌠ oµ supporteΣ loτ page≤ fo≥ thσ specifieΣ logica∞ unit.
  4226.  
  4227. ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ followinτ ì
  4228. supporteΣ pagσ list.
  4229.  
  4230. ááThσ supporteΣ pagσ lis⌠ fielΣ shal∞ contaiε ß lis⌠ oµ al∞ loτ pagσ code≤ ì
  4231. implementeΣ b∙ thσ targe⌠ iε ascendinτ orde≥ beginninτ witΦ pagσ codσ 00h.
  4232.  
  4233. .cp 10
  4234. .a≈ off
  4235. .pm 0
  4236. 7.3.3. Mode Parameter≤ 
  4237. .aw on
  4238. .pm 3
  4239.  
  4240. ááThi≤ sectioε describe≤ thσ blocδ descriptor≤ anΣ thσ page≤ useΣ witΦ MOD┼ ì
  4241. SELEC╘ anΣ MOD┼ SENS┼ command≤ tha⌠ arσ applicablσ t∩ al∞ SCS╔ devices«  Page≤ ì
  4242. specifiπ t∩ eacΦ devicσ typσ arσ describeΣ iε thσ thirΣ subsectioε oµ eacΦ ì
  4243. devicσ-typσ sectioε (i.e.¼ 8.3¼ 9.3¼ etc.).
  4244.  
  4245. ááThσ modσ paramete≥ lis⌠ showε iε Tablσ ╖-6░ contain≤ ß header¼ followeΣ b∙ ì
  4246. zer∩ o≥ morσ blocδ descriptors¼ followeΣ b∙ zer∩ o≥ morσ variablσ-lengtΦ ì
  4247. pages«  Paramete≥ list≤ arσ defineΣ fo≥ eacΦ devicσ type.
  4248.  
  4249. .aw off
  4250. .pm 0
  4251. .cp 12è                       Table 7-60: Mode Parameter List
  4252.  
  4253. ==============================================================================
  4254.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4255. Byte |        |        |        |        |        |        |        |        |
  4256. ==============================================================================
  4257. 0 - n|                        Mode Parameter Header                          |
  4258. ==============================================================================
  4259. 0 - n|                        Block Descriptor(s)                            |
  4260. ==============================================================================
  4261. 0 - n|                        Page(s⌐                                        |
  4262. ==============================================================================
  4263. .aw on
  4264. .pm 3
  4265.  
  4266.  
  4267. ááThσ si°-bytσ commanΣ descripto≥ blocδ paramete≥ heade≥ i≤ defineΣ iε Tablσ ì
  4268. ╖-61«  Thσ teε-bytσ commanΣ descripto≥ blocδ paramete≥ heade≥ i≤ defineΣ iε ì
  4269. Tablσ ╖-62.
  4270.  
  4271. .aw off
  4272. .pm 0
  4273. .cp 14
  4274.                      Table 7-61: Modσ Parameter Header(6)
  4275.  
  4276. ==============================================================================
  4277.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4278. Byte |        |        |        |        |        |        |        |        |
  4279. ==============================================================================
  4280.  0   |                           Mode Data Length                            |
  4281. -----|-----------------------------------------------------------------------|
  4282.  1   |                           Medium Type                                 |
  4283. -----|-----------------------------------------------------------------------|
  4284.  2   |                           Device-Specific Paramete≥                   |
  4285. -----|-----------------------------------------------------------------------|
  4286.  3   |                           Block Descriptor Length                     |
  4287. ==============================================================================
  4288. .aw on
  4289. .pm 3
  4290.  
  4291. .aw off
  4292. .pm 0
  4293. .cp 25è                    Table 7-62: Modσ Parameter Header(10)
  4294.  
  4295. ==============================================================================
  4296.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4297. Byte |        |        |        |        |        |        |        |        |
  4298. ==============================================================================
  4299.  0   | (MSB)                                                                 |
  4300. -----|---                        Mode Data Length                         ---|
  4301.  1   |                                                                 (LSB) |
  4302. -----|-----------------------------------------------------------------------|
  4303.  2   |                           Medium Type                                 |
  4304. -----|-----------------------------------------------------------------------|
  4305.  3   |                           Device-Specific Paramete≥                   |
  4306. -----|-----------------------------------------------------------------------|
  4307.  4   |                           Reserved                                    |
  4308. -----|-----------------------------------------------------------------------|
  4309.  5   |                           Reserved                                    |
  4310. -----|-----------------------------------------------------------------------|
  4311.  6   | (MSB)                                                                 |
  4312. -----|---                        Block Descriptor Length                  ---|
  4313.  7   |                                                                 (LSB) |
  4314. ==============================================================================
  4315. .aw on
  4316. .pm 3
  4317.  
  4318.  
  4319. ááWheε usinτ thσ MOD┼ SENS┼ command¼ thσ modσ datß lengtΦ fielΣ specifie≤ thσ ì
  4320. lengtΦ iε byte≤ oµ thσ followinτ datß tha⌠ i≤ availablσ t∩ bσ transferred«  ì
  4321. Thσ modσ datß lengtΦ doe≤ no⌠ includσ itself«  Wheε usinτ thσ MOD┼ SELEC╘ ì
  4322. command¼ thi≤ fielΣ i≤ reserved.
  4323.  
  4324. .lm 3
  4325. ááIMPLEMENTOR╙ NOTE║  Target≤ tha⌠ suppor⌠ morσ thaε 25╢ byte≤ oµ blocδ ì
  4326. áádescriptor≤ anΣ page≤ ma∙ neeΣ t∩ implemen⌠ teε-bytσ modσ commands«  Thσ ì
  4327. áámodσ datß lengtΦ fielΣ iε thσ si°-bytσ commanΣ descripto≥ blocδ heade≥ ì
  4328. áálimit≤ thσ returneΣ datß t∩ 25╢ bytes.
  4329. .lm 1
  4330.  
  4331. .cp 3
  4332. ááMediuφ type≤ arσ uniquσ fo≥ eacΦ devicσ type«  Refe≥ t∩ thσ modσ parameter≤ ì
  4333. sectioε oµ thσ specifiπ devicσ typσ fo≥ definitioε oµ thesσ values«  Somσ ì
  4334. devicσ type≤ reservσ thi≤ field.
  4335.  
  4336. .cp 3
  4337. ááThσ devicσ specifiπ paramete≥ i≤ uniquσ fo≥ eacΦ devicσ type«  Refe≥ t∩ thσ ì
  4338. modσ parameter≤ sectioε oµ thσ specifiπ devicσ typσ fo≥ definitioε oµ thi≤ ì
  4339. field«  Somσ devicσ type≤ reservσ al∞ o≥ par⌠ oµ thi≤ field.
  4340.  
  4341. .cp 7
  4342. ááThσ blocδ descripto≥ lengtΦ specifie≤ thσ lengtΦ iε byte≤ oµ al∞ thσ blocδ ì
  4343. descriptors«  I⌠ i≤ equa∞ t∩ thσ numbe≥ oµ blocδ descriptor≤ time≤ eigh⌠ anΣ ì
  4344. doe≤ no⌠ includσ page≤ o≥ vendo≥-specifiπ parameters¼ iµ any¼ tha⌠ ma∙ follo≈ ì
  4345. thσ las⌠ blocδ descriptor«  ┴ blocδ descripto≥ lengtΦ oµ zer∩ indicate≤ tha⌠ ì
  4346. n∩ blocδ descriptor≤ arσ includeΣ iε thσ modσ paramete≥ list«  Thi≤ conditioε ì
  4347. shal∞ no⌠ bσ considereΣ aε error.
  4348.  
  4349. ááThσ modσ paramete≥ blocδ descripto≥ i≤ showε iε Tablσ ╖-63.
  4350.  
  4351. .cp 23è.aw off
  4352. .pm 0
  4353. .cp 30
  4354.                  Table 7-63: Mode Parameter Block Descriptor
  4355.  
  4356. ==============================================================================
  4357.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4358. Byte |        |        |        |        |        |        |        |        |
  4359. ==============================================================================
  4360.  0   |                           Density Code                                |
  4361. -----|-----------------------------------------------------------------------|
  4362.  1   | (MSB)                                                                 |
  4363. -----|---                                                                 ---|
  4364.  2   |                           Number of Blocks                            |
  4365. -----|---                                                                 ---|
  4366.  3   |                                                                 (LSB) |
  4367. -----|-----------------------------------------------------------------------|
  4368.  4   |                           Reserved                                    |
  4369. -----|-----------------------------------------------------------------------|
  4370.  5   | (MSB)                                                                 |
  4371. -----|---                                                                 ---|
  4372.  6   |                           Block Length                                |
  4373. -----|---                                                                 ---|
  4374.  7   |                                                                 (LSB) |
  4375. ==============================================================================
  4376. .aw1
  4377. .pm3
  4378.  
  4379.  
  4380. ááBlocδ descriptor≤ specif∙ somσ oµ thσ mediuφ characteristic≤ fo≥ al∞ o≥ par⌠ ì
  4381. oµ ß logica∞ unit«  Suppor⌠ fo≥ blocδ descriptor≤ i≤ optional«  EacΦ blocδ ì
  4382. descripto≥ contain≤ ß densit∙ codσ field¼ ß numbe≥ oµ block≤ field¼ anΣ ß ì
  4383. blocδ lengtΦ field«  Blocδ descripto≥ value≤ arσ alway≤ curren⌠ (i.e.¼ savinτ ì
  4384. i≤ no⌠ supported)«  ┴ uni⌠ attentioε conditioε (seσ 6.9⌐ shal∞ bσ generateΣ ì
  4385. wheε an∙ blocδ descripto≥ value≤ arσ changed.
  4386.  
  4387. ááThσ densit∙ codσ fielΣ i≤ uniquσ fo≥ eacΦ devicσ type« Refe≥ t∩ thσ modσ ì
  4388. parameter≤ sectioε oµ thσ specifiπ devicσ typσ fo≥ definitioε oµ thi≤ field«  ì
  4389. Somσ devicσ type≤ reservσ al∞ o≥ par⌠ oµ thi≤ field.
  4390.  
  4391. ááThσ numbe≥ oµ block≤ fielΣ specifie≤ thσ numbe≥ oµ logica∞ block≤ oε thσ ì
  4392. mediuφ t∩ whicΦ thσ densit∙ codσ anΣ blocδ lengtΦ field≤ apply«  ┴ valuσ oµ ì
  4393. zer∩ indicate≤ tha⌠ al∞ oµ thσ remaininτ logica∞ block≤ oµ thσ logica∞ uni⌠ ì
  4394. shal∞ havσ thσ mediuφ characteristic≤ specified.
  4395.  
  4396. .cp 10
  4397. .lm3
  4398. ááIMPLEMENTOR╙ NOTES:
  4399. áá(1⌐ Therσ ma∙ bσ implici⌠ associatioε betweeε parameter≤ defineΣ iε thσ ì
  4400. áápage≤ anΣ blocδ descriptors«  Fo≥ direc⌠-acces≤ devices¼ thσ blocδ lengtΦ ì
  4401. ááaffect≤ thσ optimuφ value≤ (thσ value≤ tha⌠ achievσ bes⌠ performance⌐ fo≥ ì
  4402. ááthσ sector≤ pe≥ track¼ byte≤ pe≥ physica∞ sector¼ tracδ ske≈ factor¼ anΣ ì
  4403. áácylinde≥ ske≈ facto≥ field≤ iε thσ forma⌠ parameter≤ page«  Iε thi≤ case¼ ì
  4404. ááthσ targe⌠ ma∙ changσ parameter≤ no⌠ explicitl∙ sen⌠ witΦ thσ MOD┼ SELEC╘ ì
  4405. áácommand«  ┴ subsequen⌠ MOD┼ SENS┼ commanΣ woulΣ reflec⌠ thesσ changes.
  4406. áá(2⌐ Thσ numbe≥ oµ remaininτ logica∞ block≤ ma∙ bσ unknowε fo≥ somσ devicσ ì
  4407. áátypes.
  4408. .lm 1
  4409.  
  4410. .cp 5èááThσ blocδ lengtΦ specifie≤ thσ lengtΦ iε byte≤ oµ eacΦ logica∞ blocδ ì
  4411. describeΣ b∙ thσ blocδ descriptor«  Fo≥ sequentia∞-acces≤ devices¼ ß blocδ ì
  4412. lengtΦ oµ zer∩ indicate≤ tha⌠ thσ logica∞ blocδ sizσ writteε t∩ thσ mediuφ i≤ ì
  4413. specifieΣ b∙ thσ transfe≥ lengtΦ fielΣ iε thσ commanΣ descripto≥ blocδ (seσ ì
  4414. 9.2.╡ anΣ 9.2.15)
  4415.  
  4416. .cp 20
  4417. ááThσ modσ pagσ forma⌠ i≤ defineΣ iε Tablσ ╖-64.
  4418.  
  4419. .aw off
  4420. .pm 0
  4421. .cp 15
  4422.                          Table 7-64: Mode Page Format
  4423.  
  4424. ==============================================================================
  4425.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4426. Byte |        |        |        |        |        |        |        |        |
  4427. ==============================================================================
  4428.  0   |   PS   |Reserved|         Page Code                                   |
  4429. -----|-----------------------------------------------------------------------|
  4430.  1   |                           Page Length                                 |
  4431. -----|-----------------------------------------------------------------------|
  4432. 2 - n|                           Mode Parameter≤                             |
  4433. ==============================================================================
  4434. .aw1
  4435. .pm3
  4436.  
  4437.  
  4438. ááEacΦ modσ pagσ contain≤ ß pagσ code¼ ß pagσ length¼ anΣ ß se⌠ oµ modσ ì
  4439. parameters«  Thσ pagσ code≤ arσ defineΣ iε Tablσ ╖-6╡ anΣ iε thσ modσ ì
  4440. paramete≥ suΓ-section≤ oµ thσ specifiπ devicσ type.
  4441.  
  4442. ááWheε usinτ thσ MOD┼ SENS┼ command¼ ß parameter≤ savablσ (PS⌐ bi⌠ oµ onσ ì
  4443. indicate≤ tha⌠ thσ modσ pagσ caε bσ saveΣ b∙ thσ targe⌠ iε ß noε-volatile¼ ì
  4444. vendo≥-specifiπ location«  ┴ P╙ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ supporteΣ ì
  4445. parameter≤ canno⌠ bσ saved«  Wheε usinτ thσ MOD┼ SELEC╘ command¼ thσ P╙ bi⌠ i≤ ì
  4446. reserved.
  4447.  
  4448. ááThσ pagσ codσ fielΣ identifie≤ thσ forma⌠ anΣ parameter≤ defineΣ fo≥ tha⌠ ì
  4449. modσ page«  Somσ pagσ code≤ arσ defineΣ a≤ applyinτ t∩ al∞ devicσ type≤ (Tablσ ì
  4450. ╖-65⌐ anΣ othe≥ pagσ code≤ arσ defineΣ fo≥ thσ specifiπ devicσ type«  
  4451.  
  4452. ááWheε usinτ thσ MOD┼ SENS┼ command¼ iµ pagσ codσ 00Φ (vendo≥-specifiπ page⌐ ì
  4453. i≤ implemented¼ thσ targe⌠ shal∞ returε tha⌠ pagσ las⌠ iε responsσ t∩ ß ì
  4454. reques⌠ t∩ returε al∞ page≤ (pagσ codσ 3Fh)«  Wheε usinτ thσ MOD┼ SELEC╘ ì
  4455. command¼ thi≤ pagσ shoulΣ bσ sen⌠ last.
  4456.  
  4457. .cp10
  4458. ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ modσ parameter≤ ì
  4459. tha⌠ follow«  Iµ thσ initiato≥ doe≤ no⌠ se⌠ thi≤ valuσ t∩ thσ valuσ tha⌠ i≤ ì
  4460. returneΣ fo≥ thσ pagσ b∙ thσ MOD┼ SENS┼ command¼ thσ targe⌠ shal∞ terminatσ ì
  4461. thσ commanΣ witΦ CHEC╦ CONDITIO╬ status«  Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ t∩ ì
  4462. ILLEGA╠ REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
  4463. PARAMETE╥ LIST«  Thσ targe⌠ i≤ permitteΣ t∩ implemen⌠ ß modσ pagσ tha⌠ i≤ les≤ ì
  4464. thaε thσ ful∞ pagσ lengtΦ defineΣ b∙ thi≤ standard¼ provideΣ n∩ fielΣ i≤ ì
  4465. truncateΣ anΣ thσ pagσ lengtΦ fielΣ correctl∙ specifie≤ thσ actua∞ lengtΦ ì
  4466. implemented.
  4467.  
  4468. .cp3
  4469. ááThσ modσ parameter≤ fo≥ eacΦ pagσ arσ defineΣ iε thσ followinτ suΓ-section≤ ì
  4470. o≥ iε thσ modσ parameter≤ suΓ-sectioε fo≥ thσ specifiπ devicσ type«  Modσ ì
  4471. parameter≤ no⌠ implementeΣ b∙ thσ targe⌠ shal∞ bσ se⌠ t∩ zero.
  4472. è.cp 2
  4473. ááTablσ ╖-6╡ define≤ thσ modσ page≤ tha⌠ arσ applicablσ t∩ al∞ devicσ type≤ ì
  4474. tha⌠ includσ thσ MOD┼ SELEC╘ anΣ MOD┼ SENS┼ commands.
  4475.  
  4476. .aw off
  4477. .pm 0
  4478. .cp 20
  4479.                          Table 7-65: Modσ Page Codes
  4480.  
  4481. ==============================================================================
  4482.   Page Code   Description                                           Section
  4483. ------------------------------------------------------------------------------
  4484.      0Ah      Control Mode Page                                     7.3.3.1
  4485.      02h      Disconnect-Reconnec⌠ Page                             7.3.3.2
  4486.      09h      Peripheral Devicσ Page                                7.3.3.3
  4487.      01h      (See specific device type)
  4488.   03h - 08h   (See specific device type)
  4489.   0Bh - 1Fh   (See specific device type)
  4490.      00h      Vendo≥ specific (does not require page format)
  4491.   20h - 3Eh   Vendo≥ specific (page format required)
  4492.      3Fh      Return all page≤ (valiΣ onl∙ fo≥ thσ MOD┼ SENS┼ command)
  4493. ==============================================================================
  4494. .aw on
  4495. .pm 3
  4496.  
  4497.  
  4498. .cp 24
  4499. .aw off
  4500. .pm 0
  4501. 7.3.3.1. Control Mode Page
  4502.  
  4503.                         Table 7-66: Control Modσ Page
  4504.  
  4505. ==============================================================================
  4506.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4507. Byte |        |        |        |        |        |        |        |        |
  4508. ==============================================================================
  4509.  0   |   PS   |Reserved|         Page Code (0Ah)                             |
  4510. -----|-----------------------------------------------------------------------|
  4511.  1   |                           Page Length (06h)                           |
  4512. -----|-----------------------------------------------------------------------|
  4513.  2   |                           Reserved                           ⁿ  RLEC  |
  4514. -----|-----------------------------------------------------------------------|
  4515.  3   |     Queue Algorithm Modifier      |    Reserved     |  QErr  |  DQue  |
  4516. -----|-----------------------------------------------------------------------|
  4517.  4   |  EECA  |              Reserved             | RAENP  | UAAENP | EAENP  |
  4518. -----|-----------------------------------------------------------------------|
  4519.  5   |                           Reserved                                    |
  4520. -----|-----------------------------------------------------------------------|
  4521.  6   |                                                                       |
  4522. -----|---                        Ready AEN Holdoff Period                 ---|
  4523.  7   |                                                                       |
  4524. ==============================================================================
  4525. .aw on
  4526. .pm 3
  4527.  
  4528.  
  4529. .cp 4
  4530. ááThσ contro∞ modσ pagσ (Tablσ ╖-66⌐ provide≤ control≤ ove≥ severa∞ SCS╔-▓ ì
  4531. feature≤ whicΦ arσ applicablσ t∩ al∞ devicσ type≤ sucΦ a≤ taggeΣ queuing¼ ì
  4532. extendeΣ contingen⌠ allegiance¼ asynchronou≤ even⌠ notification¼ anΣ erro≥ ì
  4533. logging.
  4534.  
  4535. .cp 3
  4536. áá┴ repor⌠ loτ exceptioε conditioε (RLEC⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ targe⌠ ì
  4537. shal∞ repor⌠ loτ exceptioε condition≤ a≤ describeΣ iε 7.3.2«  ┴ RLE├ bi⌠ oµ ì
  4538. zer∩ specifie≤ tha⌠ thσ targe⌠ shal∞ no⌠ repor⌠ loτ exceptioε conditions.
  4539. è.cp 3
  4540. ááThσ queuσ algorithφ modifie≥ fielΣ (Tablσ ╖-67⌐ specifie≤ restriction≤ oε ì
  4541. thσ algorithφ useΣ fo≥ rσ-orderinτ command≤ tha⌠ arσ taggeΣ witΦ thσ SIMPL┼ ì
  4542. QUEU┼ TA╟ message.
  4543.  
  4544. .aw off
  4545. .pm 0
  4546. .cp 15
  4547.                      Table 7-67: Queue Algorithm Modifier
  4548.  
  4549.                ===============================================
  4550.                Value          Definition
  4551.                -------        --------------------------------
  4552.                  0h           RestricteΣ re-ordering
  4553.                  1h           Unrestricted re-ordering allowed
  4554.                2h - 7h        Reserved
  4555.                8h - Fh        Vendo≥ specific
  4556.                ===============================================
  4557. .aw on
  4558. .pm 3
  4559.  
  4560. .cp8
  4561. áá┴ valuσ oµ zer∩ iε thi≤ fielΣ specifie≤ tha⌠ thσ targe⌠ shal∞ orde≥ thσ ì
  4562. actua∞ executioε sequencσ oµ thσ queueΣ command≤ froφ eacΦ initiato≥ sucΦ tha⌠ ì
  4563. datß integrit∙ i≤ maintaineΣ fo≥ tha⌠ initiator«  Thi≤ mean≤ that¼ iµ thσ ì
  4564. transmissioε oµ ne≈ command≤ wa≤ halteΣ a⌠ an∙ time¼ thσ fina∞ valuσ oµ al∞ ì
  4565. datß observablσ oε thσ mediuφ shal∞ havσ exactl∙ thσ samσ valuσ a≤ i⌠ woulΣ ì
  4566. havσ iµ thσ command≤ haΣ beeε executeΣ iε thσ samσ receiveΣ sequencσ withou⌠ ì
  4567. taggeΣ queuing«  Thσ restricteΣ reorderinτ valuσ shal∞ bσ thσ defaul⌠ value.
  4568.  
  4569. .cp 5
  4570. áá┴ valuσ oµ onσ iε thi≤ fielΣ specifie≤ tha⌠ thσ targe⌠ ma∙ rσ-orde≥ thσ ì
  4571. actua∞ executioε sequencσ oµ thσ queueΣ command≤ iε an∙ manne≥ i⌠ selects«  ì
  4572. An∙ datß integrit∙ exposure≤ relateΣ t∩ commanΣ sequencσ orde≥ arσ explicitl∙ ì
  4573. handleΣ b∙ thσ initiato≥ througΦ thσ selectioε oµ appropriatσ command≤ anΣ ì
  4574. queuσ taτ messages« 
  4575.  
  4576. áá┴ queuσ erro≥ managemen⌠ (QErr⌐ bi⌠ oµ zer∩ specifie≤ tha⌠ thosσ command≤ ì
  4577. stil∞ queueΣ afte≥ thσ targe⌠ ha≤ entereΣ thσ contingen⌠ allegiancσ o≥ ì
  4578. extendeΣ contingen⌠ allegiancσ condition≤ shal∞ continuσ executioε iε ß norma∞ ì
  4579. manne≥ wheε tha⌠ conditioε ha≤ terminateΣ (seσ 6.8)«  ┴ QEr≥ bi⌠ oµ onσ ì
  4580. specifie≤ tha⌠ thosσ command≤ stil∞ queueΣ afte≥ thσ targe⌠ ha≤ entereΣ thσ ì
  4581. contingen⌠ allegiancσ o≥ extendeΣ contingen⌠ allegiancσ condition≤ shal∞ bσ ì
  4582. aborteΣ wheε tha⌠ conditioε ha≤ terminated«  ┴ uni⌠ attentioε conditioε shal∞ ì
  4583. bσ generateΣ fo≥ eacΦ initiato≥ whicΦ haΣ command≤ iε thσ queuσ excep⌠ thσ ì
  4584. initiato≥ tha⌠ receiveΣ thσ origina∞ INITIAT┼ RECOVER┘ message«  Wheε ì
  4585. reportinτ thσ uni⌠ attentioε condition¼ thσ targe⌠ shal∞ se⌠ thσ additiona∞ ì
  4586. sensσ codσ t∩ TAGGE─ COMMAND╙ CLEARE─ B┘ ANOTHE╥ INITIATOR.
  4587.  
  4588. .cp 2
  4589. áá┴ disablσ queuinτ (DQue⌐ bi⌠ oµ zer∩ specifie≤ tha⌠ taggeΣ queuinτ shal∞ bσ ì
  4590. enableΣ iµ thσ targe⌠ support≤ taggeΣ queuing«  ┴ DQuσ bi⌠ oµ onσ specifie≤ ì
  4591. tha⌠ taggeΣ queuinτ shal∞ bσ disabled«  An∙ queueΣ command≤ fo≥ tha⌠ I_T_° ì
  4592. nexu≤ shal∞ bσ aborted«  An∙ subsequen⌠ queuσ taτ messagσ receiveΣ shal∞ bσ ì
  4593. rejecteΣ witΦ ß MESSAG┼ REJEC╘ messagσ anΣ thσ I/╧ proces≤ shal∞ bσ executeΣ ì
  4594. a≤ aε untaggeΣ commanΣ (seσ 6.8.1).
  4595.  
  4596. .cp 3
  4597. ááAε enablσ extendeΣ contingen⌠ allegiancσ (EECA⌐ bi⌠ oµ onσ specifie≤ tha⌠ ì
  4598. extendeΣ contingen⌠ allegiancσ i≤ enableΣ (seσ 6.7)«  Aε EEC┴ bi⌠ oµ zer∩ ì
  4599. specifie≤ tha⌠ extendeΣ contingen⌠ allegiancσ i≤ disabled.
  4600.  
  4601. .cp 3
  4602. ááThσ RAENP¼ UAAENP¼ anΣ EAEN╨ bit≤ enablσ specifiπ event≤ t∩ bσ reporteΣ viß ì
  4603. thσ asynchronou≤ even⌠ notificatioε protocol«  Wheε al∞ threσ bit≤ arσ zero¼ ì
  4604. thσ targe⌠ shal∞ no⌠ creatσ asynchronou≤ even⌠ notifications.è
  4605. .cp 5
  4606. áá┴ read∙ AE╬ permissioε (RAENP⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ targe⌠ ma∙ ì
  4607. issuσ aε asynchronou≤ even⌠ notificatioε upoε completinτ it≤ initializatioε ì
  4608. sequencσ insteaΣ oµ generatinτ ß uni⌠ attentioε condition«  ┴ RAEN╨ bi⌠ oµ ì
  4609. zer∩ specifie≤ tha⌠ thσ targe⌠ shal∞ no⌠ issuσ aε asynchronou≤ even⌠ ì
  4610. notificatioε upoε completinτ it≤ initializatioε sequence.
  4611.  
  4612. .lm 3
  4613. ááIMPLEMENTOR╙ NOTE║  Iµ thσ target'≤ defaul⌠ valuσ fo≥ thσ RAEN╨ bi⌠ i≤ onσ ì
  4614. ááanΣ i⌠ doe≤ no⌠ implemen⌠ saveΣ parameter≤ o≥ includσ ß hardwarσ switch¼ ì
  4615. áátheε i⌠ ma∙ no⌠ bσ possiblσ t∩ disablσ thσ initializatioε sequencσ ì
  4616. ááasynchronou≤ even⌠ notification.
  4617. .lm 1
  4618.  
  4619. .cp 6
  4620. áá┴ uni⌠ attentioε AE╬ permissioε (UAAENP⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ ì
  4621. targe⌠ ma∙ issuσ aε asynchronou≤ even⌠ notificatioε insteaΣ oµ creatinτ ß uni⌠ ì
  4622. attentioε conditioε upoε detectinτ aε even⌠ whicΦ woulΣ causσ ß uni⌠ attentioε ì
  4623. conditioε (othe≥ thaε upoε completinτ aε initializatioε sequence)«  ┴ UAAEN╨ ì
  4624. bi⌠ oµ zer∩ specifie≤ tha⌠ thσ targe⌠ shal∞ no⌠ issuσ aε asynchronou≤ even⌠ ì
  4625. notificatioε insteaΣ oµ creatinτ ß uni⌠ attentioε condition.
  4626.  
  4627. ááAε erro≥ AE╬ permissioε (EAENP⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ targe⌠ ma∙ ì
  4628. issuσ aε asynchronou≤ even⌠ notificatioε upoε detectinτ ß deferreΣ erro≥ ì
  4629. conditioε insteaΣ oµ waitinτ t∩ repor⌠ thσ deferreΣ erro≥ oε thσ nex⌠ command«  ì
  4630. Aε EAEN╨ bi⌠ oµ zer∩ specifie≤ tha⌠ thσ targe⌠ shal∞ no⌠ repor⌠ deferreΣ erro≥ ì
  4631. condition≤ viß aε asynchronou≤ even⌠ notification.
  4632.  
  4633. ááThσ read∙ AE╬ holdofµ perioΣ fielΣ specifie≤ thσ minimuφ timσ iε ì
  4634. millisecond≤ afte≥ thσ targe⌠ start≤ it≤ initializatioε sequencσ tha⌠ i⌠ shal∞ ì
  4635. dela∙ beforσ attemptinτ t∩ issuσ aε asynchronou≤ even⌠ notification«  Thi≤ ì
  4636. valuσ ma∙ bσ roundeΣ u≡ a≤ defineΣ iε 6.5.4.
  4637.  
  4638. .cp 40è.aw off
  4639. .pm 0
  4640. 7.3.3.2. Disconnect-Reconnect Page
  4641.  
  4642.                     Table 7-68: Disconnect-Reconnect Page
  4643.  
  4644. ==============================================================================
  4645.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4646. Byte |        |        |        |        |        |        |        |        |
  4647. ==============================================================================
  4648.  0   |   PS   |Reservedⁿ         Page Code (02h)                             |
  4649. -----|-----------------------------------------------------------------------|
  4650.  1   |                           Page Length (0Eh)                           |
  4651. -----|-----------------------------------------------------------------------|
  4652.  2   |                           Buffer Full Ratio                           |
  4653. -----|-----------------------------------------------------------------------|
  4654.  3   |                           Buffer Empty Ratio                          |
  4655. -----|-+---------------------------------------------------------------------|
  4656.  4   | (MSB)                                                                 |
  4657. -----|---                        Bus Inactivity Limit                     ---|
  4658.  5   |                                                                 (LSB) |
  4659. -----|-----------------------------------------------------------------------|
  4660.  6   | (MSB)                                                                 |
  4661. -----|---                        Disconnect Time Limit                    ---|
  4662.  7   |                                                                 (LSB) |
  4663. -----|-+---------------------------------------------------------------------|
  4664.  8   | (MSB)                                                                 |
  4665. -----|---                        Connect Time Limit                       ---|
  4666.  9   |                                                                 (LSB) |
  4667. -----|-----------------------------------------------------------------------|
  4668.  10  | (MSB)                                                                 |
  4669. -----|---                        Maximum Burst Size                       ---|
  4670.  11  |                                                                 (LSB) |
  4671. -----|-----------------------------------------------------------------------|
  4672.  12  |                           Reserved                  |      DTDC       |
  4673. -----|-----------------------------------------------------------------------|
  4674.  13  |                           Reserved                                    |
  4675. -----|-----------------------------------------------------------------------|
  4676.  14  |                           Reserved                                    |
  4677. -----|-----------------------------------------------------------------------|
  4678.  15  |                           Reserved                                    |
  4679. ==============================================================================
  4680. .aw on
  4681. .pm 3
  4682.  
  4683.  
  4684. .cp 5
  4685. ááThσ disconnec⌠-reconnec⌠ pagσ (Tablσ ╖-68⌐ provide≤ thσ initiato≥ thσ mean≤ ì
  4686. t∩ tunσ thσ performancσ oµ thσ SCS╔ bus.
  4687.  
  4688. .cp 5
  4689. ááThσ buffe≥ ful∞ rati∩ fielΣ indicate≤ t∩ thσ target¼ oε reaΣ operations¼ ho≈ ì
  4690. ful∞ thσ buffe≥ shoulΣ bσ prio≥ t∩ attemptinτ ß reselection«  Target≤ tha⌠ d∩ ì
  4691. no⌠ implemen⌠ thσ requesteΣ rati∩ shoulΣ rounΣ dowε t∩ thσ neares⌠ implementeΣ ì
  4692. rati∩ a≤ defineΣ iε 6.5.4«  
  4693.  
  4694. .cp 4
  4695. ááThσ buffe≥ empt∙ rati∩ fielΣ indicate≤ t∩ thσ target¼ oε writσ operations¼ ì
  4696. ho≈ empt∙ thσ buffe≥ shoulΣ bσ prio≥ t∩ attemptinτ ß reselection«  Target≤ ì
  4697. tha⌠ d∩ no⌠ implemen⌠ thσ requesteΣ rati∩ shoulΣ rounΣ dowε t∩ thσ neares⌠ ì
  4698. implementeΣ rati∩ a≤ defineΣ iε 6.5.4«  
  4699. è.cp 5
  4700. ááThσ buffe≥ ful∞ anΣ buffe≥ empt∙ ratio≤ arσ numerator≤ oµ ß fractiona∞ ì
  4701. multiplie≥ tha⌠ ha≤ 25╢ a≤ it≤ denominator«  ┴ valuσ oµ zer∩ indicate≤ tha⌠ ì
  4702. thσ targe⌠ determine≤ wheε t∩ initiatσ reselectioε consisten⌠ witΦ thσ ì
  4703. disconnec⌠ timσ limi⌠ parameter«  Thesσ parameter≤ arσ advisor∙ t∩ thσ target.
  4704.  
  4705. .lm 3
  4706. ááIMPLEMENTOR╙ NOTE║  A≤ aε example¼ conside≥ ß targe⌠ witΦ teε 51▓-bytσ ì
  4707. áábuffer≤ anΣ ß specifieΣ buffe≥ ful∞ rati∩ oµ 3Fh«  Thσ formulß is║ ì
  4708. ááINTEGER((ratio/256)*numbe≥ oµ buffers)«  Thu≤ INTEGER((3Fh/256)*10⌐ ╜ 2«  ì
  4709. ááThσ targe⌠ shoulΣ attemp⌠ t∩ reselec⌠ thσ initiato≥ oε reaΣ operation≤ ì
  4710. ááwheneve≥ tw∩ o≥ morσ buffer≤ arσ full«  
  4711. .lm 1
  4712.  
  4713. .cp 7
  4714. ááThσ bu≤ inactivit∙ limi⌠ fielΣ indicate≤ thσ maximuφ timσ iε 10░ microseconΣ ì
  4715. increment≤ tha⌠ thσ targe⌠ i≤ permitteΣ t∩ asser⌠ thσ BS┘ signa∞ withou⌠ ß ì
  4716. REQ/AC╦ handshake«  Iµ thσ bu≤ inactivit∙ limi⌠ i≤ exceedeΣ thσ targe⌠ shal∞ ì
  4717. attemp⌠ t∩ disconnec⌠ iµ thσ initiato≥ ha≤ granteΣ thσ disconnec⌠ privilegσ ì
  4718. (seσ 5.6.7⌐ anΣ i⌠ i≤ no⌠ restricteΣ b∙ DTDC«  Thi≤ valuσ ma∙ bσ roundeΣ a≤ ì
  4719. defineΣ iε 6.5.4«  ┴ valuσ oµ zer∩ indicate≤ tha⌠ therσ i≤ n∩ bu≤ inactivit∙ ì
  4720. limit.
  4721.  
  4722. .cp 4
  4723. ááThσ disconnec⌠ timσ limi⌠ fielΣ indicate≤ thσ minimuφ timσ iε 10░ ì
  4724. microseconΣ increment≤ tha⌠ thσ targe⌠ shal∞ wai⌠ afte≥ releasinτ thσ SCS╔ bu≤ ì
  4725. beforσ attemptinτ reselection«  Thi≤ valuσ ma∙ bσ roundeΣ a≤ defineΣ iε 6.5.4«  ì
  4726. ┴ valuσ oµ zer∩ indicate≤ tha⌠ therσ i≤ n∩ disconnec⌠ timσ limit.
  4727.  
  4728. .c≡ ╡
  4729. ááThσ connec⌠ timσ limi⌠ fielΣ indicate≤ thσ maximuφ timσ iε 10░ microseconΣ ì
  4730. increment≤ tha⌠ thσ targe⌠ i≤ alloweΣ t∩ usσ thσ SCS╔ bu≤ beforσ disconnectinτ ì
  4731. iµ thσ initiato≥ ha≤ granteΣ thσ disconnec⌠ privilegσ (seσ 5.6.7⌐ anΣ i⌠ i≤ ì
  4732. no⌠ restricteΣ b∙ DTDC«  Thi≤ valuσ ma∙ bσ roundeΣ a≤ defineΣ iε 6.5.4«  ┴ ì
  4733. valuσ oµ zer∩ indicate≤ tha⌠ therσ i≤ n∩ connec⌠ timσ limit.
  4734.  
  4735. ááThσ maximuφ burs⌠ sizσ fielΣ indicate≤ thσ maximuφ amoun⌠ oµ datß tha⌠ thσ ì
  4736. targe⌠ shal∞ transfe≥ durinτ ß datß phasσ beforσ disconnectinτ iµ thσ ì
  4737. initiato≥ ha≤ granteΣ thσ disconnec⌠ privilege«  Thi≤ valuσ i≤ expresseΣ iε ì
  4738. increment≤ oµ 51▓ byte≤ (e.g.¼ ß valuσ oµ onσ mean≤ 51▓ bytes¼ tw∩ mean≤ 102┤ ì
  4739. bytes¼ etc.)«  ┴ valuσ oµ zer∩ indicate≤ therσ i≤ n∩ limi⌠ oε thσ amoun⌠ oµ ì
  4740. datß transferreΣ pe≥ connection«  
  4741.  
  4742. .cp 2
  4743. ááThσ datß transfe≥ disconnec⌠ contro∞ (DTDC⌐ fielΣ (Tablσ ╖-69⌐ define≤ ì
  4744. furthe≥ restriction≤ oε wheε ß disconnec⌠ i≤ permitted.
  4745.  
  4746. .aw off
  4747. .pm 0
  4748. .cp 17è                 Table 7-69: Datß Transfe≥ Disconnec⌠ Control
  4749.  
  4750. ==============================================================================
  4751.  DTD├   Description
  4752. ----¡¡  ----------------------------------------------------------------------
  4753. .lm 9
  4754. .pm 3
  4755. .aw on
  4756. áá00b   Datß transfe≥ disconnec⌠ contro∞ i≤ no⌠ used«  Disconnec⌠ i≤ ì
  4757. áááááááácontrolleΣ b∙ thσ othe≥ field≤ iε thi≤ page.
  4758. áá01b   ┴ targe⌠ shal∞ no⌠ attemp⌠ t∩ disconnec⌠ oncσ thσ datß transfe≥ oµ ß ì
  4759. áááááááácommanΣ ha≤ starteΣ unti∞ al∞ datß thσ commanΣ i≤ t∩ transfe≥ ha≤ beeε ì
  4760. áááááááátransferred«  Thσ connec⌠ timσ limi⌠ anΣ bu≤ inactivit∙ limi⌠ arσ ì
  4761. ááááááááignoreΣ durinτ thσ datß transfer.
  4762. áá10b   Reserved
  4763. áá11b   ┴ targe⌠ shal∞ no⌠ attemp⌠ t∩ disconnec⌠ oncσ thσ datß transfe≥ oµ ß ì
  4764. áááááááácommanΣ ha≤ starteΣ unti∞ thσ commanΣ i≤ complete«  Thσ connec⌠ timσ ì
  4765. áááááááálimi⌠ anΣ bu≤ inactivit∙ limi⌠ arσ ignoreΣ oncσ datß transfe≥ ha≤ ì
  4766. áááááááástarted.
  4767. .lm 1
  4768. .pm 0
  4769. .aw off
  4770. ==============================================================================
  4771. .aw on
  4772. .pm 3
  4773.  
  4774. .cp 3
  4775. ááIµ DTD├ i≤ nonzer∩ anΣ thσ maximuφ burs⌠ sizσ i≤ nonzer∩ thσ targe⌠ shal∞ ì
  4776. returε CHEC╦ CONDITIO╬ status«  Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ ì
  4777. anΣ thσ additiona∞ sensσ codσ se⌠ t∩ ILLEGA╠ FIEL─ I╬ PARAMETE╥ LIST« 
  4778.  
  4779. .cp 30
  4780. .aw off
  4781. .pm 0
  4782. 7.3.3.3. Peripheral Device Page
  4783.  
  4784.                       Table 7-70: Peripheral Device Page
  4785.  
  4786. ==============================================================================
  4787.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4788. Byte |        |        |        |        |        |        |        |        |
  4789. ==============================================================================
  4790.  0   |   PS   |Reserved|         Page Code (09h)                             |
  4791. -----|-----------------------------------------------------------------------|
  4792.  1   |                           Page LengtΦ (n-1)                           |
  4793. -----|-----------------------------------------------------------------------|
  4794.  2   | (MSB)                                                                 |
  4795. -----|---                        Interface Identifier                     ---|
  4796.  3   |                                                                 (LSB) |
  4797. -----|-+---------------------------------------------------------------------|
  4798.  4   |                           ReserveΣ                                    |
  4799. -----|-----------------------------------------------------------------------|
  4800.  5   |                           ReserveΣ                                    |
  4801. -----|-----------------------------------------------------------------------|
  4802.  6   |                           Reserved                                    |
  4803. -----|-----------------------------------------------------------------------|
  4804.  7   |                           Reserved                                    |
  4805. -----|-+---------------------------------------------------------------------|
  4806.  8   |                                                                       |
  4807. -----|¡ -                        Vendo≥ Specifiπ                          ¡ -|
  4808.  ε   |                                                                       |
  4809. ==============================================================================
  4810. .aw on
  4811. .pm 3
  4812.  
  4813.  
  4814. .cp 4èááThσ periphera∞ devicσ pagσ (Tablσ ╖-70⌐ i≤ useΣ t∩ pas≤ vendo≥-specifiπ ì
  4815. informatioε betweeε aε initiato≥ anΣ ß periphera∞ interfacσ belo≈ thσ targe⌠ ì
  4816. (i.e.¼ betweeε thσ targe⌠ anΣ thσ periphera∞ device)«  Thi≤ standarΣ doe≤ no⌠ ì
  4817. definσ thσ forma⌠ oµ thi≤ data¼ excep⌠ t∩ providσ ß standarΣ header« 
  4818.  
  4819. .cp 17
  4820. ááInterfacσ identifie≥ code≤ arσ defineΣ iε thσ Tablσ ╖-71.
  4821.  
  4822. .aw off
  4823. .pm 0
  4824. .cp 15
  4825.                     Table 7-71: Interface Identifier Codes
  4826.  
  4827. ==============================================================================
  4828.                                                 Reference
  4829. Code Value   Interface                          Standard 
  4830. -----------  --------------------------------¡  --------------------------
  4831.   0000h      Small Computer System Interface    X3.131
  4832.   0001h      Storage Module Interface           X3.91M-1987
  4833.   0002h      Enhanced Small Device Interface    X3.170
  4834.   0003h      IPI-▓                              X3.130-1986╗ X3T9.3/87-002
  4835.   0004h      IPI-│                              X3.13▓-1987; X3.147-1988
  4836. 0005h-7FFFh  ReserveΣ
  4837. 8000h-FFFFh  Vendo≥ Specific
  4838. ==============================================================================
  4839. .aw on
  4840. .pm 3
  4841. .. Editors: Remember to update the reference standards prior to publication.
  4842.  
  4843.  
  4844. .cp 20
  4845. .aw off
  4846. .pm 0
  4847. 7.3.4. Vita∞ Produc⌠ ─ata Parameters
  4848. .aw on
  4849. .pm 3
  4850.  
  4851. ááThi≤ sectioε describe≤ thσ optiona∞ vita∞ produc⌠ datß pagσ structurσ anΣ ì
  4852. thσ vita∞ produc⌠ datß page≤ (Tablσ ╖-72⌐ tha⌠ arσ applicablσ t∩ al∞ SCS╔ ì
  4853. devices«  Thesσ page≤ arσ optionall∙ returneΣ b∙ thσ INQUIR┘ commanΣ (7.2.5⌐ ì
  4854. anΣ contaiε vendo≥-specifiπ produc⌠ informatioε abou⌠ ß targe⌠ o≥ logica∞ ì
  4855. unit«  Thσ vita∞ produc⌠ datß ma∙ includσ vendo≥ identification¼ produc⌠ ì
  4856. identification¼ uni⌠ seria∞ numbers¼ devicσ operatinτ definitions¼ ì
  4857. manufacturinτ data¼ fielΣ replaceablσ uni⌠ information¼ anΣ othe≥ vendo≥-ì
  4858. specifiπ information«  Thi≤ standarΣ define≤ thσ structurσ oµ thσ vita∞ ì
  4859. produc⌠ data¼ bu⌠ no⌠ thσ contents.
  4860.  
  4861. .cp 14
  4862. .aw off
  4863. .pm 0
  4864.                   Table 7-72: Vital Product Data Pagσ Codes
  4865.  
  4866. ==============================================================================
  4867.  Pagσ Codσ     Description                                          Section
  4868. ------------------------------------------------------------------------------
  4869.     82h        ASCI╔ ImplementeΣ Operatinτ Definitioε Pagσ          7.3.4.1
  4870.  01h - 7Fh     ASCI╔ Informatioε Page                               7.3.4.2
  4871.     81h        ImplementeΣ Operatinτ Definition≤ Page               7.3.4.3
  4872.     00h        SupporteΣ Vital Product Data Pages                   7.3.4.4
  4873.     80h        Uni⌠ Seria∞ Numbe≥ Page                              7.3.4.5
  4874.  83h - BFh     Reserved
  4875.  C0h - FFh     Vendo≥ Specific
  4876. ==============================================================================
  4877. .lm 1
  4878. .pm 0
  4879.  
  4880.  
  4881. .cp 27è.aw off
  4882. .pm 0
  4883. 7.3.4.1. ASCI╔ ImplementeΣ Operatinτ Definitioε Page
  4884.  
  4885. .cp 20
  4886. .aw off
  4887. .pm 0
  4888.               Table 7-73: ASCI╔ ImplementeΣ Operating Definition 
  4889.  
  4890. ==============================================================================
  4891.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4892. Byte |        |        |        |        |        |        |        |        |
  4893. ==============================================================================
  4894.  0   | Peripheral Qualifier     |           Peripheral Device Type           |
  4895. -----|-----------------------------------------------------------------------|
  4896.  1   |                           Pagσ Code (82h⌐                             |
  4897. -----|-----------------------------------------------------------------------|
  4898.  2   |                           Reserved                                    |
  4899. -----|-----------------------------------------------------------------------|
  4900.  3   |                           Page Length (n-3⌐                           |
  4901. -----|-----------------------------------------------------------------------|
  4902.  4   |              ASCII Operatinτ Definitioε Description Length (m-4⌐      |
  4903. -----|-----------------------------------------------------------------------|
  4904.  5   |                                                                       |
  4905. - - -|- -           ASCII Operating Definition Description Data           - -|
  4906.  φ   |                                                                       |
  4907. -----|-----------------------------------------------------------------------|
  4908.  m+1 |                                                                       |
  4909. - - -|- -           Vendor-Specific Description Datß                      - -|
  4910.  ε   |                                                                       |
  4911. ==============================================================================
  4912. .aw on
  4913. .pm 3
  4914.  
  4915.  
  4916. ááThi≤ pagσ (Tablσ ╖-73⌐ contain≤ operatinτ definitioε descriptioε datß fo≥ ì
  4917. al∞ operatinτ definition≤ implementeΣ b∙ thσ target«  Thσ content≤ oµ thi≤ ì
  4918. datß i≤ no⌠ defineΣ b∙ thi≤ standard.
  4919.  
  4920. .cp 5
  4921. ááThσ periphera∞ qualifie≥ fielΣ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ ì
  4922. devicσ typσ fielΣ i≤ defineΣ iε Tablσ ╖-17.
  4923.  
  4924. .cp 5
  4925. ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ oµ thσ followinτ pagσ data«  Iµ ì
  4926. thσ allocatioε lengtΦ i≤ les≤ thaε thσ lengtΦ oµ thσ datß t∩ bσ returneΣ thσ ì
  4927. pagσ lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ thσ truncation.
  4928.  
  4929. .cp 5
  4930. ááThσ ASCI╔ operatinτ definitioε descriptioε lengtΦ fielΣ specifie≤ thσ lengtΦ ì
  4931. iε byte≤ oµ thσ ASCI╔ operatinτ definitioε descriptioε datß tha⌠ follows«  Iµ ì
  4932. thσ allocatioε lengtΦ i≤ les≤ thaε thσ lengtΦ oµ datß t∩ bσ returned¼ thσ ì
  4933. ASCI╔ operatinτ definitioε descriptioε lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ ì
  4934. thσ truncation«  ┴ valuσ oµ zer∩ iε thi≤ fielΣ indicate≤ tha⌠ n∩ ASCI╔ ì
  4935. operatinτ definitioε descriptioε datß i≤ available.
  4936.  
  4937. .cp 5
  4938. ááThσ ASCI╔ operatinτ definitioε descriptioε datß fielΣ contain≤ thσ ASCI╔ ì
  4939. operatinτ definitioε descriptioε datß fo≥ thσ targe⌠ o≥ logica∞ unit«  Thσ ì
  4940. datß iε thi≤ fielΣ shal∞ bσ formatteΣ iε line≤ (o≥ characte≥ strings)«  EacΦ ì
  4941. linσ shal∞ contaiε onl∙ graphiπ code≤ (i.e.¼ codσ value≤ 20Φ througΦ 7Eh⌐ anΣ ì
  4942. shal∞ bσ terminateΣ witΦ ß NUL╠ (00h⌐ character« 
  4943.  
  4944. .cp 28è.aw off
  4945. .pm 0
  4946. 7.3.4.2. ASCI╔ Information Page
  4947.  
  4948. .cp 20
  4949. .aw off
  4950. .pm 0
  4951.                       Table 7-74: ASCII Informatioε Page
  4952.  
  4953. ==============================================================================
  4954.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  4955. Byte |        |        |        |        |        |        |        |        |
  4956. ==============================================================================
  4957.  0   | Peripheral Qualifier     |           Peripheral Device Type           |
  4958. -----|-----------------------------------------------------------------------|
  4959.  1   |                           Pagσ Codσ (01Φ ¡ 7Fh)                       |
  4960. -----|-----------------------------------------------------------------------|
  4961.  2   |                           Reserved                                    |
  4962. -----|-----------------------------------------------------------------------|
  4963.  3   |                           Page LengtΦ (n-3⌐                           |
  4964. -----|-----------------------------------------------------------------------|
  4965.  4   |                           ASCII Length (m-4)                          |
  4966. -----|-----------------------------------------------------------------------|
  4967.  5   |                                                                       |
  4968. - - -|- -                        ASCII Information                        - -|
  4969.  φ   |                                                                       |
  4970. -----|-----------------------------------------------------------------------|
  4971.  m+1 |                                                                       |
  4972. - - -|- -                        Vendor-Specific Informatioε              - -|
  4973.  ε   |                                                                       |
  4974. ==============================================================================
  4975. .aw on
  4976. .pm 3
  4977.  
  4978.  
  4979. .cp5
  4980. ááThσ ASCI╔ informatioε pagσ (Tablσ ╖-74⌐ return≤ informatioε fo≥ thσ fielΣ ì
  4981. replaceablσ uni⌠ codσ returneΣ iε thσ REQUES╘ SENS┼ sensσ datß (seσ 7.2.14)«  
  4982.  
  4983. .cp 5
  4984. ááThσ periphera∞ qualifie≥ fielΣ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ ì
  4985. devicσ typσ fielΣ i≤ defineΣ iε Tablσ ╖-17.
  4986.  
  4987. .cp 5
  4988. ááThσ pagσ codσ fielΣ contain≤ thσ samσ valuσ a≤ iε thσ pagσ codσ fielΣ oµ thσ ì
  4989. INQUIR┘ commanΣ descripto≥ blocδ (seσ 7.2.5⌐ anΣ i≤ associateΣ witΦ thσ fielΣ ì
  4990. replaceablσ uni⌠ codσ returneΣ b∙ thσ REQUES╘ SENS┼ command.
  4991.  
  4992. .cp 4
  4993. .lm3
  4994. ááIMPLEMENTOR╙ NOTE║  Thσ fielΣ replaceablσ uni⌠ fielΣ iε thσ sensσ datß ì
  4995. ááprovide≤ fo≥ 25╡ possiblσ codes¼ whilσ thσ pagσ codσ fielΣ provide≤ fo≥ onl∙ ì
  4996. áá12╖ possiblσ codes«  Thu≤ i⌠ i≤ no⌠ possiblσ t∩ returε ASCI╔ informatioε ì
  4997. áápage≤ fo≥ thσ uppe≥ codσ values.
  4998. .lm1
  4999.  
  5000. .cp 5
  5001. ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ oµ thσ followinτ pagσ data«  Iµ ì
  5002. thσ allocatioε lengtΦ oµ thσ commanΣ descripto≥ blocδ i≤ to∩ smal∞ t∩ transfe≥ ì
  5003. al∞ oµ thσ page¼ thσ pagσ lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ thσ ì
  5004. truncation.
  5005.  
  5006. .cp 5
  5007. ááThσ ASCI╔ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ ASCI╔ ì
  5008. informatioε tha⌠ follows«  Iµ thσ allocatioε lengtΦ i≤ les≤ thaε thσ lengtΦ oµ ì
  5009. thσ datß t∩ bσ returneΣ thσ ASCI╔ lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ thσ ì
  5010. truncation«  ┴ valuσ oµ zer∩ iε thi≤ fielΣ indicate≤ tha⌠ n∩ ASCI╔ informatioε ì
  5011. i≤ availablσ fo≥ thσ specifieΣ pagσ code.
  5012.  
  5013. .cp 5èááThσ ASCI╔ informatioε fielΣ contain≤ ASCI╔ informatioε concerninτ thσ fielΣ ì
  5014. replaceablσ uni⌠ identifieΣ b∙ thσ pagσ code«  Thσ datß iε thi≤ fielΣ shal∞ bσ ì
  5015. formatteΣ iε onσ o≥ morσ line≤ (o≥ characte≥ strings)«  EacΦ linσ shal∞ ì
  5016. contaiε onl∙ graphiπ code≤ (i.e.¼ codσ value≤ 20Φ througΦ 7Eh⌐ anΣ shal∞ bσ ì
  5017. terminateΣ witΦ ß NUL╠ (00h⌐ character« 
  5018.  
  5019. ááThσ content≤ oµ thσ vendo≥-specifiπ informatioε fielΣ i≤ no⌠ defineΣ iε thi≤ ì
  5020. standard.
  5021.  
  5022. .cp 25
  5023. .aw off
  5024. .pm 0
  5025. 7.3.4.3. ImplementeΣ Operatinτ Definition Page
  5026.  
  5027. .cp 23
  5028. .aw off
  5029. .pm 0
  5030.               Table 7-75: Implemented Operating Definition Page
  5031.  
  5032. ==============================================================================
  5033.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  5034. Byte |        |        |        |        |        |        |        |        |
  5035. ==============================================================================
  5036.  0   | Peripheral Qualifier     |           Peripheral Device Type           |
  5037. -----|-----------------------------------------------------------------------|
  5038.  1   |                           Pagσ Code (81h)                             |
  5039. -----|-----------------------------------------------------------------------|
  5040.  2   |                           Reserved                                    |
  5041. -----|-----------------------------------------------------------------------|
  5042.  3   |                           Page Length (n-3⌐                           |
  5043. -----|-----------------------------------------------------------------------|
  5044.  4   |Reserved|         Current Operating Definition                         |
  5045. -----|-----------------------------------------------------------------------|
  5046.  5   | SavImp |         Default Operating Definition                         |
  5047. -----|-----------------------------------------------------------------------|
  5048.  6   ⁿ SavIm≡ |                                                              |
  5049. -----|¡ ¡               SupporteΣ Operatinτ Definitioε Lis⌠               ¡ -|
  5050.  ε   | SavIm≡ |                                                              |
  5051. ==============================================================================
  5052. .aw on
  5053. .pm 3
  5054.  
  5055.  
  5056. ááThσ implementeΣ operatinτ definitioε pagσ (Tablσ ╖-75⌐ define≤ thσ curren⌠ ì
  5057. operatinτ definition¼ thσ defaul⌠ operatinτ definition¼ anΣ whicΦ operatinτ ì
  5058. definition≤ arσ implementeΣ b∙ thσ target«  Thesσ operatinτ definitioε value≤ ì
  5059. arσ specifieΣ iε thσ CHANG┼ DEFINITIO╬ commanΣ (seσ 7.2.1).
  5060.  
  5061. .cp 5
  5062. ááThσ periphera∞ qualifie≥ fielΣ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ ì
  5063. devicσ typσ fielΣ i≤ defineΣ iε Tablσ ╖-17.
  5064.  
  5065. .cp 5
  5066. ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ oµ thσ followinτ operatinτ ì
  5067. definitions«  Iµ thσ allocatioε lengtΦ oµ thσ commanΣ descripto≥ blocδ i≤ to∩ ì
  5068. smal∞ t∩ transfe≥ al∞ oµ thσ page¼ thσ pagσ lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ ì
  5069. reflec⌠ thσ truncation.
  5070.  
  5071. ááFo≥ eacΦ operatinτ definitioε therσ i≤ aε associateΣ savσ implementeΣ ì
  5072. (SavImp⌐ bit«  ┴ SavIm≡ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ correspondinτ operatinτ ì
  5073. definitioε paramete≥ canno⌠ bσ saved«  ┴ SavIm≡ bi⌠ oµ onσ indicate≤ tha⌠ thσ ì
  5074. correspondinτ operatinτ definitioε paramete≥ caε bσ saved.
  5075.  
  5076. .cp 6èááAl∞ returneΣ operatinτ definition≤ usσ thσ code≤ defineΣ iε Tablσ ╖-3«  Thσ ì
  5077. curren⌠ operatinτ definitioε fielΣ return≤ thσ valuσ oµ thσ presen⌠ operatinτ ì
  5078. definition«  Thσ defaul⌠ operatinτ definitioε fielΣ return≤ thσ valuσ oµ thσ ì
  5079. operatinτ definitioε thσ targe⌠ use≤ wheε powe≥ i≤ applieΣ iµ n∩ operatinτ ì
  5080. definitioε i≤ saved«  Thσ supporteΣ operatinτ definitioε lis⌠ return≤ onσ o≥ ì
  5081. morσ operatinτ definition≤ implementeΣ b∙ thσ target.
  5082.  
  5083. .cp 21
  5084. .aw off
  5085. .pm 0
  5086. 7.3.4.4. SupporteΣ Vital Product Data Pages
  5087.  
  5088. .aw off
  5089. .pm 0
  5090.                 Table 7-76: Supported Vital Product Data Pages
  5091.  
  5092. ==============================================================================
  5093.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  5094. Byte |        |        |        |        |        |        |        |        |
  5095. ==============================================================================
  5096.  0   | Peripheral Qualifier     |           Peripheral Device Type           |
  5097. -----|-----------------------------------------------------------------------|
  5098.  1   |                           Pagσ Code (00h)                             |
  5099. -----|-----------------------------------------------------------------------|
  5100.  2   |                           Reserved                                    |
  5101. -----|-----------------------------------------------------------------------|
  5102.  3   |                           Page LengtΦ (n-3)                           |
  5103. -----|-----------------------------------------------------------------------|
  5104.  4   |                                                                       |
  5105. ¡----|¡ ¡                        SupporteΣ Pagσ Lis⌠                      ¡ -|
  5106.  n   |                                                                       |
  5107. ==============================================================================
  5108. .aw on
  5109. .pm 3
  5110.  
  5111.  
  5112. .cp 5
  5113. ááThσ supporteΣ vita∞ produc⌠ datß page≤ arσ showε iε Tablσ ╖-76.
  5114.  
  5115. ááThσ periphera∞ qualifie≥ fielΣ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ ì
  5116. devicσ typσ fielΣ i≤ defineΣ iε Tablσ ╖-17.
  5117.  
  5118. .cp 5
  5119. ááThσ pagσ codσ fielΣ shal∞ bσ se⌠ t∩ thσ valuσ oµ thσ pagσ codσ fielΣ iε thσ ì
  5120. INQUIR┘ commanΣ descripto≥ blocδ (seσ 7.2.5).
  5121.  
  5122. .cp 5
  5123. ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ oµ thσ supporteΣ pagσ list«  Iµ ì
  5124. thσ allocatioε lengtΦ i≤ to∩ smal∞ t∩ transfe≥ al∞ oµ thσ page¼ thσ pagσ ì
  5125. lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ thσ truncation.
  5126.  
  5127. .cp 5
  5128. ááThσ supporteΣ pagσ lis⌠ fielΣ shal∞ contaiε ß lis⌠ oµ al∞ vita∞ produc⌠ datß ì
  5129. pagσ code≤ implementeΣ fo≥ thσ targe⌠ o≥ logica∞ uni⌠ iε ascendinτ orde≥ ì
  5130. beginninτ witΦ pagσ codσ 00h.
  5131.  
  5132. .cp 35è.aw off
  5133. .pm 0
  5134. 7.3.4.5. Uni⌠ Seria∞ Numbe≥ Page
  5135.  
  5136. .cp 20
  5137. .aw off
  5138. .pm 0
  5139.                      Table 7-77: Unit Serial Number Page
  5140.  
  5141. ==============================================================================
  5142.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  5143. Byte |        |        |        |        |        |        |        |        |
  5144. ==============================================================================
  5145.  0   | Peripheral Qualifier     |           Peripheral Device Type           |
  5146. -----|-----------------------------------------------------------------------|
  5147.  1   |                           Pagσ Code (80h⌐                             |
  5148. -----|-----------------------------------------------------------------------|
  5149.  2   |                           Reserved                                    |
  5150. -----|-----------------------------------------------------------------------|
  5151.  3   |                           Page Length (n-3)                           |
  5152. -----|-----------------------------------------------------------------------|
  5153.  8   |                                                                       |
  5154. - - -|- -                        Product Serial Number                    - -|
  5155.  ε   |                                                                       |
  5156. ==============================================================================
  5157. .aw on
  5158. .pm 3
  5159.  
  5160.  
  5161. ááThi≤ pagσ (Tablσ ╖-77⌐ provide≤ ß produc⌠ seria∞ numbe≥ fo≥ thσ targe⌠ o≥ ì
  5162. logica∞ unit.
  5163.  
  5164. .cp 5
  5165. ááThσ periphera∞ qualifie≥ fielΣ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ ì
  5166. devicσ typσ fielΣ i≤ defineΣ iε Tablσ ╖-17.
  5167.  
  5168. .cp 5
  5169. ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ oµ thσ produc⌠ seria∞ number«  Iµ ì
  5170. thσ allocatioε lengtΦ i≤ to∩ smal∞ t∩ transfe≥ al∞ oµ thσ page¼ thσ pagσ ì
  5171. lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ thσ truncation.
  5172.  
  5173. .cp 4
  5174. ááThσ produc⌠ seria∞ numbe≥ fielΣ contain≤ ASCI╔ datß tha⌠ i≤ vendo≥ specific« ì
  5175. Thσ leas⌠ significan⌠ ASCI╔ characte≥ oµ thσ seria∞ numbe≥ shal∞ appea≥ a≤ thσ ì
  5176. las⌠ bytσ oµ ß successfu∞ datß transfer«  Iµ thσ produc⌠ seria∞ numbe≥ i≤ no⌠ ì
  5177. available¼ thσ targe⌠ shal∞ returε ASCI╔ space≤ (20h⌐ iε thi≤ field« 
  5178.  
  5179. ..end of section
  5180. .paè
  5181.  
  5182.  
  5183.  
  5184.  
  5185.  
  5186.  
  5187.  
  5188.  
  5189.  
  5190.  
  5191.  
  5192.  
  5193.  
  5194.  
  5195.  
  5196.  
  5197.  
  5198.  
  5199.  
  5200.  
  5201. áá                     (Thi≤ pagσ i≤ intentionall∙ blank.)
  5202. .paè