Files
dec-doc-proc/sources/tmscp.txt
2025-01-26 03:02:54 +01:00

9677 lines
402 KiB
Plaintext

Tape Mass Storage Control Protocol
ECO Controlled Version 2.0.2
8 November 1987
Send all inquiries and comments to COOKIE::SSAG
This document defines the Tape aspect of the Mass
Storage Control Protocol (MSCP).
DIGITAL EQUIPMENT CORPORATION CONFIDENTIAL AND PROPRIETARY
This document is an unpublished work and contains
valuable trade secrets which are confidential and
proprietary to Digital Equipment Corporation, and may
only be disclosed to individuals who have entered into a
confidentiality agreement with Digital, and may not be
copied or reproduced in whole or in part.
Copyright (c) Digital Equipment Corporation 1982, 1983,
1984, 1985, 1986, 1987. All Rights Reserved.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
CONTENTS Page ii
8 November 1987
CONTENTS
CHAPTER 1 INTRODUCTION
1.1 Scope . . . . . . . . . . . . . . . . . . . 1-1
1.2 References . . . . . . . . . . . . . . . . . 1-1
1.2.1 MSCP Specification . . . . . . . . . . . . 1-1
1.2.1.1 Table Of Contents Abstract . . . . . . . 1-1
1.2.2 STI Specification . . . . . . . . . . . . 1-3
CHAPTER 2 TERMINOLOGY
CHAPTER 3 TMSCP GENERAL OPERATIONAL CHARACTERISTICS
3.1 Unit States . . . . . . . . . . . . . . . . 3-1
3.1.1 Unit Offline . . . . . . . . . . . . . . . 3-1
3.1.2 Unit Available . . . . . . . . . . . . . . 3-1
3.1.3 Unit Online . . . . . . . . . . . . . . . 3-1
3.1.4 Exclusive Access Of A Unit . . . . . . . . 3-1
3.1.5 Unit Operating Beyond EOT . . . . . . . . 3-1
3.1.6 Unit Position Lost . . . . . . . . . . . . 3-1
3.1.7 Unit Serious Exception Pending . . . . . . 3-2
3.1.8 Unit Cached Data Lost . . . . . . . . . . 3-2
3.2 Command Categories And Execution Order . . . 3-2
3.2.1 Lengthy Command Considerations . . . . . . 3-2
3.2.1.1 Synchronous Vs Asynchronous . . . . . . 3-2
3.2.1.2 Abort . . . . . . . . . . . . . . . . . 3-3
3.3 Tape Motion Command Operation . . . . . . . 3-6
3.3.1 "read" Type . . . . . . . . . . . . . . . 3-6
3.3.1.1 Direction . . . . . . . . . . . . . . . 3-6
3.3.1.2 BOT Handling . . . . . . . . . . . . . . 3-6
3.3.1.3 EOT Handling . . . . . . . . . . . . . . 3-7
3.3.1.4 Tape Mark Handling . . . . . . . . . . . 3-7
3.3.2 "write" Type . . . . . . . . . . . . . . . 3-7
3.3.2.1 Direction . . . . . . . . . . . . . . . 3-7
3.3.2.2 BOT Handling . . . . . . . . . . . . . . 3-7
3.3.2.3 EOT Handling . . . . . . . . . . . . . . 3-8
3.3.2.4 Tape Mark Handling . . . . . . . . . . . 3-8
3.3.3 "ancillary" Type . . . . . . . . . . . . . 3-8
3.3.3.1 Direction . . . . . . . . . . . . . . . 3-8
3.3.3.2 BOT Handling . . . . . . . . . . . . . . 3-8
3.3.3.3 EOT Handling . . . . . . . . . . . . . . 3-8
3.3.3.4 Tape Mark Handling . . . . . . . . . . . 3-8
3.4 Data Transfer Operations . . . . . . . . . . 3-8
3.4.1 Record Length . . . . . . . . . . . . . . 3-9
3.4.2 Tape Format Employed . . . . . . . . . . . 3-9
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
CONTENTS Page iii
8 November 1987
3.4.3 Host Buffer Access . . . . . . . . . . . . 3-10
3.4.3.1 WRITE Command . . . . . . . . . . . . . 3-10
3.4.3.2 READ Command . . . . . . . . . . . . . . 3-10
3.4.3.2.1 Forward Direction . . . . . . . . . . 3-11
3.4.3.2.2 Reverse Direction . . . . . . . . . . 3-11
3.4.3.3 ACCESS Command . . . . . . . . . . . . . 3-11
3.4.3.4 Compare Operations . . . . . . . . . . . 3-11
3.4.4 End Message Byte Count Fields . . . . . . 3-12
3.5 General Error Processing . . . . . . . . . . 3-12
3.5.1 Reporting Precedence . . . . . . . . . . . 3-12
3.5.2 Serious Exception Handling . . . . . . . . 3-13
3.5.3 Position Lost Handling . . . . . . . . . . 3-16
3.5.4 Asynchronous Completion Handling Of
Non-Data Transfer Commands . . . . . . . . 3-16
3.5.5 Data Error Recovery . . . . . . . . . . . 3-17
3.5.5.1 Suppression . . . . . . . . . . . . . . 3-18
3.5.5.2 Enhanced Write Error Recovery . . . . . 3-18
3.5.6 Error Log Requirements . . . . . . . . . . 3-19
3.6 Tape Caching . . . . . . . . . . . . . . . . 3-19
3.6.1 Write-Back Caching . . . . . . . . . . . . 3-20
3.6.1.1 Unit Flag Conflicts . . . . . . . . . . 3-23
3.6.1.2 Command Modifier Conflicts . . . . . . . 3-23
3.6.1.3 Error And Exception Handling . . . . . . 3-23
3.6.1.4 Cached Data Lost Handling . . . . . . . 3-25
3.6.2 Read-Ahead Caching . . . . . . . . . . . . 3-28
3.6.2.1 Unit Flag Conflicts . . . . . . . . . . 3-29
3.6.2.2 Command Modifier Conflicts . . . . . . . 3-29
3.6.2.3 Error Handling . . . . . . . . . . . . . 3-30
CHAPTER 4 TMSCP MESSAGE OVERVIEW
4.1 Tape MSCP Functions Having No Disk MSCP
Counterparts . . . . . . . . . . . . . . . . 4-1
4.2 Identical Disk And Tape MSCP Functions . . . 4-1
4.3 Tape Specific MSCP Commands And Responses . 4-1
4.4 Generic Command Message Format . . . . . . . 4-2
4.4.1 Command Modifiers . . . . . . . . . . . . 4-2
4.5 End Message Format . . . . . . . . . . . . . 4-3
4.5.1 Flags . . . . . . . . . . . . . . . . . . 4-3
4.5.2 Status . . . . . . . . . . . . . . . . . . 4-3
4.5.3 Status Codes . . . . . . . . . . . . . . . 4-4
4.5.4 Byte Count (Host Transfer) . . . . . . . . 4-7
4.5.5 Byte Count (Tape Record) . . . . . . . . . 4-8
4.5.6 Position (Object Count) . . . . . . . . . 4-8
CHAPTER 5 TMSCP COMMAND DESCRIPTIONS
5.1 ACCESS Command . . . . . . . . . . . . . . . 5-1
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
CONTENTS Page iv
8 November 1987
5.1.1 Command Message Format . . . . . . . . . . 5-1
5.1.2 End Message Format . . . . . . . . . . . . 5-2
5.1.3 Description . . . . . . . . . . . . . . . 5-4
5.2 AVAILABLE Command . . . . . . . . . . . . . 5-5
5.2.1 Command Message Format . . . . . . . . . . 5-5
5.2.2 End Message Format . . . . . . . . . . . . 5-6
5.2.3 Description . . . . . . . . . . . . . . . 5-8
5.3 COMPARE HOST DATA Command . . . . . . . . . 5-9
5.3.1 Command Message Format . . . . . . . . . . 5-9
5.3.2 End Message Format . . . . . . . . . . . . 5-10
5.3.3 Description . . . . . . . . . . . . . . . 5-12
5.4 ERASE Command . . . . . . . . . . . . . . . 5-13
5.4.1 Command Message Format . . . . . . . . . . 5-13
5.4.2 End Message Format . . . . . . . . . . . . 5-14
5.4.3 Description . . . . . . . . . . . . . . . 5-15
5.5 ERASE GAP Command . . . . . . . . . . . . . 5-16
5.5.1 Command Message Format . . . . . . . . . . 5-16
5.5.2 End Message Format . . . . . . . . . . . . 5-17
5.5.3 Description . . . . . . . . . . . . . . . 5-18
5.6 FLUSH Command . . . . . . . . . . . . . . . 5-19
5.6.1 Command Message Format . . . . . . . . . . 5-19
5.6.2 End Message Format . . . . . . . . . . . . 5-20
5.6.3 Description . . . . . . . . . . . . . . . 5-22
5.7 GET UNIT STATUS Command . . . . . . . . . . 5-23
5.7.1 Command Message Format . . . . . . . . . . 5-23
5.7.2 End Message Format . . . . . . . . . . . . 5-24
5.7.3 Description . . . . . . . . . . . . . . . 5-33
5.8 ONLINE Command . . . . . . . . . . . . . . . 5-34
5.8.1 Command Message Format . . . . . . . . . . 5-34
5.8.2 End Message Format . . . . . . . . . . . . 5-36
5.8.3 Description . . . . . . . . . . . . . . . 5-39
5.9 READ Command . . . . . . . . . . . . . . . . 5-40
5.9.1 Command Message Format . . . . . . . . . . 5-40
5.9.2 End Message Format . . . . . . . . . . . . 5-41
5.9.3 Description . . . . . . . . . . . . . . . 5-43
5.10 REPOSITION Command . . . . . . . . . . . . . 5-44
5.10.1 Command Message Format . . . . . . . . . . 5-44
5.10.2 End Message Format . . . . . . . . . . . . 5-46
5.10.3 Description . . . . . . . . . . . . . . . 5-48
5.11 SET UNIT CHARACTERISTICS Command . . . . . . 5-56
5.11.1 Command Message Format . . . . . . . . . . 5-56
5.11.2 End Message Format . . . . . . . . . . . . 5-61
5.11.3 Description . . . . . . . . . . . . . . . 5-64
5.12 WRITE Command . . . . . . . . . . . . . . . 5-65
5.12.1 Command Message Format . . . . . . . . . . 5-65
5.12.2 End Message Format . . . . . . . . . . . . 5-67
5.12.3 Description . . . . . . . . . . . . . . . 5-69
5.13 WRITE TAPE MARK Command . . . . . . . . . . 5-70
5.13.1 Command Message Format . . . . . . . . . . 5-70
5.13.2 End Message Format . . . . . . . . . . . . 5-71
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
CONTENTS Page v
8 November 1987
5.13.3 Description . . . . . . . . . . . . . . . 5-73
CHAPTER 6 TMSCP ERROR LOG MESSAGES
6.1 TMSCP Error Log Message Format . . . . . . . 6-1
6.1.1 Tape Errors . . . . . . . . . . . . . . . 6-3
6.1.2 STI Communication Or Command Failures . . 6-5
6.1.3 STI Formatter Error Log . . . . . . . . . 6-6
6.1.4 STI Drive Error Log . . . . . . . . . . . 6-7
APPENDIX A OPCODE, FLAG AND OFFSET DEFINITIONS
APPENDIX B STATUS AND EVENT CODE DEFINITIONS
APPENDIX C MISCELLANEOUS TABLES
Table C-1: Tape Format Flag Values . . . . . C-1
Table C-2: Tape Format Bitflag Values . . . C-2
Table C-3: Controller Specific Maximum Record
Size . . . . . . . . . . . . . . . . . . . . C-3
Table C-4: Format Specific Long Gap Values . C-3
APPENDIX D REPOSITION COMMAND VARIATIONS
APPENDIX E WAIVERS AND EXCEPTIONS
E.1 TU81 . . . . . . . . . . . . . . . . . . . . E-1
E.1.1 "EOT Encountered" Status Subcode . . . . . E-1
E.1.2 "Serious Exception" And "EOT Encountered" E-1
E.1.3 "Byte Count (Host Transfer)" On Read
Reverse . . . . . . . . . . . . . . . . . E-1
E.2 TK50 . . . . . . . . . . . . . . . . . . . . E-2
E.2.1 Incorrect Command Processing While Position
Lost . . . . . . . . . . . . . . . . . . . E-2
E.2.2 COMPARE HOST DATA Error Reporting . . . . E-3
E.2.3 Incorrect "Offline" Error Reporting . . . E-3
E.2.4 Progress Indicator Processing . . . . . . E-3
E.2.5 Multiple Error Logs Reported . . . . . . . E-4
E.2.6 Invalid "Records Skipped Count" . . . . . E-4
E.2.7 Hardware Serial Number . . . . . . . . . . E-5
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
CONTENTS Page vi
8 November 1987
APPENDIX F REVISION HISTORY
F.1 Changes Since Version 1.6 . . . . . . . . . F-1
F.2 Changes Since Version 1.6.4 . . . . . . . . F-2
| F.3 Changes Since Version 2.0.0 . . . . . . . . F-3
TABLES
A-1 Control Message Opcodes . . . . . . . . . . A-1
A-2 Command Modifiers . . . . . . . . . . . . . A-3
A-3 End Message Flags . . . . . . . . . . . . . A-4
A-4 Controller Flags . . . . . . . . . . . . . . A-4
A-5 Unit Flags . . . . . . . . . . . . . . . . . A-5
A-6 Command Message Offsets . . . . . . . . . . A-6
A-7 End and Attention Message Offsets . . . . . A-7
A-8 Error Log Message Offsets . . . . . . . . . A-9
A-9 Error Log Message Format Codes . . . . . . . A-11
A-10 Error Log Message Flags . . . . . . . . . . A-11
A-11 Access Nonvolatile Memory Command Operation
Codes . . . . . . . . . . . . . . . . . . . A-11
B-1 Status and Event Codes . . . . . . . . . . . B-2
B-2 Status Only Subcode Values . . . . . . . . . B-3
B-3 "Compare Error" Status or Event Subcode
Values . . . . . . . . . . . . . . . . . . . B-5
B-4 "Data Error" Status or Event Subcode Values B-5
B-5 "Host Buffer Access Error" Status or Event
Subcode Values . . . . . . . . . . . . . . . B-5
B-6 "Controller Error" Status or Event Subcode
Values . . . . . . . . . . . . . . . . . . . B-6
B-7 "Drive Error" Status or Event Subcode Values B-7
B-8 "Formatter Error" Status or Event Subcode
Values . . . . . . . . . . . . . . . . . . . B-7
B-9 "Message From An Internal Diagnostic" Event
Only Subcode Values . . . . . . . . . . . . B-7
C-1 Tape Format Flag Values . . . . . . . . . . C-1
C-2 Tape Format Bitflag Values . . . . . . . . . C-2
C-3 Controller Specific Maximum Record Size . . C-3
C-4 Format Specific Long Gap Values . . . . . . C-3
D-1 REPOSITION Command Variations . . . . . . . D-1
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
INTRODUCTION Page 1-1
8 November 1987
1 CHAPTER 1
2 INTRODUCTION
3 1.1 Scope
4 This document defines the Tape Class Mass Storage Control
5 Protocol (TMSCP), a magnetic tape applications protocol intended
6 for use with intelligent mass storage controllers. Although
7 Magnetic Tape Class Devices possess operation strategies inherent
8 to themselves, the architecture of TMSCP is not autonomous, but
9 rather conforms to the overall philosophy defined in the "Mass
10 Storage Control Protocol" specification, hereinafter referred to
11 as MSCP.
12 1.2 References
13 1.2.1 MSCP Specification
14 The MSCP specification is necessary to gain a complete
15 understanding of TMSCP and its relationship to the overall I/O
16 architecture. Numerous areas have been omitted from this
17 document since they are fully defined in MSCP. The next section
18 contains an abstract of the Table of Contents of ECO controlled
19 MSCP Version 1.3 to aid in referencing particular subjects not
20 fully defined in this document.
21 1.2.1.1 Table Of Contents Abstract
22 CHAPTER 1 INTRODUCTION
23 1.1 Overview Of MSCP Subsystem
24 1.2 Purpose
25 1.3 Method Of Presentation
26 1.4 Scope
27 CHAPTER 2 TERMINOLOGY
28 CHAPTER 3 CLASS DRIVER / MSCP SERVER COMMUNICATIONS
29 3.1 Connection
30 3.2 Flow Control
31 3.3 Multihost Communication
32 CHAPTER 4 ALGORITHMS AND USAGE RULES
33 4.1 Controller States
34 4.2 Controls And Indicators
35 4.3 Unit States
36 4.4 Unit Numbers
37 4.5 Command Categories And Execution Order
38 4.6 Class Driver / MSCP Server Synchronization
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
INTRODUCTION Page 1-2
References 8 November 1987
1 4.7 Class Driver Error Recovery
2 4.8 Serious Exceptions
3 4.9 Host Access Timeouts
4 4.10 Command Timeouts
5 4.11 Disk Geometry And Format
6 4.12 Bad Block Replacement
7 4.13 Write Protection
8 4.14 Compare Operations
9 4.15 Special Drive Topologies
10 4.16 Controller And Unit Identifiers
11 4.17 Media Type Identifiers
12 CHAPTER 5 MSCP CONTROL MESSAGES
13 5.1 Generic Control Message Format
14 5.2 Reserved And Undefined Fields
15 5.3 Command Messages
16 5.4 End Messages
17 5.5 Controller Flags
18 5.6 Unit Flags
19 5.7 Attention Messages
20 5.8 Error Log Messages
21 CHAPTER 6 MINIMAL MSCP COMMAND SET
22 6.1 Overview
23 6.2 ABORT Command
24 6.3 ACCESS Command
25 6.4 AVAILABLE Command
26 6.5 COMPARE HOST DATA Command
27 6.6 DETERMINE ACCESS PATHS Command
28 6.7 ERASE Command
29 6.8 GET COMMAND STATUS Command
30 6.9 GET UNIT STATUS Command
31 6.10 ONLINE Command
32 6.11 READ Command
33 6.12 REPLACE Command
34 6.13 SET CONTROLLER CHARACTERISTICS Command
35 6.14 SET UNIT CHARACTERISTICS Command
36 6.15 WRITE Command
37 CHAPTER 7 MULTIHOST SUPPORT FUNCTIONALITY
38 7.1 Overview
39 7.2 Multihost ABORT Command
40 7.3 Multihost ACCESS NONVOLATILE MEMORY Command
41 7.4 Multihost AVAILABLE Command
42 7.5 Multihost GET COMMAND STATUS Command
43 7.6 Multihost GET UNIT STATUS Command
44 7.7 Multihost ONLINE Command
45 7.8 Multihost SET CONTROLLER CHARACTERISTICS
46 Command
47 7.9 Multihost SET UNIT CHARACTERISTICS Command
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
INTRODUCTION Page 1-3
References 8 November 1987
1 CHAPTER 8 CONTROLLER INITIATED BAD BLOCK
2 REPLACEMENT
3 8.1 Controller Initiated Bad Block Replacement
4 Overview
5 8.2 Data Safety Write Protection
6 8.3 Bad Block Replacement
7 8.4 Replacement Control Table Access
8 8.5 Atomic Bad Block Replacement
9 8.6 Error Log Messages
10 8.7 Unit Context Information
11 8.8 Actions During ONLINE
12 8.9 Actions During SET UNIT CHARACTERISTICS
13 8.10 Actions Before First Modification
14 8.11 MSCP Control Message Format Changes
15 8.12 Host Support For Controller Initiated Bad
16 Block Replacement
17 APPENDIX A OPCODE, FLAG, AND OFFSET DEFINITIONS
18 APPENDIX B STATUS AND EVENT CODE DEFINITIONS
19 APPENDIX C CONTROLLER, UNIT, AND MEDIA TYPE
20 IDENTIFIERS
21 APPENDIX D BUFFER DESCRIPTOR FORMATS
22 APPENDIX E WAIVERS AND EXCEPTIONS
23 APPENDIX F REVISION HISTORY
24 1.2.2 STI Specification
25 The Storage Tape Interface Specification, hereinafter referred to
26 as STI, defines a communications interface used between DIGITAL
27 tape formatters and controllers. Chapter 6 makes reference to
28 various STI responses used in error log messages.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TERMINOLOGY Page 2-1
8 November 1987
1 CHAPTER 2
2 TERMINOLOGY
3 Addressable Unit:
4 The host addressable unit in TMSCP is a tape unit. A tape
5 formatter is only visible to a controller and not to a host.
6 Beginning-of-tape (BOT):
7 The beginning of the usable recording area of a magnetic
8 tape. There are two aspects used in defining BOT:
9 1. Physical BOT, the position forward of the tape leader
10 signified by a Tape Format dependent delimiter.
11 2. Logical BOT, the position just before the first Object
12 recorded (i.e., object count 0) on the tape.
13 This distinction is necessary because the Tape Format
14 Identification Area (TFIA) used in certain Tape Formats
15 extends beyond Physical BOT causing a physical displacement
16 of Logical BOT. Depending on the circumstance, TMSCP
17 controllers will use either physical BOT or logical BOT when
18 reporting BOT, as is convenient.
19 End-of-Tape (EOT):
20 That physical position on a magnetic tape where a Tape Format
21 dependent delimiter signals the beginning of the tape trailer
22 area. Due to variations in delimiter sensing, it is possible
23 for the sensing of EOT to vary on a given piece of media from
24 forward to reverse direction, from drive to drive, from read
25 to write, from caching to non-caching, and for other
26 device-specific reasons. The amount of variation in EOT
27 reporting is device-specific. Thus, applications should not
28 depend upon EOT deasserting in the reverse direction at the
29 same point it asserted in the forward direction, nor should
30 they depend upon EOT asserting at the same position each time
31 the media is accessed.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TERMINOLOGY Page 2-2
8 November 1987
1 Logical End-of-Tape (LEOT):
2 Two consecutive Tape Marks which indicate a host-imposed
3 logical end of recorded data (i.e., end of volume) on a
4 magnetic tape. LEOT is detected and reported during forward
5 REPOSITION operations at the option of the host.
6 Long Gap:
7 An extended Record gap (usually a group of contiguous Record
8 gaps) sufficient enough in length or quantity to indicate
9 that the remainder of the magnetic tape is unrecorded. Long
10 gap values are Tape Format dependent as defined in Appendix
11 C, Table C-4.
12 Object:
13 An "object" is either a Record or a Tape Mark. The first
14 tape Object is recorded forward of the Tape Format
15 Identification Area (TFIA). Note that the TFIA, Record Gaps,
16 and any other control information (e.g., error
17 detection/correction frames) are not considered to be
18 Objects.
19 Physical End-of-Tape (PEOT):
20 The end of usable recording area, located in the tape trailer
21 area, beginning at EOT and extending through a Tape Format
22 dependent length. Refer to the appropriate media
23 specification for the PEOT size of a specific media.
24 Record:
25 The unit of data transfer, consisting of a collection of data
26 bytes which are written or read as a single entity, without
27 regard for Tape Format dependent physical or host defined
28 logical composition.
29 Record Gap:
30 A Tape Format dependent delimiter recorded on a magnetic tape
31 which separates Objects and control information from one
32 another or is used to by-pass defects on the recording
33 surface. Normal Record Gaps have no special significance to
34 TMSCP or the host. They are only relevant in describing tape
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TERMINOLOGY Page 2-3
8 November 1987
1 position.
2 Tape Format:
3 The recording method used to store/retrieve data on a
4 magnetic tape. Refer to Appendix C, Tables C-1 and C-2 for a
5 list of recognized Tape Formats.
6 Tape Format Identification Area (TFIA):
7 The area (around physical BOT) where Tape Format dependent
8 format determination information is recorded.
9 Tape Mark:
10 A Tape Format dependent delimiter recorded on a magnetic tape
11 which usually serves as a separator for host defined files
12 (i.e., end of file mark).
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-1
8 November 1987
1 CHAPTER 3
2 TMSCP GENERAL OPERATIONAL CHARACTERISTICS
3 3.1 Unit States
4 The following subsections clarify Unit States as they apply to
5 TMSCP. For an in depth definition of Unit States, refer to MSCP.
6 3.1.1 Unit Offline
7 If a formatter is offline to a controller, the addressed tape
8 unit connected to the offline formatter is also offline to a
9 host. A tape unit connected to a formatter which is online to a
10 controller is subsequently offline to any other controller.
11 3.1.2 Unit Available
12 To be Unit-Available, a tape unit must be powered up, online to
13 the formatter, have a magnetic tape loaded, and be ready to
14 perform I/O.
15 3.1.3 Unit Online
16 Same as MSCP.
17 3.1.4 Exclusive Access Of A Unit
18 Same as MSCP.
19 3.1.5 Unit Operating Beyond EOT
20 The "EOT Encountered" end flag, as described in section 4.5.1, is
21 considered part of the tape unit state. The current state of the
22 "EOT encountered" end flag is returned in the end messages of all
23 commands which specify the Unit Number field (including those
24 defined only in MSCP).
25 3.1.6 Unit Position Lost
26 The "Position Lost" end flag, as described in section 4.5.1, is
27 considered part of the tape unit state. The current state of the
28 "Position Lost" end flag is returned in the end messages of all
29 commands which specify the Unit Number field (including those
30 defined only in MSCP).
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-1.1
Unit States 8 November 1987
1 | NOTE
2 | It is important to distinguish between the
3 | Position Lost state, as indicated by the Position
4 | Lost end flag, and the Position Lost status
5 | reported in end messages and error logs. Refer
6 | to sections 3.5.3, 4.5.1, and 4.5.3 for further
7 | information.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-2
Unit States 8 November 1987
1 3.1.7 Unit Serious Exception Pending
2 The "Serious Exception" end flag, as described in section 4.5.1,
3 is considered part of the tape unit state. The current state of
4 the "Serious Exception" end flag is returned in the end messages
5 of all commands which specify the Unit Number field (including
6 those defined only in MSCP).
7 3.1.8 Unit Cached Data Lost
8 The "Cached Data Lost" end flag, as described in section 4.5.1,
9 is considered part of the tape unit state. The current state of
10 the "Cached Data Lost" end flag is returned in the end messages
11 of all commands which specify the Unit Number field (including
12 those defined only in MSCP).
13 3.2 Command Categories And Execution Order
14 As noted in MSCP, TMSCP only uses immediate and sequential
15 command types. TMSCP implementation of the immediate command
16 type and most sequential commands is identical to that described
17 in MSCP. However, certain tape operations (e.g., ERASE and
18 REPOSITION) can take a considerable amount of time (up to 5
19 minutes or more) to complete, depending on the amount of tape
20 traversed during the operation. Special consideration of lengthy
21 commands is necessary in order to reduce the impact on the host
22 environment. As an additional performance feature, TMSCP
23 provides support for the caching of data transfer operations.
24 The remaining subsections provide a detailed description of those
25 special considerations.
26 3.2.1 Lengthy Command Considerations
27 3.2.1.1 Synchronous Vs Asynchronous
28 Treating lengthy commands as purely sequential (synchronous)
29 operations can adversely affect host operation in that host
30 resources dedicated to the completion of the operation cannot be
31 relinquished until completion. Therefore, asynchronous operation
32 of lengthy, non-data transfer commands is preferred. On the
33 other hand, confirmation of successful completion may be more
34 important to the host (e.g., data erasure in a high security
35 installation).
36 TMSCP controllers accommodate both situations by allowing the
37 host to specify, for a limited set of non-data transfer commands,
38 whether a command is to complete in a synchronous or asynchronous
39 manner via the "Immediate Completion" command modifier.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-3
Command Categories And Execution Order 8 November 1987
1 If the "Immediate Completion" command modifier is set, the
2 controller returns the end message with the status field set to
3 Success (subcode "Normal") as soon as the specified operation is
4 initiated on the tape unit (for non-data transfer commands), or
5 as soon as the data has been transferred from the host buffer
6 (for data transfer commands). The command completion is
7 therefore asynchronous to the completion of the tape unit
8 operation. Until the tape unit operation completes the
9 controller must preserve the sequentiality of subsequent
10 sequential commands issued by the host. Furthermore, the
11 controller must also ensure that subsequent sequential commands
12 appear to be progressing towards completion in order to satisfy
13 command timeout requirements as defined in MSCP.
14 If the "Immediate Completion" command modifier is clear, the
15 controller will not return the end message until the tape unit
16 operation is completed.
17 The "Immediate Completion" command modifier can only be specified
18 in the following non-data transfer commands: ERASE and
19 REPOSITION. In the case of the REPOSITION command, asynchronous
20 operation will only occur if the "Immediate Completion" and
21 "Rewind" command modifiers are set and the "record count" and
22 "tape mark count" fields are both zero (i.e., rewind to BOT
23 only). The controller will ignore the "Immediate Completion"
24 command modifier in all other variations of the REPOSITION
25 command.
26 The AVAILABLE command is always treated as an asynchronous
27 completion command (without the need for a command modifier).
28 Refer to section 3.5.4 for information regarding the occurrence
29 of an error during asynchronous operations.
30 3.2.1.2 Abort
31 Host resource blockage comes into play again when the host wants
32 to ABORT a lengthy synchronous command. A second concern is that
33 the tape unit operation is ABORTED in a controlled, predictable
34 manner.
35 TMSCP controllers must ABORT lengthy commands specifically as
36 follows:
37 o ERASE command with "Immediate Completion" command
38 modifier clear:
39 Abort process - end message returned as soon as
40 ABORT command is received, tape motion continues
41 until erase is completed (ten feet past EOT), and
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-4
Command Categories And Execution Order 8 November 1987
1 tape has rewound to BOT.
2 o REPOSITION command with "Rewind" command modifier set,
3 "Immediate Completion" command modifier clear, "Object
4 Count" and "Reverse" modifiers either set or clear, zero
5 "record count or object count" and "tape mark count"
6 fields:
7 Abort process - end message returned as soon as
8 ABORT command is received; tape motion continues to
9 BOT.
10 o REPOSITION command with "Rewind" command modifier clear,
11 "Object Count" and "Reverse" modifiers either set or
12 clear, non-zero "record count or object count" or "tape
13 mark count" field(s):
14 Abort process - after receipt of the ABORT command,
15 tape motion continues to the first record gap
16 encountered; end message returned as soon as tape
17 motion ceases (see exception described below).
18 NOTE
19 Devices which support the Tape Format Flag
20 value of TF.CTP ("TK50" compatible cartridge
21 tapes) do not follow the exception condition
22 described below when the "Reverse" modifier
23 is set. Instead, they have the following
24 behavior:
25 Abort Process - after receipt of the ABORT command,
26 tape motion occurs to the beginning of the track,
27 and proceeds forward until the first record gap
28 encountered. This may be closer to logical BOT than
29 the original target object. The end message is
30 returned as soon as tape motion ceases.
31 o REPOSITION command with "Rewind" modifier set, "Object
32 Count" and "Reverse" modifiers either set or clear,
33 non-zero "record count or object count" or "tape mark
34 count" field(s):
35 Abort process - if the rewind has not yet completed
36 (BOT has not been reached), the end message is
37 returned as soon as the ABORT command is received,
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-5
Command Categories And Execution Order 8 November 1987
1 and tape motion continues to BOT. If the rewind has
2 completed, tape motion continues to the first record
3 gap encountered after receipt of the ABORT command
4 (see exception described below). The end message is
5 returned as soon as tape motion ceases.
6 In the cases listed above where the end message is returned as
7 soon as the ABORT command is received and the tape unit operation
8 in progress is allowed to continue (i.e., ERASE and Rewind to
9 BOT), command completion is asynchronous to the completion of the
10 tape unit operation. Until the tape unit operation completes the
11 controller must preserve the sequentiality of subsequent
12 sequential commands issued by the host. Furthermore, the
13 controller must also ensure that subsequent sequential commands
14 appear to be progressing towards completion in order to satisfy
15 command timeout requirements as defined in MSCP. Refer to
16 Section 3.5.4 for information regarding the occurrence of an
17 error during asynchronous operations.
18 FIRST RECORD GAP ENCOUNTERED EXCEPTION
19 As mentioned in Section 5.10.3 TMSCP controllers
20 are expressly permitted to optimize any of the
21 various positioning functions available via the
22 REPOSITION command.
23 If an ABORT command is received for a REPOSITION
24 command while the controller is performing a
25 positioning function optimization, cessation of
26 tape motion at the next object (as required
27 above) may result in a tape position outside the
28 range of objects spanned by the REPOSITION
29 function. If this condition occurs the
30 controller must continue the positioning
31 function. During the function continuation the
32 action the controller must follow depends on
33 whether the controller is capable of determining
34 when the tape is positioned within the objective
35 (i.e., that range of objects) of the positioning
36 function or not:
37 a. If so, the controller continues tape motion
38 until the first record gap within the
39 objective is encountered; end message with
40 Command Aborted status returned as soon as
41 tape motion ceases.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-6
Command Categories And Execution Order 8 November 1987
1 b. If not, the controller continues tape motion
2 until the final objective of the positioning
3 function is found; end message with Success
4 (subcode "Normal") status returned as soon as
5 tape motion ceases.
6 3.3 Tape Motion Command Operation
7 Tape motion commands are classified as "read", "write", and
8 "ancillary" types. The following subsections describe tape
9 motion operations common to each type. A separate section,
10 section 3.4, describes common data transfer command operation.
11 3.3.1 "read" Type
12 The "read" type commands are as follows:
13 o ACCESS
14 o COMPARE HOST DATA
15 o READ
16 o REPOSITION
17 3.3.1.1 Direction
18 "Read" type commands can be performed in either the forward or
19 reverse direction. Direction is selected according to the
20 setting of the "Reverse" command modifier. When clear, tape
21 motion is away from BOT, or in the FORWARD direction. When set,
22 tape motion is toward BOT, or in the REVERSE direction.
23 It is not mandatory for "non-industry standard" TMSCP devices to
24 support the "Reverse" command modifier on the ACCESS, COMPARE
25 HOST DATA, and READ commands (see Appendix C, Table C-1 for those
26 devices considered "non-industry standard"). Devices that do not
27 implement the "Reverse" command modifier on the above commands
28 must treat that modifier as reserved, and reject a command so
29 modified with a status of Invalid Command.
30 All TMSCP devices are required to support the "Reverse" modifier
31 on the REPOSITION command.
32 3.3.1.2 BOT Handling
33 Any "read" type commands performed in the REVERSE direction can
34 unexpectedly encounter BOT (usually Logical BOT) before the
35 requested operation is completed. The tape cannot be made to
36 cross BOT as a result of a REVERSE operation. Any attempt to do
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-7
Tape Motion Command Operation 8 November 1987
1 so will result in termination of the command with a BOT
2 Encountered status when BOT is encountered.
3 3.3.1.3 EOT Handling
4 When EOT is crossed while performing a FORWARD "read" type
5 command the "EOT Encountered" end flag will be set. When EOT is
6 encountered in this manner, tape motion will not be suspended.
7 Command operation will continue in the normal fashion. The "EOT
8 Encountered" end flag remains set while the tape is positioned
9 beyond EOT (i.e., in the tape trailer area). The "EOT
10 Encountered" end flag will be cleared only when the tape is
11 subsequently positioned ahead of EOT (i.e., on the BOT side of
12 EOT) by any REVERSE "read" type command.
13 3.3.1.4 Tape Mark Handling
14 With one exception "read" type command operation is single record
15 oriented. The exception is the REPOSITION command which can be
16 Tape Mark, record, combined Tape Mark and record, or tape object
17 oriented (See section 5.10 for complete details). If a Tape Mark
18 is unexpectedly encountered before the requested record operation
19 of any "read" type command is completed the command will be
20 terminated with a Tape Mark Encountered status. The tape will
21 remain positioned forward of the unexpected Tape Mark, relative
22 to the direction of travel specified in the command.
23 3.3.2 "write" Type
24 The "write" type commands are as follows:
25 o ERASE GAP
26 o WRITE
27 o WRITE TAPE MARK
28 3.3.2.1 Direction
29 "write" type commands are always performed in the forward
30 direction. The "Reverse" command modifier is not allowed in any
31 "write" type command and is therefore treated as a reserved
32 field.
33 3.3.2.2 BOT Handling
34 "write" type commands will never encounter BOT unexpectedly.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-8
Tape Motion Command Operation 8 November 1987
1 3.3.2.3 EOT Handling
2 When EOT is crossed while performing a "write" type command the
3 "EOT Encountered" end flag will be set. When EOT is encountered
4 in this manner, tape motion will not be suspended. Command
5 operation will continue in the normal fashion and complete with a
6 status of Success (subcode "EOT encountered"). The "EOT
7 Encountered" end flag remains set while the tape is positioned
8 beyond EOT (i.e., in the tape trailer area). The "EOT
9 Encountered" end flag will be cleared only when the tape is
10 subsequently positioned ahead of EOT (i.e., on the BOT side of
11 EOT) by any REVERSE "read" type command. Note that encountering
12 EOT while performing a "write" type command causes a Serious
13 Exception condition. Refer to section 3.5.2 for more detail.
14 3.3.2.4 Tape Mark Handling
15 "write" type commands will never encounter a Tape Mark
16 unexpectedly.
17 3.3.3 "ancillary" Type
18 The ERASE command is the only "ancillary" type command.
19 3.3.3.1 Direction
20 The ERASE command always begins operation in the forward
21 direction. The "Reverse" command modifier is not allowed and is
22 therefore treated as a reserved field.
23 3.3.3.2 BOT Handling
24 The ERASE command will never encounter BOT unexpectedly.
25 3.3.3.3 EOT Handling
26 The ERASE command will never encounter EOT unexpectedly.
27 3.3.3.4 Tape Mark Handling
28 The ERASE command will never encounter a Tape Mark unexpectedly.
29 3.4 Data Transfer Operations
30 The following are considered data transfer operations:
31 o ACCESS
32 o Compare Operations (i.e., COMPARE HOST DATA command and
33 Compare modified READ and WRITE)
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-9
Data Transfer Operations 8 November 1987
1 o READ
2 o WRITE
3 The ACCESS and COMPARE HOST DATA commands are included in the
4 data transfer category since their operation is
5 characteristically the same, with the exception that no data is
6 transferred to or from the host.
7 The following subsections describe operations common to the data
8 transfer commands. A separate section, section 3.3, describes
9 common tape motion command operation.
10 3.4.1 Record Length
11 Records and transfer specifications are inherently
12 variable-length and are specified as an integral number of bytes,
13 including odd byte counts.
14 There is no formal minimum record length. However, certain
15 recording techniques are sufficiently noise-prone that a
16 recommended minimum record size is required.
17 Maximum recommended record length is also required. This value
18 is a function of both tape format and error detection and
19 correction algorithms employed by a device. Any record length
20 greater than the recommended maximum may not be reliably written
21 and/or read.
22 The tape unit specific minimum and maximum record length values
23 are available to the host in the end message of the ONLINE and
24 SET UNIT CHARACTERISTICS commands.
25 Although a record of greater length than the maximum recommended
26 can be read or written, there exists a true absolute maximum
27 size. This absolute maximum size is dependent upon specific
28 controller characteristics. Refer to Appendix C, Table C-3.
29 Transfer commands specifying a byte count larger than the
30 absolute maximum are rejected with an Invalid Command (subcode
31 "Invalid Byte Count") status. In addition, transfer commands
32 specifying a byte count of zero are rejected with a Invalid
33 Command (subcode "Invalid Byte Count") status.
34 3.4.2 Tape Format Employed
35 The tape format employed in data transfer operations is dependent
36 on the first tape motion command issued after the the tape unit
37 becomes "Unit Online" (the first time in the case of multi-host
38 access).
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-10
Data Transfer Operations 8 November 1987
1 If the first tape motion command is a "write" type operation
2 (i.e., ERASE GAP, WRITE, or WRITE TAPE MARK) the format specified
3 by the host via either the ONLINE or SET UNIT CHARACTERISTICS
4 command will be employed.
5 If the first tape motion command is a "read" type command (i.e.,
6 ACCESS, COMPARE HOST DATA, READ or REPOSITION) the controller
7 will ignore host format specifications and employ the format
8 implied by the information recorded in the TFIA when the tape was
9 created. If the tape unit is unable to determine the recorded
10 format from the TFIA information, the command is terminated with
11 a Data Error (subcode "Unrecoverable Read Error") end message
12 status. If the TFIA information is nonexistent, implying the
13 tape is blank, the command is terminated with a Data Error
14 (subcode "Long Gap Encountered") end message status. In this
15 case the format employed in reading the TFIA information dictates
16 the long gap value used in determining the long gap condition;
17 however, the host specified format will not be changed to reflect
18 that format.
19 3.4.3 Host Buffer Access
20 The COMPARE HOST DATA, READ, and WRITE command messages contain
21 byte count and host buffer address descriptors. The ACCESS
22 command only contains a byte count field.
23 3.4.3.1 WRITE Command
24 In the case of a WRITE command, the specified number of bytes is
25 written to tape from the host buffer, in the forward direction,
26 beginning at the host buffer base address proceeding through
27 successively higher numbered addresses.
28 3.4.3.2 READ Command
29 For a READ command, the specified byte count is treated as advice
30 to the controller. The amount of data actually transferred is
31 dictated by the number of bytes contained in the tape record
32 being read. A Success end message status is returned when the
33 tape record size is either equal to or less than (short record)
34 the specified byte count. However, if the tape record size is
35 greater than (long record) the specified byte count the
36 controller will terminate the transfer at the specified byte
37 count and report a Record Data Truncated end message status.
38 READ commands can be performed in either the forward or reverse
39 direction. "Non-industry standard" devices may reject READ
40 commands with the "Reverse" command modifier set with a status of
41 Illegal Command (subcode "Illegal Modifier"). See Appendix C,
42 Table C-1 for those devices considered "non-industry standard".
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-11
Data Transfer Operations 8 November 1987
1 3.4.3.2.1 Forward Direction
2 If a READ in the forward direction is specified, the data bytes
3 of the record are stored in the host buffer beginning at the base
4 address, as specified in the buffer descriptor, proceeding
5 through successively higher-numbered addresses. If the tape
6 record is short, the host buffer contents from
7 [base address]+[tape record byte count]
8 through
9 [base address]+[specified byte count]-1
10 remain unchanged. If the tape record is long, the end of the
11 tape record is truncated.
12 3.4.3.2.2 Reverse Direction
13 If a READ in the reverse direction is specified, the data bytes
14 of the record are stored in the host buffer beginning at
15 [base address]+[specified byte count]-1,
16 proceeding through successively lower-numbered addresses. If the
17 tape record is long, the front of the tape record is truncated.
18 If the tape record is short the record image ends at host buffer
19 [base address]+[specified byte count]-[tape record byte count].
20 The host buffer contents from the base address to the beginning
21 of the short record image remain unchanged.
22 3.4.3.3 ACCESS Command
23 The ACCESS command is performed in the same manner as the READ
24 command, described in section 3.4.3.2, with the exception that no
25 data is transferred to the host.
26 3.4.3.4 Compare Operations
27 Compare operations permit comparison of data contained in a host
28 buffer to data contained in a tape record.
29 The compare process is performed in the same manner as the READ
30 command buffer storage process described in section 3.4.3.2. The
31 only difference is that instead of storing the data read from the
32 tape record, a byte by byte comparison is performed.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-12
Data Transfer Operations 8 November 1987
1 The MSCP description of compare operations is identical to TMSCP
2 implementation with the exceptions described below.
3 A compare operation will not be performed by the controller in
4 the following cases:
5 1. If a long tape record is encountered during a compare
6 modified READ or COMPARE HOST DATA command. In this
7 case the command is terminated with a Record Data
8 Truncated status.
9 2. If any error occurs during the original data transfer of
10 a compare modified READ or WRITE command which indicates
11 the data was not transferred correctly or at all. In
12 the case of the COMPARE HOST DATA command the compare
13 operation is performed up to the point the error
14 occurred.
15 Refer to sections 4.5.4 and 4.5.5 for details on end message byte
16 count fields.
17 "Compare after" operations (i.e., compare modified WRITE or READ)
18 require positioning in the direction opposite to that specified
19 in the original command. Regardless of the success or failure of
20 the compare operation, the tape will always be positioned in the
21 record gap forward of the tape record being operated on, relative
22 | to the direction of the original command. Failures not related
23 | to the compare operation may cause the tape to not be so
24 | positioned (see section 3.5.3, Position Lost Handling). Such
25 | failures will result in a "Position Lost" error condition.
26 3.4.4 End Message Byte Count Fields
27 Refer to sections 4.5.4 and 4.5.5 for details on end message byte
28 count fields.
29 3.5 General Error Processing
30 The following subsections describe error processing common to
31 TMSCP commands. Refer to section 4.5.2 for definition of
32 individual status codes.
33 3.5.1 Reporting Precedence
34 In cases where multiple errors (or conditions) occur
35 simultaneously, TMSCP controllers report errors according to the
36 following categorical precedence:
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-13
General Error Processing 8 November 1987
1 1. fatal condition (e.g., Drive Error, etc.)
2 2. unrecoverable data error
3 3. conditional success (e.g., EOT encountered)
4 4. success
5 3.5.2 Serious Exception Handling
6 Tape Units are inherently sequential devices. This means that
7 the order in which tape motion commands are executed must be
8 identical to the order in which they are received.
9 In traditional tape systems, sequentiality is preserved because
10 the device is capable of having only one command outstanding to a
11 tape unit at any time. If a tape motion command terminates with
12 an error, the host can take immediate action to prevent commands
13 waiting to be executed from being presented to the device. The
14 host, therefore, implicitly maintains control of sequentiality.
15 Since TMSCP controllers are required to provide queuing of
16 multiple commands, control of sequentiality following the
17 occurrence of an error becomes the responsibility of the
18 controller. When an error occurs and the tape unit remains "Unit
19 Online" to any host, a TMSCP controller must ensure that
20 subsequent commands are rejected until a host acknowledges the
21 occurrence of the error. This condition is known as a Serious
22 Exception condition.
23 Any of the conditions defined by the following Status Codes cause
24 a Serious Exception condition:
25 o BOT Encountered
26 o Compare Error
27 o Controller Error
28 o Data Error
29 o Drive Error
30 o Formatter Error
31 o Host Buffer Access Error
32 o Invalid Command, subcodes
33 o Invalid Byte Count
34 o Invalid Format
35 o Invalid Unit Flags
36 o LEOT Detected
37 o Position Lost, only when Position Lost state is not
38 already in effect (refer to section 3.5.3)
39 o Record Data Truncated
40 o Success, subcode "EOT Encountered", on the ERASE GAP,
41 WRITE, and WRITE TAPE MARK commands
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-14
General Error Processing 8 November 1987
1 o Tape Mark Encountered
2 o Write Protected
3 The following Status Codes will not cause a Serious Exception
4 condition:
5 o Command Aborted
6 o Invalid Command, all subcodes except
7 o Invalid Byte Count
8 o Invalid Format
9 o Invalid Unit Flags
10 o Position Lost, while Position Lost state exists (refer
11 to section 3.5.3)
12 o Serious Exception
13 o Success, all subcodes except EOT Encountered
14 o Unit-Available
15 o Unit-Offline
16 The occurrence of a Serious Exception condition causes a tape
17 unit to enter the Serious Exception state relative to all hosts
18 to which it is currently "Unit Online", regardless of which host
19 issued the command encountering the error.
20 The Serious Exception state is reflected in the Serious Exception
21 end flag (SEF). Refer to section 4.5.1 for a description of End
22 Flags.
23 The end message of the command encountering the Serious Exception
24 condition will have SEF set and the status will reflect the
25 nature of the error. Subsequent commands (including those
26 currently queued by the controller) are rejected with SEF set and
27 a status of Serious Exception in their end messages. The
28 controller continues to reject commands in that manner until the
29 tape unit Serious Exception state is cleared by a host.
30 The following commands are subject to rejection while a Serious
31 Exception state exists:
32 o ACCESS
33 o AVAILABLE
34 o COMPARE HOST DATA
35 o ERASE
36 o ERASE GAP
37 o FLUSH
38 o READ
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-15
General Error Processing 8 November 1987
1 o REPOSITION
2 o WRITE
3 o WRITE TAPE MARK
4 The Clear Serious Exception Command Modifier (CSE) is the means
5 by which a host acknowledges the Serious Exception condition and
6 signals the controller that the tape unit Serious Exception State
7 can be cleared and normal processing resumed. Note that the CSE
8 modifier is acted upon before any other part of a command. It
9 only clears the Serious Exception state that existed before the
10 command was received (i.e., a command cannot clear a Serious
11 Exception it caused). The CSE modifier is ignored if a Serious
12 Exception state does not exist.
13 The CSE modifier can only be specified for the following
14 commands:
15 o ACCESS
16 o AVAILABLE
17 o COMPARE HOST DATA
18 o ERASE
19 o ERASE GAP
20 o FLUSH
21 o ONLINE
22 o READ
23 o REPOSITION
24 o SET UNIT CHARACTERISTICS
25 o WRITE
26 o WRITE TAPE MARK
27 The CSE modifier is reserved for all other commands.
28 The existence of a Serious Exception state does not prevent other
29 hosts from bringing a tape unit into the "Unit Online" state via
30 the ONLINE command. The tape unit will be in the Serious
31 Exception state relative to any host issuing a successful ONLINE
32 command while the Serious Exception state exists, unless the CSE
33 modifier was specified in that ONLINE command. In that case the
34 Serious Exception State is cleared for all hosts which have the
35 tape unit in the "Unit Online" state.
36 If a tape unit leaves the "Unit Online" state relative to all
37 hosts, for any reason, the tape unit will cease to be in the
38 Serious Exception state.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-16
General Error Processing 8 November 1987
1 3.5.3 Position Lost Handling
2 When a "Position Lost" error condition occurs the tape unit
3 enters the Position Lost state relative to all hosts to which it
4 is currently "Unit Online", regardless of which host issued the
5 command encountering the error.
6 The Position Lost state is reflected in the Position Lost end
7 flag. Refer to section 4.5.1 for a description of end flags.
8 | A "Position Lost" error condition includes the following:
9 | 1. The formatter is not certain of the unit's position.
10 | 2. The change in unit position reported in the end messages
11 | is not due to the command corresponding to this end
12 | message. This includes the following case:
13 | o The unit enters the "Cached Data Lost" state (see
14 | section 3.6.1.4). This effectively "revokes"
15 | position that was previously reported (i.e., success
16 | was reported on previous cached operations, which
17 | have subsequently failed). The change reported in
18 | the position field cannot be attributed to the
19 | command containing the "Cached Data Lost"
20 | indication, and thus a Position Lost error condition
21 | has occurred and the unit enters the Position Lost
22 | state.
23 While the Position Lost state is in effect the host may issue any
24 tape motion command in an attempt to recover position on its own.
25 The controller must attempt to execute those commands in the
26 normal manner. During the execution of those commands the
27 controller will not generate a Serious Exception condition for
28 "Position Lost" error occurrences. The occurrence of all other
29 errors however, will be handled in the normal manner.
30 The tape unit will remain in the Position Lost state until the
31 tape is subsequently positioned to BOT, the tape unit enters the
32 "Unit Offline" state, or the tape is unloaded via an AVAILABLE
33 command.
34 3.5.4 Asynchronous Completion Handling Of Non-Data Transfer
35 Commands
36 TMSCP controllers cannot provide host end message notification of
37 errors encountered during either the execution of "immediate
38 completion" non-data transfer type commands (refer to section
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-17
General Error Processing 8 November 1987
1 3.2.1.1) or tape motion continuation following the abort of
2 certain lengthy I/O commands (refer to section 3.2.1.2) because
3 the end message has already been returned to the host. Based on
4 the fact that all error conditions that can be encountered in
5 either of those cases imply that the tape unit is essentially
6 inoperable, the TMSCP controller will take the following actions:
7 1. Issue an error log detailing the error that occurred,
8 provided the error normally requires logging and that
9 miscellaneous error logs are enabled (refer to Appendix
10 B).
11 2. Place the tape unit into the "Offline - Unit
12 Inoperative" state.
13 Subsequent tape motion commands will therefore be rejected
14 because of this "offline" state, precluding further operation of
15 the tape unit until the host has acknowledged the condition.
16 3.5.5 Data Error Recovery
17 TMSCP tape unit data error recovery procedures meet or exceed the
18 requirements of DEC Standard 174 with certain qualifications
19 described below. Note that error recovery techniques used by
20 block oriented tape units differ from those used by 9-track tape
21 units, but will provide equivalent performance.
22 Only unrecoverable errors will be reported to the host in the end
23 message status field.
24 Recoverable errors are reported to the host in error log form.
25 The controller will normally issue only one error log during the
26 error recovery process regardless of the number of attempts
27 involved in recovering the data. The error log is issued after
28 the final attempt whether recovery was successful or not. A
29 separate error log will be issued for non-transfer errors (e.g.,
30 an STI transmission error) which occur during any segment of the
31 recovery process. Refer to Chapter 6 for specific information on
32 error log content.
33 Error recovery algorithms require unsolicited positioning in the
34 direction opposite to that specified in the original command.
35 For either a successful or unsuccessful recovery operation, the
36 tape will be positioned in the record gap forward of the data
37 record, relative to the direction of the original command.
38 | Failure to be so positioned will result in a "Position Lost"
39 | error condition.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-18
General Error Processing 8 November 1987
1 Note that explicit recovery sequences may be specified to the
2 controller by a formatter.
3 3.5.5.1 Suppression
4 Data error recovery suppression is controlled by the "Suppress
5 Error Recovery" command modifier. This modifier is allowed in
6 the ACCESS, COMPARE HOST DATA, READ, REPOSITION, and WRITE
7 commands. When set, the controller will inhibit "Data Error"
8 recovery procedures. If a "Data Error" is encountered the
9 controller reports it to the host immediately as unrecoverable.
10 The tape will remain positioned in the record gap forward of the
11 tape object in error, relative to the direction specified in the
12 command.
13 NOTE
14 Use of this modifier does not prevent the tape
15 unit from entering the Serious Exception state
16 when an error occurs. Refer to section 3.5.2 for
17 more detail.
18 3.5.5.2 Enhanced Write Error Recovery
19 Enhanced Write Error Recovery is a non-host settable unit
20 characteristic presented only if the TMSCP controller supports
21 the "Enable Re-write Error Recovery" command modifier on WRITE
22 commands for the specified tape unit (see section 5.7.2).
23 When the "Enable Re-write Error Recovery" command modifier is
24 set, the unit uses a special error recovery algorithm to write
25 the data on the media. The algorithm must guarantee that the
26 probability of altering or destroying previously written and
27 acknowledged data is no worse than the probability of an
28 undetected write error. It is permissible for the algorithm to
29 leave multiple copies of the record on the media.
30 An example algorithm that can be applied to 9-track tapes is as
31 follows:
32 1. If the initial attempt to write a record fails, then the
33 record will be re-written sequentially down the tape for
34 up to three retries.
35 2. If the re-writing of the record fails after three
36 re-tries, then the TMSCP controller will institute its
37 normal over-write error recovery algorithm to over-write
38 the fourth copy of the record.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-19
General Error Processing 8 November 1987
1 Units not utilizing the above algorithm must document in their
2 device specification how the requirements of "Enhanced Write
3 Error Recovery" are met.
4 The "Enable Re-write Error Recovery" modifier may not be set in
5 conjunction with the "Suppress Error Recovery" command modifier
6 and is therefore treated as a reserved field. The TMSCP
7 controller must return an Invalid Command (subcode "Invalid
8 Modifier") status code for status if both the "Suppress Error
9 Recovery" command modifier and the "Enable Re-write Error
10 Recovery" command modifiers are set in the same WRITE command.
11 3.5.6 Error Log Requirements
12 Controllers should not report error logs for events which cannot
13 possibly be potential hardware problems. Examples:
14 1. On a tape device, a REPOSITION command returns Data
15 Error (subcode "Long Gap Encountered") as a result of
16 reading metadata previously recorded on the tape. Such
17 metadata may be a result of the recording technology
18 (e.g., block mode cartridge tape). This situation does
19 not indicate a potential hardware problem, and thus an
20 error log should not be returned.
21 2. On a tape device, a REPOSITION command returns Data
22 Error (subcode "Long Gap Encountered") as a result of
23 not reading a record within the required distance. This
24 situation has the potential of being a hardware failure
25 in the read electronics, and thus an error log should be
26 returned.
27 3.6 Tape Caching
28 There is a broad range of mass storage caches possible, including
29 both one and two level caches (for large, slow, archival storage
30 devices), write-through and write-back operations, and volatile
31 and non-volatile caches. Caching may potentially be used for
32 both disk and tape class devices. Caching for disk class devices
33 implies what is normally meant by the term "cache". Caching for
34 tape class devices is merely a mechanism for implementing
35 controller based read-ahead and write-behind. Note that
36 write-through caching applied to a tape class device is
37 meaningless; since the data has already been written to the tape,
38 it won't be retained in the cache.
39 A controller will typically only provide a subset of this cache
40 functionality, if indeed it supports caching at all. This broad
41 range of functionality has been included to avoid ad hoc
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-20
Tape Caching 8 November 1987
1 extensions as future controllers are defined.
2 Performing write operations as write-behind, sometimes called
3 write-back, operations offers the potential for greatly improved
4 performance with a decrease in reliability. The decrease in
5 reliability arises from the fact that data may be lost if the
6 controller crashes or otherwise loses context before the data is
7 written back to the unit. The probability of losing data is
8 significantly different depending on whether the cache is
9 volatile or non-volatile, since the primary cause of losing
10 write-back data is power failures. Volatile caches always lose
11 data on power failures; non-volatile caches only lose data if the
12 unit, volume, or cache is removed from the controller during the
13 power failure. For these reasons write-back operations must be
14 explicitly enabled by the host. Write-back operations for TMSCP
15 controllers with any type of cache may be enabled on either a per
16 unit basis, using a unit flag, or on a per command basis, using a
17 command modifier or both. In addition, the FLUSH command, with
18 or without command modifiers, may be used to ensure that all
19 write-back data has been written out to the specified tape unit.
20 Tape write-back caching can be viewed as having the following
21 three characteristics:
22 1. The TMSCP controller's write-back cache is viewed as a
23 volatile cache.
24 2. The TMSCP controller may have write-back caching enabled
25 on a per unit basis or on a per command basis or both.
26 3. The TMSCP controller must provide support for "Enhanced
27 Write Error Recovery".
28 3.6.1 Write-Back Caching
29 Because normal TMSCP controller data transfer commands are
30 sequential and depend on the completion of transferring data to
31 the media, write-back caching requires specific measures to
32 handle the various error and exception conditions which can
33 occur.
34 If write-back caching is not enabled, either on a per unit basis
35 or on a per command basis, then the TMSCP controller will return
36 the end message when the write data transfer operation is
37 completed.
38 If write-back caching is enabled, either on a per unit basis or
39 on a per command basis, then the TMSCP controller may return the
40 end message as soon as the data for the write data operation is
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-21
Tape Caching 8 November 1987
1 completely buffered by the TMSCP controller. If write-back
2 caching is enabled on a per command basis, the TMSCP controller
3 must preserve the sequentiality of subsequent sequential (i.e.,
4 non-write-back cached) commands issued by the host until those
5 operations complete. Furthermore, the TMSCP controller must also
6 ensure that subsequent sequential commands appear to be
7 progressing towards completion in order to satisfy the command
8 timeout requirements as defined in MSCP. When write-back caching
9 is enabled, either on a per unit basis or on a per command basis,
10 then the TMSCP controller must, at all times, maintain the proper
11 sequentiality of all previous non-write-back cached sequential
12 commands.
13 The "Immediate Completion" command modifier can only be specified
14 on the following data transfer "write" type commands (i.e., ERASE
15 GAP, WRITE, and WRITE TAPE MARK commands).
16 If write-back caching is enabled, either on a per command basis
17 or on a per unit basis, there must be some command sequence
18 available to guarantee that all write-back data previously
19 buffered for "write" type commands has been written out to the
20 specified tape unit. The following five sections outline the
21 command sequences available.
22 1. If write-back caching is enabled on a per command basis,
23 subsequent non-write-back cached "write" type commands
24 will guarantee that all write-back data previously
25 buffered for "write" type commands has been written out
26 to the specified tape unit. That is, the TMSCP
27 controller will return the end message when the
28 non-write-back cached "write" type data transfer
29 operation has completed to the specified tape unit.
30 Thus implying that all write-back data previously
31 buffered for "write" type commands has been written out
32 to the specified tape unit.
33 2. If write-back caching is enabled on a per unit basis,
34 there are two distinct command sequences available to
35 guarantee that write-back data buffered for all previous
36 "write" type commands has been written out to the
37 specified tape unit.
38 i. The first command sequence uses the FLUSH command.
39 This command sequence will guarantee that all
40 write-back data previously buffered for "write" type
41 commands has been written out to the specified tape
42 unit before the TMSCP controller will return the end
43 message indicating the FLUSH command has completed.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-22
Tape Caching 8 November 1987
1 ii. The second command sequence depends on two WRITE
2 TAPE MARK commands with no other intervening "write"
3 type commands. This command sequence will guarantee
4 that all write-back data previously buffered for
5 "write" type commands has been written out to the
6 specified tape unit prior to the TMSCP controller
7 returning the end message indicating that the second
8 WRITE TAPE MARK command has completed.
9 3. Any command sequence that transitions from "write" type
10 commands to either "read" type commands or "ancillary"
11 type commands will force the TMSCP controller to "flush"
12 all of the write-back cached data out to the specified
13 tape unit prior to the end message indicating the
14 completion of either the "read" type command or the
15 "ancillary" type command.
16 4. At the time a response to a non-data transfer sequential
17 command (i.e., AVAILABLE, ONLINE, or SET UNIT
18 CHARACTERISTICS) is generated, the cache must be empty.
19 Thus, any of these commands may be used to "flush" all
20 of the write-back cached data out to the specified tape
21 unit. Note that although the Available command is
22 considered "immediate completion", the response must not
23 be generated until the cache on the specified unit is
24 empty.
25 5. In addition to the above mechanisms available to hosts,
26 the TMSCP controller may, at its discretion, "flush" all
27 of the TMSCP controller's write-back cached data out to
28 the specified tape unit at any time.
29 Proper support for write-back caching requires that controlled,
30 predictable results be specified for the handling of the
31 following conditions:
32 o Conflicting requirements imposed by unit flags.
33 o Conflicting requirements imposed by command modifiers.
34 o Data transfer errors that occur prior to command
35 completion having been signaled to the host.
36 o Data transfer errors that occur after command completion
37 has been signaled to the host.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-23
Tape Caching 8 November 1987
1 3.6.1.1 Unit Flag Conflicts
2 The "Compare Writes" unit flag overrides the enabling of
3 write-back caching. There are no other unit flags in conflict
4 with the enabling of write-back caching.
5 3.6.1.2 Command Modifier Conflicts
6 The "Compare" modifier on WRITE commands overrides the enabling
7 of write-back caching for the duration of the command.
8 Write-back caching, if enabled, may be re-established after the
9 compare portion of the command if subsequent commands do not also
10 have the "Compare" modifier set.
11 The "Suppress Error Recovery" command modifier may either
12 override the enabling of write-back caching for the duration of
13 the command, or be handled as specified in the following sections
14 (this approach assumes that the first data transfer error
15 terminates any further processing).
16 Write-back caching, if enabled, may be re-established if
17 subsequent commands do not also have the "Suppress Error
18 Recovery" command modifier set.
19 There are no other command modifiers in conflict with the
20 enabling of write-back caching.
21 3.6.1.3 Error And Exception Handling
22 In general, TMSCP controllers cannot provide host end message
23 notification of errors or exceptions encountered during the
24 execution of write-back caching data transfer commands because
25 the end message has already been returned to the host. There are
26 three error conditions which must be accommodated. These cases
27 are:
28 1. Failure to transfer the specified data from the host
29 because of some type of host bus access error (i.e.,
30 parity error, time out, bus interface failure, etc.).
31 2. Failure to maintain the specified data in the TMSCP
32 controller's write-back cache (i.e., parity error, EDC,
33 or other indication of data corruption).
34 3. Failure to successfully transfer the buffered data to
35 the media.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-24
Tape Caching 8 November 1987
1 The first error condition will be encountered prior to the
2 signaling of completion for the write-back caching data transfer
3 command. This situation implies that all of the prior data will
4 have been written on the media and is therefore accessible. This
5 condition requires that the TMSCP controller perform the
6 following steps:
7 i. Issue an error log detailing the error that occurred,
8 provided the error normally requires logging, (refer to
9 Appendix B).
10 ii. Position the specified tape unit immediately after the
11 last successful record written, and just prior to where
12 the record in error would have occurred.
13 iii. Place the tape unit into the "Serious Exception" state.
14 iv. Report the specific nature of the error as the status
15 for this specific command's end packet.
16 Subsequent tape data transfer commands will therefore be rejected
17 because of the "Serious Exception" state, precluding further
18 operation of the specified tape unit until the host has
19 acknowledged the condition. Additionally, the host will be
20 "synchronized" with the tape unit and positioned immediately
21 after the last good record.
22 Based on the fact that the other error conditions that can be
23 encountered after a write-back caching data transfer command is
24 initiated imply that the data on media is essentially
25 inaccessible, the second and third conditions require that TMSCP
26 controller perform the following steps:
27 i. Issue an error log detailing the error that occurred,
28 provided the error normally requires logging (refer to
29 Appendix B).
30 ii. If the specified tape unit remains in the "Unit Online"
31 state, then place the tape unit into the "Serious
32 Exception", "Position Lost", and "Cached Data Lost"
33 states.
34 iii. Report the specific nature of the error as the status of
35 the immediately subsequent sequential end packet to be
36 returned.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-25
Tape Caching 8 November 1987
1 Subsequent tape data transfer commands will therefore be rejected
2 because of the "Serious Exception" state, precluding further
3 operation of the tape unit until the host has acknowledged the
4 condition. The host will not be "synchronized" with the tape
5 unit and data written to the media subsequent to the last known
6 "synchronization" point will be effectively inaccessible.
7 There is one exception condition which must be accommodated.
8 That is the case of encountering EOT. This exception condition
9 will be handled by the TMSCP controller anticipating the
10 detection of EOT through some "early warning" mechanism and
11 "winding down" the write-back caching such that the TMSCP
12 controller is operating in a non-write-back caching mode when
13 "true" EOT is encountered.
14 3.6.1.4 Cached Data Lost Handling
15 Tape Units are inherently sequential devices. This means that
16 the order in which "write" type data transfer commands are
17 executed must be identical to the order in which they are
18 received.
19 In traditional tape systems, this sequentiality is preserved
20 because the device is capable of having only one command
21 outstanding to a tape unit at any time. If a "write" type data
22 transfer command terminates with an error, the host can take
23 immediate action to prevent commands waiting to be executed from
24 being presented to the device. The host, therefore, implicitly
25 maintains control of sequentiality.
26 A reliable detection mechanism for determining if write-back data
27 has been lost needs to be defined. This detection mechanism
28 needs to be hierarchical; partially implemented in the host and
29 partially implemented in the TMSCP controller. At the host
30 level, sufficient state needs to be maintained to remember that
31 write-back operations are in progress. This state may be
32 maintained either at the class driver level or the application
33 level or both. At the TMSCP controller level, there needs to be
34 a reporting mechanism to provide information concerning the
35 efficacy of any pending write-back caching data transfer
36 commands. The effect of this detection mechanism should be to
37 facilitate either the restart of the entire application or an
38 application dependent restart of the operations within some
39 context (i.e., from the last known good host/tape unit
40 synchronization point). The description of the TMSCP controller
41 mechanism is contained below.
42 TMSCP controllers cannot provide host end message notification of
43 errors or exceptions encountered during the execution of
44 write-back caching data transfer commands because the end message
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-26
Tape Caching 8 November 1987
1 has already been returned to the host. Therefore, when an error
2 occurs and the tape unit remains "Unit Online" to any host, a
3 TMSCP controller must ensure that subsequent commands are
4 rejected until a host acknowledges the occurrence of the error.
5 This condition is known as a Cached Data Lost condition.
6 Any of the conditions defined by the following Status Codes
7 occurring while write-back caching is enabled, either on a
8 command basis or on a unit basis, will cause a Cached Data Lost
9 condition:
10 o Controller Error
11 o Data Error
12 o Drive Error
13 o Formatter Error
14 o Position Lost, only when Position Lost state is not
15 already in effect (refer to section 3.5.3)
16 o Write Protected
17 The following Status Codes will not cause a Cached Data Lost
18 condition:
19 o Invalid Command, all subcodes
20 o Success, all subcodes
21 o Unit-Available
22 o Unit-Offline
23 Whenever one of the above error conditions occurs that causes the
24 TMSCP controller to lose cached data for the specified tape unit,
25 it enters the Cached Data Lost state relative to all hosts to
26 which it is currently "Unit Online", regardless of which host
27 issued the command encountering the error.
28 The Cached Data Lost state is reflected in the Cached Data Lost
29 end flag (DLF). Refer to section 4.5.1 for a description of end
30 flags.
31 The end message of the next sequential command processed after
32 the occurrence of the Cached Data Lost condition will have its
33 DLF set and its status will reflect the nature of the error.
34 Subsequent commands (including those currently queued by the
35 controller) are rejected with DLF set and a status of Serious
36 Exception in their end messages. The controller continues to
37 reject commands in that manner until the tape unit Cached Data
38 Lost state is cleared by a host. Immediate commands processed
39 prior to the reporting to the host of a Cached Data Lost
40 condition will reflect the previous state of the Cached Data Lost
41 flag.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-27
Tape Caching 8 November 1987
1 The following commands are subject to rejection while a Cached
2 Data Lost state exists:
3 o ACCESS
4 o COMPARE HOST DATA
5 o ERASE
6 o ERASE GAP
7 o FLUSH
8 o READ
9 o REPOSITION
10 o WRITE
11 o WRITE TAPE MARK
12 The Clear Cached Data Lost modifier (CDL) is the means by which a
13 host acknowledges the Cached Data Lost condition and signals the
14 controller that the tape unit Cached Data Lost State can be
15 cleared and normal processing resumed. Note that the CDL
16 modifier is acted upon before any other part of a command. It
17 only clears the Cached Data Lost state that existed before the
18 command was received (i.e., a command cannot clear a Cached Data
19 Lost it caused). The TMSCP controller must return an Invalid
20 Command (subcode "Invalid Modifier") status code if the CDL
21 modifier is specified and a Cached Data Lost state does not
22 currently exist.
23 The CDL modifier can only be specified for the following
24 commands:
25 o ACCESS
26 o AVAILABLE
27 o COMPARE HOST DATA
28 o ERASE
29 o ERASE GAP
30 o FLUSH
31 o ONLINE
32 o READ
33 o REPOSITION
34 o SET UNIT CHARACTERISTICS
35 o WRITE
36 o WRITE TAPE MARK
37 The CDL modifier is reserved for all other commands.
38 The existence of a Cached Data Lost state does not prevent other
39 hosts from bringing a tape unit into the "Unit Online" state via
40 the ONLINE command. The tape unit will be in the Cached Data
41 Lost state relative to any host issuing a successful ONLINE
42 command while the Cached Data Lost state exists, unless the CDL
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-28
Tape Caching 8 November 1987
1 modifier was specified in that ONLINE command. In that case the
2 Cached Data Lost State is cleared for all hosts which have the
3 tape unit in the "Unit Online" state.
4 If a tape unit leaves the "Unit Online" state relative to all
5 hosts, for any reason, the tape unit will cease to be in the
6 Cached Data Lost state.
7 3.6.2 Read-Ahead Caching
8 | TMSCP controllers should normally read-ahead and cache data from
9 | the media in anticipation of host read requests. However, each
10 | read request must be satisfied by a distinct physical read
11 | operation. If the host issues multiple read requests for the
12 | same data, then the TMSCP controller must use a separate physical
13 | read operation to satisfy each request. If the host issues a
14 | read request for data that has been invalidated by a write
15 | operation subsequent to the read-ahead operation, the TMSCP
16 | controller must physically read the tape again.
17 | Hosts can request that data be read from tape in one of two ways:
18 | o Issuing a "read" type command (ACCESS, COMPARE, READ).
19 | o Issuing a command with an explicit or implicit compare
20 | operation. That is, either a command with a compare
21 | modifier or a command to which a compare unit flag
22 | applies.
23 | Note that a read-compare operation is two distinct read requests.
24 | A "write" type operation invalidates all read-ahead data read
25 | from tape objects at positions (object count) equal to or greater
26 | than the position (object count) of the "write" type operation.
27 | This effectively means that a TMSCP controller must use the
28 | following policies to manage its read-ahead cache:
29 | 1. Only data physically read from tape enters the
30 | read-ahead cache. In particular, write data never
31 | enters the read-ahead cache.
32 | 2. Any data in the read-ahead cache that is used to satisfy
33 | a host read request is immediately deleted from the
34 | cache, and is not available to satisfy subsequent
35 | requests. If multiple physical read operations have
36 | entered multiple copies of the same data in the cache,
37 | then only one copy need be deleted.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-29
Tape Caching 8 November 1987
1 | 3. A "write" type operation causes any data in the
2 | read-ahead cache read from objects with a position
3 | (object count) greater than or equal to the position
4 | (object count) of the "write" type operation to be
5 | immediately deleted from the cache.
6 | 4. In addition to the above, the TMSCP controller may, at
7 | its discretion, delete any or all of the TMSCP
8 | controller's read-ahead cached data.
9 Proper support for read-ahead caching requires that controlled,
10 predictable results be specified for the handling of the
11 following conditions:
12 o Conflicting requirements imposed by unit flags.
13 o Conflicting requirements imposed by command modifiers.
14 o Data transfer errors during read ahead operations.
15 3.6.2.1 Unit Flag Conflicts
16 The "Compare Reads" and the "Suppress Caching" unit flags
17 override the enabling of read-ahead caching. There are no other
18 unit flags in conflict with the enabling of read-ahead caching.
19 3.6.2.2 Command Modifier Conflicts
20 The "Compare" modifier on READ commands overrides the enabling of
21 read-ahead caching for the duration of the command. Read-ahead
22 caching may be re-established after the compare portion of the
23 command if subsequent commands do not also have the "Compare"
24 modifier set.
25 The "Suppress Caching" modifier on "read" type commands overrides
26 the enabling of read-ahead caching for the duration of the
27 specified command. Read-ahead caching may be re-established
28 after the completion of the specified command if subsequent
29 "read" type commands do not also have the "Suppress Caching"
30 modifier set.
31 The "Suppress Error Recovery" command modifier may either
32 override the enabling of read-ahead caching for the duration of
33 the command, or be handled as specified in the following sections
34 (this approach assumes that the first unrecoverable or suppressed
35 error recovery data transfer error terminates any further
36 processing).
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP GENERAL OPERATIONAL CHARACTERISTICS Page 3-30
Tape Caching 8 November 1987
1 Read-ahead caching may be re-established if subsequent commands
2 do not also have the "Suppress Error Recovery" command modifier
3 set.
4 There are no other command modifiers in conflict with the
5 enabling of read-ahead caching.
6 3.6.2.3 Error Handling
7 TMSCP controllers are responsible for handling all errors that
8 occur during read-ahead caching. TMSCP controllers issue an
9 error log detailing the error that occurred (provided that error
10 normally requires logging [refer to Appendix B]), when data
11 associated with the specific data record causing the error is
12 requested by the host. In order to accomplish this objective,
13 the TMSCP controller must make a reasonable assumption about the
14 format of data records and tape marks written on the magnetic
15 tape. This assumption about tape format will be formalized in
16 the definition of a properly formatted tape segment which is a
17 portion of magnetic tape starting at BOT which contains an
18 arbitrary number of data records and tape marks in arbitrary
19 order, terminating in two consecutive tape marks with no
20 intervening data records. A properly formatted tape segment must
21 be written from BOT or may result from the arbitrary appending of
22 additional data records and tape marks to a properly formatted
23 tape segment which also results in a properly formatted tape
24 segment. The TMSCP controller must terminate read-ahead caching
25 upon detection of the end of a properly formatted tape segment
26 while reading in the forward direction. Subsequent Host issued
27 "read" type commands in the forward direction may re-enable
28 read-ahead caching. In addition, TMSCP controllers may apply
29 other recording technology or implementation dependent mechanisms
30 in order to properly control read-ahead caching and minimize
31 their error handling requirements.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP MESSAGE OVERVIEW Page 4-1
8 November 1987
1 CHAPTER 4
2 TMSCP MESSAGE OVERVIEW
3 4.1 Tape MSCP Functions Having No Disk MSCP Counterparts
4 o ERASE GAP
5 o FLUSH
6 o REPOSITION
7 o WRITE TAPE MARK
8 4.2 Identical Disk And Tape MSCP Functions
9 The following functions are identical in both Disk MSCP and Tape
10 MSCP. Their descriptions have been omitted from this document.
11 o ABORT (Refer to section 3.2.1.2 for operational
12 clarifications)
13 o ACCESS NON-VOLATILE MEMORY
14 o DETERMINE ACCESS PATHS
15 o GET COMMAND STATUS
16 o SET CONTROLLER CHARACTERISTICS
17 o INVALID COMMAND End Message
18 o ACCESS PATH Attention Message
19 o AVAILABLE Attention Message
20 o DUPLICATE UNIT NUMBER Attention Message
21 4.3 Tape Specific MSCP Commands And Responses
22 Following is a list of Tape specific MSCP commands, which are
23 described in Chapter 5.
24 o ACCESS
25 o AVAILABLE
26 o COMPARE HOST DATA
27 o ERASE
28 o ERASE GAP
29 o GET UNIT STATUS
30 o ONLINE
31 o READ
32 o REPOSITION
33 o SET UNIT CHARACTERISTICS
34 o WRITE
35 o WRITE TAPE MARK
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP MESSAGE OVERVIEW Page 4-2
Generic Command Message Format 8 November 1987
1 4.4 Generic Command Message Format
2 Refer to MSCP for a general description of command message
3 formats.
4 4.4.1 Command Modifiers
5 Refer to MSCP for a general description of command modifier
6 operations.
7 The following command modifiers are supported by TMSCP but
8 described in MSCP:
9 o All Class Drivers
10 o Enable Set Write Protect
11 o Exclusive Access
12 o Next Unit
13 o Suppress Error Correction
14 The following command modifiers apply to a single TMSCP command.
15 Their operation is described within the identified command
16 description:
17 o Detect LEOT - REPOSITION
18 o Enable Re-write Error Recovery - WRITE
19 o Object Count - REPOSITION
20 o Rewind - REPOSITION
21 o Unload - AVAILABLE
22 The following command modifiers apply to various TMSCP commands.
23 Their operation is described within the identified general
24 operation sections:
25 o Clear Cached Data Lost - 3.6.1.4
26 o Clear Serious Exception - 3.5.2
27 o Compare - 3.4.3.4
28 o Immediate Completion - 3.2 for non-data transfer
29 commands
30 o Immediate Completion - 3.6 for data transfer commands
31 o Reverse - 3.3
32 o Suppress Caching - 3.6.2.2
33 o Suppress Error Recovery - 3.5.5.1
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP MESSAGE OVERVIEW Page 4-3
End Message Format 8 November 1987
1 4.5 End Message Format
2 Refer to MSCP for a general description of the end message
3 format.
4 4.5.1 Flags
5 The following end flag is supported by TMSCP but defined in MSCP:
6 o Error Log Generated
7 End flags specific to TMSCP and common to many commands are
8 defined here:
9 o Cached Data Lost
10 Set when cached data is lost because a tape unit
11 entered the Serious Exception state while write-back
12 caching is enabled. Refer to section 3.6.1.4 for
13 further details.
14 o EOT Encountered
15 Set whenever the magnetic tape loaded on a drive is
16 currently positioned at or beyond EOT. Refer to
17 section 3.3 for further details.
18 o Position Lost
19 Set when a tape unit is in the Position Lost state.
20 Refer to section 3.5.3 for further details.
21 o Serious Exception
22 Set when a tape unit is in the Serious Exception
23 state. Refer to section 3.5.2 for further details.
24 4.5.2 Status
25 Refer to MSCP for a complete description of the status field
26 format.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP MESSAGE OVERVIEW Page 4-4
End Message Format 8 November 1987
1 4.5.3 Status Codes
2 The following status codes are common to both MSCP and TMSCP.
3 Refer to MSCP for a complete description:
4 o Command Aborted
5 o Controller Error
6 o Drive Error
7 o Host Buffer Access Error
8 o Invalid Command (subcode "Invalid Unit Flags")
9 o Unit-Available
10 o Unit-Offline
11 Major status codes that are TMSCP specific are described here.
12 Status codes specific to a single TMSCP command are described
13 with the associated command.
14 o BOT Encountered
15 This status code will be returned whenever BOT is
16 unexpectedly encountered during the execution of a
17 reverse read type command. See section 3.3.1.2 for
18 more details.
19 o Compare Error
20 This status code will be returned whenever a
21 difference is found between the tape record data and
22 the host buffer data during a compare operation. It
23 will also be returned if a short tape record is
24 encountered during a COMPARE HOST DATA or compare
25 modified READ command.
26 o Data Error (subcode "Long Gap Encountered")
27 This status code will be returned when a long gap is
28 detected while attempting to execute a read type
29 command (i.e., ACCESS, COMPARE HOST DATA, READ or
30 REPOSITION). Tape motion ceases and the tape
31 remains positioned at the end of the long gap.
32 Refer to Appendix C, Table C-4 for tape format
33 dependent long gap values.
34 o Data Error (subcode "Unrecoverable Read Error")
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP MESSAGE OVERVIEW Page 4-5
End Message Format 8 November 1987
1 This status code will be returned: 1) if the tape
2 format cannot be determined from the TFIA
3 information during first read density selection; or,
4 2) if invalid or uncorrectable data is obtained from
5 the tape unit, as determined by internal error
6 detecting or correcting codes.
7 o Formatter Error
8 This status will be returned when a formatter
9 reports an internally detected error to the
10 controller. The subcode will identify the exact
11 cause of the error.
12 o Invalid Command (subcode "Invalid Byte Count")
13 The command specified a byte count greater than the
14 absolute maximum allowed by the controller. Refer
15 to Appendix C, Table C-3 for specifics.
16 o Media Format Error
17 This status code will be returned whenever the media
18 is formatted in a manner that cannot be written nor
19 read by the controller (i.e., if a disk formatted
20 media is accessed by TMSCP on a combination
21 TMSCP/MSCP device).
22 o Position Lost
23 This status code will be returned whenever the
24 controller, formatter, or tape unit loses context of
25 the tape position (object count).
26 | NOTE
27 | The intent of this status code is to report
28 | the loss of tape position when further tape
29 | motion operations are believed to be
30 | possible by the unit. If an error occurs
31 | that is not recoverable and prevents further
32 | tape motion commands (i.e., the tape
33 | breaks), then the appropriate drive or data
34 | error should be reported as the status of
35 | the command, rather than a status of
36 | Position Lost. The Position Lost end flag
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP MESSAGE OVERVIEW Page 4-6
End Message Format 8 November 1987
1 | should still be used as appropriate.
2 o Record Data Truncated
3 This error code will be returned whenever the length
4 of a tape record read is greater than the value
5 supplied in the "byte count" field of the
6 corresponding command message.
7 o Serious Exception
8 The command is rejected because the tape unit is
9 currently in the Serious Exception state or the
10 Cached Data Lost state. Refer to section 3.5.2 and
11 section 3.6.1.4 for further details.
12 o Success (subcode "EOT Encountered")
13 This status code will be returned whenever EOT is
14 encountered during the execution of a write type
15 command (i.e., ERASE GAP, WRITE, or WRITE TAPE
16 MARK). The command will complete in the normal
17 fashion after EOT is encountered.
18 o Tape Mark Encountered
19 This status code will be returned whenever a tape
20 mark is unexpectedly encountered during the
21 execution of a read type command. See sections
22 3.3.1.4 and 5.10.3 for more details.
23 o Write Protected
24 (subcode "Unit is Hardware Write Protected")
25 (subcode "Unit is Software Write Protected")
26 (subcode "Unit is Data Safety Write Protected")
27 This status will be returned if the tape unit is
28 found to be hardware, software, or data safety
29 Write Protected when a command requiring a write
30 operation is issued. The command is rejected
31 immediately and no tape motion will occur. The
32 subcode reflects the tape unit hardware,
33 software and data safety write protect state(s),
34 maintained by the controller.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP MESSAGE OVERVIEW Page 4-7
End Message Format 8 November 1987
1 The status codes that may be returned for each command and any
2 special meaning that they have are listed in the command end
3 message descriptions in Chapter 5.
4 4.5.4 Byte Count (Host Transfer)
5 This field, returned in the COMPARE HOST DATA, READ, and WRITE
6 command end messages, reflects the number of bytes SUCCESSFULLY
7 compared or transferred. The count begins with the first byte
8 transferred to/from the tape record and ceases at either the byte
9 count specified in the command message or the byte count of the
10 first error encountered, if any.
11 If the controller cannot initiate the command for any reason the
12 value returned in this field is zero.
13 If an error occurs, the controller must have SUCCESSFULLY
14 compared or transferred all data up to the point identified by
15 "byte count". Furthermore, the error identified by "status" must
16 have actually occurred at the byte position identified by "byte
17 count".
18 READ or WRITE commands that include a compare operation are
19 special cases. Such a command makes two passes over the data:
20 one for the original transfer and another for the compare
21 operation. For most errors, there is no way to determine in
22 which pass the error was detected. Therefore, the only guarantee
23 is that error-free transfer was performed up to the point
24 identified by "byte count". The compare operation may or may not
25 have been performed up to that point. If a "Compare Error" is
26 reported, both the original transfer and the compare operation
27 have been successfully performed up to the point identified by
28 "byte count".
29 NOTE
30 The state of a compare or transfer following the
31 byte position identified by "byte count" is
32 undefined, since:
33 1. None of the transfer following "byte count"
34 may have been performed or attempted.
35 2. All of it may have been attempted (with
36 unknown success).
37 3. Some parts may have been attempted and others
38 not.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP MESSAGE OVERVIEW Page 4-8
End Message Format 8 November 1987
1 This implies that the compare pass of a transfer
2 command may be performed for the entire transfer,
3 or portions thereof.
4 4.5.5 Byte Count (Tape Record)
5 This field, returned in the ACCESS, COMPARE HOST DATA, READ, and
6 WRITE command end messages, reflects the number of bytes
7 contained in the tape record. This field is only valid if the
8 controller can determine the actual size of the tape record. If
9 the controller is unable to determine the tape record size, the
10 value returned in this field is zero.
11 4.5.6 Position (Object Count)
12 This field, returned in the ACCESS, COMPARE HOST DATA, ERASE GAP,
13 FLUSH, READ, REPOSITION, WRITE and WRITE TAPE MARK command end
14 messages, reflects the current position of the tape in terms of
15 object counts forward of BOT. Because of the potential for
16 command pipelining within the controller and/or the tape
17 formatter, the most currently reported "object count" may lag
18 behind the actual physical drive position. Nevertheless, this
19 information is sufficient for host recovery from power failure or
20 position lost situations.
21 All caching units must report Position in a manner that makes the
22 caching transparent to higher levels. Thus, the contents of the
23 Position field is the position on tape, in terms of objects
24 forward of BOT, of the object whose end message has most recently
25 been generated for the indicated unit. I.e., a unit caches a
26 WRITE command, and sends an end message indicating successful
27 completion. In that and subsequent end messages, the unit
28 reports position as if the WRITE had already taken place, when in
29 reality the WRITE may still be waiting in the cache.
30 When a "position lost" condition is encountered or the tape unit
31 is in the Position Lost state (refer to section 3.5.3), the
32 controller will return its "best guess" object count in the
33 Position field. The "best guess" can be obtained by setting the
34 object count to be the last known (good) position when the unit
35 first enters the Position Lost state. Subsequent positioning of
36 the drive causes corresponding changes to the "best guess" object
37 count.
38 This field must be valid when the tape unit is "Unit Online" and
39 not in the Position Lost state. This field must contain the
40 unit's "best guess" object count when the tape unit is "Unit
41 Online" and in the Position Lost state.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-1
8 November 1987
1 CHAPTER 5
2 TMSCP COMMAND DESCRIPTIONS
3 5.1 ACCESS Command
4 Command Category:
5 Sequential
6 5.1.1 Command Message Format
7 31 0
8 +-------------------------------+
9 | command reference number |
10 +---------------+---------------+
11 | reserved | unit number |
12 +---------------+-------+-------+
13 | modifiers | rsvd | opcode|
14 +---------------+-------+-------+
15 | byte count |
16 +-------------------------------+
17 Allowable Modifiers:
18 Clear Cached Data Lost
19 Clear Serious Exception
20 Reverse (see section 3.3.1.1)
21 Suppress Caching
22 Suppress Error Correction
23 Suppress Error Recovery
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-2
ACCESS Command 8 November 1987
1 5.1.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 | |
11 +---- ----+
12 | |
13 +---- undefined ----+
14 | |
15 +---- ----+
16 | |
17 +-------------------------------+
18 | position (object count) |
19 +-------------------------------+
20 | byte count (tape record) |
21 +-------------------------------+
22 Status Codes:
23 Success
24 (subcode "Normal")
25 BOT Encountered
26 Command Aborted
27 Controller Error
28 Data Error
29 Drive Error
30 Formatter Error
31 Invalid Command
32 (subcode "Invalid Byte Count")
33 (subcode "Illegal Modifier") (see section 3.3.1.1)
34 Position Lost
35 Record Data Truncated
36 Serious Exception
37 Tape Mark Encountered
38 Unit-Available
39 Unit-Offline
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-3
ACCESS Command 8 November 1987
1 Flags:
2 Cached Data Lost
3 EOT Encountered
4 Error Log Generated
5 Position Lost
6 Serious Exception
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-4
ACCESS Command 8 November 1987
1 5.1.3 Description
2 Beginning at the current position, data is read from the magnetic
3 tape loaded on the specified unit, checked for errors, and then
4 discarded.
5 Refer to sections 3.3, 3.4, and 3.5 for additional detail.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-5
AVAILABLE Command 8 November 1987
1 5.2 AVAILABLE Command
2 Command Category:
3 Sequential - Immediate Completion
4 5.2.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 Allowable Modifiers:
14 All Class Drivers (ignored in single host case)
15 Clear Cached Data Lost
16 Clear Serious Exception
17 Exclusive Access
18 Unload
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-6
AVAILABLE Command 8 November 1987
1 5.2.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 Status Codes:
11 Success
12 (subcode "Normal")
13 (subcode "Still Connected")
14 The "still connected" subcode is returned if the
15 tape unit may potentially be accessed via
16 another controller but some other tape unit
17 which shares the same access path is still
18 "Unit-Online" to another host.
19 (subcode "Still Online")
20 The "still online" subcode indicates that the
21 tape unit is now "Unit-Available" to the
22 requesting Host, but the tape unit is still
23 "Unit-Online" to another Host.
24 (subcode "Still Online/Unload Ignored")
25 The "Still Online/Unload Ignored" subcode is
26 returned if the "Unload" modifier was set in the
27 command message and the unload was inhibited
28 because the tape unit is still "Unit Online" to
29 another host.
30 Command Aborted
31 Controller Error
32 Drive Error
33 Exclusive Access
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-7
AVAILABLE Command 8 November 1987
1 Formatter Error
2 Serious Exception
3 Unit-Offline
4 Flags:
5 Cached Data Lost
6 EOT Encountered
7 Error Log Generated
8 Position Lost
9 Serious Exception
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-8
AVAILABLE Command 8 November 1987
1 5.2.3 Description
2 All outstanding host commands are completed after which the tape
3 unit is placed in the "Unit Available" state relative to the
4 host.
5 If the tape unit is not "Unit Online" to any other host, the tape
6 is rewound to BOT.
7 If the "Unload" command modifier is set and the tape unit is not
8 "Unit Online" to any other host (i.e., "Still Online"), the tape
9 will be unloaded, rendering the tape unit "Unit-Offline". Note
10 that a "Still Connected" condition will not inhibit tape
11 unloading, if unload was requested.
12 If the "Unload" command modifier was not set, the tape unit is
13 not already "Unit-Available" and no other tape units sharing the
14 same access path are "Unit-Online" (i.e., the "Still Connected"
15 status subcode flag is clear), then an AVAILABLE attention
16 message is sent by any other controller to which the tape unit is
17 connected. The controller to which this command was sent need
18 not send an AVAILABLE attention message.
19 This command will be accepted if the tape unit is "Unit Online"
20 or "Unit Available". There is no point in issuing this command
21 to a "Unit Available" tape unit without specifying the "Unload"
22 modifier.
23 Refer to section 3.2 for additional information.
24 The actions of this command with the Exclusive Access modifier
25 are described in the MSCP specification.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-9
COMPARE HOST DATA Command 8 November 1987
1 5.3 COMPARE HOST DATA Command
2 Command Category:
3 Sequential
4 5.3.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 | byte count |
14 +-------------------------------+
15 | |
16 +--- buffer ---+
17 | |
18 +--- descriptor ---+
19 | |
20 +-------------------------------+
21 Allowable Modifiers:
22 Clear Cached Data Lost
23 Clear Serious Exception
24 Reverse (see section 3.3.1.1)
25 Suppress Caching
26 Suppress Error Correction
27 Suppress Error Recovery
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-10
COMPARE HOST DATA Command 8 November 1987
1 5.3.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 | byte count (host transfer) |
11 +-------------------------------+
12 | |
13 +---- ----+
14 | undefined |
15 +---- ----+
16 | |
17 +-------------------------------+
18 | position (object count) |
19 +-------------------------------+
20 | byte count (tape record) |
21 +-------------------------------+
22 Status Codes:
23 Success
24 (subcode "Normal")
25 BOT Encountered
26 Command Aborted
27 Compare Error
28 Controller Error
29 Data Error
30 Drive Error
31 Formatter Error
32 Host Buffer Access Error
33 Invalid Command
34 (subcode "Invalid Byte Count")
35 (subcode "Illegal Modifier") (see section 3.3.1.1)
36 Position Lost
37 Record Data Truncated
38 Serious Exception
39 Tape Mark Encountered
40 Unit-Available
41 Unit-Offline
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-11
COMPARE HOST DATA Command 8 November 1987
1 Flags:
2 Cached Data Lost
3 EOT Encountered
4 Error Log Generated
5 Position Lost
6 Serious Exception
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-12
COMPARE HOST DATA Command 8 November 1987
1 5.3.3 Description
2 Beginning at the current position, data is read from a record on
3 the magnetic tape and compared to the data in the specified host
4 buffer.
5 Refer to sections 3.3, 3.4, and 3.5 for additional detail.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-13
ERASE Command 8 November 1987
1 5.4 ERASE Command
2 Command Category:
3 Sequential (optionally Immediate Completion)
4 5.4.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 Allowable Modifiers:
14 Clear Cached Data Lost
15 Clear Serious Exception
16 Immediate Completion
17 If this modifier is set, this command will be
18 executed in an asynchronous manner. Refer to
19 section 3.2 for complete details.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-14
ERASE Command 8 November 1987
1 5.4.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 Status Codes:
11 Success
12 (subcode "Normal")
13 Command Aborted
14 Controller Error
15 Drive Error
16 Formatter Error
17 Serious Exception
18 Unit-Available
19 Unit-Offline
20 Write Protected
21 (subcode "Unit is Hardware Write Protected")
22 (subcode "Unit is Software Write Protected")
23 (subcode "Unit is Data Safety Write Protected")
24 Flags:
25 Cached Data Lost
26 EOT Encountered
27 Error Log Generated
28 Position Lost
29 Serious Exception
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-15
ERASE Command 8 November 1987
1 5.4.3 Description
2 Tape objects are erased starting at the current tape position
3 through PEOT (see chapter 2). The tape is then positioned to
4 BOT.
5 Refer to sections 3.3 and 3.5 for additional detail.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-16
ERASE GAP Command 8 November 1987
1 5.5 ERASE GAP Command
2 Command Category:
3 Sequential (optionally Immediate Completion)
4 5.5.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 Allowable Modifiers:
14 Clear Cached Data Lost
15 Clear Serious Exception
16 Immediate Completion
17 If this modifier is set, this command may be
18 executed as a "write-back" caching enabled "write"
19 type command. Refer to section 3.6.1 for complete
20 details.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-17
ERASE GAP Command 8 November 1987
1 5.5.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 Status Codes:
11 Success
12 (subcode "Normal")
13 (subcode "EOT Encountered")
14 Command Aborted
15 Controller Error
16 Drive Error
17 Formatter Error
18 Position Lost
19 Serious Exception
20 Unit-Available
21 Unit-Offline
22 Write Protected
23 (subcode "Unit is Hardware Write Protected")
24 (subcode "Unit is Software Write Protected")
25 (subcode "Unit is Data Safety Write Protected")
26 Flags:
27 Cached Data Lost
28 EOT Encountered
29 Error Log Generated
30 Position Lost
31 Serious Exception
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-18
ERASE GAP Command 8 November 1987
1 5.5.3 Description
2 Beginning at the current tape position, a format dependent record
3 gap is recorded on the magnetic tape loaded on the specified tape
4 unit. This command is useful for bypassing tape defects when
5 write error recovery is host controlled.
6 Refer to sections 3.3 and 3.5 for additional detail.
7 WARNING
8 The use of this command may cause undesirable
9 interaction with formatter directed error
10 recovery sequences resulting in non-standard
11 record gaps. Affected tapes may not be readable
12 on all systems.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-19
FLUSH Command 8 November 1987
1 5.6 FLUSH Command
2 Command Category:
3 Sequential
4 5.6.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 Allowable Modifiers:
14 Clear Cached Data Lost
15 Clear Serious Exception
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-20
FLUSH Command 8 November 1987
1 5.6.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 | |
11 +---- ----+
12 | |
13 +---- undefined ----+
14 | |
15 +---- ----+
16 | |
17 +-------------------------------+
18 | position (object count) |
19 +-------------------------------+
20 Status Codes:
21 Success
22 (subcode "Normal")
23 (subcode "EOT Encountered")
24 Command Aborted
25 Controller Error
26 Data Error
27 Formatter Error
28 Position Lost
29 Serious Exception
30 Unit-Available
31 Unit-Offline
32 Write Protected
33 (subcode "Unit is Hardware Write Protected")
34 (subcode "Unit is Software Write Protected")
35 (subcode "Unit is Data Safety Write Protected")
36 Flags:
37 Cached Data Lost
38 EOT Encountered
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-21
FLUSH Command 8 November 1987
1 Error Log Generated
2 Position Lost
3 Serious Exception
4 Position (Object Count):
5 This field, returned in the FLUSH command end message,
6 reflects the current position of the tape in terms of
7 object counts forward of BOT. Because of the potential
8 for command pipelining within the controller and/or the
9 tape formatter, the most currently reported "object
10 count" may lag behind the actual physical drive
11 position. Nevertheless, this information is sufficient
12 for host recovery from power failure or position lost
13 situations when write-back caching is enabled.
14 When a "position lost" condition is encountered or the
15 tape unit is in the Position Lost state (refer to
16 3.5.3), the controller will return the last known (good)
17 "object count".
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-22
FLUSH Command 8 November 1987
1 5.6.3 Description
2 | The FLUSH command is used to ensure that all previously issued
3 | cached "write" type commands have fully completed. Hosts would
4 normally use this command to establish or maintain
5 synchronization with "write" type commands being issued to the
6 specified tape unit.
7 | The end message to FLUSH command is not issued until all
8 | previously issued sequential commands have fully completed. This
9 | means that the data for all previous "write" type commands has
10 | been successfully written to media, or a Cached Data Lost
11 | condition has caused the write-back cache to be cleared. The
12 order in which the write-back cached data is transferred to the
13 specified tape unit is the exactly the same as the order in which
14 | the write-back cached "write" type commands occurred. TMSCP
15 | controllers should continue to fetch and buffer host data for
16 | subsequent "write" type commands, provided that such action is
17 | required in order to ensure high performance (i.e., required to
18 | keep the unit streaming). The TMSCP controller must be prepared
19 | to take the appropriate action with such pre-fetched data in the
20 | event of a Cached Data Lost condition or similar unexpected
21 | event. The TMSCP controller must also preserve sequentiality of
22 | such subsequent "write" type commands with the FLUSH command as
23 | well as all other sequential commands.
24 Refer to sections 3.3, 3.4, 3.5, and 3.6 for additional detail.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-23
GET UNIT STATUS Command 8 November 1987
1 5.7 GET UNIT STATUS Command
2 Command Category:
3 Immediate
4 5.7.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 Allowable Modifiers:
14 Next Unit
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-24
GET UNIT STATUS Command 8 November 1987
1 5.7.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 | unit flags |multi-unit code|
11 +-------------------------------+
12 | reserved |
13 +-------------------------------+
14 | |
15 +--- unit identifier ---+
16 | |
17 +-------------------------------+
18 | media type identifier |
19 +---------------+---------------+
20 | speed | format |
21 +-------+-------+---------------+
22 | rsvd |freecap| format menu |
23 +-------+-----------------------+
24 | uhvrsn| usvrsn| fhvrsn| fsvrsn|
25 +-------+-------+-------+-------+
26 Status Codes:
27 Success
28 (subcode "Normal") = Unit is "UNIT ON-LINE"
29 (subcode "Duplicate Unit Number")
30 Implies that the tape unit is "Unit-Online", but
31 that its unit number is identical to that of
32 some other unit known to the controller. The
33 tape unit will become "Unit-Offline", due to the
34 duplicate Unit Number, as soon as it ceases to
35 be "Unit-Online".
36 (subcode "Read-only Volume Format")
37 The unit only implements read access for the
38 format of the volume mounted in the unit. For
39 example, a single-density volume is mounted in a
40 double-density drive that can read but not write
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-25
GET UNIT STATUS Command 8 November 1987
1 it. Note that the unit will be Data Safety
2 Write Protected whenever this subcode is
3 returned.
4 Unit-Available
5 Unit-Offline
6 Flags:
7 Cached Data Lost
8 Exclusive Access
9 EOT Encountered
10 Position Lost
11 Serious Exception
12 Multi-Unit code:
13 The low byte of this field identifies the access path
14 between the controller and the tape unit. The high byte
15 identifies the particular tape unit on the access path.
16 This field must be valid when the returned Unit
17 Identifier is non-zero.
18 Unit Flags:
19 Caching Support
20 A non-host settable characteristic, set only if the
21 tape unit supports tape write-back caching.
22 This flag must be valid when the returned Unit
23 Identifier is non-zero.
24 Compare Reads
25 A host settable characteristic, enabled either with
26 ONLINE or SET UNIT CHARACTERISTICS commands. If
27 set, all READ commands will be verified with a
28 compare operation (equivalent to specifying the
29 compare modifier on each command).
30 This flag must be valid when the tape unit is
31 "Unit-Online".
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-26
GET UNIT STATUS Command 8 November 1987
1 Compare Writes
2 A host settable characteristic, enabled either with
3 ONLINE or SET UNIT CHARACTERISTICS Commands. If
4 set, all WRITE operations will be compare verified.
5 This flag must be valid when the tape unit is
6 "Unit-Online".
7 Data Safety Write Protect
8 A non-host settable characteristic, set whenever
9 some condition in the unit or volume prevents
10 reliable modification of data on the volume.
11 Possible causes include:
12 o An invalid volume format.
13 o The unit is only capable of reading the volume's
14 format. I.e., a single-density volume in a
15 double-density drive.
16 Note that there can be multiple causes for a unit
17 being Data Safety Write Protected. Furthermore,
18 some causes represent errors while others represent
19 normal occurrences.
20 Each individual cause can only be established when a
21 unit is brought "Unit-Online". Causes can be
22 eliminated - possibly allowing the unit to cease
23 being Data Safety Write Protected - while the unit
24 remains "Unit-Online". However, the server can only
25 establish a new cause for the unit to be Data Safety
26 Write Protected by forcing the unit to be
27 "Unit-Available" to all class drivers. Thus class
28 drivers are guaranteed that a unit will not
29 spontaneously become Data Safety Write Protected
30 while the unit is "Unit-Online".
31 This flag must be valid when the tape unit is
32 "Unit-Online".
33 Enhanced Write Error Recovery
34 A non-host settable characteristic, set only if the
35 tape unit supports the "Enable Re-write Error
36 Recovery" command modifier on WRITE commands.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-27
GET UNIT STATUS Command 8 November 1987
1 This flag must be valid when the returned Unit
2 Identifier is non-zero.
3 Hardware Write Protect
4 A non-host settable characteristic, set if the tape
5 unit's write protect mechanism is activated, causing
6 the tape unit to be hardware write protected.
7 This flag must be valid when the tape unit is either
8 "Unit-Available" or "Unit-Online".
9 Software Write Protect
10 A host settable characteristic, enabled or disabled
11 either with the ONLINE or SET UNIT CHARACTERISTICS
12 commands. If set, the tape unit will act as though
13 it were hardware write protected. If clear, the
14 tape unit is virtually write enabled. This flag
15 cannot override hardware write protection.
16 This flag must be valid when the tape unit is
17 "Unit-Online".
18 Suppress Caching
19 A host settable characteristic, enabled or disabled,
20 either with an ONLINE or SET UNIT CHARACTERISTICS
21 command. If set, caching using the TMSCP
22 controller's volatile cache is disabled for this
23 unit. If clear, read-ahead caching using the TMSCP
24 controller's volatile cache is enabled for this
25 unit. Equivalent to specifying the "Suppress
26 Caching" modifier on all "read" type commands for
27 which it is legal.
28 This flag must be valid when the tape unit is
29 "Unit-Online".
30 Variable Speed Mode Suppression
31 A host settable characteristic, enabled or disabled
32 either with an ONLINE or SET UNIT CHARACTERISTICS
33 command. If set, a variable speed tape unit's speed
34 change algorithm is disabled, the tape unit will
35 operate at a fixed speed. If clear, a variable
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-28
GET UNIT STATUS Command 8 November 1987
1 speed tape unit's speed change algorithm is enabled,
2 the tape unit's operating speed may vary. This flag
3 is always clear for a fixed speed tape unit.
4 This flag must be valid when the tape unit is
5 "Unit-Online".
6 Variable Speed Unit
7 A non-host settable characteristic, set only if the
8 tape unit has variable speed capability. A
9 controller or formatter directed automatic speed
10 change algorithm (based on host data throughput) is
11 employed for tape units with this capability.
12 This flag must be valid when the returned Unit
13 Identifier is non-zero.
14 Write Back
15 A host settable characteristic, enabled or disabled
16 either with an ONLINE or SET UNIT CHARACTERISTICS
17 command. If set, write-back caching using the
18 controller's volatile cache is enabled for this
19 unit. Equivalent to specifying the "Immediate
20 Completion" modifier on all "write" type commands
21 for which it is legal.
22 This flag must be valid when the tape unit is
23 "Unit-Online".
24 Unit Identifier:
25 This field identifies a unique device number for the
26 tape unit as defined in the MSCP specification. This
27 field must be valid and non-zero when the unit is in any
28 of the following states:
29 "Unit-Available", all sub-states.
30 "Unit-Online", all sub-states.
31 "Unit-Offline", the following sub-states:
32 "Duplicate unit number"
33 "Exclusive use"
34 "No media mounted or disabled via switch
35 setting"
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-29
GET UNIT STATUS Command 8 November 1987
1 Media Type Identifier:
2 This field identifies the type of media used by this
3 tape unit, for use by Host Generic device allocation
4 mechanisms.
5 This field must be valid when the returned Unit
6 Identifier is non-zero.
7 Format:
8 The tape format currently employed on the tape unit.
9 The value in the low byte of this field is a binary bit
10 representing the nominal or formatted density of tape.
11 The high byte is a code value associated with the media
12 type. The high byte always has the same value for a
13 given unit. (Refer to Appendix C, Tables C-1 and C-2.)
14 This field must be valid when the tape unit is
15 "Unit-Online".
16 Speed:
17 The value in this field is expressed as the
18 instantaneous data rate in kilo-bytes per second.
19 For 9-track tape units it is computed, without rounding,
20 as follows:
21 Speed = ( ips * bpi) / 1000
22 where:
23 ips = Tape Transport speed in Inches per Second
24 bpi = nominal recording format frame density in
25 linear bits per inch
26 For a fixed speed tape unit, the value returned will
27 indicate the speed at which the tape unit operates.
28 The value returned for a variable speed tape unit is
29 dependent upon the state of the "variable speed mode
30 suppression" unit flag. If that flag is set, the value
31 returned will indicate the tape unit's fixed speed set
32 via an ONLINE or SET UNIT CHARACTERISTICS command. If
33 clear, the value returned will indicate the highest
34 speed for the current density, unless the tape unit is
35 actively performing I/O. Then the value is the current
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-30
GET UNIT STATUS Command 8 November 1987
1 operating speed, set by the speed change algorithm.
2 This field must be valid when the tape unit is
3 "Unit-Online".
4 Format Menu:
5 The high byte of this field is a code value associated
6 with the media type. This value is constant for a given
7 device. The low byte of this field contains a menu of
8 available tape unit operating formats expressed as
9 binary bit values. Each bit in the low byte represents
10 unique nominal or formatted density in bits per linear
11 inch of tape. (Refer to Appendix C, Tables C-1 and
12 C-2.)
13 This field must be valid when the returned Unit
14 Identifier is non-zero.
15 Freecap:
16 This field indicates the amount of media currently
17 available for writing as a function of the total media
18 size.
19 The following values of this field have special meaning.
20 If the value is reported, it must be for that meaning.
21 If one of the meanings is to be reported, it must be
22 with the corresponding value. Devices are allowed to
23 always report zero in this field.
24 0 The amount of media available is unknown. This
25 is for backwards compatibility with existing
26 TMSCP devices.
27 1 There is no space available before PEOT.
28 251 The entire media is available (i.e., new tape).
29 252-255 Reserved.
30 Values from 2 to 251 have an approximately linear
31 relationship to the fraction of free capacity available.
32 A larger value indicates a larger free capacity.
33 NOTE
34 Due to bad spots, extended gaps due to
35 streaming, or other format and device dependent
36 anomalies, the value of this field is almost
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-31
GET UNIT STATUS Command 8 November 1987
1 certainly optimistic. Because of these
2 anomalies, the controller may, at its option,
3 choose not to use the full 8 bits of resolution
4 in reporting free capacity. The controller may
5 also, at its option, attempt to account for
6 these anomalies.
7 Devices reporting values other than zero in this field
8 must document in their device specification the
9 algorithm that is used to generate the value.
10 It is strongly recommended that all new devices support
11 this feature.
12 This field must be valid when the tape unit is
13 "Unit-Online".
14 Fsvrsn:
15 The formatter's software, firmware, or microcode
16 revision number. Always zero if the product's
17 development and maintainability groups determine that
18 there is no benefit from supporting machine readable
19 revision numbers.
20 This field must be valid when the returned Unit
21 Identifier is non-zero.
22 Fhvrsn:
23 The formatter's hardware revision number. Always zero
24 if the product's development and maintainability groups
25 determine that there is no benefit from supporting
26 machine readable revision numbers.
27 This field must be valid when the returned Unit
28 Identifier is non-zero.
29 Usvrsn:
30 The unit's software, firmware, or microcode revision
31 number. Always zero if the product's development and
32 maintainability groups determine that there is no
33 benefit from supporting machine readable revision
34 numbers.
35 This field must be valid when the returned Unit
36 Identifier is non-zero.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-32
GET UNIT STATUS Command 8 November 1987
1 Uhvrsn:
2 The unit's hardware revision number. Always zero if the
3 product's development and maintainability groups
4 determine that there is no benefit from supporting
5 machine readable revision numbers.
6 This field must be valid when the returned Unit
7 Identifier is non-zero.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-33
GET UNIT STATUS Command 8 November 1987
1 5.7.3 Description
2 The GET UNIT STATUS command returns the current connection state
3 of a tape unit as well as unit characteristics. Note that the
4 validity of the unit characteristics is dependent on the current
5 connection state.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-34
ONLINE Command 8 November 1987
1 5.8 ONLINE Command
2 Command Category:
3 Sequential
4 5.8.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 | unit flags | reserved |
14 +---------------+---------------+
15 | |
16 +--- ---+
17 | reserved |
18 +--- ---+
19 | |
20 +-------------------------------+
21 | device dependent parameters |
22 +---------------+---------------+
23 | speed | format |
24 +---------------+---------------+
25 Allowable Modifiers:
26 Clear Cached Data Lost
27 Clear Serious Exception
28 Enable Set Write Protect
29 Causes the "Write Protect" unit flag to be host
30 settable. This modifier causes the state of the
31 "Software Write Protect" unit flag to be copied to
32 the controller's software write protect flag for
33 this tape unit.
34 Exclusive Access
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-35
ONLINE Command 8 November 1987
1 Unit Flags:
2 If the tape unit is already "Unit-Online" to any class
3 driver, then the class driver must specify the same
4 values for controller supported host settable unit flags
5 as are currently in effect on the tape unit. The
6 controller may or may not, at its option, check that the
7 flag values are the same. If it does check, then it
8 must return an Invalid Command (subcode "Invalid Unit
9 Flags") status code if they are different. If the
10 controller does not check that they are the same, then
11 it must ignore the unit flags specified by the class
12 driver and preserve the flag settings currently in
13 effect on the tape unit. Note that this checking
14 becomes mandatory, rather than optional, if the
15 controller provides Multi-Host Support.
16 Refer to section 5.11.1 for a description of individual
17 flag usage.
18 Device Dependent Parameters:
19 Format:
20 Speed:
21 Refer to section 5.11.1 for a description of the usage
22 of these fields.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-36
ONLINE Command 8 November 1987
1 5.8.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 | unit flags |multi-unit code|
11 +---------------+---------------+
12 | reserved |
13 +-------------------------------+
14 | |
15 +--- unit identifier ---+
16 | |
17 +-------------------------------+
18 | media type identifier |
19 +---------------+---------------+
20 | speed | format |
21 +---------------+---------------+
22 | maximum write byte count |
23 +---------------+---------------+
24 | reserved | noise record |
25 +---------------+---------------+
26 Status Codes:
27 Success
28 (subcode "Normal") - tape unit brought online.
29 (subcode "Already Online")
30 tape unit is already online, state and
31 characteristics are not altered. When the tape
32 unit is already "Unit-Online", the controller
33 merely returns the Unit Characteristics in the
34 End message with this status flag bit set,
35 without performing any other actions.
36 (subcode "Read-only Volume Format")
37 The unit only implements read access for the
38 format of the volume mounted in the unit. For
39 example, a single-density volume is mounted in a
40 double-density drive that can read but not write
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-37
ONLINE Command 8 November 1987
1 it. Note that the unit will be Data Safety
2 Write Protected whenever this subcode is
3 returned.
4 Command Aborted
5 The tape unit's state is unchanged. The host must
6 assume that the return characteristics are invalid,
7 since the tape unit may be "Unit-Offline".
8 Controller Error
9 Drive Error
10 Exclusive Access
11 Formatter Error
12 Invalid Command
13 (subcode "Invalid Unit Flags")
14 The tape unit is already "Unit-Online" and those
15 host settable characteristics that are supported
16 by the controller are different from those
17 currently in effect on the tape unit. The tape
18 unit remains "Unit-Online" and the host settable
19 Unit Flags are NOT changed. Note that the
20 controller returns an Invalid Command End
21 message if a reserved Unit Flag is set.
22 (subcode "Invalid Format")
23 More than one Format was specified, or the
24 Format specified is not supported by the tape
25 unit, or the tape unit is already "Unit-Online"
26 and the value supplied in the Format field was
27 neither a zero nor the Format specified by the
28 host that initially brought the tape unit into
29 the "Unit-Online" state. The original format
30 selected remains unchanged.
31 Media Format Error
32 Unit-Offline
33 Flags:
34 Cached Data Lost
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-38
ONLINE Command 8 November 1987
1 EOT Encountered
2 Error Log Generated
3 Position Lost
4 Serious Exception
5 Multi-Unit code:
6 Unit Flags:
7 Unit Identifier:
8 Media Type Identifier:
9 Format:
10 Speed:
11 Refer to section 5.7.2 for descriptions of these fields.
12 Recommended Maximum WRITE Byte Count:
13 The largest size record likely to have acceptable data
14 reliability statistics, considering the selected
15 recording mode. This limit is not enforced by the
16 controller although the controller does enforce a
17 maximum controller dependent limit.
18 This field must be valid when the tape unit is
19 "Unit-Online".
20 Noise Record:
21 A non-host-settable characteristic advising the host of
22 the record length at or below which legitimate data
23 records are subject to confusion with noise records. If
24 zero, the tape unit's recording technology is immune to
25 noise records.
26 This field must be valid when the tape unit is
27 "Unit-Online".
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-39
ONLINE Command 8 November 1987
1 5.8.3 Description
2 The ONLINE Command is used to bring a tape unit into the
3 "Unit-Online" state, set host settable unit characteristics, and
4 obtain those unit characteristics that are essential for proper
5 class driver operation.
6 Host settable characteristics are set exactly as if a SET UNIT
7 CHARACTERISTICS command was issued (refer to section 5.11). Host
8 settable characteristics are not set until tape unit specific
9 validity checks have succeeded, if applicable. The host settable
10 characteristics are not altered if the tape unit is already
11 "Unit-Online".
12 If the tape unit is not already "Unit-Online" to another host,
13 then a successful ONLINE command will position the tape to BOT,
14 if it is not already there. If the tape unit is already
15 "Unit-Online" to another host, then a successful ONLINE command
16 will not alter the position of the tape.
17 The actions of this command with the Exclusive Access modifier
18 are described in the MSCP specification.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-40
READ Command 8 November 1987
1 5.9 READ Command
2 Command Category:
3 Sequential
4 5.9.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 | byte count |
14 +-------------------------------+
15 | |
16 +--- buffer ---+
17 | |
18 +--- descriptor ---+
19 | |
20 +-------------------------------+
21 Allowable Modifiers:
22 Clear Cached Data Lost
23 Clear Serious Exception
24 Compare
25 Reverse (see section 3.3.1.1)
26 Suppress Caching
27 Suppress Error Correction
28 Suppress Error Recovery
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-41
READ Command 8 November 1987
1 5.9.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 | byte count (host transfer) |
11 +-------------------------------+
12 | |
13 +---- ----+
14 | undefined |
15 +---- ----+
16 | |
17 +-------------------------------+
18 | position (object count) |
19 +-------------------------------+
20 | byte count (tape record) |
21 +-------------------------------+
22 Status Codes:
23 Success
24 (subcode "Normal")
25 BOT Encountered
26 Command Aborted
27 Compare Error
28 Controller Error
29 Data Error
30 Drive Error
31 Formatter Error
32 Host Buffer Access Error
33 Invalid Command
34 (subcode "Invalid Byte Count")
35 (subcode "Illegal Modifier") (see section 3.3.1.1)
36 Position Lost
37 Record Data Truncated
38 Serious Exception
39 Tape Mark Encountered
40 Unit-Available
41 Unit-Offline
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-42
READ Command 8 November 1987
1 Flags:
2 Cached Data Lost
3 EOT Encountered
4 Error Log Generated
5 Position Lost
6 Serious Exception
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-43
READ Command 8 November 1987
1 5.9.3 Description
2 Beginning at the current position, data is read from a record on
3 the magnetic tape loaded on the specified unit and transferred to
4 the specified host buffer.
5 Refer to sections 3.3, 3.4, and 3.5 for additional detail.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-44
REPOSITION Command 8 November 1987
1 5.10 REPOSITION Command
2 Command Category:
3 Sequential (REWIND to BOT variation is optionally
4 Immediate Completion)
5 5.10.1 Command Message Format
6 31 0
7 +-------------------------------+
8 | command reference number |
9 +---------------+---------------+
10 | reserved | unit number |
11 +---------------+-------+-------+
12 | modifiers | rsvd | opcode|
13 +---------------+-------+-------+
14 | record count or object count |
15 +-------------------------------+
16 | tape mark count |
17 +-------------------------------+
18 Allowable Modifiers:
19 Clear Cached Data Lost
20 Clear Serious Exception
21 Detect LEOT
22 If this modifier is set, and the "Reverse" modifier
23 is clear, and either or both a Skip Tape Mark or a
24 Skip Record positioning function is also enabled,
25 the automatic detection of LEOT (i.e., two adjacent
26 tape marks with no intervening records), as
27 described in section 5.10.3, is enabled.
28 Immediate Completion
29 If this modifier is set, and only the Rewind to BOT
30 positioning function is enabled, the Rewind to BOT
31 will be executed in an asynchronous manner. Refer
32 to section 3.2.1.1 for additional detail.
33 Object Count
34 The setting of this modifier and the value specified
35 in the "record count or object count" and the "tape
36 mark count" command message fields selects the
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-45
REPOSITION Command 8 November 1987
1 skipping operation to be performed:
2 o If set, and the "record count or object count"
3 field is non-zero, the Skip Tape Object (both
4 records and tape marks) positioning function is
5 enabled.
6 o If clear, and the "record count or object count"
7 field is non-zero, the Skip Record positioning
8 function is enabled.
9 o If clear, and the "tape mark count" field is
10 non-zero, the Skip Tape Mark positioning
11 function is enabled.
12 All of the positioning functions mentioned above are
13 described in section 5.10.3.
14 Reverse
15 Rewind
16 If this modifier is set, the rewind to BOT
17 positioning function, described in section 5.10.3,
18 is enabled.
19 Suppress Caching
20 Suppress Error Correction
21 Suppress Error Recovery
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-46
REPOSITION Command 8 November 1987
1 5.10.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 | records skipped/undefined |
11 +-------------------------------+
12 | tape marks skipped/undefined |
13 +-------------------------------+
14 | |
15 +---- undefined ----+
16 | |
17 +-------------------------------+
18 | position (object count) |
19 +-------------------------------+
20 Status Codes:
21 Success
22 (subcode "Normal")
23 BOT Encountered
24 Command Aborted
25 Controller Error
26 Data Error
27 (subcode "Long Gap Encountered")
28 Drive Error
29 Formatter Error
30 LEOT Encountered
31 Position Lost
32 Serious Exception
33 Tape Mark Encountered
34 Unit-Available
35 Unit-Offline
36 Flags:
37 Cached Data Lost
38 EOT Encountered
39 Error Log Generated
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-47
REPOSITION Command 8 November 1987
1 Position Lost
2 Serious Exception
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-48
REPOSITION Command 8 November 1987
1 5.10.3 Description
2 This command is used to position the tape from one location to
3 another.
4 For additional information related to the operation of the
5 REPOSITION command refer to the following:
6 o Chapter 2 Terminology, especially the definitions of:
7 > Record
8 > Tape Mark
9 > Object
10 > Record Gap
11 > Beginning-of-Tape (BOT)
12 > End-of-Tape (EOT)
13 > Logical End-of-Tape (LEOT)
14 o Sections 3.2 Command Categories And Execution Order,
15 3.2.1 Lengthy Command Considerations, 3.2.1.1
16 Synchronous Vs Asynchronous, and 3.2.1.2 Abort.
17 o Sections 3.3.1 (Tape Motion Command Operation) "read"
18 Type, 3.3.1.1 Direction, 3.3.1.2 BOT Handling, 3.3.1.3
19 EOT Handling, and 3.3.1.4 Tape Mark Handling.
20 o Section 3.4.2 Tape Format Employed.
21 o Section 3.5 General Error Processing and all associated
22 sub-sections.
23 o Sections 4.5.1 (End Message Format) Flags, 4.5.2 Status,
24 4.5.3 Status Codes; especially those listed in Section
25 5.10.2, and 4.5.6 Position (Object Count).
26 The manner in which the positioning operation is to be performed
27 is dictated by the state of the following command modifiers:
28 o "Object Count"
29 o "Rewind"
30 o "Reverse"
31 and the values supplied in the "tape mark count" and "record
32 count or object count" command message fields.
33 In addition, the following two special case modifiers affect the
34 manner in which the positioning operation will complete:
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-49
REPOSITION Command 8 November 1987
1 o "Immediate Completion"
2 o "Detect LEOT"
3 Four positioning functions are available for use:
4 o Rewind to BOT
5 o Skip Tape Mark
6 o Skip Record
7 o Skip Tape Object (i.e., both records and tape marks).
8 Either of the following mutually exclusive sets of combined
9 positioning functions can be specified in a single command
10 message:
11 o Rewind to BOT
12 o Skip Tape Mark
13 o Skip Record
14 or
15 o Rewind to BOT
16 o Skip Tape Object
17 When combined, the controller must execute the set of positioning
18 functions synchronously as a single atomic command. Furthermore,
19 the functions within a set must be executed in the sequential
20 order shown above, with the following conditional exceptions:
21 1. If the function which is next in line for execution is
22 not enabled the controller must continue execution with
23 the next function which is enabled (if any).
24 2. If a function is terminated due to the detection of an
25 error or a special condition (e.g., tape mark
26 unexpectedly encountered, LEOT condition satisfied, BOT
27 unexpectedly encountered, etc.) the controller must not
28 attempt to execute any remaining enabled functions.
29 3. If none of the functions are enabled the controller, as
30 implied, must take no positioning action.
31 The last case listed is actually considered an
32 additional function, a sequential no-operation.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-50
REPOSITION Command 8 November 1987
1 A model of operation for each of the available functions is
2 described below. Controller dependent algorithms formulated with
3 the intent of optimizing the positioning functions are expressly
4 permitted, provided the models of operation are not perturbed in
5 any manner.
6 NOTE
7 Occurrence of an error which prevents further
8 continuation of tape unit operation while the
9 controller is performing a positioning function
10 optimization may result in a tape position
11 outside the range of objects spanned by the
12 REPOSITION function. In this case the controller
13 must first report the error in the normal manner
14 and then place the tape unit in the "Position
15 Lost" state, if appropriate.
16 Table D-1 shows all the possible variations of the REPOSITION
17 command which can be specified. Table D-1 also depicts the
18 conditions under which the modifiers and count field values are
19 ignored. Those conditions are not addressed in the model of
20 operation descriptions.
21 o Rewind to BOT
22 The Rewind to BOT positioning function is enabled
23 when the "Rewind" modifier is set.
24 When this function is enabled and the tape is not
25 already resting at BOT, the controller starts tape
26 motion in the reverse direction and continues the
27 tape motion until either BOT is reached or an error
28 occurs.
29 If the "Immediate Completion" modifier is set and no
30 other positioning function is enabled the rewind to
31 BOT is completed in an asynchronous manner as
32 described in Section 3.2.1.1.
33 o Skip Tape Mark
34 The Skip Tape Mark positioning function is enabled
35 when the "Object Count" modifier is clear and the
36 "tape mark count" command message field is non-zero.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-51
REPOSITION Command 8 November 1987
1 When this function is enabled the controller starts
2 tape motion, in the direction indicated by the
3 "Reverse" modifier, and begins searching for the
4 occurrence of tape marks.
5 The controller continues the search until one of the
6 following occurs:
7 1. An error is detected (including BOT
8 Encountered).
9 2. A tape mark which satisfies the LEOT condition,
10 if LEOT detection was enabled (see discussion
11 below) is detected.
12 3. The number of tape marks specified in the "tape
13 mark count" command message field have been
14 found.
15 During the tape mark search the controller will keep
16 a count of the number of tape marks found (Note:
17 records found are not counted during the tape mark
18 search).
19 LEOT detection is enabled only if the "Reverse"
20 modifier is clear. If LEOT detection is enabled the
21 controller will determine that the tape mark just
22 found satisfies the LEOT condition if either of the
23 following is true:
24 1. The previous object found during the current
25 search was also a tape mark.
26 2. Based on context (the controller) saved
27 following execution of the last command which
28 caused tape motion, the tape was left positioned
29 forward (i.e., on the EOT side of BOT) of a tape
30 mark.
31 In the latter case the saved context must
32 specifically indicate that the last tape motion
33 command was one of the following:
34 a. An ACCESS, COMPARE HOST DATA, READ, or
35 REPOSITION (with Skip Record positioning
36 function enabled) command performed in the
37 forward direction, which terminated with a
38 status of Tape Mark Encountered.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-52
REPOSITION Command 8 November 1987
1 b. A REPOSITION (with Skip Tape Mark function
2 enabled and the Skip Record function
3 disabled) command performed in the forward
4 direction which completed successfully when
5 that tape mark was found.
6 The controller performs the following actions upon
7 detecting LEOT:
8 1. Stops tape motion.
9 2. Resumes tape motion in the reverse direction and
10 positions the tape to the record gap separating
11 the two adjacent tape marks.
12 3. Stops tape motion once again.
13 The controller must not add the tape mark which
14 satisfies the LEOT condition to the number of tape
15 marks found count.
16 o Skip Record
17 The Skip Record positioning function is enabled when
18 the "Object Count" modifier is clear and the "record
19 count or object count" command message field is
20 non-zero.
21 When this function is enabled the controller starts
22 tape motion (or continues tape motion if the Skip
23 Tape Mark function was just completed), in the
24 direction indicated by the "Reverse" modifier, and
25 begins searching for the occurrence of records.
26 The controller continues the search until one of the
27 following occurs:
28 1. An error is detected (including BOT
29 Encountered).
30 2. A tape mark is detected.
31 3. The number of records specified in the "record
32 count or object count" command message field
33 have been found.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-53
REPOSITION Command 8 November 1987
1 During the record search the controller will keep a
2 count of the number of records found.
3 The action the controller follows if the record
4 search is terminated by detecting a tape mark
5 depends on whether LEOT detection is enabled or
6 disabled:
7 o If LEOT Detection is disabled (i.e., "Detect
8 LEOT" modifier clear or "Reverse" modifier is
9 set, regardless of the setting of the "Detect
10 LEOT" modifier) the tape mark is considered as
11 having been unexpectedly encountered. In this
12 case the controller must add the unexpected tape
13 mark to the number of tape marks counted during
14 the immediately preceding Skip Tape Mark
15 function, or, set the tape mark count to one if
16 the Skip Tape Mark function was not enabled.
17 o If LEOT detection is enabled (i.e., the "Detect
18 LEOT" modifier is set and the "Reverse" modifier
19 is clear) the controller must determine whether
20 or not the tape mark satisfies the LEOT
21 condition as described in the Skip Tape Mark
22 function above. If LEOT was satisfied the
23 controller performs the LEOT detected actions,
24 again, as described in the Skip Tape Mark
25 function above. Otherwise, the tape mark is
26 unexpected and the controller performs the
27 unexpected tape mark actions described
28 immediately above.
29 o Skip Tape Object (i.e., both records and tape marks)
30 The Skip Tape Object positioning function is enabled
31 when the "Object Count" modifier is set and the
32 "record count or object count" command message field
33 is non-zero.
34 When this function is enabled the controller starts
35 tape motion, in the direction indicated by the
36 "Reverse" modifier, and begins searching for the
37 occurrence of tape objects.
38 The controller continues the search until one of the
39 following occurs:
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-54
REPOSITION Command 8 November 1987
1 1. An error is detected (including BOT
2 Encountered).
3 2. The number of tape objects specified in the
4 "record count or object count" command message
5 field have been found.
6 During the tape object search the controller need
7 not keep a count of the number of records and tape
8 marks found.
9 o Sequential No-operation
10 The Sequential No-operation is enabled when none of
11 the positioning functions are enabled.
12 The controller must not initiate any tape motion.
13 After executing the enabled functions to the fullest extent
14 possible (i.e., terminate execution due to the detection of an
15 error or special condition, or complete execution successfully by
16 satisfying the count value(s) etc.), the controller prepares a
17 REPOSITION command end message in standard MSCP/TMSCP fashion,
18 with exception of the following specific actions:
19 o Where a Rewind to BOT function with no other positioning
20 function enabled and the "immediate completion" modifier
21 clear was executed, the controller will set both the
22 "tape marks skipped" and "records skipped" fields to
23 zero.
24 o Where a Rewind to BOT function with no other positioning
25 function enabled and the "immediate completion" modifier
26 set was executed, the controller will set both the "tape
27 marks skipped" and "records skipped" fields to zero and
28 set the "status" field to Success (subcode "Normal").
29 o Where a Skip Tape Mark positioning function was
30 executed, the controller will set the "tape marks
31 skipped" field equal to the number of tape marks found
32 during execution of the Skip Tape Mark function or as a
33 result of the subsequent Skip Record function
34 unexpectedly encountering a tape mark. If the Skip Tape
35 Mark function was not executed and a tape mark was not
36 unexpectedly encountered in the subsequent Skip Record
37 function the controller will set the "tape marks" field
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-55
REPOSITION Command 8 November 1987
1 to zero.
2 o Where a Skip Record positioning function was executed
3 the controller will set the "records skipped" field
4 equal to the number of records found value accumulated
5 during execution of the function. If the Skip Record
6 function was not executed the controller will set the
7 "records skipped" field to zero.
8 o If either a Skip Tape Mark or Skip Record positioning
9 function terminated due to detecting LEOT (as described
10 above) the controller will set the "status" field equal
11 to LEOT Detected.
12 o Where a Skip Object positioning function was executed
13 the controller may set the "records skipped" and "tape
14 marks skipped" fields to any value it chooses. (Those
15 fields are undefined in this case.)
16 o For a Sequential No-operation the controller will set
17 the "status" field to Success (subcode "Normal") and
18 both the "tape marks skipped" and "records skipped"
19 fields to zero.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-56
SET UNIT CHARACTERISTICS Command 8 November 1987
1 5.11 SET UNIT CHARACTERISTICS Command
2 Command Category:
3 Sequential
4 5.11.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 | unit flags | reserved |
14 +---------------+---------------+
15 | |
16 +--- ---+
17 | reserved |
18 +--- ---+
19 | |
20 +-------------------------------+
21 | device dependent parameters |
22 +---------------+---------------+
23 | speed | format |
24 +---------------+---------------+
25 Allowable Modifiers:
26 Clear Cached Data Lost
27 Clear Serious Exception
28 Enable Set Write Protect
29 Exclusive Access
30 Unit Flags:
31 Caching Support
32 A non-host settable characteristic, set only if the
33 tape unit supports tape write-back caching.
34 This flag is invalid when the returned Unit
35 Identifier is zero.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-57
SET UNIT CHARACTERISTICS Command 8 November 1987
1 Compare Reads
2 If set, all READ commands will be verified with a
3 compare operation. Equivalent to specifying the
4 compare modifier on each such command.
5 Compare Writes
6 If set, then all WRITE commands will be verified
7 with a compare operation. Equivalent to specifying
8 the Compare modifier on each such command.
9 Enhanced Write Error Recovery
10 A non-host settable characteristic, set only if the
11 tape unit supports the "Enable Re-write Error
12 Recovery" command modifier on WRITE commands.
13 This flag is invalid when the returned Unit
14 Identifier is zero.
15 Software Write Protect (SWP)
16 If the SWP unit flag is set and the "Enable Set
17 Write Protect" command modifier is also set, the
18 tape unit will act as though it were Hardware Write
19 Protected.
20 If the SWP unit flag is clear and the "Enable Set
21 Write Protect" command modifier is set, the tape
22 unit is virtually write enabled.
23 This flag cannot override hardware write protection.
24 Suppress Caching
25 If set, caching using the TMSCP controller's
26 volatile cache is disabled for this unit. If clear,
27 read-ahead caching using the TMSCP controller's
28 volatile cache is enabled for this unit. Equivalent
29 to specifying the "Suppress Caching" command
30 modifier on all "read" type commands for which it is
31 legal.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-58
SET UNIT CHARACTERISTICS Command 8 November 1987
1 Variable Speed Mode Suppression
2 If set, a variable speed tape unit's speed change
3 algorithm is disabled. The tape unit speed is fixed
4 at the speed specified in the "speed" field
5 (described below). If clear, a variable speed tape
6 unit's speed change algorithm is enabled, the tape
7 unit's operating speed may vary. This flag is
8 ignored for a fixed speed tape unit.
9 Write Back
10 If set, write-back caching using the controller's
11 volatile cache is enabled for this unit. If clear,
12 write-back caching using the controller's volatile
13 cache is disabled for this unit. Equivalent to
14 specifying the "Immediate Completion" modifier on
15 all "write" type commands for which it is legal.
16 Device Dependent Parameters:
17 Device and/or controller dependent device tuning
18 parameters. The value zero in this field means that
19 default or normal tuning parameters should be used.
20 Non-zero values for this field should normally be
21 established through system-dependent appropriate means.
22 Examples of the use of this field include selecting
23 alternative optimization algorithms or enabling and
24 disabling automatic (online) diagnosis of the tape unit.
25 Format:
26 Assuming that the tape is positioned at BOT, the value
27 supplied in this field is the host suggested format to
28 be employed for tape unit operations (Refer to section
29 3.4.2 for related information). It can be a zero or a
30 binary bit value in the low byte representing the
31 density of the tape. If the value is zero, the highest
32 density format supported by the tape unit will be
33 employed. If the low byte is non-zero, then the high
34 byte must have the value corresponding to the media used
35 by the unit. See Appendix C, Tables C-1 and C-2 for
36 details.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-59
SET UNIT CHARACTERISTICS Command 8 November 1987
1 If the value is non-zero, but the high byte has the
2 wrong value, the command will be rejected with an
3 Invalid Command (subcode "Invalid Format") status code.
4 If the tape is not positioned at BOT, a zero value will
5 not cause the format to change from the currently
6 selected density. Furthermore, if the value is non-zero
7 the command will be rejected with an Invalid Command
8 (subcode "Invalid Format") status code. Refer to
9 sections 5.8.2 and 5.11.2 for additional Invalid Command
10 (subcode "Invalid Format") information.
11 Speed:
12 The speed field value is used to select the "fixed
13 speed" at which a variable speed tape unit will operate
14 when the "Variable Speed Mode Suppression" unit flag
15 (described above) is set in the command packet. The
16 speed field is ignored if that flag is clear or the tape
17 unit is not capable of variable speed operation.
18 The value supplied in this field is the host's
19 prediction of the maximum data transfer rate it is
20 capable of sustaining during data transfers to or from
21 the tape unit. It is expressed as the maximum data
22 transfer rate, in kilo-bytes per second, that can be
23 achieved using a particular tape speed and format. (For
24 9-track tape units, the actual data transfer rate
25 approaches this value as the record length becomes
26 arbitrarily large.)
27 For 9-track tape units it is computed, without rounding,
28 as follows:
29 Speed = ( ips * bpi ) / 1000
30 where:
31 ips = nominal tape transport speed in Inches per
32 Second
33 bpi = nominal recording format frame density in
34 linear Bits Per Inch (for nine track, actually Bytes
35 Per Inch)
36 The controller will automatically select the tape unit
37 speed, from those available on the tape unit, which best
38 accommodates the host's data transfer rate prediction.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-60
SET UNIT CHARACTERISTICS Command 8 November 1987
1 The following rules govern speed selection:
2 1. The tape unit speed will be set equal to the speed
3 which is closest to providing a maximum data
4 transfer rate at the currently employed format,
5 which is less than or equal to the value supplied.
6 2. The lowest possible tape unit speed will be selected
7 if the maximum data transfer rate at the currently
8 employed format of all available tape unit speeds is
9 greater than the value supplied.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-61
SET UNIT CHARACTERISTICS Command 8 November 1987
1 5.11.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 | unit flags |multi-unit code|
11 +---------------+---------------+
12 | reserved |
13 +-------------------------------+
14 | |
15 +---- unit identifier ----+
16 | |
17 +-------------------------------+
18 | media type identifier |
19 +---------------+---------------+
20 | speed | format |
21 +---------------+---------------+
22 | maximum write byte count |
23 +---------------+---------------+
24 | reserved | noise record |
25 +---------------+---------------+
26 Status Codes:
27 Success
28 (subcode "Normal")
29 The tape unit is "Unit-Online".
30 (subcode "Duplicate Unit Number")
31 Implies that the tape unit is "Unit-Online" but
32 that its unit number is identical to that of
33 some other tape unit known to the controller.
34 The tape unit will become "Unit-Offline", due to
35 the duplicate Unit Number, as soon as it ceases
36 to be "Unit-Online".
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-62
SET UNIT CHARACTERISTICS Command 8 November 1987
1 (subcode "Read-only Volume Format")
2 The unit only implements read access for the
3 format of the volume mounted in the unit. For
4 example, a single-density volume is mounted in a
5 double-density drive that can read but not write
6 it. Note that the unit will be Data Safety
7 Write Protected whenever this subcode is
8 returned.
9 Command Aborted
10 The tape unit state is unchanged. The host must
11 assume that the returned unit characteristics are
12 invalid, since the unit may be "Unit-Offline".
13 Controller Error
14 Drive Error
15 Formatter Error
16 Invalid Command
17 (subcode "Invalid Format")
18 More than one Format was specified, or the
19 Format specified is not supported by the
20 specified unit, or the magnetic tape loaded on
21 the tape unit was not positioned at BOT.
22 Unit-Available
23 Unit-Offline
24 Flags:
25 Cached Data Lost
26 EOT Encountered
27 Error Log Generated
28 Exclusive Access
29 Position Lost
30 Serious Exception
31 Multi-Unit code:
32 Unit Flags:
33 Unit Identifier:
34 Media Type Identifier:
35 Format:
36 Speed:
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-63
SET UNIT CHARACTERISTICS Command 8 November 1987
1 Refer to section 5.7.2 for a description of these
2 fields.
3 Recommended Maximum WRITE Byte Count:
4 Noise Record:
5 Refer to section 5.8.2 for a description of these
6 fields.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-64
SET UNIT CHARACTERISTICS Command 8 November 1987
1 5.11.3 Description
2 The SET UNIT CHARACTERISTICS Command is used to set host-settable
3 unit characteristics and to obtain those unit characteristics
4 essential for proper class driver operation.
5 Successful execution of this command never alters the tape unit's
6 host-relative connection state ("Unit-Online", etc.).
7 Unsuccessful execution leaves the tape unit in either the
8 "Unit-Available" or "Unit-Offline" states.
9 Setting host settable characteristics for a tape unit that is
10 "Unit-Offline" or "Unit Available" has no effect.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-65
WRITE Command 8 November 1987
1 5.12 WRITE Command
2 Command Category:
3 Sequential (optionally Immediate Completion)
4 5.12.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 | byte count |
14 +-------------------------------+
15 | |
16 +--- buffer ---+
17 | |
18 +--- descriptor ---+
19 | |
20 +-------------------------------+
21 Allowable Modifiers:
22 Clear Cached Data Lost
23 Clear Serious Exception
24 Compare
25 Enable Re-write Error Recovery
26 This modifier may not be set in conjunction with the
27 "Suppress Error Recovery" command modifier and is
28 therefore treated as a reserved field. The TMSCP
29 controller must return an Invalid Command (subcode
30 "Invalid Modifiers") status code if both the
31 "Suppress Error Recovery" command modifier and the
32 "Enable Re-write Error Recovery" command modifier
33 are set in the same command (see section 3.5.5.2).
34 Immediate Completion
35 If this modifier is set, this command may be
36 executed as a "write-back" caching enabled "write"
37 type command. Refer to section 3.6.1 for complete
38 details.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-66
WRITE Command 8 November 1987
1 Suppress Error Correction
2 Suppress Error Recovery
3 This modifier may not be set in conjunction with the
4 "Enable Re-write Error Recovery" command modifier
5 and is therefore treated as a reserved field. The
6 TMSCP controller must return an Invalid Command
7 (subcode "Invalid Modifiers") status code if both
8 the "Suppress Error Recovery" command modifier and
9 the "Enable Re-write Error Recovery" command
10 modifier are set in the same command (see section
11 3.5.5.2).
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-67
WRITE Command 8 November 1987
1 5.12.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 | byte count (host transfer) |
11 +-------------------------------+
12 | |
13 +---- ----+
14 | undefined |
15 +---- ----+
16 | |
17 +-------------------------------+
18 | position (object count) |
19 +-------------------------------+
20 | byte count (tape record) |
21 +-------------------------------+
22 Status Codes:
23 Success
24 (subcode "Normal")
25 (subcode "EOT Encountered")
26 Command Aborted
27 Compare Error
28 Controller Error
29 Data Error
30 Drive Error
31 Formatter Error
32 Host Buffer Access Error
33 Invalid Command
34 (subcode "Invalid Byte Count")
35 Position Lost
36 Serious Exception
37 Unit-Available
38 Unit-Offline
39 Write-Protected
40 (subcode "Unit is Hardware Write Protected")
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-68
WRITE Command 8 November 1987
1 (subcode "Unit is Software Write Protected")
2 (subcode "Unit is Data Safety Write Protected")
3 Flags:
4 Cached Data Lost
5 EOT Encountered
6 Error Log Generated
7 Position Lost
8 Serious Exception
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-69
WRITE Command 8 November 1987
1 5.12.3 Description
2 Beginning at the current position, data is written from the host
3 buffer to the magnetic tape in record form.
4 Refer to sections 3.3, 3.4, and 3.5 for additional detail.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-70
WRITE TAPE MARK Command 8 November 1987
1 5.13 WRITE TAPE MARK Command
2 Command Category:
3 Sequential (optionally Immediate Completion)
4 5.13.1 Command Message Format
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 | reserved | unit number |
10 +---------------+-------+-------+
11 | modifiers | rsvd | opcode|
12 +---------------+-------+-------+
13 Allowable Modifiers:
14 Clear Cached Data Lost
15 Clear Serious Exception
16 Immediate Completion
17 If this modifier is set, this command may be
18 executed as a "write-back" caching enabled "write"
19 type command. Refer to section 3.6.1 for complete
20 details.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-71
WRITE TAPE MARK Command 8 November 1987
1 5.13.2 End Message Format
2 31 0
3 +-------------------------------+
4 | command reference number |
5 +---------------+---------------+
6 |sequence number| unit number |
7 +---------------+-------+-------+
8 | status | flags |endcode|
9 +---------------+-------+-------+
10 | |
11 +---- ----+
12 | |
13 +--- undefined ---+
14 | |
15 +---- ----+
16 | |
17 +-------------------------------+
18 | position (object count) |
19 +-------------------------------+
20 Status Codes:
21 Success
22 (subcode "Normal")
23 (subcode "EOT Encountered")
24 Command Aborted
25 Controller Error
26 Data Error
27 Drive Error
28 | Formatter Error
29 Position Lost
30 Serious Exception
31 Unit-Available
32 Unit-Offline
33 Write-Protected
34 (subcode "Unit is Hardware Write Protected")
35 (subcode "Unit is Software Write Protected")
36 (subcode "Unit is Data Safety Write Protected")
37 Flags:
38 Cached Data Lost
39 EOT Encountered
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-72
WRITE TAPE MARK Command 8 November 1987
1 Error Log Generated
2 Position Lost
3 Serious Exception
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP COMMAND DESCRIPTIONS Page 5-73
WRITE TAPE MARK Command 8 November 1987
1 5.13.3 Description
2 A tape mark is written to the specified unit beginning at the
3 current position.
4 Refer to sections 3.3 and 3.5 for additional detail.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP ERROR LOG MESSAGES Page 6-1
8 November 1987
1 CHAPTER 6
2 TMSCP ERROR LOG MESSAGES
3 6.1 TMSCP Error Log Message Format
4 For a detailed description of error log message handling, refer
5 to MSCP.
6 The "volume serial number" field of the MSCP generic error log
7 message format is used as the "Position (object count)" field in
8 TMSCP.
9 The following error log message formats are supported by TMSCP,
10 but described in MSCP:
11 o Controller Errors
12 o Memory Errors
13 The subsections which follow describe TMSCP specific error log
14 formats. Note that where an STI response is included in the
15 error log format the response code and checksum bytes of the
16 response are not returned by the controller. Refer to the STI
17 specification for a description of the individual STI responses.
18 Fields common to the TMSCP error log messages are described here:
19 o position (object count)
20 "position (object count)" at which the error
21 occurred. This value may not necessarily reflect
22 the actual object count since certain errors can
23 result in a position lost condition. In that case,
24 the last known good object count will be specified.
25 o fsvrsn
26 Formatter software, firmware, or microcode revision
27 number. Always zero if the development and
28 maintainability groups for a product determine that
29 there is no benefit from supporting machine readable
30 revision numbers.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP ERROR LOG MESSAGES Page 6-2
TMSCP Error Log Message Format 8 November 1987
1 o fhvrsn
2 Formatter hardware revision number. Always zero if
3 the development and maintainability groups for a
4 product determine that there is no benefit from
5 supporting machine readable revision numbers.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP ERROR LOG MESSAGES Page 6-3
TMSCP Error Log Message Format 8 November 1987
1 6.1.1 Tape Errors
2 The following format is used to report generic tape errors,
3 including errors that occur during a tape data transfer
4 operation.
5 31 0
6 +-------------------------------+
7 | command reference number |
8 +---------------+---------------+
9 |sequence number| unit number |
10 +---------------+-------+-------+
11 | event code | flags | format|
12 +---------------+-------+-------+
13 | |
14 +--- controller identifier ---+
15 | |
16 +---------------+-------+-------+
17 |multi-unit code| chvrsn| csvrsn|
18 +---------------+-------+-------+
19 | |
20 +--- unit identifier ---+
21 | |
22 +-------+-------+-------+-------+
23 | retry | level | uhvrsn| usvrsn|
24 +-------+-------+-------+-------+
25 | position (object count) |
26 +---------------+-------+-------+
27 | reserved | fhvrsn| fsvrsn|
28 +---------------+-------+-------+
29 | |
30 / device /
31 / dependent information /
32 / (optional) /
33 | |
34 +-------------------------------+
35 Level/Retry:
36 The error recovery level and retry count of the most
37 recent attempt at the transfer. Note that these values
38 always identify the last attempt -- i.e., the attempt
39 that succeeded or the last attempt before giving up.
40 Refer to MSCP for more detail on the Level and Retry
41 fields.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP ERROR LOG MESSAGES Page 6-4
TMSCP Error Log Message Format 8 November 1987
1 Device Dependent Information:
2 An optional, variable length field containing device
3 dependent information. The length of this field is
4 implied by the total length of the error log message,
5 passed to the class driver by the port driver. The
6 contents of the field must be described in the
7 functional specification of any device providing this
8 field.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP ERROR LOG MESSAGES Page 6-5
TMSCP Error Log Message Format 8 November 1987
1 6.1.2 STI Communication Or Command Failures
2 The following format is used by STI Tape Controllers to report
3 STI communication or command failures. Note that the controller
4 may attempt several retries. A separate error log message will
5 be generated for each attempt that fails.
6 31 0
7 +-------------------------------+
8 | command reference number |
9 +---------------+---------------+
10 |sequence number| unit number |
11 +---------------+-------+-------+
12 | event code | flags | format|
13 +---------------+-------+-------+
14 | |
15 +--- controller identifier ---+
16 | |
17 +---------------+-------+-------+
18 |multi-unit code| chvrsn| csvrsn|
19 +---------------+-------+-------+
20 | |
21 +--- unit identifier ---+
22 | |
23 +---------------+-------+-------+
24 | reserved | uhvrsn| usvrsn|
25 +---------------+-------+-------+
26 | position (object count) |
27 +---------------+-------+-------+
28 | reserved | fhvrsn| fsvrsn|
29 +---------------+-------+-------+
30 | |
31 +--- STI UNSUCCESSFUL ---+
32 | Response |
33 +--- 12 bytes ---+
34 | |
35 +-------------------------------+
36 STI UNSUCCESSFUL Response:
37 Twelve bytes of information received from the formatter
38 as an UNSUCCESSFUL response, or in response to an STI
39 GET SUMMARY STATUS command (the format is identical).
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP ERROR LOG MESSAGES Page 6-6
TMSCP Error Log Message Format 8 November 1987
1 6.1.3 STI Formatter Error Log
2 The following format is used by STI Tape Controllers to return
3 formatter requested error logs.
4 31 0
5 +-------------------------------+
6 | command reference number |
7 +---------------+---------------+
8 |sequence number| unit number |
9 +---------------+-------+-------+
10 | event code | flags | format|
11 +---------------+-------+-------+
12 | |
13 +--- controller identifier ---+
14 | |
15 +---------------+-------+-------+
16 |multi-unit code| chvrsn| csvrsn|
17 +---------------+-------+-------+
18 | |
19 +--- unit identifier ---+
20 | |
21 +---------------+-------+-------+
22 | reserved | uhvrsn| usvrsn|
23 +---------------+-------+-------+
24 | position (object count) |
25 +---------------+-------+-------+
26 | reserved | fhvrsn| fsvrsn|
27 +---------------+-------+-------+
28 | |
29 +--- STI GET FORMATTER ---+
30 / ERROR LOG Response /
31 +--- 20 bytes ---+
32 | |
33 +-------------------------------+
34 STI GET FORMATTER ERROR LOG Response:
35 Twenty bytes of information received from the formatter
36 in response to an STI GET FORMATTER ERROR LOG command.
37 Note that the format of this information is formatter
38 and error type dependent, and will therefore vary in
39 length and content. If the information received from
40 the formatter is less than twenty bytes, the controller
41 will zero fill the remaining unused bytes of the error
42 log message.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
TMSCP ERROR LOG MESSAGES Page 6-7
TMSCP Error Log Message Format 8 November 1987
1 6.1.4 STI Drive Error Log
2 The following format is used by STI Tape Controllers to return
3 drive requested error logs.
4 31 0
5 +-------------------------------+
6 | command reference number |
7 +---------------+---------------+
8 |sequence number| unit number |
9 +---------------+-------+-------+
10 | event code | flags | format|
11 +---------------+-------+-------+
12 | |
13 +--- controller identifier ---+
14 | |
15 +---------------+-------+-------+
16 |multi-unit code| chvrsn| csvrsn|
17 +---------------+-------+-------+
18 | |
19 +--- unit identifier ---+
20 | |
21 +---------------+-------+-------+
22 | reserved | uhvrsn| usvrsn|
23 +---------------+-------+-------+
24 | position (object count) |
25 +---------------+-------+-------+
26 | reserved | fhvrsn| fsvrsn|
27 +---------------+-------+-------+
28 | |
29 +--- STI GET EXTENDED ---+
30 / DRIVE STATUS Response /
31 +--- 62 bytes ---+
32 | |
33 +-------------------------------+
34 STI GET EXTENDED DRIVE STATUS Response:
35 Sixty two bytes of information received from the
36 formatter in response to an STI GET EXTENDED DRIVE
37 STATUS command. Note that the format of this
38 information is drive and error type dependent, and will
39 therefore vary in length and content. If the
40 information received from the drive is less than sixty
41 two bytes, the controller will zero fill the remaining
42 unused bytes of the error log message.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-1
8 November 1987
1 APPENDIX A
2 OPCODE, FLAG AND OFFSET DEFINITIONS
3 Table A-1: Control Message Opcodes
4 +--------------------+--------------------------+-----------------------------------------+
5 | Opcode Value | | |
6 | (See note 1) | Preferred Mnemonics | |
7 |------+------+------+--------+-----------------+ Control Message Type |
8 | Dec. | Oct. | Hex. | 16 bit | 32 bit | |
9 +------+------+------+--------+-----------------+-----------------------------------------+
10 | 0 | 00 | 00 | - | - | reserved - must not be assigned |
11 +------+------+------+--------+-----------------+-----------------------------------------+
12 | Standard Command Messages (See note 2): | |
13 | 1 | 01 | 01 | OP.ABO | MSCP$K_OP_ABORT | ABORT |
14 | 16 | 20 | 10 | OP.ACC | MSCP$K_OP_ACCES | ACCESS |
15 | 8 | 10 | 08 | OP.AVL | MSCP$K_OP_AVAIL | AVAILABLE |
16 | 32 | 40 | 20 | OP.CMP | MSCP$K_OP_COMP | COMPARE HOST DATA |
17 | 11 | 13 | 0B | OP.DAP | MSCP$K_OP_DTACP | DETERMINE ACCESS PATHS |
18 | 18 | 22 | 12 | OP.ERS | MSCP$K_OP_ERASE | ERASE |
19 | 2 | 02 | 02 | OP.GCS | MSCP$K_OP_GTCMD | GET COMMAND STATUS |
20 | 3 | 03 | 03 | OP.GUS | MSCP$K_OP_GTUNT | GET UNIT STATUS |
21 | 9 | 11 | 09 | OP.ONL | MSCP$K_OP_ONLIN | ONLINE |
22 | 33 | 41 | 21 | OP.RD | MSCP$K_OP_READ | READ |
23 | 4 | 04 | 04 | OP.SCC | MSCP$K_OP_STCON | SET CONTROLLER CHARACTERISTICS |
24 | 10 | 12 | 0A | OP.SUC | MSCP$K_OP_STUNT | SET UNIT CHARACTERISTICS |
25 | 34 | 42 | 22 | OP.WR | MSCP$K_OP_WRITE | WRITE |
26 +------+------+------+--------+-----------------+-----------------------------------------+
27 | Optional Command Messages: | | |
28 | 5 | 05 | 05 | OP.ANM | MSCP$K_OP_ACCNM | ACCESS NON-VOLATILE MEMORY |
29 +------+------+------+--------+-----------------+-----------------------------------------+
30 | Implementation Specific Command Messages (See note 4): |
31 | 40 | 50 | 28 | OP.SP1 | MSCP$K_OP_SPEC1 | # 1 |
32 | 41 | 51 | 29 | OP.SP2 | MSCP$K_OP_SPEC2 | # 2 |
33 | 42 | 52 | 2A | OP.SP3 | MSCP$K_OP_SPEC3 | # 3 |
34 | 43 | 53 | 2B | OP.SP4 | MSCP$K_OP_SPEC4 | # 4 |
35 | 44 | 54 | 2C | OP.SP5 | MSCP$K_OP_SPEC5 | # 5 |
36 | 45 | 55 | 2D | OP.SP6 | MSCP$K_OP_SPEC6 | # 6 |
37 | 46 | 56 | 2E | OP.SP7 | MSCP$K_OP_SPEC7 | # 7 |
38 | 47 | 57 | 2F | OP.SP8 | MSCP$K_OP_SPEC8 | # 8 |
39 +------+------+------+--------+-----------------+-----------------------------------------+
40 | Tape MSCP Specific Command Messages: | |
41 | 22 | 26 | 16 | OP.ERG | MSCP$K_OP_ERGAP | ERASE GAP |
42 | 19 | 23 | 13 | OP.FLU | MSCP$K_OP_FLUSH | FLUSH |
43 | 37 | 45 | 25 | OP.REP | MSCP$K_OP_REPOS | REPOSITION |
44 | 36 | 44 | 24 | OP.WTM | MSCP$K_OP_WRITM | WRITE TAPE MARK |
45 +------+------+------+--------+-----------------+-----------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-2
8 November 1987
1 Table A-1: Control Message Opcodes (cont.)
2 +--------------------+--------------------------+-----------------------------------------+
3 | Opcode Value | | |
4 | (See note 1) | Preferred Mnemonics | |
5 |------+------+------+--------+-----------------+ Control Message Type |
6 | Dec. | Oct. | Hex. | 16 bit | 32 bit | |
7 +------+------+------+--------+-----------------+-----------------------------------------+
8 | End Messages (See note 3): | |
9 | 128 | 200 | 80 | OP.END | MSCP$K_OP_END | END message flag |
10 +------+------+------+--------+-----------------+-----------------------------------------+
11 | Attention Messages:| | | |
12 | 64 | 100 | 40 | OP.AVA | MSCP$K_OP_AVATN | AVAILABLE |
13 | 65 | 101 | 41 | OP.DUP | MSCP$K_OP_DUPUN | DUPLICATE UNIT NUMBER |
14 | 66 | 102 | 42 | OP.ACP | MSCP$K_OP_APATH | ACCESS PATH |
15 +------+------+------+--------+-----------------+-----------------------------------------+
16 | Notes: 1. Message opcode bits 6 and 7 indicate the type of message (command, end, or |
17 | attention). |
18 | |
19 | 2. Standard command opcode bits 3 through 5 indicate the command category |
20 | (Immediate, Sequential, or Non-Sequential) and whether or not the command |
21 | includes a buffer descriptor. |
22 | |
23 | 3. End message endcodes are formed by adding the end message flag to the command |
24 | opcode. For example, a READ command's end message contains (using 16 bit |
25 | mnemonics) the value OP.RD+OP.END in its endcode field. As described in the |
26 | MSCP specification, an MSCP protocol violation produces an Invalid Command |
27 | end message which contains just the end message flag (OP.END) in its endcode |
28 | field. |
29 | |
30 | 4. The implementation specific command opcodes may be used by manufacturing test |
31 | equipment to verify controller operation. They must never be issued by normal |
32 | host software, or when a host is running anything other than stand-alone |
33 | diagnostics. The operation of these commands when issued under anything but |
34 | the expected manufacturing and/or diagnostic environment is UNDEFINED. |
35 +-----------------------------------------------------------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-3
8 November 1987
1 Table A-2: Command Modifiers
2 +------+--------------+--------------------------+----------------------------------------+
3 | Bit | Bit Mask | Preferred Mnemonics | |
4 |Number+-------+------+--------+-----------------+ Command Modifier |
5 | | Octal | Hex. | 16 bit | 32 bit | |
6 | | | | | (See note 1) | |
7 +------+-------+------+--------+-----------------+----------------------------------------+
8 | ACCESS, AVAILABLE, COMPARE HOST DATA, ERASE, ERASE GAP, FLUSH, ONLINE, READ, |
9 | REPOSITION, SET UNIT CHARACTERISTICS, WRITE and WRITE TAPE MARK Command Modifiers: |
10 | 13 | 20000 | 2000 | MD.CSE | MSCP$x_MD_CLSEX | Clear Serious Exception |
11 | 12 | 10000 | 1000 | MD.CDL | MSCP$x_MD_CDATL | Clear Cached Data Lost |
12 +------+-------+------+--------+-----------------+----------------------------------------+
13 | ACCESS, COMPARE HOST DATA, READ, and REPOSITION Command Modifiers: |
14 | 11 | 4000 | 800 | MD.SCH | MSCP$x_MD_SCCHH | Suppress Caching |
15 | 3 | 10 | 8 | MD.REV | MSCP$x_MD_REVRS | Reverse |
16 +------+-------+------+--------+-----------------+----------------------------------------+
17 | ACCESS, COMPARE HOST DATA, READ, REPOSITION, and WRITE Command Modifiers: |
18 | 9 | 1000 | 200 | MD.SEC | MSCP$x_MD_SECOR | Suppress Error Correction |
19 | 8 | 400 | 100 | MD.SER | MSCP$x_MD_SEREC | Suppress Error Recovery |
20 +------+-------+------+--------+-----------------+----------------------------------------+
21 | AVAILABLE Command Modifiers: | | |
22 | 4 | 20 | 10 | MD.UNL | MSCP$x_MD_UNLOD | Unload |
23 | 1 | 2 | 2 | MD.ALL | MSCP$x_MD_ALLCD | All Class Drivers |
24 +------+-------+------+--------+-----------------+----------------------------------------+
25 | AVAILABLE, ONLINE, and SET UNIT CHARACTERISTICS Command Modifiers: |
26 | 5 | 40 | 20 | MD.EXC | MSCP$x_MD_EXCAC | Exclusive Access |
27 +------+-------+------+--------+-----------------+----------------------------------------+
28 | ERASE, ERASE GAP, REPOSITION, WRITE and WRITE TAPE MARK Command Modifier: |
29 | 6 | 100 | 40 | MD.IMM | MSCP$x_MD_IMMED | Immediate Completion |
30 +------+-------+------+--------+-----------------+----------------------------------------+
31 | GET UNIT STATUS Command Modifier: | |
32 | 0 | 1 | 1 | MD.NXU | MSCP$x_MD_NXUNT | Next Unit |
33 +------+-------+------+--------+-----------------+----------------------------------------+
34 | ONLINE and SET UNIT CHARACTERISTICS Command Modifier: |
35 | 2 | 4 | 4 | MD.SWP | MSCP$x_MD_STWRP | Enable Set Write Protect |
36 +------+-------+------+--------+-----------------+----------------------------------------+
37 | READ and WRITE Command Modifier: | |
38 | 14 | 40000 | 4000 | MD.CMP | MSCP$x_MD_COMP | Compare |
39 +------+-------+------+--------+-----------------+----------------------------------------+
40 | REPOSITION Command Modifiers:| | |
41 | 7 | 200 | 80 | MD.DLE | MSCP$x_MD_DLEOT | Detect LEOT |
42 | 2 | 4 | 4 | MD.OBC | MSCP$x_MD_OBJCT | Object Count |
43 | 1 | 2 | 2 | MD.RWD | MSCP$x_MD_REWND | Rewind |
44 +------+-------+------+--------+-----------------+----------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-4
8 November 1987
1 Table A-2: Command Modifiers (cont.)
2 +------+--------------+--------------------------+----------------------------------------+
3 | Bit | Bit Mask | Preferred Mnemonics | |
4 |Number+-------+------+--------+-----------------+ Command Modifier |
5 | | Octal | Hex. | 16 bit | 32 bit | |
6 | | | | | (See note 1) | |
7 +------+-------+------+--------+-----------------+----------------------------------------+
8 | WRITE Command Modifier: | | |
9 | 4 | 20 | 10 | MD.ERW | MSCP$x_MD_ENRWR | Enable Re-Write Error Recovery |
10 +------+-------+------+--------+-----------------+----------------------------------------+
11 | Notes: 1. The "x" in the 32 bit mnemonic for a bit flag will be "V" if the symbol is |
12 | defined as a bit number (offset) or an "M" if defined as a mask. |
13 +-----------------------------------------------------------------------------------------+
14 Table A-3: End Message Flags
15 +------+--------------+--------------------------+----------------------------------------+
16 | Bit | Bit Mask | Preferred Mnemonics | |
17 |Number+-------+------+--------+-----------------+ End Message Flag |
18 | | Octal | Hex. | 16 bit | 32 bit | |
19 | | | | | (See note 1) | |
20 +------+-------+------+--------+-----------------+----------------------------------------+
21 | 5 | 40 | 20 | EF.LOG | MSCP$x_EF_ERLOG | Error Log Generated |
22 | 4 | 20 | 10 | EF.SEX | MSCP$x_EF_SEREX | Serious Exception |
23 | 3 | 10 | 8 | EF.EOT | MSCP$x_EF_EOT | End of Tape encountered |
24 | 2 | 4 | 4 | EF.PLS | MSCP$x_EF_PLS | Position Lost |
25 | 1 | 2 | 2 | EF.DLS | MSCP$x_EF_DLS | Cached Data Lost |
26 +------+-------+------+--------+-----------------+----------------------------------------+
27 | Notes: 1. The "x" in the 32 bit mnemonic for a bit flag will be "V" if the symbol is |
28 | defined as a bit number (offset) or an "M" if defined as a mask. |
29 +-----------------------------------------------------------------------------------------+
30 Table A-4: Controller Flags
31 +------+--------------+--------------------------+----------------------------------------+
32 | Bit | Bit Mask | Preferred Mnemonics | |
33 |Number+-------+------+--------------------------+ Controller Flag |
34 | | Octal | Hex. | 16 bit | 32 bit | (See note 2) |
35 | | | | | (See note 1) | |
36 +------+-------+------+--------+-----------------+----------------------------------------+
37 | 7 | 200 | 80 | CF.ATN | MSCP$x_CF_ATTN | Enable Attention Messages |
38 | 6 | 100 | 40 | CF.MSC | MSCP$x_CF_MISC | Enable Miscellaneous Error Log Messages|
39 | 5 | 40 | 20 | CF.OTH | MSCP$x_CF_OTHER | Enable Other Host's Error Log Messages |
40 | 4 | 20 | 10 | CF.THS | MSCP$x_CF_THIS | Enable This Host's Error Log Messages |
41 | 2 | 4 | 4 | CF.MLH | MSCP$x_CF_MLHT | Multi-Host Support |
42 +------+-------+------+--------+-----------------+----------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-5
8 November 1987
1 Table A-4: Controller Flags (cont.)
2 +------+--------------+--------------------------+----------------------------------------+
3 | Bit | Bit Mask | Preferred Mnemonics | |
4 |Number+-------+------+--------------------------+ Controller Flag |
5 | | Octal | Hex. | 16 bit | 32 bit | |
6 | | | | | (See note 1) | |
7 +------+-------+------+--------+-----------------+----------------------------------------+
8 | Notes: 1. The "x" in the 32 bit mnemonic for a bit flag will be "V" if the symbol is |
9 | defined as a bit number (offset) or an "M" if defined as a mask. |
10 +------+-------+------+--------+-----------------+----------------------------------------+
11 Table A-5: Unit Flags
12 +------+--------------+--------------------------+----------------------------------------+
13 | Bit | Bit Mask | Preferred Mnemonics | |
14 |Number+-------+------+--------+-----------------+ Unit Flag |
15 | | Octal | Hex. | 16 bit | 32 bit | |
16 | | | | | (See note 1) | |
17 +------+-------+------+--------+-----------------+----------------------------------------+
18 | 15 |100000 | 8000 | UF.CAC | MSCP$x_UF_CACH | Tape Write-back caching |
19 | 13 | 20000 | 2000 | UF.WPH | MSCP$x_UF_WRTPH | Hardware Write protect |
20 | 12 | 10000 | 1000 | UF.WPS | MSCP$x_UF_WRTPS | Software Write protect |
21 | 11 | 4000 | 800 | UF.SCH | MSCP$x_UF_SCCHH | Suppress Caching |
22 | 10 | 2000 | 400 | UF.EXA | MSCP$x_UF_EXACC | Exclusive Access |
23 | 8 | 400 | 100 | UF.WPD | MSCP$x_UF_WRTPD | Data Safety Write Protect |
24 | 6 | 100 | 40 | UF.WBN | MSCP$x_UF_WBKNV | Write-back |
25 | 5 | 40 | 20 | UF.VSS | MSCP$x_UF_VSMSU | Variable Speed Mode Suppression |
26 | 4 | 20 | 10 | UF.VSU | MSCP$x_UF_VARSP | Variable Speed Unit |
27 | 3 | 10 | 8 | UF.EWR | MSCP$x_UF_EWRER | Enhanced Write Error Recovery |
28 | 1 | 2 | 2 | UF.CMW | MSCP$x_UF_CMPWR | Compare Writes |
29 | 0 | 1 | 1 | UF.CMR | MSCP$x_UF_CMPRD | |
30 +------+-------+------+--------+-----------------+----------------------------------------+
31 | Notes: 1. The "x" in the 32 bit mnemonic for a bit flag will be "V" if the symbol is |
32 | defined as a bit number (offset) or an "M" if defined as a mask. |
33 +------+-------+------+--------+-----------------+----------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-6
8 November 1987
1 Table A-6: Command Message Offsets
2 +--------------------+--------------------------+-------+---------------------------------+
3 | Offset Value | Preferred Mnemonics | Field | |
4 +------+------+------+--------+-----------------+ Size | Field Description |
5 | Dec. | Oct. | Hex. | 16 bit | 32 bit |(bytes)| |
6 +------+------+------+--------+-----------------+-------+---------------------------------+
7 | Generic Command Message Offsets: | | |
8 | 0 | 0 | 0 | P.CRF | MSCP$L_CMD_REF | 4 | Command reference number |
9 | 4 | 4 | 4 | P.UNIT | MSCP$W_UNIT | 2 | Unit number |
10 | 6 | 6 | 6 | | | 2 | Reserved |
11 | 8 | 10 | 8 | P.OPCD | MSCP$B_OPCODE | 1 | Opcode |
12 | 9 | 11 | 9 | | | 1 | Reserved |
13 | 10 | 12 | A | P.MOD | MSCP$W_MODIFIER | 2 | Modifiers |
14 | 12 | 14 | C | P.BCNT | MSCP$L_BYTE_CNT | 4 | Byte count |
15 | 16 | 20 | 10 | P.BUFF | MSCP$B_BUFFER | 12 | Buffer descriptor |
16 +------+------+------+--------+-----------------+-------+---------------------------------+
17 | ABORT and GET COMMAND STATUS Command Message Offsets: | |
18 | 12 | 14 | C | P.OTRF | MSCP$L_OUT_REF | 4 | Outstanding reference number |
19 +------+------+------+--------+-----------------+-------+---------------------------------+
20 | ACCESS NON-VOLATILE MEMORY Command Message Offsets: | |
21 | 4 | 4 | 4 | | | 2 | Reserved |
22 | 12 | 14 | C | | | 4 | Reserved |
23 | 16 | 20 | 10 | P.ANOF | MSCP$L_ANM_OFFS | 4 | Offset |
24 | 20 | 24 | 14 | P.ANOP | MSCP$W_ANM_OPER | 2 | Operation (See Table A-11) |
25 | 22 | 26 | 16 | P.ANDL | MSCP$W_ANM_DLGH | 2 | Data length |
26 | 24 | 30 | 18 | P.ANMD | MSCP$T_ANM_MEMD | * | Memory data |
27 +------+------+------+--------+-----------------+-------+---------------------------------+
28 | ONLINE and SET UNIT CHARACTERISTICS Command Message Offsets: |
29 | 12 | 14 | C | | | 2 | Reserved |
30 | 14 | 16 | E | P.UNFL | MSCP$W_UNT_FLGS | 2 | Unit flags |
31 | 16 | 20 | 10 | | | 12 | Reserved |
32 | 28 | 34 | 1C | P.DVPM | MSCP$L_DEV_PARM | 4 | Device dependent parameters |
33 | 32 | 40 | 20 | P.FORM | MSCP$W_FORMAT | 2 | Format |
34 | 34 | 42 | 22 | P.SPED | MSCP$L_SPEED | 2 | Speed |
35 +------+------+------+--------+-----------------+-------+---------------------------------+
36 | REPOSITION Command Message Offsets: | | |
37 | 12 | 14 | C | P.RECC | MSCP$L_REC_CNT | 4 | Record/Object Count |
38 | 16 | 20 | 10 | P.TMGC | MSCP$L_TMGP_CNT | 4 | Tape Mark Count or N/A |
39 +------+------+------+--------+-----------------+-------+---------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-7
8 November 1987
1 Table A-6: Command Message Offsets (cont.)
2 +--------------------+--------------------------+-------+---------------------------------+
3 | Offset Value | Preferred Mnemonics | Field | |
4 +------+------+------+--------+-----------------+ Size | Field Description |
5 | Dec. | Oct. | Hex. | 16 bit | 32 bit |(bytes)| |
6 +------+------+------+--------+-----------------+-------+---------------------------------+
7 | SET CONTROLLER CHARACTERISTICS Command Message Offsets: |
8 | 4 | 4 | 4 | | | 2 | Reserved |
9 | 12 | 14 | C | P.VRSN | MSCP$W_VERSION | 2 | MSCP version |
10 | 14 | 16 | E | P.CNTF | MSCP$W_CNT_FLGS | 2 | Controller flags |
11 | 16 | 20 | 10 | P.HTMO | MSCP$W_HST_TMO | 2 | Host timeout |
12 | 18 | 22 | 12 | | | 2 | Reserved |
13 | 20 | 24 | 14 | P.TIME | MSCP$Q_TIME | 8 | Quad-word time and date |
14 | 28 | 34 | 1C | P.CNPM | MSCP$L_CNT_PARM | 4 | Controller dependent parameters |
15 +------+------+------+--------+-----------------+-------+---------------------------------+
16 | Notes: 1. An asterisk (*) in the field size indicates that the size varies. |
17 +-----------------------------------------------------------------------------------------+
18 Table A-7: End and Attention Message Offsets
19 +--------------------+--------------------------+-------+---------------------------------+
20 | Offset Value | Preferred Mnemonics | Field | |
21 +------+------+------+--------+-----------------+ Size | Field Description |
22 | Dec. | Oct. | Hex. | 16 bit | 32 bit |(bytes)| |
23 +------+------+------+--------+-----------------+-------+---------------------------------+
24 | Generic End Message Offsets:| | | |
25 | 0 | 0 | 0 | P.CRF | MSCP$L_CMD_REF | 4 | Command reference number |
26 | 4 | 4 | 4 | P.UNIT | MSCP$W_UNIT | 2 | Unit number |
27 | 6 | 6 | 6 | P.SEQ | MSCP$W_SEQ_NUM | 2 | Sequence Number (LAST error log)|
28 | 8 | 10 | 8 | P.OPCD | MSCP$B_OPCODE | 1 | Opcode (also called endcode) |
29 | 9 | 11 | 9 | P.FLGS | MSCP$B_FLAGS | 1 | End message flags |
30 | 10 | 12 | A | P.STS | MSCP$W_STATUS | 2 | Status |
31 | 12 | 14 | C | P.BCNT | MSCP$L_BYTE_CNT | 4 | Byte count (host transfer) |
32 +------+------+------+--------+-----------------+-------+---------------------------------+
33 | ABORT and GET COMMAND STATUS End Message Offsets: | |
34 | 12 | 14 | C | P.OTRF | MSCP$L_OUT_REF | 4 | Outstanding reference number |
35 +------+------+------+--------+-----------------+-------+---------------------------------+
36 | ACCESS NON-VOLATILE MEMORY End Message Offsets: | |
37 | 4 | 4 | 4 | | | 2 | Reserved |
38 | 12 | 14 | C | P.ANSZ | MSCP$L_ANM_SIZE | 4 | Memory Size |
39 | 16 | 20 | 10 | P.ANOF | MSCP$L_ANM_OFFS | 4 | Offset |
40 | 20 | 24 | 14 | P.ANOP | MSCP$W_ANM_OPER | 2 | Operation (See Table A-11) |
41 | 22 | 26 | 16 | P.ANDL | MSCP$W_ANM_DLGH | 2 | Data length |
42 | 24 | 30 | 18 | P.ANMD | MSCP$T_ANM_MEMD | * | Memory data |
43 +------+------+------+--------+-----------------+-------+---------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-8
8 November 1987
1 Table A-7: End and Attention Message Offsets (cont.)
2 +--------------------+--------------------------+-------+---------------------------------+
3 | Offset Value | Preferred Mnemonics | Field | |
4 +------+------+------+--------+-----------------+ Size | Field Description |
5 | Dec. | Oct. | Hex. | 16 bit | 32 bit |(bytes)| |
6 +------+------+------+--------+-----------------+-------+---------------------------------+
7 | GET COMMAND STATUS End Message Offsets: | | |
8 | 16 | 20 | 10 | P.CMST | MSCP$L_CMD_STS | 4 | Command status |
9 +------+------+------+--------+-----------------+-------+---------------------------------+
10 | GET UNIT STATUS End Message Offsets: | | |
11 | 12 | 14 | C | P.MLUN | MSCP$W_MULT_UNT | 2 | Multiunit code |
12 | 14 | 16 | E | P.UNFL | MSCP$W_UNT_FLGS | 2 | Unit flags |
13 | 16 | 20 | 10 | | | 4 | Reserved |
14 | 20 | 24 | 14 | P.UNTI | MSCP$Q_UNIT_ID | 8 | Unit identifier |
15 | 28 | 34 | 1C | P.MEDI | MSCP$L_MEDIA_ID | 4 | Media type identifier |
16 | 32 | 40 | 20 | P.FORM | MSCP$W_FORMAT | 2 | Tape Format |
17 | 34 | 42 | 22 | P.SPED | MSCP$W_SPEED | 2 | Speed |
18 | 36 | 44 | 24 | P.FMEN | MSCP$W_FORMENU | 2 | Format Menu |
19 | 38 | 46 | 26 | P.FCAP | MSCP$B_FREECAP | 1 | Free capacity |
20 | 39 | 47 | 27 | | | 1 | Reserved |
21 | 40 | 50 | 28 | P.FSVR | MSCP$B_FMTR_SVR | 1 | Formatter software version |
22 | 41 | 51 | 29 | P.FHVR | MSCP$B_FMTR_HVR | 1 | Formatter hardware version |
23 | 42 | 52 | 2A | P.USVR | MSCP$B_UNIT_SVR | 1 | Unit software version |
24 | 43 | 53 | 2B | P.UHVR | MSCP$B_UNIT_HVR | 1 | Unit hardware version |
25 +------+------+------+--------+-----------------+-------+---------------------------------+
26 | ONLINE and SET UNIT CHARACTERISTICS End Message and AVAILABLE Attention Message offsets:|
27 | 12 | 14 | C | P.MLUN | MSCP$W_MULT_UNT | 2 | Multiunit code |
28 | 14 | 16 | E | P.UNFL | MSCP$W_UNT_FLGS | 2 | Unit flags |
29 | 16 | 20 | 10 | | | 4 | Reserved |
30 | 20 | 24 | 14 | P.UNTI | MSCP$Q_UNIT_ID | 8 | Unit identifier |
31 | 28 | 34 | 1C | P.MEDI | MSCP$L_MEDIA_ID | 4 | Media type identifier |
32 | 32 | 40 | 20 | P.FORM | MSCP$W_FORMAT | 2 | Tape Format |
33 | 34 | 42 | 22 | P.SPED | MSCP$W_SPEED | 2 | Speed |
34 | 36 | 44 | 24 | P.MXWR | MSCP$L_MAXWRREC | 4 | Maximum WRITE record size |
35 | 40 | 50 | 28 | P.NREC | MSCP$W_NOISEREC | 2 | Noise Record |
36 | 42 | 52 | 2A | | | 2 | Reserved |
37 +------+------+------+--------+-----------------+-------+---------------------------------+
38 | SET CONTROLLER CHARACTERISTICS End Message Offsets: | |
39 | 4 | 4 | 4 | | | 2 | Reserved |
40 | 12 | 14 | C | P.VRSN | MSCP$W_VERSION | 2 | MSCP version |
41 | 14 | 16 | E | P.CNTF | MSCP$W_CNT_FLGS | 2 | Controller flags |
42 | 16 | 20 | 10 | P.CTMO | MSCP$W_CNT_TMO | 2 | Controller timeout |
43 | 18 | 22 | 12 | P.CSVR | MSCP$B_CNT_SVR | 1 | Controller software version |
44 | 19 | 23 | 13 | P.CHVR | MSCP$B_CNT_HVR | 1 | Controller hardware version |
45 | 20 | 24 | 14 | P.CNTI | MSCP$Q_CNT_ID | 8 | Controller ID |
46 | 28 | 34 | 1C | P.CMBC | MSCP$L_MAXBCNT | 4 | Controller maximum byte count |
47 | | | | | | | (optional) |
48 +------+------+------+--------+-----------------+-------+---------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-9
8 November 1987
1 Table A-7: End and Attention Message Offsets (cont.)
2 +--------------------+--------------------------+-------+---------------------------------+
3 | Offset Value | Preferred Mnemonics | Field | |
4 +------+------+------+--------+-----------------+ Size | Field Description |
5 | Dec. | Oct. | Hex. | 16 bit | 32 bit |(bytes)| |
6 +------+------+------+--------+-----------------+-------+---------------------------------+
7 | ACCESS, COMPARE HOST DATA, FLUSH, READ, REPOSITION, WRITE, and WRITE TAPE MARK end |
8 | message offsets: | | | | |
9 | 28 | 34 | 1C | P.POS | MSCP$L_POSITION | 4 | Position (Object Count) |
10 +------+------+------+--------+-----------------+-------+---------------------------------+
11 | ACCESS, COMPARE HOST DATA, READ and WRITE end message offsets: |
12 | 32 | 40 | 20 | P.TRBC | MSCP$L_TAPEREC | 4 | Tape Record Byte Count |
13 +------+------+------+--------+-----------------+-------+---------------------------------+
14 | REPOSITION end message offsets: | | |
15 | 12 | 14 | C | P.RCSK | MSCP$L_RCSKIPED | 4 | Records Skipped / Undefined |
16 | 16 | 20 | 10 | P.TMSK | MSCP$L_TMSKIPED | 4 | Tape Marks Skipped / Undefined |
17 +------+------+------+--------+-----------------+-------+---------------------------------+
18 | Notes: 1. An asterisk (*) in the field size indicates that the size varies. |
19 +-----------------------------------------------------------------------------------------+
20 Table A-8: Error Log Message Offsets
21 +--------------------+--------------------------+-------+---------------------------------+
22 | Offset Value | Preferred Mnemonics | Field | |
23 +------+------+------+--------+-----------------+ Size | Field Description |
24 | Dec. | Oct. | Hex. | 16 bit | 32 bit |(bytes)| |
25 +------+------+------+--------+-----------------+-------+---------------------------------+
26 | Generic Error Log Message Offsets: | | |
27 | 0 | 0 | 0 | L.CRF | MSLG$L_CMD_REF | 4 | Command reference number |
28 | 4 | 4 | 4 | L.UNIT | MSLG$W_UNIT | 2 | Unit number |
29 | 6 | 6 | 6 | L.SEQ | MSLG$W_SEQ_NUM | 2 | Sequence number |
30 | 8 | 10 | 8 | L.FMT | MSLG$B_FORMAT | 1 | Format |
31 | 9 | 11 | 9 | L.FLGS | MSLG$B_FLAGS | 1 | Error log message flags |
32 | 10 | 12 | A | L.EVNT | MSLG$W_EVENT | 2 | Event code |
33 | 12 | 14 | C | L.CNTI | MSLG$Q_CNT_ID | 8 | Controller ID |
34 | 20 | 24 | 14 | L.CSVR | MSLG$B_CNT_SVR | 1 | Controller software version |
35 | 21 | 25 | 15 | L.CHVR | MSLG$B_CNT_HVR | 1 | Controller hardware version |
36 | 22 | 26 | 16 | L.MLUN | MSLG$W_MULT_UNT | 2 | Multiunit code |
37 | 24 | 30 | 18 | L.UNTI | MSLG$Q_UNIT_ID | 8 | Unit ID |
38 | 32 | 40 | 20 | L.USVR | MSLG$B_UNIT_SVR | 1 | Unit software version |
39 | 33 | 41 | 21 | L.UHVR | MSLG$B_UNIT_HVR | 1 | Unit hardware version |
40 | 34 | 42 | 22 | | | 2 | Reserved |
41 | 36 | 44 | 24 | L.GPCT | MSLG$L_GAP_CNT | 4 | Position (object count) |
42 | 40 | 50 | 28 | L.FSVR | MSLG$B_FMTR_SVR | 1 | Formatter software version |
43 | 41 | 51 | 29 | L.FHVR | MSLG$B_FMTR_HVR | 1 | Formatter hardware version |
44 +------+------+------+--------+-----------------+-------+---------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-10
8 November 1987
1 Table A-8: Error Log Message Offsets (cont.)
2 +--------------------+--------------------------+-------+---------------------------------+
3 | Offset Value | Preferred Mnemonics | Field | |
4 +------+------+------+--------+-----------------+ Size | Field Description |
5 | Dec. | Oct. | Hex. | 16 bit | 32 bit |(bytes)| |
6 +------+------+------+--------+-----------------+-------+---------------------------------+
7 | Controller Error with Controller Dependent Information Offsets: |
8 | 22 | 26 | 16 | | | * | Controller dependent information|
9 | | | | | | | (optional) |
10 +------+------+------+--------+-----------------+-------+---------------------------------+
11 | Memory Errors with Host Bus Address Error Log Message Offsets: |
12 | 22 | 26 | 16 | | | 2 | Reserved |
13 | 24 | 30 | 18 | L.BADR | MSLG$L_BUS_ADDR | 4 | Host bus memory address |
14 | 28 | 34 | 1C | | | * | Controller dependent information|
15 | | | | | | | (optional) |
16 +------+------+------+--------+-----------------+-------+---------------------------------+
17 | Memory Errors with Controller Memory Address Error Log Message Offsets: |
18 | 22 | 26 | 16 | | | 2 | Reserved |
19 | 24 | 30 | 18 | L.BADR | MSLG$L_BUS_ADDR | 4 | Host bus memory address |
20 | 28 | 34 | 1C | | | * | Controller dependent information|
21 | | | | | | | (optional) |
22 +------+------+------+--------+-----------------+-------+---------------------------------+
23 | Tape Errors Error Log Message Offsets: | | |
24 | 34 | 42 | 22 | L.LVL | MSLG$B_LEVEL | 1 | Level |
25 | 35 | 43 | 23 | L.RTRY | MSLG$B_RETRY | 1 | Retry |
26 | 42 | 52 | 2A | | | 2 | Reserved |
27 | 44 | 54 | 2C | | | * | Device Dependent Information |
28 +------+------+------+--------+-----------------+-------+---------------------------------+
29 | STI Communication Error Error Log Message Offsets: | |
30 | 42 | 52 | 2A | | | 2 | Reserved |
31 | 44 | 54 | 2C | L.STI | MSLG$Z_STI | 12 | STI UNSUCCESSFUL Response |
32 +------+------+------+--------+-----------------+-------+---------------------------------+
33 | STI Formatter Error Error Log Message Offsets:| | |
34 | 42 | 52 | 2A | | | 2 | Reserved |
35 | 44 | 54 | 2C | L.STI | MSLG$Z_STI | 20 | STI GET EXTENDED FORMATTER |
36 | | | | | | | STATUS Response |
37 +------+------+------+--------+-----------------+-------+---------------------------------+
38 | STI Drive Error Error Log Message Offsets: | | |
39 | 42 | 52 | 2A | | | 2 | Reserved |
40 | 44 | 54 | 2C | L.STI | MSLG$Z_STI | 62 | STI GET EXTENDED DRIVE STATUS |
41 | | | | | | | Response |
42 +------+------+------+--------+-----------------+-------+---------------------------------+
43 | Note: An asterisk (*) in the field size indicates that the size varies. |
44 +-----------------------------------------------------------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
OPCODE, FLAG AND OFFSET DEFINITIONS Page A-11
8 November 1987
1 Table A-9: Error Log Message Format Codes
2 +--------------------+--------------------------+-----------------------------------------+
3 | Format Code | Preferred Mnemonics | |
4 +------+------+------+--------+-----------------+ Format Description |
5 | Dec. | Oct. | Hex. | 16 bit | 32 bit | |
6 +------+------+------+--------+-----------------+-----------------------------------------+
7 | 0 | 0 | 0 | FM.CNT | MSLG$K_CNT_ERR | Controller Errors |
8 | 1 | 1 | 1 | FM.BAD | MSLG$K_BUS_ADDR | Memory Errors with (host/controller) |
9 | | | | | | Memory Address |
10 | 5 | 5 | 5 | FM.TPE | MSLG$K_TAPE_ERR | Tape Errors |
11 | 6 | 6 | 6 | FM.STI | MSLG$K_STI_ERR | STI Communication or Command Failure |
12 | 7 | 7 | 7 | FM.DEL | MSLG$K_STI_DEL | STI Drive Error Log |
13 | 8 | 10 | 8 | FM.FEL | MSLG$K_STI_FEL | STI Formatter Error Log |
14 +------+------+------+--------+-----------------+-----------------------------------------+
15 Table A-10: Error Log Message Flags
16 +------+--------------+--------------------------+----------------------------------------+
17 | Bit | Bit Mask | Preferred Mnemonics | |
18 |Number+-------+------+--------+-----------------+ Format Description |
19 | | Octal | Hex. | 16 bit |32 bit (See note)| |
20 +------+-------+------+--------+-----------------+----------------------------------------+
21 | 7 | 200 | 80 | LF.SUC | MSLG$x_LF_SUCC | Operation Successful |
22 | 6 | 100 | 40 | LF.CON | MSLG$x_LF_CONT | Operation Continuing |
23 | 0 | 1 | 1 | LF.SNR | MSLG$x_LF_SQNRS | Sequence Number Reset |
24 +------+-------+------+--------+-----------------+----------------------------------------+
25 | Notes: 1. The "x" in the 32 bit mnemonic for a bit flag will be "V" if the symbol is |
26 | defined as a bit number (offset) or an "M" if defined as a mask. |
27 +-----------------------------------------------------------------------------------------+
28 Table A-11: Access Nonvolatile Memory Command Operation Codes
29 +--------------------+--------------------------+-----------------------------------------+
30 | Opcode Value | Preferred Mnemonics | |
31 +------+------+------+--------+-----------------+ Operation |
32 | Dec. | Oct. | Hex. | 16 bit | 32 bit | |
33 +------+------+------+--------+-----------------+-----------------------------------------+
34 | 0 | 0 | 0 | ANM.RD | MSCP$K_ANM_READ | Read |
35 | 1 | 1 | 1 | ANM.EX | MSCP$K_ANM_EXCG | Exchange |
36 | 2 | 2 | 2 | ANM.TS | MSCP$K_ANM_TSST | Test and Set |
37 +------+------+------+--------+-----------------+-----------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
STATUS AND EVENT CODE DEFINITIONS Page B-1
8 November 1987
1 APPENDIX B
2 STATUS AND EVENT CODE DEFINITIONS
3 NOTES
4 1. The combination of a status or event code with a subcode should be
5 expressed (assuming 16 bit symbols) as:
6 (subcode * ST.SUB) + code
7 2. The subcode values shown in Table B-2 are only returned as status codes
8 in end messages. They are never returned as event codes in error log
9 messages. In addition, the references to other tables within Table B-2
10 indicates that those tables contain subcodes which are only returned as
11 status codes in end messages.
12 3. The subcode values shown in Tables B-3 through B-7 may be returned (as
13 indicated in the "EV" and "ST" columns) as status codes, event codes or
14 both. In those tables, an asterisk in the "EV" column indicates that
15 the code and subcode may be returned as an event code. An asterisk in
16 the "ST" column indicates that the code and subcode may be returned as
17 a status code.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
STATUS AND EVENT CODE DEFINITIONS Page B-2
8 November 1987
1 Table B-1: Status and Event Codes
2 +--------------------+--------------------------+-----------------------------------------+
3 | Value | Preferred Mnemonics | |
4 +------+------+------+--------+-----------------+ Status or Event Code |
5 | Dec. | Oct. | Hex. | 16 bit | 32 bit | |
6 +------+------+------+--------+-----------------+-----------------------------------------+
7 | 31 | 37 | 1F | ST.MSK | MSCP$M_ST_MASK | Status / event code mask |
8 | 32 | 40 | 20 | ST.SUB | MSCP$M_ST_SUBCD | Subcode multiplier |
9 | | | | | | |
10 | 0 | 0 | 0 | ST.SUC | MSCP$K_ST_SUCC | Success |
11 | 1 | 1 | 1 | ST.CMD | MSCP$K_ST_ICMD | Invalid command |
12 | 2 | 2 | 2 | ST.ABO | MSCP$K_ST_ABRTD | Command Aborted |
13 | 3 | 3 | 3 | ST.OFL | MSCP$K_ST_OFFLN | Unit-Offline |
14 | 4 | 4 | 4 | ST.AVL | MSCP$K_ST_AVLBL | Unit-Available |
15 | 5 | 5 | 5 | ST.MFE | MSCP$K_ST_MFMTE | Media Format Error |
16 | 6 | 6 | 6 | ST.WPR | MSCP$K_ST_WRTPR | Write Protected |
17 | 7 | 7 | 7 | ST.CMP | MSCP$K_ST_COMP | Compare Error |
18 | 8 | 10 | 8 | ST.DAT | MSCP$K_ST_DATA | Data Error |
19 | 9 | 11 | 9 | ST.HST | MSCP$K_ST_HSTBF | Host Buffer Access Error |
20 | 10 | 12 | A | ST.CNT | MSCP$K_ST_CNTLR | Controller Error |
21 | 11 | 13 | B | ST.DRV | MSCP$K_ST_DRIVE | Drive Error |
22 | 12 | 14 | C | ST.FMT | MSCP$K_ST_FMTER | Formatter Error |
23 | 13 | 15 | D | ST.BOT | MSCP$K_ST_BOT | BOT Encountered |
24 | 14 | 16 | E | ST.TM | MSCP$K_ST_TAPEM | Tape Mark Encountered |
25 | 15 | 17 | F | - | - | unassigned |
26 | 16 | 20 | 10 | ST.RDT | MSCP$K_ST_RDTRN | Record Data Truncated |
27 | 17 | 21 | 11 | ST.POL | MSCP$K_ST_PLOST | Position Lost |
28 | 18 | 22 | 12 | ST.SEX | MSCP$K_ST_SEX | Serious Exception |
29 | 19 | 23 | 13 | ST.LED | MSCP$K_ST_LED | LEOT Detection |
30 | 20-30| 24-36| 14-1E| - | - | unassigned |
31 | 31 | 37 | 1F | ST.DIA | MSCP$K_ST_DIAG | Message from an internal diagnostic |
32 +------+------+------+--------+-----------------+-----------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
STATUS AND EVENT CODE DEFINITIONS Page B-3
8 November 1987
1 Table B-2: Status Only Subcode Values
2 +------+---------------------+---------------------------------------------------------+
3 | Sub- | Code + Subcode | |
4 | code +------+-------+------+ Status Subcode |
5 | | Dec. | Oct. | Hex. | |
6 +------+------+-------+------+---------------------------------------------------------+
7 | "Success" Subcode values: | |
8 | 0 | 0 | 0 | 0 | Normal |
9 | 1 | 32 | 40 | 20 | Unload Ignored |
10 | 2 | 64 | 100 | 40 | Still Connected |
11 | 4 | 128 | 200 | 80 | Duplicate Unit Number |
12 | 8 | 256 | 400 | 100 | Already Online |
13 | 16 | 512 | 1000 | 200 | Still Online |
14 | 32 | 1024 | 2000 | 400 | EOT Encountered |
15 | 128 | 4096 | 10000 | 1000 | Read Only Volume Format |
16 +------+------+-------+------+---------------------------------------------------------+
17 | "Invalid Command" Subcode values: |
18 | 0 | 1 | 1 | 1 | Invalid Message Length |
19 | many | | | | Other "Invalid Command" subcodes values should be |
20 | | | | | referenced as follows (note that this is combined |
21 | | | | | with the status code): |
22 | | | | | |
23 | | | | | offset*256.+code |
24 | | | | | |
25 | | | | | where "offset" is the command message offset symbol for |
26 | | | | | the field in error and "code" is the symbol for the |
27 | | | | | "Invalid Command" status code. |
28 +------+------+-------+------+---------------------------------------------------------+
29 | "Command Aborted" Subcode values: |
30 | 0 | 2 | 2 | 2 | Subcodes are not used. |
31 +------+------+-------+------+---------------------------------------------------------+
32 | "Unit-Offline" Subcode values: |
33 | 0 | 3 | 3 | 3 | Unit unknown or online to another controller. |
34 | 1 | 35 | 43 | 23 | No media mounted or drive disabled via switch setting |
35 | 2 | 67 | 103 | 43 | Unit is inoperative |
36 | 4 | 131 | 203 | 83 | Duplicate unit number |
37 | 8 | 259 | 403 | 103 | Unit disabled by field service or diagnostic. |
38 | 16 | 515 | 1003 | 203 | Exclusive Use |
39 +------+------+-------+------+---------------------------------------------------------+
40 | "Unit-Available" Subcode values: |
41 | 0 | 4 | 4 | 4 | Available |
42 | 32 | 1028 | 2004 | 404 | Already In use |
43 +------+------+-------+------+---------------------------------------------------------+
44 | "Media Format Error" Subcode values: |
45 | 5 | 165 | 245 | A5 | Block mode device not formatted for tape operations. |
46 +------+------+-------+------+---------------------------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
STATUS AND EVENT CODE DEFINITIONS Page B-4
8 November 1987
1 Table B-2: Status Only Subcode Values (cont.)
2 +------+---------------------+---------------------------------------------------------+
3 | Sub- | Code + Subcode | |
4 | code +------+-------+------+ Status Subcode |
5 | | Dec. | Oct. | Hex. | |
6 +------+------+-------+------+---------------------------------------------------------+
7 | "Write Protected" Subcode values: |
8 | 8 | 262 | 406 | 106 | Unit is Data Safety Write Protected |
9 | 128 | 4102 | 10006 | 1006 | Unit is Software Write Protected |
10 | 256 | 8198 | 20006 | 2006 | Unit is Hardware Write Protected |
11 +------+------+-------+------+---------------------------------------------------------+
12 | "Compare Error" Subcode values - see Table B-3 |
13 +------+------+-------+------+---------------------------------------------------------+
14 | "Data Error" Subcode values - see Table B-4 |
15 +------+------+-------+------+---------------------------------------------------------+
16 | "Host Buffer Access Error" Subcode values - see Table B-5 |
17 +------+------+-------+------+---------------------------------------------------------+
18 | "Controller Error" Subcode values - see Table B-6 |
19 +------+------+-------+------+---------------------------------------------------------+
20 | "Drive Error" Subcode values - see Table B-7 |
21 +------+------+-------+------+---------------------------------------------------------+
22 | "Formatter Error" Subcode values - see Table B-8 |
23 +------+------+-------+------+---------------------------------------------------------+
24 | "BOT Encountered" Subcode values: |
25 | 0 | 13 | 15 | D | Subcodes are not used |
26 +------+------+-------+------+---------------------------------------------------------+
27 | "Tape Mark Encountered" Subcode values: |
28 | 0 | 14 | 16 | E | Subcodes are not used |
29 +------+------+-------+------+---------------------------------------------------------+
30 | "Record Data Truncated" Subcode values: |
31 | 0 | 16 | 20 | 10 | Subcodes are not used. |
32 +------+------+-------+------+---------------------------------------------------------+
33 | "Position Lost" Subcode values: |
34 | 0 | 17 | 21 | 11 | Subcodes are not used. |
35 +------+------+-------+------+---------------------------------------------------------+
36 | "Serious Exception" Subcode values: |
37 | 0 | 18 | 22 | 12 | Subcodes are not used. |
38 +------+------+-------+------+---------------------------------------------------------+
39 | "LEOT Encountered" Subcode values: |
40 | 0 | 19 | 23 | 13 | Subcodes are not used. |
41 +------+------+-------+------+---------------------------------------------------------+
42 | "Message from an internal diagnostic" Subcode values - see Table B-9 |
43 +------+------+-------+------+---------------------------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
STATUS AND EVENT CODE DEFINITIONS Page B-5
8 November 1987
1 Table B-3: "Compare Error" Status or Event Subcode Values
2 +------+---------------------+-+-+-----------------------------------------------------+
3 | Sub- | Code + Subcode |E|S| |
4 | code +------+-------+------+V|T| Status or Event Subcode |
5 | | Dec. | Oct. | Hex. | | | |
6 +------+------+-------+------+-+-+-----------------------------------------------------+
7 | 0 | 7 | 7 | 7 |*|*| Subcodes are not used. Note: the compare error |
8 | | | | | | | code is only used as an event code when the error |
9 | | | | | | | occurs during a read-compare or write-compare |
10 | | | | | | | operation. |
11 +------+------+-------+------+-+-+-----------------------------------------------------+
12 Table B-4: "Data Error" Status or Event Subcode Values
13 +------+---------------------+-+-+-----------------------------------------------------+
14 | Sub- | Code + Subcode |E|S| |
15 | code +------+-------+------+V|T| Status or Event Subcode |
16 | | Dec. | Oct. | Hex. | | | |
17 +------+------+-------+------+-+-+-----------------------------------------------------+
18 | 0 | 8 | 10 | 8 |*|*| Long Gap Encountered |
19 | 7 | 232 | 350 | E8 |*|*| Unrecoverable Read Error |
20 | many | - | - | - |*|*| controller and/or driver/formatter type dependent |
21 +------+------+-------+------+-+-+-----------------------------------------------------+
22 Table B-5: "Host Buffer Access Error" Status or Event Subcode Values
23 +------+---------------------+-+-+-----------------------------------------------------+
24 | Sub- | Code + Subcode |E|S| |
25 | code +------+-------+------+V|T| Status or Event Subcode |
26 | | Dec. | Oct. | Hex. | | | |
27 +------+------+-------+------+-+-+-----------------------------------------------------+
28 | 0 | 9 | 11 | 9 | |*| Host Buffer Access error, cause not available. |
29 | | | | | | | The controller was unable to access a host buffer |
30 | | | | | | | to perform a transfer, but has no visibility into |
31 | | | | | | | the cause of the error. |
32 +------+------+-------+------+-+-+-----------------------------------------------------+
33 | 3 | 105 | 151 | 69 |*|*| Nonexistent memory error |
34 +------+------+-------+------+-+-+-----------------------------------------------------+
35 | 4 | 137 | 211 | 89 |*|*| Host memory parity error |
36 +------+------+-------+------+-+-+-----------------------------------------------------+
37 | 5 | 169 | 251 | A9 |*|*| Invalid page table entry |
38 | | | | | | | (See UNIBUS/QBUS Storage Systems Port |
39 | | | | | | | Specification for additional detail.) |
40 +------+------+-------+------+-+-+-----------------------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
STATUS AND EVENT CODE DEFINITIONS Page B-6
8 November 1987
1 Table B-5: "Host Buffer Access Error" Status or Event Subcode Values (cont.)
2 +------+---------------------+-+-+-----------------------------------------------------+
3 | Sub- | Code + Subcode |E|S| |
4 | code +------+-------+------+V|T| Status or Event Subcode |
5 | | Dec. | Oct. | Hex. | | | |
6 +------+------+-------+------+-+-+-----------------------------------------------------+
7 | 6 | 201 | 311 | C9 |*|*| Invalid buffer name |
8 | | | | | | | The key in the buffer name does not match the key |
9 | | | | | | | in the buffer descriptor, the V bit in the buffer |
10 | | | | | | | descriptor is clear, or the index into the Buffer |
11 | | | | | | | Descriptor Table is too large. (See the BI Vax |
12 | | | | | | | Port Specification for additional detail.) |
13 +------+------+-------+------+-+-+-----------------------------------------------------+
14 | 7 | 233 | 351 | E9 |*|*| Buffer length violation |
15 | | | | | | | The number of bytes requested in the TMSCP |
16 | | | | | | | command exceeds the buffer length as specified |
17 | | | | | | | in the buffer descriptor. (See the BI Vax |
18 | | | | | | | Port Specification for additional detail.) |
19 +------+------+-------+------+-+-+-----------------------------------------------------+
20 | 8 | 265 | 411 | 109 |*|*| Access control violation |
21 | | | | | | | The access mode specified in the buffer |
22 | | | | | | | descriptor is protected against by the PROT field |
23 | | | | | | | in the PTE. (See the BI Vax Port Specification |
24 | | | | | | | for additional detail.) |
25 +------+------+-------+------+-+-+-----------------------------------------------------+
26 Table B-6: "Controller Error" Status or Event Subcode Values
27 +------+---------------------+-+-+-----------------------------------------------------+
28 | Sub- | Code + Subcode |E|S| |
29 | code +------+-------+------+V|T| Status or Event Subcode |
30 | | Dec. | Oct. | Hex. | | | |
31 +------+------+-------+------+-+-+-----------------------------------------------------+
32 | 0 | 10 | 12 | A |-|-| Reserved for host detected command timeout error |
33 | | | | | | | logging. This subcode is never reported by a |
34 | | | | | | | controller. |
35 +------+------+-------+------+-+-+-----------------------------------------------------+
36 | many | - | - | - |*|*| controller and/or drive/formatter type dependent |
37 +------+------+-------+------+-+-+-----------------------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
STATUS AND EVENT CODE DEFINITIONS Page B-7
8 November 1987
1 Table B-7: "Drive Error" Status or Event Subcode Values
2 +------+---------------------+-+-+-----------------------------------------------------+
3 | Sub- | Code + Subcode |E|S| |
4 | code +------+-------+------+V|T| Status or Event Subcode |
5 | | Dec. | Oct. | Hex. | | | |
6 +------+------+-------+------+-+-+-----------------------------------------------------+
7 | many | - | - | - |*|*| controller and/or drive/formatter type dependent |
8 +------+------+-------+------+-+-+-----------------------------------------------------+
9 Table B-8: "Formatter Error" Status or Event Subcode Values
10 +------+---------------------+-+-+-----------------------------------------------------+
11 | Sub- | Code + Subcode |E|S| |
12 | code +------+-------+------+V|T| Status or Event Subcode |
13 | | Dec. | Oct. | Hex. | | | |
14 +------+------+-------+------+-+-+-----------------------------------------------------+
15 | many | - | - | - |*|*| controller and/or drive/formatter type dependent |
16 +------+------+-------+------+-+-+-----------------------------------------------------+
17 Table B-9: "Message From An Internal Diagnostic" Event Only Subcode Values
18 +------+---------------------+---------------------------------------------------------+
19 | Sub- | Code + Subcode | |
20 | code +------+-------+------+ Event Subcode |
21 | | Dec. | Oct. | Hex. | |
22 +------+------+-------+------+---------------------------------------------------------+
23 | many | - | - | - | controller and/or drive/formatter type dependent |
24 +------+------+-------+------+---------------------------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
MISCELLANEOUS TABLES Page C-1
8 November 1987
1 APPENDIX C
2 MISCELLANEOUS TABLES
3 Table C-1: Tape Format Flag Values
4 +---------------------+--------------------------+-+--------------------------------------+
5 | Value | Preferred Code Mnemonic |N| |
6 |-------+------+------+--------+-----------------+I| Tape Format Flag |
7 | Dec. | Oct. | Hex. | 16 bit | 32 bit |S| |
8 +-------+------+------+--------+-----------------+-+--------------------------------------+
9 | 255 | 377 | FF | TF.MSK | MSCP$M_TF_MASK | | Bitflag mask |
10 | 256 | 400 | 100 | TF.COD | MSCP$K_TF_CODE | | Format code multiplier |
11 +-------+------+------+--------+-----------------+-+--------------------------------------+
12 | 0 | 0 | 0 | TC.OLD | MSCP$K_TC_OLD | | Old value (See notes 1, 4) |
13 | 256 | 400 | 100 | TC.9TR | MSCP$K_TC_9TRACK| | New "9 track" devices |
14 | 512 | 1000 | 200 | TC.CTP | MSCP$K_TC_CTP |*| "TK50" compatible cart tapes (note 3)|
15 | 768 | 1400 | 300 | TC.348 | MSCP$K_TC_3480 | | "IBM 3480" compatible cartridge tapes|
16 | 1024 | 2000 | 400 | TC.W1 | MSCP$K_TC_W1 |*| "RV80" compatible write once cart. |
17 +-------+------+------+--------+-----------------+----------------------------------------+
18 | Note: 1. The TC.OLD value is for backwards compatibility with existing products. New |
19 | devices are prohibited from using the TC.OLD value. Products having media |
20 | different from those associated with the above TC.xxx values must ECO this |
21 | specification to include a new TC.xxx value for their media. Products having |
22 | media identical to one of those associated with the above TC.xxx value must |
23 | use that TC.xxx value. |
24 | |
25 | 2. Formats with an asterisk in the "NIS" column are considered "non-industry |
26 | standard". Devices which utilize these formats thus need not support the |
27 | "Reverse" command modifier on ACCESS, COMPARE HOST DATA, and READ commands. |
28 | Whether or not a device supporting one of these formats supports the |
29 | "Reverse" command modifier on the above commands must be documented in that |
30 | device's functional specification (See section 3.3.1.1). |
31 | |
32 | 3. Devices that support this format may not follow the normal ABORT process for |
33 | REPOSITION commands with the "Reverse" modifier set. See section 3.2.1.2. |
34 | |
35 | 4. Some devices that report a tape code of TC.OLD are considered to be |
36 | equivalent to devices that report a tape code of TC.CTP with respect to notes |
37 | 2 and 3 (see Table C-2). |
38 +-----------------------------------------------------------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
MISCELLANEOUS TABLES Page C-2
Table C-1: Tape Format Flag Values 8 November 1987
1 Table C-2: Tape Format Bitflag Values
2 +------+---------------------+--------------------------+---------------------------------+
3 | | Code + Bitflag |Preferred Bitflag Mnemonic| |
4 | Bit- +-------+------+------+--------+-----------------+ Tape Format Bitflag |
5 | flag | Dec. | Oct. | Hex. | 16 bit |32 bit (see note)| |
6 +------+-------+------+------+--------+-----------------+---------------------------------+
7 | "OLD" bitflag values: | | | |
8 | 0 | 1 | 1 | 1 | TF.800 | MSCP$x_TF_800 | NRZI 800 bpi |
9 | 1 | 2 | 2 | 2 | TF.PE | MSCP$x_TF_PE | Phase Encoded 1600 bpi |
10 | 2 | 4 | 4 | 4 | TF.GCR | MSCP$x_TF_GCR | Group Code Recording 6250 bpi |
11 | 3 | 8 | 10 | 8 | TF.BLK | MSCP$x_TF_BLOCK | Cartridge Block Mode (note 3) |
12 +------+-------+------+------+--------+-----------------+---------------------------------+
13 | "9TR" bitflag values: | | | |
14 | 0 | 257 | 401 | 101 | TF.800 | MSCP$x_TF_800 | NRZI 800 bpi |
15 | 1 | 258 | 402 | 102 | TF.PE | MSCP$x_TF_PE | Phase Encoded 1600 bpi |
16 | 2 | 260 | 404 | 104 | TF.GCR | MSCP$x_TF_GCR | Group Code Recording 6250 bpi |
17 +------+-------+------+------+--------+-----------------+---------------------------------+
18 | "CTP" bitflag values: | | | |
19 | 0 | 513 | 1001 | 201 | TF.NOR | MSCP$x_TF_NORML | Normal (low) density |
20 | 1 | 514 | 1002 | 202 | TF.BHD | MSCP$x_TF_BLKHD | High density |
21 +------+-------+------+------+--------+-----------------+---------------------------------+
22 | "IBM 3480" bitflag values: | | | |
23 | 0 | 769 | 1401 | 301 | TF.NOR | MSCP$x_TF_NORML | Normal density |
24 +------+-------+------+------+--------+-----------------+---------------------------------+
25 | "W1" bitflag values: | | | |
26 | 0 | 1025 | 2001 | 401 | TF.NOR | MSCP$x_TF_NORML | Normal density |
27 +------+-------+------+------+--------+-----------------+---------------------------------+
28 | Notes: 1. The "x" in the 32 bit mnemonic for a bit flag will be "V" if the symbol is |
29 | defined as a bit number (offset) or an "M" if defined as a mask. |
30 | |
31 | 2. The "Preferred Bitflag Mnemonic" is the mnemonic for the bitflag only. The |
32 | "Code + Bitflag" values are the sum of the tape format flag from the previous |
33 | table and the bitflag from this table. Thus, bitflags that have the same |
34 | meaning and bit value for different tape formats have the same mnemonic |
35 | (i.e., TF.800 for the TC.OLD and TC.9TR tape formats). |
36 | |
37 | 3. A code + bitflag value of TC.OLD + TF.BLK is equivalent to a code + bitflag |
38 | value of TC.CTP + TF.NOR with respect to functional behavior of devices. |
39 +-----------------------------------------------------------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
MISCELLANEOUS TABLES Page C-3
Table C-2: Tape Format Bitflag Values 8 November 1987
1 Table C-3: Controller Specific Maximum Record Size
2 +----------------------------------------------------------+------------------------------+
3 | Controller Type | Maximum Record Size in Bytes |
4 | | |
5 +----------------------------------------------------------+------------------------------+
6 | U/Q Bus Direct Access Controllers | 64K (preferred) |
7 | HSC50 | 64K |
8 | TU81 | 64K-1 |
9 | TK50 | 64K-1 |
10 +----------------------------------------------------------+------------------------------+
11 Table C-4: Format Specific Long Gap Values
12 +-----------------------------------------+-----------------------------------------------+
13 | Encoding Format Descriptor | Log Gap Value |
14 | | |
15 +-----------------------------------------+-----------------------------------------------+
16 | Phase Encoding (PE) 1600 bpi | 25 linear feet |
17 | Group Code Recording (GCR) 6250 bpi | 15 linear feet |
18 | Cartridge Block Format | device dependent, see device spec for details |
19 +-----------------------------------------+-----------------------------------------------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
REPOSITION COMMAND VARIATIONS Page D-1
8 November 1987
1 APPENDIX D
2 REPOSITION COMMAND VARIATIONS
3 NOTES
4 1. Square brackets ([]) indicate optional setting.
5 2. An asterisk (*) indicates that the modifier setting or count field
6 value is ignored by the controller due to an interdependence on the
7 setting of another modifier or the value of the count fields.
8 3. See Section 5.10.3 specific information related to controller execution
9 of combined basic functions.
10 4. Certain combinations of the repositioning functions, although
11 permissible, are illogical since the result is always termination of
12 the command with a status of BOT Encountered.
13 Table D-1: REPOSITION Command Variations
14 +------------------------------+----------------------------------------+--------+-------+
15 | | | | |
16 | REPOSITION | Modifiers | Record | Tape |
17 | Command +----------+-------+------+------+-------+ or | Mark |
18 | Variation |Immediate |Detect |Object|Rewind|Reverse| Object | Count |
19 | |Completion|LEOT |Count | | | Count | |
20 +------------------------------+----------+-------+------+------+-------+--------+-------+
21 | a. sequential no-operation | * | * | 0 | 0 | * | 0 | 0 |
22 | | * | * | 1 | 0 | * | 0 | * |
23 +------------------------------+----------+-------+------+------+-------+--------+-------+
24 | a. rewind to BOT | 0 [1] | * | 0 | 1 | * | 0 | 0 |
25 | | 0 [1] | * | 1 | 1 | * | 0 | * |
26 +------------------------------+----------+-------+------+------+-------+--------+-------+
27 | a. rewind to BOT | * | * | 1 | 1 | 0 | >0 | * |
28 | b. skip "object count" | | | | | | | |
29 | tape objects (both | | | | | | | |
30 | records and tape marks) | | | | | | | |
31 | in the forward | | | | | | | |
32 | direction | | | | | | | |
33 +------------------------------+----------+-------+------+------+-------+--------+-------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
REPOSITION COMMAND VARIATIONS Page D-2
8 November 1987
1 Table D-1: REPOSITION Command Variations (cont.)
2 +------------------------------+----------------------------------------+--------+-------+
3 | | | | |
4 | REPOSITION | Modifiers | Record | Tape |
5 | Command +----------+-------+------+------+-------+ or | Mark |
6 | Variation |Immediate |Detect |Object|Rewind|Reverse| Object | Count |
7 | |Completion|LEOT |Count | | | Count | |
8 +------------------------------+----------+-------+------+------+-------+--------+-------+
9 | a. rewind to BOT | * | * | 1 | 1 | 1 | >0 | * |
10 | b. attempt to skip "object | | | | | | | |
11 | count" tape objects | | | | | | | |
12 | (both records and tape | | | | | | | |
13 | marks) in the reverse | | | | | | | |
14 | direction | | | | | | | |
15 | (See Note 4 above) | | | | | | | |
16 +------------------------------+----------+-------+------+------+-------+--------+-------+
17 | a. rewind to BOT | * | 0 [1] | 0 | 1 | 0 | 0 | >0 |
18 | b. skip "tape mark count" | | | | | | | |
19 | tape marks in the | | | | | | | |
20 | forward direction | | | | | | | |
21 +------------------------------+----------+-------+------+------+-------+--------+-------+
22 | a. rewind to BOT | * | * | 0 | 1 | 1 | 0 | >0 |
23 | b. attempt to skip "tape | | | | | | | |
24 | mark count" tape marks | | | | | | | |
25 | in the reverse | | | | | | | |
26 | direction | | | | | | | |
27 | (See Note 4 above) | | | | | | | |
28 +------------------------------+----------+-------+------+------+-------+--------+-------+
29 | a. rewind to BOT | * | 0 [1] | 0 | 1 | 0 | >0 | 0 |
30 | b. skip "record count" | | | | | | | |
31 | records in the forward | | | | | | | |
32 | direction | | | | | | | |
33 +------------------------------+----------+-------+------+------+-------+--------+-------+
34 | a. rewind to BOT | * | * | 0 | 1 | 1 | >0 | 0 |
35 | b. attempt to skip "record | | | | | | | |
36 | count" records in the | | | | | | | |
37 | reverse direction | | | | | | | |
38 | (See Note 4 above) | | | | | | | |
39 +------------------------------+----------+-------+------+------+-------+--------+-------+
40 | a. rewind to BOT | * | 0 [1] | 0 | 1 | 0 | >0 | >0 |
41 | b. skip "tape mark count" | | | | | | | |
42 | tape marks in the | | | | | | | |
43 | forward direction | | | | | | | |
44 | c. skip "record count" | | | | | | | |
45 | records in that same | | | | | | | |
46 | direction | | | | | | | |
47 +------------------------------+----------+-------+------+------+-------+--------+-------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
REPOSITION COMMAND VARIATIONS Page D-3
8 November 1987
1 Table D-1: REPOSITION Command Variations (cont.)
2 +------------------------------+----------------------------------------+--------+-------+
3 | | | | |
4 | REPOSITION | Modifiers | Record | Tape |
5 | Command +----------+-------+------+------+-------+ or | Mark |
6 | Variation |Immediate |Detect |Object|Rewind|Reverse| Object | Count |
7 | |Completion|LEOT |Count | | | Count | |
8 +------------------------------+----------+-------+------+------+-------+--------+-------+
9 | a. rewind to BOT | * | * | 0 | 1 | 1 | >0 | >0 |
10 | b. attempt to skip "tape | | | | | | | |
11 | mark count" tape marks | | | | | | | |
12 | in the reverse | | | | | | | |
13 | direction | | | | | | | |
14 | c. attempt to skip "record | | | | | | | |
15 | count" records in that | | | | | | | |
16 | same direction | | | | | | | |
17 | (See Note 4 above) | | | | | | | |
18 +------------------------------+----------+-------+------+------+-------+--------+-------+
19 | a. skip "object count" | * | * | 1 | 0 | 0 | >0 | * |
20 | tape objects in the | | | | | | | |
21 | forward direction | | | | | | | |
22 +------------------------------+----------+-------+------+------+-------+--------+-------+
23 | a. skip "object count" | * | * | 1 | 0 | 1 | >0 | * |
24 | tape objects in the | | | | | | | |
25 | reverse direction | | | | | | | |
26 +------------------------------+----------+-------+------+------+-------+--------+-------+
27 | a. skip "tape mark count" | * | 0 [1] | 0 | 0 | 0 | 0 | >0 |
28 | tape marks in the | | | | | | | |
29 | forward direction | | | | | | | |
30 +------------------------------+----------+-------+------+------+-------+--------+-------+
31 | a. skip "tape mark count" | * | * | 0 | 0 | 1 | 0 | >0 |
32 | tape marks in the | | | | | | | |
33 | reverse direction | | | | | | | |
34 +------------------------------+----------+-------+------+------+-------+--------+-------+
35 | a. skip "record count" | * | 0 [1] | 0 | 0 | 0 | >0 | 0 |
36 | records in the forward | | | | | | | |
37 | direction | | | | | | | |
38 +------------------------------+----------+-------+------+------+-------+--------+-------+
39 | a. skip "record count" | * | * | 0 | 0 | 1 | >0 | 0 |
40 | records in the reverse | | | | | | | |
41 | direction | | | | | | | |
42 +------------------------------+----------+-------+------+------+-------+--------+-------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
REPOSITION COMMAND VARIATIONS Page D-4
8 November 1987
1 Table D-1: REPOSITION Command Variations (cont.)
2 +------------------------------+----------------------------------------+--------+-------+
3 | | | | |
4 | REPOSITION | Modifiers | Record | Tape |
5 | Command +----------+-------+------+------+-------+ or | Mark |
6 | Variation |Immediate |Detect |Object|Rewind|Reverse| Object | Count |
7 | |Completion|LEOT |Count | | | Count | |
8 +------------------------------+----------+-------+------+------+-------+--------+-------+
9 | a. skip "tape mark count" | * | 0 [1] | 0 | 0 | 0 | >0 | >0 |
10 | tape marks in the | | | | | | | |
11 | forward direction | | | | | | | |
12 | b. skip "record count" | | | | | | | |
13 | records in that same | | | | | | | |
14 | direction | | | | | | | |
15 +------------------------------+----------+-------+------+------+-------+--------+-------+
16 | a. skip "tape mark count" | * | * | 0 | 0 | 1 | >0 | >0 |
17 | tape marks in the | | | | | | | |
18 | reverse direction | | | | | | | |
19 | b. skip "record count" | | | | | | | |
20 | records in that same | | | | | | | |
21 | direction | | | | | | | |
22 +------------------------------+----------+-------+------+------+-------+--------+-------+
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
WAIVERS AND EXCEPTIONS Page E-1
8 November 1987
1 APPENDIX E
2 WAIVERS AND EXCEPTIONS
3 E.1 TU81
4 E.1.1 "EOT Encountered" Status Subcode
5 Waiver:
6 Early serial number TU81 integrated controllers return
7 "Success (subcode EOT Encountered)" status in the end message
8 of all WRITE commands executed while the tape is positioned
9 on the trailer side of the EOT marker. That status is only
10 supposed to be returned when the EOT marker is encountered
11 during the execution of a "write" type command. WRITE TAPE
12 MARK and ERASE GAP commands operate properly, only the WRITE
13 command is affected.
14 Justification:
15 This waiver is required to allow the shipment of the first
16 200 units to customers. The microcode fixes for these
17 problems are extensive and would delay the shipments of TU81s
18 for a quarter.
19 E.1.2 "Serious Exception" And "EOT Encountered"
20 Waiver:
21 "Serious exception" end message flag and "EOT encountered"
22 are not reported in the end messages of ABORT, DETERMINE
23 ACCESS PATHS, and GET COMMAND STATUS commands.
24 Justification:
25 This waiver is required to allow the shipment of the first
26 200 units to customers. The microcode fixes for these
27 problems are extensive and would delay the shipments of TU81s
28 for a quarter.
29 E.1.3 "Byte Count (Host Transfer)" On Read Reverse
30 Wavier:
31 The "byte count (host transfer)" end message field of reverse
32 (i.e., "reverse" modifier set) COMPARE HOST DATA commands and
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
WAIVERS AND EXCEPTIONS Page E-2
TU81 8 November 1987
1 reverse READ with compare after (i.e., "compare" modifier
2 set) commands are erroneous under certain conditions.
3 The general problem is that the TU81 can not do a real read
4 reverse. The TU81 emulates the read reverse by doing a
5 series of position and read forwards. When attempting to do
6 the host data compare operation the compare is taking place
7 in the wrong direction. This causes the TU81 to flag the
8 wrong byte in error if there are two or more errors.
9 Justification:
10 This problem has little system impact because the command is
11 not used by any DEC operating system. The command can be
12 issued by a user program. In most cases the program is not
13 interested in the byte in error, just the fact there was an
14 error or not.
15 The change to conform to the specification is a major
16 hardware and micro code change (the compare is done in
17 hardware). The redesign effort would take at least one
18 quarter.
19 The point is best summed up by the following quote from Jim
20 Zahrobsky: "What is described in the specification is the
21 ideal. Traditional usage shows that there is no clear need
22 for devices to conform to that ideal (TE16 and TU77 do not
23 meet the ideal. The TU78 on the other hand does)." The TU81
24 doesn't meet the ideal, but it does come very close.
25 Zahrobsky also went on to say that we will strive to meet the
26 ideal on all future devices.
27 E.2 TK50
28 E.2.1 Incorrect Command Processing While Position Lost
29 Waiver:
30 Whenever the TK50 is in the "Position Lost" state, it rejects
31 further read/write/position commands until one of the
32 following takes place:
33 o The tape is returned to BOT;
34 o The tape unit enters the "Unit Offline" state;
35 o The tape is unloaded via the AVAILABLE command.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
WAIVERS AND EXCEPTIONS Page E-3
TK50 8 November 1987
1 The intention of the TMSCP specification in the case of the
2 "Position Lost" condition is to allow the host to attempt to
3 recover positioning of the tape behind and/or ahead of the
4 object where the "Position Lost" condition occurred. This
5 implies that the host can issue any I/O or positioning
6 command while the unit is in the "Position Lost" state and
7 expect reasonable operation of those commands provided the
8 unit is still able to read the tape (i.e., its read
9 electronics are still in good shape).
10 Justification:
11 Corrective action would have prevented FRS with MicroVAX II.
12 This waiver only applies to early serial number TK50s.
13 E.2.2 COMPARE HOST DATA Error Reporting
14 Waiver:
15 While performing a COMPARE HOST DATA command, the TK50 will
16 report a "Record Data Truncated" error subordinate to a
17 "Compare" error. The operating systems indicated that this
18 was not a major error but that it must be fixed.
19 Justification:
20 Corrective action would have prevented FRS with MicroVAX II.
21 This waiver only applies to early serial number TK50s.
22 E.2.3 Incorrect "Offline" Error Reporting
23 Wavier:
24 When the TK50 drive is powered off after the controller has
25 been initialized the status reported is Offline (subcode "No
26 Media Loaded").
27 Justification:
28 Corrective action would have prevented FRS with MicroVAX II.
29 This waiver only applies to early serial number TK50s.
30 E.2.4 Progress Indicator Processing
31 Waiver:
32 The Progress Indicator stops indicating progress after 11
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
WAIVERS AND EXCEPTIONS Page E-4
TK50 8 November 1987
1 minutes and 20 seconds following the execution of the ERASE
2 command with the "Immediate" qualifier set. One of the
3 consequences of this is that 2/3 of the data may be left on
4 the tape. Another consequence is that the host may flag the
5 device as broken. All of the operating systems agreed that
6 this is a problem that must be fixed.
7 Justification:
8 Corrective action would have prevented FRS with MicroVAX II.
9 This waiver only applies to early serial number TK50s.
10 E.2.5 Multiple Error Logs Reported
11 Waiver:
12 The TK50 returns individual error logs for each of the retry
13 attempts when a "Long Gap Encountered" situation occurs at
14 BOT. Also, the Event Code contained in the error log differs
15 from the value reported in the command's end message.
16 These situations only occur at BOT since other tests perform
17 correctly when positioned away from BOT.
18 Justification:
19 Corrective action would have prevented FRS with MicroVAX II.
20 This waiver only applies to early serial number TK50s.
21 E.2.6 Invalid "Records Skipped Count"
22 Waiver:
23 The "Records Skipped Count" field (P.RCSK) is set to all ones
24 in the end message of a REPOSITION command that encounters a
25 "Long Gap" condition. The value should be zero. The spec
26 was ambiguous on this point. The operating systems indicated
27 that this was not a major problem.
28 Justification:
29 Corrective action would have prevented FRS with MicroVAX II.
30 This waiver only applies to early serial number TK50s.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
WAIVERS AND EXCEPTIONS Page E-5
TK50 8 November 1987
1 E.2.7 Hardware Serial Number
2 Waiver:
3 Early TK50 controllers and drives do not implement a Hardware
4 Serial Number that is unique to each component.
5 Justification:
6 Corrective action would have prevented FRS with MicroVAX II.
7 This waiver only applies to early serial number TK50s.
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
REVISION HISTORY Page F-1
8 November 1987
1 APPENDIX F
2 REVISION HISTORY
3 F.1 Changes Since Version 1.6
4 The following changes were made from TMSCP Version 1.6 to TMSCP
5 Version 1.6.4:
6 The following approved ECOs to V1.6 were incorporated.
7 o TMSCP16-1 BOT and Tape Mark Encountered
8 Clarification
9 o TMSCP16-5 STI Formatter Error Log Changed
10 o TMSCP16-6 Eliminate Command Aborted as SE Cause
11 o TMSCP16-8 64kb Transfer ECO
12 o TMSCP16-9 ONL and SUC Speed Field Clarification
13 o TMSCP16-10 Expanded Transfer Error Log
14 o TMSCP16-12 Byte Count Equals Zero is Invalid
15 o TMSCP16-13 TMSCP Extension to Get Unit Status
16 Command
17 o TMSCP16-17 TU81 "EOT Encountered" Waiver
18 o TMSCP16-19 TU81 Reverse Compare Byte Count Waiver
19 o TMSCP16-21 Tape Caching
20 o TMSCP16-22 "Non-industry standard" Read Reverse
21 o TMSCP16-25 TK50 Maximum Record Length
22 o TMSCP16-26 TK50 Various Temporary Waivers
23 o TMSCP16-28 TK50 Hardware Serial Number
24 o TMSCP16-29 CTP ABORT during REPOSITION
25 o TMSCP16-31 REPOSITION Command Description
26 Clarification
27 o TMSCP16-32 Lengthy I/O Command Abort Clarification
28 o TMSCP16-33 Asynchronous Command Completion
29 Clarification
30 o TMSCP16-34 Position Lost Error Handling
31 Clarification
32 o TMSCP16-36 Error Log Generation Clarification
33 o TMSCP16-37 Media Format Error Status Code
34 o TMSCP16-42 GET UNIT STATUS Modification
35 o TMSCP16-43 Tape Format Flag Redefinition
36 o TMSCP16-44 End Message Field Validation
37 Clarification
38 o TMSCP16-45 "Position" Field Clarification
39 o TMSCP16-46 PEOT Redefinition
40 o TMSCP16-47 "Position" Field Clarification
41 o TMSCP16-49 TA90 Density Flag
42 o TMSCP16-52 Sequential Command Clarification while
43 Caching
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
REVISION HISTORY Page F-2
Changes Since Version 1.6 8 November 1987
1 o TMSCP16-56 "Position" Field Changes
2 o TMSCP16-57 EOT Can Move
3 o TMSCP16-58 TAPE TRANSFER ERRORS Errorlog Renamed
4 o TMSCP16-60 Enhanced Write Error Recovery Changes
5 The following approved ECOs to MSCP V1.2 were
6 incorporated.
7 o MSCP12-2 Error Log Sequence Numbers
8 o MSCP12-9 Reserve OPCODE Zero
9 o MSCP12-16 Error Log Format Generalization
10 o MSCP12-27 Read-Only Device Write Protect
11 o MSCP12-34 Exclusive Access [Multi-Host]
12 o MSCP12-35 ACCESS NON-VOLATILE MEMORY Command
13 o MSCP12-39 TU81 Waiver Request
14 o MSCP12-53 Diagnostic Opcodes
15 o MSCP12-56 Multi-Host Flag Definition
16 o MSCP12-57 Minor Errors in ECOs
17 The following editorial changes were performed (on the
18 original and ECO text):
19 o Table and "picture" formats changed to be more
20 readable.
21 o Spelling and grammatical errors corrected.
22 o List and item formats changed to be consistent.
23 o List items were placed in alphabetical order.
24 o Wording changes were made to increase readability.
25 | F.2 Changes Since Version 1.6.4
26 | The following changes were made from TMSCP Version 1.6.4 to TMSCP
27 | Version 2.0.0:
28 | The following approved ECOs to V1.6 were incorporated.
29 | o TMSCP16-65 Position Lost Clarification
30 | o TMSCP16-68 No Host Buffer Access Error for WTM
*** R E S T R I C T E D D I S T R I B U T I O N ***
Digital Equipment Corporation Confidential And Proprietary
Tape Mass Storage Control Protocol Version 2.0.0
REVISION HISTORY Page F-3
Changes Since Version 2.0.0 8 November 1987
1 | F.3 Changes Since Version 2.0.0
2 | The following changes were made from TMSCP Version 2.0.0 to TMSCP
3 | Version 2.0.2:
4 | The following approved ECOs to V2.0.0 were incorporated.
5 | o TMSCP20-1 Discarding Read-Ahead Cache Contents
6 | o TMSCP20-4 Position Lost Terminology
7 | o TMSCP20-5 FLUSH Should Not Block Further Caching
*** R E S T R I C T E D D I S T R I B U T I O N ***