GY30 2029 3_OS_MFT_and_OS_MVT_TCAM_Logic_Release_21.0_Jul72 3 OS MFT And MVT TCAM Logic Release 21.0 Jul72
GY30-2029-3_OS_MFT_and_OS_MVT_TCAM_Logic_Release_21.0_Jul72 GY30-2029-3_OS_MFT_and_OS_MVT_TCAM_Logic_Release_21.0_Jul72
User Manual: GY30-2029-3_OS_MFT_and_OS_MVT_TCAM_Logic_Release_21.0_Jul72
Open the PDF directly: View PDF .
Page Count: 723
Download | |
Open PDF In Browser | View PDF |
GY30·2029·3 Systems OS/MFT and OS/MVT TeAM Logic Program No. 360S-CQ-S48 OS Release No. 21.0 Preface The Organization and Use of the TCAM Program Logic Manual section of this book defines the audience for which this program logic manual was intended, explains how the book is organized, and suggests how the reader might best familiarize himself with its contents. In order to understand the logic of TCAM, the reader must have a general understanding of the System/360 Operating System. In addition, the following prerequisite publications are applicable: . as . TCAM Concepts and Facilities, Order No. GC30-2022, to gain familiarity with the overall concepts and structure of TCAM. as TCAM Programmer's Guide, Order No. GC30-2024, to learn how to construct and modify a TCAM MCP and a TCAM-compatible application program. The as TCAM User's Guide, Order No. GC30-2025, provides supplementary debugging information. The as System Control Blocks publication, Order 'No. GC28-6628, provides corequisite information on system control blocks that are used by TCAM. Fourth Edition (July 1972) This publication is a major revision of, and obsoltes, GY30-2029-2; it provides function support of Component Release 4 of TCAM, and maintenance support of TCAM contained in Release 21.0 of OS. Significant new material has been added throughout, and existing material has been changed extensively; therefore, no vertical lines or bullets appear in the margins, and the manual should be reread in its entirety. The contents of this publication are subject to change from time to time. Changes will be reflected in periodically updated editions. Before using this publication, consult the latest System/360 SRL Newsletter, GN20-0360, for the editions that are applicable and current. Requests for copies of IBM publications should be made to your IBM representative or to the IBM branch office serving your locality. A form is provided at the back of this publication for your comments. If the form is missing, comments may be addressed to IBM Corporation, Publications Center, Dept. E01, P. O. Box 12275, Research Triangle Park, North Carolina 27709. Comments become the property of IBM. © Copyright International Business Machines Corporation 1971, 1972 Summary of Changes This complete revision of the OS TCAM Logic publication obsoletes the previous edition, GY30-2029-2. In this edition the method of operation text and charts are replaced by revised and improved method of operation charts and text. The Executable TCAM Modules Microfiche Directory has been replaced because of changes in the method of operation chart identification and for operator control and TOTE on-line test. Additional data area layouts are included for TOTE. This revised edition also incorporates information on the following TeAM support: • • • • • • • • • 2790 Data Communications System 3270 Information Display System 3670 Brokerage Terminal 7770 enhancements disk error handling general poll for 2260 and 3270 reverse interrupt (RVI) TOTE II On-Line Test (OLT) TSO ITeAM mixed environment iii Contents Organization and Use of the TCAM Program Logic Manual . Section 1: Introduction . . . . System Generation . . . . . . TCAM Macro Definitions TCAM Resident Modules TCAM Support Modules . TCAM Transient Modules System Nucleus Modules . The Message Control Program in the System . Assembling and Linkage Editing a Message Control Program Execution of a Message Control Program . . . . . . . . . The Application Program in the System . . . . . . . . . . . Assembling and Linkage Editing an Application Program Execution of an Application Program . . . Relationship of the OS Dispatcher to TCAM . Selected Options . . . . . . . . . . . Operator Control . . . . . . . . . Application Program Processing . Line Queuing Options . . Message Queuing Options Logging . . . . . . . . . . Checkpoint/Restart .. . TCAM as a Start able Procedure Error Recovery Procedures Subtask Trace. . . . . . . . . . Cross-Reference Table . . . . . TCAM in a Multiprocessing Environment Time Sharing Option . . . . . . . . . . . . General Poll . . . . . . . . . . . . . . . . Teleprocessing On-Line Test Executive (TOTE) Configuration Data Set . . . . . . TOTE Requirements . . . . . . . Abnormal Termination Recovery Section 2: Basic TCAM Concepts .. The TCAM Dispatcher . . . . . . . Elements, Queues, and Subtasks . The Ready Queue . . . . . . Principle of Tpost and Twait Buffer Management . . . . . . Queue Management . . . . . . Nonreusable Disk Queuing. Reusable Disk Queuing. . . Main-Storage Queuing . . . Main-Storage Queuing with Disk Backup Special Queuing Considerations . . . . . . . Section 3: Method of Operation . . . . . . . . . . A. At. A2-t. A2-2. A2-3. A3. A4. B. B 1-1. BI-2. Method of Operation Introduction . . . Method of Operation Charts Overview . Defining the System/Network . . . . . Executing INTRO . . . . . . . . . . . . Opening the Message Queues Data Set. Opening the Checkpoint Data Set Opening the Line Group Data Set . Executing READY . . . . . . . . . Initializing the Application Program Controlling the TCAM System . . . Dispatching Functions of the TCAM Dispatcher Queuing Functions of the TCAM Dispatcher .. 3 3 3 3 5 5 5 5 5 5 6 6 6 7 7 7 7 8 8 8 8 9 9 9 to to to 11 11 12 12 12 13 13 13 15 17 18 22 22 34 35 35 36 38 39 42 43 44 48 50 54 60 62 66 68 71 v B2. Functions of AQCTL SVC 102 . C. Processing the Messages . . . . . C 1-1.1. Starting a Receive Operation C 1-1.2. ST ARTMH for a Receive Operation CI-1.3. Incoming MH Processing CI-1.4. FORWARD Processing . CI-2. Disk Queuing . . . . . . . C 1-3.1. Starting a Send Operation CI-3.2. STARTMH for a Send Operation. CI-3.3 Outgoing MH Processing . . . . . C2-1. Data Flow: MCP to Application Program C2-2. Data Flow: Application Program to MCP C3-1. Application Program/Operator Control Interface. C3-2. Application Program Network Controt . D. Checkpointing/Restarting the System DI-I. Environment Checkpoint . . . . . . . . DI-2. Incident Checkpoint: MH Request .. . DI-3. Incident Checkpoint: Operator Control Request DI-4. Application Program Checkpoint Request D2. Restart............ E. Closing the System/Network . . . EI. MCP Termination . . . . . . . . . E2. Application Program Termination vi 72 76 78 80 82 88 90 92 96 98 .102 .106 · 108 .110 · 112 · 114 · 115 · 116 · 117 · 122 · 124 · 126 · 130 Section 4: Program Organization . . . . . . . . . . . . Executable TCAM Modules Microfiche Directory . . . Non-Executable TCAM Modules Microfiche Directory Macro Linkage Charts . . . . . . . . . . . . . Operat-or Control Command Linkage Charts . ERP Linkage Charts BSC ERP . Flowcharts . . . . . · 133 .134 .184 · 187 .241 .245 .247 .250 Section S: Data Area Layouts. . . . . . . . . . . . . . . . . . . . . . . . Linkages from a TCAM Buffer Prefix. . . . . . . . . . . . . . . . . . . Linkage among Storage Areas in the MCP and an Application Program Address Vector Table . . . Access Method Work Area Buffer Prefix . . . . . . . Channel Program Block . Checkpoint Disk Records Checkpoint Elements .. Checkpoint Work Areas. Command Input Buffer . Common Buffer Data Area Prefix Common Buffer Master QCB . . Concentrator Data Ready Queue Concentrator Device ID Table Data Control Block . . . Data Event Control Block . . . Data Extent Block . . . . . . . Data Extent Block for Application Programs . Device Characteristics Table Disk Data Area. . . . . Element Request Block Invitation List .. . I/O Blocks . . . . . . . Line Control Block . . . On-Line Test Control Block . Operator Control Address Vector Table Option Characteristics Table . . . . Option Table . . . . . . . . . . . . . OS I/O Device Characteristics Table Process Control Block . . . . . . . . .395 .397 .399 .401 .423 .429 .433 .437 .447 .449 .455 .461 .463 .457 .465 .467 .477 .479 .483 .485 .487 .489 .491 .495 .503 · 511 · 531 .537 .539 · 541 .543 Process Entry Work Area . . . . Queue Control Block . . . . . . . Queue Control Block Extension . Resource Control Block . Special Characters Table Station Control Block Subtask Control Block Terminal Table . . . . Termname Table .. . Test Event Control Block TOTE Resource Control Block TSO TSINPUT Control Block. .547 . 551 . 557 .559 .561 .563 .571 .573 .581 .583 .587 .591 Section 6: Diagnostic Aids . . . SCB Error Word Usage by Module LCB Status Byte Usage by Module Table of Message Origins . . . . . Register Usage Conventions in TCAM TCAM Service Aids . . . . . . . . . . .597 .597 .599 .601 .613 .617 Appendix A: List of TCAM Modules by Library SYSI.L1NKLIB . SYSI.MACLIB .. SYS 1. NUCLEUS. SYSI.SVCLIB .. SYS I. TELCMLlB .621 .621 .623 .627 .627 .630 Appendix B: TCAM Queues and QCBs . TCAM Queues TCAM QCBs . . . . . . . . . . . . . . .635 .635 .637 Appendix C: List of Relative Priorities in TCAM .641 Appendix D: TCAM Channel Programs and TP Operation Codes . .645 Glossary. .683 Index .. .693 Figures I. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Physical Organization of TCAM TCAM QCB Linkage . . . . . Priority of Subtasks on a QCB . Passing Elements to a QCB . . . Linkage from the Ready Queue to Subtask Code Pointers during a Ready Queue Update . . . . Unit Control Area . . . . . . . . . . . . . . . . Buffer Units Chained to Form Logical Buffers. Effect of an ERB on Buffer Unit Linkage . . . Assignment of Disk Message Queues Data Set Relative Record Numbers across Three Volumes . . . . . . . . Disk Queuing a Three-Unit Buffer . . . . .. . Disk Queuing an Eight-Unit Buffer . . . . . . Disk Queuing the Second Buffer of a Message. Disk Queuing a One-Unit Message . . • Disk Queuing Pointers . . . . . . . . . Example of Two Queue-Back Chains .. Disk Queuing-FIFO and FEFO Pointers . Zones for Servicing and Updating a Reusable Disk Message Queues Data Set. . . . . . . . . . . . . . .4 14 14 15 16 17 19 20 21 23 25 26 27 28 29 30 33 35 vii Organization and Use of the TeAM Program Logic Manual This publication covers the internal logic of the IBM System/360 as Telecommunications Access Method (TCAM). The TCAM PLM is directed to the IBM program system representatives and system engineers who provide program maintenance and who need information on the internal organization of TCAM. Section I. the Introduction. provides general information that is basic to an understanding of TCAM. This information places TCAM in the proper perspective to the operating system (aS). Section 2 describes the Basic TCA M Concepts. These should be understood before approaching the specifics of the internal logic. Concepts described are the TCAM Dispatcher. buffer management. and queue management. Section 3. the Method of Operation section. describes the functional flow of each operation in the TCAM system. The method of operation diagrams present the internal logic of a basic TeAM system without relying on extensive textual descriptions. The diagrams provide four kinds of information: o o o o Basic function (provided in the picture area). Module interfaces (shown as input to and output from the function being performed in the picture). Procedures that support the function (description provided). Pointers into the listings and flowcharts (cross-references provided with the description to lead to the proper routine. method of operation chart. flowchart. or listing). Section 4 covers program organization and operation of TCAM. This information is provided in a series of tables that describe the functions of the various TCAM modules. Also included are: o o o o Charts of message handling macros. parameter lists. and the module linkages and functions that result from each TCAM macro coded. Tables of operator control commands and the action of the system as a result of each command. Tables of error recovery procedures to trace and record I/O errors. Flowcharts of some TCAM modules to show line and queue control. The flowchart identification is the same as the last two characters of the module name. When multiple flowcharts are necessary for a module. these two or three characters are followed by a dash and then a number (HM I-I). In addition. duplicate identifications are assigned to these flowcharts to facilitate off-page linkage. Section 5 is a composite of the data areas used by TCAM. Each description includes the purpose. internal references. allocation. and initialization information. Both a visual and a tabular description of the DSECT for each area are also given. Section 6 contains tables of information to aid in debugging and analyzing the activity of TCAM. The seventh section consists of information. in four appendixes. to aid in the use of TCAM: a list of TCAM queues and QCBs. a list of TCAM modules by library. a list of TCAM relative priorities. and the TCAM channel programs. Organization and U~e of the TC AM Progrmn Logic Manual (This page left blank intentionally) 2 OS TCAM PLM Section 1: Introduction TCAM is a component of the IBM System/360 Operating System. The primary purpose of TCAM is to provide a high-level access method to communicate with telecommunications equipment while maintaining the greatest possible device independence. In addition to supporting the transfer of data (messages) between both local and remote terminals and the system, TCAM provides a flexible message control language that can be used to direct the processing of the data. By using the TCAM macro instructions, installation-oriented message control is achieved. TCAM operates under OS MFT or MVT in System/360 Model 40 or larger processors. The minimum main-storage requirement is 128K bytes. In addition to the system timer and normal OS requirements, TCAM requires a 2701, 2702, or 2703 on a multiplexer channel (unless only the 7770 or 2260 Local terminals are used, in which case the 7770 or 2848 is attached to the channel). Secondary storage for libraries and main or secondary storage for queuing are also required. This section describes the various parts of TCAM and explains what they are, where they come from, how they get into the system, their relationships to each other, and how they pass control back and forth. Figure 1 shows the steps necessary to begin processing in the TCAM environment. System Generation When TCAM is called for during a system generation procedure (by the ACSMETH=TCAM operand in the DATAMGT system generation macro instruction), the TCAM modules are included in four libraries: SYS I.MACLIB, SYS 1. TELCMLIB, SYS I.SVCLIB, and SYS I.LINKLIB. An Attention routine and a Type I SVC module (the AQCTL SVC 102 routine) are incorporated in the Supervisor Nucleus (SYSl.NUCLEUS). There is an entry in the SVC table in the nucleus for Type 4 SVC 104 TOPCTL, which is resident in SYS l.SVCLIB. Using these modules, the user can assemble, linkage edit, and execute TCAM message control and application programs. TCAM Macro Definitions The operating system macro definition library (SYSl.MACLIB) includes the macro definitions necessary for the assembly of TCAM message control and application programs. TCAM Resident Modules When performing a system generation to include TCAM, the user must define a special library area named SYSl.TELCMLIB. During the generation run, modules that can later be linkage edited with message control and application program object modules are copied from SYSl.CQ548 into SYSl.TELCMLIB. In this publication, these modules are defined as the TCAM resident modules. Appendix A contains a list of the modules in SYS 1. TELCMLIB. Section I: Introduction 3 : : Appl ication Source Program System Generation Macro Instructions Message Control Source Program I IOS/36O Starter System 1 I System Residence : : : : ' , : : : Ii' : SYS1. MACLIB f---Assembler 1- I nc Iudes a II TCAM Macro Definitions Assembler SYSl. TELCMLlB r- All TCAM Resident Modules to be Linked with User 1 - Object Modules Linkage Editor Linkage Editor SYS1. SVCLlB Includes all TCAM Support Modules Loaded by OPEN/ ~ and all OPEN/CLOSE/and ERP Modules User Code and GET /PUT Linkages Macro Linkage and User Code MH Resident Routines SYS1. LlNKLlB Status Changing Resident Routines L..-. Includes TCAM Transient Modules I Job Scheduler IJL • Mai n Storage N Supervisor Nucleus !Attention-RoutineiAQCTL SVC Module Partition I:r N :=- ~ Partition 2 Partition 1 Partition 0 Figu're 1. Physical Organization of TCAM 4 OS TCAM PLM Appl or other Program 2 D. _",.~" •• GET/pUT Modules Application Program 1 GET/PUT Modules Message Control Program Any Attached Subtasks Job heduler 1 TCAM Support Modules During the system generation run, all modules that are loaded into main storage by the various system open executors, and the TCAM open and close executors are copied from SYSl.CQ548 into SYSl.SVCLIB. The TCAM Dispatcher, the Command Scheduler, the Type IV SVC modules, and the Error Recovery Procedure routines are also placed in SYS l.SVCLIB. In this publication, these modules are defined as TCAM support modules. Appendix A contains a list of the TCAM support modules in SYSl.SVCLIB. The Error Recovery Procedure routines and the TCAM Open and Close routines can, at the option of the user at system generation, be resident or transient during program execution. In either case, these routines reside in SYSl.SVCLIB. TCAM Transient Modules At system generation time, modules that can be called into main storage for a limited length of time during the execution of a TCAM message control or application program are copied from SYSl.CQ548 into SYSl.LINKLIB. In this publication, these modules are defined as TCAM transient modules. Appendix A contains a list of the modules in SYSl.LINKLIB. The Operator Control, Checkpoint, and On-line Test routines stored in SYS I.LINKLIB can optionally be specified to be resident during program execution. However, in this publication they are defined as transient modules. System Nucleus Modules At system generation time, the Attention routine and the AQCTL SVC 102 routine (a Type I SVC) are copied from SYSl.CQ548 into SYS1.NUCLEUS. In this publication these two modules are defined as the system nucleus modules. The Message Control Program in the System Assembling and Linkage Editing a Message Control Program The user codes the TCAM macro instructions necessary to design a Message Control Program. When these instructions are entered for assembly, the output of this assembly includes: several tables and control blocks, linkages to TCAM resident and support routines, Message Handler (MH) macro instruction expansions, and any user-written routines that were included. The assembled object module is then linkage edited to include the desired resident routines from SYSl.TELCMLIB. These resident routines are the MCP routines used to process header information, to translate from one transmission code to another, to direct messages to the proper lines and queues, to manage system resources, etc. The resulting load module is stored in a system library to be loaded for execution. Execution of a Message Control Program The TCAM Message Control Program (MCP) is normally executed as the highest-priority task in the highest-priority partition or region in the system. The as Initiator/Terminator routine loads and transfers control to the MCP. The first TCAM macro instruction executed must be INTRa. The initial functions of INTRa are to establish the TCAM address vector table (AVT), address ability and entry linkages for the MCP, the cross-reference table, the channel program block (CPB) pool, the buffer unit pool, and main-storage queues. INTRa also Section I: Introduction 5 attaches the Operator Control, FE Common Write, and On-line Test tasks and enables the user to override some INTRa parameters through the system console. The MCP runs under the control of the as task management routines. It is scheduled and dispatched according to the priorities included in the task control block (TCB) in the partition in which it is being executed. The Application Program in the System Assembling and Linkage Editing an Application Program A TCAM application program processes messages obtained from a TCAM MCP. The application program can run in a partition or region different from the MCP, or it can run as an attached task in the same partition or region. An application program needs only the OPEN, CLOSE, GET, and PUT macro instructions and some data set definition macro instructions. No resident routines need to be linkage edited with the object module. However, the user may wish to write application programs that use the following macro instructions to examine and modify the status of the MCP: • CHECK • CKREQ • ICOPY • ICHNG • MCOUNT • POINT • QRESET • TCHNG • TCOPY • TPDATE When any of these macro instructions are used, the linkage editor includes the corresponding resident modules in the load module. The load module is stored in a system library from which it is loaded for execution. Execution of an Application Program It is possible to run an MCP with no application program, but one or more application programs are usually being executed asynchronously with the MCP. In most cases an application program is loaded into the next highest-priority partition to the MCP. However, application programs may also be executed in the same partition as the MCP after being brought in by the system ATTACH facility. Application programs, like the MCP, run under the control of the as task management routines. They are scheduled and dispatched according to the priorities indicated in the task control blocks (TCBs) for the partitions in which they are being run. The primary difference between a TCAM application program and any other processing program is the requirement for and the implementation of interpartition communication. The various macro instructions that can be used in an application program are as follows: 6 OS TCAM PLM 1. TCOPY, ICOPY, QCOPY, and TPDATE. The corresponding resident routine for each of these macro instructions copies the requested information from the MCP partition, using address pointers stored in the AVT and in the terminal table. These tables are located by the communications vector table (CVT). 2. All other macro instructions. The routines invoked by the remaining macro instructions cause SVC Type I interruptions to the supervisory routines. A module within a partition can move data or control information from another partition into its own partition; however, that module must use an SVC either to move data from its own partition into another partition or to move data within another partition. Relationship of the OS Dispatcher to TeAM The operating system (OS) gains control from the TCAM task when the TCAM MCP has no work to perform and issues an OS WAIT macro. When OS gains control, it examines all the ready tasks in the system and passes control to the one with the highest priority. When a TCAM appendage has work for the MCP, it invokes the OS Post routine by branching to an entry point to pest the MCP event control block (ECB). This indicates to the OS Dispatcher that the MCP now has work to do and is vying for control of the system. OS can pass control to the TCAM task when it is the highest-priority task that is ready to be activated. TCAM resumes execution at the instruction following the WAIT that gave control to OS. TCAM posts the ECBs for its attached tasks when they are to be activated. When TCAM subsequently issues a WAIT, the attached tasks can vie to gain control from OS. Selected Options TCAM has certain optional features available. These features are optional in one of three possible ways: 1. Some of the functions of the feature are optional. 2. The presence or absence of the feature itself is optional. 3. The feature may be either resident or transient. The following sections discuss each of the optional features of TCAM. Operator CtMtroi The TCAM Operator Control facility provides a way for the user to dynamically examine or alter the status of his telecommunications network. A detailed description of the functions of this facility is included in the Operator Control section of the OS TeAM Programmer's Guide, Order No. GC30-2024. The TCAM user specifies at SYSGEN time whether he wants the Operator Control facility in his system to be supported by resident or transient routines. The control module of the Operator Control facility is always resident. If the user indicates that he wants the operator control support routines to be transient, these routines are called in whenever they are needed. If the routines are specified to be resident, they are all present in the system at all times. ApplicfltifJn Program Processing The application program services of TCAM enable a programmer to process messages from a telecommunications network with the same macro instructions Section I: Introduction 7 that he uses for local input/ output devices. Because the TCAM MCP performs the I/O operations, a completely device-independent application program can be written. The programmer need not be concerned with the time and devicedependent aspects of the telecommunications environment. A TCAM MCP can operate in the system without an application program or programs. However, if the user wishes to examine and process the data coming in from his terminals to a greater extent than is allowed by the macro instructions of the MCP, he must use one or more application programs. The macros specific to application programs are discussed in detail in the OS TCAM Programmer's Guide, Order No. GC30-2024. Line Queuing Options The TCAM user has the option of queuing either by line or by terminal, as specified in the TERMINAL macro for each terminal or group of terminals. Queuing by terminal is required for buffered terminals and for dial lines. Since queuing by terminal requires one destination QCB per terminal rather than one per line group, this method requires more main-storage' space. Message Queuing Options There are three types of queuing for messages: • Main-storage queuing • Reusable disk queuing • Nonreusable disk queuing The message queues may be maintained by anyone of the three methods or by a combination of main-storage queuing with backup on either reusable or nonreusable disk. In an MCP there are at most two message queues data sets: reusable disk with or without main-storage queues, and nonreusable disk with or without main-storage queues. The user specifies the type of queuing for a given data set by coding specified keyword operands of the macros that build the terminal table. The way in which the types of queuing are specified is discussed in detail in the OS TCAM Programmer's Guide, Order No. GC30-2024. The way that the various queuing types function is discussed under Queue Management in the Basic TCAM Concepts section of this publication. Logging The logging option allows the user to maintain a record of incoming or outgoing message traffic on a sequential medium. Message segments or full messages, as determined by the placement of LOG macros in an MH, are placed on an output device. The various types of logs and the corresponding MH subgroups in which a LOG macro appears, are: 1. Incoming header segments only (lnheader) 2. All incoming segments (Inbuffer) 3. Complete incoming messages (lnmessage) 4. Outgoing header segments only (Outheader) 5. All outgoing segments (Outbuffer) 6. Complete outgoing messages (Outmessage) Checkpoint! Restart Checkpoint/Restart is provided as an optional facility for the TCAM MCP at user-specified intervals (every 30 seconds to 65,535 seconds). By using the TCAM Checkpoint/Restart facility for the MCP and other TCAM facilities, such 8 OS TCAM PLM as sequence numbers, an effective restart can be accomplished in an application program. The checkpoint routines store tables and other control information necessary for a restart subsequent to a system failure or normal closedown. Restart of the TCAM job after a system failure is accomplished by initial program loading (IPL) the system again (if necessary), and loading the TCAM MCP. TCAM reinitializes the tables and pointers from the latest checkpoint record on the disk (unless CY is specified on the STARTUP parameter of the INTRO macro to suppress continuation start-up). After a system failure, the STARTUP=C or STARTUP=W operand on the INTRO macro causes TCAM to perform a continuation restart with a scan of the message queues. If STARTUP=WY is specified, a continuation restart with no message queues scan is performed. After a normal closedown, TCAM can either reconstruct the environment that existed before closedown (a warm restart) or it can reinitialize the system (a cold restart). A warm restart is specified by STARTUP= Won INTRO; a cold restart is specified by STARTUP=C. To include the Checkpoint/Restart facility in an MCP, the user has only to specify an OPEN for the checkpoint data set. As a result of this, the Checkpoint Executor is attached in the same region as the MCP. The other checkpoint modules can be either resident or transient, depending on what the user specifies at SYSGEN time. TeAM as a Startable Procedure The user has the option of starting a TCAM MCP or application program either by JCL in the system input device or by the START operator command at the system console. If the START command is to be used, the JCL for the MCP and the different TCAM problem programs must be cataloged on SYS 1.PROCLIB under individual procedure names. The user may then enter START and the procname for the program he wants, and job management immediately fetches the JCL at the procname and starts the program. Error Recovery Procedures The Error Recovery Procedure (ERP) routines are designed to diagnose and recover, if possible, from line errors occurring during a telecommunications operation. The error routines provide the following: • Automatic retry of all errors not involving data transfer. Data transfer errors are also handled by the EOB/ETB Handling subtask, if specified in the MH. • Automatic retry of text errors during a receive operation when the data is still available; that is, the PCI Appendage has not tposted the buffers containing the data following the last good EOB/ETB. • Statistical recording of all terminal errors. • Error messages to the primary TCAM operator console for all permanent errors. The ERP routines are optional in that they may be either resident or transient. The user specifies this option at SYSGEN time. Subtask Trace The Subtask Trace facility maintains a time-sequential table of the dispatching activity of the TCAM Dispatcher. Each time the Dispatcher activates a subtask, it completes an entry in the subtask trace table. Section I: Introduction 9 The presence of the Sub task Trace facility in the TeAM system is determined by the DTRACE operand of the INTRO macro in the MCP. If the operand is coded DTRACE=O, the facility is not included. If the operand is coded with a numerical value, that value determines the number of four-word entries reserved for the subtask trace table. The format of the subtask trace table is shown in the OS TCAM User's Guide, Order No. GC30-2025. Cross-Reference Table The TCAM cross-reference table is formatted if the CROSSRF=integer operand of the INTRO macro is assembled with a nonzero value. The numerical value of integer determines the number of four-word entries reserved for this table. Each time that a line is successfully opened, the Line Group Open routine (IGG01940) completes an entry in the table. The format of the cross-reference table is shown in the OS TCAM User's Guide. Order No. GC30-2025. TCAM in a Multiprocessing Environment TCAM operating in a multiprocessing environment increases throughput, availability, and flexibility. All TCAM appendages and SVC 102 cause the TCAM task to become ineligible to be dispatched in order to prevent TCAM disabled code from modifying TCAM control blocks while enabled TCAM code is executing. These modules set a flag in the TCAM TCB to indicate that the task is not eligible to be dispatched and then call the OS Task Removal routine. When the Task Removal routine issues an external interrupt to lock the other CPU, the other CPU loops on the lock. When the TCAM module completes its functions, it resets the TCB flag and zeros the lock before exiting. The other CPU then obtains the lock and dispatches the task of the highest priority on its ready queue. To prevent two enabled tasks from attempting to enqueue/dequeue on the same resource at the same time, each task issues a test-and-set instruction on a specific byte in the QCB before referring to the queue. The byte must be equal to zero before the task can update the queue, and the task must reset the byte to zero after completing the update. Time Sharing Option TCAM provides terminal support for the Time Sharing Option (TSO) under MVT when this option is requested on the INTRO macro. There are special macros to generate an MCP with MH routines to handle TSO messages. TCAM also supports application programs that are run under TSO in the foreground region. If the TSO option is specified, TCAM provides a conversational approach to terminal support-this includes support of the transmit and receive interrupt features, modifications to the scheduling of I/O operations, and editing of the data in TSO messages to make the data compatible with disk or tape. TCAM and the TSO control program run in different partitions. Modified message flow allows TCAM to route the messages to the TSO region. TCAM support for TSO also includes the ability to use 1050s and 2741s on the same dial line, the ability to simulate receive interrupts when they are not a feature of the hardware, and the ability to have the transmission code dynamically determined. 10 OS TeAM PLM In a mixed environment, time-sharing supported terminals can be shared by time-sharing applications and message-switching applications. General Poll Three types of polling are available for device invitation. The most common is specific poll, which invites each device to transmit. The next most common is the Auto Poll feature, which uses 2702-2703' hardware to perform specific polling without I/O interruption or CPU uitlization. The general poll is desired for a remote cluster of devices. It allows any device, if ready, to transmit without a specific invitation. General poll is ~ remote input technique in which special invitation characters are sent to a 2260 or 3270 device control unit to solicit transmission of data from all attached devices that are ready to send. General poll may be conducted with programmed poll or Auto Poll, both of which invite each individual device to send. General poll begins with transmission of the invitation characters. If a positive response is received, TCAM determines the identity of the device terminal originating the transmission message and puts this information in LCBTTCIN. An entire message is read from one device until an ETX is received. Each device can send only one message at a poll. When the ETX is entered a complete message has been received, and all buffers are tposted to the Message Handler, and the message is processed. Standard scheduling is performed as for any receive operation on a multipoint line. To receive the next message from the control unit, TCAM begins a new input operation; however, invitation characters are not re-sent (as in programmed poll or Auto Poll); the next message is read. This cycle continues until the device control unit indicates, by sending an EOT, there is no more data to be sent. General poll may also be terminated by the receipt by the control unit of a response other than an ACK, NAK, or ENQ. No interruptions are allowed during general poll except for conversational processing. Once the EOT is received, TCAM either transmits or polls the next entry in the invitation list. The user should be aware of the time constraints of the hardware involved. Teleprocessing On-Line Test Executive (TOTE) The Teleprocessing On-Line Test Executive (TOTE) is an attached subtask of TCAM, designed to control the selection, loading, and execution of on-line tests (OLTs). The on-line test function consists of three parts: TOTE, an on-line device configurator, and the individual teleprocessing device tests (OLTs). TOTE is the interface between TCAM and the on-line tests. The individual OLTs are intended to diagnose hardware errors, verify repairs, verify engineering changes, and test devices. TOTE conveys messages to the user about the test, schedules and controls the test, and prompts the user when requested or when an error in the format of a Test Request Message (TRM) is detected. The OLTs are transient and reside in a library On a system direct access device. Test selection is achieved by entering a Test Request Message (TRM) from a TCAM station, operator control terminal, or the system console. Test results are sent to the terminal controlling the test, unless an alternate printer is designated as a parameter or the option field of a TRM. Section 1: Introduction 11 Configuration Data Set TOTE also allows the user to enter changes to configuration data stored in a Configuration Data Set (CDS). The configuration data set contains descriptive data about the I/O units attached to the system: this includes telephone numbers, what devices are attached to which channel addresses, the features installed, and any other data the OL Ts might need to test all the equipment installed in a particular location. After the data set is generated it may be dynamically altered by answering questions presented by configuration request messages (CRMs). A CRM can be entered from either the system console (through the operator control facility) or a TCAM station. TOTE Requirements The following requirements must be met before executing TOTE: • The TCAM operator control facility must be initialized. • The OL T modules must have been placed in a library. • The configuration data set must have been built by a stand-alone, on-line test, support program (SOSP). • The terminals must be represented in the TCAM JCL by a DO card. The following requirements must be met before executing a device test: • The devices and communications lines used or tested must have been configured. • The devices used as the control terminal or alternate printer for the OL T, as well as the devices to be tested, must be on opened communication lines. • The communication lines to be tested must have been opened. All I/O for the OLTs is done by the EXIO macro. Upon receiving this request, TOTE usually builds an lOB using the data in the parameter list passed with the request. This request is linked to the test DCB, an ECB, a DEB, and the OL TCB. When all these blocks are properly prepared, an EXCP macro initiates the channel program. Abnormal Termination Recovery There is an entry point in the TOTE resident module (IEDQW A) that is entered at OL T ABEND. This module will set a flag to indicate that areas used by the OL T are to be cleaned up or freed when the control module next gains control. The flag also indicates that the OLT has terminated, and the reason for the termination is displayed on the system console. All lines and terminals allocated to the OLT are returned to the state in which they were found when the OL T was started; normal TCAM operations are resumed. 12 OS TeAM PLM Section 2: Basic TCAM Concepts This section discusses each of the three basic concepts that influence the control and functions of TCAM. The first concept, the method by which the TCAM Dispatcher manages the TCAM resources, determines the flow of control among the TCAM subtasks. The second and third concepts are the management of the queues and of the buffers, respectively. An understanding of these three concepts will help to clarify the charts in the Method of Operation section of this publication. The TCAM Dispatcher The TCAM Dispatcher is the control module of the TCAM system. The primary purpose of this module is to allocate and schedule system resources. The following sections describe how the TCAM Dispatcher allocates and schedules the system resources, for example, CPU processing time, main storage, I/O paths, and elements (primarily buffers and lines). The key to the mechanism is the ready queue, through which a resource is allocated to a subtask. The mechanisms of allocation are the twait and tpost functions performed by the TCAM subtasks. A twait schedules a subtask to be activated when a specific resource is available; a tpost passes an available resource to the ready queue. The actual implementation of twait and tpost are not exclusive functions of the subtasks; rather, the subtasks return to specific entry points in the TCAM Dispatcher to indicate the status of the resource. Dispatching is the process of providing a routine with an element and giving the routine control to handle the element. Elements, Queues, and Subtasks The physical resources of the system are composed of elements (for example, the buffer pool, a resource, is broken into individual buffers, the elements) with each element represented by a resource control block (RCB). An RCB is an 8-byte prefix to an element. The first four bytes are a pointer to the queue control block (QCB) that the element is to be associated with; the last four bytes contain a priority byte and a link field. There is at least one subtask that works with every type of element in the system. Each subtask is represented by a subtask control block (STeB), which contains the data necessary to activate the subtask it represents. The elements, and the subtasks that operate on these elements, are associated with one another by a third control block, the queue control block (QCB). Thus, a QCB has a pointer to the chain of elements under its control and a pointer to the chain of STCBs for the sub tasks waiting to operate on these elements. The chains are referred to as queues. Figure 2 illustrates the linkage of these queues to a QCB. Section 2: Basic TCAM Concepts 13 QCB Figure 2. TCAM QCB Linkage When a subtask needs an element, it can do one of two things: (1) request an element from the OCB that handles that particular element by tposting a request element to that OCB, or (2) insert its STCB into the STCB chain of the OCB to twait for the element. When the element is available, the subtask is dispatched. When a subtask has finished using an element, it gives (tposts) the element to the appropriate OCB. The TCAM Dispatcher gives this element to the first (highestpriority) subtask in the STCB chain of the OCB. In this case, subtask A in Figure 3 is dispatched. The subtask associated with STCB B in Figure 3 can be dispatched if subtask A indicates to the TCAM Dispatcher that it does not need to process the element. The STCB chain ends with a permanent STCB. STCB G in Figure 3 remains the last STCB in the chain. STCB C might point to a routine that does nothing more than chain elements into the OCB element chain. Subtask C has a lower priority than any other subtask that might use the element and, therefore, is dispatched only if each of the higher-priority sub tasks bypasses processing. Na elements available QCB Figure 3. Priority of Sub tasks on a QCB Figure 4 demonstrates the linkage when an element processed by subtask X is tposted to the OCB and placed on the element chain by subtask C. Subtask C can place the element in the OCB element chain only if subtask A and subtask B do not need the element and pass it down the chain to subtask C. 14 OS TeAM PLM Subtask X QCB Figure 4. Passing Elements to a QCB The Ready Queue The previous discussion points out that sub tasks gain control from the TCAM Dispatcher depending on: 1. The availability of elements, and 2. The priority of the STCB for the subtask. The TCAM Message Control Program is responsible for allocating CPU processing time to the various tasks under its control; it does so by using the ready queue. The ready queue is a chain of elements that represent all the work to be done in the TCAM system. The work to be done is represented by the various elements (RCBs) that appear on the ready queue in priority order. The purpose of the ready queue is to ensure that all elements are processed and dispatched with respect to priority and without one impacting the resources of another. To support dispatching while enabled for interruption, TCAM actually uses two ready queues. One is designated to be used by disabled appendages or by the disabled AQCTL SVC 102 routine for tposting elements, while the other is used by enabled routines. Although the two ready queues are not managed by the same technique, each is a ready queue because it contains elements (RCBs) to be processed by the various subtasks. TCAM manages the disabled ready queue by the first-in-first-out (FIFO) technique. The queue itself consists of two words: a one-word pointer to the first and a one-word pointer to the last element on the queue. Disabled appendages place an element (RCB) on the disabled ready queue by linking the new element to the element pointed to by the second word of the queue and by then updating the second word to point to the new element. Section 2: Basic TCAM Concepts 15 TCAM manages the enabled ready queue by the priority-FIFO technique. The TCAM Dispatcher has the responsibility for merging the disabled into the enabled ready queue just before dispatching. The enabled ready queue handles dispatching, and unless specified otherwise, it is the one usually referred to as the ready queue. The TCAM Dispatcher manages the ready queue by executing the sub task associated with the highest-priority element on its chain. Since the element has an RCB as its prefix, the Dispatcher can refer to the correct QCB in order to pass control to the first subtask represented in the STCB chain of the QCB. The subtask processes the element and then returns control to the TCAM Dispatcher, which can then examine the next element on the ready queue. Figure 5 illustrates the chain of linkage from the ready queue to a subtask when an element is on the ready queue. Ready Queue Element QCB t Element Chain Priol ity Elements link STCB t STCB A Key Element A Key QCB Pliolity Link t Link Priority STCS S Key Element B Key QCB t Priority P, iOi ity link link 1\.1L ___ .___ _ _ Subtask Code Figure 5. Linkage from the Ready Queue to Subtask Code When the Dispatcher gains control it removes the highest-priority element from the ready queue by placing the address of the element in register 1. The Dispatcher then inserts the link field of the element in the ready queue to point to the next element. When there are no elements for the ready queue, it points to the "dummy last element" in the A VT (A VTDELEM). This element has a priority of zero. Figure 6 demonstrates the change in linkage between the ready queue and its elements during an update of the ready queue by the Dispatcher. 16 OS TCAM PLM Register 1 Ready Queue Element l' "" ""- "" Element A " "- " QCB Priority Link "" LEGEND - - - i.... Original Linkage ==::> Data movement to update the ready queue - Key - - . . Linkage after ready queue update "", "- l' Element B "- ------------ Key QCB Priority Link l' Figure 6. Pointers during a Ready Queue Update Principle of Tpost and Twait The technique of passing an element from one queue to another queue is called tposting. When the subtask that an STCB points to finishes processing an element and wishes to allow another routine to process that same element, the subtask tposts the element to the second routine. The subtask achieves the tpost by placing in the RCB of the element a pointer to the QCB that controls the STCB for the new routine, and then returning to the TCAM Dispatcher with an indication that the element is to be placed on the ready queue. The second technique for handling resources is called twaiting. When a subtask needs elements to process, it returns control to the TeAM Dispatcher indicating that it has finished the processing that it can do at this time. The twait is implemented by the TCAM Dispatcher. The Dispatcher places the STCB for this subtask in the STCB chain of the QCB to which the resource that the subtask needs to complete processing will be tposted. When an STCB is in the STCB chain of a QCB and the subtask for that STCB does not have control, the subtask is twaiting. When an application program needs either to place an element on the disabled ready queue, to post an event control block (ECB) as complete, or to move data from one partition to another, a special technique is used. This technique is performed by the AQCTL SVC 102 routine, which uses pointers in the AVT to refer to the disabled ready queue. Since AQCTL is a resident Type I SVC, the actual processing occurs in the OS Supervisor, out of the control of either the application program or the MCP. Section 2: Basic TCAM Concepts 17 Buffer Management The TCAM network has one buffer unit pool that contains buffer units of one size. These buffer units are the basic building blocks from which buffers are constructed. Henceforth, in this publication unit refers to a buffer unit. Messages entering a TCAM network are placed in buffers, which are user-defined areas of main storage used for handling, queuing, and transferring message segments between all lines and queuing media. (A message segment is that portion of a message contained in one buffer.) A buffer has two parts, one that contains control information (the buffer prefix) and the other that contains all or part of the message. Buffers must be at least 35 bytes long, and may be no longer than 65,535 bytes. The size of a unit is specified in the UNITSZ= operand of the INTRO macro of an MCP, and the number of units in the buffer unit pool is equal to the sum of the numbers specified by the LNUNITS and MSUNITS operands of INTRO. For internal management purposes, TCAM adds 12 bytes as a prefix to the userspecified unit size. These 12 bytes are called a unit control area. Thus, if a user defines a unit size of 60 bytes (UNITSZ=60), the size of the unit is actually 72 bytes. The size of a buffer for a line group is specified by the BUFSIZE= operand of the DCB macro for a line group data set. All buffers used by a given line group are the same size, but each line group may use buffers that differ in size from those assigned to other line groups. (The buffer size can be overridden on a terminal basis for send operations by using the BUFSIZE= operand of the TERMINAL macro.) TCAM constructs buffers by linking together the number of units necessary to create a buffer that contains a number of usable bytes equal to or greater than that specified by the BUFSIZE= operand of the DCB macro for a given line group. (The 12 bytes added to each unit by TCAM are not considered in defining the size of the buffer; the user should consider only the number of bytes he specified in the UNITSZ= operand of INTRO.) For example, if UNITSZ:=60 in the INTRO macro and BUFSIZE= 120 in a line group DCB macro are specified, TCAM links together two units in building each buffer for that line group. There are two types of buffers-header buffers and text buffers. A header buffer contains all or part of a message header. A text buffer contains message text only. A buffer prefix is a control area contained within each buffer of the system. The user must allow room for the buffer prefix in defining his buffers. TeAM fills the buffer prefix area with buffer control information. There are two kinds of buffer prefix. The first-buffer prefix is 30 bytes long and is contained within the first buffer of a message. Any subsequent-buffer prefix is 23 bytes long and is contained within all buffers after the first. 18 OS TeAM PLM Thus, there are two kinds of control areas associated with buffers: the 12-byte unit control area associated with each buffer unit and assigned automatically by TCAM, and the 30-byte or 23-byte buffer prefix assigned to each buffer by TCAM in an area defined by the user. Each unit must be big enough to contain a header prefix plus three bytes of message text (35 bytes) and may be no larger than 255 bytes. A subsequent buffer contains more bytes of actual message than the first buffer, since a subsequent-buffer prefix is 7 bytes shorter than the first-buffer prefix. The 12-byte unit control area that TCAM assigns to each unit is used to manage multi-unit buffers. This control area has different functions dependent on the status of its buffer. It may contain pointers, be used as an RCB, or be used to generate a channel program. The initial format of this 12-byte area is defined in Figure 7. Offset o 4 Key QCB address B Address of the first un it of the nex t logical buffer that is qssigned Address of the next unit of this buffer Figure 7. Unit Control Area Figure 8 shows how two buffers assigned to a line group look at the time of an initial request if the user specifies the following: INTRO DCB UNITSZ=60 BUFSIZE= 1OO,BUFIN = 2 In Figure 8, each buffer consists of two units linked together by the pointer in the third word of the 12-byte unit control area. The two buffers are linked together by the second word of the 12-byte unit control area. Note that in this situation the first eight bytes of the unit control area of the first unit in each buffer is functioning as an RCB. When the user's program requests and obtains buffers, they look like the ones in Figure 8. However, when a line is ready to read or write, the function of the 12-byte control area changes. TCAM then uses the area to contain the channel program that operates on the unit. TCAM places a CCW in each RCB field, and the pointer in the third word becomes a TIC to the next unit. The 30-byte prefix contains a count of the number of units in a logical buffer; this indicates where one buffer stops and another starts. To tpost a buffer, TCAM places only the first unit of that buffer on the ready queue. All other units can be located through the chain created in the TIC field of the unit control area. Section 2: Basic TCAM Concepts 19 Buffer 1 - 12 Bytes r l,Init Control Area 11 Nex\ll Buffer 30 Bytes 30 Byt8$ 30-byte Prefix Message Header and/ar Text Next Unit \ Buffer 2 40 Bytes 12 Byt8$ MHsage Header and/or Text Unit Control Area I l 20 Bytes Unused 0 ~ 12 Bytes Unit Control Area J [t 0 37 Bytes 23 Bytes 23-byte Prefix Message Header and/or Text Next Unit \ 40 Bytes 12 Bytes Unit Control Area I I M8$sage Header and/or Text 20 Bytes Unused 0 Figure 8. Buffer Units Chained to Form Buffers TCAM uses an element request block (ERB) to make requests for buffers for a line group. Initial requests for buffers for a line are ma!ie when a scheduler tposts its ERB, which contains the number of buffers requested, to the buffer request QCB for a receive operation, or to the disk I/O QCB for a send operation. Subsequent requests for buffers are handled by the TCAM Program-Controlled Interruption (PCI) Appendage. When the PCI= operand of the DCB for a line group is coded to allow program-controlled interruption, a PCI may occur during the filling or emptying of the first and each subsequent buffer assigned to that line group. When the PCI is received, the PCI Appendage gains control. When PCI==A is coded on the DCB macro and the first interruption occurs, PCI Appendage assigns to the line group a number of buffers equal to the difference between the maximum number assigned to the line group (specified by the BUFMAX= operand of the DCB) and the number initially assigned to the line group (specified by the BUPIN == operand of the line group DCB for a receiving operation and by the BUFOUT= operand for a sending operation). On subsequent PCIs, the appendage deallocates the buffer immediately preceding the one being filled or emptied and requests a new buffer in order to keep the number of buffers assigned to the line group equal to that specified by the BUFMAX= operand. (For a sending operation, the buffer units are returned by the buffer return QCB to the buffer unit pool-the element chain of the buffer request QCB; for a receiving operation, the buffer is sent to the Message Handler for the line group for that DCB.) 20 QS TCAM PLM When PCI=R is coded, the appendage de allocates the previous buffer when the second and subsequent PCls occur, but makes' no requests for additional buffers. If program-controlled interruptions are not permitted (PCI=N) or additional allocation is not allowed (PCI=R), the number of buffers assigned must be sufficient to handle the entire transmission, since no new buffers are allocated until the transmission is complete. If PCI=N, there is no de allocation of buffers until the transmission is complete. Figure 9 shows the result of tposting an ERB with a count of three to the buffer request QCB. The ERB chain of the LCB points to the first buffer. This figure demonstrates the change in linkage after units have been transferred from the buffer unit pool to form a buffer chain off the requesting ERB. The physical location of the units in main storage does not change-the various pointers are changed to reflect the new organization. Buffer Request OCB Control Area '\ Link t Buffer Unit Pool Unit t Element Chain Key \ STCB Chain \ \ \ I \ I '- \I , \ I , ,...--_ _.-----'-_ _ _ _----., \ I \1 L-.-.---L--_ ERB t Key / OCB / // Priority Status 03 Link t Chain --- 03 --- --- --- ---------- ~ /\ \ \ \ \\ \ \ \ \ "- " '" 1----.. Etc. LEGEND --. Linkage before ERB is serviced _ - -. Linkage after ERB is serviced Figure 9. Effect of an ERB on Buffer Unit Linkage Section 2: Basic TCAM Concepts 21 Queue Management The incoming group of an MH performs user-specified functions in a buffer that contains a message segment. After these functions are completed, the segment is tposted to a destination QCB, which represents a line, terminal, or application program. Each destination QCB in a TCAM MCP is assigned to one or more specific message queues data sets. When a buffer is tposted to its destination QCB, it is placed on the appropriate message queue in the associated message queues data set to wait its turn to be sent to the specified destination. The message queues data set to which a message segment is to be directed may be in main storage or on a direct-access storage device. Each message queue within a data set contains segments that are to be transmitted on a certain line or to a certain terminal, or that are to be processed in a specific application program. TCAM supports five types of queuing to a message queues data set: • • • • • Nonreusable disk queuing Reusable disk queuing Main-storage queuing Main-storage queuing with nonreusable disk backup Main-storage queuing with reusable disk backup The following sections discuss the functions of these types of queuing. Nonreusable Disk Queuing Queuing a message on a direct-access storage device is referred to in this publication as disk queuing. The fields A VTNADDR and A VTRADDR in the A VT contain the index to the nonreusable and reusable disk relative record numbers, respectively, of the next record to be assigned. In nonreusable disk queuing, the Destination Scheduler initiates a closedown when a user-specified percentage of the disk message queues data set has been filled. If, before the closedown is completed, there are more messages in the system than the data set has room to accommodate, TCAM issues an ABEND. The EXCP Driver routine assigns disk relative addresses across the volumes of a multivolume disk message queues data set in such a way that the next relative record address after the last record on a track is on a different volume. The routine numbers all the records for a given track consecutively before assigning addresses on a track of a different volume. In addition, the routine numbers all the tracks of a cylinder before assigning addresses on a different cylinder. Figure 10 illustrates the disk record numbering scheme for a data set that has four records per track on three volumes. At MCP assembly or restart time, each destination QCB is assigned a unique relative record number for the first buffer segment tposted to it. As a result, when the first message enters the TCAM system, the A VT value is one greater than the total number of destination QCBs. The Destination Scheduler stores the address to be used for the first unit of the first buffer of the next message received in the QCBDNHDR field of the destination QCB-this is referred to as the next-message location. The routine stores the address for the first unit of the next buffer of the current message in the SCBNTXT field of the SCB-this is referred to as the next-buffer location. 22 OS TeAM PLM Volume 1 Volume 2 Volume 3 12 13 14 15 16 17 18 19 20 21 22 23 ,, / " / / / ,, ,, / / / / ,, ,, / / / ," / ,, Cylinder Track 0 0 0 1 2 3 4 5 6 7 8 9 10 11 1 12 13 14 15 16 17 18 19 20 21 22 23 2 24 25 26 27 28 29 30 31 32 33 34 35 3 36 37 38 3.9 40 41 42 43 44 45 46 47 4 48 49 50 51 52 53 54 55 56 57 58 59 5 60 61 62 63 64 65 66 67 68 69 70 71 6 72 73 74 75 76 77 78 79 80 81 82 83 7 84 85 86 87 88 89 90 91 92 93 94 95 8 96 97 98 99 100 101 102 103 104 105 106 107 9 108 109 110 111 112 113 114 115 116 117 118 119 0 120 121 122 123 124 125 126 127 128 129 130 131 1 132 ... 1 Relative Record Number Relative Record Number Relative Record Number Figure 10. Assignment of Disk Message Queues Data Set Relative Record Numbers Across Three Volumes The principle of assigning next-message and next-buffer values allows queuing ahead on the disk. Records for buffer units are assigned before the buffer is received. In the example in Figure 11, there are five possible destinations. For each of these, the MCP assembly has preassigned record addresses (marked A through E) with relative record addresses zero to four. The applicable code for this example is: INTRO UNITSZ= 100 LINEA DCB BUFSIZE=300,PCI=(A,A) LINEC DCB BUFSIZE=800,PCI=(A,A) Three messages arrive in the following order: 1. 500 characters-from Line A to Line D 2. 3000 characters-from Line C to Line B 3. 30 characters-from Line A to Line B Section 2: Basic TCAM Concepts 23 Figure 11 shows the situation in which TCAM reads a buffer (the first buffer of the first message) from line A. The 30-byte prefix contains the information that this message is to be sent to line D. The message segment consists of three units (since BUFSIZE=300 and UNITSZ=100) and does not contain an end-ofmessage (EOM) indicator. The Destination Scheduler assigns the first unit of this header buffer to the preassigned location for destination D, record 3. The Scheduler then preassigns the next-message location for destination D to the next available disk location at record 5, and places a pointer to record 5 in the prefix of the buffer that will start in disk record 3. The Scheduler then assigns two additional units to the next available disk locations at records 6 and 7. The Scheduler inserts a pointer to the first of these records in the prefix of the buffer that will start in disk record 3. Since the 300-byte buffer does not contain an EOM indicator, the Destination Scheduler preassigns a record number (8) for the first unit of the next buffer to arrive for this message. The Scheduler places a pointer to record 8 in the prefix of the buffer that will start in disk record 3. The records are actually written after the three pointers are included in the prefix of record 3. Figure 11 shows the records and pointers after they are written on disk. In this queuing scheme the additional records are always contiguous, and the first unit of a subsequent buffer of a message is always contiguous to the last unit of the previous buffer. In Figure 12 the first buffer of the 3000-byte message from line C for line B is queued. The buffer consists of eight units since BUFSIZE for line C is 800 bytes. The Destination Scheduler places the first unit of the message in the preassigned slot for destination line B. The scheduler then preassigns a location for the first unit of the next message for li~e B to record 9, the next available disk location. The scheduler places the additional records (units) for the current message segment in disk locations 10 through 16. Since this buffer does not contain an EOM indicator, the scheduler preassigns the next-buffer location to record 17. In Figure 13, the second buffer of the message for line D is queued. This is a three-unit buffer with an EOM character in t;he last unit. The DestinationScheduler places the first unit in the next-buffer slot of line D at record 8 and places the two additional records in the next available disk locations, records 18 and 19. No preassignment for the next-buffer location is made because of the EOM character in this buffer. The scheduler preassigned the next-message slot for line D to record 5 when the first buffer of this message was queued (see Figure 11). In Figure 14, the 30-byte message from line A to line B is queued. Since this message is contained within a single unit, only that unit must be written on disk. The Destination Scheduler places this unit in the preassigned next-message location for destination B, record 9. No next-buffer location needs to be preassigned, but the scheduler changes the next-message location for line B to disk record 20. The next available disk location is now record 21. Figures 11 through 14 do not illustrate all the disk record pointers. However, Figure 15 shows the pointers mentioned above, as well as the pointers from each subsequent buffer of a message-to the first buffer of the message. These pointers are the base for the queue-back chain to be discussed next. 24 OS TeAM PLM Unit Control Area 30-Byte Prefix Relative Record Unit Control Ar --- Conventions Used: Necessary supporting functional flow c:] ( I c=J TCAM control flow ""'"'" ________> LEGEND: ""m,,,, """'00.' fl~ __________ J, ... --------- -'" ... ..> ," ========::::::> Optional functional flow Data areas MCP or Application Program Macros Opo- Co.,"" Area referred to or filled with data • • • • • • • • • • Optional supporting functional flow SVCnnn :> --------...,,.~ ------------+- System control flow Linkage Previous linkage ""lvl,., J ,3 r Inclusive areas Exclusive areas Method of Operation Introduction Item Description 1. The left area of the diagram contains the input required to perform a given function. This input can be data areas, registers, parameter lists, and the like. When more than one field in a data area is refered to, the fields are illustrated schematically, rather than contiguously. Contiguity is shown when possible. In like manner, these fields are represented sequentially whenever possible. 2. The central area of the diagram contains the processing steps required to perform a given function. The numbering of these steps does not necessarily indicate sequence, as some steps are executed concurrently. In some instances, processing steps are further subdivided into substeps, indicated by lowercase alphabets. The information in this processing area is presented on a high level; see the accompanying extended descripti~n for each diagram for more detailed information. The numbers associated with the processing steps correspond to the numbers in the extended description section. 3. The right area of the diagram contains the output resulting from the processing step. Just as with the input, the output can be in the form of data areas, parameter lists, addresses in registers, and the like. The same conventions are applicable to both input and output. 4. When input is for a particular sub step of processing, the data flow arrow from the input area penetrates the processing box. When input is for an entire step, the arrow does not penetrate the box. Note: Sometimes the input to or output from a particular step will be represented in a detailed manner the first time, while subsequent references to the same input or output will be less detailed. w ~ o· ..,::s rs:: ~ [ o .... o I· ::s .., 1.0 ~ II o (IJ Controlling the TCAM System ~s:: 1 2 The TCAM Dispatcher AQCTL SVC 102 "I:j ~ j 11 • Defining the System/Network 1 2 3 4 Executing INTRD Opening the Data Sets Executing READY Initializing the Application Program ~ Processing the Message ~ 1 / I I , ~ I I I I MCP/Application Program Interface ,., \ I I , I \.' 3 /' ,'\, ", 2 ~ MCP Processing I I '" Application Program Processing Legend: _____. . . , ) - ------_ ...... , -------'.".' ' ... , ;> P"""'Y fu""',o~' ,,~ •• •• Optional functIonal flow 1 2 Necessary supporting functional flow ......... = •• •• Optional supporting functional flow Checkpoint Restart .. Closing the System/Network 1 2 MCP Termination Application Program Termination Method of Operation Charts Overview ~ ~ o· ::I w s:: a &:o ...., o '0 ~ o·~::I -"'" A. DEFINING THE SYSTEM/NETWORK shows the operations that must be performed before TCAM can be activated. These operations include defining and initializing control blocks and work areas, and opening data sets. Once this is done, TCAM is ready to process a message. B. CONTROLLING THE TCAM SYSTEM describes the TCAM dispatcher and SVC 102 as tools used by the message control program (MCP) to process a message. Control passes from the MCP to the TCAM dispatcher and/or SVC 102 as their functions are needed. C. PROCESSING A MESSAGE traces a message through the receiving, queuing, and sending functions. Application-program message processing is shown as an optional subset of MCP message processing. D. CHECKPOINTING/RESTARTING THE SYSTEM describes the TCAM option that provides recovery from a system failure or restart after normal closedown. If checkpoint/restart is activated, it receives control from and passes control back to the message processing routines. E. CLOSING THE SYSTEM/NETWORK describes the MCP closedown, and if application programs are active, their closedown. This is the last function performed in the TCAM system. .,.. to.) o til 11 DEFINING THE SYSTEM/NETWORK ~ "1:1 ~ • •o Opening the Data Sets Executing INTRO • Message Queues Data Set Checkpoint Data Set . . Line Group Data Set (2 parts) ,--, •I'" ' r·... .~ • ===>- Legend: P"""'Y _____ .1, f"",do~1 fl _ , -----,...,," > = Optional functional flow ........ , "7- ,~' Initializing the Application Program (2 parts) • Executing RfADY Chart A Defining the System/Network g> !. w ~ [ o.... o a '" o·::s .-.w Description Chart No. Executing INTRO describes using the parameters from the INTRO macro to define and initialize data areas and to create buffers and trace tables. Al Opening the Data Sets Message Queues Data Set A2-I Checkpoint Data Set A2-2 Line Group Data Set A2-3 Application Program Data Set A3 Executing READY describes building a parameter list for the TCAM dispatcher and activating the ready queues and destination queues. A4 .j>o. .j>o. Chart 0 CVT IZl Al Executing INTRO 11 r o-,l ~ s::: "1:1 ~ ~ rh~nnDt:: 1'n t Initialize the MCP a b AVT field Determine if TCAM is already in the system INTRO key word Override the INTRO parameters C Update the 2 AVT Scramble the password I Regsoter 0 Register 1 i Scrambled password DTRACE for MCP security 3 Obtain main storage for and format the buffers, trace areas, CPBs, COMMBUF master QCB, STCBs and data areas 4 a Check and update references to the 5 I la OLTEST Termonal Table I Termname Table I ITTl TT2 TT3 TT4 Get main storage for the termname table b CIB CKREOS LNUNITS CROSSRF terminal table Attach the operator control, TOTE, and FE Comwrite tasks .~- CPR CDS CPINTVL COMMBUF ~&w 1 COMWR ITE::' ,~~... r KEYLEN t UNITSZ ~ LNUNITS l MSUNITS ~ INTVAL DLQ TOPMSG STARTUP RESTART MSMIN MSMAX MSUNITS CPB Chart Al Executing INTRO--Description (1 of 2) Description 1. If CVT + 240 (CVTAQAVT) is nonzero, the MCP is already in the Routine Register Usage IEDQOA Rl R15 system. Return to IEDQOA with an error return code of 4; otherwise, continue processing. ~ () ::to o ::s w I ....o o l ::s .j>. 0. I-AVT address O-return code 1b Check for valid keywords and parameters. Keywords that may be changed are STARTUP, LNUNITS, MSUNITS, KEYLEN, RESTART, UNITSZ, CPINTVL, CONTROL, PRIMARY, INTVAL, PASSWRD, CKREQS, CPB, CPRCDS, CROSSRF, COMWRTE, TRACE, DTRACE, CIB, MSMIN, MSMAX, DLQ, OLTEST, and TOPMSG. 1c Store the requested keyword parameters in the A VT. Return to IEDQOA with a return code of 0 indicating successful completion. 2 Get the password from AVTP ASWD (eight bytes) and rearrange the characters of the password. IEDQE6 RO and RIO-scrambled password 3 Get main storage for and initialize the following areas, as requested: Main-storage message queues data set Channel program blocks Trace tables Cross-reference table Line buffers COMMBUF Master QCB STCBs Data areas Return to IEDQOA with a return code of X'OO' for successful, or X'OS' for unsuccessful, completion of the GETMAIN operation. IEDQOA Rl R14 R15 I-AVT address O-IEDQOA address O-return code (This page left blank intentionally) 46 OS TeAM PLM Chart Al Executing INTRO-Description (2 of 2) Description 4a Get main storage for the termname table and store the table address in AVTRNMPT. Sort the termname table entries into collating sequence. Recalculate the termname table offsets for distribution, cascade, and invitation lists that refer to specific entries in the table, and for alternate destinations. 4b If requested, store the offsets of the primary operator control terminal in AVTOPCON and the offset of the dead-letter queue in AVTDLQX. If Routine Register Usage IEDQOA RI RI5 I-AVT address O-return code RI5 O-return code the dead-letter queue is specified as a TSO terminal, issue an error message and place zeros in AVTDLQX. The following return codes are set before returning to IEDQOA: X'OO'-routine executed successfully X'12'-insufficient main storage available for GETMAIN macro X'16'-terminal definition error X'20'-primary operator control terminal definition error 5 Attach the following tasks: Operator control task-address in AVTOPECA TOTE (Terminal On-Line Test Executive)-address in AVTOLECA COMWRITE (FE Common Write )-address in A VTCWECA Load the following routines, if requested on the INTRO macro: System delay subtask (IEDQHI), if the system delay interval (AVTINTVL)is not equal to zero. Operator Awareness Message Router (IEDQNX), if the system console is not the primary operator control terminal. Place its address in AVTNX. - g' ~ o· ::t w 3: ~ ::>" 8- o ...., o Io· ::t ~ -...l - - -_ .. __ .. _ .. _- ------ -- - --- --- -- -- IEDQOA - -- .... 00 Chart A2-1 Opening the Message Queues Data Set o til 1 Find the number of ~;s:: extents on this data set '1:1 ~ 2 Obtain main storage for and initialize the DEB and any DEB extents DEB 3 Initialize one lOB for each extent SYS1. SVClI B 4 DCBOPTCD SYS1.SVCLlB AVT I : I I Load the TCAM dispatcher 5 a Load the EXCP :> driver, the reusabi Iity-copy subtask, and the Checkpoint Channel End appendage b Load the Disk End appendage I DEB Chart A2-1 Opening the Message Queues Data Set-Description Description Determine the number of extents from the DS1NOEPV field of the DSCB. DSCBs are built by the system open routines before TCAM open. IGG01931 R1 I-DSCB address 2 Issue a GETMAIN macro for main storage (from subpool 234) for the DEB and any DEB extents. Initialize the following DEB fields: DEBTCBAD-TCB address for this DEB DEBDEBAD-next DEB address DEBNMEXT-number of DEB extents DEBDCBAD-address of DCB associated with this DEB DEBUCBAD-address of UCB associated with this data set IGG01930 R1 I-DEB address 3 Build the lOBs in the line control blocks (LCBs). Initialize LCBECBPT with the ECB address and LCBDCBPT with the DCB address. Update the AVTIOBR field (address of a series of lOBs-reusable disk queuing) and A VTIOBN field (address of a series of 10Bs- nonreusable disk queuing). IGG01931 4 Load the the TCAM dispatcher from SYSl.SVCLIB (IGG019RB or, if the DTRACE= value is greater than zero, IGG019RO). Place the TCAM dispatcher address into A VTEA. Place a pointer to the AVT address at CVT +240. IGG01934 5a If the DCBOPTCD field is X'01' (OPTCD=R), load the reusabilitycopy subtask. If DCBOPTCD is X'02' (OPTCD=L), determine if the MSUNITS= value is not equal to zero (AVTTOTNC:#=O). Load the reusability-copy subtask in AVTIA. If the DCBOPTCD field is X'20' (OPTCD=C), indicating a checkpoint DCB, the open routine loads the Checkpoint Channel End appendage (IGG019RA); the number of pages occupied by the appendage is placed in the high-order byte of the appendage address field (DEBCEA). ~ ::s .." is: o "0 o·~::s 01>- \0 Register Usage 1 a.o [" o ..., Routine 5b If the AVTCPBNO field (the CPB= value from the INTRO macro) in thethe AVT is equal to 1, load the Disk End appendage for a single CPB (IGG019RK); otherwise, load the Disk End appendage (IGG019R2). Both modules contain the Start I/O appendage for disk . u. o Chart A2-2 Opening the Checkpoint Data Set o AVT rn (i AVT ~ ) "1:1 ~ >11 Obtain main storage for the checkpoint work area SYS1.SVCLlB DEB ~====>l2 Obtain the Checkpoint Disk End appendage AVT Checkpoint Work Area 1 >13 Initialize the checkpoint work area CKPIOB (40 bytes) CKPCCWS (32 bytes) .Jo---v'I4 Determine the disposition: AVT P .---... -- 1100 OISP=NEW '1 i> a Cold restart • determine the size of the checkpoint records and the number of disk records required to contain the environment record. //00 OISP= OLD INTRO STARTUP= 1 C lf CY 1100 OISP=OLO INTRO STARTUP= • initialize the checkpoint data set. [w] WY ~=~i~>b Warm restart transfer control to Checkpoint/ Restart Chart A2-2 Opening the Checkpoint Data Set-Description (1 of 2) Description 1 '..,::s I o ...., o "CI S!i g. ::s u. ..... Use AVTNCKPR and AVTCPRCD to calculate the storage needed for a checkpoint work area. A VTNCKPR-maximum decimal number of destination queues (obtained from the CKREQ parameter of the INTRO macro) in use at any time for application programs using a CKREQ macro. AVTCPRCD-number of environment records (obtained from the CPRCDS= parameter of the INTRO macro) to be retained in a checkpoint data set at anyone time. Issue a GETMAIN macro to obtain the necessary main storage and place the address of the work area into AVTCKGET. For error conditions, IGG01941 sends an error message to the system console, sets AVTCKGET to zero, and passes control to the next module in the where-to-go table. Error conditions: • Insufficient main storage for GETMAIN • Disk II0 error while reading the control record of a checkpoint data set. 2 Load the Checkpoint Disk End appendage from SYSl.SVCLIB. Calculate the amount of main-storage occupied by the appendage and place that value in the high-order byte of DEBCEA. 3 Get the address of the work area from A VTCKGET and build a 40-byte lOB beginning at CKPIOB. Build a 32-byte channel program beginning atCKPCCWS. Routine Register Usage IGG01941 R2 R8 R9 R15 O-checkpoint work area address I-address of current entry in where-to-go table O-address of next entry I-AVT address O-return code ~ Chart A2-2 o ~ - - the Checkpoint Data Set-Description (2 of 2) Description I'll ~ Openin~ 4 Determine the type of start or restart necessary by examining the following fields: Normal or abnormal closedown-checkpoint disk record +0 (CKPFLAGS) Disposition-JFCB+S7 (JFCBIND2) X'40'-OLD data set X'SO'-MOD data set X'CO'-NEW data set Startup-AVT + 1052 (AVTBIT3) C-cold restart W-wann restart Perform the restart necessary according to the following input specifications: DISP=NEW XCTL to the Checkpoint Disk Allocation routine. DISP=OLD, S=C, normal closedown XCTL to the Checkpoint Disk Allocation routine. DISP=OLD, S=C, abnormal closedown XCTL to the checkpoint/restart modules and scan the message queues. DISP=OLD, S=CY, normal closedown XCTL to the Checkpoint Disk Allocation TOutine. DISP=OLD, S=CY, abnormal closedown XCTL to the Checkpoint Disk Allocation TOutine. Routine Register Usage I Chart A2-2 Opening the Checkpoint Data Set-Description (2 of 2) Continued Description U'l (1) o·::s~ w a= ~ [ o ...., o '0 ~.::s v. w 4. Scan the TCAM tables to determine the size of the environment record and the number of disk records needed to contain it. Calculate the number of each type of checkpoint record that will fill one track of the checkpoint data set. Use the device type index from the UCBTYP field of the UCB and the I/O device table (address at CVTZDTAB) to calculate the number of tracks in the checkpoint data set. Use the maximum number of priority QCBs to be used for anyone application program destination QCB plus the length of the longest option area for any terminal entry to calculate the length of a CKREQ record. The length of an incident record is equal to the length of the longest option area or the length of the operator control data area, whichever is greater. DISP=OLD, S=W, normal closedown XCTL to the checkpoint/restart modules and do not scan the message queues. DISP=OLD, S=W, abnormal closedown XCTL to the checkpoint/restart modules and scan the message queues. DISP=OLD, S=WY, normal closedown XCTL to the checkpoint/restart modules and do not scan the message queues. DISP=OLD, S=WY, abnormal closedown XCTL to the checkpoint/restart modules and do not scan the message queues. 4b Format the checkpoint data set. The number of environment records is at AVT+681 (AVTCPRCD); the number of CKREQ records is at AVT +453 (AVTNCKPR). There is one control record, and the remainder of the disk space is used for incident records. Routine IGG01949 Register Usage , I 01 .j>. oen Chart A2·3 Opening the Line Group Data Set (Part 1 of 2) 1 Initialize the line group: , / / DO TIOT a Determine the number ~ of lines in the line group ~ ." ~ b Obtain main storage for and initialize a DEB UCB c Initialize channel programs for the device d Obtain main storage for and initialize an LCB for each line e Place the send scheduler STCB in the STCB chain of the destination QCB and of the LCB DCB LCB Chart A2-3 Opening the Line Group Data Set-Description (1 of 2) Description 1a Examine the TIOEWTCT field of the task I/O table to determine the number of lines in this line group. IGG01935 1b Issue a GETMAIN macro to get storage from subpool 234 for the DEB. Initialize the DEBUCBAD field with the UCB address from the TIOT (TIOEFSRT). UCBORSV is the address of the DEB for the first user on the queue for this device. Determine the size of the LCB. If this is the first OPEN for the line group, transfer control to IGG01932. If not the first OPEN, continue. IGG01936 1c Use the information from the UCBTYP fields of the UCBs to build channel programs for each line in the line group. 1d Issue a GETMAIN macro to get an LCB for each line in the line group. Divide the LCB area into individual LCBs, and put the lOB address (LCB+32) into DCBIOBAD. 18 Place the Send scheduler STCB in the STCB chain of the destination QCB. If send priority is specified, move the Send scheduler STCB into the STCB chain of the LCB. SCBDESTQ is the address of the destination QCB and QCBSTCHN is the address of the first element in the STCB chain. _ ~ 8-. o ::s w .. :s:: g "'....,o" o ~ ~ o·::s U\ U\ Routine . . _--- -- ------ ------- Register Usage R2 R13 IGG01936 IGG01937 -- I~urrent DCB address O-total number of CCWs 0\ '" Chart A2-3 Opening the Line Group Data Set (Part 2 of 2) o rn SCB f Set up an SCB for each dial AVT ~;s:: LCB 1 (cont'd) line "tj ~ Cross-Reference Table Entry 9 Initialize any cross-reference table entries SYS1.SVCLlB 2 :::>I I Load the following and store their addresses AVT a The TCAM dispatcher b The appropriate send and receive schedulers UCB 1I1 C The Start-Up Message routine d The PCI appendage and the appropriate line end appendages Terminal Table e 3 lCBCONCT (X'SO') t-----v'1 The special characters table Start I/O on each line in the line group 4 Ascertain that each line is ready DCB t V'-'D ' " ' ' ' ' ' ' UCB Chart A2-3 Opening the Line Group-Description (2 of 2) Description Routine 1f Build and initialize SCBs for dial terminals using the address of the current SCB from LCBSCBA and the address of the SCB directory from LCBSCBDA. IGG01936 19 Each time a line is successfully opened, complete the next entry in the cross-reference table. AVTCRSRF contains the address of the crossreference control table. There is a 4-word entry in the cross-reference table for each open line. IGG01948 2a If the TCAM dispatcher has not previously been loaded, load the appro- IGG01939 Register Usage R9 I-AVT address R9 I-A VT address priate version (IGG019RB or IGG019RO) from SYSl.SVCLIB. Place the address of the TCAM dispatcher into AVTEA. If the I/O supervisor loads the TCAM dispatcher, it also places a pointer to the AVT address at CVT +240. If the TCAM dispatcher has already been loaded, update the use count in the contents directory. ~ g. ::s w s:: ~ gIl- o...., o 1 o ::s VI -.l 2b Load the Send and Receive schedulers that are appropriate for this TCAM system and store their addresses in the AVT: AVTHA-address of the Receive scheduler AVTHD-address of the Send scheduler AVTR 1-address of the Dial scheduler AVTHB-address of the Buffer scheduler AVT + 588-address of the Local Receive scheduler AVT2260L-address of the 2260 Local Receive scheduler IGG01939 IGG01940 2c Load the Start-Up Message routine (IGG019R6) and place its address into A VTSUPPT. IGG01939 2d Load the PCI appendage (IGG019RN). Store its address in DEBPCIA. Also load one of the following line end appendages: QT AM-compatible system-IEDQKE BSC lines-IEDQKB leased and start-stop lines with no TSO start-stop lines-IEDQKD Fields used for this operation are: AVT ADEBR-address of the DEBEOEA field for reusable disk message queues data sets. A VT ADEBN-address of the DEBEOEA field for nonreusable disk message queues data sets. DEBEOEA-address of the End-of-Extent appendage DEBPCIA-address of the PCI appendage DEBEXCEA-address of the Abnormal End appendage IGG01940 (This page left blank intentionally) 58 OS TeAM PLM Chart A2-3 Opening the Line Group-Description (2 of 2) Continued Routine Description 2e Vse information from the VCB and the terminal entry to load the special characters table (SCT) from SYS1.SVCUB. VCBDTI is an index into the device table and TRMCHCIN is an index into the device characteristics table. Store the SCT address in DCBSCTAD. 3 Issue an EXCP macro (SVC 0) to start I/O on each line. 4 Issue the TIME macro. Test the LCBTSTSW byte for X'80' (successful initial I/O operation) in the LCB for each line. If the initial I/O is not complete, determine whether 28 seconds have elapsed since the EXCP macro was issued. Continue checking for I/O completion until either 28 seconds have elapsed or until LCBTSTSW =X'80' indicating I/O completion. At the end of 28 seconds when I/O completion has not occurred, write a message to the system console to identify the line that has not been successfully opened. - ~ g. !:' w ~ ~ 5" ~ o ...., o '1j R o· !:' til \0 -- --- - ----- IGG01948 Register Usage C\ o Chart A3 Executing READY o til (i AVT > AVT ~}J~ 1 Attach the checkpoint i!:: executor subtask "'I:j ~ 2 Place a checkpoint request element on the enabled ready queue Enabled Ready Queue Operator Control A VT 3 Put all the incident Operator Control A VT records in the operator control work area 4 Process the records AVT m.~ 5 Place appropriate destination queues on the time delay queue 6 Determine if there is enough main storage for TOTE to execute 7 Create a parameter AVT I AVT list for the TeAM dispatcher 8 Indicate completion of READY execution I Jt~llllljllljlllj!l~l~:l;l~l~lllllIllllllll\ll\ r AVTREADN X'OS' Chart A3 Executing READY-Description Description 1 If A VTCKGET (address of the checkpoint work area) is zero, there is an open checkpoint DCB. After all incident records are processed, issue a FREEMAIN macro for the I/O buffer, then issue an ATTACH macro to bring the checkpoint executor into the same system partition as the MCP. Store the address of the checkpoint TCB in AVTCKTCB. 2 A VTREADY is the enabled ready queue. Place a pointer to the checkpoint request element (AVTCKELE) in the dispatcher save area (AVTSAVE2+ 24) so that the element is on the ready queue. Place a pointer to AVTCKELE in QCBELCHN. As a result of this, the TCAM dispatcher will take an environment checkpoint when it is activated. 3 Get the address of the operator control work area from AVTOCGET. Move each incident record, except those for start- or stopline, into the operator control work area (OPCCKERB). (The stop- and start-line incident records are processed during a restart procedure at checkpoint open-see Chart D2.) 4 Once an incident record is in the operator control work area (starting at OPCCKERB in the operator control AVT), post the operator control ECB complete and wait for IGCOII0D to process the post request. 5 Put any destination QCB that specified a nonzero value for the CLOCK= or the CINTVL= operand on the time delay queue (AVTTIMQ). 6 If on-line test is specified, determine (by a GETMAIN) whether there is enough main storage available for the test functions to be performed. If there is not enough main storage for the minimum requirements of the test function, the MCP abnormally terminates. If there is enough for minimum requirements, but not as much as requested, issue a warning WTO message (IED094I). 7 Put the address of A VTSA VE2 into register 1 as the pointer to a parameter list for the TCAM dispatcher . 8 Turn on the "READY completed" bit (AVTREADN) in the AVT (at AVTBITl). til CD ~ o· ::; ~ Routine Register Usage IEDQND R13 3:: CD ;. o c:>- O ..., o '0 CD OJ g. ::; 0"1 - - I-AVT address ~ ~ o is: Chart A4 Initializing the Application Program (Part 1 of 2) = e::r~!~~~;~t~i~~:~~:~ ~ 1 Perform validity checking ~ a Check for an active MCP Termname Table b Check for a valid application program DCB/process entry relationship 2 Access Work Establish linkage between the application program and the MCP a Obtain main storage for and initialize the DEB and the access method work area b Activate the Open/Close subtask C Obtain main storage for and initialize the lCB, SCB, and process entry work area f:~:;;;~;;~:;:~~:;:~:;:~:E:~:~:~:~:~:~::::::::::::;::::=:::::::!:!: Terminal Table ~~;~;~;~~~~$~f~~~f~:~:~:~:~:~~:E:~:~E:;~:~~:~:~~~:~E~i~:~~~ TRMSTAI mm:;:;:~:~:~:::~:::::::::::::::::::::::::::::::::::::::::: AVT DCB :~::::::::~::::::(::J ; :> d ;c~:~~~:r appropriate e Post the application program ECB complete Application Program ECB od Chart A4 Initializing the Application Program-Description (1 of 2) Routine Register Usage A pointer at CVT + 240 points to the AVT address. This pointer is a nonzero value when a TCAM MCP is present. If it is zero, set the "unsuccessful open" flag in the DCB and exit to IGG01933. IGG01946 R5 1b Check the QNAME from the JFCB (JFCBDSNM) against the termname table entries for application programs, by using the Binary Search routine. If the QNAME is invalid or not found, exit to IGG01933 for error processing. IEDQA1 IGG01933 2a Issue a GETMAIN macro to obtain main storage for the DEB and the access method work area. Put the DEB address into the DCB at DCBDEBAD and put the access method work area address into the DEB at DEBTAMWA. Initialize the access method work area and link it to the DEB. Enqueue the DEB on the application-program TCB DEB chain. Put the address of the DEB into DCBDEBAD. IGG01946 2b Use SVC 102 to tpost a special element to the open! close subtask. Then issue aWAIT macro to allow time for the open! close subtask to execute. The SVC 102 parameter lists are shown on Chart B2. 2c Issue a GETMAIN macro to obtain main storage for the LCB, process entry work area, and one or more SCBs. Place the LCB address into the process entry work area at PEWALCB. The address of the process entry work area is located in the TRMSTAT field of the process entry. Store the SCB address in LCBSCBA. Description 1a IEDQEU - U'l g.'" ::t w a:: '"go. o ..... o 't:I ~ ~ o· ::t 0\ W -~ R7 I-first entry in DCB parameter list I-address of current entry in DCB parameter list R15 O-return code ~ Chart A4 Initializing the Application Program (Part 2 of 2) o 3 Complete the open for {I.I ~ an input DCB ~ Buffer-Unit Pool AVT Buffer-Unit Pool a Request buffer units for a message if it is complete X'SO' = complete X'7F' = incomplete b If not a complete message, move the GET scheduler STCB from the read-ahead queue to the destination queue Application Program DeB MACRF=L C If this is locate mode, get space for the work area DCB 4 Return to the system open routine :"\\;r{~:J Chart A4 Initializing the Application Program-Description (2 of 2) Description 2d Routine Determine which scheduler to load from the MACRF = field of the DCB, load the scheduler, and link the STCB for that scheduler to the destination QCB for this application program. Set a "good-open" flag in the process entry. A VTEW-address of the GET scheduler A VTEC-address of the PUT scheduler A VTEZ-address of the GET FIFO scheduler AVTE7-address of the Retrieve scheduler 2e Issue a POST macro to post the application program ECB complete by turning on bit 1 of the first byte of the ECB. 3. If this is a receive operation, inspect the destination QCB for a complete message. If there is a complete message, tpost the ERB to the disk I/O , QCB in the MCP. 3b If there is not a complete message, move the Get scheduler STCB from the read-ahead QCB to the application program destination QCB. 3c If locate mode is specified (MACRF=L), issue a GETMAIN macro to obtain main storage for a work area. Also, store the address of the work area in DEBLCMWA. 4 Ul (1) s:l. O· ::I w ~ (1) g p. o ...., o "0 S!l !'! O· ::I 0\ Vl The system Open routine sets a "successful open" (DCBOFLGS=X'lO') flag in the DCB for this application program. Register Usage IGG01947 0\ 0\ o Vl ~s:: II CONTROLLING THE TCAM SYSTEM '"<:j ~ • The Dispatcher •• Dispatching functions of the TCAM Dispatcher Queuing Functions of the TeAM Dispatcher legend: •••••••tl~ = Necessary supporting functional flow • Functions of AQCTL SVC 102 Chart B Controlling the TCAM System Description Chart No. The Dispatcher Dispatching Functions of the TCAM Dispatcher Bl-l Queuing Functions of the TCAM Dispatcher Bl-2 Functions of AQCTL SVC 102 • Moving data across partition boundaries • Posting ECBS in other tasks • Tposting elements to the TCAM disabled ready queue • Flagging TCBs for application programs as eligible or not eligible for swapping L ___or rollout w o·~ :; w s: CD SO c:>. o -, o '0 ~ ~ o· :; 0\ -l 0\ 00 Chart 81-1 Dispatching Functions of the TCAM Dispatcher Enabled Ready Queue 'l:l~~:l:::!:l:l:*l:l~:l:t@t~ o Ul >-3 &? ~ '"'CI Reg 1 + element x element ~ Reg 1 1 Put the element on AVT Enabled Ready Queue AVT Disabled Ready Queue the enabled ready queue by priority 2 Merge any elements [+ ---J ------------ , ~ Disabled Ready Queue from the disabled ready queue onto the enabled ready queue by priority Reg 1 Enabled Enabled 3 Remove the highestpriority element' from the ready queue STCB 4 Activate the associated subtask ') Chart Bl-1 Dispatching Functions of the TCAM Dispatcher-Description Description 1 Examine the elements on the enabled ready queue. The enabled ready queue is at AVTREADY and points to the first element on the queue. Insert element X (pointed to by register 1) ahead of the first element found that has a lower priority than element X. Chain element X onto the ready queue by moving the link field of the element already on the ready queue to the link field of element X. Then put the contents of register 1 in the link field of the element that was already on the ready queue. 2 Use the procedure described above to merge any elements from the disabled ready queue onto the enabled ready queue, (the disabled ready QCB is at AVTREADD). The only difference is that the first word of the disabled ready queue, rather than register 1, points to the first element to be merged. The link field of the last element on the disabled ready queue contains zero. After the merge, the first word of the disabled ready queue contains zero and the second word contains the address of the last element merged. 3 Check the RECBPRI field for the highest-priority element. Put the address of the highest-priority element on the enabled ready queue into register 1. After removing the element, put the link field of the element now pointed to by register 1 on the ready queue and then examine the next element on the ready queue. The last element on the ready queue is always at AVTDELM; this is referred to as the "dummy last element." -- Ul (I> &. o ::l V> ~ (I> g 0. o .., o 'C (I> ~ O· ::l C7I \Q - -----_ .. _- - - - - -_ .. _ - - - - - - - - - Routine Register Usage IGG019RB or IGG019RO Rl I-address of last RCB dispatched . -- -----_ .. - --- - ~ Chart B 1-1 Dispatching Functions of the TCAM Dispatcher-Description Continued oVl ~ a:: ." ~ Description 4 The STCBVTO field (the first byte of an STCB) serves as an index to indicate which subtask gains control. If this field contains X'OO', the TCAM dispatcher issues aWAIT macro because there are no elements to process. An STCBVTO value of X'02' indicates that the element to be processed is for an attached task (operator control, on-line test, or FE Common Write). In this case, the TCAM dispatcher links the element to the element chain of the QCB for the attached task and posts the ECB for the task as complete. This allows the attached task to directly compete for system resources when TCAM issues aWAIT macro. When the STCBVTO value is neither X'OO' nor X'02', the TCAMdispatcher computes the subtask entry point according to the following STCBVTO values: X'04'-the subtask follows a 2-byte STCB X'06'-the subtask follows a 4-byte STCB X'08'-the subtask follows a 6-byte STCB X'OA'-the subtask follows an 8-byte STCB If the STCBVTO value is greater than X'OA', the TCAM dispatcher uses the STCBVTO value as an index into the list of scheduler addresses at A VTDISP to activate the associated subtask. The following STCBVTO values activate the indicated subtasks: X'OC' -Leased Receive scheduler X'OE'-Send scheduler X'lO'-GET scheduler X'12'-PUT scheduler X'14'-GET FIFO scheduler X'16'-Log scheduler X'18'-Dial Receive scheduler X'IA'-Buffered Terminal scheduler X' 1C'-Retrieve scheduler X'IE'-Local Receive scheduler X'20'-Concentrator Send Scheduler X'26'-COMMBUF Send Scheduler Note: If a subtask is activated without an element to process, its STCB is tposted to the ready queue with the correct STCBVTO value and the next three bytes containing the address of A VTREAD Y-8. Routine Register Usage Chart 81-2 Queuing Functions of the TCAM Dispatcher READY Macro Expansion TCAM Dispatcher IGG019RB Occur only during the first pass through the dispatcher Entry Point DSPDISP DSPLIST DSPCHAIN • The subtask • Add the • Add the returni ng to elements elements the dispatcher whose that are has no elements addresses chained to add to the are in a together ready queue. parameter to the list pOinted ready to by register queue; 1 to the the first ready queue. element The hlghIS pOinted order byte to by of the last register 1. pointer The link contains field of X'SO'to the last indicate the item In end of the the chain chain. contains AI X'XXOOOOOO' DSPWAIT • Process an element from the element chain of the QCB. If no element is present, the subtask twaits for an RCB to be posted to the element chain. [ Save the user's registers in AVTSAVE1 of the AVT. Retrieve the data in AVTSAVE2 of the AVT and store it for dispatcher use. Perform action according to the entry pOint designated by the returning subtask: DSPBYPAS DSPDLETE • Process immediately the next STCB in the STCB chain of the QCB being examined. • Delete the Start-Up Message routine. AI • Perform the DSPCHAII\I entry point function. DSPTSTQ DSPUNAV DSPPRIO DSPLIFO (DSPTSTQR) (DSPUNAVR) (DSPPRIOR) (DSPLIFOR) • Tpost one • Determine • Remove element to if the the returning the ready returning subtask's queue. subtask's STCB Register 1 STCB IS from the contains twaitlng In QCB chain the address the STCB it IS In. of the chain of a • Place the element QCB pointed removed (RCB) to to by register STCB in be tposted. 3. If It IS the STCB not, chain chain of a the STCB AI QCB Into that pOinted to QCB's STCB by register 3. chain. If It IS, continue RJ processing. • Place the RCB pointed to by register 1 i['to a chain pOinted to by register 7. Place the RCB • Place the RCB pointed to by register 1 into the first spot In a chain pointed to by register 7. DSPPOST (DSPPOSTR) leo inthe chain by Priority. R~' RCB '- "\ Ch:: '\ ) 7!/ y- Vl ao·'" ::I V> E: ~ g o ..., ~ o '"C ~ ~ o· ::I ,.... -.J • If the returning subtask did not have an "R" as the last letter of ItS name, process Ing continues through the dispatcher, otherwise, control passes to the returning subtask once the queue management functions are complete. IR' )~ ~ ~' R7 /" ~ Chart 82 Functions of AQCTL SVC 102 o til ~ '"I:j ~ 1 Check validity of the calling task, and build appropriate parameter list for the request Parameter List 2 Depending on the code in the first byte of the parameter list, perform one of the following: Reg 11 X'OO' J. ~~~~~iO~ ~ .1 - 1 ~,;, 1 t ~;;D :>a Mov~ ,data across , partition boundaries : >b Post ECB complete c Post Rollout/Rollin ECB complete d Chain element on disabled ready queue = eligible X'SO' = Ineligible "T :. :'~1: = eligible = ineligible U;?l X'01' X'02' h /:. ". Code X 'SO' X '00' t e ECB TCB I f _;;;~ ........ !> Flag issuing application program task for rollout :> f for swapping Flag issuing TSO task Chart B2 Functions of AQCTL SVC 102-Description Description 1 2a First byte = X'08': move data across partitions. The first word of the parameter list contains the address of the data to be moved. The second word contains the address of the target field of the move, and the third word contains the address of a halfword that has the length (in bytes) of the data field. 2b If the value is X'20', post the TSO or standard task ECB complete. For a TSO task, branch to the time-sharing interface program where the task is flagged either eligible or ineligible for swapping. -~ ~ Cl> o·~::s w s:: ;. Cl> oQ. o..., o 'tl ~ ~ o· ::s ..... w If SVC 102 is issued when there is not an active MCP in the system (CVT+240 is zero), the requested action is not performed and the AQCTL SVC 102 routine sets an error return code of X'04'. Get the pointer to the current TCB address from CVTTCBP and determine if the current TCB address is equal to the TCB address of one of the following tasks: A VTTCB-TCAM message control program PCBTCBAD-TCAM application program AVTOCTCB-operator control AVTCKTCB-checkpoint/ restart AVTOLTCB-TOTE (On-Line Test) A VTCWTCB-COMWRITE (FE Common Write) Any task attached by a valid task Set an error return code of X'08' if the TCB for the calling task is not valid, and return. Build a three-word list of parameters needed to perform a function. X'80' is always the first byte of the third word. ~- - ---- - Routine Register Usage IEDQEB R1 I-input parameter list I-CVT address I-return address R3 R14 ------- --- - - - -- ------ ------------~ (This page left blank intentionally) 74 OS TeAM PLM Chart B2 FUnctions of AQCTL SVC l02-Description (Continued) Description 2c IZl '" ~ O· ::l w ~ ~ 5p. o...., o '0 '"~ o· ::l -...l (J1 If the value is X'40', post the ECB complete for a task that is eligible for rollout. For a task that is currently rolled out, set TCBTRM bit 4 (TCBTCPP)to indicate that a post is pending. The ECB is posted by turning on bit 1 of the first byte. The low-order three bytes of the first word contain the ECB address. The second word contains the TCB address for the task being posted. Word three contains the address of the DEB associated with the ECB being posted. Check the ECB to be posted for validity. Get the Post routine (IEAQSY50) special entry address (IEAOPTOl) from the CVT (CVTOPTOl) and execute it. 2d First byte = X'04' (alone or X'OC'): post the element to the disabled ready queue, A VTREADD is the disabled ready queue. QCBELCHN points to the element chain. Post the MCP ECB complete. 2e First byte = X'OI' or X'80': flag the application program either eligible or ineligible for rollout, respectively. If X'80', the SVC 102 routine sets TCBNROC to a nonzero hexadecimal digit. If X'OI', the SVC 102 routine sets TCBNROC to X'OO'. 2f First byte = X'02' or X'lO': flag the TSO program either eligible or ineligible for swapping, respectively. Turn bit 0 of TCBTSFLG on if eligible for swapping or off if ineligible. Note: If more than one bit in the action code byte is turned on, the AQCTL SVC 102 routine performs the actions specified for each bit. The combinations of the bits used, however, must be compatible, so that the parameter list satisfies all the requirements. Routine Register Usage - -.J 0\ o tI.l iii PROCESSING THE MESSAGES ~ ~ "'d ~ • MCP Processing o I- - - - - ';-', GET/READ"'; RECEIVING THE MESSAGE .. --- -, " 1 Starting a Receive Operation ,_,'''l. ____ _ 2 STARTMH for a Receive Operation " 3 Incoming MH Processing (2 parts) 4 FORWARD Processing .......r---- • MCP/Application Program Interface o • I- -- -./'...... ... Data Flow: MCP to Application Program (2 parts) Data Flow: Application Program to ... " ----~ '" Application Program Processing • ...) " o ,"",---- • KpUT/WRITE " . . .r---- MCP Application Program/ Operator Control Interface Application Program Network Control Q • QUEUING THE MESSAGE 1 • Disk Queuing v SENDING THE MESSAGE ______>' Legend: 1 Starting a Send Operation 2 STARTMH for a Send Operation 3 Outgoing MH Processing (2 parts) P"m_, '"",,""",1 ---_..../', ---,.../ > fI~ ~ OPtional functional flow Chart C Processing the Message Ul ~ ~ o· :::t w ~ ~ g- o. o ...., o '0 ~ !!?. o·:::t -.J -.J Description Chart No. Message Control Processing Receiving the Message: Starting a Receive Operation describes the buffering and polling functions necessary to receive a message. Cl-1.1 STARTMH for a Receive Operation Cl-1.2 Incoming MH Processing Cl-1.3 FORWARD Processing describes placing the message on the destination queue. Cl-1.4 Queuing the Message describes reusable and non-reusable disk queuing. Cl-2 Sending the Message: Starting a Send Operation describes the buffering and addressing functions necessary to send a message. Cl-3.1 STARTMH for a Send Operation Cl-3.2 Outgoing MH Processing Cl-3.3 MCP / Application Program Interface: Data Flow: MCP to Application Program describes the processes that occur when a GET or READ macro is encountered in an application program. C2-1 Data Flow: Application Program to MCP describes the processes that occur when a PUT or WRITE macro is encountered in an application program. C2-2 Application Program Message Processing: Application Program/Operator Control Interface describes the processes whereby a user enters operator control commands from his application program, defined as a secondary operator control station. C3-1 Application Program Network Control describes the functions for dynamically controlling the telecommunications network through macro instructions issued in an application program . C3-2 -.I 00 Chart C1-1_1 Starting a Receive Operation B LCBERBQB o ri'l Q AVT ":I~Il~i~1~111~1~1~1~1~1~UI1~U@ Enabled Ready Queue . . t*+:::::::;::::::::::::::;:::::::::::::::::::, ~ 1 "I;j ~ Gain control of the line 2 a Obtain buffer units for the incoming message b Remove the requested number of buffer units from the buffer-unit pool and allocate them to this line for the receive operation C Build a channel program in the buffer unit control area of each buffer LCB d Prepare to poll the appropriate terminal 3 Build an initial contact channel program to poll the current entry in the invitation list 4 Poll the terminal LCB ;::;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;f:0»'1 . {response to polling STARTMH QCB DCB 111111/111111111 5 Schedule the buffers to be processed by the message handler I Chart C 1-1.1 Starting a Receive Operation-Description Description 1 The Receive scheduler gains control when an LCB tposted to itself is on top of the ready queue. AVTREADY is the enabled ready queue and points to the LCB. 2a Tpost the ERB to the buffer request QCB (AVTBFREB) to obtain buffer units for the incoming message. 2b For initial, application program, operator control, and first-PCI requests, get the requested number of buffer units from the buffer-unit pool and put the address of the first buffer unit into LCBFSBFR. For subsequent PCI requests, chain the ERB by priority into the element chain of the buffer return QCB (AVTBFRTB). 2c Build Read CCWs in the first two words of each unit and TIC CCWs in the third word. Chain the units together into one contiguous channel program. 2d Tpost the ERB to the activate-I/O generator QCB (IEDQKA) to poll the terminal. A VT ACTIB contains the address of this QCB. 3 A VTCSTCS points to the beginning of the device characteristics table and TRMCHCIN is an index into the table to the current entry. Build a channel program based on the device characteristics table entry for the device to be polled. Build the channel program in the channel program area (LCBCPA). Issue the SIO command, to initiate polling. Issue an EXCP macro to start the channel program to receive the message on the line. Routine R,egister Usage IGG019R3 Rl I-LCB address RI I-LCB address I-AVT address IEDQGA IEDQKA R13 I w $1- o· ::l 4 If bit 4 in LCBST AT2 is zero, the response to polling was positive, if LCBSTAT2 is X'08' the response to polling was negative. LCBSTATl (X'02') indicates that the line is receiving. 5 Tpost the buffers to the STARTMH QCB. If PCI=N, the entire message buffer string is tposted to MH. If PCI=A or R, individual buffers are tposted. DCBMH is the address of the Message Handler for this line group. LCBFSBFR points to the chain of buffers to be assigned. PRFQCBA is the QCB address when the buffer is an element. w s: R 1 I-buffer address CD [ o...., o '"0 ~ ~ o· ::l -.l '" IGG019RO or IGG019RN Rl R4 I-request element address I-DCB address 00 o Chart C1·1.2 STARTMH for a Receive Operation AVT olZ> ..., 1 Trace the flow of n > :;:::: buffers, if required "tj ~ AVT STARTMH aCB 2 Process the buffer Buffer Prefix ::::::::;:::::::::::::::::::::::::::::: a Header buffer: b Text buffer • Register 0 o or negative value Buffer Prefix :;:;:;::::::t~:~:~:~:;::::::::~:~:~: ~l~1~~~1~MM1itj~j DCBRESER :>I LCB DCB Buffer Prefix SCB 3 Exit to the message handler Chart Cl-1.2 STARTMH for a Receive Operation-Description Description 1 2a Note: If EOBIETB processing is specified on the STARTMH macro, the EOBI ETB handling subtask gains control before the STARTMH subtask. IEDQBT If the A VTFE30 field is not zero, the ST ARTMH subtask gets the address of the Buffer Trace Dump routine (IEDQFE30) from the A VTFE30 field and links to that routine to trace the flow of buffers. IEDQAA Place the address of the buffer just tposted to the STARTMH QCB in the AVTADBUF field of the AVT. Initialize the PRFSRCE field from LCBLNENT. Clear the PRFISEQ, SCBPRI, and SCBBKFCT fields to zeros. Initialiie the scan pointer (PRFSCAN) to point to the last byte in the-prefix or, if reserve characters are used, to the last reserve character. ~ ,- - til '" ~ o· ::l w a:: g-'" c:>. o ...., o ~ .... ~ o· ::l 00 Routine , 2b If PRFSTATI is X'80', indicating a subsequent or text buffer, initialize the'prefix origin field (PRFSRCE) from LCBLNENT. Put the number of reserve characters (from DCBRESER) into LCBSIZE. Initialize the scan pointer (PRFSCAN) to point to the last byte of the prefix or, if reserve characters are used, to the last reserve character. 3 For a normal exit, register 0 will contain zeros; for a multiple-bufferheader condition, register 0 will contain a negative value. Compute the MH entry address and examine register O. If it contains a negative value, the subtask exits to the MH with a condition code of 4; otherwise, the subtask determines from the LCB whether the line is sending or receiving and exits to the MH with a condition code of 1 or 8, respectively. Register Usage R7 R15 I-ST ARTMH QCB address O-entry point in STARTMH subtask 00 IV o CI'.l >-l n ;;> ~ ." ~ Chart C1-1.3 Incoming MH Processing (Part 1 of 3) Parameter List for each Macro .I~§~~~~~~~[~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~m~~: I STARTMH ~ I:~:~:;:::::;:;:::::~:~:::~:r::::~;:::::::~:~:~~::~::::~:;:::~l -_._.... .......... . _ ... 1 Execute STARTMH ... d~~;~;*;m;~~;~~~;~;~;~~~m~~~~~~~;I~~m~~~~~~~~;;;;~~j INBLOCK I:l:l:l:l@::::::::::::::::::::::::::::::::::~~:~:::~:::::~:~M 2 c Set up and execute INBLOCK macro MSGTYPE, PATH, SETSCAN I=====::::~=~:> Function selection ( CODE, DATETlME, MSGEDIT t====:::::=~:> Message editing c FORWARD, ORIGIN, SEQUENCE / c r ( FORWARD, INITIATE, PRIORITY, COMMBUF CHECKPT, COUNTER, LOG J ;:> ~====:::=~:> -:> B Validity checking Message routing E E E 0 0 0 2,TXT A-A M t=====:~~:> Record keeping B-,.,TXT E o 3 ,TXT B LOCK, LOCOPT, MSGLlMIT, UNLOCK r-----..,.r----,O> System control TERRSET t=======:::==::::> B B, I HOR B~- B ,TXT Error handling M A-A M E E o 0 B B B B I (This page left blank intentionally) Section 3: Method of Operation 83 00 ./>. Chart Cl-l.3 Incoming MH Processing (Part 2 of 3) o (/l -l n > 3 ~ ." r ~ AVT Perform any Inheader proceSSing MSGTYPE, PATH, SETSCAN F unction selection CODE, DATETIME, MSGEDIT Message editing FORWARD, ORIGIN, SEQUENCE FORWARD, INITIATE, PRIORITY, COMMBUF CHECKPT, COUNTER, LOG Validity checking Message routing Record keeping System control TERRSET Error handling Perform Inbuffer processing PATH F unction selection Subsequent buffer Start of text CODE, MSGEDIT Message editing CHECKPT, COUNTER LOG Record keeping CUTOF F, LOCOPT System control CUTOFF, TERRSET Error handling Chart C1-1.3 Incoming MH Processing-Description (1 of 2) Description Routine Register Usage I I 1 See Chart C1-1.2 I 2 3-4 The MSGEDIT, MSGFORM, and SETEOM macros in the inblock subgroup generate a hold queue. This queue holds data that cannot be processed with the current buffer. The held data is inserted in the next buffer tposted to this MH from the same transmission. This allows contiguous processing. (All macros coded in INBLOCK, except SETEOM, are handled as explained in #3 below; SETEOM is shown in the Macro Linkage Charts in the Program Organization section.) MH macro expansions link to functional MH routines through the User Interface routine (IEDQUI). The User Interface routine finds the address of the current buffer in the AVT ADBUF field of the AVT, the address of the LCB in the PRFLCB field of the buffer prefix, and the address of the current SCB in the LCBSCBA field of the LCB. PRFDEST is the termname table offset for the destination of the message and PRFST AT1 is a status byte. The address of the functional MH routine for the macro expansion is found as follows. The AVTMSGS field of the AVT contains the address of the MH VCON table. To this value the User Interface routine adds an index value obtained from the first byte of the input parameter list. The resulting address is placed in register 12. The macros listed, together with their parameter lists and linkages, are shown in the Program Organization section. -- til (D ~ C· ::I w ::: (D ;. 8o ...., o '0 (D etc· ::I 00 VI --- - I I ! lED QUI R1 I-parameter list address 00 0'1 Chart Cl·1.3 Incoming MH Processing (Part 3 of 3) o Ul ;: ~:~:~:~:~:~:~:; ~;i i; ;: :~:;~:~:; rr71 ~;::: "C ~ 5 Determine if this is the Buffer Prefix X'FD' J ~~~i~~!~~~~f::~~~~~~~~;~~~~:;~~~~:~f:~i last buffer of the message Destination aCB Buffer Disposition aCB or 6 Perform inmessage processing CHECKPT, LOG CANCELMG, ERRORMSG, HOLD, MSGGEN, REDIRECT a Record keeping ( b Error handling , SLOWPOLL Buffer Prefix Additional unit, if required for the error message RCB 7 Return unused buffers and free the line II +0 Chart Cl-1.3 Incoming MH Processing-Description (2 of 2) Description. o ...., o '"... (I) ~ o· ::; 00 -l Register Usage Routine 5 Bit 6 of the buffer prefix status byte (PRFSTATl) indicates whether this is the last buffer of a message. If this byte contains X'02' (PRFNLSTN), this is not the last buffer. X'FD' (PRFNLSTF) identifies the last buffer of a message. If the buffer is not the final buffer of the message, or if the logical end-of-message indicator is not set in the buffer prefix (PRFITCPN), place the destination QCB address (from SCBDESTQ) in the first word of the buffer. If the buffer is the final buffer, or if the logical end-of-message indicator is set, put the address of the buffer disposition QCB in the first word of the buffer. IEDQA4 6 When the last segment of a message has been received and processed by the MH up to the inmessage subgroup, the buffer disposition subtask executes the macro expansions for each macro in the inmessage subgroup. The macros listed, together with their parameter lists and linkages, are shown in the Program Organization section. IEDQBD 7 When an INEND macro expansion is detected, the buffer disposition subtask checks for distribution list, multiple routing, and checkpoint requests.lf any of these functions have been requested, the appropriate subtask receives control through a tpost. The controlling subtask returns unused buffers to the buffer return QCB and frees the line by tposting the LCB to itself. The controlling subtask then tposts the buffer to the destination QCB through the DSPCHAIN entry point in the TCAM dispatcher. This activates the Destination scheduler, which places the Send scheduler STCB in the destination LCB. (For concentrator devices, the Send scheduler STCB goes on the element chain of the concentrator data ready queue. The concentrator Send scheduler STCB is put on the STCB chain of the destination LCB.) The appropriate scheduler (Send, Receive, or GET) is whichever STCB is first in the STCB chain of the LCB. IEDQBD IGG019RB - - -- - gg Chart C1-1.4 FORWARD Processing otil Termname Table ~ Parameter List 1 Determine if the buffer is to be processed by FORWARD ~ Buffer Prefix Terminal Tables 2 Find the destination name, offset, or address, and convert this to the terminal table address Buffer Prefix Termname Table SGB 3 Set up the destination QCB Chart Cl-l.4 FORWARD Processing-Description Description 1 Routine Register Usage If the buffer is zero-length, TSO, or recalled text, or if the line is in extended lock mode, the buffer is not to be processed by the Forward routine. Return to the calling routine. Branch to IEDQAE, IEDQAI, or IEDQAl, depending on the input parameter list. (See the Macro Linkage Charts in the Program Organization section for details on the input parameter lists for the FORWARD macro.) IEDQA5 Rl IEDQAE-Return, in register 15, the destination address from the option field. IEDQAE IEDQAI-Return, in register 15, a negative 4 if this is a multiple-buffer header or if the EOA string is not found. IEDQAI IEDQAI-Return, in register 15, the offset to the termname table entry. If the terminal name is not found, return X'OO'. IEDQAl Place the address of the terminal table entry in register 1. IEDQTNT R6 I-parameter list address l-current buffer address ! 2 Use PRFDEST (the termname table offset) and AVTRNMPT (address of the termname table) to find the terminal table entry. 3 Get the address of the QCB (TRMDESTQ) from the terminal table entry and place it into the SCBDESTQ field. ! ---------- &' 2-. o ::s w 3: [ o ..., o l ::s co '" IEDQAV - - _ .. _-- I - -- - ! :g Chart C1-2 Disk Queuing ov.J SCB ~ .." X'10' = reusable X'20' = nonreusable 1 Locate the priority QCB for the destination of the message "0:1 ~ +40 2 Allocate disk queuing AVT AVT space for the current message and the next message +1152 --, +1176 Disk Message Queues Data Set C]JJ 3 Write message to disk queues AVT a Get one CPB for each Buffer Units for the message I ".Jl:i:~::~~!!¥:~!':::ililil:' QCB portion unit ~MeS~ge portion 1m b Build CCWs in t h e ' CPBs Reus or nonreus Disk • ......1 ~ : 0/ ....... : .. ",:.:" .::.:.,:': ~... C Write the message on the disk message queues data set ====~::======SIO I I QCBREUS or QCBNREUS Chart Cl-2 Disk Queuing-Description , ~ ~ g" ~ ~ [ o ..... o Io· ::s \0 Description Locate the priority QCB (begins at QCB+40) for which the buffer is to be written on the message queues data set. This address is at SCBDESTQ. Check QCBDSFLG for X'lO'-reusable disk queuing or X'20'-nonreusable disk queuing. 2 Store the disk address for the first unit of the message header. Indicate the location of the first unit of the next message to be received. Update the index to the disk address to point to the next relative record number (that is, the next message segment). Assign contiguous relative record numbers to the remaining units in the message segment, and update the index in the A VT to keep track of the number of units in the message. Assign the next-buffer location only if this is a multi-buffer message. Update the index to the next available location on the disk. 3a Write the message to disk. Issue a GETMAIN macro for the CPB pool and store its address in AVTFCPB. There is one CPB for each buffer unit. 3b Build channel programs with the CPBs to write the message on the disk message queues data set. Update the FEFO pointer in the QCB. 3c The address in the CCW in the CPB points to the disk buffer unit (CPBXREA) that contains the data. All CCWs may not be present in each CPB; only those necessary to locate the MBBCCHHR for the record are present. Issue an SIO instruction to write the message on the disk message queues data set. Note: Figures 11 through 15 illustrate the queuing functions of the Destination scheduler. Routine Register Usage IEDQHM2 Rl Rl3 IGGOl9QE IGGOl9RC I--current buffer address I-AVT address \0 N Chart C1-3.1 Starting a Send Operation o til STCB chain Destination aCB ~ 1 Gain control of the line ." ~ I LCB .... fS~ ,,"' 2 Request number of buffers required for the message DCB a b Locate the record of the message to be sent 3 Obtain and initialize the necessary CPBs to begin the disk read operation 4 Move the data from the CPB units to the buffer units AVT (Ef~§:;~:~~~:E~~§~_ _I 5 Address the terminal to start the I/O operation Sending or receiving response to polling Buffer Units Initialize the LCB for sending aCB AVT I 6 Begin MH processing I SCB ..... tii "'?'ml1 CPBs .....r:: Chart Cl-3.1 Starting a Send Operation-Description Description 1 An LCB tposted to itself on top of the ready queue indicates that a line is free. A send operation can be initiated when the Send scheduler STCB has top priority in the STCB chain of the LCB. At open time, the Send scheduler STCB is on the STCB chain of the destination QCB to await a full message. Use QCBSTCHN (a pointer to the STCB chain) and QCBRELLN (the relative line number) to find the Send scheduler STCB. When a message is available, move the Send scheduler STCB to the STCB chain of the LCB. LCBSTCBA points to the STCB chain. The Send scheduler STCB remains on the LCB until there is no message to send. At this time, move the Send scheduler STCB to the STCB chain of the destination QCB. For concentrator support: When Concentrator Send Scheduler STCB is on top of the LCB STCB chain, the concentrator Send scheduler gains control to process the STCBs on the element chain of the concentrator data ready queue. 2. Tpost the ERB to the disk I/O QCB to request buffers. Get the number of buffer units assigned for send operations for each line from DCBBUFOU. Put the address of the buffer units into LCBERBCH. Routine Register Usage IGG019R4 Rl I-LCB address I I 2b Use QCBFFEFO to locate the first message to be received and put the message address into SCBSCHDR. IGG019R4 or IGG019RN R7 RlO I-QCB address I-DCB address I ! - ~ ~ g' w ~ gP- o ..., o '0 ~. i:! \CO w (This page left blank intentionally) 94 OS TeAM PLM Chart Ci-3.1 Starting a Send Operation-Description (Continued) Description w ~ ci" ::s .., :: '" ;. 8o .., o '" ~ ~ o· ::s \Q '" Routine Register Usage IEDQFA IGG019RC 3 Obtain the number of CPBs needed by dividing the size of a buffer (DCBBUFSI) by the size of a unit (AVTKEYLE) and multiplying the result (the number of units per buffer) by the number of buffers (DCBBUFOU). AVTFCPB is the address of the CPB free pool. Build read data CCWs, set sector, and seek and search CCWs in the CPBs, and chain them together. All CPB CCWs may not be present in each CPB; only those necessary to reach the MBBCCHHR of the desired record are present. LCBSTART points to the CPB chain. 4 Chain the completed CPBs onto the chain (at A VTDKAPQ) of CPBs to IEDQFA IGG019R2 be processed by CPB cleanup. Tpost the CPB cleanup QCB to itself. This notifies IEDQFA that the disk I/O operation is complete. Effectively the data is being moved, but in reality the pointer to the buffer units (LCBFSBFR) is changed to point to the chain of CPB units that contain data, and the empty buffer units are returned to the buffer-unit pool. 5 After the required number of buffers are filled, tpost the ERB to the activate-I/O generator, which builds the channel programs to address the terminal and issues the Start I/O instruction. PRFQCBA points to theactivate-I/O generator QCB. IEDQKA IGG0192E 6 The LCBSENDN bit on indicates a send operation and the LCBNEGRP bit off indicates a positive response. After a positive response to addressing, tpost the buffer to the STARTMH QCB to begin processing the message through the message handler. (PRFQCBA now points to the STARTMH QCB.) If the response to addressing is negative, tpost a zero-length buffer to the message handler. This indicates an error condition. IGG019RO Rl I-lOB address I \0 0\ C1-3_2 STARTMH for a Send Operation AVT o ~ 1 Trace the flow of the Q ;s:: buffers, if required '1:j ~ AVT 2 Process the buffer ..• :( QCBSDFFO Register 1 I+TerminaITableE~trY-J Buffer Prefix SCB :;:t:::::::::::;:::::;::::::::::::::::: Buffer Prefix a Header buffer :M::;;:::!:!:!:::::::::::!:::::::;:; LCB LCB [;00] DCB b Text buffer Buffer Prefix Register 0 o or negative value l >: j Exit to the message handler J Chart Cl-3.2 STARTMH for a Send Operation-Description Description 1 Routine Note: If EOB/ETB processing is specified on the STARTMH macro, the EO B / ETB handling subtask gains control before the STARTMH subtask. IEDQBT If the A VTFE30 field is not zero, the STARTMH subtask gets the IEDQAA address of the Buffer Trace Dump routine (IEDQFE30) from the A VTFE30 field and links to that routine to trace the flow of buffers. Register Usage Rl R6 It 13 CIl CD ::; O· ::I w :::: CD ;. o c:>- ..., O o '0 ~ 'g." ::I \Q ~ 28 LCBFSBFR points to the first buffer on the buffer chain and the first word in the buffer prefix (PRFQCBA) points to the STARTMH QCB. Place the address of the buffer just tposted to the ST ARTMH QCB in the AVTADBUF field of the AVT. For output header buffers, update the FEFO pointer in the destination QCB (QCBFFEFO) with the FEFO pointer at SCBFEFO, and turn off the "currently sending" flag in the QCB (QCBSDFFO). Put the number of reserve characters in the buffer (from PRFSCAN) into the LCBSIZE field of the LCB. Initialize the scan pointer (PRFSCAN) to point to the last byte of the prefix or, if reserve characters are present, to the last reserve character. Put the termname table entry address into PRFDEST. 2b Get the number of reserve characters from DCBRESER. Set the reserve characters count in LCBSIZE to zero, and initialize the scan pointer (PRFSCAN) to point to the last byte in the prefix. 3 For a normal exit, register 0 will contain zeros; for a multiple-bufferheader condition, register 0 will contain a negative value. Compute the Message Handler entry address and examine register O. If register 0 contains a negative value, exit to the MH with a condition code of 4; otherwise, determine from the LCB whether the line is sending or receiving, and exit to the MH with a condition code of 1 or 8, respectively. I-address of the termname table entry I-address of the buffer I-address of the save area in the A VT i \0 00 Chart C1-3.3 Outgoing MH Processing (Part 1 of 2) o Ul ~ 1 Execute STARTMH > AVT ~ Buffer Prefix "I:l ~ 2 Perform outheader MSGTYPE, PATH, SETSCAN, TY CODE, DATETIME, MSGEDIT, I MSGFORM, SEQUENCE processing F unction selection ......... Message editing CHECKPT, COUNTER, LOG Record keeping LOCOPT, MSGLlMIT, SCREEN, SETEOF System control SLOWPOLL, TERRSET Error handling 3 Perform outbuffer processing PATH CODE, MSGEDIT Function selection Subsequent buffer Message editing Start of text CHECKPT, COUNTER, LOG Record keeping LOCOPT System control TERRSET Error handling Chart Cl-3.3 Outgoing MH Processing-Description (1 of 2) Description Vl " ~ O· ::; w s:: ~ ::r o P- ...., O o "d " ~. o ::; \0 \0 1 See Chart Cl-3.2. 2 MH macro expansions link to functional MH routines through the User Interface routine (IEDQUl). The User Interface routine finds the address of the current buffer in the A VT field A VT ADBUF, the address of the LCB in the buffer prefix field PRFLCB, and the address of the current SCB in the LCBSCBA field of the LCB. The PRFTIC field of the buffer prefix points to the next buffer unit of the message. The User Interface routine finds the address of the functional routine for the macro expansion as follows. The A VTMSGS field of the A VT contains the address of the MH VCON table. To this value, the User Interface routine adds an index value obtained from the first byte of the input parameter list. The routine then places the resulting address in register 12. The macros lis'ted, together with their parameter lists and linkages, are shown in the Macro Linkage Charts in the Program Organization section. 3 The functions of the macros in the outbuffer subgroup are initiated in the same way as in the outheader subgroup. See the description in item 2, above. Routine Register Usage lED QUI R1 I-address of parameter list I o o Chart C1·3.3 Outgoing MH Processing (Part 2 of 2) Perform outmessage processing a Check for an application=:;::=====;;;;:L., program buffer o III ~a:: ~ see ""'D"I~ : >b Check for a zero· length buffer and return any empty units to the buffer·unit pool C Send the message Chart Cl-3.3 Outgoing MH Processing-Description (2 of 2) Routine Description r. o ::l w ~ g Q. o...., o "CI ~ ~. o ::l o Usage IEDQA4 4a Examine the QCBFLAG field of the destination QCB (pointed to by the SCBDESTQ field of the SCB). If QCBFLAG contains a value of X'02', indicating that the QCB is for a process entry, tpost the buffer to the read-ahead QCB. The address of the read-ahead QCB is in the PERAQCB field in the process entry work area. 4b If the buffer has an indicated length of zero, tpost it to the buffer disposition QCB by branching to the DSPPOST entry point in the TCAM dispatcher. If the buffer does not have a length of zero, remove all units that do not contain data from the end of the buffer. Wben the last empty unit is found, update the PRFNBUNT field of the buffer prefix to indicate only the number of units that contain data. The chain of empty units is now considered a separate buffer. The PRFNBUNT field of the first empty unit contains a count of the number of empty units in the chain. Place the address of the buffer return QCB (AVTBFRTB) in the first word of the first empty unit (PRFQCBA) and tpost the buffer. 4c Build Read/Write and TIC CCWs in the first three words of each unit. Include the buffer in the channel program for the line. Issue an I/O interrupt, send the message, and tpost the buffer to the buffer disposition QCB. IEDQGT 4d After the last segment of a message has been sent and processed by the MH up to the outmessage subgroup, the buffer disposition subtask executes the macro expansions for each macro in the outmessage subgroup. The macros listed, together with their parameter lists and linkages, are shown in the Macro Linkage Charts in the Program Organization section. IEDQBD 5 When an OUTEND macro is detected, return any unused buffers to the buffer-unit pool by tposting them to the buffer return QCB (AVTBFRTB). Mark as serviced the message that was just sent by making the first six bytes of the unit the data portion of the disk record (disk data record) and putting X'40' in the DATFLAGS field of the disk data area. - Rf~gister - - -- --- - ------ R6 O-address of the buffer o Chart C2-1 IV Data Flow: MCP to Application Program (Part 1 of 2) 1 Prepare data for transfer o ;:j Buffer Chai n Ul from the MCP to the application-program work area s::> PEWA "'t:1 ~ 1 a Build a special element for the applicationprogram buffer X'FD'I ERB il~_l~imli~!i AVT LCBERBOB b Prepare to obtain buffer units for the application program message DECB C Put the application program message in the buffers and place them on the read-ahead queue ~I ~==:::=>d PEWA EJ DCB e Prepare for outgoing message processing Indicate that buffers are ready to be read by the application program Disk I/O OCB PEWA .·8 Chart C2-1 Data Flow: MCP to an Application Program-Description (1 of 2) Description 1 When a buffer of a message is tposted to the destination QCB for an application program, determine (PRFSTATl=X'FD') if this is the last buffer of the message. If it is not, return control to the TCAM dispatcher. IEDQHM 1. Build a special element for the application-program buffer and tpost it to the read-ahead QCB (PERAQCB) in the process entry work area. IEDQEW 1b A VTREADY points to the first in a chain of elements on the ready queue. When it points to the special element just built, tpost an ERB (with a count of the required buffers for the last message) to the disk I/O QCB. Set the PEWAFLG to X'80' to indicate that the ERB has been tposted to the disk I/O QCB. 1c Read the message from the message queues data set into the buffers, and chain the full buffers off the ERB element chain. Tpost the full element chain to the read-ahead QCB. IEDQFA 1d Put the buffers on the pre-MH queue. If the MHOK flag in PEW AFLG is on (X'02'), tpost the first message on the pre-MH queue (PECBUF) to the STARTMH QCB, and tum off the MHOK flag. IEDQEW 18 If a buffer has just been tposted to the STARTMH QCB, post the application-program GET/READ ECB (GWAECB in the access method work area) as complete to indicate that the buffers are ready to be read. This allows the application program to gain control when the MCP enters a wait state. g~. .., == ['" o .... o 't:I o·~ =' -.., o Routine Register Usage ...... .,..o Chart C2·' Data Flow: MCP to Application Program (Part 2 of 2) chain of empty buffers o I;n 1 (cont'd) f Return any unused rs ~ "tI buffers to the buffer-unit pool READ ~ 2 Transfer data from the MCP to the application program mK«{~~%;%%ft1 I : >a Read buffers into the applicationprogram work area until: all available buffers are read, the application program work area is full, or an EOM buffer is encountered Access Method Work Area X'Fl' 1st Segment X'F2' EOM-Last Segment X'F3' Entire Message X'4Q' Intermediate Segment 8 DEB ~~~!:::~!~t::::::~ ,.:.:.".,••••••••:.:.:.:&••:.:.:.:.:, ! >b Indicate the number of buffers read Access Method Work Area ~1~1!1~I@imJ V- C ~:~~I:~i~c;~;u~ET or READ, pass control to the next sequential instruction in the application program GET READ C Register 15 X'QQ' ] Chart C2-1 Data Flow: MCP to an Application Program-Description (2 of 2) Description w $l. 15' ~ w :s:: (I) ~ s:>o .., o '"~ ~ 15' ~ ..... o '" Routine Register Usage RO 1f Tpost the empty buffers to the buffer return QCB (AVTBFRTB), If one of the buffers was an EOM, tpost the buffers from the pre-MH queue to the STARTMH QCB, up to an EOM. At EOM, turn on the MHOKflag. 2a When a GET or READ macro is issued in an application program, read data from buffers on the element chain of the read-ahead QCB into an application-program work area. The work area contents descriptor byte (PWACTL) contains a value indicating whether the message read into the application-program work area is the first, intermediate, or last segment of the message. The size of the application-program work area is indicated in the GW ASOW A field of the access method work area. When an EOM buffer is encountered, set the PW AFLG field of the access method work area to X'80', and turn on the MHOK flag in PEW AFLG tq indicate to the GET scheduler that a complete message has been read by the application program. The outgoing MH in the MCP can then begin to process a new message. IGG019RG 2b DEBT AMW A contains the address of the access method work area. Build a buffer return element (GWAELEM) in the access method work area that contains the number of buffers emptied. Using the AQCTL SVC 102 routine, tpost this element to the read-ahead QCB (PERAQCB). IGG019RG IEDQEB 2c When a buffer containing an end-of-file indicator in its prefix is encountered, branch to the user-specified EODAD address. If the SETEOF condition is not present, control is not passed to the next user-coded instruction in the application program until the user request is completely satisfied. The G WASTAT field of the access method work area points to the status indicators for a GET/READ operation. After successful completion of a GET operation, place X'OO' into register 15; for a READ operation, place a X'7F' completion code in the DECB. IGG019RG -- -- .. - --- - _ .. _- ------ --- --- - -- --- - - - -- -- --- I-address of the application program work area ...... o Chart C2-2 Data Flow: Application Program to MCP DEB 0'1 o til ~ ( PUT A ,..-_ _ _.....,or ( WRITE Jog ~ h P Access Method Work Area 1 Prepare to transfer data from the application program to the MCP PUT[;J a t====:::::::> b Initialize the access method work area Register 1 + Build a special element to transfer the data 2 Transfer data from the application program to the MCP LCBERBCH a Request buffers from the buffer-unit pool and fi II them with data DCB b Queue the full buffers for incoming message processing C Return any unused buffers to the bufferunit pool and pass control to the next sequential instruction in the application program LCBERBQB ApplicationProgram Work Area Chart C2-2 Data Flow: Application Program to MCP-Description Description ~. ::s ~ rs:: ~ [ ...,o o ; 'g g. ::s .... o -J Register Usage 1. When a PUT or WRITE macro is issued in a SAM-compatible application program, initialize the access method work area with data from the application-program DCB, DECB, and work area prefix. Put the address of the access method work area into DEBTAMW A. IGG019RI Rl I-address of the application program work area 1b Build a special element (PWAELEM) that contains the address of data in the application-program work area. If locate mode is used, the address of the application-program work area is at DEBLCMWA; otherwise, it is supplied as an operand of the PUT or WRITE macro. Tpost this element, using the AQCTL SVC 102 routine, to the PUT scheduler STCB (PEPSSTCB). IGG019RI IEDQEB RO I-address of element 2. When the special element reaches the top of the ready queue (AVTREADY), build an ERB to request buffers for the data in the application-program work area. Fill the buffers, one at a time, until the application-program work area is empty. IEDQEC Rl I-address of element 2b Tpost the full buffers to the STARTMH QCB (address in DCBMH) for this application program in order to process the incoming message. IEDQEC IEDQEB 2c Tpost the empty buffers to the buffer return QCB (AVTBFRTB), and use SVC 102 to post the application-program ECB (PWABCB) complete. As a result, the application program can regain control at its next sequential instruction whenever the MCP enters the wait state. IEDQEC - r/.l Routine _ ... _- - -- - - ----------- -- .---.-.---~ ..... o Chart C3-1 Application Program/Operator Control I nterfac;e AVT 00 o t'-l CLOSEMC ~s: MCPCLOSE STOPLN ." ~ 1 Initialize the command input buffer (CIS) element to indicate the type of command STARTLN MRELEASE RELEASEM Operator Control aca Address 4 Priority 8 Verb Code ICHNG 12 16 20 24 Length X'lC' - . - - - 0 I Return Code - X'OC'I + +element Parameter List 3 Place the CIS element on the operator control queue + aCB + element SVC 102 Wait for command processing, then process the indicated command of application program processing I Parameter List to the process control block (PCS) 5 Indicate completion I Application Program ECB Address 0 0 0 2 Move the CIS element 4 I Link Field I ECB ~I X'40' Operator Control aCB Chart C3-1 Application Program/Operator Control Interface-Description Description 1 AVTCOMPT points to the command input buffer (CIB). The CIB fields are initialized according to the macro specified. 2 Move the initialized CIB into the PCB work area beginning at PCBWRKA (PCB+60). The parameters are the standard SVC 102 parameters with a X'OC' in the high-order byte of the first word. 3 Tpost (using AQCTL SVC 102) the CIB in PCBWRKA (PCB+60) to the operator control QCB. Issue aWAIT macro to put the application program into a wait state. IEDQET IEDQEB 4 See the Operator Control Linkage Charts in the Program Organization section for an explanation of the operation performed when a specific command is entered. IEDQCA 5 Post the waiting application-program ECB (address in LCBECBPT) complete. IEDQCA IEDQEB - VI "g. o· ::l ... s:: " g c:>O ...., o al o·~ ::l -'" o Routine - _.- _ .. - ._- IEDQET Register Usage -o Chart C3-2 Application Program Network Control o til ~a:: ~ / / ( TCHNG aCOPY AVT TCOPY I-t- 1 a locate the specified entry in the term name table DCB I nvitation list ICOPY ~==~:~> b locate the specified groupname invitation list TCHNG areaname 2 a Move data from the appl ication-program work area to the specified MCP location ICOPY aCOPY TCOPY areaname b Read data from the specified MCP location into the appl ication-program work area Chart C3-2 Application Program Network Control-Description Description til .. o ...., o '0 R o· ::; ...... ...... Routine 1a Get the termname table address from AVTRNMPT to locate the termname table entry. IEDQEl IEDQE2 IEDQE3 1b Compare the grpname coded on the ICOPY macro with the ddname in each TCAM line group DCB. Use the DCBINVLI field of the matching DCB to locate the specified invitation list. IEDQE4 2a Move the data from the application-program work area into the MCP location coded as areaname on the TCHNG macro. IEDQE3 2b Read data from the MCP location (coded as areaname on the macro) into the application-program work area. IEDQEl IEDQE2 IEDQE4 RI~gister Usage - N o ttl m CHECKPOINTING/RESTARTlNG THE SYSTEM ~ ... a::: "I:j > ~ Checkpoint ~ e e .... Environment Checkpoint Incident Checkpoint: MH Request • Incident Checkpoint: Operator Control Request • AppllcatJon Program Checkpomt Request Legend: _____> 0 p,,~, '.ocr.""" ,,~ • Restart Chart D Checkpointing/Restarting the System Description Chart No. Checkpoint describes building a checkpoint record and writing the checkpoint record to disk. Environment Checkpoint Dl-l Incident Checkpoint: MH Request DI-2 Incident Checkpoint: Operator Control Request DI-3 Application Program Checkpoint Request DI-4 Restart describes the reconstruction of the MCP environment and the message queues. 1)2 Note: This description applies to Diagrams DJ-J through DJ-4. For details concerning the checkpoint records, see the DatIl AIWl Layollts section of this publication. g.> ~ 0' ::s ~ ~ Ilo o ..... o "CS e.0' . Chart 01·1 Environment Checkpoint I AVT AVT MCP 0 :~~i~~~~~~~~~~~1~j~~~~~~l~i~i~i~1~11 ..., 1:1> • READY Routine • Reusability· Copy Subtask • T,me Delay () > s::: '"c:I ~ 1 Request a checkpoint from the appropriate module or command SUbtask~ I AVT HALT SVC 102 Parameter List X'70'1+ aCB I Checkpoint Work Area =t~t~""'~:~@"""'~:~:~~""':~!~:""'~:~:~:1 Main Storage 2 Checkpoint Work Area Build an environment record Environment Record Segment Checkpoint Control Record 3 Write the checkpoint record to disk EXCP Chart D1-2 Incident Checkpoint: MH Request OUTMSG CHECKPT = YES 1 Request a checkpoint INMSG AVT LCB X'OO'lt QCB CHECKPT = YES LeB Termname Table IncIdent Record CheckpoInt Work Area Date Time Terminal-Table entry ':::::::::::~:::::::::::*:::::;::~:~:;t:::~ 0'00' 2 Build an incident record Sequence Nos. OptIon Fields if n ~ o· CheckpoInt Work Area ;~~;i~~~;~~~;~~~~~~ IncIdent Record ::I w :s:: ~ :::r o ~ o..., o ~ ~ o· ::I >-' V. 3 Write the checkpoint record to disk 0'1 o (Il ~E:: '"d ~ Chart 01·3 Incident Checkpoint: Operator Control Request --t 1 Operator Control ~~~~ Register 11 MODIFY RELEASE 1 -_ _ _ _ _- - ' Register 3 [TR;q~eS~ E-Ie~~t] Entry Code 1 Request a checkpoint I ncident Record Operator Control AVT Date ~:~:~:~:~:~:;:~:~:~:~:~:~:~:~:~ 2 Build an incident Time GETMAIN disk record Operator Control Ckpt. Checkpoint Work Area bllilNl;ililt;lilllllilllll~ 1 H-----'" 3 Write the checkpoint record to disk EXCP Checkpoint Work Area Chart 01-4 Application Program Checkpoint Request Request by TCHNG: Application Program }TCHNG CKREO l 1 Request the appropriate checkpoint DEB DCB I nCldent Record ior TCHNG CKREO record Date Destination OCB Time DEB 0'04' 2 Build an incident record for TCHNG, or a CKREO record for CKREO Option Fields Flag I Link Addr Sequence Nos. 0'18' CDRCKOFF CDRCKMSGICDRCKOBC Priority OCB Disk POinters GETMAIN Option Fields CheckpOint Work Area ~ ci" ::s w ;s: <1> ;. o c:lo o ...., o 'g e.o· ::s .... N w Routine 1a Subtract the restart number in AVTCKRST from the number of the most current environment record (CKPTTRCT). If the result is positive, use this environment record for the restart. If the result is not positive, add to it the value from CKPCPRCD. This gives the total number of environment records. IGG01943 1b Read the environment record and place the information in the MCP tables (terminal table, QCB, LCB, DCB, termname table, SCB, option table, and invitation list). Incident Records: CHECKPT-Update the tables to show the current terminal to receive a message. Operator Control-Update the destination QCB to show the current status of the.line as indicated by an incident record for a Startline or Stopline operator control command. All other operator control incident records are processed during READY execution. (See Chart A3.) TCHNG-Update the tables to show the change in status. CKREQ Records: Update the MCP tables that pertain to application programs. IGG01943 IGG01944 2 Normal restart: Check the messages for logical-read errors. Create the FEFO chain for all complete, unserviced, and uncanceled messages. QCBFFEFO-Disk record number of the first message to be received. Main-storage address of the first record if main-storage-only queuing. QCBLFEFO-Disk record number of the last message to be received. Main-storage address of the last record if main-storage-only queuing. QCBINTLF-Disk record number of the last intercepted message in FEFO order. Update the sequence numbers. STARTUP=WY indicates that no scan of the message queues is to be done. Locate the last message placed on the queue before the checkpoint was taken. Zero the FEFO chain field to any message placed on the queue after that checkpoint, and follow CKPTSYN = YES restart procedures for all queues. CKPTSYN = YES indicates a system synchronized restart. Create the FEFO queue, including all the messages on the FEFO queue after the last checkpoint. If the sequence number of the message on the FIFO queue is greater than the sequence number in the checkpoint record for the application queue, mark the message as unserviced . IGG01945 RE'gister Usage I I ",, <, , r- I I I ~ ex: i 'II ~ Il ... 'II ~ fn 'II ~ z c ,g e! tic .. ::I £! ii ,g 'em c 0 's. IV C 0 ... ~ • • c:J ii 1\ ,I , eo. S OS TeAM PLM , ~ I I I , , ...I CJ 124 \ 11 I I I I Chart E Closing the System/Network - Description Chart No. MCP Termination describes the closing of all opened MCP data sets and the deactivation of the TCAMsystem El Application Program Termination E2 - I. ::s IN f 5' Clo ...o o 'C i· -'" ::s ~ .... N Chart E1 MCP Termination (Part 1 of 2) t:J\ oVl ~ CLOSEMC, MCPCLOSE ~ j[ HALT "tI AVT J 1 Indicate to TeAM X'04' Flush to begin closedown processing X'06' Quick ~ X'04' line free X'02' receiving X'01' sending X'nO' stopped 2 Stop all active lines; Operator Control A VT complete any disk I/O operations in progress for the disk message queues data set ~::~!::~!~:~:~:~1 ~~.;"".I """'H""'A"""""'LT=-=-i/':"::O:-~ __ . . OPCLEN OPCRLN OPCTNME OPCFLG PCB Not equal to zero 3 Notify the user if any DCBs for his application programs are open Closedown Completion element ERB 4 Close the application program DCBs 5 a Place an element on the ready queue to request closedown AVl~ :.:.:.:.:.:.:.:::::.:!:::!:::::::::::::::::::: AVTREADY ~ ~ ~ ~ ~l~l~l l l l l~\ \f~ ~:~: : : : : : ~ b Process all elements on the ready queue System Console Chart El MCP Termination-Description (1 of 2) Description 1 Set the closedown switches in the AVTBITI field (X'04' for flush closedown or X'06' for quick closedown). IGCZOlOD 2 For a quick closedown, keep a count of the LCBs until all the lines stop sending. For a flush closedown, wait for all the queues to be serviced. IGCV310D IEDQHK 3 Issue the WTO message IED098I DCB OPEN FOR MESSAGE PROCESSING jobname Then wait for the operator control ECB (AVTOPECA) to be posted complete by the closedown routines. IGCZOlOD 4 See Chart E2. 5a Tpost the closedown completion element onto the ready queue (A VTREADY). 5b The TCAM dispatcher gives control to each of the elements on the ready queue until it reaches the closedown completion element. In the event that the operator control checkpoint request element is on the ready queue, the checkpoint executor gains control and requests an environment checkpoint. The Environment Checkpoint routine recognizes the source as operator control and activates the Checkpoint Notification and Disposition routine to place the closedown completion element on the ready queue. When the TCAM dispatcher recognizes this element, it continues closedown processing. ----- en (1l ~ o· ::: w ~ (1l ;. o P- ...., O o "0 ~ ~ o· ::: >-' tv -..l Register Usage Routine --------------- IGG019RB or IGG019RO IEDQNF IEDQNK IEDQNQ - - - - - L -_ _ _ _ --- -- ----- _________ J ~ Chart E1 MCP Termination (Part 2 of 2) 00 o tI.I (5 ~ AVT ~§~~~~~~~~~~~~:~~~~~~~:~:~:~:::~~:~:~ ~ AVTCWECA AVTCKECA ~:~ ) 6 Wait for termination of AVTOPECA rCLOSE DCBNAME Line group DCB ->[ and detach the TCAMattached tasks (checkpoint, operator control, Comwrite, and TOTE) AVTOLECA A' I-A , I- AVTOLTCB f0- AVTCWTCB 1::. => a • Close the line group DCB Disk Checkpoint Control Record / CLOSE DCBNAME checkpoint DCB / CLOSE DCBNAME message queues DCB data sets - • "> C Close the message queues data sets ~ .... "> b Close the checkpoint EXCP I .:.:. ::::: .- 0 0 .: ,.. --....., ~ ...;.. 'REEMAIN) • CVT li!~ d Delete TCAM from the system :> +240 J 8 Chart E1 MCP Termination-Description (2 of 2) Description Vl ~. ..,::t a:: (0 ;. o P- O ..., o "0 (0 ~. ::t ...... tv \0 Routine 6 When the ECBs for operator control checkpoint, COMWRITE, and TOTE are posted complete, delete the appropriate task by placing zeros into its TCB address field in the AVT. ECB Address: TCB Address: AVTCKECA Checkpoint AVTCKTCB A VTOLECA On-Line Test AVTOLTCB AVTCWECA FE Common Write AVTCWTCB A VTOPECA Operator Control AVTOCTB IEDQNA 6a Close the line group DCB. Perform OBR/SDR error recording on each line. Issue SVC 33 to purge I/O on each line. Issue a DISABLE command to disconnect the line. (This is not done for a Type III Adapter on a 2701 for IBM 2260 remote terminals.) Issue a FREEMAIN macro to free the LCBs. Clear the fields in the cross-reference table. When all the line group· DCBs are closed, zero the A VT pointer to the DCB and free the main storage for the cross-reference table. ERP modules IGG02035 6b Close the checkpoint data sets. Issue an EXCP macro to write the closedown checkpoint control record. Issue a FREEMAIN macro to free the work area. Issue a DELETE macro to free the Checkpoint Disk End appendage. IGG02041 6c Close the message queues data sets. Issue a FREEMAIN macro for the DEB, CPBs, lOBs, buffers, and any main-storage data sets. Zero the AVT pointer to the DCB. Zero the AVT address pointer from the CVT. IGG02030 6d Delete TCAM from the system (place zeros in CVT +240). R~egister Usage w o Chart E2 Application Program Termination Access Method Work Area o tI> ~rs: 1 a Remove the process ." ~ entry work area from storage Read-Ahead Queue Ready Queue b Deactivate data transfer ~2a SCB AVT between the application program and the MCP; activate the MCP Free the SCB and decrement the PCB use count I PCB "Decrement by one until zero b Delete the schedulers C Deactivate the destination OCB r---,.r I rDestination QCB PCB IX'OQ'I ·.·.:.~~.~.~i.~~. .:.:• l:::::::::::: ~ ~ AVT 8 f!!~:.~:::.~.~.:.:.J ~3a I : :> b C Free the LCB, DEB, access method work area, and locate mode work area Delete any loaded GET/PUT modules, restore the DCB, and post the operator control ECB complete Free the line Buffer-Unit Pool Chart E2 Application Program Termination-Description Description Routine 1. Issue a FREEMAIN macro to remove the process entry work area from main storage. 1b Tposta special element that contains the address of the DCB process entry in the termname table to the open/close subtask. Issue aWAIT macro to allow the MCP to gain control. IGG02046 2. Free the process entry work area and the SCB. Decrement the PCB use count (PCBUCNT) by one until it is zero. IEDQEU 2b Delete the appropriate schedulers. The scheduler addresses are in the AVT: AVTEW-GET scheduler address A VTEC-PUT scheduler address AVTEZ-GET FIFO scheduler address A VTE7-Retrieve scheduler address 2c Turn off the "open" flag in the process entry. Register Usage I 3. Free the LCB if the PCB use count (PCBUCNT) field is zero. Free the access method work area (address at DEBTAMWA), the locate mode work area (address at DEBLCMWA), and then free the DEB. IGG02046 I 3b g> o· ::I w ..::: Q. o '0 ~ ~ o·::I .w IGG02046 modules acquired by a LOAD macro. Restore the DCB to its pre-open status. Set the "close" flag in the DCB. Post the operator control ECB in the AVT as complete if AVTCKELF is on. Scan all the TCAM LCBs to determine if any LCBs are locked to this application program. a [ o ..., If AVTCKELF=X'08', issue a DELETE macro for any GET/PUT 3c Tpost the LCB to itself to free the line. IGG02047 ! (This page left blank intentionally) 132 OS TeAM PLM Section 4: Program Organization This section contains six sets of charts of information about the organization of the TCAM system. I. Executable TCAM Modules Microfiche Directory This chart lists each executable TCAM module in alphabetical order. The entry for each module contain~ a general statement of the function of the module, a list of the entry points to the module, the external routines used by the module, the tables and work areas used by the module, and lists of other modules that activate and receive control from this module. Also, each entry shows which method of operation charts refer to this module and the system library in which this module is stored. 2. Non-executable TCAM Modules Microfiche Directory This chart lists each non-executable TCAM module in alphabetical order by DSECT name. 3. Macro Linkage Charts This section contains one chart for each TCAM macro. Each chart shows the macro, its input parameter list, the linkage among the TCAM modules that this macro effects, and the function performed by each linkage. 4. Operator Control Command Linkage Chart This chart contains an entry for each type of operator control command. Within each entry there is a formats, which module a particular format activates, and the function performed by this module. li~,t of the various command 5. ERP Linkage Charts ~ :4- o· There are two charts in this section, one for start-stop line control and one for BSe. Each chart lists ea::h type of I/O operation with the errors that can occur during that operation. For each error, the chart shows the ERP module activated and the conditions that cause that module to perform certain functions. ::s .j>. 3' q!j '"3 o tS::s ~. o· ::s ....,.., 6. Flowcharts Flowcharts for IEDQFA, IEDQFAl, IEDQFA2, IEDQHM, IEDQHMl, IEDQHM2, IEDQKA, IEDQKB, IEDQKC, IEDQKD, IEDQKE, IGG019RO, IGG019Q2, IGG019Q3, IGG019Q4, and IGG019Q5 are included. -"'" w oVl ;:5 ~ ." ~ Executable TeAM Modules Microfiche Directory The modules in the TCAM system have object module names that start with the letters IEDQ. The modules that interface with the operating system have an IGG prefix, the ERP modules have an IGE prefix, the nucleus resident modules have an IGC prefix (with the exception of IEDQATTN)' and TCAM-TSO modules have an IEDA prefix. Module Name IEDAYA IEDAYB Generic Entry Name Points TSQ Attention Routme TSO TIOC 3270 Edit Routine Functions Allows the user to delete lines and I or to Interrupt the CPU task IEDAYA IEDAYA+12 EdIts output messages contained TSO buffers and MSGEN messages contamed In the SCB IEDAYB In Tables/ Work Areas External Routines IEDOTNT IGG019RB OTIP IEDAYS QTIP SVC Routine AVT CVT Entered From Exits To Method of Operation Library Chart IEDAYX IEDAYF IEDAYM IGG019RB TELCMLlB IEDAYE IEDAYO IEDAYM TELCMLlB IEDOUI (CARRIAGE) IEDQUI (CARRIAGE) TELCMLlB IGG019RB IGG019RB TELCMLlB IEDAYM IEDAYO IEDAYM IEDAYO TELCMLlB LCB QCB RCB SCB STCB TJB TSB TSID Termmal Table Termname Table TS CVT AVT LCB OCB TSID TCAM Buffer Prefix TSO Buffer Prefix IEDAYC TSO Carnage Subroutine Keeps track of, Inserts, or deletes IEDAYC IEDOTNT carnage control characters AVT CVT DCB LCB OCB SCB TSB Buffer Prefix Terminal Table Termname Table TS CVT IEDAYD IEDAYE Tjme Sharing DestinatIOn Scheduler IEDAYD TSO TIOC EdIt Routine IWAVE J Performs the same functions as the Destination Scheduler when TSO IS In the system. IEDAYZ Inspects and edits T50 output and MSGGEN messages, except for messages directed to a 3270. IEDAVE IEDAYS IEDOTNT OTIP AVT DCB LCB QCB STCB TSID AVT CVT DCB LCB QCB SCB TSB TSID Buffer Prefix Termmal Table Termname Table TS CVT __ C-.-. Module Name IEDAYF Generic Nama TSO IOHALT Entry Functions Points IEDAYF Routine Gams control when either a LeB. buffer, or an ERB IS tposted from Line End Appendage to effect an 10HALT. IEDAYH TSO Hang-up Routine IEDAYH IEDAYH+12 Identifies Ime errors to the terminal user and disconnects the terminal Tablas/ Work Areas External Routines Entered From Exits To Method of Operation Chart Library IEDQHG IGG019RB OS 10HALT AVT DCB DEB ERB LCB SCB TSID IGG019RB IGG019RB TELCMLlB IEDQTNT IGG019RB QTlP AVT CVT DCB LCB QCB SCB TJB TSB TIOCRPT IEDAYX IGG019RB IGG019RB TELCMLlB IGG019RB IGGO 19RB TELCMLlB IEDQUI (LOGON) LOGON TELCMLlB Buffer Prefix TS CVT IEDAYI TSINPUT Routine IEDAYI+2 Moves Incoming data from a IEDQTNT TCAM buffer Into TSO buffers and QTIP places the TSO buffers on the TSO Input buffer queue AVT CVT LCB QCB SCB TIOCBUF TIOCRPT TSB TSI Buffer PrefIx Terminal Table Termname Table TS CVT IEDAYL TCAM/TSO Logon Routine IEDAYL Connects the terminal user to the TSO subsystem for time sharing seSSions, on the TeAM subsystem for message-switching applications. Vl (1) $1- o· ::s .j>. !:l' ti6 ~ o ~ ~. o· ::s W VI --- IEDQTNT QTIP AVT CVT DCB OCT DEB LCB QCB SCB STARTMH QCB TIOCRPT TJB TS CVT TSB UCB Buffer Prefix Terminal Table Termname Table eXit address In cwnmg or (Iiternate MH .... W 0. o I'I.l ~ Module Generic Name Na_ Entry Points Functions Tablesl Work Areas External Ro~ IEDAYI\>1 TSO Message Generation Routine IEDAYM AYMOOO Processes a me8sag - W -.l expansJons and routines) mac:roor roucrne) I, TElCMlIB Ct-1.4 TElCMlIB TELCMlIB ..... w 00 o tn ;:i ~ Module Name IEDOAG Generic Name Message L,m,t Routine Entry Points IEDOAGOl Tablesl Work Areas External Routines Functions Llmlts the number of messages to or from a terminal during a single transmission sequence. None ~ Entered From AVT DCB LCB SCB Buffer Pref,x MSGLlMIT macro expansion Exits To MSGLIMIT macro Input Sequence Number Insertion Routme IEDOAH01 Verifies and updates an Input sequence number specified by the user In a message IEDOTNT AVT LCB SCB Buffer Pref,x Termonal Table Termname Table IEDOUI IEDOUI (SEQUENCE) (SEOUENCE) IEDOAI SkIp Forward and Scan Routone IEDOAI01 Moves the scan potOter forward the message header a specIfIed None AVT SCB IEDOUI (MH macro or routme) number of bytes, or fmds and - Buffer PrefiX returns to the caller the next field beyond the scan pomter. Library TELCMLlB expanSion IEDOAH In Method of Operation Chart IEDOUI (calhng macro or TELCMLlB C1-1.4 TELCMLlB routine} IEDOAJ SkIp to Character Set Routone IEDOAJ01 Advances the- scan pOinter to the end of a specified character strmg In a message header IEDOAX AVT SCB Buffer Pref,x IEDOUI (FORWARD. SETSCAN. IEDOAN. or IEDOAP) IEDOUI (calhng routmel TELCMLlB IEDOAK Lone Control Insertion Routme IEDOAK01 Checks hne control characters and Inserts them In a message that is ready to be sent. IEDOAL IEDOTNT IEDOUI (lEDOAF. IEDOAO) AVT DCB LCB SCD SCT Buffer Pref,x IEDOUI (OUTMSG. OUTEN D) IEDOA4 (next macro) TELCMLlB IEDOAL Compare at Offset Routine IEDOAL01 FInds and compares the next field None AVT Buffer Pref,x MH routine Calhng routine TELCMLlB IEDOAM Orlgm Routine IEDOAM01 Verifies or Initializes the ongm of a IEDOTNT message. AVT LCB OCB Buffer Pref,x Termonal Table Termname Table IEDOUI (ORIGIN) IEDOUI (ORIGIN) TELCMLlB IEDOAN MultIple Insertl Remove Routine IEDOANOl Inserts. deletes. and replaces data at locations specified by character strongs on the buffer. AVT LCB SCB Buffer Pref,x Translation Table IEDOUI (MSGEDIT) IEDOUI (MSGEDIT) TELCMLlB IEDOAO Unot Request Interface Routme IEDQAOOl Obtaons a buffer unit requested by None one of the onsert routInes and adds the unot to the buffer currently bemg processed. AVT LCB SCB Buffer Pref,x IEDOUI (lEDOAN. IEDQAP. IEDOA2. IEDOAB. IEDQBO) IEDOUI (Calhng routone) TELCMLlB m a buffer to a character strmg. -- - -- IEDOAL IEDOAX IEDOTNT IEDOUI (iEDOAF. IEDOAO) ----------- I ~-.- - Module Name Generic Nama Entry Points gO ........ '" Exits Tn Mathod of Operation Chart Library Remove at Offset Routine IEDOAP01 Removes data from a song Ie specified location In a buffer and, optionally. replaces that data with new data. IEDOAX IEDOUI (lEDOAF. IEDOAO) AVT LCB SCB Buffer Prefix IEDOUI (MSGEDIT) IEDOUI (MSGEDIT) TELCMLlB IEDOAO Operator Control Interface Routone IEDOAOO1 Tests for operator control characters and conditionally tposts the buffer to Operator Control for processing. IEDOTNT AVT LCB SCB Buffer Prefix Terminal Table Termname Table IEDOUI (CODE) IEDOUI (CODE) IGG019RB TELCMLlB IEDOAR Cancel Message Routone IEDOAR Cancels a message by settong a flag on the buffer prefix IEDOTNT AVT LCB SCB Buffer Prefix Termonal Table Termname Table IEDOBD IGG019RB TELCMLlB IEDOAS Hold / Release Terminal Routme IEDOAS IEDOAS01 GETCPB Holds a termInal. IEDOHG IEDOHM IEDQTNT IGG019RB AVT CPB DCB DEB DRO OCB OCB Extension SCB STCB UCB Buffer Prefix Termonal Table Termname Table IEDOBD IEDOCO IEDOUI (HOLD) IGGOl9RB IEDOFCo IGG019RB TELCMLlB IEDOAT Create an Error Message Routine IEDOAT01 STCBAT+2 BUilds an error message In a buffer IEDOUI and tpo.ts that buffer to Its (lEDOAF. destination. IEDOAO) AVT LCB SCB Buffer Prefix IEDOAZ IGG019RB IGGOHIRB TELCMLlB IEDOATTN Attention Routone IEDOATTN Determines whether TCAM IS AVT 105 IGGOHIR5 NUCLEUS Releases a termonal that was beong held. None running In the system when an attention Interrupt IS presented by 105 a 2848 or a 3270 control umt. Activates IGG019R5 when TCAM IS runmng In the system. ~ f Entarad From IEDOAP i f Tables/ Work Araas External Routines Functions IEDOAU Cutoff Message Transmission Routone and Subtask IEDOAU CUTFFaCB +12 Tests the cutoff count. OS EXCP Cuts off the transmiSSion of a message bemg received after the receipt of a user-specified number of bytes or on detection of Identical characters In the buffer. -- - - - - - - - - --- _. AVT DCB DEB LCB aCB SCB UCB Buffer Prefix IEDOUI (CUTOFF) IGG019RB IEDOU: (CUTOFF) IGG01!lRB TELCMLlB ~ o til (i Generic Name Module Neme Entry Points Functions Tables/ Work Areas Externel Routines Entered From Exits To Method of Operation Chart IEDOAV Look-up TermInal Entry Routone IEDOAVOl Assigns a buffer to tts destinatIOn. IEDOTNT AVT LCB SCB Buffer Pref,x Termonal Table Termname Table IEDOUI (FORWARD, IEDOAZ, IEDOA5) IEDOUI (FORWARD, IEDOAZ. IEDOA5) IEDQAW Translate Buffer IEDOAWOl Translates the data on a buffer. IEDOA3 AVT DCB LCB SCB Buffer Pref,x TranslatIon Table IEDOUI (CODE, IEDQAA, IEDOAB) IEDOUI (CODE, IEDOM, IEDQAB) TELCMLlB IEDOAXOl Scans the buffer for a specIfIed None AVT Buffer Prefix IEDOAC IEDOAI IEDOAJ IEDOA4 IEDQAC IEDQAI IEDQAJ IEDOA4 TELCMLlB ~ ." ~ Routine Buffer Scan RoutIne IEDOAX character stnng. Cl-l.4 Librery TELCMLlB IEDOAY Screen Routine IEDOAYOl Inltlahzes for a screen command modification operation on the message destination. IEDOTNT AVT DEB LCB SCB UCB Buffer Pref,x Termonal Table IEDOUI (SCREEN) IEDOUI (SCREEN) IEDOAT TELCMLlB IEDQAZ Redirect a Message Routone IEDOAZOl Redirects 8 message to the destonatlon specifoed by the user. IEDOAV IEDOUI (lEDQAE, IEDOA1) AVT SCB Buffer Pref,x IEDOBD IGG019RB TELCMLlB IEDOAO SkIp Backward Routine IEDQAOOl Moves the scan pOinter backward a specIfIed number of bytes In the header of a message. None AVT Buffer Pref,x IEDOUI IEDOUI (SETSCAN) TELCMLlB Bonary Search RoutIne IEDQA10l AVT Termname Table IEDOUI (Any TCAM IEDOAl Searches a table that IS arranged • on collating sequence. None (SETSCAN~ routme) IEDQA2 IEDOA3 Insert at Offset Routine IEDQA201 Dynamic Translation Routme IEDQA3 Inserts data In a message buffer at IEDOUI (lEDQAF, IEDQAO) a specific location. Determines which translation table to use for all onput and output translation for a specIfic terminal. Retrieves a translation table address from the approproate optIon fIeld. - IEDOUI (lEDQAE) IEDOUI (Callong routone) A4 Cl-l.4 TELCMLIB AVT LCB SCB Buffer Pref,x IEDOUI (MSGEDIT) IEDOUI (MSGEDIT) TELCMLIB AVT DCB LCB SCB IEDOAW IEDQAW TELCMLIB Module Nama IEDQA4 Generic Nama IncomIng 10utgolng Message Dehmlter Entry Points IEDQA401 DUring Incommg message processing. tposts the buffer to the proper QCB. Routine IEDQAX IEDQTNT IGG019RB Durmg outgoing processmg, passes the buffer to eIther the Buffer ASSOclBtion routine Tablesl Work Areas External Routines Functions In the Buffer Management module or to the Transparent CCW BUIlding rout me AVT DCB DEB LCB QCB SCB SCT UCB Buffer Pref,x Entered From EXIts To Method of Operation Chart Library IEDQUI (IN END, INMSG, OUTEND, or OUTMSG) IEDQGD IEDQG,. IGG015IRB Cl-13 Cl-3.3 TELCMLlB Cl-1.4 TELCMLlB Process Entry Work Area Terminal Table Termname Table IEDQA5 Forward Routine IEDQA501 Determines the destination to which a message IS to be sent. IEDQAV IEDQB3 IEDQUI (lEDQAE, IEDQAI, IEDQA1) AVT SCB Buffer Pref,x IEDQUI (FORWARD, IEDQBA) IEDQUI (FORWARD. IEDQElA) IEDQA6 Lme Control Inltlahzatlon Routine IEDQA601 Imtlahzes fIelds In the SCB to indicate the Intervals between the hne control characters to be Inserted. IEDQTNT AVT SCB Buffer Pref,x Terminal Table Termname Table IEDQUI (MSGFORM) IEDQUI (MSG=ORM) TELCMLlB IEDQA7 Counter Routine IEDQA701 Counts either the complete messages or message segments IEDQUI (lEDQAE) AVT Buffer Prefix OptIon Table COUNTER COUNTER TELCMLlB macro expansion macro expanSion IEDQUI (lEDQAE. IEDQAF, IEDQAO) AVT LCB SCB Buffer Prefix OptIon Table IEDQUI (MSGEDIT) IEDQUI (MSG:DIT) TELCMLlB IEDQTNT IEDQHGOl IGG019RB AVT LCB QCB Termmal Table IEDQBD IGG015IRB TELCMLIB IEDQUI (lEDQA5) AVT LeB SCB Buffer Pref,x IGG019RB IGGOHIRB TELCMLIB AVT LCB SCB IEDQBD IEDQUI (CHECKPT) IGGOH'RB IEDQUI (CHEC KPT) TELCMLlB that are processed by the MH subgroup In whIch a COUNTER macro appears. IEDQAB IEDQA9 MultIple Insert at Offset Routine IEDQA801 R,edlal Routine IEDQA9 ~ !. o· ::s --.,. a message. Causes the CPU to try again to Inltlste contact with a sWitched station. ThiS routme goes to the on the time delay queue for an mterval of tIme specIfIed by the user m the RETRY macro. ::F f In TIme Delay routine to place a QCB ~ t Inserts a character strmg at specified Intervals IEDQBA IEDQBB MultIple Routmg Subtask IEDQBAOl Checkpoint Requast IEDQBB Routme Queues a message for addItIonal destinations. IndIcates that a checkpoint request None has been made. .,...... t-.) o Vl S Module Name IEDQ~C Generic Name DIstrIbution L,st Subtask Entry Points IEDQBC Buffer DIspOSItIon Subtask IEDQBDOl IEDQBD02 IEDQBE Lock RoutIne IEDQBE Unlock Routine IEDOBF Cascade LIst Subtask IEDOBG Library Chart IGG019RB Controls MH processing when the last segment of a message has been sent or received. IEDQTNT AVT LCB QCB SCB Buffer Prefix Termonal Table Termname Table IGG019RB IEDQNX IGG019RB locks the connection between the IEDQTNT AVT LCB OCB SCB TermInal Table Termname Table IEDOUI (LOCK) IEDQUI (LOCKt None AVT SCB IEDQUI (UNLOCKt IEDOUI (UNLOCK) TELCMLIB IEDQTNT AVT DCB LCB QCB SCB Buffer Pref,x TermInal Table IGG019RB IGG019RB TELCMLIB Unlocks the currently connected termmal. IEDOBG Method of Operation IGG019RB the currently connected termmal and Its process entry destmatfOn. IEDOBF Exits To AVT LCB QCB SCB Buffer PrefIX Termonal Table Termname Table In dlstrobutlon hst to whIch the message was routed. IEDQBD Areas Entered From IEDQTNT D"ects a message to each of the destinations speCified ~ Tables! Work Externel Routines Functions Directs a message to the appropnate entry In the cascade hst to whIch the message was routed. TELCMLlB Cl-l.3 Cl-3.3 D1-2 TELCMLlB TELCMLlB , I Termname Table • IEDOBH Concentrator Buffer DISposition Subtask IEDOBH IEDOBHOl IEDOBH02 Locates the proper OCB-SCB and onterfaces WIth IEDOBD to control the executIon of OUTMSG for a concentrator MH. IGG019RB AVT DRO LCB QCB aCB ExtenSion SCB Termonal Table IGG019RB IGG019RB IEDOBl Message Generation Routine IEDOBL Directs a user-provided message to a specified destination. IEDOTNT AVT DCB lCB SCB Terminal Table IEDOBD IGG019RB TElCMLlB IEDQUI (ORIGINt IEDOUI TElCMLIB Cl-3.3 TELCMLlB i I I Termname Table I IEDQBM Ongln Routine for System WIth Concentrated Message Handhng Support IEDQBMOl Performs source determination on messages entered by both terminals not defined In a concentrator network and terminals defined as attached to a concentrator IEDQTNT IEDOAl IEDOUI (lEDOAU AVT lCB OCB OCB ExtenSIon SCB Buffer Pref,x Oevlce ID Table Termonal Table i i Module Name IEOOBN Generic Name Data Attach Routine Entry Points IEDOBNOl Functions Combines data that could not be processed from the prevIous buffer With the current buffer. IEOOBO SETEOM Routine IEOOBOOl Blocks or deblocks phYSical transmiSSions Into logical messages. IEDOBP TGOTO Routine IEOOBPOl Passes control from one MH to a second level M H for the handling of LMO messages entered by Tables/ Work Areas External Routines IEDOUI (lEDOAF. IEOOAO) AVT LCB IEDOAX IEDOUI (lEOOAE. IEOOAF. IEDOAO. IEDOBN. IEOOBR) AVT LCB SCB IEDOTNT IEDOUI (lEDOAE) AVT LCB Line SCB LMO SCB terminals attached to a concentrator. Buffer PrefiX Entered From Exits To Method of Operation Chart Library IEDOUI (MSGEDIT. MSGFORM. SETEOM) IEDOUI TELCMLlB IEDOUI (SETEOM) IEDOUI (MH) IGG019RB TELCMLlB IEDOUI (TGOTO) IGG019RB IEDQUI TELCMLlB IEDOUI (OACTION) IEOOBD IGG019RB IEDOUI IGG019RB TELCMLlB IGG019RB IGG01SRB IEOOBO IGG01SRB TELCMLlB IEDOUI (COMMBUF) IGGOH'RB IEDOUI TELCMLlB Buffer PrefiX Buffer PrefiX Terminal Table IEOOBO OACTION Routine IEOOBO IEDOBOO2 Forces INMSG execution. Forces OUTMSG execution. Performs a temporary hold and Sets the user error bit. release. IEDOAl IEDOBO IEDOTNT IEDOUI User Routine IGG01909 IGG019RB AVT OCB DEB DRO LCB OCB aCB ExtenSion SCB OVC ID Table Buffer PrefiX Termmal Table User BUllt Parm List IEOOBT EOB / ETB Handling Subtask IEDOBT Performs EOT / ETB handling on a buffer. IEDOUI (lEDOAE) AVT LCB SCB Cl-1.2 Cl-3.2 TELCMLlB Buffer PrefiX IEOOBU CANCELBK Routine IEOOBU v.> Performs mid-batch recovery when IEDOTNT the LEVEL=BLK operand IS coded on a CANCELMG macro. G o·~ ::t """ ::l' t§ 3 ~~. ~ o·::t -""" w AVT LCB SCB Buffer PrefiX IEOOBV COM M BU F Routine IEOOBV Moves the current buffer to the next available data area and Inserts COMMBUF STCB Into STCB chain of the appropriate LeBs. IEDOTNT AVT CMB Common Buffer Data. Area Prefix OCB LCB OCB STCB Termmal Table .. _--_.- t o til ~ Module Name IEDOBX Generic Name Log Segment Routone Entry Points IEDOBX Functions Writes (logs) a message segment onto the loggong medIum specifIed by the user on a BSAM DCB. ~ IEDOBY Log Message Routone IEDOBY Directs a message header to the Tables/ Work Areas External Routines OS BSAM CHECK OS BSAM WRITE OS GETMAIN AVT DCB None SCB Buffer PrefIx destinatIon specIfIed as the log for Entered From IEDOUI ILOG) Exits To IEDOUI ILOG) Method of Operation Chart Library TELCMLlB I I IEDOBD IGG019RB I TELCMLIB I messages. IEDOBZ Log Scheduler IEDOBZ Schedules the loggong of messages. I IGG019RB OS BSAM CHECK OS BSAM WRITE OS GETMAIN AVT DCB LCB OCB IGG019RB IGG019RB TELCMLIB None AVT CVT DCB DEB OCB Process Entry Work Area Termonal Table MCOUNT MCOUNT TELCMLIB IEDOBl MCOUNT Routone IEDOBl Returns the number of complete messages on an application program queue. IEDOB2 TPDATE RoutIne IEDOB2 Indicates that record delimiters are None to be deleted from data going to an applicatIon program. CVT DCB DEB Access Method Work Area TPDATE macro expansion TPDATE macro expansion TELCMLlB IEDOB3 DATETIME InsertIon Routine for Processing Programs IEDOB3 Inserts the date and I or time In a buffer for an applicatIon program. AVT LCB SCB Buffer Prefix IEDQA5 IEDOA5 TElCMLlB None I - Module Name IEOOB4 IEOOCA Generic Name Entry Points Slow Poll RoutlRe IEOOB4 ResIdent Operator Control Module IEOOCA TRMOFLOC OCBLOCAT ALlOCBUF LCBSETUP OSTCB Suspends further polling on Tablesl Work Areas External Routines Functions Entered From hne IEOOBO IGG019RB IEOOHG AVT LCB SCB IEOOBO Defines the operator control AVT. sets up a walt hst and Issues SVC 104. IGC00100 OSWAlT Calhng Routme AVT Op Ctl AVT OPCE OS Task Management TranSient Operator Control Routines TCAM d,spatcher OS Task Management 8 when an error occurs. Contams subroutmes hnked to by various operator control tranSient modules. OSTCB IS entered directly by the TCAM dIspatcher when the summy LCB IS posted to itself to be freed. E"its To IGG01 Method of Operation Chart ~RB Library TELCMLlB C3-1 LlNKLIB TranSient Operator I I Control Routines IEOOEB AOCTL SVC 102 Routme IGC102 Moves data across partition boundaries. Posts ECBs m other tasks. IKJTSIOO OS POST OS STATUS TESTOSP AVT CVT TS CVT IEOOEB IGG019RB AVT OCB DEB LCB PCB OCB SCB Access Method Work Area SVC 102 from any TCAM The calhng routine routine' Tposts elements to the TCAM dIsabled ready queue. Flags TCBs for apphcatlon programs as eIther ehglble or not ehglble for swappmg or rollout. IEOOEC Put Scheduler IEOOEC Removes data from an apphcatlon program work area and places It In MCP buffers. Process Entry ~ g. ::t "" ::p ~ ~ o Oil Io· ::t .... "" VI Work Area TermlRal Table Termname Table IGG019RB IGG019RB B2 C2-1 C2-2 C3-1 01-1 01-3 01-4 NUCLEUS C2-2 LINKLIB ..... "'" 01 ofIl ~ Module Name IEDOES Generic Name Retneve Service Entry Points IEDOES RoutIne Functions ProvIdes TCAM support for message retroeval from a OTAM apphcatlon program. Operator Control I ApplicatIon Program Interface Routone IEDOET Open I Close Subtask ApplicatIon Control command to an Program PCB OCB SCB Process Entry Work Area Termname Table IGG019RB IGG019RB A4 E2 TELCMLlB Reads messages from the message IEDOEB 10 anticipation of a GET command from an apphcatlon program. AVT DCB ECB OCB Process Entry Work Area Termname Table IGG019RB IGG019RB C2-1 LlNKLlB Recognizes a retrieve element and OCB IGG019RB IGG019RB If an open procedure, allocates main storage for an application program In the MCP and loads the approproate schedulers. If a close procedure, dea"ocates the main storage for the apphcation program on the MCP and deletes the approproate schedulers. IEDOEW Get Scheduler IEDOEW IEDOEB OSGETMAIN OS DELETE FREEMAIN OS LOAD queues data set IEDOEZ Get Scheduler FIFO Routone IEDOEZ Library tposts It to the DestInatIon OCB for an appticatlon program. None macro expansion I Chart An Operator whIch operator control commands can be Issued from an application IEDOEU Method of Operation AVT CIB CVT PCB OCB IEDOEB IEDOE6 OSWAlT program. IEDOEU Exits To RETRIEVE Provides the mterface through IEDOEB IEDOUI (lEDOA11 OSWAlT Entered From AVT CVT DEB LCB PCB OCB SCB TCB Access Method Work Area Buffer Pref,x Termmal Table Termname Table ~ IEDOET Tables! Work Areas External Routines RETRIEVE TELCMLIB I macro expanSion I i I I I C3-1 LlNKLlB I applicatIon program I LINKLIB Module Name IEDOEl Generic Name TCOPY Service Entry Points IEDOEl Routine Functions Copies a terminal entry Into an apphcatlon program work area. Tables/ Work Areas External Routines IEDOUI (lEDOA1) AVT CVT DCB TCB Entered From TCOPY macro expansion E o. :p Checks validity of user Input for lEDQGT Transparent TransmIssion CCW BUIlding Routine IEOQGT CCWs that are necessary to send transparent data. Buffer prefix LCB QCB SCB Terminal Table AVT Access method WORK AREA AVT CCW DCB LCB SCB Buffer Pref,x Macro expanSion IEOQA4 Macro expans on IGG019flB Cl-3.3 TELCMLlB 0. o o rIl ~ Module Name IEDOHG Generic Name Entry Points Functions Tables! Work Areas External Routines Method of Operation Chart Library AVT QCB Attached task TCAM subtask IGG019RB as Interrupt Routme Attached task TCAM subtask IGG019RB as Interrupt Routine D1-1 TElCMLlB Causes the system to cease hne activity for the number of seconds specIfIed on the I NTVAl= operand of the INTRa macro. IEDQHG IGG019RB as 10HAlT OSWTO AVT DCB DEB lOB lCB QCB IGG019RB IGG019RB A-1 LlNKLIB Stops hne activity for a hne or hne OS EXCP as 10HAlT AVT CCW DCB DEB lOB LCB IGG019RB IGG019RO IEDOCV IGG019RB IGGOl9RO E1 TElCMLlB Assl9ns a buffer or a unot to a location In the message queues data set IEDQTNT IGG019RB Scheduler Subroutine AVT DCB lCB QCB SCB Buffer Prefix DIsk Data Area Termonal Table Termname Table IEDQAS IEDOFA IGG019RB IGG019RP IGG019R6 IGG016RB IGG019RP Cl-2 C2-1 TElCMllB Assigns a buffer or a umt to a location In the maIO-storage message queues data set. IEDQTNT Scheduler Subroutine AVT DCB LCB QCB SCB Buffer Pref,x D,sk Data Area Termonal Table Termname Table IEDQAS IEDOFA1 IGG019RB IGG019RP IGG019R6 IGG019RB IGG019RP C2-1 TELCMLIB IEDQHM02 IEDOHM03 Destonatlon Scheduler- IEDQHM2 IEDQHM02 DIsk-Only Queuon9 IEDQHM03 Assigns a buffer or a Untt to a locatIon on the dIsk message queues dats set. IEDQTNT IGG019RB Scheduler Subroutine AVT DCB LCB QCB SCB Buffer Pref,x D,sk Data Area Termonal Table Termname Table IEDQAS IEDQFA2 IGG019RB IGG019RP IGG019R6 IGG019RB IGG019RP Cl-2 C2-1 TElCMLlB s:: IEDOHG IEDQHG01 IEDQHG02 IEDOHG03 TIMEEXIT Places a tIme delay request element on the tIme delay QCB Places a tIme delay request element on the time delay queue. Removes a time delay request element from the tIme delay queue. IEDQHI System Delay Subtask IEDQHI IEDOHK Stop lone 1/0 Subtask IEDOHK group. Issues a Prepare HIO command sequence to check for an attention sIgnal from a non-TSO 2741 or 1050 termonal. IEDQHM Destonatlon Scheduler IEDOHM1 Destination Scheduler- IEDQHM1 Maon-Storage-Only Queuon9 ----- Exits To IEDQEB IGG019RB as STIMER as TIME TIme Delay Subtask "1:1 IEDOHM2 Entered From IEDOHM IEDQHM02 IEDQHM03 Module Name ::s ~ f f a. ci" ::s ................ Entry Points Act,vate-I / 0 Generator Subtask IEDQKA IEDQKA02 IEDQKB Act,vate-I /0 Generator for BSClines IEDQKB I EOQKA02 IEDQKC Act,vate-I /0 Generator for Start/Stop Lines IEDQKC IEOQKA02 IEDQKA g.~ Generic Name Functions Builds channel programs for ,mt,al External Routines Tables! Work Areas Entered From Ex,ts To Method of Operation Chart Library IEDQTNT OS EXCP AVT CCW DCB LCB SCB Buffer Pref,x Terminal Table Termname Table IGG019RB IGG019RO IGG01!IRB IGG01!1RO Builds channel programs for ,mt,al contact. cont,nue. and reset sequences on BSC tines only. IEDQTNT OS EXCP AVT CCW DCB LCB SCB Buffer Pref,x Terminal Table Termname Table IGG019RB IGG019RO IGG01!1RB IGGOlilRO TELCMlIB Builds channel programs for mltlal IEOQTNT OS EXCP AVT CCW DCB LCB SCB Buffer Pref,x Terminal Table IGG019RB IGG019RO IGGOl ~RB IGG019RO TELCMlIB contact. continue, and reset sequences. contact. contmue. and reset sequences on start/ stop hnes only. Cl-l.l Cl-3.1 TELCMlIB u. N Module Name o CIl (5 IEDOKD ~ "l:I ~ Generic Name ActIvate-I/O Generator Subtask for Leased and Start / Stop Lmes and No TSO Entrv Points IEDOKD tEDQKA02 Functions Builds channel programs for Initial contacts, continue. and reset sequences for leased and start/ stop hnes when there IS no TSO interface necessary. Tables! Work Areas External Routines IEDO,NT as EXCP AVT CCW DCB LCB SCB Buffer Pref,x Entered From Exits To Method of Operation Chart Library IGG019RB IGG019RO IGG019RB tGG019RO TELCMLlB AVT CCW DCB LCB SCB Buffer Prefix Terminal Table IGG019RB IGG019RO IGG019RB IGG019RO TELCMLlB AVT TCB IGG019RB OS Termm8tlon Routine I Terminal Table IEDOKE IEDQNA ActIvate-I/O Generator Subtask for a OTAMCompatIble System IEDOKE IEDQKA02 Resident Closedown Completion Routme IEDQNA IEDONA3 BUilds channel programs for initial contact, continue, and reset sequences for only those devices IEDOTNT as EXCP that OTAM supports. Activates the nonreSident IEDQNA2 closedown completion routine. Determines whether a TeAM I NonreSident Closedown Completion Routme IEDQNA2 IEDONB Application Program / ·Checkpolnt Interface IEDONB JEOONB02 IEDONB05 Closes down the MCP and any TCAM attached tasks. Routine element and tposts It to the ready queue In the MCP when an apphcation program Issues a TCAM macro that changes the MCP environment. '- -- TELCMLlB READY tlon Routine IGG019RB as DETACH as POST as WAIT OSWTO Builds a checkpoint request El following as Termma- attached task has termmated abnormally. IEDONA2 User code IEDOEB IEDOTNT OSWAlT AVT DCB DEB lOB TCB IEDQNA IEDONA AVT DCB DEB LCB PCB Access Method Work Area Checkpomt Work Area Terminal Table Termname Table CKREO macro CKREO macro expansion CLOSE macro expansion IEDOE3 OPEN macro expansIOn expansion CLOSE macro expansion IEDQE3 (WEN macro expansion TCHNG macro TCHNG macro expanSion expansion LlNKLIB DI-2 DI-3 DI-4 LlNKLIB Module Name IEDQND Generic Name Ready Routine Entry Points IEDQNO Functions IEOQNG IEDQNH IEOQNJ IEDQNK IEOQNM IEOQNO IEDQNP IEDQNQ IEDONR IEOONS OS DELETE OS LOAD OSWAlT AVT CVT OS Task Management OS Tas, BUilds an InCident dtsk record when the checkpOint request element IS an Lea from an MH macro. IEOQTNT OS GETMAIN AVT CheckpOint Work Area Option Table Terminal Table Termname Table IEDQNF IEOQNF necessary. IEOONG ~ BUild InCident Record for MH Routine IEDQNG Determines the action required by the checkpOint task and which module IS required to do the work. 0. .... LlNKLlB 01-1 El LlNKLlB 01 LlNKLlB CheckpOint Work Area I ! BUilds an InCident checkpOint disk record when the checkpOint request element IS from a TCHNG macro In an application program. IEDQTNT OSGETMAIN AVT CheckpOint Work Area Option Table Termmal Table Termname Table IEOQNF IEDONF 01-4 LlNKLlB IEDQNJ Incldpnt CheckpOint for Operator Control Routme IEDQNJ BUilds an inCident checkpOint disk record when the checkpomt request element IS from an operator control command. OS GETMAIN AVT CheckpOint Work Area Operator Control AVT IEDQNF IEDQNf 01-3 LlNKLlB IEDQNK Environment CheckpOint Routine IEDQNK BUilds environment checkpOint records for disk. OS GETMAIN AVT QCB CheckpOint Work Area InVitation List Option Table Terminal Table Termname Table IEDQNF IEOQ~ 01-1 El LlNKLlB ::s ::s Mana~Jement A3 01-1 IEDQNH ~ g. expanwon Library BUild InCident Record for TCHNG Routine c)" ::s N' expansion Method of Operation Chart IEDQNH ~ 1 ~ i READY macro READY macro Attaches On-Line Test. If indicated. IEOONf Exits To AVT Operator Control AVT Terminal Table Termname Table Loads IEOQNX and I or IEOQHI. If CheckpOint Executor Entered From IECPCNVT IECOSCRI IEDQTNT OS ATTACH OS EXCP FREEMAIN OS GETMAIN OS LOAD OS POST OSWAlT OSWTO If mdlcated. reads and processes all mCldent checkpomt records that are more recent than the environment record. Attaches the CheckpOint Executor. IEOQNF Tables/ Work Areas External Routines F ! -..,. VI otI.l (i Module Name IE~QNM ~ Entry Points Generic Name IEDQNM Bulid CKREQ D.sk Record Routme '"= ~ Tables/ Work Areas External Routines Functions Bulids a CKREQ checkpoint d.sk record for each open destination aCB that IS associated with the applicatIOn program that has .ssued the CKREQ macro. IEDQTNT OS GETMAIN Entered From Exits To Method of Operation Chart Library IEDQNF IEDQNF AVT Checkpoint Work Area IEDQNF IEDQNF AVT CVT DCB DEB Checkpoint IEDQNF IEDQNF 01-1 LlNKlIB IEDQNF IEDQNF E1 LlNKUB IEDQNF IEDQNF LlNKLlB lEDQNF IEDQNF LlNKllB IEDQBD IGG019RB AVT DEB QCB Checkpoint 01-4 LlNKLlB Work Area Opt.on Table Terminal Table Termname Table IEDQNO Checkpomt Queue IEDQNO FREEMAIN Puts disk records on the checkpoint I/O queue and updates the last request element for which a disk record was built. IEDQNP Locates the next disk record to be written, determines the proper Manager IEDQNP Checkpoint D.sk I/O Routme ITA, and Issues an EXCP. IECPCNVT IECOSCR1 OS EXCP OS TIME OSWTO UNKLIB Work Area Termname Table IEDQNQ IEDQNQ Checkpoint Notification and DISposition Routine IEOQNR IEDQNR CheckpolntNo Available AVT Checkpoint Handles the situation OSWTO AVT Checkpoint Work Area In which a checkpoint record cannot be satisfied. IEDQNS CheckpolntNo Inc.dent Records Routine IEDQNX IEDQEB FREEMAIN OSWTO cond.tlOnal GETMAIN for a Core Routine IEDQNS Removes checkpoint request elements and frees a checkpoint record In main storage after the record 15 written on disk. Operator Awareness Message Router IEDQNX Work Area Termname Table Causes an environment checkpoint to be taken when all the incident records on the checkpoint data set have been used. IEDQEB IEDQHG Directs messages to the primary operator control terminal when that terminal IS not the system console. IEDQTNT AVT Checkpoint Work Area AVT lCB QCB SCB Buffer Prefix Terminal Table -- Al 01-2 LlNKLlB Module Name IEOQOA Generic Name GETMAIN, Termname Table Sort, and Attach Routine Entry Points IEDQOA Functions Controls the tranSient routine IEOQOB. the WTOR Interpreter. ObtainS main storage for Ime buffers, a mam-storage message queues data set, CPBs. trace tables, and cross-reference tables Sorts the terrnnarne table entries and the concentrator deVice I D Tables/ Work Areas External Routines OS ATTACH OS CHAP OS EXTRACT FREEMAIN OS GETMAIN OS LINK OS LOAO OS QEOIT OSWTO AVT Termmal Table Entered From E>.its To INTRO macro INTRO macro expansion expanSion Method of Operation Chart Library Al LlNKLIB Al LlNKLIB Termname Table table entries. Attaches the operator control, on-hne test, and FE common write tasks. Loads IEOQHI and/or IEOQNX. If indicated In the AVT. Scrambles the mput password. IEDQOB WTOR Interpreter IEDQOB Routine OSWAlT redefme certain system values that OSWTO were specified on the INTRO OS WTOR Allows the system operator to AVT CVT TCB OS LINK from IEOQOA OS LlI~K to IEOQOA macro at assembly time. IEOQOT TCAM Abnormal Close Routme IEDQOTOI Resets any error or attention flags that TCAM has modified In the UCBs. None CVT UCB System Abend System Abend lEOOTNT Termname Table Code IEOQTNT Converts the two-byte ordmal Index of a termname table entry to the actual address of that entry In the terminal table. None Termname Table Any TCAM routme Call1n!l routine Cl-1.4 Stored In the Termname Table IEOQUI User I nteri ace Routine IEOQUIOI Handles the Imkage between MH macro expansions and the functional MH routmes. None AVT CVT LCB MH VCON Table SCB Buffer PrefiX MH macro expansions and routines MH f(>utlnes Cl-l.3 Cl-l.2 CI-3.3 TELCMLlB Handles the linkage among some of the functional MH routines and the lower-Ieve~ MH routines. u:> (t> ~ o· ::s ~ ::l' .:3 ~ ., ~e. o·~ ::s V1 V1 SVCLIB '0\" o v.> Generic Name Module Nama Entry Points Functions Tables! Work Arees External Routines IEDOWA IEDOWM2 LlNKLIB GETMAIN area OlTCB Unit Test IEDOWA IEDOWA IEDOWM2 LlNKLIB None AVT CVT OLTCB IEDOWA IEDOWA IEDOWC LlNKLIB None AVT CVT LCB OLTCB SCB IEDOWB IEDOWC XCTL to IEDOWH If TRM LlNKLIB ACB AVT CVT DCB DEB IEDOWC work area LCB OLTCB SCB TCB IEDOWB Calls In and establishes the functions required to execute an on-line test. IEDOWB IEDOWK IEDOWN (lEDOW35) IEDOWP (lEDOW39) IEDOWO (lEDOW37) IEDOWR (lEDOW28) IEDOWS (lEDOW36) IEDOWV (lEDOW21 IEDOWAC) IEDOWX (lEDOW41) IEDOWY (IEDOWI6) IEDOW47 IEDOWAB IEDOWAI IEDOW42 (lEDOW43) IEDOW44 IED024 AVT LCB OLTCB TCB IEDOWAB TIME Service Module IEDOWAB Returns time of day. In packed decimal. to the umt test in Register I. None None IEDOWAJ CU Test Service Module IEDOWAJ Venfles that all requested channel addresses are offline or issues a command to assign them to TOTE. None IEDOWB Resource Management Module IEDOWB Services requests from IEDOWA. IEDOWBI Test Request IEDOWBI ObtainS the TRM from the TCAM buffer and returns the buffer to TCAM. ~ Message AnalysIs Buffer Analyzer IEDOWC Test Request Message AnalysIs Module 1 IEDOWC Analyzes TRMs and turns over control to the appropriate routine for further processing. IEDOWK AVTUI IEDOCV Terminal Table Termname Table TTE L..--- Library IEDOWA IEDOWA "I:j Method of Operation Chart LlNKLIB TOTE Resident Module ~ Exits To IEDOO5 IEDOWA ~ Entered From from numeric termrnal IEDOWCI IEDOWJ IEDOWI LlNKLIB Generic Name Module Name IEDQWCl Test Request Message Analysis Module 2 Entry IEDQWCl Tables/ Work Areas External Routines Functions Points Analyzes the test device field of the TRM. IEOQWK AVTVI AVT CVT DCB DEB IEDQWCl Entered From E,jts To Method of Operation Chart Library IEDQWC IEDQWC2 IEDQWE L1NKLIB IEDQWCl IEDQWD IEOQWE L1NKLIB IEDQWC IEDQWE L1NKLIB IEOQWF IEDQWF L1NKLIB work area lCB OLTCB QCB SCB TCB Terminal Table Termname Table UCB IEDQWC2 Test Request IEDQWC2 Message AnalysIs Module 3 IEDQWD TOTE Dispatcher Module IEDQWD Verifies the test and option fields IEDQWK Work area OlTCB VCB Sets NCP flag If no control print option was specified In TRM; AVT BEB CDS CVT DCB lCB OlTCB TTE Termname Table UCB performs data protection checks; protect.s other OLTs from uSing the same devices/lines as reqUired; stops test devices to prevent their use by TCAM; and bUilds TOTPRENT if test IS for termmals on SWitched hnes. IEDQWE IEDQWF TOTE Test Control Module IEOQWE OLT Test IEDQWF Schedules the OlT5 requested IEDQWK IEDQCU IEDQCV OLTCB VCB Frees the mam storage required by Device OLTCB IEOQWE IEDQWEl L1NKLIB IEDQWE dUring OLT execution passes control to the OLT Root Tests AVT CVT DCB OLTCB IEDQWC IEDQ\NC IEDQNE L1NKLIB IEDQWC IEDQWIA IEDQWID IEDQWIE IEDQWE L1NKLIB In the TRM and cleans up after their execution. Control Module 2 IEDQWCZ of the TRM. (OLTs) Module, and receives control back from It. t:Il (1) a.o IEDQWH ::l Numenc Test Request Message Handler IEDQWH Processes a TRM from a numenc entry terminal. IEDQWO ~ ::p Termname Table o ~ f. ~. o ::l -'" -..I IEDQWI TOTE alias Conflgurator IEDQWll Scheduler IEDQWI IEDQWll Clears the CDS work and Input areas, sets up the output area for CDS members and prompts the user for the type of configuration functIOn. IEDQWIA IEDQWID IEDQWIE IEDQWK IEDQWE CDSWORK VI 00 Module Name Generic Name o tI.l ;1 IEDQWIA > ;s:: Entry Points Conf,gurator and Scheduler IEDQWIA Conftgurator IEAQWID functions IEDQWID IEDQWIU IEDOWI7 IEDOWI8 IEDOWI9 IEDQWK CDSWORK IEOOWI5U IEDQWIB IEDQWIA IEDQWK OLTCB UCB CDS work ExhibIt TP configuratIOn data set numbers. IEDQWK CDS Work Determmes whether the TP Ime IEDQWK Handles the add,tion of configuration data to the locai and remote confIguratIon data sets. '"0:1 ~ IEDQWID Change / Delete Scheduler IEDQWIE Configuration IEDQWI5U Conflgurator Submodule Deletes old CDS entnes. Gets CDS records for CHANGE function. IEDQWIE ExhIbIt Module IEDQWI5U Tables! Work Areas External Routines Entered From Exits To Method of Operation Chart library IEDOWI IEDOWID IEDQWll IEDOWI IEDOWIA IEDQWll IEDQWIA IEDQWI5U IEDQWI8 LlNKLIB IEDQWI IEDQWI LlNKIB IEDQWIA IEDQWID LlNKLIB UCB IEDOWIA IEDQWID IEDQWI9 IEDQWK CECOM COS Work IEDQWIA IEDQWIA IEDQWID LlNKLIB Service UCB IEDQWIA IEDOWID IEDQWIE IEDQWIA IEDQWID LlNKLIB IEDQWIA· IEDQWI IfDQWIA LlNKLIB area LlNKLIB Error Recovery area CDS Work area address 15 for commUnicatIon or graphic devices and obtams the TCU adapter type. IEDQWI7 Conflgurator IEDQWI7 Submodule 3 Determmes Ime type and translation code. area Module IEDQWI8 Conf,gura tor Submodule IEDQWI8 Requests from C. E. and verifIes terminal name. AVTUI IEDQWK Configurator Submodule - IEDQWI9 Asks the C. E. for the terminal type and, if the line IS bisync, determines the translation code of the terminal. area Terminal Table Termname Table UCB Obtains polling cmd addressing characters from Termmal Table. IEDQWI9 CDS Work IEDQWK CDS Work area OLTCB Module Name IEOOWJ Generic Nama Test Request Message Prompter Module 1 Entry Points IEOOWJ Tables/ Work Areas External Routines Functions Analyzes OLTCB flag bytes to determme why It was called. IEOOWK AVTUI AVT CVT OCB OEB IEOOWI Work area LCB OLTCB OCB SCB TCB Termmal Table Entered Exit~. From To Method of Operation Chart Library IEDOWC IEOOWCl IEDOWC2 IEOOWJ' IEOOWE LlNKLIB Termname Table IEOOWJl Test Request Message Prompter IEDOWJl Prompts the C. E. for the test and IEOOWK IEOOWJl Work area OLTCB SCT IEOOWJ IEDOWJl IEOOWA LlNKLIB optIon fIelds of the TRM. Module 2 IEOOWJ2 Test Request Message Prompter Module 3 IEOOWJ2 Prompts the C E. for the alternate pnnter IEOOWK AVTUI AVT CVT OCB OEB IEOOWJ2 Work area OLTCB OCB Terminal Table Termname Table HE UCB IEDOWJl IEOOWC IEOOWE LlNKLIB IEOOWK TOTE Message Module IEOOWK Provides two-way commUnication between TOTE and the operator. IEOOWL I EOOWl1 IEDOWL2 IEDOWL3 IEOOWO OLTCB TCAM Buffers Message Any TOTE modules Any TOTE LlNKLIB Parameter List modulE" reqUlrmg requlrttlg message service except TOTE service modules messaqe serVICE' except TOTE serVICE' modult!s CIl ~ IEOOWL ::; TOTE Message Submodule 1 IEDOWL Moves requested output message to the output buffer ,n the OLTCB. None OLTCB Message IEOOWK IEDOWl( LlNKLIB Parameter .j>. List 1 IEOOWL1 j;l TOTE Message Submodule 2 IEDOWLI TOTE Message Submodule 3 IEOOWL2 3 o 0Cl ~ ~. g. ::; UI \Q IEOOWL2 Moves the requested output message to the output buffer the OLTCB. None OLTCB Message Parameter L,st IEOOWK IEOOWK LlNKLIB None OLTCB Message Parameter List IEOOWK IEOOWK UNKLIB In Moves the requested output message to the output buffer In the OLTCB. .... 0\ o otll ~ Module Name IEOQWL3 Generic Name TOTE Message Submodule 4 Entry Points Functions Moves requested (output message to output buffer in the OLTCB. lEOQWL3 None Work Areas OLTCB Messag.e Parameter Entered From Exits To Method of Operation Chart Ubrary IEOOWK IEOOWK lINKUB list "'CI ~ Tablesl External Routines j IEOQWM2 Trace Function Module IEOOWM2 Provide C. E. with a limited trace facility for OLT eXEicu!ion and permits _aluation of service module ¥eturn comlS. I EOOWO IEOOWM2 Work area OLTCB SCT All service modules All service modules LlNKllB IEOOWN altas IEOOW35 EXIO ServIce Module IEOQWN Imt.ates 1/0 operations. None OCB ECS lOB 10BLOCKS OLTCS TECB I EOQWA IEOOWA I EOOWM2 LlNKLlB IEOOWO Access Manager I EOOWO Determines the de!:tination output devIce and communicates with the on-line test operator. IEOOGA IEOQSO IEOOHM AVT lCS OLTCS TRM IEOQWK IEOQWP lEOQWPl IEOQWP2 IEOQWO IEDOWK IEOOWP 1EOQWP 1 IEOQWP2 IEOOWQ LlNKLlB IEOQWP alias lEOOW39 OPRINT Service Module I EOQWP ServIces the OPRINT macro by formatting the out]:lut messages~ IEOOWO OLTCS Section Preface IEOQWA IEOQWPI IEOOWM2 UNKt.1S IEDOWPI OPRlNT ServIce Module IEOOWPI Continues serVICing the OPRINT macro. IEOQWO OLTCS IEOQWP IEOOWP2 IEDOWM2 lINKLI8 IEOOWP2 OPRINT Service Module 2 IEOQWP2 Continues servicing the OPRINT macro. IEOQWO OLTCB IEOQWPI IEOQWA IEDOWM2 LlNKLlB IEOQWQ alias IEOOW37 CECOM ServIce Module IEOQWQ Service requests for communication with the control terminal. IEOOWO OLTCS IEOQWA IEOOWA lEOOWM2 lINKLlB IEOQWR alias IEOOW28 PLINK Service IEOOWR IEOQW28 Loads and deletes rnodules. None IEOOWR Work area OLTCB IEOQWA IEOOWA I EOQWM2 LlNKLlB Module --- I I II I I ........:- .. _ - - - - - - - - - Module Name Generic Name t:ntry Points Functions Causes the on-line test routine to Tables/ Work Areas External Routines Entered From None 10BLOCKS OLTCB TECB VCB IEOOWA None OUCB IEDOWA Ex~:s T(, Method of Operation Library Chart IEOOW/\ IEDOWln LlNKLlB lEDOWJ~ llNKLlB IEOQWS aHas IEDOW36 Walt I/O Service Routine IEDOWS IEDOWV aJias IEDOWAC. IEDOW21 TOTE GRAB lEDOWV lEOQWX TOTE Convert Service Module IEDOWX Converts data from hexadecimal to EBCDIC or vice versa as specified by the macro parameter list. None None GETCONFG Service Module IEDOWY Reads the CDS data set for IEDOWK DCB DECB OLTCB LlNKLlB READD ServIce Module IEDOW24 IEDOWK DCB OECB lOB lINKlIB MORECORE IEDOW42 None OLTCB IEDOWA IEDOWA IEDOWM2 LlNKLIB Issues a Halt 10 to a device. None DCB ECB lOB OLTCB TECB IEDOWA IEDOWA IEDOWM2 UNKLIB Handles the selection and running None IEDOW47 Work area SCT IEDOWA IEDOINA IEDOINM2 LlNKLlB OS BSAM OS EXCP OS FEOV OS GETMAIN OS RDJFCB OSWAlT OSWTO None OS Task OS Ta,k UNKUB ahas wait untd the initiated I/O event has been completed. Service Module & ahas configuration data about a TCV or terminal. IEDOW16 IEDOW24 IEDOW42 IEDOWI~2 assignment. $LETGO ServIce Module IEOOW41 IEDOWY Assigns a secondary device to the umt test, or removes such an Reads data from a sequential data set. Obtalns.additional main storage alias Service Module for the unit test by a GETMAIN IEDOW43 and FREE CORE Service Module macro. IEOOWA IEOOWA IEDOWM2 LlNKLlB Frees the main storage obtained by the MORECORE module. IEOOW44 010 ServIce Module IEDOW44 IEDOW47 Routme Service Module IEDOW47 Disk Message Queue Inlt~ahzer IEDQXA IEDOXA til (1) ~. ci" ::I ~ ~ ~ ~ f ~o ::I ..... 0'1 ..... of routines withm an OlT section. BUIlds a formatted disk data set. Management Manugement -'~-.. 0\ t-) otIJ ~3: Module Name IGCOO10D Generic Name Entry Points IGC0010D Operator Control Input Handler Routines Checks validity of command format. Processes comma nds from 'tI application progrs,m, TOTE, and ~ Tables/ Work Areas External Functions Entered From Exits To Method of Operation Chart Library SVC 102 (AQCTL) OS QEDIT OS XCTL AVT CIBTBL MPPTBL OP Ctl AVT XCTLTBL IEDQCA IGC0710D IEDQCA IGCM010D IGCZ010D IGCD010D IGC0310D IGCR010D IGCOll0D IGCV010D IGC10l0D IGCH010D SVCLlB OS XCTL AVT OP Ctl AVT Verb Table XCTlTBl IGCOO10D IGC0710D IGCDOlOD IGCH010D IGCM010D IGCR010D IGCZ010D IGC0310D SVCLlB OS XCTL AVT OPCE OP Ctl AVT All operator control command processmg routines. lGC0410D lGC0710D SVCLlB OS XCTL AVT OPCE OP Ctl AVT lGC0310D IGC0510D IGC0710D SVCLlB OS XCTL AVT OP Ctl AVT TCB TIOT IGC0410D IGC0710D IGC0810D SVCLlB FREEMAIN OS GETMAIN OS QEDIT AVT CIB CVT SVC 34 IGC0503D lGC2103D SVCUB the system console. Checks for freed resources and the element for acqUires command processing. Oequeues Processed mput from the mput queue. IGCOll0D IGCOll0D Terminal Input Scanner Processes operator control commands from a terminal. Checks for a command. canc(~led control Venf,es JOBNAME or PROCNAME on MODIFY commands. lGC0310D IGC0310D Operator Control Error Message Generator 1 Generates an error message and transfers control to the output writer. When the message requested IS not generated by this module, control IS transferred to Message Generator 2. IGC0410D lGC0410D Operator Control Error Message Generator 2 Generates an error message and transfers control to the output writer. When the message requested IS not generated by thiS module, control IS transfern~d to Message Generator 3. IGC0510D IGC0510D Operator Control Error Message Generator 3 Generates an error message and transfers control to the output wnter. 1 If the message requested IS not generated by this module, control IS transferred to Mt!ssage Generator 4. IGC1303D TCAM Command Scheduler - SVC 34 - IGC1303D BUilds a CIS for anv operator control command Emtered from the system console. Address In register 14 Module Name IGC0610D Generic Name Operator Control Entry Points IGC0610D Incident Checkpoint I nterface Routine IGC0710D Operator Control Output Message Wnter IGC0710D Functions Posts a request to checkpoint (If checkpoint IS active) to write an operator control incident record for the command Sends a message to a terminal or to the console. Passes a return code to TOTE or an application program. Tables/ Work Areas External Routines OS XCTL AVT Ckpt work area OPCE Op Ctl AVT Operator Control VARY, HOLD, RELEASE Message Module r.n "g. (") ::l .j>. ~ o ~ 3 o ., ~ ~. ~ c)" ::l ..- cw L_ IGC0410D IGCM210D IGCM510D IGCM610D IGCM710D IGCM810D IGCH010D IGCR010D IGCI010D IGCI110D IGCV110D IGCV210D IGCV310D IGCV410D The module SCVLlB Identified by O~WTG field In the element pom1ed to by OPC:OPCE, or to the addr ~ss In OPC~SAVE If re~,tart IS In progress AVT IEAOFX Op Ctl AVT OPCE PCB IGC0310D IGC0410D IGC0510D IGC0810D IGC0910D IGCM110D IGCMA10D IGCD110D IGCD210D IGCD310D IGCD410D IGCD510D IGCD610D IGCD710D IGCD810D IGCD910D IGCOO10D SVCLlB Generates an error message and transfers control to the output writer OS XCTL AVT ERRORTAB OPCE OP Ctl AVT IGC0510D IGC0710D SVCLlB IGC0910D Generates rephes requested by VARY, HOLD, and RELEASE OS XCTL AVT Op Ctl AVT IGCH010D IGCR010D IGCV110D IGCV210D IGCV310D IGCV410D IGC0710D SVCLlB Generator 4 Operator Control Library Chart IGC0810D Error Message IGC0910D Operation AOCTL OPCGETBUF OPCLCB OS XCTL WTO Frees any buffer Units associated with the command IGC0810D Method of E (its To Entered From operator control modules. .0'1 .... o tfl ~ Module Name IGCD010D Generic Name DISPLAY Scan/ Map/DIspatch Routone Entry Points IGCD010D Functions Performs vahdity checkong of display commands. Entered From IGC0310D IGCD110D IGCD210D IGCD310D IGCD410D lGCD510D IGCD610D IGCD710D IGCD810D IGCD910D SVCLlB Processes operator control commands requesting d,splay of primary or secondary operator control terminals. OS XCTL AVT OPCE Op Ctl AVT Termonal Entry Termname Table IGCD010D IGC0310D IGC0710D SVCLlB Processes operator control OS XCTL AVT OPCE Op Ctl AVT aCB Termonal Entry Termname Table IGCD010D IGC0310D IGC0710D SVCLlB OSXCTL AVT DCB DEB OPCE Op Ctl AVT IGCD010D IGC0310D IGC0710D SVCLlB IGCD010D IGCD03100 IGCD0710D SVCLlB IGCD010D IGC0310D IGC0710D SVCLIB Determmes the request and IGCDll0D IGCD210D DISPLAY Queue Status Routine IGCD210D DISPLAY InVItatIon IGCD310D IGCD310D commands requestong display of aCB fIelds. Processes operator control commands reque,'tong display of List Entries Library IGCOll0D transfers control to the proper d,splay module. DISPLAY Control Terminal Method of Operation Chart AVT OPCE Op Ctl AVT OpCtl work area Maps command data onto element. IGCD110D Exits To OSXCTl OPCDCBLK OPCTPFLK '1:1 ~ Tablesl Work Areas External Routines active or mactive terminals. Termn8me Table IGCD410D DISPLAY Intercepted IGCD410D PTocesses operator control OS XCTL commands requesting dIsplay of the hst of termmals being held. Terminals AVT OPCE Op Ctl AVT Op Ctl work area I Terminal Entry Termname Table IGCD510D DISPLAY Terminal Information Routine IGCD510D Processes operator control commands reques.tlng display of speCIfIed terminal entry fIelds. OSXCTL AVT OPCE OpCtl AVT Sense Byte ConverslOn Table Status Byte Table Termonal Entry Termname Table --- - I Module Name IGCD610D Generic Name DISPLAY Line Entry Points IGCD610D Address Routine Functions Processes operator control commands requesting dIsplay of the Ime address and relative Ime number for a specified terminal. Tables/ Work Areas External Routines OS XCTL AVT DCB DEB OPCE Op Ctl AVT QCB Entered From EJClts 10 Method of Operation Chart Library IGCD010D IGC0310D IGC0710D SVCLlB IGCD010D IGC0310D IGC0710D SVCLlB IGCD010D IGC0310D IGC0710D SVCLlB IGCO::l0D SVCLlB Terminal Entry Termname Table IGCD710D DISPLAY InvitatIOn IGCD710D List Routine Processes operator control commands requesting display of the status field of inVitation lists. OS XCTL AVT DCB DEB OPCE Op Ctl AVT Op Ctl work area Status Conversion Table IGCD810D DISPLAY Option IGCD810D Field Routine Processes operator control commands requesting display of the terminal option fields OS XCTL AVT OPCE Op Ctl AVT Terminal Entry Termname Table Translate Tables IGCD910D {)ISPLAY Line InformatIOn Routine IGCD910D Processes operator control commands requesting display of the LCB fields for a specified line. OS XCTL AVT DCB DEB LCB OPCE Op Ctl AVT QCB SCB Status Conversion Table Vl g." ~ ~ ::\' ~ ~ ~ OJ ~ N· ~ o· ~ ...... Cl"\ U1 IGCD010D IGCO~'10D 0\ 0\ o rn ~'"= Module Name GCH010D Generic Name Entry Points HOLD Termtnal IGCH010D Transmission Routine Fun(:tions Processes a request to prevent terminal from aCGeptmg messages Tables/ Work Areas External Routines OS XCTL ~ AVT DCB DEB LCB OPCE Op Ctl AVT aCB Entered From Method of Operation Chart Exits To Library IGCOO10D IGC0110D IGCV210D IGC0610D IGC0310D SVCLlB IGCOO10D IGClll0D IGC0610D IGC0710D SVCLlB IGCI010D IGC0610D IGC0710D IGCV110D SVCLlB IGCM010D IGC0310D IGC0710D IGCM410D IGCM510D IGCM710D IGCM810D IGCM910D SVCLlB Terminal Entry Termname Table IGCI010D IGCIOID Deactivate Invitation List Entry Routine Deactivates a specified inVitation OS XCTL list entry. AVT DCB DEB LCB OPCE OP Ctl AVT aCB Termmal Entry Termname Table IGClll0D Activate or Move Invitation Entry Routtne IGCll10D ust Activates a specified Invitation list entry or moves a new inVitation OS XCTL list. AVT DCB DEB LCB OPCE Op Ctl AVT aCB Termmal Entry Termname Table IGCMA10D MODIFY Scan/ Map/Dispatch Module II IGCMA10D IGC0110D IGCOO10D IGC0310D IGCM210D IGCM710D IGCMA10D SVCLIB Formats message when operator control modify function IS successful. OS XCTL OPCDBLK OPCTOFLK AVT OPCE Op Ctl AVT Op Ctl work area IGC0610D IGCM910D IGC0710D SVCLlB IGCM210D Processes operator control commands raquas tln9 that Auto Poll be started or .nopped. OS XCTL OPCDCBLK AVT DCB LCB OPCE Op Ctl AVT IGCM010D IGC0310D IGC0610D SVCLlB IGCM410D Processes operator control commands reques110g activation of the system or poll delay mterval. OS XCTL OPCDCBLK OPCTOFLK AVT OPCE Op Ctl AVT Op Ctl work IGCMA10D IGC0310D IGC0610D IGC0710D SVCLlB MODIFY Function Message Module IGCM110D IGCM210D MODIFY Poll validity. maps mto element. and dispatches control to module or to scan 2 for further scan operations. Routme Routme area AVT OPCE Op Ctl AVT Op Ctl work IGCMll0D MODIFY Interval AVT OPCE Op Ctl AVT Op Ctl work Scans MODIFY commands. checks OS XCTL OPCDCBLK OPCTOFLK IGCM010D IGCM410D OS XCTL Checks validity and dispatches control to proper module. MODIFY Scan/ Map / Dispatch Module IGCM010D Conttnues scan 0" MODIFY operator commands. area - --- - -- ----L- ------ _. Module Name Generic Name Entry Points Functions IGCM5l0D MODIFY Intense Routme IGCM5l0D Processes operator control commands requesting modification of sense information for intensIve recording. IGCM6l0D MODIFY Trace Status Routine IGCM6l0D IGCM7l0D MODIFY Control Termmal Routme IGCM7l0D Processes operator control commands requestmg that the primary operator control terminal OS XCTL OPCDCBLK OPCTOFLK MODIFY Options Routme IGCM810D ~ = ~ ::p t f f.= .- 0\ -.l EXits To Method of Operation Chart Library IGCMA10D IGC0310D IGC06l00 SVCLlB Processes operator control OS XCTL commands requesting modification OPCDCBLK of trace status for a specified Ime. AVT DCB LCB OPCE Op Ctl AVT IGCMA10D IGC03" 00 IGC06" 00 SVCLIB OS XCTL OPCDCBLK OPCTOFLK AVT OPCE Op Ctl AVT Op Ctl work IGCMA10D IGC0310D IGC06100 SVCLlB Processes operator control commands requesting modificatIon of terminal option fields" 2:. o Entered From AVT DCB LCB OPCE Op Ctl AVT Terminal Entry Termname Table be changed to the terminal speCified In the command" IGCM8l0D Tables! Work Areas External Routines area OS XCTL OPCDCBLK OPCTOFLK AVT DCB LCB OPCE Op Ctl AVT. Option Characteristics Table Option Table Termmal Entry Termname Table IGCMA10D IGC0310D IGC0610D SVCLlB IGCM910D DEBUG Service Aid Routine IGCM910D Processes operator control commands requesting the loading or deletmg of the service Bid routmes. OSXCTL FE Service Aid Routine FREEMAIN GETMAIN OS BLDL OS DELETE OS LOAD AVT CVT OPCE Op Ctl AVT TCB IGCMA10D IGCM"10D IGC03l0D IGC06l0D SVCLlB IGCR010D Resume Terminal Transmission IGCR010D Processes requests to release a speCified Intercepted terminal. OS XCTL AVT DCB DEB LCB OPCE Op ql AVT QCB Terminal Entry Termname Table IGC0010D IGCOll0D IGCV410D IGC03l0D IGC0610D SVCLlB C7'I 00 o U> (j Module Name Generic Name Entry Points IGCV010D VARY Scan/ Map/Dispatch Module IGCV010D Stop Lme IGCV110D ~ Scans VARY operator control commands. checks vahdlty, maps Processes opera tor control commands requE!stmQ that Ime Routine Exits To Method of Operation Chart Library AVT DCB DEB LCB OPCE Op Ctl AVT QCB Terminal Entry Termname Table IGCOO10D IGC0110D IGC0310D IGCVll0D IGCV210D IGCV310D IGCV410D SVCLlB AQCTL OS XCTL AVT DCB DEB LCB OPCE Op Ctl AVT QCB Stop"ne IGCOO10D IGC0710D IGCV010D IGCV210D IGCV410D IGCI010D IGCV210D IGCV410D IGCI010D IGC0310D IGC0610D SVCLlB IGCVOlOD IGCVll0D IGCOO10D IGCV110D IGC0310D IGC0610D SVCLlB IGCV010D IGCOO10D IGC0710D IGC0310D IGC0610D IGCV010D IGCVll0D IGCOO10D IGCVll0D IGC0310D IGC0610D ~ IGCV110D Entered From OS XCTL mto element, and dispatches control to proper module. '"I:j Tables/ Work Areas External Routines Functions activity be stopped Immediately or upon completion of the current operation. Request Element IGCV210D Stop Terminal IGCV210D Routine OS XCTL Processes opera10r control commands requesting that a specified terminsil be deactivated for entering, or deactivated for both entering and accepting. AVT DCB DEB LCB OPCE Op Ctl AVT QCB Terminal Entry Termname Table IGCV310D Start Line Routme IGCV310D Processes operator control commands requestmg that activity be started on a line or Ime group. OS XCTL EXCP AVT DCB DEB LCB OPCE Op Ctl AVT QCB Stoplme Request Element El SCVLlB Terminal Entry Termname Table IGCV410D Start Termmal Routme IGCV410D Processes operator control commands reque:;tmg that a specified terminal be activated for entering, or activated for both entering and accEiptlng. OS XCTL _L-----_ AVT DCB DEB LCB OPCE Op Ctl AVT QCB Terminal Entry Termname Table ---- -- -----1- - SVClIB Module Name IGCV510D Generic Name Stop General Poll Routine Entry Points IGCV510D Functions Processes operator control Tables/ Work Areas External Routines OS XCTL commands requesting that general polling be stopped. AVT DCB DEB LCB OPCE Op Ctl AVT QCB Entered From Exits To Method of Operation Library Chart IGCV2100 IGC0610D IGC0910D SVCLlB IGCV4100 IGC06100 IGC09100 SVCLlB IGCOO100 IGC01100 IGCV1100 IGCZ1100 IGC001 DO IGC03100 IGCV1100 IGCOO10D IGCV1' 00 Termmal Entry Termname Table IGCV6100 Start General IGCV610D Poll Routine Processes operator control commands requesting that general polling be started. OS XCTL AVT OCB DEB LCB OPCE Op Ctl AVT QCB Terminal Entry Termname Table IGCZ0100 MCPCLOSE Scan/ Map/Dispatch Routme IGCZ010D Scans MCPCLOSE commands. OS XCTL checks validity, maps and dispatches control to the MCPCLOSE module. AVT CVT OPCE Op Ctl AVT Op Ctl work 01 E1 SVCLlB area TCB IGCZ1100 MCP Closedown Processing Routine -- w g. l:I ~ ~ .g ; 3 o .... ':l:I ... ~ o· l:I ..... CI\ \0 ._- IGCZ110D Processes MCPCLOSE from an application program or a HALT command from a terminal or a console AQCTL OS XCTL AVT CVT DCB DEB LCB OPCE TCB SVCLlB I ..... ....;J o Module Name o Generic Name Entry Points III (i IGEOOO4G ~ Start/Stop ERP Control Module IGEOOO4G 8SC ERP Control Module IGEOOO4H Entered From Transfers control to the appropriate ERP module to process a specific error condition. IEDQTNT as ERREXCP AVT CCW DCB LCB SCB Termmal Table Termname Table as I/O Transfers control to the appropriate 8SC ERP module to process a specific error condition. IEDQTNT OS ERREXCP AVT as I/O ~ ~ IGEOOO4H Tables/ Work Areas External Routines Fun·ctions CCW DCB LCB Supervisor Supervisor Terminal Table Termname Table IGE0104G IGE0104H READ/WRITE Unit Check ERP Module BSC Read/Write EquIpment Check, Lost Data, IGE0104G IGE0104H Processes read / write Unit check (except time-out) error conditions that occur on sts'rt-stop lines. Processes read/write, umt check, and Unit as ERREXCP as ERREXCP AVT that occur on BSC Imes. Required, and Unot ExceptIon ERP Module Non-operatIonal Control UnIt, UnIt ExceptIon, and Unot Check WIth TIme-Out ERP Module IGE0204G IGE0204H BSC Read/Write Data Check, Overrun. and Command Reject ERP Module IGE0204H IGE0304G IGE0304G Unot Check for Non-read, Non-wrote, and Non-poll CCWs ERP Module '--- -- Informs the operator that a IGEOOO4G Method of Operation Chart Library IGE0104G IGE0204G IGE0304G IGE0404G IGE0504G IGE0604G IGE0804G IGE0904G IGG019RO IGEOO25F SVCLIB IGE0104H IGE0204G IGE0204H IGE0304G IGE0404G IGE0404H IGE0504H IGE0804H IGE0904H IGG019RO SVCLlB IGE0504G IGG019RO SVCLlB , I IGEOOO4H CCW lOB LCB SCB UCB exception error conditions Intervention IGE0204G AVT CCW lOB LCB SCB UCB Exits To IGE0504H IGG019RO SVCLlB I I I I OS ERREXCP as YVTO AVT CCW LCB SCB UCB IGEOOO4G IGEOOO4H IGG019RO IGE0504G SVCLlB Processes data check command reject. or overrun errors on a Read or WroteCCW as ERREXCP AVT CCW lOB LCB SCB UCB IGEOOO4H IGE0404H IGE0504H SVCLlB Processes umt cht:tcks for non-read. non-write or non-poll CCWs. as ERREXCP CCW lOB LCB SCB IGEOOO4G IGE0504G SVCLlB specific control operational. Ul1It IS not Processes umt eXI~eptlon and umt check With time-out error conditions. I i - Module Name IGE0404G Generic Name Auto Poll and Read Response to Poll Unit Check and Entrv Points IGE0404G Tables/ Work Areas External Routines Functions Processes Unit checks and Unit exceptions for poll CCWs and Entered ExitH From To Method of Operation library Chart as ERREXCP CCW LCB IGEOO04G IGEOO04H IGE0504G SVCLlB as ERREXCP AVT CCW LCB SCB Terminal Table IGEOO04H IGE0204H IGE0504 ~ IGG019RO SVCLlB AVT CCW LCB SCB IGE0025 : IGG019RO as Message SVCLlB Termmal Table Termname Table IGEOO04G IGE0104G IGE0204G IGE0304G IGE0404G IGE0604G AVT CCW LCB SCB Terminal Table IGEOO04H IGE0104H IGE0204H IGE0404H IGEOB04H IGE0025F SVCLlB IGEOO04G IGE0504G SVCLlB read response to poll CCWs. Unit Exception ERP Module IGE0404H IGE0504G BSC Second Level CCW Return Module IGE0404H Error Post and IGE0504G Second Level CCW Return Module IGE0504H Retry channel programs initiated by an ERP module Attempts to retry channel programs and handles permanent IEDOTNT ERREXCP error situations. BSC Error Post Module IGE0504H Unit Check and Unit IGE0604G Handles permanent error situations on hnes IEDOTNT Adjusts the retry count and retnes as sse WTlter Termname Table IGE0604G Exception on , Read/Write CCWs for Audio and 2260 Local Devices ERP Module the falling CCW sequence when IDS detects an error on an audio or local device. ----- CIl (D g. ..,.::s ~ o 113 ~ ~ £cS" ::s --:a ERREXCP CCW LCB SCB - .l N o Vl (5 > Module Name Generic Name Entry Points Functions Tables/ Work Areas External Routines Entered From Exits To Method of Operation Chart Ubrary IGE0804G Start / Stop Channel Check ERP Module IGE0804G Processes channel endmg status errors. OS ERREXCP CCW LCB ERPIB IGEOO04G IGE0504G SVClIB IGE0804H BSC Channel Check ERP Module IGE0804H Processes channel Emding status errors on lines. OS ERREXCP CCW ERPIB LCB IGEOO04H IGE0504H SVClIB lGE0904G Closedown Terminal StatIstICs Recording Module IGE0904G Provides for termm:C:11 statistics recording when end -of-day recording IS specified. IEDOTNT OS ERREXCP LCB Terminal Table Termname Table IGEOO04G IGG019RO SVClIB IGE0904H TPER Recorder Module IGE0904H Interface wIth IGEOt,25F for TPER recording of SOH % E records. IEDOTNT IGE0625F GETMAIN FREEMAIN AVT CCW CVT DCB IGEOO04H 105 SVClIB E!:: '"0:1 k sse OCT LCB ROE SCB SeT Buffer Prefix -' IGG019AO TOTE Start I/O Appendage IGG019AO Turns on UCBNALOC bit in UCB for graphic deVIces. None UCB 105 105 SVClIB IGG019AP TOTE Channel End and Abnormal End Appendage IGG019AP Provides for separate channel and device end. None UCB lOB 105 lOS SVClIB ------ - c ___ ----- - Module Name IGG01900 Generic- Name Lone I/O Interrupt Trace Routine Entry Points IGG01900 Functions Makes an entry on the lone I/O None interrupt trace table each time that it IGG01901 IGG01902 Local Receive Scheduler IGG01901 Lone End Appendage for BSC Lines IGG01902 SCAN IS activated. Schedules receive operations for Handles I/O interrupts that occur Schedules ERP, when necessary. Line End Appendage for Start/Stop Lones IGGOl903 Handles I/O onterrupts that occur with device or channet ending status on start/ stop tines. Schedules ERP, when necessary, IGG01904 Lone End Appendage for Leased and Start/Stop Lines and No TSO IGG01904 Handles I/O interrupts that occur with device or channel ending status on leased or start/ stop lines. Schedules ERP, when necessary. tGG01905 W !.i0' ~ ~ ::p ..3 ..o ~ 0;; ~ ~' 0' ~ ....:I W Lone End Appendage for a OTAMCompatible System IGG01905 Handles I {O Interrupts that occur with devtce or channel ending status only for those devices supported by OTAM. Method of Operation Chart EXits To library IGGOHIRO SVCUB User Trace EXit R Jutine IEDOKB IEDOTNT IGG01900 OS POST TESTDSP AVT CCW DCB LCB OCB RCB SCB Buffer Preftx Termonal Table IEDOHK IEOOKC IEDOTNT IGG01900 OS POST TESTDSP AVT CCW DCB LCB OCB RCB SCB Buffer Pref,x Terminal Table IEDOKD IEDOTNT IGG01900 OS POST TESTDSP AVT CCW DCB LCB OCB RCB SCB Buffer Pref,x Termonal Table IEDOHK IEDOKE IEDOTNT IGG01900 OS POST TESTDSP AVT CCW DCB LCB OCB RCB SCB Buffer PrefiX Termmaf Table Scans for BSC line control IGG01903 IGG019RO Interrupt Trace Table AVT DCB LCB characters. Entered From Line I/O None 2260 and 3270 local lones, With device or channel endmg status on BSe lines. Tables/ Work Areas External Routines - IGG019RB IGGOHIRB SVCUB lOS lOS SVCUB lOS SVCLlB lOS SVCLlB lOS SVCLlB ERP routine IGG019RN lOS ERP routme lOS ERP routtne lOS ERP routme -- - -- --- - - ~- - ~- - - --- - -"" -...J o III ri Generic Name Module Name IGG01906 ~ Send Scheduler for Leased Lmes and No TSO Entry Points IGG019Q6 LCBSCAN External Routines Fun(:tions Schedules send clperatlons for leased hnes only WIth no TSO Send Scheduler WIth No TSO IGG01907 LCBSCAN Schedules send operations In a TCAM system thot contams no TSO mterface. Checkpomt Continuation Restart Subroutine IGG019Qa IGG019Qa+4 IGG019Qa+a IGG019Qa +12 IGG019QB +16 IGG019Qa +20 IGG019Qa +2a Checks termmal E'ntnes to determine whethElr a message queues scan should be performed. Executes d,sk I/O on the message queues data set. library IGG019RB IEDOHM IEDQAS SVClIB IEDQTNT IGG019RB OS 10HALT AVT DCB LCB QCB RCB STCB Termmal Table IGG019RB IEDQHM IEDOAS IGG019RB IEDQHM IEDOAS SVClIB IECPCNVT IECOSCR1 IGG019RC OS GETMAIN FREEMAIN OS WAIT AVT CPB OCB Checkpomt Work Area Termmal Table IGG01943 IGG01945 IGG01943 IGG01945 SVClIB IGG019RB OS POST AVT DCB DEB ORQ LCB QCB QCB ExtensIon SCB Termmal Table IGG019RB IEDOHM IEDOBQ IGG019RB IEDQHM IEDOBQ None DEB Checkpomt Work Area OS I/O OS I/O Calculates the LCB address of a " destmatlon. IGG019Qa Method of Operation Chart IGG019RB IEDQHM IEDQAS destination. IGG019Q7 Exits To AVT DCB LCB QCB RCB STCB Termmal Table Calculates the LC B address of a ~ Entered From IGG019RB OS 10HALT Interface logic. "tI Tables/ Work Areas Updates the mesE.sge sequence number In d terminal entry Exammes and, If necessary, updates the queuing mdlces In the AVT. Inltlahzes registers With values for IGG01945. IGG019Q9 Concentrator Send Scheduler IGG019Q9 DESTENT Schedules a sending operation and effects readmg from multIple aCBs for concentrator output. IGG019RA Checkpomt DIsk End Appendage IGG019RA Writes the checkpoInt control record after the last segment of an environment record IS written on Supervisor Cl-3.1 SVClIB SVClIB Supervisor dIsk. - - - Module Name IGG019RB IGG019RC Generic Name TCAM Dispatcher EXCP Driver Entry Points IGG019RB DSPBYPAS DSPCHAIN DSPDlETE DSPDISP DSPllFO DSPllFOR DSPllST DSPPOST DSPPOSTR DSPPRIO DAPPRIOR DSPTSTQ DSPTSTR DSPUNAV DSPUNAVR DSPWAIT Allocates and schedules the system resources by processing the elements on the ready queue. IGG019RC Completes bUilding the CCWs In the CPBs that were started by IEDQFA In Entered From Exi1S To Method of Operation Chart Library OS DELETE OS POST OSWAlT AVT QCB RCB STCB Any TCAM subtask Any TCA,M subtasl, A2-3 Bl-l BI-2 Cl-l.3 SVCLlB IECOSCRI OS EXCP OSWTO AVT CPB DEB lOB IEDQFA IGG019QB IGG019RB IGG019QB CI-2 Cl-3.1 SVCLlB IEDQTNT IGG019RB IEDQHG OS POST AVT DCB DEB lCB QCB SCB IGG019RB IEDQHM IGG019RB SVCLlB IGG019RB IGGOHIRB SVCLlB IEDQFA IGG01!!RB SVCLlB Acts as a queue manager according to the label that returning routines branch to DSECT table RETTBl Tables/ Work Areas External Routines Functions the Starts disk I/O and handles disk errors IGG019RD Buffered Terminal Scheduler IGG019RD BTSTDQCB TAG Schedules receive and send operations for buffered termmals. Calculates the lCB address of a destination Invitation List Terminal Table OGG019RE COMMBUF Send Scheduler IGG019RE Schedules a broadcast send AVT CMB Common Buffer Data area operation from a common buffer data area Prefix ~ g.'" lCB QCB SCB STCB ~ .j>. l :I o ~::s g" o·::s - - -I V. IGG019RF EXCP Driver for a Single CPB IGG019RF Completes bUilding the CCWs the CPB that was begun by IEDQFA In Starts disk I/O and handles disk errors IECOSCRI OS EXCP OSWTO AVT CPB DEB lOB - ..l 0\ o U'l (i Module Name IGG019RG Generic Name GET / READ Routine Entry Points IGG019RG ~ Functions Reads data from the MCP Into a work area In the applicatIOn program. "tI ~ Tables/ Work Areas External Routines IEDOEB OS WAIT User Checkpoint EXIt Routine AVT CVT DCB DEB DECB PCB OCB Entered From GET/READ Method of Operation Chart Exits To C2-1 GET/READ Library SVCLlB Access Method Work Area ApplicatIOn Program Work Area Process Entry I , Work Area Termname Table I IGG019RH GET Compatible IGG019RH Routme Moves data from the MCP to an application program when the apphcatlon prognlm IS written In IEDOEB OS WAIT Compatible OTAM. AVT CVT DCB DEB PCB OCB GET macro expansion GET macro expansion PUT/WRITE PUT/WRITE PUT macro expanSion PUT macro expanSion SVCLlB Access Method Work Area Buffer Prefix Process Entry Work Area Termmal Table Termname Tab~e IGG019RI PUT /WRITE Routine IGG019RI Prepares data In the apphcatlon program work area for transfer Into buffers In thH MCP. IEDOEB IEDOUI (IEDOE8) OS WAIT User Checkpoint EXit Routine AVT CVT DCB DEB DECB PCB OCB Access Method Work Area C2-2 SVCLlB Process Entry Work Area Termname Table IGG019RJ PUT Compatible Routine IGG019RJ Prepares data In an application program work area for transfer onto buffers In thE' M CP. IEDOEB IEDOUI (lEDOE8) OS WAIT AVT CVT DCB DEB PCB OCB SVCLlB i Access Method Work Area Application Program I I Work Area Process Entry Work Area Termname Table - - -- Module Nama IGG019RK Generic Name D,sk End Appendage for a Songle CPB Entry Points IGG019RK Functions Tablas/ Work Areas External Routines Removes the single CPB from the OS POST lOB and makes It available for CPB Entered From E.its 10 Method of Operation Chart Library AVT CPB lOB QCB lOS lOS SVCLlB IGG019RG OSWAlT DCB DEB DECB Access Method Work Area CHECK CHEC~ SVCLlB Builds a message retrieval control block to be used to retneve a specified message. IEDQUI (lEDQES) AVT CVT DCB DEB QCB Access Method Work Area TermInal Table POINT Handles program-controlled channel mterruptlons IEDQTNT IGG019RO OS POST TESTOSP cleanup. Detects disk errors ReactIvates the TCAM task. IGG019RL Check Routone IGG019RL PrOVIdes a check functIon by testing for the completIon of a READ or WRITE request and testing for errors that may have occurred during that request IGG019RM POint Routme IGG019RM macro expansion macro expanSion macro exparslon POINT macro SVCLIB exparlSlon Termname Table IGG019RN PCI Appendage IGG019RN Frees buffers from the hne operatIon Just completed and, If necessary, obtainS additional buffers. IGG019RO TCAM DIspatcher wIth Subtask Trace ~ g. ::s f:' l IGG019RO DSPBYPAS DSPCHAIN DSPDLETE DSPDISP DSPLIFO DSPLIFOR DSPLIST DSPPOST DSPPOSTR DSPPRIO DSPPRIOR DSPTSTQ DSPTSTR DSPUNAV DSPUNAVR DSPWAIT Allocates and schedules the system resources by processmg the elements on the ready queue. Acts as a queue manager AVT CCW DCB LCB Buffer Pref,x TermInal Table lOS lOS A2-3 Cl-l.l Cl-3.1 SVCLlB AVT QCB RCB STCB Subtask Trace Table Any TCAM subtask AnyTGAM sublE sk A2-3 Bl-l Bl-2 Cl-l.3 SVCLlB AVT CPB LCB QCB Buffer Pref,x Termonal Table IEDQFA IGG019RB IEDQFA IGG019RB 01-1 SVCLlB Termname Table IEDQFE10 OS DELETE OS POST OSWAlT according to the label that returnong routones branch to on the OSECT table RETTBL. Makes an entry In the subtask trace table each tIme that a subtask IS actIvated. 3 o !E· c)" ::s ...... ...... IGG019RP Reusab,lity-Copy Subtask IGG019RP REUSQCB REAOONE UNITQCB COPY WRITQCB Makes the dIsk message queues data set available for reuse. IEDQHG IEDQHM IEDQTNT Copies an entire message from one OS POST message queue to another. Termnarne Table I -.... 00 o Module Name Generic Name Entry Tables/ Work Areas External Routines Functions Points Entered From Exits To Method of Operation Library Chart ~ ~ IGG019RO Post Pendmg Routine IGG019RO > ~ Posts complete the ECB for a task that has an as POST pending when that task IS bemg rolled as POST In .." t'"" ~ AVT CVT DEB PCB TCB IEAORORI IEAORORI lOS ERP routme IGG019RN lOS IGG019RB IGG019RB AVT CPB lOB OCB lOS lOS Cl-31 SVCLlB AVT DCB LCB OCB RCB STCB TS OCB IGG019RB IGG019RB Cl-l.l SVCLlB IGG019RB IEDOHM IEDOAS IGG019RB IEDOHM IEDOAS Cl-31 SVCLlB SVCLlB Process Entry Work Area IGG019RO lme End Appendage IGG019RO SCAN Handles I/O Interrupts that occur with devlce'or chEIn-nel ending status. Schedules ERP, when necessary Scans for BSe characters. Ilnl:t control IEDOHK IEDOKA IEDOTNT IGG01900 as POST TESTDSP AVT CCW DCB LCB OCB RCB SCB Buffer Prefix Cl-l.l SVCLlB Cl-3 1 Termmal Table IGG019Rl Dial Receive Scheduler IGG019Rl Initiates receive operations for a dial line and prepclres for send operations upon completion of the Input IEDAYZ IEDOHG IEDOTNT IGG019RB as EXCP as TIME AVT DCB DEB LCB OCB RCB STCB TS OCB SVCLlB Terminal Table Termname Table IGG019R2 Disk End Appendage IGG019R2 Removes CPBs from the lOB and as POST makes them avalh:lble for CPB cleanup Detects disk errors. Reactivates the TeAM task IGG019R3 Leased Receive Scheduler IGG019R3 OEVENT ServIces receive operations on leased Imes IEDAYZ IGG019RB as POST Terminal Table IGG019R4 Send Scheduler IGG019R4 LCBSCAN Schedules send operations. Calculates the lCB address of a destination. IEDAYZ IEDOTNT IGG019RB as 10HALT AVT DCB LCB OCB RCB STCB TS OCB Termmal Table ----- ---- - Module Name Generic Name Entry Points IGG019R5 AttentIon Handler IGG019R5 IGG019R6 Start-up Message Routine IGG019R6 Functions Tables/ Work Areas External Routines E) its To Entered From Schedules a receive operation for a device that has entered an attention Interrupt. OS POST TESTDSP AVT DCB DEB LCB IEDQATTN lOS Obtains and queues any messages IEDQHM02 IEDQTNT IGG019RC OSWAlT AVT CPB DCB LCB QCB SCB OptIon Table Buffer Pref,x IGG019RB IGGOI that the user has to send to a terminal at start-up time. User routmes Method of Operation Chart Library SVCLlB ~RB SVCLlB Termname Table Termonal Table IGG01930 DIsk Message Queues IGG01930 Open Routone-Load 1 Obtains mam storage for and Inltlahzes a DEB for a message OS GETMAIN AVT DCB UCB OS XCTL OS XCTL (lGG01931 or IGG01933) A2-1 SVCLlB OS GETMAIN AVT DEB lOB OS XCTL (lGG01930) OSXCTL (lGG1l1934 or IGG01933) A2-1 SVCLIB OS SYNCH OSWTO AVT DCB OS XCTL from any TCAM open OS AEEND AnyTGAM A4 SVCLlB queues DCB. IGG01931 DIsk Message Queues Open Routone-Load 2 IGG01931 Completes onltlallzatlon of the DEB extents. Builds and onltlallzes all lOBs required for disk operation. IGG01933 Open Error Handler IGG01933 Handles all seriOUS errors detected durmg the opening of an applicatIon program DCB. a mess8ge queues DeB, or a hne executor open executor group DCB. IGG01934 D,sk Message Queues IGG01934 Open RoutIne-Load 3 Performs all the dIsabled initialization functions, loads the TCAM D,spatcher, EXCP Drover, DIsk End Appendage, and the ReusabIlity-Copy subtask, w g. = ~ ~. = - - .) \0 OS XCTL (lGG01931) OS XCTL tIGG'J1934. IGG0190S, or IGG(1941) A2-1 SVCLIB Lone Group Open Routone-Load 1 IGG01935 Obtains main storage for and Inltlahzes a line DEB OS GETMAIN DEB OCT LCB UCB OS XCTL OS X(TL (lGG01936 or IGG01933) A2-3 SVCLIB IGG01936 Lone Group Open Routone-Load 2 IGG01936 Determines the size of the channel programs for all deVices 10 the line OS GETMAIN OCT LCB QCB STCB UCB OS XCTL OGG01935) OS XCTL (lGG01937 or IGG(1933) A2-3 SVCLlB None LCB STCB OS XCTL (lGG01936) OS XCTL (lGG01938) A2-3 SVCLlB group beIng opened. Obtaons maon storage for an LCB for each line. ~ o· AVT DCB DEB IGG01935 1 ~= FREEMAIN OS LOAD OS GETMAIN IGG01937 L- ________ Lone Group Open RoutIne-Load 3 IGG01937 BUIlds and lnotlahzes all LCBs for thIs hne DCB open - 00 o otil (i Module Name IGG01938 ~ '" ~ Generic Name Line Group Open Routine-Load 4 Entry IGG01938 Tables/ Work Areas External Routines Func1ions Points BUilds channel preograms In the None Entered From as XCTL LCB LCBs for the lines of the line group (IGG01937) Exits To Method of Operation Chart as XCTL Library SVCLlB (IGG01939) bemg opened IGG01939 Line Group Open Routine-Load 5 IGG01939 Loads some of the modules required for line operation. the PCI Appendage and the Line End Appendag e FREEMAIN OS GETMAIN as LOAD AVT CVT DCB DEB TCB as XCTL None AVT CVT DCB DEB TCB as XCTL Loads.the device-dependent special characters required for mltlal I/O operations IGG0194B Application Program Open Error Interface IGG0194B Cleans up partially open DCBs that eXist as a result of an open error that occurred for other than the first DeB In a multiple-open Routine macro (IGG01938) (IGG01946 or IGG01947) as XCTL (IGG01940) A2-3 as XCTL (IGG01933) SVCLlB SVCLlB Process Entry Work Area Terminal Table IGG01940 Line Group Open Routine-Load 6 IGG01940 Completes loading the modules required for Ime operation: the Send Scheduler. the TCAM as as EXCP LOAD Dispatcher, the appropriate receive schedulers. and the Start-up Message routine Starts I/O on each hne In the Ime CheckpOint Open Routme IGG01941 ObtainS mam storB,ge for and Initializes a checkpomt work area In a MCP (IGG01939) as XCTL ---- - - ~------------- SVCLlB A2-2 SVCLlB Table as as EXCP GETMAIN OSWTO as AVT CVT JFCB CheckpOint DCB CheckpOint DEB CheckpOint Work XCTL (IGG01934) as XCTL (IGG01942. IGG01943. or IGG01949) Area '------- A2-3 (IGG01948) Special Characters 9rouP IGG01941 as XCTL AVT CVT DCB OCT DEB LCB TIOT ----- I i - --- Module Name IGG01942 Generic Name Checkpoint DIsk Initialization Routine Entry Points IGG01942 Tables/ Work Areas External Routines functions Initiahzes the disk checkpoint data set Into specific areas for a control record, environment checkpoint records, CKREO records, and incident records. IECPCNVT IECOSCRI as EXCP as WAIT OSWTO AVT CVT Checkpoint DCB CheckpOInt DEB Checkpoint OCB Checkpoint Entered From as XCTL (lGG01949, IGG01941, or IGG01943) EXits T> as XCl L Method of Operation Chart library A2-2 SVCLlB D2 SVCLlB D2 SVCLlB as XC fL D2 SVCLlB as XCfL A4 SVCLlB (lGG01944 or IGG0190S) Work Area IGG01943 Checkpoint/ Restart IGG01943 from Environment Record Routine Reconstructs the MCP IGG01908 environment from the environment as LOAD record segments data set. In the checkpoint AVT CVT TCB Checkpoint DCB Checkpoint DEB Checkpoint OCB Checkpoint as XCTL (IGG01941 ) as XCTL (lGG01942 or IGGO' 944) Work Area Invitation List Termmal Table Termname Table IGG01944 CheckpoInt/ Restart from IncIdent and CKREO Records IGG01944 Routine Updates the MCP environment with the incident checkpoint record for stop hne or start hne and wIth the CKREO records. IEDOTNT IGG01908 OSWTO AVT CVT DCB OCB Checkpomt as XCTL (lGG01942 or IGG01943) as XC'CL (lGG01945 or IGGOl90S) Work Area OptIon Table Terminal Table Termname Table IGG01945 Checkpoint IGG01945 Continuation Restart Routine Performs any required processmg of the message queues data set at restart time. IEDOTNT IGG01908 as DELETE AVT CPB OCB as XCTL (lGG01944) Buffer Prefix Checkpoint Work Area DIsk Data Area Termname Table Terminal Table ~ $:l. o· ::l .". ::p o 11:3 o '5::s ~. o·::I - 00 ..... IGG01946 GET /PUT and READ/WRITE Open Executor - load 1 IGG01946 Opens Input and output DCBs application program. In an IEDOEB IEDOUI (lEDOA1) as GETMAIN as LOAD OSWAlT AVT CVT DCB DEB JFCB TCB Access Method Work Area Process Entry Work Area Termname Table as XCTL (lGG01947) IGG01933 - co I>.) o tn ~ Module Name IGG01947 ~ Generic Name GET/PUT and READ/WRITE Open Executor-Load 2 Entry Points IGG01947 Tables/ Work Areas External Routines Functions Completes ope",n!! an Input DCB IEDOEB IEDONB as GETMAIN In an apphcatlon program ~ Entered From Exits To as XCTL AVT CVT DCB DEB JFCB TCB Access Method Method of Operation Chart Library as XCTL A4 SVCLlB as XCTL A2-3 SVCLlB A2-2 SVCLlB (lGG01946) Work Area Process Entry Work Area Termname Table IGG01948 Line Group Open Routine-Load 7 IGG01948 Places hne-specltm mformatlon the cross-reference table as TIME In OSWTO EXilmlOes each ImE' for completion of the Initial I/O 0l,eratlons IGG01949 CheckpOint Disk IGG01949 Allocation Routine Determines the size of the vanous checkpOint records, for the checkpOint data sets. as XCTL LCB QCB UCB (lGG01940) (lGG0190S) Cross-Reference Table OSWTO Inltlahzes the checkpOint work area With the number of tracks In the checkpOint data set, the size of each disk record. and the number of records per track as XCTL AVT CVT DCB DEB QCB as I/O OCT CheckpOint Work Area as XCTL (lGG01941) (lGG01942) InVitation List Option Table Terminal Table Termname Table IGG02030 Disk Message Queues Close Routine IGG02030 IGG02035 Line Group Close Routine-Load 1 IGG02035 Closes a message queues DeB TCAM MCP In a Issues an EXCP on the hne to perform error recordmg. Abends any appliC15ltlon programs, If necessary. IGG02036 Line Group Close Routine-Load 2 IGG02036 Purges all I/O on the hnes associated With th", DCB. Clears any associated entries the cross-reference' table. DCB DEB TCB Cross-Reference Table as XCTL as XCTL El SVCLlB as ABEND as EXCP DCB DEB TCB as XCTL as XCTL El SVCLlB CVT DCB DEB LCB TCB Cross-Reference Table as XCTL OSWAlT OSWTO FREEMAIN as PURGE Disables the hnes and frees the associated LCBs. - - - - - - - - '--- FREEMAIN In OSWAlT OSWTO (lGG02036) as XCTL (lGG02035) -- -- -- - - SVCLlB Module Nama Ganaric Nama Entry Points Functions Extarnal Routinas Tablas/ Work Areas Entared From Exits To Mathodof Operation Chart Library IGG02041 Checkpoont Close Routine IGG02041 Closes the checkpoont DCB on an MCP. OS DELETE OS EXCP FREEMAIN OSWAlT OSWTO AVT CVT Checkpoont Work Area OS XCTl (lGG02030) OS J(CTl El SVCLlB IGG02046 GET/PUT and READ /WRITE Close Executor-load 1 IGG02046 Closes a GET / PUT or a READ/WRITE DCB on an applicatIon program by deactlvatmg the data communicatIon link between the applicatIon program and the MCP. IEDQEB IEDQNB IEDQTNT OS DELETE FREEMAIN OSWAlT AVT CVT DCB DEB lCB QCB TCB Access Method Work Area OS XCTl (OS CLOSE) OS)(CTl (lGG02047) E2 SVCLlS OS XCTl (lGG02046) OS )(CTl E2 SVClIB Process Entry Work Area Termonal Table IGG02047 GET /PUT and READ/WRITE Close Executor-load 2 IGG02047 Completes closong a GET/PUT or a IEDQEB IEDQTNT READ/WRITE DCB on an applicatIon program by unlockIng any TCAM lCBs that are locked to the applicatIon program DCB. AVT CVT DCB lCB Termname Table ------- g> g, o· ::I ~ 1 ~ i ~. e;. o· ::I ..- co w ~ Non-Executable TeAM l\flodules Milcrofiche Directory ofIl (i DSECT Goneric Name Macro Name ~ IEDCBDA Common Buffer Data Area Pref.. IEDCBDA ~ IEDCMB Common Buffer Master OCB IEDCMB IEDOAVTD Address Vector Table TAVTD IEDOCCW Channel Command Word TCCWD IEDOCDRD InCident or Environment CheckpCHnt Disk Record IEDOCIBD Command Input Block CIB IEDOCKPD Checkpomt Work Area TCKPD IEDOCPB Channel Program Block TCPBD IEDOCRED Checkpoint Request Element-Incident or CKREO tEDOC5 Operator Control Work Area IEDODATA Disk Data Record Area TDATAD IEDODEB Data Extent Block for TCAM Application Programs TDEBAPD IEDODEB Data Extent Block TDEBD IEDQDlSP TCAM Dispatcher DSECT TDISPD IEDOORQ Concentrator Data Ready Queue TORQO IE DODVCT Concentrator Device to Table TOVCIOTO IEOQIOB Input/Output Block TIOBD line Control Block TlCBO Operator Control AVT TOPCAVTD IEOQOPCE Operator Control Element TOPCEO IEOOPCB Process Control Block TPCBO IEDOPEWA Process Entry Work Area TPEWAO IEDQPRF Buffer Pr.,flx TPRFO IEOQQCB Queue ContFol Block TQCBO IEOQQCBE Queue COI1t,oI Block ExtenSIon TOCBED IEOORECB Resource Control Block TRECBO IEDOSCB Station Cc.ntrol Block TSCBD IEDOSECT Work Are.. Mecro FORECORE "11 IEDQlCB IEDOOPCD - Generic~ DSECT tfl ~ o· ::s f: { MacroN..... IEOOSTCB Subtask ContrW Block TSTCBD IEOOTCB T aslt COntrot Block TTCBD IEOOTNTD Termname Table TTNTD IEDQTRM Terminal Table Entry TTRMD IEOOTSI Time Sharing Qu_ Control BIodt TTSID IEOOWRKA Access Method Work Area TACSMD IEOQXSA Extended Save Area Macro IEEXSA IEOO10 IBM 1030 Translate Tab... IEDQl1 IBM 1050 Translate Table IEOO12 IBM 1050 Folded Translate Table IEOQ13 IBM 1'060 Translate Tabfe IEOQ14 IBM 2260 Translate Table IEOQ15 Alras for IEOO14 IEOQ16 IBM 2740 Translate Tabl& IEOQ17 IBM 274!t Folded Translate Table IEOO1S World Trade Teletype Adapter IWTTAl. ITA2 Translate Table tEOQ19 World Trade Teletype Adepter IWTTAJ. ZSC3 Translate Tabl& IEDQ20 AT&T l15A or Western Union 83B3 Translate Tabl& IEOOl1 AT&T TWX. with Parity Translate Table IEDQ22 AT&T TWX. without Parity Translate Tabl& I EOO23 IBM 2780. 6-bit Code Translate Tabl& IEOQ24 USASCII Code Translate Table IEOQ25 Dummy Tabl& (EBCDIC to EBCDIC! IEOQ26 IBM 274t. BCD Code Translate Table IEDQ27 IBM 2741. EBCO Code Translate Teble IEDQ2S IBM 274t. Correspondence Code Translate Table IGG019RR IBM 1030. 1050. 1060. 2740. 2741 Spec;al Characters Table IGG019RS IBM 2260 Remote Speciel Characters Table IGG019RT AT&T 115A or Weatern Un;on 83B3 Special Characters Table '0 1 o· ::s .... co CA --- ------------------- - -------- -- - - - - - - -- --------- 00 0\ o {Il IGG019RU ATT&T TWX, with Odd Panty SplOc.al Characters Table (i IGG019RV IBM 2260 Local Spec.al Characters Table IGG019RW World Trade Teletype Adapter (WTTA) Special Characters Table IGG019RX AT&T IGG019RY Audio Spe.:.al Characters Table IGG019R7 BSC EBCDIC Code Special Charac:ters Table IGG019R8 BSC USASCII Code Special Char!lcters Table ~ "1:1 ~ IGG019R9 Mac.oName Generic Name DSECT TWx, with Even Panty Special Characters Table BSC 6-blt Code Spec.al Charactel sTable '-- --- -- Macro Linkage Charts The macro linkage charts show the functional results that occur when TCAM macros are issued. The macro and any information about where it can appear is located on the extreme left of each chart. If the MCP assembly generates 2. parameter list from a macro, this list is shown under the heading Parameter List. The Linkage column shows which TCAM modules gain control when the specified macro is coded. Next to each module name there is a brief statement of the functions of that module. The macros are arranged in alphabetical order. The following symbols show the linkage among the modules: Macro - Branch _ Branch and link +--+ Transfer control (XCTL) .-(xx~ Issue SVC xx Parameter List Linkage ATTEN (INMSG/OUTMSG) (TSO) a.'" 2 Index to IEDAYX 0 ::s ~ ::p Parameter List Length X'01' Indicates Mask Present I Mask XOO X'12' ,.. 00 -..l Provide the user the ability to effect line deletion or CPU task interruption. t---+QTIP SVC Clear the input and omput queues and swap the Wier into main storage. Address of Attention Routine - Bit Provide linkage to the TSO Attention or Hangup routines. XOO 8 Unused Return any unused buffers. t---+ IEDQTNT Get the terminal entry address. XOO ::s ,.,...N' o· ::s ! IEDAYA Mask :3 oa,., 1 IEDAYX 3 4 ~ ,.,.... 0 IEDQA4 ""--1 IEDQBD o (n Function - IGGOl9RB Tpost the ERBs. 00 00 ~ ~ l'Baaleter List Macro LiIIlage F.adioB IEDQA4 CANCELMG with LEVEL=BLK ~ •• (Tpost) ~ I I t ~ ---------------------~~ry~--------~ Mask " I : Bit ~ o :!c:J : X'OO' MilSk ~ t I necessa.ry 6 Recall is 1 Indicates an unconditional mask Logical 1 AND the mask Return any unused buffers, execute the INMSG!OUTMSG macro expansions.-and check the parameter list. Recall the last good block of data from disk and tpost it back, with an ad;usted PRFSlZE, to the destination QCB. Get the terminal entry address. IEDQA4 3 1 Parameter List Index to Length and IEDOARLogical and Bits=----1_ _ __ Bit I IEDQTNT CANCELMG with LEVEL=MSG (INMSG/OUTMSG) I I lEDQBU RecaH is necessa. Indicates an unconditional mask Note: With LEVEL=BLK, the logical bit is always off. indicating an OR fmlCtion. 4 J IEDQBD : • 1EioBD I, IEDQAR ~ ..... 1 IEDQTNT Return any unused buffers. Notify tbe Destination Schedular to cancel the message currently being received. Get the terminal entry address. Parameter List Macro CARRIAGE (TSO) Linkage Function IEDQUI Activate an MH routi [Ie. t IEDAYC 1 IEDQTNT Get the terminal entry address. CHECK IGGOl9RL Test for completion or errors in the execution of READ or WRITE macros. CHECKPT (INHDR/OUTHDR,INBUF/OUTBUF) IEDQUI Activate an MH routine. IEDQBB Set the "checkpoint request" flag. o 1 Index to IEOQBB 2 Parameter List Length - X'04' , t 3 X'OO' X '00' I (INMSG/OUTMSG) fo· ::s .j:Io. ::p ~:I ~e. i' .... ~ Maintain the position count for carriages of keyboard devices. or IEDfA4 IEDfBD Return any unused buffers. IEDQBB Tpost the ERB to the buffer disposition QCB. \C o o {Il (i Macro CK~EQ Parameter List Linkage FImetien IEDQNB Build a "checkpoint request" element and tpost it to the checkpoint QCB. The format of this element is: ~ ~ Offset 1 o Kev X'SO' Address of Checkpoint acB Priority Link Address 4 8 Address of Application Program ECB 12 Address of Application Program DEB Chain J---IEDQTNT Get the terminal entry address. ~ IEDQEB Tpost the "checkpoint request" (SVC 102) element to the checkpoint QCB in the MCP. Macro Parameter List CLOSE (Application Program) Linkage SVC20 I , IGG02046 IGd02047 I IEDQEU CLOSE (Checkpoint) , I I I I 1Gc!02041 Post the application program ECB as complete and return to the TCAM Dispatcher. Remove the DEB for the DCB from the DEB chain in the TCB. Free all lOBs associated with the DCB. Close the checkpoint DCB. SVC20 ~ lGG02035 I I t I W a Deactivate the data transfer communication link between an application program and the MCP. SVC20 lGG02030 CLOSE (Line Group) FlUIdion IGdow36 Perform error record mg. If the close is the result of an MCP ABEND, terminate the application program. Close the line group DCB. ci" ::s ~ ::p 1 I o· ::s .... .... \Q CLOSE (Message Queues) SVC~~::l Ib Remove the DEB for the DCB from the DEB chain m the TCB. Free all lOBs associated with the DCB. ...... \D to.) o til ~3: Parameter List Macro Linkage lETT CLOSEMC (Compatible QTAM) ~ ~ IEDQEB l CODE o 3 ~, Index to IEOOAW Parameter List length 4 sw", X'SO' Use the Tran:dation Table address in the DCB X'40' Use a nonstandard Translation Table X'20' Entry is from INBUF or OUTBUF X'W' Entry is from INMSG or OUTMSG X'OO' Use a standard Translation Table o 2 Index to IEOOAI Parameter list length 3 Register 15 Offset Variable length Indicator 4 Blank Character Perform the TCAM operator control functions from an application program without using PUT. Move data across partition boundaries. lEDQE6 Scramble the password. lED QUI Activate an MH routine. IErlQAW Translate the data in the buffer. 3 Address of the Translation Table Status FUBCtion Address of Characters I I Parameter List Macro COMMBUF o 1 Parameter List Length Index to IEOQBV Function IE~QUI Link to functional MH routine. IEDQBV 3 2 Linkage • Insert COMMBUF STCBs into the STCB chains of the appropriate LCBs. MAXOEEP 4 Address of TLiST - ---- ---- -- - - Count either complete messages or message segments. COUNTER o Index to IEOQA7 ::1:: 3 2 Parameter List Option Field Length - X'04' Offset Register 15 Offset Link to IEDQAE. IEJQAE Get the option field 2 ddress. lED QUI Activate an MH routine. • CTBFORM (OUTBUF) o 3 2 Index to IEOQGH Parameter List Length CTBFORM Options Reserved Index to IEOQAF Index to IEOQAO Index to IEOQAE Option Field Offset rtGLrnDQnrr 4 tI1 '" o·~::l ~ ~ o ~o .. 0;: ::l N' ~ O· ::l - '" IN CTBFORM Options: X'OJ' Insert the option field data X'02' Insert the device identification X'04' Insert a CTB ending character 't= , IEDQUI I 'IEDQAE L--1EDQAO IEDQAF Insert device identifications, CTB ending charactf rs, and option field data. Get the terminal entry address. Activate an MH routine. Locate an option field address. Get a buffer unit. Insert data in the buffer. -'""'" o en ~ Parameter List Macro CUTOFF o -,-. 1 Liakage Function IE~QUl Activate an MH routine. IEDQAU Cut off the transmission of a message being received after receipt of a user-specified number of bytes, or on detection of identical characters in the buffer. IE1QUl Activate an MH routine. IEDQAF Insert data and return. "'CI fC Parameter List Index to IEDOAU Requested ::JutOff Length Length - X'04' ~------~--------I---------- DATETIME o 1 Index to IEOOAF and Bit Bit Insert data, adjust the prefix, adjust the offset by the length of the data inserted, and return. """'TyPO"j 6 ON Requests the expand buffer function Shift data across several units and return. Expand the buffer by shifting data left into the resen a::: "1:1 ~ LOCK 0 Index to IEDQBE Bit LOCOPT ] Bit 1 Get the terminal entry address. IEDQUI Activate an MH routine. IEJQAE Calculate an option field address. IEDQTNT Get the terminal entry address. 7 Message lock o 2 3 . Index to IEOQAE lParameter List Option Field Length - X'04' Offset Register Offset LOG (INMSG/OUTMSG) Index to IEOQBY and Bits t IEDQA4 :) o 4 IEDQTNT u~B X'OO' PM....... Length - X'OS'. , Address of LClGTYPE Entry 1 (Tpost) 3 X'00' ITBLIEOQm IEDQBY Return any unused buffers, execute the INMSG!OUTMSG macro expansions, ami check the parameter list. Get the terminal entry address. Tpost a recalled header to the destination QCB and activate the Log Scheduler. Macro PlII'IIIIleter List WG (INHDR/OUTHDR,INBUF/OUTBUF) Address of DeB LOGON (TSO/TCAM) I I 2 t unused IE~QUI Activate an MH routine. IEDQBX Log a message segme[ t. WRITE Write the units of the buffers. OS BSAM CHECK Check the WRITE operation. JSGETMAIN Get main storage. IEDQUI Activate an MH routine. t o Index to IEOAYL Function I~OSBSAM o Index to IEOQBX Linkage Parameter list length 3 unused Address of SlARTMH QeB : I IEllIEOQTNT Inform TSO of a succl:ssful user log on and route the messages. Get the terminal entry address. I QTIPSVC Connect to a TSO or TCAMMH. BRI4 Exit to LOGON exit address inSTARTMH QCBof connected MH. IEDQBl Supply the count of complete messages for an applkation program. ! LOGTYPE No executable code is generated. J. 1:1 ~ fi i·g: l'" ::s to.) o w MCOUNT ~ o ~ ti Parameter Ust Macro MCPCLOSE Linkage FUIIdion IEDQET Perform a subset of the TCAM operator control functions without issuing a PUT macro instruction. t ~ (SVC 102) ." ~ LIEDQEB ' - - - -... OS WAIT MHGET o :! MHGET 10 X'OO' 4 Parameter List Length Move data across partition boundaries and post ECBs complete. Put the application program into the wait state. 1 - - - - 1 IEDQE6 Scramble the password, IEDQGP Make data in buffer available to user routine. IEDQGP Move data from user work area to buffer. 3 Answer Register Work Area Register Address of Work Area (If Sp4!cified) ~--- -- - -- -- -- -- MHPUT o 3 " 4. MHPUT 10 X'01' Parameter List Length Work Area Register 4 Address of Work Area (If Specified) Us,er Reserve Count Macro Parameter List MRELEASE Linkage F1IIICti0ll IEDQET Perf{)rm a subset of the TCAM operator control funcl ions without issuing a PUT macro instruction. t (SVC 102) LIEDQEB 1..-_ _•• L..--_ _ _ o ~ o·~::s ~ :p ~ El ~,., ~ g. ::s N o Ul Move data across partition boundaries and post ECBs complete. OS WAIT Put the application pr :>gram into the wait state. lEDQE6 Scramble the password. to.> o 0'> o til (i Parameter List Macro MSGEDIT o ~ "'1:1 ~ 3 2 Index to lEDQAN Parameter H.t Length Index to IEDQAF Index to IEDOAJ Blank Character Number of Entries Index to IEDQAO Linkage Function IEDQUI Activate an MH routine. IEDtQAN Translate and test all the data in a buffer. J L IEDQAF LIEDQAX 4 Reserved L..-_.... IEDQAO 8 Reserved Address of the Characters Table IEDQAL 12 Insert or shift data in a buffer. Scan for a TO delimiter character string. Get an additional buffer for the insert function. Find the address of the character string. IEDQTNT Get the terminal entry address. Key Status Data Desclription 16 "FROM" Delimiter Description "TO" Delimiter Description 20 A Total of 31 Entries f Status 0 1 2 3 4 5 6 7 Data=characte rs Data=idles (res.erve characters) Data=CONTRACT TO=character string TO=offset or SCAN TO=count Inclusive FROM Inclusive TO 1 ~List Macro MSGEDIT Data-REPLACE,TO=character string: o 3 2 Index to IEOOAP and Bft Status Index to IEOOAF Index to JEOQAO Lillkage F..ction IED,QUI Activate an MH routilla.M-1D iSlIfIeCified 7 FO«.M-NAME is specified Activate an MH routiIle. Move the scan pointer forward. Search the termanme table for a match. (Entered only if the FOItM=NAME OJ no FORM parameter is specified. ) ~ g.::s ~ 1 ~ i ::s ~ gO .... to.) \C ::J~~~ OUT.UF e 2 te IEOOAE ~fMllex "'ametar Lis Option field I'-ength - X'04' Offset 3 Register 15 Offset Activate an MH routine. Calculate the option field address. LIEOQTNT Get the terminal entr) address. N N o o CIl (i Macro Parameter Ust Linkage If OUTMSG is not coded, OUTEND also generates the OUTMSG parameter list. OUTEND o ~ ;:g 1 Index to IEOQAK is: 2: 3 Index to IEOQAF Parameter List Length· X'04' Function Index to IEOQAO _ IF OUTMSG is coded, OUTEND generates a X'OIOO', which indicates the end of the OUTMSG subgroup. .... _ - - _ . _ - - - o I ndex to IEOQA4 I Parameter List Length· X'02' o 2 3 OUTHDR Index to IEOQAE L -_____ ~_ Parameter List Length· X'04' Option Field Offset Register 15 Offset IEDQUI Activate an MH routine. IEJQAE Calculate the option field address. LIEDQTNT Get the terminal entry address. Macro Parameter List OUTMSG o 3 2 ~ndex to Parameter List Length - X'04' IEDQAE o Option Field Offset Function IEDfUI Activate an MH routine. IEDQAE Calculate the option field address. Register 15 Offset f Index to IEDQGH and Flags Linkage Parameter List Length LIEDQTNT Get the terminal entry address. IEDtQUI Activate an MH routine. !~D~<{~ Insert the CTB end characters, determine the CTB end and concentrator end-of-message. Link the buffers in tbl! chain. Parameter List Length: X'04' - No MSGFORM is specified X'OS' - MSGFORM without ENDCHAR and COUNT is specified X'CO' - MSGFORM with ENDCHAR and COUNT is specified L. IEDQTNT Get the terminal entr y address. Activate an MH routine. LIEDQAO Get a buffer unit. 1 IEDQAF The parameter list length is the sum of: t. The IEDQGH parameter list 2. The lEDQAK parameter list 3. The IEDQA4 parameter list Flag: IEDQUI L -_ _ I IGGOl9RB Return the excess buffers and tpost the ERB to the concentrator scheduler. Mark the message serviced. X'O]' Entry is from OUTMSG IEDQUI f I. ::f ~ ::p ~ ~ i~. g. ::f N N ...... Insert the CTB ending character. Activate an MH routine. I L -_ _ _ I IEDQA4 IGGOl9RB Exit N N N Macro o v.> ~ Parameter List OUTMSG o "tI 2 Index to IEDOAK ~ Parameter List Length - X'04' Linkage Function IEDfUI Activate an MH routine. 3 Index to IEDOAF Index to IEDOAD lEDQiL IEDQAF Insert data in the buffer. LIEDQAO 4, Address of Scan Routine* I L _____________ _ Check and insert line-control characters. _...1 L -_ _ • Insert line-control characters in the buffer. IEDQTNT Get the terminal entry address. *Present if ENDCHAR and COUNT are specified on MSGFORM in OUTHDR. ' - - - - -.... IEDQAL Get the data byte address. IEDfUI Activate an MH routine. IEDQ~ALIEDQAL Get the scan pointer address. o Index to IEDOA4 Parameter List Length - X'02' LIEDQAX Scan for the specified character. IGGOl9RB Tpost empty units to the buffer. L -_ _ _ • L -_ _ _..... IEDQTNT Get the terminal entry address. IEDQGD* Build CCWs in the buffer and or link the buffers in the idles IEDQGT loop for transparent output to a BSC terminal. *For concentrator support, IEDQGD builds the CCWs and returns to IEDQGH. Macro Parameter List PATH o Index to IEDOAI and Bit 4 3 2 Blank Character Bit Parameter List Length - X'08' Variable Length Register 15 Offset Linkage Function IEDfUI Activate an MH routine. IEDQAE Calculate the option field address. LIEDQTNT Get the terminal entr) address. Address of Characters 7 No blank character is specified o 3 2 Index to IEDOAE Parameter List Length - X'04' Option Field Offset Register 15 Offset ! 1 IE QUI Activate an MH routine. IEDQAI Search a table that is arranged in collating sequence. I PCB POINT No executable code is generated. This is an application program work area. IGGOl9RM t u:> a'"o· ::s .j>. 3 OQ i>l S o t-> W Build a message retrit val control block. IEDfUI Activate an MH routine. IEDQAI Scan the termname t< ble for the specified terminal name. t-> t-> .j>. o I:Il ;:s rar-ter List MIlCI'tt PRIORITY o ~ 2 Index to "I:j IEOQAI t""' ~ and Bit Parameter Lil,t length - X'08' 3 Register 15 Offset Linklle FIIBCti911 IEDfUI Activate an MH routine. IEDQAI Search a table that is arranged in collating sequence. length 4 Blank Character Bit Address of Characters 7 No blank charal:ter is specified PUT lGGOI'iLIEDQE8 [OSWAlT IEDQEB Prepare data for transfer into buffers in the MCP. Scan the termname table. Allow the Put Scheduler in the MCP to empty the application program PUT/WRITE work area. Tpost a special element to the Put Scheduler in the MCP. User checkpoint exit routiHe. IEDQEC LIEDQEB Move data froIl1 the application program into MCP buffers. OS POST the application program ECB as complete. Macro Parameter List Linkage PUT (Compatible QT AM) Function IL IGG019 IEDQE' Scan the termname table for the specified terminal name. LOSWAIT IEDQEB QACTION (INHDR) o Index to tEOO80 Parameter List Length r. Tpost a special element to the Put Scheduler in the MCP. Move data from the application program to MCP buffers. LIEDQEB OS POST the applica1 ion program ECB as complete. IEDtQUI Activate an MH routi [le. Reserved IE[fU1 Activate an MH routi[le. IEDQAI Get the term name table offset. IEDQTNT Get the terminal entry address. IGG019RB Tpost to IEDQBD to execute the OUTMSG macro. Exit and tpost the buffer to the queue. 4 Reserved Allow the Put Schedwer in the MCP to empty the application program PUT/WRIT E work area. IEDQEC IED~QBtL 2 Prepare data for transfer into MCP buffers. Address of User-Written Status Analysis Exit ' - - -_ _ I o IGGOl9Q9 Put the attached terminal on the data ready queue. ::1 7: ::p ~ j;.l :3 QCOPY IEDQE2 o '5 ::1 ~. ::to o ::1 tv tv VI LIEDQE8 Copy a queue control block into a work area. Scan the termname tRble for the specified terminal name. N N Q\ o (I.l ~ Macro Parameter List QSTART No executable code is gener,ated. Linkage Function IGGOr~ Read data from a full buffer into the program area. is:: "tI ~ READ OSWAlT Wait for the data to arrive. IEDQEB Tpost a special element to the Get Scheduler. - '-------_0 User checkpoint exit routine. IEDQEW LIEDQEB Read from the message queues data set. OS POST the application program ECB as complete to activate the waiting application program. Macro READY Parameter List Linkage Function IEDQND Read and process ch,~ckpoint records or update the TRMST ATE and op lion fields. Or move data into the operator control WOl k area. - L _ _~ OS ATTACH Attach the Checkpoint Executor and on-line test. GETMAIN Get main storage needed by on-line test. FREEMAINFree the main storage acquired by the GETMAIN SVC. IEDQTNT Obtain the terminal address. '~ntry OS EXCP Start an I/O operation. OS LOAD Load a TCAM modtle. OS POST Post an ECB. OS WTO Send an operator me.ssage. OS WAIT Allow time to complete the event. IECPCNVT Convert the TTR to an MBBCCHHR addre:,s. ~o ::s .j>. ::f' t§., :3 o ,j(! ~. o·~::s tv tv --l N N 00 o tfl ~;s:: Macro Linkage Parameter List IEDQA4 REDIRECT (INMSG/OUTMSG) o '"l:I ~ 1 3 2 Index to IEDQAZ and Bits Function Parameter u s B Length and Status Logical Mask (Tpost) IEDQBD Return any unused buffers, execute the INMSG/OUTMSG macro expansions, and check the parameter list. 4 II I I I Mask LIEDQTNT Get the terminal entry address. I 8 IEDQAZ Destination Status Bit Variable Data 6 Recall is necessary 7 An unconditional mask is specified Redirect a message to its destination. 1 IEDQUI It: Activate an MH routine. IEDQAE IEDQAI Bit Get the destination key for the message. 6 Recall is necessary '----+. IEDQAV Logical AND the mask Status Get an option field address. X'OI' indicates that the lED QAT parameter list follows Destination Status and Variail>le Data: C'S' +AL3(O) - send to the source C'D' +AL3(O) - send to the destination C'N' +AL3(destination name) - send to the named destination C'O' +index to IEDQAE+ALl(optional offset)send to the destination named in the option field Get the terminal entry for the destination. rar-ter List Macro RELEASEM o Liakage FlIIIdion IEDQET Perform a subset of the TCAM operator control functions without issuing a PUT. LIEDQEB Operator Control aCB Address 4 Priority Link Field OS WAIT Put the into application program into a wait S1.ate. IEDQE6 Scramble the password. I 8 Verb Code Parameter List Length-X"'C' X'OO' •. . '"0-1 12 I , ECB Address for the Applieation Program I 16 i 0 . 20 0 24 0 I I rIl ~::s ~ f i o o· ::s ~ ..... -0 L -_ _ _ • Move data across partition boundaries and post ECBs as complete. to.) w <:> o (Il t1 Maero Pvameter List RETRIEVE Linkaee FUIldioD IEDQE$ Provide TCAM support for message retrieval. t ~ IEDQUI ~ '-IEDQAl OSWAlT L...-_ _ • IEDQEB IEDQE7 I~IGG019RB IEDQEB Activate an MH routine. Scan the termname table for the specified terminal name. Wait for the requested buffer to be retrieved. Tpost the special element to the retrieve scheduler QCB. Retrieve a buffer from a disk message queue. Tpost elements. OS POST the Retrieve Service routine ECB as complete. GETMAIN Get main storage for an LCB and an SCB. L -_ _ • RETRY o 2 Index to IEOQA9 Parameter List Length-X'04' 3 Interv,~ ~ I FREEMAINRelease main storage for the LCB andSCB. IEDQA4 (TOO") IE~QBD IEDQA9 The RETRY macro causes the CPU to try again to initiate contact with a switched station at the expiration of a specified interval of time. PanuneterList Macro SCREEN o 1 Index to IEOQAI andBit 2 Parameter List Length· X'OS' 3 Register 15 Offset Lillkllle FlIIICtioB 1EDeUl Activate an MH roul ine. IEDQAI Move the scan point.!r forward. IE~QUI Activate an MH IEDQAY Check the unit control block and initialize. Variable Length 4 Blank Character Bit Address of Characters I 7 No blank character is specified o 1 Index 2 Request Code Flags fOUl ine. LIEDQTNT Get the terminal entry address. Index ~ a.o ::s .,.. ::p 1 i r+ o·::s N W Bits Bit 0-6Index to IEDQAY 7 ON· indicates that the user specified one of the following: WRE, WLA, WOC, XRE, XLA, XDC, EAU. OFF· indicates that none of the above were specified. Request Code X'OO' WDC or no operand X'Ol'WLA X'02'WRE X'03'EAU X'IO' XDC X'It' XLA X'I2'XRE Flag Byte Bit 0 ON . RETRIEVE = YES OFF - RETRIEVE=NO Bits t -7 reserved ~ w w orn r5 Macro Puaateter List SEQUENCE o ~ ~ t Index. to Index to IEDQAF- IEDOAD Bit LiIIkage FadioR IED.QUl Activate an MH routine. j= Insert the output sequence number. t Activate an MH routine. .IEDQAF Expand the buffer. 7 No blank character is specified o 't IED.QUI Parameter List length· X'OT tndex to JEOOAH IEohAH Activafe an MH routine. . Verify and update an input ~number. L'EDQTNT o 2 f tndex to - 'EOCAI and Bit 4 Blenk Character Parameter list length· X'08' Get a terminal entry address. :l ~ Variable X'OO· length . Address of Charaaers Indicator . IED.QUI lE~ Activate an MH routine. .Move the scan pointer forward. Parameter List Macro SETEOF o Index to tEDQAI and Bit 4 Blank Character Bit . tI.l o·~::s ..,. ~ o 1 { ~ !:t. o ::s N ..., ..., 3 2 1 Parameter List Length - X'OS' Register t5 Offset Address of Characters 1 No blank character is specified Variable Length l Linkage Function IEDfUI Activate an MH routine. IEDQAI Move the scan pointer forward. I.,) IN .j>. o til ~ Macro Linkage Parameter List Function SETEOM Activate an MH routine. o '"I:j ~ 2 3 Index to IEOOBO Parameter List Length Status Byte Index to IEOOBN Index to IEOOBR Index to IEOOAF SETEOM control module. Activate an MH routine. Index to IEOOAE IEDQAO 4 Index to IEOQAO 8 IEDQBR IEDQBN L HoldOCB 12 • Integer (LENGTH) 16**• Length of ENOCHAR String Opfld2 of LENGTH X'OO' Address of ENOCHAR S".tring ~-------------------SETEOM OCB - expanded only if PROCESS=YES is specified 28 ~--------------------- Status Byte: X'OJ' - ENDCHAR is specified X'02' - END CHAR is in the option field X'04' - LENGTH is specified X'OS' - LENGTH is in the option field X'] 0' - PROCESS= YES X'20' - REMOVE= YES X'40' - EOM =ETB X'SO' - reserved Determine the logical message, if on the COUNT macro. Combine data. IEDQUI Activate an MH routine. IEDQAF Attach a buffer unit or shift data. Calculate the option field address . LIEDQTNT Get the terminal entry address. IED~AX 20 24 IEDQAE Get and attach an additional buffer. Scan for an EOM string. P.......eterList Macro SETEOM Unkage FlIDdion IE~QUI Activate an MH routine. IEQQAJ Move the scan pointer to the end of the character siring. *If both LENGTH operands are in the option fields: 12 Opfld2 0f LENGTH Opfld1 0f LENGTH X'OO' X'OO' or X'OOOOOOOO' if LENGTH is not specified **If ENDCHAR is in the option field: ,. I Opfldof ENOCHAR I I X'OOIIOOO' or X'OOOOOOOO' if ENDCHAR is not specified SETSCAN o 1 Index to IEDQAJ and Bit 4 3 2 Parameter List Length - X'OS' Blank Character Status Address of Characters - - - - - -_ _ L..-- ~ ::s .j>. ." ~.., 3 S' 0r- o: ::s N" ~ c· ::s tv W U. Bit 7 No blank character i5 specified Status X'OO' - return the scan pointer X'FF' - update the scan pointer Register Offset LIEDQAX Scan for a character sl ring. tv IN 0'1 o ;1 > s:: ~ Parameter List Macro SETSCAN o "0 t- s:: 2 Index to IEOQAI and Bit Parameter list Length - X '06' Blank Character X'00' - IEDfUI Activate an MH routine. IEDQAI Move the scan pointer forward. IEDfUI Activate an MH routine. IEDQAO Move the scan pointer backward. IEDQUI Activate an MH routine. IEDtAYS Handle simulated attention for TSO, 7 No blank character is specified o 2 Index to IEOQAO SIMATTN (TSO) Function Skip C 4 Bit ::=J Linkage Parameter list Length _ X'04' ~ Skip o~ I LmDQU ~!...--t-~~~-1-__ ENQMGR8 .l1-1 ENQUEUE A 8UFFER I N THE CHANNEL PROGRAM 8 • 8 03 1-1 E.,fI'I'iloIoIl""-----, _CJ...4_ .... SET UP TO TPOST THE ERB TO LCBRCQCB C C? C5 .. "w....................."""""\ 1"OST PERFORM A TF'05T C • o o • . >=--J E SET UP TO TPOST TO THE MH E • . F F .. • FREEBFR5 G G , • . r.;"] 'V' H H .. • J .. • >-_..!...-J f~t ~~B T~O T~~~T K ACTIVATE QCB III 280 OS TeAM PLM 3 III 4 Chart FAl-8 (1-8) CPB INITIALIZATION -MAIN-STORAGE-ONLY QUEUING , , , , F IX I T FAI-2,83 FAI-IO,KI FAI-1.C5 FAI-14.H5 FA 1-1 IE I FAI-5,GI FAI-9,.JI,E3 S GET THE 5eB AND LCS ADDRESS; SET THE ADDRESS Tel MOVE DATA TO KEEP THE ADDRESS OF THE LAST TPOSTED UNIT AT UN[T+12 .. SUBTRACT I FROM THE MESSAGE LINK THE UN 1 T COUNT IN THE aCB TO THE PREVIOUS BUFFER B . PUT THE aCB ADDRESS IN THE BUFFER C CLEAR AND SET THE TIC C .. o OSPPOSTR SET THE DUMMY CPS ADDRESS TPOST THE ELEMENT SET THE LCB AND THE SCB FIELDS o . E C CLEAR THE FIELDS RETURN ) E .. r:;, F 'V F . G G .. H H . J ,J .. K K ,. 4 ,. Section 4: Program OrglUlization 281 Chart FAI-9 (l-9) CPB INITIALIZATION -MAIN-STORAGE.()NLY QUEUING , , , 3 4 .. A FAI-2,K4 FAI"'7,G4 B MERGE THE ENABLED AND DISABLED CDUNT FIELDS • GET THE ERB • c C • D UNLINK THE BUFFERS FROM THE ERB SET THE SCB UNIT COUNT D • POST PERFORM A TPO ST E E • F F • G G H UNLINK THE BUFFER AND PREPARE TO TPOST I T TO MH H • • POST PERFORM A TPOST • K K 2 282 OS TeAM PLM • • • Chart FAl·lO (110) CPB INITIALIZATION· MAIN-STORAGE-ONLY QUEUING , • • • 4 A F"AI-IO,G3 F'AI-5,B3 FA I - I ,K 1 84 • 8 }----I • NO MAIN STORAGE UNITS NOW IN USE B • • C GET THE ADDRESS OF THE HEADER OF THIS MESSAGE c • • D D • • :>----1 E GET THE ADDRESS OF THE MESSAGE E • • ...-_ _.t...I:..6J,;;;.J.;i."D5 F RTNBFR LINK THE PREVIOUS F CHAIN OR RETURN A 8UrrER MESSAGE TO TH I 5 MESSAGE • • G G • • H H • • J • • K • • 4 • Section 4: Program Organization 283 Chart FAl-11 (111) CPB INITIAUZATION - MAIN..sTORAGE-ONLY QUEUING , , , , 4 5 A A FAI-2,KI • FAI-2,C3,Ci5 FAI-2,85 FAI-3,KI FAI-3,.J2 FAI-3,03 .. E4 B B • .. SET SCBUNTCT 0 C C .. • GET THE DESTINATION FROM THE BUFFER PREFIX D SET UP TO BUILD THE SAME BUFrER SI ZE D .. GET THE LCBTTCIN OFFSET E E .. • IEDQTNT GET THE TERM I NAL ENTRY ADDRESS F" .. • YES G GET THE BUFF"ER SIZE G .. ( H RETURN ) CALCULATE THE NUMBER OF UN I TS H . • BUILD THE ERB J .J • .. K K . 284 OS TeAM PLM . 3 . .. Chart FAI-12 (I12) CPB INITIALIZATION - MAIN-STORAGE-ONLY QUEUING • .. B • • 4 , FAI-3,H2 F A I - 3.02 . FAI-6.D2 GET THE KEY LENGTH & THE ADD ONE TO THE NUMBER OF UNITS FIRST BUFFER ADDRESS B .. .. C .. .. o o .. E DECREMENT THE NO. OF UNITS IN BUFFER IF ENTRY WAS AT ADDNBUNT SUBTRACT THE KEY LENGTH FROM THE BUFFER SIZE . .. NO F SET THE LAST UN I T ADDR~SS F .. G E .. GET THE ADDRESS OF THE NEXT PUT THE ERB ON THE BUFFER RETURN QCB UNIT .. G .. SET THE REMAINING SIZE = COUNT OF DATA H H 1 N THE NEW UN I T .. .. PUT THE COUNT NEEDEO TO FILL THE UNIT IN TaUNT J J .. .. ( • RETURN 2 ) K • Section 4: Program Organization 285 Chart FA1·13 (113) CPS INITIALIZATION· MAINoSTORAGE.QNLY QUEUING , 2 , , , A .. FA1 ... 1.... ~C4 FAI-4,K5 FA 1-1,01 FAI-Z.Et FAI-3,C5 F'AI-6,D3 eET THE DESTINATION QCB ADDRESS AND THE PRIORITY LEVEL LINK THE UNIT INTO THE TIC OF THE ElUF"F"ER e .. CLEAR AND INITIAUZE THE DP CODE B • F' C • GET THE ADDRESS OF' THE F"IRST PRIORITY QCB C .. • 0 0 .. • PRIORITY aCB ADDRESS • 5 I ZE OF PRIORITY QCB X PRIORITY LEVEL E .. E • F F" .. • C G .. • H H • • .J J . • K K • 286 OS TeAM PLM 2 • • • Chart FA1·14 (114) CPB INITIALIZATION· MAIN STORAGE ONLY QUEUING , 2 , , , FAI-9.DI FAl-6,El FAI-14,C2 It B • SET THE SCB UNIT COUNT CPS WORK COUNT SUBTRACT I FROM THE SCB CPB COUNT = B • It SET THE SCB UNIT COUNT = 0 C C • It . -_ _ _....=.....,AI SETEOM D SET 'END OF MESSAGE' INDICATORS D It • E E It • F PUT THE ADDRESS OF THE NEXT UNIT INTO THE SCBSCSEG FIELD • It SET UP TO rpOST THE ERB TO IEOQFAI G • It SET THE CPB COUNT 0 = H PERFORM A TPOST H • It I -I 03 It • K K ,. ,. 4 ,. Section 4: Program Organization 287 Chart FAl·IS (115) CPB INITIALIZATION ·MAIN-8TORAGE-ONLY QUEUING , , , . , A FAI-I,K3 FAt-I.C3 .. FA1-1,83 S CLEAR THE LINK FIELD OF THE SUFFER 8 .. • SET AND SAVE THE POS I T I VE C CHANNEL COMMAND . o GET THE ADDRESS OF THE LAST CPS ON THE QUEUE SET THE NUMBER OF UNITS AND THE TIC ADD ONE TO THE LAS1 SUFFER UNI T COUNT o .. • E GET THE ADDRESS OF THE SUFFER LINK FIELD SET UP TO TPOST THE UNITS TO THE SUFFER RETuRN --......... • SET U~ TO T~OST THE e:RB TO THe: ACTIVATE QCB K • 3 • 4 • 5 Section 4: Program Organization 295 Chart FA2-8 (2-8) CPB INITIALIZATION - DISK-ONLY QUEUING • • • • 4 N GET THE DCB ADDRESS A .. • A5 SAVE THE SCAN FINDESTQ ~~W~~~E B NO FIND THE DESTINATION QCB NY~E~RSI~~D B . • PUT THE PREF I X IN THE SCB C SET THE SCHEDULER C .. • B AI A5 LAST D S I ZECK SET THE SIZE OF DATA IN THE LAST UN IT CHECK THE BUFFER SIZE 0 .. • GET THE SIZE AND CLEAR THE DATA E E . • SET THE 'NO 1~~~~i~;Z~L~~~ F SAVE THE FEFO POINTER F ADDRESS TO MOVE DATA FROM .. • SET THE COUNT OF DATA TO BE G MOVED IINWKAI SIZE G .. • GET AN H H ADD I TI DNAL UN IT . C0J EI • A4 USELCB NO SET REQUESTED BUFFER SIZE IN THE ERB ~ .. • A3 OFFSET K SET REQUESTED BUFFER SIZE IN THE ERB K 2-9 Al • 296 OS TCAM PLM 2 • • 4 • 5 Chart FA2-9 (2-9) CPB INITIALIZATION· DISK-ONLY QUEUING • GtJ • • • 4 ~y A • B • = SET THE COUNT OF DA TA MovED KEY OR PREF I X SIZE SET X THE NO. OF IDLES PLUS PREFIX SIZE PLUS THE AMOUNT MOVEO = B • C • SET THE PREFIX NEEOED C • • ...._ _...I..&.II=..,A4 C;ET:;.BF..;R~_-I o ~-9 C;ET A BUFFER EI 0 • • E LINK A UNIT TO THE BUrrER E • • F F • • C; C; • • SET UP TO MOVE H • DATA FROM THE LINK TO THE NEXT BYTE IN THE OLD UNiT PREVIOUS BUFFER OR UNIT r-_ _ _ BjoI.LIo.wJ;;lIo'-':"'_ _.. • .IOII..-.~A4 FIXIT SET UP FOR THE J H YES TEXT PREFIX ADO A UNIT TO A BUFFER J • • SET THE ADORESS OF THE NEW LAST UNIT K z . AOD THE COUNT OF DATA LEFT TO MOVE ANO THE K PRErlX SIZE 4 • 5 Section 4: Program Organization 297 Chart FA2·10 (210) CPB INITIALIZATION" DISK..QNLY QUEUING , ~ , , AI , ~ A4 RTNSCHD FLAGINTC YES QC~~~~~a ~7~LO YES F'REECPBA FREE A CP~ ~8 AI e EI .. ~ C SET UP TO EXIT TO APPQEMTY IF"A,,-5,Gal C .. D .. RESET LCSSENO AND QCBSDFFO FLAGS D .. ~ It RESET 'BUFFERED TERM I NAL MI DOLE OF MESSAGE' F"LAG SET THE DATA FIELD AND LASTIFEFO E .. ~ EZ OATAONLY BUILD THE CCWS AND SET THE 'QUEUING' I'LAG F .. ~ A3 e:XCPINQZ ADO A CPS TO THE CHANNEL PROGRAM G G .. .. OSPPOSTR TP05 T THE ERe TO IGGOl9Q9 H SET UP TO BYPASS CPSFREE H .. .. OSPPOSTR J TP~6T':::~fL~CS J .. .. FAZ-I,03 FA2-S,G2 K .. 298 OS TCAM PLM K z • 3 .. 4 • 5 Chart FA2·11 (211) CPB INITIALIZATION . DISK"()NLY QUEUING , , , 4 , ~ AI SET THE PRFS I ZE FIELD .. AI FULLBUF NO B PROCESS A FULL BUFFER B .. • C .. • A3 A3 ADONBUNT NO LlNKTIC PUT THE TOTAL NUMBER OF" UNITS IN THE PREFIX KEY LElliGTH nELD LINK A UNIT TO THE BUFFER GET AN ADD I T I aNAl.. UN I T 0 SET THE F"IRST BYTE OF DATA AT THE ADORES S OF UNIT + 12 .. • AI SET X = DES I RED BUFFER SIZE CURRENT BUF"FER SIZE; DATA IN NEW UNIT = 0 FREECPBA E 0 FREE A CPB .. E .. F .. .. SET THE AMOUNT OF gAT A TO Bt;: MOVE NTO THE N!;:W UN T EQUAL TO X I G G .. • ~ SETEOM H JI SET 'END OF MESSAGE t INDICATORS H • J .. • FULLBUF K PROCESS A FU\-l,. SUFFER K 2-7 91 • 2 • • 4 • 5 Section 4: Program Organi:!:ation 299 Chart FA2-12 (212) CPB INITIALIZATION -DISK-ONLY QUEUING • • 3 • 4 • SET X • SIZE OF I O~ES PLUS THE S~~E~I~ ~mix A A SI ZE . • SAVE THE PRFOEST ANO PRFQ8ACK FIELDS 8 B .. • c C .. o o . • COPY PREF I X I SET THE AMOUNT OF DATA MOVED INTO THE NEW UNIT = X E 10 . .. SET PRFSCAN = 0; UNIT COUNT = Y F Y; PRFS I ZE = . . ...-_ _"':'U=I.:I."A4 FIXIT ADD A UNIT TO A G G 8UFFER . • H H .. • = • TO' ADORESS UNIT AODRESS + y. 'FROt.P ADORESS UNIT ADDRESS + WKACT J SET UP TO MOVE X CHARACTERS (AMOUNT OF OATA LEFT IN THE WORK AREAl YO:S = J-4EW WKACT • WKACT t< O~D X; NEW INWKA ;; OLD MOVE THE DATA INWKA - .. X J • SET UP TO MOVE AMD0~~ ~~TObvE K K = ADDRESS OF OLD 'TO' UNIT-Y • 300 OS TeAM PLM 2 • • 4 • Chart FA2·13 (213) CPB INITIALIZATION· DISK-ONLY QUEUING • • • • FA2-2,Cl FA2-2,D5 FA2-3,El FA2-13,Dl • 4 FA2-2,K4 FA2-13,C2 FA2-3,85 FAZ-6.J3,J4 • FA2-7,C5 REQCPB FA2-15,JI REQUEST A CPs FA2-15,E3 B • UNITFREE FREE BUFFER UNITS • • SET THE NUMBER OF UNITS AND ADD ONE TO THE LAST BUFFER CHA I N OR RETURN • E D THE TIC UN I T COUNT THE BUFFER • FflWOW"I.u.....:.._ _..., RESTORE THE DEST I NAT I ON QCB ADDRESS SET UP TO TPQST THE UNITS TO THE BUFFER RETURN QCB CHA I N THE UN I T INTO THE TIC CHAIN E • • WRKD F KEEP THE ADDRESS OF THE SUlLO CCWS F LAST TPOSTED UNIT • • PUT THE QCB G ADDRESS I N THE BUFFER G • • DSPPOSTR H TPQST THE UN ITS H • • ( J RETURN ) • • K K • • 4 • Section 4: Program Organization 301 Chart FA2·14 (214) CPB INITIALIZATION ·DISK.QNLY QUEUING • • • • 4 A • F"A2-Z,C4 FA2-9,J4 FA2-1,Fl FA2-3,C2 FA2-12,GI FA2-2,F3 SUSRACT ONE FROM THE MESSAGE COUNT IN THE QCB LINK THE UNIT TO THE PREY IOUS BUFFER B .. B .. • CLEAR AND SET THE TIC C C . o SET THE LCB AND SCB FIELDS FINO THE SCB FOR THE DESTINATION o . • UPDATE THE FEFO >Y,,;"''';S_-I E I~O+~~E~C~A~52 E THE DESTINATION .. • REQCP81 F RE;:QUEST ONE CPB F .. • G SET CPBADDR :: QCBlFEFO G .. • SET THE DATA H FIELO = PREFIX H + FEFO POINTER .. EXCPINQI ADD A CPB TO THE CHANNEL PROGRAM .. • K • 302 OS TeAM PLM 2 • • 4 • Chart FA2·15 (215) CPB INITIALIZATION. DISK-ONLY QUEUING • • • • FA2-II,B3 FA2-6,G3 FA2-II,K) FAZ-6,G4 • 4 FA2-1,C2 FA2-4,C4 • FA2-7,G4 MERGE THE ENABLED "NO DISABLED COUNT FIELDS B GET THE seB SIZE GET THE ERa • B • c ( RETURN ) ADD FOUR TO THE NUMBER OF UNITS AND SUBTRACT THE KEYLENGTH C FROM seB 5 I ZE • • D UNL INK THE BUFFERS FROM THE ERe see SET THE UNIT COUNT o • • POST RETURN PERFORM A TPQST E E • • F F • • G G • • UNLINK TI005T • THE BUFFER AND PREPARE TO H H IT TO MH • ,....__..L...a...........A5 POST PERFORM A TPOST J J • ( RETURN ) K • • 4 Section 4: Program Organization 303 Chart FA2-16 (216) CPB INITIALIZATION - DISK ONLY QUEUING • • • 4 , A 1 ,C3 FA2-2,EI,J3,H4,C5 FA2-tO,G4 FA2-7,83 FA2-3,F2 FA2-5,Jl FA2~la,Hl FA2~ FA2-4,B2 • FA2-14,..Jl S CLEAR THE LINK FIELD OF THE SUFFER GET THE ADQRISSS OF ENQMGRC GET THE ADDRESS OF ENQMGRC S .. • E.f'Wo"""'.......-'-_-'1 C SET ANO SAVE THE POSITIVE CHANNEL COMMAND GET THE ADDRESS OF THE INPUT CPS QUEUE 5ET SC8UNTCT 0 .. • o 0 .. • GET THE AOORESS OF THE BUFFER E E LI NK FIELD .. • CORRECT THE NO F LINK ADORES 5 FOR THE cps; CLEAR THE LINK FIELD F . • SET THE NEW LAST ELEMENT G G . • H H .. • LI NK TH I S ELEMENT TO THE PREvIOUS LAST J ELEMENT .. • K K ., 304 OS TeAM PLM ., ., 4 ., Chart FA2·17 (217) CPB INITIALIZATION. DISK.QNLY QUEUING • • • 6 • FA2-2,G4 FA2-2,D4 f'A~-2, FAZ"13,Fl F'AZ"13,Bl FA2-!4,FI 4 • 0:3, A5 • MAKE REGISTER BUILD TflE WRITE KEY AND DATA CCWS < 0 8 • • C SET CP8ADDR : CURRENT RECORD NUMBER I N TflE PREFIX c • • o SAVE THE ADDRESS AND TflE NUMBER OF UNITS REMOVE A CPS o • • E E • • • • G G • RETURN H • J • K • 2 • 3 • 4 • Section 4: Pr9gram Organization 305 Chart FA2-I8 (218) CPB INITIALIZATION - DISK~NLY QUEUING • 2 • • • 4 A A • FA2-3,.J5 FA2-3,C5 FA2-3,H4 FA2-4,B3,E3 FA2-8,Kl FA2-8,.J2 FA2-8,03 . ~4 B S • .. C C .. D ~ GET THE LCS ADDRESS, NO. OF TH~ G~T E3 CURR~NT CPS. AND COUNT TH~ S~T DESTINATION FROM THE BUFFER PR~FI X TH~ OF DATA MOVED E ~ ADD ONE TO SCSCPSNO; CLEAR THE WORK AR~A NO UP TO SUlLO SAM~ SUFFER SIZ~ D .. ( GET TH~ LCSTTC I N OFFS~T R~TURN ) ~ .. • T F SET INTO THE SCSSCSEG FIELD THE NUMS~R OF THE R~CORD ~UST READ IEDQTNT GET THE TERM I NAL ENTRY OF"FSET F" .. • G BUILD R~AD KEY AND DATA CCWS GET THE BUFFER SIZE YES G .. A3 EXCPINQ2 H GET TH~ DCB aS~~~~Ssli~E ADD A CPB TO THE CHANNEL PROGRAM CALCULATE THE NUMBER OF UN ITS AND THE NUMSER OF UNITS H .. • ~ SUILD THE ERB J .. • K . 306 OS TeAM PLM . 3 . 4 . 5 Chart FA2·19 (219) CPB INITIALIZATION· DISK-ONLY QUEUING " " " 3 4 " A FA,2-8 t D2 FA2-8,H2 FA2-1 I ,02 • B GET THE KEY LENGTH. THE F\ R ST BUFFER ADDRESS • ADD ONE TO THE NUMI9ER OF UN I TS B • • c C • • SUBTRACT 1 FROM DECREMENT THE NO. OF UNITS IN BUFFER IF ENTRY WAS AT ADDNBUNT THE AVAILABLE U~~m~R AC~~mR D o • E • SUBTRACT THE KEY LENGTH FROM THE BUFFER SIZE E • • NO SET THE LAST UNI T ADDRESS PUT THE ERB ON THE BUFFER RETURN QCB • G • 2-5 G GET THE ADDR~SS OF THE NEXT UNIT • G • SET THE REMAINING SIZE = COUNT OF DATA H H IN THE NEW UNIT • PUT THE COUNT NEEDED TO FILL THE UNIT IN TOUNT J J • • K K . . 3 . 4 . Section 4: Program Organization 307 Chart FA2·20 (220) CPB INITIALIZATION" DISK-ONLY QUEUING , , FA2-1 I,H3 • • , 4 FAZ-9,E5 FA2-I,EI FA~-3!E3 FAZ-II,D3 FA2-2,A2 FA2-8,85 GET THE DESTINATION Qce ADDRESS ANO THE PRIORITY LEVEL LINK THO: UNIT INTO THE TIC OF THE BUFFER B .. e .. • F CLEAR AND IN I TI ALI ZE THE OP CODE C GET THE ADDRESS OF THE FIRST PR lOR I TY QCB C • . D D • .. PRIORITY QCB AODRESS • SIZE OF PRIORITY QCB X F'RIORITY LEVEL E E .. • F • .. G G • .. H H • . J .. . K • 308 OS TeAM PLM • • 4 • Chart FA2·21 (221) CPS INITIALIZATION· DISK-ONLY QUEUING , , , 4 , FA2-S.H2 FA2-5.EI FA2-5,G5 FA2-5,G2 " • PUT THE APPQEMTY ADDRESS 8 8 1~~61~t~~II!N • " UNL I NK THE CPS • " D c PUT THE CPS IN THE CPS FREE POOL D • " ( RETURN ) E " F F • " G G " • H H • " ~ ~ • " K K • • 4 • Section 4: Program Organization 309 Chart FA2·22 (222) CPB INITIAUZATION . DISK ONLY QUEUING • • • • 4 A A F"A2-fD,E3,F'4 . 8 FA2-15,DI FA2-II,EI FA<-22,C2 FA2-7,Al • ~A<-10,B2 SET THE SCB SUBTRACT 1 FROM THE SCB CPs COUNT UNIT COUNT = B CPS WORK COUNT . • , -_ _ _"j;"Q...........A4 ) LASTTEST YES SET THE SCB UNIT COUNT 0 = SET THE SCB UNI T COUNT C .. D • ADD I TO SCBNXCPB; SUBTRACT 1 FROM 0 01 SK COUNT .. • E E . • F F' • ADD 4 TO THE ADDRESS G G .. • CFIiII'_OA....l.-_ _., PUT H ~RFXTRA $C8SCSEG IN PUT THE CPS IN THE CPS FREE POOL H . J • K K • 310 OS TeAM PLM • • 4 • Chart HM-! (HM!) DESTINATION SCHEDULER • • cr 9 • REPLACE THE 5GB GET THE ADDRESS OF THE BUFFER, B • • PRIORITY WITH THE OFFSET TO CURRENT PRIORITY LEVEL QCB OF THE LeB, AND OF THE 5CB B • GET THE AODRESS OF THE MASTER C NO C QCB AND OF THE FIRST PRIORITY QCB .. • NO 0 0 .. • CKDELAYQ ADO ONE TO THE QUEUE MESSAGE E NO COUNT REMOVE ELEMENT FROM TIME DELAY QUEUE, IF THERE E .. • PRTY QCB ADOR = PRTY OFFSET X F PRTY QCB 5 I ZE + FIRST PRTY QCB ADDR .. • SET FOR MESSAGE TO GO TO THE SET X = THE PREFIX SIZE HIGHEST G PRIORITY aCB G .. • GET THE ADDRESS OF THE NEXT UNIT; ADD ONE TO THE COUNTER H SUBTRACT AVTKEYLE FROM X 8 .. H • GET THE ADORESS OF THE NEXT SET THE NUMBER OF UNITS = THE PR I OR I TY LEVEL J COUNTER QCB .. • NO K SET UP TO TPOST THE NEXT UNIT POSTSUB TPOST THE BUFFER TO THE BUFFER RETURN QCB K r;:;;l 'V • • 4 • Section 4: Program Organization 311 Chart HM-2 (HM2) DESTINATION SCHEDULER ~ • • • • 9 AI PQSTDISK ~ YES SETFEFo REPLACE THE QCB HIGHEST SET THE QCB AND 5GB FEFO PR I OR I TY LEVEL A PO INTERS • • SAMELAST SENDIN I T TEST FOR EXAMINE THE MESSAGE AND LC8 INITIATE MODE NOW ACT I VE • B • PDSTSUBA FINDSTCB TPOST THE ER8 C GET THE STCB ADDRESS C • CNTUN I TS D D • E E • OUPLCORE F GET THE ADDRESS OF THE BUFFER RETURN QCB TEST FOR SINGLE UN I T HEADER F • INCRNT G INCREMENT SWAP BUFFER UNITS OUPL I CATE HEADER COUNT • SET UP TO TPOST H THIS BUFFER TO THE COPY QCB 0p SETD I SK QUEUNITS SET THE ADDRESS FOR THIS BUFFER QUEUE THE BUFFER UNITS ~ H4 PQSTSU8 TPOST THE BUFFER G • H • 4 SETD I SK SET THE ADDRESS FOR THIS BUFFER • • UPDATE REUSABLE K K DISK DATA SET. IF NECESSARY • 312 OS TeAM PLM • 4 • Chart HM·3 (HM3) DESTINATION SCHEDULER • ~ • • 4 AI QUEUE I ~ ~ NO MOVE SCBDNSEG TO PRFCRCD AND SCBDCHDR PRFCHDR TO . . SET Y PRFNBUNT - B B . It . . MOVE THE AVT ADDRESS VALUE TO PRFXTRA SET THE NEW QCBFHTZ AND QCBFHLZ FIELDS 0 LASTSEG MOVE QC8DNHDR TO PRFCRCD AND ADD 4 TIMES y TO THE AVT VALUE OF ADDRESS PRFCRca TO SC9DCHDR E .. F .. MOVE QCBQBACK TO PRFHQBCK AND !EDQTNT GET THE TERMINAL ENTRY PRFCRCD TO QCBQBACK ADDRESS . It G MovE THE AVT ADDRESS FIELD TO QCBDNHDR AND TO PRFNHDR MOVE AVT VALUE OF ADDRESS TO SC8DNSEG AND TO PRFNTXT GET THE QCB ADDRESS G • It H . ADDONE GETNTXT ADD 4 TO THE GET THE AVT VALUE OF ADDRESS ADDITIONAL RECORDS ADDRESS MovE PRFCRCD TO QCBLKRRN MOVE QCBQ8ACK TO PRFTQBCK AND ADDONE ADD 4 TO THE AVT PRFCRCO TO QCBQBACK VALUE OF ADDRESS H . It FINDSTCB SAMELA5T GET THE 5TC8 ADDRESS EXAMINE THE MESSAGE AND THE LeB . K 8 FINDSTCB GET THE STCB ADDRESS K ~ r;.;l 'V '\Y 4 • Section 4: Program Organization 313 Chart HM-4 (HM4) DESTINATION SCHEDULER • • I • r;;;;J '\/ 0.,...."""'''"'-'''-__, ~ 4 SET UP TO TPOST THE BUFFER TO INCRCNT INCREMENT DUPLICATE HEAOER RECORD THE 0 I SK 110 QCB 1--_....,...._---1 • • REMOVE ONE UNIT B 8 • • CALCULATE THE ABSOLUTE RELATIVE RECORD NUMBER FROM AVTRADOR ~--~~C TRANSFER OAT A C • ASSIGN1A o ASSIGN THE QUEUING POINTERS o • CALCULATE Y ABSOLUTE RRN = DIVIDED BY E E TOT AL NUMBER OF RECORDS • • CALCULATE X = TOTAL NUMBER OF RECORDS 0 I v I OED BY 4 F F • • SET UP TO TPOST THE ELEMENT TO THE SPECIFIED QCB ILCBRCQCBJ G • REPLACE DSPPOSTR AVTRADDR WITH H TPOST ELEMENT ADJUSTED Y VALUE H • • DSPPOSTR F I NDSTCB TPQST THE REUS QCB TO START REUS CLEANUP FIND THE STCB ADDRESS J • • CALCULATE LOAD POINT PO I NT + =1LOAD /4 THE K TOTAL NUMBER OF RECORDS , 314 OS TeAM PLM , , Chart HM-S (HMS) DESTINATION SCHEDULER • • • • 4 ACTIVATED BY THE REUSAB I L I TY-COPY A SUBTASK HM-l0.CI .. • B B . • GET THE ADDRESS OF THE WORK AREA AND OF THE SCB C .. • GET THE ADDRESS OF THE DCB AND OF THE FIRST LCB IN THE LINE GROUP GET ADDRESS OF LAST PREFIX UNiT 0 0 .. • E C SET THE NUMBER OF UNITS PER BUFFER EQUAL TO 1 FIND THE SCB ADDRESS AND THE LCB WITH THE DIAL SCHEDULER YES E .. UNITCNT F GET THE ADDRESS OF THE RIGHT LCB AND SCB COUNT ONE UN I T F . • NO G G .. • H ADD 1 TO NUMBER. WR I TE IN QUEUED BUFFER NO H . • C MAKE THE LAST .J UNIT TIC TO THIS UNIT . • K • • • 4 • Section 4: Program Organization 315 Chart HM-6 (HM6) DESTINATION SCHEDULER , , , HM-2,BI HM-I,K5 HM-7.E 1,82 HM-2.G5 ~-IC B RETURN • 4 ) , 4 HM-2,D4 PUT THE BUFFER ADDRESS IN REGISTER . DUPLCORE GET THE NUMBER OF UNITS IN A BUFFER LOCATE ORIGINAL HEADER B . . RETURN PUT THE QCB ADDRESS IN THE BUFFER SET THE NUMBER EQUAL TO 1 . ADO THE NUMBER TO THE AYT VALUE OF ADDRESS DSPPOSTR TPOST THE BUFFER 0 0 . . ( E RETURN ) YES E . . SET A NEW AVT VALUE OF ADDRESS F . .. G G . .. H H QP . AI CHAIN ONE UNIT TO THE PREV IOUS UNIT J . K .. FREE THESE UNITS YES ~ 'V . 316 J OS TeAM PLM 4 Chart HM·7 (HM7) DESTINATION SCHEDULER • • • 4 • A . • SENDINIT FLAG THE HEADER ~~~~L~~~~ f~~ ~~stO SEE I F AN I N I TIATE MESSAGE IS BEING SENT B B OF THE BUFFER . • >--"--+! C SUBTRACT I FROM THE MESSAGE COUNT C • . D D • . SENDINIT E SEE I F AN IN 1TIATE MESSAGE IS BEING SENT QUEUE ONE UN IT E . • SETFEFO PUT THE FEFO POINTERS IN THE QCB AND SCB F F .. FINDSTCB FIND THE STC8 ADDRESS G . • H G SAMELAST SET UP TO QUEUE EXAMINE Ttii BUFFER AND lII'E LCB ONE UNIT H . • ASSIGN! J QUEUE THE UN I T • . K K • 2 • 4 • 5 Section 4: Program Organization 317 Chart HM-S (HMS) DESTINATION SCHEDULER • • HM-2,C5 .. HM-7,G5 • I ,E4 HM-2,85 HM-B,Dl HM-3,.J5 HM~ HM-3,J2,K5 • HM-4,J5 • HM-7,H5 YES B B . • I EDQHG02 YES REMOVE ELEMENT FROM THE TIME DELAY QUEUE C C .. • LOCKMSG CKDELA YQ D REPLACE THE SEND SCHEDULER REMOVE ELEMENT FROM TIME DELAY QUEUE. IF THERE TEST FOR A LOCK STCB D RESPONSE MESSAGE . • E E . • SET UP TO TPOST THE Lee FOR A SEND OPERATION F . • (0 CALCULATE 15 ADDRESS + OFFSET AT ADDRES5-2 REG [STER G G .. • BALR H 14,15 SET X = Qce ADDRESS AND Y SEARCH VALUE EXECUTE THE SCHEDULER AT REGISTER 15 H .. • RESTORE THE ADDRESS OF THE " YES 5C§:BANgFo~H~HE REMOVE THE Lea FROM THE CHAIN Qce . K " • ( RETURN ) MOVE Y TO X; MOVE THE Lee INSRCE VALUE TO Y .. 318 F OS TeAM PLM . . 4 ( RETURN ) K Chart HM·9 (HM9) DESTINATION SCHEDULER . .. . HM-2,H4 . .. 4 HM-4,D5 HM-7,,J 1 HM-2. G4 HM-9.G2 SET THE PRFCORE FIELD B . SAVE THE BUFFER ADDRESS B . .. TRANSFER ONE UNIT C .. . GET THE ADDRESS OF THE PREVIOUS HEADER AND o o CHAIN THIS ONE IN . GET THE ADDRESS E OF THE PREVIOUS UNIT AND PUT PRFCDRE IN ITS PRFNTXT FIELD MOVE PRFCORE TO SC8CLSEG AND TO QCBCPVHD RESTORE ADDRESSES E . SET THE LOCK RELATIVE RECORD NUMBER IN THE QCB MOVE PRFCORE TO SCBCLSEG F . .. ASS I GJ\J 1 QUEUE THIS BUFFER G G .. . H H .. . PUT ZERO I N THE TIC COUNT FIELD . .. K . .. 4 Section 4: Program Organization 319 Chart HM·lO (HMlO) DESTINATION SCHEDULER • • • • 4 A It HM-2,A5 HM-2,F2 HM-4,F5 HM-6,85 HM-2,K2 HM-2,.J2 HM-B,D4 • HM-7,F5 B GET THE HEADER BUFFER ADDRESS LOCATE ORIGINAL HEADER B • It IEOQHM03 C C It • D D It • E UPDATE THE see WITH THE NEW FEFO POINTER E • It F UPDATE THE QCB FEFO PO INTERS F HM-2,H3,J4 HM-3,Hl,H4 HM-2,G2 • ADD 4 TO THE AVT VALUE OF G G ADDRESS • It ADD I TO DUPLICATE HEADER COUNT H H • It PUT SCSDNSEG IN PRFCRCD .J .J • It SET THE SUFFER ADDRESS K 3 320 OS TeAM PLM ----~~~~~- 4 K • Chart HMI-I (HI I) DESTINATION SCHEDULER - MAIN-STORAGE.QNLY QUEUING , , , 4 , A .. B GET THE ADDRESS OF' THE BUFFER I OF" D~H~H~C~CBAND REPLACE THE SCB PRIORITY WITH THE DF"F"SET TO CURRENT PRIORITY LEVEL QCB B . • C GET THE ADDRESS OF" THE MASTER QCB AND OF" THE FIRST PRIORITY QCB NO C . • NO 0 D • . CKDELAYQ ADD ONE TO THE QUEUE MESSAGE COUNT E NO REMOVE ELEMENT F"ROM TIME DELAY QUEUE, IF" THERE E .. • = PR TY QCB ADDR PRTY OF"F"SET x PRTY QCB SIZE + F"IRST PRTY QCB AD DR F" F" . = SET MSG TO GO TO THE HIGHEST PRIORITY DCB G SET X THE PREF"IX SIZE G .. • GET THE ADDRESS OF THE NEXT NO AVTKEYLE F"ROM X H . B3 • J SUBTRACT T~N +~~ ~gSN~~~ H GET THE ADDRESS OF THE NEXT PRIORITY LEvEL QCB SET THE NUMBER OF" UNITS THE COUNTER = J .. • SET UP TO TPOST THE NEXT UNIT TO THE BUFFER RETURN QCB NO K • 2 • 3 • 4 POSTSUB TPQST THE BUF"F"ER K • Section 4: Program Organization 321 Chart HMl-2 (H12) DESTINATION SCHEDULER - MAIN-STORAGE'()NLY QUEUING ~ • • • • ':l PQSTDISK ~ >Y.::E.;:S_-t REPL~T~H~~~ aCB A PRIORITY LEvEL • SENDINIT B 8 TEST FOR INITIATE MODE NOW ACTIVE • YES C POSTSUBA TPQST THE ERe PUT THE aCB ADDRESS IN THE BUFFER C • • 4 CNTUNITS COUNT BFR UNITS 0 &. UPDATE 0 AVT ADDR VALUE • • NO E GET THE ADDRESS OF THE SUFFER RETURN QCB E • • F INCRCNT SET~EFO COUNT THE SET QCB AND seB FEFO POINTERS DUPLICATE BUFFER F • 4 QUE UN I 1S REMovE ONE UNIT FROM THE BUFFER G SAMELAST QUEUE THE BUFFER UNITS TRANSFER DATA EXAMINE THE MESSAGE AND Lce • • H ASSIGNIA FINDSTCB ASSIGN THE QUEUING GET THE STCB ADDRESS POINTERS H • • SETFEFO SET FEFQ J IN THE QCB AND THE SCB POINTERS DSPPOSTR TPOST THE ELEMENT J • • SET UP TO TPOST THE SPEC I FI ED QCB AT LCBRCQCB . 322 G as TeAM PLM FINDSTCB GET THE STCB ADDRESS . 4 .. Chart HMl·3 (H13) DESTINATION SCHEDULER ·MAIN-STORAGE..QNLY QUEUING , , 3 , , 4 ACTIVATED BY THE REUSAB I L.I TY-COPY SUBTASK HMI-S,CI • . B B • .. C C • . o GET ADDRESS OF THE L.AST PREFIX UNIT >-=--J GET THE ADDRESS OF THE WORK AREA AND OF THE SCB o .. • UNITCNT E COUNT ONE UN I T E . • F NO GET THE ADDRESS >.;;...-------------1 OF THE L.AST PREFIX .. • G .. • H MAKE THE L.AST UNIT TIC TO THIS UNIT H • .. • .. K K • 3 5 Section 4: Program Organization 323 Chart HMl-4 (H14) DESTINATION SCHEDULER· MAIN-STORAGE-ONLY QUEUING , , .. , HMl-2,81 HM1-1 HMl-5,Dl HMI-2,F3 1 K5 , 4 HMI-2,02 . HMI-5,B2 8 ( RETURN + + DUPLCORE ) PUT THE BUFFER ADDRESS IN REG I STER I GET THE NUMBER OF UNITS IN A BUFFER LOCATE ORIGINAL HEADER B .. • P PUT THE QCB ADDRESS IN THE BUFFER C SET THE NUMBER EQUAL TO I • OSPPOSTR ADD THE NUMBER TO THE AVT VALUE OF TPOST THE BUFFER 0 D ADDRESS .. • YES E E . • SET A NEW AVT VALUE OF ADDRESS F .. • G G .. • H H HIS AI CHAIN ONE UNIT TO THE PREVIOUS UNIT ~ .. K • FREE THESE UNITS YES ,. 324 • OS TeAM PLM ,. 4 Chart HMl·S (H1S) DESTINATION SCHEDULER· MAIN-STORAGE-ONLY QUEUING , , , • A .. • FLAG THE HEADER SENDUN I T >:'::""..(..._1 L~~U f~~ ~~stO SEE IF INITIATE MODE MSG BE I NG SEND B 9 OF THE BUFFER • C C .. • SENDI NIT o SEE IF AN INITIATE MESSAGE IS BEING SENT o QUEUE .ONE UN I T .. • SETFEFO PUr THE FEFO POINTERS IN THE aCB AND SCB E E .. FINOSTCB FIND THE STCB ADDRESS F .. .--_ _...................."\4 G • SAMELAST SET UP TO QUEUE ONE UNIT EXAMINE THE AND THE LCB G BUFFE~ .. • ASSIGNI H QUEUE THE UNIT H • .. • K • • • Section 4: Program Organization 325 Chart HMl·6 (Hl6) DESTINATION SCHEDULER - MAIN-STORAGE-ONLY QUEUING , , , 3 • 4 A A .. HMI-2,H5,K3 HMI-I,E4 HMI-2,G5 HMI-5,F!5 HMl-6,Dl HMI-5,G5 • YES 8 8 . • IEOQHG02 C YES REMOVE ELEMENT FROM THE TI ME DELAY QUEUE C .. • CKOELAYQ D LOCKMSG REPLACE THE SEND SCHEDULER STCe REMOVE ELE:MENT FR"'" T liOIE DELA Y QuEUE, IF THERE TEST FOR A LOCK RESPONSE MESSAGE 0 . • E E . • SET UP TO TPOST THE Lce FOR A SEND OPERATION F . G • CALCULATE REG I STER 15 ADDRESS + OFFSET AT AOORESS-2 .. AL~' H I. G • 15 = SET X Qce ADORESS AND Y SEARCH VALUE SR T H E AT R 15 H . • RESTORE THE ADDRESS OF THE .J F YES SC~:8 AN8" O~H~HE REMOVE THE Lce FROM THE CHA I N .J ace . • ~g~~ tH~OL~~ K I NSRCE VALUE TO Y • 326 -=--1 C GET THE ADDRESS OF THE WORK AREA AND OF THE seB • C • GET THE ADDRESS OF THE DeB AND OF THE FIRST LeB IN THE LINE GROUP D o • • YES :>-=--1 E • FIND THE se8 ADDRESS AND THE LCB WITH THE DIAL SCHEDULER E • GET THE ADDRESS OF THE RIGHT LCB AND SCB • • G G • • H H • • J J • • K K 2 • 4 Section 4: Program Organization 333 Chart HM2·6 (H26) DESTINATION SCHEDULER· DISK.QNLY QUEUING , 1(1 , • 3 A .. HMi2-I,K5 HM2-2,SI HM~-2,F'2 HM2-3,1"t2 • GET THE ADD I T I ONAL RECORDS ADDRESS PUT THE SUFFER ADDRESS IN REGISTER I e 8 .. • C C .. • D D .. • E E .. • F .. • G HM2-3 ,H I HM2-7,04 HM2-3 ;H4 • • ADO FOUR TO THE AV'r vALUE OF ADDRESS H H .. • J • • K • 334 OS teAM PLM • 3 4 • Chart HM2·7 (H27) DESTINATION SCHEDULER· DISK-ONLY QUEUING , , , • 5 A A • HM2-3,..J2 HM2-1,£4 HM2-3,K5 HM2-1,OI HM2-3,..J5 . YES 8 B • • IEDQHG02 YES REMOVE EL.EMENT FROM THE T I ME DELAY QUEUE C C • • 4 CKDELAYQ ') L.OCKMSG REPLACE THE SEND SCHEDULER STCB REMOVE ELEMENT FROM T I ME DELAY IF THERE QUEUE, TEST FOR A LOCK RESPONSE MESSAGE 0 • • E E • • SET UP TO TP05T THE Lce FOR A SEND OPERATION F • G • CALCULATE REGI STER 15 ADDRESS G + OFFSET AT ADDRESS-2 • • BALR 14,15 H = SET X QCB ADDRESS ANO Y SEARCH VAL.uE EXECuTE THE SCHEDULER AT REGI STER 15 H • • RESTORE THE ADDRESS OF THE ~ F REMOVE THE Lce FROM THE CHAIN YES 5C§:8ANgFo~H!fHE ~ QCB • • ~g~~ tH~°L.~~ K I N5RCE VALUE TO Y • • K • 5 Section 4: Program Organization 335 Chart KA-I (KAI) ACTNATE-I/O GENERATOR SUBTASK , 3 , , 4 110 GENERATOR: THI S ENTRY POINT ALSO SERVES ~---------- THIS CHART ALSO A • , ----,r--- APPLI ES TO MODULES RO-8,H4 Q3-6,H3,F5 I£OQK9, RO-9,F4 Q3-3,F5 I EDQKD , AND IEDQKE Q2-8,J5 Q4-5,Ci5 ~------~ ~~g~R5~ l~8Q~~DQ~~~QKC, KA-I,Cl I EOQKC , • Q5-6,H4 IEDQTNT CALCULATE THE TERMNAME OFFSET B • • C A IEDQKA02 HAVE 110 GENERATOR BUILD CHAN PROG C • • GET THE CONCENTRATOR TERMINAL D o • • E E • • F • • SET UP BUFFER PRIORITY AND LINK FIELDS FOR TPOSTING G G • • EXECUTE THE EXPAND SUBROUTINE H • J • NO OP THE FIRST TiC J • • EXCP - TO START CHANNEL PROGRAM K . 336 H OS TeAM PLM 3 K . 4 . 5 Chart KA·2 (KA2) ACTIVATE·I/O GENERATOR SUBTASK , , , , 4 KA-I,H5 KA-2,E3 SET THE ADDRESS OF THE MODEL CHANNEL PROGRAM TABLE GET THE ADDRESS OF THE CCW OAT A AREA • B .. B . • ( C RETURN ) GET THE CORRECT CCWS C .. • SET THE DATA COUNT 0 0 .. • EXPANDER E EXECUTE THE EXPANDER SUBROUTINE .. • SET tHE DATA ADDRESS F .. • G SET THE OP CODE G • .. H H • .. POINT TO THE NEXT ENTRY IN THE MODEL TABLE J J .. • K • • 4 • Section 4: Program Organization 337 Chart Q2·1 (Q21) LINE END APPENDAGE FOR BSC LINES , • 3 • 4 • ,. • B B ,. • c c ,. • D D ,. .. E E ,. .. F F ,. • G G ,. • GET THE RETURN ADDRESS TO THE 1/0 SUPER VI SOR TO SCHEDULE ERP H H ,. • J ,. • K . 338 OS TeAM PLM .. . 4 . Chart Q2·2 (Q22) LINE END APPENDAGE FOR BSe LINES • ~ 'V ~ ~ y • • ~ y • SET A NEGA T I VE RESPONSE . • TPQS T THE ERB SET THE Lee TO BE TPOSTED TO THE Qce ADDRESS DISPOSITION QCB THE Lee SET THE PARAM- ETER LIST TO B SPECIFIED IN TO THE BUFFER .. • ENQUEUE GET THE ADDRESS OF THE ENQUEUE PUT THE ELEMENT ON THE READY QUEUE PUT THE ERB ON THE READY QUEUE INVITATION LIST; RESET THE RECEIVE LIMIT SET THE Lee TO 9E TPOSTEo TO THE BUFFER DISPOSITION QCB C .. • ADJUST THE GET THE ADDRESS OF THE NEXT RETURN REG [ 5 TER SO THAT THE Eca r 5 NOT POS TED D D ENTRy .. • RESTORE THE REGISTERS FOR THE I/O E E SUPERV I SOR .. • F ( RETURN ) F • . G G • .. I EDQTNT H H • ' .. J . • SET UP TO RESTART ON THE NEXT CCW • • • K 4 Section 4: Program Organization 339 Chart Q2·3 (Q23) LINE END APPENDAGE FOR BSC LINES , 2 , , 4 , A .. .. 4 CHACK B GET A RESPONSE TO THE SELECT ION B .. .. C . .. D GET THE TERMINAL ENTRY ADDRESS 0 . .. GET THI1: L I S1 OF BUFFER S FOR THE MH E E .. .. F PUT THE eUF"FIE:RS ON THE READY QUEUE F .. .. SET UP TO RESTART ON THE NEXT CCW G G . .. GET THE RETURN H ~?8R~G~E~S I ~~~ TO SCHEOULE ERP H .. .. R~am~~ST~8R THE I/O SUPER V I SOR J J . . K K • 340 OS TeAM PLM 2 . 4 • Chart Q24 (Q24) LINE END APPENDAGE FOR BSC LINES • • • 4 • • • 8 8 • • CHECK THE RESPONSE C C • • WRITE AN EOT TO RESET 0 • • E • • 8SCRSP F 8UILD A WRITE ENQ GET THE RESTART POINT F • • G G • • H H • • CHECK 10 AND SET A 8RANCH RETURN J J • • K K • 2 • 3 • 4 • 5 Section 4: Program Orga/lization 341 Chart Q2-5 (Q25) LINE END APPENDAGE FOR BSC LINES • • • 4 • CHACK CHECK THE RESPONSE CHECK THE RESPONSE • • 8 8 • • c c • o o • • E SET UP TO RESTART ON THE NEXT CCW E • • F • • G G '--_ _ _ _--!._ _ _ _ _-\ H5 • r---~I H H • RESTORE THE REGISTERS FOR THE .j I/O .j SUPER V I SOR • • K • 342 OS TeAM PLM 4 • Chart Q2-6 (Q26) LINE END APPENDAGE FOR BSC LINES • 4 SCAN F INDBUFF A • • • GI;:T THE CURRENT BUFFER A SCAN LINE CONTROL • • ENQUEUE B SET UP TO RESTART ON READ LCOUT TPOST THE BUFFER TO THE t.4H AS EOt.4 • • C ADJUST THE RETURN REGISTER SO THAT THE ECB I S NOT POSTED FINDBUFF SET UP TO START AT WRITE ACK INAKI SET THE CURRENT BUFFER BASE BUILD A WRITE NAK. READ TEXT C • • RESTDRE THE REGISTERS FOR THE I/O SUPERVISOR 0 DECREMENT THE DATA SIZE E E • • YES F F • • CHACK ENQUEUE! CHECK THE RESPONSE TPOST THE BUFFER TO THE MH SET THE TIC CHAIN FOR TRANSPARENT SUFFER YES G • • 4 YES H I DCHK CHACK CHECK THE RESPONSE CHECK THE RESPONSE F"INDBUF"F" GET THE CURRENT BUF"FER H • • IDCHK RESTART ON THE DISABLE YES J TPOST THE; BUFFER TO THE t.4H WITH ERROR NO CHECK THE 10; SET UP FOR A BRANCH RETURN J • • K D • • G B SET UP TO RESTART ON READ 10 ENQ ENQUEUE RESTORE THE PREVIOUS CCW AND CS. • 2 • 3 • 4 PUT THE BUFF"ER ON THE READY QUE;UE • K 5 Section 4: Program Orgllllization 343 Chart Q2-7 (Q27) LINE END APPENDAGE FOR BSC LINES • • • • FINOBUFF FIND THE CURRENT SUFFER • N;.;O_....... D PREVIOUS ELEMENTS .. o • I NCREMENT THE BUFFER COUNT E PUT THE CURRENT ELEMENT AT THE TOP OF THE READY QUEUE GET THE ADDRESS OF THE NEXT BUFFER E .. • SET THE PREF I X SIZE; SET THE PARAMETERS TO TPOST TO THE MH F CLEAR THE L1 NK FIELD OF THE CURRENT ELEMENT . G T~R~~~T C~~T~E~~ • SET THE PARAMETER L1 ST FOR BUFFER RETURN ENQUEUE PUT THE BUFFER ON THE READY QUEUE G . • POST - POST THE SYSTEM WAIT COMPLETE H H • J .. • K K • 372 as TeAM PLM • • 4 • Chart 05·8 (058) LINE END APPENDAGE FOR A OTAM-COMPATIBLE SYSTEM • .. • • • Q5-5 t A2 • GET THE ADDRESS 9 DFT~~ElgC~h§ET 8 AREA .. • YES C AD..JUST THE RESPONSE LENGTH 8Y 2 C .. • YES D ADJUST THE RESPONSE LENGTH 8Y I D .. E • PAD THE RESPONSE AREA WITH SLANKS E .. F • GET # Or I NV I TATION LISTS AND PO I NTER TO INVITATION LiST FOR THIS LINE F • RETURN G ) G .. • H H .. N:.;:O_ _... PREeV bb~ m~ TO START ON S S .. c • PERFORM SOURCE DETERMINATION SET NO RETRY C .. • ADJUST SIZE 8UFFER D .. E A ___ SET EOT INTO SUFFER SET ADDRESS EIIP INVLIST CHARACTERS IN D • .I...I:=-u...~'4 ENQUEUE SET ERP PENDING INDICATOR TPOST THE SUFFER .. E • ADJUST THE RETURN REGISTER SO THE Eca IS NOT POSTED F F .. • G G .. • H H • J J .. • K K • 384 OS TeAM PLM 4 • Chart RO-9 (R09) LINE END APPENDAGE , , , , 8 Y YES CHANGE THE PREPARE TO A READ COMMAND NO A • e • • SET THE RESTART ADDRESS TO READ • • o TPOST THE Lee D TO IEDQHK • • RESTORE E C ASSUME 2741; REGISTERS FOR THE I/O >=-'--1 C~~~~~R~E~D s~9 SUPERV I SOR THE RESTART ADDRESS • E • I EDQKA BUILD A 1050 CHANNEL PROGRAM F F • ENQUElJ E G TPOST THE Lee TO THE HALTIO ROUTINE G • H H • • J • • K K • 3 4 Section 4: Program Organization 385 Chart RO·lO (ROA) UNE END APPENDAGE • • 3 • , 4 A A . .. B B .. .. C C .. . 0 0 . .. 4 ENQUEUE E TPOST THE I..CB TO THE HANGUP ROUTINE E .. .. F" F" .. . G G .. .. 4 ENQUEUE H TPOST THE BUF"F"ER TO MH H . .. I NCREMENT THE RETURN REG I STER TO SKIP THE POST IN IDS .J .J .. .. K K • 386 OS TCAM PLM 2 • 3 • 5 Chart RO·ll (ROB) LINE END APPENDAGE , , , RO-o,C2,Dl,H4 RO-4,Dl • RO-8,D3 RQ1,A3 • , 4 RO-15,Dl RD-2 , CI,e2 RO-6,EI,E3,K5 RO-3,E3 RO-1,C3,03,F3,J3 RO-5,J2 RO-8,G3,G4,J5 PUT QCB ADDR THE ELEMENT; IN GET ADDR OF THE LAST ELEMENT ON READY QUEUE B • RO-9,G2,D3 RO-IO,E4,H4 B RO-' I ,Ci2 • • ( C SET THE CURRENT ) RETURN ELEMENT AS THE LAST IN THE DISABLED READY QUEUE C • • INSERT THE >-N.:;O_......-I o r~R~R~T cR~T~E~~ PREVIOUS ELEMENTS • • INCREMENT THE PUT THE CURRENT ELEMENT AT THE TOP OF THE READY QUEUE GET THE ADDRESS BUFFER COUNT E OF THE NEXT BUFFER E • • SET THE PREF I X SIZE; F SET CLEAR THE LINK FIELD OF THE CURRENT ELEMENT THE PARAMETERS TO TPOST TO THE MH F • • G D SET THE PARAMETER LIST FOR BUFFER RETURN ENQUEUE G PUT THE BUFFER ON THE READY QUEUE • • POST - POST THE SYSTEM WAIT COMPLETE H H • • ~ ~ • • K III 2 III III 4 5 Section 4: Program Organization 387 Chart RO·12 C (ROC) LINE END APPENDAGE , , , IDCHK RO-8,E2 RO-4.J4 RO-6,G3.HI • B , 4 :'::".1.--1 WR I ~~S~~ !f~~ SET UP TO RJ;:START ON THE NEXT BLOCK TO TERMINAL E ( • • SET AN INDICATOR THAT THE LINE IS IN TEXT MODE F F • G ~ESTORE THE REGIsTERS FOR THE I/O SUPER V I SOR SET THE OFFSET IN THE SCB FOR POSS ISLE RECALL G • • H H • • BUILD A WRITE EOT TO RESET THE TERM I NAL • • K K • 2 • • 4 • Section 4: Program Organization 391 Chart ROG (ROG) LINE END APPENDAGE • A 2 • • 3 • 4 5 (SOURCER ) A . • 8 LOCATE INV ITATION LIST B .. • C GET CONTROL UNIT ADDRESS IN BUFFER C .. • D LOAD NUMBER ACTIVE INVLIST ENTRIES D . • E LOAD INVITATION LIST POINTER YES SET SOURCE IN LCB E .. • STEP TO NEXT INVITATION LIST ENTRY F SET ADDR INVITATION CHARS FOR ERP . • G ( RETURN ) .. • >.;:;.:--------------1 CLEAR H Eg~RCE IN H .. • DER I VE NUMBER INACTIVE ENTRIES .) J .. • RESET CONTROL UNIT ADDRESS K • 392 OS TeAM PLM K • 3 • 4 • 5 Chart ROH (ROH) LINE END APPENDAGE • A ( LOOKER 2 • • 4 • ) A • B • OERIVE INVITATION LIST AOORESS B • NO C OER I VE SOURCE F"ROM INVLIST POINTER C • 0 • TNT DC ODE OER I VE TRMTABLE AOOR CURR CONNECTEO 0 • • CALCULATE OCT ENTRY AOORESS E E • F" • ( RETURN ) F" • • C; C; • • H H • • J J • • K K • 2 • 4 • Section 4: Prosram Organization 393 Chart ROJ (ROJ) LINE END APPENDAGE • • • • 4 A .. • B DER IVE INVITATION LIST ADDRESS B . • c DERIVE ADDRESS F'IRST TNT INDEX C • o SAVe: INVLIST ENTRY INDEX LOAD TOTAL NUMBER INVLIST 0 ENTRIES .. • LOAD I NVL I ST ENTRIES E E .. • POINT TO FIRST INVLIST ENTRY STEP TO NEXT INDEX F .. • SET ERROR I NVLI ST CHARS ADDRESS G .. • YES H H .. • STEP TO NEXT INVLIST ENTRY DERIVE NUMBER INACTIVE INVLlST ENTRIES J .. • '-------------1 K ,. 394 G OS TeAM PLM 2 ,. ,. POINT TO FIRST I NACT I VE ENTRY 4 K Section 5: Data Area Layouts TCAM Control Block Linkages Main Storage Location 16 + CVTPTR ~ Stotion Control Block ( ~r-_m_U"_"'_I_IO_"_'_V._C_lo_r_l~Ob_I·_· '.."" • t __________ __l1 K'~ + 240(FO) AVT Address V ____________ 1"I" ~ t AVTCSTCS ~~ v\ Line Control Block Data Extent Black 0 "8) Data Extent Block --jj V Next DEB ddname }~;'~:~d .-I 0 DEBTCBAD t TCB 4(4) DEBDEBAD t Next DEB 1'\ ,~ ~ ... MCP TCB ... I/O Trace Table 376(178) AVTREADY Enabled Ready Queue 380(l7C) AVTREADD Disabled Ready Queue 388(184) AVTCKGET + 392(188) AVTOCGET • 40(28) 1--___.L..-I_ _ _ _ _ _..:..t_U_CB_ _ _ _- - i Code LCBSTART 10BSTART 48(30) r-----------~------____j 52(34) LCBDCBPT 10BDCBPT 96(60) LCBINVPT 24(18) r-DE_B_DC_BA_D_ _ _ _ _t.;..._D_C_B_ _ _ _- t Repeated 't: /-______;-__________--j AVTTCB D r----r-------.------~ LCBECBPT 10BRCBPT Completion 36(24) _16~~\r-_ _-,-ID_E_BD_S_CBA _ _..;.+__ DS_C_B_ _ _ stepname \ 1 I \ SCB D;,ectory ________________ __ 80(50) L -__~ISCBTRANS 4oCurH'nt Tlcmslation Table ~-------r------~----------~ " + \ 8(8) ~[ AVTRACE + 0 1-_ _ _ _ ISC_B_D_E_S_T_Q_ _ t_D_"_S'_in_"_'i_o_n_u_C_B_--;0 ---------.--------l I Sense Bytes ddname 372(174) LCBSCBDA ,V l Stollon Conh 01 810ck I/O Block - ... 32(20) iobname 2S(IC) 368(170) sea ____ / (Task I/O Table AVT ... Device Characteristics Table 1-0:_:_f:f_se~_Ct-:ta-D- r-Re-sou-rc-e-c-a-n-tr-O-I-B-la-ck- 24(1 current 0 ~"'" 328(148) Task Control Block J{ ~r-_:~_:_~_:__~!~ _:_;_u_e_ue '-----=------.,) ~ TCB t ECB t Channel Program ~ i t \ DCB for each dev;.~ce 32(20) DEBUCBAD t UCB ~--k--------------------' Unit Control Block 1 UCBNAME Unit Name 28(1 C) Checkpoint Work Area 32(20) Ol)erator Control AVT DCBIOBAD ... CCW lOB t o r-----~----__ll ~~--~----~ IDCBTRANS Invitat,on list Entry ..------J J It 11 12(C) +~urrent Code Translation Tables " ' - Flags Data Count J 4 Translation Tables 412(19C) AVTBASE 420(IA4) AVTDISTR 424(IA8) AVTRNMPT 492(1 EC) AVTOSECB ... AVT + + Subtask Trace Table OS TCAM ECB 496(1 FO) AVTPCBPT ... First PCB AVTOPTPT + 720(200) AVTADBUF + AVTCOREC + 900(384) __ Option Table Buffer currently being processed DCBTlOT 44(2C) DCBDEBAD Invitation list 1\ ... lII-----..JI "-... . . SCT Outgoing 8(8) ""'" ~ l,nvchors2 1176(498) AVTADEBR TRMSTAT Termnome Table 12(C) AVTADEBN Information + Address Reusable Disk DEB ~ Nonreusable Disk DEB ~O 13 (D) 16 (10) 40 (28) QCBSTCHN • STCB Chain • DCB or PCB I OCBDCBAD Start of Priority GlCB 16(10) TRMCHCIN DCT Index .1 T TRMCONC For a process entry, Process Entry Work Area I I TRMOPTBL Option Table Offset I Concentrator Device ID Table L-_~,/~___D_e_v_ic_e_D_e_~_n_de_n_t_F_ie_l_ds_ _ _ _~r---.I---~1~~______________~I_T_er_m_n_a_m_e_T_a_b'_e_Of__fs_e_t-11 ~~ Buffer Prefix I Element Chain IX'FE'I··· I Buffer Unit Pool + OCBEXTO 32(20) 40(28) Itgul,nvchars I QCBELCHN o_T_e_rm_i_na_I_T_a,b Code and Control 1152(480) 24(18) 1-le-T:-:-t~-,-y-ES-T-Q--+-:--D-e-st-in-a-t-io-n-Q-C--B--' ____ I _ _ _ _ __, ____________________ ~~~~al Destination OCB Incoming DEB I DCBSCTAD ~---.---=:----...--.........., ••• 102101103: I TIOT Offset + ~~~~~~~~~~~~~~i~~~~~~~~~~~~~~~~~~~~~:1 S'"~_c·_'a_I_C_h_ara_ct_e_rs_T_a_b_le ----::DC:-BI-N-V-Ll-----T---ln-vi-ta-ti-~--Li-st--------~~ .~ 48(30) Termname Tobie 500(1 F4) 40(28) Device Characteristics Table Length Type Name Section 5: Data Area Layouts 395 Insert foldout page 395 at end of book. Linkages from a TeAM Buffer Prefix Buffer Prefix 0 PRFQCBA 4(4) PRFLI NK Destination QCB • .... QCB QCBELCHN 0 12(C) 16(10) + PRFSRCE Source Offset 28(1 C) QCBSTCHN 32(20) V to Termnome PRFSCAN Scan Pointer 40(28) Elements PRFDEST Destination Offset to Termname Table + STCB chain + + DCBIOBAD I 32(20) DCBTRANS \ QCBDCBAD + DCB or PCB 44(2C) DEB DCBSCTAD t I 48(30) 60(3C) + DCBDEBAD t DCBINVLI ~ Translation Tables r---- Invitation list ~ Start of the lOB 1\ + DEBDSCBA DSCB + DEBTCBAD • DEBDEBAD SeT LCB 32(20) I -16(10) lOB LCB Table 24(18) + li nk address 8(8) PRFLCB Data ExlL'nt Block Data Control Block TCB Next DEB 24(18) DEBDCBAD + DCB 32(20) DEBUCBAD t UCB Station Control Block 48(30) 52(34) 72(48) LCBSTART LCBDCBPT LCBRECAD 92(5C) LCBSCBA 96(60) LCBINVPT t Channel program + 0 DCB 80(50) t Current message + Current SCB + t ISCBDESTQ 1 t SCBTRANS Special ChOiactelS Table Destination QCB Current I Translation Table I block Current invitation list entry Translation Table (U Incoming Outgoing Terminal Table Entry Control Word CE'Obl'/ ~ ! gu! Invchars 1 !,nvchars 2 ! X'FE' I· . I TRMDESTQ I Code and 16(10) Terminal name Address Terminal name Address ----------------, Termname Table Offset I TRMCHCIN DCT index TRMCONC L 1"\ Device) Dependent Fields etc. I Destination GCB I 8 Control Information Concentrator Oevice ID Table t G I--- Option Table Devi ce Characteristi cs Table Characteristics list 4(4) Option CharacterisHcs Table Address Option Characteristics Table I ~---------~.--.---.--------~ ~ 0 length type name 10(A) length type name Characteristics list etc. Section 5: Data Area Layouts 397 Insert foldout page 397 '8t end of book. Linkage among Storage Areas in the MCP and an Application Program Message Control Program Application Program ( r: Task Cantral Black 8 (8) TCBDEB tDES queue DEBTCBAD t 4 (4) DEBEBAD 8 (8) DEBPCBAD 24 (1S) t MH LCB I t 40 (28) PC8TC8AD + PCBLCBAD ~ l/1 + LC8DC8PT PCB V TC8 LJ rCB + + next DEB PCB ?' DEBTAMOS Termname Table offset for 20 (14) PC8MH 32 (20) Process Entry Work Area this process entry 16 (10) I Line Control Block ) Data Extent Block 0(0) 12 (C) --....., Process Control Block DEBQCBAD +~(t"Ohead DEBTAMWA tAccess Method work area DEBDCBAD tDCB PEPCBAD + PERAQC8 Read-ohead QCB 32 (20) 16 120 (7S) PEWADEB 132 (84) PEWAPROC PCB t DEB t'-~";"~I\ Terminal Table Access Method Work Area 4 (4) PWAPEWA 16B (AS) IOBSRCE + Process Entry work area lJ Desti notion QCB 32 (20) + QCBDCBAD PCB I Tennname Table offset Termnom'e Tobie Code and Control Information Terminal name 111 Terminal name I 1 Dato Control Block DCBDEBAD 0(0) + TRMDESTQ Destination QCB address 12 (C) etc, 44 (2C) Terminal Table Entry address TRMSTAT + Process Entry work area t DEB Section 5: Data Area Layouts 399 Insert foldout page 399 at end of book. Address Vector Table The TCAM address vector table (AVT) is assembled at the beginning of a Message Control Program. The basic AVT occupies bytes 0-1055 and is assembled when ENVIRON=TSO on the INTRO macro. If main-storage-only queuing is specified (DISK==NO,ENVIRON==TCAM or MIXED), the AVT occupies bytes 0-1079. When disk queuing is used, the AVT occupies bytes 0-1225. When either the Disk Message Queues Open or the Line Group Open routine loads the TCAM Dispatcher, the routine also places in the CVT a pointer to a field that contains the address of the AVT. The fields in the AVT are initialized both during the assembly of the INTRO macro and at MCP initialization time. The AVT p~ovides work areas in which TCAM routines can store variables. The AVT also contains constant areas shared by more than one macro expansion or TCAM subroutine. The AVT contains five save areas--one for the MCP, one for each level of control in the MCP, and one for disabled code. For efficient internal control, the AVT also contains module addresses, special elements, control bytes and bits, and the two ready queues. The DSECT names of the AVT fields are shown in the following layout. A more detailed description of the fields and the data they might contain follows the DSECT layout. Section 5: Data Area Layouts 401 IEDOAVTD 1.0(0) 1.,44 AVTSAVE1 Message Control Program Save Area AVTSAVE2 Dispatcher Save Area tOOl AVTSAVE3 Subtask Save Area 1216t081 AVTSAVE4 First Level Subroutine Save Area 128811201 AVTSAVEX Disabled Save Area 1+320(140) _r AVTDLO DLQ=Termname 1 I I 1 I .... r- +328 (1481 AVTCSTCS Address of the First Entry in the Device Characteristics Table +332 (14CI .........+336 (1501 AVTDPARM Disabled Parameter List AVTDOUBX Disabled Doubleword Scratch Area .... " +344 (1581 AVTDOUBL Enabled Scratch Area }.352 ""'" AVTCTLCH Operator Control Characters +360 (1681 ..... - AVTPASWD Password I -- +368 (1701 AVTTCB Address of the Message Control Program's TCB; Set by OPEN +372 (1741 AVTRACE Trace Table Address +376 (1781 AVTREADY Enabled Ready Queue ........+380 (17CI +388 (1841 +392 (1881 402 OS TeAM PLM AVTREADD Disabled FIFO Ready Queue AVTCKGET Checkpoint Work Area Address AVTOCGET Operator Control Work Area Address .... : +396 (18C) AVTEXA2S Executed I nstructions to Save the User's Registers 1+402 (192) AVTEXS2A Executed I nstructions to Save the User's Registers 408 (198) AVTPARM Address of Parameters 412 (19C) AVTBASE Address of the A VT 416 (1AO) AVTPARM3 Address of Additional Optional Parameters 420 (1A4) AVTDISTR Address of the Dispatcher Subtask Trace Table 424 (1A8) AVTRNMPT Address of the Termname Table 428 (1AC) AVTRDYA Address of User Exit in the READY Macro Expansion 432 (1BO) AVTBSCAN Line End Appendage BSC Message Scan 436 (1B4) AVTRARTN Address of Routine to Update Line I/O Trace Table 440 (1B8) ... '" ~~ AVTPOST Tpost Parameter List Used by Operator Control ... r448 (1CO) ~,.-. AVTSPLPT Start Parameter List Pointer; Set by INTRO 453 (1C5) 452 (1C4) AVTCIB CIB=lnteger 484 (1C6) AVTNOLBF LN UN ITS=lnteger AVTNCKPR CKREQS=lnteger 456 (1C8) AVTAS Address of the Hold/Release Terminal Routine 460 (1CC) AVTCKTCB Address of the Checkpoint TCB 464 (100) AVTOCTCB Address of the Operator Control TCB 468 (104) AVTOLTCB Address of the On-Line Test TCB 472 (108) AVTCWTCB Address of the FE Common Write TCB Section 5: Data Area Layouts 403 476 (tDC) AVTCWeCA FE Common Write ECB 480 (lEO) AVTCKECA Checkpoint ECB 484 (1E4) AVTOLECA On-Line Test ECB 488 (lE8) 492 (lEC) AVTOPECA Operator Control ECB AVTOSECB ECB Used by the Dispatcher to Cause TCAM Task to be In the Walt State 496 (lFOI AVTPCBPT Address of the First Process Control Block 500 (1 F4) AVTOPTPT Address of the Option Table 504 (lF8) AVTKA02 Address of the I/O Generator In the Activate Subtask 508 (lFC) AVTREXIT TREXIT=Name 512 (200) AVTCRSRF CROSSRF= Integer 516 (204) AVTCOMPT Address of Communications Parameter List 520 (2081 AVTUI Address of the User Interface Routine 524 (20C) AVTE8 Address of the Application Program Binary Search AVTOLIST 528 (210) I _ _ _ _ _ _ ~L2:~~ ~t~e~J AVTHG02 Address of the Routine to Remove a Checkpoint Element from the Time Delay OCB 532 (214) AVTAL Address of the Scan at Offset Routine 536 (218) AVTGD Address of the Buffer ASSOCiation Routine 540 (21C) AVTGT Address of the Transparent CCW Builder Routine (IEDOGT) 544 (220) AVTAX Address of the Buffer Scan Routine 404 OS TeAM PLM 548 (224) AVTEA Address of the TCAM Dispatcher 552 (228) AVTHA Address of the Receive Scheduler 556122C) AVTSCOPT I r- __S~e~I':. OPti~n ~e~J AVTHD Address of the Send Scheduler 560 (230) AVTEW Address of the Get Schedu ler 564 (234) AVTEC Address of the Put Scheduler 568(238) AVTEZ Address of the Get FIFO Scheduler 572 123C) AVTBZ Address of the Log Scheduler 576 (240) AVTR1 Address of the Dial Schedu ler 580 (244) AVTHB Address of the Buffered Scheduler 584(248) AVTE7 Address of th€ Retneve Scheduler 588124C) Address of the Local Receive Scheduler 592 (250) AVTCSCH Address of the Concentrator Send Scheduler 596(254) Reserved 600 (258) Reserved 604125C) AVTCMBSS Address of the COMMBUF Send Scheduler 608(260) Reserved 612(264) Reserved 616(268) AVTABEND BALR 1,0 Section 5: Data Area Layouts 405 620 (26C) B IEDSVC13 624 (270) AVTDMECB Dummy Line 1/0 ECB 628 (274) AVTA3TL Address of the Translate LIst for the DynamIc Translation RoutIne (IEDaA3) 632 (278) AVTTONE WTTONE=lnteger; Address of World Trade Tone Characters 636 (27C) AVTNX Address of the Operator Awareness Message Routing Routine 640 (280) AVTIOT Address of Line 1/0 Trace Table Handler 644 (284) AVTHI Address of System Delay aCB 648 (288) AVTHK Address of the Stopllne aCB 652 (28C) -- ... - AVTCKRMV Request for Removal of Checkpoint Routine Element from TIme Delay aueue -- AVTCKELE Checkpoint Request Element, Start of Checkpoint aCB 676 (2A4) 677 (2A5) AVTCKQAD Address of the Checkpoint aCB AVTSCBSZ SCB SIze 681 (2A9) 680 (2A8) AVTCKELF Checkpoint Request Element Flags 682 (2AA) AVTCKELV CPINTVL=Tlme Interval AVTCPRCD CP R CDS= Integer 684 (2AC) 686 (2AE) AVTCKTIM TIme of Day Interrupt 688 (2BO) I ndex to aCB Address 690 (2B2) AVTOPXCL ID of OPEN Module with Error I I _ _ _INTRO ~et~n ':o~ _ ~ 692 (2B4) AVTOPETR 696 (2B81 700 (2BC) 704 (2COI 406 .... as TeAM PLM AVTOPERT OPEN Error Type AVTHG01 Address of TIme Delay SubroutIne AVTCKLNK Link FIeld On the TIme Queue AVTDELEM Dummy Last Element AVTDELAD Address of the Dummy Last Element 287 (2AF) AVTOPERL OPEN Error Locator 691 (2B3IAVTCKBYT Status at Checkpoint and Time Delay - Ji08 (2C4) 716 (2CC) 1 AVTCCELE I nCI°d ent Ch ec k pOint Request EI ement ..... rAVTCLRHI Mask for Clearing Left Two Bytes of a Register -- 718 (2CE) AVTHFF Half Word of X'FF FF' 720 (200) AVTADBUF Address of Buffer 724 (204) AVT2260L Address of 2260 Local Receive Scheduler 728 (208) AVTSYSER System Error Flags 732 (2DC) 729 (209) AVTMSGS List of Optional VCONs AVTCBOCB Address of the COMMBUF Master QCB 736 (2EO) AVTSUPPT Address of the Start-up Message QCB 740 (2E4) 744 (2E8) -- 748 (2EC) AVTTSOPT Address of the Time Sharing Input QCB AVTOCOPT Address of the Application Program Open/Close Routine h AVTDELYB Time Delay Subtask QCB ----------------~----------------AVTREFTM 1 766 (2FE) AVTINOUT Reference Time Dummy INEND/OUTEND Parameter List AVTIMOPS SVC 102 Parameter 776 (308) 780 (30C) AVTTlMQ Time Delay Queue AVTBFREB Buffer' Request QCB AVTBFRTB Buffer Return QCB AVTCKPTB Checkpoint QCB I IT }816 (330) AVTOPCOB Operator Control QCB 1828 (33C) T AVTOLTOB On-Line Test QCB Section 5: Data Area Layouts 407 ::L Ji340 (348) 1521354) AVTACTIB Activate aCB I AVTClOSB Closedown aCB I 164 (360) AVTCPRMB aCB to Remove an Element from the Time Delay aCB I. . AVTDSIOB Disk I/O aCB I-- (3781 AVTCPBCB CPB Cleanup aCB -r 900 (384) AVTCOREC Buffer Unit Pool Address 904 (388) AVTCADDR Main Storage aueue Count 908 (38C) AVTFZERO Fullword of All Zeros 912 (390) AVTCAREA FE Common Write Interface Area Address of the Patch Module 916 (394) AVTCWPM1 FE Common Write Interface Area - First Parameter Pointer 920 (398) 924 (39C) AVTCWFl1 FE Common Write Flag Byte 1 928 (3AO) AVTCWEC1 FE Common Write Interface Area - First ECB 925 (39D) AVTCWFl2 FE Common Write Flag Byte 2 926 (39E) AVTCWTS1 FE Common Write Flag Byte 3 .927 (39F) AVTCWTS2 FE Common Write Flag Byte 4 AVTCWPM2 FE Common Write Interface Area - Second Parameter Pointer 932 (3A4) AVTCWEC2 FE Common Write Interface Area - Second ECB . 936 (3A8) AVTAFE10 Address of FE STCB Trace Dump Routine 940 (3AC) AVTAFE20 Address of FE I/O Trace Dump Routine 944 (3BO) AVTAFE30 Address of FE Buffer Dump Routine _~48 408 (3B4) OS TeAM PLM AVTCWINT FE Common Write Interface Area - Patch Area -- 1012 (3F4) -- AVTGETMN GETMAIN Parameter List ---- 1022 (3FE) 1024 (400) AVTHA2 Constant = 2 1026 (402) AVTHA4 Constant = 4 AVTHA3 Constant = 3 1028 (404) 1030 (406) AVTHA7 Constant = 7 AVTHA16 Constant = 16 1032 (408) 1034 (40A) AVTKEYLE KEY LEN on the Message Queues AVTLNCNT Number of Lines Opened 1()36 (40C) 1038 (40E) AVTOPCON Termname Table Offset to the Primary Operator Control Terminal 1042 (412) AVTSMCNT Number of Lines Serviced by the Start-up Message Subtask 1046 (416) AVTDLQX Offset in Termname Table of the Dead Letter Queue AVTOPCNT Number of Lines Taken by Operator Control 1040 (410) 1044 (414) AVTAVFCT Number of Buffers in the Buffer Units Pool AVTINTLV Number of Seconds of a System Delay INTVAL=lnteger 1048 (418) 1050 (41A) AVTBIT1 Flag Bits AVTDUMBR Dummy Line Trace Table Update 1052 (41C) AVTBIT3 Flag Bits 1053 (410) AVTCKRST REST ART= Integer 1051 (41B) AVTBIT2 Flag Bits 1054 (41E) AVTDSKCT Number of Buffers on CPBs 1056 (420) AVTHM02 Address of the Destination Scheduler 1060 (424) AVTCMIN MSM I N= Integer 1064 (428) AVTCMAX MSMAX=lnteger 1068 (42C) AVTTOTNC Number of Records in the Entire.Message Queues Data Set (MSUN ITS=lnteger) _.2072 (430) _r- -I-.. AVTNCPBQ Queue of Buffers and ERBs Waiting to be Processed _r- 1080 (438) AVTFL Address of the Disk EXCP Driver Routine 1084 (43C) AVTIA Address of the REUS part of the Reusability Copy Subtask 1088 (440) AVTCOPY Copy Subtask QCB Pointer Section 5: Data Area Layouts 409 j01092 (444) AVTDKAPQ Queue of CPBs to be Processed by CPB Cleanup (Duiabled) :L 1100 (44C) AVTDKENQ Queue of CPBs to be Processed by CPB Cleanup (Enabled) 1108 (454) AVTNOBFQ Queue of CPBs without Buffers 1116 (45C) AVTREUSQ Reserved J12414641 _r"" AVTlNCPQ Queue of CPBs Requesting I/O be Done by EXCP Driver 1132 (46C) AVTFCPB Address of the CPB Free Pool 1136 (470) AVTCPBPT Address of the CPB Free Pool to be Freed by Disk Close 1140 (474) AVTlOBR Address of a Series of lOBs, One for Each Extent of the Reusable Disk Queue 1144 (478) AVTIOBN Address of a Series of lOBs, One for Each Extent of the Nonreusable Disk Queue 1148 (47C) AVTLODPT Absolute Disk Record Number Indicating Time to Activate the REUS part of the Reusability - Copy Subtask 1152 (480) AVTADEBR Address of the DEBEOEA Field in the DEB for the Reusable Disk Message Queues Data Set 1156 (484) AVTNOVOR Number of Extents 1160(488) In the Reusable Disk Message Queues Data Set AVTRCTRR Number of Records Per Track On the Reusable Disk Message Queues Data Set 1164 (48C) AVTTRCYR Number of Tracks Per Cylinder On the Reusable Disk Message Queues Data Set 1168 (490) AVTTOTNR Number of Records in the Entire Reusable Disk Message Queues Data Set 1172 (494) AVTVOLRR Product of the Number of Extents Times the Number of Records Per Track On the Reusable Disk Message Queues Data Set 1176 (498) AVTADEBN Address of the DEBEOEA Field in the DEB for the Nonreusable Disk Message Queues Data Set 1180 (49C) AVTNOVON Number of Extents in the Nonreusable Disk Message Queues Data Set 410 as TeAM PLM I-- 1184 (4AO) AVTRCTRN Number of Records Per Track On the Nonreusable Disk Message Queues Data Set 1188 (4A4) AVTTRCYN Number of Tracks Per Cylinder On the Nonreusable Disk Message Queues Data Set 1192 (4A8) AVTTOTNN Number of Records In the Entire Nonreusable Disk Message Queues Data Set AVTVOLRN 1196 (4AC) Product of the Number of Extents Times the Number of Record~ Per Track On the Nonreusable Disk Message Queues Data Set 1200 (4BO) AVTHRESN Absolute Record Number (Threshold) to Cause Closedown Due to the Filling of the Nonreusable Disk Message Queues Data Set 1204 (4B4) AVTNADDR Index to Nonreusable Oisk Relative Record Number of the Next Record to be Assigned 1208 (4B8) AVTRADDR Ind/lx to Reusable Disk Relative Record Number of the Next Record to be Assigned 1212 (4BC) ~~ _.... ~- AVTHRESE Nonreusable Threshold Closedown Element 1223 (4C7) AVTHRESS Status Completion Code 1224 (4C8) AVTCPBNO CPB; Integer 1226 (4CA) Reserved Section 5: Data Area Layouts 411 Offset Name Bytes Description 0 (0) AVTSAVEI 72 Message Control Program save area 72 (48) AVTSAVE2 72 Dispatcher save area 144 (90) AVTSAVE3 72 Subtask save area 216 (D8) AVTSAVE4 72 First-level subroutine save area 288 (l20) AVTSAVEX 40 Disabled save area 320 (140) AVTDLQ 8 At assembly time, set by the DLQ=termname operand of the INTRO macro. After the termname table is sorted, this value is moved to A VTDLQX and this field (A VTDLQ) is overlaid and used as part of the disabled save area. 328 (l48) AVTCSTCS 4 Address of the first entry in the device characteristics table 332 (l4C) AVTDPARM 4 Disabled parameter list (used with AVTDOUBX) 336 (150) AVTDOUBX 8 Disabled double word scratch area 344 (158) AVTDOUBL 8 Enabled double word scratch area 352 (160) AVTCTLCH 8 Operator Control characters 360 (168) AVTPASWD 8 Message Control Program password 368 (170) AVTTCB 4 Address of the Message Control Program TCB-set by the first open routine 372 (174) AVTRACE 4 Line II 0 interrupt trace table address The following are the ready queues for the TeAM Dispatcher: 376 (178) AVTREADY 4 Enabled ready queue-points to the first item in the chain of elements that is to be processed by the TCAM Dispatcher 380 (17C) AVTREADD 8 Disabled FIFO ready queue-controls the chain of elements tposted from disabled routines. The first word points to the first element; the second word points to the last element on the chain. 388 (184) AVTCKGET 4 Address of the checkpoint work area; set after a successful GETMAIN is completed by the Checkpoint Open routine 392 (188) AVTOCGET 4 Address of the operator control work area 396 (l8C) AVTEXA2S 6 Instructions to be executed to save the user's registers 402 (l92) AVTEXS2A 6 Continuation of the instructions to be executed to save the user's registers 408 (198) AVTPARM 4 Address of the parameters to be processed 412 (19C) AVTBASE 4 Address of the AVT 416 (lAO) AVTPARM3 4 Address of additional optional parameters 420 (1A4) AVTDISTR 4 Address of the Dispatcher's subtask trace table 424 (lA8) AVTRNMPT 4 Address of the termname table 428 (lAC) AVTRDYA 4 User exit address in the READY macro expansion 432 (IBO) AVTBSCAN 4 Line End Appendage address for BSC message scan 436 (lB4) AVTRART 4 l\ddress of the routine to update the line II0 interrupt trace table 440 (lB8) AVTPOST 8 Tpost parameter list used by Operator Control 4 Start parameter list address-set by the INTRO macro expansion 448 (lCO) AVTSPLPT 412 OS TCAMPLM Offset Bytes Description 452 (l C4) A VTCIB 1 The maximum number of command input blocks that can be utilized at anyone time in the TCAM system-set by the CIB=integer operand of the INTRO macro 453 (lC5) AVTNCKPR 1 The maximum decimal number of destination queues in use at any time for application programs that use a CKREQ macro-set by the CKREQS=integer operand of the INTRO macro 454 (l C6) A VTNOLBF 2 Specifies the number of buffer units that may be used to build buffers for messages-set by the LNUNITS=integer operand of the INTRO macro 456 (lC8) AVTAS 4 Address of the Hold/Release Terminal routine Name The foUowing are the addresses of the TCBs of the attached tasks: 460 (1 CC) A VTCKTCB 4 Address of the Checkpoint TCB 464 (lDO) A VTOCTCB 4 Address of the Operator ControlTCB 468 (lD4) AVTOLTCB 4 Address of the On-Line Test TCB 472 (l D8) A VTCWTCB 4 Address of the FE Common Write TCB The foUowing are the event control blocks (ECBs) for the attached tasks: 476 (lDC) AVTCWECA 4 FE Common Write ECB 480 (lEO) A VTCKECA 4 Checkpoint ECB 484 (lE4) A VTOLECA 4 On-Line Test ECB 488 (lE8) AVTOPECA 4 Operator Control ECB 492 (lEC) A VTOSECB 4 ECB used by the Dispatcher to cause the TCAM task to be in the WAIT state 496 (lFO) A VTPCBPT 4 Address of the first process control block (PCB) 500 (lF4) AVTOPTPT 4 Address of the option table 504 (lF8) A VTKA02 4 Address of the I/O Generator routine in the Activate subtask 508 (lFC) A VTREXIT 4 Address of a user-written routine to be given control when all entries in the TCAM I/O interrupt trace table have been filled-set by the TREXIT=name operand of the INTRO macro 512 (200) AVTCRSRF 4 Specifies the number of entries in the cross-reference table-set by the CROSSRF =integer operand of the INTRO macro; replaced by the address of the cross-reference table. 516 (204) AVTCOMPT 4 Address of the communications parameter list 520 (208) AVTUI 4 Address of the User Interface routine 524 (20C) AVTE8 4 Address of the Application Program Binary Search routine 528 (210) AVTHG02 4 Address of the routine to remove a checkpoint element from the time delay QCB 528 (210) AVTOLTST 1 Set by the OLTEST=integer operand of the INTRO macro 532 (214) AVTAL 4 Address of the Scan at Offset routine 536 (218) AVTGD 4 Address of the Buffer Association routine 540 (21C) AVTGT 4 Address of the Transparent Transmission CCW Building routine (IEDQGT) Section 5: Data Area Layouts 413 Offset Name Bytes Description 544 (220) AVTAX 4 Address of the Buffer Scan routine 548 (224) AVTEA 4 Address of the TCAM Dispatcher 552 (228) AVTHA 4 Address of the Receive Scheduler 556 (22C) AVTHD 4 Address of the Send Scheduler 556 (22C) AVTSCOPT 1 Scheduler option field Bit Dermitions: Name Bit Value Description AVTCMBUF 3 X'10' Common buffer transmission AVTCONC 4 X'08' Concentrator mixed AVTCONCO 5 X'04' Concentrator only AVTN2741 6 X'02' No 2741 and no TSO AVTNDIAL 7 X'OI' No dial 560 (230) AVTEW 4 Address of the Get Scheduler 564 (234) AVTEC 4 Address of the Put Scheduler 568 (238) AVTEZ 4 Address of the Get FIFO Scheduler 572 (23C) AVTBZ 4 Address of the Log Scheduler 576 (240) AVTRI 4 Address of the Dial Scheduler 580 (244) AVTHB 4 Address of the Buffered Scheduler 584 (248) AVTE7 4 Address of the Retrieve Scheduler 4 Address of the Local Receive Scheduler 4 Address of the Concentrator Send Scheduler 588 (24C) 592 (250) AVTCSCH The foUowing are the special elements used in TeAM: 596 (254) 8 Reserved 4 Address of the COMMBUF Send Scheduler 608 (260) 8 Reserved 616 (268) 2 Reserved 618 (26A) AVTABEND 6 This field contains the following code for an 045 abend: BALR 1,0 IEDSVC13 B 624 (270) AVTDMECB 4 Address of the dummy line I/O ECB 628 (274) AVTA3TL 4 Address of the translate list for the Dynamic Translation routine 632 (278) AVTTONE 4 Contains either a zero or the address of a field consisting of 2 halfwords; the first contains the WTTONE integer from the INTRO macro and the second a X'FF' representing the number of charac· ters specified by WTTONE. 636 (27C) AVTNX 4 Address of Operator Awareness Message Routing routine 640 (280) AVTIOT 4 Address of Line I/O Trace Table routine 644 (284) AVTHI 4 Address of system delay QCB 648 (288) AVTHK 4 Address of stopline QCB 604 (256) 414 AVTCMBSS OSTCAMPLM Offset Name Bytes Description 652 (28C) AVTCKRMV 16 Request for removal of the checkpoint request element from the time delay queue 668 (29C) AVTCKELE 8 Checkpoint request element-the Time Delay or Reusability subtasks tpost this element to start the checkpoint routines 676 (2A4) AVTSCBSZ 1 Specifies the number of bytes in the SCB including the save area for the user's registers. 677 (2A5) AVTCKQAD 3 Address of checkpoint QCB 680 (2A8) AVTCKELF 1 Checkpoint request element flag bits Bit definitions: Name Bit Value Description AVTCRDYN 0 X'80' Checkpoint requested by the READY macro expansion AVTCMCPN 1 X'40' Checkpoint requested by the MCPCLOSE macro 2 X'20' Unused AVTCINCN 3 X'10' Checkpoint requested by the No Incident Records routine AVTCCLCN 4 X'08' Closedown completion bit AVTCPIPN 5 X'04' Checkpoint in progress bit AVTCRTLN 6 X'02' Checkpoint requested AVTWARM 7 X'OI' Warm restart 681 (2A9) AVTCPRCD 1 The number of environment checkpoint records to be retained in the checkpoint data set at anyone time-set by the CPRCDS=integer operand of the INTRO macro 682 (2AA) AVTCKELV 2 The number of seconds between environment checkpoints-set by the CPINTVL=integer operand of the INTRO macro 684 (2AC) AVTCKTIM 2 Time-of-day interrupt 686 (2AE) 1 Index to the QCB address 687 (2AF) AVTOPERL 1 Open error location 688 (2BO) AVTOPXCL 2 Module ID of the routine that has an error 690 (2B2) AVTOPERT 1 Specifies the type of open error that occurred 691 (2B3) AVTCKBYT 1 Specifies the checkpoint and time delay status 692 (2B4) AVTOPETR 1 INTRO return code 692 (2B4) AVTHGOI 4 Address of the Time Delay subroutine 696 (2B8) AVTCKLNK 4 Link field on the time queue 700 (2BC) AVTDELEM 4 Dummy last element-used as the last element in any QCB's (or the ready queue's) element chain 704 (2CO) AVTDELAD 4 Address of the dummy last element 708 (2C4) AVTCCELE 8 Incident checkpoint request element-tposted by the Operator Control task to request an incident checkpoint 716 (2CC) AVTCLRHI 2 Mask used with the next halfword to clear the left two bytes of a register Section 5: Data Area Layouts 415 Bytes Description 718 (2CE) AVTFF 2 Halfword equal to X'FFFF' 720 (2DO) AVTADBUF 4 Address of the buffer currently being processed 724 (2D4) AVT2260L 4 Address of the 2260 Local Receive Scheduler 728 (2D8) AVTSYSER 1 System error flag byte-set by the operands of the INTRO macro as follows: Name Bit Value Description AVTCMINN 0 X'80' The number of main-storage queue units less than that specified by MSMIN =integer AVTCMAXN 1 X'40' The number of main-storage queue units more than that specified by MSMAX=integer Offset Name 2-7 729 (2D9) AVTMSGS 3 Reserved Address of a list of optional VCONs The following is a list of pointers to QCBs: 732 (2DC) AVTCBQCB 4 Address of the COMMBUF master QCB 736 (2EO) AVTSUPPT 4 Address of the start-up message QCB 740 (2E4) 4 Address of the time sharing input QCB 4 Address of the application program Open/ Close subtask AVTTSOPT 744 (2E8) AVTOCQPT The following is a list of required QCBs: 748 (2EC) AVTDELYB 20 Time Delay subtask QCB 764 (2FC) AVTREFTM 2 Represents the reference time, current time of day, plus or minus 6 hours 766 (2FE) AVTINOUT 2 Dummy INEND/OUTEND parameter list 768 (300) AVTIMQPS 8 SVC 102 parameter-to tpost the time QCB to itself at the interrupt 776 (308) AVTTIMQ 4 Time delay queue 780 (30C) AVTBFREB 12 Buffer request QCB 792 (318) AVTBFRTB 12 Buffer request QCB 804 (324) AVTCKPTB 12 Checkpoint QCB 816 (330) AVTOPCOB 12 Operator Control QCB 828 (33C) AVTOLTQB 12 On-Line Test QCB 840 (348) AVTACTIB 12 Activate QCB 852 (354) AVTCLOSB 12 Closedown completion QCB 864 (360) AVTCPRMB 12 QCB to remove an element from the time delay QCB 876 (36C) AVTDSIOB 12 Disk I/O QCB 888 (378) AVTCPBCB 12 CPB cleanup QCB 900 (384) AVTCOREC 4 Buffer unit pool address 904 (388) AVTCADDR 4 Main-storage queue count 4 Fullword of zeros 908 (38C) AVTFZERO The following is the FE Common Write task interface area: 912 (390) 416 AVTCAREA OSTCAMPLM 4 Address of the Patch module for this task Offset Name Bytes Description 916 (394) AVTCWPM1 4 First parameter list pointer for this task 920 (398) AVTCWEC1 4 First ECB for this task 924 (39C) AVTCWFL1 1 First flag byte for this task Bit definitions: Name Bit AVTCOMWN 0 925 (39D) AVTCWFL2 Value Description X'80' Specifies that the FE Common Write task is attached; set by the COMWRTE= YES operand of the INTRO macro 1 Second flag byte for this task Name Bit Value Description AVTCWACT 0 X'80' Specifies that the FE Common Write task is active; set by the COMWRTE= YES operand of the INTROmacro 926 (39E) AVTCWTS1 1 Third flag byte for this task 927 (39F) 1 Fourth flag byte for this task 928 (3AO) AVTCWPM2 4 Second parameter pointer for this task 932 (3A4) AVTCWEC2 4 Second ECB for this task 936 (3A8) AVTAFE10 4 Address of the FE STCB Trace Dump routine-IEDQFE10 940 (3AC) AVTAFE20 4 Address of the FE I/O Trace Dump routine-IEDQFE20 944 (3BO) AVTAFE30 4 Address of the FE Buffer Dump routine-IEDQFE30 948 (3B4) 64 Patch area for this task 10 GETMAIN parameter list 1022 (3FE) AVTHA2 2 Constant = 2 1024(400) AVTHA3 2 Constant = 3 1026 (402) AVTHA4 2 Constant = 4 1028 (404) AVTHA7 2 Constant = 7 1030(406) AVTHA16 2 Constant = 16 1032 (408) AVTKEYLE 2 Specifies the size in bytes of a buffer unit-set by the KEYLEN=integer operand of the INTRO macro 1034 (40A) AVTLNCNT 2 Number of lines opened-set by the Line Group Open routine--<:hecked by the Time Delay subtask 1036 (40C) AVTOPCNT 2 Number of lines taken by the Operator Control task-set by the System Delay subtask and the Operator Control task 1038 (40E) AVTOPCON 2 Termname table offset to the entry for the primary Operator Control terminal-set by the PRIMARY =termname operand of the INTROmacro 1040(410) AVTAVFCT 2 Number of buffers in the buffer unit pool-this value is equal to the sum of the LNUNITS=integer and the MSUNITS=integer operands of the INTRO macro 1042 (412) AVTSMCNT 2 Number of lines serviced by the Start-up Message subtask 1012 (3F4) AVTCWTS2 AVTGETMN Section 5: Data Area Layouts 417 Offset Name Bytes Description 1044 (414) AVTINTLV 2 Number of seconds of a system delay-set by Operator Control or by the INTVAL=integer operand of the INTRO macro; checked by the Time Delay subtask 1046 (416) AVTDLQX 2 Termname table offset of the dead-letter queue-moved from the A VTDLQ field of the A VT after the termname table is sorted at execution time 1048 (418) AVTDUMBR 2 Dummy line II 0 interrupt trace table update 1 Flag bits 1050 (41A) AVTBITl Bit Definitions: 1051 (4IB) AVTBIT2 Name Bit Value Description AVTAPLKN 0 X'80' Prevents the Disk End Appendage from adding a CPB to the disabled disk end QCB for CPB Cleanup AVTAPLKF X'7F' 0 Off Mask to permit the Disk End Appendage to add a CPB to the disabled disk end QCB for CPB Cleanup AVTTSON 1 X'40' Specifies that the TCAM environment has TSO or is mixed-set by the ENVIRON=TSO or MIXED operand of the INTRO macro AVTAQTAN 2 X'20' Specifies that the system environment has TCAM or is mixed-set by the ENVIRON=TCAM or MIXED operand of INTRO AVTDLAYN 3 X'lO' Specifies that a system delay is in effect-set by the Operator Control task AVTDLAYF X'EF' 3 Off Mask to specify that a system delay is not in effect-bit 3 is turned off by the Time Delay subtask AVTREADN 4 X'08' Specifies that the READY macro expansion has been executed-set by the READY macro expansion; checked by the open routines AVTCLOSN 5 X'04' Closedown indicator: O-closedown not requested l-closedown requested AVTQUCKN 6 X'02' Type of closedown: O-Flush closedown I-Quick closedown AVTDISKN 7 X'OI' Specifies that none of the message queues data sets are disk queued 1 Flag bits Bit definitions: Name Bit Value Description AVTRUFTN 0 X'80' Reserved 0 X'7F' Mask for the "Reusability first time" switch turned off by Reusability AVTRUF Off 418 as TeAM PLM Offset Name Bytes Description AVTREUSN I X'40' AVTREUSF X'BF' I Off AVTCOPYN 2 X'20' Specifies that the Reusability-Copy function is requesting control 3 X'tO' Specifies that TOPMSG=NO is set in the INTRO macro AVTSTRTN 4 X'08' Restart is in progress AVTSTRTF 4 X'F7' Off AVTOPEIN 5 X'04' Initial load done indicator 6,7 X'03' Specifies the line type as nonswitched Start/Stop only- set by the Activate routine or the Line End Appendage 6 X'02' Specifies the line type as Start/Stop, switched or nonswitched-set by the Activate routine or the Line End Appendage 7 X'OI' Specifies the line type as binary synchronous-set by the Activate routine or Line End Appendage I Mask to specify that Reusability is not running-turned off by Reusability Mask to specify that restart is not in progress Specifies the line type as both BSC and Start/Stop, switched and nonswitched, all possible line combinations-set by the Activate routine or Lb.-Ie End Appendage All Off I052(4IC) AVTBIT3 Specifies that Reusability is running-set by Reusability; checked by CPB Cleanup Flag bits Bit Definitions: Name Bit Value Description AVTSTAN 7 X'Ot' Specifies that either a cold or warm restart is to be performed following a normal quick close or a flush close-set by STARTUP=C or STARTUP=W operand of the INTRO macro AVTSTACN 6 X'02' Specifies that a cold start is to be performed following a normal quick or a flush close and that a continuation restart is to be performed following system failure-set by the STARTUP=C operand of the INTRO macro AVTSTAWN 6 X'FD' Off AVTSTAIN 5 X'04' Mask to specify that a warm restart is to be performed following a normal quick or a flush close and that a continuation restart is to be performed following system failure-set by the STARTUP=W operand of the INTRO macro Specifies that the status of each invitation list is to be included in the checkpoint record-set by the STARTUP=I operand of the INTRO macro Section 5: Data Area Layouts 419 Offset Name Bytes Description AVTSTAYN 4 X'08' Specifies that no continuation restart is to be performed following a normal quick close, a flush close, or system failure-set by the STARTUP= Y operand of the INTRO macro AVTOLTBN 3 X'lO' Specifies that the maximum size in the OLTEST=keyword operand in the INTRO macro (the maximum number of on-line tests that can be performed) has been reached-set, checked, and reset by TOTE AVTTSAB 2 X'20' Specifies that TSO has abended-set by the Time Sharing Abend module; checked by the TSINPUT and TSOUTPUT routines; reset by the Start Time Sharing routine AVTRFULN 1 X'40' Reusable disk zone full-set by Reusability AVTRFULF 0,2, X'BF' 3 Off Mask to specify that reusable disk is ready to receive-checked by Receive Scheduler and Line End Appendage; turned off by Reusability AVTRECVN o Main-storage queue is full-set by Destination Scheduler when the number of main-storage queue units > or = the number specified in the MSMAX= operand of the INTRO macro; turned off by Disk I/O; checked by the Receive Scheduler and Line End Appendage X'80' 1053 (41D) AVTCKRST 1 Specifies which checkpoint record the TCAM restart facility should use in attempting to restructure the MCP environment as it existed at the time of closedown or system failure-set by the RESTART=integer operand of the INTRO macro 1054 (41E) 2 Specifies the number of buffers on CPBs AVTDSKCT ******************************************* This is the end of the basic A VT when ENVIRON=TSO ******************************************* 1056 (420) A VTMH02 4 Address of the Destination Scheduler 1060 (424) AVTCMIN 4 Specifies the percentage of the number of units in the message queues data set below which the data set is not crowded-set by the MSMIN = integer operand of the INTRO macro 1064 (428) AVTCMAX 4 Specifies the percentage of the number of units in the message queues data set above which means that the data set is nearly full-set by the MSMAX=integer operand of the INTRO macro 1068 (42C) AVTTOTNC 4 Number of records in the entire message queues data set-set by the MSUNITS=integer operand of the INTRO macro 1072(430) 8 Queue of buffers and ERBs waiting t? be processed 420 AVTNCPBQ as TeAM PLM Offset Name Bytes Description ............................................ This is the end of the AVT when main-storage queuing only is specified (DISK=NO, ENVIRON=TCAM or MIXED) ............................................ 1080(438) AVTFL 4 Address of the Disk EXCP Driver routine 1084 (43C) AVTIA 4 Address of the REUS part of the Reusability-Copy subtask 1088(440) AVTCOPY 4 Address of the Copy subtask QCB 1092(444) AVTDKAPQ 8 Queue of the CPBs to be processed by CPB Cleanup (disabled) 1100 (44C) AVTDKENQ 8 Queue of CPBs to be processed by CPB Cleanup (enabled) 1108 (454) AVTNOBFQ 8 Queue of CPBs without buffers-used by CPB Cleanup 1116 (45C) AVTREUSQ 8 Reserved 1124 (464) 8 Queue of CPBs requesting that I/O be done by EXCP Driver 1132 (46C) AVTFCPB 4 Queue of inactive CPBs-the CPB free pool 1136 (470) AVTCPBPT 4 Address of the CPB free pool to be freed by the Disk Close routine-AVTFCPB is initially set to this same value 1140 (474) AVTIOBR 4 Address of a series of lOBs, one for each extent of the reusable disk queue 1144 (478) AVTIOBN 4 Address of a list of lOBs, one for each extent of the nonreusable disk queue 4 Absolute disk record number that indicates when the REUS part of the Reusability-Copy subtask is to activated-the initial value is 3/8 of the total number of records on the reusable disk message queues data set AVTINCPQ 1148 (47C) AVTLODPT The next 6-word area is initiated by the OPEN for the reusable disk message queues data set for use by the MBBCCHHR Converter routine. 1152(480) AVTADEBR 4 Address of the DEBEOEA field in the DEB for the reusable disk message queues data set 1156 (484) AVTNOVOR 4 Number of extents in the reusable disk message queues data set 1160(488) AVTRCTRR 4 Number of records per track on the reusable disk message queues data set' 1164 (48C) AVTTRCYR 4 Number of tracks per cylinder on the reusable disk message queues data set 1168 (490) AVTTOTNR 4 Number of records in the entire reusable disk message queues data set 1172 (494) AVTVOLRR 4 Product of the number of extents times the number of records per track on the reusable disk message queues data set The next 7~word area is initialized by the OPEN for the nonreusable disk message queues data set for use by the MBBCCHHR Converter routine. 1176(498) AVTADEBN 4 Address of the DEBEOEA field in the DEB for the nonreusable disk message queues data set 1180 (49C) AVTNOVON 4 Number of extents in the nonreusable disk message queues data set Section 5: Data Area Layouts 421 Offset Bytes Description 1184 (4AO) AVTRCTRN 4 Number of records per track on the nonreusable disk message queues data set 1188 (4A4) AVTTRCYN 4 Number of tracks per cylinder on the nonreusable disk message queues data set 1192 (4A8) AVTTOTNN 4 Number of records in the entire nonreusable disk message queues data set 1196 (4AC) AVTVOLRN 4 Product of the number of extents times the number of records per track on the nonreusable disk message queues data set 1200 (4BO) AVTHRESN 4 The absolute record number that is the threshold to cause closedown due to the filling of the nonreusable disk message queues data set 1204 (4B4) AVTNADDR 4 Index to nonreusable disk relative record number-next available location· 1208 (4B8) AVTRADDR 4 Index to reusable disk relative record number-next available location· 1212 (4BC) AVTHRESE 12 Nonreusable threshold closedown element 1223 (4C7) AVTHRESS 1 Completion code-used to indicate status Name X'FF' - an unused element X'FO' - the element has been tposted X'OO' - Closedown indication X'04' - Closedown indication 1224 (4C8) AVTCPBNO 2 Specifies the value coded in the CPB=integer operand of the INTROmacro *Note: This field contains a number which, when adjusted, (by adding 3 and dividing 4) yields the absolute relative record number. 422 OS TeAM PLM Access Method Work Area The access method work area (IEDQWRKA) is a variable-length table that provides intermediate storage fields, pointers to control blocks, switches, and space for a work area. When a DCB in an application program is being opened, the GET/PUT and READ/WRITE Open Executor (IGGO 1946) allocates main storage for and initializes the access method work area. The Open Executor puts the address of the work area in the DEBTAMW A field of the data extent block (DEB) for the application program. The address of the DEB is in the DCBDEBAD field in the associated data control block (DCB) in the application program. The DEB address is also in the PEWADEB field of the process entry work area in the MCP so that routines in the MCP can refer to the access method work area by first examining the DEB. The access method work area is variable in length depending upon whether or not the user specified a SYNAD exit routine. If the user does not specify a SYNAD exit routine, the fullword field GWASTAT/PWASTAT is set to zero (0). If, however, the user does specify such a routine, the field GW AST AT /PW AST AT contains the address of the status indicators. The status indicators are in a 14byte field that is added to the end of the access method work area when required by a SYNAD routine request. There are two status indicators for the SYNAD routine. The first is bit zero of the second byte of the 14-byte area. When this bit is set to 1, the command issued is rejected because work units are out of sequence. The second status indicator is bit 1 of the thirteenth byte. When this bit is set to 1, an incorrect length has been specified, thus creating a work area overflow. The format of the access method work area is illustrated below; descriptions of the fields follow. Section 5: Data Area Layouts 423 IEDQWRKA 0(0) PWASAVE GWASAVE Address of User's Register Save Area 4 (4) PWAPEWA Address of the Process Entry Work Area 8 (8) GWAPEB Address of a Part-Empty Buffer 12 (C) f-- - - - PWASTART Address of the First Byte of Data in the Work Area - - ---~--- - - - GWAMOVE Address of the Next Byte in a Buffer to be Moved PWACKPT GWACKPT Address of the User's Checkpoint Routine 16 (10) 20 (14) 24 (18) 1-- - GWAPEWA Address of the Next Empty Byte in the User's Work Area --- - ----- - PWAECB .0..._ PUT/WRITE ECB_ _ GWAECB GET/READ ECB ___ .......28 (1C) PWAELEM GWAELEM Special AOCTL Element 48 (30) PWALIST GWALIST AOCT L Parameter List .... ----- ------ - -- - - - - - - - - - - - - - - - - - - - --- -- -_. -~ -- ----------- MOVE AD Address of the Field to be Moved 52 (34) TARGETAD Address of Where the Data is to be Moved 57 (39) 56 (38) LENGTHAD Address of the Length of the Field PFLAG End-of-List Indicator ........60 (3C) _r-- - 132 (84) I - -- - - - - - - - -- IOBPSAVE Address of a Partly Empty Buffer Unit - GWASTAT _ _ _ _ _ _AJ!d.!].st.Qf..Q.!:ILREAD St!luLJ.pQi£a!2!s _ _ _ _ _ _ _ _ - - PWASTAT Address of PUT/WRITE Status Indicators 144 (90) 148 (94) 424 OS TCAM PLM -I- "':::,..... Reserved EOM Processed GET/REAr; 136 (88) 140 (8C) - 134 (86) PWAFLG PUT/WRITE Reader Needed 1- _ _ _ _ - PWASAVA PUT/WRITE Save Area -GVirASA'iJA- GET/READ Save Area PWASOWA GWASOWA Size of the User's Work Area GWABUFL Size of an MCP Buffeh 146 (92) PWACTL Work Area Contents Descriptor Byte 147 (93) GWAADEL Record Delimiter 150 (96) 151 (97) PWARECFM GWARECFM General Switches PWAOPTCD GWAOPTCD General Switches --- 154 (9A) 152 (98) GWALAECL Size of a Logical Work Unit PWAOFF Termname Table Offset for Message Destination 156 (9C) CTLADDA Address of the Work Area Control Byte 162 (A2) 160 (AO) GWASCAN Size of Field to be Scanned BUFCNT Empty-Buffer Counter 164 (A4) 166 (A6) IOBPSZE Prefix Size Work Area IOBUSZE Count of Data In a Logical Buffer 168 (A8) 170 (AA) IOBSACE Termname Table Offset ...... _...172 (AC) Reserved _.... -- GWAATVE Message Retrieval Work Area 180 (B4) GWADTSA General SWitCheS 181 (B5) Reserved Note: When there are two field names for one field, those field names beginning with P are used when the user is coding in PUT mode, and those field names beginning with G are used when the user is coding in GET mode. Offset Name Bytes Description 0 (0) PWASAVE 4 Address of the user register save area 0 (0) GWASAVE 4 Address of the user register save area 4 (4) PWAPEWA 4 Address of the process entry work area 8 (8) GWAPEB 4 Address of a partially empty buffer-the one being used 12 (C) PWASTART 4 Address of the first byte of data in the user work area 12 (C) GWAMOVE 4 Address of next byte to be moved in a buffer 16 (10) PWACKPT 4 Reserved 16 (10) GWACKPT 4 Reserved 20 (14) GWAPEWA 4 Address of next empty byte in user work area 24 (18) PWAECB 4 PUT /WRITE ECB 24 (18) GWAECB 4 GET/READ ECB 28 (1C) PWAELEM 20 Special AQCTL element 28 (1C) GWAELEM 20 Special AQCTL element 48 (30) PWALIST 4 AQCTL parameter list 48 (30) GWALIST 4 AQCTL parameter list 48 (30) MOVEAD 4 Address of the field to be moved 52 (34) TARGETAD 4 Address of the area into which data is to be moved 56 (38) PFLAG 1 Indicator of end of parameter list 57 (39) LENGTHAD 3 Address of the length field of the parameter list 60 (3C) PWASAVA 72 PUT/WRITE save area 60 (3C) GWASAVA 72 READ / CHECK save area Section 5: Data Area Layouts 425 Offset Name Bytes Description 132 (84) PWAFLG 2 X'20' header needed (PUT/WRITE) X'80' EOM processed (GET/READ) PWAFLG+1 136 (88) IOBPSAVE 4 Address of partially empty buffer unit 140 (8C) GWASTAT 4 Address of status indicators 140 (8C) PWASTAT 4 Address of status indicators 144 (90) PWASOWA 2 Size of user work area 144 (90) GWASOWA 2 Size of user work area 146 (92) PWACTL 1 Work area contents descriptor byte- contains a value indicating whether the message in the work area is the first, intermediate, or last segment of the message. The following are the bit settings: Bits Value Meaning 0,1,2, 3,7 X'F1' first segment (header) 0,1,2, 3,6 X'F2' last segment (EOM) 0,1,2, 3,6,7 X'F3' entire message 1 X'40' intermediate segment 147 (93) GWARDEL 1 End of record for GET/PUT-copied from the process entry 148 (94) GWABUFL 2 Size of MCP buffer 150 (96) PWAOPTCD 1 General switch; bit settings. are: Name Bits Value FIRSTPUT 7 150 (96) GWAOPTCD X'Ol' Meaning first-time switch for locate mode 1 General switch; bit settings are: Name Bits Value TNMEFLG 0 X'80' OPTCD= W (source terminal field) MSGFLG 1 X'40' OPTCB= U (message rather than record format) CTLBYTE 2 X'20' OPTCD=C (control byte flag) EODADFLG 3 X'tO' EODAD exit flag mask RECDEL 4 X'08' First-time RECDEL flag RTVFLG 5 X'04' Retrieve mode switch mask PARTBUF 6 X'02' Partially empty buffer left on main-storage QCB SYNADFLG 7 X'Ol' DCBOPTCD bit which, if set, effects exit to SYNAD routine Meaning 151 (97) PWARECFM 1 PUT /WRITE; no bits set 151 (97) GWARECFM 1 GET/READ; bit settings are: Name Bits Value RETFLG 5 X'04' Retrieve mode may be entered INCWA 7 X'OI' Incomplete work area 2 Size of logical work unit 152 (98) 426 GWALRECL OSTCAMPLM v , Meaning Offset Name Bytes Description 154 (9A) PWAOFF 2 PUT Scheduler-termname table offset for message destination 156 (9C) CTLADDR 4 Address of work area control byte; address of PWACTL within the work area 160 (AO) GWASCAN 2 Size of field to be scanned 162 (A2) BUFCNT 2 Empty-buffer counter 164 (A4) IOBUSZE 2 Count of data in a logical buffer-number of bytes in a buffer unit 166 (A6) IOBPSZE 2 Number of bytes in a buffer-prefix size work area 168 (A8) IOBSRCE 2 Termname table offset 2 Reserved 170 (AA) 172 (AC) GWARTVE 8 Message retrieval work area 180 (B4) GWADTSA 1 General switch; bit settings are: Name Bits Value DELETE 1 3 Reserved 181 (B5) X'40' Meaning DELETE=YES Section 5: Data Area Layouts 427 (This page left blank intentionally) 428 OS TeAM PLM Buffer Prefix First buffer of a message: Offset o 4 Key PRFKEY Priority PRFPRI QCB address PRFQCBA Link field PRFLINK Link to next unit and TIC CCW or or CCWOP Code or Next address to be transferred CCW flags 12 (C) 8 5 Unused Number of units in this buffer 13(0) 16(10) LCB address CCW count Source offset in the Termname Table 18 (12) Size of data in this buffer 20 (14) Status byte 21 (15) Pointer to additional records on disk PRFXTRA or to the current record in main storage 24 (18) Scan pointer offset PRFCOUNT PRFTIC PRFNBUNT PRFLCB PRFSRCE PRFSIZE PRFSTAT1 PRFCORE PRFSCAN PRFOPCOE PRFIOADR PRFFLAGS ~I RCB 26 (1A) Pointer to next buffer of this message if not last buffer PRFNTXT or text queueback chain if last buffer PRFTQBCK 29 (10) Pointer to the first unit of the current buffer 32 (20) 35 (23) Pointer to the first buffer of the next message Queue-back chain of the first buffers of messages 38 (26) 40 (28) Input Destination sequence offset number in the Termname Table PRFCRCD PRFNHDR PRFHQBCK PRFISEQ PRFDEST First or 30-byte Buffer Prefix -=.l The first 12 bytes are not placed on the queue for the message queues data set. 0 42 (2A) - 12 (C) Unit control area First buffer prefix Start of the message header or data PRFSUNIT PRFSHDR Subsequent buffer of a message: Offset o 5 4 Key PRFKEY QCB address PRFQCBA Priority PRFPRI or or CCWOP Code Next address to be transferred 12(C) 8 Link to next unit and TIC CCW Link field PRFLINK Number of units in this buffer or Unused CCW flags 13 (D) 16 (10) LCB address Source offset in the Termname Table 18 (12) Size of data in this buffer CCW count - ~I RCB 21 (15) Pointer to additional records on disk PRFXTRA or to the current record in main storagE 12 (C) 24 (18) 26 (1A) Scan pointer offset Pointer to next buffer of this message if not last buffer PRFNTXT or text queueback chain if last buffer PRFSCAN PRFTQBCK Subsequent or 23-byte Buffer Prefix 29 (10) Pointer to the first unit of the current buffer 32 (20) Pointer to the first buffer of the current message PRFCRCK PRFCHDR --" - The first 12 bytes are not placed on the queue for the message queues data set. Unit control area Status byte PRFCOUNT PRFTIC PRFNBUNT PRFLCB PRFSRCE PRFSIZE PRFSTAT1 PRFCORE PRFOPCDE PRFIOADR PRFFLAGS o 20 (14) 35 (23) Subsequent buffer prefix Continuation of message header or start or continuation of message data PRFSUNIT PRFSTXT Section 5: Data Area Layouts 429 Insert foldout page 429 at end of book. IEOQPRF 0(0) - -PRFOPCOE,"PRFKEv OP Code or Key jiw- - - PRFRCB Resource Control Block PRFlOAOR, PRFOcBAQCB Or Next I/O Address 4 (4) '- - - - - - - - - - - --- PRFRCB (Cant.) - -:~) PRFFLAGS, PRFPRI CCW Flags Or Priority I I - - - - - - - - - - ------ - - - PRFLINK Buffer Link Field - - - PRFCOUNT - - - - - - -~i6} I CCW Count 8 (8) PRFTIC TIC CCW Or Link to Next Unit 12 (C) PRFSUNIT, PRFNBUNT Number of Units in this Buffer 16 (10) 13 (D) PRFLCB LCB Address 18 (12) PRFSRCE Termname Table Offset for Source of Message 20 (14) 21 (15) PRFSTSO Start of TSO Data PRFSIZE Si ze of Data i n-th is Buffer 22 (16) PRFEOB Offset to EOB in the Buffer ------- -----------------PRFXTRA Address of Additional Records ------ ----------------------- -------PRFCORE ------------ PRFSTAT1 Status Byte Address of the Current Record 24 (18) 28 (1C) PRFNTXT,PRFTQBCK (Cant.) 32 (20) r----------36 (24) 40 (28) 0 (0) 0 (0) 0 (0) (1) (1) 4 4 (4) (4) 5 (5) 6 (6) 26' (1A) PRFSCAN Scan POinter Address PRFNTXT Next Text Segment Address PRFTQBCK Text Queue-Back Chain r-------- ------------- ----- 29 (10) PRFCRCO Current Segment Address PRFNHOR PRFSTXT 35 (23) _ _ _ ..§t~t 2f TexL _ _ _ _ Address of the Next Header Segment ------PRFCHOR--- - - - - - - - - - - - PRFHQBCK Address of the Header of the Current Message Header Queue-Back Chain 38 (26) PRFHQBCK (Cant.) PRFISEQ Input Sequence Number PRFDEST Termname Table Offset for Destination of Message PRFRCB PRFOPCDE PRFKEY PRFIOADR 8 1 3 PRFQCBA PRFFLAGS PRFPRI 3 PRFLINK PRFCOUNT 3 1 2 Resource control block CCW operation code, when I/O is being performed Element key of the buffer Next data byte (address) to be transferred (Read), when I/O is being performed QCB address, when the buffer is an element CCW flags, when I/O is being performed Priority of the buffer, when it is an element Link field of the buffer, unused when a CCW CCW (Read/Write) count Section 5: Data Area Layouts 431 Offset Name (8) PRFTIC 8 Bytes 4 Description TIC CCW & link to the next unit. The high-order byte contains one of the following: Bits Value Meaning X'80' Logical end of message 0 X'40' Header converted to text 1 Start of the logical unit Number of units in this buffer 1 Pointer to the LCB 3 Termname table offset for the source of the message 2 Size of data in this buffer 2 Status byte: Bits Value Meaning Name X'80' Cancel message has been executed 0 PRFCNCLN All X'FF' Mask to specify that the message is not canceled PRFCNCLF On X'40' Error message is in this buffer PRFERMGN 1 X'BF' Mask to specify that this is not an error message buffer PRFERMGF 1 Off X'20' Message is being held PRFITCPN 2 X'DF' Mask to specify that the message is not being held PRFITCPF 2 Off X'IO' This is a TSO buffer PRFTSBUF 3 X'08' Duplicate-header buffer PRFDUPLN 4 X'F7' Mask to specify an original buffer PRFDUPLF 4 Off X'04' SETEOF was executed PRFEOFN 5 X'FB' Mask to specify that SETEOF was not executed PRFEOFF 5 Off PRFLOCK .. PRFEOFN LOCK executed this messa-ge X'02' PRFNLSTN 6 Not the last buffer of a message PRFNLSTF 6 X'FD' Mask to specify the last buffer of a message Off PRENHDRN X'Ol' Not the first buffer of a message 7 PRFNHDRF X'FE' Mask to specify the first buffer of a message 7 Off Start of time sharing data 3 Pointer to the additional records 3 Pointer to the current record Offset to EOB in the buffer (receive) 2 Name PRFEOMSG PRFBFMM 12 12 13 16 18 20 (C) (C) (D) (10) (12) (14) PRFSUNIT P.RFNBUNT PRFLCB PRFSRCE PRFSIZE PRFSTATl 21 21 21 (15) (15) (15) 22 (16) PRFSTSO PRFXTRA PRFCORE PRFEOB 24 26 26 29 32 32 35 35 38 40 432 (18) (1 A) (1 A) (10) (20) (20) (23) (23) (26) (28) PRFSCAN PRFNTXT PRFTQBCK PRFCRCD PRFNHDR PRFCHDR PRFSTXT PRFHQBCK PRFISEQ PRFDEST OS TCAM PLM 2 3 3 3 3 3 3 2 2 Scan pointer address Pointer to the next text segment Queue-back chain of text segments Pointer to the current segment Pointer to the next header segment Pointer to the header of the current message Start of text data in a subsequent buffer Queue-back chain of header segments Input sequence number Termname table offset for the destination of the message Channel Program Block The channel program block (IEDQCPB) contains the disk channel program and other information pertinent to the disk I/O involved. Within the channel program the CPB contains pointers to its associated unit and to the next CPB as well as the actual number of the unit being processed and its MBBCCHHR equivalent. The address of the first CPB is in the AVTCPBPT field of the address vector table. The same address is in the A VTFCPB field of the A VT at INTRa execution time, but this field changes during the execution of the channel program as it always points to the first CPB in the LIFO CPB queue. In disk queuing, CPBs are used to read to or write from the destination queues. If disk queuing is used, the pool of CPBs is created by a nonresident routine called by the INTRa macro expansion. The user specifies the number of CPBs to be built to handle the message queues buffers in the CPB=integer operand of the INTRa macro instruction. Each CPB is built in main storage and is an allocated a work area equal in size to one buffer unit (including the 12-byte unit control area). Initially this unit is contiguous with the CPB, but as processing continues, the unit may be from the buffer unit pool. The CPBXREA field points to the associated unit, which is actually the disk data area. The format of the channel program block is illustrated below; descriptions of the fields follow. IEDQCPB 0(0) ~- CPBHEADF Seek Head CCW --- - - ---- CPBSEEK - - -- - r11 . - - - - - - --CPBHEAD (1) - - - Head 10 Address CPBHEADF (Cont.) - -1- - - - - - ...... -15"(51CPBSEKFL 16(6) CPBSEKCT Reserved I Seek Flag I Seek Count 8 (8) CPBSETAF Set Sector CCW f- - - - - - - - - - - r. - - - - - - - - - - - - - - - - - - - - - - - - - CPBSET ,9(9) CPBSETA OP Code , Set Sector 10 Address 12 (C) CPBSETAF (Cont.) - - - -CPBSETCT- - - - - CPBSETFL- - - - f"13(0)Reserved : 14 (E 1 Set Sector Count Set Sector Flag ----- OP Code 4 (4) - --- --- ------ l - --- --,---- 16 (10) CPBSRCH OP Code -------- - - --------- - 17(11) - -- - - CPBSREC Record 10 Address CPBSRECF (Cont.) 1 20 (14) cPBSRHFL- Search Flag 24 (181 -- -- - - CPBTlC1 OP Code 28 (1CI -- 32 (201 u. ---- CPBSRECF Search 10 Equal CCW -- - - --- - -- -- CPBSECTR Sector 10 - -121(151 : - - - - Reserved - 122 (16)I I - -i -- - - ------ Search Count CPBTICSF TIC to Search CCW -1- - - - - - 125 (19) CPBTICS Search CCW Address C"BTICSF (Cont.) 29I10I- CPBUNUSD Reserved I , - - - ------CPBSRHCT - - - -- ---- - ------- - --- - - - --- - - ---- - - -- -CPBAREAF Read/Wnte CCW 'II ... Section 5: Data Area Layouts 433 "r- t------CPBRDWR - - - -:33(21) OP Code - - - --- - I 36 (24) -- - -- - - i CPBRWFL ReadlWnte Flag - 37(25) -- - Reserved - 141 (29) CPBXDWR OP Code I - -CPBXWFL -- - Read/Wrlte F 1l1li 145 I i20) - - - CPBXREA 1/0 Area Address Reserved CPBXREAF (Cont.) - - 146(2EI : - - - -- ------ - --- - - ----- - - -- - CPBXOUNT Number of Bytes to Read or Wnte CPBNEXTF TIC to Nel(t CPB CCW 48 (30) r-- Number of Bytes to Read or W~lte -- - -- - 44 (2CI ~- -- - -CPBCOUNT - - - - - ---- -1---,38 (26) CPBXREAF Second ReadlWnte CCW - --- - . -- -- -- CPBAREAF (Cont.) I 40 (28) !-- - - CPBAREA 1/0 Area Address ----- - --CPBTlC2 - ; 49(31, OP Code - - - I -- - - - -- - - -- - - --- CPBNEXT Nel(t CPB Address -- -- 52 (34) r- - - - CPBFLAG Flag Byte CPBADDR Indel( to Absolute Record Number --, I 56 (38) 64(40) 65 (411 CPBTOUNT Data to be Moved Count CPBINWKA Work Area Data Count 68 (44) -- - - - - CPBUNTCT Unit Data Count 434 -- CP8ABSAD MBBCCHHR Value -I- -r OS TeAM PLM - :69(45T J -- -t""" 66 (42) CPBWKACT Work Area Start Address CPBAERBF ERB Address - - CPBAERB -- ERB Address - ---- 67 (43) CPBNUMB Current CPB Number --- -- - - - - Offset Name Bytes Description 0 (0) CPBHEADF Start of the Seek Head CCW 0 (0) CPBHEADF Start of the Seek Head CCW 0 (0) CPBSEEK 1 Seek Head op code 1 (1) CPBHEAD 3 Pointer to the head ID 4 (4) CPBSEKFL 1 Seek CCW flag, command chaining 6 (6) CPBSEKCT 2 Seek count of 6 8 (8) CPBSETAF 8 (8) CPBSET 1 Set Sector op code 9 (9) CPBSETA 3 Pointer to sector ID byte 12 (C) CPBSETFL 1 Set Sector flag byte 13 (D) 1 Reserved 14 (E) CPBSETCT 2 Set Sector count of 1 16 (10) CPBSRCH 1 Search ID Equal op code 17 (11) CPBSREC 3 Pointer to the record ID 20 (14) CPBSRHFL 1 Search CCW flag 21 (15) 1 Reserved 22 (16) CPBSRHCT 3 Search count of 5 24 (18) CPBTICSF 24 (18) CPBTIC1 1 TIC op code 25 (19) CPBTICS 3 Address of the Search CCW 28 (1C) CPBSECTR 1 Set sector ID 29 (lD) CPBUNUSA 3 Reserved 32 (20) CPBAREAF 32 (20) CPBRDWR 1 Read/Write op code 33 (21) CPBAREA 3 Address of the II 0 area 36 (24) CPBRWFL 1 Read/Write flag 37 (25) 1 Reserved 38 (26) CPBCOUNT 2 Number of bytes to be read or written 40 (28) CPBXREAF 40 (28) CPBXDWR 1 Read/Write op code 41 (29) CPBXREA 3 Address of the II 0 area 44 (2C) CPBXWFL 1 Read/Write flag 45 (2S) 1 Reserved 46 (2E) CPBXOUNT 2 Number of bytes to be read or written 48 (30) CPBNEXTF 48 (30) CPBTIC2 1 TIC op code 49 (31) CPBNEXT 3 Pointer to the next CPB 52 (34) CPBFLAG 1 Flag byte Start of the Set Sector CCW Start of the TIC to Search CCW Start of the Read/Write CCW Start of the second Read/Write CCW Start of the TIC to next CPB CCW Section 5: Data Area Layouts 435 Offset Name Bytes Description 52 (34) CPBADDR 4 Index to absolute record number-this field contains a number which when adjusted (by adding 3 and dividing by 4), yields the absolute record number. 55 (37) CPBQTYPE I The low-order two bits of the number determine the queue type as follows: B'll'-Reusable disk'queuing B'IO'-Reserved B'OI'-Nonreusable disk queuing B'OO'-Main-storage queuing 56 (38) CPBABSAD 8 MBBCCHHR value 64 (40) CPBINWKA I Count of the data in the work area 64 (40) 4 LCB address, if the CPB is for IGGOI 9RP 65 (41) CPBTOUNT I Count of the data to be moved into a unit 66 (42) CPBWKACT I Where to start in the work area 67 (43) CPBNUMB I Sequential number of the current CPB 68 (44) CPBAERBF 4 Address of the ERB, or the work area unit address (for IGGOI9RP) 68 (44) CPBUNTCT I Count of data already in the unit 69 (45) CPBAERB 3 The following are the CCW bit definitions: Name Bits Value Meaning CPBCDC 0 X'80' Data chaining CPBCCC I X'40' Command chaining CPBSLIC 2 Suppress incorrect length CPBSKIPC 3 X'20' X'IO' 7 X'OI' Write Data or Key and Data bit CPBNOPC 6,7 X'03' NO OP command CPBWRC 5,7 X'05' Write Data command CPBRDC 5,6 X'06' Read Data command CPBKEYB 4 X'08' Key bit CPBTICC 4 X'08' TIC command CPBWRKC 4,5,7 X'OD' Write Key and Data command CPBRDKC 4,5,6 X'OE' Read Key and Data command CPBSEEKC 3,4,6,7 X'IB' Seek Head command CPBSETC 2,6,7 X'23' Set Sector command CCWFlags: CCW Commands: CPBWRITB 436 OS TeAM PLM I Skip data Checkpoint Di$k Records Checkpoint Control Record: The checkpoint control record is written on disk from the area starting at CKPCNTLR in the checkpoint work area each time that an environment checkpoint record is written. Offset 2 0 FIlii! byte Number of current enVlfonment inCident Number of available records inCident record CKPTTRCT CKPFLAGS Offset 8 4 3 Inde. to the CKPINCNT 5 TTR of the fIrst CKREO record records TTR of the last CK REO record on f;rst CKREO records track CKPINCNO CKPCRRNO CKPTTRCR 9 121CI TTR of the fIrst Number of bytes InCident record Incident record In on first mcldent Value of the INTRO record segment operand CKREOS Value of the INTRO operand CPRCDS CKPBPERR CKPCKRQS CKPCPRCD an environment records trick CKPlNRNO Offset CKPTTRIN 17 (111 16 (101 Length of a CKREO record per track CKPIPERT CKPCPERT CKPCKRLN InCident records Length of an Incident record CKPINCLN inCident record wratten CKPRPERT CKPTTRLI 28 (lCI 30 (1EI Data on track preceding current environment segment Data on track precethng current CKPSECLT CKPSECLI InCident Data on track precedmg first record CKREO record CKPSECCR 37 (251 Data on track 3 byte TTR for fIrst Data on track preceding fIrst enVironment record. All preceding first segment incident record other TTRs follow thIS CKPTTRT1 CKPSECT1 CKPSECIN (0) TTR of the last environment 34 (22) Offset 32 (20 I 0 21 (151 Number of record segments per trIck 26 (1A) Offset 24 (18) Offset 20 (141 18 (121 Number of CKREO records per track Number of 15 (FI 14 (EI TTR of last Name Bytes Description CKPFLAGS 1 Flag byte: X'80'-normal closedown of enVlfonment record Initialized By Altered By Set by IGG01943 Turned off by IGG01944 X'lO'-Open CKREQ IGG01944 X'20'-Open incident IGG01944 X'40'-Open environment IGG01943 X'08'-No environment records are available X'04'-Value of start-up parameter that indicates whether invitation lists are to be checkpointed X'02't-0S synchronous checkpoint IGG01943, IGG01941 Set by IGG01949 IGG01943 IGG01949 IGG01949 Section 5: Data Area Layouts 437 Offset Name Bytes Description Initialized By Altered By X'O l'-Operator control incident records are present 1 (1) CKPTTRCT 1 Index to the current environment checkpoint record IGG01942 initializes IEDQNP changes this this field to 1 field after each environment checkpoint 2 (2) CKPINCNT 1 Total number of incident records in the data set IGG01949 3 (3) CKPINCNO 1 Number of incident records that are available for use Cold start (IGGOI949) Warm start (IGGOI941) 4 (4) CKPCRRNO 1 TTR of the last CKREQ record on the first track that contains CKREQ records IGG01942 5 (5) CKPTTRCR 3 TTR of the first CKREQ record IGG01942 8 (8) CKPINRNO 1 TTR of the last incident record on the first track that contains incident records IGG01942 9 (9) CKPTTRIN 3 TTR of the first incident record IGG01942 12 (C) CKPBPERR 2 Number of bytes in each environment record segment IGG01949 14 (E) CKPRKRQS 1 Value of CKREQS (from INTRO) for the last start-up-used at restart time instead of the corresponding value in the A VT Cold start IGG01942 Warm start (IGGOI944) 15 (F) CKPCPRCD 1 Value of CPRCDS (from INTRO) for last start-upused at restart time instead of the corresponding value in the A VT Cold start (IGGOI942) Warm start (IGGOI943) 16 (10) CKPIPERT 1 Number of incident records per track IGG01949 438 OSTCAMPLM IEDQNG,IEDQNH, IEDQNI,IEDQNJ, IEDQNO Offset 1:7 (11) Name Bytes Description Initialized By CKPPRQNO 1 Maximum number of priority QCBs used by an OS synchronous process entry IGG01949 Number of CKREQ records per track (overlays CKPPRQNO) IGG01949 CKPCPERT 18 (12) CKPCKRLN 2 Length of a CKREQ record, depends on the number of option fields IGG01949 20 (14) CKPRPERT 1 Number of environment record segments per track IGG01949 21 (15) CKPTTRLI 3 TTR of the last incident record written IGG01941 24 (18) CKPINCLN 2 Length of an incident record IGG01949 26 (1A) CKPSECLT 2 Data on track preceding the environment record IEDQNP 28 (1C) CKPSECLI 2 Data on track preceding the current incident record IEDQNP 30 (1E) CKPSECCR 2 Data on track preceding the first CKREQ record IEDQNP 32 (20) CKPSECIN 2 Data on track preceding the first incident record IEDQNP 34 (22) CKPTTRTl 3 3-byte TTR for the first environment record. All other TTRs follow this. IEDQNP 37 (25) CKPSECTl 2 Data on track preceding the first segment of the environment record IEDQNP Altered By IEDQNP There are as many three-byte TTR fields for environment checkpoint records as there are records indicated in CKPCPRCD. Environment Checkpoint Record Segment: Main storage in which to build an environment checkpoint record segment is obtained by the Environment Checkpoint routine (IEDQNK) each time that an environment checkpoint is requested. The format and length of an environment checkpoint vary according to option table and terminal table entries. The environment record contains one section of data, with the associated option fields, for each single, group, line, and process entry of the terminal table. Section 5: Data Area Layouts 439 Offset Name Bytes Description Initialized By 0 (0) CDRDATE 4 Date of the checkpoint IEDQNP 4 (4) CDRTIME 4 Time that the record is written IEDQNP 8 (8) CDRKEY 1 Key byte: IEDQNK X'lC'-last segment of an environment checkpoint record X'20'-a segment that is not the last segment of an environment checkpoint record 9 (9) CDRTTRLI 12 (C) CDRDATA 440 OS TeAM PLM 3 TTR of the last incident record written IEDQNP This is tJIe point at which the. checkpointed fields from the terminal table start. Only single, group, line, and process entries are checkpointed, and different fields are included under different conditions. These conditions are stated as each item is described. Each entry is checkpointed as follows: 1 Terminal entry status byte (from TRMSTATE) included only for a single, group, or line entry IEDQNK 2 Input sequence number (from TRMINSEQ) included only for a single, group, line, or process entry that is disk queued IEDQNK 2 Output sequence number (from TRMOUTSQ) included only for a single, group, line, or process entry that is disk queued IEDQNK n Option fields for the terminal table entry IEDQNK 2 Count of messages for this destination (from QCBMSGCT in the QCB referred to by TRMDESTQ) included for any single, group, line, or process entry that has not had its QCB checkpointed IEDQNK Offset 12+n Name Bytes Description Initialized By 3 Queue-back message chain pointer (from QCBQBACK) included for any single, group, line, or process entry that has not had its QCB checkpointed IEDQNK 21 Disk pointers from QCBDNHDR through QCBLFEFO in a priority-level QCB that is attached to this destination QCB; there is one of these 21-byte entries for each priority-level QCB attached to a destination QCB that is being checkpointed IEDQNK 3 LCBSTAT1, LCBSTAT2, DCBINTVL for any single, group, or line entry IEDQNK n Invitation list for any single, line, or group entry that has not had its destination QCB checkpoinfed; QCBDCBAD points to the DeB, and DCBINVLI points to the invitation list; the length of the list is equal to the number of entries times the length of each entry plus eight control bytes IEDQNK 2 The following information is at the end of the environment record. IEDQNK Termname table offset to the primary operator control terminal (from the A VT field A VTOPCON) 2 Number of seconds in a system system delay (from the A VT field AVTINTLV) IEDQNK 1 TCAM status byte (from the A VT field A VTBIT 1) IEDQNK 1 TCAM status byte (from the A VT field A VTBIT2) IEDQNK 4 Nonreusable disk relative record address (from the A VT field AVTNADDR) IEDQNK 4 Reusable disk relative record address (from the A VT field AVTRADDR) IEDQNK 4 Value of AVTLODPT IEDQNK Section S: Data Area Layouts 441 In summary, the general format of an environment checkpoint record is as follows: Offset o 4 9 8 12 , { Date Time Key TTR of last Termin al Table Option flefds QCB data LCB data DCB data Invitation for the for the for the for the List for the X'20' incident data fo r the first entry first entry first entry first entry first entry red used first en try , Terminal Table data for the second entry Option fields for the second entry .~ Second segment offset 4 0 8 9 12 Date Time Key TTR of last X'1C' incident rcd used ( QCB for th seco~ I Terminal Table data for the \--'--_-\ Option fields for the QCB data for the LCB data for the DCB data for the Invitation List for the D A VT ~-"'""--_'I \-_......._ ; ""_'---\ \-_.1.----\ r.-.........--\ ..._~_f-'llelds Incident Checkpoint Record for the CHECKPT Macro: The Build Incident Record for the MH routine (IEDQNG) issues a GETMAIN for main storage in which to build this incident checkpoint record and places the address of this area at CKPLDRB in the checkpoint work area. If the CHECKPT macro is issued in the incoming group of MH, the terminal that sent the current buffer is checkpointed. If the CHECKPT macro is issued in the outgoing group of MH, the terminal that is to receive the current message is checkpointed. The length of this record depends on which option table fields are used for the terminal being checkpointed. The Build Incident Record for the MH routine uses the LCB field LCBTTCIN, the offset to the current termname table entry, as input to the Termname Table code (IEDQTNT) to get the correct terminal entry address. The terminal entry field TRMOPTBL is an offset to the beginning of the option table fields for this terminal. The routine adds the option table offset from the terminal entry to the option table address (from A VTOPTPT in the A VT) to refer to the beginning of the option table data for this terminal and uses the individual option entry offsets in the terminal entry to refer to the specific option data entries for this terminal. The second word of the option table contains the address of the option characteristics table, each entry of which corresponds in consecutive order to each option entry offset in a terminal entry. If the Build Incident Record for the MH routine finds that a halfword option entry offset in the terminal entry does not contain X'FF', the routine gets the address of the option data by adding the halfword option entry offset to the beginning of the option data for this terminal to get the beginning of this data field, gets the length of this option data field for the corresponding option characteristics table entry, and moves the option data to the next available location in the incident checkpoint record. Offset Name Bytes Description Initialized By 0 (0) CDRDATE 4 Date of the checkpoint IEDQNB 4 (4) CDRTIME 4 Time that the record is written IEDQNP 8 (8) CDRKEY 1 Key byte: IEDQNG D'OO'-CHECKPT record 9 (9) 442 OS TCAMPLM CDRSTAT 1 The terminal status (from TRMSTATE) IEDQNG Offset Name Bytes Description Initialized By 10 (A) CDROFFS 2 The offset to the terminal that is currently connected on the line of the LCB that is the request element (from LCBTTCIN) IEDQNG 12 (C) CDRSEQIN 2 Input sequence number IEDQNG 14 (E) CDRSEQOU 2 Output sequence number IEDQNG 16 (10) CDROPTN Beginning of the option fields defined for the terminal referred to by the offset in bytes 10-11. The manner in which IEDQNG checkpoints these option fields is described in the write-up that precedes this record layout. IEDQNG In summary, the general format of an incident checkpoint record for the CHECKPT macro is as follows: o 4 Date 8 Key 0'00' Time 10 (A) 9 Terminal status 12 Ie) Terminal offset Sequence numbers 1611 0) -- .. __________________________________ -r~ -I.. -J1r O_p_tio_n_d_a_ta_f_le_ld_s________________________________ Incident Checkpoint for Operator Control: The Build Incident Checkpoint for Operator Control routine (IEDQNJ) issues a GETMAIN for main storage in which to build this incident checkpoint record and places the address of this area at CKPLDRB in the checkpoint work area. This routine initializes this checkpoint record from the operator control checkpoint element pointed to by OPCCOPCE in the Operator Control AVT. Offset Name Bytes Description Initialized By o (0) CDRDATE 4 Date of the checkpoint IEDQNP 4 (4) CDRTIME 4 Time that the record is written IEDQNP 8 (8) CDRKEY 1 Key byte: IEDQNJ D' 16 '-Operator Control record 9 (9) CDRTTRLI 3 Flag bits: IEDQNJ Bit 22-ON-Last segment Off-Intermediate segment Bit 23-0n-Continuation segment Off-First or only segment 12 (C) 36 Operator Control checkpoint element pointed to by OPCCOPCE in the Operator Control AVT IEDQNJ Section 5: Data Area Layouts 443 In summary, the format of an incident checkpoint record for operator control is as follows: o 4 8 9 r Ti~ I ~~.. I 1 (C±1------'--------I-------....-------11 FI" 12 T T Operator Control Checkpoint Element Incident Checkpoint for the TCHNG Macro: The Build Incident Checkpoint for TCHNG routine (IEDQNH) issues a GETMAIN for main storage in which to build this incident checkpoint record and places the address of this area at CKPLDRB in'the checkpoint work area. The checkpoint of the option data fields is handled exactly as explained in the Incident Checkpoint for the CHECKPT Macro discussion. Offset Name Bytes Description Initialized By 0 (0) CDRDATE 4 Date of the checkpoint IEDQNP 4 (4) CDRTIME 4 Time that the record is written IEDQNP 8 (8) CDRKEY 1 Key byte: IEDQNH D'04'-TCHNG record 9 (9) CDRSTAT 1 Terminal entry status byte (from TRMSTATE) IEDQNH 10 (A) CDROFFS 2 Offset to the termname table entry for the terminal being checkpointed (from bytes 12-13 of the checkpoint request element) IEDQNH 12 (C) CDROPTN Beginning of the option fields defined for the terminal referred to by the offset in bytes to-II. IEDQNH In summary, the general format of an incident checkpoint for TCHNG record is as follows: Date 444 8 4 0 OS TeAM PLM Time 10 (AI 9 Key 0'04' Terminal status byte 121CI ( • Terminal offset Option data . { CKREQ Checkpoint Record: The Build CKREQ Disk Record routine (IEDQNM) issues a GETMAIN macro for main storage in which to build this CKREQ checkpoint record and places a pointer to this area in the CKPLDRB field of the checkpoint work area. The format and length of this checkpoint record depends upon the number of priority QCBs associated with the destination QCB that is being checkpointed; there is one 21-byte area of QCB disk pointers for each priority level. The checkpoint of the option data fields is handled exactly as explained in the Incident Checkpoint for the CHECKPT Macro discussion. The CKREQ record DSECT is IEDQCDRD. Offset o (0) Name Bytes CDRCKFLG 1 Description Initialized By Flag bits: Bit 0- On-CLREQ is not complete Off-CKREQ is complete IEDQNM 3 Link address of the checkpoint disk I/O queue (from CKPIOQF and CKPIOQL in the checkpoint work area) IEDQNM 2 Input sequence number (from TRMINSEQ in the terminal entry that is referred to by the offset at CDRCKOFF) IEDQNM 1 (1) 4 (4) CDRCKIN 6 (6) CDRCKOUT 2 Output sequence number (from TRMOUTSQ in the terminal entry that is referred to by the offset at CDRCKOFF) IEDQNM 8 (8) CDRKEY Key byte: IEDQNM 1 X'18'-CKREQ record 9 (9) 1 10 (A) CDRCKOFF 2 Termname Table offset (from DEBTAMOS in the associated DEB) IEDQNM 12 (C) CDRCKMSG 2 QCB message count (from QCBMSGCT in the destination QCB) IEDQNM 14 (E) CDRCKQBC 3 Queue-back chain pointer (from QCBQBACK in the destination QCB) IEDQNM 17 (11) CDRCKQCB 21 Priority QCB disk pointers (from the first 21 bytes of the priority level QCB): IEDQNM Reserved QCBDNDHR-disk record number for the next first unit of a message received QCBFHDLZ-disk record number of the first unit of the first message in the last zone used for this queue QCBFHDTZ-disk record number of the first unit of the first message for this queue in the current zone Section 5: Data Area Layouts 445 Offset Name Bytes Description Initialized By QCBINTFF-disk record number in the link field of the message on the read-ahead queue QCBINTLF-disk record number of the message on the read-ahead queue QCBFFEFO-disk record number of the first message received in FEFO order QCBLFEFO-disk record number of the last message received in FEFO order Beginning of the option fields defined for the terminal referred to byCDRCKOFF 17 +(21 x n) CDRCKOPT where n is the number of priority level QCBs IEDQNM In summary, the general format of a CKREQ checkpoint record is as follows: Offset o 6 4 Flag Lmk address CORCKFLG Input sequence number Output sequence number CORCKIN CORCKOUT Offset 101 A ) 9 S Key X'1S' Reserved CORKEY 14 (E) 121C) ( • Termmal name offset ace message count aueu e-back cham pomter CORCKOFF CORCKMSG CDR CKOBC J Offset 17 (11) ( 17 + (21 )( n) ~------~~------~~--~~--~--------~ T--------~----------------------------__, J PriOrity ace disk pomters for the first priority level Priority ace disk pointers for the last priOrity level Option data fields ________~~____--__--~~~--------~l~--------------------------------------~ CORCKOCB J 446 OS TCAM PLM Checkpoint Elements Environment Checkpoint Request Element: Offset o Defined at A VTCKELE in the A VT Key X'70' aCB address Four words long Key field-always B'01110000' 4 Link address Source flag 8 12 (CI Source flag: Checkpoint time interval Reserved Time of interrupt Reserved B'lOOOOOOO'-requested by READY B'OlOOOOOO'-requested by MCPCLOSE B'OOOlOOOO'-requested by the CheckpointNo Incident Records routine B'OOlOOOOO'-requested by other routines Offset o Key X'OO' Checkpoint aCB address 4 MH Checkpoint Request Element: Defined as the LCB Link address Key field-always B'OOOOOOOO' 60 (5AI Terminal name offset o Application Program Checkpoint Request Element: CKREa Offset Key X'50' Checkpoint aCB address Defined at PCBWRKA in the PCB-one for each application program Four words long 4 Link address 8 ECB B'OllOOOOO'-requested by CKREQ DEB chain address B'OOO 10000'-requested by TCHNG 12 (CI TCHNG Offset o Key X'10' Checkpoint aCB address 4 Li n k address 8 ECB 12 (CI Key field-depends on the macro Terminal name offset Reserved Section 5: Data Area Layouts 447 Operator Control Checkpoint Request Element: Offset o Checkpoint aCB address Key X'40' 4 Link address Request element chain Key X'02' 4 ECB 8 Address of the STCB code offset 448 Two words long Key field-B'OlOOOOOO'-requested by VARY, MODIFY, RELEASE, HOLD, ICHNG, MRELEASE, or RELEASEM Checkpoint QCB: Offset o Defined at AVTCCELE in the A VT OS TeAM PLM Defined at AVTCKPTB in the A VT Three words long Third word always points to the key field of this QCB. The key field is the offset to the checkpoint STCB Key field-B'OOOOOOlO'-tells the TCAM Dispatcher to post the ECB in the second word and to take the element off the top of the ready queue and chain it to the request element chain, which is in the first word of the QCB. Checkpoint Work Area The checkpoint work area is a local constants and variables area that is used by all of the checkpoint routines. This work area contains the checkpoint data set control record, as well as pointers to the other checkpoint records. The checkpoint work area is allocated by a GETMAIN in the Checkpoint Open routine (lGG01941), which also places the address of the work area in the AVTCKGET field of the AVT. During a cold start-up, the constant fields in the work area are initialized by the Checkpoint Open routine, the Checkpoint Disk Initialization routine (IGG01942), and the Checkpoint Disk Allocation routine (lGGOI949). The variable fields in the checkpoint work area are initialized and changed as required by the checkpoint routines. Section S: Data Area Layouts 449 IEOQCKPO 1 -- CKPSAVEl Save Area for the Load Module 72 (48) CKPIOB lOB for Checkpoint Disk I/O r------ -- --,CKPIOFLl - I ~;;F~ - - -:- - - CKPIOS~ - - -: - - - ~KPI~N-;- 76 (4C) CKPIOECB ECB Address 80 (50) CKPIOFL3 88 (58) 81 (51) CKPIOCSW Channel Status Word 89 (59) CKPIOCPA Channel Program Address CKPIOSIO Condition Codes 93(50) 92 (5C) CKPIOOCB DCB Address Reserved 97 (61) 96(60) CKPIOR'ST Restart Address Reserved 100 (64) CKPIOBCI Block Count Increment 102 (66) CKPIORC Error Count 107 (6B) 105 (69) 104 (68) CKPIOBB BB Seek Address CKPIOM M Seek Address 111 (6F) 109 (60) Continued 112 (70) CKPIOCC CC Seek Address CKPIOHH HH Seek Address CKPIOR R Seek Address CKPECB ECB Posted by IDS 116 (74) CKPEXCP Address of the Current Record Being Written 120 (78) CKPCNVRT Label Used for the CVD Instruction r----------------------------~~C~--------------------------ECB List for WAIT ~------- - --------- ---- - -- -CKPEPLOC-- --- - - - - -- - ------ ------EPLOC for the LOAD Macro 128 (80) 132 (84) 136 (88) 450 OS TeAM PLM CKPIOQF Address of the First Record On the Checkpoint Disk I/O Queue CKPIOQL Address of the Last Record On the Checkpoint Disk I/O Queue CKPLREB Address of the Last Request Element for Which a Record Was Built 140 (SC) CKPLDRB Address of the Last Record Built CKPSECTR Sector 10 for Set Sector Command 144 (90) -- - - - -CKPffiR'B- - of the CKREQ-TTR Table _..... 148 (941 - CKPCPARM Parameters for the Convert Routine -r r 156 (9CI CKPPARM2 Parameter for the Sector Convert Routine 161 (All 160 (AOI CKPCRLEN Control Record Length 163 (A31 162 (A21 CKPSWCH2 SWitch for the Checkpolnted Invitation List CKPSWCH1 Switch for the CheckpOint QCB CKPERRCT Count Or Read Errors Found by IGG01843 164 (A4) Reserwd -- CKPCCWS Channel Program CKPseEKC Sect CYlinder 168 (AS) 176 (BO) -'- I CKPSETSC Set Sector or No OP 1 84 ,88' I CKPSCHID Search 10 Command 1192 (CO) r- -,197 (C5) - -- - CKPTIC T~Command - ---- - fDffRC'f TTR of the Last Segment Written, CKPRW ReadlWrite 1208 (DO) 21S (OA) 220 (DC) I- CKPGETML GETMAIN Parameter List _r CKPMSG CKPMSGLN Message Buffer Length 1 r CKPWKALN Checkpoint Work Area Length 222 (DE) Reserved -- - '- Section 5: Data Area Layouts 451 124 lEO) 1... CKPMSGTX Message Text CKPSAVE2 Save Area .... ,... 261 (105) r: I - - - - - ~ CKPMSGTP .1Y.E.e2! ~ec!E0~t 262 (106) T"'1266- (WA) - - - 264 (108) I ~68(1ocr - - - CKPMSGPN- - - I ...L - - - - - I 281 (119) ! CKPMSGG L _ _ _ _ .!.£0'llJ _ ~ !lOBI - - - - - - - - CKPMSGGL GETMAIN Length That Was Not Satisfied -r284 (11 C) _ _ _ _ ..... _ _ _ _ _ _ CKPRCDSR No Segments In One Environment Checkpoint - - -CKPTRKSA - - - Number of Tracks Available '267 CKPMsGL -Message Length - CKPMSGPN Process Entry Name f------- ----(~~.)-- -- ___________ -.l _I- Rec~ _ ..J - - - - - - - - -~ -r CKPTRMAD Terminal Entry Address ...288 (120) ........ CKPCNTLR Beginning of the Checkpoint Control Record 1 T Temporary Use of the Checkpoint Work Area During' Checkpoint Open: 116(74~ 11S(76) CKPCYLNO Cylinder Number 120 (7S) CKPRCDNO Record Number 124 (7C) CKPHEDNO Head Number 121 (79) CKPKEYLN 122 (7A) Key Length CKPDATLN Data Length CKPCTTRC Current Entry in the CKREQ-TTR Table 12S (SO) -~ 136 (SS) CKPIPERE Number of Incident Or CKREQ Records in One Environment Record Segment 140 (SC) 452 - I- CKPDATIM Date and Time of the Last Environment Checkpoint -r OS TeAM PLM -r 13S (SA) CKPCTTRA Address of the TTR of the Environment Record to be Used for Restart Reserved Offset Name Bytes Description 0 (0) CKPSAVE1 72 Save area for the load module 72 (48) CKPIOB 40 lOB for the checkpoint disk I/O operations 72 (48) CKPIOFL1 1 73 (49) CKPIOFL2 1 II 0 error flags II 0 error flags 74 (4A) CKPIOSNO 75 (4B) CKPIOSN1 76 (4C) CKPIOECB 4 ECB address 80 (50) CKPIOFL3 1 II 0 error flags 81 (51) CKPIOCSW 7 Channel status word 88 (58) CKPIOSIO 1 Start I/O condition codes 89 (59) CKPIOCPA 3 Channel program address 92 (5C) 1 Reserved 93 (5D) 3 DCB address 96 (60) 1 Reserved 97 (61) CKPIORST 3 Restart address 100 (64) CKPIOBCI 2 Block count increment 102 (66) CKPIORC 2 Error count 104 (68) CKPIOM 1 M seek address 105 (69) CKPIOBB 2 BB seek address 107 (6B) CKPIOCC 2 CC seek address 109 (6D) CKPIOHH 2 HH seek address 111 (6F) CKPIOR 1 R seek address 112 (70) CKPECB 4 ECB posted by the I/O Supervisor 116 (74) CKPEXCP 4 Address of the current record being written 116 (74) CKPCYLNO 2 During checkpoint open, the cylinder number 118 (76) CKPHEDNO 2 During checkpoint open, the head number 120 (78) CKPCNVRT 8 Label used for the CVD instruction 120 (78) CKPECBL 8 ECB list for WAIT 120 (78) CKPEPLOC 8 EPLOC for the LOAD macro 120 (78) CKPRCDNO 1 During checkpoint open, the record number 121 (79) CKPKEYLN 1 During checkpoint open, the key length 122 (7A) CKPDATLN 2 During checkpoint open, the data length 124 (7C) CKPCTTRC 4 Address of the current entry in the CKREQ-TTR table-used for restart open 128 (80) CKPIOQF 4 Address of the first record on the checkpoint disk I/O queue 128 (80) CKPDATIM 8 Date and time of the last environment checkpoint, used during checkpoint open 132 (84) CKPIOQL 4 Address of the last record on the checkpoint disk II 0 queue 136 (88) CKPLREB 4 Address of the last request element for which a checkpoint record was built CKPIODCB Section 5; Data Area Layouts 453 Offset Name Bytes Description 136 (88) CKPIPERE 2 During checkpoint open, the number of incident or CKREQ checkpoints in one environment record segment 140 (8C) CKPLDRB 4 Address of the last disk record built 140 (8C) CKPCTTRA 4 During checkpoint open, the address of the TTR of the environment record being used for restart 144 (90) CKPCTTRB 4 Address of the beginning of the CKREQ-TTR table 148 (94) CKPCPARM 8 Parameters for the Convert routine: the address of the DEB and the address for the conversion result 156 (9C) CKPPARM2 4 Parameter for Sector Convert routine (UCB type and address) 160 AO) CKPCRLEN 1 Length of the control record 161 (At) CKPSWCHI 1 Switch used for comparing a QCB to see if it has been checkpointed 162 (A2) CKPSWCH2 1 Switch used for comparing an invitation list to determine whether it has been checkpointed 163 (A3) CKPERRCT 1 Count of the read errors found by IGG01943 4 Reserved 164 (A4) 168 (A8) CKPCCWS 32 Channel program 168 (A8) CKPSEEKC 8 Seek Cylinder command 184 (B8) CKPSCHID 8 Search ID command 192 (CO) CKPTIC 8 TIC command 197 (C5) CKPTTRLT 3 TTR of the last environment segment written 200 (C8) CKPRW 8 Read/Write command CKPREAD Read Data CCW CKPWRITE Write Data CCW CKPWCKD Write Count, Key, and Data CCW 208 (CO) CKPGETML 10 GETMAIN parameter list 218 (DA) CKPWKALN 2 Length of the checkpoint work area 220 (DC) CKPMSG 220 (DC) CKPMSGLN 222 (DE) Message buffer used for WTO 2 Length of the message buffer 2 Reserved 224 (EO) CKPMSGTX 37 Message text 224 (EO) CKPSAVE2 15 Temporary storage area 261 (l05) CKPMSGTP 20 Type of checkpoint record 262 (l06) CKPRCDSR 2 Number of segments in one environment checkpoint 264 (l08) CKPTRKLN 2 Reserved 266 (lOA) CKPTRKSA 2 Number of tracks available in the checkpoint data set 267 (lOB) CKPMSGPN 4 Process entry name 281 (l19) CKPMSGGL 4 GETMAIN length that could not be satisfied 284 (lIC) CKPTRMAD 4 Terminal entry address 288 (l20) 1 Beginning of the checkpoint control record 454 CKPCNTLR OS TCAMPLM Command Input Buffer The command input buffer (IEZCIB) is a variable-length communication parameter list that is used by Operator Control to process a command. The buffer describes the command sent from the console. The CIB shows the command code, the identification of the console that issued the command, and the actual data in the command. When the INTRO macro instruction is expanded at TCAM execution time, the INTRO macro generates linkage to a module that issues an EXTRACT macro. The FIELDS= parameter specified on the EXTRACT macro is FIELDS=COMM, which calls for the communication parameter list. A VTCOMPT is specified as the answer area address on the EXTRACT macro. The operating system places the address of the communication parameter list (command input buffer) in the AVTCOMPT field of the address vector table. When a command is entered, SVC 34 performs a GETMAIN for the area required by the command input buffer, and the buffer is initialized at that time. The format of the command input buffer is illustrated below; descriptions of the fields follow. IEZCIB 0(0) CIBNEXT Address of the Next CIB in the Queue 4 (4) 5 (5) CIBVERB Code Byte 6 (6) CIBLEN Buffer Length Reserved 13 (D) 12 (e) CIBCONID Console 10 14 (E) CIBOATLN CIB Datil Length Reserved _..... 16 (10) -- CIBOATA CIB Data T Section 5: Data Area Layouts 455 Offset Name Byte Description o (0) CIBNEXT 4 Address of the next CIB in the queue (0 for last) 4 (4) CIBVERB 1 Bit settings for this field are: 5 (5) 6 (6) 12 (C) 13 (D) 14 (E) 16 (10) CIBLEN Name Bits Value Meaning CIBSTART 5 X'04' START command code CIBMODFY 1,5 X'44' MODIFY command code CIBSTOP 1,2,5 X'64' STOP command code CIBVARY 2,4 X'2S" VARY command code CIBHALT 2,3,4,5 X'3C' HALT command code CIBDISPL 1,2,4 X'68' DISPLA Y command code CIBHOLD 1,2.4,5 X'6C' HOLD command code CIBRELSE 1,2,3 X'70' RELEASE command code 1 Length of the butfer (including control fields) in double words 6 Reserved 1 Identifier of the console issuing the command 1 Reserved CIBDATLN 2 Length of data in the CIB CIBDATA n Beginning of the data from the command operand: CIBCONID START data-contains the fourth positional parameter, parmvalue MODIFY data-contains the residual operand image following the comma, terminating the first positional parameter STOP data-none, CIB generated only to give the console ID to the recipient task VARY data-contains the operand field for the command issued HALT data-contains the operand field for the command issued DISPLA Y data-contains the operand field for the command issued HOLD data-contains the operand field for the command issued RELEASE data-contains the operand field for the commandissued 456 OS TeAM PLM Concentrator Data Ready Queue A concentrator data ready queue (DRQ) controls message concentration for output to a concentrator. There is one DRQ for every concentrator defined in the TCAM system. A DRQ is the same size as a master destination QCB. A data ready queue has three primary fields: a pointer to the element chain, a link address, and a pointer to the STCB chain. The element chain consists of send scheduler STCBs from destination queues that have data ready to be sent to a concentrator. The link and the STCB chain fields are the same as for a master QCB. The address of the DRQ for a concentrator is in the TRMDESTQ field of the terminal entry for the concentrator. The DSECT names of the DRQ fields are shown in the following layout. Descriptions of the fields follow the layout. IEDQDRQ 0(0) 1 (1) DRQELCHN Element Chain DRQFLAG1 Flag Byte 4(4) DRQPRI 5 (5) DRQLINK DRQ Link Field Priority 8 (8) DRQSTVTO 9(9) DRQSTCHN Index into the Subtask Vector Table 12 (C) DROSTPRI STCB Priority 16 (10) STCB Chain 13 (D) DRQSLINK Pointer to the Next STCB 18 (12) 17 (11) DRQBUFCT Total Buffer Count 20 (14) DRQTDO DRQSTAT ERB Buffer Count Time Delay Queue Offset QCB Status Byte 21 (15) DRQCURQ DRQSCBOF SCB Offset 24 (18) DRQFLAG3 Pointer to the Current QCB 25 (191 DRQRESV DRQ Flag Byte 28 (1C) Reserved 29 (10) DRQPRLVL Highest-Priority Level Message 32 (20) 19 (13) DRQERBCT DRQRELLN 33 (21) 27 (1B) DRQCTBCT CTB Count DRQCTBMX Maximum CTBs per Concentrator DRQTDLNK Link Field for the Time Delay Queue DRQPRVLK Link Field Pointer DRQDCBAD DCB Address Relative Line Number 36 (24) I 26 (1A) 37 (25) DRQFLAG2 DRQ Status Byte DRQQBACK Queue-Back Chain Pointer Section 5: Data Area Layouts 457 Offset Name Bytes Description o DRQFLAGI 1 DRQ flag byte (0) Bit Definitions: Name Bit Value Meaning DRQDRQQ 5 X'04' Indicates a DRQ DRQFQCB 6 X'02' Indicates a QCB DRQHELD 7 X'OI' Stop sending-reuse 1 (1) DRQELCHN 3 Element chain of Send Scheduler STCBs 4 (4) DRQPRI 1 Priority of the DRQ 5 (5) DRQLINK 3 Link field of the DRQ 8 (8) DRQSTVTO 1 Index to the appropriate entry in the sub task vector table Bit Definitions: Name Bit Value Meaning DRQCSVTO 2 X'20' DRQ VTO (offset) 9 (9) DRQSTCHN 3 STCB chain pointer 12(C) DRQSTPRI 1 Priority of the STCB 13 (D) DRQSLINK 3 Pointer to the next STCB in the chain 16(10) DRQBUFCT 1 Total buffer count 17(11) DRQERBCT 1 ERB buffer count 18(12) DRQTDO 1 Time delay queue offset 19(13) DRQSTAT 1 Status of this QCB Bit Definitions: Name Bit Value Meaning DRQEOM 0 X'80' End of message is sent DRQTRMHO 1 X'40' Terminal was held DRQBUFRD 2 X'20' Buffered terminal DRQSEND 3 X'10' Sending to a buffered terminal DRQRECEV 4 X'08' Receiving from a buffered terminal DRQSCHDL 5 X'04' Put in the time delay queue when inactive DRQCLOCK 6 X'02' ON =CLOCK, OFF = INTERVAL DRQTIME 7 X'OI' Delay is greater than 12 hours 20 (14) DRQSCBOF 1 Offset to the proper SCB 21 (15) DRQCURQ 3 Pointer to the current QCB 24 (18) DRQFLAG3 1 DRQ flag byte Bit Definitions: 458 OS TeAM PLM Name Bit Value Meaning DRQFSPCI 1 X'80' First PCI for a concentrated message DRQERBAV 2 X'40' Enabled code requested the ERB Offset Name Byte Description 25 (19) ORQRESV 1 Reserved 26 (1A) ORQCTBCT 1 CTB count 27 (1B) ORQCTBMX 1 Maximum number of CTBs per concentrated message 28 (1C) ORQPRLVL 1 Highest-priority level message 29 (10) ORQPRVLK 3 Pointer to the link field 29 (10) ORQTOLNK 3 Link field for the time delay queue 32 (20) ORQRELLN 1 Relative line number 33 (21) ORQOCBAO 3 OCB address 36 (24) ORQFLAG2 1 ORQ status byte Bit Definitions: 37 (25) ORQQBACK Name Bit Value Meaning ORQTSSES 0 X'80' TSO session is in progress DRQRSRV 3 X'lO' Reuse serviced bit ORQTERMQ 4 X'08' Queuing is by terminal ORQSOFFO 5 X'04' Currently sending a FEFO message ORQPROC 6 X'02' This QCB is for a process entry ORQCKPT 7 :?,'Ol' Checkpoint flag 3 Queue-back chain pointer Section 5: Data Area Layouts 459 (This page left blank' intentionally) 460 OS TCAM PLM Common Buffer Oata Area Prefix The common buffer data area prefix is a three-word prefix to each data area used for transmitting broadcast data. Storage is allocated for each data area prefix at INTRO time. The data area prefix is partially initialized at INTRO time, the rest when the COMMBUF macro is executed. The format of the common buffer data area prefix is shown in the following layout. Descriptions of the fields follow the illustration. IEDCBDA 0(0) 1 (1) CBDAINDX CBDAADDFI Index Byte Plonter to Data in the Area 4 (4) 6 (6) CBDALEN CBDAUSCT Length of Data in this Area 8 (8) CBDAFLG1 9 (9) Fleg Byte Offset Number of CBDAFLG2 Lees Using this Area 10 (A) Reserved Flag Byte Name Bytes Description 0 (0) CBDAINDX 1 Index byte 1 (1) CBDAADDR 3 Pointer to data in this area 4 (4) CBDALEN 2 Length of data in this area 6 (6) CBDAUSCT 2 Number of LCBs using this area 8 (8) CBDAFLGI 1 Flag byte 1 Bit Definitions: Name CBDAINUS 9 (9) 10 (A) CBDAFLG2 Bit Value X'Ol' 7 1 Flag byte 1 2 Reserved Meaning data in use Section S: Data Area Layouts 461 (This page left blank intentionally) 462 OS TeAM PLM Common Buffer Master QCB The common buffer master QCB (CMB) is a fixed-length, control block of 32 bytes. This control block regulates the use of common buffer data areas and STCBs used in transmitting broadcast data. Storage is allocated for the QCB at INTRO time. The QCB is also initialized at INTRO time. Note: There is no priority QCB for common buffer transmission. is truncated at the displacement 32 (X'20'). The QCB The format of the common buffer master QCB is shown in the following layout. Descriptions of the fields follow the layout. IEDCMB 0(0) 1 (1) CMBFLAG1 CMBSTCB Address of First STCB Flag Byte 4 (4) 5 (5) CMBPRI CMBLINK Priority 8 (8) Pionter to Next STCB in Chain 9 (9) CMBSTVTO Index to Entry in Subtask Vector Table CMBRETRN Reserved 14 (E) 12 (C) 16 (10) 20 (14) CMBDAREA CMBASTCB Number of Data Areas Number of Available STCBs CMBFINDX Index to First Data Area Prefi x 17 (11) CMBLlNDX 21 (18) CMBFIRST Address of First Data Area Prefix CMBLAST Index to Last Data Area Prefix 24 (18) Address of Last Data Area Prefix 25 (19) CMBNINDX CMBNEXT I ndex to Next Data Area Prefix Address of Next Data Area Prefix 30 (1 E) 28 (1C) CMBSIZE Reserved Data Area Size Offset Name Bytes Description 0 (0) CMBFLAG1 1 Flag byte 1 (1) CMBSTCB 3 Address of first STCB 4 (4) CMBPRI 1 Priority 5 (5) CMBLINK 3 Pointer to next STCB in chain 8 (8) CMBSTVTO 1 Index to the entry in the subtask vector table 9 (9) CMBRETRN 3 Reserved 12 (C) CMBDAREA 2 Number of data areas 14 (E) CMBASTCB 2 Number of available STCBs 16 (10) CMBFINDX 1 Index to the first data area prefix Section 5: Data Area Layouts 463 Offset Name Byte Description 17 (11) CMBFIRST 3 Address of the first data area prefix 20 (14) CMBLINDX 1 Index to the last data area prefix 21 (15) CMBLAST 3 Address of the last data area prefix 24 (18) CMBINDX 1 Index to the next data area prefix 25 (19) CMBNEXT 3 Address of the next data area prefix 28 (Ie) 2 Reserved 30 (IE) 2 Data area size 464 CMBSIZE as TeAM PLM Concentrator Device ID Table There is one device 10 table for each concentrator defined in the TCAM system. Each table consists of a control area that contains information about the entire table, an entry for the concentrator, and one entry for each of the attached terminals. Each entry contains the length of the 10, the device 10, and the termname table offset for this concentrator or terminal. A device 10 table is used to find the proper terminal entry for a terminal that is attached to the concentrator. A device 10 of X'FF' represents either a concentrator or an attached terminal for which DVCID=NONE is coded. A X'FE' denotes the end of the table. The following is the format of the control area and of the concentrator entry for a concentrator device 10 table. IEDQDVCT 0(0) DVCNO Number of Entries in the Table DVCIDLTH Length of Device ID Characters 4 (4) DVCECW End of the Control Word X'01' 1 (1) DVCRSV Reserved DVCCHAR ID Characters 2 (2) 3 (3) DVCENLTH DVCSTAT Entry Length Status Byte 6 (6) 5 (5) Termname Table Offset X 'FF' The device ID entries for the terminals attached to the concentrator follow the concentrator entry. ~ach device ID entry has one of the two following formats. If DVCID=NONE is coded: DVCID"' NONE X '01' X 'FF' Termname Table Offset V-17-C If DVCID=CHAR is coded: DVCID "' CHAR ) 1 r-----------------~~------~~--------~--------------------------------------~ ( ( Length of the Device ID Device 10 Characters V-17-D Termname Table Offset \ ________ ________________________________________ ~------------------~------~I~ ~ ~ ( ( The following is the assembled DSECT format of this table. Section 5: Data Area Layouts 465 Offset Name Bytes Description 0 (0) DVCNO 1 For the control area, the number of entries in the table 0 (0) DVCIDLTH 1 For a concentrator entry, the length of the device ID characters 1 (1) DVCRSV 1 For the control area, reserved 1 (1) DVCCHAR 1+ For a concentrator entry, the ID characters (1 or more bytes) 2 (2) DVCENLTH 1 For the control area, the length of an entry 3 (3) DVCSTAT 1 For the control area, a status byte Name Bit Value Meaning DVCSORTD 1 X'40' The table is sorted 4 (4) 466 DVCECW The end of rhe control word DVCEND X'FE'-the end of the table as TeAM PLM Data Control Block The data control block (DCB) is a storage area through which information needed for the access routines to store and retrieve data is communicated. The format of a TCAM DCB is determined by the character of the data set it represents. There are five types of data control blocks used in TCAM message control programs and application programs. They are: line groups message queues checkpoint message logging application program The TCAM DCB is divided into three segments-prefix, foundation, and extension. The contents of the foundation segment changes during processing. Storage is allocated for the DCB at assembly time, and it is initialized partially at assembly time and partially at execution time according to the parameters specified on the DD card. Before open time, the first doubleword of the foundation segment, at a displacement of 40 (X'28) from the beginning of the DCB, contains the ddname of the data set to be opened. After the data set is opened, the same doubleword contains the address of the data extent block. This address is used to set up linkages in the TCAM execution. The address of the TCAM data control block is in the DEBDCBAD field of the data extent block. The same address is also in the QCBDCBAD field of the destination queue control block. The format of a data control block is illustrated below; descriptions of the fields follow. Section 5: Data Area Layouts 467 Data Control Block DSECT (lHADCBI Data Set Interface r- -- -------~--------------------I Line Group I I I 20 (141 I 21 (151 DCBUFOU DCBUFIN Number of Buffers 24 (181 DCBMH MH Address for th" Line Group 25 (191 DCBINTVL I nVltatlon Delay Interval 28 (IC) DCBBFUMA Maximum Buffer Count - I- _ _ ..,!prJrmsf.!:!. 32 (20) 36 (24) DCBPCI PCI Byte 26 (IA) I I DCBDSORG Data Set Organ lZatlon DCBIOBAD lOB Base Address -l 33 (21) DCBCPRI Prooroty DCBTRANS Translation Table Address DCBEIOBX Extended lOB Index 1------- I DCBEXLST Ex It List Address ....J Message Queues 20 (14) Reserved 26 (IA) DCBDSORG Data Set OrganIZation 28 (lC) f-- - Reserved - -- I - - DCBIOBAD Before Open, A VT Address _J 32 (20) 33 (211 DCBTHRES Disk Threshold Value 36 (24) ~ Reserved Reserved _ _ . _ _ _ _ _ --.JI DCBEXLST EXit List Address Checkpoint 20 (14) Reserved 26 (IA) DCBDSORG Data Set OrganIZation 28 (IC) .... --- I Reserved - -- I _-l DCBIOBAD Before Open, A VT Address 32 (20) Reserved 36 (24) ~-- Reserved --- - _ ....I DCBEXLST EXit List Address L _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -l 468 OS TeAM PLM Data Set Interface (Cont.1 r -Message - -Logging --- ---, iO(14) -- Reserved 32 (201 DCBEDDAD DECB POInter 36 (24) Reserved ApplicatIon Program 20 (14) Reserved 24 (18) 26 (lAI DCBBUFL Buffer Length DCBDSORG Data Set OrganIzatIon 28 (lCI Reserved 32 (201 DCBEODAD End-of-FI)e Routine Address 36 (241 DCBRECFM : r- ___R::o~ F~r~at_ _ _ J DCBEXLST EXIt List Address L _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ..... _ _ _ _ _ _ _ _ _ _ Section 5: Data Area Layouts J 469 Foundation ---, r---Bafor. OPEN J!o I J-I 1281 DCBDDNAM Data Set Name ~r 48 (301 49 (311 DCBOFLGS Open Flags 50 (321 DCBIFLG 105 Error Flags r- DCBMACR Macro InstructIon Reference I I I I I After OPEN 42 (2AI 40(281 DCBTlOT DO Offset DCBtFLGS 44 (2CI I 1--------- ..J 105 Error Flags 48 (301 DCBMACRF Macro InstructIon Reference DCBDEBAD DEB Address DaIOFLGS Open Flags L _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ..JI Extension r - - - - - - - - - - - - - -.- - - - - - - - - - - - - - - - - - - - - - - - , Line Group 48 (301 1--- 521341 Reserved -- - - - I DCBSCTAD SpecIal Characters Table Address ....J 53 (351 DCBILCT Count of InvItatIon LIsts 54 (361 DCBUNTCT UnIt Count DCBBUFSI Buffer S,ze 56(38) DCBRESER Reser..,e Bytes Counts 60 (3e) DCBINVLI InvItatIon L,st Address I DCBINVLI I DCBINVLI l DCBINVLI ~ ........ au-1Ch.:kpoint 48(30) 1----- --52(34) : _....J Reserved 53(35) DCBOPTCD Coda Byte Re_ved ~-------------------------------------~ 470 OS TCAM PLM Extension (Cont.) -------------------------, r -Message - -Logging -48 (301 I -...I Reserved -- --- DCBREAD,DCBWRITE READ or WRITE Module Address 52 (341 --- Reserved 72 (481 73 (491 DCBNCP Count of Wrtte Operations -- Reserved T T Applic.tion Program 48 (301 I Reserved --- - - - - - - DCBOPTCD 52 (341 _ _ _ _ ~d!..!lyte J DCBREAD, DCBWRITE DCBGET,DCBPUT READ/WRITE or GET/PUT Module Address I - - .J DCBCHECK CHECK Module Address 56 (381 DCBSYNAD Synch'ronlZlng Routone Address 62 (3EI 60 (3CI DCBBLKSI MaXimum Block Size Reserved --_ 64 (401 -- ..... Reserved 82 (521 DCBLRECL logical Record length 84 (541 DCBCNTRL,DCBNOTE, DCBPOINT CNTRl or NOTE/POINT Routine Address L _________________________ - _______ Section 5: Data Area Layouts ..J 471 Offset Name Bytes Description 1 Bits 0-3: Number of buffers assigned initially for receiving operations, for each line in line group Line Group Interface 20(14) DCBBUFIN / DCBBUFOU Bits 4-7: Number of buffers assigned initially for sending operations, for each line in the line group 21(15) DCBMH 3 Address of the message handler for this line group 24(18) DCBINTVt 1 Number of seconds on invitation delay 25(19) DCBPCI 1 Program-controlled interruption (PCI) handling byte: 26 (lA) DCBDSORG 2 Bit Value Meaning 0 X'80' PCI=(X,) 1 X'40' PCI=(,X) 2 X'20' PCI=(A,) 3 X'10' PCI=(,A) 4 X'08' PCI=(N,) 5 X_04' PCI=(,N) 6 X'02' PCI=(R,) 7 X'OI' PCI=(,R) Data set organization: Byte 0=0 Byte 1 (Code)=TX X'40' 28 (1C) DCBBFUMA 1 Maximum number of buffers to be used for data transfer for each line in this group 28 (1C) DCBIOBAD 4 Before open: address of AVT. After open: base for addressing lOBs (BASE=address of first lOB minus length of one LCB) 32 (20) DCBCPRI 1 Relative priority to be given to sending and receiving operations Bits Value 0-4 33 412 (21) DCBTRANS OS TCAM PLM 3 Meaning Reserved bits 5 X'04' R-Receiving has priority 6 X'02' E-Receiving and sending have equal priori 7 X'OI' S-Sending has priority Address of the translation table Table Code IEDQI0 IEDQll IEDQ12 IEDQ13 IEDQ14 IEDQIS IEDQ16 IEDQ17 1030 1050 105F 1060 2260 2265 2740 274F Offset Name Bytes Description IEDQ18 IEDQ19 IEDQ20 IEDQ21 IEDQ22 IEDQ23 IEDQ24 IEDQ25 IEDQ26 IEDQ27 IEDQ28 user table ITA2 ZSC3 TTYA TTYB TTYC 6BIT ASCI EBCD BC41 EB41 CR41 user table name 36 (24) DCBEIOBX 1 Extended lOB index (size of an LCB) 36 (24) DCBEXLST 4 Address of the exit list Direct Access Storage Device Message Queue Interface, Checkpoint Data Set Interface, Message Logging Interface, Application Program Interface 20 (14) 24 (18) 26 (1A) 4 Reserved DCBBUFL 2 Length of the buffer DCBDSORG 2 Data set organization: Byte 0=0 Byte 1 (Code)=TQ X'20' 28 (1C) 28 (1C) 32 1 Reserved DCBIOBAD 4 Before open: address of the A VT (20) DCBTHRES 1 Percentage of the nonreusable disk, message queue records to be used before a flush closedown of the system is initiated 32 (20) DCBEODAD 4 Message logging-work area used as a DECB pointer; Application program-address of user end-of-file routine 36 (24) DCBRECFM 1 Record format 36 (24) DCBEXLST 4 Address of the exit list Foundation Segment-Before Open 40 (28) DCBDDNAM 8 Data set name 48 (30) DCBOFLGS 1 Flags used by OPEN: Bit Value 0,1,2, 4,5,6 Meaning Reserved 3 X'lO' Open has been successfully completed 7 X'OI' DCB is being processed by I/O support rou 49 (31) DCBIFLG 1 Used by lOS for error conditions 50 (32) DCBMACR 2 Macro instruction reference: Bit Value Meaning Byte 1 0,2,3, 4,5,6,7 Reserved Section 5: Data Area Layouts 473 Offset Name Bytes Description 1 X'40' GET Byte 2 0,2,3, 4,5,6,7 1 Reserved X'40' PUT Foundation Segment-After Open 40 (28) DCBTIOT 2 Offset of the DD entry from beginning of the TIOT 42 (2A) PCBMACRF 2 Same as DCBMACR before OPEN 44 (2C) DCBIFLGS 1 Same as DCBIFLG before OPEN 45 (2D) DCBDEBAD 3 Address of DEB 48 (30) DCBOFLGS 1 Same as DCBOFLGS before OPEN Line Group Extension 49 (31) DCaSCTAD 3 Address of special characters table 52 (34) DCBILCT 1 Count of invitation lists 53 (35) DCBUNTCT 1 Before open: numerical value of the SCT. After open: count of units for one buffer 54 (36) DCBBUFSI 2 Size of all buffers used for this line group 56 (38) DCBRESER 4 4 one-b'yte values (zero default value) 60 (3C) Byte 1 Number of bytes reserved in the buffer receiving the first incoming segment of a message Byte 2 Number of bytes reserved in all buffers except the one containing the first segment of a message Bytes 3-4 Reserved DCBINVLI 4n 4-byte address for each (n ) invitation list Bits Byte 1 Value· 0,1, 3,5, 6,7, Meaning Reserved 2 Off [A, ] 4 Off [,A] 2 On [B, ] 4 On [,a] Bytes 2-4 Reserved Message Queues/Checkpoint Extension 49 (31) 52 (34) 474 DCBOPTCD OS TeAM PLM 3 Reserved 1 Code byte: Bit Value Meaning 2 X'20' Checkpoint 6 X'02' Nonreusable disk queues 7 X'Ol' Reusable disk queues Offset 53 Name Bytes (35) Description 7 Reserved 4 Address of the READ or WRITE module 20 Reserved Message Logging Extension 48 (30) 52 (34) 72 (48) 73 (49) DCBREAD, DCBWRITE DCBNCP 1 Number of Write operations that can be performed 15 Reserved Application Program Extension 48 (30) DCBREAD, DCBWRITE DCBGET, DCBPUT 4 Address of the READ or WRITE module Address of the GET or PUT module 52 (34) DCBOPTCD 1 Option codes 52 (34) DCBCHECK 4 Address of the CHECK module 56 (38) DCBSYNAD 4 Address of the user synchronizing routine 60 (3C) DCBFLAGI 1 TCAM flag byte 61 (3D) 62 (3E) 64 (40) 82 (52) DCBLRECL 84 (54) DCBCNTRL, DCBNOTE, DCBPOINT DCBBLKSI Bits Value Meaning 0 X'SO' STOP.QUICK Specified by user 1 X'40' STOP-PLUSH Specified by user 1 Reserved 2 Matimum block size 18 Reserved 2 Logical record length or block size Address of the CNTRL or the NOTE/POINT module Section 5: Data Area Layouts 475 (This page left blank intentionally) 476 OS TeAM PLM Data Event Control Block The data event control block (DECB) is created when a READ or WRITE macro instruction is expanded. It contains information about the input or output operation that is requested by the macro instruction. The format for the data event control block is illustrated below; descriptions of the fields follow the illustration. DECB 0(0) DECSDECB Event Control Block 6(6) 4 (4) DECTYPE DECLNGTH Reserved Length of Data or of Key and Data 8 (8) DECDCBAD DCB Address 12 (C) DECAREA Read/Write Area Address 16 (10) DECIOBPT Reserved Offset Name Bytes Description 0 (0) DECSDECB 4 Event control block 4 (4) DECTYPE 2 Reserved 6 (6) DECLNGTH 2 Length of key and data (if there is a key); length of work area for an application program 8 (8) DECDCBAD 4 Address of the DCB to which this I/O request is related 12 (C) DECAREA 4 Address of the Read/Write area; address of work area for an application program 16 (10) DECIOBPT 4 Reserved Section 5: Data Area Layouts 477 (This page left blank intentionally) 478 OS TeAM PLM Data Extent Block The data extent block (DEB) is a fixed-length control block with a 36-byte prefix. The DEB describes the extents of the data set with which the DEB is associated. The DEB contains such addresses as the DCB, the UCB, and the TCB. The number of extents associated with the data set is also in the DES. For line groups, the DEB contains the number of lines in a line group and with which line number the data set is used. For a message queue, the DEB contains the number of extents of the data set and their size. The data extent block prefix contains the addresses of the data set appendages (the PCI Appendage, the Channel End Appendage, and others). The address of the DEBTCBAD field of the data extent block is in the DCBDEBAD field of the data control block. The address of the beginning of the DEB prefix is at a displacement of -36(-X'24') from the address of the DEBTCBAD field. Storage is allocated for the DEB and it is initialized at open time. Note: The displacements on this control block do not agree with the TDEBD macro, which has the relative zero displacement at DEBEOEA. The disk message queues routines use the TDEBD macro offsets. The A VTADEBN and AVTADEBR fields of the TeAM A VT contain the address of the DEBEOEA field of ihe DEB. The format of the DEB prefix and the data extent block itself is illusttated below; descriptions of the fields follow. Section S: Data Area Layouts 479 IEDQDEB -36 (-241 DEBEOEA Address of the End-of-Extent Appendage -32 (-201 DEBSIOA Address of the Start I/O Appendage -28 (-1CI DEBPCIA Address of the PCI Appendage -24 (-181 DEBCEA Address of the Channel End Appendage -20 (-141 DEBXCEA Address of the Abnormal End Appendage -16 (-101 -15 (-FI DEBWKARA I/O Support Work Area DEBDSCBA Address of the DSCB -8 (-81 DEBDCBMK DCB Modification Mask -4 (-41 DEBLNGTH Length of the DEB in Double Words o (01 DEBNMSUB Number of OPEN Subroutines t- ---- I J 4 (41 DEBAMl:NG . I Length of Access Method Sectl~ J 1------DEBOFLGS Data Set Flags 8 (81 DEBOPATB Type of I/O 12 (CI f-16 (101 - DEBNMEXT Number of Extents 1 J I I ~ 20 (141 - DEBPRIOR Zero 24 (181 DEBPROTG Protection Key DEB 10 - I I --' I I J 28 (1CI 32 (201 DEBEXSCL Extent Scale DEBDVMOD Device Modifier t- 480 I ....J I- OS TeAM PLM DEBTCBAD Address of the TCB DEBDEBAD Address of the Next DEB DEBIRBAD Address of the I RB DEBSYSPG Address of the First lOB in the System Purge Chain DEBUSRPG Address of the First lOB in the User Purge Chain DEBECBAD Address of the Parameter List to-Find t/;1e Purge ECB DEBDCBAD Address of the DCB -I I ..J I I J DEBAPPAD Address of the I/O Appendage Vector Table DEBUCBAD Address of the UCB Offset Name Bytes Description -36 (-24) DEBEOEA 4 Address of End-Of-Extent Appendage -32 (-20) DEBSIOA 4 Address of Start I/O Appendage -28 (-IC) DEBPCIA 4 Address of PCI Appendage -24 (-18) DEBCEA 4 Address of Channel End Appendage -20 (-14) DEBXCEA 4 Address of Abnormal and Normal Line End Appendage -16 (-10) DEBWKARA 1 I/O support work area -15 (-F) DEBDSCBA 7 Address of DSCB -8 (-8) DEBDCMK 4 DCB modification mask -4 ( -4) DEBLNGTH 4 Length of the DEB in double words 0 (0) DEBNMSUB 1 Number of OPEN subroutines 0 (0) DEBTCBAD 4 Address of the TCB 4 (4) DEBAMLNG 4 (4) DEBDEBAD 4 Address of the next DEB 8 (8) DEBOFLGS 1 Data set flags 8 (8) DEBIRDAD 4 Address of the IRB 12 (C) DEBOPATB 1 Type ofl/O 12 (C) DEBSYSPG 4 Address of the first lOB in the system purge chain 16 (10) DEBNMEXT 1 Number of extents 16 (10) DEBUSRPG 4 Address of the first lOB in the user purge chain 20 (14) DEBPRIOR 1 Zero 20 (14) DEBECBA 4 Address of the parameter list to find the purge ECB 24 (18) DEBPROTG 24 (18) DEBDCBAD 4 Address of the DCB 28 (lC) DEBEXSCL 1 Extent scale 28 (IC) DEBAPPAD 4 Address of the I/O Appendage vector table 32 (20) DEBDVMOD 1 Device modifier 32 (20) DEBUCBAD 4 Address of the UCB Length access method section Protection key DEB ID Section 5: Data Area Layouts 481 (This page left blank intentionally) 482 OS TeAM PLM Data Extent Block for Application Programs There is a special application program data extent block (DEB) that has the same DSECT name, IEDQDEB, as the regular TCAM DEB. The format of this special DEB and descriptions of the fields follow. IEDQDEB - Application Program 1 (1) 0(0) DEBTAMID TCAM DEB Identifier DEBTCBAD Address of the TCB for this DEB 5 (5) 4 (4) OEBDEBAD Address of the Next DEB Reserved 8 (8) 9 (9) DEBPCBAD Address of the Process Control Block Reserved 14 (E) 12 (C) DEBTAMOS Process Entry Termname Table Offset 16 (10) 17 (11) DEBQCBAD Address of Read·Ahead aCB OEBTAMPP Post Pending Flag Byte 21 (15) 20 (14) DEBTAMWA Address of TCAM Access Method Work Area Reserved 24 (18) 25 (19) DEBDCBAD Address of the DCB for this DEB Raserved 28 (1e) 29 (10) Reserved 32 (20) DEBSOWA Size of Locate Mode Work Area DEBLCMWA Address of Locate Mode Work Area DEBEND End of DEB DEBSIZE Size of DEB Section S: Data Area Layouts 483 Offset Name Bytes Description 0 (0) DEBTAMID 1 TCAM DEB identifier; if bits 0 and 1 are on, this is a TCAM DEB 1 (1) DEBTCBAD 3 Address of the TCB for this DEB 4 (4) 1 Reserved 5 (5) 3 Address of the next DEB in the same task 8 (8) 1 Reserved 9 (9) DEBPCBAD 3 Address of the process control block for this task 12 (C) DEBTAMOS 2 Offset to the termname table entry for the corresponding process entry 14 (E) DEBSOWA 2 Size of the locate mode work area 16 (10) DEBTAMPP 1 Post-pending flag byte 17 (11) DEBQCBAD 3 Address of the read-ahead QCB 20 (14) 1 Reserved 21 (15) DEBTAMWA 3 24 (18) 1 Reserved 25 (19) 3 Address of the DCB for this DEB 28 (IC) 1 Reserved 29 (ID) DEBLCMWA 3 Address of the locate mode work area 32 (20) DEBEND 1 End of the DEB indicator 32 (20) DEB SIZE 1 Size of the DEB in bytes 484 DEBDEBAD DEBDCBAD OS TeAM PLM Address of the TCAM access method work area Device Characteristics Table The device characteristics table (DCT) is a variable-length table that contains one four-byte entry for each type of terminal or station defined in the TCAM system. The DCT is generated by the specification of the TERMINAL macro instructions. At assembly time, each entry is allocated and initialized to describe the characteristics of the particular type of terminal or group of terminals; a single four-byte entry is generated for all terminals that have identical characteristics. The address of the device characteristics table is assembled in the A VTCSTCS field of the address vector table. The one-byte index (TRMCHCIN) in a terminal entry in the terminal table provides the offset to the specific device characteristics table entry for a station. Bits are set in the DCT entry to indicate the type of station. Combinations of these bit settings may be coded where applicable. The specific values for a DCT entry are outlined below. Offset 0 (0) 1 (1) 2 (2) 3 (3) Name Value Description Reserved CINHIBIT X'80' Terminal can use Read Inhibit CCWs CBREAK X'40' Terminal has the Reverse Break feature CATTEN X'20' Terminal has the Attention feature C504l X'lO' 2741 and 1050 Interrupt Feature supported C274l X'08' 2741 on this line C3270 X'04' 3270 device CSRDEU X'02' Stand-alone device CUMASK X'Ol' Control unit (2848 or 3270) CBISYNC X'80' BSC station CBRDCST X'40' Terminal is for broadcast data CTWX X'20' TWX 3335 terminal CSTNCTL X'lO' Terminal has the Station Control feature CXMITCTL X'08' Terminal has the Transmit Control feature CCONTENT X'04' Contention device CLOCAL X'02' Local device CAUDIO X'Ol~ Audio device CWTTA X'40' World Trade Telegraph CENDCTL X'20' Terminal has end-to-end controls (2780) CCHECK X'lO' Terminal has the Checking feature CCONTIN X'04' Terminal is capable of a Continue operation CNOIDLES X'02' Terminal has no idles defined (2260 Remote) C2760 X'Ol' 2760 Section 5: Data Area Layouts 485 (This page left blank intentionally) 486 OS TeAM PLM Disk Data Area The disk record is composed of count, key, and data. The count field is set at disk initialization time. When a unit is used as a disk buffer, the data portion of the disk record comes from the first six bytes of the unit, and the key portion of the disk record (which contains the text of the message itself) comes from that portion of the unit following the 12-byte unit prefix. The disk data area is the first six bytes of the unit prefix. When the unit is a disk buffer or is going through the channel, the address of the disk data area is in the Read or Write Data CCW in the channel program block. The address of the disk data area is usually also in the CPBXREA field of the channel program block. Storage is allocated for the disk data area at IEDQXA execution time. At that same time, the disk data area is initialized to zeros. The actual data in the disk data area is placed there either by Destination Scheduler (IEDQHM) or by Reusability-Copy (IGG019RP). The first six bytes of the IEDQDAT A DSECT defines the data portion of the disk record (the disk data area). The last two bytes of the DSECT are bytes 7 and 8 of the unit prefix and are used only in main storage (they are not written to disk and are, therefore, not part of the disk data area). The format of the IEDQDATA DSECT is illustrated below; descriptions of the fields follow. IEOQOATA 0(0) 4 (4) 1 (1) OATFLAGS OATFEFO Flag Byte FEFO Pointer OATCOUNT Text Byte Count OATSEQOT 6 (6) OATSCAN Scan Pointer Save Area Output Sequence Number Section 5: Data Area Layouts 487 Offset 0 (0) Name Bytes Description DATFLAGS 1 Flag byte: Name Bit Value Meaning DATNPRFX 0 X'80' No prefix is in the record X'7F' 1 Off DATSENT 1 X'40' X'BF' 1 Off DATCNCLD 2 X'20' Mask to specify that a prefix is in the record Message has been serviced Mask to specify that the message has not been serviced Message is canceled X'DF' Mask to specify that the message is not canceled 2 Off DATLOSTN X'EF' Mask to specify that a message is lost from the 3 Off main-storage queue 1 (1) DATFEFO 3 FEFO pointer to the next message to be completely received for this destination 4 (4) DATCOUNT 2 For text records only, the number of bytes of significant text in this record key field, or zero if not the last text record 4 (4) DATSEQOT 2 For header records only, the sequence-out number 6 (6) DATSCAN 2 Saves the scan pointer (number of reserve characters remaining) while building a buffer from this unit; not used in a main-storage disk message queue data set and not part of the disk data area 488 OS TeAM PLM Element Request Block The element request block (ERB) is a fixed-length table of fourteen bytes located at a displacement of X'4C' from the beginning of the line control block. TCAM uses the ERB to request buffers for transmissions of data. The beginning of the element request block is at a displacement of +44 (X'2C') from the beginning of the input/output block within the LCB. The address of the lOB is in the DCBIOBAD field of the data control block. Storage is allocated for the element request block at open time. The ERB is initialized at various times depending upon its function. When it is being used to request buffers, the ERB may be initialized by the Send Scheduler, Receive Scheduler, Get Scheduler, or the Put Scheduler. When it is being used to get recalled buffers, the ERB may be initialized by Buffer Disposition, EOB Check, or the Buffered Terminal Scheduler. When TeAM uses an element request block (ERB) to request buffers for a line, it tposts an ERB to the appropriate QCB to obtain filled buffers for a send operation or empty buffers for a receive operation. The QCB pointer refers to the queue control block to which the ERB is tposted. The link address points to the next element on the queue that contains the ERB. The status field indicates the status of the ERB (for example, that it has been tposted for a buffer, or that it is available, etc.). The chain field contains a pointer to the first buffer in a chain of buffers to be used in the operation. If the buffer unit pool is empty (all buffer units are in use), the ERB is placed in a chain of ERBs waiting for buffers and remains there until a buffer is returned and assigned to it. The two count fields indicate the number .of buffers requested for an operation. Two fields are necessary because a disabled routine may need to increment the count and an enabled routine to decrement the count. The format of the element request block and descriptions of the fields are included in the discussion of the line control block. Section 5: Data Area Layouts 489 (This page left blank intentionally) 490 OS TeAM PLM Invitation List The INVLIST==(name of list, ... ) operand of a DCB macro specifies the names of the invitation lists for the lines of the line group represented by the DCB. There is one invitation list for each line in a line group, and the DCB contains a pointer to the control word of each of its invitation lists. An INVLIST macro specifies the actual entries in each invitation list. An invitation list contains the invitation (polling) characters for terminals that may generate messages to the CPU on the same line. The order in which the invitation characters of the terminals are listed determines the order in which the terminals on the line are polled. Invitation lists may contain both active and inactive entries. Active entries are those invited to enter a message on each pass through the list; an X'FE' follows the last active entry. An inactive entry is one that is not currently being invited to enter messages. Inactive entries in the list are located after the X'FE' indicator. The methods of establishing and altering the status of the entries in the invitation list are discussed in the section Establishing Contact in the System!360 OS TCAM Programmer's Guide, Order No. GC30~2024. The general format 'of an invitation list is eight bytes of control information, followed by an invitation list entry for each active terminal on the line, followed by an end-of-list indicator (X'FE'), followed by an entry for each inactive termi~ nal o~ the line. An invitation list with n active entries has the following format: r~" I~~'~____ ~_O ~_:_~ _~_I ~ 4 -__ ___ ___ ______ ~_+8 __ln_v_Ch_aB__ ~~~~_I_nv_c_ha_B ~ ~~~~ ~_X_'_FE_'~ __ ___ __ Rell·Reln are the two-byte relative positions in the termname table for the entries represented by the invitation characters. There is one two-byte field for each entry in the invitation list, in reverse order. Control Word is a field defining the status of the invitation li!/t. (See format below.) CPU /D, for dial terminals, is the address of a field that contains the ID sequence assigned to the computer. The field referred to contains a length byte, which specifies the number of bytes in the ID sequence, followed by the ID sequence itself. For buffered terminals, the CPU ID field in an invitation list has the following format: Offset +s +4 Active Count +7 UCB Status Reserved Tenninal Count Active Count is the number of active terminals on the line to which TCAM is currently sending'. This field is initialized to zero at line open time. Section S: Data Area Layouts 491 UCB Status is set to X'O l' at line open time if the VCB for the line indicates Auto Poll. Otherwise, this field contains X'OO'. Terminal Count is the total number of terminals on this line. This field is initialized at line open time. Invchars are the invitation or polling characters to be used {or the terminal. The one-byte index following Invchars points to the corresponding relative position field that precedes the control word. X'FE' is the end-of-list indicator, which is used to separate active and inactive entries. An EOT character precedes the X'FE' as an end-of-transmission character in an invitation list for BSC Auto Poll terminals. The control word of an invitation list has the following format: Offset ~-------.~----~~~-----r~----~ Total entries indicates the number of active and inactive entries in the list (if this byte is equal to zero, the list is for an output-only line; there is no message traffic from the terminals). Active entries indicates the number of entries currently being invited. If byte 1 is equal to zero, all the entries in the list are inactive. Width indicates the size of each entry in the list (the size includes the one-byte index that follows the invitation characters). Sta,tus indicates whether the list is active or inactive and whether it is being autopolled. Status bits 492 OS TCAM PLM Meaning o ON--EOT= was specified on the INVLIST macro OFF--EOT= was not specified on the INVLIST macro 1 ON-Offsets to the termname table entries have been sorted OFF-Offsets to the termname table entries have not been sorted 2 Contention bit 3-4 Reserved 5 Indicates whether the list has been processed by Checkpoint/Restart (flip/flop) 6 ON-Active list OFF-Inactive list 7 ON--List is being autopolled OFF-Programmed poll is in effect The invitation list entries have the same format whether the terminals are under control of the Auto Poll facility, the programmed poll facility, or some other scheme, such as contention. The width of each entry is indicated in byte 2 of the control word. The format of each entry in an invitation list is: Invitation Characters K The invitation characters (polling characters) are in the hexadecimal form of the transmission code. K is the one-byte index field used to indicate the relative position of the entry in the list and to find the two-byte pointer to the corresponding entry in the termname table. Section 5: Data Area Layouts 493 (This page left blank intentionally) 494 OS TCAM PLM Input/Output Control Block (IOBLOCKS) The input/output control block is a map of the major control blocks used in I/O operations to the test device. It contains the VCB address, LCB address, and termname table address for the test device, the TECB address, the lOB, DCB, and ECB. Section 5: Data Area Layouts 495 lOB LOCKS 0(0) ECBOLT Event Control Block 6 (6) 4 (4) OLTTNOFF Terminal Name Table Entry Offset OLTUCBA Unit Control Block Address 8 (8) 9 (9) OLTLCBA LCB Address OLTTCRLN TCAM Relative Line No. 12 (C) OLTTNTA Terminal Name Table Entry Address 16 (10) OLTRLTNT Address of Real TNT Entry 22 (16) 20 (14) 23 (17) OLTFLG1 Test Device Flag Byte OLTEABLN Extended Area Length Reserved 24 (18) OLTDTBUF Data Blocking Field Response Buffer Address 31 (1 F) 30 (1E) 28 (1C) OLTDTCNT Data Blocking Field Response Buffer Size OLTFLAG2 Data Blocking Flags 32 (20) Reserved 36 (24) TECBADDR Address of Test Event Control Block .41 (29) 40 (28) IOBFLG1 First Flag Byte 42 (2A) 44 (2C) I-- 44 (2C) - - - - IOBSINS First Two: sense Byte IOBFLG2 Second Flag Byte -.- - - 45 (20) IOBECBAD ECB Address - - - - - -- - - - - - - - --- IOBECBCD ECB Code 48 (30) 1-48 (30) IOBCSW 'Channel Status Word - - - - - - - - - - - 49 (31) - - - - -- - - IOBFLG3 Third Flag Byte IOBCSW1 Last 7 Bytes of Last CSW 496 OS TeAM PLM - - - -- lOB LOCKS 56 (38) 10BCCWAD CCW Address 1----56 (38) -- -- - - -- - -r-57 (39) - - 10BsIOCD Start I/O Code - - - - - - - -- Reserved 60 (3C) 10BDCBAD DCB Address 65 (41) 64 (40) 10BRsTAD Restart Address 10BREPM Reposition Modifier 68 (44) 70 (46) 10BINCR Block Count Increment 72 (48) 73 (49) 10BUCBX UCB Index 10BWORK Work Area 77(40) 76 (4C) 10BCSWs CSW Save Area IOBFLG4 TOTE and Appendage Flags - ~- 10BERRCT Error Counts - -- _1-84 (54) -------- ---1 ... 10. 1----------.. ~ ORG DCBDCDEP Device Dependent Field 105 (69) 104 (68) DCBBUFNO No. of Buffers in Data Set .... DCBBUFCB Buffer Pool Control BUFCB Address 110 (6E) 108 (6C) DCBDsORG Data Set Organization DCBBUFL Buffer Length 112 (70) DCBIOBAD I/O Block Address 116(74) 117 (75) DCBEODAD End of Data Set Routine DCBBGFEK Buff. Techn., Alignm. 121 (79) 120 (78) DCBEXLsT Exit List DCBRECFM Record Format 126 (7E) 124 (7C) DCBTlOT DO Offset 128 (80) DCBIFLGs I/O Supervisor Flags DCBMACRF Macro I nstruction Reference 129 (81) DCBDEBAD Data Extent Block Address Section 5: Data Area Layouts 497 ,... lOB LOCKS 132 (84) 133 (85) OCaOFLGS Reserved Open Flags 136 (88) 137 (89) DCBOPTCD Option Codes Reserved 138 (90) DCBEOEA 140 (92) End of Extent Appendage 142 (94) DCBSIOA Start 1/0 Appendage DCBXENDA Abnormal End Appendage OS TCAM PLM 144 (96) DCBCENDA Channel End Appendage . 148 (9A) 146 (98) 498 DCBPCIA Program Controlled Interrupt Appendage Reserved Offset Name Bytes Description .0 (0) ECBOLT 4 Event Control Block 4 (4) OLTUCBA 2 Unit Control Block address 6 OLTTNOFF 2 Terminal Name Table Entry offset 8 (6) (8) OLTTCRLN 1 TCAM Relative Line No. 9 (9) OLTLCBA 3 LCB address 12 (C) OLTTNTA 4 Terminal Name Table Entry address 16 (10) OLTRLTNT 4 Address of Real TNT Entry 20 (14) OLTEABLN 2 Extended area length 22 (16) OLTFLGI 1 Test Device Flag Byte Name Bits Value OLTTNTAS 0 1 Reserved X'80' Meaning TOTE TNT Entry assigned 23 (17) 24 (18) OLTDTBUF 4 Data Blocking Field Response Buff address 28 (IC) OLTDTCNT 2 Data Blocking Field Response Buffer Size 30 (1E) OLTFLAG2 1 Data Blocking Flags Name Bits Value OLTPTIMD 0 X'80' Post WAITIO immediately OLTMVDAT 1 X'40' Move response to buffer OLTLV3IO 2 X'20' Last EXIO to device was level 3 OLTSIOAC 3 X'lO' EXIO to device is outstanding 5 Reserved Meaning 31 (1 F) 36 (24) TECBADDR 4 Address of Test Event Control Block 40 (28) IOBFLGl 1 First Flag Byte 41 (29) IOBFLG2 1 Second Flag Byte 42 (2A) IOBSENS 2 First two sense bytes 44 (2C) IOBECBAD 44 (2C) ICBECBCD 45 (2D) 48 (30) IOBCSW 48 (30) IOBFLG3 1 Third Flag Byte 49 (31) IOBCSWI 7 Last 7 bytes of last CSW 56 (38) IOBCCWAD 56 (38) IOBSIOCD 57 (39) 60 (3C) IOBDCBAD 4 DCB address 64 (40) IOBREPM 1 Reposition Modifier ECB address 1 ECB code 3 Channel Status Word CCWaddress 1 Start 110 Code 3 Section 5: Data Area Layouts 4':1;'; Offset Name Bytes Description 65 (41) IOBRSTAD 3 Restart address 68 (44) IOBINCR 2 Block Count Increment 70 (46) IOBERRCT 2 Error Counts 72 (48) IOBUCBX 1 UCBlndex 73 (49) IOBWORK 3 Work area 76 (4C) IOBFLG4 1 Flags for TOTE and its appendix Name Bits Value IOBATTN 0 X'80' Attention Interrupt expected IOBCSWV 1 X'40' CSW Save Area Valid IOBSEC 2 X'20' Secondary lOB IOBPPI 3 X'10' Primary lOB IOBATNE 4 X'08' Error on CE/DE before ATTN IOBCSWNV 5 X'04' CSW Area 2 invalid Meaning 77 (4D) IOBCSWS 84 (54) ORG 84 (54) DCB 84 (54) DCBDCDEP 20 104 (68). DCBBUFNO 1 Number of buffers in data set 105 (69) DCBBUFCB 3 Buffer Pool Control Block address 108 (6C) DCBBUFL 2 Buffer lentgh 110 (6E) DCBDSORG 2 Data set organization 112 (70) DCBIOBAD 4 1/0 Block address 116 (74) DCBGFEK 1 Buffer technique, alignment 117 (75) DCBEODAD 3 End of data set routine 120 (78) DCBRECFM 1 Record format 121 (79) DCBEXLST 3 Exit List 124 (7C) DCBTIOT 2 DD offset 126 (7E) DCBMACRF 2 Macro instruction reference 128 (80) DCBIFLGS 1 1/0 supervisor flags 129 (81) DCBDEBAD 3 Data extent block address 132 (84) DCBOFLGS 1 Open flags 3 Reserved 1 Option codes 7 Reserved 133 (85) 136 (88) DCBOPTCD 137 (89) 500 as TeAM PLM 7 CSW Save Area 44 Device dependent field Offset Name Bytes Description 138 (90) DCBEOEA 2 End of extent appendage 140 (92) DCBPCIA 2 Program controlled interrupt appendage 142 (94) DCBSIOA 2 Start 110 appendage 144 (96) DCBCENDA 2 Channel end appendage 146 (98) DCBXENDA 2 Abnormal end appendage 2 Reserved 148 (9A) Section 5: Data Area Layouts 501 (This page left blank.intentionally) 502 OS TeAM PLM Line Control Block The line control block (IEDQLCB) is a fixed-length table that contains the information that must be maintained on a line or line group basis. There is one line control block for each line. The LCB maintains such information as pointers to the channel program, the corresponding DCB, the last serviced PCI, and the chain of waiting QCBs. The LCB also contains the buffer chain, the subtask chain, and the I/O status. When the LCB is functioning as a QCB, the line control block contains the address of the first STCB. Within the LCB, at a displacement of 76 (X'4C'), is the element request block. (For further information on the ERB see the discussion of the element request block.) The I/O block is also in the LCB at a displacement of X'20' from the beginning. To find the address of a specific LCB for a line group from a DCB, the TCAM modules first multiply the relative line number for this line times the value in DCBEIOBX and add the result to the value in DCBIOBAD. The result is the address of the lOB for this LCB. The LCB begins at -X'20' from the lOB address. Storage is allocated and the line control block is initialized at open time for the DCB for the line gr~up. The format of the line control block is illustrated below; descriptions of the fields follow. Section 5: Data Area Layouts 503 IEOQLCB 0(0) 1 (1) LCBKEY Element Key of Buffer LCBQCBA Address of the QCB LCBRCB Resource Control Block 5 (5) 4 (4) LCBPRI Priority of Buffer LCBLlNK Link Field of Buffer 9 (9) 8 (8) LCBSTCBA Address of the Fjrst STCB When LCB is a QCB LCBRSKEY Receive Scheduler Key 12 (C) 13 (0) LCBRSLNK Address of the Next Item in the Chain LCBRSPRI Receive Scheduler Priority 18"(12) 16 (10) 20 (14) 19 (13) LCBTOL Time Delay Queue Offset LCBEOLTO End of List Time Delay LCBTSOB TSO Status Bits 21 (15) LCBINSRC In-source Chain LCBCHAIN Disposition Status Bits 24 (18) 25 (19) LCBNTXT Save Area for PRFNTXT r : 28 (lC) 29 (lD) LCBISZE Count of Idles Reserved -- --- - - - LCBFSBFR First Buffer Assigned to this LCB -.. LCBLSBFR- - Last Buffer Assigned to this LCB 33 (21) 32 (20) LCBFLAG1 lOS Flags 1 36 (24) LCBSCBOA Address of the SCB Directory - - -LCBLNENT - - , TNT Offset to Line Entry : LCBSENSO Sense Byte 0 37 (25)' LCBFLAG3 lOS Flags 3 35 (23) 34 (22) LCBFLAG2 lOS Flags 2 LCBSENS1 Sense Byte 1 LCBECBPT Address of the E CB LCBECBCC Completion Code 40 (28) -- - - - - - - 41 (29) LCBCSW Last Channel Status Word 48 (30) 49 (31) LCBSIOCC 510 Condition Code LCBSTART Address of the Channel Program 52 (34) LCBOCBPT Address of the DCB 56 (38) f----- -- -- - -- LCBRESTR Error Message Data - -- - 60 (3C) LCBINCAM lOS - - - LCBRCQCB QCB to Which to Post the Recalled Buffer -- -------- LCBTTBIN Index to Terminal to be Connected I- - - -- -- - - LCBERRCT lOS Error Counters 504 OS TeAM PLM - - --- 64 (40) 65 (41) - - - -- - - - - LCBUCBX UCB Index 68 (44) LCBRCBFR POinter to the Recalled Buffer - ------- - LCBLSPCI Address of the Last Serviced PCI 70 (46) LCBRECOF Offset to the Current Block 72 (48) - - ------- LCBSTATE Status Bits LCBSTAT1 First Status Byte 171 (47) LCBSTAT2 Second Status Byte 73 (49) LCBRECAD Address of the Current Message Block LCBTSTSW Test-and-Set SWitch LCBERBKY ERB Key LCBERB Element Request Block 77 (40) 76 (4C) LCBERBQB ERB QCB 80 (50) 81 (51) LCBERBPY ERB Priority LCBERBLK Address of the Next Item in the Chain 84 (54) 85 (55) LCBERBCH Address of the Chain to be Assigned Buffers LCBERBST Status of E R B 88 (58) 90 (5A) LCBTTCIN Index to the Terminal Currently Connected LCBERBCT Count Fields 92 (5C) 93 (50) LCBMSGFM Bits to Control BSC Line 96 (60) LCBERMSK Error Recording Mask LCBSCBA Address of the Current SCB 197 (611 LCBINVPT Address of the current Entry in the I nVltation List .- _..... 100 (64) LCBTPCD TP OP Codes -I- -r -r 113(71) 112(70) LCBSNSV Save Area for Sense Byte LCBCSWSV Save Area for Channel Status Word 120 (78) ~' LCBERCCW 3 ERP Commands ...... r-- -----------LCBSTICS Characteristics Work Area LCBSTICS (Cant.) LCBCPA Channel Program Area 144 (90) IEDQLCBX 0(0) 1 (1) LCBXFLAG Device Flags LCBXDCT Device Characterstics Table Storage Area 4 (4) LCBXRADR E RP Polling Characters Address Section 5: Data Area Layouts 505 Offset Name Bytes Description 0 (0) LCBRCB 8 Resource control block for this LCB 0 (0) LCBKEY 1 Key field of the RCB 1 (1) LCBQCBA 3 QCB address 4 (4) LCBPRI 1 Priority of the RCB 5 (5) LCBLINK 3 Address of the next element in the chain in which this RCB is currently located 8 (8) LCBRSKEY 1 Receive Scheduler key field 9 (9) LCBSTCBA 3 Address of the first STCB when the LCB is functioning as a QCB 12 (C) LCBRSPRI 1 Receive Scheduler priority field 13 (D) LCBRSLNK 3 Address of the next item in the chain in which this STCB currently resides 16 (10) LCBEOLTD 2 End of the invitation list time delay interval 18 (12) LCBTDL 1 Time delay queue offset to QCB address for LCB 19 (13) LCBTSOB 1 TSO status byte: Name Bit Value Meaning LCBPREP 0 X'80' Prepare on line LCBWRBRK 0 X'80' Write break in progress LCBTSBUF 1 X'40' Buffer has TSO prefix LCBSATRD 2 X'20' Simulated attention request LCBSOPL 3 X'IO' Start of polling list LCBREAD 4 X'08' Reading partial line LCBCIRCD 5 X'04' Circle D sent to 2741 LCBINHBN 6 X'02' Use inhibits for this terminal LCB2741N 7 X'OI' 2741 on 2741/1050 line 20 506 (14) LCBCHAIN OS TCAMPLM 1 = X'14' Disposition status byte: Name Bit Value Meaning LCBSCRNN 0 X'80' Screen change requested LCBSCRNF X'7F' 0 Off Mask to specify no screen change requested LCBEXCP 1 X'40' Delay EXCP until association LCBERMSG 2 X'20' ERP message waiting LCBNORTY 3 X'IO' Text retry not possible LCBUREQN 4 X'08' Unit request in progress LCBUREQF X'F7' 4 Off LCBBFRSZ 5 X'04' Queue management flag LCBTETEN 6 X'02' User requested tete-a-tete LCBTETEF X'FD' 6 Off Mask to specify that a unit request is not in progress Mask to specify that tete-a-tete is not requested Offset Name Bytes Description LCBABRTN 7 LCBABRTF 7 X'FE' Off X'OI' Abort sequence must be sent Mask to specify that an abort sequence is not required 21 (15) LCBINSRC 3 In-source chain 24 (18) LCBNTXT 1 Temporary save area for PRFNTXT 25 (19) LCBSCBDA 3 Address of the SCB directory 26 (1A) LCBLNENT 1 Termname table offset to the line entry reserved 28 (1C) LCBISZE 1 Count of idles (reserve characters) 29 (1D) LCBFSBFR 3 First buffer assigned to this LCB 29 (1D) LCBLSBFR 3 Last buffer assigned to this LCB 32 (20) LCBFLAGI 1 lOS flags 1 33 (21) LCBFLAG2 1 lOS flags 2 34 (22) LCBSENSO 1 Sense byte 0 35 (23) LCBSENSI 1 Sense byte 1 36 (24) LCBECBCC 1 Completion code 37 (25) LCBECBPT 3 ECB address 40 (28) LCBFLAG3 1 lOS flags 3 Name Bit Value Meaning LCBOBRRD 2 X'02' TP error record processing LCBSOHC 4 X'08' SOH% C message LCBSOHR 6 X'20' SOH% R message 41 (29) LCBCSW 7 LastCSW 48 (30) LCBSIOCC 1 SIO condition code 49 (31) LCBSTART 3 Address of the channel program 52 (34) LCBDCBPT 4 Address of the corresponding DCB 56 (38) LCBRESTR 56 (38) LCBRCQCB 4 Address of the QCB to which recalled buffers are to be tposted 60 (3C) LCBINCAM 2 lOS 62 (3E) LCBTTBIN 2 Index of the terminal to be connected 62 (3E) LCBERRCT 2 lOS error counters 64 (40) LCBUCBX 1 UCB index 65 (41) LCBRCBFR 3 Pointer to a recalled buffer 65 (41) LCBLSPCI 3 Address of the last serviced PCI 68 (44) LCBTRST 2 Offset to the start of the Buffer Translation routine 70 (46) LCBSTATE 2 Status bits 70 (46) LCBSTATI 1 First status byte; bit definitions are: Start of error message data Section 5: Data Area Layouts 507 Offset 71 (47) Name LCBSTAT2 Bytes Description Name Bit Value Meaning LCBRCLLN 0 X'80' Recall being performed LCBRCLLF X'7F' 0 Off LCBCTLMD I X'40' Line is in control mode LCBCVRSP I X'40' First BSC output conversational block LCBOCNI 2 X'20' Non-immediate operator control operation is in progress LCBINITN 3 X'IO' Receiving initiate mode message LCBINITF 3 X'EF' Off Mask to specify no initiate mode message LCBCONT 4 X'OS' Continue or reset operation in progress LCBFREEN 5 X'04' Line is free LCBFREEF X'FB' 5 Off LCBRECBN 6 X'02' Line is receiving LCBSENDN 7 X'OI' Line is sending (Line is stopped if bits 5,6, & 7 are off.) (48) LCBTSTSW Mask to specify that the line is not free 1 Second status byte; bit settings are: Name Bit Value Meaning LCBTRACE 0 X'80' I/O trace active for this line LCBLOCK 0 X'80' Line is in lock mode LCBTRCOF X'7F' 8 Off LCBMSGNN 72 Mask to specify that no recall is being performed 1 X'40' Mask to specify that I/O trace is not active for this line MSGGEN or start-up message LCBMSGNF X'BF' I Off LCBBEOTN 2 LCBBEOTF X'DF' 2 Off LCBSNDPR 3 X'IO' Send priority switch set by the Send Scheduler LCBNEGRP 4 X'OS' Negative response to polling LCBSYNC 5 X'04' Line is binary synchronous LCBDIAL 6 X'02' This is a dial LCB LCBRESP 7 X'OI' A response needs to be sent to this line X'20' Mask to specify that this is not a MSGGEN or start-up message EOT from a buffered terminal (no EOM) Mask to specify a regular EOM if EOT from a buffered terminal I Test-and-set switch: Name Bit Value Meaning LCBCONCT 0 X'SO' Connection established 73 (49) LCBRECAD 3 Address of the current message block 76 (4C) LCBERB 4 Start of the ERB for this LCB i 508 . OS TCAM PLM I / Offset Name Bytes Description 76 (4C) LCBERBKY 1 Element request block key field 77 (4D) LCBERBQB 3 Address of the QCB to which this ERB is currently tposted 80 (50) LCBERBPY 1 ERB priority 81 (51) LCBERBLK 3 Address of the next item in the chain in which this ERB currently resides 84 (54) LCBERBST 1 ERB status; bit settings are: Name Bit Value Meaning LCBMSG 0 X'80' End of initiate mode LCBEOMSG 1 X'40' End of message read from disk LCBRDERR 2 X'20' Logical read error LCBRDERF X'DF' 2 Off LCBINQ 3 X'lO' ERB is waiting for buffers from IEDQHM LCBERROR 5 X'04' Error on the send side LCBPRCPG 6 X'02' After the initial request is satisfied, tpost the ERB to the QCB specified in LCBRCQCB LCBCOMPL 6 X'02' Disk request is complete LCBDLNKN 7 X'OI' Delink switch-ERB is not tposted, but is eligible to be tposted LCBDLNKF X'FE' 7 Off Mask to specify no read error Mask to specify that the ERB is tposted, so PCI cannot tpost it again 85 (55) LCBERBCH 3 Address of the chain to be assigned buffers 88 (58) LCBERBCT 2 Count fields 90 (5A) LCBTTCIN 2 Index to the terminal that is currently connected 92 (5C) LCBMSGFM 1 Bits to control the BSC line Name Bit Value Meaning LCBNAK 0 X'80' Request to send a NAK response LCBACKI 1 X'40' ACK counter The following bits indicate whether a scan of line control has been accomplished and the type of line control received. LCBVSTRT 2 X'20' Valid start sequence LCBRSTRT 3 X'lO' Error start sequence LCBTTD 4 X'08' Temporary time delay received LCBENQ 5 X'04' ENQ received LCBEOT 6 X'02' EOT first character LCBOLT 7 X'Ol' Address of the current SCB 93 (5D) LCBSCBA 3 Address of the current SCB 96 (60) LCBERMSK 1 'J3.rror recording mask 97 (61) LCBINVPT 3 Address of the current entry in the invitation list Section 5: Data Area Layouts 509 Offset Name Bytes Description 100 112 113 120 141 144 (64) (70) LCBTPCD 12 TP operation codes LCBSNSV 1 Save area for the sense byte (71) LCBCSWSV 7 Save area for the CSW (78) LCBERCCW 24 Three ERP commands (8D) LCBSTICS 3 Characteristics work area (90) LCBCPA 8 Channel program area The following is the LCB extension: 0 (0) LCBXFLAG 1 Device flags 1 4 (1) LCBXDCT 3 Device characteristics table storage area (4) LCBXRADR 4 ERP polling characters address 510 OS TeAM PLM On-Line Test Control Block The major control block used by the Teleprocessing On-Line Executive is the On-Line Test Control Block (OLTCB), which contains the buffers, pointers, flags, parameter lists, and data fields that must be preserved after the modules that set them up have been deleted. The OLTCB also contains control fields and queue pointers to allow the TOTE parent task to communicate with and control the On-Line Test subtasks. Modules IEDQW A and IEDQWB have an eight-byte extension at the beginning of the OLTCB. This extension contains the forward and backward pointers for the OLTCB queue. The format of the on-line test control block is illustrated in the following layout. Descriptions of the fields follow the layout. The offsets represented are for all modules except IEDQW A and IEDQWB, whose offsets are eight greater. Eight-byte extension for Modules IEDQWA and IEDQWB: TOTOBPTR TOTELKEY DS C OLTCB queue element key TOTELQCB DS AL3 Address of OLTCB QCB DS C Unused DS AL3 OLTCB queue element link field TOTELLNK Section S: Data Area Layouts Sl1 TOTOlTCB 0(01 2 (2) $ERRLPCT loop on Error Count 4 (4) 5 (5) 3 (3) $TESTOPT Test Option Field 7 (7) 6 (6) $RT0108 Routine Masks 1-8 $DRIVER Driver Identification $RT0916 Routine Masks 9-16 10 (A) 8 (8) $ERROPT Error and Option Field $SPARE 1 Unused 11 (B) $CDSFLGS Device CDS Flags $PDEVFLG Primary Device Flags $TSSSYM Reserved for TSS 12 (C) $PDEVADR Primary Device Address 16 (10) $PDEVDSC Primary Device Descriptors ---- 20 (14) $CDS8T19 Primary Device CDS Bytes 8-19 32 (20) $RMSKCNT Routine Mask Count Length 36 (24) 38 (26) Unused 41 (29) $R057064 $R089096 57 (39) 56 (38) 60 (3C) $R209216 68 (44) $R241248 as TeAM PLM 59 (3B) 62 (3E) 63 (3F) $R201208 67 (43) $R225232 $R217224 70 (46) $R249255 $R169176 $R193200 66 (42) 69 (45) $Rl37144 $R161168 $R185192 65 (41) 64 (40) $Rl05112 55 (37) 58 (3A) 61 (3D) $Rl77184 51 (33) $R129136 $R153160 $Rl45152 $R073080 $R097104 $R121128 $R113120 47 (2FI 54 (36) 53 (35) $R041 048 $R065072 50 (32) 49 (31) $R081088 43 (2B) 46 (2E) 45 (20) $TOTFLG2 TOTE 2nd Flag Byte $R033040 Mask 25-32 $R049056 52 (34) 39 (27) $TOTFLGl 42 (2A) $R025032 Routine Mask 17-24 48 (30) o LT Region Size TOTE 1st Flag Byte $R017024 44 (2C) $OlTSIZE $EXECFLG Executive Program Flags 37 (25) 40 (28) 512 34 (22) 33 (21) $OLTFLGS OlT Functional Flags -'- -r $R233240 71 (47) $RETMASK Spare TOTOlTCB 1 Reserved -r80 (50) -~ $TABLE Address of Branch Table 84 (54) $PASS Address of Passon Area 88 (58) $ETX Address of External Data - ... - ~2(5C) .... SCT Expansion Area 116(74) TOTSMGRT Service Manager Return Save ... - TOTSAVE1 OlT Subtask 1st Save Area TOTSAVE2 o l T Subtask 2nd Save Area 1264 (108) I TOTSAVE3 OLT Subtask 3rd Save Area 1336(150) I TOTSAVE4 o LT Subtask 4th Save Area I... - 18(198) ~ .... TOTSAVE5 o l T Subtask 5th Save Area 480 (1EO) TOTSVENO End of TOTE Save Areas - - - - - - 488 (1E8) -- - 488 (1E8) - - - - - - - - - - - - - - - - - - - - -- TOTlNKPl Service Mgr Link Parameter List - - - - - - - - - - - - - - - - - -TOTLNKNM link Name 498 (1F2) 496 (1FO) TOTBKRQO OLT Main-8torage Blocks Required TOTBKASN OLT Main Storage Blocks 500 (1F4) TOTMMSPC OLT Unused Main Storage 504 (1F8) 1....... _ _ _ _ _ _ _ _ _ _ _ TOTCTENT Control Terminal Entry -- - - - - - - - - ----- ---- ---- Section 5: Data Area Layouts 513 t, TOTOLTCB ----------------- 504(1FS) TOTCTUCB 506(1 FA) TOTCTOFF Offset to C. T. TNT Entry C. T. UCB Address 508(1 FC) 509(1 FD) TOTCTRLN C. T. Relative Line No. TOTCTLCB C. T. LCB Address 512(200) TOTCTTNT C. T. Terminal Name Table Entry Address (Dummy Entry) 516(204) TOTCRTNT C. T. Terminal Name Table Entry Address (Real Entry) 522(20A) 520(208) TOTCTTLN Length of C. T. TTE Area 523(20B) ....... TOTCTFLG Control Terminal Flags 524(20C) TOTCTNAM I'L" Control Terminal Name in EBCDIC /'rJ 532(214) TOTCTDFL Control Terminal Initial Conditions 536(218) TOTCUTST ~- ---- 536(218) Control I nformation For $CUTEST Macro -----------537(219) TOTCUFlG $CUTEST Flags -----538(21A) ----------- TOTCUCUU $CUTEST Starting Address TOTCU#AD $CUTEST No. of Contig. Addrs. 540(21C) TOTCUSAV $CUTEST Save Area 546(221) 544(220) TOTCURS1 TOTCURS2 Byte 2 [$CUTEST Resv. Byte 1 Code Parm. , 646(222) 647(223) TOTCURS3 Byte 3 TOTCURS4 Byte 4 548(224) /'l...I /,l.,. I'J ;oj 644(284) i'- _ _ _ _ _ _ TOTAPENT ~1~'We~r!..!:!,!.e!:..S..n~ ______ 646(286) TOTAPOFF TOTAPUCB A. P. UCB Address 648(288) Offset to A. P. TNT Entry 649(289) TOTAPRLN TOTAPLCB A. P. Relative Line No. Application Program LCa Address 662(28C) TOTAPTNT App. Prog. Terminal Name Table Entry Address (Dummy Entry) 656(290) TOTARTNT App. Prog. Terminal Name Table Entry Address (Real Entry) 660(294) TOTAPTLN 662(296) Length of App. Prog. TTE Area 663(297) TOTAPFLG TOTAPOFL Printer Flags Alt. Ptr.lnit. Cond •. 664(298) TOTAPDCB Local Printer DECB 514 OS TeAM PLM /' ..... T TOTOlTCB J 762(2FO) J. - TOTPDECB local Printer OECB -I"" I"" 712 (304) Unused 776 (308) TOTOlTMQ Subtask Message Queue 780 (3OC) TOTOTECB TOTE Subtask ECB 784 (310) TOTRESSV Pointer to Mother Task Save Area 788 (314) TOTTCBAD Subtask TCB Address 792 (318) TOTCMPCD Subtask Completion Code -- 796 (31C) ,_ ... TOTOlTPl OlT Input Parameter List TOTITBlE ....... ---------1 ~r"'" Branch Table Address 808 (328) TOTWTORP WTOR Parm list for Operator Communication -------- - - - - - - -- - - - ------------- -809(329) 808 (328) TOTINADR TOTINCNT Reply Byte Count Reply Buffer Address 812 (32C) TOTINECB Reply ECB Address 816 (330) TOTWTOPl WTO & WTOR PL for Operator Communication -- -- - - - - - - - - - 816 (330) 817 (331) TOTWTOPL WTO & WTOR Perm. L.ist TOTOTCNT Out Message Count 820 (334) - - 818 (332) - - - - - - - - -- Reserved _... TOTOTBUF ... ~ I,.. Output Area -- 1904(388) TOTINBUF .... Reply Buffer 984 (308) TOTOL.TID 986 (30A) TOTRTCOD Service Module Return Code TOTE OlT Identification 988 (30C) 987 (30B) Unused Unused Section S: Data Area Layouts SIS TOTOLTCB 993 (3E1) 992 (3EO) TOTRQRLN TOTRQUCB Request Relative Line No. Address of Request Line UCB 996 (3E4) TOTPLNKQ -- 996 (3E4) Plink Module Queue - - - - - - - - - ....... - TOTPLFWD - - - - - - - - - - . Queue Forward Pointer 1000 (3ES) TOTPLBKW Queue Backward Pointer -- 100S (3FO) -- TOTWKSPC TOTE Work Area 1136 (470) TOTWKEND End of TOTE Work Area . ,- 1136 (470) .. r Unused 1156 (484) TOTAVTPT Address of A VT '1160 (4S8) I TOTRESPL Address of TOTE Resident Parameter List 1164 (48C) TOTFLG01 1165(480) 1166 (48E) TOTE 1st Flag Byte 1169 (491) 1168(490) TOTFLG06 1170 (492) TOTFLG06 1172 (494) TOTFLG07 1173(495) 1174 (496) TOTTTBEL TOTFLG10 TOTFLG09 1167 (48F) TOTFLG03 TOTFLG02 -- Terminal Name Table Entry 1176 (498) TOTEXT 1171 (493) TOTFLG08 1175 (497) Unused _.... External Data Buffer 1232 (400) -- TOTPASS Pass-on Date Buffer -r 1296 (510) --------------- 1296 (610) TOTPRIBK Primary Test Device I/O Control Blocks r-- - 1296 (610) ...... TOTTRMBF TRM Buffer for TRM Analysis fo--------- - - - - - - - - - - TOTPRECB Primary ECB 516 TOTFLG04 OS TeAM PLM - - TOTOLTCB 1300 (514) -- -- -- - - - - - 1300 (614) 1"OTPRUCB TOTPRENT TOTE Primary Test Device Entry - - - - - - - - - - -- - - - - 1302 (516) TOTPROFF Offset to Primary TNT Entry Primary Device UCB Address 1304 (518) TOTPRRLN 1305 (519) TOTPRLCB Primary LCB Address Primary Device Relative Line No. 1308 (51C) TOTPRTNT Primary Terminal Name Table Entry Address (Dummy Entry) 1312 (520) TOTTNTPR Primary Terminal Name Table Entry Address (Real Entry) 1318 (526) 1316 (524) 1319 (527) TOTPRTLN TOTPRFLG Length of Primary TTE Area Primary Flags 1320 (528) Unused TOTPDTBF Response Buffer Address 1324 (52C) 1326 (52E)TOTPFLGS TOTPDTCT Flags Response Buffer Size 1327 (62F) Unused 1328 (630) Unused 1332 (534) TOTPTECB Primary TECB Address - 1336 (538) 11380 }4~590-;- _I-. TOTPRIOB Primary lOB (564) TOTPRDCB Primary DCB -- - -- TOTPRDEB DEB Address ,.~ 1452 (5AC) TOTSCIBK Secondary Test Device I/O Control Blocks ~---------------------------1462 (5AC) TOTSCECB Secondary ECB 1456 (5BO) TOTSCENT f1466 --------(5BO) TOTSCUCB Seconday Device UCB Address TOTE Secondary Test Device Entry r- - - 1458 (5B2) - - - - - TOTSCOFF Offset to Secondary TNT Entry Section 5: Data Area Layouts 517 TOTOLTCB '" 1460 (5B4) 1461 (5B5) . TOTSCRLN . Secondary Device Relat. Line No. TOTSCLCB Secondary LCB Address 11464 (5B8) , TOTSCITNT i Secondary Terminal Name Table Entry Address (Dummy Entry) : 1468 (5BC) TOTSRITNT Secondary Terminal Name Table Entry Address (Real Entry) ! .1472 (5CO) 1475 (5C3) 1474 (5C2) TOTSCTLN Length of Secondary TTE Area TOTSCFLG Secondary Flags Unused 1476 (5C4) TOTSDTBF Response Buffer Address 1480 (5C8) 1482 (5CA~ TOTSDTCT Response Buffer Size OTSFLGS Flags 1483(5CB) Unused 1484(6CC) Unused 1488 (500) TOTSTECB Secondary TECB Address 1492 (504) -- TOTSCIOB Secondary lOB -.I"- J.5361600l I TOTSCDCB Secondary DCB Address 16iiQ(02c'- -------I TOTSCDEB DEB Address 1608 (648) TOTTRMND End of TRM Buffer 1608(648t TOTCROLT· Current 0 LT I. D. }.,.1660} I TOTOLTTB OLT I. D. Table -I'"" 1646(66E) 1-- - - - - - - - - - - - - - ---'I j..1696 (SAO) T 518 OS TeAM PLM TOTTDTBL TOTE Test Device Table TOTOLTTE - - End of Table -- - - - - - - ~TO~T~O~L~TC~B~ __________________________________________________________________~~ ,t732(6C4) TOTLETGO Last Entry Pointer rr-' 1736 (6CS) ,...-- r"'" TOTTOENO End of Table --- -- -- ---- --- - - - - - - - - - - - - - - 1736(6CS) TOTWECBA Pointet to ECa for Test Device 1740 (6CC) TOTECBPT Pointer to Subtask ECB 1744 (600) TOTTLCNT Test Loop Count _.... ;:~ _.... 1752 (608) TOTWAITI -r WAITIO Time Interval 1760 (6EO) TOTGRABP Current Secondary Device Pointer _....1764 (6E4) -~ 1772 (6EC) 1776(6FO) TOTAPNAM Alternate Printer Name -- TOTOLTEN Entry Point Address of OLT TOTOBEND End of OI-TCa Section 5: Data Area Layouts 519 Offset Name Bytes Description 0 (0) $ERRLPCT 3 Loop on error count 2 (2) $TESTOPT 1 Test option field Name Bits Value Meaning $NOPRT 5 X'04' No print option flag $INDEFLP 6 X'02' Indefinite error loop flag $FSTCOMM 7 X'OI' First error communication flag 3 (3) $ERROPT 1 Error and option field 4 (4) $RTOI08 1 Routine mask 1-8 5 (5) $RT0916 1 Routine mask 9-16 6 (6) $DRIVER 1 Driver identification 7 (7) $SPAREI 1 Unused 8 (8) $TSSSYM 2 Reserved for TSS 10 (A) $PDEVFLG 1 Primary device flags Name Bits Value Meaning $FPMOLD 0 X'80' File protect flag $EXFILPT 1 X'40' Additional file protect flag $TSSSYSI 2 X'20' Reserved for TSS $LASTDEV 3 X'IO' Last device of subsystem flag 4 X'08' Spare $TERMNDX 5 X'04' Reserved for TSS $PATHDEF 6 X'02' Reserved for TSS $LASTSUB 7 X'OI' Last device of last subsystem flag 11 (B) $CDSFLGS 1 Device flags from CDS flag byte Name Bits Value Meaning $FPM 0 X'80' File protect flag $SHARED 1 X'40' Shared device flag $CEVOL 2 X'20' CE volume flag $EXTINTC 3 X'IO' Device address associated with external flag $SYMNAME 4 X'08' Symbolic name flag $TWOCHSW 5 X'04' Two channel switch flag $CUSTSYM 6 X'02' Customer assigned symbolic name flag X'OI' Line connection required flag $COMMCN 12 (C) $PDEVADR 4 Primary device address 16 (10) $PDEVDSC 4 Primary device descriptors 20 (14) $CDS8T19 12 Primary device CDS bytes 8-19 32 (20) $RMSKCNT 4 Routine mask count length 520 OS TeAM PLM Offset 33 (21) Name Bytes Description $EXECFLG 4 Executive program flags Name Bits Value Meaning $CECCMIN 0 X'80' Reply in to outstanding CECOM flag $MULTOEV 1 X'40' More than one device entry flag $RTNSLCT 2 X'20' Operator mode routine selection flag $ERRCNT 3 X'10' Operator specified error loop count $LSTPOEV 4 X'08' 00 not assign more primary devices flag $CLEANUP 5 X'04' Section entered for cleanup flag $CTRLMOO 6 X'02' Control mode available flag $QSCTMOD 7 X'01' Quiescent mode available flag 34 (22) $OLTSIZE 2 OLT region size 36 (24) $OLTFLGS 1 OLT functional flags Name Bits Value Meaning $MANINTV 0 X'80' Manual intervention routine flag $CLEANRT 1 X'40' OLT has cleanup routine flag $RETAIN 2 X'20' RETAIN is active flag $CONTCB 3 Contingent connection broken flag $RETCODE 4 X'10' X'08' ' $TRACE 5 X'04' $LASTSEC 6 X'02' 37 (25) 38 (26) $TOTFLG1 Last section scheduled flag 1 Unused 1 TOTE 1st flag byte Name Bits Value Meaning $LINESHR 0 X'80' Line can be shared flag $TOATBLK 1 X'40' TOTE message clocking flag 39 (27) $TOTFLG2 1 TOTE 2nd flag byte 40 (28) $R017024 1 Routine mask 17-24 41 (29) $R025032 1 Routine mask 25-32 42 (2A) $R033040 1 Routine mask 33-40 43 (2B) $R041048 1 Routine mask 41-48 44 (2C) $R049056 1 Routine mask 49-56 45 (20) $R057064 1 Routine mask 57-64 46 (2E) $R065072 1 Routine mask 65-72 47 (2F) $R073080 1 Routine mask 73-80 48 (30) $R081088 1 Routine mask 81-88 49 (31) $R089096 1 50 (32) $R097104 1 toutine mask 89-96 outine mask 97 -104 51 (33) $R105112 1 Routine mask 105-112 Section 5: Data Area Layouts 521 Offset Name Bytes Description 113~120 52 (34) $RI13120 1 Routine mask 53 (35) $R121128 1 Routine mask 121-128 54 (36) $R129136 1 Routine mask 129-136 55 (37) $R137144 1 Routine mask 137-144 56 (38) $R145152 1 Routine mask 145-152 57 (39) $R153160 1 Routine mask 153-160 58 (3A) $R161168 1 Routine mask 161-168 59 (3B) $R169176 1 Routine mask 169-176 60 (3C) $RI77184 1 Routine mask 177-184 61 (3d) $R185192 1 Routine mask 185-192 62 (3E) $R193200 1 Routine mask 193-200 63 (3F) $R201208 1 Routine, mask 201-208 64 (40) $R209216 1 Routine mask 209-216 65 (41) $R217224 1 Routine mask 217-224 66 (42) $R225232 1 Routine mask 225-232 67 (43) $R233240 ~ Routine mask 233-240 68 (44) $R241248 1 Routine mask 241-248 69 (45) $R249255 1 Routine mask 249-255 70 (46) $RETMASK 1 Return code mask 71 (47) 1 Spare 72 (48) 8 Spare 80 (50) $TABLE 4 Address of branch table 84 (54) $PASS 4 Address of pass-on area 88 (58) $EXT 4 Address of external data 92 (5C) 24 SCT expansion area 116 (74) TOTSMGRT 4 Service manager return save area 120 (78) TOTSAVI 72 OLT subtask 1st save area 192 (CD) TOTSAV2 72 OLT subtask 2nd save area 264 (l08) TOTSA V3 72 OLT subtask 3rd save area 336 (l50) TOTSAV4 72 OLT subtask 4th save area 408 (l98) TOTSAV5 72 OLT subtask 5th save area 480 (lEO) TOTSVEND 480 (lEO) TOTLNKPL 6 Service manager link parameter list 480 (lEO) TOTLNKNM 8 Link name 496 (IFO) TOTBKASN 2 Main-storage blocks assigned to this OLT 498 (lF2) TOTBKRQD 2 Main-storage blocks required by this OLT 500 (IF4) TOTMMSPC 4 OLT unused main-storage 504 (lF8) TOTCTENT 522 OS TCAMPLM End of TOTE save area Control terminal entry Offset Name Bytes Description 504 (1F8) TOTCTUCB 2 C.T. VCB address 506 (1FA) TOTCTOFF 2 Offset to C.T. TNt entry 508 (1 FC) TOTCTRLN 1 C.T. relative line no. 509 (1 FD) TOTCTLCB 3 C.T. LCB address 512 (200) TOTCTTNT 4 C.T. terminal name table entry address (dummy entry) 516 (204) TOTCRTNT 4 C.T. terminal name table entry address (real entry) 520 (208) TOTCTTLN 2 Length of CT TTE area 522 (20A) TOTCTFLG 1 Control terminal flags 523 (20B) TOTCTNAM 9 Control terminal name in EBCDIC 532 (214) TOTCTDFL 4 Control terminal initial condition Name Bits Value Meaning TOTCTCRM 0 X'80' Terminal device flag TOTCTLIN 1 X'40' Line address flag TOTCTGP 3 X'10' General Poll initially active on test line TOTCTLST 4 X'08' CT initially stopped TOTCTHD 5 X'04' CT initially held TOTCTIAC 6 X'02' CT invitation list entry initially active 536 (218) TOTCUTST 536 (218) TOTCUFLG Control information for CUTEST macro 1 CUTEST flags Name Bits Value Meaning TOTCUDON 0 X'80' CV test issued TOTCUCUP 1 X'40' CU test clean up required 537 (219) TOTCU#AD 1 CUTEST number of contiguous address 538 (21A) TOTCUCUU 2 CUTEST starting address 540 (21C) TOTCUSAV 4 CUTEST save area 544 (220) TOTCURSI 1 CUTEST reserved byte 1 code parameter 545 (221) TOTCURS2 1 CUTEST reserved byte 2 code parameter 546 (222) TOTCURS3 1 CUTEST reserved byte 3 code parameter 547 (223) TOTCURS4 1 CUTEST reserved byte 4 code parameter 548 (224) 644 (284) TOT APENT 644 (284) TOT APUCB 2 A.P. UCB address 646 (286) TOT APOFF 2 Offset to A.P. TNT entry 648 (288) TOTAPRLN 1 A.P. relative line no. 649 (289) TOTAPLCB 3 A.P. LCB address 652 (28C) TOT APINT 4 A.P. terminal name table entry address (dummy entry) 656 (290) TOTARINT 4 A.P. terminal name table entry address (real entry) 660 (294) TOT APTLN 2 Length of AP TTE area 95 Alternate printer entry section 5: Data Area Layouts 523 Offset Name Bytes Description 662 (296) TOTAPFLG 1 Printer flags 663 (297) TOTAPDFL 1 Alternate printer initial condition Name Bits Value Meaning TOT APTER 0 X'80' Terminal device flag TOTAPLIN 1 X'40' Line address flag TOTAPGP 3 X'10' General Poll initially active on test line TOTAPLST 4 X'08' AP initially stopped TOTAPHD 5 X'04' AP initially held TOTAPIAC 6 X'02' AP invitation list entry initially inactive 664 (298) TOTAPOCB 88 Local printer DCB 752 (2FO) TOTPDECB 20 Local printer OECB 772 (304) 4 Unused 776 (308) TOTOLTMQ 4 Subtask message queue 780 (30C) TOTOTECB 4 TOTE subtask ECB 784 (310) TOTRESSV 4 Pointer to mother task save area 788 (314) TOTTCBAD 4 Subtask TCB address 792 (318) TOTCMPCO 4 Subtask completion code 796 (3IC) TOTOLTPL 12 OLT input parameter list 796 (31C) TOT#TBLE 8 Branch table address 804 (328) TOTWTORP 808 (328) TOTINCNT 1 Reply byte count 809 (329) TOTINADR 3 Reply buffer address 812 (32C) TOTINECB 4 Reply ECB address 816 (330) TOTWTOPL 816 (330) 1 817 (331) TOTOTCNT 1 818 (332) 2 820 (334) TOTOTBUF 84 Output area 904 (388) TOTINBUF 80 Reply buffer 984 (308) TOTOLTID 2 TOTE OLT identification 986 (3DA) TOTRTCOD 1 Service module return code 987 (3DB) 1 Unused 988 (30C) 4 Unused 992 (3EO) TOTRQRLN 1 Request line relative line no. 993 (3El) TOTRQUCB 3 Address of request line UeB 996 (3E4) TOTPLNKQ 996 (3E4) TOTPLFWD 4 Queue forward pointer 1000 (3E8) TOTPLBKW 4 Queue backward pointer 524 OSTCAMPLM WTOR parameter list for operator communication WTO and WTOR parameter list for operator communication Out message count PLINK module queue Offset Name 100S (3FO) TOTWKSPC Bytes Description 12S TOTE work area 1136 (470) TOTWKEND End of TOTE work area 1136 (470) 20 Unused 1156 (4S4) TOTAVTPT 4 Address of A VT 1160 (4SS) TOTRESPL 4 Address of TOTE resident parameter list 1164 (4SC) TOTFLGOI 1 TOTE 1st flag byte Name Bits Value TOTTRREC 0 X'SO' TOTPRSTP 2 X'20' Primary test device stopped flag TOTSCSTP 3 X'10' Secondary test device stopped flag TOTRQSTP 4 X'OS' Requested terminal stoppeQ flag TOTPRTAS 6 X'02' Primary device TNT entry assigned TOTSCTAS 7 X'OI' Secondary device TNT entry assigned 1165 (4SD) TOTFLG02 1166 (4SE) TOTFLG03 1167 (4SF) TOTFLG04 Meaning 1 TOTE 2nd flag byte Name Bits Value Meaning TOTPTSRT 0 X'SO' Primary line start request flag TOTSCSRT 1 X'40' Secondary line start request flag TOTCHKSZ 4 X'OS' Update subtask storage allocation flag 1 TOTE 3rd flag byte Name Bits Value Meaning TOTAPOER 0 X'SO' Alternate printer option error flag TOTTDFER 1 X'40' Test device field error flag TOTTSTER 2 X'20" Test ID field error flag TOTOPTER 3 X'10' Optional field error flag TOTIMNCP 4 X'OS' Temporary no count flag TOTTSINC 5 X'04' Inclusive test ID entry flag TOTTCREP 7 X'OI' Get EXIO response by TCAM flag 1 TOTE 4th flag byte Name Bits Value Meaning TOTNUMDV 0 X'SO' Numeric TRM entry flag TOTDTCHD 1 X'40' Subtask already detached flag TOTCLOSE 2 X'20' TCAM closedown progress flag TOTCNFUP 3 X'10' Configuration update flag TOTCTSWT 4 X'OS' Control terminal line switched flag TOTRTSWT 5 X'04' Request terminal line switched flag TOTCNCLR 6 X'02' Cancel request message flag TOTTTSWT 7 X'OI' Test terminal line switched flag Section S: Data Area Layouts S2S Offset Name 1168 (490) TOTFLG05 1169 (491) TOTFLG06 1170 (492) TOTFLG07 1171 (493) TOTFLG08 1172 (494) TOTFLG09 526 os TCAMPLM Bytes Description 1 TOTE 5th flag byte Name Bits Value Meaning TOTPRINT 0 X'80' Access method print flag TOTCECOM 1 X'40' Access method CECOM flag TOTREPLY 2 X'20' Access method CECOM with reply flag TOTNTAVL 3 X'lO' Function not available flag TOTDEVST 4 X'08' Start test devices flag TOTTMOUT 5 X'04' Wait time-out flag TOTEXIOF 6 X'02' Access method EXIO flag TOTNDMSG 7 X'OI' Send cancelor terminate message flag 1 TOTE 6th flag byte Name Bits Value Meaning TOTOTERM 0 X'80' Section terminate flag TOTCBOPN 1 X'40' Cancel before open TOTNCMFG 3 X'lO' Non-current mode flag TOTABEND 4 X'08" OLT has abended flag TOTCANCL 5 X'04' Cancel testing flag TOTOTACT 6 X'02' OLT active flag TOTNPERR 7 X'OI' No permanent error flag 1 TOTE 7th flag byte Name Bits Value Meaning TOTPRIEX 0 X'80' Primary device for EXIO/WAITIO flag TOTSECEX 1 X'40' Secondary device for EXIO/WAITIO flag TOTMSGMV 2 X'20' TOTE message already moved TOTMSCEC 4 X'08' TOTE message source flag CECOM TOTMSREP 5 X'04' TOTE message source flag CECOM TOTMSPRT 6 X'02' TOTE message source flag CECOM 1 TOTE 8th flag byte Bits Meaning 0-3 DPRINT forms control flag 4-7 DPRINT level control flag 1 TOTE 9th flag byte Name Bits Value Meaning TOTAPCON 0 X'80' Printer = system console flag TOTAPOUT 1 X'40' Printer = system printer flag TOTCTCON 2 X'20' Control terminal = system console flag TOTAPTRM 3 X'lO' Printer = terminal flag TOTPRENB 4 X'08' Primary test device enabled flag Offset Name 1173 (495) TOTFLGI0 Bytes Description TOTSCENB 5 X'04' Secondary test device enabled flag TOTPRECT 6 X'02' No alternate printer flag TOTMACFT 7 X'OI' U nsupport macro function flags 1 TOTE 10th flag byte Name Bits Value Meaning TOTTERMS 0 X'80' Test devices TOTFSUCB 1 X'40' First test device in TRM flag TOTINCLT 2 X'20' Inclusive entry flag TOTTTDEB 3 X'10' Free test DEB on terminate flag TOTTNTRQ 4 X'08' Dummy TNT entry request flag TOTOLTED 5 X'04' On-line test ended flag TOTOLTWT 6 X'02' On-line test waiting flag TOTOLTRS 7 X'OI' On-line test restart flag 1174 (496) TOTTTBEL 1 Terminal name table entry 1175 (497) 1 Unused 1176 (498) TOTEXT 56 External data buffer 1232 (4DO) TOTPASS 64 Passon data buffer = terminal flag 1296 (510) TOTTRMBF TRM buffer for TRM analysis 1296 (510) TOTPRIBK Primary test device I/O control blocks 1296 (510) TOTPRECB 4 1300 (514) TOTPRENT PrimaryECB TOTE primary test device entry 1300 (514) TOTPRUCB 2 Primary device UCB address 1302 (516) TOTPROFF 2 Offset to primary TNT entry 1304 (518) TOTPRRLN 1 Primary device relative line no. 1305 (519) TOTPRLCB 3 Primary LCB address 1308 (SIC) TOTPRTNT 4 Primary terminal name table entry address (dummy entry) 1312 (520) TOTTNTPR 4 Primary terminal name table entry address (real entry) 1316 (524) TOTPRTLN 2 Length of primary TTE address 1318 (526) TOTPRFLG 1 Primary flags 1319 (527) 1 Unused 1320 (528) TOTPDTBF 4 Response buffer address 1324 (52C) TOTPDTCT 2 Response buffer size 1326 (52E) TOTPFLGS 1 Flags 1327 (52F) 5 Unused 1332 (534) TOTPTECB 4 Primary TECB address 1336 (538) TOTPRIOB 44 RrimaryIOB 1380 (564) TOTPRDCB 72 PrimaryDCB 1380 (564) TOTPRDEB 44 DEB address Section 5: Data Area Layouts 527 Offset Name Bytes 1452 (SAC) TOTSCIBK 1452 (SAC) TOTSCECB Description Secondary test device 110 control blocks 4 1456 (5BO) TOTS CENT Secondary ECB TOTE secondary test device entry 1456 (5BO) TOTSCUCB 2 Secondary device UCB address 1458 (5B2) TOTSCOFF 2 Offset to secondary TNT entry 1460 (5B4) TOTSCRLN 1 Secondary device relative line no. 1461 (5BS) TOTSCLCB 3 Secondary LCB address 1464 (5B8) TOTSCTNT 4 Secondary terminal name table entry address (dummy entry) 1468 (5BC) TOTSRTNT 4 Secondary terminal name table entry address (real entry) 1472 (5CO) TOTSCTLN 2 Length of sec~ndary TTE address 1474 (5C2) TOTSCFLG 1 Secondary flags 1475 (5C3 1 Unused 1476 (5C4) TOTSDTBF 4 Response buffer address 1480 (5C8) TOTSDTCT 2 Response buffer size 1482 (5CA) TOTSFLGS 1 Flags 1483 (5CB) 5 Unused 1488 (5DO) TOTSTECB 4 Secondary TECB address 1492 (5D4) TOTSCIOB 44 Secondary lOB 1536 (600) TOTSCDCB 72 Secondary DCB address 1536 (600) TOTSCDEB 44 DEB address 1608 (648.) TOTTRMND 1608 (648) TOTCROLT 1616 (650) TOTOLTTB End of TRM buffer 8 Current OLT I.D. Name Bits Value TOTFTTIM 0 X'80' TOTCLRFG 0-7 X'OO' 30 OLT I.D. table 1646 (66E) TOTOLTTE Meaning End of table 1646 (66E) 50 Unused 1696 (SAO) TOTTDTBL 40 TOTE test device table 1696 (6AO) TOTLETGO 36 Last entry pointer 1736 (6C8) TOTTDEND 528 OS TeAM PLM End of table Name Bits Value Meaning TOTTDTRM 0 X'80' Terminal device flag TOTTDLIN 1 X'40' Line addfess flag TOTTDGRB 2 X'20' Test device grabbed flag TOTTDSGP 3 X'10' General poll initially active on test line TOTTDLST 4 X'08' Test device initially stopped Offset Name Bytes Description TOTTOTHO 5 X'04' Test device initially held TOTTOIAC 6 X'02' Test device invitation list entry initially inactive X'01' Test device let go flag TOTTOLGO 1736 (6C8) TOTWECBA 4 Pointer to ECB for test device 1740 (6CC) TOTECBPT 4 Pointer ro subtask ECB 1744 (600) TOTTLCNT 2 Test loop count 1752 (606) TOTWAITI 8 WAITIO time interval 1760 (6EO) TOTGRABP 4 Current secondary device pointer 1764 (6E4) TOTAPNAM 8 Alternate printer name 1772 (6EC) TOTOLTEN 4 Entry point address of OLT Section 5: Data Area Layouts 529 (This page left blank intentionally) 530 OS TeAM PLM Operator Control Address Vector Table The operator control address vector table (IEDQOPCD) is a fixed-length table that serves as a general work area for the use of operator control. The table is assembled at the end of the Resident Operator Control module. This table is used by the Resident Operator Control module, by the operator control processing modules, and by the checkpoint/restart modules. The table is never referred to unless an operator control command is entered. Once such a command is entered, the operator control address vector table (A VT) contains entry points for modules, two save areas, bit switches, pointers, and a checkpoint element. The address of the operator control AVT is the AVTOCGET field of the address vector table. Because the operator control AVT is an attached module, storage is allocated for the table at the time of execution of the INTRO macro. The table is initialized at assembly time. The Operator Control control module work area is a table of approximately 540 bytes that is attached to the end of the operator control A VT at a displacement of X'D8'. This area is not discussed below. The format of the operator control AVT is illustrated; descriptions of the fields follow. Section 5: Data Area Layouts 531 IEDOOPCD JOW) OPCDOUBl Doubleword Work Area ~- -,.... 8 (8) OPCAVTPt Address of TCAM AVT 12 (C) OPCCOPCE Address of Current Element (OPCE) 16 (10) OPCDCBlK Address of DCB, R LN; Address of Lookup Routone 20 (14) OPCGTBlD GETMAIN and BLDL L.st Areas 24 (18) OPCTOFlK Address to get TNT, Offset, TERM Entry 28 (lC) Reserved 32 (20) OPClCB Address of LCB Setup Rout.ne 36 (24) OPCTRMWA Work Area for Term Entry Address 40 (28) ,I-- OPCSAVE Operator Control Save Area -I- -r- -,.- 68 (44) OPCOCBAD Address of Operator Control aCB _.....72 (48) _I-. OPCRSAVE Base and Return Save Area _r'"' -,-.. 80 (50) OPCWORK Address of Res.dent Work Area 84 (54) 86 (56) OPCWRKSZ S.ze of Res.dent Work Area 88 (58) -I- I 87 (57) OPCFlAG1 Flag Byte OPCBFERB Buffer Request E RB OPCFlAG2 Flag Byte .... ~ -r J;04 (68) OPCCKERB Checkpoont Request E RB .. r'"' 120 (78) -~ OPCAOCTl SVC 102 Parameter L.st -r 132(84) -J- 532 OS TeAM PLM OPCWAIT Operator Control Input Wa.t L.st . T ~ 144 (90) OPCXCTL List Form of XCTL 152 (98) OPCLONME XCTL Module Name 160 (AO) OPCWAITC QCW for Checkpoint Wait Queue 164 (A4) OPCWAITL QCW for LCB Walt Queue 168 (A8) OPCWAITN QCW for BCH Response Walt Queue 172 (AC) OPCWAITO Output Queue QCW 176 (BO) OPCWAITR QCW for Resource Walt Queue 180 (B4) OPCNEXT Address of Current Element 184 (B8) OPCGETBF Address of Buffer Request Routine 188 (BC) OPCFREBF Address of Buffer Unit Free Routine 192 (CO) 196 (C2) OPCBFREO Units Need by Wait List OPCCHA8 Halfword Set to Eight 196 (C4) 198 (C6) OPCASBUF Units Assigned to OP CTL 200 (C8) OPCAVBUF Units in OP CTL Free Pool OPCBFIRS Address of First Unit in Free Pool 204 (CC) 208 (DO) OPCBFEND Current Unit End OPCSPEC Flag 209 (011 OPCOOSW Switch 210 (02) OPCHNEND Test for End of Buffer Unit 214 (06) 212 (04) OPCHNEND (cont.) 215 (07) OPCSTCBS Switch OPCEND Test Byte Section 5: Data Area Layouts 533 Offset Name Bytes Description 0 (0) OPCDOUBL 8 Doubleword work space for checking across units 8 (8) OPCAVTPT 4 Address of TCAM A VT 12 (C) OPCCOPCE 4 Address of Current Element 16 (10) OPCDCBLK 4 Address of DCB, RLN, and address of Lookup routine 20 (14) OPCGTBLD 4 GETMAIN and BLDL list areas 24 (18) OPCTOFLK 4 Address to get TNT offset and terminal entry 28 (1C) 4 Reserved 32 (20) OPCLCB 4 Address of LCB Setup routine 36 (24) OPCTRMWA 4 Work area for picking up TNT address 40 (28) OPCSAVE 28 Operator control register save area 68 (44) OPCQCBAD 4 Address of operator control QCB 72 (48) OPCRSAVE 8 Base and return save area (IGCOOI0D) 80 (50) OPCWORK 4 Address of resident work area 84 (54) OPCWRKSZ 2 Size of resident work area 86 (56) OPCFLAGI 1 Flag byte for transient use 87 (57) OPCFLAG2 1 Flag byte for transient use 88 (58) OPCBFERB 16 Buffer request ERB 104 (68) OPCCKERB 16 Checkpoint request ERB 120 (78) OPCAQCTL 12 SVC 102 parameter list 132 (84) OPCWAIT 12 Operator control input wait list 144 (90) OPCXCTL 8 List form of XCTL macro used by transient routines 152 (98) OPCLDNME 8 Module name for XCTL macro 160 (AO) OPCWAITC 4 Queue control word (QCW) for checkpoint wait queue 164 (A4) OPCWAITL 4 QCW for LCB wait queue 168 (A8) OPCWAITN 4 QCW for branch response wait queue 172 (AC) OPCWAITO 4 Ouptut queue QCW 176 (BO) OPCWAITR 4 QCW for resource wait queue 180 (B4) OPCNEXT 4 Address of current element 184 (B8) OPCGETBF 4 Address of buffer request routine 188 (BC) OPCFREBF 4 Address of buffer unit free routine 192 (CO) OPCBFREQ 2 Number of units needed by wait list 194 (C2) OPCHA8 2 Halfword set to eight 196 (C4) OPCASBUF 2 Number of units assigned to operator control 198 (C6) OPCAVBUF 2 Number of units in operator control freepool 200 (C8) OPCBFIRS 4 Address of first unit in free pool 204 (CC) OPCBFEND 4 Current end of unit (IGCOII0D) 208 (DO) OPCSPEC 1 Flags used by IEDQCA 534 OS TeAM PLM Offset Name Bytes Description Name Value Meaning OPCALTO Bit 0 X'80' Alternate destination specified OPCPART 1 X'40' Partial unit requested OPCRSTRT 2 X'20' Restart in progress 209 (01) 210 (02) OPCOQSW 1 Output busy switch (FF) OPCHNENO 4 Test under mask instruction executed for to find end of buffer unit 214 (06) OPCSTCBS 1 STCB busy switch (FF) 215 (07) OPENO 1 Test byte to detect end of unit Stetton S: Data Area Layouts S3! (This page left blank intentionally) 536 OS TeAM PLM Option Characteristics Table The option characteristics table (IEDQOPTN) is a variable-length table that contains one entry for each OPTION macro issued in the Message Control Program (MCP). The relative position of an entry in the table directly corresponds to the relative position of an option offset in a terminal table entry. The option offset is an index to the actual option table data for the option entry in the option characteristics table. The option characteristics table allows TCAM routines to use the assembled name for an OPTION macro to locate the option table data for a specific station (terminal). Each entry in the option characteristics table contains the length of the corresponding option table entry, the type of option field specified, and the userspecified name of the OPTION macro. The length of the table is variable and consists of ten bytes for each OPTION macro issued plus one byte (X'FF') to indicate the end of the table. Storage is allocated and the table is initialized at assembly time. The AVT field AVTOPTPT contains the address of the option table, and the second word of the option table contains the address of the option characteristics table. The format of an entry in the option characteristics table is illustrated below; descriptions of the fields follow. Offset 0 +2 +1 Length Type 9 Name Section 5: Data Area Layouts 537 Offset Name Bytes Description 0 (0) length 1 The length of the corresponding option table entry minus one, which is equal to the number of bytes of data specified by the TPROCESS and TERMINAL macros plus any necessary alignment bytes 1 (1) type 1 The type of option field, indicated by one of the following bit configurations: Hex Code Type of Constant Machine Format 00 C Character 8-bit code for each character 01 Z Decimal Zoned decimal format 40 P Decimal Packed decimal format 81 D Floating-Point Long floating-point format; usually a doubleword 80 E Floating-Point Short floating-point format; usually a fullword DO Q Address Space reserved for a dummy section offset C8 V Address Space reserved for external symbol addresses; each address usually a fullword C4 S Address Base register and displacement value; a halfword C2 y Address Value of address; usually a halfword Cl A Address Value of address; usually a fullword FO F Fixed-Point Signed, fixed-point binary format; usually a halfword E6 H Fixed-Point Signed, fixed-point binary format; usually a halfword E4 X Hexadecimal 4-bit code for each hexadecimal digit E2 B Binary Binary format 2 538 (2) name OS TeAM PLM 8 The name of the option field-this is the actual name the user codes in the name field of the OPTION macro Option Table The option table (IEDQOPT) is a variable-length table that contains the actual data coded by the user in the TERMINAL and TPROCESS macros in the message control program. At assembly time, this data is placed in the table with the the necessary byte alignment in the order in which it is coded. An option data field, which is not directly identifiable by the macro in which it is coded, can be referred to only through the option offset fields of a terminal entry. If only the user-coded name for a macro is known, TCAM uses the option characteristics table and the terminal entry to refer to a specific data field in the option table. (See the discussion of the option characteristics table in this section.) The user may specify an area to correspond to any entry in the terminal table for use by the COUNTER, ERRORMSG, FORWARD, MSGLIMIT, INSERT, PATH, REDIRECT , STARTMH, and other MH delimiter macro instructions issued in a message handler. The fields are defined by OPTION macros, which must be issued before the TERMINAL and TPROCESS macros that define the terminal table. One-byte offsets to these fields are placed in the terminal entry beginning at the TRMOPT label. The routine for the LOCOPT macro uses these offsets to locate the option field. An OPTION macro defines each field in the option table. The macro names the option field and defines the type and length of the field. The OPTION macro generates a CSECT to contain the actual option data and another CSECT to contain the field name and characteristics. Initial values for the option fields are specified by parameters of the TERMINAL or TPROCESS macros. Each option field requires one OPTION macro. The order of the fields within the option table is determined by the order in which the OPTION macro instructions are specified. The first option field is generated on a doubleword boundary. The maximum size of the option fields for a given terminal is 254 bytes plus the length of the last entry, including required boundary alignment. For each OPTION specified, space for a one-byte offset is reserved in the offsets field of the terminal table entry. When the TERMINAL or TPROCESS macro that initializes the fields of the option table is issued, a two-byte offset to the option table for this entry is generated. If initial data is supplied, the option field is generated for the terminal or process entry; if a comma is coded, the option field is not generated. If the field is generated, its offset is placed in the offset field of the terminal entry; if the field is not generated, the offset field contains X'FF' to indicate that there is no field. The X'FF' is generated only if defined option fields follow this field. Each single, group, or process entry in the terminal table contains a one-byte offset in the offset field for each OPTION macro issued. The space needed for the option table depends on the number of fields initialized by the TERMINAL or TPROCESS macros, and on the size of the fields as specified by the OPTION macros. All OPTION names are kept in a table with their numeric values. This table enables an option field named in an operator control message to be located. Section 5: Data Area Layouts 539 At assembly time the address of the option table is placed in the A VTOPTPT field of the A VT. The first two words of the option table contain the address of the end of the option table and the address of the option characteristics table, respectively. The option data immediately follows these two words. The general format of the option table is illustrated below: descriptions of the fields follow. IEOQOPT 0(0) Address of the End of the Option Table 4 (4) Address of the Option Characteristics Table 8 (8) -'- Option Data -r 7+n Length Offset Name Bytes Description 0 (0) 4 The address of the first byte (7 +n) following the option table 4 (4) 4 The address of the first byte of the option characteristics table (IEDQOPTN) 8 Option data n The actual data coded by the user with the necessary byte alignment, in the order in which the data is coded 7+n length 1 The length of the option data for the terminal or process entry that has the longest option data 540 OS TeAM PLM OS I/O Device Characteristics Table The OS I/O device characteristics table is a variable-length table that contains one 12-byte entry for each direct access device in the system. The table contains such information as the number of cylinders, the number of tracks per cylinder, the overhead for each intermediate record on the track, and the tolerance factor for each intermediate record. The OS I/O device characteristics table is used by the Checkpoint Disk Allocation routine (IGGOI949) to obtain data about the specific direct access device used for the checkpoint data set. The table is also used by the Disk Message Queue Open-Load 1 routine (IGGOI930) to determine the number of tracks per cylinder for the current data set being opened (to determine whether the device is a 2311 or a 23 14). The address of the OS I/O device characteristics table is in the CVTZDTAB field of the CVT. The unit control block contains the index to the specific entry in the table. Storage is allocated for the OS I/O device characteristics table and it is initialized at OS IPL time. The format of one entry in the OS I/O device characteristics table is illustrated below; descriptions of the fields follow. IEDQDCTD 1 (1) 0(0) 2 (2) DCTRACKS Number of Tracks Per Cylinder DCTCVL Cylinder Count Reserved 4 (4) 6 (6) 8 (8) DCTKEV Overhead Offset 0 (0) 1 (1) 2 Name 7 (7) DCTINTRO Overhead DCTE$VTE Number of Bytes Per Track 10 (A) 9 (9) DCTOLERN Tolerance Factor Reserved Bytes DCTLASTO Overhead Description 1 Reserved DCTCYL 1 Number of cylinders (2) DCTRACKS 2 Number of tracks per cylinder 4 (4) DCTBYTE 2 Number of bytes per track 6 (6) DCTINTRO 1 Overhead for each intermediate record 7 (7) DCTLASTO 1 Overhead for the last record on a track 8 (8) DCTKEY 1 Overhead if keys are not used 9 (9) DCTOLERN 1 Reserved 10 (A) DCTOLERN 2 Tolerance factor for each intermediate record Section 5: Data Area Layouts 541 (This page left blank intentionally) 542 OS TeAM PLM Process Control Block The process control block (IEDQPCB) is a fixed-length table that serves as a named control block to permit inter-region communications between application programs and the message control program. A PCB macro instruction in the MCP defines a PCB. There must be one PCB, hence one PCB macro instruction, for each active application program to be used with the MCP. I The process control block can be addressed by several means. The address of the PCB is in the PEPCBAD field of the process entry work area, the LCBDCBPT field of the application program LCB, the DEBPCBAD field of the data extent block, and the QCBDCBAD field of the destination QCB. Storage is allocated for the process control block at assembly time for the message control program. The control block is initialized partially at assembly time for the MCP and partially at the application program open time. The fields PCBBUFIN and PCBBUFO take up one byte in main storage. PCBBUFIN represents the first four bits of the byte and indicates the initial buffer request for PUT or WRITE. PCBBUFO represents the last four bits and indicates the initial buffer request for a GET/READ operation. The format of the process control block is illustrated below; descriptions of the fields follow. Section 5: Data Area Layouts 543 IEDOPCB J(O) 1 Reserved I- )(8) .... - PCBRTOCB Message Retrieval aCB 20 (14) PCBBUFIN PUT /WR ITE Buffer Request PCBBUFO Max No. of Full aCB Buffers 21 (15) 24 (18) 25 (19) I ..... PCBMH Address of the Message Handler PCBLINK Link Field PCBUCNT Use Count 28 (1C) 29 (1D) PCBBUFMX Read-Ahead Buffer Limit Reserved 32 (20) PCBLCBAD Address of the Line Control Block 36 (24) 38 (26) PCBTJID TSO Job Identifier PC8CKPT Checkpoint Offset 40 (28) PCBTC8AD Address of the Task Control Block 44 (2C) 45 (2D) PCBOFLG Flag Bit 48 (30) Reserved 49 (31) Reserved Reserved 53 (35) 52 (34) 56 (38) 57 (39) PCBRSERH Header Buffer Reserve _......60 (3C) 544 PCBBFSZE Buffer Size 58 (3A) PCBRSERT Text Buffer Reserve 59 (3B) PCBORC Open Return Code PCBWRKA Operator Control/Application Program Interface Work Area -r88 (58) 54 (36) PCBUNTCT Unit Count Reserved PCBEND End of the PCB PCBSIZE PCB Size in Bytes OS TeAM PLM Reserved - ...... Offset Name 0(0) Bytes Description 8 Reserved 8 (8) PCBRTQCB 12 Message retrieval QCB 20(14) PCBBUFIN 1 Initial buffer request for PUT or WRITE 20(14) PCBBUFO 1 Maximum number of full buffers on the read-ahead QCB 21 (15) PCBMH 3 Address of the Message Handler 24(18) PCBUCNT 1 Use count 25 (19) PCBLINK 3 Link field 28(1C) PCBBUFMX 1 Read-ahead buffer limit 3 Reserved 29(10) 32(20) PCBLCBAO 4 Address of the line control block 36(24) PCBTJIO 2 TSO job identifier 38(26) PCBCKPT 2 Checkpoint offset 40(28) PCBTCBAO 4 Address of the task control block for the related application program 44(2C) PCBOFLG 1 Flag byte; bit settings for this field are as follows: Name Bit Value Meaning PCBRORIN 0 X'80' Application program can be rolled out PCBRORIF X'7F' 0 Off PCBTSON PCBTSOF 1 X'40' Mask to specify that an application program cannot be rolled out Application program is TSO 1 X'BF' Mask to specify that an application program is Off notTSO X'20' Environment checkpoint has been taken in the MCP PCBCKPTN 2 PCBCKPTF X'OF' Mask to specify that an environment checkpoint has 2 Off not been taken in the MCP PCBRETVN 3 PCBRETVF 3 Off 45 (20) 3 Reserved 48 (30) 1 Reserved 49(31) 3 Reserved 52(34) 1 Reserved X'to' Subsequent retrieval Mask to specify no subsequent retrieval 53(35) PCBUNTCT 1 Unit Count 54(36) ~CBBFSZE 2 Buffer size 56(38) PCBRSERH 1 Header buffer reserve 57(39) PCBRSERT 1 Text buffer reserve 58(3A) PCBORC 1 Open return code 1 R~served 59(3B) 60(3C) PCBWRKA 88(58) PCBENO, 1 End of the PCB 88(58) PCBSIZE 1 Size in bytes of the PCB 28 Operator Control/application program interface work area Section 5: Data Area Layouts 545 (This page left blank intentionally) 546 OS TeAM PLM Process Entry Work Area The process entry work area (IEDQPEW A) is a fixed-length table in the message control program. This work area provides a logical extension of the process entry for the associated application program. The work area also provides storage for the control blocks for the GET and PUT Schedulers. The function of the work area varies depending upon the functions of the GET or PUT Scheduler. The address of the process entry work area is in the TRMST AT field of a terminal entry when that entry has been generated by a TPROCESS macro instruction. The address is also in the PW APEW A field of the access method work area in the associated application program. When a DCB in an application program is being opened, the OPEN/CLOSE subtask (IEDQEU) allocates main storage for and initializes the proC€!SS entry work area. The format of the process entry work area is illustrated below; descriptioos of the fields follow. Section 5: Dat;! Are;! Layouts 547 IEOQPEWA J0(O) .... - PEWARES Reserved 8 (8) PEWAISZE Count of Idles Reserved .........12 (C) _.... -- PEAQCTL AQCTL Parameter List ........ 24 (18) PEWAECBA Address of the Application Program ECB 29 (10) 28 (1C) PEWASOWA Work Area Data Length 32 (20) PEUNCT r- _ _ U~ts~~f~_ J 30 (1E) PEBFCT Buffer Limit PEWAFLG General Flag Byte PEPCBAO Address of Process Control Block 36 (24) PERCQCB Address of the QCB Associated with the ERB Below 40 (28) Reserved 44 (2C) PEWALCBA Address of the LCB 48 (30) Reserved 52 (34) PECBUF Address of First Empty Byte in Current Unit - for PUT Address of the Chain of Read-Ahead Buffers Not Processed by MH - for GET 56 (38) PEERB Element Request Block -~ 76 (4C) PEGQWKAR Address of Work Area used by Queue Reset Executor 80 (50) ~6(60) _.... 108 (6C) f-----------112(70) ... "- -C548 OS TeAM PLM PEWAELEM. Special Element I PERAQCB Read-Ahead QCB EOMSAVE Address of the Last EOM for GET _ -PEWAiic - Current Unit Address for PUT PEPSSTCB Put Scheduler STCB PEGsSTcBGet Scheduler STCB _ _ _ _ _ _ __ _ __ 120 (78) PEWADEB Data Extent Block Address 124 (7C) --- PEGFSTCB Get FIFO STCB -I- -r 132 (84) PEWAPROC Address of the Process Entry 136 (88) L Offset -- PESAVE Register Save Area -I..- Name Bytes Description J 0 (0) PEWARES 8 Reserved 8 (8) PEWAISZE 4 Count of idle (reserve) characters reserved 12 (C) PEAQCTL 12 AQCTL parameter list 24 (18) PEWAECBA 4 Address of the application program ECB 28 (1C) PEWASOWA 2 Work area data length 30 (1E) PEWAFLG 1 Gerieral flag byte; bit settings are: Name Bit Value Meaning ERBBUSY 0 X'80' ERB tposted to the disk I/O QCB CFLG 1 X'40' Closedown in progress POSTAP 2 X'20' Need to tpost the application program ERB FIRSTR 5 X'04' First-time retrieve flag MHOK 6 X'02' Buffer may be tposted to the message handler RFLG 7 X'01' Retrieve mode For the GET Scheduler: 31 OF) PEBFCT 1 Buffer limit-number of buffers that may be on the read-ahead QCB at anyone time 32 (20) PEUNCT 1 Number of units per buffer-fixed per process entry 33 (21) PEPCBAD 3 Address of the process control block 36 (24) PERCQCB 40 (28) 44 (2C) 48 (30) 52 (34) 56 76 Address of the QCB associated with the ERB below 4 Reserved 4 Address of the LCB 4 Reserved PECBUF 4 For PUT Scheduler-address of the first empty byte in the current unit; GET Scheduler-address of the chain of read-ahead buffers not processed by the message handler (38) PEERB 24 Element request block (4C) PEGQWKAR 4 Address of work area used by Queue Reset Execution if QBACK= YES coded on TPROCESS; otherwise zeros. PEWALCBA Section 5: Data Area Layouts 549 Offset Name Bytes Description 80 (50) PEWAELEM 16 Special element 96 (60) PERAQCB 12 Read-ahead QCB 108 (6C) EOMSAVE 4 Address of the last EOM for GET 108 (6C) PEWATIC 4 Current unit address for PUT 112 (70) PEPSSTCB 8 PUT Scheduler STCB 112 (70) PEGSSTCB 8 GET Scheduler STCB 120 (78) PEWADEB 4 Address of the data extent block 124 (7C) PEGFSTCB 8 GET FIFO STCB 132 (84) PEWAPROC 4 Address of the process entry 136 (88) PESAVE 56 Register save area 550 OS TeAM PLM Queue Control Block A queue control block (QCB) is used to regulate the sequential use of elements among requesting tasks. Every queue, or item, that is waiting for service in the system is associated with a OCB. There is a master destination QCB for every destination message queue. There is another type of queue control block, called a priority QCB, for each priority level applicable for each destination QCB. The first priority QCB begins at a displacement of 40 (X'28') from the beginning of the destination QCB. Note: There is no priority QCB for a TSO dedicated line. truncated at the displacement 40 (X'28'). The QCB is A QCB has three primary fields: a pointer to the element chain, a link address, and a pointer to the STCB chain. The element chain consists of any elements, other than the requesting resource on the ready queue, that the subtask represented by the STCB chain might need to process. The link field is used to point to another item when a QCB is on a higher queue. The STCB chain consists of pointers to the routines that are associated with the QCB. The address of the destination QCB is in the TRMDESTQ field of the terminal table entry which is, in turn, pointed to by the termname table entry. The address of the termname table is in the A VTRNMPT field of the address vector table. The LCBSCBDA field of the line control block points to the station control block. Within an SCB is a pointer (SCBDESTQ) to the queue control block. Storage is allocated for the QCB at assembly time. The QCB is initialized partially at assembly time and partially at open time. The formats of the master destination queue control block and the priority QCB are shown below; descriptions of the fields follow the illustrations. Section 5: Data Area Layouts 551 Master Queue Control Block DSECT: IEDQQCB 1 (1) 0(0) QCBDSFLG Flag Byte QCBELCHN Element Chain 5 (5) 4 (4) QCBLINK Pointer to the Next STCB in a Chain QCBPRI Priority 8 (8) QCBSTVTO Index to the Entry in the Subtask Vector Table 9 (9) QCBSTCHN STCB Chain 13 (D) 12 (C) QCeSLINK Pointer to the Next STCB in a Chain QCBSTPRI Priority of the STCB 18 (12) 19 (13) QCBRETCT TSO Retry Counters QCBSTAT f- - - aCBLKRLN - - Status of this QCB Lock Relative Line Number QCBINSRC Chain of Source LCBs Currently Sending Initiate Mode Msgs 16 (10) QCBEOLDT Interrupt Time 20 (14) 21 (15) QCBSCBOF Offset to the Proper SCB 24 (18) - QCBINTVL;QCBEXTO Interval for Poll Delay; Offset to EXT 28 (1C) 22(16) aCBTSOF2- Second TSO Flag Byte 26 (1A) -P3i171 acBTS0i=1- First TSO Flag Byte - - QCBMSGCT Count of Messages in this Queue QCBPREN Address of Terminal Table Entry if QCB for a Process Entry QCBPRLVL Highest Priority Level Message -- - - --~-------l:--~--------- --- - -- QCBRELLN Relative Line Number QCBDCBAD Address of the DCB ~------ 32 (20) 36 (24) SS2 - - QCBSAi"CT Sim ATTN Output Line Count QCBFLAG QCB Status Bits OS TCAM PLM - 29(10) - - -- ---- - - - -QCBLKRRN - - - Lock Relative Line Number QCBCARCT Carriage Position Count 33 (21) 30 (1E) QCBTJID TSO Job Identification 37 (25) QCBQBACK QBACK Message Chain Priority Queue Control Block DSECT: IEDPQCB 40 (28) 43 (2B) QCBDATFL QCBDNHDR Disk Record Number to Put the Next Header Received 44 (2C) Data Flags Field 47 (2F) OCBPFEFO OCBDATSQ Sequence Number Record Number of Message Previous to Last Message Serviced 49 (311 QCBINTFF Disk Record Number of the Forst Intercepted Msg - FEFO Order Continued 52 (34) 55 (37) QCBFFEFO Disk Red. No. of Forst FEFO Message or Core Red. No. OCBPREVF Record Number of Message Prior to the Message in QCBFFEFO 58 (3A) Continued 61 (3D) QCBCFHDR Core Record No. of Forst Header Appearing Continued 64 (40) QCBPRIPO Priority of thiS Priority Level QCB Offset Name 65 (41) Bytes QCBLFEFO Disk Red. No. of Last FEFO Msg Core Red. No. If Core - Only Queue In thiS Queue QCBCPVHD Core Address of Last Address Placed on thiS Queue Description The following is for the master QCB: 0 (0) QCBDSFLG 1 Flags that indicate a· specific destination QCB to the Dispatcher and which message queues data set is to receive the messages for the destination. Bit definitions are as follows: Name Bit Value Meaning QCBFQCB 6 X'02' Indicates a QCB QCBDRQQ 5 X'04' Indicates a concentrator data ready queue QCBALTMH 4 X'08' Indicates messages to alternate MH QCBREUS 3 X'10' Indicates reusable disk queuing QCBNREUS 2 X'20' Indicates nonreusable disk queuing QCBDISK 2,3 X'30' Disk queues are used QCBCORE 1 X'40' Flag for main-storage queues: 1,3 X'SO' Indicates main-storage queues with backup on reusable disk 1,2 X'60' Indicates main-storage queues with backup on nonreusable disk 0 X'08' Indicates time-sharing queues QCBTSQ 1 (1) QCBELCHN 3 Element chain pointer-contains the address of the QCB to be tposted when this QCB is removed from. the time delay queue. 4 (4) QCBPRI 1 Priority 5 (5) QCBLINK 3 Pointer to the next STCB in a chain 8 (8) QCBSTVTO 1 Index to an entry in the subtask vector table Section 5: Data Area Layouts 553 Offset Name Bytes Description 9 (9) QCBSTCHN 3 STCB chain pointer 12 (C) QCBSTPRI 1 Priority of the STCB 13 (D) QCBSLINK 3 Pointer to the next STCB in a chain 16 (10) QCBEOLDT 2 Interrupt time 18 (12) QCBRETCT 1 TSO retry counters Name Bit Value Meaning QCBCR 2 X'20' TSO Carriage Return request QCBLF 3 X'10' TSO Line Feed request QCBNL 2,3 X'30' TSO New Line request QCBEND 4 X'08' TIOC Edit Special output request QCBIEND 5 X'04' TIOC Edit Special output request or 3270 Format bit 18 (12) QCBLKRLN 1 Lock relative line number 19 (13) QCBSTAT 1 Status of this QCB; bit settings are: Name Bit Value Meaning QCBEOM 0 X'80' End of message sent QCBTRMHO 1 X'40' Terminal was held QCBBUFRD 2 X'20' Buffered terminal QCBSEND 3 X'1O' Sending to a buffered terminal QCBRECEV 4 X'08' Receiving from a buffered terminal QCBSCHDL 5 X'04' Put in the time delay queue when inactive QCBCLOCK 6 X'02' On=clock,Off=interval QCBTIME 7 X'Ol' Delay greater than 12 hours 20 (14) QCBSCBOF 1 Offset to the proper SCB for this transmission; X'OO' unless this line has buffered terminals 21 (15) QCBINSRC 3 Chain of source LCBs currently sending initiate mode messages to this destination queue 21 (15) QCBSATCT 1 Simulated attention output line count (TSO) 22 (16) QCBTSOF2 1 Second TSO flag byte; bit settings are: Name Bit Value Meaning QCBINHBN 0 X'80' Use inhibits with this terminal QCBBUFQ 1 X'40' TCAM buffer being held QCBPOSTO 2 X'20' QCB tposted to itself QCBDSSMI 3 X'10' Start MI character sent (TSO) QCBSATCH 5 X'04' Simulated attention by character QCBSATTI 6 X'02' Simulated attention by time QCBSATLC 7 X'Ol' Simulated attention by line 554 OS TeAM PLM Offset 23 (17) Name Bytes QCBTSOFI I Description First TSO flag byte; bit settings are: Name Bit Value Meaning QCBWRBRK 0 X'80' Issue a write break QCBTGET I X'40' TGET request QCBTPUT 2 X'20' TPUT request QCBNOBUF 3 X'to' Insufficient buffers QCBSATRD 4 X'08' Simulated attention read request QCBPARTO 5 X'04' Partial output line QCBDELAY 6 X'02' QCB in time delay queue QCBDISC 7 X'OI' User to be logged off 24 (18) QCBEXTO 2 Offset to the QCB extension 24 (18) QCBINTVL 2 Interval for poll delay 26 (1A) QCBMSGCT 2 Count of messages in this queue 28 (1C) QCBPREN 4 Address of the terminal table entry if this is a QCB for a process entry 28 (IC) QCBPRLVL I Highest-priority message 29 (1D) QCBLKRRN 3 Lock relative line number; link field for the QCB when it's on the time delay queue 29 (1D) QCBCARCT I Carriage position count 30 (1E) QCBTJID 2 TSO job identification 32 (20) QCBRELLN I Relative line number for the line this QCB represents 33 (21) QCBDCBAD 3 Address of the DCB 34 (22) QCBFLAG 1 QCB status bits; bit settings are: Name Bit Value Meaning QCBTSSES 0 X'80' TSO session in progress QCBNOBRK I X'40' No reverse break feature QCBREAD 2 X'20' Read has priority QCBRSRV 3 X'to' Reusability serviced QCBTERMQ 4 X'08' Queue by terminal QCBSDFFO 5 X'04' Currently sending a message QCBPROC 6 X'02' This QCB is for a process entry QCBCKPT 7 X'OI' Flag for checkpoint 3 Queue-back message chain 37 (25) QCBQBACK The following is for a priority QCB: 40 (28) QCBDNHDR 3 Disk record number of the first unit of the first buffer of the next message 43 (2B) QCBDATFL I Data flags field of the last message removed from the FEFO queue Section 5: Data Area Layouts 555 Offset 44 (2C) Name Bytes Description QCBPFEFO 3 If a terminal on this queue is held, the record number of the message previous to the first message held, otherwise the record number of the message previous to the last one marked serviced 47 (2F) QCBDATSQ 2 Sequence number of the last message removed from the FEFO queue 49 (31) QCBINTFF 3 Disk record number of the first held message in FEFO order 52 (34) QCBPREVF 3 Disk record number of the FEFO message before the message in QCBFFEFO 55 (37) QCBFFEFO 3 Disk record number of the first message to be completely received. Main-storage record address if this is a main-storage-only queue 58 (3A) QCBLFEFO 3 Disk record number of the last FEFO message received. Mainstorage record address if this is a main-storage-only queue 61 (3D) QCBCFHDR 3 Main-storage record address of the first buffer of the first message appearing in this queue 64 (40) QCBPRIPQ 1 The priority of this priority level QCB. This is X'OO' if this is the lowest priority level. 65 (41) QCBCPVHD 3 Main-storage record ad<;lress of the last address placed on this queue 556 OS TeAM PLM Queue Control Block Extension A QCB extension contains the information necessary to execute the OUTMSG subgroup for a terminal that is attached to a concentrator. There is one QCB extension for each master destination QCB, plus on for each priority QCB if priority level queuing is used (that is, QCONTROL=MSG,level). The offset from the master QCB to the QCB extension is in the QCBEXTO field of the master QCB. The format of the QCB extension is illustrated below; descriptions of the fields follow. IEDaaCBE 0(0) aCBEHDR SCBSCHDR Saved aCBECONC Address of the Concentrator Terminal Entry 1 (1) aCBEFLG Flag Byte 4(4) 6 (6) aCBEOSEa SCBOSEQ Saved aCBEDAMT Amount of Data to Take from the aueue aCBETCIN TTCIN of the Last Message from the Queue 10 (A) 9 (9) 8 (8) aCBENPLV aCBELGTH Entry Length Number of Priority Levels aCBEPRI SCBPRI Saved , 11 (B) I aCBEFEFO SCBFEFO Saved I I ---------------~--------------~ aCBEMACR I I SCBMACR Saved : 12 (C) aCBEFEFO (Cont.) ~---I aCBEaTYP ---------.1---------------______T:!.P.:.._ - ---- aCBEMACR (Cont.) 13 (D) aCBEDROB aCBEEOB SCBEOB Saved : 19 (13) 116 (10) I I I I 20 (14) 14 (E) 15 (F) aCBEDROB (Cont.) aCBELRS SCBOROB Saved Length of the CTB Characters aCBERS Start of CTB Characters Section 5: Data Area Layouts 557 Offset 0 (0) Name Bytes Description QCBEFLG 1 Flag byte-bit definitions are: Name Bit Value Meaning QCBESTAT 0 X'80' STATUS specified on QCONTROL QCBECNT 1 X'40' INTEGER specified QCBEOPL 2 X'20' Priority level QCB defined QCBEHELD 3 X'10' Temporary hold QCBESRVC 4 X'08' QCB is serviced QCBEOMSG 5 X'04' OUTMSG is pending QCBEDATA 6 X'02' Data is in the message QCBEPEND 7 X'OI' QACTION operation is pending 1 (1) QCBEHDR 3 SCBSCHDR field saved 1 (1) QCBECONC 3 Address of the conceritrator terminal entry 4 (4) QCBEOSEQ 2 SCBOSEQ field saved 4 (4) QCBEDAMT 2 Amount of data to take from the queue 6 (6) QCBETCIN 2 TTCIN of the last message from the queue 8 (8) QCBELGTH 1 Length of the entry 9 (9) QCBENPLV 1 Numoer of priority levels 10 (A) QCBEPRI 1 SCBPRI field saved 10 (A) QCBEMACR 3 SCBMACR field saved 11 (B) QCBEFEFO 3 SCBFEFO feild saved 13 (D) QCBEEOB 2 SCBEOB field saved 14 (E) QCBETYP 1 Type-bit definitions are: Name Bit Value Meaning QCBEMM 7 X'OI' Middle of the message 15 (F) QCBEDROB 4 SCBDROB field saved 19 (13) QCBELRS 1 Length of the CTB characters, a maximum of 8 characters 20 (14) QCBERS 1 Start of the CTB SS8 OS TeAM PLM Resource Control Block The resource control block (IEDQRECB) is a two-word prefix to an element that allows the TCAM Dispatcher to determine the disposition of an element and to determine the QCB to which an element will be tposted. Each element in the TCAM system is represented by a resource control block (RCB). The first word of the RCB is a pointer to the QCB with which the element is associated; the second word is a link field which, when the element is on a chain, points to the next item on the chain. The first word in the associated QCB may point to the RCB. Storage is allocated for the RCB at open time for the line group or for the application program. The RCB is initialized at open time and is modified when elements are passed in the system. There, are two types of permanent RCBs: 1. 2. Buffer RCBs Communication line RCBs Buffers are areas of main storage used to contain message data and/or control informa,tion. The first eight bytes of each buffer comprise an RCB. As with all TCAM elements, the identity of a buffer depends solely upon the queue that its representative RCB is chained to at a particular time. The buffer itself is always physically identifiable as a fixed number of bytes of main storage. If the RCB representing the buffer is c~ained into a destination QCB, the buffer is full; that is, it contains a message segment to be transmitted to a destination. When the same RCB is subsequently chained into the element chain of the buffer request QCB, the element involved is a available buffer, even though there has been no change in the physical storage location of the buffer. A line control block (LCB) represents a communication line to the TCAM MCP. There is an LCB for each line in the system. When a subtask has control of an LCB, it has control of the line; therefore, the LCB itself is treated as the resource element. The RCB is contained within the first two words of the LCB. There are two special types of RCBs: 1. Queue control block RCBs When a queue control block (QCB) appears on the ready queue, it may represent a special case in which the QCB is tposted to itself. The QCB acts as a special element rather than as a system resource, in that the first subtask on the STCB chain of the QCB gains control without an element to process. The subtask must be self-contained and able to locate any data it needs for execution. If there are no elements to process, the QCB has gained the system resourcemtime. 2. Element request block RCBs An element request block (ERB) on the ready queue can act as a request for a resource or as an actual element itself. Below is the format of a resource control block; descriptions of the fields follow the illustration. Section S: Data Area Layouts SS9 IEOORECB 0(0) 1 (1) RECBKEV Key Field 4 (4) RECBOCBA aCB Address 5 (5) RECBLINK Link Field RECBPRI Priority Offset Name Bytes Description 0 (0) RECBKEY 1 Key field 1 (1) RECBQCBA 3 Address of the QCB to which this RCB is tposted 4 (4) RECBPRI 1 Priority of this RCB 5 (5) RECBLINK 3 Address of the next RCB in the chain in which this RCB is currently located 560 OS TeAM PLM Special Characters Table A special characters table (SCT) is a variable-length table that consists of entries giving the special characters required for device I/O for a specific line group. There is one SCT for each type of line group in the TCAM system. Each SCT contains a list of the characters that the associated terminal or line group recognizes. SYSl.SVCLIB contains a special characters table for each line group in the system. The various SCTs are initialized at SYSGEN time, and at open time the TCAM Line Group Open routine uses information from the UCB and the terminal entry to load the appropriate special characters table. An SCT is located by a three-byte address in the DCBSCTAD field of the DCB for the line group. The address of the DCB for the line group is in the LCBDCBPT field of the associated LCB. An SCT is used to build channel programs. This table is also used by the error recovery procedures to retry certain text errors, and by the message handling routines to initiate on-line test procedures and to determine the message format for line control insertion. The first 28 bytes of an SCT comprise a fixed-length directory of one-byte offsets, each of which, when added to the SCT pointer in the DCB, points to a one-byte length field. This length field is followed by a special characters entry of the length specified in the length field. There are as many entries in the directory as there are different sets of special characters required by the line group. If a function is not defined for the associated terminal or line group, the offset field in the directory contains a X'OO' value. The following is an example of an SCT entry. o Offset IC +28 20 .. ~ 22 00 32 • ." ~ 34 36 ~ 00\\00 03 IF IF IF 01 16 OF OF ,I OF 01 76 01 76 01 40 , " Offset to EOT Sequence Offset to EOA Se quence Offset to Pad Cha raclers Offset to Idle Characlers Offset to Even A CK Offset to Odd ACK Offset to NAK Functions not de fined for this table Count and EOT Sequence Count and EOA Sequence Count and 15 Pad Characters Count and Even ACK Sequence _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _...1 Count and Odd ACK Sequence Count and NAK Sequence _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _-..J Section 5: Data Area Layouts 561 The following is a list of the specific types of characters that each of the offsets in the first 28 bytes of a SCT represent. Special Characters Used By 0 (0) EOT sequence I/O Generator (1) EOA sequence 1/ 0 Generator 2 (2) P AD characters I/O Generator 3 (3) Idle or reserve characters I/O Generator 4 (4) Even ACK 5 (5) OddACK 6 (6) NAK 7 (7) ENQ (inquiry) 8 (8) EOB/ETB (for BSC DLE ETB) 9 (9) DLE ETX (BSC) 10 (A) DLE STX (BSC transparent sequence) 1/ 0 1/ 0 1/ 0 1/ 0 1/ 0 1/ 0 1/ 0 11 (B) DLE/STX/ENQ (BSC transparent temporary text delay-TTD) Line End Appendage 12 (C) SOH (BSC start of header character) Line End Appendage 13 (D) On-line Test sequence Line End Appendage START MH Subtask 14 (E) WACK (BSC) Line End Appendage 15 (F) R VI (BSC reverse interrupt) Line End Appendage 16 (10) DLE EOT (BSC dial sequence) Line End Appendage 17 (11) DLE ENQ (BSC-use in abort sequence) ERP Modules 18 (12) Blocking sequence MSGFORM function 19 (13) Subblock sequence MSGFORM function 20 (14) Ending sequence MSGFORM function 21 (15) EOT sequence PCI Appendage 22 (16) EOB sequence PCI Appendage 23 (17) ETX sequence PCI Appendage 24 (18) ENQ sequence PCI Appendage 25 (19) SOH % S sequence Line End Appendage 26 (lA) SOH % E sequence Line End Appendage 27 (lB) SOH %/CANCEL/ sequence (BSC On-Line Test cancel sequence) Line End Appendage 28 (IC) SOH % C sequence Line End Appendage Offset 562 OS TeAM PLM Generator Generator Generator Generator Generator Generator Generator Station Control Block There is at least one station control block (SCB) associated with each LCB in the TCAM system. With buffered terminals there is one SCB per terminal on a line. A buffered terminal receives a block or a part of an entire transmission at a time; while that terminal is transmitting data to the output device, TCAM examines and sends to other terminals on the same line. TCAM uses the SCB for a terminal to keep track of one transmission from that buffered terminal on the line. If the terminals on a line are not buffered, or if the line with which the SCB is associated is a dial line, one terminal at a time completes its transmission. There is no need to keep track of many transmissions in parallel, so one SCB is sufficient for the entire line. In this case the address of the SCB is the LCBSCBA field of the LCB. The address of the SCB directory is in the LCBSCBDA field of the line control block. The offset to the current SCB is in the LCBSCBO field of the LCB. To obtain the address of any SCB associated with a QCB, TCAM first locates the LCB. This is done by multiplying the relative line number (in QCBRELLN) by the size of an LCB (DCBEIOBX) and adding the address of the pseudo-lOB (DCBIOBAD). This gives TCAM the address of the lOB. At a displacement of -X'20' from the beginning of the lOB is the beginning of the LCB. TCAM then multiplies the SCB size (located in the A VTSCBSZ field of the address vector table) by the offset in QCBSCBOF and adds that total to the address of the SCB directory (LCBSCBDA). This sum then points to the desired station control block. Storage is allocated for a station control block at assembly time for leased lines and at open time for dial lines. The SCB is initialized by STARTMH. The format of the station control block is illustrated below; descriptions of the fields follow. Section 5: Data Area Layouts 563 IEDQSCB 0(0) 1 (1) SCBSTATE Status BIts 4 (4) SCBSNDCT Message LImIt On Send S,de SCBDESTQ Pomter to the Destmatlon QCB 5 (5) 1-SCBRCVCT Message LImIt On ReceIve SIde 8 (8) SCBMACR First/Next IN/OUTMSG Macro to be Executed -- - - - - - - - - - - - - - - ScBMBHEN Address of the MultIple Header Buffer Entry 9 (9) SCBBKFCT ~u!l!..O!..Mel..S8!I!!..!-omlIt!!.!o!..!!re& SCBPRI Pnonty Index to the QCB 10(A)- SCBEOBSZ- I S,ze of LogIcal Blocks 12 (C) SCBSALEV S,mulated AttentIon Level ReQ SCBQTYPE 16 (10) SCBERR1 First Byte 13 (D) 18 (12) SCBERR2 Second Byte (11) SCBERR3 Third Byte 1'9 (13) SCBERR4 Fourth Byte Accumulated Count Between Blocks; Accumulated Count of Dlita Inserted 25 (19) SCBMBSSA MultIple Buffer Scan Save Area 32 (20) 33 (21) 36 (24) 37 (25) SCBCCHOR MaIO Storage Address of the Current Header 41 (29) SCBSCSEG Current Segment Bemg Read SCBCPBNO Number of Next SequentIal CPB SCBOESTL Length of Destmatlon Names SCBITBSZ Size of Logical Subblocks 1--- SCBCTBSV CTBFORM Parameters Saved 44 (2C) SCBOCHOR DIsk Address Current Header --- -- - - - -- -- - --SCBDNSEG 1-- 10 ---- SCBSCHOR Current Header Bemg Sent -- --- - -- -- - - - ---- - - SCBCLSEG MaIO Storage Address of the Last Message Segment Placed 48 (30) SCBITBAC Accumulated Count Between ITBs 49 (31) 1---- SCBCTBFL ---- Disk Address of tha Next Segment to Write to the Disk 45(20) SCBHBFNO Number of Buffers MultIple Header -- Size of CTB SCBEOBAC;SCBCTBAC 22 (16) SCBMRFSD MultIple Router First Secondary Destmatlon 40 (28) -SCBCTBSZ - - SCBERRST Error Word BIts 117 SCBBSCFM MSGFORM DynamIc B lock Changes - SCBMRFPL Address of Forward Parameter LIst 20 (14) 24 (18) _ --, I - - ---- - - Concentrator F lag Byte - 10 the Mam-5torage Queue SCBFEFO Saved FE Fa Pomter -SCBOCSEG - - -- - - - - - - - -- D,sk Address of the Current Segment 52 (34) SCBOEOB D,sk InformatIon On the Last EOB 56 (38) 60 (3C) 61 (3D) SCBSTAT1 Status Byte 64 (40) 1--- SCBSEQ Sequence Out Number f.-- - - --- - --SCBSCAN Scan Pomter Continued ----- -Contmued 564 58 (3A) SCBSRCE Message Buffer Source Saved OS TeAM PLM _ ~69(45) --- - - SCBXTRA Address of AddItIonal Records Saved - - - - - - -- - - - - - SCBCORE Address of the Record In the Core Queue Saved 66 (42) - -- - SCBSIZE Message Buffer S,ze Saved 1-- SCBTQBCK Text Segment Cham Saved - -- - ------ -- - -- SCBNTXT Address of the Next Text Segment Saved SCBCRCO Address of the Current Segment Saved --- 72 (481 75 (4B) SCBNXCPB Next CPB Number from Disk SCBNHDR Address of the Next Header Segmen,t Saved ---- -- - - -- -- - - - - - - ---- - SCBCHDR Address of the Current Header Segment Saved ------- - - - - - -- -Continued 80 (50) SCBUNTCT Count in Disk Record of First Byte of Data 81 (51) 78 (4EI SCBTCSEG Main Storage Address of Current Segment - SCBEOB Pointer to First EOB Saved SCBTRANS Current Translate Table Address 84 (54) SCBRGSAV Save Area for User MH RegIsters - if Specified on INTRO Section 5: Data Area Layouts 565 Offset 0 (0) Name Bytes Description SCBSTATE 1 Status bits: Name Bit Value Meaning SCBTRANP 0 X'80' Message in transparent mode SCBMGFMN 1 X'40' MSGFORM requested SCBMGFMF SCBSEQIN 1 X'BF' Off 1 X'40' Mask to specify MSGFORM not requested Sequence-in has been executed for the current message SCBLCKIF 2 X'DF' Off Mask to specify that a message is not being received in lock mode SCBMSGLN 4 Message lock mode SCBMSGLF 4 X'F7' Off SCBCKPT 5 X'04' Checkpoint requested SCBPRER 6 X'02' Previous EOB/ETB error SCBCODE 7 X'OI' Translation requested X'08' Mask to specify extended lock mode 1 (1) SCBDESTQ 3 Address of the destination QCB 4 (4) SCBSNDCT 1 MSGLIMIT on Send side 4 (4) SCBRCVCT 1 MSGLIMIT on Receive side 5 (5) SCBMACR 3 First or next INMSG or OUTMSG macro to be executed 5 (5) SCBMBHEN 3 Address of the multiple-buffer-header entry 8 (8) SCBPRI 1 Priority index to the QCB 9 (9) SCB8KFCT 3 Count of message length for break 10 (A) SCBEOBSZ 1 Size of logical blocks 10 (A) SCBCTBSZ 2 Size of the concentrator terminal block (CTB) 12 (C) SCBSALEV 1 Simulated attention level request (TSO) 12 (C) SCBQTYPE 1 Queuing medium for this message: Name Bit Value Meaning SCBCOREQ 1 X'40' Main-storage queues SCBREUS 2 X'20' Reusable disk queues SCBNREUS 3 X'IO' Nonreusable disk queues SCBCONC 4 X'08' Concentrator SCB 5 X'04' Reserved SCBBFTM 6 X'02' Buffered terminal SCB SCBBFMM 7 X Ol' Buffered terminal in middle of message 13 (D) SCBMRFPL 16 (10) SCBERRST 566 OS TCAM PLM 3 I Address of the FORWARD parameter list Error word bits Offset 16 (10) Name Bytes Description SCBERRI 1 First byte: Name Bit Value Meaning SCBHDRRN 0 X'80' Incomplete header SCBHDRRF X'7F' 0 Off SCBNOLOG 0 X'80' Invalid Logon message (TSO) SCBORIGN 1 X'40' Invalid origin SCBORIGF 17 18 (11) (12) SCBERR2 SCBERR3 1 X'BF' Off Mask to specify not an incomplete header Mask to specify a valid origin SCBHANG 1 X'40' Logon requests hang-up message (TSO) SCBNOTRM 2 X'20' Not a TSO terminal (TSO) SCBSEQHN 3 X'10' Sequence high SCBSEQHF 3 X'EF' Off SCBNOTSO 3 X'10' TSO is not in the system (TSO) SCBSEQLN 4 X'08' Sequence low SCBSEQLF 4 X'F7' Off Mask to specify that the sequence is not low SCBNOVAC 4 X'08' Too many TSO users (TSO) SCBNOBFN 6 X'02' Insufficient buffers SCBCUTFN 7 X'OI' CUTOFF error SCBCUTFF X'FE' 7 Off SCBRVISL 7 X'OI' Mask to specify that sequence is not high mask to specify no CUTOFF error RVI to selection on a buffered terminal terminal 1 Second byte: Name Bit Value Meaning SCBCRMIN 0 X'80' Main-storage minimum passed SCBCRMAX 1 X'40' Main-storage maximum passed SCBCODER 2 X'20' Error in dynamic translate (TSO) SCBALN 3 X'10' Automatic line numbering (TSO) SCBOLTR 4 X'08' TOTE not in the system SCBABRTN 5 X'04' Abort-BSC terminal SCBFRWDN 6 X'02' Terminal FORWARD error SCBSOHE 7 X'OI' SOH%E, C, or R message 1 Third byte: Name Bit Value Meaning SCBLOSTN 0 X'80' Message lost (overlaid) SCBLOSTF X'7F' 0 Off Mask to specify message processed Section 5: Data Area Layouts 567 Offset Name Bytes Description SCBXPI 0 X'SO' Attention: Send I (TSO) SCBTMION 1 X'40' 10 from terminal invalid SCBTMIDF 19 (13) SCBERR4 1 X'BF' Off Mask to specify that the terminal identification is valid SCBXPO 1 X'40' Attention: Send 0 (TSO) SCBSATTN 3 X'10' Simulated Attention received (TSO) SCBUSERN 4 X'OS' User error SCBUSERF X'F7' 4 Off Mask to specify no user error SCBFORMN 5 X'04' Format error-BSC message SCBATTN 6 X'02' Hardware Attention SCBXCEPN 7 X'OI' Unit exception SCBXCEPF X'FE' 7 Off Mask to specify no unit exception 1 Fourth byte: Name Bit Value Meaning SCBSLCTN 0 X'SO' Error during selection SCBSLCTF X'7F' 0 Off SCBTXTTN 1 X'40' Mask to specify no selection error Error during text transfer SCBTXTTF 1 X'BF' Off SCBCONNN 2 SCBCONNF X'OF' 2 Off SCBTRMLN 3 SCBTRMLF X'EF' 3 Off SCBCTLUN 5 SCBCTLUF X'FB' 5 Off SCBCHANN 6 SCBCHANF X'FO' 6 Off SCBUNOFN 7 X'OI' Undefined error-should not occur SCBUNOFF X'FE' 7 Off Mask to specify no undefined error X'20' X'10' X'04' X'02' Mask to specify no text transfer error Error in connect/disconnect Mask to specify no connect/disconnect error Terminal error Mask to specify no terminal error Error in the control unit Mask to specify no control unit error Error in channel Mask to specify no error in channel 20 (14) SCBMRFSO 2 Multiple routing first secondary destination 22 (16) SCBEOBAC 2 Accumulated count between blocks 22 (16) SCBCTBAC 2 Accumulated count of the data inserted 568 OS TeAM PLM Offset Name Bytes Description 22 (16) SCBDLPTR 2 Distribution list pointer 24 (18) SCBBSCFM 1 MSGFORM dynamic block changes: Name Bit Value Meaning SCBTRNSP 0 X'80' Receiving transparent SCBNONTR 1 X'40' Receiving non-transparent SCBRCVTX 2 X'20' ETX received from BSC SCBCNTEN 3 X'IO' Switch for Scheduler to determine the next operation on the line SCBNOEOT 6 X'02' BSC dial-no EOT before read SCBMLMTN 7 X'OI' MSGLIMIT has been exceeded SCBMLMTF 7 X'FE' Off Mask to specify that MSGLIMIT is not exceeded 25 (19) SCBMBSSA 7 Multiple buffer scan save area 32 (20) SCBCPBNO 1 Number of the next sequential CPB to be read from disk 33 (21) SCBDCHDR 3 Disk address of the current header 36 (24) SCBDESTL 1 Length of destination names 37 (25) SCBCCHDR 3 Main-storage address of the current header 40 (28) SCBITBSZ 1 Size of logical sub blocks 40 (28) SCBCTBSV 1 CTBFORM parameters saved 41 (29) SCBSCSEG 3 Current segment being read 41 (29) SCBDNSEG 3 Disk address of the next segment to write to the disk 44 (2C) SCBHBFNO 1 Number of buffers in the multiple-buffer header 45 (2D) SCBSCHDR 3 Current header being sent 45 (2D) SCBCLSEG 3 Main-storage address of the last segment placed in the main-storage queue ,48 (30) SCBITBAC 1 Accumulated count between ITBs 48 (30) SCBCTBFL I Concentrator flag byte 49 (31) SCBFEFO 3 Saved FEFO pointer 49 (31) SCBDCSEG 3 Disk address of the current segment 52 (34) SCBDEOB 4 Disk information on the last EOB Note: The section in bytes 54-79 is a copy of the last buffer prefix processed. 54 (38) SCBSRCE 2 Message buffer source 58 (3A) SCBSIZE 2 Message buffer size 60 (3C) SCBSTATI I Status byte-concentrator support only: Name Bit Value Meaning SCBCBGN 0 X'80' Concentrator message beginning SCBCEND 1 X'40' Concentrator message end SCBNIDLE 2 X'20' Buffers should not be put in the idles loop yet Section 5: Data Area Layouts 569 Offset Name Bytes Description SCBNOPST 3 X'lO' Buffers should not be tposted 61 . (3D) SCBXTRA 3 Address of additional records 61 (3D) SCBCORE 3 Address of the record in main storage 64 (40) SCBOSEQ 2 Sequence-out number 64 (40) SCBSCAN 2 Scan pointer address 66 (42) SCBTQBCK 3 Text segment queue-back chain 66 (42) SCBNTXT 3 Address of the next text segment 69 (45) SCBCRCD 3 Address of the current segment 72 (48) SCBNHDR 3 Address of the next header segment 72 (48) SCBCHDR 3 Address of the current header segment 75 (4B) SCBNXCPB 1 Next CPB number from disk; if zero, no multiple routing 75 (4B) SCBCCSEG 3 Main-storage address of the current segment 78 (4E) SCBEOB 2 Pointer to the first EOB 80 (50) SCBUNTCT 1 Count of the first byte of data in the disk record 81 (51) SCBTRANS 3 Current translation table address 84 (54) SCBRGSAV 4 Save area for user MH registers if specified on INTRO 570 OS TeAM PLM Subtask Control Block A subtask control block (IEDQSTCB) is a variable-length table that represents a routine that performs the work of the TCAM system. The purpose of an STCB is to cause a routine to De executed. The TCAM Dispatcher uses the STCB to determine the entry point of a subtask that is waiting for work and uses the activation key of the STCB to determine the type of STCB present. The address of the STCB is in the third word of the QCB. Determination of the actual address of the subtask varies according to the type of STCB. When the address is available, the TCAM Dispatcher exits to the routine itself. For each attached task (Operator Control, On-Line Test, Checkpoint, and FE Common Write) there is a special QCB that has an event control block (ECB) in the second word. The TCAM Dispatcher posts the ECB when the attached task is to vie for control of the system. An element that is to be passed to the attached task is chained into the QCB element chain. Storage is allocated for the STCB at various times depending upon the type of QCB containing the STCB address. If the QCB is a destination QCB, storage is allocated for the STCB at assembly time. If the QCB is in a line control block or is a read-ahead QCB, storage is allocated for the STCB at open time for the line group or for the application program DCB. If the QCB is in the AVT, storage is allocated at assembly time. In cases where the QCB is a prefix to a module, storage is allocated for the STCB at assembly time. In the same manner, initialization of the STCB depends upon the related QCB. If the QCB is a destination QCB, the STCB is initialized at assembly time but is modified at open time for the DeB to which it is related. If the QCB is in the LCB or is a read-ahead QCB, the STCB is initialized at open time. If the QCB is in the A VT, the STCB is initialized at assembly time and at link-edit time. If the QCB is a prefix to a module, the STCB is initialized at assembly time. The following figure shows the formats and attributes of the different types of STCBs. Section S: Data Area Layouts S71 Attributes: rWQ~byte srca • • acs hos only one SiCB • STca is never chained to any other GlCS MCPL I 04 Glce locoted in the AVr Or ,;$Sembled in moin dotage 00 Subtosk entry point ~ "our-byte STCa • aCB is port of the subtask code • QCB and STCa dre combined - the STCa is the third wdrd of the QCe • acs Six~byte SiCa has only one STCB • STCS is never chained to any other QCa • SiCS is always the lost STCB in'the STCS chain of 0 QCa • STCa can appear in any position of the STCII chain of a MCPL 0$ Priority 00 I ~~--~~----~~ ~i9ht-byte (Full) MOL STCS Priority ace Link address C $ubtask entry pOin~ Below is the format of a full (eight-byte) STCB; descriptions of the fields follow the illustration. IEDQSTCS 1(1) 0(0) STCBVTO Activation Key 4 (4) STCBPRI Priority Offset Reserved 5 (5) STCBLINK Link Field Name Bytes Description 0 (0) STCBVTO 1 Activation key 1 (1) STCBINDX 1 Index to Common Buffer data area 2 4 (2) (4) STCBTCIN 2 TTCIN of destination terminal STCBPRI 1 Priority 5 (5) STCBLINK ~ Link address-address of the next STCB in this STCB chain S72 OSTCAMPLM Terminal Table The terminal table (IEDQTRM) is a variable-length table that contains blocks of device-dependent information about each terminal in the TCAM system; each such block is called a terminal entry. There are six types of terminal entries (shown below), each of which is used for a different type or group of terminals depending upon the configuration of the teleprocessing system. The terminal table entries are assembled and initialized according to the specifications of the TERMINAL, TLIST, TPROCESS, TTABLE, LOGTYPE, and OPTION macro instructions. The size, structure, and contents of the terminal table are based on the information provided by the user in the above-listed macros. Each entry in the terminal table begins on a fullword boundary. The terminal entries are located through the address portion of the entries in the termname table. ITABLE is specified once and defines the limits of the table. One TERMINAL macro instruction is issued to create each single or group entry. OPTION macro instructions and data supplied by the TERMINAL and TPROCESS operands caused storage to be allocated for any option fields to be included in the optio!1 table for a terminal entry. The option fields can contain information needed to perform various optional functions provided by TCAM or the user. The initial contents of each option field are specified by the TERMINAL or TPROCESS macro instruction that defines the entry. TLIST defines a distribution or cascade entry. TPROCESS creates an entry for an application program. LOGTYPE creates an entry for logging messages. If the user codes an OPTION macro, three fields in the terminal table entry are initialized, and bit 6 in the TRMST ATE field is set to 1. The TRMOPNO field contains the number of option fields specified for the entry. The option offsets are positional in nature, and the number of offsets is equal to all the offsets up to and including the last option specified by the user. The next field, TRMOPTBL, contains the offset to the beginning of the option table data for this terminal entry. The third field, TRMOPT, is the first of the actual option offsets to the option table data, the beginning of which is pointed to by the TRMOPTBL field. Each option offset is a one-byte index to the corresponding option table data. There is an option offset for each possible option up to and including the last option specified for this terminal entry. If a particular option within that span is omitted, that option offset field is initialized to X'FF'. The device-dependent fields of an entry in the terminal table are used to indicate such information as the dial digits or addressing characters of the terminal. The specific type of information in these fields is noted in the two bytes of the devicedependent field flags field (TRMDEVFL) of the terminal table. The actual entries in the device-dependent fields consist of one byte, which contains the length of the entry, followed by the actual information. The location of the device-dependent field is indicated by the bit settings in the first byte of the terminal table. If bit 6 (TRMOPTFN) in the status byte (TRMSTATE) is off, the device-dependent field is located at + 17 (X' 11 ') in the table. If bit 6 is on, indicating that there are option offset fields in the table, the device-dependent field starts at location 20 (X'14') plus the value in the number of option offsets field (TRMOPNO). Each option offset is one byte long, and the first option offse~ is located at offset 20 in a terminal entry; the device-dependent field starts immediately after the last option offset. Section 5: Data Area Layouts 573 There is one terminal entry for each terminal in the system, and each terminal table entry is referred to by a pointer from the termname table, and each terminal entry beings on a fullword boundary. Single Entry A single entry in the terminal table defines a single terminal or component. A single entry must be defined for each terminal or component that can enter only, accept only, or both enter and accept messages (except for a terminal in a group entry). If a terminal component is to be selected individually, the component must have a separate single entry. Bits 0 through 2 of byte 0 of the control information field are set to binary 000 to indicate a single (or group) entry. If there is no option area for an entry, the offset and count fields are omitted. The required selection sequence field contains the selection characters for the terminal and, if it is a switched terminal, its telephone number and the number of dial digits. A single entry in the terminal table is defined by a TERMINAL macro. Group Entry A group entry represents a prespecified group of terminals on a line that has special equipment to permit simultaneous transmission of a message to the group. A single set of addressing characters is used to contact the group. Several combinations of prespecified terminals can be grouped for this purpose. Each group has a group terminal name and a corresponding group entry in the terminal table. A group entry in the terminal table has the same format as a single entry, except that, since the entry is for output transmissions only, the input sequence counter field is not used. A group entry is defined by a TERMINAL macro. Distribution Entry A distribution entry contains a list of pointers to single, process, or group entries. The pointers are grouped under the entry name. When a message contains a distribution entry name as its destination code, TCAM sends the message by separate transmissions to all destinations indicated by the list. Each terminal on the list must have a corresponding single or group entry in the terminal table. The TCAM MCP cannot receive messages through the distribution list-method. The format of a distribution entry in the terminal table is the same as that for a single entry, except that the setting of the status bits is binary 010, and the input sequence number field (bytes 4 and 5) contains a count of the entries in the list. Two-byte pointers to the single or group entries that make up the list follow this count field. For distribution and cascade entries, bytes 1 to 3 contain the address of a distribution or cascade destination QCB. A distribution entry in the terminal table is defined by a TLIST macro. Caseade Entry A cascade entry is identical in appearance to a distribution entry, but is handled differently. The message is queued for the available terminal that has the fewest messages queued for it in the list. An available terminal is one that is currently 574 OS TeAM PLM capable of accepting a message. The terminal must not be held. To be available, a dial terminal must not be involved in a time delay. If more than one of the available terminals have the same number of messages queued and that number is the fewest number of messages queued, the message is sent to the first available terminals on the list. If the message cannot be sent to any terminal at this time, it is queued for the first terminal in the list. The TCAM MCP cannot receive messages through a cascade list. The format of a cascade entry is the same as that for a single entry, except that the setting of the status bits is binary 010 and the input sequence number field contains a count of the entries in the list. Two-byte pointers to the single or group entries that make up the list follow this count field. A cascade entry in the terminal table is defined by a TLIST macro. Process Entry A process entry in the terminal table represents a queue of messages for an application program. There must be a process entry for each queue to which an application program can issue a GET or READ macro and at least one for all the PUT or WRITE macros from the same application program. The format for a process entry in the terminal table is the same as that for a single entry, except that the setting of the status bits is binary 001. Also, for a GET/READ operation, bytes 1 to 3 contain the address of the destination QCB. A process entry is defined by a TPROCESS macro. Logtype Entry A !ogtype entry in the terminal table represents a queue of messages for a logging medium. The setting of the status bits for a log entry is binary 011. A logtype entry is defined by a LOGTYPE macro. Line Entry A line entry in the terminal table defines a switched line that is used for input operations. A line entry contains the device characteristics for stations that call in on a switched line before supplying identification and for stations that call in and never supply identification data. The format of a line entry is the same as for a single or group entry except that the setting of the status bits is binary 100. A line entry is defined by the UTERM operand on a TERMINAL macro. The formats of the various types of terminal entries are illustrated below; descriptions of the fields follow. Section S: Data Area Layouts S7S (This paae left blank intentionally) 576 OS TeAM PLM TERMINAL TABLE ENTRY TYPE Offset Single and Line o Status byte 4 Input sequence number Destination aCB address TRMSTATE TRMDESTO 6 8 Output sequence number Alternate destination offset 10 (A) Device dependent field flags 12 (C) Number start I/Os 14 (E) Number temporary errors TRMINSEO TRMOUTSO TRMALTD TRMDEVFL TRMSIO TRMTEMPR 15 (F) 16 (10) 17 (11) 18 (12) 20 (14) Intensive mode recording indicator OCT index Number option offsets Start of option offsets TRMSENSE TRMCHCIN TRMOPNO TRMOPTBL Option Table offset 20 + n Start of device dependent fields TRMOPT Offset Group o Status byte Destination aCB address TRMSTATE TRMDESTO 8 6 4 Unused X·OOOO· Output sequence number 10 (A) Alternate Device desti nation dependent offset field flags 12 (C) 14 (E) Number start I/Os Number temporary errors TRMOUTSO TRMALTD TRMDEVFL TRMSIO TRMTEMPR 15 (F) 16 (10) 17 (11) Number option offsets 18 (12) 20 (14) Option Table offset Start of option offsets Intensive mode recording indicator OCT index TRMSENSE TRMCHCIN TRMOPNO TRMOPTBL 20 + n Start of device dependent field!> TRMOPT Offset Distribution o 4 6 Status byte Distribution List aCB address Number entries in the list Offset to the first entry in the list TRMSTATE TRMDESTO TLISTCNT TLISTEN Offset Cascade o Status byte TRMSTATE 6 4 Cascade list aCB address TRMDESTG Number entries in the list Offset to the first entry in the list TLlSTCNT TLISTEN Offset Process o Status byte 4 Process aCB address TRMSTATE TRMDESTO Input sequence number 6 8 Output sequence number Alternate desti nation offset 101A) Device dependent field flags TRMINSEQ TRMGUTSO TRMALTD TRMDEVFL 12 (C) 16 (10) 17 (11) 20 (14) 18 (12) Start of option offsets Option Table offset Process Entry Work Area address Work unit record delimiter character TRMSTAT TRMCHCIN TRMOPNO TRMOPTBL Number Option offsets TRMOPT Offset Logtype o 4 Status byte Destination aCB address TRMSTATE TRMDESTO 10 (A) 8 6 Unused Unused Unused X·OOOO X·OOOO· X·OOOO· Device dependent field flags 12 (C) Unused x·oooo· 14 (E) Unused x·oo· 15 (F) Unused x·oo· 16 (10) Unused x·oo· 17 (11) Unused X·OO· 18 (12) Buffer size (2 bytes) TRMDEVFL Section 5: Data Area Layouts 577 In.fln fOldout page 571 at end of book. IEDQTRM 0(0) 1 (1) TRMSTATE Status Byte TRMDESTQ Destination aCB Address 4(4) f-- - - - ------ TRMINSEQ Input Sequence Number TRMALNCT Automatic Line Number Count --- - -- - -- - - -- -- '6(6) I TRMOUTSQ Output Sequence Number I TLiSTEN First TLiST Entry Address I TLSTCNT TLiST Count of Entries I 10 (A) 8 (8) TRMALTD Alternate Destination Termname Table Offset TRMDEVFL Device Dependent Field Flags TRMSTAT Error Statistics TRMSIO Start I/O Count 17 (11) 12 (C) 16 (10) TRMCHCIN OCT Index 14 (E) 15 (F) TRMTEMPR Temporary Error Count TRMSENSE Intensive Mode Recording Indicator 18 (12) TRMOPTBL Option Table Offset TRMOPNO Option Field Count 20 (14) -I-. T Offset 0 _L- TRMOPT Start of Option Offsets (0) Name Bytes Description TRMSTATE I Status byte; bit definitions are: Name Bit Value 0-2 T Meaning Type of entry: B'OOO' Terminal, single, or group B'OOI' Process B'OlO' Cascade or Distribution list B'IOO' Line B'lOl' Log 3 Reserved TRMACPTN 4 X'08' Terminal can accept an entry for processing TRMHELDN 5 X'04' Terminal is held or a process entry is SYNC=YES TRMOPTEN 6 X'02' Option fields are used TRMSCNYN 7 X'OI' Secondary operator control terminal spe~ified I (1) TRMDESTQ 3 Address of the destination QCB for the entry or of the distribution or cascade entry QCB. 4 (4) TRMINSEQ 2 Input sequence number 4 (4) TLISTCNT 2 Count of entries in a TLIST 6 (6) TRMOUTSQ 2 Output sequence number Section 5: Data Area Layouts 579 Offset Name Bytes Description 6 (6) TLISTEN 2 First entry in a TLIST 8 (8) TRMALTD 2 Termname table offset of the alternate destination 10 (A) TRMDEVFL 2 Device-dependent field flags to indicate which fields are present Name Bit Value Meaning 0 X'8000' BUFSIZE specified 1 X'4000' Dial digits present 2 X'2000' Addressing characterspresent 3 X'tOOO' BLOCK specified 4 X'0800' SUBBLOCK specified 5 X'0400' Transparent block length specified 6 X'0200' BFDELAY specified 7 X'0100' Display device TRMCONC 8 X'0080' Concentrator or a terminal attached to a concentrator TRMLMD 9 X'0040' LMD= YES specified 10 X'0020' RETRY specified 11-15 Reserved 12 (C) TRMSTAT 12 (C) TRMSIO 2 Number of START I/O instructions 14 (E) TRMTEMPR 1 Number of temporary errors 15 (F) TRMSENSE 1 Intensive mode recording indicator 16 (10) TRMCHCIN 1 Index to the device characteristics table for this entry 17 (11) TRMOPNO 1 Number of option fields for this entry 18 (12) TRMOPTBL 2 Offset to the option table for this entry 20 (14) TRMOPT 1 Start of option offsets 580 OS TeAM PLM Error statistics Termname Table The termname table has an entry that contains the name and terminal entry address for each terminal, terminal component, application program, list of terminals, and logging media in the TCAM system. These entries are generated at assembly time from the TERMINAL macros in the order in which the macros are coded. At MCP initialization time the entries are sorted into collating sequence to permit binary searches for locating terminal names and for finding terminaldependent information. The beginning of the termname table contains code (the Termname Table CodeIEDQTNT) that is used to convert the relative position field in the invitation list to the address of the corresponding entry in the terminal table. The code can be executed as a subroutine by other TCAM modules. Following the code there are two bytes of control information for the Binary Search routine. The next fields in the termname table contain the number of bytes in the name of an entry, the address of the middle entry in the table, and the total number of entries in the table .. Each entry consists of the terminal name and the three-byte address of the terminal table entry for that terminal. The length of the field for the terminal name is determined by the longest terminal name; each terminal name field is as long aS,the longest name (the names are padded with blanks on the right, if needed). The address of the termname table is in the A VTRNMPT field of the AVT. However, the individual termname table entries are referred to by the relative position offsets that precede the control data in each invitation list. When a TCAM module needs to find a specific entry in the terminal table, the module activates the termname table code, which translates the relative position offset in the invitation list to the address of the corresponding terminal table entry. Section 5: Data Area Layouts 581 IEOOTNTD 0(0) TNTCODE Enabled Termname Table Code -"" -- -r'" 38 (26) TNTSRCHX Search Extent 40 (28) 41 (29) TNTENLEN Length of a Name TNTMIDEN Middle Entry Address 46 (2E) 44 (2C) TNTLEN Count of Table Entries ...... _.... TNTDCODE Disabled Termname Table Code (36 Bytes) -- 82 (52) TNTFIRST Start of Table Entries T T Format of a Termname Table Entry: Terminal Table Address I I Name .. Maximum of 8 Bytes Offset - 3Bytes~ Name Bytes Description 0 (0) TNTCODE 38 Enabled termname table code (IEDQTNT) to convert the relative offset to a terminal table address 38 (26) TNTSRCHX 2 Binary search extent-used by the Binary Search routine (IEDQA1) 40 (28) TNTENLEN 1 Length in bytes of the name field of an entry 41 (29) TNTMIDEN 3 Address of the middle entry in the termname table-used by the Binary Search routine (IEDQAl) 44 (2C) TNTLEN 2 Total number of entries in the termname table 46 (2E) TNTDCODE 36 Disabled termname table code 82 (52) TNTFIRST 582 OS TCAM PLM The beginning of the termname-table entries Test Event COIInl Block (TTECB) The test event control block (TTECB) is used by modules IEDQWS and IEDQW44 in reporting the results of an I/O operation back to the OLT. This block contains the CSWs, condition codes, I/O addresses, and sense information passed by TOTE; it is of variable length. Sectien 5: Data Area Layouts 583 TTECB TECBFDCT TECIFLO. Flegs 8 (8) TECaSNLN TICI'DLN Number of event Fields 4(4) 2 (2) 1 (1) 0(0) Lengtl'1 of Senae Fitld Length of Event Pielc/, 6 (&) TI~aSNCT $(6) TlCISNOe NO. of Sen••• OccL,lrrlld No. of Stn .. Pitld, TECIFD01 1st Event Field As many additional identical fields as specified in TECIFDOT S84 OS .TCAM PUI 7 (7) TIECBIVOC No. of events Occurred Offset Name Bytes Description 0 (0) TECBFDCT 1 Number of event fields 1 (1) TECBFDLN 1 Length of event fields 2 4 (2) (4) TECBSNLN 2 Length of sense field TECBFLGS 1 Flags 5 (5) TECBSNCT 1 Number of sense fields 6 7 (6) (7) (8) TECBSNOC 1 Number of senses occurred TECBEVOC 1 Number of events occurred TECBFDOI 4 1st event field 8 Section S: Data Area Layouts S8S (This page left blank intentionally) 586 OS TeAM PLM TOTE Resource Control Block The TOTE resource control block (RESPL) is used in communication between TOTE's resident module (IEDQW A) and the resource management module (IEDQWB) for the initialization of an on-line test. RESPL contains the addresses of the first and the last OLTCB in the active queue, the last TOTE termname table entry, the current storage blocks, TOTE's extended area used for dummy TTEs or QCBs, the end-of-task exit routine, the TOTE service manager routine, and the queue handlers routine. It is assembled as part of the resident module, IEDQWA. Section 5: Data Area Layouts 587 RESPL 0(0) RESTECBS Parm List for TOTE WAIT 4 (4) 5 (5) 8 (8) RESTECB1 Subtask Request ECB 12 (C) RESOBOCB OLTCB Queue Control Block f- ......- --- - ~ - - - - - - - - - - - --- --- - RESOBFWD OLTCB Queue Forward Pointer 16 (10) RESOBBKW OL TCB Queue Backward Pointer 20 (14) RESTTLST Last TOTE TNT Entry Address 24 (18) 26 (1A) RESBKAVL Current Free Storage Blocks RESBKTOT Total TOTE Storage Blocks 28 (1C) RESEFOCB Extended Area Free Queue Control Block 32 (20) 33 (21) RESTNTCT No. of TNT Entries RESDMTTE Pointer to TOTE Extended Area for TTEs and QCBs ·36 (24) RESETXRA End of Task Exit Routine Address 40 (28) RESSMGRA Service Manager Entry Address 45 (20) 44 (2C) RESIOLTS Max. Simult. OLTs 46 (2E) RESWBFNC IEOQWB Function Request Code 48 (30) 47 (2F) RESFLGS TOTE Resident Flags Unused RESTRMO TOTE TRM Queue Control Block 52 (34) .53 (35) RESTNTPT Address of Start of TOTE TNT Entries Unused 56 (38) -- - - -- - - 60 (3C) - - - - RESOHTBL Queue Handler -- -- - - - - - RESREMFR Address to Remove Element From Front Queue Handler RESREMEL Address to Remove Specified Element Queue Handler 588 OS TeAM PLM ,-.- - - - - RESPL 64 (40) RESAIl)Il)ND Address to Add Element to End Queue Hendler 68 (44) RESADDAF Address to Add Element After Another Specified Element Queue Handler Section 5: Data Area Layouts 589 Offset Name Bytes Description RESTECBS 4 Parm list for TOTE WAIT 0 (0) 4 (4) 1 5 (5) 3 8 (8) RESTECBl 12 (C) RESOBQCB 12 (C) RESOBFWD 4 OLTCB queue forward pointer 16 (10) RESOBBKW 4 OLTCB queue backward pointer 20 (14) RESTTLST 4 Last TOTE TNT entry address 24 (18) RESBKTOT 2 Total storage blocks for TOTE 26 (tA) RESBKAVL 2 Current free storage blocks 28 (tC) RESEFQCB 4 Extended area free queue control block 32 (20) RESTNTCT 1 Total number of TNT entries 33 (22) RFSDMTTE 3 Pointer to TOTE extended area for TIEs and QCBs 36 (24) RESETXRA 4 End of task exit routine address 40 (28) RESSMGRA 4 Service manager entry address 44 (2C) RES#OLTS 1 Maximum simultaneous OLTs 45 (2D) RESWBFNC 1 IEDQWB function request code 46 (2E) RESFLAGS 1 TOTE resident flags Name Bits Value Meaning RESINIT 0 X'80' TOTE initialized flag 4 Subtask request ECB OLTCB queue control block 47 (2F) 48 (30) 52 (34) 53 (35) RESTNTPT S6 (38) RESQHTBL 56 (38) RESREMFR 4 Address to remove element from front queue handler 60 (3C) RESREMEL 4 Address to remove specified element queue handler 64 (40) RESADDND 4 Address to add element to end queue handler 68 (44) RESADDAF 4 Address to add element after another specified element queue handler 590 RESTRMQ OS TeAM PLM 1 Unused 4 TOTE TRM queue control block 1 Unused 3 Address of start of TOTE TNT entries Queue handlers TSO TSINPUT Control Block The TSO TSINPUT control block is generated as a queue control block (QCB) for the time-sharing subtask and as an extension of the address vector table (A VT) for time-sharing support. The DSECT names of the TSINPUT fields are shown in the following layout. A more detailed description of the fields and the data they contain follows the data area layout. Section 5: Data Area Layouts 591 TSINPUT 1 (1) 0(0) TSIELCHN aCB Element Chain TSIFLAG 4 (4) TSIPRI Priority 8 (8) 5 (5) TSLINK Pointer to Next aCB in Chain TSINPUT Address of IEDAYI (TSINPUT) 12 (C) TSISTAE Address of IEDAYT (STAE) 16 (10) TSIEDIT Address of IEDAYE (Edit Routine) 20 (14) TSIHANG Address of IEDAYH (Hangup Routine) 24 (18) TSISIMAT Address of IEDAYS (Simultaneous Attention) 28 (1C) TSISCHED Address of I EDA YZ 32 (20) 36 (24) 40 (28) 44 (2C) 48 (30) 592 OS TeAM PLM TSIBUFQ Chain of Held TCAM Buffers TSITSBQ Chain lof TSBS Holding TCAM Buffers TSIABEND ECB Posted When TSC Abends TSIMSGEN Address of IEDAYM (MSGEN Routine) TSIHALT Address of IEDAYF (Halt I/O) aCB For Asynchronous Time Delay aCB Removal Routine 52 (34) --- - --- - - 56 (38) TSIDVaCB aCB is Always Posted to Itself --- - - - - -- - ....- - TSIDVaFG Flag Byte - - - - - ---- 57 (39) TSIDVPRI Priority TSIDVLINK Pointer to Next Element 60 (3C) TSIDYDLY Address of IEDAYY 64 (40) TSIABLST r- - 64 (40) - - - - - 65- (41)- - TSIABACT AaCTL Action Code - - - - - -- - - - - - - - ---- TSIABWDI First Word of Parm List Section 5: Data Area Layouts 593 QCB for TS Input Abend Interface 68 (44) TSIABQCB --- - - - I- - 72 (4S) TSIABPTV Special Element Priority - - - - - - - - - - - - -----:----- TSIABWD2 Second Word of Parm List 73 (49) TSIABLNK Special Element Link Field 76 (4C) TSIABVCN STCB Address SO (50) 84 (54) TSIDEST Address of TCAM Destination Scheduler TSICPBI Address of TCAM CPB Initialization Routine 88 (5S) TSICPBC Address of TCAM CPB Cleanup Routine 92 (5CI TSIATTEN Address of IEDAYA (Attention Routine) 96(60) TSITSDST Address ot TSO Destination Scheduler 100 (64) TSI3270 Address of IEDA YB (3270) ,, 594 OS TeAM PLM Offset 0 (0) Name Bytes Description TSIFLAG 1 Flag byte Name Bits Value Meaning TSIQCB 6 X'02' Flag indicating a OCR TSIPOST 4 X'08' OCB posted to itself 1 (1) TSIELCHN 3 OCB element chain 4 (4) TSIPRI 1 Priority 5 (5) TSILINK 3 Pointer to next OCB in chain 8 (8) TSINPUT 4 Address of IEDAYI (TSINPUT) 12 (C) TSISTAE 4 Address of IEDAYT (STAE) 16 (10) TSIEDIT 4 Address of IEDA YE (Edit Rtn) 20 (14) TSIHANG 4 Address of IEDAYH (Hangup) 24 (18) TSISIMAT 4 Address of IEDA YS (Simult. attn) 28 (1C) TSISCHED 4 Address of IEDAYZ (Scheduler) 32 (20) TSIBUFQ 4 Chain of held TCAM buffers 36 (24) TSITSBO 4 Chain of TSBS holding TCAM buffers 40 (28) TSIABEND 4 ECB posted when TSC abends 44 (2C) TSIMSGEN 4 Address of IEDA YM (MSGEN Rtn) 48 (30) TSIHALT 4 Address of IEDAYF (Halt I/O) 52 (34) TSIDYOCB 4 OCB is always posted to itself 52 (34) TSIDYQFG 4 Flag byte Name Bits Value Meaning TSIDYOB 6 X'02' Flag indicating a OCB TSIDYPOS 4 X'08' QCB posted to itself 56 (38) TSIDYPRI 1 Priority 57 (39) TSIDYLNK 3 Pointer to next element 60 (3C) TSIDYDLY 4 Address of IEDA YY 64 (40) TSIABLST 64 (40) TSIABACT 1 AQCTL action code 65 (41) TSIABWDI 3 First word of parameter list 68 (44) TSIABQCB 68 (44) TSIABWD2 4 Second word of parameter list 72 (48) TSIABPTY 1 Special element priority 73 (49) TSIABLNK 3 Special element link field 76 (4C) TSIABVCN 4 STCB address 80 (50) TSIDEST 4 Address of TCAM destination scheduler 84 (54) TSICPBI 4 Address of TCAM CPB initialization routine 88 (58) TSICPBC 4 Address of TCAM CPB cleanup routine Section 5: Data Area lafouts 595 Offset Name Bytes Description 92 (SC) TSIATTEN 4 Address of IEDA YA attention routine 96 (60) TSITTSDST 4 Address of TSO destination scheduler TSI3270 4 Address of IEDAYB (3270) 100 (64) 596 OS TeAM PLM Section 6: Diagnostic Aids seD Error Word Usage by Module SCBERRl (Byte 0) Bit Bit Indication (On/Off) Module Action o Is/is not an incomplete header 1 2 3 4 S 6 7 Is/is not an invalid origin TSO is not/is in system Is/is not high sequence Is/is not low sequence Message is not/is sent/received Are not/are sufficient buffers Is/is not a cutoff error RVI to a selection device for BSC buffered terminals Checked by IEDQAT and IEDQA4. Checked by IEDQBD for IN/OUT message macro instructions. Set by IEDQA4. Checked by IGCD910D. Checked the same as bit O. Set by IEDQAM. Checked the same as bit o. Checked the same as bit O. Set by IEDQAH. Checked the same as bit O. Set by IEDQAH. Checked the same as bit o. Checked the same as bit o. Set by IEDQAK. Checked the same as bit o. Set by Line End Appendage. Checked by the user-coded macros. SCBERRl (Byte l) Bit Bit Indication (On/Off) Module Action 0 Main storage minimum is/is not exceeded 1 Main storage maximum is/is not exceeded 2 Error is/is not in a dynamic translation operation Is/is not automatic line numbering TOTE is not/is in the system or a TOTE request is not honored BSC abort sequences are/are not received Forward terminal error Set by IEDQBD from A VTSYSER. Checked by IEDQBD for IN/OUT message macro instructions. Checked by IGCD910D. Set by IEDQBD from A VTSYSER. Checked by IEDQBD for IN/OUT message macro instructions. Checked by IGCD910D. Set and checked the same as bit 1. 3 4 S 6 7 Message is/is not SOH% E, C, orR Set and checked the same as bit 1. Set by IEDQAA. Checked by the error macros. Set by Line End Appendage. Checked by the error macros. Set by IEDQA4 and IEDQAS. Checked by the INMSG macro. Set by IGE0904H. Checked by the error macros. SCBERR3 (Byte 1) Bit Bit Indication (On/Off) Module Action o Message is lost/processed 1 TerminalID is invalid/valid Checked by IEDQBD for IN/OUT message macro instructions. Checked by IGCD910D. Set by IEDQFA and IEDQFQ for a lost message. Checked by IEDQBD for IN/OUT message macro instructions. Checked by IGCD910D. 905 Section 5: Data Area Layouts 597 Bit Bit Indication (On/Off) Module Action 2 Terminal is inoperative/ operative Simulated attention is/is not received User error has/has not occurred Is/is not format error in BSC message Is/is not hardware attention Is/is not unit exception Checked by IEDQBD for IN/OUT message macro instructions. Checked by IGCD91OD. Checked the same as bit 2. 3 4 5 6 7 Checked the same as bit 2. Checked the same as bit 2. Checked the same as bit 2. Set by IGG019RO. Checked the same as bit 2. Set by IGE0504G and IGE0204G. SCBERR4 (Byte 3) Bit Bit Indication (On/Off) Module Action o Is/is not selection error 1 Is/is not error during text transfer 2 Is/is not error in connect/ disconnect 3 Is/is not terminal/line error Checked by IEDQBD for IN/OUT message macro instructions. Checked by IGCD910D. Set by IGG019RQ. Checked by IEDQAA. Checked by IEDQBD for IN/OUT message macro instructions. Checked by IGCD910D. Set by IGE0004H, IGE0104G, IGE0104H, IGE0204H, IGE0504G, and IGG019RO. Checked by IEDQBD for IN/OUT message macro instructions. Checked by IGCD91OD. Set by IGE0304G. Checked by IEDQBD for IN/OUT message macro instructions. Checked by IGCD910D. Set by IGE0504G. 4 5 Reserved Is/is not error in controL unit 6 Is/is not channel error 7 Is/is not undefined error 598 OS TeAM PLM Checked the same as bit 3. Set by IGE0104G, IGEOI04H, IGE0204G, and IGE0004G. Checked the same as bit 3. Set by IGE0104G, IGE0804G, and IGE0804H. Checked the same as bit 3. Set by IGE0504G and IGE0504H. LCB Status Byte Usage by Module LCBSTATI Bit Bit Indication (On/Off) Module Action o Recall being/not being performed Checked, turned off, and reset by IEDQBD. Checked by IEDQFA and IGCD91OD. Cleared by IEDQAA, IEDQAS, and IEDQAT. 1 Line is/is not in control mode Set by IGGO 19R1. Checked and reset by IEDQKA, IEDQKB, IEDQKC, lEDQKD, and IEDQKE. Checked by IGCD910D. Cleared by IEDQAA. 2 Operator control is not/is immediate Set by IEDQHK. Checked and cleared by IEDQAA. Checked by IGCD91OD, IGG019Rl, IGG019R3, IGG019R4, IGG019Ql, IGG019Q6, and IGG019Q7. 3 Is/is not initiate mode Reset by IEDQBD. Checked by IEDQF A, IEDQHM, and IGCD910D. Checked and cleared by IEDQAA. 4 Is/is not continue/reset operation Set by IEDQCU. Checked by IGCD91OD. Cleared by IEDQF A and IEDQAA. 5 Line is/is not free Checked by IGCD91OD, IGCZOlOD, IEDQHK, and IEDQNK. Cleared by IEDQAA. 6 Line is/is not receiving Set by IGCV310D. Checked by IEDQGA, IGCZOlOD, IEDQNK, IEDQAS, IEDQFA, and IGCD910D. Cleared byIEDQAA. 7 Line is/is not sending Set by IGG019R4, IGG019Q6 and IGG019Q7. Checked by IEDQAS, IEDQAG, IEDQAN, IEDQAW, IEDQA4, IEDQBD, IGCZOlOD, IGCD910D, IEDQFA, IEDQNK, IEDQHM, IEDQGA, and IGG019RN. Checked and cleared by IEDQAA. Notes: If both bits 6 and 7 are off, the line is inoperative. When a stop line function is being performed, IEDQHK sets LCBSTATl equal to roo'. Also, IEDQAA and IGC0710D set LCBSTATlto X'OO' when TOTE asks for control; IGCV31OD, IGCVllOD, and IGCV210D test for this condition. LCBSTAT2 Bit ° 907 Bit Indication (On/Off) I/O trace is/is not active for this line Module Action Set and checked by IGCM61OD. Checked by IGCD91OD, IGG019RO, IGG019Q2, IGG019Q3, IGG019Q4, and IGG019Q5. Section 5: Data Area Layouts 599 Bit Bit Indication (On/Off) Module Action 1 Is/is not MSGGEN/start-up message Turned off by IEDQBD. Checked by IGCD91OD, IEDQKA, IEDQKB, IEDQKC, IEDQKD, IEDQKE, IGG019RO, IGG019Q2, IGG019Q3, IGG019Q4 and IGG019Q5 2 EOT from a buffered terminal without/with EOM Checked by IGCD91OD. 3 Send priority switch is/is not set by the Send Scheduler Checked by IGCD91OD. 4 Negative response to polling is/is not received Checked by IGCD91OD, IGG019Rl, IGG019R4, IGGO 19Q6 and IGGO 19Q7. Set by IEDQHK, IGG019RO, IGG019Q2, IGG019Q3, IGG019Q3, IGG019Q4, and IGG019Q5. Reset by IEDQKA, IEDQKB, IEDQKC, IEDQKD, and IEDQKE 5 Line is/is not BSC Checked by IGG019RN,IGG019RO, IGG019Q2, IGG019Q3, IGG019Q4, IGG019Q5, IGG019Q6, IGG019Q7, IGG019R4, IGCD91OD, and IEDQKA. 6 Is/is not a dial LCB Checked by IEDQAG, IGCD91OD, IGCV210D, IGCV410D, IGCM41OD, IEDQHK, IEDQKA, IGG019Rl, and IGG019R4. 7 Do / do not owe a terminal a response Set by IGG019RO, IGG019Q2; IGG019Q3, IGG019Q4 and IGG019Q5. Checked by IEDQAK, IGCD910D, IEDQKA, IEDQKB, IEDQKC, IEDQKD, and IEDQKE. Checked and cleared by IEDQA4. 600 OS TCAM PLM Table of Message Origins This table lists each of the messages generated by the TCAM executable modules. The originating module names and the message routing codes are included by each message. Routing Codes: ... This routing code indicates that the message must be routed back to the console that initiated the request. 1 MASTER CONSOLE. This routing code is for messages that must be sent to the master console because some action is required by the master console operator, or because the message contains information considered critical to the continued operation of the system. 2 MASTER CONSOLE INFORMATIONAL. This routing code is for informational messages to the master console operator. Informational messages usually require no action from the operator. If they do, that action should be at the operator's discretion. 8 TELEPROCESSING CONTROL. This routing code is for messages relating to teleprocessing. 10 SYSTEM ERROR/MAINTENANCE. This routing code is used for any message that indicates a system error or an incorrectable I/O error, or any message associated with system maintenance. 11 PROGRAMMER INFORMATION. This routing code is for messages of interest to the programmer. The message is sent to an operator console and not to the system output devlce. Origin Routing Code IEDOOlI TCAM JOB jobname, stepname, procstepname ADDRESS OF AVT address IEDQOB 2,11 IED002A SPECIFY TCAM PARAMETERS IEDQOB 1 IED003A INVALID KEYWORD keyword IEDQOB 1 IED004A REQUIRED PARAMETER MISSING. SPECIFY xxx IEDQOB 1 IED005A MSUNITS (M) SPECIFICATION NOT PERMITTED. CONTINUE RESPONSE IEDQOB 1 IED006A INVALID OPERAND ON KEYWORD. RESPECIFY keyword IEDQOB 1 IED007I termname IS AN ILLEGAL DESTINATION IEDQOA 11 Message Section 6: Diagnostic Aids 601 Message Origin Routing Code IED0081 TCAM OPEN ERROR xxx=y IN DCB zzz descriptor IGG01930 IGG01931 11 IED0091 CHECKPOINT DISK ALLOCATION ERROR-DATA SET NOT OPENED IGG01942 11 IEDOlOI CHECKPOINT-INSUFFICIENT IEDQNR IGG01941 IEDQND 11 IEDOIH SYSTEM INTERVAL CANNOT BE ALTERED IGCM410D • IED0121 TSO SESSION ON LINE xxx COMMAND REJECTED IGCVllOD • IED0131 STOP REQUEST FOR SELF-VARY COMMAND COMMAND REJECTED IGCV110D • IED0141 TCAM ALREADY IN SYSTEM IEDQOB 2,11 IEDOIS1 TCAM AP OPEN ERROR 043-x yyy zzz IGG01933 2,8,11 IED0161 STATION name NOT FOUND IGCDOlOD IGCMOlOD IGCVOI0D IGCHOlOD IGCROI0D • IGCDOI0D IGCMOlOD IGCVOI0D • IGCDOIOD IGCMOlOD IGCVOI0D IGCHOI0D IGCROIOD • nnname ALREADY STARTED IED0191 grpname,rln } address IGCV310D IGCV410D • nnname STARTED IED020I grpname,rln } address IGCV310D IGCV410D • IED02H AUTO POLL STARTED FOR grpname,rln address IGCM210D • COREtNVIRON } INCIDENT CKREQname DATASET NOT OPEN INCIDENT RECORD IGNORED IED0171 LINE 1 ddnname,rln!NoT OPEN address IED0181 command field COMMAND INVALID r r 602 OS TeAM PLM Origin Routing Code IED0221 AUTO POLL ALREADY STARTED FOR grpname,rln! address IGCM210D ... IED0231 TRACE STARTED FOR grpname,rln ! address IGCM610D ... IED0241 TRACE ALREADY STARTED FOR grpname,rln ! addresl) IGCM610D ... IED0251 {'"nnname grpname,rln}ALREADY STOPPED address IGCVIlOD IGCV210D ... IGCVII0D IGCV210D ... IGCM210D ... IED0281 AUTO POLL ALREADY STOPPED FOR grpname,rln ! address IGCM201D ... IED0291 TRACE STOPPED FOR grpname,rln! address IGCM610D ... IED030I TRACE ALREADY STOPPED FOR grpname,rln ! address IGCM610D ... IED031I statname QUEUE SIZE = integer, QUEUETYP=type, STATUS=status, ... IGCD210D ... IED0321 grpname,rln! LNSTAT = status, ... address ERR=error, ... IGCD910D IED033I statname ST~TUS-st"r"" " INTENSE= sense count NO IN-SEQ=integer,OUT-SEQ = integer IGCD510D ... IED0341 statname HAS NO opfldname OPTION IGCM810D IGCD810D ... IED0351 statname OPTION opfldname=data IGCD810D ... IED0361 grpname,rln ACTIVE=lstatname ... ! address NONE IGCD310D ... Message I I I {'"nnname } IED0261 grpname,rln STOPPED address I IED0271 AUTO POLL STOPPED FOR grpname,rln! address I I I I I ! .~ Section 6: Diagnostic Aids 603 Origin Routing Code IGCD310D • IGCD610D • IED039I NO STATIONS INTERCEPTED IGCD410D • IED040I INTERCEPTED STATIONS=statname, ... IGCD410D • IED041I PRIMARY -=~statname ~ SYSCON IGCM710D IGCDllOD • IED042I ~ statname ~ ALREADY PRIMARY SYSCON IGCM710D • IED043I SECONDARY =statname IGCDIIOD • IED044I statname NOT ELIGmLE FOR PRIMARY IGCM710D • IED045I SYSTEM INTERVAL ALREADY ACTIVE IGCM410D • IED046I LINE FOR statname IS OUTPUT ONLY STATION IGCV410D • IED0471 SYSTEM INTERVAL IS data IGCM410D IED048I POLLING DELAY FOR statname IS data IGCM410D • • IED049I OLT CONTROLS LINE line COMMAND REJECTED IGCV310D • IED050I statname OPTION opfield MODIFIED IGCM810D • IED051I statname SET FOR HOLD, SEQ-OUT=integer IGCHOIOD • IED052I statname ALREADY SET FOR HOLD IGCHOIOD • IED053I statname ALREADY RELEASED IGCROIOD IED054I statname RELEASED,SEQ-OUT=integer IGCROIOD • • IED055I I/O TRACE CANNOT BE ALTERED IGCM610D • IEDQ56I termname opfldname DATA FORMAT INVALID IGCM810D • IED057I address NOT CAPABLE OF AUTO POLL IGCM210D • IGCM510D • Message I IED037I grpname,rln!INACTIVE=lstatname ...! address NONE IED038I statname IS ON LINE IED058! 604 fgrpname,rln} r dname grpname,rln } address SENSECOUNT -COlll\t, address statname SETTING = sense OS TCAMPLM Origin Routing Code IGCD710D ... IED060I statname CANNOT BE HELD IGCHOIOD ... IED0611 POLLING DELAY FOR statname CANNOT BE ALTERED IGCM410D ... IED062I statname OPTION opfldname CANNOT ACCEPT SPECIFIED DATA IGCM810D ... IED0631 CLOSEDOWN IN PROGRESS COMMAND REJECTED IGCOOIOD ... IED0641 LINE addr CONTROL UNIT NOT OPERATIONAL IGE0204G 8 IED0651 INITIALIZATION ERROR return code IEDQOA 2,11 IED0671 TCAM INITIALIZATION BEGUN IEDQXA 2,11 IED0681 UNABLE TO OPEN IEDQDATA IEDQXA 11 IED0691 INVALID KEYLEN FOR IEDQDATA IEDQXA 11 IED070I IEDQDATA DOES NOT SPECIFY CONTIG SPACE IN CYLINDERS IEDQXA 11 IED0711 UNEQUAL PRIMARY AND SECONDARY EXTENTSONIEDQDATA IEDQXA 11 IED0721 I/O ERROR ON IEDQDATA IEDQXA 2,10,11 IED074I TCAM INITIALIZATION COMPLETE IEDQXA 2,11 IED0751 END OF EXTENT. RECORD COUNT IS number, TIME IS time SEC IEDQXA 11 IED0761 TCAM NON-REUSABLE DISK THRESHOLD CLOSEDOWN IGG019RC 2,11 IED077 I termname opfldname DATA CHARACTER INVALID IGCM810D ... IED0781 DLQ TERM ERROR IEDQOA 11 IED0791 ENDING STATUS NOT RECEIVED FROM LINE address-LINE UNAVAILABLE IGG01948 8 IED080I START OF TCAM SYSTEM DELAY IEDQHI 2 IED0811 END OF TCAM SYSTEM DELAY IEDQHI 2 IED0821 CHECKPOINT DISK ERROR-DATA SET NOT OPENED IGG01942 11 Message IED059I ~grpname'rln~IST STATUS = status address Section 6: Diagnostic Aids 60S Origin Routing Code IED083I CHECKPOINT DISK ERROR-RECOVERY FROM PREVIOUS RECORD IGG01942 11 IED084I CHECKPOINT DISK ERROR-RECOVERED IEDQNQ 11 IED085I CHECKPOINT DISK ERROR1CKREQ fRECORDIGNORED INCIDENT IEDQND IGG01944 11 IED086I CHECKPOINT DISK ERROR-ENVIRONMENT CKREQ,name IEDQNP 11 IED0871 CHECKPOINT DISK ERROR-CONTROL RECORD IGG012041 IEDQNQ 11 IED088I termname ON DIAL LINE-CANNOT BE VARIED IGCV210D IGCV410D * IED090I statname IS NOT SINGLE ENTRY IGCV210D IGCV410D IGCD610D * IED091I LINE FOR statname NOT OPEN IGCD210D IGCD610D IGCV210D IGCV410D * IED092I BISYNC ERROR-LINE xxx CANNOT BE STARTED IGCV310D IED093I SET SYSTEM INTERVAL COMMAND ACCEPTED IGCM410D * IED094I CORE REQUESTED FOR ON-LINE TEST NOT A VAILABLE IEDQND 11 IED095I MODIFY OLT REJECTED-OLT NOT ACTIVE IGCMAI0D 8,11 IEDQNA2 2,11 IED097I TCAM IS CLOSED DOWN IEDQNA2 2,11,* IED098I DCB OPEN FOR MESSAGE PROCESSING PROGRAM-jobname IGCZOI0D 2,11 IED099I ROUTINE LOADED IGCM910D 8 lED 1001 ROUTINE DEACTIVATED IGCM910D 8 lED 10 11 RESTART IN PROGRESS IGCM910D 8 lED 1021 INVALID OPERAND IGCM910D 8 Message {CHECKPOINT IED096I OPERATOR CONTRO COMWRITE 606 OS TeAM PLM 4 ~O LONGER ACTIVE Origin Routing Code lED 1031 ROUTINE IS ACTIVE IGCM910D 8 lED 1041 ROUTINE NOT ACTIVE IGCM910D 8 IED10SI RETURN CODE=xxxx IGCM910D 8 IED106I MULTIPLE REQUEST IGCM910D 8 IED107I COMWRITE NOT ACTIVE IGCM910D 8 IED109I ROUTINE NOT DELETED IGCM910D 8 IED127I OLT REQUEST REJECTED, CONTROL TERMINAL UNIDENTIFIED IEDQWC 10 IED128I ALTERNATE PRINTER REQUESTED BY OLT ALREADY IN USE IEDQWC 10 IED130I OLT REQUEST REJECTED, CONTROL TERMINAL NOT OPEN IEDQWC 10 IED132I CAN OLT USE FOR NON-CONCURRENT MODE LINES xxX,XXX,xxX,XXX, ... (up to 11 lines) IEDQWC1 IEDQWJ2 10 IED133I C. T. REQUESTED BY OLT ASSIGNED TO ANOTHEROLT IEDQWC 10 IED13SI ALREADY CONFIGURED; REQUEST CHANGE FUNCTION TO MODIFY IEDQWIA 10 IED13SI MODIFICATION/DELETION NOT PERMITTED FOR THIS DEVICE IEDQWID 10 IED13SI UNSUPPORTED DEVICE TYPE IEDQWID IEDQWIE 10 IED13SI INVALID LINE ADDRESS IEDQWIA IEDQWID IEDQWISU 10 IED13SI NAME NOT FOUND IN TCAM TERMINAL TABLE IEDQWIA IEDQWID IEDQWIE 10 IED13SI OLD ENTRY DELETED FROM CDS IEDQWIA IEDQWID 10 IED13S1 NEW ENTRY ADDED TO CDS IEDQWIA 10 IED13SI CONFIGURATOR STARTED IEDQWI 10 IED13SI CONFIGURATOR COMPLETED IEDQWI, IEDQWIA, 10 Message Section 6: Diagnostic Aids 607 Message Origin Routing Code IEDQWID, IEDQWIE, IED135I LINE NOT OPENED IEDQWI9 10 . IEDQWJl 10 IED135I ENTER ONE OPTION OR NONE IEDQWJl 10 IED135I EPN-WHERE N IS LEVEL OF PRINTED OUTPUT WANTED IEDQWJl 10 IED135I CM, NCM, NEP, AP, NAP, EXT=DATANNN IS A 4 DIGIT DECIMAL NUMBER IEDQWJl 10 IED135I VALID OPTIONS ARE TLNNNN, NTL, ELNNNN, NEL, CP, NCP, NMI, MI IEDQWJl 10 IED135I DEFAULT OPTIONS ARE CP, NTL, NEL, CM, NAP, NMI, AND EP IEDQWJl 10 IED135I ON LINE TESTING ENDED IEDQWE 10 IED135I START OR STOP LINE FAILED-ABORT IEDQWD 10 IED135I -CONTROL TERMINAL ID IS IEDQWC 10 IED135I xxxxxxxx NOT OPENED IEDQWCl IEDQWC2 10 IED135I S xxxxy UNIT zzz IEDQWE 10 IED135I *T xxxxy UNIT zzz T xxxxy UNIT zzz IEDQWE 10 IED135I MACRO FUNCTION NOT SUPPORTED IEDQWM2 10 IED135I MACRO LEVEL NOT SUPPORTED IEDQWM2 10 IED135I ON LINE TESTING CANCELED IEDQWE 10 IED135I TRM REJECTED-270X NOT CONNECTED TO PROPER CPU IEDQWD 10 IED135I TEST DEVICE DOES NOT BELONG TO TCAM IEDQWE 10 IED135I REENTER TRM LATER-RESOURCE IN UNSHAREABLESTATE IEDQWD 10 IED135I TRM REJECTED-I/O ERROR LOADING CONFIGURATION DATA IEDQWD 10 IED135I TRM REJECTED-NO CONFIGURATION DATA IEDQWD 10 IED135I OPTION ENTRY INVALID nn- 608 OS TeAM PLM Origin Routing Code IED135I INVALID ENTRY FOR ADDITIONAL TESTS-VALID ENTRIES ARE IEDQWJ1 10 IED135I TRM BUFFER TOO SMALL FOR LAST ENTRY IEDQWJ IEDQWJ1 IEDQWJ2 10 IED135I ERROR IN TEST LOOP OR ERROR LOOP NUMBER IEDQWC1, IEDQWJ1 10 IED135I 1060 CANNOT.BE CONTROL TERMINAL FOR PROMPT OR CONFIG IEDQWJ 10 IED135I DIAGMSG DD CARD MISSING FROM JCL IEDQWJ 10 IED135I DIAGMSG OPEN FAILED IEDQWD 10 IED135I OPERATOR WILL ONLY ALLOW CONCURRENT MODE-TRM REJECTED IEDQWJ2 10 IED135I ERROR IN OPTION FIELD IEDQWJ 10 IEDl35I ERROR IN TEST FIELD IEDQWJ 10 IED135I ERROR IN TEST DEVICE FIELD IEDQWJ 10 IED135I TRM PROMPTER RUNNING IEDQWJ 10 IED135I PROMPTING NOT ALLOWED ON 1060, REENTERTRM IEDQWJ 10 IED135I DIAL TEST TERMINAL NOT ALLOWED WITH LEASED ONES IEDQWJ 10 IEDl35I INVALID RESPONSE IEDQWI, IEDQWIA, IEDQWID, IEDQWIE IEDQWI9 IEDQWJ IEDQWJ1 IEDQWJ2 10 IED135I INVALID TEST DEVICE ENTRY IEDQWJ 10 IED135I ALREADY HAVE 9 TEST DEVICES-TEST DEVICE PROMPTING FINISHED IEDQWJ 10 IED135I INVALID ROUTINE ENTRY IEDQWJ 10 IEDl35I INVALID TEST NAME IEDQWJ 10 IEDl35I TRM REJECTED-CONFIGURATION DATA SET CANNOT BE OPENED IEDQWD 10 Message Section 6: Diagnostic Aids 609 Origin Routing Code IED135I ON LINE TESTING ACTIVE IEDQWC 10 IED135I OL T MODULE xxxxxxxx CANNOT BE LOADED IEDQWE 10 IED135I CLASS NOT TP, OR SUPPORTED GRAPHIC-ABORT IEDQWD 10 lED 1351 NOT ENOUGH CORE FOR SECTION IEDQWE 10 IED136D DO YOU WISH TO CONTINUE? (YES OR NO) IEDQWIA, IEDQWID, IEDQWIE 10 IED136D ARE THERE OTHER ENTRIES TO DELETE? (YES OR NO) IEDQWID 10 lED 136D ARE THERE OTHER ENTRIES TO EXHIBIT? (YES OR NO) IEDQWIE 10 IED136D ENTER TYPE OF TERMINAL IEDQWI9 10 lED 1360 ARE THERE OTHER ENTRIES TO ADD? (YES OR NO) IEDQWIA 10 lED 1360 ARE THERE OTHER ENTRIES TO CHANGE? (YES OR NO) IEDQWIA 10 IED136D ENTER FUNCTION: ADD, CHANGE, DELETE, EXHIBIT, OR NONE IEDQWI 10 IED136D ENTER A LINE ADDR. OR A SYMBOLIC TERMINAL NAME IEDQWIA, IEDQWID, IEDQWIE 10 lED 1360 ENTER LINE ADDRESS (FORMAT CCU) IEDQWI9 10 IED136D ENTER ONE OPTION OR NONE IEDQWll 10 IED136D SYSOUT-SYSCON-SYMBOLIC NAME IEDQWJ2 10 IED136I ENTER ALTERNATE PRINTER LOCATION. VALID ENTRIES ARE IEDQWJ2 10 IED136D DO YOU WANT TO CONTINUE PROMPTING? (YES OR NO) IEDQWJ IEDQWll IEDQWJ2 10 IED136D YOU CAN REENTER (R), CANCEL (C), OR USE TRM AS IS (GO) IEDQWJ IEDQWll IEDQWJ2 10 IED136D ENTER NEXT MESSAGE SEGMENT IEDQWH 10 Message xxxxxxxx 610 OS TeAM PLM Origin Routing Code IED135D ARE THERE ANY MORE TEST DEVICES? ANSWER YES OR NO IEDQWJ 10 IED136D ENTER SYMBOLIC NAME OF TERMINAL OR CCU OF TCU TO BE TESTED IEDQWJ 10 IED136D DO YOU WANT TO BE PROMPTED? ANSWER YES OR NO IEDQWJ 10 IED136D INVALID RESPONSE, PLEASE ENTER YES OR NO IEDQWJ IEDQWl1 IEDQWJ2 10 IED136D ENTER ALPHA CHARACTERS SEPARATED BY COMMAS FOR OTHER SELECTIONS IEDQWJ 10 IED136D DO YOU WANT OTHER TEST SECTIONS RUN ON THIS DEVICE? ANSWER YES OR NO IEDQWJ 10 IED136D ENTER ROUTINE NUMBER-EXAMPLE 1, 4-6,9 IEDQWJ 10 IED136D DO YOU WANT TO SELECT ROUTINES IN THIS TEST? ANSWER YES OR NO IEDQWJ 10 IED136D ENTER TEST TO BE RUN-FORMAT NNNNB/ ANNNNB-EXAMPLE 2700A/T2700A IEDQWJ 10 IED136D INVALID EP LEVEL-ENTER 1,2 OR 3 IEDQWJ 10 IED138I ERROR SORTING DEVICE ID TABLE,xxxx IEDQOA 11 IED139I PRINTING STOPPED IGG019RC 2 IED140I TCAM DISK ERROR aa, bbbbbbbb, cccccccc cccccccc, ddd, ee, ffffff IGG019RC 2 IED143I gpstatname GENERAL POLL STARTED IGC0190D • IED144I gpstatname GENERAL POLL STOPPED IGC0910D • IED145I gpstatname GENERAL POLL ALREADY STARTED IGC0910D • IED146I gpstatname GENERAL POLL ALREADY STOPPED IGC0910D • IEDI47I gpstatname COMMAND INVALID FOR GENERAL POLL IGC0910D • IED148D IS C.D. FOR xxx CONNECTED TO THIS SYSTEM? IEDQWD 10 Message Section 6: Diagnostic Aids 611 Origin Routing Code IED1481 OLT ABEND xxxyyy IEDQWB 10 IED1491 TOTE BUSY IEDQWA 10 lED 150D TCAM REUSABLE Q WRAPPED-REPLY 'D' TO DUMP ENTIRE MSG DATA SET OR 'C' TO CANCEL IEDQXC 1 IED1511 cuu tttt yy ERS z cuu xx tttt THRESHLD cuu xx tttt yy eeee zzzz yy eeee zzzz yy eeee zzzz yy eeee zzzz IGE0904H 2 IED152I CHECKPOINT BLKSIZE TOO SMALL-300 WAS USED IGG01949 11 IED153I CHECKPOINT BLKSIZE TOO BIG-3520 WAS USED IGG01949 11 IED154I TOTE CANNOT RETURN DEVICE xxx TO ORIGINAL STATUS IEDQWE 10 IED156I statname ON CONCENTRATOR-CANNOT BE VARIED IGCV210D IGCV410D 11 IED157I TCAM SYSTEM DELAY ACTIVE-HALT COMMAND REJECTED IGCVOI0D 11 Message cuu ww tttt eeeeeee zzzz eeeeeee zzzz eeeeeee zzzz 612 OS TeAM PLM Register Usage Conventions in TCAM Although each module in TeAM uses registers as necessary to perform its functions, some conventions are used in various groups of modules. For specific register usage by module refer to the microfiche of the module. The general register usage by module type follows. Save Area Management In TeAM, save area management occurs when a subroutine returns to the routine that called it. A save area "belongs" to a routine when that routine sets register 13 to point to a save area in the AVT. A subroutine of the routine can then store the registers of the routine in the specified save area. If a routine does not call a subroutine, it does not have a save area since it does not modify the contents of register 13. TeAM maintains four 18-word save areas and one 10-word save area in the AVT After the standard entry linkage to a routine that uses save area management, certain words of the save area contain specific addresses: • The second word of the save area points to the address of the save area for the calling routine. • The third word of the save area for the calling routine has the address of the save area for the called routine. • Register 13 has the address of the save area for the called routine. During the standard exit lirikage of a routine that uses save area management, the save area address for the calling routine is restored from the second word of the save area for the called routine. The registers of the calling routine are also restored from this area, and the calling routine can regain control. S"bro"tine Linkage TeAM uses standard subroutine linkage and requires saving and restoring registers through the SAVE and RETURN macros. These macros are coded in the following manner: SAVE (14,12),,* RETURN (14,12),T Appendages Register 1 2 8 9 13 14 15 Use Request element address lOB address lOS register lOS register Save area address Return address Entry point Section 6: Diagnostic Aids 613 Application Progl'ilm Routines Register o 1 13 14 15 Use Termname table entry address Application program work area Save area address Return address Entry point; return code Checkpoint Routines Register 2 3 4 9 12 14 15 Use Checkpoint work area address Address of the request element this module is to process Disk record address AVT address IEDQNF base register Return address Entry point; offset to the next module to gain control Error Recovery Procedure Routines Register 1 2 4 11 13 14 15 Use Request element address LCB address DCB address AVTaddress Linkage for the next load module XCTL register Base register Measage Handling Routines Register 1 3 4 6 9 12 13 14 15 Use Parameter list register SCB address LCB address Current buffer address AVT address Base register Save area address Return register Entry point and return code OJIM/Close Routines Register 2 3 4 5 6 614 OS TCNM PLM Use DCB address TIOT address; TCB base register DCB work area address DCB parameter list address Where-to-go table address 7 8 9 11 12 Current entry in the DCB parameter list Current entry in the where-to-go table (the second word in the entry is the address of the open work area) AVT address DEB address Base register Operator Control Routines Register 1 4 5 6 12 13 14 15 Use Operator Control AVT address; appropriate response message AVT address Termname table entry address Terminal table entry address Base.register Save area address Return register Entry point and return code Queuing Routines Register 1 3 4 6 7 10 11 12 13 14 15 Use Parameter list address SCB address LCB address Current buffer address QCB address DCB address TCAM Dispatcher address Base register AVT address Return address Entry point Scheduler Routines Register 1 3 4 7 11 13 15 Use LCB or buffer address STCB address LCB address QCB address TCAM Dispatcher address Save area address Entry point Section 6: Diagnostic Aids 615 (This page left blank intentionally) 616 OS TeAM PLM TeAM Service Aids The Service Aids Programs are an optional TCAM facility. They provide the Customer Engineer and customer programming personnel with the ability to save portions or all of the following TCAM tables and buffers: • Subtask Control Block Trace Table • Line II 0 Trace Table • Message Buffers (main storage and secondary storage) These areas are stored, using programs from the Service Aids, on either tape or direct access devices. The areas may be edited and printed in formatted form for use as a debugging tool. For detailed information on these areas see chapter 4, TCAM Diagnostic Aids, of the OS TCAM User's Guide (GC30-2025). Service Aids Flow Operator Control • DEBUG = ,r SERVICE AID ROUTER .~ INIT OPERATION STCB TRACE DUMP I I : DISPATCHER - I/O TRACE DUMP I I I ... - I LINE I/o TRACE ..- BUFFER DUMP STARTMH II . ~ IEDQAA IEDQFW O----------Processing __ -- -" COMWRITE -~\}..---- Section 6: Diagnostic Aids 617 IEDQFE10 Subrask Control Block Trace Table Dump Flow IEDQC6 FEROUTER Operator Control Modify DEBUG = Check COMWRITE active (AVTQWFL2) Get Maduel Name Check if already active (CDE CHAIN) Load rout ine BALR 14,15 Handle OP Msgs cn SUBTASK DUMP Set up module is loaded OP cn msg Chk for load or Delete RETURN to OP CTL SET flag in AVTAFE10 BR 14 POST MCP EDB IGG019RO WRITE _._OS • Set up table ident DISPATCHER RETURN Dispatch RCB Chk far table filled WRITE table entry • build COMWRITE RCB TEST IEDQFE10 active (AVTAFE10) build data area porm for COMWRITE BR to routine 1. Dispent 2. Bypass Issue SVC 102 to POST ECB POST COMWRITE ECB Complete VIA SVC 102 BR 14 WAIT on MCP ECB ~"'-OS _ _~ COMWRITE Get Blocksize WRITE Record WAIT on I/o done WAIT on ECB TCAM DISPATCHER 618 OSTCAMPLM r·...---· ~ - OS IEDQFE20 I/O Trace Dump Flow IEDQC6 Operator Control Modify DEBUG IEDQFE20 LINE FEROUTER = 1/0 TRC DMP Chk COMWRITE active (AVTCWFL2) Chk for load or delete Get module name Set AVTAFE20 EP = SET Chk if active (CDE CHAIN) BR 14 Load routine Split Trace Table BALR 14,15 1/0 OP INST First Time Only to fall through Finish msg handle Set OP cn msg "RTN LOADED" Get COMWRITE ECB BR 14 POST ECB Succeeding Entries BR POST MCP WAIT IGGOl9 lOS MCP LINE Handle interrupt Dispatch RCB's I/o TRACE WRITE table Process msg EOT (CE,DE) EOT an last BUFFER Test end of table LINE END APPENDAGE BR Test AVTAFE20 AVTREADYenpty BALR 14,15 OS OS ~IEDQ~ • COMWRITE BR lOS r • OS Section 6: Diagnostic Aids 619 IEDQFE30 Buffer Trace Dump Flow IEDQC6 Operator Control Modify DEBUG= FEROUTER Process Command Load routine LINK BALR 14, 15 Get Op Ctl RTN RETURN BFRDUMP Chk for load or delete Set AVTAFE30 EP = ENTRY MCP _ _.os . ._-~I IEDQFE30 DISPATCHER • Process RCB IEDQAA BR Line being traced Move 96 bytes into buffer STARTMH 5 full buffers Test AVTAFE30 Build COMWRITE RCB BR Build data parm list Handle buffer TPOST COMWRITE ECB VIA SVC 102 COMWRITE BR AVTREADYempty WAIT MCP ECB OS 620 OS TeAM PLM Appendix A: List of TeAM Modules by Library This appendix identifies the modules that constitute TCAM. The modules are organized in alphabetical order by name within the libraries in which they reside. For those modules that represent macro instruction implementing routines, the mnemonic operation code for the macro is included in parentheses. All resident TCAM modules are in SYSl.TELCMLIB. Transient modules reside in SYS 1.LINKLIB, and all Open, Close, Get, and Put modules are in SYS1.SVCLffi. The system nucleus modules are in SYS1.NUCLEUS. The TCAM module IEDQTNT is not stored in a library; rather, it is assembled as part of the termname table. TCAM macros are in SYS 1.MACLffi. SYSl.LINKLIB IEDQCA Resident Operator Control Module IEDQEC Put Scheduler IEDQET Operator Control! Application Program Interface Routine IEDQEW Get Scheduler IEDQEZ Get Sch~duler FIFO Routine IEDQEl TCOPY Service Routine IEDQE2 QCOPY Service Routine IEDQE3 TCHNG Service Routine IEDQE4 ICOPY Service Routine IEDQE6 Password Scramble Routine IEDQE7 Retrieve Scheduler IEDQGQ Queue Reset Executed IEDQHI System Delay Routine IEDQNA2 Nonresident Closedown Completion Routine IEDQNB Application Program/Checkpoint Interface Routine IEDQND Ready Routine (READY) IEDQNF Checkpoint Executor IEDQNG Build Incident Record for MH Routine IEDQNH Build Incident Record for TCHNG Routine IEDQNJ Incident Checkpoint for Operator Control Routine IEDQNK Environment Checkpoint Routine IEDQNM Build CKREQ Disk Record Routine IEDQNO Checkpoint Queue Manager IEDQNP Checkpoint Disk I/O Routine IEDQNQ Checkpoint Notification and Disposition Routine IEDQNR Checkpoint-No Available Core Routine IEDQNS Checkpoint-No InCident Records Routine Appendix A: List of TeAM Modules by Library 621 622 OS TeAM PLM IEDQNX Operator Awareness Message Router IEDQOA GETMAIN, Termname Table Sort, and Attach Routine IEDQOB WTOR Interpreter Routine IEDQOTOI TCAM ABEND Routine IEDQWA TOTE Resident Module IEDQWAB DTIME Service Module IEDQWAJ CUTEST Service Module IEDQWB Resource Management Module IEDQWBI TRM Analysis Buffer Analyzer IEDQWC Test Request Message Analysis Module 1 IEDQWCl Test Request Message Analysis Module 2 IEDQWC2 Test Request Message Analysis Module 3 IEDQWD TOTE Dispatcher Module IEDQWE TOTE Test Control Module IEDQWF OLT Test Control Module 2 IEDQWH Numeric Test Request Message Handler IEDQWI TOTE Configurator Scheduler IEDQWIA Configurator and Scheduler IEDQWID Configurator Delete/Change Scheduler IEDQWIE Configuration Exhibit Module IEDQWI5U Configurator Submodule IEDQWI7 Configurator Submodule IEDQWI8 Configurator Submodule IEDQWI9 Configurator Submodule IEDQWJ Test Request Message Prompter Module 1 IEDQWH Test Request Message Prompter Module 2 IEDQWJ2 Test Request Message Prompter Module 3 IEDQWK TOTE Message Module IEDQWL TOTE Message Submodule 1 IEDQWLI TOTE Message Submodule 2 IEDQWL2 TOTE Message Submodule 3 IEDQWL3 TOTE Message Submodule 4 IEDQWM2 Trace Function Module IEDQWN EXIO Service Module (alias IEDQW35) IEDQWO Access Manager IEDQWP DPRINT Service Module 1 (alias IEDQW39) IEDQWPI DPRINT Service Module 2 IEDQWP2 DPRINT Service Module 3 IEDQWQ CECOM Service Module (alias IEDQW37) IEDQWR PLINK Service Module (alias IEDQW28) IEDQWS Wait I/O Service Module (alias IEDQW36) IEDQWV TOTE GRAB/LETGO Service Module (alias IEDQW21, IEDQWAC) IEDQWX TOTE Convert Service Module (alias IEDQW41) IEDQWY GETCONFIG Service 'Module (alias IEDQW16) IEDQW24 READD Service Module IEDQW42 MORECORE/FREECORE Service Module (alias IEDQW43) IEDQW44 DIO Service Module IEDQW47 Routine Service Module IEDQ31 Enabling Module IEDQXA Disk Message Queue lnitializer ATTEN Activates the TSO /TCAM Attention Processing Routine CANCELMG Cancels messages CARRIAGE Processes characters that move the carriage CHECKPT Takes an incident checkpoint record of the option fields CHNGP No-Op (QTAM/TCAM) CHNGT No-Op (QTAM/TCAM) CKREQ Checkpoints the MCP CLOSEMC Closes down the telecommunications system (QTAM/TCAM) CODE Translates the data in the buffer currently being handled COMMBUF Moves current buffer into a data area COPYP No-Op (QTAM/TCAM) COPYQ No-Op (QTAM/TCAM) COPYT No-Op (QTAM/TCAM) COUNTER Maintains a count of complete messages or of message segments received from or sent to a terminal CTBFORM Provides for data insertion in the CTB CUTOFF Specifies the maximum allowable incoming message length DATETIME Inserts the date and time in an incoming or outgoing message header ERRORMSG Sends an error message when an error occurs FORWARD Queues messages for specified destinations HANGUP Checks for I/O errors HOLD Suspends transmission to a terminal ICHNG Modifies an invitation'list ICOPY Examines the contents of an invitation list IEDQCHAR Internal assembly macro to check character strings SYS1.MACLIB Appendix A: List of TeAM Modules by Library 623 624 OS TeAM PLM IEDQCHI Internal assembly macro to determine device characteristics IEDQCKO Internal assembly macro to perform validity checking on terminal operands IEDQFEA Internal assembly macro for TSO IEDQGCH Internal assembly macro to generate device-dependent fields for a terminal entry IEDQMASK Internal assembly macro to analyze mask operands IEDQSCAN Internal assembly macro to search for a character string IEDQTO Internal assembly macro to generate the option fields specified by a TERMINAL macro IEDQTQ Internal assembly macro to generate QCBs IEDQTT Internal assembly macro to generate a termname table entry IEDQVCON Internal assembly macro to provide proper branching addresses for all the macros INBLOCK Identifies a subgroup that handles incoming logical messages INBUF Identifies a subgroup that handles incoming message buffers INEND Identifies the end of the MH incoming group INHDR Identifies the beginning of an inheader subgroup INITIATE Sends message segments immediately to their destination INMSG Identifies the beginning of an MH inmessage subgroup INTRO Creates the A VT INVLIST Generates the invitation list for a line INVLISTI Internal assembly macro to generate an invitation list INVLIST2 Internal assembly macro to generate an invitation list INVLIST3 Internal assembly macro to generate an invitation list INVLIST4 Internal assembly macro to generate an invitation list INVLIST5 Internal assembly macro to generate an invitation list INVLIST6 Internal assembly macro to generate an invitation list LINEGRP TSO MCP generation macro LISTTA TSO MCP generation macro LOCK Locks one terminal on a line to an application program LOCOPT Locates a field in the option table LOG Logs complete messages or message segments LOGON Connects a terminal user to TSO or TCAM LOG TYPE Initializes for using the TCAM logging facility MCOUNT Provides the count of complete messages for an application program MCPCLOSE Initiates closedown of the telecommunications system MHGET Makes data in current buffer available to user routine MHPUT Moves data from user work area into current buffer MRELEASE Releases messages queued for a destination MSGEDIT Inserts and/or removes specified characters at specific locations in a message MSGFORM Inserts line control characters in outgoing messages MSGGEN Generates an unqueued message MSGLIMIT Limits the number of messages during a single transmission sequence MSGTYPE Controls the path of a header through an MH OPTION Defines the option table ORIGIN Checks the validity of the origin field in a message header OUTBUF Identifies a subgroup that handles outgoing message buffers OUTEND Identifies the end of any MH outgoing group OUTHDR Identifies the beginning of an outheader subgroup OUTMSG Identifies the beginning of an MH outmessage subgroup PATH Dynamically varies the path of a message through an MH PCB Generates a process control block (PCB) in an MCP to interface with an application program PRIORITY Specifies prio~ty handling for messages QACTION Provides a user exit to analyze status information given by a concentrator or a station attached to a concentrator QCOPY Examines the contents of a QCB QRESET Resets QCBFFEFO pointer backward to desired output sequence number and re-sends messages from reset point forward QSTART Differentiates between a QT AM and a TCAM application program (QT AM/TCAM) READY Initializes and activates the MCP REDIRECT Queues a message for an additional destination RELEASEM Releases messages queued for a destination (QTAM/TCAM) RETRIEVE Retrieves a message for reprocessing (QTAM/TCAM) RETRY Tries to initiate contact with a switched station RTAUTOPT Resumes automatic prompting (after a null line) (TSO) SCREEN Modifies the Write operations for display terminals SEQUENCE Checks the input sequence number of an incoming message SETEOF Indicates an EOF message SETEOM Determines the handling of data that follows an EOM control character SETSCAN Moves the scan pointer forward or backward or returns the address of the last character of a specific character string SGIEC3TP Moves BTAM, QT AM, and TCAM modules into SYSl.SVCLIB at system generation time SGIEC5TP Moves BTAM, QTAM, and TCAM modules into SYSl.LINKLIB, SYSl.SVCLIB, and SYSl.TELCMLIB at system generation time Appendix A: List of TeAM Modules by Library 625 626 OS TeAM PLM SGIEC2PT Generates UCBs at system generation time SGIEC519 Moves the proper macros into SYS 1.MACLIB at system generation time SIMATTN Handles a simulated attention string or code (TSO) SLOWPOLL Suspends further polling on a line when an error occurs SPAUTOPT Stops automatic prompting (TSO) STARTLN Activates a line or line group (QTAM/TCAM) STARTMH Establishes addressability for an MH routine STATTN Sets up a simulated attention string or code, time or lines (TSO) STAUTOCP Starts automatic character prompting (TSO) STAUTOLN Starts automatic line numbering (TSO) STBREAK Allows the user to specify the presence of the reverse brea\c feature (TSO) STCC Allows the user to specify line and character deletion characters (TSO) STCLEAR Specifies the character string used to clear the 2260 screen (TSO) STCOM Specifies whether to allow other TSO stations to send the user messages (TSO) STOPLN Deactivates a line or line group (QTAM/TCAM) STSIZE Specifies the length of a line or the length of and the numoer of lines for a 2260 (TSO) STTIMEOU Specifies whether a 1050 has the time-out suppression feature (TSO) TCHNG Places specified data in a terminal table entry TCLEARQ Allows the user to clear the TSO input or output queue (TSO) TCOPY Examines the contents of a terminal table entry TERMINAL Creates a single or group entry in the terminal table TERRSET Sets a bit in the error record TGET Transfers a line of input from a TSO terminal to the user's data area (TSO) TGOTO Provides communication between message handlers for processing logical messages within a concentrated message TLIST Defines a cascade-list or distribution-list entry in the terminal table TPDATE Specifies whether RECDELs (record delimiters) should be deleted from application program input TPEDIT Edits MDI control characters for IBM 50 Magnetic Data Inscriber TPROCESS Interfaces between the MCP and an application program TPUT Transfers a line of output from the user's data area to a TSO terminal (1'SO) ~or TRANLIST Generates a control table routine (IEDQA3) TSINPUT Generates a QCB for the TSO subtask and creates an extension of the AVT for TSO support TSOMCP TSO MCP generation macro TSOMR TSO MCP generation macro TTABLE Defines the terminal table TYPETABL Sets up branch table for MSGTYPE macro UNLOCK Removes a terminal from extended lock mode IEDQATTN Attention Routine IEDQEB AQCTL SVC 102 Routine IGC0010D Operator Control Control Module-Load 0 IGCOII0D Operator Control Control Module-Load 1 IGC0310D Operator Control Message Module-Load 1 IGC0410D Operator. Control Message Module-Load 2 IGC0510D Operator Control Message Module-Load 3 IGC0610D Incident Checkpoint Request Interface IGC0710D Output Writer and On-Line Test Interface Routine IGC0810D Operator Control Message Module-4 IGC0910D Operator Control Message Module-5 IGCDOI0D Scan/Map/Dispatch Display Function Routine IGCDllOD Copy Operator Control Terminal Routine IGCD210D Copy QCB Information Routine IGCD310D Copy Invitation List Entry Routine IGCD410D Copy Held Terminals Routine IGCD510D Copy Terminal Information Routine IGCD610D Copy Line Information Routine IGCD710D Copy Invitation List Status Routine IGCD810D Display Options Routine IGCD910D Copy LCB Information Routine IGCROIOD Stop Terminal Transmission Routine IGCIOI0D ICRNG Deactivate Routine IGCI1lOD ICRNG Move/Activate Routine IGCMAI0D Scan/Map/Dispatch Modify Function Routine-l IGCMOI0D Scan/Map/Dispatch Modify Function Routine-2 IGCM110D Modify Successful Message Routine IGCM210D Modify Poll Routine use by the Dynamic Translation SYS1.NUCLEUS SYS1.SVCLIB Appendix A: List of TeAM Modules by Library 627 628 OS TeAM PLM IGCM410D Change Interval Type Routine IGCM510D Modify Intense Routine IGCM610D Alter Trace Status Routine IGCM710D Change Control Terminal Routine IGCM810D Modify Options Routine IGCM910D Debug Service Aid Router IGCROIOD Resume Terminal Transmission Routine IGCVOlOD Scan/Map /Dispatch Vary Function Routine IGCVIIOD Stop Line Routine IGCV210D Stop Terminal Routine IGCV310D Start Line Routine IGCV410D Start Terminal Routine IGCV510D Stop General Poll Routine IGCV610D Start General Poll Routine IGCZOIOD MCP Closedown Processing Routine-l IGCZllOD MCP Closedown Processing Routine-2 IGC1303D TCAM Command Scheduler-SVC 34 (alias of IED1303D) IGE0004G Start/Stop ERP Control Module IGE0104G Read/Write Unit Check (Except Time-Out) ERP Module IGE0204G Non-operational Control Unit, Unit Exception, and Unit Check with Time-Out Module IGE0304G Unit Check for Non-read, Non-write, and Non-poll CCWs ERPModuie IGE0404G Auto Poll and Read Response to Poll Unit Check and Unit Exception ERP Module IGE0504G Error Post and Second Level CCW Return Module IGE0604G Unit Check and Unit Exception on Read/Write CCWs for Audio and 2260 Local Devices ERP Module IGE0804G Start/Stop Channel Check Module IGE0904G Closedown Terminal Statistics Recording Module IGE0004H BSC ERP Control Module IGEOI04H BSC Read/Write Equipment Check, Lost Data, Intervention Required, and Unit Exception ERP Module IGE0204H BSC Read/Write Data Check, Overrun, and Command Reject ERPModuie IGE0404H BSC Second Level CCW Return Module IGE0504H BSC Error Post Module IGE0804H BSC Channel Check ERP Module IGE0904H TPER Recorder Module IGG019AO TOTE's Start I/O Appendage IGG019AP TOTE Channel End and Abnormal End Appendage IGG019QO Line II0 Interrupt Trace Routine IGG019Q1 Local Receive Scheduler IGG019Q2 Line End Appendage for BSC Lines IGG019Q3 Line End Appendage for Start/Stop Lines IGG019Q4 Line End Appendage for Leased and Start/Stop Lines and No TSO IGG019Q5 Line End Appendage for a QT AM Compatible System IGG019Q6 Send Scheduler for Leased Lines and No TSO IGG019Q7 Send Scheduler with No TSO IGG019Q8 Checkpoint Continuation Restart Subroutine IGG019Q9 Concentrator Send Scheduler IGG019RA Checkpoint Disk End Appendage IGG019RB TCAM Dispatcher IGG019RC EXCPDriver IGG019RD Buffered Terminal Scheduler IGG019RE COMMBUF Send Scheduler IGG019RF EXCP Drive for a Single CPB IGG019RG GET/READ Routine IGG019RH Get Compatible Routine IGG019RI PUT /WRITE Routine IGG019RJ Put Compatible Routine IGG019RK Disk End Appendage for a Single CPB IGG019RL Check Routine (CHECK) IGG019RM Point Routine (POINT) IGG019RN PCI Appendage IGG019RO TCAM Dispatcher with Subtask Trace IGG019RP Reusability-Copy Subtask IGG019RQ Post Pending Routine IGG019RR IBM 1030, 1050, 1060,2740,2741 Special Characters Table IGG019RS IBM 2260 Remote Special Characters Table IGG019RT AT & T 115A or Western Union 83B3 Special Characters Table IGG019RU AT & T TWX, with Odd Parity Special Characters Table IGG019RV IBM 2260 Local Special Characters Table IGG019RW World Trade Teletype Adapter (WTTA) Special Characters Table IGG019RX AT & T TWX, with Even Parity Special Characters Table IGG019RY Audio Special Characters Table IGG019RO Line End Appendage IGG019R1 Dial Receive Scheduler Appendix A. List of TeAM Modules by Library 629 IGG019R2 Disk End Appendage IGG019R3 Leased Receive Scheduler IGG019R4 Send Scheduler IGG019R5 Attention Handler IGG019R6 Start-up Message Routine IGG019R7 BSC EBCDIC Code Special Characters Table IGG019R8 BSC USASCII Code Special Characters Table IGG019R9 BSC 6-bit Code Special Characters Table IGG01930 Disk Message Queues Open-l IGG01931 Disk Message Queues Open-2 IGG01933 Open Error Handler IGG01934 Disk Message Queues Open-3 IGG01935 Line Group Open-l IGG01936 Line Group Open-2 IGG01937 Line Group Open-3 IGG01938 Line Group Open-4 IGG01939 Line Group Open-5 IGG0194B Application Program Open Error Interface Routine IGG01940 Line Group Open-6 IGG01941 Checkpoint Open Routine IGG01942 Checkpoint Disk Initialization Routine IGG01943 Checkpoint/Restart from Environment Record Routine IGG01944 Checkpoint/Restart from Incident and CKREQ Records Routine IGG01945 Checkpoint Continuation Restart Routine IGG01946 GET /PUT and READ/WRITE Open Executor-l IGG01947 GET /PUT and READ/WRITE Open Executor-2 IGG01948 Line Group Open-7 IGG01949 Checkpoint Disk Allocation Routine IGG02030 Disk Message Queues Close Routine IGG02035 Line Group Close Routine-l IGG02036 Line Group Close Routine-2 IGG02041 Checkpoint Close Routine IGG02046 GET/PUT and READ/WRITE Close Executor-l IGG02047 GET /PUT and READ/WRITE Close Executor-2 IEDAYA TSO Attention Routine IEDAYB TSO TIOC 3270 Edit Routine IEDAYC TSO Carriage Subroutine SYSl.TELCMLIB 630 OS TeAM PLM IEDAYD Time Sharing Destination Scheduler IEDAYE TSO TIOC Edit Routine IEDAYF TSO IOHALT Routine IEDAYH TCAM/TSO Hang-up Routine IEDAYI TSINPUT Routine IEDAYL TSO Logon Routine IEDAYM TSO Message Generation Routine IEDAYO TSOUTPUT Routine IEDAYR STARTMH Subtask for TCAM-TSO Mixed IEDAYS TSO Simulated Attention Routine IEDAU TSO Abend Interface Routine IEDAYX TSO INMSG/OUTMSG Linker Routine IEDAYY TSO Asynchronous Time Delay Removal Routine IEDAYZ Time Sharing Scheduler IEDQAA STARTMH Subtask (STARTMH) IEDQAB STARTMH Continuation IEDQAC Date and Time Provision Routine (DATETIME) IEDQAD Output Sequence Number Provision Routine (SEQUENCE) IEDQAE Locate Option Field Address Routine (LOCOPT) IEDQAF Insert Data Routine IEDQAG Message Limit Routine (MSGLIMIT) IEDQAH Input Sequence Number Insertion Routine (SEQUENCE) IEDQAI Skip Forward and Scan Routine (SETSCAN) IEDQAJ Skip to Character Set Routine (SETSCAN) IEDQAK Line Control Insertion Routine IEDQAL Compare at Offset Routine IEDQAM Origin Routine (ORIGIN) IEDQAN Multiple Insert/Remove Routine (MSGEDIT) IEDQAO Unit Request Interface Routine IEDQAP Remove at Offset Routine (MSGEDIT) IEDQAQ Operator Control Interface Routine IEDQAR Cancel Message Routine IEDQAS Hold/Release Terminal Routine IEDQAT Create an Error Message Routine (ERRORMSG) IEDQAU Cutoff Message Transmission Routine and Subtask (CUTOFF) IEDQAV Look-up Terminal Entry Routine IEDQAW Translate Buffer Routine (CODE) IEDQAX Buffer Scan Routine IEDQAY Screen Routine (SCREEN) Appendix A. List of TeAM Modules by Library 631 632 OS TeAM PLM IEDQAZ Redirect a Message Routine (REDIRECT) IEDQAO Skip Backward Routine (SETSCAN) IEDQAl Binary Search Routine IEDQA2 Insert at Offset Routine (MSGEDIT) IEDQA3 Dynamic Translation Routine IEDQA4 Incoming/Outgoing Message Delimiter Routine IEDQA5 Forward Routine (FORWARD) IEDQA6 Line Control Initialization Routine (MSGFORM) IEDQA7 Counter Routine (COUNTER) IEDQA8 Multiple Insert at Offset Routine (MSGEDIT) IEDQA9 Re-dial Routine (RETRY) IEDQBA Multiple Routing Subtask IEDQBB Checkpoint Request Routine IEDQBC Distribution List Subtask IEDQBD Buffer Disposition Subtask IEDQBE Lock Routine IEDQBF Unlock Routine IEDQBG Cascade List Subtask IEDQBH Concentrator Buffer Disposition Subtask IEDQBL Message Generation Routine (MSGGEN) IEDQBM Origin Routine for a System with Concentrated Message Handling Support IEDQBN Data Attach Routine IEDQBO SETEOM Routine (SETEOM) IEDQBP TGOTO Routine (TGOTO) IEDQBR Count Module for SETEOM IEDQBQ QACTION Routine (QACTION) IEDQBT EOB/ETB Handling Subtask IEDQBU CANCELBK Subtask (CANCELMG with LEVEL=BLK) IEDQBV COMMBUF Routine IEDQBX Log Segment Routine IEDQBY Log Message Routine IEDQBZ Log Scheduler IEDQBl MCOUNT Routine (MCOUNT) IEDQB2 TPDATE Routine IEDQB3 DATETIME Insertion Routine for a Processing Program IEDQB4 Slow Poll Routine IEDQES Retrieve Service Routine IEDQEU Open/ Close Subtask IEDQE6 Password Scrambler Routine IEDQE8 Binary Search Routine IEDQFA CPB Initialization Module IEDQFA1 CPB Initialization-Main-Storage-Only Queuing IEDQFA2 CPB Initialization-Disk-Only Queuing IEDQFE TCAM Service Aids Routine IEDQFE10 STCB Trace Utility Routine IEDQFE20 Buffer Trace Utility Routine IEDQFE30 Line Trace Utility Routine IEDQGA Buffer Management Module IEDQGH CTBFORM Routine (CTBFORM) IEDQGP MHGET /MHPUT Routine IEDQGR QRESET Service Routine IEDQGT Transparent Transmission CCW Building Routine IEDQHG Time Delay Subtask IEDQHK Stop Line I/O Subtask IEDQHM Destination Scheduler IEDQHM1 Destination Scheduler-Main-Storage-Only Queuing IEDQHM2 Destination Scheduler-Disk-Only Queuing IEDQKA Activate-I/O Generator Subtask IEDQKB Activate-I/O Generator Subtask for BSC Lines IEDQKC Activate-I/O Generator Subtask for Start/Stop Lines IEDQKD Activate-I/O Generator Subtask for Leased and Start/Stop Lines and No TSO IEDQKE Activate-I/O Generator Subtask for a QTAM Compatible System IEDQNA Resident Closedown Completion Routine IEDQUI User Interface Routine IEDQ10 IBM 1030 Translate Table IEDQ11 IBM 1050 Translate Table IEDQ12 IBM 1050 Folded Translate Table IEDQ13 IBM 1060 Translate Table IEDQ14 IBM 2260 Translate Table IEDQ15 Alias for IEDQ14 IEDQ16 IBM 2740 Translate Table IEDQ17 IBM 2740 Folded Translate Table IEDQ18 World Trade Teletype Adapter (WTTA), ITA2 Translate Table IEDQ19 World Trade Teletype Adapter (WTTA), ZSC3 Translate Table IEDQ20 AT & T 115A or Western Union 83B3 Translate Table IEDQ21 AT & T TWX, with Parity Translate Table fo~ a Processing Program Appendix A. List of TeAM Modules by Library 633 634 OS TeAM PLM IEDQ22 AT & T TWX, without Parity Translate Table IEDQ23 IBM 2780, 6-bit Code Translate Table IEDQ24 USASCII Code Translate Table IEDQ25 Dummy Table (EBCDIC to EBCDIC) IEDQ26 IBM 2741, BCD Code Translate Table IEDQ27 IBM 2741, EBCD Code Translate Table IEDQ28 IBM 2741, Correspondence Code Translate Table Appendix B. TCAM Queues and QCBs TeAM Queues Checkpoint disk 1/ o queue-Checkpoint disk records wait for this queue to be written to disk. The records are queued in FIFO order. The first word of the record is the link field. Each time an environment checkpoint record is put on the checkpoint disk I/O queue, the IEDQNO routine scans the queue. If there are any incident checkpoint disk records on the queue, the IEDQNO routine removes them and frees them. Since the information in the "incident checkpoint record is included in each environment record, it is not necessary to write both records to disk. The Checkpoint Executor routine (IEDQNF) looks at the queue when a record is put on the queue, and gives control to the Checkpoint Disk I/O routine (IEDQNP). Communication queue-This is a queue of command input blocks in FIFO order, chained by the first word in each CIB. The communication queue is used to queue command input blocks containing operator control commands from the console. An SVC 34 from the Command Scheduler places the CIBs on the queue, and the SVC 34 routine removes them. The second word of the queue is the communication ECB. Copy buffer queue-When a message is to be copied from one queue medium to another, the first buffer of the message is tposted to COPY, which places the buffer on the copy buffer queue, pointed to by the A VTCOPY field. This field also points to the copy QCB whose first two words are used as a FIFO queue of buffers. Each message stays on the copy buffer queue until a CPB is available to be used to copy the message. One CPB is used per message as CPBs become available, the use of this queue ensures that messages will be copied in the order that the copy operation was requested. Buffers are chained by their second word. A zero is in the second word of the last buffer. CPR free pool queue-The AVTFCPB field contains the address of the first of a chain of available CPBs. They are chained by CPBNEXT, with a zero in the last CPB. This is not a FIFO queue (as are other CPB queues) but a LIFO (last-infirst-out) queue. If the user specifies too many CPBs (INTRO CPB=integer), the CPBs at the end of this free pool chain will never have been used. The user should look at a TCAM dump for unused CPBs and specify a smaller number next time to save main storage. Disabled ready queue -The disabled ready queue is a FIFO queue that contains elements passed from an application program's disabled appendages and attached tasks for processing by the MCP. The TeAM Dispatcher merges the contents of this queue into the enabled ready queue. Disk end queue-There are two disk end queues. The address of the first is at A VTDKAPQ. This queue is used to pass CPBs from the Disk End Appendage to the CPB Cleanup routine. The address of the second queue is at A VTDKENQ. This queue is used as an alternate in the disabled/enabled interface to pass CPBs from the Disk End Appendage to the CPB Cleanup routine. If the A VTBPLKN bit is on, the Disk End Appendage cannot put a CPB in the disk end queue pointed to by A VTDKAPQ, but must place it in the queue pointed to by AVTDKENQ. Appendix B. TCAM Queues and QCBs 635 Enabled ready queue-see ready queue. EXCP queue-This is a chain of CPBs for the one cylinder, in one extent of a disk message queues data set, that is currently ready for I/O execution. CPBs are ordered on this chain by FIFO order. CPB Initialization waits on this queue for I/O to complete so it can build a new CPB and do another EXCP. EXCP driver input queue-This is a chain of CPBs that the EXCP Driver processes until it is empty. Only Read or Write CCW op codes and the buffer unit address are in the channel program. The disk address is an absolute disk address in the same form as when taken from the CPBRADDR or CPBNADDR field. An indication of reusability or nonreusability is in the CPBFLAG. The EXCP Driver removes the CPBs in FIFO order, places each one on the new queue by cylinder, and then completes the channel program. No EXCP is issued until the input queue is emptied. A doubleword queue pointer is in the AVTINCPQ field. FEFO queue-first-ended-first-out-A FEFO message queue is ordered so that the message that ends first will be sent out first, regardless of the order in which the messages were received. FIFO queue-A FIFO queue is any queue of elements managed on a first-infirst-out basis. When an element is placed on the queue, it is placed in the order in which it was received, and the first element on the queue is the first to be removed. Hold queue-A hold queue is a FEFO-ordered queue that is a part of the priority level QCB for each destination QCB. If a terminal is intercepted (held), its messages are placed in this queue while messages for other terminals on this destination QCB are sent. New queue -The new queue is Ii queue on the lOB chain of CPBs being built by the EXCP Driver. The CPBs are sorted on this queue by absolute cylinder number and are in FIFO order for any cylinder group. The CPBs are placed on the queue one at a time from the input queue by the EXCP Driver. They are removed by cylinder group and are placed on the retry queue. No-buffer queue-This is a FIFO-ordered queue of CPBs for read operations when no buffers are in the buffer unit pool. This is an internal queue used by IEDQFA and IEDQFQ. The elements are linked by the CPBNEXT field. No-CPB queue-This is queue of buffers and ERBs waiting for CPBs. The queue is located in the A VT and serves as a place to keep elements until CPBs are built for them. Operator control queue -This is FIFO queue of buffers, dummy CIBs from application programs and TOTE, stopped LCBs, and dummy ERBs with their associated buffers. The second word of the queue is the operator control ECB. The queue is used as a communication link between the TCAM MCP and Operator Control. All commands other than those from the console are placed on this queue, as well as elements (LCBs, ERBs) requested by Operator Control. Ready queue -This is a priority-FIFO ordered queue of TCAM elements that are to be processed by the TCAM subtasks. 636 OS TeAM PLM Retry queue-This is a chain of CPBs for one cylinder in an extent of the disk message queues data set. These CPBs are next in line for I/O execution after the CPBs on the EXCP queue are processed. When the Disk End Appendage receives control after the CPBs on the EXCP queue are finished, it requests lOS to do a retry after moving the CPBs on this queue to the EXCP queue. This last move avoids an extra EXCP and permits the channel to begin work on the new disk channel program faster. System delay queue -This is a chain of LCBs pointed to by the seventh word of the system delay OCB, which is pointed to by A VTHI. The System Delay subtask (IEDOHI) waits on the queue until all the LCBs are on the queue and then begins the system delay interval. When a system delay is requested, the Leased Receive Scheduler and the Buffered Terminal Scheduler tpost LCBs to the system delay queue, rather than continue I/O on the lines. When the count of LCBs is the same as the number of LCBs received by the System Delay subtask, a time request (the system delay OCB) is posted to the Time Delay subtask (IEDOHG). After the interval is complete, each LCB is removed and tposted to itself to resume line activity. Time delay queue-This is a relative-time-of-interrupt ordered chain of elements that are requesting a system STIMER interrupt. The elements are chained by the eighth word in the element. The time delay OCB is always the last element in the queue. The purpose of this queue is to inform the routine tposting the element when a specified time has elapsed. TCA.M QCBs Buffer disposition QCB -The address of the Buffer Disposition subtask (IEDOBD) is the first address in the list pointed to by the AVTMSGS field of the AVT. The buffer disposition OCB comprises the first three words of the routine. The Incoming/Outgoing Message Delimiter routine (IEDOA4) tposts the last segment of the incoming message to the QCB, and the Line End Appendage routine (IGG019RO) tposts the last segment of the outgoing message to the OCB to execute the INMSG and OUTMSG macro instructions. The Line End Appendage routine tposts the LCB to the OCB when the routine reaches the end of the polling list to clean up the line. Buffer request QCB -The buffer request OCB address is located in the AVTBFREB field in the AVT. The Receive Schedulers (IGG019Rl and IGG019R3) tpost to the OCB ERBs requesting buffers for receiving operations. Buffer units are chained from the first word of the OCB to form the buffer unit pool. Buffer return QCB -The buffer return OCB address is located in the AVTBFRTB field in the AVT. Routines that are no longer using buffers tpost them to the OCB to be returned to the buffer pool. Checkpoint QCB -The checkpoint OCB address is located in the AVTCKPTB field in the AVT. This is a special type of OCB for attached tasks, and the OCB is also the STCB. An ECB is in the second word of the OCB. The Checkpoint Executor (IEDONF) waits on the ECB. The TCAM Dispatcher posts the ECB when it puts a request element on the chain. The checkpoint OCB is never tposted to itself. However, when a checkpoint request element is tposted to the OCB, the Checkpoint Executor is given control. Appendix B. TCAM Queues and QCBs 637 Closedown completion element QCB -the QCB address is located in the AVTCLOSB field in the AVT. The MCP Closedown Processing routine (IEDQCO), and the Checkpoint Notification and Disposition routine (IEDQNQ) tpost the QCB to itself to give control to the Resident Closedown Completion routine (IEDQNA). The QCB is used as an element with the lowest priority of any element in the system. It is the only element ever tposted to the QCB. Copy QCB -The address of the copy QCB is in the AVTCOPY field of the address vector table. The TCAM Dispatcher activates the Copy subtask when a buffer has been tposted to this QCB to have a message copied from one queuing medium to another. CPB Cleanup QCB-The address of the CPB cleanup QCB is located in the AVTCPBCB field in the AVT. The Disk End Appendage (IGGO 19R2), upon completion of an I/O operation, chains the completed CPBs on the AVTDKAPQ queue and tposts the QCB to itself to activate the CPB Cleanup routine (IEDQFQ) in CPB Initialization (IEDQFA). Cutoff QCB -The cutoff QCB is located within the Cutoff routine (IEDQAU). The Cutoff routine places the address of the QCB in the first word of the LCB. Line End Appendage (IGG019RO) tposts the LCB being cut off to the QCB when a channel program check occurs or when the Read Skip or Write Break sequence initiated by the Cutoff routine is complete. Delete from time delay QCB -The address of the delete from time delay QCB is in the AVTCPRMB field of the AVT. Attached tasks tpost a special four-word element to this QCB. The element defines another element and requests the Time Delay subtask (entry point IEDQHG03) to search the time delay queue for a particular element. If the Time Delay subtask finds the element on the time delay queue, it removes that element. After this process, the subtask tposts the fourword element back to the requester to indicate the completion of the request. Destination QCB -A pointer to a specific destination QCB is in each terminal entry. This pointer does not change, but, as messages are received or sent, the SCB points to the destination QCB involved. For dial or buffered terminals, the Time Delay subtask (IEDQHG) tposts the QCB to itself at the end of a time delay. Routines tpost full buffers to be queued to the destination QCB. The Destination Scheduler (IEDQHM) is always the last subtask represented on the STCB chain of a destination QCB. A destination QCB is made up of a master QCB, which contains the send scheduler STCB for this QCB and other information pertinent to the entire QCB; and one or more priority level QCBs, which contain all the queuing pointers for messages for that particular priority level. Disk 110 QCB -The disk 110 QCB address is located in the AVTDSIOB field in the AVT. Buffers requesting writing on disk or servicing·of a bit are tposted to the disk I/O QCB for processing by CPB Initialization. The schedulers tpost to this QCB ERBs requesting full buffers to send. Log destination QCB -There is a pointer to a log destination QCB in every logtype terminal table entry. When a log message is specified, a LOGTYPE macro must be specified in the terminal table to generate a terminal entry, an LCB, and an SCB. The Log Message routine (IEDQBY) tposts a duplicate header to the log destination QCB after the complete message is received or sent. 638 OS TeAM PLM Master QCB-This is the basic format of a ~estination QCB. This QCB contains ten words of destination-specific data. Multiple routing QCB-The address of the multiple routing QCB is in the list of VCONs pointed to by the AVTMSGS field in the AVT. The FORWARD parameter list has the index to it. Elements chained on the QCB are either IEDQFA recalled buffers or the IEDQFA ERB for the line. On-line test QCB -The address of the on-line test QCB is in the AVTOLTQB field of the AVT. Test request messages (messages requesting TOTE to run an on-line test through TCAM) are tposted to this QCB. Operator control QCB -The address of the operator control QCB is located in the A VTOPCOB field in the AVT. This is a special QCB for attached tasks, and the second word of the QCB is an ECB. When the Dispatcher receives an element for this QCB at the top of the ready queue, the ECB is posted complete. The Translation Test routine (IEDQA3) tposts buffers containing operator commands to the QCB. The Application Program/Operator Control Interface routine (IEDQNB) tposts dummy CIBs from application programs to the QCB. The Buffer Management module-Buffer Request routine (IEDQGA) tposts dummy ERBs containing requested buffers to the QCB. The Stop Line I/O subtask (IEDQHK) tposts stopped LCBs to the operator control QCB. PCB QCB -The PCB QCB is located in words 2 through 4 of the PCB. This QCB is used in support of the QTAM-compatible RETRIEVE macro. The Dispatcher dispatches the Retrieve Scheduler (IEDQE7) from this QCB. The element chain contains retrieved buffers. Priority QCB -Priority QCBs follow the master QCB and are logically a part of the master destination QCB. IEDQHM queues messages on one of the priority QCBs that is associated with the master destination QCB to which the message was tposted. The Send Scheduler (IGG019R4) sends messages queued on the highest-priority QCB first. Put process QCB -The address of the put process QCB is in a process entry in the terminal table. This QCB provides compatability and symmetry so that all terminal entries will look alike to TCAM modules. QCB for IEDQBD02-The QCB is located within the IEDQBD02 Buffer Disposition subtask (IEDQBD02 entry point). The subtask (IEDQBD) tposts the LCB to this QCB when an INMSG/OUTMSG subgroup has been executed. Read-ahead QCB -The address of the read-ahead QCB is in the DEBQCBAD field of the application program data extent block, the location of which is within the process entry work area PERAQCB. The element chain contains buffers processed by the application program output message handler, but not processed by the GET/READ logic. The Dispatcher uses this QCB to dispatch the Get Scheduler (IEDQEW). Recall QCB -The address of this QCB is in the LCBRCQCB field of the LCB. This is a pointer to the QCB of the subtask wishing control to be passed to it with a recalled buffer. The ERB is tposted to the QCB indicated in LCBRCQCB. RE US QCB -The address of the REUS QCB is in the AVTIA field of the address vector table. The QCB is located at an offset of 4 from the beginning of Appendix B. TCAM Queues and QCBs 639 the IGG019RP module. The Destination Scheduler (IEDQHM) tposts the REUS QCB to itself when the adjusted value in A VTRADDR is greater than four times that of A VTLODPT to activate Reusability to service a zone. STARTMH QCB-The address of the STARTMH QCB is in the DCBMH field of the DCB for the line group. Buffers are tposted to this QCB by Line End Appendage and PCI Appendage on input when they are filled. On output, the buffers are tposted to the QCB by Line End Appendage after a positive response to addressing. When buffers are tposted to the QCB, IEDQAA receives control unless EOB checking is requested, in which case IEDQBT receives control. QCB for the Stop Line I/O subtask -The address of this QCB is in the AVTHK field in the AVT. The Stop Line routine (IEDQCK) tposts stop line requests to this QCB. The various schedulers tpost LCBs to it. System delay QCB -The system delay QCB is located in the first three words of the System Delay subtask (IEDQHI). The address of the subtask is in the AVTHI field of the A VT. The System Delay subtask tposts the QCB to the Time Delay subtask (IEDQHG) to start a wait. At the end of the wait, the Time Delay subtask tposts the QCB to itself to activate the System Delay subtask. Time delay QCB .....-The time delay QCB is the last element on the time delay queue. The AQCTL SVC 102 routine (IEDQEB) tposts the QCB to itself as a result of the STIMER exit routine. This QCB is used by the STIMER exit routine to activate the Time Delay subtask (IEDQHG). TSINPUT QCB -The address of this QCB is in the A VTTSOPT field of the A VT. The QCB is tposted to the TSINPUT routine (IEDA YI) to remove the system WAIT and unlock the keyboard. 640 OS TeAM PLM Appendix C. List of Relative Priorities in TCAM TCAM routines apply relative priorities to elements through the use of the TPRIOR macro. The names and values presented in this table are established by this internal macro. Name Value Use Routines Using PRIINTRQ E4 to request full buffers from Disk 1/0 Send Scheduler Receive Scheduler Get Scheduler Put Scheduler Create an Error Message routine PRIFSPCI E8 to request empty buffers PCI Appendage (on first from buffer request QCB; PClonly) to request full buffers Multiple Routing subtask from Disk II 0 PRISBPCI EO to request empty buffers PCI Appendage (all from buffer request QCB; PCls except the to request full buffers first) from Disk 1/0 PRIDSKRQ EC to request an empty unit by chaining the ERB on the buffer return QCB CPB Cleanup PRIACTIV E4 in tposting ERB to the activate QCB to request building an initial contact program and EXCP for the line CPB Cleanup Buffer Request Buffer Return PRIDKEOB EO to enable EOB to recall; CPB Cleanup to tpost to EOB Handling CPB Initialization after an EOB error; must be lower priority than PRIMHBFR PRlRECAL EO to request from Disk II 0 a copy of the header All routines requesting recalled headers Multiple Routing subtask PRIRCQCB EO to return the ERB to any routine specified in LCBRCQCB CPB Cleanup (after recall) Create an Error Message routine PRIAPERB DO to request full buffers Application Program PRIEDISP EO to tpost ERB to itself Buffer Disposition on send operations when an error occurs before EOM; must be lower priority than PRIMHBFR Appendix C. List of Relative Priorities in TCAM 641 Name 642 OS TeAM PLM Value Use Routines Using PRIMHBFR E4 to have a buffer processed by MH PCI Appendage CPB Cleanup Line End Appendage (receive-last buffer only) PRIUREQ to request an empty unit for insert function in MH; must be higher than PRIMHBFR Unit Request PRIAPBFR DC to tpost a buffer to an application program Incoming/ Outgoing Message Delimiter routine PRILNEND E4 to have Buffer Disposition finish processing macros and clean up the line Line End Appendage (send-last buffer only) PRIRCBFR EO to return a duplicate header to a specified routine CPB Cleanup Destination Scheduler PRIBFRTB E4 to return a buffer or unit to the buffer unit pool Incoming/Outgoing Message Delimiter routine PCI Appendage CPB Cleanup Destination Scheduler MUltiple Routing subtask PRIDSKBF EC to give a unit to CPB Cleanup Buffer Return PRICOPY to have a message copied to a different data set Destination Scheduler PRIDESTQ E4 to put a buffer on a message queue Incoming/Outgoing Message Delimiter routine Multiple Routing subtask Create an Error Message routine PRIDKWRT E4 to have a full buffer written on disk Destination Scheduler PRIDKSRV EC to have a message flagged serviced Buffer Cleanup PRIDKCNC EO to have a message canceled in the message queue Cancel Message PRIDKINT EO to have a message intercepted Hold/Release Terminal routine E8 EO Name Value Use Routines Using PRICKPLN EC to tpost the LCB to Checkpoint requesting a checkpoint Buffer Disposition PRIMULTR EO to tpost the LCB to .. the Multiple Router routine to continue Buffer Disposition TLIST PRIOPCTL DC to tpost an operator control buffer Message Handling routine Operator Control Interface routine PRIDSPLB E4 to tpost last buffer Incoming/ Outgoing of message to buffer Message Delimiter disposition QCB; must be routine lower than any PCI tpost of an ERB PRIONLT to request On-Line Test STARTMH sub task PRILAEND E4 to start error processing Line End Appendage PRIMHUNTE8 to tpost a unit to MH; must be greater than PRIMHBFR Unit Request PRIRELSE EO to release a subtask from Time Delay or Operator Control Operator Control Hold/Release Terminal PRIRLCB EB to return the LCB Buffer Disposition PRILCB E7 to tpost the LCB for cleanup Line End Appendage PRICPBCL E8 to Post CPB Cleanup complete Disk End Appendage PRICKPT to request a complete checkpoint Reusability-Copy subtask MCPCLOSE " Time Delay subtask PRILNFRE E8 to free a line; must get to Destination Scheduler before line is free Buffer Disposition Put Scheduler Send Scheduler PRICLSDN 10 to request closedown; must be lowest priority PRIAPCKP DC to request an incident checkpoint Application Program PRIOPCKP DC to request an incident checkpoint Operator Control PRILNCL to clean up buffers and to free a line; to tpost a line to Buffer Disposition Line End Appendage DC DC EC INEND OUTEND Appendix C. List of Relative Priorities in TeAM 643 Use Routines Using PRILOGLB EO to tpost the Log LCB to itself LOG Scheduler PRISSOLT DC tposted to Operator Control to request Startline/Stopline to return an element from the time delay queue On-Line Test Time Delay PRIATTN DC to tpost the attention element for local devices Attention Handler PRISYSDL DC to initiate system delay Operator Control PRISYSDT D8 to tpost the system delay QCB to Time Delay System Delay PRILCBDL 20 to indicate to System Delay sub task Environment Checkpoint Environment Checkpoint that an LCB is on the time delay queue PRIREUSX E8 to tpost the REUS QCB to itself to activate Reusability servicing of a zone of reusable disk Reusability-Copy to tpost a buffer to disk Reusability-Copy Name PRIFEFO Value EE 1/0 to cause a FEFO pointer to be written to take a message off the FEFO chain PRILCBAT E9 644 OS TeAM PLM to tpost the LCB to the Line End Appendage Stop Line I/O subtask for attention interrupt determination Appendix D: TCAM Channel Program and TP Operation Codes The format of the TCAM channel command word (CCW) is as follows: Offset 0 7 8 31 Ig~;emand I 32 I 3637 Flags Data Address 3940 I I 000 47 48 Reserved I 63 Count The TCAM channel programs are generated by the I/O Generator module (IEDQKA). Channel programs are listed by operation types within communication line types. The description of each channel program begins with a representation of. the model channel program according to the followingcategories: 1. Operation-The command code with a brief description of the information that is being transferred. 2. Address-The data address that is set in the CCW before execution: Buffer refers to the buffer CCW address. Table refers to the appropriate location in the special characters table. List refers to the applicable invitation or addressing list entry. LeB refers to the line control block. Entry refers to addressing characters, dial digits, etc., in a terminal entry. Idles refers to an idles loop that is used to process data. 3. Flags-The flags that are set in the generated CCW are: chain command (CC), chain data (CD), and suppress length indication (SLI). 4. Count-The data count that is set in the generated CCW before execution. A TP Op code differentiates among the types of CCWs on which interrupts can occur. In TCAM, the Activate-I/O Generator subtask builds a string of TP Op codes for any given channel program in the LCB. There is one TP Op code for each CCW. These codes are retrieved and used by Line End Appendage. A TP Op code with an even-numbered value represents a text or non-text CCW for which an interrupt is anticipated. A TP Op code with an odd-number value represents a CCW for which no interrupt is anticipated. The following is a list of the TCAM TP Op codes: Name Value Description TPWREOT X'OI' Write EOT for selection TPOPEN X'02' Open TP Op Code TPWRPOLL X'03' Write Polling Characters TPRDRESP X'04' Read Response to Polling TPWRPAD X'OS' Write pad characters TPENABLE X'06' Enable on Dial Line TPWRAD X'07' Write Addressing Sequence TPRDRSPD X'08' Read Response to Addressing Appendix D: TCAM Channel Program and TP Operation Codes 645 Name Value Description TPWREOA X'09' Write EOA Sequence TPRDRPEB X'OA' Read Response to EOB/ETB TPWRCPU X'OB' TPRDENQ X'OC' ReadENQ TPWRENQ X'OD' Write ENQ TPRSPENQ X'OE' Read Response to ENQ TPWRDLET X'OF' Write DLE EOT TPRDID X'10' Read ID (TSO) TPNULL X'll' Non-Read/Write CCWs for which no Interrupt is anticipated TPBREAK X'12' Write BREAK (TSO) TPENQAD X'13' Write ENQ after Selection Response TPRDLC X'14' Read LCOUT TPWRACK X'15' Write Response Prior to Text TPWRAKNK X'16' Write Response TPWRTONE X'I7' Write Tone (WTTA BSC) TPRDIDNQ X'18' BSC Read ID ENQ TPRDIDAK X'IA' BSC Read ID ACK TPRESET X'IC' Abort for Send/Receive TPTWXID X'IE' Read TWXID TPBUFEOT X'20' Buffered Terminal Reset after Block TPCLOSE X'22' Close SDR Recording TPRSPAD X'24' Write Reset after Selection TPRDSKIP X'51' Read Skip Loop TPWRIDLE X'53' Write Idles Loop TPDLESTX X'57' Write DLE STX TPDLEETX X'59' Write DLE ETB (ETX) TPENQRSP X'5B' Write ENQ in Response to Text TPTEXT X'FF' Text CCW Write CPUID The first two CCWs in Read Initial channel programs are the following: Operation A Read TIC Address Flags TP Code Count Skip label A CC,SLI 51 1 These CCWs are executed whenever a buffer is not available. The initial contact CCWs are constructed in the channel program area plus 16 (third CCW). 646 OS TeAM PLM When an Idle character is defined for a device, the first two CCWs in Write Initial channel programs are the following: Operation A Write TIC Address Flags TP Code Count Idles label A CC,SLJ 53 3 CHANNEL PROGRAMS FOR THE AT&T 83B3 SELECTIVE CALLING STATION LINES Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write polling characters Read Response TIC Table List CC,SLJ CC,SLJ 01 03 Buffer Buffer CD,SLJ 04 2 The Read Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. Thus, when there is a one-byte positive response, the response is followed by data. This reduces the count to zero and causes data chaining to read the rest of the data until an EOB or EOT is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End Appendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to lOS for execution of the CCWs. Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write addressing characters Read Response Write EOA sequence TIC Table T entry CC,SLJ CC,SLI 01 07 LCB Table Idles CD 08 09 3 2 9 The Write Initial channel program places the line in control mode, addresses a terminal, and reads the response. An interrupt is taken on the Read Response, after which buffers are tposted to the outgoing MH. Restart is made at the Write EOA sequence, which transfers-in-channel to the Idles loop and from there writes data. Appendix D: TCAM Channel Program and TP Operation Codes 647 CHANNEL PROGRAMS FOR WESTERN UNION PLAN I15A OUTSTATION Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write polling characters Read Response TIC Table List CC,SLI CC,SLI 07 03 Buffer Buffer CD,SLI 04 3 2 2 The Read Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. Thus, when there is a one-byte positive response, the response is followed by data. This reduces the count to zero and causes data chaining to read the rest of the data until an EOB or EOT is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End Appendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to lOS for execution of the CCWs. Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write addressing characters Read Response Write EOA sequence TIC Table T entry CC,SLI CC,SLI 01 07 3 LCB Table Idles CD 08 09 9 4 2 The Write Initial channel program places the line in control mode, addresses a terminal, and reads the response. An interrupt is taken on the Read Response, after which buffers are tposted to the outgoing MH. Restart is made at the Write EOA sequence, which transfers-in-channel to the Idles loop and from there writes data. CHANNEL PROGRAMS FOR mM 1030 LINES Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write polling characters Read Response TIC Table List CC,SLI CC,SLI 01 03 3 Buffer Buffer CD,SLI 04 2 1 The Read, Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. Thus, when there is a one-byte positive response, the response is followed by data. This reduces the count to zero and 648 OS TeAM PLM causes data chaining to read the rest of the data until an EOB or EOT is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End Appendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to lOS for execution of the CCWs. Read Continue Channel Program Operation Address Flags Write positive (ACK)Table or negative (NAK) response TP Code Count 16 1 The Read Continue channel program sends a positive or negative response to the previous message block to indicate a response from TCAM. Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write addressing characters Read Response Write EOA sequence TIC Table T entry CC,SLI 'CC,SLI 01 07 3 2 LCB Table Idles CD 08 09 9 1 The Write Initial channel program places the line in control mode, addresses a terminal, and reads the response. An interrupt is taken on the Read Response, after which buffers are tposted to the outgoing MH. Restart is made at the Write EOA sequence, which transfers-in-channel to the Idles loop and from there writes data. Write Continue Channel Program Operation Address Flags TP Code Count Read Response TIC LCB Buffer CC,SLI OA 9 The Write Continue channel program reads the response to the last message block. If the response is positive, chaining takes place to the next Write Text command. Appendix D: TCAM Channel Program and TP Operation Codes 649 CHANNEL PROGRAMS FOR IBM 1050 LEASED LINES Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write polling characters Read Response TIC Table List CC,SLI CC,SLI 01 03 2 Buffer Buffer CD,SLI 04 2 3 The Read Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. Thus, when there is a one-byte positive response, the response is followed by data. This reduces the count to zero and causes data chaining to read the rest of the data until an EOB or EOT is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End A.ppendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to IDS for execution of the CCWs. Read Continue Channel Program Operation Address Write positive or Table negative response TIC Buffer Flags TP Code Count CC,SLI 16 1 The Read Continue channel program writes the appropriate response to a block of data and then chains to read data. Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write addressing characters Read Response Write EOA sequence TIC Table T entry CC,SLI CC,SLI 01 07 3 LCB Table Idles CD 08 09 9 1 2 The Write Initial channel program places the line in control mode, addresses a terminal, and reads the response. An interrupt is taken on the Read Response, after which buffers are tposted to the outgoing MH. Restart is made at the Write EOA sequence, which transfers-in-channel to the Idles loop and from there writes data. 650 OS TeAM PLM Write Continue Channel Program Operation Address Flags TP Code Count Read Response TIC LCB Buffer CC,SLI OA 9 The Write Continue channel program reads the response to the last message block. If the response is positive, chaining takes place to the next Write Text command. Write Conversational Channel Program Operation Address Flags TP Code Count Write EOA TIC Table Idles CD,SLI 09 1 The Write Conversational channel program writes end-of-address and then chains to write data. CHANNEL PROGRAMS FOR IBM 1050 DIAL Read Initial Channel Program Operation Address Disable Enable Write EOT sequence Write polling List characters Read Response Buffer TIC Buffer Flags TP Code Count CC,SLI SLI CD CC,SLI 11 06 01 03 1 1 3 2 CD,SLI 04 2 The Read Initial channel program disables and then enables the line adapter so that a remote terminal may dial the CPU. An interrupt is taken on the enable so that TCAM can set internal switches. Fifteen pad characters are sent by the CPU, followed by an EOT sequence; this places the terminal in control mode. Two polling characters are sent and then a Read Response that specifies a data count of two, with wrong length indication not suppressed, while the length of the response character is one byte. The effect of this technique is as follows: 1. Positive response: The response character and the first byte of the message are read under control of the Read Response CCW. This reduces the data count to zero and causes data chaining to take place. The second and subsequent bytes of the message are read under control of the address and count fields of the Read Data CCW. Execution continues in the channel with an interrupt occurring only at receipt of an EOB or EOT. 2. Negative response: This response causes channel end and device end with unit exception and wrong length record indicated. The Read Initial channel program then transfers-in-channel to the address in the buffer CCW to read data. Appendix D: TCAM Channel Program and TP Operation Codes 651 Read Continue Channel Program Operation Address Write positive (ACK)Table or negative (NAK) response TIC Buffer Flags TP Code Count CC,SLI 16 1 The Read Continue channel program sends a positive or negative response to the previous message block and continues reading data. Write Initial Channel Program Operation Disable Dial Write pad characters Write EOT sequence Write addressing characters Read Response to address WriteEOA TIC Address Flags TP Code Count Tentry Table Table T entry CC,SLI CC,SLI CD,SLI CD,SLI CC,SLI 11 11 1 X 05 01 07 3 2 LCB SLI 08 9 Table Idles CD,SLI 09 1 15 The Write Initial channel program disables the line and then dials a terminal. When the remote terminal answers, the CPU sends the pad characters and the EOT sequence, which places the terminal in control mode. The address characters select the component, which responds to the addressing. End-of-address terminates addressing, and then the Write Initial channel program transfers-in-channel to the Idles loop and from there to write data. The X count value depends on the number of dial digits specified in the terminal entry. Write Continue Channel Program Operation Address Flags TP Code Count Read Response TIC LCB Buffer CC,SLI OA 9 The Write Continue channel program reads the response to the last message block. If the response is positive, chaining takes place to the next Write Text command. Write Conversational Channel Program Operation Address Flags TP Code Count WriteEOA TIC Table Idles CD,SLI 09 1 The Write Conversational channel program writes End-of-Address character and then transfers-in-channel to a Write Idles loop to write data. 652 OS TeAM PLM CHANNEL PROGRAM FOR IBM 1050 W / ATTENTION FEATURE FOR TSO MONITOR Monitor After a Read or Write Operation Address Flags Write EOT sequence Read Response Write EOA Prepare Table LCB Table LCB CC,SLI 10 CC,SLI,SKP 10 CC,SLI 10 10 TP Code Count 3 1 1 1 This channel program resets the 1050 with the EOT sequence and reads the generated response. The terminal is then put in receive mode and the keyboard is locked. The TCU is then prepared to receive an attention request from the 1050. This request is generated by pressing the Attention Key at the 1050. CHANNEL PROGRAMS FOR IBM 1060 TERMINALS Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write polling characters Read Response TIC Table List CC,SLI CC,SLI 01 03 3 2 Buffer Buffer CD,SLI 04 2 The Read Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. Thus, when there is a one-byte positive response, the response is followed by data. This reduces the count to zero and causes data chaining to read the rest of the data until an EOB or EOT is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End Appendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to lOS for execution of the CCWs. Read Continue Channel Program Operation Address Write positive (ACK)Table or negative (NAK) response Flags TP Code Count SLI 16 1 The Read Continue channel program sends a positive or negative response to the previous message block and continues reading data to the previous block. Appendix D: TCAM Channel Program and TP Operation Codes 653 Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write addressing characters Read Response Write EOA sequence TIC Table T entry CC,SLI CC,SLI 01 07 3 2 LCB Table Idles CD 08 09 9 1 The Write Initial channel program places the line in control mode, addresses a terminal, and reads the response. An interrupt is taken on the Read Response, after which buffers are tposted to the outgoing MH. Restart is made at the Write EOA sequence, which transfers-in-channel to the Idles loop and from there writes data. Write Continue Channel Program Operation Address Flags TP Code Count Read Response TIC LCB Buffer CC,SLI OA 9 The Write Continue channel program reads the response to the last message block. If the response is positive, chaining takes place to the next Write Text command. CHANNEL PROGRAMS FOR IBM 2741 LEASED Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Prepare Sense Read Response TIC Table CC,SLI 07 3 CC,SLI CC,SLI CD,SLI 11 11 1 1 04 2 LCB Buffer Buffer The Read Initial channel program sends a write EOT sequence and then prepares the control unit to receive a message from a terminal. The Sense operation informs the CPU of the status of the terminal through the Read Response. The Read Initial channel program then transfers-in-channel to read data. Write Initial Channel Program Operation Address Write EOA sequence Table Write idle Table characters TIC Idles 654 OS TeAM PLM Flags TP Code Count CD,SLI CD,SLI 09 05 1 15 The Write Initial channel program sends an EOA sequence to set up the terminal and writes 15 idle characters on the line. The program then transfers-in-channel to a write command. CHANNEL PROGRAM FOR IBM 2741 DIAL Read Initial Channel Program Operation Address Flags Disable Enable Prepare Sense Read Response TIC LCB LCB LCB LCB Buffer Buffer CC,SLI SLI CC,SLI CC,SLI CD,SLI TP Code Count 11 06 11 11 04 1 1 1 1 2 The Read Initial channel program disables and then enables the line to receive a call. TCAM takes an interrupt on the Enable to set internal switches. The Prepare command conditions the control unit to receive a message. Read Response reads the response from the terminal and then chains to read data by transferring-in-channel. Note: The Write Initial channel program for 2741 Dial is the same as for 2741 Leased. TCAM, however, does not dial a 2741; the user calls to establish the connection. CHANNEL PROGRAMS FOR IBM 2741 LEASED AND DIAL FOR TSO MONITOR Monitor After a Read Operation Address Flags TP Code Count WriteEOA Prepare Table LCB CC,SLI 10 10 1 1 This monitor channel program first restores the keyboard of the terminal by sending an EOA. The TCU is then prepared to receive the EOT generated at the terminal when the Attention Key is pressed. Monitor Mter Write Operation Address Prepare LCB Flags TP Code Count 10 1 This monitor channel program prepares the TeD to receive the EOT from the terminal. Since the terminal keyboard was locked because it was in receive mode, only a Break (Attention Key) can be sent from the terminal. Appendix D: TCAM Channel Program and TP Operation Codes 6SS CHANNEL PROGRAMS FOR IBM 2740 COMMUNICATION LINES IBM 2740 BASIC CHANNEL PROGRAM Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Prepare Sense Read Response TIC Table CC,SLI CC,SLI CC,SLI CD,SLI 07 3 11 11 1 1 04 2 LCB Buffer Buffer The Read Initial channel program sends a write EOT sequence and then prepares the control unit to receive a message from a terminal. The Sense operation informs the CPU of the status of the terminal through the Read Response. The Read Initial program then transfers-in-channel to read data. Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write EOA sequence Write idle characters TIC Table Table Table CD,SLI CD,SLI CD,SLI 01 09 05 3 1 15 Idles The Write Initial channel program sends an EOT and EOA sequence for preparing . the terminal. It then writes 15 idle characters and transfers-in-channel to a Write command. IBM 2740 WITH CHECKING Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Prepare Sense Read Response TIC Table CC,SLI CC,SLI CC,SLI CD,SLI 01 3 11 11 1 1 04 2 LCB Buffer Buffer The Read Initial channel program sends a Write EOT sequence, then prepares the control unit to receive a message from a terminal. The Sense operation informs the CPU of the status of the terminal through the Read Response. The Read Initial program then transfers-in-channel to read data. 656 OS TeAM PLM Read Continue Channel Program Operation Address Flags TP Code Count Write circle Y or circle N TIC Table CC,SLI 16 1 Buffer The Read Continue channel program is initiated after a Read Initial operation. The program writes the response character and then transfers-in-channel to read data. Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write EOA sequence Write idle cl\aracters TIC Table Table Table CD,SLI CD,SLI CD,SLI 09 1 05 15 01 3 Idles The Write Initial channel program sends an EOT and EOA sequence for preparing the terminal. It then writes.15 idle characters and transfers-in-channel to a Write command. Write Continue Channel Program Operation Address Flags TP Code Count Read Response TIC LCB Buffer CC,SLI OA 9 The Write Continue channel program reads the response after a Write Initial operation and then transfers-in-channel to a Write Text command in the buffer. Write Conversational Channel Program Operation Address Flags TP Code Count WriteEOA TIC Table Idles CD,SLI 09 1 The Write Conversational channel program writes End-of-Address character and then transfers-in-channel to a Write Idles loop to write data. Appendix D: TCAM Channel Program and TP Operation Codes 657 IBM 2740 WITH DIAL Read Initial Channel Program Operation Disable Enable Prepare Sense Read Response TIC Address LCB Buffer Buffer Flags TP Code Count CC,SLI SLI CC,SLI CC,SLI CD,SLI 11 06 11 11 04 1 1 1 1 2 The Read Initial channel program disables and then enables the line to receive a call. TCAM takes an interrupt on the Enable to set internal switches. The Prepare command conditions the control unit to receive a message. Read Response reads the response from the terminal and then chains to read data. Write Initial Channel Program Operation Address Disable Dial Write pad characters Write EOT sequence Write EOA plus idles TIC T entry Table Table Table Idles Flags TP Code Count CC,SLI CC,SLI CD,SLI CD,SLI CD,SLI 11 11 OS 01 09 1 X 15 3 16 The Write Initial channel program disables the line and then dials the specified terminal. The channel program sends 15 pad characters before the EOT sequence. An EOA character plus 15 idle characters are sent and then the program transfers-in-channel to write text. The X count value depends on the number of dial characters specified in the terminal entry. IBM 2740 WITH DIAL AND CHECKING Read Initial Channel Program Operation Disable Enable Prepare Sense Read Response TIC Address LCB Buffer Buffer Flags i'P Code Count CC,SLI SLI CC,SLI CC,SLI CD,SLI 11 06 11 11 04 1 1 1 1 2 The Read Initial channel program disables and then enables the line to receive a call. The Prepare command conditions the control unit to receive a message. Read Response reads the terminal's response and then chains to read data. 658 OS TeAM PLM Write Initial Channel Program Operation Address Disable Dial Write pad characters Write EOT sequence Write EOA plus idles TIC T entry Table Table Table Idles Flags TP Code Count CC,SLI CC,SLI CD,SLI CD,SLI CD,SLI 11 1 11 05 01 09 X 15 3 16 The Write Initial channel program disables the line and then dials the specified terminal. The channel program sends 15 pad characters before the EOT sequence. An EOA character plus 15 idle characters are sent and then the program transfers-in-channel to write text. X represents the number of dial digits for the terminal. IBM 2740 WITH DIAL AND TRANSMIT CONTROL Read Initial Channel Program Operation Address Disable Enable Write EOT sequence Write polling List characters Read Response Buffer TIC Buffer Flags TP Code Count CC,SLI SLI CD CC,SLI 06 01 03 1 1 3 2 CD,SLI 04 2 11 The Read Initial channel program disables and then enables the line adapter so that a remote terminal may dial the CPU. After the Enable, TCAM waits for an interrupt from the terminal, after which the channel program resumes. Fifteen pad characters are sent by the CPU, followed by an EOT sequence; this places the terminal in control mode. Two polling characters are sent and then a Read Response that specifies a data count of two. The effect of this technique is as follows: 1. Positive response: The response character and the first byte of the message are read under control of the Read Response CCW. This reduces the data count to zero and causes data chaining to take place. The second and subsequent bytes of the message are read under control of the address and count fields of the Read Data CCW. Execution continues in the channel with an interrupt occurring only at receipt of an EOB or EOT. 2. Negative response: This response causes channel end and device end with unit exception and wrong length record indicated. The Read Initial channel program then transfers-in-channel to the address in the buffer CCW to read data. Appendix D: TCAM Channel Program and TP Operation Codes 659 Write Initial Channel Program Operation Address Disable Dial Write pad characters Write EOT sequence Write EOA plus idles TIC T entry Table Table Table Idles Flags TP Code Count CC,SLI CC,SLI CD,SLI CD,SLI CD,SLI 11 11 05 01 09 1 X 15 3 16 The Write Initial channel program disables the line and then dials the specified terminal. The channel program sends 15 pad characters before the EOT sequence. An EOA character plus 15 idle characters are sent and then the program transfers-in-channel to write text. X represents the number of dial digits for the terminal. IBM 2740 WIm DIAL, TRANSMIT CONTROL, AND CHECKING Read Initial Channel Program Operation Address Disable Enable Write EOT sequence Write polling List characters Read Response Buffer TIC Buffer Flags TP Code Count CC,SLI SLI CD CC,SLI 11 06 01 03 1 1 3 2 CD,SLI 04 2 The Read Initial channel program disables and then enables the line adapter so that a remote terminal may dial the CPU. After the,Enable, TCAM waits for an interrupt from the terminal, after which the channel program resumes. Fifteen pad characters are sent by the CPU, followed by an EOT sequence; this places the terminal in control mode. Two polling characters are sent and then a Read Response that specifies a data count of two. The effect of this technique is as follows: 1. Positive response: The response character and the first byte of the message are read under control of the Read Response CCW. This reduces the data count to zero and causes data chaining to take place. The second and subsequent bytes of the message are read under control of the address and count fields of the Read Data CCW. Execution continues in the channel with an interrupt occurring only at receipt of an EOB or EOT. 2. Negative response: This response causes channel end and device end with unit exception and wrong length record indicated. The Read Initial channel program then transfers-in-channel to the address in the buffer CCW to read data. 660 OS TeAM PLM Write Initial Channel Program Operation Address Disable Dial Write pad characters Write EOT sequence Write EOA plus idles TIC T entry Table Table Table Idles Flags TP Code Count CC,SLI CC,SLI CD,SLI CD,SLI CD,SLI 11 1 11 05 01 09 X 15 3 16 The Write Initial channel program disables the line and then dials the specified terminal. The channel program sends 15 pad characters before the EOT sequence. An EOA character plus 15 idle characters are sent and then the program transfers-ip-channel to write text. X represents the number of dial digits for the terminal. IBM 2740 (DIAL WITH A CONNECTION) Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Prepare Sense Read Response TIC Table CC,SLI CC,SLI CC,SLI CD,SLI 01 11 11 04 LCB Buffer Buffer 3 1 1 2 The Read Initial channel program sends a write EOT sequence, then prepares the control unit to receive a message from a terminal. The Sense operation informs the CPU of the status of the terminal through the Read Response. The Read Initial program then transfers-in-channel to read data. Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write EOA sequence Write idle characters TIC Table Table Table CD,SLI CD,SLI CD,SLI 01 09 05 3 1 15 Idles The Write Initial channel program sends an EOT and EOA sequence for preparing the terminal. It then writes 15 idle characters and transfers-in-channel to a Write command. Appendix D; TCAM Channel Program and TP Operation Codes 661 mM 2740 WITH CHECKING (DIAL WITH A CONNECTION) Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Prepare Sense Read Response TIC Table CC,SLI CC,SLI CC,SLI CD,SLI 11 11 11 LCB Buffer Buffer 04 3 1 1 2 The Read Initial channel program sends a Write EOT sequence, then prepares the control unit to receive a message from a terminal. The Sense operation informs the CPU of the status of the terminal through the Read Response. The Read Initial program then transfers-in-channel to read data. Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write EOA sequence Write idle characters TIC Table Table Table CD,SLI CD,SLI CD,SLI 01 09 3 05 15 1 Idles The Write Initial channel program sends an EOT and EOA sequence for preparing the terminal. It then writes 15 idle characters and transfers-in-channel to a Write command. mM 2740 WITH STATION CONTROL Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write polling characters Read Response TIC Table List CC,SLI CC,SLI 01 03 3 Buffer Buffer CD,SLI 04 2 2 The Read Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. Thus, when there is a one-byte positive response, the response is followed by data. This reduces the count to zero and causes data chaining to read the rest of the data until an EOB or EOT is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End Appendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to lOS for execution of the CCWs. 662 OS TeAM PLM Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write addressing characters Read Response Write EOA sequence TIC Table T entry CC,SLI CC,SLI 01 07 3 LCB Table Idles CD 08 09 9 1 2 The Write Initial channel program places the line in control mode, addresses a terminal, and reads the response. An interrupt is taken on the Read Response, after which buffers are tposted to the outgoing MH. Restart is made at the write EOA sequence, which transfers-in-channel to the Idles loop and from. there writes data. IBM 2740 WITH STATION CONTROL AND CHECKING Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write polling characters Read Response TIC Table List CC,SLI CC,SLI 01 03 3 Buffer Buffer CD,SLI 04 2 2 The Read Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. Thus, when there is a one-byte positive response, the response is followed by data. This reduces the count to zero and causes data chaining to read the rest of the data until an EOB or EOT is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End Appendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to lOS for execution of the CCWs. Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write addressing characters Read Response Write EOA sequence TIC Table T entry CC,SLI CC,SLI 01 07 3 LCB Table Idles CD 08 09 9 1 2 The Write Initial channel program places the line in control mode, addresses a terminal, and reads the response. An interrupt is taken on the Read Response, after which buffers are tposted to the outgoing MH. Restart is made at the Write Appendix D: TCAM Channel Program and TP Operation Codes 663 EOA sequence, which transfers-in-channel to the Idles loop and from there writes data. IBM 2740 WITH TRANSMIT CONTROL (DIAL WITH A CONNECTION) Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write polling characters Read Response TIC Table List CC,SLI CC,SLI 01 03 2 Buffer Buffer CD,SLI 04 2 3 The Read Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. Thus, when there is a one-byte positive response, the response is followed by data. This reduces the count to zero and causes data chaining to read the rest of the data until an EOB or EOT is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End Appendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to lOS for execution of the CCWs. Write' Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write EOA sequence Write idle characters TIC Table Table Table CC,SLI CD,SLI CD,SLI 01 09 OS 3 1 15 Idles The Write Initial channel program sends an EOT and EOA sequence for preparing the terminal. It then writes 15 idle characters and transfers-in-channel to a Write command. IBM 2740 WITH TRANSMIT CONTROL AND CHECKING (DIAL WITH A CONNECTION) Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write polling characters Read Response TIC Table List CC,SLI CC,SLI 01 03 2 Buffer Buffer CD,SLI 04 2 3 The Read Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. Thus, when there is a one-byte positive 664 OS TeAM PLM response, the response is followed by data. This reduces the count to zero and causes data chaining to read the rest of the data until an EOB or EOT is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End Appendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to lOS for execution of the CCWs. Write Initial Channel Program Operation Address Write EOT sequence Table Write EOA sequence Table TIC Idles Flags TP Code Count CC,SLI CD 01 09 3 The Write Initial channel program places the line in control mode. The program then issues the write EOA sequence, transfers-in-channel to the Idles loop, and from there ·writes data. CHANNEL PROGRAMS FOR WORLD TRADE TELEGRAPH Read Initial Channel Program Operation Address Prepare Sense Read Response TIC LCB Buffer Buffer Flags TP Code Count CC,SLI CC,SLI CD,SLI 11 11 04 1 1 2 The Read Initial channel program prepares the control unit to receive a message from a terminal. The Sense operation informs the CPU of the status of the terminal through the Read Response. The Read Initial program then transfers-inchannel to a Read Text command in the buffer. Write Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write letters shift Write mark characters Write Read Response Write EOA sequence TIC Table Table Table CD,SLI CD,SLI CD,SLI 01 17 05 3 1 19 WRU LCB Table Idles CC,SLI 07 08 09 1 24 1 The Write Initial channel program writes an EOT sequence, sends ietters shih to ensure that the terminal motor is on, sends 19 mark characters to condition the line, and writes a WRU on the line, and reads the response. An interrupt is taken on the Read Response, after which the buffers are tposted to outgoing MH. Restart is at the Write EOA sequence, which transfers-in-channel to the Idles loop and writes data. Appendix D: TCAM Channel Program and TP Operation Codes 665 IBM 2260 REMOTE CHANNEL PROGRAMS Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Write polling characters Read Response TIC Table List CC,SLI CC,SLI 01 03 3 3 Buffer Buffer CD,SLI 04 2 The Read Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. Thus, when there is a one-byte positive response, the response is followed by data. This reduces the count to zero and causes data chaining to read the rest of the data until an EOB or EOT is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End Appendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to lOS for execution of the CCWs. Read Continue Channel Program Operation Address Write positive (ACK)Table or negative (NAK) response Buffer TIC Flags TP Code Count CC,SLI 16 1 The Read Continue channel program sends a positive or negative response to the previous message block and continues reading data. Write Initial Channel Program Operation Address Write EOT sequence Table Write address T entry Read Response LCB Flags TP Code Count CC,SLI CC,SLI 01 07 08 3 2 9 The Write Initial channel program writes an EOT sequence followed by an address. After the Read Response, the buffers are tposted to MH and data is transferred to the line by EXCP. Write Continue Channel Program 666 OS TCAM PLM Operation Address Flags TP Code Count Read Response TIC LCB Buffer CC,SLI OA 9 The Write Continue channel program reads the response to the last message block. If the response is positive, chaining takes place to the next Write Text command. IBM 2260 LOCAL CHANNEL PROGRAMS In local mode the channel programs simply read data or write data. IBM 3270 LOCAL CHANNEL PROGRAMS Read Initial Channel Program Operation Address Select, TIC Buffer Flags TP Code Count CC,SLI 11 1 The Select operation causes transfer of the data in the device buffer to the control unit buffer. The channel program then transfers-in-channel to the first text CCW, which is next to be executed. Write Initial Channel Program Operation Address Select TIC Buffer Flags TP Code Count CC,SLI 11 1 Erase All Unprotected Channel Program Operation Address EAU Flags TP Code Count None 26 1 This operation erases all the unprotected fields on the display device. No data is transmitted on an EAU channel program. CHANNEL PROGRAMS FOR IBM 3670 BROADCAST TERMINAL Write Initial Channel Program Operation Address Flags TP Code Count WriteEOT Write Addressing Characters TIC Table T Entry CC,SLI CC,SLI 01 07 03 Idles The Write Initial channel program places the line in control mode by sending the EOT. The program then sends unique Addressing Characters, which cause the data to go to all broadcast terminals on the line. The channel program then transfers-in-channel to the idles loop to write data. Appendix D: TCAM Channel Program and TP Operation Codes 667 CHANNEL PROGRAMS FOR IBM 7770 (DIAL) Read Initial Channel Program Operation Address Disable Enable Write CPU ID (if ID T entry is specified) Read Response Buffer TIC Buffer Flags TP Code Count CC,SLI SLI CC,SLI 06 f OB X CD,SLI 04 2 11 1 The Read Initial channel program disables and then enables the line. The CPU ID is written if this is specified, and then the program chains to a Read Response. The X count value is the length of the CPU ID specified in the invitation list. Write Initial Channel Program This program simply writes data to the 7770. CHANNEL PROGRAMS FOR TTY MODELS 33 AND 35 TWX LINES Read Initial Channel Program Operation Disable Enable Write CPUID Read Response TIC Address T entry Buffer Buffer Flags TP Code Count CC,SLI SLI CC,SLI CD,SLI 11 06 OB 04 1 1 X 2 The Read Initial channel program disables the line and sets the enable latch within the line adapter. This permits the terminal to dial the CPU. The Write CPU ID command writes the CPU identification, which is assigned by the invitation list for the line. A Read Response command is then issued, followed by a TIC to a Read Text in the buffer. X is the length of the CPU ID specified in the invitation list. Write Initial Channel Program Operation Address Flags TP Code Count Disable Dial ReadID T entry LCB CC,SLI CC,SLI SLI 11 11 IE 1 X Y The Write Initial channel program disables and then dials the specified terminal. If the identification received is valid, the program restarts on the Idles loop and writes data. If the ID is invalid, the channel program is terminated. X represents the number of dial digits for the terminal and Y represents the length of the CPU ID specified in the invitation list. 668 OS TeAM PLM CHANNEL PROGRAM FOR TWX FOR TSO MONITOR Monitor After a Read or Write Operation Address Write X-On,X-Off TIC Constant CC,SLI Flags TP Code Count 10 4 *-8 This monitor channel program writes X-On,X-Off characters until the break key is pressed. The X-On,X-Off characters provide an audible indication that the CPU is active and ready to receive data. CHANNEL PROGRAMS EMPLOYING THE AUTO POLL FEATURE The devices that use this feature are IBM 1030 IBM 1050 (nonswitched) IBM 1060 IBM 2740 (with station control) IBM 2740 (with station control and checking) BSC Multipoint Operation Address Write EOT sequence Table Poll List TIC label A TIC label B A Poll List TIC label A BRead Buffer TIC Buffer Flags TP Code Count CC,SLI CC,SLI 01 11 X CC,SLI 11 Z CD,SLI 04 2 Y This feature employs the Read Initial type of channel program. First, a write EOT sequence command is sent, followed by a poll of the addresses in the invitation list. If no positive responses are returned, the program transfers-in-channel to poll another list. If there are positive responses, the Read Initial program transfers-inchannel to a Read Response command, and from there chains to a Read Text in the buffer. X represents the number of EOTs that depend on the type of terminal (1 for BSC, 3 for all others), Y represents the position in the invitation list, and Z is the length in bytes of the invitation list. CHANNEL PROGRAMS FOR IBM BSC MULTIPOINT LINES Read Initial Channel Program Operation Address Flags TP Code Count Write EOT sequence Table CC,SLI 01 3 Write polling characters Read Response TIC List CC,SLI 03 2 Buffer Buffer CD,SLI 04 2 Appendix D: TCAM Channel Program and TP Operation Codes 669 The Read Initial channel program places the line in control mode by sending the EOT sequence, polls the terminal, and then reads the response. The Read Response command has a data count of two. This reduces the count to zero and causes data chaining to read the rest of the data until an ETB or ETX is received or the count is zero. A negative response causes channel end and device end with unit exception and wrong length indicated. Line End Appendage finds the polling restart TP code, reinitializes for the next terminal to be polled, and returns control to lOS for execution of the CCWs. Read Continue Channel Program Operation Address Write ACK or NAK Table response Buffer TIC Flags TP Code Count CC,SLI 16 2 The Read Continue channel programs writes the appropriate response to a block of data and then chains to read data. Write Initial Channel Program Operation Address Write EOT sequence Table Write addressing T entry characters Read Response LCB Flags TP Code Count CC,SLI CC,SLI 01 07 3 08 9 The Write Initial channel program places the line in control mode, addresses a terminal, reads the response (ACK-l), and then begins transmission of data. Write Continue Channel Program Operation Address Flags TP Code Count Read Response TIC LCB Buffer CC,SLI OA 9 The Write Continue channel program reads the response to the last message block. If the response is positive, chaining takes place to the next Write Text command. CHANNEL PROGRAMS FOR BSC DEVICES (BINARY SYNCHRONOUS COMMUNICATION) The devices supported under BSC channel programs are: IBM 2770 mM2780 mM 2790 Data Communications System mM 3780 Data Communications System mM 1130 Computing System mM System/360, all models 20 and higher 670 OS TeAM PLM CHANNEL PROGRAMS FOR S/360 to S/360 POINT-TO-POINT Read Initial Channel Program Operation Address Prepare Read Inquiry Write ACK-O TIC LCB Table Buffer Flags TP Code Count CC,SLI 11 OC 15 CC,SLI 1 11 2 The Read Initial channel program prepares the control unit to receive an inquiry signal, which is read by the Read command. The program then writes an ACK-O and transfers-in-channel to a Read command in the buffer. Read Continue Channel Program Operation Address Write ACK or NAK Table TIC Buffer Flags TP Code Countt CC,SLI 16 2 The Read Continue channel program writes a response (ACK or NAK) and transfers-in-channel to a Read Data command in the buffer. Write Initial Channel Program Operation Address Flags TP Code Count Write Inquiry Read Response Table LCB CC,SLI SLI OD 08 1 2 The Write Initial channel program writes an inquiry, reads the response (ACK-O), and then begins transmission of data. Write Continue Channel Program Operation Address Flags Read Response LCB SLI TP Code Count 9 The Write Continue channel program checks the response to the last block of data (ACK-O, ACK-l, RVI) and restarts on a Write Data command. CHANNEL PROGRAMS FOR S/360 TO 1130 POINT-TO-POINT Read Initial Channel Program Operation Address Prepare Read Inquiry Write ACK-O TIC LCB Table Buffer Flags TP Code Count CC,SLI 11 OC 15 CC,SLI 1 11 2 Appendix D: TCAM Channel Program and TP Operation Codes 671 The Read Initial channel program prepares the control unit to receive an inquiry signal, which is read by the Read command. The program then writes an ACK-O and transfers-in-channel to a Read command in the buffer. Read Continue Channel Program Operation Address Write ACK or NAK Table TIC Buffer Flags TP Code Count CC,SLI 16 2 The Read Continue channel program writes a response (ACK ot: NAK) and transfers-in-channel to a Read Data command in the buffer. Write Initial Channel Program Operation Address Flags TP Code Count Write Inquiry Read Response Table LCB CC,SLI SLI 08 1 2 The Write Initial channel program writes an inquiry, reads the response (ACK-O), and then begins transmission of data. Write Continue Channel Program Operation Address Flags TP Code Count Read Response LCB SLI OA 9 The Write Continue channel program checks the response to the last block of data (ACK-O, ACK-l, RVI) and restarts on a Write Data command. CHANNEL PROGRAMS FOR S/360 TO 2770 POINT-TO-POINT Read Initial Channel Program Operation Address Prepare Read Inquiry Write ACK-O TIC LCB Table Buffer Flags TP Code Count CC,SLI 11 OC 15 CC,SLI 1 11 2 The Read Initial channel program prepares the control unit to receive an inquiry signal, which is read by the Read command. The program then writes an ACK-O and transfers-in-channel to a Read c('mmand in the buffer. Read Continue Channel Program Operation Address Write ACK or NAK Table TIC Buffer 672 OS TCAM PLM Flags TP Code Count CC,SLI 16 2 The Read Continue channel program writes a response (ACK or NAK) and transfers-in-channel to a Read Data command in the buffer. Write Initial Channel Program Operation Address Flags TP Code Count Write Inquiry Read Response Write Escape sequence (STX, ESC or DC,ETB) Read Response Table LCB T entry CC,SLI SLI CC,SLI OD OE 07 1 2 X LCB SLI 08 2 The Write Initial channel program writes an inquiry, reads the response to that inquiry (ACK-O), writes an escape sequence, reads the response (ACK-l), and then begins transmission of data. X represents the length of the addressing sequence specified in the terminal entry. Write Continue Channel Program Operation Address Flags Read Response LCB SLI TP Code Count 9 The Write Continue channel program checks the response to the last block of data (ACK-O, ACK-l, RVI) and restarts on a Write Data command. CHANNEL PROGRAMS FOR S/360 TO 2780 POINT - TO-POINT Read Initial Channel Program Operation Address Prepare Read Inquiry Write ACK-O TIC LCB Table Buffer Flags TP Code Count CC,SLI 11 OC 15 CC,SLI 1 11 2 The Read Initial channel program prepares the control unit to receive an inquiry signal, which is read by the Read command. The program then writes an ACK-O and transfers-in-channel to a Read command in the buffer. Read Continue Channel Program Operation Address Write ACK or NAK Table TIC Buffer Flags TP Code Count CC,SLI 16 2 The Read Continue channel program writes a response (ACK or NAK) and transfers-in-channel to a Read Data command in the buffer. Appendix D: TCAM Channel Program and TP Operation Codes 673 Write Initial Channel Program Operation Address Write Inquiry Table Read Response LCB Write Escape T entry sequence STX,ESC or DC,ETB Read Response LCB Flags TP Code Count CC,SLI SLI CC,SLI OD OE 07 2 X SLI 08 2 1 The Write Initial channel program writes an inquiry, reads the response (ACK-O), writes the escape sequence, reads the response to the escape sequence (ACK-l), and then begins transmission of data. X represents the length of the addressing sequence specified in the terminal entry. Write Continue Channel Program Operation Address Flags Read Response LCB SLI TP Code Count 9 The Write Continue channel program checks the response to the last block of data (ACK-O, ACK-l, RVI) and restarts on a Write Data command. CHANNEL PROGRAMS FOR S/360 TO 3735 DIAL Read Initial Channel Program Operation Disable Enable Read ID Inquiry Write ID (if ID is specified) Write ACK-O TIC Address Flags TP Code Count LCB List CC,SLI CC,SLI SLI CD,SLI 06 18 1 1 16 OB X CC,sLl 15 2 Table Buffer 11 The Read Initial channel program disables the line and enables the control unit. The program then reads the inquiry (and writes the CPU ID, if specified). It then writes an ACK-O and chains to a Read Text command in the buffer. X is the length of the CPU ID. Read Initial Channel Program with Connection EstabHsbed Operation Address Read Inquiry Write ACK-O TIC LCB Table Buffet Flags TP Code Count CC,SLI OC IS. 17 2 The Read Initial channel program reads the inquiry, writes an ACK-O, and then chains to a Read Data command. 674 OS TeAM PLM Read Initial Channel Program-CPU Initiates Contact Operation Disable Dial digits Write CPU ID (if ID is specified) Write Inquiry Read ID ACK-O Write EaT Read Inquiry Write ACK-O TIC Address Flags TP Code Count T entry List CC,SLI CC,SLI CD,SLI 11 11 OB CC,SLI SLI CC,SLI aD lA Table LCB Table LCB Table Buffer CC,SLI 1 X Y OC 1 17 1 17 15 2 01 This Read Initial channel program disables the line and dials the station. The program writes the CPU ID, if specified, and writes an ENQ character. The response is checked. The channel program then writes an EaT character and reads the inquiry from the station. The Read Initial Channel program then writes an ACK-O and continues to read data from the station. Read Initial Channel Program-CPU' Yields the Right to Transmit Operation Address Flags TP Code Count Write EaT Read Inquiry Write ACK-O TIC Table LCB Table Buffer CC,SLI 01 1 OC 17 2 CC,SLI 15 The Read Initial channel program writes an EaT character and then reads the inquiry from the station. The Read Initial channel program then writes an ACK-O and continues to read data from the station. Read Continue Channel Program Operation Address Write ACK or NAK Table TIC Buffer Flags TP Code Count CC,SLI 16 2 The Read Continue channel program writes a response (ACK or NAK) and transfers-in-channel to a Read Data command in the buffer. Write Continue Channel Program Operation Address Flags TP Code Count Read Response LCB SLI OA 9 The Write Continue channel program checks the response to the last block of data (ACK-O, ACK-l, RVI) and restarts on a Write Data command. Appendix D: TCAM Channel Program and TP Operation Codes 675 CHANNEL PROGRAMS FOR S/360 to S/360 DIAL Read Initial Channel Program Operation Disable Enable Read ID Inquiry Write ID (if ID is specified) Write ACK-O TIC Address Flags TP Code Count LCB List CC,SLI CC,SLI SLI CD,SLI 11 06 18 OB 1 1 16 X CC,SLI 15 2 Table Buffer The Read Initial channel program disables the line and enables the control unit. The program then reads the inquiry (and writes the CPU ID, if specified). It then writes an ACK-O and chains to a Read Text command in the buffer. X represents the length in bytes of the user-specified ID in the invitation list. Read Initial Channel Program with Connection Established Operation Address Flags TP Code Count Read Inquiry Write ACK-O TIC LCB Table Buffer CC,SLI OC 15 17 The Read Initial channel program reads the inquiry, writes an ACK-O, and then chains to a Read Data command. Read Initial Channel Program-CPU Yields the Right to Transmit Operation Address Flags TP Code Count Write EOT Read Inquiry Write ACK-O TIC Table LCB Table Buffer CC,SLI 01 OC 15 CC,SLI 1 17 2 The Read Initial channel program writes an EOT character and then reads the inquiry from the station. The Read Initial channel program then writes an ACK-O and continues to Read Data from the station. Read Continue Channel Program Operation Address Write ACK or NAK Table TIC Buffer Flags TP Code Count CC,SLI 16 2 The Read Continue channel program writes a response (ACK or NAK) and transfers-in-channel to a Read Data command in the buffer. 676 as TeAM PLM Write Initial Channel Program Operation Disable Dial Write CPU ID (if ID is specified) Write Inquiry Read ID ACK-O Address Flags TP Code Count T entry List CC,SLI CC,SLI CD,SLI 11 11 OB X y Table LCB CC,SLI SLI OD lA 1 17 1 The Write Initial channel program disables the line and dials the station. The program writes the CPU ID, if specified, and writes an ENQ character. The response is read and the ID is checked. The buffers are tposted to MH, and the chann~l program restarts at a Write command. X represents the number of dial digits for a terminal, and Y is the length of the CPU ID. Write Continue Channel Program Operation Address Flags TP Code Count Read Response LCB SLI OA 9 The Write Continue channel program checks the response to the last block of data (ACK-O, ACK-l, RVI) and restarts on a Write Data command. CHANNEL PROGRAMS FOR S/360 TO 1130 DIAL Read Initial Channel Program Operation Disable Enable Read ID Inquiry Write ID (if ID is specified) Write ACK-O TIC Address Flags TP Code Count LCB List CC,SLI CC,SLI SLI CD,SLI 06 18 1 1 16 OB X CC,SLI 15 2 Table Buffer 11 The Read Initial channel program disables the line and enables the control unit. The program then reads the inquiry (and writes the CPU ID, if specified). It then writes an ACK-O and chains to a Read Text command in the buffer. X is the length of the CPU ID. Read Initial Channel Program with Connection Established Operation Address Flags Read Inquiry Write ACK-O TIC LCB Table Buffer CC,SLI TP Code Count OC 17 15 2 The Read Initial channel program reads the inquiry, writes an ACK-O, and then chains to a Read Data command. Appendix D: TCAM Channel Program and TP Operation Codes 677 Read Initial Channel Program-CPU Yields the Right to Transmit Operation Address Flags TP Code Count Write EOT Read Inquiry Write ACK-O TIC Table LCB Table Buffer CC,SLI 01 CC,SLI OC 1 17 15 2 The Read Initial channel program writes an EOT character and then reads the inquiry from the station. The Read Initial channel program then writes an ACK-O and continues to read data from the station. Read Continue Channel Program Operation Address Write ACK or NAK Table TIC Buffer Flags TP Code Count CC,SLI 16 2 The Read Continue channel program writes a response (ACK or NAK) and transfers-in-channel to a Read Data command in the buffer. Write Continue Channel Program Operation Address Flags TP Code Count Read Response LCB SLI OA 9 The Write Continue channel program checks the response to the last block of data (ACK-O, ACK-l, RVI) and restarts on a Write Data command. CHANNEL PROGRAMS FOR S/360 TO IBM 2770 DIAL Read Initial Channel Program Operation Disable Enable Read ID Inquiry Write ID (if ID is specified) Write ACK-O TIC Address Flags TP Code Count LCB List CC,SLI CC,SLI SLI CD,SLI 06 18 CC,SLI 15 Table Buffer 11 1 1 16 X 2 The Read Initial channel program disables the line and enables the control unit. The program thtm reads the inquiry (and writes the CPU ID, if specified). It then writes an ACK-O and chains to a Read Text command in the buffer. X is the length of the CPU ID. 678 OS TeAM PLM Read Initial Channel Program with Connection Established Operation Address Flags Read Inquiry Write ACK-O TIC LCB Table Buffer CC,SLI TP Code Count OC 17 15 The Read Initial channel program reads the inquiry, writes an ACK-O, and then chains to a Read Data command. Read Initial Channel Program-CPU Yields the Right to Transmit Operation Address Flags TP Code Count Write EOT Read Inquiry Write ACK-O TIC Table LCB Table Buffer CC,SLI 01 CC,SLI OC 1 17 15 2 The Read Initial channel program writes an EOT character and then reads the inquiry from the station. The Read Initial channel program then writes an ACK-O and continues to read data from the station. Read Continue Channel Program Operation Address Write ACK or NAK Table TIC Buffer Flags TP Code Count CC,SLI 16 2 The R,ead Continue channel program writes a response (ACK or NAK) and transfers-in-channel to a Read Data command in the buffer. Write Initial Channel Program Operation Disable Dial digits Write CPU ID (if ID is specified) Write InquiryRead ID ACK-O Write Escape sequence Read ACK-l Address Flags TP Code Count T entry List CC,SLI CC,SLI CD,SLI 11 11 OB Y Table LCB T entry CC,SLI SLI CC,SLI OD lA 1 17 07 Z 08 9 LCB 1 X The Write Initial channel program disables the line and dials the station. The program writes the CPU ID, if specified, and writes an ENQ character. The response is checked. The buffers are tposted to MH, and the channel program restarts at the Write Escape sequence. The ACK-l is read by the program and then the program chains to a Write command. X represents the number of dial digits for a terminal, Y is the length of the CPU ID, and Z is a device-dependent variable. Appendix 0: TCAM Channel Program and TP Operation Codes 679 Write Continue Channel Program Operation Address Flags Read Response LCB SLI TP Code Count 9 The Write Continue channel program checks the response to the last block of data (ACK-O, ACK-l, RVI) and restarts on a Write Data command. CHANNEL PROGRAMS FOR S/360 TO IBM 2780 DIAL Read Initial Channel Program Operation Disable Enable Read ID Inquiry Write ID (if ID is specified) Write ACK-O TIC Address Flags TP Code Count LCB List CC,SLI CC,SLI SLI CD,SLI 06 18 CC,SLI 15 Table Buffer 11 1 1 16 X 2 The Read Initial channel program disables the line and enables the control unit. The program then reads the inquiry (and writes the CPU ID, if specified). It then writes an ACK-O and chains to a Read Text command in the buffer. X is the length of the CPU ID. Read Initial Channel Program with Connection Established Operation Address Flags Read Inquiry Write ACK-O TIC LCB Table Buffer CC,SLI TP Code Count OC 17 15 2 The Read Initial channel program reads the inquiry, writes an ACK-O, and then chains to a Read Data command. Read Initial Channel Program-CPU Yields the Right to Transmit Operation Address Flags TP Code Count Write EOT Read Inquiry Write ACK-O TIC Table LCB Table Buffer CC,SLI 01 CC,SLI OC 1 17 15 2 The Read Initial channel program writes an EOT character and then reads the inquiry from the station. The Read Initial channel program then writes an ACK-O and continues to read data from the station. 680 OS TeAM PLM Read Continue Channel Program Operation Address Write ACK or NAK Table TIC Buffer Flags TP Code Count CC,sLI 16 2 The Read Continue channel program writes a response (ACK or NAK) and transfers-in-channel to a Read Data command in the buffer. Write Initial Channel Program Operation Disable Dial digits Write CPU ID (if ID is specified) Write Inquiry Read ID ACK-O Write Escape sequence Read ACK-l Address Flags TP Code Count T entry List CC,SLI CC,SLI CD,SLI 11 11 OB 1 X y Table LCB T entry CC,SLI SLI CC,SLI OD lA 07 1 9 Z LCB 08 The Write Initial channel program disables the line and dials the station. The program writes the CPU ID, if specified, and writes an ENQ character. The response is checked. The buffers are tposted to MH, and the channel program restarts at the Write Escape sequence. The ACK-l is read by the program and then the program chains to a Write command. X represents the number of dial digits for the terminal; Y represents the length of the CPU ID specified in the invitation list; and Z represents the length of the addressing sequence in the terminal entry. SPECIAL CHANNEL PROGRAMS In BSC on a Read Continue operation, when a temporary time delay (TTD) sequence (STX ENQ) is received the channel program is as follows: Operation Address Flags TP Code Count Write NAK TIC Table Buffer CC,SLI 16 2 When, in response to a text request, TCAM receives two RVIs in succession, a WACK character (except for buffered terminals), or an invalid response, TCAM generates the following channel program to correct the problem. Operation Address Flags TP Code Count Write ENQ Read Response Table LCB CC,SLI 5B OA 1 9 For two RVIs or an invalid response, TCAM retries this channel program seven times. For a WACK character, TCAM performs no retry operation. Appendix D: TCAM Channel Program and TP Operation Codes 681 (This page left blank intentionally) 682 OS TeAM PLM Glossary The following is a listing of the communications terms used in this manual. For a complete listing of all communications terms, refer to the manual IBM Data Processing Techniques-A Data Processing Glossary, Order No. GC20-1699. used as work areas in TCAM. The size of TCAM buffers is designated by the user. (See also hardware buffer.) buffer prefix: a control area contained within each TCAM ~nJ I/O d~vice&. buffer. The prefix for the buffer containing the first segment of a message is 30 bytes long, while the prefix for each buffer containing a subsequent segment of the message is 23 bytes long. The user must allow room for the buffer prefix when he specifies his buffer size. TCAM fills the prefix area with buffer control information. accC'!>s method (ACSMETH) work area: a storage space in ,In application program. This work area contains data neces'i(ll) for the interface between the application program and the M.:s~age Control Program. buffer unit: the basic building block from which TCAM buffers are constructed. All units in a particular TCAM system are the same size; this size is specified by the KEYLEN= operand of the INTRO macro. application program: a user-provided program that processes the text portions of messages. Application programs runasynchronously with the Message Control Program and are usually located in another partition or region of main storage. TCAM application programs are optional; there may be many or none, depending on the needs of the user. buffer unit pool: all the buffer units in a particular TCAM system together constitute the buffer unit pool for that system. The number of units in the pool is equal to the sum of theintegers specified by the LNUNITS= and MSUNITS= operands of the INTRO macro. access method: a combination of an access technique (either queued or basic) and a given data set organization (for instance, sequential, partitioned, indexed sequential, or direct) that .lii •.lw, I he III 01;;' ,.HlIlller to transfer data between main storage control unit or a station to automatically initiate a call over a switched line. A dialing operation that originates at the central computer must use the Auto Call machine feature. buffered terminal: a terminal having a hardware buffer. As used in this book, a buffered terminal is an IBM 2740 Model 2 Station or IBM 2770 station whose TERMINAL macro specifies BFDELA Y = integer. When the BFDELA Y= operand of TERMINAL is coded, messages are sent to the station segmentby-segment; after a segment is sent, the Message Control Program pauses before sending the next segment to allow the station's buffer to empty. During this pause, the MCP may send segments to other stations on the line. Auto PoD: A machine feature of a transmission control unit calling: a procedure that establishes a connection over a Auto Answer: a machine feature that allows either a transmission control unit or a station to respond automatically to a call that it receives over a switched line: Auto Call: a machine feature that allows either a transmission that permits it to handle negative responses to polling without interrupting the central processing unit. At the end of the invitation list, polling is resumed automatically at the beginning of the list. binary synchronous communications (BSC): data transmission in which character synchronization is controlled by timing signals generated by the device that originates a message (and the device that obtains the message recognizes the sync pattern at the beginning of the transmission-the devices are locked in step with one another); contrast with start-stop transmission. switched line; a series of electrical signals, corresponding to the telephone number of the station or computer with which contact is to be made, are sent down the line; these pulses or notes cause automatic switching equipment belonging to the common carrier to establish the connection, if the party being called is free to accept the call. cascade entry: an entry in the terminal table associated with a cascade list. cascade list: a list of pointers to single, group, or process entries. A message is queued for the valid entry in the list with the fewest messages queued for it. block: that portion of a message terminated by an EOB or channel program block (CPB): a TCAM control block used ETB line-control character or, if this is the last block in the message, by an ETX or EOT line-control character. When end-of-block checking is specified in the STARTMH macro, messages are checked for certain types of transmission and user-specified logical errors on a block-by-block basis. in the transfer of the data between buffer units and message queues maintained on disk. The CPB= operand of the INTRO macro specifies the number of CPBs to be provided in a TCAM system. BSC: see binary synchronous communications. checkpoint data set: an optional TCAM data set that con- buffer: an area in main storage into which a message segment tains the checkpoint records used to reconstruct the MCP environment after closedown or system failure, when the TCAM checkpoint/restart facility is utilized. is read, or from which a message segment is written. Buffers are temporary data-holding areas that are used to compensate for the difference between the rate at which ~ata can be entered from or accepted by a station and the rate at which it can be processed by the central processing unit; buffers also may be checkpoint records: records, located in the checkpoint data set, that are used to reconstruct the MCP environment upon restart following closedown or system failure. There are four Glossary 683 types of checkpoint records: environment records, incident records, checkpoint request records, and a control record. control unit, or station; among such operations are polling and addressing, message delimiting and blocking, transmissionerror checking, and carriage return. checkpoint request record: a checkpoint record taken as a result of execution of a CKREQ macro issued in an application program. The record contains the status of a single destination queue for the application program. The latest checkpoint request record for a message queue is used during restart to cause sending from that queue to the application program to begin with the message that follows the last message sent to the program from that queue at the time the checkpoint request record was taken, rather than with the message following the last message marked serviced. checkpoint/restart: a TCAM facility that records the status of ,the teleprocessing network at designated intervals or following certain events. Following system failure or closedown, the checkpoint/restart facility uses the records it has taken to restore the Message Control Program environment as nearly as possible to its status before the failure or closedown. cold start: start-up of a TCAM Message Control Program following either a flush closedown, a quick closed own, or a system failure. A cold start ignores the previous environment (that is, the MCP is started as if this were the initial start-up), and is the only type of restart possible when no checkpoint/restart facility is used. control record: a record, included in a checkpoint data set, that keeps track of the correct environment, incident, and checkpoint request records to use for reconstructing the Message Control Program environment during restart. CPB: see channel program block. CTB: see concentrator terminal block. data control block (DCB): an area of main storage that serves as a logical connector between the problem program and a data set. The data control block also can be used to provide control information for any transfer of data. A data control block must be created for each TCAM data set except a message queues data set residing in main storage; a DCB macro instruction is used to create a data control block. Data set: communication parameter list: the interface between I. a named, organized collection of logically related records (program data set). The information is not restricted to a specific type, purpose, or storage medium. Among the data sets specifically related to TCAM are the line group data sets, the message queues data sets, the checkpoint data set, the message log data set, and the input and output data sets for a TCAM-compatible application program. 2. a device containing the electrical circuitry necessary to connect data processing equipment to a communication channel; also called a subset, Data-Phone*, modulator/demodulator, or modem. TCAM Operator Control and the Master Scheduler for commands entered from the system console. dead-letter queue: the destination queue for the station or command input buffer (CIB): a communication parameter list that is used by Operator Control to process a command. It describes the command sent from the console and contains the command code, the console identification, and the data in the command. concentrator data ready queue (DRQ): a TCAM control application program named by the DLQ= operand of the INTRO macro instruction. If an invalid destination is detected in a message header by a FORWARD macro instruction, and if no user-exit is specified in the FORWARD macro, that message is sent to the dead-letter queue. block that controls message concentration for output to a concentrator. delimiter macro instruction: a TCAM macro instruction that concentrator device ID table (DVCID): a TCAM work classifies and identifies sequences of functional macro instructions and directs control to the appropriate sequence of functional macro instructions. concentrator: a remote device that groups blocks of messages into a single physical message for transmission. area that defines a concentrator and each terminal attached to it. descriptor code: under Multiple Console Support, indicates concentrator terminal buffer (CTB): a main-storage area used to contain the physical message transmitted to or from a concentrator. the means of message presentation and message deletion on display devices. destination: the place to which a message being handled by a continuation restart: a restart of the TCAM Message Control Program following termination of the Message Control Program because of system failure; the TCAM checkpoint/restart facility is used to restore the MCP environment as nearly as possible to its condition before failure. control characters: characters transmitted over a line that are not message data, but which cause certain control operations to be performed ~hen encountered by the computer, transmission *Trademark of the American Telephone & Telegraph Co. 684 OS TeAM PLM TCAM Message Handler is to be sent. A destination may be either a station defined by a TERMINAL macro, a group of stations defined by a TLIST macro, or an application program defined by a TPROCESS macro. One or more destinations may be specified in fields of the message header that are checked by a FORWARD macro, or a single destination may be specified for all messages handled by a particular inheader subgroup by means of the DEST= operand of a FORWARD macro issued in that subgroup. destination field: a field in a message header containing the name of a station or application program to which a message is directed. enabled module: a module that can be interrupted at any time by an appendage or external event. When the interruption occurs, the enabled module waits for the appendage to complete its processing and then continues. destination offset: a two-byte index to the termname table entry of a destination or station. enabling the line: a process whereby TCAM causes the com- destination queue: a queue on which messages bound for a puter to condition either the transmission control unit or the audio response unit to respond to incoming calls on a switched line. See disabling the line. particular destination are placed after being processed by the incoming group of a Message Handler. A separate destination queue is created for each station defined by a TERMINAL macro specifying queuing by terminal, one for each line whose stations are defined by TERMINAL macros specifying queuing by line, and one for each application-program process entry (defined by a TPROCESS macro) to which the application program may direct GET or READ macros. Destination queues are maintained in message queues data sets that may be located either on disk or in main storage. Queuing messages by destination permits overlap of line usage in I/O operations. See also process queue. device characteristics table (DCT): a collection of entries that describes the characteristics of the terminals (or devices) in the system. end-of-address (EOA) character: 1. a control character or characters transmitted on a line to indicate the end of non-text characters (for example, addressing characters). 2. a TCAM character that must be placed in a message if the system is to accommodate routing of that message to several destinations; the character must immediately follow the last destination code in the message header; and must also be specified by the EOA= operand of the FORWARD macro for the message. environment record: a record of the total teleprocessing dial Hne: see switched line. environment at a single point in time. The environment record resides in the checkpoint data set; at restart time, an environment record is updated by the contents of incident records that were taken after the environment record was taken, and the updated environment record is then used to reconstruct the Message Control Program environment as it existed before MCP c1osedown or system failure. disabled module: a module that cannot be interrupted during EOA: see end-of-address character. device ID table: see concentrator device ID table. dial: see calling. its execution. It must execute from beginning to end once it has gained control disabling the line: a process whereby TCAM causes the computer to condition either the transmission control unit or the audio response unit to ignore incoming calls on a switched line. Once this is accomplished, the line is available for TCAM to send queued messages to a station on that line. See enabling the line. distribution entry: an entry in the terminal table associated error record: five bytes assigned to each message being processed by a Message Handler; these bytes indicate physical or logical errors that have occurred during transmission on the line or during subsequent processing or queuing of the message, and are checked by error-handling macros in the inmessage and outmessage subgroups of a Message Handler. error recovery procedures (ERP): a set of internal TCAM routines th~t attempt to recover from transmission errors. with a distribution list. A distribution entry is created by a TLIST macro. exchange: a communications switching center. distribution list: a list of single, group, cascade, or process event control block (ECB): the communication medium entries; when a message is directed to the distribution entry associated with this list, TCAM sends the message to each destination named in the list. between the various components of the control program, as well as between processing programs and the control program. An ECB is the subject of WAIT and POST macro instructions. DRQ: see concentrator data ready queue. FEFO (first-ended first-out): a queuing scheme whereby DVCID: see concentrator device ID table. dynamic buffer aDocation: the assignment of buffers to a line on an as-needed basis, after a message has started coming in over the line. Dynamic allocation occurs following programcontrolled interruptions, and is specified by the PCI= operand of the line group DCB macro. See also static buffer allocation. messages on a destination queue are sent to the destination on a first-ended first-out basis within priority groups. That is, higherpriority messages are sent before lower-priority messages; when two messages on a queue have equal priority, the one whose final segment arrived at the queue earliest is sent first. FIFO (first-in first-out): a queuing scheme whereby equalpriority messages on the same destination queue are sent in the order that their first segments arrived at the queue. element: an individual part of a system resource; for example, a buffer. flush c1osedown: a closed own of the TCAM Message Control element request block (ERB): a control area that is used to Program during which incoming message traffic is suspended and queued outgoing messages are sent to their destinations before c1osedown is completed; this form of termination is make requests for buffers for a line group. Glossary 685 known as a flush closedown because unsent messages are flushed from the message queues. See also quick closedown. functional macro instructions: TCAM macros that perform Handler. The SEQUENCE macro checks the sequence number for each message; if the number is not one more than that assigned to the previous message received from that origin, a bit is turned on in the message error record. the specific operations required for messages directed to the Message Handler. See also delimiter macro instructions. inquiry processing: a TCAM application in which the Mes- group entry: an entry in the terminal table associated with a group of terminals having the group-addressing machine feature. header: that portion of a message containing control information for the message; a header might,contain one or more destination fields, the name of the originating station, an input sequence number, a character string indicating the type of message, a priority level for the message, etc. The message header is operated on by macros in the inheader and outheader subgroups of the Message Handler. header buffer: a buffer containing a header segment. header segment: a message segment containing all or part of sage Control Program receives a message from a station, then routes it to an application program that processes the data in the message and generates a reply: the reply is routed by the Message Control Program to the inquiring station. Response time often may be shortened by specifying the lock mode (by a LOCK macro in the Message Handler) and by locating the message queues data set containing the queues for the application program in main storage. intercepted station: a station to which no messages may be sent. A station is intercepted by issuing a HOLD macro instruction in the out message subgroup of a Message Handler: the suspension is either for a specified time interval or until either an operator command or an application program macro instruction is issued to release messages held for the intercepted station. the message header. invalid destination: a specified destination that does not held terminal: a terminal that cannot accept messages because correspond to a valid terminal table entry. of the effect of a HOLD macro. invitation: the process in which the computer contacts a staidentification characters (ID characters): characters sent by a BSC station on a switched line to identify the station. ID characters can also be assigned to the computer (by the CPUID= operand of the INVLIST macro); in this case, the computer and the station can exchange ID seqJ.Iences. TWX stations also use ID characters. idle: describes a line that is not currently available for transmission of data because IDLE was coded in the OPEN macro for the line group data set containing the line. Such a line may be activate,d by a ST ARTLINE operator command. incident record: a checkpoint record residing in the checkpoint data set on a DASD. An incident record logs a change in station status or in the contents of an option field that occurred since the last environment record was taken. Incident records are used to update the information contained in environment records at restart time after a closedown or system failure. tion in order to allow the station to transmit a message if it has one ready. invitation delay: a period of time (specified by the INTVL= operand of the line group DCB macro), during which outgoing messages are sent to nonswitched polled stations for which receiving has priority over sending (because CPRI=R is coded in the line group DCB macro). This delay is observed for all such stations on a line when the end of the invitation list for that line is reached. The delay in polling is observed for such stations whether or not the computer has any messages to send them. If no invitation delay is specified for such stations, no messages can be sent to them. invitation list: a series of sets of polling characters or identification sequences associated with the stations on a line; the order in which sets of polling characters are specified (in the INVLIST macro for the line) determines the order in which polled stations are invited to enter messages on the line. incoming group: that portion of a Message Handler designed to handle messages arriving for handling by the Message Control Program. See also outgoing group. line control block (LCD): an area of main storage containing control information for operations on a line; one LCB is maintained by TCAM for each line in the system. incoming message: a message being transmitted from a station to the computer. input data set: a logical data set for a TCAM-compatible application program. The input data set contains all messages or records being sent to the application program from a single process queue. Though it is not located in a physical medium, the input data set requires a DD statement and a DCB macro for its definition and must be activated and deactivated by OPEN and CLOSE macros. See also output data set. line control characters: characters that control transmission of data over a line; for example, line control characters delimit messages, cause transmission-error checking to be performed, indicate whether a station has data to send or is ready to receive data. line group: a set of one or more communication lines of the same type, over which stations with similar characteristics can communicate with the computer. input sequence number: a means of ensuring that messages line group data set: a Message Control Program data set are received from a source in the correct order. The user may place a sequence number in the header of each message entered by a station or application program, and may code a SEQUENCE macro in the incoming group of his Message consisting of all the lines in a line group; the messages that are transmitted on these lines constitute the data in this data set. A line group data set is defined by a line group DCB macro instruction, and by a DD statement for each line in the line group. 686 as TCAM PLM line group DCB: a data control block created by a line group DCB macro instruction; information in the data control block defines the line group to TCAM. lock mode: a TCAM facility, invoked in a Message Handler by the LOCK macro, whereby a station entering an inquiry message for an application program is held on the line by the Message Control Program until a response has been returned to it by the application program. Use of the lock mode decreases response time because there are no interruptions on the line before a response is returned. If LOCK is executed and CONV=YES is coded in the STARTMH macro, tete-a-tete interaction (defined in this Glossary) is in effect for the station. A station may be placed in lock mode either for the duration of a single inquiry and response ( message lock mode) or for the duration of several inquiry-response cycles ( extended lock mode). The type of lock mode is specified in the LOCK macro. log: a collection of messages or message segments placed on a secondary storage device for accounting or data collection purposes. The TCAM logging facility is invoked by a functional macro instruction issued in a Message Handler. log data set: a data set consisting of the messages or message segments recorded on a secondary storage medium by the TCAM logging facility. A log data set is defined by means of a BSAM DCB macro instruction that is issued with the DCB macro instructions defining the line group data sets, the message queues data sets, and the checkpoint data set. logtype entry: an entry in the terminal table associated with a queue on which complete messages reside while awaiting transfer to the logging medium (a logtype entry is not needed if message segments only are to be logged). A logtype entry is created by a LOGTYPE macro. main-storage queuing: a situation in which TCAM message queues are maintained in main storage. MCP: see Message Control Program. MCPL: a subtask control block (STCB) entry code field that identifies the type of STCB and therefore, the method necessary to activate the corresponding sub task. message: a unit of data received from or sent to a station that is terminated by an EOT or ETX control character or, if the CONV= operand of the STARTMH macro is coded CONV=YES, by an EOB or ETX control character. A TCAM message is often divided into a header portion, which contains control information, and a text portion, which contains the part of the message of concern to the party ultimately receiving it. Message Control Program (MCP): a set of user-defined TCAM routines that identify the teleprocessing network to the System/360 Operating System, establish the line control required for the various kinds of stations and modes of connection, and control the handling and routing of messages to fit the user's requirements. Message Handler (MH): a sequence of user-specified TCAM macro instructions in the Message Control Program that examine and process control information in message headers, and perform functions necessary to prepare message segments for forwarding to their destinations. One Message Handler must be assigned to each line group by the MH= operand of the line group DCB macro, and one must be assigned to each TCAM-compatible application program by the MH= operand of the PCB macro. The incoming group of an MH handles messages received from either an originating station or an application program; the outgoing group of an MH handles messages prior to their being sent to a destination station or application program. message header: the part of a message containing control information, such as the destination code (as distinct from the text of the message). message log data set: a set of messages or message segments that are maintained on secondary storage for accounting or other purposes. message priority: refers to the order in which messages in a destination queue are transmitted to the destination, relative to each other. Higher-priority messages are forwarded before lower-priority messages. Up to 255 different priority levels may be assigned to a single destination (by the LEVEL= operand of the TERMIN AL or TPROCESS macro). The priority for each message sent to the destination may be specified in the message header or assigned by a PRIORITY macro; in either case, a PRIORITY macro should be coded in the inheader subgroup handling the message. message queue: see destination queue. message queues data set: a TCAM data set that contains one or more destination queues. A message queues data set contains messages that have been processed by the incoming group of a Message Handler and are waiting for TCAM to dequeue them, route them through an outgoing group of a Message Handler, and send them to their destinations. Up to three message queues data sets (one in main storage, one on reusable disk, one on nonreusable disk) may be specified for a TCAM Message Control Program. message retrieval function: allows the user to retrieve a previously sent message by specifying a combination of the message destination and the input (or output) sequence number of the message. The sequence number is assigned by the SEQUENCE macro. message segment: the portion of a message contained in a single buffer. message switching: a telecommunications application in which a message is received from a remote station, stored until a suitable outgoing line is available, and then transmittted to its destination station. TCAM message switching can be handled entirely by the Message Control Program. MH: See Message Handler. multiple-buffer header: a message header that occupies more than one buffer. multiple routing: the method of sending a message where more than one destination is specified in the header of the message. multipoint line: a nonswitched line that connects several remote stations to the computer. Glossary 687 network control: the management of a series of points inter- outgoing group: that section <;>f a Message Handler that ma- connected by communications channels. nipulates outgoing messages after they have been removed from their destination queues. The outgoing group has three types of subgroups-the outheader subgroup, which executes on outgoing header segments; the outbuffer subgroup, which executes on each outgoing segment; and the outmessage subgroup, which does not execute until after the message has been sent to its destination, if possible. See also incoming group. new queue: a chain of CPBs for all cylinders in an extent of a disk message queues data set other than the cylinder currently ready for I/O and the cylinder just after it. next-buffer location: the value of address (disk relative record number) to be used for the first unit of the next buffer of the message that is currently being placed on the related message queue. next-message location: the value of address (disk relative record number) to be used for the first unit of the first buffer of the next message received for the related message queue. output data set: a logical data set for a TCAM-compatible application program. The output data set contains the messages or "records returned from the application program to the Message Control Program by a process entry in the terminal table. An output data set is defined by a DO statement and a DCB macro, and must be activated and deactivated by OPEN and CLOSE macros. See also input data set. no-buffer queue: the chain of CPBs for Read operatiQns when no buffers are in the buffer pool. output sequence number: a number placed in the header of a record of a disk record message queues data set may be used only once. message by TCAM that determines the order in which messages were sent to a destination by the computer. When specified in an outheader subgroup, the SEQUENCE macro causes an output sequence number to be placed in the header of each outgoing message; this sequence number is one greater than the sequence number for the last message sent to this destination. See also input sequence number. nonswitched line: a communication line that links stations for path switch: an option field setting used as a switch to indicate a continuous period, or for regularly recurring periods; also known as a private, leased, or dedicated line. the order of or the conditional execution of MH macros. no-CPB queue: the chain of elements that are to be processed by CPB initialization. nonreusable disk queueing: the situation in which each. point-to-point line: a communication line that connects a non-transparent mode: a mode of binary synchronous transmission in which all control characters are treated as control characters (that is, not treated as text). See transparent mode. single remote station to the computer. It may be either switched or nons witched. polling: a non-contention line management method whereby on-line test (OLT): an optional TCAM facility that permits either a system console operator or a remote-station operator to test transmission control units and remote stations to find out if they work properly. the computer invites remote stations on multipoint nonswitched lines and remote terminals on point-to-point lines to enter messages. The computer contacts stations in the order specified by the invitation list; each station contacted is invited to enter messages. operator command: a command entered either at an operator control station or at the system console to examine or alter the status of the telecommunications network during execution. Operator Control address vector table: an MCP area that polling characters: a set of identifying characters peculiar to either a station or a component of that station; a response to these characters indicates to the computer whether the station has a message to enter. contains parameters for the Operator Control module. prefix: see buffer prefix. operator control station: a station eligible to enter operator commands. An application program and the system console may also serve as operator control stations. Operator control stations are designated as such by the PRIMARY = operand of the INTRa macro and by the SECTERM= operand of the TERMINAL and TPROCESS macros. See also primary operator control station. primary operator control station: an operator control station that receives, in addition to the responses to commands entered by it, the operator awareness message is sent whenever an I/O error occurs and TCAM's error-recovery procedures are unsuccessful in correcting it. The primary operator control station is designated by the PRIMARY= operand of the INTRa macro. option field: a storage area containing data relating to a particular station, component, line, or application program. Certain Message Handler routines that need source- or destinationrelated data to perform their functions have access to data in an option field. User-written routines also have access to data in an option field. Option fields are defined by OPTION macros and initialized for each station, line, component, or application program by the OPDAT A= operand of the TERMINAL or TPROCESS macro. priority: see message priority and transmission priority. problem program mode: operating under the control of the message control or application program, rather than under the control of the as supervisor. process control block (PCB): an MCP storage area for data that is necessary for communication between the Mep and an application program. option table: a collection of information provided by the user in OPTION macro instructions. 688 OS TeAM PLM process queue: a destination queue for an application pro- gram (see destination queue). A process queue is defined by a TPROCESS macro. purge I/O: an SVC issued at close time to remove all traffic from teleprocessing lines. QeB: see queue control block. QeB extension: A TCAM control area that contains the information necessary to execute the OUTMSG subgroup for a terminal attached to a concentrator. queue: a set of items consisting of: generation time by a UNITNAME macro, the lines in the group are assigned relative line numbers according to the order in which their hardware addresses are specified in the UNIT= operand of UNITNAME. The line whose address is specified first is relative line number one, that address specified second is relative line number two, etc. If a line group is defined at MCP execution time by concatenated DD statements, the order in which the DD statements for the lines in the line group are arranged determines the relative line numbers for the lines. The line whose DD statement appears first is relative line number one, the statement that appears second is relative line number two, etc. resident module: a module that resides in main storage of the TCAM system at all times. 1. a queue control block (an area in main storage containing control information for the queue), and 2. one or more ordered arrangements of items (the items may be messages, main-storage addresses, etc.). resource: any system facility that is required by a job or task; queue-back chain: a time-sequential record of the sending resource control block (ReB): an eight-byte prefix to an and receiving message traffic for the terminal or terminals of a specific destination QCB. element. queue control block (QeB): a storage area used to associate for example, main storage, I/O devices, data sets, buffer pool. restart: to restructure the execution of a routine or system, using the data recorded at a checkpoint. elements with appropriate subtasks. retry: an error recovery procedure in which the current block quick closedown: a closed own of the TCAM Message Control of data (from the last EOB or ETB) is re-sent a prescribed number of times, or until accepted or entered correctly. Program that involves stopping message traffic on each line as soon as any messages being sent or received at the time the request for closedown is received are transmitted. retry queue: a chain of one CPB for the cylinder on which to read-ahead queue: an area of main storage from which an have I/O in an extent of a disk message queues data set after the CPBs on the EXCP queue are processed. application program obtains work units in advance of their being requested by the application. reusable disk queuing: a situation in which messages are ready queue: a chain of elements that represent the work to queued to a wrapped message queues data set; that is, serviced messages are overlaid by new messages entering the system. be performed in the TCAM system. rollout/rollin (RORI): an optional feature of the MVT conrecaU: a method of retrieving a particular message or a part of a message in order to reprocess it 'or to redirect it. recalled buffer: a buffer retrieved from the message queue to be reprocessed. This buffer may be a header or a text buffer. trol program configuration that enables an additional region (or regions) of main storage to be temporarily reassigned from one job step to another. routing code: under Multiple Console Support, indicates the consoles to which the messages should be sent. record: a logical unit of data, the length of which is defined by the user through the use of operands of the input or output DCB macro and delimiting characters in the message. secondary destination: any of the destinations specified for a reentrant module: a module that can be executed by more segment: the portion of a TCAM message contained in a than one task concurrently; that is, a task may be executing a reentrant module before the previous task has finished executing it. single buffer. message except the first destination. selection: the process whereby the computer contacts a remote station to send it a message. refreshable module: a module that cannot be modified by itself or by any other module during exeuction; that is, a refreshable module can be replaced by a new copy during execution br a recovery management routine without changing either the sequence or the results of processing. sending: the process in which the central computer places a region control task (ReT): a TSO task that determines sequence number: see input sequence number and output which task is to occupy a particular TSO region. There is one RCT for each region. The RCT is activated by the TSIP SVC. sequence number. message on a line for transmission to a station (the station accepts the message). Sending and receiving are functions of the central computer. serially reusable module: a module that can be executed by relative line number: a number assigned by the user to a communications line of a line group at system generation time or MCP execution time. If a line group is defined at system only one task at a time. The module reinitializes itself and restores any instructions or any data in the module that were altered during the execution. Glossary 689 single entry: an entry in the terminal table associated with a TCAM/TSO buffer: a buffer residing in the TCAM region single station or station component; one such entry must be created (by a TERMINAL macro) for each station in the TCAM system not defined by a group entry. in which the PRFTSBUF bit in the buffer prefix is on, indicating that the buffer contains a TSO message. telecommunications: any transmission or reception of sigsource offset: the index value into the term name table for the source terminal. special characters table (SCT): a collection of entries that contain the special characters required for device I/O for each terminal (or device) in the system. start-stop transmission: data transmission in which each nals, writing, sounds, or intelligence of any nature, by wire, radio, or other electromagnetic media. teleprocessing: the pr,ocessing by a computer of data entered at a remote station. terminal: a point in a system at which data can enter, leave, or enter and leave. A terminal can' also be a control unit to which one or more input/output devices can be attached. character being transmitted is preceded by a special "control 'signal indicating the beginning of the sequence of data bits representing the character, and is followed by another control signal indicating the end of the data-bit sequence (character recognition by the device that obtains the data depends on the presence of these control signals for each character); contrast with binary synchronous communications. Terminal On-Line Test Executive (TOTE): the facility static buffer allocation: the assignment to a line, before for on-line testing available with TCAM used to test various terminal configurations in the user on-line environment. transmission over that line, of all buffers to be used to contain the transmitted data. When PCI=N or PCI=R is coded in the line group DCB macro, the number of buffers specified by the BUFIN= or BUFOUT= operand of the line group DCB macro instruction is assigned to a line before incoming or outgoing transmission begins on that line. Once transmission has started, no more buffers are available to handle the data involved in the transmission. station: either a remote terminal, or a remote computer used as a terminal. terminal I/O coordinator (TIOC): the interface between the TSO subsystem and the version of TCAM that supports TSO. terminal status block (TSB): a control block containing the status of a terminal for each user. The control block resides in main storage with the user job and is rolled in or out with the user job. The TSB indicates what features are associated with the terminal. terminal table: an ordered collection of information consisting of a control field for the table and blocks of information on each line, station, component, or application program from which a message can originate or to which a message can be sent. station control block (SCB): a logical extension of the QCB for each station. The SCB contains information used by TCAM to control buffering. termname table: a table that contains the name of all the subblock: that portion of a'BSC message terminated by an tete-a-tete: a mode of message handling in which a station operating in lock mode is polled by the computer. The station responds with a message that ends with a character permitting selection to continue. The computer sends a response message, from an application program, that the station interprets as a positive response. ITB line control character. supervisor mode: operating under the control of the system supervisor. switched line: a communication line on which the connection between the computer and a remote station is established by dialing. Also known as a dial line. system interval: a user-specified time interval during which terminals in the system in collating sequence. text: that part of the message of concern to the party ultimately receiving the message (that is, the message exclusive of the header, or control, information). polling and addressing are suspended on multipoint lines to polled stations. The system interval is specified by the INTV AL= operand of the INTRO macro, and may be changed during TCAM initialization, by a SYSINTVL operator command. The INTERVAL operator command tells TCAM to begin the system interval. The system interval is used to minimize unproductive polling, to minimize CPU meter time, and to synchronize polling on the polled lines in the system. See also invitation delay. text segment: a portion of a message that contains no part of task control block (TCB): the consolidation of control time sharing input QCB (TSID): an area of main storage information related to a task. that contains the addresses of the time sharing routines. task I/O table (TIOT): a control block constructed by job time sharing job control block (TJB): an area of main storage that contains information about a time sharing user and the status of his job. There is one TJB for each user. management to provide I/O support routines (OPEN, CLOSE, EOV) with pointers to JFCBs and allocated devices. 690 OS TeAM PLM the message header. time delay: a halt of a specific operation for a pre-specified amount of time. time sharing: a method of using a computing system that allows a number of users to execute programs concurrently and to interact with them during execution. Time Sharing Option (TSO): an optional configuration of the Operating System providing conversational time sharing from remote terminals. tpost: the technique in TCAM by which an element is passed from one queue to another. The TCAM routines specify the element and the queues, and the TCAM Dispatcher actually performs the action. transient module: a module that resides in a system library on some type of storage device until it is called into the TCAM system for a limited length of time during the execution of a problem program. element to process by having the STCB for that subtask placed in the STCB chain of the QCB to which the needed element will be tposted. unit: see buffer unit. warm start: a restart of the TCAM Message Control Program following either a quick or a flush closedown. The TCAM checkpoint/restart facility is used to restore the MCP environment as nearly as possible to its condition before failure. work unit: the amount of data transferred from the Message ic medium between two points in a telecommunications network. Control Program to an application program by a single GET or READ macro, or transferred from an application program to the MCP by a single PUT or WRITE macro. The work unit may be a message or a record (or, for QT AM-compatible application programs, a segment). transmission control unit (TCU): a control unit that serves write-to-operator (WTO): an optional user-coded service as an interface between communication lines and a computer for logical operations. The transmission control units supported by TCAM are the 2701 Data Adapter Unit Modell, the 2702 Transmission Control Modell, and the 2703 Transmission Control Modell. whereby a message may be written to the system console operator informing him of errors and unusual system conditions that may need correcting. transmission: the transfer of coded data by an electromagnet- write-to-operator with reply (WTOR): an optional usercoded service whereby a message may be written to the system console operator informing him of errors and unusual conditions that may need correcting. The operator must key in a response to this message. transmission priority: refers to the order in which sending and receiving. occur, relative to each other, for a particular station. Transmission priority is specified on a line-group basis by the CPl= operand of the line group DCB macro. The three transmission priorities possible in TCAM are send priority, equal priority, and receive priority. The exact meaning of each priority depends upon the line configuration and type of station. See also message priority. zero-length buffer: a buffer that has a zero in the PRFSIZE field of the buffer prefix. This type of buffer is sent by the Line End Appendage to the Message Handler to indicate that there is an error on the line. transparent mode: a mode of binary synchronous transmis- zone: that portion of disk records that reside in an algebraic sion in which all data, including normally restricted data-link control characters, is transmitted only as specific bit patterns. Control characters that are intended to be effective are preceded by a OLE character. quarter of the Reusable Disk Message Queue data set. twait: the TCAM technique in which a subtask waits for.an zone boundary: any of four disk records, one at each of the following positions in the Reusable Disk Message Queue data set: the first record, the records 1/4, 1/2, and 3/4 through the entire data set. Glossary 691 (This page left blank intentionally) 692 OS TeAM PLM Index abnormal closedown ( see TCAM abnormal close routine) access manager library 622 microfiche directory 160 access method ?83 access method work area (ACSMETH) definition 683 description 423 DSECT 424-427 microfiche directory 185 activate-I/O generator subtask flowchart 336-337 library 633 microfiche directory 151 activate-I/O generator subtask for a QT AM-compatible system flowchart 336-337 library 633 microfiche directory lSI activate-I/O generator subtask for BSC lines flowchart 336-337 library 633 microfiche directory lSI activate-I/O generator subtask for leased and start/stop lines and no TSO flowchart 336-337 library 633 microfiche directory lSI activate-I/O generator subtask for start/stop lines flowchart 336-337 library 633 microfiche directory lSI activate or move invitation list entry routine microfiche directory 166 additional records 24 address vector table (A VT) description 401 DSECT 402-422 microfiche directory 184 application program assembly 6 closedown 130-13 I data flow from the MCP 102-105 data flow to the MCP 106-107 definition 683 execution 6-7 initialization 62-65 interface with the MCP ready queue 17 interface with operator control 108-109 linkage edit 6 macros 6 MCP control block linkages 399 network control facilities 110-111 termination functions 130-131 application program/checkpoint interface routine library 621 microfiche directory 152 application program data flow from the MCP 102-105 to the MCP 106-107 application program incident checkpoint request 117, 121 application program initialization routines 62-65 application program network control 130-131 application program open error interface routine library 630 microfiche directory 180 application program processing options 8 AQCTL SVC 102 routine functions 71, 145 general use 17 library 628 microfiche directory 145 assembling and linkage editing an application program 6 assembling amtlinkage editing an MCP 5 A TTEN macro expansion linkage 187 attention handler library 630 microfiche directory 179 attention routine library 628 microfiche directory 139 Auto Answer 683 Auto Call 683 Auto Poll 683 Auto Poll and read response to poll unit check and unit exception ERP module library 628 microfiche directory 171 AVT ( see address vector table) basic TCAM concepts 13-36 binary search routine library 632 microfiche directory 140 binary search routine for processing programs library 633 microfiche directory 148 binary synchronous communications (BSC) 683 block 683 BSC ( see binary synchronous communications) BSC channel check ERP module library 628 microfiche directory 172 BSC ERP control module library 628 microfiche directory 170 BSC error post module library 628 microfiche directory 171 BSC READ/WRITE data check, overrun, and command reject ERP module library 628 microfiche directory 170 BSC READ/WRITE equipment check, lost data, intervention required, and unit exception ERP module library 628 microfiche directory 170 BSC second level CCW return module library 628 microfiche directory 171 buffer definition 18, 683 header 18 prefix 18,429-432 size for a line group 18 text 18 unit 18 ( see also buffer prefix) buffer control areas unit control area 19 buffer prefix 19, 429-432 buffer disposition QCB 637 buffer disposition sub task library 632 microfiche directory 142 buffer management in an MCP allocation 20 deallocation 20-21 requesting blJfff"r~ 20 buffer management module library 633 microfiche directory 149 buffer prefix definition 683 description 429, 18 DSECT 431-432 linkage to TCAM control blocks 397 microfiche directory 184 buffer request QCB 637 buffer request routine ( see buffer management module) Index 693 buffer return QCB 637 buffer return routine ( see buffer management module) buffer scan routine library 621 microfiche directory 140 buffer unit 18, 683 buffer unit pool defining the size of 18 definition 683 buffered terminal 683 buffered terminal scheduler library 629 microfiche directory 175 build CKREQ disk record routine library 621 microfiche directory 154 build incident record for MH routine library 621 microfiche directory 153 build incident record for TCHNG routine library 621 microfiche directory 153 calling 683 CANCELBK routine library 632 microfiche directory 143 cancel message routine library 631 microfiche directory 139 CANCELMG macrQ expansion linkage 188 CANCELMG parameter list 188 CARRIAGE macro expansion linkage 189 cascade entry 683 cascade list 683 cascade list subtask library 632 microfiche directory 142 CECOM service module library 622 microfiche directory 160 change/delete scheduler microfiche directory 158 channel command word (CCW) 184 channel end and abnormal end appendage library 628 microfiche directory 172 channel program block (CPB) definition 683 description 433 DSECT 433-436 microfiche directory 184 channel programs 645-681 AT & T 83B3 selective calling station lines 647 auto poll feature 669-670 BSC devices 670 IBM BSC multipoint 669-670 IBM 1030 648-649 IBM 1050 dial 651-652 IBM 1050 leased 650-651 IBM 1050, attention feature for TSO monitor 653-654 IBM 1060 653-654 IBM 2260 local 667 IBM 2260 remote 666-667 IBM 2740 basic 656 IBM 2740 checking 656-657 IBM 2740 checking and dial with a connection 662 IBM 2740 dial 658 IBM 2740 dial and checking 658-659 IBM 2740 dial and transmit control 659-660 IBM 2740 dial and transmit control and checking 660-661 IBM 2740 dial with a connection 661 IBM 2740 station control 662-663 IBM 2740 station control and checking 663-664 IBM 2740 transmit control (dial with a connection) 664 IBM 2740 transmit control and checking (dial with a connection) 664-665 IBM 2741 dial 655 IBM 2741 leased 654 IBM 2741 leased and dial for TSO monitor 655 694 OS TeAM PLM IBM 3270 local 667 IBM 3670 broadcast 667 IBM 7770 dial 668 special 681 S/360 to S/360 dial 676-677 S/360 to S/360 point to point 671 S/360 to 1I30 dial 677-678 S/360 to 1130 point to point 671-672 S/360 to 2770 dial 678-680 S/360 to 2770 point to point 672-673 S/360 to 2780 dial 680-681 S/360 to 2780 point to point 673-674 S/360 to 3735 dial 674-675 TTY models 33 and 35 TWX 668 TWX for TSO monitor 669 Western Union plan 115A outstation 648 World Trade Telegraph 665 CHECK macro expansion linkage 189 check routine library 629 microfiche directory 177 checkpoint 1I2-121 checkpoint, CKREQ record DSECT 445 initializing space for 50-51 checkpoint close routine library 630 microfiche directory 183 checkpoint continuation restart routine library 630 microfiche directory 181 checkpoint continuation restart subroutine library 629 microfiche directory 174 checkpoint, control record definition 684 description 437 DSECT 437-439 initializing space for 50-51 checkpoint data set c1osedown 128-129 definition 683 opening 50-51 checkpoint descriptions, incident 115, 123 checkpoint disk allocation routine library 630 microfiche directory 182 checkpoint disk end appendage library 630 microfiche directory 174 checkpoint disk initialization routine library 630 microfiche directory 181 checkpoint disk I/O queue 635 checkpoint disk I/O routine library 621 microfiche directory 154 checkpoint disk records CKREQ record 445-446 control record 437-439 environment record 439-442 incident records 442-444 checkpoint elements 447-448 checkpoint, environment 114, 120 checkpoint, environment record building 114, 120 definition 685 description 439-442 DSECT 440-442 initializing space for 50-51 microfiche directory 184 checkpoint executor library 621 microfiche directory 153 checkpoint, incident application program request 117, 120 MH request 1I5,120 operator control request 1I6, 120 checkpoint, incident record definition 686 DSECT 442-443 initializaing space for 50-51 microfiche directory 184 checkpoint-no available core rout ine library 621 microfiche directory 154 checkpoint-no incident records routine library 622 microfiche directory 154 checkpoint notification and disposition routine library 621 microfiche di rectory 154 checkpoint open routine functional overview 50-51 library 630 microfiche directory 180 checkpoint/operator control interface 116, 120 checkpoint QCB 637 checkpoint queue manager routine library 621 microfiche directory 154 checkpoint records 683-684 ( see also checkpoint, control record; checkpoint, environment record; checkpoint, incident record; and checkpoint, CKREQ record) checkpoint request element 119, 184 checkpoint request record 684 checkpoint request routine library 632 microfiche directory 141 checkpoint/ restart 684 checkpoint/restart from environment record routine library 630 microfiche directory 181 checkpoint/restart from incident and CKREQ records routine library 630 microfiche directory 181 checkpoint/restart option 8-9 checkpoint/restart overview 112-121 checkpoint work area description 449 DSECT 450-454 microfiche directory 184 CHECKPT macro expansion linkage 189 CHECKPT parameter list 189 CIB ( see command input buffer) CKREQ checkpoint record ( see checkpoint, CKREQ record) CKREQ macro expansion linkage 190 CLOSE macro expansion linkage 191 close routines 126-131 application program close routines 130-131 message queues close routines 126-129 c1osedown completion 126-127 closedown completion element QCB 638 c1osedown completion routines ( see resident c1osedown completion routine and nonresident c1osedown completion routine) c1osedown of the TCAM system 126-129 closedown terminal statistics recording module library 628 microfiche directory 172 CLOSEMC macro expansion linkage 192 code, linkage from the STCB to 16 CODE macro expansion linkage 192 CODE parameter list 192 cold start 684 command input buffer (CIB) definition 684 description 455 DSECT 455-456 microfiche directory 184 COMMBUF routine library 623 macro linkage 193 microfiche directory 143 COMMBUF send scheduler microfiche directory 175 common buffer data area prefix 185,461 common buffer master QCB 185,463-464 communication parameter list 684 communications queue 635 compare at offset routine library 631 microfiche directory 138 concentrator 684 concentrator buffer disposition subtask library 632 microfiche directory 142 concentrator data ready queue definition 684 description 457 DSECT 457-459 microfiche directory 184 concentrator device ID table definition 684 descriptIOn 465 DSECT 465-466 microfiche directory 184 concentrator message handling support incoming 82, 85 concentrator send scheduler library 629 microfiche directory 174 concentrator terminal buffer (CTB) 684 concepts, basic TCAM 13-36 configuration data set (CDS) 12 configuration exhibit module library 622 microfiche directory 158 configurator and scheduler library 622 microfiche directory 158 configurator submodules library 622 microfiche directory 158 continuation restart 684 control areas for TCAM ( see data area layouts) control blocks ( see data area layouts) control block linkage 395,397,399 control characters 684 control record ( see checkpoint, control record) copy buffer queue 635 . copy QCB 638 COUNTER macro expansion linkage 193 COUNTER parameter list 193 counter routine library 632 microfiche directory 141 CPB ( see channel program block) CPB cleanup ( see CPB initialization routine) CPB cleanup QCB 638 CPB free pool queue 635 CPB initialization routine flowchart 250-273 library 633 microfiche directory 148 CPB initialization-disk-only queuing flowchart 289-310 library 633 microfiche directory 148 CPB initialization-main-storage-only queuing flowchart 274-288 library 633 microfiche directory 148 create an error message routine and subtask library 631 microfiche directory 139 cross-partition data movement 17 cross-reference table option 10 CSECT name module listing ( see microfiche directory) CTB ( see concentrator terminal buffer) CTBFORM macro expansion linkage 193 CTBFORM parameter list 193 CTBFORM routine library 633 microfiche directory 149 CU TEST service module library 622 microfiche directory 156 CUTOFF macro expansion linkage 194 cutoff message transmission routine and subtask library 631 microfiche directory 139 Index 695 CUTOFF parameter list cutoff QCB 638 194 data area layouts access method work area 423-427 address vector table 401-422 buffer prefix 429-432 channel program block 433-436 checkpoint disk records 437-446 checkpoint elements 447-448 checkpoint work area 449-454 command input buffer 455-456 common buffer data area prefix 461 common buffer master QCB 463-464 concentrator data ready queue 457-459 concentrator device ID table 465-466 data control block 467-475 data event control block 477 data extent block 479-481 data extent block for application programs 483-484 device characteristics table 485 disk data area 487-488 element request block 489 input/output control block 495-501 invitation list 491-493 line control block 503-510 on-line test control block 511-529 operator control address vector table 531-535 option characteristics table 537-538 option table 539-540 OS I/O device characteristics table 531 process control block 543-545 process entry work area 547-550 queue control block 551-556 queue control block extension 557-578 resource control block 559-560 special characters table 561-562 station control block 563-570 subtask control block 571-572 terminal table 473-580 termname table 581-582 test event control block 583-585 TOTE Resource Control Block 587-590 TSO TSINPUT Control Block 591-596 data attach routine library 632 microfiche directory 143 data control block (DCB) 467-475,684 data event control block (DECB) 477 data extent block (DEB) 479-481 description 479 DSECT 480-81 microfiche directory 184 data extent block for application programs description 483 DSECT 483-484 microfiche directory 184 data flow application program to MCP 106-107 MCP to application program 102-105 data movement, cross-partition 17 data ready queue ( see concentrator data ready queue) data set 684 data set closedown 126-129 date and time provision routine library 631 microfiche directory 137 DATETIME insertion routine for processing programs library 632 microfiche directory 144 DATETIME macro expansion linkage 194 DATETIME parameter list 194 DCB ( see data control block) DCT ( see device characteristics table) deactivate invitation list entry routine microfiche directory 166 dead-letter queue 684 DEB ( see data extent block) debug service aid router library 628 696 OS TeAM PLM microfiche directory 167 DECB ( see data event control block) definition of the TCAM system 42-65 delete from time delay QCB 638 delimiter macro instruction 684 descriptor code 684 destination 684 destination field 685 destination offset 685 destination QCB 22, 638 destination QCB for main storage queuing with disk backup 36 destination queue 685 destination scheduler flowchart 311-320 library 633 microfiche directory 150 destination scheduler-disk-only queuing flowchart 329-335 library 633 microfiche directory 150 destination scheduler-main-storage-only queuing flowchart 321-328 library 633 microfiche directory 150 device characteristics table (DCT) 485, 685 device ID table ( see concentrator device ID table) diagnostic aids 597-620 dial receive scheduler library 629 microfiche directory 178 DIO service module library 623 microfiche directory 161 disabled module 685 disabled ready queue 15, 635 disabling the line 685 disk data record area description 487 DSECT 487-488 microfiche directory 184 disk end appendage library 630 microfiche directory 178 disk end appendage for a single CPB library 629 microfiche directory 177 disk end queue 635 disk I/O QCB 638 disk message queue initializer library 623 microfiche directory 161 disk message queues close routine library 630 microfiche directory 182 disk message queues open routine-load 1 library 630 microfiche directory 179 disk message queues open routine-load 2 library 630 microfiche directory 179 disk message queues open routine-load 3 library 630 microfiche directory 179 disk queuing nonreusable 22-34, 90-91 reusable 34-35 dispatcher relationship of OS to TCAM 7 TCAM 13 ( see also TCAM dispatcher) ,dispatching functions of the TCAM dispatcher 68-70 DISPLAY control terminal routine microfiche directory 164 DISPLAY intercepted terminals microfiche directory 164 DISPLAY invitation list entries microfiche directory 165 DISPLAY line address routine microfiche directory 165 DISPLAY line information routine microfiche directory 165 DISPLAY option fields routine library 627 microfiche directory 165 DISPLA Y queue status routine microfiche directory 164 DISPLAY scan/map/dispatch routine library 627 microfiche directory 164 DISPLAY terminal information routine microfiche directory 164 distribution entry 685 distribution list 685 distribution list subtask library 632 microfiche directory 142 DPRINT service module library 622 microfiche directory 160 DTIME se(vice module library 622 microfiche directory 156 dummy last element 16 duplicate-header message that spans queue-type duplicate-header messages 31, 36 dynamic buffer allocation 685 dynamic translation routine library 632 microfiche directory 140 EXIO service module library 622 microfiche directory 160 extended work area macro 185 FEFO 685 FEFO queue 31, 636 FIFO 685 FIFO queue 31, 636 first-buffer prefix 18 flowcharts 250-394 flush closedown 126, 685-686 FO R WARD macro expansion linkage 196-197 FO R WARD parameter list 196-197 FORWARD processing 88-89 forward routine functions 141,88-89 library 632 microfiche directory 141 functional charts ( see method of operation) functional macro instructions 686 36 ECB ( see event control block) element 13, 685 element request block (ERB) definition 685 description 489 use 20 elements of the TCAM dispatcher 13 enabled module 685 enabled ready queue 16, 636 enabling a line 685 end-of-address character 685 environment checkpoint 114, 119-120 environment checkpoint record ( see checkpoint, environment record) environment checkpoint routine library 621 microfiche directory 153 EOA ( see end-of-address-character) EOB/ETB handling subtask library 632 microfiche directory 143 ERB ( see element request block) ERP ( see error recovery procedures) ERRORMSG macro expansion linkage 195 ERRORMSG parameter list 195 error post and second level CCW return module library 628 microfiche directory 171 error record 685 error recovery procedures (ERP) 685 error recovery procedures linkage BSC 247-248 option 9 start/stop 245-246 error word usage 597-598 event control block (ECB) definition 685 OS posting 17,62-65,72-73 exchange 685 EXCPdriver library 629 microfiche directory 175 EXCP driver for a single CPB library 629 microfiche directory 175 EXCP driver input queue 636 EXCP queue 636 executable modules microfiche directory 134-183 execution of an application program 6-7 execution of an MCP 5-6 general poll 11 generation ( see system generation) get compatible routine library 629 microfiche directory 176 GET macro expansion linkage 197-198 GETCONFIG service module library 623 microfiche directory 161 GETMAIN, termname table sort, and attach routine library 622 microfiche directory 155 GET /PUT and READ/WRITE close executor-load 1 library 630 microfiche directory 183 GET/PUT and READ/WRITE close executor-load 2 library 630 microfiche director~ 183 GET/PUT and READ/WRITE open executor-load 1 library 630 microfiche director~ 181 GET/PUT and READ/WRITE open executor-load 2 library 630 microfiche directory 182 GET/READ routine library 629 microfiche directory 176 get scheduler library 621 microfiche directory 146 get scheduler FIFO routine library 621 microfiche directory 146 glossary 633-691 group entry 686 HANGUP macro expansIon linkage 198 header 686 header buffer 686 header segment 686 held terminal 686 hold function of an MH 34 HOLD macro expansion linkage 199 HOLD parameter list 199 hold queue 34, 636 hold/release terminal routine library 631 microfiche directory 139 HOLD terminal transmission routine microfiche directory 166 ICHNG macro expansion linkage 199 ICOPY macro expansion linkage 199 ICOPY service routine library 632 Index 697 microfiche directory 147 identification characters 686 idle 686 INBUF macro expansion linkage 199 INBUF parameter list 199 incident checkpoint application program request 117,120-121 MH request 115,120-121 operator control request 116, 120-121 incident checkpoint for operator control routine library 621 microfiche directory 153 incident checkpoint record ( see checkpoint, incident record) incident checkpoint routines ( see incident checkpoint for MH routine; incident checkpoint for operator control routine; and incident checkpoint for TCHNG routine) incoming buffer flow 92-95 incoming group 686 incoming message 686 incoming/ outgoing message delimiter routine library 632 microfiche directory 141 INEND parameter list 200 INHDR macro expansion linkage 200 INHDR parameter list 200 initializing an application program initializing an MCP ( see message control program) initializing the TCAM system ( see system/network definition) INITIATE macro expansion linkage 200 INITIATE parameter list 200 INMSG macro expansion ,linkage 201 INMSG parameter list 201 input data set 686 input/output block (lOB) 184 input/output control block 495-501 input sequence number 686 input sequence number insertion routine library 631 microfiche directory 138 inquiry processing 686 insert at offset routine library 632 microfiche directory 140 insert data routine library 631 microfiche directory 137 intercepted station 686 INTRO execution 44-45, 47 INTR0 macro expansion linkage 201 introduction 3 invalid destination 686 invitation 686 invitation delay 686 invitation list 491-493, 686 IOBLOCKS ( see input/output control block) LCB ( see line control block) LCB status byte usage 599-600 leased receive scheduler library 630 microfiche directory 178 line control block (LCB) definition 686 description 503 DSECT 504-510 extension 510 microfiche directory 184 line control characters 686 line control initialization routine library 632 microfiche directory 141 line control insertion routine library 631 microfiche directory 138 line end appendage flowchart 374-394 library 629 microfiche directory 178 line end appendage for a QT AM-compatible system 698 OS TCAM PLM flowchart 366-373 library 629 microfiche directory 173 line end appendage for BSC lines flowchart 338-348 library 629 microfiche directory 173 line end appendage for leased and start/stop lines and no TSO flowchart 360-365 library 629 microfiche directory 173 line end appendage for start/stop lines flowchart 351-359 library 629 microfiche directory 173 line group closedown 128-129 definition 686 opening 52-57 line group close routine-load 1 library 630 microfiche directory 182 line group close routine-load 2 library 630 microfiche directory 182 line group data set 686 line group DCB 687 line group open routine-load 1 functional overview 52-57 library 630 microfiche directory 179 line group open routine-load 2 library 630 microfiche directory 179 line group open routine-load 3 library 630 microfiche directory 179 line group open routine-load 4 library 630 microfiche directory 180 line group open routine-load 5 library 630 microfiche directory 180 line group open routine-load 6 library 630 microfiche directory 180 line group open routine-load 7 library 630 microfiche directory 182 line I/O intertupt trace routine library 629 microfiche directory 173 line management in an MCP receive operation 78-79 send operation 92-93, 95 line queuing options 8 linkages among storage areas in the MCP and an application program 399 linkages between macro expansions and modules 187-240 linkages from a TCAM buffer prefix 397 local receive scheduler library 629 microfiche directory 173 locate option field address routine library 631 microfiche directory 137 LOCK macro expansion linkage 202 lock mode 687 LOCK parameter list 202 lock routine library 632 microfiche directory 142 LOCOPT macro expansion linkage 202 LOCOPT parameter list 202 log 687 log data set 687 log destination QCB 638 LOG macro expansion linkage 202-203 log message routine library 632 microfiche directory 144 LOG parameter list 202-203 log scheduler routine library 632 microfiche directory 144 log segment routine library 632 microfiche directory 144 logging option 8 LOGON macro expansion linkage logtype entry 687 look-up terminal entry routine library 631 microfiche directory 140 203 macro definition 3 macro expansions-linkage to modules ( see macro linkage charts) macro linkage charts ATTEN 187 CANCELMG 188 CARRIAGE 189 CHECK 189 CHECKPT 189 CKREQ 190 CLOSE 191 CLOSEMC 192 CODE 192 COMMBUF 193 COUNTER 193 CTBFORM 193 CUTOFF 194 DATETIME 194 DCB 194 ERRORMSG 195 FORWARD 196-197 GET 198 HANGUP 198 HOLD 199 ICHNG 199 ICOPY 199 INBUF 166 INEND 200 INHDR 200 INITIATE 200 INMSG 201 INTRO 201 INVLIST 201 LOCK 202 LOCOPT 202 LOG 202-203 LOGON 203 LOGTYPE 203 MCOUNT 203 MCPCLOSE 204 MHGET 204 MHPUT 204 MRELEASE 205 MSGEDIT 206-210 MSGFORM 211-212 MSGGEN 212-213 MSGLIMIT 213 MSGTYPE 213 OPEN 215-218 OPTION 218 ORIGIN 219 OUTBUF 219 OUTEND 220 OUTHDR 220 OUTMSG 221-222 PATH 223 PCB 223 POINT 223 PRIORITY 224 PUT 224-225 QACTION 225 QCOPY 225 QSTART 226 READ 226 READY 227 REDIRECT 228 RELEASEM 229 RETRIEVE 230 RETRY 230 SCREEN 231 SEQUENCE 232 SETEOF 233 SETEOM 234-235 SETSCAN 235-236 SIMATTN 236 SLOWPOLL 237 STARTLN 237 STARTMH 237 STOPLN 238 TCHNG 238 TCOPY 238 TERMINAL 238 TERRSET 238 TGOTO 239 TLIST 239 TPROCESS 239 TRANLIST 239 TSINPUT 239 TTABLE 240 TYPETABL 240 UNLOCK 240 WRITE 240 macro parameter lists ( see macro linkage charts) main-storage message queues data set disk backup 35-36 location assignment 35 when units run out 36 ( see also message queues data set) main-storage queuing 35,687 main-storage queuing with disk backup 35-36 main storage requirements for TCAM 3 master QCB 551-556,639 MCOUNT macro expansion linkage 203 MCOUNT routine library 632 microfiche directory 144 MCP ( see message control program) MCP close and closedown completion 126-129 MCP closedown processing routine library 628 microfiche directory 169 MCP message handling ( see message handling in an MCP) MCP queue management ( see queue management in an MCP) MCPCLOSE macro expansion linkage 204 MCPCLOSE scan/map/dispatch routine microfiche directory 169 MCPL field 687 message 687 message control program (MCP) assembly 5 closedown 126-129 data flow from an application program 105-107 data flow to an application program 102-105 definition 687 execution 5-6 initialization 44-47 linkage edit 5 termination 126-129 message, duplicate-header 31, 36 message flow application program to MCP 105-107 incoming to an MCP 82-87 MCP to application program 102-105 outgoing from an MCP 98-101 message generation routine library 632 microfiche directory 142 message handler 687 message handling in an MCP buffer management 18-21 incoming buffer flow 82-87 outgoing buffer flow 98-101 queue management 22-36 message handling routines-functions of incoming group of an MH 82-87 outgoing group of an MH 98-101 ST ARTMH 82-85,98-99 Index 699 message header 687 message limit routine library 631 microfiche directory 138 message log data set 687 message origins table 601-612 message priority 687 message processing 82-107 message queue 687 message queues data set definition 22, 687 opening 48-49 ( see also main-storage message queues data set) message queues open routines 48-49 message queuing options 8 main storage queuing 35 nonreusable disk queuing 22-34 reusable disk queuing 34-35 message retrieval 687 message segment 18,687 message switching 687 method of operation 38 method of operation symbols 38 MH ( see message handler) MH macro expansion parameter lists 187-240 MH vcon table 85,99 MHGET routine library 624 macro linkage 204 microfiche directory 149 MHPUT routine library 624 macro linkage 204 microfiche directory 149 microfiche directory executable modules 133-183 nonexecutable modules 184-186 mixed environment 11 MODIFY control terminal routine microfiche directory 167 MODIFY function message module microfiche directory 166 modify intense routine library 628 microfiche directory 167 MODIFY interval routine microfiche directory 166 modify options routine library 628 microfiche directory 167 modify poll routine library 627 microfiche directory 166 MODIFY scan/map/dispatch modules microfiche directory 166 MODIFY trace status routine microfiche directory 167 module list by library 621-634 MORECORE/FREECORE service module library 623 microfiche directory 161 MRELEASE macro expansion linkage 205 MRELEASE parameter list 205 MSGEDIT macro expansion linkage 206-210 MSGEDIT parameter list 206-210 MSGFORM m~cro expansion linkage 211-212 MSGFORM parameter list 211-212 MSGGEN macro expansion linkage 212-213 MSGGEN parameter list 212-213 MSGLIMIT macro expansion linkage 213 MSGLIMIT parameter list 213 MSGTYPE macro expansion linkage 213-214 MSGTYPE parameter list 213-214 multiple-buffer header 687 multiple insert at offset routine library 632 microfiche directory 141 multiple insert/remove routine library 631 microfiche directory 138 multiple routing 687 700 OS TCAM PLM multiple routing QCB 639 multiple routing subtask library 632 microfiche directory 141 multipoint line 687 multiprocessing environment 10 network control 110-111, 688 network control routines for an application program 110-111 new queue 636, 688 next-buffer location 22, 688 next-message location 22, 688 no-buffer queue 636, 688 no-CPB queue 636, 688 non-operational control unit, unit exception, and unit check with time-out ERP module library 628 microfiche directory 170 nonresident closedown completion routine library 621 microfiche directory 152 nonreusable disk queuing 22-34,90-91,688 nonswitched line 688 non-transparent mode 688 numeric test request message handler library 622 microfiche directory 157 OLT test control modules library 622 microfiche directory 157 on-line test 688 on-line test control block description 511 DSECT 512-529 on-line test QCB 639 open/close subtask library 632 microfiche directory 146 open error handler library 630 microfiche directory 179 OPEN macro expansion linkage 215-218 open routines functions 44-47 opening the checkpoint data set 50-53 opening the line group 52-5.5 opening the message queues data set 48-49 operation codes 645-646 operator awareness message router library 622 microfiche directory 154 operator command 688 operator control 108-109 library 621,627-628 microfiche directory 145.-169 operator control address vector table definition 688 description 531 DSECT 532-535 microfiche directory 184 operator control/application program interface 108-109 operator control/application program interface routine library 621 microfiche directory 146 operator control/checkpoint interface 116, 120 operator control commands linkage DISPLAY 241 HALT 242 HOLD 242 MODIFY 242-243 RELEASE 243 VARY 244 operator control data areas command input buffer 455-456 operator control AVT 531-535 operator control element 185' operator control error message generators microfiche directory 162-163 operator control incident checkpoint interface routine microfiche directory 163 operator control incident checkpoint request 116, 120 operator control input handler microfiche directory 162 operator control interface routine library 631 microfiche directory 139 operator control interface with network control facilities 108-109 operator control options 7 operator control output message writer microfiche directory 163 operator control QCB 639 operator control queue 636 operator control station 688 operator control VARY, HOLD, RELEASE message module microfiche directory 163 operator control work area 184 OPTION macro expansion linkage 218 option characteristics table 537-538 option field 688 options, selected TCAM ( see selected options) option table 539-540, 688 organization and use of the TCAM PLM organization of the TCAM program 4 ORIGIN macro expansion linkage 219 ORIGIN parameter list 219 origin routine library 631 microfiche directory 138 origin routine for a system with concentrated message handling support library 632 microfiche directory 142 OS dispatcher relationship to TCAM 7 OS I/O device characteristics table 541 OS synchronized restart 122-123 OUTBUF macro expansion linkage 219 OUTBUF parameter list 219 OUTEND parameter list 220 outgoing buffer flow 98-101 outgoing group 688 OUTHDR macro expansion linkage 220 OUTHDR parameter list 220 OUTMSG macro expansion linkage 221-222 OUTMSG parameter list 221-222 output data set 688 output sequence number 688 output sequence number provision routine library 631 microfiche directory 137 overview charts ( see method of operation) parameter lists for message handling macro expansions ( see macro linkage charts) password scramble routine library 216 microfiche directory 148 PATH macro expansion linkage 223 PATH parameter list 223 path switch 688 PCB ( see process control block) PCB QCB 639 PCI appendage library 629 microfiche directory 177 physical organization ( see system structure) PLINK service module library 623 microfiche directory 160 POINT macro expansion linkage 223 point routine library 629 microfiche directory 177 point-to-point line 688 polling 688 polling characters 688 post pending routine library 629 .microfiche directory 178 prefix, buffer ( see buffer prefix) primary operator control station 688 priorities, list of in TCAM 641-644 PRIORITY macro expansion linkage 186 PRIORITY parameter list 224 priority QCB 551,553,555-556 problem program mode 688 process control block (PCB) definition 688 description 543 DSECT 544-545 microfiche directory 184 process entry work area description 547 DSECT 548-550 microfiche directory 184 process queue 688-689 processing a message 76-113 program organization 133-394 purge I/O 689 purpose of the TCAM PLM 1 PUT macro expansion linkage 224-225 put compatible routine library 629 microfiche directory 176 put process QCB 639 put scheduler library 621 microfiche directory 145 PUT/WRITE routine library 629 microfiche directory 176 QACTION macro expansion linkage 225 QACTION parameter list 225 QACTION routine library 632 microfiche directory 143 QCB ( see queue control block) QCB extension ( see queue control block extension) QCB for IEDQBD02 639 QCOPY macro expansion linkage 225 QCOPY service routine library 632 microfiche directory 147 QRESET macro library 625 QRESET service routine library 633 microfiche directory 149 QSTART macro expansion linkage 226 queue 689 queue-back chain 29,35,689 queue control block (QCB) 13 definition 689 description 551 DSECT 552-556 microfiche directory 184 queue control block extension definition 689 description 557 DSECT 557-558 microfiche directory 184 queue management in an MCP main-storage queuing 35 main-storage queuing with disk backup 35-36 nonreusable disk queuing 22-34 reusable disk queuing 34-35,90-91 special queuing considerations 36 queue reset executor library 621 microfiche directory 149 queues and QCBs list 635-640 queues of the TCAM dispatcher 13-14 queuing considerations 36 queuing functions of the TCAM dispatcher 71 quick closedown 126-127,689 Index 701 RCB ( see resource control block) read-ahead QCB 639 definition 689 functions 102-103 READD service module library 623 microfiche directory 161 read initial channel programs 646-647 READ macro expansion linkage 226 READ/WRITE unit check ERP module library 628 microfiche directory 170 READY macro functions 60-61 macro expansion linkage 227 ready queue application program interface with 17 definition 15,636,689 disabled 15 enabled 16 update of 16,68-70 ready routine library 621 microfiche directory 153 recall 689 recall QCB 639 recalled buffer 689 receive operation 78-79 record 689 re-dial routine library 632 microfiche directory 141 REDIRECT macro expansion linkage 228 REDIRECT parameter list 228 redirect a message routine library 632 microfiche directory 140 reentrant module 689 refreshable module 689 region control task (RCT) 689 register usage conventions in TCAM 613-615 relative line number (rIn) 689 relative priorities in TCAM 641-644 RELEASEM macro expansion linkage 229 RELEASEM parameter list 229 remove at offset routine library 631 microfiche directory 139 resident module 689 resident closedown completion routine library 633 microfiche directory 152 resident module generation 3 resident operator control module library 621 microfiche directory 145 resource 13,689 resource control block (RCB) definition 689, 13 description 559 DSECT 560 microfiche directory 184 resource management module library 622 microfiche directory 156 restart definition 689 checkpoint/restart overview 112-123 restart functions 122-123 resume terminal transmission microfiche directory 167 RETRIEVE macro expansion linkage 230 retrieve scheduler library 621 microfiche directory 148 retrieve service routine library 632 microfiche directory 146 retry 689 RETRY macro expansion linkage 230 RETRY parameter list 230 702 OS TCAM PLM retry queue 689 REUS QCB 639-640 reusability-copy subtask library 629 log data set update 34 microfiche directory 177 reusable disk queuing 34-35 reusable disk queuing 34-35, 689 rollout 72-75 , rollout/rollin (RORI) 689 routine service module library 623 microfiche directory 161 routing codes 601,689 save area management 613 SCB ( see station control block) SCB error word usage 597, 598 SCREEN macro expansion linkage 23 1 SCREEN parameter list 231 l>creen routine library 631 microfiche directory 140 SCT ( see special characters table) secondary destination 689 secondary storage requirements for TCAM 3 segment 689 selected options application program processing 7-8 checkpoint/restart 8-9 cross-reference table 10 error recovery procedures 9 line queuing 8 logging 8 message queuing 8 operator control 7 subtask trace 9-10 TCAM as a startable procedure 9 TCAM in a multiprocessing environment 10 time sharing 10-11 selection 689 send operation 92-95 send scheduler library 630 microfiche directory 178 send scheduler for leased lines and no TSO library 629 microfiche directory 174 send scheduler with no TSO library 629 microfiche directory 174 sending 689 SEQUENCE macro expansion linkage 232 sequence number 689 SEQUENCE parameter list 232 serially reusable module 689 SETEOF macro expansion linkage 233 SETEOF parameter list 233 SETEOM macro expansion linkage 234-235 SETEOM parameter list 234-235 SETEOM routine library 632 microfiche directory 143 SETSCAN macro expansion linkage 235-236 SETSCAN parameter list 235-236 SIMATTN macro expansion linkage 236 single entry 690 skip backward routine library 632 microfiche directory 140 skip forward and scan routine library 631 microfiche directory 138 skip to character set routine library 631 microfiche directory 138 SLOWPOLL macro expansion 237 SLOWPOLL parameter list 237 SLOWPOLL routine library 626 macro linkage 237 microfiche directory 145 source offset 690 special characters table (SCT) definition 690 description 561 DSECT 562 library 629 microfiche directory entries 185-186 special queuing considerations 36 start general poll routine microfiche directory 169 start I/O appendage microfiche directory 172 start line routine library 628 microfiche directory 168 ST ARTLN macro expansion linkage 237 STARTMH continuation subtask library 631 microfiche directory 137 ST ARTMH functions receive operation 80-81 send operation 96-97 ST ARTMH macro expansion linkage 237 STARTMH QCB 640 ST ARTMH subtask library 631 microfiche directory 137 STARTMH subtask for TCAM-TSO mixed library 631 microfiche directory 136 start/stop channel check ERP module library 628 microfiche directory 172 start/stop ERP control module library 628 microfiche directory 170 start-stop transmission 690 start terminal routine microfiche directory 168 start-up message routine library 630 microfiche directory 179 static buffer allocation 690 station 690 station control block (SCB) definition 690 description 563 DSECT 564-570 microfiche directory 184 status byte, LCB 599-600 STCB ( see subtask control block) STCB formats 572 stop general poll routine microfiche directory 169 stop line I/O subtask library 633 microfiche directory 150 stop line I/O subtask QCB 633 stop line routine library 628 microfiche directory 168 STOPLN macro expansion linkage 238 stop terminal routine microfiche directory 168 subblock 690 subroutine linkage 613 subsequent-buffer prefix 18 subtask control block (STCB) 13 description 571 DSECT 572 microfiche directory 185 subtask, linkage fram STCB to code 16 subtask trace option 9-10 supervisor mode 690 support module generation 5 swapping 72-75 switched line 690 symbols for method of operation charts 38 SVC 34 ( see TCAM command scheduler-SVC SVC 102 72-75 system control functions AQCTL SVC 102 routine 72-75 TCAM Dispatcher 13-17, 68-72 system delay QCB 640 system delay queue 637 system delay subtask library 621 microfiche directory 150 system generation system nucleus modules 5 TCAM macro definitions 3 TCAM resident modules 3 TCAM support modules 5 TCAM transient modules 5 system interval 690 system/network closedown 124-131 system/network definition 44-65 system nucleus module generation 5 system requirements 3 system service routine ( see disk message queue initializer) system structure 3,4 application program 6-7 message control program 5-6 physical organization 3, 4 relationship of OS dispatcher to TCAM 7 system generation 3 SYSl.LINKLIB 5,621-623 SYS1.MACLIB 3,623-627 SYS1.NUCLEUS 5,627 SYS1.SVCLIB 5,627-630 SYS 1. TELCMLIB 3, 63 1-634 34) table of message origins 601-611 table of register usage conventions 613-615 task control 7 task control block (TCB) 185,690 task I/O table 690 TCAM abnormal close routine library 628 microfiche directory 155 TCAM as a startable procedure 9 TCAM channel programs and TP op codes 645-681 TCAM command scheduler-SVC 34 library 628 microfiche directory 162 TCAM control block linkages 395 TCAM control block linkages from a buffer prefix 397 TCAM dispatcher basic concept of 13-17 dispatching functions 68-70 elements 13 library 629 microfiche directory 175, 184 queues 13 queuing functions 71 ready queue 15-16 relationship to OS 7 subtasks 13 tpost principle 17 twait principle 17 TCAM dispatcher with subtask trace library 629 microfiche directory 177 TCAM flowcharts 250-394 TCAM in a multiprocessing environment 10 TCAM linkages between macro expansions and modules 187-240 TCAM module list by library 621;634 TCAM options ( see selected options) TCAM queues and QCBs 635-640 TCAM relationship with OS dispatcher 7 TCAM relative priorities 641-644 TCAM service aids 617-620 TCAM system closedown 124-131 TCAM system control 68-75 TCAM system definition 44-65 TCAM system generation ( see system generation) TCAM system structure ( see system structure) TCAM/TOTE channel end and abnormal end appendages for Index 703 graphic devices library 628 microfiche directory 172 TCAM/TOTE start I/O appendage for graphic devices library 628 microfiche directory 172 TCAM/TSO buffer 690 TCB ( see task control block) TCHNG macro expansion linkage 238 TCHNG service routine library 632 microfiche directory 147 TCOPY macro expansion linkage 238 TCOPY service routine library 632 microfiche directory 147 telecommunications 690 teleprocessing 690 teleprocessing on-line test execution ( see TOTE) terminal 690 terminal input scanner microfiche directory 162 terminalI/O coordinator (TIOC) 690 TERMINAL macro expansion linkage 238 terminal status block (TSB) 690 terminal table cascade entry 574-575,577 data area layout 579-580 description 573-575 distribution entry 574, 577 group entry 574, 577 line entry 575, 577 logtype entry 575, 577 microfiche directory 185 process entry 575, 577 single entry 574, 577 termination functions-application program 130-131 termination functions-MCP 106-107 termname table definition 690 description 581 DSECT 582 microfiche directory 185 termname table code microfiche directory 155 TERRSET macro expansion linkage 238 test event control block description 583 DSECT 584-585 test request message 'analysis modules library 622 microfiche directory 156-157 test request message prompter modules library 622 microfiche directory 159 tete-a-tete 690 text 690 text segment 690 TGOTO macro expansion linkage 239 TGOTO parameter list 239 TGOTO routine library 632 microfiche directory 143 time delay 690 time delay QCB 640 time delay queue 637 time delay subtask library 633 microfiche directory 150 time sharing 690 time sharing destination scheduler library 631 microfiche directory 134 time sharing input QCB (TSID) 690 time sharing job control block (TJB) 690 time sharing option (TSO) 10-11,691 time sharing queue control block 185 time sharing scheduler library 631 microfiche directory 137 TLIST macro expansion linkage 239 704 OS TeAM PLM TOTE functions 11 requirements 12 TOTE configurator scheduler library 622 microfiche directory 157 TOTE convert service module library 623 microfiche directory 161 TOTE dispatcher module library 622 microfiche directory 157 TOTE GRAB/LETGO service module library 623 microfiche directory 161 TOTE message module library 622 microfiche directory 159 TOTE message submodules library 622 microfiche.directory 159-160 TOTE resident module library 622 microfiche directory 156 TOTE resource control block description 587 DSECT 588-590 TOTE test control module library 622 microfiche directory 157 TP operation codes '645-646 TPDATE routine library 632' microfiche directory 144 TPER recorder module library 628 microfiche directory 172 tpost principle 17, 691 TPROCESS macro expansion linkage 239 trace function module library 622 microfiche directory 160 TRANLIST macro expansion linkage 239 transient module 691 transient module generation 5 translate buffer routine library 631 microfiche directory 140 translation tables library 633-634 microfiche directory 185 transmission 691 transmission control unit (TCU) 691 transmission priority 691 transparent mode 691 transparent transmission CCW building routine library 632 microfiche directory 149 TSINPUT macro expansion linkage 239 TSINPUT QCB 640 TSINPUT routine library 631 microfiche directory 135 TSO abend interface routine library 631 microfiche directory 136 TSO asynchronous time delay removal routine library 631 microfiche directory 137 TSO attention routine library 630 microfiche directory 134 TSO carriage subroutine library 630 microfiche directory 134 TSO hangup routine library 631 microfiche directory 135 TSO INMSG/OUTMSG linker library 631 microfiche directory 136 TSO IOHALT routine library 631 microfiche directory 135 TSO/TCAM logon routine library 631 microfiche directory 135 TSO message generation routine library 631 microfiche directory 136 TSO option 10-11 TSO simulated attention routine library 631 microfiche directory 136 TSO/TCAM logon routine 135 TSO TIOC edit routine library 631 microfiche directory 134 TSO TIOC 3270 edit routine library 630 microfiche directory 134 TSOUTPUT routine library 631 microfiche directory 136 TT ABLE macro expansion linkage 240 twait principle 17,691 TTECB ( see test event control block) TYPET ABL macro expansion linkage 240 TYPET ABL routine macro linkage 240 unit 18 unit check and unit exception on read/write CCWs for audio and 2260 local devices ERP module library 628 microfiche directory 171 unit check for non-read, non-write, non-poll CCWs ERP module library 628 microfiche directory 170 unit control area definition 18 uSes 19,35 unit request interface routine library 631 microfiche directory 138 UNLOCK macro expansion linkage UNLOCK parameter list 240 unlock routine library 632 microfiche directory 142 use of TCAM PLM I user interface routine library 633 microfiche directory ISS 240 VARY scart/map/dispatch module microfiche directory 168 wait I/O service routine library 623 microfiche directory 161 warm start 691 work area macro 184 work unit 691 wrapped message queues data set 34 WRITE macro expansion linkage 240 write-to-operator (WTO) 691 write-to-operator with reply (WTOR) 691 WTOR interpreter routine library 622 microfiche directory ISS zero-length buffer 691 zone 691 Zone boundary 691 zone mid-point 35 Index 70S GY30·2029·3 International Bualn... Machin.. Corporation Data Proceulng Division 1133 W...ch....r Avenu., Whn. Plalna, N.w York 10804 (U.S.A. only) IBM World Trad. Corporation 821 United Natlona Plaza, New York, New York 10017 (International) • READER'S COMMENT FORM Order No. GY30-2029-3 OS/MFT and OS/MVT TeAM Logic • • How did you use this publication? o o As a reference source As a classroom text As .............. . o • Based on your own experience, rate this publication ... As a reference source: Very Good Good Fair Poor Very Poor Very Good Good Fair Poor Very Poor As a text: • What is your occupation? .................................................. . • We would appreciate your other comments; please give specific page and line references where appropriate. If you wish a reply, be sure to include your name and address . • • Thank you for your cooperation. No postage necessary if mailed in the U.S.A. li Y;JO-2029-3 YOUR COMMENTS, PLEASE . . . (") .~ S Your answers to the questions on the back of this form, together with your comments, help us produce better publications for your use. Each reply is carefully reviewed by the persons responsible for writing and publishing this material. All comments and suggestions become the property of IBM. ~ 0 :l (Q C :l '" Please note: Requests for copies of publications and for assistance in using your IBM system should be directed to your IBM representative or to the IBM sales office serving your locality. I I I I Fold Fold I __ -...I FIRST CLASS PERMIT NO. 569 RESEARCH TRIANGLE PARK NORTH CAROLINA BUSINESS REPLY MAIL NO POSTAGE STAMP NECESSARY IF MAILED IN U. S. A. POSTAGE WILL BE PAID BY ••• ~ c ( I BM Corporation P. O. Box 12275 Research Triangle Park North Carolina 27709 f ~ I I Attention: Publications Center, Dept. E01 I - ---I Fold Fold ( ~ r c If (' - = Ci c - C c. ? c (, c ~ c r. Ci ~ International Business Machines Corporation Data Processing Division 1133 Westchester Avenue. White Plains, New York 10604 (U.S.A. only) IBM World Trade Corporation 821 United Nations Plaza, New York, New York 10017 (International)
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No XMP Toolkit : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37 Create Date : 2011:09:29 09:25:58-08:00 Modify Date : 2011:09:29 16:53:12-07:00 Metadata Date : 2011:09:29 16:53:12-07:00 Producer : Adobe Acrobat 9.45 Paper Capture Plug-in Format : application/pdf Document ID : uuid:b0ad2cd2-e808-4fd0-bcde-1595547b2781 Instance ID : uuid:806bd701-1bdf-436a-89c6-11aaf4f92ebf Page Layout : SinglePage Page Mode : UseNone Page Count : 723EXIF Metadata provided by EXIF.tools