File No. 7090-36 Form C28-6382-3

Systems Reference Library

IBM 7090-7040 Direct Couple Programmer's Guide

This publication contains information the programmer needs to prepare jobs for the IBM 7090-7040 Direct Couple Operating System (DCOS), i7090-PR-161. Included are discussions of basic system concepts, control cards, the Core Storage Dump Program, the Direct Couple Input/Output Executor, and a discussion of 7090 octal dump interpretation. Form C28-6382-3 Page Revised 6/11/65 By TNL N28-0157-0

PREFACE

This publication describes the Direct Form C28-6392 Couple Operating System (DCOS) and the IBM 7090/7094 Programming Systems: COBOL components of it that are of primary inter­ Language, Form C28-6391 est to the applications programmer. The IBM 7090/7094 IBSYS Operating system: first section contains a general introduc­ IBJOB Processor Debugging Package, tion to DCOS that is intended to acquaint Form C28-6393 the reader with system concepts, modes of operation, and job flow. Subsequent sec­ tions include discussions of control cards, Instructions for using the IBJOB Proc­ the Core storage Dump Program, the Direct essor should be interpreted by the reader Couple Input/Output Executor, and 7090 of the above publications in light of the octal dump interpretation. DCOS configuration and oth~r charac­ teristics of DCOS. The most significant More detailed information about DCOS, considerations are the unit assignment including initial creation and system main­ specifications for the $FILE control card. tenance procedures, is contained in the These are described in Appendix A of this publication, IBM 7090-7040 Direct Couple publication. Operating System: Systems Programmer's Guide, Form C28-6383. References to the Input/Output Control System also appear in this publication. All information required by machine The Input/Output Control System is des­ operators is provided in the publication cribed in the publication IBM 7090/7094 IBM 7090-7040 Direct Couple Operating Sys­ IBSYS Operating System: Input/Output Con­ tem: Operator's Guide, Form C28-6384. trol System, Form C28-6345. Specifications for the Direct Couple The Direct Couple Operating System is feature, and descriptions of additional designed for five major machine configu­ machine instructions that facilitate its rations. use, are contained in the publication Directly Coupled processing Units--7040 to 1. 7090-DC-7040 7090/7094; 7044 to 7094/7094 II, Form 2. 7094~DC-7040 A22-6803. 3. 1094-DC-7044 4. 1094 II-DC-1044 For information on the IBJOB Processor, 5. 7094 II-DC-7040 the major subsystem of DCOS, the reader is referred to the following IBM publications: Throughout this publication, the term 7090 refers to the 1090, 7094, or 7094 II IBM 7090/7094 IBSYS Operating System: and the term 7040 refers to the 7040 or IBJCB Processor, FormC28-6389 7044. IBM 7090/7094 Programming Systems: FOR­ TRAN IV Language, Form C28-6390 The minimum machine configuration IBM 7090/7094 Programming Systems: Macro required by the distributed version of DCOS Assembly Program (HAm Language, is given in Appendix F.

Major Revision (March 1965) This edition, Form C28-6382-3, is a major reV1S1on of Form C28-6382-2. This publication amplifies material pre­ viously presented, and, in some cases, provides additional material. Major changes and additions are concerned with: system messages, utility routines, and direct- and compatability-mode systems. Additions or changes are indicated by a vertical line to the left of the text; new or revised illustrations are denoted by the symbol • to the left of the caption.

The following publications are made obsolete by this revision: C28-6382-2, C28-6382-1, C28-6382-0, and the Tech­ nical Newsletters N28-0145-0 and N28-0148-0.

This publication was· prepared for production using an IBM to update the text and to control the page and line format. Page impressions for photo­ offset printing were obtained from an IBM 1403 Printer using a special print chain.

Copies of this and other IBM publications can be obtained through IBM Branch Offices.

A form for readers' comments appears at the back of this publication. It may be mailed directly to IBM. Address any ·additional comments concerning this publication to the IBM Corporation, Programming Systems Publications, Department 039, 1271 .Avenue of the Americas, New York, NY., 10020. o 1964 by International Businp.ss Machines Corporation CONTENTS

INTRODUCTION 7 Transfer To D~mp Instructions • 24

DIRECT COUPLE OPERATING SYSTEM CONCEPTS 8 Dump Parameters • 24 IBM 7090 Data Processing System 8 IBM 7040 Data Processing System 8 Machine Status at the End of a Dump 25 IBM 1402 Card Read Punch · 8 IBM 1403 Printer . . . . · · · 8 DIRECT COUPLE INPUT/OUTPUT EXECUTOR 27 IBM 1014 Remote Inquiry Unit · · · · 8 IBH 729 Magnetic Tape units 8 DC-IOEX Communication Region Table 27 IBM 1301 Disk Storage · · · · 8 IBM 7320 Drum Storage · · · · 9 unit Control Block 29 · · · · Word 1 • • • • • 29 Job Processing • • • • • • 9 ~ord 2 • • • • • • • 30 DCOS Multiprocessor •••• 9 Word 3 • 30

IBM 7090 Operating System with DC Word 4 q • • • • 30 Capability ••••••••• 10 Maintenance of Unit Control Block 7040/7044 IBJOB Tape Blocking Fields '. • • • • • • • • 30 Utility Routines 11 Using The DC-IOEX Trap Supervisor • 30 Operating Modes • • • 11 Determining the Availability of a Direct Mode 11 Unit • • • • • • • • • 30 Compatibility Mode. 11 Call to DC-IOEX 30

Job Flow 12 Select Routines • 31 Input Stage 12 Select Routine Exits 31 Setup Stage 12 Location MODSW • • • • • 31 Execution Stage 12 Design of Select Routines, Select Breakdown Stage 13 Plus Entry • • • • • • • • • • 31 Punch Stage 13 Design of Select Routines, Select Print Stage •••• 13 Minus Entry • • • • • • • • • • • • 32 Purge Stage 13 Sense Indicators • • • • • • • • • • 32 Suppression of the IOEX Redundancy Example of Typical Job Flow 13 Message • • • • • •• • • • • • 32 Functional 7090 System Unit (IOBASE) Location • COMM • • • • • • • • • 32 Configurations • • • • • • • • 14 General Considerations in the Design of Select Routines 33 CONTROL CARDS • • • • • 15 General Control Card Format 15 Nondata Selects 33 $JOB Card •••• 15 $EXECUTE Card 15 DC-IOEX Utility Routines 34 $ROW Card 16 Message Writer • 34 $ENDROW Card • • • • • • 16 Message Length • • • • • 35 $IOBASE Card • • • 17 Alphameric Punch • .• • • 35 $SETUP Card • • • • 17 Post-Mortem Dump • • • • 35 $SETUP Card Option Specifications 18 Binary-to-Decimal Conversion--AC $ASSIGN Card 19 Decrement • • • • • • • • • • • 35 $ATEND Card • • • • 20 Binary-to-Decimal Conversion--AC $DATA, $EOF, iEOF, and i Cards • 20 Address • • • • • • • • • • • • • • 35 $ID Card • • • • • • • • 20 Binary-to-BCD Octal Conversion--MQ $* Card 21 Decrement • • • • • • • • • • 35 $PAUSE Card 21 Binary-to-BCD Octal Utility Routines Specified on Conversion--S,1-14 of MQ 35 $UTILITY Cards •••• 21 Pause Routines • • • • 35 Examples of Deck Setups 22 Symbolic Unit Conversion •• 36 Convert and Add Unit Designation to SYSTEM CORE STORAGE DUMP PROGRAM 24 Message • • • • • • • • • • • • 36 GENERAL PROGRAMMING CONSIDERATIONS 37

Direct- and Compatibility-Mode Systems 37 Direct-Mode Systems • • • • 38

Compatibility-Mode Systems 38 GUIDE TO 7090 OCTAL DUMP INTERPRETATION 40 Non-DC-IBSYS Jobs ••• • • • 40 Data Channel-Trap Simulation • • 40 DC-IBSYS Locations • • • • • • • 41 communication region locations • 42 Examining Unit Control Blocks 44 APPENDIX A: IBJOB UNIT ASSIGNMENT-DCOS 46 Unit Assignment Options 46 General Unit Assignment Considerations •••• 47

APPENDIX B: MESSAGES... 48 APPENDIX C: CONTROL CARD FORMAT INDEX. 58

DC-IBSYS/DCMUP Control Cards 58 System Editor Control Cards • • 59

7040/7044 IBJOB Tape Blocking Utility Control Cards ••• • • • • •• 60

APPENDIX D: CONTROL CARD CHECK LIST 61 pC-IBSYS/DCMUP Control Cards 61 System Editor Control Cards • • 62

APPENDIX E. SPECIAL CONSIDERATIONS; COMPATIBILITY MODE OPERATION • 64 II Monitor System 64 709C/7094 Sort • • • • • • • 64

APPENDIX F: MACHINE CONFIGURATION • •• 66 ILLUSTRATIONS

Figure 1. Direct Couple Operating Sys- tem--General Machine Configuration 8 Figure 2. Phases of Processing . • •• 9 Figure 3. DC-IBSYS Monitor Organization. • • • • • • • • . • .• 10 Figure 4. IBM 7090 Operating System with DC Capability (DC-IBSYS) 11 Figure 5. Stages of Processing for Non- Utility Jobs. • • • • • • • 12 Figure 6. Direct-Mode System Unit FUnctions (IOBASE 0) • • . • • 14 Figure 7. IOBASE 1 • • • • • • . • •• 14 Figure 8. IOBASE 2 • • • • • • 14 Figure 9. Sample $ROW-$ENDROW Application • • • • • • • 16 Figure 10. Sample Deck Setup--FORTRAN Compilation and IBMAP Assembly • • 22 Figure 11. Sample Deck Setup--One- Segment FORTRAN Compilation and Execution • • • • . • • • • • • 23 Figure 12. Sample Deck Setup--Two- Segment Job • • • • • • • • • 23 Figure 13. Sample Deck Setup--Object Program on Cards • • • • • • . • • •. 23 Figure 14. Sample Deck Setup--System on Tape • • • • • • • • • • • • • • • 23 Figure 15. Core Storage Dump Formats 26 Figure 16. DC-IOEX Communication Table • • • • • • • • • • • 28 Figure 17. Unit Control Block. 30 Figure 18. DC-IBSYS Locations. 42 Figure 19. Communication Region Locations •••••• • • • 43 Figure 20. Contents of Sample Unit Control Block . • • • . 45

INTRODUCTION

The Direct Couple Operating System All 7090 input/output requirements are (DCOS) is a set of supervisory routines handled by 7040 routines. The 7607 Data that coordinate job processing on systems Channel and its associated input/output having the Direct Couple feature. DCOS devices are simulated by 7040 routines. provides a framework within which other The 7909 Data Channel is not simulated. 7090/7094 progra~ng systems may function. The most significant advantages of DCOS Jobs are scheduled by 7040 routines are more efficient use of 7090 processing based on their individual priorities and capabilities and improved job turnaround queued for 7090 processing. Any setup time. Several operating characteristics required, such as mounting and blocking contribute to this improved performance. tapes on the 7040, is performed before the job is loaded into the 7090, so that the The need for operator handling of tapes 7090 is not delayed for these operations. is reduced. Normally a job is never han­ dled in an intermediate form. For example, most output tapes that must be printed or The fUnctions of the 7090 operator in punche~ off-line are eliminated. controlling job processing are performed by 7040 routines. The operator communicates Less system search time is needed with the system through a 1014 Remote because programming systems reside on 1301 Inquiry Unit or the 7040 console keys. Disk Storage. Facilities are included for job status inquiry, change of job priority, system The workload of the 7090 is maintained restart, setup communication, and automatic by 7040 routines that prepare and supply notification of excessive 7090 execution the input flow to the 7090 and handle all time or output. 7090 output.

Introduction 7 DIRECT COUPLE OPERATING SYSTEM CONCEPTS

This section serves to acquaint the IBM 7040 DATA PROCESSING SYSTEM reader with the Direct Couple Operating System (DCOS). The general organization, function, and relationship of each system The primary function of the IBM 7040 component is discussed. A brief descrip­ Data processing System is to service the tion of the basic machine ,configuration and input/output requirements of the 7090. of the functions performed by each device This includes preparing input files, per­ is included. Familiarity with these basic forming pre-job setup, interpreting the DCOS concepts' is necessary for a better 7090 input/output requests and initiating understanding of the material presented the activity, and performing all printing, throughout the remainder of this publica­ punching, and post-job breakdown. tion. Figure illustrates the machine con­ figuration for DCOS in general terms for IBM 1402 CARD READ PUNCH purposes of the discussions that follow.

r------~------l The IBM 1402 Card Read Punch is used by the system for all input and output.

IBM 1403 PRINTER

The IBM 1403 Printer is used by the system for all printed output.

IBM 1014 REMCTE INQUIRY UNIT

The IBM 1014 Remote Inquiry Unit is used by the operator to communicate with the 17090 programming systems are transmitted from the 1301 system and to control operations executed to the 7090 through the Direct Read to Coupled Processor feature of the 7904 Data Channel. by the system. Messages to the operator L ______may appear on the 1014.

Figure 1. Direct Couple Operating System-­ General Machine Configuration IBM 729 MAGNETIC TAPE UNITS

IBM 729 Magnetic Tape Units are used for all jobs requiring tape input or output. IBM 7090 DATA PROCESSING SYSTEM IBM 1301 DISK STORAGE The IBM 7090 Data Processing System performs one major fUnction: actual job processing. It has no input/output One module of IBM 1301 Disk Storage facilities other than the Direct Couple (channel B, module 0) is required. It is feature. In normal operation, a component used for 7090 programming systems of DCOS, the 7090 IBSYS Operating System residence; for 7040 supervisory routine with DC Capability (DC-IBSYS), resides in residence; and for intermediate storage of the 7090 and exercises control over job system input and output data. Any addi­ execution. DC-IBSYS does not initiate tional channel B modules are used for input/output activity, but requests the system residence (systems are shared activity, which is performed by the 7040. between all wodules). All modules are used

8 Form C28-6382-3 Page Revised 6/11/65 By TNL N28-0157-0 for intermediate storage of system input All files to be processed by DCOS must and output data. be in the standard DCOS record format. This format consists of 460-word physical records, each record containing a two-word identifier and a 458-word area into which IBM 7320 DRUM STORAGE the logical records, separated by record control words, are placed. More detailed information about the DCOS record format is IBM 7320 Drum Storage may be substituted contained in the publication Direct Couple for any even numbered module but the one Operating System: Systems Programmer's required module of disk storage. Functions Guide, Form C28-6383. of drum storage are identical to those of the additional disk storage modules that are allowed. Throughout the remainder of this publi­ cation, the terms disk, 1301, or 1301 Disk Storage may refer to either IBM 1~ Disk DCOS MULTIPROCESSOR Storage or IBM 7320 Drum Storage.

The DCOS Multiprocessor (DCMU~ contains subroutines that perform all preprocessing JOB PROCESSING and postprocessing functions and service all input/output requirements of the 7090. DCMUP subroutines are entered from a master A fundamental concept of DCOS is that control program called the commutator. many jobs are handled by the system simul­ Upon entry into a subroutine, one unit of taneously. To facilitate control over the its work (e.g., printing one line) is many jobs being processed concurrently, performed, control is returned to the com­ each job is divided into three phases: mutator, and another subroutine is entered. preprocessing, processing, and postprocess­ Thus, preprocessing, postprocessing, and ing. Control of the system is exercised by input/output servicing appear to occur two supervisory programs (Figure 2): the simultaneously .. IBM 7090/7094 IBSYS Operating System with D~ Capability (DC-IBSYS) and the DCOS Multiprocessor (DCMUP). DCMUP includes five utility routines that are available during the preprocessing DC-IBSYS resides in the 7090 and exer­ and postprocessing phases of a job. These cises control over the processing phase. background utilities are specified on the DCMUP resides in the 7040 and exercises $SETUP control card (described under control over both the preprocessing and "Control Cards"). DCMUP utility routines postprocessing phases. DC-IBSYS and DCMUP block or deblock records of 3 to 457 words perform their functions asynchronously. per block. Other utility routines are The overlap of job processing with the described in the section "7040/7044 IBJOB preprocessing and postprocessing of other Tape Blocking Utility Routines." jobs significantly reduces turnaround time, which is the time from the introducbion of a job to the system to the time the job is complete. r------, I Preprocessing Utilities I IBM 7090-7040 Direct I FO::p~ Qpe..!'l!!!,g3~m_ ""1 I I TAPE-To-TAPE BLOCKING: The Tape-to-Tape I Blocking Utility blocks tape records writ­ I ten with a blocking factor of 3 to 457 I words to the standard DCOS record format, I and writes,them on another tape. (All tape t input to the processing phase of DCOS must be in the standard DCOS record format.) I DC-IBSYS I (7090) Processing I TAPE-To-DISK BLOCKING: The Tape-to-Disk L ______-1 Il ______J Blocking Utility blocks tape records writ­ ten with a blocking factor of 3 to 457 words to the standard DCOS record format, Figure 2. Phases of Processing and writes them on the disk.

Direct Couple Operating System Concepts 9 Form C28-6382-3 Page Revised 6/11/65 By TNL N28-0157-0

Postprocessing utilities Monitor, but must reside in the system library (1301). Procedures for editing the system library to include IBSYS subsystems, other than IBJOB, and non-IBSYS systems are TAPE-TO-TAPE DEBLOCKING: The Tape-to-Tape included in the publication IBM 7090-7040 Deblocking Utility returns tapes that have Direct Couple Operating System: Systems been written in the standard DCOS record Programmer's Guide, Form C28-6383. Non­ format to the format (3 to 457 words per IBSYS systems need not be on the system block) specified within the user's program. library and may be introduced to DCOS on cards or tape. DISK-TO-TAPE DEBLOCKING: The Disk-to-Tape Deblocking utility writes information from the disk onto a tape unit. Records are written in a format (3 to 457 words per block) specified within the user's program. The DC-IBSYS Monitor r------, The general organization of the DC-IBSYS

Compatibility Mode Direct Mode Monitor is illustrated in Figure 3. The DC-IBSYS Monitor consists of:

1. The DC-IBSYS Nucleus (DC-IBNUC), which IBJOB Processor remains in core storage during r------, I I processing and provides common facili­ I I ties for communication and control among the sUbsystems and between the DC-IBSYS Monitor and the subsystems. 2. The DC Input/Output Executor (DC-IOEX), which normally remains in core storage to coordinate and control input/output and other trapping opera­ tions. 3. The DC-IBSYS Supervisor (DC-IBSUP), whose primary fUnction is to control and coordinate the processing of jobs by passing control from one subsystem to another. 4. The DC-IBSYS Core Storage Dump Program (DC-SYSDMP), which may be used to facilitate the testing and analysis of programs executed by the system. 5. The System Editor (IBEDT), which pro­ vides the systems programmer with a means of modifying and maintaining the DCOS monitors and the subsystems oper­

1Although non-IBSYS systems are called by the DC-IBSYS Monitor, DC-IBSYS is not ating under their control. used after the non-IBSYS system assumes control. The DC-IBSYS Monitor may also contain an installation accounting routine tailored to Figure 3. IBM 7090 Operating System with the specific requirements of the installa­ DC Capability' (DC-IBSYS) tion. Subsystems operating under control of the DC-IBSYS Monitor provide the programmer with a variety of programming aids, which he may use singly or in combination to IBM 7090 OPERATING SYSTEM WITH DC process a particular job. CAPABILITY

The IBM 7090 Operating System with DC Capability (DC-IBSYS) supervises ~he execu­ The IBJOB Processor tion of jobs. As shown in Figure 4, it consists of the DC-IBSYS Monitor, the sys­ tem editor (IBEDT), and the IBJOB Proc­ The IBJOB Processor is an integrated essor. IBSYS subsystems, other than the processor that can be used to compile, IBJOB Processor, and non-IBSYS systems may assemble, load, and execute programs writ- be executed under control of the DC-IBSYS

10 ten in FORTRAN IV or COBOL language. It OPERATING MODES can also be used to assemble, load, and execute programs written in the Macro Assembly Program (MAP) language or to load In the DCOS machine configuration the and execute previously assembled object absence of data channels attached to the programs. Facilities are provided for 7090 does not limit applications to those overlay, debugging, and combining program written especially for DCOS. Two modes of segments written in different languages operation are provided in DCOS--the direct with previously assembled segments to form mode and the compatibility mode. a single executable object program. Basically, the difference between the two modes is the manner in which input/output The IBJOB Processor contains a complete activity is handled. Input/output conven­ library of relocatable subroutines, includ­ tions for the direct mode are tailored ing a complete Input/Output Control System especially for DCOS and the direct-couple (library IOCS) • channel, whereas, in the compatibility mode, input/output conventions are adapted The IBJOB Processor an~ its use are to programs written for a standard 7090 described in detail in the publication IBM Data Processing System (with data 7090/7094 IBSYS Operating System: IBJOB channels) • Processor, Form C28-6275. r------,

DC-IBSYS DIRECT MODE DC-IBSYS Core Storage NUCLEUS Dump Program (DC-IBNUC) (DC-SYSDMP) The IBM 7090/7094 IBJOB Processor has DC been modified to operate in the direct Input/Output Executor mode. Programs written in the FORTRAN IV, (DC-IOEX) COBOL, or MAP (with library laCS) languages are automatically provided with I input/output routines tailored to the DC-IBSYS System direct-couple channel. Supervisor Editor (DC-IBSUP) (lBEDT) When a request for input/output activity is encountered in the direct mode, DC-IOEX ------1------places a description of the' desired I input/output function in a predetermined I I I area of 7090 core storage; the 7090 traps Installation - I the 7040 (7090 processing continues); and IBJOB Added IBSYS DCMUP interprets the function description Monitor I Subsystems I and initiates the input/output activity via ______JI the DC channel. Data transmission and 7090 execution occur Simultaneously. When the activity is finished, DCMUP issues an Figure 4. IBM 7090 Operating System with instruction that traps the 7090 and indi­ DC Capability (DC-IBSYS) cates that transmission has been completed.

7040/7044 IBJOB TAPE BLOCKING UTILITY ROUTINES COMPATIBILITY MODE The 7040/7044 IBJOB Tape Blocking utili­ ty routines are three programs that run The compatibility mode is provided for under control of the IBM 7040/7044 Operat­ execution of programs or programming sys­ ing System (16/32K). The programs are tems that do not utilize direct mode described in detail in the publication IBM input/output conventions. In the compat­ 7090-7040 Direct Couple Operating System: ibility mode, each 7090 input/output Operator's Guide, Form C28-6384. They may instruction and each instruction that tests be used to (1) block tape records of three input/output status causes the 7090 to stop to 16,000 words to the standard DCOS record and traps the 7040; DCMUP interprets each format, (2) deblock tape records written in instruction, restarts the 7090, and ini­ the standard DCOS record format to a format tiates the input/output activity. Data specified by the user, that is, 16,000 transmission and 7090 execution occur words m'aximum and 3 words minimum, or (3) simultaneously. If trapping is enabled by block either IBSYS or non-IBSYS system the 7090 program, the 7040 traps the 7090 tapes into the standard DCOS record format. when transmission is complete.

Direct Couple Operating System Concepts 11 Form C28-6382-3 Page Revised 12/7/65 By TNL N28-0174-0

IBSYS sUbsystems other than IBJOB and standard DCOS record format and all non-IBSYS systems are processed in the written on the disk. compatibility mode. 2. A job description is prepared by DCMUP and written on the disk. ,The job description includes a job number and the disk location that was assigned to JOB FLOW the job. 3. A one-word job identifier is formed. The identifier contains the disk loca­ The three processing phases described tion assigned to the job description, earlier

Input Stage SETUP STAGE Setup Stage If the job requires setup, DCMUP selects an available 7040 tape unit and types a message directing the operator to mount a Execution Processing tape on the selected unit. An effort is Stage made to balance the assignment of setup tapes to provide the most efficient input/output activity. $SETUP cards speci­ fying 7090 channels A or C result in Breakdown Stage assignments to 7040 channel B. $SETUP cards specifying 7090 channels B or D Postprocessing result in assignments to 7040 channel C. Punch I However, if there are no units available on Stage I the desired 7040 channel at the time of I setup, no attempt will be made to wait I until one is available. Instead, any I available unit is assigned. I I If control card specifications indicate I that the tape is to be converted into the I standard DCOS record format, the tape I records are read into the system, convert­ ______J I ed, and stored on the disk (or, at the programmer's option, on another tape). Tapes in standard DCOS record format are Figure 5. Stages of Processing for Non­ not read into the system during the setup Utility Jobs stage.

INPUT STAGE EXECUTION STAGE

A job first enters the input stage, During the execution stage, DCMUP sel­ during which the control cards are analyzed ects jobs from the job queue table, inter­ by DCMUP and the following actions are prets the job description, and loads DC­ performed: IBSYS into the 7090. Control is then transferred to the programming system, 1. The input deck is blocked into the which processes the job.

12 Form C28-6382-3 Page Revised 12/7/65 By TNL N28-0174-0

Program processing on the 7090 is the disk (or tape) into 7040 buffers are essentially the same as it would be on a deblocked by DCMUP and transmitted to the standard 7090 Data Processing System with­ 7090. Output from the 7090 is transmitted out the DC feature except that all to the 7040, blocked into 7040 buffers" and input/output requests are handled by the written onto the disk (or tape). Punch and 7040. When the 7090 requests input, the print files are written onto the disk in blocked records which have been read from

Direct Couple Operating System Concepts 12.1 Form C28-6382-3 Page Revised 6/11/65 By TNL N28-0157-0 preparation for the punch and print stages, in nonstandard format is required, and or onto tape in DCOS format for subsequent printer and punch output are desired. The rrocessing. job deck, which includes control cards specifying the nonstandard tape, is placed BREAKDOWN STAGE in the 1402 Card Reader. The 7040 reads in the deck, and DCMUP blocks the input, During the breakdown stage, 7090 output prepares the job description, and stores may be deblocked and written on tape. Any the records on the disk. While the deck is intermediate tapes are rewound; other tapes being read in, a message is written on the used by the job are rewound and unloaded, 7040 console typewriter informing the oper­ and the respective 7040 tape units are ator that the job has entered the system. returned to availability status. l When the job is selected for setup, PUNCH STAGE OCMUP locates an available tape unit and prints a message instructing the operator to mount the nonstandard tape. When the If the job requires punched output, the tape has been mounted, DCMUP reads the job is schequled for the punch stage and input tape into the 7040 core storage punched on the 1402. .~ job will go buffers, converts the records to the stand­ through this stage even if no deck options ard DCOS record format, and stores the have been selected, so that the job separa­ records on the disk (or, at the user's tor card may be punched.) option, on another tape) • PRINT STAGE When the job is selected for 7090 proc­ essing, the job description is read from If the job requires printed output, it the disk into 7040 core storage. DCMUP is scheduled for the print stage and print­ then loads IBSYS into the 7090, which in ed on the 1403 (720 carriage control is turn calls the IBJOB Processor. The job is simulated) • The print routine can also processed in direct mode. Input files for simulate the IBM 720A Printer on the 1403. the job are read from disk into buffers in I In the case of a printer check, the first 7040 core storage, when each file is first character of the line (carriage control used. Thus, DCMUP can respond immediately character if under program control) is when the 7090 issues a request for input replaced by an asterisk. from one of these files. DCMUP can then deblock and transmit the desired number of The print routines will simulate the words from a core storage buffer at the FORTRAN carriage control characters for transmission rate of the Direct Couple single space, double space, and eject. All facility. other carriage control characters will be treated as single space. Output is handled similarly, since DCMUP establishes buffers in the 7040 to receive Incorporated in the print routines is a all output files. Messages that would record mark scanning routine that allows appear on an on-line 716 Printer in a (within the print stage) for the deblocking non-DC configuration may be printed on the of 720A type output without going through 1014 or the console typewriter. DCMUP also the breakdown stage first. The use of maintains a file of these messages for later printing on a 1403 as part of the $SETUP DISK,PRINT,720 job's output. As the output buffers become filled, the records are stored on the disk. to specify 720A type output is unnecessary. When the job is selected for punching, PURGE STAGE the punch files are read from the disk into 7040 buffers and punched on the 1402. The When all other postprocessing of a job print files are read from the disk into is complete, the job is scheduled for the 7040 core storage buffers and printed on purge stage, during which the data files the 1403 Printer. The operator is notified pertaining to the job, the job description, when punching and/or printing for the job is initiated. and the job identifier are purged from the disk. When all the output of the job has been processed and the job is selected for EXAMPLE OF TYPICAL JOB FLOW purging, DCMUP purges the disk of all remaining data files pertaining to the job, returns disk areas to availability status, As an example of job flow, consider the and discards the job description and the following case. The job is a FORTRAN IV job identifier. The operator is then noti­ compilation and execution. One input tape fied that the job has been completed.

Direct Couple Operating System Concepts 13 FUNCTIONAL 7090 SYSTEM UNIT (IOBASE) The programmer should not deviate from CONFIGURATIONS the functional use of 'system units as defined in the IOBASE used. For example, if IOBASE 0 is used, 7090 unit A3 should System unit functions assigned by OCOS not be used for any function except the for direct-mode ,operation are shown in system output unit. Procedures for assign­ Figure 6. In compatibility mode, the pro­ ing functions to IOBASE 1 and for defining grammer may specify one of three functional additional IOBASE tables are contained in system unit configurations. Each is the publication IBM 7090-7040 Direct Couple defined in an IOBASE table. The use of a Operating System: Systems Programmer's particular IOBASE table for a job is speci­ Guide, Form C28-6383. fied on a $IOBASE control card (described under ·Control Cards"). IOBASE 0 is the same functional system unit configuration as that for direct-mode operation (Figure r------T------, 6). IOBASE 1 is provided for general usage I 7090 Unit I Function I (Figure 7). IOBASE 2 (Figure 8) is the ~------+------1 functional system unit configuration for I A1-AO I I the FORTRAN Monitor System (FMS). I B1-BO I I I C1-C4 I No function assigned I I D1-D4 I I I PRA I I I PUA I I r------T------, Il ______RDA ~I ______JI I 7090 Unit I Function I ~------+------~ A 1 LB 1 (disk) Figure 7. IOBASE 1 A2 INl (1402), IN2 A3 OUl (1403), OU2 A4 PPl (1402), PP2 AS CKl r------T------, A6-AO No function assigned I 7090 Unit I Function I B1 UT1 ~------+------~---~ B2 UT2 A1 System B3 UT3 A2 Input B4 UT4 A3 Print output BS CK2 A4-AO No function assigned B6-BO No function assigned B1-B3 No function assigned C1-C6 No function assigned B4 Punch output 01-06 No fUnction assigned BS-BO No function assigned PRA PRT Cl-C6 No function assigned PUA PCB D1-D6 No function assigned

______ROA ~ ______CRD J PRA PUA

L-______RDA ~ ______Figure 6. Direct-Mode System Unit Func­ tions (IOBASE 0) Figure 8. IOBASE 2

14 CONTROL CARDS

The control cards that the programmer consists of all of the cards beginning with normally uses to run jobs are discussed in a $JOB card and ending with, but not this section. One control card, the $JOB including, the next $JOB card. A job may card, is required and must be present in consist of any logical combination of job every job. The other cards are optional. segments to be performed by the subsystems Most applications will need only five con­ and the DC-IBSYS Monitor. The $JOB card trol cards ($JOB, $EXECUTE, $SETUP, $ATEND, transfers control to the installation and $EOF). accounting routine (if one exists at the installation). Control cards of interest to the systems programmer are discussed in the publication The format of the $JOB card is: IBM 7090-7040 Direct Couple Operating Sys­ ~~~~~stems Programmer's Guide, Form 1. 16 C28-6383. $JOB [priority], [time estimate], 31 60 GENERAL CONTROL CARD FORMAT [line estimate] [job identification] The general format of the control cards The parameters are: discussed here is: priority ---,73-80 This is the priority assigned to the job. The digits 0 through 9 may be $ Control Variable field Ignored specified. A priority of 0 is the card name information lowest priority that can be assigned. left­ (parameter 1, When this parameter is omitted, a justified parameter 2, .•• , priority of 0 is assumed. parameter n) time estimate All parameters must appear in the order This is the estimated total 7090 proc­ shown and must be separated by commas. essing time, in minutes. A maximum Embedded blanks are not allowed within the specification of 32,767 minutes is variable field. A blank must separate the allowed. last parameter from the comments. Embedded parameters that are omitted must be indi­ line estimate cated with a comma. This is the estimated line count of the printed (1403) output from the The following conventions are used in job. A maximum specification of describing variable field information: 262,143 lines is allowed. 1. Lower-case letters indicate that a job identification substitution must be made. Columns 31 through 60 are normally 2. Upper-case letters must be punched used to identify a job and may contain exactly as shown. any combination of characters and 3. Brackets [] contain a parameter that blanks,. may be omitted or included at the user's choice. If either the time estimate or the 4. Braces {} indicate that a choice of line-count estimate is exceeded, the opera­ the contents is to be made. tor is notified and DCMUP initiates termi­ 5. A number over th,e first character of a nation procedures. If either or both esti­ parameter indicates the first card mates are omitted, the above values are column of the field. assigned~

$EXECUTE CARD $JOB CARD

Th~ $EXECUTE card defines the beginning The $JOB card is required for each job. of each segment of a job. A $EXECUTE card It defines the beginning of a job. A job is required for each non-utility job.

Control Cards 15 Form C28-6382-3 Page Revised 7/25/66 By TNL N28-0203-0 The format of the $EXECUTE card is: ber of $ROW-$ENDROW card groups may be included within the range of one $EXECUTE CARDS control card.

$EXECUTE system name! CARDS All $ROW-$ENDROW groups used in a given 1TAPE job should be grouped together and placed as the last cards in the job deck. The parameters are: system name Note: All control cards except the $JOB The name of a subsystem (six or fewer card are ignored if they appear between characters) that resides on the disk. $ROW and $ENDROW control cards. In the distributed DCOS, IBJOB is the only subsystem that may be so speci­ fied. Procedures for adding other The format of the $ROW card is: systems to the disk are described in the publication IBM 7090-7040 Direct 1 couple Operating System: Systems Programmer's Guide, Form C28-6383. $ROW Those systems not residing on the disk should be specified with the paramet­ ers CARDS or TAPE, described below. certain 7090 programs may rely on cards that were read from the 711 Card Reader (on CARDS a 7090 Data Processing System without the CARDS should be specified when a row Direct couple feature). In DCOS, these binary program (self-loading card cards may be included with the job input, deck) is to be processed by the sys­ which is read from the 1402 Card Reader tem. The deck must be preceded by a during the preprocessing phase. However, $ROW control card and followed by a the cards must be included within a $ENDROW control card (described $ROW-$ENDROW card group (Figure 9). A $ROW below). When a $EXECUTE card with card in the DCOS input stream causes a file CARDS specified is recognized by the mark to be written on the system input 7090, pressing of the 7090 LOAD CARD unit. button is simulated. Therefore, the first card of the deck musi be a self-loading type card. TAPE TAPE should be specified when the program or system to be loaded resides $ENDROW CARD on magnetic tape. The program or system must have been previously pre­ pared in the standard DCOS record The $ENDROW control card is used in format using the standalone Tape conjunction with the $ROW card. It speci­ Blocking Routine. When a $EXECUTE fies the end of a row binary card file and card with TAPE specified is recog­ causes an end-of-file indication to be sent nized, pressing of the 7090 LOAD TAPE from the card reader file. button is simulated, and the 7040 unit functioning as 7090 tape unit Ai is selected. The format of the $ENDROW card is: 1. $ROW CARD $ENDROW

The $ROW card is normally used in con­ junction with a $EXECUTE card with CARDS specified. The $ROW card indicates that the cards following, up to but not includ­ ing a $ENDROW control card are row binary cards to be converted to 24-word image format (as though read through a 711 Card Reader) and placed into a separate input file for the 7090. An end-of-file condi­ tion is sent from the card reader file when the $ENDkOW card is encountered. Any num-

16 Form C28-6382-3 Page Revised 7/25/66 By TNL N28-020~-O r------, 11 8 16-72 I ~------~ $JOB I $EXECUTE IBJOB I I Source Program I I $DATA I I Input Data I I $ROW \ I IBM 711 Card Reader File I I $ENDROW I l\$EOF ______J\

Figure 9. Sample $ROW-$ENDROW Application

Control Cards 16.1 Form C28-6382-3 Page Revised 6/11/65 By TNL N28-0157-0

$IOBASE CARD Intersystem J (0) -J (9) , K (0) -K (9) , ••• , reserve Q (0) -Q (9) units The $IOBASE card is used to specify the IOBASE to be used for a job. Only one Symbolic S CO) -S (9), T (0) -T (9) , ••• , IOBASE card is. allowed for each job., If a channel Z (0) -z (9) job does not contain a $IOBASE card, the designations standard DC-IBSYS IOBASE (IOBASE 0) is used. System unit CRD, PRT, PCH, LB2, LB3, functions LB4, CK1, CK2, UT1, UT2, The format of the $IOBASE card is: UT3, UT4, UT5, UT6, UT7, I UT8, UT9, IN1, IN2, OU1, 1 16 OU2, PP1, PP2 $IOBASE n Note that LB1 is not valid. where n is number (0; 1, or 2) of the FORTRAN 1-8 IOBASE required for the job. logical units

$SETUP CARD True channel designations (abov~ are treated as symbolic assignment requests, because there are no data The $SETUP card must be used when a channels attached to the 7090. program requires that tape reels be mounted on 7040 tape units. Allowable unit designations for com­ patibility mode are: The primary functions of the $SETUP card are: True machine A1-AO, B1-BO, C1-C6, units~ D1-06, RDA, PRA, 'PUA 1. Inform DCMUP that a specific reel of tape is to be processed by the 7090 Intersystem J(1) -J(O) , K(1)-K(0) , ••• , program, so tha,t messages to the oper­ reserve units Q (l) -Q (0) ator can be constructed and the tape (IBSYS sub­ reel mounted in preparation for the systems only) execution stage. 2. Provide DCMUP with information con­ System unit CRP, PRT, PCH, LB2, LB3, cerning the 7090 t,ape .units ref- functions LB4, CR1, CR2,· UT1, UT2, erenced, s6 that the 7090 units can be I (IBSYS sub- UT3, UT4, UTS, UT6, UT7, related to the 7040 units on which the systems UT8, UT9, IN1, IN2, OU1, reels are mounted. only, $ASSIGN OU2, PP1, PP2 3. Allow 'the programmer to specify card required) desired preprocessing and postprocess- ing utilities on the $SETUP card. Note that LBl is not valid. Any number of $SETUP cards are allowed option 1,option 2 for a job. All $SETUP cards fora job must Option 1 and option 2: (a) specify be grouped together. the type of input/output device (tape, disk, printer, punch) that will be The format of the $SETUP card is: assigned to functions normally per­ formed by "unit", (~provide OCMUP .1 with the blocking and/or deblocking requirements of the job, and (c) pro­ $SETUP unit option 1, [option ~ , vide information to OCMUP to be used [{LABITS}] , [REELS], [file count) in messages that instruct the operator [{720 }] to mount desired reels at the appropriate time. The ~arameters are: The two options are detailed in the section ",SETUP Card Option Specifi­ unit cations." Thi~ 1s the designation assigned to the unit by the programmer. Allowable LABITS unit designations for direct mode The LABITS option identifies a file as (IBJOB subsystems) are: having mixed-mode records with stand- tTrue machine unit designations are related True channel A (0) -A (9), B (0) -B ('9) , ••• , to actual machine addresses of the units, designations o (0) -0 (9) e.g., 1201 for unit A1.

Control Cards 17 Form C28-6382-3 . ,-- ~ page Revised 6/11/65 By TNL N28-0157-0

ard look-ahead bits. It is applicable $SETUP CARD OPTION SPECIFICATIONS only when the file is to be blocked to the standard DCOS record format with either of the following specifi­ The options are: cations: option 2 option 1 {identl} 2 TAPE identTAPE option option 2 DISK DISK ! PRINT PUNCH ident1 ident::z NORING identl'l TAPE INPUT ident DISK l 1 The term ident is the installation reel 720 identification, i.e., the identification When the 720 option is used, the IBM usually written on a label affixed to the 720A Printer is simulated on the 1403. tape reel. A maximum of six characters is This simulation is compatible with allowed for ident. Any characters except 720A simulation on the 1401 (the last blanks or commas may be used. line of a record may end with a record mark). This option allows programs in which output for the 720A Printer is MOUNTING OF INPUT FILES: When the $SETUP created to be run on DCOS, because card is used to specify mounting of input each record that is written is exam­ files, option 1 must be the reel identifi­ ined for record marks to separate cation (identl ). Option 2 may be any of print lines. IBM 720 carriage control the permissible options discussed below. is always simulated, even if the 720 option is not specified. option 1 option 2 Explanation

identl (omitte~ File labeled "ident1" REELS contains records in REELS should be specified only when a standard DCOS record multi reel file is to be blocked into format. standard'DCOS record format with the following specification: NORING Same as above except that the operator is instructed to remove the option option 2 file-protect ring from "ident1" before mount­ ing. ident. DISK Reel "ident1" is mounted on an available unit, A separate $SETUP card is required for blocked to the standard each reel, and each $SETUP card but DCOS record format, and the last should have REELS specified. written on "ident2.n The ident field does not have to be The reel nident2 " is the same for all reels. assigned to "unit. n TAPE Reel "ident1" is mounted on an available unit, blocked to the standard file count DCOS record format, and When a multi-file input tape is to be written on a work tape blocked into standard DCOS record for­ ,assigned to ~unit." mat, a file count must be specified to n indicate the number of files to be DISK Reel "ident1 is mounted blocked from that tape. File count on an available unit, indicates the number of physical files blocked to the standard on the tape. If file count is omit­ DCOS record format, and ted, only the first file will be written on the disk. blocked. Thereafter, whenever nunit" is referred to in If tape-to-tape deblocking is request­ a program, the desired ed for more than one file, a file data is read from the count is required. disk.

18 Form C28-6382-3 Page Revised 7/25/66 By TNL N28-0203-0 ASSIGNING A TAPE UNIT TO AN INTERMEDIATE card with OUl DISK, PRINT specified is ~ILE: Option 1 must be TAPE to write an unnecessary. The use of intermediate file on tape. $SETUP OUl DISK,PRINT,720 Q~ion 1 option 2 Explanation is optional and has no effect on DCMUP. TAPE (omitted) "unit" i$ assigned as an For best performance it should not be used. intermediate file. PUNCHING AN OUTPUT FILE: An output file is B§QUESTING A TAPE OUTPUT FILE: An output punched on the 1402 Card Read Punch when file is written on tape (standard DCOS the following options are specified. record format) when the following options are specified. option 1 option 2 Explanation Explanation DISK PUNCH Output intended for "unit" is written on the ident1 (omitted) Output is written on disk during the process­ "ident1 " during the ing phase and punched on processing phase. the 1402 during LJe postprocessing phase. R~UESTING A DEBLOCKED TAPE OUTPUT FILE: An output file is written on tape in deblocked The records to be punched may be column­ format when the following options are spec­ binary card images or BCD card images. ified. Row-binary card images can be punched by a program reference to the 7090 punch (PCH). Explanation Normally, all data directed by IBJOB to DISK output intended for the DC-IBSYS system peripheral punch unit "unit" is written on the or to an on-line 7090 punch unit is punched disk during the process­ on the 1402. Therefore, a $SETUP card ing phase. During the requesting these functions is unnecessary. postprocessing phase, the records are DEFINING AN INPUT UNIT FOR NON-DC-IBSYS deblocked and written on SYSTEMS: The following specifications

"ident 2 ." (See note assign "unit" as the system input unit for below. ) systems other than DC-IBSYS.

TAPE Output is written on a option 1 option 2 Explanation tape mounted on "unit" during the processing DISK INPUT "unit" is treated as the phase. During the post­ 7090 system input unit. processing phase, the Ca~ds supplied through records are deblocked the 1402 (normal input) and written on "ident2 ." that follow $EXECUTE cards with system name ~ot~: When "unit" represents the system or TAPE specified are uni t functions SYSPRT, SYSPCH, SYSOU1., or passed to the system SYSPP1, the symbolic designations PRT, PCH, when "unit" is read. OU1, or PPl must be used instead of the physical unit designations PRA, PUA, Bl, etc.

PRINTING AN OUTPUT FILE: An output file is $ASSIGN CARD written on the system printer (1403) when the following options are specified. The $ASSIGN card causes the specified Qption 1 QEtion 2 Ex2!anation system unit function to be assigned to a unit. The format of the $ASSIGN card is: DISK PRINT output intended for "unit" is written on the 1 16 disk during the process­ ing phase and printed on $ASSIGN SYSxxx the 1403 during the postprocessing phase. Selection of the unit is governed by wheth­ Normally, all data directed to the DC­ er a $SETUP card referring to the same IBSYS system output unit by IBJOB will be system function was included among the 7040 printed on the 1403. Therefore, a $SETUP control cards for that job.

Control Cards 19 Form C28-6382-3 Page Revised 7/25/66 By TNL N28-0203-0 If a $SETUP card was not used and if the If a $SETUP card was used, the unit specified system unit function has already control block that was assigned a unit been assigned, the $ASSIGN card has no symbol corresponding to the symbol on the effect. Otherwise, a unit is selected from one of the unit availability chains in the DC-IBSYS nucleus and is assigned to the specified system unit function.

, 9 , 1 $ASSIGN card is selected and assigned to ameter is omitted, a dump will be the specified system unit function. taken only at abnormal termination.

POST When POST is specified, the IBJOB $ATEND CARD Debugging Postprocessor will be called if execution is terminated prior to completion. This will permit printing The $ATEND card allows the programmer to of any IBJOB debugging output that may specify action to be taken when a job is have been produced before the job was terminated. On all successful runs, the terminated. programmer will be given a dump of the 7090 panel and the location at which execution was terminated, regardless of the options $DATA, $EOF, iEOF, AND i CARDS he specifies. In addition, if the operator terminated the job because it appeared to be in a loop, a message indicating this The $DATA, $EOF, iEOF, and i cards fact will be printed. The status of the perform the same function and may be used 7090 panel, and the location at which the interchangeably. Each, when it appears in program was terminated, is the only infor­ a deck being read from the card reader, mation provided for the programmer if the causes an end-of-file condition to be simu··· $ATEND card is not included in the job lated in thE input buffer. deck. These cards are not recognized when they Since a segment of a multiple segment appear within the bounds of a $ROW-$ENDROW job can be terminated by one of the actions card group. described in the following text without termination of the entire job, more than The format of the $DATA, $EOF, iEOF, and one dump can result from the presence of a i cards is: $ATEND card. A job may be terminated due to: $DATA 1. Operator action $EOF 2. An STR in the 7090 iEOF 3. Invalid input/output commands i 4. Any conditions encountered in a sub­ system that cause termination of a job 5. Normal termination after execution has been successfully completed $ID CARD The format of the $ATEND card is: The $ID card is used for intrajob 16 accounting purposes at installations that employ a 7090 installation accounting rou­ $ATE~D [limi t 1], [limit 2] , tine. It causes a transfer of control to [format] , [DUMP] , [POST] the installation accounting routine. Upon exit from the accounting routine, the next The parameters are: card in the input file is read. The $ID card is written on the system printer. limit 1,limit 2 These are the limits of the area to be The format of the $ID card is: dumped in octal (00000-77777). If limits are not specified, a dump will not be taken. format This is the format of the dump. Valid $ID any text entries are the digits 1-6, which will result in the dump formats described The $ID card may appear after a $EXECUTE in "The System Core storage Dump Pro­ card with IBJOB specified. However, it gram. R If this parameter is omitted, should appear before a $EXECUTE card that a digit 3 is assumed. refers to a non-IBSYS subsystem, because it may not be recognized by that subsystem. DUMP When DUMP is specified, the dump will Columns 7 through 72 may contain any be taken even if the job has been combination of alphameric characters and successfully completed. If this par- blanks.

20 Form C28-6382-3 Page Revised 6/11/65 By TNL N28-0151-0

$* CARD UTILITY ROUTINES SPECIFIED ON $UTILITY CARDS The $* card is listed on the 1014 Remote Inquiry Unit and/or the system output unit. When a job involves only transmission of No further action occurs. records to and from tape, in standard DCOS format, the $UTILITY control card is used. (No 7090 processing will be performed.) The format of the $* card is: The desired utility routine, the format and spacing of printed output, the type of paper or cards to be used for the output, and the number of files to be processed, are specified on this card. It is placed $* any text after the $JOB card and before any associated data cards. Columns 7 through 72 may contain any combination of alphameric characters and The format of the $UTILITY card is: blanks. Any number of $* cards may be used. If $* cards appear before a $EXECUTE 16 card they are written on the 1014 and the system output unit. If $* cards appear $UTILITY utility name,tape ident, after a $EXECUTE card, they are only written [option 1) , [option 2] , [option 3) on the system output unit. The parameters are: utility name The utility name parameter may be any one of the following: $PAUSE CARD Parameter Explanation The $PAUSE card causes the 7090 to stop TPPR Requests the Tape-to-Printer and causes the following message to be Routine, which causes tape written on-line (1014 or console records in standard DCOS format typewrite~ and off-line (1403): to be printed on the 1403 prin­ ter. 9*hhmmss columns 7-72 of $PAUSE card 9*hhmmss PAUSE TPPU Requests the Tape-to-Punch Rou­ tine, which causes tape records Thus, the programmer is provided with a in standard DCOS format to be means of temporarily interrupting process­ punched on cards. ing to enable the operator to perform a task, such as setting 7090 entry keys. CDTP Requests the Card-to-Tape Rou­ Columns 7 through 72 may contain a message tine, which reads records from consisting of any combination of alphameric cards and writes them on tape characters and blanks. The operator re­ in standard DCOS format. starts the 7090 through the 7040 console. The format of the $PAUSE card is: The Card-to-Tape Routine, the Tape-to­ Printer Routine, and the Tape-to-Punch Routine may be requested within the same job. However, care must be taken $PAUSE any text to place the $UTILITY cards correctly in the job deck. The card specifying If used, the $PAUSE card may appear the Card-to-Tape Routine must before or after the $EXECUTE card for a immediately precede the data cards. job. If the $PAUSE card appears before the $EXECUTE card, the contents of columns 7-72 Reading another $UTILITY card or a are written on the 1014 and the system $JOB card will terminate a Card-to­ output unit. If the $PAUSE card appears Tape operation and will cause a file after the $EXECUTE card it will not cause a mark to be written. A $DATA, $EOF, temporary interruption of processing, and iEOF, or ~ card will cause a file mark the contents of columns 7-72 will only be t:o be written on the tape being written on the system output unit (unless prepared. (See the descriptions of sense switch 2 is on, in which cas'e it will the $DATA, $EOF, iEOF, and icards in I appear online on the 1014.) thi s manual.)

Control Cards 21 Form C28-6382-3 page Revised 6/11/65 By TNL N28-0157-0 tape ident The tape ident parameter is the installation reel identification; that is, the identification written on a label affixed to the tape reel. It may be a maximum of six alphameric

Contra 1 Cards 21. 1 Form C28-6382-3 Page Revised 6/11/65 By TNL N28-0151-0 characters. Any characters except blanks EXAMPLES OF DECK SETUPS or commas may be used. The following examples illustrate the option 1, option 2, option 3 use of control cards by showing some of the AS shown below, these options depend basic applications. upon the utility specified. Figure 10 illustrates a deck setup for a FORTRAN compilation and an IBMAP assembly. utility The job is given a priority of zero, is name o}2tion oEtion 2 o}2tion 3 expected to run no more than three minutes, and should produce no more than 2,000 lines TPPR form form file of printing. control ident count r------, TPPU form file 11 8 16 I ident count ~------~ I$JOB ,3,2000 CDTP I$EXECUTE IBJOB I$IBJOB I$IBFTC PROG1 1 The form control parameter specifies the I • FORTRAN Source Program desired format and spacing of printed out­ I put. It may be any of the following. I$IBMAP PROG2 I I . MAP Source Program PROGRAM I

SINGLE lI$EOF ______~ ______DOUBLE 720 Figure 10. Sample Deck Setup--FORTRAN Com­ If PROGRAM is specified, desired spacing pilation and IBMAP Assembly must be provided in the program. If 720 is specified, the 720A printer will be simu­ Figure 11 illustrates a deck setup for a lated on a 1403 printer. If form control one-segment FORTRAN compilation and execu­ is not specified, PROGRAM will be assumed. tion with two IBLDR subroutines. The out­ put, written on FORTRAN logical unit 8, The form ident parameter defines the will be in standard DCOS format and type of paper or cards to be used for aSSigned the installation reel identifi­ output. Any available type, for example, cation R365. 2 PART or VELLUM, may be specified. A maximum of six characters is allowed. Any Figure 12 illustrates a deck setup for a characters except blanks or commas may be two-segment job. The job will use an used. intersystem reserve unit, Whose deSigna­ tion, in this case, is J(1). Data created When DCMUP selects the job for process­ by the first segment will be written on ing, the $UTILITY card is analyzed. If the J(1). It will then be read by the second form ident is not included, cards or paper segment. Unit J(1) will be simulated on currently ready will be used. If the form the disk, eliminating all setup that the ident has been specified, the following operator would normally perform with the message will be typed: intersystem reserve tape. Unit SYSUT3 will be listed on the 1403 printer; unit SYSUT4 4 hhmmss JOB xxx READY xxxxxx will be deblocked onto a reel given the linstallation reel identification R67748. FORM eN [PRINTER n} lPUNCH Figure 13 shows how an object program that was prepared for execution on a 7090 The operator should take the printer or Data Processing System without the Direct punch out of ready status, provide the Couple feature may be adapted for DCOS. proper paper or cards, and then return the The program, in the form of row-binary unit to ready status. When these proce­ cards, was previously loaded into the 7090 dures have been performed, processing of through the 711 Card Reader when the LOAD the job will resume. CARD button was pressed. Input data con­ sisted of cards following the program and The file count is the number of files to tape reel R600 on 7090 unit A8. Output was be processed. If this option is omitted, a written on 7090 unit B6. Since the program file count of 1is assumed. did not use 7090 units A1, A2, A3, or A4, a

22 Form C28-6382-3 Page Revised 12/7/65 By TNL N28-0174-0 r------, $IOBASE control card is unnecessary; system 11 8 16 I unit function assignments made by DCOS in ~------~ the absence of a $IOBASE card have not been I$JOB 3,6,1700 I violated. I$SETUP 8 R365 I I $ATEND 03000,77777,1 'I $ EXECUTE IBJOB Figure 14 illustrates a deck setup for a $IBJOB MAP,GO program to be processed by a system on tape $ IBFTC DECK 1 reel R200. The input unit for the system is A3, and both system listing and program · FORTRAN Source Program listing output (B2 and B6) are under con­ trol of the system. IOBASE 1 is required., $IBLDR SUBRl since 7090 unit A3 does not correspond in function with either IOBASE 0 or IOBASE 2. · IBLDR Binary Object Program Also, 7090 unit Ai is referred to by a $SETUP card, and, although its function $IBLDR SUBR2 (system library) corresponds with both IOB­ ASE 0 and IOBASE 2, the system has not been · IBLDR Binary Object Program edited onto the disk. Reel R200 has been blocked to the standard DCOS format by a $DATA 7040/7044 Operating System (16/32K) IBJOB Processor Tape Blocking utility routine. · Input Data

l $EOF______r------, 11 8 16 I Figure 11. Sample Deck Setup--One-Segment ~------~ FORTRAN Compilation and Execu­ I$JOB I tion I$SETUP AS R600,DISK I I$SETUP B6 DISK, PRINT I I$EXECUTE CARDS I r------, I$ROW I 11 8 16 I I I ~------~ I • Row-binary Card Loader I $JOB ,8,4000 I I $ID PROJ. CHARGE NO. 87263A I I $ATEND 00000,77777,1 I . Row-binary Card Object Program I $* OPERATOR MESSAGE-SET 7090 SSWl ON I I $PAUSE I I $SETUP UT3 DISK, PRINT I . Input Data I $SETUP UT4 DISK,R67748 I I $ASSIGN SYSUT3 I$ENDROW I $ASSIGN SYSUT4 I$EOFl ______- ______JI $EXECUTE IBJOB $IBJOB MAP ,GO Figure 13. Sample Deck Setup--Object Pro­ $IBMAP SEGMl gram on Cards I . MAP Source Program r------, I 11 8 16 I I $DATA ~------~ I $JOB I I . Data for S egmen t 1 $IOBASE 1 I I $SETUP A1 R200 I I$EOF $SETUP A3 DISK, INPUT I J$EXECUTE IBJOB $SETUP B2 DISK,PRINT,720 I I$IBJOB MAP, GO $SETUP B6 DISK,PRINT,720 I I $ IBLDR SEGM2 $EXECUTE TAPE I I I I • IBLDR Binary Program • Source Program I I I I$DATA $DATA I I I I • Data for Segment 2 • Input Data I I I lI ______$EOF J I$EOFl ______JI • Figure 12. Sample Deck Setup--Two-Segment Figure 14. Sample Deck Setup--System on Job Tape

Control Cards 23 SYSTEM CORE STORAGE DUMP PROGRAM

The System Core Storage Dump Program is word •. Dumps are always taken from the low designed to (1) provide a core storage dump to the high location specified.. For exam­ when difficulty is encountered and (2) ple, the following instruction and control facilitate the testing of programs. To word would result in an octal snap dump on perform these functions, post-mortem and the system output unit of storage locations I snap dump options are provided. beginning at STDMP and ending at ENDMP:

The snap dump option (available only TSX SYSDMP,4 while operating under DC-IBSYS Monitor PON STDMP"ENDMP control) can dump one or more sequential locations of core storage during execution of an object program. After the snap dump is complete, core storage is restored and control is returned to that point in the object program from which the dump was called. DUMP PARAMETERS

The post-mortem dump option (available The dump parameters for a snap dump are to all programs) dumps core storage in the entered by a parameter control word. Any same manner as the snap dump option, but one of six dump formats (Figure 15) can be the limits of the dump are those specified specified. In the distributed version of in the $ATEND control card. the System Core Storage Dump Program, out­ put is Singled spaced. An asterisk (*) is When a dump is requested, a portion of inserted by the program when the following core storage is saved. The dump program is octal integers are printed in BCD: 15. 16, then read into 7090 core storage, and 11, 35, 36, 37, 55, 56, 51, 15, and 77. control is transferred to it. Logical unit Record marks (72*> are replaced with 13 is always used as the intermediate dump blanks. The various parts of the parameter unit. The Core Storage Dump Program then control word are interpreted as follows: writes the edited output onto the system output unit. Prefix PON FORMAT 1--0ctal, eight words per line.

PTW FORMAT 2--BCD, sixteen words per line. TRANSFER TO DUMP INSTRUCTIONS PZE, PTH FORMAT 3--SQUEZY, mnemonics with address and tag field. If the dump program cannot To obtain a dump of core storage during interpret the operation code, execution of an object program, insert one an octal representation is of the following instructions in the body given. of the source program at the point at which MZE FORMAT 4--0ctal and SQUEZY. the dump is required. If the dump program cannot interpret the operation code, The instruction only the octal representation is given. otherwise, both TRA SYSDMP or the octal word and the SQUEZY TSX SYSDMP,4,1, word are listed. MON FORMAT 5--0ctal and mnemonics initiates the post-mortem processes speci­ MTW FORMAT 6--octal, mnemonics, fied on the $ATEND card. and BCD. BCD interpretation of the word is listed to the The instruction right of the mnemonic.

TSX SYSDMP,4 Address Starting or ending location of the dump. followed by a parameter control word results in a snap dump, in accordance with Decre­ Starting or ending location of the information from the parameter control ment the dump.

24 Notes: The limits of the requested dump may MACHINE STATUS AT THE END OF A DUMP be stated in any order, i.e., the starting parameter in the address field and the ending parameter in the decrement field, or vice versa. At the completion of a Snap dump, all of core storage and all registers are In the distributed version of the Core restored. Although it is necessary to Storage Dump Program, the dump is always delay until all channel traps are inactive made onto the system output unit (SYSOU1) when taking Snap dumps under 7090/7094 only. IBSYS, it is unnecessary to do this under DC-IBSYS. A parameter control word of all zeros will provide a panel dUmp, and the contents of 7090 location zero.

System Core Storage Dump Program 25 r------,

Format 1 -- Octal AC MQ SENSE IND KEYS XR1 XR2 XU 000000000000 000000000000 001321000000 000000000000 00001 00006 14320 -17777 -17172 -03460 INDICATORS SENSE LIGHTS 90 LOC SENSE SWITCHES fr8n P-81T TRAP OCT lOT OFL 1 2 3 4 02160 1 2 3 4 5 6 OFF OFF OFF OFF OFF ON OFF OFF OFF OFF ON OFF OfF ON OFF ON 00000 100000000000 100000000000 042000000377 002000005557 002100003626 000000000000 000000000000 002100003630 00010 002100003632 000000000000 000000000000 002100000751 000000000000 002100000751 000000000000 002100000751 00020 000000000000 002100000751 000000000000 002100000751 000000000025 000060000021t 000000000027 000060000026 00030 000000000031 000060000030 000000000033 000060000032 001321000000 000060000034 001321000000 0013:11000000

Format 2 -- BCD AC MQ SENSE INO KEYS XR1 XR2 XR4 -300000005176 000000000000 101201300475 000000000000 00001 17323 71371 -77777 -00455 -06407 INDICATORS SENSE LIGHTS 90 LDC SENSE SWITCHES Q-81T P-81T TRAP OCT lOT OFL 1 2 3 4 02160 1 2 3 4 5 6 OFF OFF OFF OFF OFF ON OFF OFF OFF OFF ON OFF OFF ON OFF ON 00000 DK90UT 800000 4+003* 0+00" OAOO*F 000000 000000 OAOO*H OAOO" 000000 000000 OA007R 000000 OA007R 000000 OA007R 00020 000000 OA007R 000000 OA007R OOOOOE 00 000 OOOOOG 00 OOf 000001 00 OOH 00000. 00 00+ 801H4- 00 00) 801H4- 801H4- 00040 000000 000000 000000 80008U 000000 80108U 000000 80208U 000000 80308U 000000 80408U 000000 80508U 000000 80608U

Format 3 -- SQUEZY AC MQ SENSE INO KEYS XR1 XR2 XR4 -300000005176 000000000000 101201300475 000000000700 00001 77323 71371 -77777 -00455 -06407 INDICATORS SENSE LIGHTS 90 LOC SENSE SWITCHES Q-BIT P-BlT TRAP OCT lOT OfL 1 2 3 4 02160 1 2 3 4 5 6 OFF OFF OFF Off OFf ON Off OfF Off OFF ON OfF OFf ON OFF ON 00000 244211006463 100000000000 HPR 377 TRA 5557 HR 3626 HTR HTR TTR 3630 00010 TTR 3632 HTR HTR TTR 751 HTR TTR 751 HTR TTR 751 00020 HTR TTR 751 HT~ TTR 751 HTR 25 HTR * 21t HTR 27 HTR - 26

Format 4 -- Octal and SQUEZY

At MQ SENSE IND KEYS XRl XR2 XR4 -300000005176 000000000000 101201300475 000000000000 00001 77323 71371 -17777 -00455 -06407 INDICATORS SENSE LIGHTS 90 LUC SENSE SWITCHES Q-BIT P-81T TRAP OCT lOT on 1 2 3 It 02160 1 2 3 4 5 OFF OFF OFF OFF OFF ON OFF Off OFf OFf ON OFF OFF ON OFF ON 00000 244211006463 100000000000 042000000377 002000005557 002100003626 000000000000 000000000000 002100003630 HPR 377 TRA 5557 TTR 3626 HTR HTR TTR 3630 00010 002100003632 000000000000 000000000000 002100000751 000000000000 002100000751 000000000000 002100000751 TTR 3632 HTR HTR TTR 751 HTR TTR 751 HTR TTR 751 000110 000000000000 002100000751 000000000000 002100000751 000000000025 000060000024 000000000027 000060000026 HTR TTR 751 HTR TTR 751 HTR 25 HTR - 24 HTR 27 HTR * 26

Format 5 -- Octal and Mnemonics At MQ SENSE IND KEYS XRl XR2 XR4 -300000005176 000000000000 101201300475 000000000000 00001 77323 71371 -77777 -00455 -06407 INDICATORS SENSE LIGHTS 90 LOC SENSE SWITCHES Q-81T P-81T TRAP OCT lOT OfL 1 2 3 It 02160 2 3 4 5 OIiF OFF OFF Off Off ON OFF OfF OFF OFF ON OFF Off ON Off ON 00000 21t1t211006463 100000000000 01t2000000371 002000005557 002100003626 000000000000 000000000000 002100003630 TlX TXI HPR TRA TTR HTR HTR TTR 00010 002100003632 000000000000 000000000000 002100000751 000000000000 002100000751 000000000000 002100000751 TTR HTR HTR TTR HTR TTR HTR TTR 00020 000000000000 002100000751 000000000000 002100000751 000000000025 000060000024 000000000027 000060000026 HTR TTR HTR TTR HTR HTR * HTR HTR * 00030 000000000031 000060000030 000000000033 000060000032 101201300475 000060000034 101201300475 101201300475 HTR HTR * HTR HTR * T XI HTR * TXI TXI

Format 6 -- Octal, Mnemonics, and BCD AC MQ SENSE INO KEYS XRl XR2 XR4 -300000005178 000000000000 101201300475 000000000000 00001 17323 71371 -17717 -00455 -06407 INDICATORS SENSE LIGHTS 90 LOC SENSE SW ITCHES Q-8IT P-81T TRAP OCT lOT OfL 1 2 3 4 02160 2 3 4 5 6 OFF OFF OFF OFF OFF ON OFF OFF OFF OFF ON OFF OFF ON Off ON 00000 244211006463 100000000000 042000000377 002000005557 002100003626 000000000000 000000000000 002100003630 TJ X DK90UT TXI 800000 HPR 4+003- TRA 0+00" TTR OAOO-F HTR 000000 HTR 000000 TTR OAOO-H 00010 002100003632 000000000000 000000000000 002100000751 000000000000 002100000751 000000000000 002100000751 TTR OAOO" HTR 000000 HTR 000000 TTR OA007R HTR 000000 TTR OA007R HTR 000000 TTR OA007R oooao 000000000000 002100000751 000000000000 002100000751 000000000025 000060000024 000000000027 000060000026 HTR 000000 TTR OA007R HTR 000000 TTR OAO'01R HTR OOOOOE HTR - 00 000 HTR OOOOOG HTR * 00 OOF l ______J

Figure 15. Core Storage Dump Formats

26 DIRECT COUPLE INPUT/OUTPUT EXECUTOR

The Direct Couple Input/Output Executor trapping. The utility routines include a (DC-IOEX) is used by DC-IBSYS sUbsystems message writer and several conversion rou­ for supervision of input/output activity. tines. The programmer need not be familiar with DC-IOEX and the manner in which it func­ tions if he uses the FORTRAN, COBOL, or IBMAP (with Library IOCS) languages. DC-IOEX COMMUNICATION REGION TABLE Although each of these languages relies on DC- IOEX, the programmer need only be fam­ iliar with the languages, not with the The DC-IOEX communication region table detailed coding they generate to handle (shown in Figure 16) is a series of loca­ input/output activity. tions starting at 702 , wost of which. when addressed, cause a transfer of control to a The programmer may, however, communicate specific DC-IOEX routine. In the discus­ directly with DC-IOEX if he writes his sions that follOW, references are made to programs in the MAP language. In this way symbolic addresses of entries in the table. he may reduce the number of core storage The reader should keep in mind that all locations used and may also decrease execu­ communication with DC-IOEX is made through tion time. the DC-IOEX communication region table.

DC-IOEX consists of a direct couple Two symbolic addresses are shown in channel trap supervisor and a number of Figure 16 for each entry. The user of the utility routines. The primary functions of FORTRAN Assembly Program (IBSFAP) should DC-IOEX are (1) to construct a description refer to the entries by using the FAP ot the desired input/output request in a symbolic addresses. The user of the Macro location within 7090 core storage and (2) Assembly Program (IBMAP), in relocatable to schedule the processing of requests for mode, should refer to the entries by using input.loutput operations. Both the trap the MAP symbolic addresses. In the discus­ supervisor and the utility routines may be sions that follow, MAP symbolic addresses used by the programmer. Basically, use of of DC-IOEX communication table entries are the trap supervisor minimizes input/output used. Corresponding FAP addresses may be coding and ensures proper coordination of obtained from Figure 16.

Direct Couple Input/Output Executor 27 Form C28-6382-3 Page Revised 12/7/65 By TNL N28-0174-0 r------T------T------T------T------, I I MAP I FAP I I I I Octal I Symbolicl Symbolicl I I IAddresslAddress IAddress I IOEX Entry I Function I ~------+------+------+------+------~ I I I 702 • ACTV (ACTIV ITTR TEST Activate Routine and Test I I I 703 • ACTV+ 1 (ACTVX ITTR ACTIV Activate Routine Without Test I / 704 .NDSEL (NDATA ITTR TEST Non-Data Select and Test I I 705 .NDSEL+l (NDSLX ITTR NDATA Non-Data Select Without Test I 706 .MWR (PROUT /TTR PROUT Message Writer I 707 • PUNCH (PUNCH ITTR PUNCH Alphameric Punch I 710 .ENBSW (ENB8W IPZE ** Enable Switch I 711 • PAWS (PAWSX /TTR PAWS Error Pause I 712 • PAUSE (PAUSE ITTR PAUSE Operator Action Pause I 713 • STOP (STOPX ITTR STOP Termination Procedures I 714 .SYMUN {'SYMUN ITTR SYUNCV Symbolic Unit Conversion I 715 .DECVD (DECVD ITTR BCVDEC-l Binary to Decimal - I AC Decrement I 716 .DECVA (DECVA ITTR BCVDEC Binary to Decimal - I AC Address I 717 .CKWAT (CKWAT ITTR CKWAIT Checkpoint Wait (not used I in DCOS) I 720 . BCD5R (BCD5R ITTR BCD5-1 Binary to BCD Octal, bits I 3-17 of MQ I 721 . BCD5X (BCD5X ITTR BCD5 Binary to BCD Octal, Bits I 1-14 and S of MQ I 722 .CVPRT (CVPRT /TTR CVPRT Convert and Append Unit I Designation to Message I 723 .STOPD t(STOPD ITTR STOPD Job Termination Procedures / 724 .CHXAC (CrlXAC IPZE CHXAC Channel Activity (Indirect I Reference) I 725 .URRX (URRXI IPZE URRX,l Redundancy Count (Indirect I Reference) I 726 . RCTX (RCTXI I PZE RCTX, 1 Redundancy Control (Indirect I Reference) I 727 .RCHX (RCHXI IPZE RCHX,l IReset Load Channel (Indirect I I Reference) I I 730 • 'I'COX (TCOXI IFZE TCOX,l IChannel Delay (Indirect I /Reference) I I 731 .TRCX (TRCXI IFZE TRCX,l ITape Redundancy Test L-----__ L ______L ______L I ______LI ______(Indirect Reference)______J

• Figure 16. DC-IOEX Communication Table

28 Form C28-6382-3 Page Revised 12/7/65 By TNL N28-0174-0

r------T------T------~------·---·--T------, I I MAP I F AP I I I IOctal I Symbolic I Symbolic I I I I Address I Address iAddress IIOEX Entry IFunction I ~------+------+------+------+------~ I I I I I I 732 .ETTX I (ETTXI !PZE ETTXr1 lEnd-Tape Test (Indirect I I I I I Reference) I I I I I I I 733 .TEFX I (TEFXI IPZE TEFX,l lEnd-File Test (Indirect I I I I I Reference) I I I I I 734 . TRAP X I(TRAPX \PZE (TRAPS \current Traps Enabled I I I I (Indirect Reference) I I I I I 735 . TRAPS I (TRAPS IOCT 377 ICurrent Traps Enabled I I I I I 736 .COMM I (COMMM IPZE **,,** I Store Channel Results at I I I ITrap I I I I I 737 .LTPOS I (LTPOS iPZ E **n** IT'ape Position before Last I I I IEOF Trap I I I I i 740 .IOXSI I (IOXSI IPZE .*".* ISense Indicators at Trap i I ! i I 741 .CHPSW I(CHPSW jPZE *~ lCheckpoint Switch i I ! I I 742 . TRPSW I (TRPSW I PZ E * '* ! Trap BiNi tch I I I I! I 743 .FDAMT ! {FDAMT jTTR STOP ITermination Procedure I I I I 744 .SDCXI I (SDCXI jPZE SDCX !SDCX Table (not used in I ! !DCOS) I I I 745 .STCXI I (STCXI jPZE STCX !STCX Table (not used in I I I DCOS) I i I 746 .COVlMD I (COMI>1D \PZE ""* I (not used in DCOS) I I I 747 .IBCDZ I (IBCDZ iTSX STOP,4 I (not used in DCOS) I I I 750 .CHXSP I (CHXSP IPZE CHXSP \ Priority Switch Table

l ______.L ______.!.I ______1. I ______l.I ______(Indirect ,______Reference) J

• Figure 16. DC-IOEX Communication Table (continued)

UNIT CONTROL BLOCK WORD 1

A four-word block of information g called R is the reserve status flag a unit control block (UCB), is generated at (intersystem use only). When R=O, the unit job initialization time for each 7090 is not reserved~ When R=l, the unit is input/output device that may be simulated reserved and the address portion of word 1 by the 7040. Each UCB is used for storing contains data for intersys-tem pickup .. information pertaining to a specific input/output unit being simulated and for activity on that unit. The format of a The unit address is the BCD mode address unit control block is shown in Figure 17 .. of the unit, e~ge~ 1201 for tape unit A1.

Each unit control block contains the EOT is -the end-af-tape flag. When following fields: EOT=l, end of tape has been assigned to the Unlt$ When EOT=O, end of tape has not been assigned to the unit.

Direct Couple Input/Output Executor 29 r------~------, USING THE DC-IOEX TRAP SUPERVISOR I S 2 3 5 1718 35 I I ~~1 8 I I I The following steps describe the manner I ~~2 I in which the programmer may use DC-IOEX to I I schedule his input/output requests. I Word 3 I I Word 4 Symbolic Unit Designation I L ______~ ______J DETERMINING THE AVAILABILITY OF A UNIT Figure 17. Unit Control Block I Before the user can request input/output activity for a unit, he must establish its WORD 2 availability. A unit is available for new input/output activity when word 2 of its UCB contains zeros. The following routine S is the select type. When S=O, a read is an example of the manner in which the operation is indicated. When S=1, a write availability of a unit may be determined. operation is indicated. AXC **,2 LOCATION OF UCB The location of user's select routine is

The file count and the record count are affected by all tape movement instructions. SELRTN pfx O"location of select Select type is indicated by pfx, which should be PZE for read; MZE for write. WORD 4

The symbolic unit designation (BCD with leading zeros) obtained from the $ SETUP CALL TO DC-IOEX card is placed in word 4. For example, if the $SETUP card contained A(1), the follow­ ing would be placed in word 4: The user indicates to DC-IOEX that 0021740134 activity on a unit is desired, and that DCB Word 4 is also used by IOCS labeling contains the address of a select routine, routines for storing the tape reel serial by using the following calling sequence: num~er for multifile reels. TSX • ACTV ,4 pfx a,t return MAINTENANCE OF UNIT CONTROL BLOCK FIELDS When pfx = ~~E, the unit is given a priority, that is, the select routine is The unit address and symbolic unit entered when the current input/output oper­ designation are placed in each UCB at job ation is complete, regardless of any non­ initialization time. The end-of-tape flag priority requests that are waiting. When and the file and record counts are main­ pfx = PZE, the select routine is entered tained by DC-IOEX. The programmer must when the activity is scheduled for the unit maintain word 2