Working NCITS 333 Draft T10/1228-D: Information Technology - SCSI Multimedia Commands - 2 (MMC-2)
Working NCITS 333 Draft T10/1228-D: Information Technology - SCSI Multimedia Commands - 2 (MMC-2)
Working NCITS 333 Draft T10/1228-D: Information Technology - SCSI Multimedia Commands - 2 (MMC-2)
DRAFT T10/1228-D
Revision – 11a
August 30, 1999
INFORMATION TECHNOLOGY -
SCSI Multimedia Commands – 2 (MMC-2)
This is a draft proposal of the National Committee on Interface Technology Standards (NCITS). NCITS is
accredited by, and approved under rules approved by, the American National Standards Institute (ANSI). As
such this is not a completed standard. The NCITS T10 Technical Committee may modify this document as a
result of comments received during public review and its approval as a standard. Use of the information
contained herein is at your own risk.
Permission is granted to members of NCITS, its technical committees, and their associated task groups to
reproduce this document for the purposes of NCITS standardization activities without further permission,
provided this notice is included. All other rights are reserved. Any commercial or for-profit replication or
republication is prohibited.
Reference number
ISO/IEC ***** :199X
ANSI NCITS .333 :1999
Printed: August 16, 199X
i
BSR NCITS 333
POINTS OF CONTACT:
NCITS T10 Chair NCITS T10 Vice-Chair
John B. Lohmeyer George O. Penokie
LSI Logic Corp. IBM
4420 ArrowsWest Dr. Dept. 2B7
Colo. Springs, CO 80907-3444 3605 Highway 52 N.
Tel: (719) 533-7560 Rochester, MN 55901 USA
Fax: (719) 533-7183 Telephone: (507) 253-5208
Email: [email protected] Facsimile: (507) 253-2880
Email: [email protected]
NCITS Secretariat
NCITS Secretariat Telephone: 202-737-8888
1250 Eye Street, NW Suite 200 Facsimile: 202-638-4922
Washington, DC 20005 e-mail: [email protected]
T10 Reflector
Internet address for subscription to the T10 reflector: [email protected]
Internet address for distribution via T10 reflector: [email protected]
MMC-2 Reflector
Internet address for subscription to the MMC Reflector [email protected]
Internet address for distribution via MMC Reflector [email protected]
Document Distribution
Global Engineering Telephone: 303-792-2181 or
15 Inverness Way East 800-854-7179
Englewood, CO 80112-5704 Facsimile: 303-792-2192
ii
BSR NCITS 333
REVISION HISTORY
Revision 0.0 Initial draft of the document
Revision 1.0 Additional commands added to document
Revision 2.0 Document structure completed, added Features clause, added annex’s.
Revision 3.0 Added DVD commands, Annex P, Annex Q, and other document changes. No Change bars.
Revision 4.0 Added additional commands from Mt Fuji2 document.
Revision 5.0 Restructured document to current layout, and added other commands. Also included editorial
comments from working group meetings.
Revision 5.0B Includes new clause 5 Features and Parameters, added additional commands from Mt Fuji 3
ad hoc working group.
Revision 6.0 Clause 6.0 modified to include all commands defined to date. Clause 5.0 updated to reflect
March meeting.
Revision 7.0A New Clause 5, Clause 6 updated.
Revision 7.0C New CD model sub-clause, Corrections form June meeting
Revision 7.0D Contain revised CD model. New Annex D, other various corrections.
Revision 7.0E Added GET CONFIGURATION command, and new DVD model sub-clauses
Revision 8.0 Document for first letter ballot.
Revision 9.0 Contains revisions requested by letter ballot comments. New Annex C, D, E, F.
Revision 9.0A Modifications made from Fuji3 comparisons and includes more comment resolutions from
December working group.
Revision 9.0B Includes all comment resolutions and Mt Fuji3 comparisons known as of document date.
Revision 9.0C Includes embedded object updates and corrections. 1/23/99 review revision
Revision 9.0D Includes additional Mt Fuji3 revisions.
Revision 9.0E Includes ASC, ASCQ revisions and DVD-R changes. Also includes changes from January
1999 working group meetings.
Revision 10.0 Includes all Pioneer comments and other comment resolutions.
Revision 10A Incorporated ANSI editor comments/requests.
iii
BSR NCITS 333
THIS PAGE
IS
INTENTIONALLY BLANK
iv
BSR NCITS 333
BSR®
NCITS 333
Secretariat
Information Technology Industry Council
Abstract
This standard defines the SCSI command set extensions to access multimedia features for all classes of SCSI
devices. The applicable clauses of this standard when used in conjunction with the SCSI Primary Commands
specification, SCSI Block Commands, and other applicable command set documents pertaining to the subject
device class, define the full standard set of commands available for that device in the SCSI environment.
v
BSR NCITS 333
CAUTION NOTICE: The developers of this standard have requested that holder’s of patents that
may be required for the implementation of this standard, disclose such patents to the publisher.
However, neither the developers nor the publisher has undertaken a patent search in order to identify
which, if any, patents may apply to this standard. As of the date of publication of this standard and
following calls for the identification of patents that may be required for the implementation of the
standard, no such claims have been made. No further patent search is conducted by the developer or
publisher in respect to any standard it processes. No representation is made or implied that licenses
are not required to avoid infringement in the use of this standard.
Published by
American National Standards Institute
1430 Broadway, New York, NY 10018
Copyright © 1998 by American National Standards Institute
All rights reserved.
vi
BSR NCITS 333
Table of Contents
1. Scope .................................................................................................................................. 1
2. References .......................................................................................................................... 1
2.1. Normative References......................................................................................................... 1
2.1.1. Approved references ........................................................................................................... 1
2.1.2. References under development .......................................................................................... 2
2.2. Other references ................................................................................................................. 2
3. Definitions, abbreviations and acronym .............................................................................. 3
3.1. Definitions of terms ............................................................................................................. 3
3.2. Conventions ........................................................................................................................ 6
3.3. Keywords............................................................................................................................. 6
4. C/DVD Models..................................................................................................................... 8
4.1. General................................................................................................................................ 8
4.1.1. CD address reporting formats (MSF bit) ............................................................................. 8
4.1.2. Logical Blocks ..................................................................................................................... 8
4.1.3. Data cache .......................................................................................................................... 9
4.1.4. RESETS .............................................................................................................................. 9
4.1.5. Error reporting ................................................................................................................... 10
4.1.6. Deferred Errors.................................................................................................................. 10
4.1.7. Removable medium .......................................................................................................... 11
4.2. CD Device Model .............................................................................................................. 13
4.2.1. Recorded CD Media Structure .......................................................................................... 13
4.2.2. Physical track topology - Multi-Session Disc .................................................................... 16
4.2.3. CD Audio error reporting ................................................................................................... 31
4.2.4. CD ready condition/not ready condition ............................................................................ 32
4.2.5. Sensing support for CD-audio commands. ....................................................................... 33
4.3. DVD Model ........................................................................................................................ 34
4.3.1. DVD Media Functionality................................................................................................... 34
4.3.2. Track Structure.................................................................................................................. 35
4.3.3. Recording for DVD-R ........................................................................................................ 41
4.3.4. ECC Block ......................................................................................................................... 41
4.3.5. Sector Configuration.......................................................................................................... 42
4.3.6. DVD Ready Condition/Not Ready Condition..................................................................... 49
4.3.7. DVD Copy Protection ........................................................................................................ 50
4.4. Changer Model.................................................................................................................. 55
4.4.1. Side definition.................................................................................................................... 55
4.4.2. Changer Addressing.......................................................................................................... 57
4.4.3. Automatic Load and Unload Operations ........................................................................... 57
4.4.4. Delayed Disc load operation ............................................................................................. 58
4.4.5. Prevent / Allow processing................................................................................................ 59
4.4.6. Error Reporting for Changers............................................................................................ 59
vii
BSR NCITS 333
viii
BSR NCITS 333
ix
BSR NCITS 333
x
BSR NCITS 333
xi
BSR NCITS 333
List of Tables
Table 1 - MSF Address format .........................................................................................................8
Table 2 - Sense key responses for error reporting.........................................................................10
Table 3 – Small Frame layout and definition ..................................................................................13
Table 4 – CD Frame Structure from Small Frames........................................................................14
Table 5 – Sub-Channel byte layout ................................................................................................14
Table 6 – P-Sub-Channel Layout ...................................................................................................15
Table 7 – Q Sub-channel record format .........................................................................................17
Table 8 - ISRC 6 bit character codes (in hexadecimal)..................................................................19
Table 9 – Sync pattern block header..............................................................................................23
Table 10 – Mode Zero Data Format ...............................................................................................23
Table 11 – Mode 1 Data Format ....................................................................................................24
Table 12 – Mode 2 formless block format ......................................................................................24
Table 13 – Mode 2 form 1data format ............................................................................................25
Table 14 – Mode 2 form 1 sub-header format................................................................................25
Table 15 – Mode 2 form 2 data format ...........................................................................................26
Table 16 – ATIP format ..................................................................................................................26
Table 17 – Block Identifier bits .......................................................................................................29
Table 18 – Track Descriptor Block (TDB) header ..........................................................................30
Table 19 – Track Descriptor Unit (TDU) Format ............................................................................30
Table 20 - Not Ready Error Reporting (by command) ...................................................................32
Table 20 (cont.) - Not Ready Error Reporting (by command) ........................................................33
Table 21 – Data Field Number for DVD Media...............................................................................44
Table 22 – Control Structure of Control Data Block .......................................................................46
Table 23 – Common Part of Physical Format Information .............................................................46
Table 24 – Book Type Field............................................................................................................47
Table 25 – DVD-ROM Unique Part of Physical Format Information ..............................................47
Table 26 – DVD-R Unique Part of Physical Format Information ....................................................47
Table 27 – DVD-RAM Unique Part of Physical Format Information ..............................................47
Table 28 – DVD+RW Unique Part of Physical Format...................................................................48
Table 29 – Data Area Allocation Definition.....................................................................................49
Table 30 - Commands that may cause delayed loads to occur .....................................................58
Table 31 - Commands that will cause delayed loads to occur .......................................................58
Table 32 - Commands that should not cause delayed loads to occur ...........................................59
Table 33 - Error Conditions and Sense Keys for Changer Mechanisms .......................................59
Table 34 - GET CONFIGURATION response data format ............................................................60
Table 35 - Feature Header .............................................................................................................61
Table 36 - Feature Descriptor generic format ................................................................................61
Table 37 - Feature Codes...............................................................................................................63
Table 38 - Profile List Descriptor Format........................................................................................65
Table 39 - Profile Descriptor...........................................................................................................65
Table 40 - Profile List......................................................................................................................66
Table 41 - Core Commands ...........................................................................................................67
Table 42 - Core Feature Descriptor Format ...................................................................................68
Table 43 - Physical Interface Standard ..........................................................................................68
Table 44 – Morphing Feature Commands......................................................................................69
Table 45 - Morphing Descriptor Format .........................................................................................69
Table 46 - Removable Medium Commands...................................................................................70
Table 47 - Removable Medium Descriptor Format ........................................................................70
Table 48 - Loading Mechanism Type .............................................................................................71
Table 49 - Random Readable Feature...........................................................................................71
Table 50 - Random Readable Descriptor Format ..........................................................................72
xii
BSR NCITS 333
xiii
BSR NCITS 333
xiv
BSR NCITS 333
xv
BSR NCITS 333
xvi
BSR NCITS 333
xvii
BSR NCITS 333
Table 329 - REPORT KEY Data Format (With KEY Format = 000000b) ....................................244
Table 330 - REPORT KEY Data Format (With KEY Format = 000001b) ....................................245
Table 331 - REPORT KEY Data Format (With KEY Format = 000010b) ....................................245
Table 332 - REPORT KEY Data Format (With KEY Format = 000100b) ....................................246
Table 333 - REPORT KEY Data Format (With KEY Format = 000101b) ....................................247
Table 334 - REPORT KEY Data Format (With KEY Format = 001000b) ....................................247
Table 335 – Type Code Field Definitions .....................................................................................247
Table 336 – RPC Scheme field Definition ....................................................................................248
Table 337 - Recommended errors for REPORT KEY Command ................................................248
Table 338 - RESERVE TRACK Command Descriptor Block.......................................................249
Table 339 - Track reservation sizing (CD)....................................................................................249
Table 340 - TRACK reservation sizing (DVD) ..............................................................................250
Table 341 - Recommended errors for RESERVE TRACK Command.........................................250
Table 342 - SCAN Command Descriptor Block ...........................................................................252
Table 343 - Type field bit definitions.............................................................................................253
Table 344 - Scan starting address field format-logical blocks......................................................253
Table 345 - Scan Starting Address format - MIN, SEC, FRAME format......................................253
Table 346 - Scan Starting Address Format-Track Number (TNO)...............................................253
Table 347 - Recommended errors for SCAN operation ...............................................................254
Table 348 - SEND CUE SHEET Command Descriptor Block......................................................255
Table 349 - Cue Sheet format ......................................................................................................255
Table 350 - Sample CUE SHEET ................................................................................................256
Table 351 - Cue Sheet Data.........................................................................................................257
Table 352 - CTL/ADR byte ...........................................................................................................257
Table 353 - Control Field ..............................................................................................................257
Table 354 - ADR Field ..................................................................................................................258
Table 355 - Data Form Byte .........................................................................................................258
Table 356 - SCMS Byte................................................................................................................258
Table 357 - CD-DA Data format (1 Sample) ................................................................................259
Table 358 - Data Form of Sub-channel ........................................................................................261
Table 359 – Media Catalog Number (N1..N13)............................................................................262
Table 360 - ISRC (I1..I12) ............................................................................................................262
Table 361 - Recommended Sense Key, ASC and ASCQ SEND CUE SHEET Command .........263
Table 362 – SEND DVD STRUCTURE Command Descriptor Block ..........................................264
Table 363 – Format Field Definition .............................................................................................264
Table 364 – SEND DVD STRUCTURE Data Format (Format Code = 04h)................................265
Table 365 - SEND DVD STRUCTURE Data Format (Format Code = 05h).................................265
Table 366 - SEND DVD STRUCTURE Data Format (Format Code = 0Fh) ................................266
Table 367 - SEND DVD STRUCTURE Data Format (Format Code = 30h).................................267
Table 368 - Recommended errors for SEND DVD STRUCTURE Command .............................267
Table 369 – SEND EVENT Command Descriptor Block .............................................................268
Table 370 – Event Parameter Header..........................................................................................269
Table 371 - Operational Change/Notification Parameter Data.....................................................269
Table 372 – Operational Event Field............................................................................................269
Table 373 - Recommended errors for SEND EVENT Command ................................................270
Table 374 - SEND KEY Command Descriptor Block ...................................................................271
Table 375 - Key Format Code definitions for SEND KEY command ...........................................271
Table 376 - SEND KEY Parameter List (KEY Format field =000001b)........................................272
Table 377 - SEND KEY Parameter List (KEY Format field =000011b)........................................272
Table 378 - SEND KEY Parameter List (KEY Format field =000110b)........................................273
Table 379 - Recommended errors for SEND KEY Command .....................................................273
Table 380 - SEND OPC INFORMATION Command Descriptor Block ........................................274
Table 381 - SEND OPC INFORMATION Parameter List.............................................................274
Table 382 - Recommended errors for SEND OPC INFORMATION Command ..........................275
Table 383 - SET CD SPEED Command Descriptor Block...........................................................276
Table 384 - Recommended errors for SET CD SPEED Command.............................................276
xviii
BSR NCITS 333
Table 385 - SET READ AHEAD Command Descriptor Block ..................................................... 277
Table 386 - Recommended errors for SET READ AHEAD Command........................................ 277
Table 387 – SET STREAMING Command Descriptor Block....................................................... 278
Table 388 - Performance Descriptor ............................................................................................ 279
Table 389 - Recommended errors for SET STREAMING Command.......................................... 280
Table 390 - STOP PLAY/SCAN Command Descriptor Block ...................................................... 281
Table 391 - Recommended errors for STOP PLAY/SCAN Command ........................................ 281
Table 392 - SYNCHRONIZE CACHE Command ........................................................................ 283
Table 393 - Recommended errors for SYNCHRONIZE CACHE Command ............................... 283
Table 394 - WRITE (10) command .............................................................................................. 284
Table 395 - LBA to MSF translation ............................................................................................. 285
Table 396 - Recommended errors for WRITE Command............................................................ 286
Table 397 – WRITE AND VERIFY (10) Command...................................................................... 287
Table 398 - Recommended errors for WRITE AND VERIFY (10) Command ............................. 287
Table A.1 – Logical Unit Sense Key, ASC and ASCQ Assignments ........................................... 289
Table A.1 – Logical Unit Sense Key, ASC and ASCQ Assignments (cont.)............................... 290
Table A.1 – Logical Unit Sense Key, ASC and ASCQ Assignments (cont.)............................... 291
Table A.1 - Logical Unit Sense Key, ASC and ASCQ Assignments (cont.)................................ 292
Table A.1 - Logical Unit Sense Key, ASC and ASCQ Assignments (cont.)................................ 293
Table A.1 - Logical Unit Sense Key, ASC and ASCQ Assignments (cont.)................................ 294
Table A.2 - Logical Unit General Errors ....................................................................................... 295
Table A.2 - Logical Unit General Errors (cont.) ........................................................................... 296
Table A.3 - Media Access Errors ................................................................................................. 297
Table A.3 - Media Access Errors (cont.) ..................................................................................... 298
Table A.4 - Logical Unit Write Errors............................................................................................ 299
Table A.5 - Logical Unit Fixation Errors ....................................................................................... 299
Table B 1 - Example Reset Function Mapping in ATAPI ............................................................. 301
Table B.2 - ATAPI Commands Requirements ............................................................................. 302
Table B.2 - ATAPI CD Commands (cont.) .................................................................................. 303
Table E.1 - Example Reset Function Mapping in SCSI ............................................................... 311
Table F.1 - Power Management Model States ............................................................................ 312
Table F.2 - State Transition, Events and Status .......................................................................... 316
Table F.3 - Effects of Initiator Commands on Timers .................................................................. 317
Table F.3 - Effects of Initiator Commands on Timers (cont.) ....................................................... 319
Table G.1 - Commands Common to all SCSI Devices ................................................................ 320
Table I.1 - Multimedia Commands - Alphabetically...................................................................... 324
Table I.1 – Multimedia Commands – Alphabetically (cont.)........................................................ 325
Table I.2 - Multimedia Commands - by OpCode.......................................................................... 326
Table I.2 - Multimedia Commands - by OpCode (cont.) ............................................................. 327
Table I.3 - Commands Common to all SCSI Devices .................................................................. 328
Table J.1. - CD-TEXT Pack Data format for the Lead-in area ..................................................... 330
Table J.2 - Pack Type Indicator Definitions.................................................................................. 331
List of Figures
Figure 1 – Single Session disc ....................................................................................................... 16
Figure 2 – Multi-Session Recorded Disc........................................................................................ 16
Figure 3 - Q Sub-channel Mode-1 Format recorded in Program Area .......................................... 18
Figure 4 - Q Sub-channel Mode-2 Format ..................................................................................... 18
Figure 5 - Q Sub-channel, Mode-3 Format .................................................................................... 19
Figure 6 - Q Sub-channel Mode-1 Format recorded in Lead-in ..................................................... 21
Figure 7 - Q Sub-channel Mode-5 Format recorded in Lead-in ..................................................... 21
Figure 8 – Synchronization Field pattern ....................................................................................... 22
Figure 9 – CD-R and CD-RW medium........................................................................................... 27
Figure 10 – PMA, Q Sub-channel .................................................................................................. 27
Figure 11 – Packet Format............................................................................................................. 28
xix
BSR NCITS 333
Figure 12 – Physical and Logical Layout of Single Layer DVD-ROM Media .................................35
Figure 13 – Physical and Logical Layout of Parallel Track Path DVD-ROM Media.......................36
Figure 14 – Physical and Logical Layout of Opposite Track Path DVD-ROM Media ....................37
Figure 15 – Physical and Logical Layout of DVD-R Media ............................................................38
Figure 16 – Physical and Logical Layout of Single Layer DVD+RW Media...................................39
Figure 17 – Physical and Logical Layout of DVD-RAM Media.......................................................40
Figure 18 – Data Organization within an ECC Block .....................................................................42
Figure 19 – Formation of Data Unit 3 .............................................................................................42
Figure 20 – Data Unit 1 ..................................................................................................................43
Figure 21 – Data ID Field definition................................................................................................43
Figure 22 – Data Structure of Disc Lead-in Area ...........................................................................45
Figure 23 – Device Key Exchange and Authentication State Diagram..........................................50
Figure 24 – Authentication Flag Sequence ....................................................................................51
Figure 25 – Region State Diagram.................................................................................................54
Figure 26 - Media Changer Mechanism Model ..............................................................................55
Figure 27 - Changer State Diagram ...............................................................................................57
Figure 28 - Read CD Sub-channel, R-W (100b) ..........................................................................181
Figure 29 - CD (CD-DA) ...............................................................................................................259
Figure 30 - CD-ROM mode 1 .......................................................................................................259
Figure 31 - CD-ROM XA, CD-I .....................................................................................................260
Figure 32 - CD-ROM Mode 2 .......................................................................................................260
Figure 33 - Location of Sub-channel Data....................................................................................261
Figure 34 - Stop Play/Play Audio/Audio Scan/Pause/Resume Sequencing ................................282
Figure C.35 - Mass storage interface block diagram ...................................................................305
Figure 36 - Power Management STATE Diagram .......................................................................315
Figure J.37 - Block Number Character Position ...........................................................................331
xx
BSR NCITS 333
Forward
This standard defines the SCSI command set extensions to access multimedia Features for all classes
of SCSI devices. The applicable clauses of this standard when used in conjunction with the SCSI
Primary Commands specification, SCSI Block Commands, and other applicable command set
documents pertaining to the subject device class, define the full standard set of commands available
for that device in the SCSI environment.
Requests for interpretation, suggestions for improvement and addenda, or defect reports are welcome.
They should be sent to the NCITS Secretariat, Information Technology Industry Council, 1250 I Street
NW, Suite 200, Washington, DC 20005-3922.
This standard was processed and approved for submittal to ANSI by National Committee for
Information Technology Standardization (NCITS). Committee approval of this standard does not
necessarily imply that all committee members voted for approval. At the time it approved this standard,
NCITS had the following members:
xxi
BSR NCITS 333
Technical Committee T10 on Lower Level Interfaces, which developed and reviewed this standard,
had the following members:
Vincent Bastiani (Alt) Randall C. Hines (Alt) Jay Neer (Alt) Jacqueline Sylvia (Alt)
Wally Bridgewater (Alt) Gerald Houlder (Alt) Terry Nelson (Alt) Pete Tobias (Alt)
Doug Charnley (Alt) David L. Jolley (Alt) Franklin Ng (Alt) Quang Vuong (Alt)
Dan Colegrove (Alt) Gregory Kapraun (Alt) Vit Novak (Alt) Matt Wakeley (Alt)
William Dallas (Alt) Ed Kavetsky (Alt) Elwood Parsons (Alt) Dean Wallace (Alt)
Mark Delsman (Alt) Allen King (Alt) Darrell Redford (Alt) Harvey Waltersdorf (Alt)
Terry Enright (Alt) Jim Koser (Alt) Charley Riegger (Alt) Frank Wang (Alt)
Stephen G. Finch (Alt) Dennis Lang (Alt) Ron Roberts (Alt) Stephen K. Wilson (Alt)
Mike Gerwig (Alt) Eugene Lew (Alt) Frank Samela (Alt) Michael Wingard (Alt)
Donald R. Getty (Alt) Tim Mackley (Alt) John P. Scheible (Alt) Mike Zandy (Alt)
Chuck Grant (Alt) Patrick McGarrah (Alt) Michael Smith (Alt)
Douglas Hagerman (Alt) James McGrath (Alt) Gary R. Stephens (Alt)
William Ham (Alt) E.J. Mondor (Alt) Arlan P. Stone (Alt)
xxii
AMERICAN NATIONAL STANDARD BSR NCITS 333
1. Scope
This standard defines a multimedia command set extensions for Device Type 5 devices. The commands
specified within this standard define standard access and control to those Features of the device that are used
in multimedia applications.
The SPC command set and these extensions are transport independent and may be implemented across a
wide variety of environments for that a SCSI command mapping and delivery vehicle has been defined. To
date these include Fibre Channel, SCSI Parallel Interface, High Performance Serial Bus, Serial Storage
Architecture, and ATA/ATAPI.
The objective of this command set is to provide for the following:
1) A definition of the command formats and functions independent of delivery, protocol/signaling or transport
mechanism. Architectural constraints regarding command functions, over the various transports, are
addressed in the document specific to the physical transport.
2) Standardized access to common Features of SCSI devices employed in multimedia applications.
3) System software/firmware independence across device classes. Thus, different tape drives, optical media
drives, and other devices can be added to the system without requiring modifications to generic system
hardware and software. Provision is made for the addition of special Features and functions through the use of
vendor-specific options. Reserved Opcodes are provided for future standardization.
4) To provide compatibility such that properly conforming SCSI-2 devices may inter-operate with subsequent
devices given that the system engineering is correctly done. SCSI protocol extensions are designed to be
permissive of rejections by conforming SCSI-2 devices and thus allow the SCSI-2 device to continue operation
without requiring the use of the extension.
2. References
2.1. Normative References
The following standards contain provisions that, through reference in the text, constitute provisions of this
standard. At the time of publication, the editions indicated were valid. All standards are subject to revision and
parties to agreements based on this standard are encouraged to investigate the possibility of applying the
most recent editions of the standards listed below.
Copies of the following documents can be obtained from ANSI;
- Approved ANSI standards;
- approved and draft international and regional standards (ISO, IEC, CEN/CENELEC, ITUT);
- approved and draft foreign standards (including BSI, JIS, and DIN).
Contact ANSI Customer Service Department at 212-642-4900 (phone), 212-302-1286 (fax) or via the World
Wide Web at http://www.ansi.org, for further information.
Additional availability contact information is provided below as needed.
1
BSR NCITS 333
2
BSR NCITS 333
3
BSR NCITS 333
3.1.26. CIRC (Cross Interleaved Reed-Solomon Code) - The error detection and correction technique
used on a CD. The CIRC bytes are present in all CD modes. The error correction procedure that uses
the CIRC bytes is referred to as the CIRC based algorithm.
3.1.27. Defect Management - A method for providing apparent error free media.
3.1.28. Direct-overwrite – the process or capability of writing over previously written data without an erase
cycle.
3.1.29. Disc Key - A value used during the scrambling process of the title key data on DVD media.
3.1.30. Double Sided - A medium with two independently addressed sides.
3.1.31. Dual Layer - Two surfaces that can be accessed from the same side. On dual layer Discs the data is
recorded using either OTP or PTP.
3.1.32. DVD - A family of related optical storage media and Logical Units.
3.1.33. DVD Control Area - The DVD Control area is comprised of 192 ECC blocks in the Lead-in Area of a
DVD medium. The content of 16 sectors in each block is repeated 192 times. This area contains
information concerning the disc.
3.1.34. DVD Disc Manufacturing Information - The DVD Disc Manufacturing Information is recorded in the
DVD Control Area and contains information supplied by the disc manufacturer.
3.1.35. DVD ECC-Block - A self-contained block of data and error correction codes that are grouped into a
sequential series of 16 DVD sectors.
3.1.36. DVD-R (DVD Recordable) - A DVD medium that can be written once.
3.1.37. DVD-RAM (DVD-Random Access Memory) - A DVD that can be re-written.
3.1.38. DVD-ROM (DVD-Read Only Memory) - A standardized medium defined by the DVD specification
for recording digital data, including digital video movie data.
3.1.39. DVD+RW (DVD ReWritable) - indicates a DVD that can be re-written.
3.1.40. EAN (European Article Number) - Controlled by the EAN Council located at Rue des Colonies,
54-BTE8, 1000 Brussels, Belgium.
3.1.41. ECC (Error Correction Code) - A code for detecting and correcting errors.
3.1.42. EDC (Error Detection Code) - A code for detecting an error.
3.1.43. EFM – 8 bit to 14 bit modulation.
3.1.44. Field - A Field is a group of two or more contiguous bits. Fields containing only one bit are referred to
as the “named” bit instead of the “named” field.
3.1.45. Fixed Packet Track - a track that contains a TDB indicating that the track is a fixed track, and has
user packets of a fixed size specified in the TDB.
3.1.46. Format - The arrangement or layout of information on a medium.
3.1.47. Frame - A sector on CD media. Also the F field unit of a MSF CD address. The smallest addressable
unit.
3.1.48. Hex – Indicates a binary value represented in base 16. This value may extend across multiple bytes.
3.1.49. Hold track state - When a C/DVD device enters the hold track state the optical pick-up is
maintained at an approximately constant radial position on the media.
3.1.50. ID - A 4-byte field in the header of DVD sectors that contains sector information and a physical sector
number.
3.1.51. IED (ID Error Detection) - A code for detecting errors in an ID field.
3.1.52. Incomplete session - A session without Lead-in and Lead-out written.
3.1.53. Index - An index is a subdivision of a track.
3.1.54. Layer - The recorded information is in layers as seen from one side of a DVD Disc. There are single
and dual layer Discs.
4
BSR NCITS 333
3.1.55. Lead-in - On CD media it is the area that contains the TOC data and precedes each program area.
The main channel in the Lead-in area contains audio or data null information. This area is coded as
track zero. The Q Sub-channel in this area is coded with the Table of Contents information.
The DVD Lead-in area is the area comprising physical sectors 1.2 mm wide or more adjacent to the
inside of the Data area. The area contains the Control data and precedes the Data area.
3.1.56. Lead-out - On CD media it is the area that follows each program area. The main channel in the
Lead-out area contains audio or data null information. This area is coded as track AAh..
The DVD Lead-out area is the area comprising physical sectors 1.0 mm wide or more adjacent to the
outside of the data area in single layered disc for PTP (Parallel Track Path) disc. Or the area
comprising physical sectors 1.2 mm wide or more adjacent to the inside of the data area in layer 1 of
OTP (Opposite Track Path) disc.
3.1.57. L-EC (Layered Error Correction) - The second level of error correction used on CD data.
3.1.58. Logical Block - An Initiator addressable unit of data.
3.1.59. LBA (Logical Block Address) - The LBA defines a mapping mode to a linear address space.
3.1.60. Logical Unit - A physical or virtual peripheral device addressable through a target.
3.1.61. LUN (Logical Unit Number) - The address of a Logical Unit.
3.1.62. Magazine – A multiple disc unit.
3.1.63. Medium - A single Disc.
3.1.64. Middle Area - Area comprising physical sectors 1.0 mm wide or more adjacent to the outside of the
Data Area in OTP (Opposite Track Path) disc on both layers of DVD media.
3.1.65. MSF address (Minute/Second/Frame) - The physical address, expressed as a sector count relative
to either the beginning of the medium (absolute) or to the beginning of the current track (relative). As
defined by the CD standards, each F field unit is one sector; each S field unit is 75 F field units; each
M field unit is 60 S field units. Valid contents of F fields are binary values from 0 through 74. Valid
contents of S fields are binary values from 0 through 59. Valid contents of M fields are binary values
from 0 through 74.
3.1.66. OPC (Optimum Power Calibration) - a procedure performed by the device to calibrate laser power.
Values from this calibration are used for subsequent write operation.
3.1.67. OTP (Opposite Track Path) - A dual layer disc that has a Lead in, two separated user areas, Lead-
out, and a Middle area. The physical sector number (PSN) of layer 0 increases to the Lead-out and the
one of layer 1 that is complement of layer 0 address increases from the Lead-out to Lead-in.
3.1.68. output port - A means for connecting to data ports other than the Initiator interface.
3.1.69. PTP (Parallel Track Path) - A dual layer disc that has a Lead in, user area and Lead-out in each
layer respectively. The ID sector number of both layers increases to the Lead-out in parallel.
3.1.70. Packet - a set of recorded link, run-in, data, and run-out blocks. Typical packetis shown in Figure 11.
3.1.71. packet size - the number of Data Blocks in the packet.
3.1.72. packet track - a track written as a concatenation of a pre-gap, written as one or two packets, and
some non-zero number of user packets.
3.1.73. Physical Sector Number - A unique address assigned to a physical location and is not modifiable.
3.1.74. post-gap - A transition area located at the end of a data track.
3.1.75. pre-gap - A transition area located at the beginning of a data track.
3.1.76. Program Area(s) - a logical address space.
3.1.77. PMA (Program Memory Area) - Contains information about the recordings on a Recordable disc.
3.1.78. Regional Code - A value used to identify one or more regions of the world. Currently there are six
regions defined.
3.1.79. Region Playback Control (RPC) – Limits the playback of DVD-ROM content to specific regions of
the world.
3.1.80. relative MSF field - See MSF address definition.
3.1.81. RZone - An RZone is a logical subdivision of a DVD-R, similar to a Track on CD. See4.3.3.1..
5
BSR NCITS 333
3.1.82. Scramble Flag - An indication that there is scrambled data on the media.
3.1.83. Sector - In case of CD media, “Sector” refers to the data contained in one frame. In the CD-ROM
standard (IEC/ISO 10149) the term block is used for this unit.
In the case of DVD media, Sector is the smallest user addressable part of the media. The user data
contained within a sector is 2048 bytes.
3.1.84. Session - A contiguous area of the Disc that contains a Lead-in, Program Area, and Lead-out.
3.1.85. Single Sided - A single sided DVD disc has exactly one recorded or recordable side.
3.1.86. Small Frame - 1/98 of a frame.
3.1.87. Sub-channel - CD media have a main channel and a Sub-channel. The Sub-channel area has eight
parts called P, Q, R, S, T, U, V, and W. The Q Sub-channel contains information useful to the
controller and device, such as the control field and MSF addresses. The data rate of each Sub-
channel (P, Q, etc.) is 1/192nd of that of the main channel.
3.1.88. TOC Table of Contents - The TOC has information on the type of session and the starting address
of the tracks. This information is encoded in the Q Sub-channel in the Lead-in area.
3.1.89. Title Key - A value used during the scrambling process of movie data on DVD media.
3.1.90. Track Descriptor Block (TDB) - Contains information on the attributes of the current track.
3.1.91. Track - A logical sub-division of the media.
3.1.92. Track at Once - When a track, including its pre-gap, is written as a single packet.
3.1.93. track relative logical address - The value used to address logical blocks relative to the beginning
of a track.
3.1.94. transition area - Sectors at the beginning or end of tracks e.g. Pause Area, Pre-Gap, Lead-out,
Post-Gap.
3.1.95. UPC (Uniform Product Code) - Controlled by the UPC Council, located at 8163 Old Yankee Road,
Suite J, Dayton, Ohio 45459.
3.1.96. user packet - a packet that contains only user data blocks as the data blocks. User data blocks
consist of data transferred to the device during a write command.
3.1.97. writable disc - A disc that is blank, appendable, or contains an incomplete session.
3.1.98. Yellow book - ISO/IEC 10149, Information Technology-Data Interchange on Read-only 120 mm
Optical Data Discs (CD-ROM).
3.2. Conventions
Various conventions are used through out this standard and are identified in this sub-clause.
3.2.1. Recommended error code tables defined within each command sub-clause uses the following:
Errors shown in mixed case indicate all errors, in that class, are valid.
Errors shown in uppercase refer to the identified specific error condition.
3.2.2. Numbers that are not immediately followed by lowercase “b,” “h,” or “bcd” are decimal values.
Numbers immediately followed by lowercase “b” (xxb) are binary values.
Numbers immediately followed by lowercase “h” (xxh) are hexadecimal values.
Numbers immediately followed by lowercase “bcd” (xxbcd) are binary coded decimal values.
3.3. Keywords
Several keywords are used to differentiate between levels of requirements and options, as listed below.
3.3.1. expected - A keyword used to describe the behavior of the hardware or software in the design
models assumed by this standard. Other hardware and software design models may also be
implemented.
3.3.2. may - A keyword that indicates flexibility of choice with no implied preference.
3.3.3. shall - A keyword indicating a mandatory requirement. Designers are required to implement all such
mandatory requirements to ensure interoperability with other standard conforming products.
6
BSR NCITS 333
3.3.4. should - A keyword indicating flexibility of choice with a strongly preferred alternative. Equivalent to
the phrase “it is recommended.”
3.3.5. obsolete - A keyword indicating items that were defined in prior version of this standard are intended
to be removed from future version of this standard.
3.3.6. mandatory - A keyword indicating items required to be implemented as defined by this standard.
3.3.7. optional - A keyword that describes Features that are not required for compliance to this standard.
However, if any optional Feature defined is implemented, it shall be implemented as defined by this
standard.
3.3.8. reserved - A keyword referring to bits, bytes, words, fields and code values that are set-aside for
future standardization. Their use and interpretation may be specified by future extensions to this or
other standards. A reserved bit, byte, word, or field shall be set to zero, or in accordance with future
extension to this standard. The recipient shall not check reserved bits, bytes, words or fields. Receipt
of reserved code values in defined fields shall be treated as an error.
7
BSR NCITS 333
4. C/DVD Models
4.1. General
The following sub-clauses provide an overview of the operations and functionality of all CD and DVD types.
The M, S, and F fields are expressed as binary numbers. The values match those on the media, except for the
encoding.
NOTE: For a logical block size of 512 bytes, the MSF address returned is that for the physical block containing the
specified logical blocks.
8
BSR NCITS 333
4.1.4. RESETS
Within this standard there are three resets identified. These resets are named:
- Power-On Reset
- Hard Reset
- Device Reset
These resets are used differently in each physical interface referenced. For more information on the use in
ATA/ATAPI, SCSI, SBP-2, and FC-P see the appropriate Annexes on implementation notes.
4.1.4.1. Power-On Reset
When power is applied, the device executes a series of electrical circuitry diagnostics, resets Logical Unit
specific parameters (mode pages) to default values, and if media is present, may spin up and make the
Logical Unit ready for use. In addition, power management and key management are reset to their default
states.
4.1.4.2. Hard Reset
For each physical interface the detection of Hard Reset is different. The device executes a series of electrical
circuitry diagnostics, resets Logical Unit specific parameters (mode pages) to default values, and if media is
present, may spin up and make the Logical Unit ready for use. In addition power management and key
management are reset to their default states. The behavior of the Logical Unit when Hard Reset is received is
the same as for Power On Reset.
Hard Reset is used to reset devices or even a whole interface bus, not individual Logical Units.
4.1.4.3. Device Reset
For each physical interface the detection of Device Reset is different. The Device Reset is used to bring a non-
responding Logical Unit into an operable state. Device Reset is different from Power On or hard Reset. With
the Device Reset the parameters being used by the Logical Unit are not set to the defaults. In some cases this
may not be possible and the Logical Unit may need to reset to the default conditions. If a reset to default
conditions occurs as a result of a Device Reset, a Unit Attention and Power Management Event Notification
shall be generated. Logical Unit should:
- Reset Initiator interface circuitry.
- Perform hardware initialization and device-internal diagnostics only if necessary.
- Do not revert to the default conditions, Logical Unit Number or TOC information.
- Stay in the current Power State.
9
BSR NCITS 333
In the case of an invalid logical block address, the sense data information field shall be set to the logical block
address of the first invalid address.
In the case of an attempt to read a blank or previously unwritten block, the sense data information field shall
be set to the logical block address of the first blank block encountered. The data read up to that block shall be
transferred.
There are other special error situations for CD devices. In the following cases the sense key shall be set to
ILLEGAL REQUEST and the additional sense code set to END OF USER AREA ENCOUNTERED ON THIS
TRACK:
a) a pre-gap area is encountered (i.e. a block with index equal to 0).
b) a post-gap area is encountered.
c) The information type (data vs. audio) changes.
When the command is other than an audio playback operation, the command shall be terminated with CHECK
CONDITION status if the Logical Block Address requested is not within a data track. The sense key shall be
set to ILLEGAL REQUEST and the additional sense code set to ILLEGAL MODE FOR THIS TRACK. This
applies to audio-combined and audio media.
10
BSR NCITS 333
1. If a deferred error can be recovered with no external system intervention, a deferred error indication shall
not be posted unless required by the error handling parameters of the MODE SELECT command. The
occurrence of the error may be logged if statistical or error logging is supported.
2. If a deferred error can be associated with a particular function or a particular subset of data, and the error is
either un-recovered or required to be reported by the mode parameters, a deferred error indication shall be
returned to the Initiator.
Deferred errors may indicate that an operation was unsuccessful long after the command performing the data
transfer returned GOOD status. If data that cannot be replicated or recovered from other sources is being
stored using buffered write operations, synchronization commands should be performed before the critical
data is destroyed in the Initiator. This is necessary to be sure that recovery actions can be taken if deferred
errors do occur in the storing of the data.
11
BSR NCITS 333
12
BSR NCITS 333
13
BSR NCITS 333
14
BSR NCITS 333
Over the 98 Small Frames, the Sub-channel is separated into bytes associated with the Sub-channel letter.
The Sub-channel sync bytes are not a part of Sub-channel data, so there are 96 bytes of Sub-channel. For
example, the P Sub-channel is separated into bytes as shown in Table 6.
15
BSR NCITS 333
16
BSR NCITS 333
Given this, CD frames are addressed in terms of audio play time, i.e. Minute, Second, and Frame (MSF). The
traditional value of 60 seconds per minute is followed.
In all cases, when an address appears as part of the CD format, it is in MSF format using 2 bcd digits per time
unit. This limits the time addressing on the disc to 99bcd minutes. The representation for a time based address
is MM:SS:FF, where MM = minutes, SS = seconds, and FF = frames.
Addressing in the program area begins with 00:00:00. This advances up through the Lead-out.
The last frame in the Lead-in is 99:59:74 and decreases as the physical track is followed toward the center of
the disc. The Lead-in is typically 3 to 4 minutes in length.
4.2.2.3. Q Sub-channel
Since an audio CD frame has no address field built into the main channel, the address is carried in the Q Sub-
channel. Q Sub-channel may also carry information about the logical structure of the disc, disc identification,
and music track identification. The general format of a Q Sub-channel record is shown in Table 7.
Because the sync bits and the two bytes of CRC are overhead, the valid Q information length is actually 10
bytes.
17
BSR NCITS 333
ADR DATA-Q
0001 TNO INDEX MIN SEC FRAME ZERO AMIN ASEC AFRAME
ADR DATA-Q
0010 N1 N2 N3 N4 N5 N6 N7 N8 N9 N1 N1 N1 N1 ZERO AFRAME
0 1 2 3
Figure 4 - Q Sub-channel Mode-2 Format
The DATA-Q field is 52 bits long, organized as 13 nibbles (N1 – N13), each carrying a single BCD digit. The
resulting BCD string is the Media Catalog Number (MCN). The catalog number does not change on a disc. In
case no catalog number is encoded according to the UPC/EAN code, N1 - N13 are all zero, or Mode-2 can be
deleted from the disc.
The ZERO field contains 12 bits of zero. (000000000000b)
AFRAME is as defined in Q Sub-channel Mode-1 (two BCD digits running from 00 to 74). During the Lead-in
(TNO = 00), these 8 bits are zero.
18
BSR NCITS 333
ADR DATA-Q
0011 I1 I2 I3 I4 I5 0 0 I6 I7 I8 I9 I10 I11 I12 ZERO AFRAME
Figure 5 - Q Sub-channel, Mode-3 Format
The Country-Code is given in fields I1 through I2, the owner-code in fields I3 - I5, The year of recording in
fields I6 - I7 and the I8 through I12 contain the serial number of the recording. The characters I1 - I5 are 6-bit
cells, coded as shown in Table 8. The characters I6 - I12 are coded in 4 bit BCD numbers.
I1 - I12 define the ISRC.
The ZERO Field contains 4 bits of zero. (0000b)
AFRAME is defined in Q Sub-channel Mode-1 Q (two BCD digits running from 00 to 74). During the Lead-in
area (TNO = 00), these 8 bits are zero.
19
BSR NCITS 333
20
BSR NCITS 333
Mode-1 Q
The Mode-1 Q format during the Lead-in is shown in Figure 6. TNO is always 00 during the Lead-in and ZERO
is always 00 during the Lead-in. Variations of Mode-1 Q are defined by the value of POINT.
ADR DATA-Q
0001 TNO=00 POINT MIN SEC FRAME ZERO=00 PMIN PSEC PFRAME
POINT=A0h
MIN, SEC, FRAME = Running time in the Lead-in, encoded as bcd
PMIN = the track number of the first track in the program area, encoded as BCD
PSEC = the program area format:
00h - CD-DA or CD-ROM
10h - CD-I
20h - CD-ROM-XA
PFRAME = 00
POINT=A1h
MIN, SEC, FRAME = Running time in the Lead-in, encoded as BCD
PMIN = the track number of the last track in the program area, encoded as BCD
PSEC = 00
PFRAME = 00
POINT=A2h
MIN, SEC, FRAME = Running time in the Lead-in, encoded as BCD
PMIN, PSEC, PFRAME = the start time, encoded as BCD, of the Lead-out area.
Mode-2 Q
Mode-2 Q Sub-channel is defined the same in the Lead-in, program area and Lead-out.
Mode-5 Q
Mode-5 Q Sub-channel provides additional information about CD-R and CD-RW recordings. The format of a
Mode-5 Q Sub-channel is shown in Figure 7. TNO is always 00 during the Lead-in. Variations of Mode-5 Q are
defined by POINT.
ADR DATA-Q
0101 TNO POINT MIN SEC FRAME ZERO PMIN PSEC PFRAME
Figure 7 - Q Sub-channel Mode-5 Format recorded in Lead-in
POINT= B0h(This identifies a multi-session disc)
MIN, SEC, FRAME = the start time for the next possible session’s program area. A final
session is indicated when either the Mode-5 point B0 is absent or when
MSF = FF:FF:FF.
21
BSR NCITS 333
00h FF FF FF FF FF FF FF FF FF FF 00h
h h h h h h h h h h
22
BSR NCITS 333
The synchronization field is followed by a 4 byte header defined in Table 9. After the sync pattern the
remaining bytes of the data block are scrambled with a feedback mechanism. This is done with a 15-bit shift
15
register fed back according to the polynomial X +X+1.
23
BSR NCITS 333
The coverage of the CRC is the sync pattern, Header, and the User Data.
The coverage of Level 3 P is Header, User Data, CRC, and the zero fill.
The coverage of Level 3 Q is Header, User Data, CRC, the zero fill, and the P parity.
Block Format for Mode 2 formless Data
The Mode 2 formless block format (Table 12) is rarely used. There is no defined CRC or additional correction.
24
BSR NCITS 333
25
BSR NCITS 333
In the area that is expected to be the disc’s Lead-in, additional information is interleaved between positional
ATIP frames. The additional information provided is:
• First possible start time for disc Lead-in (TOC)
• Last possible start time for disc Lead-out
• Special information about recording permissions
• Power and speed requirements for recording the medium
• CD-R vs. CD-RW medium
4.2.2.8.1. CD-R/RW Disc Management
CD-R/RW discs have two additional areas prior to the first Lead-in, the Power Calibration Area (PCA), and the
Program Memory Area (PMA).
PCA - The Power Calibration Area (PCA) is present only for CD-R and CD-RW media for the purpose of write
power calibration. The PCA is divided into two areas: the test area and the count area. The test area is divided
into 100 calibration partitions. The count area is an accounting area for recording usage of the test area.
PMA - The Program Memory Area is present only for CD-R and CD-RW media for the purpose of accounting
for the usage of user data areas on the medium. This information is contained only within the Sub-channel of
the PMA frames. The main channel content is not defined within the PMA.
Update the PMA means to update the PMA on the disc or to update the PMA Cache, that shall be written to
the PMA on the disc prior to the removing the disc from the Logical Unit. PMA Caching is vendor specific.
26
BSR NCITS 333
26mm
PCA Count
Special optical sensor used for this location
Center
User Blocks
ADR DATA-Q
0001- TNO POINT MIN SEC FRAME ZERO PMIN PSEC PFRAM
0110 E
Figure 10 – PMA, Q Sub-channel
Mode-1 Q Sub-channel in the PMA is a TOC item:
TNO = 00
POINT =Track number encoded as two BCD digits.
ZERO = 00-09bcd is a label of the frame number in the PMA unity
MIN, SEC, FRAME = Track stop time in 6 BCD digits.
PMIN, PSEC, PFRAME = Track start time in 6 BCD digits.
Mode-2 Q Sub-channel in the PMA is a Disc Identification item (optional):
TNO = 00
POINT = 00
ZERO = 00-09bcd is a label of the frame number in the PMA unity
MIN, SEC, FRAME = Disc identification as a 6 BCD digit number.
PMIN = 00
PSEC = Sessions format: 00 - CD-DA or CD-ROM, 10 - CD-I, 20 - CD-ROM-XA
PFRAME = 00
Mode-3 Q Sub-channel in the PMA is a Skip track item (optional, audio only):
TNO = 00
POINT = 01-21bcd is the mode-3 index of this item
ZERO = 00-09bcd is a label of the frame number in the PMA unity
27
BSR NCITS 333
Link Run-in Run-in Run-in Run-in User Data Blocks Run-out Run-out
Block Block 1 Block 2 Block 3 Block 4 Block 1 Block 2
Figure 11 – Packet Format
28
BSR NCITS 333
Blocks are uniquely identified by bits 5, 6, and 7 of the block’s mode byte (Table 17).
See sub-clause 4.2.2.7. for a detailed definition of the Mode Byte. Main channel user data should be all zeros.
Only entire packets may be rewritten on CD-RW media.
There are 2 types of recording on CD-R: Uninterrupted and Incremental. Incremental recording requires
linking, whereas uninterrupted does not.
Disc At Once is the only type of uninterrupted recording and is a special case of Session At Once. The
recording begins at the start of the Lead-in and stops only when the last block of the Lead-out is written. The
PMA is not written. No linking is required.
There are 5 types of incremental recording:
• Session At Once - The recording begins at the start of the Lead-in of the next session and stops only when
the last block of that session’s Lead-out is written. The PMA is constructed and written as a separate write
action. Linking between sessions is required.
• Reserve Track - User data is not necessarily written. The PMA is written for the purpose of defining a new
track.
• Track At Once - A single packet that includes the pre-gap of the track and all of the track’s user data.
• Variable Packet - A variable number of user blocks is written between data linkage blocks. A variable
packet shall be a part of the user data area of a track.
• Fixed Packet - A fixed number of user blocks is written between the user blocks. A fixed packet shall be a
part of the user data area of a track.
29
BSR NCITS 333
30
BSR NCITS 333
Fixed Packet size is filled with FFFFFFh whenever the recording method is not fixed packet.
31
BSR NCITS 333
32
BSR NCITS 333
33
BSR NCITS 333
34
BSR NCITS 333
Physical
Block
Number
Towards OD
End PSN (0): The end Physical Block number of Data Area of Layer 0
Volume Space
35
BSR NCITS 333
Towards OD
End PSN (0): The end Physical Block number of Data Area of Layer 0
030000h PSN End PSN (0) 030000h PSN End PSN (1)
Volume Space
Figure 13 – Physical and Logical Layout of Parallel Track Path DVD-ROM Media
36
BSR NCITS 333
Towards OD
End PSN (0): The end Physical Block number of Data Area of Layer 0
End PSN (0): The number calculated so that each bit of the End PSN (0) is inverted.
End PSN (1): The end Physical sector number of Data Area of Layer 1
030000h PSN End PSN (0) End PSN (0) PSN End PSN (1)
Volume Space
Figure 14 – Physical and Logical Layout of Opposite Track Path DVD-ROM Media
37
BSR NCITS 333
R-Information
Area Data Area
Physical
Block
Number
24FA0h
223B0h
20800h
Diameter
Towards OD
(inner) (outer)
Volume Space
38
BSR NCITS 333
Physical
Block
Number
Toward the
Outer Diameter
End PSN (0): The end Physical Block number of Data Area of Layer 0
Volume Space
39
BSR NCITS 333
0 2FFFF h 0 30 00 0 h 0 31 00 0 h
End P SN (0 ) = 16 B 47 Fh
T ow ar ds O D
D efe ct C o ntr ols are n on u ser ad dr essa ble b lock s, u sed for drive co ntrolled defe ct m ana g em e nt.
T hese blo cks co ntain D efe ct m a nag em ent A reas (D M A s). D efect co ntr ols be gin s 0 3 00 0 0h, this
is th e data a rea for D V D -R O M a nd for D V D -R . T he data area begins 03 1 00 0h for D V D -R A M .
D ata A r ea
0 31 00 0 h PSN En d PSN (0 ) = 16 B 47 Fh
(in ner)
Spar e G u ard Spare G u ard G u ard U ser A r ea 23 Spar e
U ser A r ea 0 U ser A r ea 1
A rea 0 A rea A rea 1 A rea A rea A rea 2 3
0 LB A Last LB A = 12 9 98 Fh
V olu m e S pac e
40
BSR NCITS 333
4.3.3.2. Border-in/Border-out
The DVD-R specification describes entities called Lead-in, Lead-out, Border-in and Border-out. DVD-R always
has zero or one Lead-in and zero or one Lead-out. The Lead-in, if recorded, is always at the beginning of the
disc and the Lead-out, if recorded, is always at the end of the disc. No data can be recorded beyond the
Lead-out. The information recording area is a collection of Lead-in/Border-in, Bordered Areas, and Border-out.
This area, when written, is called a complete session.
If intermediate interchangeability is desired before recording the Lead-out, a Border-out is written in its place.
When additional recording is to be done, a Border-in is recorded between the last Border-out and the new
data.
If only a Border-in and Border-out are to be written (after incrementally recording data), the Initiator shall set
the Multi-session field of the Write Parameters page to 11b. If set to 11b, and insufficient space exists on the
medium for another Border, the Logical Unit shall permanently close the medium by recording a Lead-out. If it
is desired to permanently close a disc, the Multi-session field shall be set to 00b or 01b. The Multi-session
field is ignored on DVD-R when the Write Type is set to Session at Once, and no next Border is possible.
Within this standard Multi-session is used instead of Multi-Border, incomplete session is used instead of
incomplete Border, complete session is used instead of complete Border for DVD-R Logical Units.
4.3.3.3. RMA Caching
RMA area is the Recording Management Area for DVD-R media. To Update the RMA means to update the
RMA on the disc or to update the RMA Cache, that shall be written to the RMA on the disc prior to the
removing the disc from the Logical Unit. RMA Caching is vendor specific.
41
BSR NCITS 333
192 rows of
Sector Data from 16 Sectors, 2064 bytes each organized Row Parity,
as 192 rows of 172 bytes each. 10 bytes each
52 302 12
ED C
42
BSR NCITS 333
172 Bytes
4 Bytes 2 Bytes 6 Bytes
Data ID IED CPR_M AI User Data 160 bytes (D0-D159)
12 Rows
4 Bytes
Data ID IED
1 Byte 3 Bytes
The Data Field Number consists of the PSN and other data. See Table 21.
43
BSR NCITS 333
44
BSR NCITS 333
2F000h
Reference Code Reference Code Reference Code
2F010h 1 ECC B lock
2 ECC B lock s 2 ECC B lock s
2F020h
2F200h
Control Data Control Data Control Data
192 ECC Block s 192 Block s 192 Block s
2FE00h
Reference Code contains repetition of the Data Symbol “172” with added scrambled data.
Control Data comprises repetition of a content of 16 sectors (one EC C Block)
45
BSR NCITS 333
46
BSR NCITS 333
Table 25, Table 26, and Table 27, and Table 28 defines the format unique descriptors for each media type.
47
BSR NCITS 333
48
BSR NCITS 333
For DVD-RAM, the end PSN is the PSN for the last spare sector of the last zone. It should not be used for
counting user capacity.
For DVD+RW, the end PSN should not be used for counting user capacity. Blocks in the Data Area may be
spared or set aside for replacement.
49
BSR NCITS 333
Initial State
Hold 1
Note: Initiator must reset a non-responding authentication process in the Logical Unit by invalidating the
corresponding AGID. The Initiator may detect lost grants by refusal of the Start Authentication Process operation
50
BSR NCITS 333
Power-on Reset,
Hard Reset READ DVD STRUCTURE Command with
Authentication the Format field set to 02h, completes without
Not VALID an error (Secured Disc Key is exchanged).
(ASF = 0)
Authentication
Power-on Reset, Valid
Hard Reset, Eject
51
BSR NCITS 333
52
BSR NCITS 333
In the LAST CHANCE state, the Logical UnitRegion may be changed by one of the two methods specified.
See 4.3.7.6.1., and 4.3.7.6.2. When using the command method with a disc, the inserted disc shall have the
same single Region Code value as the Preferred Logical UnitRegion Code specified in the SEND KEY
Command. After the successful execution of the Logical UnitRegion change, the region setting counter shall
be zero and the Logical Unit shall enter into the PERMANENT state.
In the PERMANENT state, the user cannot change the Logical UnitRegion.
4.3.7.6.1. Command method for changing the Logical UnitRegion with a CSS enabled Disc
To set the Logical UnitRegion, the procedure shall be executed as follows;
1. Insert a disc having the requested Region,
2. Issue a SEND KEY Command with the Key Format = 000110b. The requested Region Code value
shall be specified in the Preferred Logical UnitRegion Code field.
When the Logical Unit receives the SEND KEY Command correctly, the Logical UnitRegion is changed to the
requested region. If the disc does not have the same region code value as the Preferred Logical UnitRegion
Code specified in the SEND KEY Command, then the command shall be terminated with CHECK
CONDITION Status, sense code ILLEGAL REQUEST and an additional sense code of MEDIA REGION
CODE IS MISMATCHED TO LOGICAL UNIT REGION.
4.3.7.6.2. Setting Disc method for changing the Logical UnitRegion
The Logical UnitRegion, may be set by inserting a special disc that contains a specific region code. This
special disc does not require any command intervention.
4.3.7.7. Limits on Logical UnitRegion Changes
Any of the methods defined in this specification may be used up to five times to change a Logical Unit’s region.
If the new region is the same as the old region, the region setting process shall be treated as if it had not
occurred.
If an attempt by the user is made to change the Logical UnitRegion more than five times, the SEND KEY
Command shall terminate with CHECK CONDITION Status, sense key set to ILLEGAL REQUEST and
additional sense code set to LOGICAL UNITREGION MUST BE PERMANENT/REGION RESET COUNT
ERROR.
For more information on the region code setting process, see Figure 25.
53
BSR NCITS 333
Manufacturer or Vendor
NONE State
Initial
“No Logical Unit Region”
SEND KEY Command with a requested
region is issued, or Setting Disc is inserted
n=5
SET State
n=1
PERM state
54
BSR NCITS 333
Load/Unload CD Mechanism
Commad
CD Mechanism
Load/Unload
Command
55
BSR NCITS 333
complexity to the laser mechanism to be able to position it on either the bottom or top of the media. The
second approach is to flip the media over.
For a Logical Unit that supports changing sides (see Table 137), the number of Slots reported shall be even,
and every other slot shall be an alternating side.
4.4.1.1. Side Changing Only Logical Unit
A Logical Unit that is capable of changing the side of the Disc, but does not have separate Slots from the
playing position, reports that it has a Mechanism type that is not a changer, but also reports Side Change
Capable. This style of Logical Unit will still make use of the LOAD/UNLOAD command to change the currently
selected side. The Logical Unit shall report two slots available.
When the Logical Unit can only change sides, and not discs, it does not perform any action. This will appear to
the Initiator as a Logical Unit with a Delayed Load type of operation.
A DVD Logical Unit that supports changing sides will not be able to report if there is actually data on both sides
until each side has been read.
4.4.1.2. Attention Conditions for Sided Discs
Devices that support changing sides shall only report UNIT ATTENTION with sense code NOT READY TO
READY, MEDIUM MAY HAVE CHANGED for changes that involve movement of a Disc in/out of the Logical
Unit. Changes of side shall not generate UNIT ATTENTION Conditions.
4.4.1.3. Error Conditions for Sided Discs
Devices that support changing sides of a Disc shall use the Sense Key NOT READY, Additional Sense code
NO REFERENCE POSITION FOUND, to report when the currently selected side does not contain valid data.
56
BSR NCITS 333
4.4.1.4. Initialization
The Changer shall perform its initialization routine at power on or receipt of a hardware reset from the Initiator.
“Initializing Changer” is a process that refers to gathering the information that is necessary to respond to the
MECHANISM STATUS Command. If a changer is in the process of initializing when it receives a
MECHANISM STATUS Command, it will respond immediately and provide no slot table information (Only the
Header).
PO R
No P o w er O n
C a rtrid g e C a rtridg e L oa d e d Initia li za tion
P re se nt
R e set
(S tat e is In itia li za tin g)
E je ct C a r tri dg e
C o m m a nd R e set a nd
L oa d D isc 0 D isc 0 is “ U N IT A T T E N T IO N ”
pr e sen t I f a D isc is a d d e d or
re m ov e d
D isc 0 D isc 0
is pre se nt n ot pr e sent
R ea d T O C &
M a k e D i sc
R ea d y to u s e
Idl e bu t n o D i sc, D ev ic e
w ill b e N O T R E A D Y bu t
th e C ha ng er S tat e is W a it for G e n erat e an “ U N IT A T T E N T IO N ”
“ R ea dy” D isc C ha ng e for t h e r ea dy to not read y
or a L oa d
Com mand L oa d
E j ect S ing le D i sc C o m plete
“ U N IT A T T E N T IO N ” C o m m a nd
I f a D isc is a d d e d or re m o v e d
L oa d
M o v e D is c
C o m m a nd
to e xterna l
P o sition
U nl oa d
C o m plete
M ov e
U nl oa d
cu rre nt D i sc C o m m a nd
fr o m P lay in g
L oa d P o sition to
C o m m a nd S to ra g e M ove
S p e ci fie d S lot
U nloa d into th e
(S ta te is U nloa d in P r o gr ess P lay P o sitio n
L oa d
(S ta te is L oa d in P ro gr e ss
57
BSR NCITS 333
If the device supports delayed loading and the selected disc is not in the play position, then the following
commands shall load the selected disc into the play position before execution of the command. ( See Table
31)
58
BSR NCITS 333
If the device supports delayed loading and the selected disc is not in the play position, then the following
commands shall not move the selected disc into the play position. (See Table 32)
In the case of an invalid Slot number, the sense data information field shall be set to the Slot number of the
first invalid address.
Attempts to eject a Disc if the changer type is magazine and there is a Disc in the playing position shall be
rejected with a CHECK CONDITION status and sense key set to ILLEGAL REQUEST, and additional sense
code set to MECHANICAL POSITIONING OR CHANGER ERROR.
59
BSR NCITS 333
5.2. FEATURES
To determine the Features supported by the Logical Unit, the Initiator shall issue a GET CONFIGURATION
command (See sub-clause 6.1.4.). In response to this GET CONFIGURATION command the Logical Unit shall
respond with data as defined in Table 34. Response data consists of a header field and zero or more
variable length Feature descriptors.
60
BSR NCITS 333
The Data Length field indicates the amount of data available given a sufficient allocation length following this
field. This length shall not be truncated due to an insufficient Allocation Length. If the Data Length is greater
than 65,530 bytes, multiple GET CONFIGURATION commands with different Starting Feature Numbers will be
required for the Initiator to read all configuration data. This field is adjusted as appropriate for the given
Starting Feature Number.
The Current Profile field shall indicate the Logical Unit’s current Profile. The Logical Unit shall choose the most
appropriate current Profile from the list of Profiles (see Table 40) with their Current bit set. If there are no
Profiles currently active, this field shall contain zero.
Each Feature supported by a Logical Unit shall be described by a Feature Descriptor. All Feature descriptors
shall be a multiple of four bytes. The Feature Descriptor(s) generic format returned is defined in Table 36.
Each individual Feature description is defined in the appropriate sub-clause.
The Feature Code field shall identify a Feature supported by the Logical Unit.
61
BSR NCITS 333
62
BSR NCITS 333
63
BSR NCITS 333
64
BSR NCITS 333
The Profile Number identifies a Profile the Logical Unit conforms to, see Table 40.
The CurrentP bit, when set to one, shall indicate that this Profile is currently active. If no medium is present, no
Profile should be active. Multifunction devices shall select the most appropriate Profile(s), if any, to set as
current. The most appropriate current Profile is also reported in the Feature Header (See Table 35).
65
BSR NCITS 333
66
BSR NCITS 333
67
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 42.
68
BSR NCITS 333
Support, for this Feature, is enabled using the PREVENT/ALLOW command (Persistent Bit), and the media
status is retrieved using the GET EVENT/STATUS NOTIFICATION command.
The Feature descriptor response data to be returned to the Initiator is defined in Table 45.
69
BSR NCITS 333
If a changer type Logical Unit uses media status operation, it shall use the following variations. If the changer
Logical Unit supports individual slot load and unload capability, the slot number(s) exhibiting the media status
change shall be reported in the slot fields of the Media Status Event Data. If the changer Logical Unit uses a
magazine load mechanism, the slot fields shall be set to the start and end slot numbers present in the
magazine.
For non-immediate GET EVENT/STATUS NOTIFICATION commands, the Initiator shall use exactly one GET
EVENT/STATUS NOTIFICATION request for the entire changer Logical Unit. The Logical Unit shall respond
as indicated in the Asynchronous Operation section above, indicating the slot information in the Request
Sense Data as described above.
This Feature identifies a Logical Unit that has a medium that is removable. The Feature descriptor response
data to be returned is defined in Table 47.
70
BSR NCITS 333
insertion of the media. When set to one, the Prevent Jumper is not present. The Logical Unit shall power up to
the prevent state (locked) and shall not accept new media or allow the ejection of media already loaded until a
PREVENT/ALLOW MEDIUM REMOVAL (allow) command is issued. The Pvnt Jmpr bit shall not change state,
even if the physical jumper is added or removed during operation. Logical Units that do not have a Prevent
Jumper available should set this bit to 0 to indicate that the Logical Unit behaves as described for a jumper
being present.
The Lock bit, when set to zero, shall indicate that the medium cannot be locked into the Logical Unit. When set
to one, shall indicate that the PREVENT/ALLOW MEDIUM REMOVAL command is capable of actually locking
the media into the Logical Unit.
71
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 50.
There is no requirement that the addresses, in sequences of reads, occur in any particular order.
The Feature Code field shall be set to 0010h.
The Version Field is defined in sub-clause 5.2.1.
The Persistent bit shall be defined as in sub-clause 5.2.2. This bit shall be set to zero if the medium is
removable.
The Current bit shall be defined as in sub-clause 5.2.3. This bit shall be set to zero if random readable media
is not present.
The Additional Length field shall be set to 8.
The Logical Block Size shall be set to the number of bytes per logical block.
The Blocking field shall indicate the number of logical blocks per device readable unit. For most hard disks,
this value is 1. For DVD devices, this number is 10h.
If there is more than one Blocking on the medium possible, the Blocking field shall be set to zero. See the
READ TRACK INFORMATION Command for more information.
The PP (Page Present) bit, when set to zero, shall indicate that the Read/Write Error Recovery page may not
be present. When set to one, shall indicate that the Read/Write Error Recovery page is present.
72
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 52.
The Feature descriptor response data to be returned to the Initiator is defined in Table 54.
Table 54 - CD Read Descriptor Format
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) Feature Code = 001Eh
1 (LSB)
2 Reserved Version Persistent Current
3 Additional Length = 04h
–4 C2 Flag CD-
Text
5 Reserved
6 Reserved
7 Reserved
73
BSR NCITS 333
The Persistent bit shall be defined as in sub-clause 5.2.2. This bit shall be set to zero if the medium is
removable.
The Current bit shall be defined as in sub-clause 5.2.3. This bit shall be set to zero if CD media is not present.
The Additional Length field shall be set to 04h.
The C2 Flag, when set to one, indicates the Logical Unit supports the C2 Error Pointers. When set to zero the
Logical Unit does not support C2 Error Pointers.
The CD-Text bit, when set to one, indicates the Logical Unit supports Format Code 5h of the READ
TOC/PMA/ATIP command. When set to zero, CD-Text is not supported.
The Feature descriptor response data to be returned to the Initiator is defined in Table 56.
74
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 58
75
BSR NCITS 333
The PP (Page Present) bit, when set to zero, shall indicate that the Read/Write Error Recovery page may not
be present. When set to one, shall indicate that the Read/Write Error Recovery page is present.
The Feature descriptor response data to be returned to the Initiator is defined in Table 61
76
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 63.
77
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 65
78
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 67.
79
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 70.
80
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 73.
81
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 76.
82
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 81.
83
BSR NCITS 333
The SAO bit shall indicate that the Logical Unit can record using the Session at Once write type.
The Raw MS bit shall indicate that the Logical Unit can record multi-session in raw mode.
The Raw bit shall indicate that the Logical Unit can record using the raw write type.
The Test Write bit shall indicate that the Logical Unit can perform test writes.
The CD-RW bit shall indicate that the Logical Unit can overwrite previously recorded data.
The R-W bit shall indicate that the Logical Unit can record the R-W Sub-channels with user supplied
information.
The Maximum Cue Sheet Length field indicates the maximum length of a Cue Sheet that can be accepted by
the Logical Unit for Session at Once recording. If the SAO bit is zero, this field shall be set to zero.
The DVD-R Write Feature descriptor response data to be returned to the Initiator is defined in Table 84.
84
BSR NCITS 333
The Persistent bit shall be defined as in sub-clause 5.2.2. This bit shall be set to zero if the medium is
removable.
The Current bit shall be defined as in sub-clause 5.2.3. This bit shall be set to zero if DVD-R media is not
present.
The Additional Length field shall be set to 04h.
The BUF bit, when set to one, indicates the Logical Unit can perform Buffer Under-run Free recording.
The Test Write bit, when set to zero, shall indicate that the Logical Unit is not capable of performing test writes.
When set to one, the Logical Unit shall not be capable of performing test writes.
The Feature descriptor response data to be returned to the Initiator is defined in Table 87.
85
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 89.
86
BSR NCITS 333
A Logical Unit without a CD-Audio output shall respond to a PLAY AUDIO command, that has a transfer length
of zero, with CHECK CONDITION status, and set the sense key to ILLEGAL REQUEST. This behavior allows
an Initiator to determine if a CD-Audio analog output is supported.
The Feature descriptor response data to be returned to the Initiator is defined in Table 92.
87
BSR NCITS 333
The Number of Volume Levels shall indicate the number of discrete volume levels supported by the Logical
Unit. If the Logical Unit supports only turning audio on and off, the Number of Volume Levels field shall be set
to 2.
The Feature descriptor response data to be returned to the Initiator is defined in Table 94.
Logical Units that support queuing shall support Event Notification Class 6, If queuing is not supported, a
CHECK CONDITION status with a sense code of ILLEGAL REQUEST and an ASC of INSUFFICIENT TIME
FOR OPERATION” shall be supported.
Event Notification Class 6 shall be supported if queuing is supported.
88
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 96.
The Feature descriptor response data to be returned to the Initiator is defined in Table 98.
89
BSR NCITS 333
The Feature descriptor response data to be returned to the Initiator is defined in Table 100.
90
BSR NCITS 333
The Serial Number shall be ASCII graphic codes (i.e. codes 20h - 7Eh). Any unused bytes in the Serial
Number shall
be padded with spaces (20h). There should not be more than three pad bytes.
n*4 + 4 (MSB)
n*4 + 5 Supported DCB entry n
n*4 + 6
n*4 + 7 (LSB)
91
BSR NCITS 333
92
BSR NCITS 333
93
BSR NCITS 333
94
BSR NCITS 333
95
BSR NCITS 333
96
BSR NCITS 333
97
BSR NCITS 333
Table 114 - Mandatory Features for Logical Units Not Conforming to a Standard
Profile
Feature Feature Name Description Sub-Clause
Number
0000h Profile List A list of all Profiles supported by the device 5.3.1.
0001h Core Basic Functionality 5.3.2.
98
BSR NCITS 333
99
BSR NCITS 333
100
BSR NCITS 333
When using the MODE SENSE command, the mode data length field specifies the length in bytes of the
following data that is available to be transferred. The mode data length is the total byte count of all data
following the mode data length field. When using the MODE SELECT command, this field is reserved.
The block descriptor associated with the Mode Select and Mode Sense commands is used for legacy system
support for SCSI systems. If supported, block sizes (see Table 119.) shall include 2048 and may include 512,
2056, 2324, 2332, 2336, 2340, 2352, 2368, and 2448 bytes. Table 119 shows the implementation of the
various block sizes. These definitions apply for reading with the READ (XX) commands. Other block sizes are
allowed and the contents of the blocks are not specified by this specification.
101
BSR NCITS 333
102
BSR NCITS 333
reallocation of a logical block has been performed. For CD media this capability is used to report when the
Layered Error correction has been used to recover the data. Again as the CIRC is mandatory for recovery of
data it shall not cause recovered errors to be reported.
A Disable Transfer on Error (DTE) bit of one indicates that the Logical Unit shall terminate the data transfer to
the Initiator upon detection of a recovered error. A DTE bit of zero indicates that the Logical Unit shall not
terminate the data transfer upon detection of a recovered error.
A Disable Correction (DCR) bit of one indicates that error correction codes shall not be used for data error
recovery. A DCR bit of zero allows the use of error correction codes for data error recovery.
As an example, an interpretation of the bits 5-0 in the Error Recovery Parameter byte for CD-ROM Logical
Units is given in Table 121.
The Read Retry Count field specifies the number of times that the controller shall attempt its read recovery
algorithm.
The Write Retry Count field specifies the number of times that the controller shall attempt its write recovery
algorithm. This may not have any affect if the Logical Unit does not support read after write operations.
A CIRC Recovered Data Error is defined as a block that the CIRC based error correction algorithm was
unsuccessful for a read attempt, but on a subsequent read operation no error was reported. The number of
subsequent read operations is limited to the read retry count. Layered error correction was not used.
A CIRC Un-recovered Data Error is defined as a block that the CIRC based error correction algorithm was
unsuccessful on all read attempts up to the read retry count. Layered error correction was not used.
An L-EC Recovered Data Error is defined as a block that the CIRC based error correction algorithm was
unsuccessful, but the layered error correction was able to correct the block within the read retry count.
An L-EC Un-correctable Data Error is defined as a block that could not be corrected by layered error correction
within the read retry count.
103
BSR NCITS 333
104
BSR NCITS 333
105
BSR NCITS 333
106
BSR NCITS 333
107
BSR NCITS 333
As an example, an interpretation of the bits 5-0 in the Error Recovery Parameter byte for DVD Logical Units is
given in Table 122
The Read Retry Count field specifies the number of times that the Logical Unit shall attempt its read
recovery algorithm.
The Correction Span field should be set to zero.
The Head Offset Count field should be set to zero.
The Data Strobe Offset Count field should be set to zero.
The Write Retry Count field specifies the number of times that the Logical Unit shall attempt its write
recovery algorithm. This may not have any affect if the Logical Unit does not support read after write
operations.
The Recovery Time Limit field should be set to zero.
A CIRC Recovered Data Error is defined as a block for which the CIRC based error correction algorithm was
unsuccessful for a read attempt, but on a subsequent read operation no error was reported. The number of
subsequent read operations is limited to the read retry count. Layered error correction was not used.
108
BSR NCITS 333
A CIRC Unrecovered Data Error is defined as a block for which the CIRC based error correction algorithm was
unsuccessful on all read attempts up to the read retry count. Layered error correction was not used.
An L-EC Recovered Data Error is defined as a block for which the CIRC based error correction algorithm was
unsuccessful, but the layered error correction was able to correct the block within the read retry count.
109
BSR NCITS 333
110
BSR NCITS 333
50 Sub-header Byte 2
51 Sub-header Byte 3
52 - 55 Vendor Specific
111
BSR NCITS 333
The Link Size field specifies the Linking Loss area size in sectors. The Link Size field is valid only for Write
Type “Packet/Incremental.” When another Write Type is specified, device shall ignore LS_V bit and Link Size
field. The Logical Unit shall accept values that are valid for the Logical Unit but not valid for the current
medium. If writing is attempted when an invalid Link Size is set, the Logical Unit shall generate CHECK
CONDITION status, ILLEGAL REQUEST, ILLEGAL MODE FOR THIS TRACK/RZONE.
On CD-R/RW media the Test Write bit is valid only for Write Type 1 or 2 ( Track at Once or Session at Once).
On DVD-R media, the Test Write bit is valid only for Write Type 0 or 2 (Incremental or Disc-at-once). When the
Test Write bit is set to one, it indicates that the device performs the write process, but does not write data to
the media. When the bit is set to zero the Write laser power is set such that user data is transferred to the
media. In addition, all track and disc information collected, during test write mode, shall be cleared. It should
be noted that the number of tracks reserved or written may be limited in test write mode.
Write Type Field (Table 124) specifies the stream type to be used during writing. Write Type values are shown
in Table 124.
Packet/Incremental - the device shall perform packet/Incremental writing when WRITE commands are issued.
Track At Once - the device shall perform Track At Once recording when write commands are issued.
Session At Once - the device shall perform Session At Once recording. For CD, this mode requires that a cue
sheet be sent prior to sending write commands.
Raw - the device shall write data as received from the Initiator. In this mode, the Initiator sends the Lead-in.
The Initiator shall provide Q Sub-channel in this mode, the only valid Data Block Types are 1, 2, and 3. The
Next Writable Address starts at the beginning of the Lead-in (this shall be a negative LBA on a blank disc).
NOTE: In RAW record mode the Logical Unitshall not generate run-in and run-out blocks (main and Sub-channel 1
data) but shall generate and record the link block. Write Type of Track-at-once and Raw are invalid when DVD-R
media is present.
The Multi-session field defines how session closure affects the opening of the next session. See Table 125.
The FP bit, when set to one indicates that the packet type is fixed. Otherwise, the packet type is variable. This
bit is ignored unless the write type is set to 0 (Packet). For DVD-R, this bit shall default to one.
A Copy bit with value one indicates that this is the first or higher generation copy of a copyright protected track.
When set to one, the copyright bit in the control nibble of each mode 1 Q Sub-channel shall alternate between
1 and 0 at 9.375 Hz. The duty cycle is 50%, changing every 4 blocks. The initial value on the medium is zero.
Track Mode is the Control nibble in all Mode 1 Q Sub-channel in the track. The default value of this field for
DVD-R Logical Units shall be 5.
112
BSR NCITS 333
Data Block Type defines both the specific data fields in a user data block and its size. The Data Block Type is
defined in Table 126. This size is used for writing instead of the block size set in the mode select header. The
default value of this field for DVD-R Logical Units shall be 8.
113
BSR NCITS 333
2. With the exceptions of data block types 1, 2, and 3, the device shall generate all P Sub-channel and all
mode 1, mode 2, and mode 3 Q Sub-channel.
3. For data block types 8 through 13, the device shall generate all sync fields and all headers.
4. For data blocks of mode 1 or of mode 2, form 1, the device shall generate EDC and L-EC parity.
5. For data block types 0, 1, 2, and 3, the device shall perform no data scrambling per ISO/IEC 10149.
6. For data block types 8 through 13, the device shall perform data scrambling per ISO/IEC 10149.
The Host Application Code field is typically zero. When the unrestricted Use Disc bit in Disc Information Block
(see Table 237) is one, the Host Application Code field shall be ignored by the device. If the Unrestricted Use
Disc bit is zero, then the Host Application Code shall be set to the appropriate value for the medium in order
that writing be allowed. An Host Application Code of zero is used for a Restricted Use - General Purpose
Disc.
The Session Format code is to be written in the TOC of the session containing this track. The Session Format
code is the PSEC byte of the mode 1, point A0 TOC entry. See Table 305 - READ TOC/PMA/ATIP response
data (Format = 0000b).
The Packet Size field, if FP bit is set to one, specifies the number of User Data Blocks per fixed packet. The
Packet Size field, if FP bit is set to 0, shall be ignored. For DVD-R media, the default Packet Size shall be 16.
Audio Pause Length is the number of blocks from the beginning of the track that the mode 1 Q Sub-channel
INDEX shall be zero. If this number is zero, then there is no period where the Mode 1 Q Sub-channel INDEX
shall be zero. The default value shall be 150. This field is valid only for audio tracks, otherwise it is ignored.
The Media Catalog Number (MCN) will be written in the mode 2 Q Sub-channel in at least one out of every
100 blocks in the program area. The Initiator may include bytes 14 & 15, however, the Logical Unit will ignore
these bytes and insert the appropriate Zero and AFRAME values. When the MCN is returned to the Initiator
the Media Catalog Number (MCN) is formatted as in Table 297.
The International Standard Recording Code (ISRC) is formatted as in Table 299.
114
BSR NCITS 333
The number of S units per M unit field gives the ratio of these MSF address values. For media conforming to
the CD data and CD-DA standard, this value is 60.
The number of F units per S unit field gives the ratio of these MSF address values. For media conforming to
the CD data and CD-DA standard, this value is 75.
115
BSR NCITS 333
116
BSR NCITS 333
The Output Port Volume Control indicates the relative volume level for this audio output port. The value used
is specified as an attenuation of the normal volume level. A value of zero indicates the minimum volume level
(Mute), and a value of FFh indicates maximum volume (No attenuation) level. It is recommended that the
MUTE and volume functions should be supported on a per channel basis. The attenuation used shall be as
specified in Table 132. All values not shown in the table shall be valid, with the attenuation selected by
interpolating using the known table values.
It is recommended that the Logical Unit support at least 16 volume levels. The actual attenuation levels for any
given Binary attenuation value shall be given by the following equation: 20 Log (Binary Level / 256)
Note: Audio channel volume control regarding channel selection of MUTE vs. Volume Level setting of 0. It is
recommend that Logical Units allow the setting of the Channel Selection fields to MUTE and also allow the setting of
the Volume Level field to 0. It is up to the Logical Unit to determine how to shut off the volume, either via muting
circuitry or via the volume control.
117
BSR NCITS 333
An Idle bit of one indicates a Logical Unit shall use the Idle Timer to determine the length of inactivity time to
wait before entering the Idle Condition. If the Idle bit is zero, or the Idle Timer has a value of zero, the Logical
Unit shall disable the Idle Timer.
A Standby bit of one indicates a Logical Unit shall use the Standby Timer to determine the length of inactivity
time to wait before entering the Standby condition. If the Standby bit is zero or the Standby Timer has a value
of zero, the Logical Unit shall disable the Standby Timer.
The Idle Timer field indicates the inactivity time in 100 millisecond increments that the Logical Unit shall wait
before entering the Idle condition.
The Standby Timer field indicates the inactivity time in 100 millisecond increments that the Logical Unit shall
wait before entering the Standby condition.
118
BSR NCITS 333
119
BSR NCITS 333
The Method of Reporting Fault / Failure Reporting field (MRIE) (see Table 135) indicates the methods that
shall be used by the Logical Unit to report informational exception conditions. The priority of reporting multiple
information exceptions is vendor specific.
The Interval Timer field indicates the period in 100 millisecond increments that a informational exception
condition has occurred. The Logical Unit shall not report informational exception conditions more frequently
than the time specified by the Interval Timer field and as soon as possible after the timer interval has elapsed.
After the informational exception condition has been reported, the interval timer shall be restarted. A value of
zero in the Interval Timer field indicates that the Logical Unit shall only report the informational exception
condition one time.
The Report Count field indicates the number of times to report an informational exception condition to the
application client. A value of zero in the Report Count field indicates there is no limit to the number of times the
Logical Unit shall report an informational exception condition.
The maintaining of the Interval Timer and the Report Count field across power cycles and/or resets by the
Logical Unit shall be vendor specific.
120
BSR NCITS 333
121
BSR NCITS 333
122
BSR NCITS 333
If DVD-R Read bit is set to one, the Logical Unit shall support the read function of DVD-R disc.
If DVD-ROM Read bit is set to one, the Logical Unit shall support the read function of DVD-ROM disc.
If Method 2 is set to one, the Logical Unit shall support the read function of CD-R media written using fixed
packet tracks using Addressing Method 2.
If CD-R/RW Read Field is set to one, the Logical Unit shall support the read function of CD-R/RW disc
(Orange Book Part III).
If CD-R Read Field is set to one, the Logical Unit shall support the read function of CD-R disc (Orange Book
Part II).
If DVD-RAM Write bit is set to one, the Logical Unit shall support the write function of DVD-RAM disc.
If DVD-R Write bit (read only field) is set to one, the Logical Unit shall support the write function of DVD-R disc.
If the Test Write bit is set to one, the Logical Unit shall only accept data from the Initiator and not write to the
media.
If CD-R/RW Write Field is set to one, the Logical Unit shall support the write function of CD-R/RW disc
(Orange Book Part III).
If CD-R Write Field is set to one, the Logical Unit shall support the write function of CD-R disc (Orange Book
Part II).
The individual capabilities of the Logical Unit are specified by bytes 4 through 7. Each of the bits indicate if that
specific capability is supported. A value of zero indicates that the capability is NOT supported; a value of one
indicates the capability IS supported.
Bit 0 - Audio Play - The Logical Unit is capable of Audio Play operation. This also indicates that the Logical
Unit is capable of overlapping Play and other commands such as reading of the Sub-channel information.
Bit 1 - Composite - The Logical Unit is capable of delivering a composite Audio and Video data stream.
Bit 2 - Digital Port(1) - The Logical Unit supports digital output (IEC958) on port 1
Bit 3 - Digital Port(2) - The Logical Unit supports digital output(IEC958) on port 2
Bit 4 - Mode 2 Form 1 - The Logical Unit is capable of reading sectors in Mode 2 Form 1 (XA) format.
Bit 5 - Mode 2 Form 2 - The Logical Unit is capable of reading sectors in Mode 2 Form 2 format.
Bit 6 - Multi Session The Logical Unit is capable of reading multiple session or Photo CD discs.
Bit 7 - Reserved
Bit 8 - CD-DA Commands Supported - Red Book audio can be read using the READ-CD command.
Bit 9 - CD-DA Stream is Accurate - This bit indicates that the Logical Unit supports an advanced Feature that
allows it to return to an audio location without losing place to continue the READ CD-DA command. 0 The
Logical Unit is incapable of accurately restarting the CD-DA read operation, and a BUFFER OVERFLOW error
shall be reported whenever a loss of streaming occurs. This error will be fatal and the command will have to be
repeated from the beginning. 1 The Logical Unit can continue from a loss of streaming condition and no error
will be generated.
Bit 10 - R-W Supported - The commands that return Sub-channel data can return the combined R-W
information.
Bit 11 - R-W De-interleaved & Corrected - This indicates that the R-W Sub-channel data will be returned de-
interleaved and error corrected.
Bit 12 - C2 Pointers Supported - This indicates that the Logical Unit supports the C2 Error Pointers. This also
indicates that the Logical Unit is capable of returning the C2 Error Pointers and C2 Block Error flags in the
READ CD command.
Bit 13 - ISRC - The Logical Unit can return the International Standard Recording Code Information.
Bit 14 - UPC - The Logical Unit can return the Media Catalog Number (UPC)
Bit 15 - Read Bar Code - The Logical Unit is capable of reading the disc bar code.
Bit 16 - Lock - The PREVENT/ALLOW command is capable of actually locking the media into the Logical Unit.
Bit 17 - Lock State - This indicates the current state of the Logical Unit. If 0, the Logical Unit is currently in the
allow (Unlocked) state. Media may be inserted or ejected. If 1, the Logical Unit is currently in the prevent
(Locked) state. Media loaded in the Logical Unit may not be removed via a soft or hard eject. If the Logical Unit
123
BSR NCITS 333
is empty, media may not be inserted if the Prevent Jumper is not present. If the jumper is present, then media
may be inserted.
Bit 18 - Prevent Jumper - This indicates the state of the (Optional) Prevent/Allow Jumper. If 0, Jumper is
present. Logical Unit will power up to the allow state. Locking the Logical Unit with the Prevent/Allow
Command shall NOT prevent the insertion of media. If 1, Jumper is not present. Logical Unit will power up to
the Prevent State (Locked). The Logical Unit will not accept new media or allow the ejection of media already
loaded until an allow command is issued.
Bit 19 - Eject Command - The Logical Unit can eject the disc via the normal START/STOP command with the
LoEj bit set. If the mechanism is a Changer that uses a Magazine, then this bit indicates that the Magazine can
be ejected.
Bit 20 - Reserved
Bit 21-23 - Loading Mechanism Type - This field specifies the type of disc loading the Logical Unit supports.
Bit 24 - Separate Volume Levels - The audio level for each channel can be controlled independently.
Bit 25 - Separate Channel Mute - The mute capability for each channel can be controlled independently.
Bit 26 - Supports Disc Present (SDP) - This bit indicates that the Logical Unit contains an embedded changer,
and that after a reset condition or if a magazine is changed, it can report the exact contents of the slots. The
response to the MECHANISM STATUS command will contain valid Disc is Present status information for all
slots.
Bit 27 - Software Slot Selection (SSS) - This bit controls the behavior of the LOAD/UNLOAD command when
trying to load a Slot with no Disc present.
Bit 28 - Side Change Capable - This bit indicates that the Logical Unit is capable of selecting both sides of the
Discs. This capability can be reported for Logical Units that have changer functions.
Bit 29 - P through W in Lead-in - This bit indicates that the Logical Units are capable of reading the raw R-W
Sub-channel information from the Lead-in.
Bit 30 – 31 - Reserved
Bytes 8 , 9,14 & 15 are identified as obsolete in this standard. It was used in previous versions of this standard
and should not be used in future developments.
The Number of Volume Levels Supported field returns the number of discrete levels. If the Logical Unit only
supports turning audio on and off, the Number of Volume Levels field shall be set to 2.
The Buffer Size Supported field returns the number of bytes of buffer dedicated to the data stream returned to
the Initiator. This value is returned in Kbytes (Size/1024). If the Logical Unit does not have a buffer cache, the
value returned shall be zero.
Byte 17 - is used to describe the format of the Logical Units digital output. Valid only if Digital Port(1) or Digital
Port(2) are set. (IEC958)
124
BSR NCITS 333
Bit 1 - BCKF Set if data valid on the falling edge of the BCK signal. Clear if data valid on the rising edge of the
BCK signal
Bit 2 - RCK Set if HIGH on LRCK indicates left channel. Clear if HIGH on LRCK indicates right channel.
Bit 3 - LSBF Set if LSB first. Clear if MSB first.
Bit 4-5 - Length BCKs
00 32
01 16
10 24
11 24 (I2S)
Bytes 18 – 21 are identified as obsolete in this standard. It was used in previous versions of this standard and
should not be used in future developments.
Bytes 22 & 23 - The Copy Management Revision Supported Field indicates the version of the DVD Copy
Protection scheme that is supported by the Logical Unit. For DVD this field shall be set to 0001h, if Copy
Protection is implemented. All other Logical Units shall set this field to 0000h.
125
BSR NCITS 333
126
BSR NCITS 333
127
BSR NCITS 333
128
BSR NCITS 333
During the Blanking operation, the Logical Unit shall respond to commands as follows:
a) In response to all commands except REQUEST SENSE and INQUIRY, the Logical Unit shall return CHECK
CONDITION status, sense code of LOGICAL UNIT NOT READY, and an asc of OPERATION IN
PROGRESSunless a reservation conflict exists, in that case RESERVATION CONFLICT status shall be
returned. INQUIRY` GET CONFIGURATION, GET EVENT/STATUS NOTIFICATION,V and REQUEST
SENSE are among the commands that shall not return a NOT READY error (Sense Key 2).
b) In response to the INQUIRY, GET CONFIGURATION, GET EVENT/STATUS NOTIFICATION commands,
the Logical Unit shall respond as commanded.
c) In response to the REQUEST SENSE command, unless an error has occurred, the Logical Unit shall return
a sense key of NOT READY and an additional sense code of LOGICAL UNIT NOT READY, OPERATION
IN PROGRESS, with the sense key specific bytes set for progress indication. See ANSI NCITS 301, SPC
standard. Refer to sub-clause 4.1.6., description of deferred error handling for errors that may occur during
the CLOSE TRACK/SESSION operation.
Recommended error reporting is defined in Table 142.
129
BSR NCITS 333
130
BSR NCITS 333
The IMMED bit allows execution of the close function as an immediate operation. If IMMED is zero, then the
requested close operation is executed to completion prior to returning status. If IMMED is one, then status is
returned once the close operation has begun.
The Session and Track bits (see Table 144) have the following meanings:
131
BSR NCITS 333
132
BSR NCITS 333
301 SPC standard. Refer to sub-clause 4.1.6., description of deferred error handling for errors that may
occur during the CLOSE TRACK/SESSION operation.
d) Closing a Track or Session shall cause a Class 1 Event when the command is issued if the Logical Unit
becomes NOT READY. A Class 1 Event shall occur if the medium returns to READY or if the medium
becomes unwritable. Other Class 1 Events may occur due to closing a Track or Session.
Recommended error reporting is defined in Table 145.
133
BSR NCITS 333
A FmtData bit of zero indicates that there is no parameter list. A FmtData bit of one indicates that a parameter
list is available from the Initiator. For CD-RW, DVD-RAM, and DVD-R FmtData shall be set to one.
The CmpList bit is used in conjunction with the DCRT (Table 149) bit to determine usage of the existing G1-list,
G2-list and SDL to construct new G1-list and G2-list (Table 147) on DVD-RAM media. A CmpList bit of zero
indicates that the parameter list provided is in addition to those already available to the Logical Unit. A CmpList
bit of one indicates that the parameter list is complete and the Logical Unit is to ignore any existing
parameters.
A formatted CD-RW session shall consist of a single, fixed packet track. The packet size specified in the
WRITE PARAMETERS mode page defines the packet size for the format operation.
If the WRITE TYPE field in the WRITE PARAMETERS mode page is not packet (00b), the FORMAT UNIT
command shall terminate with a CHECK CONDITION and set sense to ILLEGAL REQUEST, COMMAND
SEQUENCE ERROR. If the FP bit in the WRITE PARAMETERS mode page is not set to one (Fixed Packet),
the FORMAT UNIT command shall terminate with a CHECK CONDITION and set sense to ILLEGAL
REQUEST, COMMAND SEQUENCE ERROR.
134
BSR NCITS 333
The Format Code identifies the parameter list format. For CD-RW, the Format Code shall be set to seven
(111b), for DVD-RAM the Format Code shall be set to one (001b).
The Interleave Value field identifies the value to be used when formatting. The values are specified below:
! For CD-RW, Interleave Value shall be zero.
! For DVD-RAM, the value shall be set to zero
During the operation of the FORMAT command, the Logical Unit shall respond to other commands as follows:
a. In response to all commands except GET CONFIGURATION, GET EVENT/STATUS NOTIFICATION,
REQUEST SENSE and INQUIRY, the Logical Unit shall return CHECK CONDITION status.
b. In response to the GET CONFIGURATION, GET EVENT/STATUS NOTIFICATION, and INQUIRY
command, the Logical Unit shall respond as commanded.
c. In response to the REQUEST SENSE command, unless an error has occurred, the Logical Unit shall return
a sense key of NOT READY and an additional sense code of LOGICAL UNIT NOT READY, FORMAT IN
PROGRESS, with the sense key specific bytes set for progress indication. See the REQUEST SENSE
Command description in ANSI NCITS 301 SPC-2 Standard. Refer to sub-clause 4.1.6., for the description
of handling deferred errors that may occur during the format operation.
During the execution of the FORMAT UNIT command, the Logical Unit shall perform a medium defect
management algorithm if the Defect Management Feature is current. The FORMAT UNIT command for DVD-
RAM media may not provide a method to receive defect location information from the Initiator.
A format data (FmtData) bit of one indicates that the FORMAT UNIT parameter list (see Table 148) shall be
transferred to the Logical Unit. The data sent to the Logical Unit consists of a Format List Header, followed by
an initialization pattern descriptor (that may have zero length), followed by zero or one Format descriptors. The
Format descriptor shall be one of Formattable Capacity Descriptors returned by the READ FORMAT
CAPACITIES command.
The FORMAT UNIT Command parameter list (Table 148) consists of three descriptors: the Format List
Header, the Initialization Pattern Descriptor, and the Format Descriptor.
The Format List Header (Table 149) provides several format control bits. Logical Units that implement these
bits give Initiators additional control over the formatting operation. If the Initiator attempts to select any function
not implemented by the Logical Unit, the Logical Unit shall terminate the command with CHECK
CONDITION status. The sense key shall be set to ILLEGAL REQUEST and the additional sense
code shall be set to INVALID FIELD IN PARAMETER LIST.
If the Initialization Pattern Descriptor is to be included in parameter data sent to the Initiator, the IP bit shall be
set to one, and the data shall begin at a byte offset of 4. If the IP bit is set to zero, the Initialization Pattern
Descriptor shall not be included in the Format Unit Parameter data sent to the Logical Unit, and the Format
Descriptor shall begin at byte offset 4.
135
BSR NCITS 333
A Format Options Valid (FOV) bit of zero indicates that the Logical Unit shall use its default settings for the
DCRT, STPF, Try-out and IMMED bits (see below). The Initiator shall set these bits to zero. If any of these
bits are not zero, the Logical Unit shall terminate the command with CHECK CONDITION status. The sense
key shall be set to ILLEGAL REQUEST and the additional sense code shall be set to INVALID FIELD IN
PARAMETER LIST.
A FOV bit of one indicates that the Logical Unit shall examine the setting of the DCRT, STPF, Try-out and
IMMED bits. When the FOV bit is one, the DCRT, STPF, Try-out and IMMED bits are defined as follows.
A Disable Primary (DPRY) bit, when set to zero, indicates that the Logical Unit shall not use portions of the
medium identified as defective in the primary defect Plist for Initiator addressed logical blocks. Logical Units
that support DVD-RAM media do not permit the Initiator to set this bit to one. If set to one, a CHECK
CONDITION status with additional sense code set to INVALID FIELD IN PARAMETER LIST is generated.
A Disable Certification (DCRT) bit, when set to zero, indicates that the Logical Unit shall perform a vendor-
specific medium certification operation to generate a G 1 -list (C-list). A DCRT bit of one indicates that the
Logical Unit shall not perform any vendor-specific medium certification process or format verification operation
while executing the FORMAT UNIT command.
The STPF bit shall be reserved.
An Initialization Pattern (IP) bit of zero indicates that an initialization pattern descriptor is not included and that
the Logical Unit shall use its default initialization pattern. An IP bit of one indicates that an initialization pattern
descriptor is sent to the Logical Unit as part of the FORMAT UNIT parameter list.(See sub-clause 6.1.3.1.)
A Try-out bit of one indicates that the Logical Unit shall not alter the media format, but shall examine whether
the specified FORMAT command can be performed without error, based on available information before
starting the formatting.
An immediate (IMMED) bit of zero indicates that status shall be returned after the format operation has
completed. An IMMED bit value of one indicates that the Logical Unit shall return status as soon as the
command descriptor block has been validated, and the entire Format Descriptor has been transferred.
If the IMMED bit is set to one, and a REQUEST SENSE command is issued during the formatting operation,
the Logical Unit shall return a sense key of NOT READY and an additional sense code of LOGICAL UNIT
NOT READY, OPERATION IN PROGRESS, unless an error has occurred. The sense key specific bytes shall
be set to the percentage of the operation that has completed. The sense key specific field contains a value
from 0 to FFFFh, where FFFFh indicates the formatting is completed.
The Format Descriptor Length field in the Format list header specifies the total length in bytes of the Format
descriptors that follow and does not include the initialization pattern descriptor or initialization pattern, if any.
The Format Descriptor Length shall be set to 8. Any other value in this field shall return CHECK CONDITION
with the Sense Key set to ILLEGAL REQUEST and the Sense Code set to INVALID FIELD IN PARAMETER
LIST.
6.1.3.1. Initialization Pattern
The initialization pattern option specifies that the logical blocks contain the specified initialization pattern. The
initialization pattern descriptor (see Table 150) is sent to the Logical Unit as part of the FORMAT UNIT
parameter list.
136
BSR NCITS 333
The IP Modifier field specifies the type and location of a header that modifies the initialization pattern (see
Table 151).
The Initialization Pattern Type field (see Table 152) indicates the type of pattern the device server shall use to
initialize each logical block within the application client accessible portion of the medium. All bytes within a
logical block shall be written with the initialization pattern. The Initialization Pattern is modified by the IP
Modifier field.
137
BSR NCITS 333
A Security Initialize (SI) bit of one indicates that the device server shall attempt to write the initialization pattern
to all areas of the media including those that may have been reassigned. A SI bit of one shall take precedence
over any other FORMAT UNIT field. The initialization pattern shall be written using a security erasure write
technique. Application clients may choose to use this command multiple times to fully erase the previous data.
Such security erasure write technique procedures are outside the scope of this standard. The exact
requirements placed on the security erasure write techniques are vendor-specific. The intent of the security
erasure write is to render any previous user data unrecoverable by any analog or digital technique.
An SI bit of zero indicates that the device server shall initialize the application client accessible area of the
media. The device server is not required to initialize other areas of the media. However, the device server shall
format the medium as defined in the FORMAT UNIT command.
When the SI bit is one, the device server need not rewrite (format) header and other information not previously
accessible to the application client. If any area of the medium that previously was accessible to the application
client cannot be written, the device server shall terminate the command with CHECK CONDITION status and
the sense key shall be set to MEDIUM ERROR with the appropriate additional sense code for the condition.
The Initialization Pattern Length field indicates the number of bytes contained in the initialization pattern.
If the length exceeds the current logical block size the device server shall terminate the command with CHECK
CONDITION status and the sense key shall be set to ILLEGAL REQUEST with the additional sense code set
to INVALID FIELD IN PARAMETER LIST. The pattern is modified by the IP Modifier field.
The Format descriptor specifies an eight-byte entry.
6.1.3.2. CD-RW Format Descriptor, Format Code 111b
If the Format Code, in the CDB, is 111b the CD-RW Format Descriptor defined in Table 153 shall be sent.
If both the Grow and Session bits are set to zero the format operation shall format (Format Size) user data
blocks. Format Size shall be integrally divisible by the Packet Size field in the WRITE PARAMETERS mode
page. The first formatted user data block shall be LBA 0. Existing information on the disc may be overwritten.
After the format, a single session containing a single, fixed packet track will exist on the medium.
If the Grow bit is set to zero and the Session bit is set to 1 the format operation shall create a new session that
contains (Format Size) user data blocks. Format Size shall be integrally divisible by the Packet Size field in the
WRITE PARAMETERS mode page. If the last session on the disc is not complete when this command is
issued, a CHECK CONDITION status shall be generated.
A Grow bit of 1 indicates that the final session shall be "grown" to (Format Size) from its original size. This is
accomplished by appending packets to the existing session, writing a new Lead-out, and updating the PMA
and Lead-in to change the track size to reflect the new size. Data in existing packets shall not be affected. If
the Format Size is smaller than the existing size, a CHECK CONDITION status shall be returned. The order of
updating the PMA, Lead-in, Lead-out, and data area is not specified.
The session bit shall be ignored when the Grow bit is set.
138
BSR NCITS 333
139
BSR NCITS 333
140
BSR NCITS 333
The RT (Requested Type) (Table 157) field indicates the set of Feature Descriptors desired from the Logical
Unit.
141
BSR NCITS 333
The Starting Feature Number field indicates the first feature number to be returned. All supported feature
numbers higher than the Starting Feature Number will be returned.
The Allocation Length field specifies the maximum length in bytes of the Get Configuration response data. An
Allocation Length field of zero indicates that no data shall be transferred. This condition shall not be
considered an error.
6.1.4.1. GET CONFIGURATION response data
The GET CONFIGURATION response Data (Table 158) consists of a header field and zero or more
variable length feature descriptors.
The Data Length field indicates the amount of data available given a sufficient allocation length following this
field. This length shall not be truncated due to an insufficient Allocation Length. If the Data Length is greater
than 65,530 bytes, multiple GET CONFIGURATION commands with different Starting Feature Numbers will be
required for the initiator to read all configuration data. This field is adjusted as appropriate for the given
Starting Feature Number.
The Current Profile field shall indicate the Logical Unit’s current profile. The Logical Unit shall choose the most
appropriate current profile from the list of profiles (see Table 39) with their CurrentP bit set. If there are no
profiles currently active, this field shall contain zero.
The Feature Descriptor(s) generic format returned is defined in Table 160. Each individual feature description
is defined in the appropriate sub-clause.
142
BSR NCITS 333
The Feature Code field contains the code number assigned to the feature.
Version field, see sub-clause 5.2.1.
Persistent bit, see sub-clause 5.2.2.
Current bit, see sub-clause 5.2.3.
6.1.4.2. Features
Features are the smallest set of commands, pages, and behavior that may be implemented. A list of
features are shown in Table 37.
Each Feature supported by a Logical Unit shall be described by a Feature Descriptor. All feature descriptors
shall be a multiple of four bytes long. The format of a Feature Descriptor is shown in Table 36.
The Feature Code field shall identify a feature supported by the Logical Unit.
The Version field is reserved and shall be set to zero. Future versions of a feature will be backward
compatible; incompatible changes will be included in a different feature.
The Persistent bit, when set to zero, shall indicate that this feature may change its current status. When set to
one, shall indicate that this feature is always active. The Logical Unit shall not set this bit to one if the Current
bit is, or may become, zero.
The Current bit, when set to zero, indicates that this feature is not currently active and that the Feature
Dependent Data may not be valid. When set to one, this feature is currently active and the Feature Dependent
Data is valid.
The Additional Length field indicates the number of Feature specific bytes that follow this header. This field
shall be an integral multiple of 4.
6.1.4.3. Profile List
This feature identifies profiles supported by the Logical Unit. Profiles are defined as collections of features and
provide a method to quickly determine the Logical Unit’s type. This feature is always current, even if none of
the profiles listed is current. See Table 38, Table 39 and Table 40 for definitions and description of the Profile
List.
The Profile Descriptors are shown in Table 39. All profiles supported by the Logical Unit shall always be
reported. Profile descriptors are returned in the order of preferred operation most desirable to least desirable.
E.g. a DVD-ROM that could also read CD-ROM would list the DVD-ROM profile first and the CD-ROM profile
second.
The Profile Number identifies a profile to which the Logical Unit conforms. See Table 40.
The Current bit, when set to one, shall indicate that this profile is currently active. If no medium is present, no
profile should be active. Multifunction devices shall select the most appropriate profile(s), if any, to set as
current. The most appropriate current profile is also reported in the Feature Header, see Table 35.
Recommended error reporting is defined in Table 161.
143
BSR NCITS 333
144
BSR NCITS 333
The Allocation Length field specifies the maximum Event Notification Response length, in bytes, that shall be
transferred from the Logical Unit to the Initiator. An Allocation Length field of zero indicates that no data shall
be transferred. This condition shall not be considered an error.
145
BSR NCITS 333
Notification Class Request field specifies that the Logical Unit report event(s) from the event classes
requested in this field. Table 163 defines the codes listed in this field.
If a Logical Unit does not support any of the requested event classes, the Logical Unit shall terminate the
command successfully, returning only the Event Status Notification Response (see Table 164), and indicating
a returned Class of 0.
Initiators that manage, media event status, may or may not be linked to other entities that manage power
states. This notification field provides a way that power and media event status notifications can be
independently managed by the responsible entities. If a driver manages media, power management and Busy
Device events, the driver can issue this command with notification field set to 01010100b to request the
Logical Unit to report power, media, and busy events.
The Event Data Length field specifies the amount of data that follows the Event Status Notification Header.
The amount of data reported shall be the number of bytes following the data length field.
The No Event Available (NEA) bit, when set to one, shall indicate none of the requested notification classes
are supported. When set to zero, it shall indicate that at least one of the requested notification classes is
supported.
The Notification Class field specifies the class of notification by number. See Table 166.
146
BSR NCITS 333
Supported Event Classes field specifies the event classes that the Logical Unit supports as per the Notification
Class Field. If a Feature is supported, the corresponding bit shall be set to one.
The data returned, with a class code 001b, is defined in Table 167.
Persistent Prevented bit reports the current state of the persistent prevent for the Logical Unit. See sub-clause
5.3.4.
Operational Status (Table 169) field reports the device’s ability to respond to the Initiator.
147
BSR NCITS 333
Operational Event field reports Logical Unit requests to change state and notifications of changes in device
state. If a persistent prevent is in place, any action request that can be reported before performing the action
shall not be performed by the Logical Unit, and the device shall notify the Initiator of the requested action. In all
other cases, the Logical Unit shall notify the Initiator of actions that change Device State. An example of an
action that shall be reported after the action is taken is termination of a format operation due to completion of
formatting. Upon reporting operational change notification to the Initiator, this field is reported as 0h on
subsequent GET EVENT/STATUS NOTIFICATION commands until a new change in operational state occurs.
Operation Request/Report field (Table 170) reports the operation requested or operation that has been
performed. The request usually originates from another Initiator.
Event 0h requires no Initiator action. The Initiator should respond to Events 1h through 5h with a GET
CONFIGURATION Command to determine the Logical Unit configuration.
The data returned, with a class code 010b, is defined in Table 171.
Power Event field (Table 172) reports the current change in the power status. This field is set to a new power
event if a change in the power state occurs. Upon reporting the current power status change to the Initiator,
this field is reported as 0h on subsequent GET EVENT/STATUS NOTIFICATION commands until a new
change in the power state occurs.
If the Logical Unit is commanded to go the same state as the Logical Unit is currently in, the next GET
EVENT/STATUS NOTIFICATION (Power Class) command shall report a Power Change Successful event.
148
BSR NCITS 333
The Power Status field (Table 173) indicates the state of the Logical Unit. The Logical Unit shall be set to
Standby (3h) by a hard reset, a power-on reset or a Device reset (issued from a Sleep state).
The External Request Event field reports external requests to change state and notifications of changes in
Logical Unit state. If a Persistent Prevent is in place for the Initiator, the action shall not be performed by the
Logical Unit. If a Persistent Prevent is not in place for the Initiator, the drive shall notify the Initiator of actions
that change drive state. Upon reporting operational change notification to the Initiator, this field is reported as
0h on subsequent GET EVENT/STATUS NOTIFICATION Commands until a new External Request occurs.
The External Request Events are listed in Table 177.
149
BSR NCITS 333
The Initiator may respond to Events 1-3 with no action, an appropriate action, or with a SEND EVENT
Command. The Initiator may respond to Event 4 with a GET CONFIGURATION Command. Events 1 and 2
should occur in pairs.
The Persistent Prevent bit reports the current state of the persistent prevent for the Logical Unit. This bit
shall be set to 1 if any Initiator has performed a persistent reservation.
The External Request Status field reports the Logical Unit’s ability to respond to the Initiator.
The External Request field reports the operation requested or operation that has been performed. The request
usually originates from the unit’s own user interface (i.e. front panel buttons) or from another initiator.
150
BSR NCITS 333
The data returned, with a class code 100b, is defined in Table 178.
151
BSR NCITS 333
The Media Present status bit indicates if there is media present in the Logical Unit. A bit of 1 indicates that
there is media present in the Logical Unit. This bit is reported independently from the Door or Tray Open bit. If
the Logical Unit does not support the capability of reporting the media state while the door or tray is open, it
shall set this bit to zero when the door or tray is open.
Door or Tray Open Status bit indicates if the Tray or Door mechanism is in the open state. A bit of 1
indicates the door/tray is open.
Start Slot field defines the first slot of a multiple slot Logical Unit the media status notification applies to. For
Logical Units that do not support multiple slots, this field shall be reserved.
End Slot field defines the last slot of a multiple slot Logical Unit the media status notification applies to. For
Logical Units that do not support multiple slots, this field shall be reserved.
The slot numbers are defined in the GET MECHANISM STATUS Command, see sub-clause 6.1.8..
The data returned, with a class code 110b, is defined in Table 185.
Multi-Initiator Class Events notify the Initiator of requests for control by other Initiators
The Multi- Initator Event field reports requests for control of and reporting of changes in Logical Unit state. If a
Persistent Prevent is in place for that Initator, the Logical Unit shall not perform the action requested. If a
152
BSR NCITS 333
Persistent Prevent is not in place for that Initator, the drive shall notify the Initator of actions that change the
Logical Unit state. Upon reporting Multi- Initator Events to the Initator, this field is reported as 0h on
subsequent GET EVENT/STATUS NOTIFICATION Commands until a new Multi- Initator Event occurs. The
Multi-Initiator Events are listed in Table 184.
The Initator may respond to Events 1-3 with no action or an appropriate Persistent Prevent or Persistent
Release.
The Persistent Prevent bit reports the current state of the Persistent Prevent for the Logical Unit.
The Multiple Intiator Request field reports the operation requested or the operation that has been performed.
The request originates from the Logical Unit’s own user interface (i.e. front panel buttons) or from another
Initiator.
Device Busy Events are used to notify the Initiator of commands that are executing but that require an
abnormally long time to complete. Response data is defined in Table 185.
153
BSR NCITS 333
The Time field is the predicted amount of time remaining for the Logical Unit to become not busy, in units of
100ms.
This type of event is usable in two environments. The first is in a queued environment. The GET
EVENT/STATUS NOTIFICATION command may be issued in a non-immediate mode prior to executing
commands or in the immediate mode while commands are being executed. The second environment is where
immediate commands and deferred writing are performed; this command may be issued in the immediate
mode to obtain status. If a normal command is issued while the device is busy, this command cannot be
issued until the normal command completes. Therefore, if queuing is not used, the GET EVENT/STATUS
NOTIFICATION command should precede any command that may time out.
If a GET EVENT/STATUS NOTIFICATION command with the Device Busy class bit set, is queued, the Logical
Unit shall complete the command after a time-out as defined in the time-out section has occurred. However,
instead of generating a UNIT ATTENTION condition, the only action is to complete this command. If this event
is to be used via polling in the immediate mode, the Initiator should disable the Logical Unit time-outs.
If Report Status Notification is not supported or not enabled, the Logical Unit shall return CHECK
CONDITION, sense key set to ILLGAL REQUEST, additional sense key set to INVALID FIELD IN CDB.
If the IMMED bit is set to one, and there is no Event to report the command shall return good status.
154
BSR NCITS 333
If the IMMED bit is set to zero (and the Logical Unit supports tagged command queuing) and there is NO event
to report, the GET EVENT/STATUS NOTIFICATION command shall be queued by the target until there is an
Event to report.
If the IMMED bit is set to zero and the target DOES NOT support tagged command queuing, the target shall
return CHECK CONDITION, sense key to ILLEGAL REQUEST, additional sense code to INVALID FIELD IN
CDB.
Recommended error reporting is defined in Table 188.
155
BSR NCITS 333
The Tolerance field, when set to 10b, shall indicate that the descriptors returned shall have a 10% tolerance
for the nominal performance and 20% for the exception list. All other values are reserved for future
standardization.
The Write bit, when set to zero, shall indicate that the performance parameters for reading shall be returned.
When set to one, the performance parameters for writing shall be returned.
The Except field, when set to 00b, shall indicate that the nominal performance parameters be returned. When
set to 01b, the entire performance exception list, qualified by the Starting LBA, shall be returned. When set to
10b, only performance exceptions that cause the performance to fall outside the nominal shall be reported. For
example, slipped sectors may not be included in the 10b list, but would be included in the 01b list. An Except
field of 11b is reserved.
The Starting LBA field is valid only when Except = 01b. If Except = 01b, the Starting LBA field shall indicate
the starting point for returning performance data. All performance data shall be for logical block addresses
equal to this field or greater.
The Maximum Number of Descriptors shall indicate the maximum number of descriptors that the Logical Unit
returns.
The performance response (Table 190) shall contain a Performance header and Performance descriptors.
156
BSR NCITS 333
The Performance Data Length field shall specify the amount of result data that follows the Performance
Data Length field.
The Write bit, when set to zero, shall indicate that the result data is for read performance using the nominal
command for the data type. When set to one, shall indicate that the result data is for write performance.
The Except bit, when set to zero, shall indicate that the result data is for nominal performance (see Table
192). When set to one, shall indicate that the result data is for exception conditions (see Table 193).
The Performance Descriptors (Table 192) for nominal performance are intended to give the Initiator an
approximation of Logical Unit performance. All numbers are nominal. On CD media, all sectors shall be
reported as 2352 byte sectors. The descriptor includes a Start LBA value, a Start Performance value in kB/s,
an End LBA value, and an End Performance value in kB/s.
157
BSR NCITS 333
The End LBA field contains the last logical block address of the extent described by this descriptor.
The End Performance field contains the nominal Logical Unit performance at the End LBA in kB/s.
The LBA field shall indicate that there is a seek delay between (LBA - 1) and LBA.
The Time field shall indicate the expected additional delay between (LBA - 1) and LBA from nominal, in units
of tenths of milliseconds (100 microseconds). This seek delay may be due to linear replacement, zone
boundaries, or other media dependent Features. The expected additional delay should represent the typical
time expected for the type of exception described.
Note: A block replaced by linear replacement may cause two exceptions to appear in the Exception
Descriptor list - one between the non-replaced area and the beginning of the replaced block, and one
from the end of the replaced block back to the non-replaced area.
Recommended error reporting is defined in Table 194.
158
BSR NCITS 333
An Immediate (IMMED) bit of one indicates that the Logical Unit shall return status as soon as the command
descriptor block has been validated. An IMMED Bit of zero indicates that the status shall not be returned until
the operation has been completed.
The Load/Unload (LoUnlo) bit and the Start bit encoding is shown in Table 196
The SLOT field indicated the Slot to be loaded or unloaded. Changer should always initialize (Load) Slot 0 on
Power On or Bus Device Reset.
Any attempt to Load or Unload a Disc when the Device does not support that capability shall result in a
CHECK CONDITION being reported to the Initiator with Sense key ILLEGAL REQUEST, Sense Code
INVALID FIELD IN CDB.
Loading when the slot does not contain a Disc or the Play Position does not contain a Disc will be rejected with
Sense Key ILLEGAL REQUEST, Sense Code INVALID FIELD IN CDB for the Slot Bytes. Unloading when the
Play Position does not contain a Disc will be rejected with a Sense Key ILLEGAL REQUEST, Sense Code
INVALID FIELD IN CDB for the Slot Bytes.
Loading when the slot does not contain a Disc will be rejected with a Sense Key NOT READY and Sense
Code 3Ah MEDIUM NOT PRESENT. When this error is returned there are two possible actions by the CD
Changer Device. If the Logical Unit reports Software Slot Selection (SSS) = 1, (see Table 137), then the slot
159
BSR NCITS 333
specified shall be selected for use. If the Logical Unit reports SSS = 0 then the previously used slot shall
continue to be selected for use.
If the Logical Unit is capable of caching data then a delayed load of a disc into the playing position can be
supported. If delayed loading of a disc into the playing position is supported, the Logical Unit shall have
previously cached the Lead-in data from that disc. If the medium is DVD then the caching of the Lead-in
information shall be performed. If the medium is CD then the caching of the TOC shall be performed. If the
Logical Unit has not read the Lead-in for a disc that is being loaded into the playing position, then delayed
loading shall not be performed and the disc shall be loaded into the playing position immediately. If the
loading of the Disc into the playing position is delayed, then the Logical Unit shall report that the Disc is ready,
even though the Disc is not spinning and installed in the playing position. In all cases the behavior seen by the
Initiator (other than a longer subsequent media access latency) shall not be different between delayed and
immediate loading of a disc
A UNIT ATTENTION Condition shall not be generated when discs are loaded or unloaded from the playing
position.
Recommended error reporting is defined in Table 197.
160
BSR NCITS 333
The Allocation Length field specifies the maximum length, in bytes, of the Mechanical Status Parameter list,
see Table 199, that shall be transferred from the Logical Unit to the Initiator. An Allocation Length field of zero
indicates that no data shall be transferred. This condition shall not be considered an error.
The Mechanism Status Parameter list returned contains a header (Table 200) followed by zero or more fixed-
length Slot Tables (Table 203). If the Logical Unit does not support the changer commands, then the number
of slot tables returned to the Initiator shall be zero.
161
BSR NCITS 333
The Fault bit, bit 7, indicates that the changer failed to complete the operation reported in the Changer State
field.
The Changer State field (Table 201) indicates the current state of the changer.
The Current Slot field indicates the Current Slot selected. Changers compatible with a bootable device
specification should always initialize (Load) Slot zero on Power On or Bus Device Reset. This value shall only
be changed when a Load Command is processed. Operations initiated by a user shall not cause this value to
change. If the Logical Unit is not a changer, then this field is reserved.
The Mechanism State field (Table 202) encodes the current operation of mechanism.
The Slot Table response data format is defined in Table 203. Each slot shall respond with the status defined.
The Door open bit, when set to one, indicates that the Door(s) or Tray(s) is open or the magazine is not
present.
The Current LBA value returns the location that was last used while reading or playing. Once a Read or Play
operation has been completed the value of this field may be undefined. While a Read or Play is in progress
this field will contain the LBA of the current block being processed.
162
BSR NCITS 333
The Number of Slots Available field indicates the number of slots available. The maximum number of slots is
256.
The Length of Slot Tables field specifies the length in bytes of the all the slot information that follows (e.g.
for a 2 slot Logical Unit this value would be 8).
The Disc Present bit, bit 7, indicates that there is a Disc in this slot. The reporting of this information is optional
after a reset or Disc change. If this Feature is not supported, this bit shall be set to one after a reset condition
or when a medium has been changed. When the Logical Unit is given a load command for a slot that contains
no Disc, the bit corresponding to that slot shall then contain a 0 for any following response. If this bit is valid
after a reset or medium change, then this capability shall be reported in the CD Capabilities and Mechanical
Status Page (see Table 137).
The Change bit, bit 0, indicates that the Disc in that slot has been changed since the last time the disc was
loaded.
Recommended error reporting is defined in Table 204.
163
BSR NCITS 333
A Resume bit of zero causes the Logical Unit to enter the hold track state with the audio output muted after the
current block is played. A Resume bit of one causes the Logical Unit to release the pause/scan and begin play
at the block following the last block played/scanned.
If an audio play operation cannot be resumed and the Resume bit is one, the command is terminated with
CHECK CONDITION status, COMMAND SEQUENCE ERROR. If the Resume bit is zero and an audio play
operation cannot be paused, (no audio play operation has been requested, or the requested audio play
operation has been completed), the command is terminated with CHECK CONDITION status, COMMAND
SEQUENCE ERROR.
It shall not be considered an error to request a Pause when a pause is already in effect, or to request a
Resume when a play operation is in progress.
164
BSR NCITS 333
165
BSR NCITS 333
terminated in order that the new command can be executed. The following commands shall be executed
without disturbing the PLAY or SCAN command:
- REQUEST SENSE
- READ SUB-CHANNEL, current position
- PAUSE/RESUME
- INQUIRY
- READ CAPACITY
All other commands that may effect the termination of PLAY or SCAN are implementation specific.
166
BSR NCITS 333
See PLAY AUDIO (10) Command for bit and field description in the CDB.
Recommended error reporting is defined in Table 210.
167
BSR NCITS 333
The Starting M Field, the Starting S Field, and the Starting F Field specify the absolute MSF address that the
audio play operation shall begin. The Ending M Field, the Ending S Field, and the Ending F Field specify the
absolute MSF address where the audio play operation shall end. All contiguous audio sectors between the
starting and the ending MSF address shall be played.
If the Starting Minutes, Seconds, and Frame Fields are set to FFh, the Starting address is taken from the
Current Optical Head location. This allows the Audio Ending address to be changed without interrupting the
current playback operation.
A starting MSF address equal to an ending MSF address causes no audio play operation to occur. This shall
not be considered an error. If the starting MSF address is greater than the ending MSF address, the command
shall be terminated with CHECK CONDITION status, INVALID FIELD IN CDB.
If the starting address is not found the command shall be terminated with CHECK CONDITION status,
LOGICAL BLOCK ADDRESS OUT OF RANGE. If the address is not within an audio track the command shall
be terminated with CHECK CONDITION status, ILLEGAL MODE FOR THIS TRACK or INCOMPATIBLE
MEDIUM INSTALLED. If a not ready condition exists, the command shall be terminated with CHECK
CONDITION status.
Recommended error reporting is defined in Table 212.
168
BSR NCITS 333
The Expected Sector Type field (Table 220) is used to check the sector type only. If the Requested Sector(s)
do not match the specified type, the command will be terminated with a CHECK CONDITION, ILLEGAL
MODE FOR THIS TRACK. The sector that does not match will not be transferred.
If the CMSF bit is set to zero, the Starting Logical Block Address field specifies the logical block that the
playback operation shall begin. If the CMSF bit is set to one, bytes 3 through 5 specify the MSF starting
address and bytes 6 through 8 indicate the ending MSF address. Bytes 2 and 9 are reserved if CMSF is set to
one.
PLAY CD commands with a starting LBA address of 0000 0000h shall begin the play operation at 00/02/00
MSF.
The Starting Logical Block Address field specifies the logical block that the audio playback operation shall
begin. PLAY AUDIO commands with a starting logical block address of FFFF FFFFh shall implement audio
play from the current location of the optics. PLAY AUDIO commands with a starting LBA address of 0000
0000h shall begin the audio play operation at 00/02/00 MSF.
If the Starting Logical Block Address is set to ‘FF FF FF FFh’ (or ‘00 FF FF FFh’, when CMSF is set to one)
and the playback operation is in progress, or the Logical Unit is in the hold track state, the Logical Unit shall
change the Transfer Length (or Ending Address when CMSF is one) without interrupting current playback
operation. If there is no playback operation in progress the Logical Unit shall implement the playback operation
from the current location of the optics.
The Play Length field specifies the number of contiguous logical blocks that shall be played. A Play Length
field of zero indicates that no play operation shall occur. This condition shall not be considered an error.
If the starting address is not found, the command shall be terminated with CHECK CONDITION status,
LOGICAL BLOCK ADDRESS OUT OF RANGE.
169
BSR NCITS 333
Byte 10, the Play CD field, of the command descriptor block, defines a group of bits that define the play
operations for this command. Table 214 provides the definitions for PLAY CD field.
170
BSR NCITS 333
The Logical Unit reports the length of the buffer during Session at Once Recording or Track at Once
Recording. If the READ BUFFER CAPACITY command is issued in a condition except Session at Once
Recording or Track at Once Recording, the Blank Length of Buffer field may be invalid.
An Allocation Length of zero is not an error.
The READ BUFFER CAPACITY data (Table 217) is sent in response to this command.
The Data Length field defines the number data bytes to be transferred by the Logical Unit.
The Length of Buffer indicates the whole capacity of the buffer in bytes.
The Blank Length of Buffer indicates the length of unused area of the buffer in bytes.
171
BSR NCITS 333
172
BSR NCITS 333
The Expected Sector Type field (Table 220) is used as a filter or mask to select the types of data format
information returned to the Initiator. A transfer operation is terminated as soon as data is encountered that
does not match one of those specified in the sector type field of the command. If the requested data is not of
the type/types requested, the command will be terminated with a CHECK CONDITION status, ILLEGAL
MODE FOR THIS TRACK. The sector/sectors that do not match will not be transferred to the Initiator. .
173
BSR NCITS 333
The User data bit, when set to one, indicates that the user data part of a CD sector shall be returned in the
data stream. When set to zero, user data shall not be returned to the Initiator. The setting of the Mode Select
Block Size does not apply to this command. If the current track is an audio track, then audio data shall be
returned. Otherwise, the normal user data shall be returned.
The EDC and ECC bit, when set to one, indicates that the EDC and ECC (L-EC) field shall be included in the
data stream. For Mode 1 CD format, this will include the 8 bytes of pad data.
174
BSR NCITS 333
The Error field (see Table 222) is an encoded field that indicates that if any of the C2 and/or Block error data
will be included in the data stream.
If the Logical Unit does not support the C2 pointers, and the Error field is not zero, the C2 data field shall be
zero filled..
The Sub-channel data selection field (see Table 223) indicates that CD Sub-channel information is to be
included in the data stream. This may be the Q information and/or the “Raw” Sub-channel information. If the
field is set to a nonzero value, then that Sub-channel data will be included in the data stream to the Initiator.
In the case of R-W the Logical Unit may return the data de-interleaved and error corrected, RAW or padded
with zeroes depending on the R-W supported and R-W de-interleaved and error corrected bits in the CD
capabilities and Mechanism status page. In the case of RAW the Logical Unit will return the P-W Sub-channel
data that is not de-interleaved. See Table 227 and for P-W data formats.
If the Starting Logical Block Address is set to FFFF FFFFh and the only information requested, is the Sub-
channel data, and there is currently a PLAY AUDIO command in process, the actual address used will be from
the current location (of the audio play).
If the Logical Unit is not playing audio, it shall respond with a CHECK CONDITION Status and a sense code of
COMMAND SEQUENCE ERROR.
175
BSR NCITS 333
176
BSR NCITS 333
The lengths of the data returned from a READ CD command will vary based on the type of sector that is being
read and the requested fields to be returned to the Initiator. Many combinations are possible, but most are not
very useful. Table 225 specifies how the Logical Unit responds to many of the requests. Requests for transfers
not specified in the Table 225 shall not be supported and treated as illegal. Illegal values will cause the
command to be aborted with a CHECK CONDITION status, INVALID FIELD IN CDB. See Table 220 for
definition of sector formats.
177
BSR NCITS 333
178
BSR NCITS 333
The CD-DA audio data includes 16 bits of information for each channel, and will be formatted as follows when
an audio track is read. See Table 226.
If the CD Logical Unit does not support the CD-DA Stream-Is-Accurate capability, See Table 137, then the
digital audio data shall be read as a continuous stream. If while streaming the Logical Unit shall stop, there will
be a non-recoverable error generated READ ERROR - LOSS OF STREAMING. This is due to the 1 second
uncertainty of the address. (i.e. there is no header in CD-DA data). Reissuing the command may not return
exactly the same data as the previous try. When the Logical Unit supports the stream accurate capability,
there will be no error, only some time delay for rotational latency.
The format for P-W raw data is described in Table 227.
179
BSR NCITS 333
R-W raw data (bits 0-5, Table 228) is returned in the format and order found on the media. It is the
responsibility of the Logical Unit driver to de-interleave and perform error detection and correction on the RAW
data to make it usable to higher level applications.
Byte
0 P Q PACK (0)
1 P Q PACK (1)
... …
23 P Q PACK (23)
24 P Q PACK (0)
25 P Q PACK (1)
... ...
47 P Q PACK (23)
48 P Q PACK (0)
49 P Q PACK (1)
... ...
71 P Q PACK (23)
72 P Q PACK (0)
73 P Q PACK (1)
... ...
93 P Q PACK (23)
Drives that cannot return P or Q code with PACK data will return undefined data in the unsupported P or Q
bits. Each PACK is generated after 2 contiguous Sub Channel data frames consisting of 24 bytes with 6 bits of
PACK data per byte. Each 96 byte Packet consists of 4 Packs of 24 bytes each.
The basic RAW format is shown in Figure 28 - Read CD Sub-channel, R-W (100b) below. The data is
synchronized with the Sub-channel sync patterns S0 and S1. Each group of 6 bits (R-W) is called a “symbol.”
The symbol following the Sub-channel patterns S0 and S1, is the first symbol of the first pack in a packet.
180
BSR NCITS 333
Sync
Sync
98 Bytes P Q R-W
96 Bytes (RAW)
P Q R-W
96 six-bit symbols
12Q 4 pad
Formatted Q
PACKET PACKET
Sync 4 Groups of 24 words Sync 4 Groups of 24 words
2 24 24 24 24 2 24 24 24 24
PACK PACK PACK PACK PACK PACK PACK PACK
181
BSR NCITS 333
To guard the data in the sub-coding channels R-W, a (24,20) Reed-Solomon Error Correction Code is used.
To improve the burst error correction capability, eight way interleaving is added to this error correction system.
The first two symbols in a pack have additional protection with a (4,2) Reed Solomon Error Correction Code.
The first symbol of a pack contains a mode-switch of 3 bits and a 3 bit subdivision of mode, called “item.” The
defined mode-item combinations are listed in Table 229.
The R-W information is returned as part of the “raw” Sub-channel data. The lower 6 bits of each of the bytes
contain the R-W data. This data follows the format shown in Figure 28 - Read CD Sub-channel, R-W (100b). If
the Q information needs to be taken from the raw data then it shall not be interleaved.
6.1.15.2. CD-TEXT
When the Starting Logical Block Address is set to F000 0000h and P-W raw data is selected, the Logical Unit
returns P-W raw data from the Lead-In area. If there is no data recorded in the Lead-In area, the command
shall be terminated with CHECK CONDITION status, ILLEGAL MODE FOR THIS TRACK or INCOMPATIBLE
MEDIUM INSTALLED.
If the Starting Logical Block Address is set to FFFF FFFFh after the above command, the Sub-channel data
will be returned from the current location within the Lead-In area. It is the responsibility of the device driver to
convert this data to CD-TEXT format without losing streaming.
Recommended error reporting is defined in Table 230.
182
BSR NCITS 333
The Starting M field, the Starting S field, and the Starting F field specify the absolute MSF address where the
Read operation shall begin. The Ending M field, the Ending S field, and the Ending F field specify the absolute
MSF address where the Read operation shall end. All contiguous sectors between the starting and ending
MSF addresses shall be read.
A starting MSF address equal to an ending MSF address prevents a read operation. This shall not be
considered an error. If the starting MSF address is greater than the ending MSF address, the command shall
be terminated with CHECK CONDITION status, ILLEGAL REQUEST.
If the starting address is not found, or if a not ready condition exists, the command shall be terminated with
CHECK CONDITION status.
For descriptions of Sector Type field see Table 220.
For a description of all fields in byte 9, and Sub-channel Selection Bits (byte 10), see sub-clause 6.1.15. Read
CD Command.
Recommended error reporting is defined in Table 232.
183
BSR NCITS 333
184
BSR NCITS 333
The RELADR, PMI bits, and Logical Block Address field shall be set to zero for Logical Units.
Eight bytes of READ CAPACITY response data (Table 234) shall be returned in response to the command.
The returned Logical Block Address shall be the last sector in the last complete session.
The Block Length shall be reported, in bytes, as 2048d. A block length of 512 is obsolete.
For CD media, the last logical block shall be determined by converting the last recorded Lead-out to an LBA
and subtracting one. If the resulting address points to a run out block (because the session was recorded with
packets or track at once in data mode), the Logical Unit shall subtract 2 from the LBA to point to the actual last
user data block. If no complete session exists on the medium, this field shall be set to zero.
Recommended error reporting is defined in Table 235.
185
BSR NCITS 333
186
BSR NCITS 333
The Disc Information Block has two parts; a static disc information area, as shown in Table 237, and an OPC
response shown in Table 241.
The number of Disc Information bytes returned (Table 237) is limited by the Allocation Length parameter of the
command packet. An Allocation Length of zero shall not be considered an error. If the Allocation Length is
greater than the amount of available Disc Information Data, only the available data will be transferred.
187
BSR NCITS 333
If a field or bit is not applicable to the installed medium, the defaut parameters in the Write Parameters Mode
Page shall be returned in the corresponding field.
188
BSR NCITS 333
The Disc Information Length is the number of bytes available in both the recording information area and the
appended OPC table. Disc Information Length excludes itself.
Disc Status field indicates the status of the disc and is shown in Table 238. A device that does not have the
ability to write the inserted medium (ex. C/DVD-ROM) will return COMPLETE (10b) status.
The State of Last Session field is defined in Table 239. For media that does not use Sessions this field shall be
11h.
The Erasable bit, when set to one, indicates that CD-RW medium is present. Otherwise, CD-RW medium is
not present.
The Number of First Track identifies the first track number:
For non-CD media, this field shall be set to 1. For CD media,
1) If Disc Status is set to 00 (Empty Disc), the Number of First Track field shall be 1.
2) If there are no entries in the PMA and the first track is an Incomplete Track, the Number of First Track field
shall be equal to 1.
3) If the only session on the disc is an Incomplete Session, the Number of First Track field is from the PMA.
4) Otherwise, the Number of First Track field contains the track number for the first TOC entry in the first
Session.The Number of Sessions (bytes 4 & 9) on the disc refers to all complete sessions plus any
incomplete or empty sessions. A Blank Disc will always have a session count equal to one.
First Track Number in Last Session (bytes 5 & 10) is the track number of the first track in the last session. In
order for Tracks in the last Session, that may be open, to be scanned by the READ TRACK INFORMATION
Command, the First Track Number in Last Session is identified. This is inclusive of the invisible track.
Last Track Number in Last Session (bytes 6 & 11) is the track number of the last track in the last session. In
order for Tracks in the last Session, that may be open, to be scanned by READ TRACK INFORMATION
Command, the Last Track Number in Last Session is identified.This is inclusive of the invisible track.
The DID_V (Disc ID Valid) bit, when set to one, indicates that the Disc Identification field is valid.
The DBC_V (Disc Bar Code Valid bit, when set to one, indicates that the Disc Bar Code field (bytes 24 through
31) is valid.
The URU (Unrestricted Use Disc) bit, when set to one, indicates that the mounted DVD-R, CD-R/RW disc is
defined for unrestricted use. When the Unrestricted Use Disc bit is set to zero, the mounted DVD-R, CD-
R/RW disc is defined for restricted use. To record data to the mounted disc the appropriate Initiator Application
189
BSR NCITS 333
code shall be set through the Write Parameters Page. An Initiator Application Code of zero may be used to
indicate a restricted use disc - general purpose. Logical Units that do not read a URU bit from the medium
shall set this bit to one.
For CD, the Disc Type field specifies the type of data on the whole disc. A disc has only one disc type. The
Disc Type shall be obtained from the PMA or from the A0/PSEC field in the TOC of the first session in that
there is at least one data track, or is recorded together with disc ID in PMA.
In the case of a session that contains no data track (only audio), A0/PSEC field in the TOC of the session is
always 00h regardless of actual Disc Type. For CD discs, the Disc Type shall be determined from the following
sequences:
1) Disc ID (Disc Type) as written in PMA;
2) From the first Complete Session that includes at least one data track;
3) From the first Session of a Complete Disc;
4) The Disc type is NOT decided, the Disc Type field of Disc Information shall contain FF. (undefined).
For CD, the Disc Identification number recorded in the PMA is returned. The Disc Identification Number is
recorded in the PMA as a six-digit BCD number. It is returned in the Disc Information Block as a 32 bit binary
integer.
The Last Session Lead-in Start Time field is valid only for CD medium. Otherwise, this field shall be set to 0.
This field is an address given in MSF format as defined in sub-clause 4.1.1. This field shall specify the location
of the next Lead-in to be recorded. If the disc is Empty as specified in the Disc Status field or has no
Complete Session, then the Lead-in Start Time is returned as specified by ATIP. If the last Session, is second
or greater, Empty or Incomplete, this field shall specify the Lead-in Start Time of the Last Session. If the Disc
Status is Complete, the Lead-in Start Time shall be FF/FF/FF MSF.
The Last Possible Start Time for Start of Lead-out field is valid only for CD media. Otherwise this field shall be
set to 0. This field is returned as the address, encoded in the ATIP and is returned in MSF format as specified
in sub-clause 4.1.1. If the disc is a Complete Disc, the Last Possible Start Time of Lead-out shall be FF/FF/FF
MSF.
The Disc Bar Code field contains the hexadecimal value of the bar code if the Logical Unit has the ability to
read Disc Bar Code and a bar code is present. See Table 137.
An OPC (Optimum Power Calibration) Table is attached only if the values are known for the disc. Since OPC
values are likely to be different for different recording speeds, each table entry is associated with a recording
speed. The Number of OPC Table Entries indicates that [8 x (Number of OPC Table Entries)] bytes follow the
first part of the Disc Information. This number shall be the same for all values of Allocation Length. The
Number of OPC Table Entries shall always be zero for discs that OPC has not yet been determined. For DVD-
R, the use of OPC table entries is vendor- specific.
190
BSR NCITS 333
Speed is in kBytes per second. See SEND OPC Command sub-clause 6.1.35.
The OPC Value field is associated with the speed specified in the speed field, and its content is vendor
specific.
Recommended error reporting is defined in Table 242.
191
BSR NCITS 333
The Address field contains values that depend on the value in Format field:
Format field = 05h (CGMS, CPM) - Address field contains LBA (Logical Block Address).
Format field = 0Ch (RMD in last Border-out) - Address field contains the Field number of RMD block that is
recorded in the last Border-out. Field numbers of RMD block are integers assigned in ascending order in
the range of 0 to 14.
Format field = 0Dh (RMD in RMA) - Address field contains sector number of RMA where the RMA read
operation shall begin. The RMA sector size is 2kB. The RMA sector number is assigned to each sector of
RMA. The RMA sector numbers are integers assigned in ascending order starting with zero. Each
successive sector of RMA has a number increased by 1.
Format field = 30h (Disc Control Blocks) – the Address field contains the Content Descriptor desired.
For other Format field values the Address field shall be reserved.
When the Address field specifies unrecorded RMA sector, this command shall be terminated with CHECK
CONDITION status.
Note: Cached RMD information shall be returned by this command as if it had been committed to the medium.
The Format field, Table 244, indicates the type of information that is requested by the Initiator.
The Layer Number field specifies the layer number for the response data returned by the READ DVD
STRUCTURE command.
The number of data bytes returned in response to a READ DVD STRUCTURE command is limited by the
Allocation Length field of the CDB. An Allocation Length field of zero shall not be considerred an error.
The AGID field is described in the REPORT KEY command. This field is used only when the Format field
contains 2h, for all other values it is reserved.
Requests for Format FFh shall always be fullfilled, even if there is no medium or an incompatible medium
installed.
192
BSR NCITS 333
When a READ DVD STRUCTURE Command is issued for CD media, with format codes 00h - FEh, the
command shall be terminated with CHECK CONDITION status, sense key set to ILLEGAL REQUEST and the
additional sense code set to CANNOT READ MEDIUM- INCOMPATIBLE FORMAT. When the Logical
Unit/media combination does not support the specified Format code, the command shall be terminated with
CHECK CONDITION status, INVALID FIELD IN CDB.
Table 244 - Format Code definitions for READ DVD STRUCTURE command
Format Returned Layer Byte Address Description
Code Data Usage Field
Explanation
00h Physical Layer Number Reserved Returns information in the DVD Lead-in
area. DVD-R returns the last Lead-in.
01h Copyright Layer Number Reserved Returns the Copyright information from
the DVD Lead-in area
02h Disc Key Reserved Reserved Returns the Disc Key obfuscated by
using a Bus Key
03h BCA Layer Number Reserved Returns the BCA information on DVD
media
04h Manufacturer’ Layer Number Reserved Returns the Disc Manufacturing
information from the DVD Lead-in area
05h CGMS, CPM Layer Number LBA Returns CGMS, CPM information from
specified sector
06h - 07h Reserved
08h DDS Reserved Reserved Returns the DDS information on DVD-
RAM Media
09h – 0Bh Reserved
0Ch RMD in last Reserved Start Field Returns the Field of RMD in the last
Border-out number of RMD Border-out
Blocks
0Dh RMD Reserved Start RMA Returns RMD sectors that are recorded
Sector Number in RMA
0Eh Pre-recorded Reserved Reserved Returns pre-recorded information in the
information in Lead-in area
Lead-in
0Fh Unique Disc Reserved Reserved Returns Unique Disc Identifier of the
Identifier disc
10h – 2Fh Reserved
30h Disc Control Reserved Content Returns Disc Control Block identified
Blocks Descriptor by the Content Descriptor
31h - FEh Reserved
FFh Structure List Layer Number Reserved Returns a list of DVD Structures
present in the specified Layer
193
BSR NCITS 333
Table 245 - READ DVD STRUCTURE Data Format (Format field = 00h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD Lead-in Structure
0– Layer Descriptor
2047
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data that
is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include the
DVD STRUCTURE Data Length field itself.
Layer Descriptor is defined in Table 246.
This information is returned for DVD media only. The information for the layer specified by the Layer Number
field in the Command Packet is returned. If there is only one layer then the only valid layer is layer 0. If a
nonexistent layer is requested then the command shall be aborted with an INVALID FIELD IN THE
COMMAND PACKET error. If the media has more than one layer, but is recorded using the Opposite Track
Path method, then the same information shall be returned for all layers.
194
BSR NCITS 333
The Book Type field (Table 247) specifies the DVD Book this media complies with.
The Book Version specifies the version of the specified book that this media complies with.
The Disc Size specifies the physical size of the Media. A value of 0000b specifies 120mm, a value of 0001b
specifies a size of 80mm.
The Minimum Rate field (Table 248) is used to specify to the Logical Unit the read rate to use for this media.
The Number of Layers field specifies the number of layers for this side of the media. A value of 00b indicates
that the media has only one layer. A value of 01b specifies that this side of the media has two layers. Currently
only one and two layer discs are specified.
The Track Path bit specifies the direction of the layers when more than one layer is used. If the bit is cleared to
0 then this media uses Parallel Track Path (PTP). When PTP is used each layer is independent and has its
own Lead-in and Lead-out areas on the media. If the bit is set to 1 then the media uses Opposite Track Path
(OTP). With opposite track path both layers are tied together. There is only one Lead-in and Lead-out. In the
middle of the media there is an area called the middle area. The addresses of blocks in one layer are mirrored
in the other layer.
The Layer Type field (Table 249) indicates the read/write ability of the layer.
195
BSR NCITS 333
The Linear Density field (Table 250) indicates the minimum/maximum pit length used for this layer.
The Track Density field (Table 251) indicates the track width used for this media. Currently = 0000b 0.74
µm/track
The Starting Sector Number of Main Data field (Table 252) specifies the first block that contains user data.
The End Sector of Main Data field specifies the last sector of the user data in the last layer of the media. For
DVD-RAM, the End Sector of Main Data, is the PSN for the last spare sector of the last zone.
The End Sector Number in Layer 0 field specifies the last sector of the user data in layer 0. If this media does
not use Opposite Track Path and contains Multiple Layers, this value is set to 000000h.
The Burst Cutting Area (BCA) flag indicates the presence of data in the Burst Cutting Area. If set to zero, it
indicates BCA data does not exist. If set to one, it indicates BCA data exist.
In case of DVD-R, the Logical Unit may have cache memory for the Lead-in Control Area data. If the disc has
no Lead-in, and there is no DVD Control Data in the cache, the Logical Unit shall generate a CHECK
CONDITION status, sense code INVALID FIELD IN CDB. If the Lead-in is already written or there are DVD
structures in the cache, the Logical Unit shall return the requested structures.
The Media Specific field may be filled with all zero data or information as specified in the associated DVD
specification.
196
BSR NCITS 333
Table 253 - READ DVD STRUCTURE Data Format (Format field = 01h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD Copyright Information
0 Copyright Protection System Type
1 Region Management Information
2 Reserved
3 Reserved
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data that
is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include the
DVD STRUCTURE Data Length field itself.
The Copyright Protection System Type field indicates the presence of data structures specific to a copyright
protection system. Only two values are defined, 00h indicates there is no such data and 01h indicates a
specific data structure exists. All other values are reserved.
The Region Management Information field describes the regions in that the disc can be played. Each bit
represents one of eight regions. If a bit is not set in this field, the disc can be played in the corresponding
region. If a bit is set in this field the disc can not be played in the corresponding region.
6.1.19.3. Disc Key
The Disc Key data recorded on the media is identified with a data format defined in Table 254.
Table 254 - READ DVD STRUCTURE Data Format (Format field = 02h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
Disc Key Structures
0
… DISC KEY Data
2047
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data that
is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include the
DVD STRUCTURE Data Length field itself.
DISC KEY Data field returns the DISC KEY that is obfuscated by a Bus Key. The length of DISC KEY Data
field is currently 2048 bytes.
197
BSR NCITS 333
When the DISC KEY does not exist on DVD media, this command with Format = 02h shall be terminated with
CHECK CONDITION status. The sense key shall be set to ILLEGAL REQUEST and the additional sense code
set to COPY PROTECTION KEY EXCHANGE FAILURE - KEY NOT PRESENT.
When the DVD Logical Unit is not in the Bus Key state, this command with Format = 02h shall be terminated
with CHECK CONDITION status. The sense key shall be set to ILLEGAL REQUEST and the additional sense
code set to COPY PROTECTION KEY EXCHANGE FAILURE - KEY NOT ESTABLISHED.
6.1.19.4. BCA Information
The BCA information is defined in data format 03h shown in Table 255.
Table 255 - READ DVD STRUCTURE Data Format (Format field =03h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD BCA Structure
0
…
… BCA Information
…
n
This Information is returned from BCA recorded DVD media only. The Length of BCA Information is in the
range of 12 to 188 bytes.
When a READ DVD STRUCTURE Command with a format field value of 03h is presented for a DVD media
without BCA, the command shall be terminated with CHECK CONDITION status. The sense key shall be set
to ILLEGAL REQUEST and the additional sense code set to INVALID FIELD IN CDB.
6.1.19.5. DVD Disc Manufacturing Information
Table 256 defines the data format for the Disc Manufacturing information.
Table 256 - READ DVD STRUCTURE Data Format (Format field = 04h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD Manufacturing’s Structures
0
…
… Disc Manufacturing Information
…
2047
198
BSR NCITS 333
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data that
is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include the
DVD STRUCTURE Data Length field itself.
The Disc Manufacturing Information is taken from the DVD media Lead-in. In the case of DVD-R multi session
disc, this information is taken from the last Border-in.
6.1.19.6. Copyright Management Information
The Copyright Management Information returned is shown in Table 257.
Table 257 - READ DVD STRUCTURE Data Format (Format field = 05h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
Copyright Management Information
0 CPM Reserved CGMS Reserved
1 Reserved
2 Reserved
3 Reserved
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data
that is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include
the DVD STRUCTURE Data Length field itself.
The CPM bit, if set to 0, indicates that this sector contains no copyrighted material. If the CPM bit is set to 1,
indicates that this sector contains copyrighted material.
When the CPM bit is set to 0, the CGMS field is set to 00b. When the CPM bit is set to 1, and if the CGMS
field is set to 00b, it indicates that copying is permitted without restriction. If the CGMS field is set to 01b, it
indicates that the CGMS field is reserved, and if the CGMS field is set to 10b, indicates that one generation of
copies may be made, and if the CGMS field is set to 11b, indicates that no copying is permitted.
6.1.19.7. DVD-RAM Disc Definition Structure (DDS)
The DVD-RAM Disc definition is identified with the data format defined in Table 258.
Table 258 - READ DVD STRUCTURE Data Format (Format field = 08h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD-RAM Disc Definition Structure (DDS)
0
… DDS Information
2047
199
BSR NCITS 333
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data
that is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include
the DVD STRUCTURE Data Length field itself.
The DDS Information is taken from the Defect Controls of the DVD-RAM media lead-in. The length of the
DDS Information is currently 2048 bytes only.
When a READ DVD STRUCTURE Command with a format field value of 08h is presented for a DVD media
without the DDS Information, the command shall be terminated with CHECK CONDITION status. The sense
key shall be set to ILLEGAL REQUEST and the additional sense code set to CAN NOT READ MEDIUM -
INCOMPATIBLE FORMAT 30h/02h.
6.1.19.8. RMD in the last Border-out
The RMD field recorded in the Border-out is defined in Table 259.
Table 259 - READ DVD STRUCTURE Data Format (Format field = 0Ch)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
RMD in last Border-out
0
… RMD
n
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data that
is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include the
DVD STRUCTURE Data Length field itself.
The RMD Bytes field returns the RMD that is written in the last recorded Border-out.
The Address field in the Command specifies the starting RMD Field number where the read operation shall
begin. The Allocation Length field in the command specifies the maximum number of RMD bytes that shall
be returned. The largest RMD available is 30720 bytes (15 sectors).
200
BSR NCITS 333
Table 260 - READ DVD STRUCTURE Data Format (Format field = 0Dh)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD-R Recording Management Data Structure
0 (MSB)
1 Last Recorded RMA Sector Number
2
3 (LSB)
4
… RMD Bytes
n
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data that
is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include the
DVD STRUCTURE Data Length field itself.
Last Recorded RMA Sector Number field indicates the RMA sector number where the last RMD is
recorded.
The RMD Bytes field returns RMD that is written in RMA. The Address field in the command specifies the
starting address of the RMA sector where the read operation shall begin. The Allocation Length field in the
command specifies the maximum length of the descriptor returned to the Initiator. The returned RMD data
shall end at the next ECC boundary.
The maximum number of RMD bytes that can be returned is 32768.
201
BSR NCITS 333
Table 261 - READ DVD STRUCTURE Data Format (Format field = 0Eh)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD-R Pre-recorded Information Structure
0 Field ID ( = 1)
1 Application code
2 Disc Physical data
3 (MSB)
4 Last address of Data Recordable Area
5 (LSB)
6 Reserved
202
BSR NCITS 333
Table 261 - READ DVD STRUCTURE Data Format (Format field = 0Eh) cont.
Bit 7 6 5 4 3 2 1 0
Byte
7 Reserved
8 Field ID ( = 2)
9 Recommended Write power
10 Specified Wavelength for RWP
11 Optimum Write Strategy
12 Reserved
13 Reserved
14 Reserved
15 Reserved
16 Field ID ( = 3)
17 Manufacturer ID (17)
18 Manufacturer ID (16)
19 Manufacturer ID (15)
20 Manufacturer ID (14)
21 Manufacturer ID (13)
22 Manufacturer ID (12)
23 Reserved
24 Field ID ( = 4)
25 Manufacturer ID (11)
26 Manufacturer ID (10)
27 Manufacturer ID (9)
28 Manufacturer ID (8)
29 Manufacturer ID (7)
30 Manufacturer ID (6)
31 Reserved
32 Field ID ( = 5)
33 Manufacturer ID (5)
34 Manufacturer ID (4)
35 Manufacturer ID (3)
36 Manufacturer ID (2)
37 Manufacturer ID (1)
38 Manufacturer ID (0)
39 Reserved
40 - 63 Reserved
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD
STRUCTURE data that is available to be transferred to the Initiator. The DVD STRUCTURE Data
Length value does not include the DVD STRUCTURE Data Length field itself.
The contents of Pre-recorded information are specified by the DVD Specifications for Recordable
Disc, Part 1.
203
BSR NCITS 333
Table 262 - READ DVD STRUCTURE Data Format (Format field = 0Fh)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD-R Unique Disc Identifier
0 Reserved
1 Reserved
2 (MSB) Random Number
3 (LSB)
4 (MSB)
5
6 YEAR
7 (LSB)
8 (MSB) Month
9 (LSB)
10 (MSB) Day
11 (LSB)
12 (MSB) Hour
13 (LSB)
14 (MSB) Minute
15 (LSB)
16 (MSB) Second
17 (LSB)
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data that
is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include the
DVD STRUCTURE Data Length field itself.
This format returns the Unique Disc Identifier that is recorded in RMD Field 0.
6.1.19.12. Disc Control Blocks
The Address field of the READ DVD STRUCTURE command shall contain a Content Descriptor to identify
the Disc Control Blocks (DCB) requested. Valid values are as shown in Table 263.
204
BSR NCITS 333
Table 264 - READ DVD STRUCTURE Data Format (Format field = 30h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
0
… Disc Control Block
32767
Each Disc Control Block is up to 16 sectors in length. The first 40 bytes of the block have a common definition,
and the remaining bytes depend on the value of the Content Descriptor field. See Table 265.
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data
that is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include
the DVD STRUCTURE Data Length field itself.
The Content Descriptor field identifies the contents of bytes 40 - 32767.
The Unknown Content Descriptor Actions contains a bit mask. This mask shall describe actions the
Logical Unit is allowed to perform if the Content Descriptor is not known by the drive. Each bit, when set to
205
BSR NCITS 333
one, shall prohibit the corresponding action. When set to zero, the corresponding action is allowed. Se e
Table 266.
M * 4 + 40 (MSB)
M * 4 + 41 Recordable DCB N-1
M * 4 + 42
M * 4 + 43 (LSB)
206
BSR NCITS 333
(M + N) * 4 (MSB)
+ 40
Readable DCB N – 1
(M + N) * (LSB)
4 + 43
Table 268 - READ DVD STRUCTURE Data Format (Format field = FFh)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD Structure List
0
- Structure List
n
The DVD STRUCTURE Data Length specifies the length in bytes of the following DVD STRUCTURE data
that is available to be transferred to the Initiator. The DVD STRUCTURE Data Length value does not include
the DVD STRUCTURE Data Length field itself.
The Structure List is returned as a sequence of Structure List Entries as shown in Table 269.
Note: This DVD Structure is generated by the Logical Unit rather than read from the medium.
207
BSR NCITS 333
The Format Code field shall identify a DVD Structure that is readable via the READ DVD STRUCTURE
Command.
The SDS bit, when set to zero, shall indicate that the DVD structure is not writable via the SEND DVD
STRUCTURE Command. When set to one, shall indicate that the DVD structure is writable via the SEND
DVD STRUCTURE Command.
The RDS bit, when set to zero, shall indicate that the DVD structure is not readable via the READ DVD
STRUCTURE Command. When set to one, shall indicate that the DVD structure is readable via the READ
DVD STRUCTURE Command.
The Structure Length field shall specify the length of the DVD Structure that is identified by the Format
Code.
Table 270 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
208
BSR NCITS 333
209
BSR NCITS 333
The Capacity List Length specifies the length in bytes of the Capacity Descriptors that follow. Each
Capacity Descriptor is eight bytes in length, making the Capacity List Length equal to eight times the
number of descriptors. Values of n * 8 are valid, where 0 < n < 32.
The Number of Blocks indicates the number of addressable blocks for the capacity defined by each
Descriptor Type.
The Descriptor Type field (Table 275) indicates the type of information the descriptor contains.
The Block Length specifies the length in bytes of each logical block.
210
BSR NCITS 333
211
BSR NCITS 333
The Format Type field (Table 277) indicates the type of information required for formatting.
The Number of Blocks field indicates the number of addressable blocks for the capacity defined by each
Format Type.
The Type Dependent Parameter contents are as specified for each Format Type in Table 277. In the case
of Format Type 20h, M specifies SL where SL = 2M , 4 ≤ M ≤ 15 or SL = 0 if M = 0 and N identifies SI where SI
= 2N , 4 ≤ N ≤ 24.
The Type Dependent Parameter shall be set to M * 10000h + N, effectively placing M in byte offset 5 and N in
byte offset 7, and making byte 8 reserved. The device shall supply its default values for M and N.
212
BSR NCITS 333
The Logical Unit shall only return Formattable Capacity Descriptors that apply to the installed media. If there is
no medium installed, the Logical Unit shall return only the Current/Maximum Capacity Descriptor, with the
maximum capacity of a medium that the Logical Unit is capable of reading.
A Formattable Capacity Descriptor of Format Type 00h shall be reported if any other Formattable Capacity
Descriptor is reported.
The descriptors shall be returned in ascending order of Format Type. For Format Types other than 04h and
05h, if multiple format descriptors exist, they shall be returned in Logical Unit preferred order. For Format
Types 04h and 05h, the format descriptors shall be returned in ascending order of Zone number.
Formattable Capacity Descriptors for formats that can be read, but not formatted shall not be reported.
Table 278 indicates the values returned if the Logical Unit implements the command.
213
BSR NCITS 333
If the MSF bit is zero, the read header LBA parameter list, see Table 281 defines the CD data block address
header of the requested logical block. If the MSF bit is one, the read header MSF parameter list (see Table
283) defines the CD data absolute address of the requested logical block.
The logical block address field specifies the logical block where the read header operation shall begin. If the
logical block size is other than the physical block size, it shall be mapped into the appropriate physical block
from that the data would have been read.
The READ HEADER data format (Table 281) defines the CD data block address header of the requested
logical block.
214
BSR NCITS 333
The CD data mode field specifies the CD-ROM data mode of the logical blocks in this sector of data. The
values in this field are defined in Table 282.
Table 284 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
215
BSR NCITS 333
Allocation Length specifies the maximum number of bytes that are returned. Response data is terminated
when allocation length bytes have been transferred or when all data have been transferred to the Initiator,
thatever is less. An Allocation Length of zero is not an error. If Allocation Length is zero, no data shall be
transferred. The data read from the Master CD is transferred in the format shown in Table 287 below.
If the master cue sheet does not exist on the media, the Logical Unit shall return a CHECK CONDITION
status, INCOMPATIBLE MEDIUM INSTALLED.
216
BSR NCITS 333
Table 288 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
217
BSR NCITS 333
If the MSF bit is zero, the read header LBA parameter list, see Table 281 defines the CD data block address
header of the requested logical block. If the MSF bit is one, the read header MSF parameter list (see Table
283) defines the CD data absolute address of the requested logical block.
The sub Q bit set to one requests that the Logical Unit return the Q Sub-channel data. The sub Q bit set to
zero requests that no Sub-channel data be returned. See 6.1.23.1.. This shall not be considered an error.
The Sub-channel parameter list (Table 290) field specifies the returned sub channel data.
The Track Number field specifies the track number from that ISRC data is read. This field shall have a value
between 01h and 63h (99 bcd), and is valid only when the Sub-channel parameter list field is 03h. In this case,
the Logical Unit returns ISRC data for this track. This field may contain 00h when the Format code is not 03h.
218
BSR NCITS 333
The audio status field indicates the status of audio play operations. The audio status values are defined in
Table 292. Logical Units that do not support audio play operations shall always report 00h.
For Logical Units that support audio operations: The initial value for audio status is 15h. Audio status values
13h and 14h return information on previous audio operations. When audio play stops due to an error and the
IMMED bit in the CD Audio Control Page (see 5.5.6.) is set to one, the Logical Unit shall report 14h in this
audio status byte and shall report no deferred error.
Table 292 - Audio status codes
Status Description
00h Audio status byte not supported or not valid
01h - 10h Reserved
11h Audio play operation in progress
12h Audio play operation paused
13h Audio play operation successfully completed
14h Audio play operation stopped due to error
15h No current audio status to return
16h - FFh Reserved
The Sub-channel data length field specifies the length in bytes of the following Sub-channel data block. A Sub-
channel data length of zero indicates that no Sub-channel data block is included in the returned data. Sub-
channel data length does not include the sub channel header.
219
BSR NCITS 333
The ADR field gives the type of information encoded in the Q Sub-channel of this block, as shown in Table
294.
220
BSR NCITS 333
221
BSR NCITS 333
If media catalog number data is found, the MCVAL bit is set to one. If MCN data is not detected, the MCVAL
bit is set to zero to indicate the media catalog number field is invalid.
Media Catalog Number (see Table 297) data returned in bytes 4 through 19 by this command with Sub-
channel data format field code 02h may be from any block that has MCN Q Sub-channel data. See sub-clause
4.2.2.4.
The Media Catalog Number, N1 through N13, when sent to the Initiator, is formatted as ASCII characters.
The MCVAL bit when set to one, indicates the Media Catalog Number field is valid.
Zero field shall return 00h.
AFRAME may return the frame number where the MCN was found. This shall be a value from 00h to 4Ah. All
other values are reserved.
222
BSR NCITS 333
6.1.23.4. Sub-channel Data Format (03h), Track International Standard Recording Code
The track ISRC field contains the identifying number of this media according to the ISRC standards (DIN-31-
621) expressed in ASCII. Table 298 defines the Track International Standard Recording Code data format. A
unique ISRC may exist for each track.
If ISRC data is detected, the TCVAL bit (see Table 299) is set to one. If ISRC data is not detected, the TCVAL
bit is set to zero to indicate the ISRC field is invalid.
The ADR (Table 294) and Control fields (Table 295) shall be returned from the ADR and Control fields on the
media.
The Track Number shall indicate the track for that the ISRC was requested.
Track ISRC data (see Table 299) may be from any block in the specified track that has ISRC data. When ADR
field is 3 (0011), it is used to assign a unique number to an audio track. This is done by means of the ISRC
that is 12 characters long (represented by I1 to I12, see Table 299.) The ISRC shall only change immediately
after the TNO has been changed.
ISRC data returned is encoded as ASCII characters. The format of the data is defined in Table 299.
223
BSR NCITS 333
All bytes are specified in ASCII. The following translation (Table 300) is specified for Logical Units:
The following codes shall be valid for the above fields (Table 299):
a. Country Code: ‘A’ - ‘Z’ (41h - 5Ah)
b. Owner Code: ‘0’ - ‘9’ and ‘A’ - ‘Z’ (30h -39h, 41h - 5Ah)
c. Year of Recording: ‘0’ - ‘9’ (30h - 39h)
d. Serial Number: ‘0’ - ‘9’ (30h - 39h)
The Zero field shall return 00h.
AFRAME may return the frame number in that the MCN was found. This shall be a value from 00h to 4Ah. All
other values are reserved.
Table 301 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
224
BSR NCITS 333
225
BSR NCITS 333
0000b TOC M The Track/Session Number field specifies starting track Track
number for that the data will be returned. For multi-session Number
discs, this command will return the TOC data for all sessions
and for Track number AAh only the Lead-out area of the last
complete session. See Table 305.
0001b Sessio M This format returns the first complete session number, last Reserved
n Info complete session number and last complete session starting
address. In this format, the Track/Session Number field is
reserved and should be set to 00h. NOTE: This format
provides the Initiator access to the last finalized session
starting address quickly. See Table 306.
0010b Full M This format returns all Q sub-code data in the Lead-in(TOC) Session
TOC areas starting from a session number as specified in the Number
Track/Session Number field, In this mode, the Logical Unit will
support Q Sub-channel POINT field value of A0h, A1h, A2h,
Track numbers, B0h, B1h, B2h, B3h, B4h, C0h, and C1h. See
Table 307. There is no defined LBA addressing and MSF bit
shall be set to one.
0011b PMA O This format returns all Q sub-code data in the PMA area. In Reserved
this format, the Track/Session Number field is reserved and
shall be set to 00h. See Table 311. There is no defined LBA
addressing and MSF bit shall be set to one.
0100b ATIP O This format returns ATIP data. In this format, the Reserved
Track/Session Number field is reserved and shall be set to
00h. See Table 312. There is no defined LBA addressing and
MSF bit shall be set to one.
0101b CD- O This format returns CD-TEXT information that is recorded in Reserved
TEXT the Lead-in area as R-W Sub-channel Data
All Reserved. Reserved
Other
Format
Codes
The Track/Session Number field specifies the starting track number for that the data shall be returned. The
data is returned in contiguous ascending track number order. A value of AAh requests that the starting
address of the Lead-out area be returned. If this value is zero, the Table of Contents data shall begin with the
first track or session on the medium.
If the Track/Session Number field is not valid for the currently installed medium, the command shall be
terminated with CHECK CONDITION status. The sense key shall be set to ILLEGAL REQUEST and the
additional sense code set to INVALID FIELD IN CDB.
When a Read TOC/PMA/ATIP command is presented for a CD-R/RW media, where the first TOC has not
been recorded (no complete session) and the Format codes 0000b, 0001b, or 0010b are specified, this
command shall be rejected with an INVALID FIELD IN CDB. Devices that are not capable of reading an
incomplete session on CD-R/RW media shall report CANNOT READ MEDIUM – INCOMPATIBLE FORMAT.
6.1.24.1. READ TOC Response parameter list, general definition
The response parameter list (see Table 304) indicates the general description of the response data to the
Read TOC/PMA/ATIP command. Each descriptor field is format specific and is defined in the appropriate
format sub-clause.
226
BSR NCITS 333
The Data Length indicates the length, in bytes, of the parameter list descriptor data.
The Track/Session/Reserved Field is format specific and indicates the location, if any, of the information in the
parameter list descriptors.
Descriptor data fields are format specific. The definitions of the bytes are described in each format sub-clause.
227
BSR NCITS 333
The ADR field gives the type of information encoded in the Q Sub-channel of the block where this TOC entry
was found. The possible ADR values are defined in Table 294.
The Control Field indicates the attributes, of the track, see Table 295.
The Track Number field indicates the track number for that the data in the TOC track descriptor is valid. A
track number of AAh indicates that the track descriptor is for the start of the Lead-out area.
The Logical Block Address contains the address of the first block with user information for that track number
as read from the Table of Contents. An MSF bit of zero indicates that the Logical Block Address field contains
a logical block address. An MSF bit of one indicates the Logical Block Address field contains an MSF address
(see sub-clause 4.1.6).
6.1.24.3. TOC/PMA/ATIP Response Data Format 0001b
The response data returned for Format 0001b is specified in Table 306.
228
BSR NCITS 333
229
BSR NCITS 333
The returned TOC data of a multi-session disc is arranged in ascending order of the session number with
duplicates removed. The TOC data within a session is arranged in the order of Q Sub-channel POINT field
value of A0h – AFh, Track Numbers, B0h, BFh. Only recorded Points shall be returned.
The TOC Track Descriptor format in the Lead-in area of the TOC is described in Table 308.
All of the TOC Track Descriptors, in Table 308, are further define in sub-clause found. The POINT Field (Table
309) defines various types of information within the TOC Lead-in area.
230
BSR NCITS 333
The Disc Type field (see Table 310) indicates the type of disc inserted.
The definition for the Control Field in the Q Sub-channel is in Table 295.
6.1.24.5. TOC/PMA/ATIP Response Data Format 0011b
None of the fields in the response data of Format 0011b are affected by the MSF bit in the CDB.The response
data returned for Format 0011b is specified in Table 311.
231
BSR NCITS 333
232
BSR NCITS 333
restricted use. To record data to the mounted disc the appropriate Initiator Application code shall be set
through the Write Parameters Page. An Initiator Application Code of zero may be used to indicate a restricted
use disc - general purpose.
Disc Type - zero indicates CD-R media; one indicates CD-RW media.
Disc Sub-Type - shall be set to zero.
A1 - when set to one, indicates that bytes 16-18 are valid.
A2 - when set to one, indicates that bytes 20-22 are valid.
A3 - when set to one, indicates that bytes 24-26 are valid.
ATIP Start Time of Lead-in (min, sec, frame) - the start time of the Lead-in. The value is read from ATIP and
returned in hex format. Legal values for the M field are 50h through 63h.
ATIP Last Possible Start Time of Lead-out (min, sec, frame) - the last possible start time of Lead-out. The
value is read from ATIP and returned in hex format. Valid values for the M field is 0 through 4Fh.
Lowest Usable CLV Recording Speed (see Table 313) - valid only when A1 = 1.
233
BSR NCITS 333
Table 315 - READ TOC/PMA/ATIP response data (With Format Field = 0101b )
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) CD-TEXT Data Length
1 (LSB)
2 First Track/Session/Reserved Field(Hex)
3 Last Track/Session/Reserved Field(Hex)
CD-TEXT Descriptor(s)
0
: Descriptor data , format specific
:
n
CD-TEXT Data Length specifies the number of bytes to be transferred in response to the command. The ATIP
Data Length value does not include the data length field itself. This value is not modified when the allocation
length is insufficient to return all of the CD-TEXT data available. This length is variable depends on the number
of recording Pack Data.
CD-TEXT Information Descriptor(s) provides Pack Data available in the lead-in area of the disc. Each Pack
Data consists of 18 bytes of CD-TEXT information. If a Pack Data is recorded repeatedly on the disc, the
device should return it only once.
The detail of Pack Data and CD-TEXT information is described in Annex J.
Table 316 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
234
BSR NCITS 333
The Address/Number Type field in byte 1 is used to specify the contents of bytes 2 through 5 of the CDB.
The Logical Block Address/Track/Session Number field, Bytes 2 through 5 are defined in Table 318.
The number of Track Information Block bytes returned is limited by the Allocation Length parameter of the
CDB. An Allocation Length of zero is not an error. Fields not used with the installed media shall return 0.
235
BSR NCITS 333
The format and content of the Track Information Block is shown in Table 319.
236
BSR NCITS 333
shall not cause a CHECK CONDITION status to be presented. The Data Length is not modified when the
allocation length is insufficient to return all of the response data available.
Track Number is the track number for all of the information in this structure or a value of 1 for media not
containing logical tracks. If the Track number is set to zero, and the P through W bit is set (see Table 126),the
contents of Track Information Block shall be returned for the Lead-In area. In this case, the Track Start
Address field is the start address of the Lead-In area.
Session Number is the number of the session containing this track, or a value of 1 for media not containing
sessions that contain this track.
The Copy bit indicates that this track is a second or higher generation copy. For media that does not support
CGMS, this bit shall beset to zero.
The Damage bit, when set to one, and the NWA_V is set to zero, the track shall be considered "not closed due
to an incomplete write”. An automatic repair may be attempted by the Logical Unit when the CLOSE
TRACK/SESSION command is issued. Further incremental writing in this track is not possible. The Damage
bit, when set to one, and the NWA_V is set to one, indicates a Track that may be recorded further in an
incremental manner. An automatic repair shall be attempted by the Logical Unit when the next command that
requires writing to the Track is issued. If the repair is successful, the Damage bit shall be set to zero. Prior to
the start of the repair, the NWA field shall contain the address of the Next Writable Sector assuming a
successful repair.
Track Mode is the control nibble as defined for mode 1 Q Sub-channel for this track. For non-CD media, this
field shall be set to 4. See Table 123 and Table 295
For CD, if the RT bit is zero, then the track is not reserved, otherwise the track is reserved. The RT bit
indicates that a PMA entry indicating the track’s start and end addresses exists. For DVD, the RT bit of zero
indicates that the Track is Complete, Invisible, or Incomplete status. An RT bit of one indicates that the Track
is Empty Reserved or Partially Recorded Reserved status.
If the Logical Unit is not capable of reading the PMA or RMA, this field shall be set to zero.
The Blank bit, when set to one, indicates that the track contains no written data and Last Recorded Address
field is invalid. For CD, Tracks with the Track Descriptor Block recorded shall not be considered blank. For
other media, this bit shall be set to zero.
For CD, the Packet/Inc bit is valid only when the RT bit is set to one or the track indicated is the incomplete
track. The Packet/Inc bit, when set to one, indicates that this track is to be written only with packets (CD) or
incremental recording (DVD).
For CD media, the FP (Fixed Packet) bit is valid only when the Packet/Inc bit is set to one. When the
Packet/Inc bit is set to one and the FP bit is also set to one, then the track is to be written only with fixed
packets. When the Packet/Inc bit is set to one and the FP bit is set to zero, then the track is to be written only
with variable packets. Except for C/DVD-R/RW, this field should be set to zero
When writing, certain parameters may be set via the Write Parameters Page. The state of the track determines
what parameters shall be set and that parameters in the mode page shall match. Required Write Parameters
are defined in Table 320.
237
BSR NCITS 333
For CD, when the RT, Blank and Packet bits are set to one, FP bit of the READ TRACK INFORMATION
response data is set to zero.
238
BSR NCITS 333
Data Mode field defines the track content. Data Mode is defined in Table 322.
If NWA_V is zero, then the next writable address field is not valid. Otherwise the next writable address field is
valid. NWA_V shall be set to zero if the Track is not writable for any reason.
If LRA_V is zero, then the Last Recorded Address field is not valid. Otherwise, the Last Recorded Address
field is valid. The LRA_V bit shall be set to zero if the Track has damage for any reason and is repaired
automatically.
The Track Start Address is the starting address for the specified Track.
239
BSR NCITS 333
The Next Writable Address, if valid, is the LBA of the next writable user block in the Track specified by the
LBA/Track Number field in the CDB. For CD media, Next Writable Address shall be associated with the RT,
Blank, Packet and FP bits as defined in Table 323. If the write type is Raw, the Next Writable Address may be
a negative number as required to point to the start of the first Lead-in. When streaming in any write type, the
Next Writable Address shall be the next user data block the Logical Unit expects to receive if no under-run
occurs.
240
BSR NCITS 333
The Free Blocks field represents the maximum number of user data blocks available for recording in the track.
For CD media, this field shall be computed as follows: First, the Available Track Space (ATS) shall be
computed.
For the invisible track; ATS = (StartTimeofLastPossibleLead-out) – NWA + 5.
For a reserved track; ATS = (PMAStopTime) – NWA + 5.
If the track is reserved for, or written with fixed packets, or is the invisible track and the Write Parameters
Mode Page
ATS
specifies fixed FreeBlocks = IP • PacketSize. packets, Otherwise,
PacketSize + 7
FreeBlocks = ATS –7.
Note: The StartTimeofLastPossibleLead-out is the last possible location of the link block at the start of the Lead-out.
If a disc is fully recorded, the PMA entry for the last track will be equal to the StartTimeofLastPossibleLead-out.
Addressing within fixed packet written tracks is translated by the Logical
Unit for reading and NWAMethod2 = NWAMethod1 – 7 ⋅IP NWAMethod1 - TrackStartAddress writing. The NWA shall
also reflect this PacketSize + 7 translation:
Method 1 is the physical address.
Method 2 is used on fixed packet written tracks to hide the link areas from the Initiator. The
TrackStartAddress is always a physical address, even if prior tracks are recorded with Method 2. IP( ) is the
integer part of the value.
For CD, the Fixed Packet Size is valid only when the Packet and the FP bits are both set to one. For DVD-R, if
the FP bit is set to zero, the Fixed Packet Size field specifies the number of sectors that are actual disc access
unit. In the case of DVD, this field has a value of 16. FP bit set to one is undefined.
If the disc is stamped, then DAMAGE = 0, BLANK = 0, RT = 0, and NWA_V = 0.
Track Size is the number of user data blocks in the track. For CD the track size shall be computed as follows:
First, compute the Complete Track Size (CTS).
For an incomplete track: CTS = (StartTimeofLastPossibleLead-out) – PMATrackStart + 5.
For a reserved track: CTS = (PMAStopTime) – PMAStartTime + 5.
READ TRACK INFORMATION shall provide certain valid fields for a disc with the Unrecordable status: Track
Number, Session Number, Track Mode, Data Mode, Track Start Address.
For CD media, the Track Size number may not be exact for the tracks that do not have a PMA entry. The
track size, of tracks that do not have PMA entries, is calculated as follows:
TrackSize of track n = (start of track n+1) - (start of track n), n+1 is the Lead Out if n is the last track
recorded in the TOC.
The Track Size from this calculation may include blocks from the following track and these blocks may not be
readable.
Table 324 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
Error Reference
Deferred Errors 241 Sub-clause A.1
General Errors Table A.2
Media Access Errors Table A.3
BSR NCITS 333
The Track Number field specifies the track that requires repair.
Behavior of this command with non-packet written tracks is vendor specific.
Table 326 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
242
BSR NCITS 333
The KEY Format field (Table 328) indicates the types of information that is to be sent to the Initiator.
The REPORT KEY command with KEY Format field of 000000b begins the authentication process. The
Logical Unit, when ready to begin the authentication process, shall grant the request by returning an
Authentication Grant ID (AGID). If there is no available Authentication Grant ID, the command shall be
terminated with CHECK CONDITION status. The sense key shall be set to ILLEGAL REQUEST and the
additional sense code set to SYSTEM RESOURCE FAILURE.
The AGID field is used to control simultaneous key exchange sequences. The AGID specified in subsequent
Key Exchange commands shall match a currently active AGID. The AGID field shall be reserved when the
KEY Format Field contains either 0h or 5h.
243
BSR NCITS 333
In case of KEY Format = 000100b, the Reserved / Logical Block Address field specifies the logical block
address that contains the TITLE KEY to be sent to the Initiator obfuscated by a Bus Key. In all other cases,
this field shall be reserved.
Table 328 - Key Format Code definitions for REPORT KEY Command
Key Format Returned Data Description AGID Use
000000b AGID Returns an AUTHENTICATION GRANT ID Reserved & N/A
000001b Challenge Key Returns a Challenge KEY
000010b KEY1 Returns a KEY1 Valid AGID Required
000100b TITLE KEY Returns a TITLE KEY obfuscated by a Bus Key
000101b ASF Returns the current state of the Authentication Reserved & Ignored
Success Flag
001000b RPC Report Logical Unit region settings
111111b None Invalidate Specified AGID. Invalidating an invalid Valid AGID required
AGID shall not be considered an error. An AGID
that has not been granted shall be considered
invalid
All other values Reserved
The data returned to the Initiator for this command is shown in the following tables. The response for each
format is defined. It should be noted that with a Key Format Code of 3Fh, no data shall be returned to the
Initiator. Table 329 defines the response data for Key Format 000000b.
Table 329 - REPORT KEY Data Format (With KEY Format = 000000b)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) REPORT KEY Data Length
1 (LSB)
2 Reserved
3 Reserved
AUTHENTICATION GRANT ID
0 Reserved
1 Reserved
2 Reserved
3 AGID Reserved
244
BSR NCITS 333
Table 330 defines the response data for Key Format 000001b
Table 330 - REPORT KEY Data Format (With KEY Format = 000001b)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) REPORT KEY Data Length (0Eh)
1 (LSB)
2 Reserved
3 Reserved
Challenge Key
0 (MSB)
: Challenge Key Value
9 (LSB)
10 Reserved
11 Reserved
Challenge Key Value field returns a value to be used to interrogate an external device to determine
conformance with the DVD Copy Protection scheme. The external device then generates the corresponding
KEY2.
Table 331 defines the response data for Key Format 000010b
Table 331 - REPORT KEY Data Format (With KEY Format = 000010b)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) REPORT KEY Data Length (0Ah)
1 (LSB)
2 Reserved
3 Reserved
KEY1
0 (MSB)
: KEY1 Value
4 (LSB)
5 Reserved
6 Reserved
7 Reserved
KEY1 Value field returns a value used to determine the Logical Unit’s conformity with DVD Copy Protection
scheme by an external device. The KEY1 value will also be used as a parameter to generate a Bus Key in the
Logical Unit.
When the Logical Unit is unable to produce a KEY1 value, this command with KEY Format = 000010b shall be
terminated with CHECK CONDITION status. The sense key shall be set to ILLEGAL REQUEST and the
additional sense code & qualifier set to COPY PROTECTION KEY EXCHANGE FAILURE - KEY NOT
PRESENT.
245
BSR NCITS 333
Table 332 defines the response data for Key Format 000100b
Table 332 - REPORT KEY Data Format (With KEY Format = 000100b)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) REPORT KEY Data Length (0Ah)
1 (LSB)
2 Reserved
3 Reserved
COPYRIGHT MANAGEMENT/TITLE KEY Information
0 CPM CP_SE CGMS Reserved
C
1 (MSB)
2
3 TITLE KEY Value
4
5 (LSB)
6 Reserved
7 Reserved
The CPM field identifies the presence of copyrighted material in this sector. If set to zero the material is not
copyrighted, if set to one the material is copyrighted.
The CP_SEC field indicates that the specified sector has a specific data structure for copyright protection
system. If set to zero no such data structure exists in this sector .If set to one, a specific data structure exists in
this sector.
The CGMS field indicates the restrictions on copying:
00b Copying is permitted without restriction
01b Reserved
10b One generation of copies may be made
11b No copying is allowed
TITLE KEY Value field returns the TITLE KEY that is obfuscated by a Bus Key.
When the TITLE KEY does not exist on DVD media, this command with KEY Format = 000100b shall be
terminated with CHECK CONDITION status. The sense key shall be set to ILLEGAL REQUEST and the
additional sense code set to COPY PROTECTION KEY EXCHANGE FAILURE and the additional sense code
qualifier shall be set to KEY NOT PRESENT.
When the Logical Unit is not in the Bus Key Established state, this command with KEY Format = 000100b
shall be terminated with CHECK CONDITION status. The sense key shall be set to ILLEGAL REQUEST and
the additional sense code & qualifier set to COPY PROTECTION KEY EXCHANGE FAILURE - KEY NOT
ESTABLISHED.
Table 333 defines the response data for Key Format 000101b
246
BSR NCITS 333
Table 333 - REPORT KEY Data Format (With KEY Format = 000101b)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) REPORT KEY Data Length (06h)
1 (LSB)
2 Reserved
3 Reserved
AUTHENTICATION SUCCESS FLAG
0 Reserved
1 Reserved
2 Reserved
3 Reserved Succes
s Flag
Table 334 defines the response data for Key Format 001000b
Table 334 - REPORT KEY Data Format (With KEY Format = 001000b)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) REPORT KEY Data Length (06h)
1 (LSB)
2 RPC Scheme
3 Reserved
RPC State
0 Type Code # of Vendor Resets Available # of User Controlled Resets
Available
1 Region Mask
2 RPC Scheme
3 Reserved
RPC Scheme specifies the type of Region Playback Controls being used by the Logical Unit.
Type Code field (Table 335) specifies the current state of the Regionalization Process.
# of Vendor Resets Available is a count down counter that indicates the number of times that the vendor
can reset the region. The manufacturer of the Logical Unit sets this value to 4 and the value is decremented
247
BSR NCITS 333
each time the vendor clears the Logical Unit’s region. When this value is zero, the vendor can no longer clear
the drive’s region.
# of User Controlled Changes Available is a count down counter that indicates the number of times that
the user can set the region. This value is initially 5.
The Region Mask returns a value that specifies the Logical Unit Region in which the Logical Unit is located.
Once the Logical Unit Region has been set, the Logical Unit shall be located in only one region. Each bit
represents one of eight regions. If a bit is cleared in this field, the disc can be played in the corresponding
region. If a bit is set in this field, the disc cannot be played in the corresponding region.
RPC Scheme specifies the type of Region Playback Controls being used by the Logical Unit. See Table 336.
Table 337 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
248
BSR NCITS 333
The Reservation Size field contains the number of user blocks desired for the track reservation. The actual
number of blocks allocated shall be according to the Write Parameters Mode Page. For DVD, track reservation
size shall be determined by the settings of the Write Parameters mode page. See Table 339. For CD, the PMA
start time shall reflect the appropriate pre-gap, as determined by the previous track’s mode and the settings of
the Write Parameters mode page. Table 339 specifies the PMA stop time, and specifies the Track sizing.
249
BSR NCITS 333
Note: Ceil (x) returns the least integral value greater than or equal to x.
Write Parameters
Mode Page Reserved Track Size
Write Type Value
Disc-at-once Reserves the number of user blocks specified. The Reserved Track shall be
ReservedTrackSize = ReservationSize
where ReservationSize is a value that is specified in the CDB
Incremental Reserves the number of user blocks specified. The Reserved Track Size shall be
If the last track, defined in the PMA/RMA, is N, then the invisible track is assigned track number N+1. A track
shall only be reserved from the beginning of the invisible track. After the reservation is done, the track number
given to the new track is the current track number of the invisible track. The number of the invisible track is
increased by one following a reservation.
For CD, if the Reservation Size is smaller than four seconds, excluding pre-gap length, the Logical Unit shall
return CHECK CONDITION status.
For DVD, the actual reserved size shall be raised to ECC block unit by the device. If Reservation Size field is
set to 0, no reservation is done by device and shall not be considered an error.
Reserving shall be allowed when the last track is invisible. When the last track is not invisible, shall generate a
CHECK CONDITION status, ILLEGAL REQUEST, COMMAND SEQUENCE ERROR.
For DVD, maximum reserved Tracks that can be reserved are limited to two at the same time. Attempting to
reserve Track when two Empty/Partially recorded reserved tracks are already reserved, the command shall
be terminated with CHECK CONDITION status, the sense key set to ILLEGAL REQUEST and the additional
sense code set to NO MORE RESERVATION IS ALLOWED.
Attempting to reserve Track when remaining ECC blocks in RMA are less than three, the
command shall be terminated with CHECK CONDITION status, the sense key set to MEDIUM
ERROR and the additional sense code set to RMA/PMA IS FULL. Because three RMD blocks are
required for reservation, Track closure and Session closure.
For CD, Reserving a track when the Write Type is set to packet (See Table 124) shall cause the TDB (Track
Descriptor Block) to be written.
Table 341 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
250
BSR NCITS 333
251
BSR NCITS 333
If the DIRECT bit is set to zero, the Logical Unit shall perform a fast-forward scan operation. A DIRECT bit of
one causes a fast-reversed scan operation.
The RELADR bit shall be set to zero.
252
BSR NCITS 333
The Scan Starting Address specifies the address at that the audio fast scan operation shall begin. The Type
field Table 343 specifies the format of the address contained in the Scan Starting Address Field. Table 343
defines the type field bits.
With a Type field of 00h the Scan Starting address field specified in command bytes 2-5 are defined in Table
344.
With a Type field of 01h, bytes 2-5 specify the MSF address of the starting sector. See Table 345 below.
Table 345 - Scan Starting Address format - MIN, SEC, FRAME format
Bit 7 6 5 4 3 2 1 0
Byte
2 Reserved
3 CD-Absolute Time (MIN)
4 CD-Absolute Time (SEC)
5 CD-Absolute Time (FRAME)
The MIN, SEC and FRAME fields specify the relative running time from the beginning of the disc. The MIN
field has a range of 00d to 99d (00h to 63h). The SEC field ranges from 00d to 59d (00h to 3Bh). The FRAME
field has a range of 00h to 74d (00h to 4Ah). All MSF fields shall be binary
With a Type field of 10h, bytes 2 - 5 specify a starting address of a specific Track Number (TNO). See Table
346 below
253
BSR NCITS 333
The track number field specifies the track number in binary at that the scan operation will begin. This field has
a range of 01h to 63h.
Scanning is a repeated play and jump operation. An example is the following implementation of forward and
reverse scan that will provide good quality sound: Forward scan - Play six CD-DA blocks and then jump 190
CD-DA blocks in the forward direction. Reverse Scan - play six CD-DA blocks and then jump 150 CD-DA
blocks (from the last block of the six) in the reverse direction.
Table 347 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
254
BSR NCITS 333
The Cue Sheet Size parameter is the number of bytes in the cue sheet to be sent to the Logical Unit. The
entire Cue Sheet shall be received by the Logical Unit prior to beginning the write process. If the Logical Unit
cannot accept and buffer the entire cue sheet, then CHECK CONDITION is returned and sense is set to
ILLEGAL REQUEST, INVALID FIELD IN CDB.
If the Write Parameters Mode Page does not have Write Type set to Session-at-once , then CHECK
CONDITION status is returned and sense key is set to ILLEGAL REQUEST, COMMAND SEQUENCE
ERROR.
If the Write Mode in the Write Parameter Mode Page, is changed from session at once, the Q sheet may not
be available.
6.1.31.1. CUE SHEET FORMAT
The Cue Sheet contains information required to specify the layout of a disc to be written, and shall be sent to
the Logical Unit via the SEND CUE SHEET command before writing data to the disc.
The Cue Sheet format is shown in Table 349.
If the Catalog Code is to be recorded, it shall be described at the beginning of the Cue sheet.
If the ISRC is to be recorded, it shall be described immediately preceding each Track’s information in the Cue
Sheet.
For the Cue sheet, the Lead-out start time shall be the last entry.
255
BSR NCITS 333
256
BSR NCITS 333
Each data unit of Program area and Lead-out area indicates that the value of each field (CONTROL, TNO, X,
DATA FORM or ZERO) changes at the time shown in ABSOLUTE TIME field.
The above data unit indicates that the value of TNO changes from 02 to 03 when ABSOLUTE TIME is
14/18/03 MSF.
6.1.31.2.1. Control/Address Field
The CTL/ADR byte contains the Control field in the upper 4 bits and the ADR in the lower 4 bits. Refer to Table
352.
The bits of the Control field (except for the copy bit) shall only be changed during an actual pause (Index = 00)
of at least 2 seconds and during Lead-in area.
257
BSR NCITS 333
258
BSR NCITS 333
Figure 29 - CD (CD-DA)
The CD-DA data format, Table 357, is as follows;
259
BSR NCITS 333
260
BSR NCITS 333
Notes:
1) Generate zero data
2) RAW Data
3) PACK DATA, Initiator sends packed data. The Logical Unit writes R-
W. The Logical Unit calculates and overwrites ECC, and performs
Interleaving for each PACK.
Note: When this Data Form of Sub-channel is selected, along with 01h Data Form of Main Data, this indicates that
there will be an attempt to write Raw P-W Sub-channel data in the Lead-in. Absolute Time field should be set with the
start address of the Lead-in, that can be read via a READ TRACK command for track 0. In this case, the Data Block
Type of the Write Parameters Mode Page should be set to 2, 3, or 4.
The Sub-channel data is placed at the end of each Frame of main data. Figure 33 - Location of Sub-channel
Data shows the relationship of Main Data and Sub-channel data.
261
BSR NCITS 333
6.1.31.6. Pre-gap
If a Data track is preceded by a different mode of track (such as an audio track) or if the mode number of CD-
ROM changes, this Data track starts with an extended pre-gap. A pre-gap is placed at the head of a Data
track, also is belonging to the Data track. A pre-gap does not contain actual user data. The pre-gap is encoded
as “pause.”
An extended pre-gap is divided into two parts. The first part of the extended pre-gap has a minimum 1 second
of data, and it is encoded according to the data structure of previous track. The second part has a minimum 2
seconds data, and this data track is encoded according to the same data structure as the other parts.
6.1.31.7. Post-gap
If a Data track is followed by another kind of track (such as an audio track), this Data track ends with a post-
gap. A post-gap is placed at the end of a Data track, and is part of the Data Track. A post-gap does not
contain actual user data. The minimum length of post-gap is 2 seconds. The Logical Unit does not perform any
action for a Post-gap.
6.1.31.8. Media Catalog Number
Table 359, Catalog Number, indicates the catalog number of a disc. The number uses UPC/EAN-code (BAR
coding). If no catalog number is used, it shall be omitted. The format is as follows;
262
BSR NCITS 333
Table 361 - Recommended Sense Key, ASC and ASCQ SEND CUE SHEET Command
Error Reference
Deferred Errors Table A.1
General Errors Table A.2
263
BSR NCITS 333
The Format field (Table 363) indicates the type of information to be sent to the device. When the
device/media does not support the specified format code, the command shall be terminated with a CHECK
CONDITION. The sense key shall be set to ILLEGAL REQUEST and the additional sense code set to
INVALID FIELD IN CDB.
The DVD-R device shall implement the cache memory for DVD STRUCTURE data.
The cached RMD can be read by using the READ DVD STRUCTURE command.
The Structure Data Length field specifies the length in bytes of the DVD STRUCTURE data to be
transferred from the Initiator to the Logical Unit after the CDB is transferred. A Structure Data Length field of
zero indicates that no data shall be transferred. This condition shall not be considered an error.
264
BSR NCITS 333
Table 364 – SEND DVD STRUCTURE Data Format (Format Code = 04h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD-R User Specific Data
0 (MSB)
… User Specific Data
2047 (LSB)
The DVD STRUCTURE Data Length field specifies the length in bytes of the User Specific Data to follow. A
DVD Structure Data Length field of zero indicates that no User Specific Data shall be transferred. This
condition shall not be considered an error.
The User Specific Data field contains user specific data. This data shall be used to specify the RMD Field 2,
and when writing Lead-in the contents of this field shall also be written in Disc manufacturing information field
of Lead-in or Border-in.
Table 365 - SEND DVD STRUCTURE Data Format (Format Code = 05h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
Copyright Management Information in data area
0 CPM Reserve CGMS Reserved
d
1 Reserved
2 Reserved
3 Reserved
The DVD STRUCTURE Data Length field specifies the length in bytes of the Copyright Management data to
follow. A DVD Structure Data Length field of zero indicates that no Copyright Management data shall be
transferred. This condition shall not be considered an error.
When the CPM bit is set to zero, it indicates that this sector contains no copyrighted material. When the CPM
bit is set to one, it indicates that this sector contains copyrighted material. If this structure is not sent, then the
default value of the CPM bit shall be set to zero.
When the CPM bit is set to 0, the CGMS field shall be set to 00b. When the CPM bit is set to 1, and the
CGMS field is set to 00b, it indicates that copying is permitted without restriction., If the CGMS field is set to
265
BSR NCITS 333
01b, and CPM = 1, it indicates that the CGMS field is reserved. If the CGMS field is set to 10b, and CPM =1, it
indicates that one generation of copies may be made, and if the CGMS field is set to 11b, and CPM =1, it
indicates that copying is not permitted.
The identical CGMS value of CPR_MAI in data area shall match this format following a write operation.
6.1.32.3. Timestamp
The format of Timestamp field is structured as shown in Table 345. This format code is used to set
Unique Disc Identifier field of RMD (Recording Management Data) for DVD-R. This time stamp data
may also be used in OPC related field in RMD Field 1 and may help the judgement to do OPC.
The time should be current UTC (Universal Coordinated Time) 24 hour clock.
Table 366 - SEND DVD STRUCTURE Data Format (Format Code = 0Fh)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved
3 Reserved
DVD Timestamp Data
0 Reserved
1 Reserved
2 Reserved
3 Reserved
4 (MSB)
5 Year
6
7 (LSB)
8 (MSB) Month
9 (LSB)
10 (MSB) Day
11 (LSB)
12 (MSB) Hour
13 (LSB)
14 (MSB) Minute
15 (LSB)
16 (MSB) Second
17 (LSB)
The DVD STRUCTURE Data Length field specifies the length in bytes of the DVD Timestamp Data to follow. A
DVD Structure Data Length field of zero indicates that no DVD Timestamp Data shall be transferred. This
condition shall not be considered an error.
The Year field shall specify the year that coded as ASCII in the range “0001” to “9999”.
The Month field shall specify the month of the year that coded as ASCII in the range “01” to “12”.
The Day field shall specify the day of the month that coded as ASCII in the range “01” to “31”.
The Hour field shall specify the hour of the day that coded as ASCII in the range “00” to “23”.
266
BSR NCITS 333
The Minute field shall specify the minute of the hour that coded as ASCII in the range “00” to “59”.
The Second field shall specify the second of the minute that coded as ASCII in the range “00” to “59”.
6.1.32.4. Disc Control Block
Table 367 defines data format code 30h.
Table 367 - SEND DVD STRUCTURE Data Format (Format Code = 30h)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) DVD STRUCTURE Data Length
1 (LSB)
2 Reserved Erase
3 Reserved
Disc Control Block
0
… Disc Control Block
n
The Structure Data Length field shall indicate the number of bytes following this field.
The Erase bit, when set to zero, shall indicate that the Disc Control Block be written to the media. When set
to one, it shall indicate that the Disc Control Block on the medium, with a Content Descriptor matching the one
sent, shall be erased. When erasing a DCB, at least the first four bytes shall be sent. The Logical Unit shall
not record any DCB unknown to the Logical Unit.
The Disc Control Block field is defined in Table 265. If a Disc Control Block, with fewer than 32768 bytes,
is sent the Logical Unit shall pad the Disc Control Block with 00h bytes.
Table 368 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
267
BSR NCITS 333
An immediate (IMMED) bit of one indicates that status shall be returned as soon as the Command Packet
has been validated. The actual operation specified by the Event Parameter shall be processed after the status
has been reported to the Initiator. The IMMED bit shall be set to 1h.
The Parameter List Length field specifies the length in bytes of the Event parameter list that shall be
transferred from the Initiator to the Logical Unit after the Command Packet is transferred. A parameter list
length of zero indicates that no data shall be transferred. This condition shall not be considered as an error.
The Logical Unit shall terminate the command with CHECK CONDITION status if the Event parameter list
length results in the truncation of Event parameter data. The sense key shall be set to ILLEGAL REQUEST,
and the additional sense code shall be set to PARAMETER LIST LENGTH ERROR.
The Logical Unit shall terminate the command with CHECK CONDITION status, set the sense key to
ILLEGAL REQUEST, set the additional sense code to INVALID FIELD IN PARAMETER LIST, and shall not
take any action directed by the event specified for the following conditions:
1. If the Initiator sets any unreserved field in the Event parameter header to an unsupported value.
2. If an Initiator sends an Event parameter list with a Event Data Length not equal to the length returned by the
GET EVENT/STATUS NOTIFICATION command for the specified event class.
3. If the Initiator sends an invalid value for any Event parameter.
268
BSR NCITS 333
The Event Parameter Length field specifies the number of bytes that follow the Event Parameter Length
field. Notification Class field specifies the class of Event being sent to the Logical Unit. This field shall
contain a 1h.
269
BSR NCITS 333
270
BSR NCITS 333
The KEY Format field (Table 375) indicates the type of information that is to be sent to the Initiator.
The AGID field is described in the REPORT KEY command.
Table 375 - Key Format Code definitions for SEND KEY command
Key Format Sent Data Description AGID Use
000001b Challenge Accepts a Challenge Key Valid AGID required
Key
000011b KEY2 Accepts a KEY2
000110b RPC Set Region Reserved & Ignored
Structure
111111b None Invalidate Specified AGID. Valid AGID required
Invalidating an invalid AGID shall not be considered
an error.
An AGID that has not been granted shall be
considered invalid.
All other values Reserved
The Key Formats are defined in Table 376, Table 377, and Table 380.
271
BSR NCITS 333
Table 376 - SEND KEY Parameter List (KEY Format field =000001b)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) SEND KEY Parameter List Length (0Eh)
1 (LSB)
2 Reserved
3 Reserved
Challenge Key Value
0 (MSB)
: Challenge Key Value
9 (LSB)
10 Reserved
11 Reserved
Challenge Key is sent to the DVD Logical Unit to get corresponding KEY1 from the DVD Logical Unit to
interrogate conformity with DVD Copy Protection scheme.
Table 377 - SEND KEY Parameter List (KEY Format field =000011b)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) SEND KEY Parameter List Length (0Ah)
1 (LSB)
2 Reserved
3 Reserved
KEY2
0 (MSB)
: Challenge Key Value
4 (LSB)
5 Reserved
6 Reserved
7 Reserved
The KEY2, generated external to the DVD Logical Unit, is sent to the DVD Logical Unit to determine its
conformity with DVD Copy Protection scheme. The KEY 2 value will be used for the second input to generate
a Bus Key in the DVD Logical Unit.
When the KEY2 value sent does not conform to the DVD Copy Protection scheme, this command shall be
terminated with an CHECK CONDITION status. The sense key shall be set to ILLEGAL REQUEST and the
additional sense code & qualifier set to COPY PROTECTION KEY EXCHANGE FAILURE -
AUTHENTICATION FAILURE.
When the SEND KEY command with KEY Format = 000011b terminates with CHECK CONDITION status, the
retry of authentication shall be performed from the beginning.
272
BSR NCITS 333
Table 378 - SEND KEY Parameter List (KEY Format field =000110b)
Bit 7 6 5 4 3 2 1 0
Byte
0 (MSB) SEND KEY Parameter List Length (06h)
1 (LSB)
2 Reserved
3 Reserved
RPC Structure
0 Preferred Logical Unit Region Code
1 Reserved
2 Reserved
3 Reserved
Preferred Logical Unit Regional Code is sent to the DVD Logical Unit to make the Logical Unit
regionalized. The Preferred Logical Unit Region Code specifies a single region in which the disc can be
played. Each bit represents one of eight regions. If a bit is cleared in this field, the disc can be played in the
corresponding region. If a bit is set in this field, the disc cannot be played in the corresponding region. Exactly
one bit of the Preferred Logical Unit Region Code shall contain a zero.
If the Logical Unit does not support setting of the Region, or the Region is no longer changeable, then this
command shall be terminated with CHECK CONDITION Status, 5/6F/05 LOGICAL UNITREGION MUST BE
PERMANENT/REGION RESET COUNT ERROR.
Table 379 describes errors that may occur during the operation of the Command or which may cause a
CHECK CONDITION status to be reported.
273
BSR NCITS 333
The Parameter List Length shall be set to reflect the number of the parameter bytes to be transferred. The
Parameter List Length shall be an integral number of eight, (2 byte OPC Speed and 6 bytes of OPC value).
This can be extended with a second OPC Speed and Value. In this case the length is 16. See sub-clause
6.1.18. for more information.
The DoOpc bit, when set to one, indicates the Logical Unit shall perform an OPC operation to set the OPC
values for the current speed. These OPC values shall become current. Parameter List length should be set to
zero. When the bit is set to zero, the Logical Unit sets OPC values to those sent in the Parameter List.
A Parameter List Length field of zero shall not be considered an error condition.
The Initiator shall transfer zero or more OPC tables (see Table 241). The transfer length shall be 8X (the
number of OPC table entries).
The format of the OPC Response Data to be transferred is shown in Table 381.
274
BSR NCITS 333
Table 382 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
275
BSR NCITS 333
The Logical Unit Read Speed and Write Speed parameters contain the requested Data rates the Logical Unit
should use. The Logical Unit may choose to select the speed specified or any slower rate. A value of FFFFh
will set the Logical Unit Read Speed or the Logical Unit Write Speed to the maximum supported. Requesting a
speed faster than the Logical Unit supports shall not generate an error. The actual speed set is returned in the
CD Capabilities Mechanical Status Mode page. (See 5.5.10.).
Table 384 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
276
BSR NCITS 333
Table 386 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
277
BSR NCITS 333
The Initiator shall send a performance descriptor during the data phase of this command. The Performance
Descriptor shall be sent in the format shown in Table 388.
278
BSR NCITS 333
The RDD (Restore Logical Unit Defaults) bit, when set to zero, indicates the remaining fields are valid. When
set to one, it shall indicate that the Logical Unit is to return to its default performance settings and the
remaining fields in this descriptor shall be ignored. Read and Write reallocation ability shall be restored to the
operation specified by the Read/Write Error Recovery page.
The Exact bit, when set to zero, shall indicate that the Logical Unit shall set its internal configuration to match
the parameters as best as possible. No errors shall occur. When set to one, the Logical Unit shall set its
internal configuration to support the requested parameters. If the Logical Unit cannot perform as requested, it
shall generate CHECK CONDITION status, sense key set to ILLEGAL REQUEST, and additional sense code
set to INVALID FIELD IN PARAMETER LIST.
The RA (Random Access) bit, when set to zero, allows the Logical Unit to independently set the read and write
speeds. When set to one, directs the Logical Unit to set its performance settings for the optimized settings for
random changes between reading and writing by the Initiator. For example, a CD recorder that can record at
2X and read at 6X may choose to limit reading to 2X if the RA bit was set to one.
279
BSR NCITS 333
The Start LBA field is the first logical block for that the performance request is being made.
The End LBA field is the last logical block for that the performance request is being made.
The data rate to be delivered for reading is (Read Size)/(Read Time).
The Read Size field shall indicate the number of kilobytes the Initiator expects to be delivered per period of
Read Time when the Initiator’s requests for data occur sufficiently fast.
The Read Time field shall indicate the amount of time, in milliseconds, over that the Read Size is expected to
be read. The Initiator may set these two fields by setting Read Size to the size of its application’s buffer and
the Read Time to the amount of time it takes to empty that buffer.
The Write Size field shall be set to the number of kilobytes to be written per Write Time.
The Write Time field shall indicate the amount of time, in milliseconds, over that the Write Size is expected to
be written.
In many cases, the Write Size and Write Time fields should be set to match the corresponding Read fields. If
not, the Initiator may set the Write Size to the size of its application buffer and the Write Time to the time it
takes to fill that buffer.
Table 389 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
280
BSR NCITS 333
Issuing a Stop Play/Scan command while the Logical Unit is scanning shall result in continuation of the play
command. Issuing a Stop Play/Scan command while the Logical Unit is paused shall stop the play command.
Issuing a Stop Play/Scan command when no play operation is in progress shall not be considered an error.
Figure 34 - Stop Play/Play Audio/Audio Scan/Pause/Resume Sequencing provides an overview of the
terminate sequences performed by the Stop Play commands.
Table 391 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
281
BSR NCITS 333
INITIALIZED
Play
Scan
Stop
Scan
SCAN Resume or Play PLAY
Pause Pause
Scan
Play or Resume
PAUSED
282
BSR NCITS 333
An IMMED (Immediate) bit of one indicates that the Logical Unit shall return status when the command
descriptor block has been validated. An Immediate bit of zero indicates that the status shall not be returned
until the operation has been completed. If the Immediate bit is one and the Logical Unit does not support
immediate operation, then the command shall terminate with CHECK CONDITION status. The sense key shall
be set to ILLEGAL REQUEST and the additional sense code shall be set to INVALID FIELD IN CDB.
The RELADR bit shall be set to zero.
The Logical Block Address field may be ignored by the Logical Unit.
The Number of Blocks field specifies the total number of contiguous logical blocks within the range. A Number
of Blocks field, equal to 0, indicates that all remaining logical blocks on the Logical Unit shall be within the
range. This field may be ignored by the drive.
A logical block within the specified range that is not in cache memory is not considered an error.
Table 393 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
283
BSR NCITS 333
A DPO (Disable Page Out) bit, set to one, indicates that the Logical Unit shall assign the logical blocks
accessed by this command the lowest priority for being fetched into or retained by the cache. A DPO bit, of
one, overrides any retention priority specified in the cache page. A DPO bit, of zero, indicates the priority shall
be determined by the retention priority fields in the cache page, if supported. All other aspects of the algorithm
implementing the cache replacement strategy are not defined by this International Standard. The Logical Unit
may ignore this bit.
NOTE: The DPO bit is used to control replacement of logical blocks in the cache memory when the Initiator has
information on the future usage of the logical blocks. If the DPO bit is set to one, the Initiator knows the logical blocks
accessed by the command are not likely to be accessed again in the near future and should not be put in the cache
memory nor retained by the cache memory. If the DPO bit is zero, the Initiator expects that logical blocks accessed
by this command are likely to be accessed again in the near future.
The Disable Page Out (DPO) bit is not used by C/DVD Logical Units and shall be set to zero for this device
type.
A FUA (force unit access) bit, set to one, indicates that the Logical Unit shall access the media in performing
the command prior to returning GOOD status. In the case where the cache contains a more recent version of a
logical block than the media, the logical block shall first be written to the media. WRITE commands shall not
return GOOD status until the logical blocks have actually been written on the media, and the Write process is
complete. This mode may not work with a sequence of writes intended to produce a continuos stream unless
command queuing is implemented
An FUA bit of zero indicates that the Logical Unit may satisfy the command by accessing the cache memory.
For WRITE operations, logical blocks may be transferred directly to the cache memory. GOOD status may be
returned to the Initiator prior to writing the logical blocks to the medium. Any error that occurs after the GOOD
status is returned is a deferred error, and information regarding the error is not reported until the following
command.
The Logical Block Address field specifies the logical block where the write operation shall begin. In case of
WCE=1(see Write Cache page in SCSI Block Commands) and FUA=0 with variable packet writing, and if the
LBA is equal to the Next Writable Address in the same track as a previous Write, then writing should continue
without interruption of streaming. For CD-R/RW media, if, during streaming, a WRITE command is issued for
packet writing with an LBA = NWA+7 the Logical Unit shall begin a new packet. If the LBA is equal to the
NWA in another track, a SYNCHRONIZE CACHE may be performed before executing the write command. If
284
BSR NCITS 333
the LBA is not any next writable address or a writable CD address, the status shall be set to CHECK
CONDITION, ILLEGAL REQUEST, INVALID ADDRESS FOR WRITE.
LBA in the range of -45150 (FFFF4FA2h) to -1 (FFFFFFFFh) shall be encoded as a two’s complement
negative number. Values in the range 0 through ffff4fa1h shall be considered positive values. Values -45150
through 404849 are valid for CD media. Table 395shows the MSF to LBA mapping.
The RELADR bit shall be set to zero.
The transfer length field specifies the number of contiguous logical blocks of data that shall be transferred. A
transfer length of zero indicates that no logical blocks shall be transferred. This condition shall not be
considered an error. Any other value indicates the number of logical blocks that shall be transferred. For CD-
R/RW media, the block size shall be determined by the write parameters mode page (if in track at once,
packet, or raw mode) or by the cue sheet (session at once mode).
Condition Formulae
LBA + 150
−150 ≤ LBA ≤ 404849
M = IP
60 ⋅ 75
LBA + 150 – M ⋅ 60 ⋅ 75
S = IP
75
F = IP(LBA + 150 – M 60 75 – S 75)
S = IP LBA + 450150 – M ⋅ 60 ⋅ 75
75
F = IP(LBA + 450150 – M ⋅ 60 ⋅ 75 – S ⋅ 75)
285
BSR NCITS 333
that an under-run may have occurred, as the run-out and link blocks occupy logical addresses. On CD-RW
media, the LBA shall specify an address that is an appendable point (according to CD-R rules) or is the first
user data block of an existing packet or track.
While writing is occurring, the Logical Unit may not be able to process all SCSI commands. The following is a
list of commands that shall function during writing without causing a SYNCHRONOUS CACHE.
1) TEST UNIT READY
2) REQUEST SENSE
3) INQUIRY
4) READ TRACK INFO (for current track). If the LBA or track number specified is not within the current
track, the Logical Unit may return CHECK CONDITION status, ILLEGAL COMMAND, INVALID FIELD
IN CDB.
5) READ BUFFER CAPACITY
6) WRITE with the NWA in the current track.
7) GET CONFIGURATION
8) GET EVENT/STATUS NOTIFICATION
All other commands shall execute normally, but may force a SYNCHRONIZE CACHE before executing. The
process of writing from the Logical Unit’s cache to the medium shall not cause a NOT READY condition for
any command. CHECK CONDITION Status, LOGICAL UNIT NOT READY, LONG WRITE IN PROGRESS
may exist when the Logical Unit is padding a reserved track or writing Lead-in and Lead-out.
Table 396 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
286
BSR NCITS 333
The VERIFY operation of this command shall use stricter criteria for data recoverability than READ
commands. The criteria are derived from the DVD-RAM Book, with additional vendor specific criteria allowed.
Automatic Reallocation shall be controlled, by the ARRE bit, in the READ/WRITE ERROR RECOVERY PAGE.
The VERIFY(10) command may return an error for a sector that a READ command may not.
VERIFY ERROR RECOVERY PAGE parameters are not supported.
The RELADR bit shall be set to zero.
For C/DVD Logical Units the Byte Check (BytChk) bit is not used and shall be set to zero.
For C/DVD Logical Units the Disable Page Out (DPO) bit is not used and shall be set to zero.
The transfer length specifies the number of contiguous logical blocks of data or blanks that shall be written and
verified. A transfer length of zero indicates that no logical blocks shall be verified. This condition shall not be
considered as an error. Any other value indicates the number of logical blocks that shall be verified.
Table 398 describes errors that may occur during the operation of the command or which may cause a
CHECK CONDITION status to be reported.
Table 398 - Recommended errors for WRITE AND VERIFY (10) Command
Error Reference
Deferred Errors Sub-clause
A.1
General Errors Table A.2
Media Access Errors Table A.3
Write Errors Table A.4
287
BSR NCITS 333
288
BSR NCITS 333
Table A.1 – Logical Unit Sense Key, ASC and ASCQ Assignments
Sens ASC ASC Type Description
e Key Q
0 00 00 R NO ADDITIONAL SENSE INFORMATION
b 00 06 R I/O PROCESS TERMINATED
5 00 11 R AUDIO PLAY OPERATION IN PROGRESS
5 00 12 R AUDIO PLAY OPERATION PAUSED
5 00 13 R AUDIO PLAY OPERATION SUCCESSFULLY COMPLETED
5 00 14 R AUDIO PLAY OPERATION STOPPED DUE TO ERROR
5 00 15 R NO CURRENT AUDIO STATUS TO RETURN
4 00 17 R CLEANING REQUESTED
3 02 00 R NO SEEK COMPLETE
2 04 00 R LOGICAL UNIT NOT READY, CAUSE NOT REPORTABLE
2 04 01 R LOGICAL UNIT IS IN PROCESS OF BECOMING READY
2 04 02 R LOGICAL UNIT NOT READY, INITIALIZING CMD. REQUIRED
2 04 03 R LOGICAL UNIT NOT READY, MANUAL INTERVENTION REQUIRED
2 04 04 R LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
2 04 07 R LOGICAL UNIT NOT READY, OPERATION IN PROGRESS
2 04 08 R LOGICAL UNIT NOT READY, LONG WRITE IN PROGRESS
4 05 00 R LOGICAL UNIT DOES NOT RESPOND TO SELECTION
3 06 00 R NO REFERENCE POSITION FOUND
5 07 00 R MULTIPLE PERIPHERAL DEVICES SELECTED
4 08 00 R LOGICAL UNIT COMMUNICATION FAILURE
4 08 01 R LOGICAL UNIT COMMUNICATION TIME-OUT
4 08 02 R LOGICAL UNIT COMMUNICATION PARITY ERROR
4 09 00 R TRACK FOLLOWING ERROR
4 09 01 R TRACKING SERVO FAILURE
4 09 02 R FOCUS SERVO FAILURE
4 09 03 R SPINDLE SERVO FAILURE
4 09 04 R HEAD SELECT FAULT
6 0A 00 R ERROR LOG OVERFLOW
1 0B 00 R WARNING
1 0B 01 R WARNING - SPECIFIED TEMPERATURE EXCEEDED
1 0B 02 R WARNING - ENCLOSURE DEGRADED
3 0C 00 R WRITE ERROR
3 0C 07 R WRITE ERROR - RECOVERY NEEDED
3 0C 08 R WRITE ERROR - RECOVERY FAILED
3 0C 09 R WRITE ERROR - LOSS OF STREAMING
3 0C 0A R WRITE ERROR - PADDING BLOCKS ADDED
289
BSR NCITS 333
Table A.1 – Logical Unit Sense Key, ASC and ASCQ Assignments (cont.)
Sens ASC ASC Type Description
e Key Q
3 11 00 R UNRECOVERED READ ERROR
3 11 01 R READ RETRIES EXHAUSTED
3 11 02 R ERROR TOO LONG TO CORRECT
3 11 05 R L-EC UNCORRECTABLE ERROR
3 11 06 R CIRC UNRECOVERED ERROR
3 11 0F R ERROR READING UPC/EAN NUMBER
3 11 10 R ERROR READING ISRC NUMBER
b 11 11 R READ ERROR - LOSS OF STREAMING
3 15 00 R RANDOM POSITIONING ERROR
3 15 01 R MECHANICAL POSITIONING ERROR
3 15 02 R POSITIONING ERROR DETECTED BY READ OF MEDIUM
1 17 00 R RECOVERED DATA WITH NO ERROR CORRECTION APPLIED
1 17 01 R RECOVERED DATA WITH RETRIES
1 17 02 R RECOVERED DATA WITH POSITIVE HEAD OFFSET
1 17 03 R RECOVERED DATA WITH NEGATIVE HEAD OFFSET
1 17 04 R RECOVERED DATA WITH RETRIES AND/OR CIRC APPLIED
1 17 05 R RECOVERED DATA USING PREVIOUS SECTOR ID
1 17 07 R RECOVERED DATA WITHOUT ECC - RECOMMEND REASSIGNMENT
1 17 08 R RECOVERED DATA WITHOUT ECC - RECOMMEND REWRITE
1 17 09 R RECOVERED DATA WITHOUT ECC - DATA REWRITTEN
1 18 00 R RECOVERED DATA WITH ERROR CORRECTION APPLIED
1 18 01 R RECOVERED DATA WITH ERROR CORR. & RETRIES APPLIED
1 18 02 R RECOVERED DATA - DATA AUTO-REALLOCATED
1 18 03 R RECOVERED DATA WITH CIRC
1 18 04 R RECOVERED DATA WITH L-EC
1 18 05 R RECOVERED DATA – RECOMMEND REASSIGNMENT
1 18 06 R RECOVERED DATA – RECOMMEND REWRITE
5 1A 00 R PARAMETER LIST LENGTH ERROR
4 1B 00 R SYNCHRONOUS DATA TRANSFER ERROR
a 1D 00 R MISCOMPARE DURING VERIFY OPERATION
5 20 00 R INVALID COMMAND OPERATION CODE
5 21 00 R LOGICAL BLOCK ADDRESS OUT OF RANGE
5 21 01 R INVALID ELEMENT ADDRESS
5 24 00 R INVALID FIELD IN CDB
5 25 00 R LOGICAL UNIT NOT SUPPORTED
290
BSR NCITS 333
Table A.1 – Logical Unit Sense Key, ASC and ASCQ Assignments (cont.)
Sens ASC ASC Type Description
e Key Q
5 26 00 R INVALID FIELD IN PARAMETER LIST
5 26 01 R PARAMETER NOT SUPPORTED
5 26 02 R PARAMETER VALUE INVALID
5 26 03 R THRESHOLD PARAMETERS NOT SUPPORTED
5 26 04 R INVALID RELEASE OF ACTIVE PERSISTENT RESERVATION
5 27 00 R WRITE PROTECTED
5 27 01 R HARDWARE WRITE PROTECTED
5 27 02 R LOGICAL UNIT SOFTWARE WRITE PROTECTED
5 27 03 R ASSOCIATED WRITE PROTECT
5 27 04 R PERSISTENT WRITE PROTECT
5 27 05 R PERMANENT WRITE PROTECT
6 28 00 R NOT READY TO READY CHANGE, MEDIUM MAY HAVE CHANGED
6 28 01 R IMPORT OR EXPORT ELEMENT ACCESSED
6 29 00 R POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
6 29 01 R POWER ON OCCURRED
6 29 02 R SCSI BUS RESET OCCURRED
6 29 03 R BUS DEVICE RESET FUNCTION OCCURRED
6 29 04 R DEVICE INTERNAL RESET
6 2A 00 R PARAMETERS CHANGED
6 2A 01 R MODE PARAMETERS CHANGED
6 2A 02 R LOG PARAMETERS CHANGED
6 2A 03 R RESERVATIONS PREEMPTED
5 2B 00 R COPY CANNOT EXECUTE SINCE INITIATOR CANNOT DISCONNECT
5 2C 00 R COMMAND SEQUENCE ERROR
5 2C 03 R CURRENT PROGRAM AREA IS NOT EMPTY
5 2C 04 R CURRENT PROGRAM AREA IS EMPTY
6 2F 00 R COMMANDS CLEARED BY ANOTHER INITIATOR
2 30 00 R INCOMPATIBLE MEDIUM INSTALLED
2 30 01 R CANNOT READ MEDIUM – UNKNOWN FORMAT
2 30 02 R CANNOT READ MEDIUM – INCOMPATIBLE FORMAT
2 30 03 R CLEANING CARTRIDGE INSTALLED
2 30 04 R CANNOT WRITE MEDIUM – UNKNOWN FORMAT
2 30 05 R CANNOT WRITE MEDIUM – INCOMPATIBLE FORMAT
2 30 06 R CANNOT FORMAT MEDIUM – INCOMPATIBLE MEDIUM
2 30 07 R CLEANING FAILURE
5 30 08 R CANNOT WRITE – APPLICATION CODE MISMATCH
5 30 09 R CURRENT SESSION NOT FIXATED FOR APPEND
291
BSR NCITS 333
Table A.1 - Logical Unit Sense Key, ASC and ASCQ Assignments (cont.)
Sens ASC ASC Type Description
e Key Q
3 31 00 R MEDIUM FORMAT CORRUPTED
3 31 01 R FORMAT COMMAND FAILED
3 31 02 R ZONED FORMATTING FAILED DUE TO SPARE LINKING
34 00 R ENCLOSURE FAILURE
35 00 R ENCLOSURE SERVICES FAILURE
35 01 R UNSUPPORTED ENCLOSURE FUNCTION
35 02 R ENCLOSURE SERVICES UNAVAILABLE
35 03 R ENCLOSURE SERVICES TRANSFER FAILURE
35 04 R ENCLOSURE SERVICES TRANSFER REFUSED
1 37 00 R ROUNDED PARAMETER
5 39 00 R SAVING PARAMETERS NOT SUPPORTED
2 3A 00 R MEDIUM NOT PRESENT
2 3A 01 R MEDIUM NOT PRESENT - TRAY CLOSED
2 3A 02 R MEDIUM NOT PRESENT - TRAY OPEN
6 3B 0D R MEDIUM DESTINATION ELEMENT FULL
6 3B 0E R MEDIUM SOURCE ELEMENT EMPTY
6 3B 0F R END OF MEDIUM REACHED
6 3B 11 R MEDIUM MAGAZINE NOT ACCESSIBLE
6 3B 12 R MEDIUM MAGAZINE REMOVED
6 3B 13 R MEDIUM MAGAZINE INSERTED
6 3B 14 R MEDIUM MAGAZINE LOCKED
6 3B 15 R MEDIUM MAGAZINE UNLOCKED
4 3B 16 R MECHANICAL POSITIONING OR CHANGER ERROR
5 3D 00 R INVALID BITS IN IDENTIFY MESSAGE
2 3E 00 R LOGICAL UNIT HAS NOT SELF-CONFIGURED YET
4 3E 01 R LOGICAL UNIT FAILURE
4 3E 02 R TIMEOUT ON LOGICAL UNIT
6 3F 00 R TARGET OPERATING CONDITIONS HAVE CHANGED
6 3F 01 R MICROCODE HAS BEEN CHANGED
6 3F 02 R CHANGED OPERATING DEFINITION
6 3F 03 R INQUIRY DATA HAS CHANGED
4 40 NN R DIAGNOSTIC FAILURE ON COMPONENT NN (80H-FFH)
5 43 00 R MESSAGE ERROR
4 44 00 R INTERNAL TARGET FAILURE
b 45 00 R SELECT OR RESELECT FAILURE
4 46 00 R UNSUCCESSFUL SOFT RESET
4 47 00 R SCSI PARITY ERROR
b 48 00 R INITIATOR DETECTED ERROR MESSAGE RECEIVED
b 49 00 R INVALID MESSAGE ERROR
292
BSR NCITS 333
Table A.1 - Logical Unit Sense Key, ASC and ASCQ Assignments (cont.)
Sens ASC ASC Type Description
e Key Q
4 4A 00 R COMMAND PHASE ERROR
4 4B 00 R DATA PHASE ERROR
4 4C 00 R LOGICAL UNIT FAILED SELF-CONFIGURATION
b 4D NN R TAGGED OVERLAPPED COMMANDS (NN = QUEUE TAG)
b 4E 00 R OVERLAPPED COMMANDS ATTEMPTED
3 51 00 R ERASE FAILURE
4 53 00 R MEDIA LOAD OR EJECT FAILED
5 53 02 R MEDIUM REMOVAL PREVENTED
5 55 00 R SYSTEM RESOURCE FAILURE
3 57 00 R UNABLE TO RECOVER TABLE-OF-CONTENTS
6 5A 00 R OPERATOR REQUEST OR STATE CHANGE INPUT
6 5A 01 R OPERATOR MEDIUM REMOVAL REQUEST
6 5A 02 R OPERATOR SELECTED WRITE PROTECT
6 5A 03 R OPERATOR SELECTED WRITE PERMIT
6 5B 00 R LOG EXCEPTION
6 5B 01 R THRESHOLD CONDITION MET
6 5B 02 R LOG COUNTER AT MAXIMUM
6 5B 03 R LOG LIST CODES EXHAUSTED
1 5D 01 R FAILURE PREDICTION THRESHOLD EXCEEDED – Predicted Media
failure
1 5D 02 R LOGICAL UNIT FAILURE PREDICTION THRESHOLD EXCEEDED
1 5D FF R FAILURE PREDICTION THRESHOLD EXCEEDED (FALSE)
6 5E 00 R LOW POWER CONDITION ON
6 5E 01 R IDLE CONDITION ACTIVATED BY TIMER
6 5E 02 R STANDBY CONDITION ACTIVATED BY TIMER
6 5E 03 R IDLE CONDITION ACTIVATED BY COMMAND
6 5E 04 R STANDBY CONDITION ACTIVATED BY COMMAND
5 63 00 R END OF USER AREA ENCOUNTERED ON THIS TRACK
5 63 01 R PACKET DOES NOT FIT IN AVAILABLE SPACE
5 64 00 R ILLEGAL MODE FOR THIS TRACK
5 64 01 R INVALID PACKET SIZE
4 65 00 R VOLTAGE FAULT
293
BSR NCITS 333
Table A.1 - Logical Unit Sense Key, ASC and ASCQ Assignments (cont.)
Sens ASC ASC Type Description
e Key Q
5 6F 00 COPY PROTECTION KEY EXCHANGE FAILURE – AUTHENTICATION
FAILURE
5 6F 01 COPY PROTECTION KEY EXCHANGE FAILURE – KEY NOT PRESENT
5 6F 02 COPY PROTECTION KEY EXCHANGE FAILURE –KEY NOT
ESTABLISHED
5 6F 03 READ OF SCRAMBLED SECTOR WITHOUT AUTHENTICATION
5 6F 04 MEDIA REGION CODE IS MISMATCHED TO LOGICAL UNIT REGION
5 6F 05 LOGICAL UNITREGION MUST BE PERMANENT/REGION RESET
COUNT ERROR
3 72 00 R SESSION FIXATION ERROR
3 72 01 R SESSION FIXATION ERROR WRITING LEAD-IN
3 72 02 R SESSION FIXATION ERROR WRITING LEAD-OUT
5 72 03 R SESSION FIXATION ERROR – INCOMPLETE TRACK IN SESSION
5 72 04 R EMPTY OR PARTIALLY WRITTEN RESERVED TRACK
5 72 05 R NO MORE TRACK RESERVATIONS ALLOWED
3 73 00 R CD CONTROL ERROR
1 73 01 R POWER CALIBRATION AREA ALMOST FULL
3 73 02 R POWER CALIBRATION AREA IS FULL
3 73 03 R POWER CALIBRATION AREA ERROR
3 73 04 R PROGRAM MEMORY AREA UPDATE FAILURE
3 73 05 R PROGRAM MEMORY AREA IS FULL
3 73 06 R RMA/PMA IS FULL
All values are in hexadecimal
294
BSR NCITS 333
Table A.2 lists errors that may occur at any time, typically in response to a protocol or hardware error or user
intervention.
295
BSR NCITS 333
296
BSR NCITS 333
Table A.3 lists errors that may be generated by media access commands of any type (read of control or user
data or writing of control or data area).
297
BSR NCITS 333
298
BSR NCITS 333
Table A.4 describes errors that may be generated by commands that cause user or control data to be written
to the medium.
299
BSR NCITS 333
B.2. General
ATAPI devices implement a subset of SCSI behavior. Certain errors and conditions that exist in SCSI do not
exist in ATAPI. In addition, certain terms are used in ATAPI instead of related SCSI terms. The mechanisms
for transporting the commands, data, and status are unique to each transport. Addressing of units is also
unique to each transport. MMC-2 does not directly specify any of these mechanisms; the command and data
layer definition may be layered on either transport.
B.2.1. Terms
B.2.1.1. Initiator - the ATAPI equivalent for the SCSI term “Initiator.”
B.2.1.2. Device - the ATAPI equivalent for the SCSI term “Target” or “Logical Unit.”
B.2.1.3. Command Packet - the ATAPI equivalent for the SCSI term “Command Descriptor Block.”
300
BSR NCITS 333
301
BSR NCITS 333
302
BSR NCITS 333
303
BSR NCITS 333
304
BSR NCITS 333
Command
Agent
Engine
1394 Management
Configuration Agent
ROM Engine
305
BSR NCITS 333
Following the data transfer portion of each command the MMC2 device writes a Status_Block to the Initiator’s
Status_FIFO address. The Status_FIFO address for Command Block ORBs is contained in the Login ORB.
The status block contains SBP-2 specific command information, such as the ORB_offset of the
Command_Block ORB associated with this status, as well as general sense information.
: ORBs contain a NOTIFY bit that is to be set if a Status_Block is to be written to Initiator memory after every ORB is
executed or or cleared if a Status_Block is to be written only after ORB execution encounters an error. This bit is
advisory only. MMC2 Logical Units shall return a Status_Block for all ORBs executed.
If an ORB containing a Null Next_ORB pointer is fetched the Execution engine completes all fetched
commands, including the one in the just fetched ORB, before the Command_Agent transitions to the
Suspended state.
If additional commands are to be executed, the Initiator creates a new list of Command_Block ORBs; changes
the Next_ORB pointer in the last ORB of the old list from NULL to the offset of the first ORB in the new list;
then writes to the MMC2 device’s Doorbell CSR address. This transitions the Command_Agent to the Active
state.
The MMC2 device fetches the new Next_ORB pointer value from the last ORB of the old list and begins
fetching ORBS from the new list at that offset.
If the Command_Agent fetch engine has not reached the ORB containing a Null Next_ORB pointer (and is still
in the Active state), the MMC2 device ignores any writes to the Doorbell CSR address.
This sequence may continue until the MMC2 device is reset, power is removed, or an error occurs.
38h Command_set_spec_ID = 00
39h Command_set = 01
306
BSR NCITS 333
3Bh Command_set_revision
307
BSR NCITS 333
ORB_offset_lo
information
308
BSR NCITS 333
D.2. General
Certain terms are used in FCP in addition to the related SCSI terms. The mechanisms for transporting the
commands, data, and status are unique to each transport. FCP differs from other transports such as SBP-2,
SCSI, etc. Addressing of units is also unique to each transport. MMC does not directly specify any of these
mechanisms; the command and data layer definition may be layered on either transport.
D.2.1. Terms
D.2.1.1. Originator - the FCP equivalent for the SCSI term “Initiator.”
D.2.1.2. Responder - the FCP equivalent for the SCSI term “Target” or “Logical Unit.”
D.2.1.3. Information Unit (IU) – similar to the SCSI phases. Carried in FCP frames.
309
BSR NCITS 333
310
BSR NCITS 333
311
BSR NCITS 333
Transitions between these power states may occur at the request of the Initiator or the Logical Unit.
Transitions to a higher power state from a lower power state shall occur after restoring the Logical Unit to the
operating conditions (including mechanical operation if applicable, such as spin up) required in the higher
power state. When the Logical Unit transitions from a higher power state to a lower power state, the Logical
312
BSR NCITS 333
Unit shall be considered to be in the lower power state when the Logical Unit is assured of reaching the lower
power condition. Actual de-powering occurs after the Logical Unit enters the lower power state. The Logical
Unit shall generate a power event when the Logical Unit is considered to have entered a power state.
In order to create a robust power management environment, Logical Units shall support the following:
- Four power states: Active(D0), Idle(D1), Standby(D2) and Sleep(D3).
- Idle Timer. Provides a method for the Logical Unit to enter Idle state from Active state, following a
programmed period of inactivity.
- Standby Timer. Provides a method for the Logical Unit to enter Standby state from either Active or
Idle state, following a programmed period of inactivity.
- START/STOP UNIT Command and the Power Condition Field. Provides a method for the Initiator to
request the Logical Unit to enter a power state.
- GET EVENT/STATUS NOTIFICATION Command. Notifies the Initiator of power state changes and
current power status.
- Power Condition Mode page. Enables or disables timers and specifies the reload value of the Idle
and Standby timers.
313
BSR NCITS 333
Media Status Notifications, when the Logical Unit is unable to determine if media has been changed while the
Logical Unit was in the sleep state, the Logical Unit shall report NEW MEDIA on the next GET
EVENT/STATUS NOTIFICATION (Media Status) command.
In the Sleep state, the Initiator may completely remove power from the device by turning off Vcc.
314
BSR NCITS 333
If a power change event has not been reported to the Initiator, when a new event is generated, the Logical Unit
may choose only to report the most recent power event.
Hard Reset or
Media Not Ready
Media Access ACTIVE Media Access
Idle Command
IDLE STANDBY
Sleep Command
Device Reset
Sleep Command
Sleep Command
SLEEP
VCC Removed
OFF
315
BSR NCITS 333
316
BSR NCITS 333
317
BSR NCITS 333
318
BSR NCITS 333
319
BSR NCITS 333
320
BSR NCITS 333
H.2. History
The separation of status and error reporting is very important in multitasking environments. Typically, the
operating system needs to constantly be aware of the status of the drive. Various applications, operating
through a variety of OS interfaces, may also need to be aware of Logical Unit status. Reporting of status via
errors breaks down in this environment; only one process is made aware of state changes via the error, while
other processes cannot obtain the same state information because the error (status change) has already been
reported to the Initiator (according to the drive).
Features do not replace legacy behavior. Features, in most cases, define a subset of legacy behavior. Several
Features, taken together, are generally equivalent to legacy devices of the same type. Error and status
reporting in legacy Initiator environments is the same as legacy devices, without any special mode setting.
The Features described in Mt. Fuji 2 add something new: reporting. Legacy devices, while implementing the
content of the Features, did not have any mechanism to report specifically the drive’s capabilities. The closest
mechanism that has existed is a command that reported implemented commands. Implemented mode pages
are also reportable via standard mechanisms. However, a command is more than an operation code
(OpCode). A whole set of commands, mode pages, and behavior needs to be grouped together to be useful.
For example, write once MO, hard disk drives, and CD-R all use the WRITE command, but it is impossible to
use the same strategies for writing these three media. Typically, different drivers or fragments or drivers are
used for each kind of media. The previous mechanism would only identify that the WRITE command was
implemented, but could not identify how to use it.
The capabilities of a particular Logical Unit may change at arbitrary times. The most common example of this
is seen in a removable medium device. Even a basic removable magnetic medium device changes: from a
random read/write device to a virtually less functional device when the medium is removed. Multi-function
devices can change their behavior even more radically when they accept a variety of physical and logical
formats.
Before Features, Initiators had to use a trial and error method for determining what would or would not
function. Medium codes became outdated even before publication of the relevant standard, and still were not
321
BSR NCITS 333
adequate to describe all media. The Profiles, also introduced in Mt. Fuji 2, provide an equivalent to the
medium type. However, the Profile does not indicate exact capabilities for the drive/medium system, only a
generic identification of core capabilities.
Feature reporting is not completely new. Operating systems first identify a driver via the device type. The
device type implied a core set of functions, e.g. a CD-ROM Logical Unit would support READ, READ TOC,
etc. However, even these commands would not work if no medium were loaded. A driver would determine
media status by trying a few commands and examining the error codes. After determining that media was
present, a driver would have to probe to find out about additional Features such as audio or medium changers.
Features were “reportable,” but each Feature had a different mechanism, and many of the mechanisms relied
on the success or failure of special “key” commands.
H.4. Compatibility
Drives implementing Feature reporting are fully compatible with legacy systems.
The GET CONFIGURATION changes no behavior of the drive; it simply reports existing state information.
Repeated GET CONFIGURATION commands will report the same information (unless the user inserts or
removes the medium, etc.). GET CONFIGURATION never changes any state information in the drive,
including UNIT ATTENTION conditions.
The GET EVENT/STATUS NOTIFICATION command changes legacy behavior only slightly, and not at all in a
legacy environment. In a legacy environment, UNIT ATTENTION conditions are reported as done in the past.
In a new environment, completion of the GET EVENT/STATUS NOTIFICATION command clears the UNIT
ATTENTION. In a legacy environment, it would be cleared anyway; there are two differences: 1) the error is
reported as an event, rather than as an error, and 2) in a queued environment, the GET EVENT/STATUS
NOTIFICATION command will complete before anything else, because it was idle in the drive, awaiting
completion. In this environment, UNIT ATTENTION reporting will be very rare or non-existent.
322
BSR NCITS 333
H.5. Summary
Features do not radically modify any legacy behavior or functionality. The only new parts involve reporting of
behavior, and typically reflect state information already required of any firmware implementation, via two new
commands. One command reports status, and the other notifies the Initiator that the status may have
changed.
The benefits include easier coding of highly robust drivers, fewer error conditions, and forward and backward
compatibility with operating system drivers.
323
BSR NCITS 333
324
BSR NCITS 333
325
BSR NCITS 333
326
BSR NCITS 333
327
BSR NCITS 333
328
BSR NCITS 333
329
BSR NCITS 333
J.1. General
The CD-TEXT information in the Lead-in area is retrieved from raw R-W Sub-channel data. The data format of
RAW Sub-channel is explained in sub-clause 6.1.15. READ CD Command. 6 bits of each byte are R-W Raw
st
data and it is converted from 6 bits to 8 bits from the 1 bytes, it makes 4 chunk of 18 bytes data. Each 18
bytes of data is called CD-TEXT Pack Data as shown in Table J.1. CD-TEXT information is recorded
repeatedly in the Lead-in area and this one repeated data is called Text Group. Text Group consists of up to 8
types of language Blocks. Each Block represents one language and consists of maximum 255 Pack Data.
Table J.1. defines the contents of one Pack Data.
Table J.1. - CD-TEXT Pack Data format for the Lead-in area
BYTE CD-TEXT Pack Data Format
0 Header Field ID1: Pack Type Indicator
1 Header Field ID2: Pack Type Indicator
2 Header Field ID3: Pack Type Indicator
3 Header Field ID4: Block Number and Character Position Indicator
4 Text Data Field byte 0
5 Text Data Field byte 1
6 Text Data Field byte 2
7 Text Data Field byte 3
8 Text Data Field byte 4
9 Text Data Field byte 5
10 Text Data Field byte 6
11 Text Data Field byte 7
12 Text Data Field byte 8
13 Text Data Field byte 9
14 Text Data Field byte 10
15 Text Data Field byte 11
16 CRC Field byte 0 or Reserved
17 CRC Field byte 1 or Reserved
Pack is used to indicate the chunk of data in 18 bytes as shown above. Each Pack consists of a Header Field,
Text Data Field and CRC Field.
330
BSR NCITS 333
Pack Type Indicator has the value and descriptions defined in Table J.2. Packs shall be encoded in the order
of the items listed in the Table.
Bit 7(MSB) is the Double Byte Character Code indication, that indicates if Text Data Field contains the Double
Byte Character Code or not. If it is set to 0b, the Single Byte Character Code is used.
Bit 4 to 6, 3 bits, indicate the Block Number of the Block to that the Pack belongs. A Block is used to indicate a
set of text information representing one particular language. It can be used up to 8 at the same time.
Bit 0 to Bit 3, indicate the Character Position. It is the number of character in the strings that belongs to the
Text Data Field in the previous Pack. The Character Position starts from 0 to 15 and 15 indicates that the first
character belongs to the one before the previous Pack. When the character code is double byte code, a set of
2 bytes in the Text Data Field is counted at one.
A null code is also counted as a character, that indicates termination of each strings.
Character Position is not used in Packs with ID1=88h, 89h and 8Fh. 00h shall be used in all these Packs.
331
BSR NCITS 333
A Text Data Field consists of 12 bytes. It contains either character strings or binary information depending on
the type of Pack. All data in this field shall be transferred as recorded on the disc.
Packs except ID1=88h, 89h and 8Fh shall contains character strings in the Text Data Field. If Packs with
ID1=80h to 85h, and 8Eh are used, a character strings for each track shall be provided.
A character string consists of series of characters and a terminator(One null code for single byte, two null code
for double byte)`
The size of a character string is recommended to be less than 160 bytes. If a character string does not fit in a
Text Data Field of a Pack, it is continued onto the succeeding Packs. The succeeding character string will be
encoded starting at the next byte in the Text Data Field after the terminator of the current string. Unused bytes
in the Text Data Field shall be filled with null codes.
In case the same character stings is used for consecutive tracks, the Tab Indicator may be used to indicate the
same as previous track. It is a single tab code (09h) for single byte codes, and two tab codes for double bytes
character codes. It shall not used for the first track.
Packs with ID1=86h, 87h, 88h, 89h and 8Fh contains binary information in the Text Data Field.
CRC Field consists of 2 bytes. Initiator system may use these bytes to check errors in the Pack. The
16 12 5
polynomial is X + X + X + 1. All bits shall be inverted. This field is not mandatory for supporting CD-TEXT
data.
332