SC34 0313 2_EDX_Utilities_Operator_Commands_Program_Preparation_Messages_and_Codes_Apr80 2 EDX Utilities Operator Commands Program Preparation Messages And Codes Apr80
SC34-0313-2_EDX_Utilities_Operator_Commands_Program_Preparation_Messages_and_Codes_Apr80 SC34-0313-2_EDX_Utilities_Operator_Commands_Program_Preparation_Messages_and_Codes_Apr80
User Manual: SC34-0313-2_EDX_Utilities_Operator_Commands_Program_Preparation_Messages_and_Codes_Apr80
Open the PDF directly: View PDF .
Page Count: 542
Download | |
Open PDF In Browser | View PDF |
------ -------- -----_ .----- Series/1 LICENSED PROGRAM SC34-0313-2 File No. S1-32 IBM Series/1 Event Driven Executive Utilities, Operator Commands, Program Preparation, Messages and Codes Program Numbers: 5719-LM5 5719-UT3 5719-XS1 5719-XX2 5740-LM2 5719-LM6 5719-UT4 5719-XS2 5719-XX3 5740-LM3 5719-AM3 ------- ------- ------_.----- Series/1 SC34-0313-2 LICENSED PROGRAM File No. S1-32 IBM Series/1 Event Driven Executive Utilities, Operator Commands, Program Preparation, Messages and Codes Program Numbers: 5719-LM5 5719-UT3 5719-XS1 5719-XX2 5740-LM2 o 5719-LM6 5719-UT4 5719-XS2 5719-XX3 5740-LM3 5719-AM3 o Use this publication only for the purpose stated. Changes are periodically made to the information herein; before us i ng th i s p~bl i cat ion in connect 10n wi th the operat ion of IBM systems, refer to the latest IBM Ser i es/I ~rapb i c Qibli09raphy, GA34-00SS, for the editions that are ap~licable and current. It is possible that this i nformat i on about, IBM programming, or services try. Such references or mean that IBM intends to ming, or services in your material may contain reference to, or products (mach i nes and programs), which are not announced in your couninformation must not be construed to announce such IBM products, programcountry. Publications are not stocked at the address given below. Requests for copies of IBM publications should be made to YQur IBM representat i ve or the IBM branch off i ce serv i ng your locality. Thi~ publication could contain technical inaccuraci~$ or typographical errors. A form for reader's comments is provided at the back of this publication. If the form has been removed, address your comments to IBM CorporatiQn, Systems Publications, Department 27T, P.O. Box 1328, Boca Raton, Florida 33432. IBM may use and distribute any of the information you supply in any way it believes appropriate without incurring ~ny obligation whatever. You may, of C9urse, continue to use the 1n fo r rna t ion yo u 5 up ply • (C)·Copyright IBM Corporation 1979,1980 c c SUMMARY OF AMENDMENTS Operator Commands The following operator commands have been modified to include support for the IBM Series/l 4969 Magnetic Tape Subsystem: • $C • $VARYOFF • $VARYON Session Manager CI The following changes have been made to the Session Manager for the Event Driven 'Executive Version 2 (S719-UT4): • $Pl/I (Option 10) has been added Preparation s~condary option menu Pl/I compiler. • Option 3 "Disk Utilities" of the primary option menu has been changed to "Data Management". • $TAPEUTI (Option 10) has been added to the "Data Management" secondary option menu to support tape management. to the Program to support the $TAPEUTI Utility This new utility is described in Chapter 4. The tape READ/WRITE return codes are described in Chapter 6. o SC34-0313 iii $PREFIND Utility This utility has been updated to locating tape data sets. include support for $JOBUTIl - Jok Stream Processor This utility compiler. has Suaaested Utjlity been updated Fun~tion to support the PL/I Table This table has been expanded to include all the utiJitv programs within this book for easy reference to their functions and commands. Glossary New terms have been added to the glossary. Reorganization The book has been reorganized. It is now divided into six chapters with an introduction for each chapter. Chapter 4 presents the utilities in alphabetic order. c iv SC34-0313 '~ . ) C Subject tabs have been added to the upper outside corners of Chapters I through 6 of the book. Bibliography The Bibliography lists the books in the Event Driven Executive library and a recommended reading sequence. Other publications related to the Event Driven Executive are also listed. Mjscellaneous Changes c This manual has and to improve tional material vertical bars in been modified to include new function technical accuracy and clarity. Addiand technical changes are .indicated by the left margin. o SC34-0313 v HOW TO USE THIS BOOK The material in this section is a guide to using this book. It defines the purpose, audience, and content of the book as well as 1 i st i ng aids for us i ng the book and background mater i a Is. PURPOSE The purpose of this publication is to describe how to use the following: The operator commands to perform var i ous functions system control The Session Manager to directly invoke utilities The Batch Job Stream Proce~sor ($JOBUTIL) to invoke predefined sequences of utilities The data management, terminal, graphics, text program preparation, and diagnostic utilities editing, The messages and codes issued when using the Event Driven Executive AUDIENCE Th is manua 1 is intended for use by: • System programmers to aid in generating a system to meet the requ i rements of the i nsta llat ion • Application programmers to prepare and execute application programs • Operators to run the system, vi SC34-0313 o HOW THIS BOOK IS ORGANIZED This book contains six chapters: "Chapter 1. Overv i ew" prov i des an overv i ew of the contents of the book. "Chapter 2. Operator Commands" descr i bes the operator commands and how to use them. "Chapter 3. Session Manager" describes the method used to interactively access programs from a set of predefined menus and assoc i ated procedures. "Chapter 4. Utilities" describes the utilities and how to use them. This chapter contains a table which cross references the ,utilities. It shows the utility and command to use to perform the des ired funct ion. "Chapter 5. App 1 i cat i on Program Preparat ion" descr i bes the program preparat ion ut iii ties and how to use them. "Chapter 6. Messages and Codes" describes the messages and codes issu~d by the Event Driven Executive and explains their meaning. AlPS IN USING THIS PUBLICATION Illustrations in this book are enclosed in boxes. Many illustrations display output formats printed while using the Event Driven Executive system. In those cases where the actual printer output exceeds the size of the box, the i nformat i on is i 11 ustrated ina compressed format. Severa 1 other aids are prov i ded to ass i st you in book: us i ng th i s • A Summary of Amendments 1 i sts the sign if i cant changes made to this publication since the last edition • A Bibliography: Lists the books in the Event Driven Executive library along with a brief description of each book and a recommended reading sequence Lists related publications and materials o • A Glossary def i nes terms SC34-0313 vii • A Common Index wh i ch inc 1 udes entr i es from each book in the Event Driven Executive library Related Publ;cat;ons Re Iated pub 1 i cat ions are 1 i sted in the Bib 1 i ography. SUBMITTING AN APAR If you have a problem with the Series/l Event Driven Executive services, you are encouraged to fill out an authorized program analysis report (APAR) form as described in the IBM Series/l Author i zed Program Ana lys i s Report (APAR) User's Gu i de, GC34-0099. c vii i SC34-0313 CONTENTS CI Chapter 1. Overview 1 1 Operator Commands Sess i on Manager Uti lities Messages and Codes • • • • • ••• Hardcopy Function for the 4978/4979 Display 2 2 7 7 Chapter 2. The Operator Commands 9 Invok i ng the operator commands Entering command parameters Operator Commands •••••• $A - List Act i ve Programs $8 - Blank Display Screen $C - Cancel Program •••• $CP - Change Terminal's Partition Assignment $0 - Dump Storage •••• • •••• $E - Ej ect Pr inter $L - Load Program $P - Patch Storage $T - Set Date and Time $VARVOFF - Set Device Offline $VARVON - Set Dev ice Onl i ne $W - Display Date and Time Chapter 3. The Sessi on Manager Invoking the Session Manager Session Manager Program Function Keys Automatic Data Set Allocation/Deletion Session Mana~er Menus Pr i mary Opt i on Menu Secondary Option Menus Menu Option Combinations Ut i I i ties Not Supported by Sess i on Manager Menus .... o 9 10 11 11 12 13 14 15 16 17 18 19 20 22 25 27 27 28 29 33 35 36 46 46 Chapter 4. The utilities 47 Invoking the Utilities Suggested Ut i I i ty Usage Table $COMPRES - Compress Library $COPV - Copy Data Set •••• $COPV Commands •••••• $COPVUTl - COpy Data Set with Allocation $COPVUTl Commands ••••••••••• $DASDI - Format Disk or Diskette •••• • ••• Option 1 - 4964,4966 Diskette Initialization Option 2 - 4962 Disk Initialization Option 3 - 4963 Disk Initialization $DEBUG - Debugg i n9 Too 1 ••••• Debug Usage Considerations Start and Termination Procedure $DEBUG Commands •••••• $DEBUG Command Descriptions 47 48 .. Contents 57 59 59 64 64 68 68 73 78 82 83 85 86 90 i x ... .... Tips and Techniques $DICOMP - Display Composer Invoking $DICOMP $DICOMP Commands Composer Subcommands $DIINTR - Display Interpreter Us i ng $DIINTR from an App I i cat i on Program 3D Concepts as used by $OIINTR ••••••••••• $DISKUT1 - Allocate/Delete; List Di rectory Data $DISKUT1 Commands •• $DISKUT2 - Patch, Dump or Clear Member $DISKUT2 Commands • $DIUTIL - Display Data Base Utility Invok i ng $DIUTI L • $DIUTI L Commands • $DUMP - Format and Display Saved Envi ronment Invok i ng $OUMP •••••• $EDIT1 and $EDIT1N - Line Ed i tors Data Set Requ i rements Sequence of Operat ions Special Control Keys Ed i tor Commands Ed it Mode Subcommands Line Editing Commands ••••. • ••• $FONT - Process 4978 Character Image Tables •••• $FONT Commands • Edit Mode •••••••• • ••• $FSEDIT - Full Screen Editor Data Set Requ i remen'ts •••••••••• Scrolling Program Funct i on Keys •••••• • ••• $FSEDIT Opt ions and Command Summary ••••• Pr i mary Opt i on Nenu •••• • ••••••••• Pr i mary Commands ••••••••••••••• Ed it Line Commands ••••• $ IAMUT1 - Bu i ld and Ma i ntea in Indexed Data Set $IAMUT1 Commands Bu i ld i ng an Indexed Data Set o. Determining Data Set Size and Format $IMAGE - Define 4978/4979 Formatted Screen Image $I~1AGE Commands •••••• Edit Mode ••••••••••••••• $INITDSK - Initialize or Verify Volume $INITDSK Commands ••• Initialization Verification $IOTEST - Test Sensor I/O; List Configuration Invoking $IOTEST $ lOT EST Commands $JOBUTI L - Job Stream Processor Setup Procedure $JOBUTIL Commands Batch Job Example $LOG - Log I/O Errors into Data Set Log Data Set 0 0 0 ••• 0 • 0 • 135 135 142 143 0 0 • • • • • • 150 0 0 • 151 •• 0 0 0 0 •••• • 0 • 0 •• 0 •••• 0 0 0 0 0 •• • 0 0 • • • • • • • '0 0 • 0 • • • • ........ ............. . . . . . . . . . . . '. . . . SC34-0313 129 • • • • • • • 0 x 127 127 0 • • • • • • 0 103 105 105 105 109 ... 150 163 163 169 169 170 172 173 182 203 205 205 206 209 209 210 211 212 213 218 226 235 235 247 247 250 250 255 256 256 257 260 263 263 264 271 271 272 290 292 292 c Invoking $LOG •••••••••••••••• $MOVEVOL - Disk Volume Dump/Restore Diskette Usage •••••••••••• Data Set Spec i f i cat ion ••••••••••• Dump Procedure ••••••••• Restoration Procedure $PFMAP - Ident i fy 4978 Program Funct i on Keys $PREF IND - Pref i nd Data Sets and Over lays Program Load Process Overview •• $PREFIND Usage Cautions $PREFIND Commands Invoking $PREFIND $TAPEUT1 - Tape Management $TAPEUT1 Commands $TERMUTI - Change Terminal Parameters $TERMUTI Commands $TERNUT2 - Process 4974/4978 Image/Control store 4978 Support ••••• 4974 Support ••••• Data Set Names • • • • • ••• $TERMUT2 Commands ••••••••••• $TERNUT3 - Send Message to a Terminal $TRAP - Save Storage on Error Cond i t ion .. ..... 292 294 294 295 296 299 301 302 302 303 304 305 311 312 334 334 339 339 340 340 340 344 348 Chapter 5. Application Program Preparation 351 Enter i ng Source Statements •••• Program Assemb I y/Comp i lat i on •••••••• Linkage Editor •••••••• Object Module Conversion Prefind of Data Sets and Overlays Summary ••••••••• , •••• $EDXASM - Event Dr i ven Language Comp i ler Language Control Data Set ••••• Requ i red Data Sets •••••• Camp i ler Opt ions ••••• $EDXASM Output •••••• Compiler Features Supported Programming Considerations I n v 0 kin g $ EDX AS M ••••• • • • • $EDXLIST - Comp i ler List i ng Program $S1ASM - Ser i es/l Assembler •••••••••••• Requ i red Data Sets •• Invok i ng $S1ASM ••••••• • •••• Host Assembler ••••••• • •• Invok i ng the Host Assembler •• " •••• Transferring the Object Module to Series/l EDXLIST - Host List i n9 Formatter Program Opt ions • • • • • ••••••• $LINK - Linkage Editor •• • • • • • ••• Combining Modules • • • • • ••• Multiple Con'frol Sections •••• Formatting Modules for $UPOATE •••••••••• Elimination of Duplicate Contral Sections Automatic Inclusion (Autocall) •••• Storage Map 351 352 353 353 353 354 356 357 357 358 359 361 361 368 370 372 372 .... o . . . . . . . . .. . . . . . . . Contents 373 382 382 383 383 385 390 392 392 392 393 393 393 xi .. Bu i Id i ng an Event Dr i ven Execut i ve Superv i sar The Link Ed i t Process •••• .. . Input to $LINK •••• Data Sets Used by $LINK .. AutocallOption • • • • .. • • • • ••• Output from $LINK .................. . Invoking $LINK • • • • •• • •• • ... . Object Module Record Format • • • • • • • • • Ii • • • • • ·$UPDATE - Object Program Converter ............. . $UPDATE Commands • • • • • • • Invok i ng $UPDATE .............. . Creat i ng a Superv i sor •••• • . • • • • ,. • •••••••• $UPDATEH - Object Program Converter (Host) $UPDATEH Commands •••••••••• • .. • • .4o. · . ... ... .. - . .. . ·............. · . . ... . .. .... ... ·... . . . .. .. . . · . . . . . . . . . . .. . .... . . . ... ..... Chapter 6. Messages and Codes .. System Operation Messages .. IPL Operat i on •••• .. • • • Volume Initialization • • Tape Initialization ., .. Storage Map Generation .,. Load Ut i I i ty Locat i on Sensor I/O Status Check Date and Time Printing •••••• • ••• Pr'ogram load Message ••••••• Error Messages •••••••••• • ....... . Program Check Errpr Message .......... . System Program Check Error Message • • • • • Processor Status t~ord (PSW) ••• • ...... . $DUMP Error Messages ••••••••• $lOG Error Message • • •• • ...... . $RMU Error Messages •• . ; . . • •••••••• $TRAP Error Nessages • • • • .. • • • Utility Completion Codes ............. . $EDXASM Comp let i on Codes .......... . $IAMUTI Completion Codes • • • • • • •• • •••• $JOBUTIL Completion Codes • .. • • • • • • • ... $LINK Completion Codes • • • • • ••• $UPDATE Comp let i on Codes •••• • ...... . Event Dr i ven language and Funct t on Return Codes .. . $DISKUT3 Return Codes ............. . • • • • • • . . . . . . . . . .. $PDS Return Codes .. BSC Return Codes •••• Data Formatt i ng Return Codes .. EXIO Return Codes ••••• .; Float i n9 Po i nt Return Codes .. Formatted Screen Image Return Codes .. .. .. I n d e xed Ace e s s ~1 e tho d Ret urn Cod e s •• LOAD Return Codes ••••••••••• Multiple Terminal Manager Return Codes . . . . . . . . . .. READ/~JRITE Return Codes • • • • • .; ••••••••• S8IO (Sensor-based I/O) Return Codes ........... . Terminal I/O Return Codes ................ . Terminal I/O - ACCA Return Codes •• " • • • • Terminal I/O - Interprocessor Communications Return ... . ·...... .. . . .......... . .. .. . . . .. xii SC34-0313 394 394 396 400 401 403 405 407 408 408 414 417 418 418 421 421 421 422 423 423 424 424 I I •. 425 425 427· 427 429 430 431 432 433 435 436 436 437 439 440 443 444 444 445 446 447 448 450 450 451 452 453 454 457 4Sa 459 c c Codes • • • • • • • • • • • • • • • .• • • • • • • • • • • • Terminal I/O - Virtual Terminal Communications Return Codes •••• • • • • • • •••• TP Return Codes ••••••••• Bi bl; ogl'aphy ••••• • • 461 463 467 • • Event Dr i ven Execut i ve Library Summary Event Driven Executive Library Sum hi a r y 0 1= Lib r ar y ••••••••• • • • • • Read i ng Sequence •••••••••• • ••• Other Event Driven Executive Programming Publications Other Series/l Programming Publications Other Programming Publications Series/1 System library Publicatidns ...... .. ........... .. . .. . . . . Gloss."y Common Index ... ...... ...... ~ ( 460 467 467 468 470 471 471 472 472 475 487 ""'\ j c Contents xiii () xiv SC34-0313 LI~T QE EIGUf!§~ C; Figure F=igure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure FigurE! Figure Figure Figure C) ·· · · · · · ·· · ·· · · ···· · · . · · ·· ·· ·· ·· ·· ·· · · · · ···· • ···· ······ 1 • Sess i on Manager logon menu 2. $SMALLOC contents 3. Data sets created by the Sess i on Manager 4. $SMDELET contents S. Menu se lect i on hierarchy 6 • Primary option menu 7. Program preparat i On ut i I i ties opt i on menu 8. $EDXASM parameter select i on menu 9. Data management opt i on menu 10. Terminal utilities option menu 11 • Graphics utilities option menu 12. Communications utilities option menu 13. Diagnostic aids uti lities option menu 14. $TRAp parameter selection menu 15. $DUMP parameter se lect i on menu 16 • $LOG parameter selection menu 17. X,V Coordinate Grid and Viewing Area 18. X,y,Z C()ordinate Grid and Viewing Area 19 • Viewing Area in 3D Node. 20. $EDITl/$EDITlN Commands and Subcommands 21. $MOVEVOL parameter input menu 22. EVE!nt Dr i ven Execut i ve program preparat ion 23. Programming with a linkage editor ·· · ······ .··········· ······· ···· 27 30 31 32 34 35 37 38 39 41 41 43 44 44 4S 45 110 111 132 171 295 355 391 c List of Figures xv xvi SC34-0313 Ovel"v;ew 0 ·, I 1 ,,)' CHAPTER 1. OVERVIEW The following Event Driven Executive described in this book: system components and provide are • Operator commands to invoke programs system contro I funct ions other • A sess i on manager to invoke the ut iii ties from opt i on menus Data management utilities to maintain disk, diskette, and tape data • Di agnost i c ut iii ties debugging • Graphics utilities to define, display, and maintain graphi c data • Terminal utilities to define and modify terminal control information • Text editing utilities to enter and edit source data • to aid in hardware and software Program preparation utilities for system and application development progra~ • Messages and codes to aid you in operat i on of the system Each of these components is discussed later in detail. A brief description of each follows. the book in OPERATOR COMMANDS Twelve operator commands provide functions you can perform at your terminal. Commands that require parameters prompt you for them. Commands are accessed via the ATTN key of the 4978 or 4979 display term)nals or the ESC or ALT MODE key on teletypewriter terminals. The operator commands and the funct ions they perform are: c SA Display loaded program names Clnd locations $B Blank a 4978/4979 screen Chapter 1. Overview 1 ( Overview I $C Cancel a program $CP Change a terminal's partition assignment $D Dump storage $E Eject pr inter page $L Load a program $P Patch storage $T Enter the date and time $VARYOFF Set a dev i ce offl i ne $VARYON Set a dev j ce onl i ne $W Dis pia y the d ate and tim e ((.-~ ~-y SESSION MANAGER The session manager is a menu-driven interface used to access both system functions and your applications through a set of predefined full screen menus and their associated procedures. See "Chapter 3. The Session Manager" on page 27 for a detailed descr i pt i on on the sess i on manager. UTILITIES The utilities are a set of programs that provide productivity aids for Series/l application program development and system maintenance. To aid yo u i n us i n g the s e uti lit i e s, the E v en t Dr j ve n E x e cut j v e system provides three ways to invoke the utility programs from a term; nal: • The sess i on manager • The job stream processor ut i I i ty ($JOBUTI L) • $L command 2 SC34-0313 c Overview Most utility programs are used interactively from a terminal. After a utility program is invoked, you can list its defined operations and command by entering a question mark in response to the' COMMAND (?):' prompt. In Chapter 4, the utility programs are presented in alphabetic order along with examples of their usage. The session manager groups the utility programs by function. The following represents the functional groupings of the utilities along with the operations they perform. Text Editing Utilities The text editing utilities provide facilities for entering and ed it i ng source programs as fo llows: () SEDITl Ali ne ed i tor that uses host data sets $EDITlN A line ed i tor that uses Ser i es/l data sets $FSEDIT A full screen editor that uses Series/lor host data sets Program Preparation Utilities The program preparation utilities aid in: o $COBOl Compiling COBOL programs $EDXASM Compiling Event Driven language programs $EDXlIST Reformatting 6EbxASM listings $FORT Comp iIi ng FORTRAN programs $lINK link ed it i ng more that one program together $PL/I Compiling Pl/I programs $ PRE FIND Pre fin din g d a t a set san d program load i ng time· $SlASM Assembling Series/l assembler language programs 0 ve r I a y pro g ram s to s h 0 r ten Chapter 1. Overview 3 ["overView I $UPDATE Converting an object program into an executable load module $UPDATEH Converting a hqst object program into an executable load module Data Management utilities The data management utilities aid in: I I $COMPRES Compressing disk or diskette libraries $COPY Copying disk or diskette data sets or volumes $COPYUTl Copying data sets and volumes with allocation of the recei ving data sets $DASDI Initializing, formatting, and diskettes $DISKUTl Allocating and deleting data sets; listing di rectory data $DISKUT2 Patch i ng and dump i ng data sets; list j ng log data set $DISKUT3 Performi ng data management funct i cns from another program. $DISKUT3 is descr i bed in the System Gu j de. $IAMUTl Building and maintaining Indexed Access Method data sets $INITDSK Initializing and verifying a direct access storage volume for use with the Event Driven Executive $MOVEVOL Transferring volumes of data between systems creat i ng backup cop i es of an anI i ne data base $PDS Organizing and accessing partitioned data sets from another program. $PDS is described in the System Guide. $TAPEUTl Allocating tape data sets, copying data sets or volumes from disk or diskette to tape, from tape to disk or diskette, or from tape to tape, and changing tape attributes. 4 SC34-0313 verifying dynamic disks the or error and c o Overv;ew Terminal Utilities The terminal utilities aid in: $FONT Creat i ng and mod i fyi ng character i mage your display terminal $IMAGE Defining formatted screen images $ P FMA P Dis p I a yin g pro g ram fun c t ion key ass i g n men t s $TERMUTl Altering logical device names, address assignments, or terminal configurations $TERMUT2 Defining routines and changing key definitions on the 4978 keyboard. Restor i ng the 4974 pr inter to the standard character set. $TERI"'UT3 Send i ng messages from one termi nal to another tables for The Multiple Terminal Manager utility programs are documented in the Communications and Terminal Applications Guide. Graphics Utilities Under the direction of a display utilities aid in: processor, three graphics $DICOMP Generating and modifying displays using composer $DIINTR Us i ng an interpreter to display and process the data base $DIUTIl Maintaining the resulting data base an online Communications utilities The communications utilities aid in: $BSCTRCE Tracing the I/O activities on a given binary synchro- c nous communications line Chapter 1. Overview 5 Overview I $BSCUTl Formatt i ng binary synchronous trace files to either a printer or a terminal $BSCUT2 Exercisin9 BSCAM capabilities $RJE2780 Simulating a 2780 RJE interface $RJE3780 Simulating a 3780 RJE interface $PRT2780 Pr i nt i ng spool records produced by $RJE2780 $PRT3780 Printing spool records produced by $RJE3780 Interact i ng wi th the Host Commun i cat ions Fac i 1 i ty $HCFUTl The communcations utilities are documented Communications and Terminal Applications Guide. in the Diagnostic Utilities The diagnostic utilities aid in: $DEBUG Debugging programs $DUMP Formatting and displaying the data saved by $TRAP on an error condition SIOTEST Performing the following functions: • Test i ng the ope rat i on of sensor based I/O features • List i ng the hardware conf i gurat i on of the Ser i es/l • List i ng the dev ices supported by the system • Listing volume information SLOG Logg i ng I/O errors into a data set STRAP Intercept i ng certa inc lass interrupts and record i ng the env ironment on a disk or diskette data set o 6 SC34-0313 o -I Overvi ew MESSAGES AND CODES Whi Ie using the Event Dri ven Executi ve, you may encounter return codes, complet i on codes, and messages. They are found in Chapter 6. Messages and Codes. HARDCOPY FUNCTION FOR THE 4978/4979 DISPLAY Press i ng the PF6 key or the ass i gned hardcopy key on the 4978/4979 keyboard causes the entire display (24 lines) to be transferred to the designated hardcopy device. (During system generation, the TERMINAL statement is used to define the hardcopy device.) I f the hardcopy device has not been defined or is current I y busy with another operat ion, then no act ion is taken. Otherwi se, the screen cursor moves to each line as i t 'i s printed, returning to its original position after the page is printed. The hardcopy function should not be activated while the screen is be i ng changed. o Chapter 1. Overview 7 I Operator Commands /' "\ \'c;! ,· J ' C 8 SC34-0313 Operator Commands o CHAPTER 2. THE OPERATOR COMMANDS Twelve operator commands provide system control functions you can perform at your terminal. The operator commands begin with the character $ and are directed to the supervisor. (The commands directed to the various utilities are described in "Chapter 4, The Utilities" on page 47 for each utility). Commands that requ ire parameters will prompt you for them. The operator commands and the funct ions they perform are: SA Dis pIa y loa d e d pro g ram n a me san d 1 0 cat ion s $B Blank a 4978/4979 screen $C Cancel a program $CP Change a terminal's par'tition number $D Dump storage $E Eject pr inter page $L Load a program $P Patch storage $T Enter the date and time ",J'~) ( ..,..Y $VARYOFF Set a device offline $VARYON Set a device online $W Display the date and time INVOKING THE OPERATOR COMMANDS To invoke the operation commands, press the ATTN key on the 4978 or 4979 (designated attention key on the teletypewriter terminal). Then enter the desired command in response to the prompt i ng message> from the superv i sor. o ~: If the system includes more than 64K bytes of storage, ,the $A, $C, $0. $L. and $P functions operate only within the storage part it i on ass i gned to the term ina 1. Chapter 2. The Operator Commands 9 f Operator Commands (' . J --~ ENTERING COMMAND PARAMETERS Vouare prompted for required parameter information, for exa~ pIe, the storage addresses to be displayed by $D or the name of the program to be loaded by $L. Note: In the syntax definitions in this chapter, the required fields need not be entered on the same line as the command. An alternate method for entering the operator commands is the sing Ie 1 i ne format. Th is format a llows you to enter success i ve fie l·d s, s epa rat e d by b 1 an k s, a s a sin g 1 e en try. T his can be done for as many fie Ids as the system can process before it must print an informational response. A possible entry using single line format is: $L $EDXASM CALCSRC ASMWORK ASMJOB c 10 SC34-0313 Operator Commands o OPERATOR COMMANDS $A - List Active Programs Displays the names and load points of all programs that are active within the partition to which the requesting terminal is ass i gned. Programs that were loaded by operator commands entered at your term ina 1 are i dent if i ed by an aster i sk. Syntax $A Required: Default: None None No operands are supported. Example - Display active programs > $A PROGRAMS AT 08:14:19 IN PARTITION is $SNMAIN 0000 * $JOBUTIl 0400 * $DISKUTI 0800 $COPYUTI 2600 * o Chapter 2. The Operator Commands 11 [ Ope~ato~ Commands $B - Blank Display Screen () Blanks or erases the requesting terminal's (4978/4979) screen, both protected and unprotected areas. Syntax $B Required: Default: None None No operands are requ ired. Example - Blank screen > $8 Note: Display screen is blanked. /-r "\ I "cc,.,1 ' c 12 SC34-0313 Operator Commands o $C - Cancel Program Cancels a program and frees the storage that it occupied. When more than one copy of the program is in your partition, you are prompted to specify the load point of the program you wish to cancel. Use $A to obtain the load point. $C will also close, rewind, and set offline any tape data sets defined in the program header of the cancelled program. If a tape drive is online and targetted to receive data, the operation will complete and tape will be set offline. paut;on: Do not use the $C command as a normal means of terminating program execution. Use it only as an aid when no other way exists to force termination of a program (such as a program to be cancelled is in an endless loop of instructions>. $C can cause unpredictable errors (the task error exit is not taken> and should only be used as a last resort to avoid having to IPL the system aga in. Syntax (~) program program None $C Required: Default: Operands program Description The name of the program to cancel. Example - Cancel $EDIT1 > $C $EDITl $EDIT1 CANCELED AT 08:16:24 o Chapter 2. The Operator Commands 13 Operator Commands $CP - Change Terminal's Partition Assignment Th is command allows you to change the part it 1 on number ass i gned to your terminal. If an invalid partition number is specified, an error message is displayed. Note: I f you are us i ng a 4952 processor, you are partitions 1 and 2. lim i ted to Syntax $CP n Required: Default: n None Operands Description The partition assigned. n to which the terminal is to be Example - Assign terminal to partition 2 > $CP PARTITION t ? 2 c 14 SC34-0313 Operator Commands o $0 - Dump storage Dumps the contents of storage in hexadec i ma 1 on the term ina l. Syntax $D Required: Default: Operands I origin,address,count origin,address,count None Description origin The hexadecimal origin address (the point). program load address The hexadecimal address in the program at which the dump is to start. count The dec i mal number of words to dump. Example - pump first 10 words of partition > $D ENTER ORIGIN: 0000 ENTER ADDRESS,COUNT: 0000,10 0000: 6802 6AF6 0000 0000 6C34 6AF2 6C34 6AF2 0010: 0000 0000 ANOTHER DISPLAY? N o Chapter 2. The Operator Commands 15 Operator Commands $E - E;ect Pr;nter Causes the 4974 or 4973 pr inter (def i ned as $SYSPRTR) to advance to the top of the next page a spec if i ed number of times. Syntax $E Required: Default: QlLerands n None Ejects one page Description The number of pages to eject. n Example - Eject page on printer > $E 2 Note: Printer ejects two pages. c 16 SC34-0313 Operator Commands o $L - Load Program loads a program from disk or diskette and starts it. Syntax $l Required: Default: Operands o I program,volume,storage data setcs) program volume defaults to IPl volume Description program The name of the program to load. volume The name of the volume which contains the program to load. storage The tot a 1 add i t i on a 1 s tor age to be added tot he end of the loaded program. data set Cs) Data set Cs) to be passed to the program be i n9 loaded (if required). Specify the data set(s) in the order the program expects. Example - Lo~d a Program Called PROCESS from EDX003 and Pass a Single Data Set, MY DATA II > $L PROCESS,EDX003 MYDATA Note: Wait until the system is initialized before loading a program. If your system has timers, the system is initialized when the 'SET TIME AND DATE USING $T' appears (or when the time and date are printed). If your system does not have timers, the system is initialized when it enters the wait state after the storage map has been displayed. o Chapter 2. The Operator Commands 17 Operator Commands o $P - Patch storage Allows main storage to be patched online. Enter the patch data in response to prompt i ng messages. Syntax origin,address,count origin,address,count None $P Required: Default: Operands I Description origin The hexadecimal point). address The hexadecimal address in the program at which the patch is to start. count The dec i mal number of words to patch. origin address (program load Example - Patch word X'lOO' of program loaded at 0 to 'S'FFFF' > $P ENTER ORIGIN: 0000 ENTER ADDRESS,COUNT: 0100,1 0100: C462 DATA: FFFF ANOTHER PATCH? N c 18 SC34-0313 Operator Commands o $T - set Date and T;me Enters a new date and time into the system and resets the realtime clock. You can only use $T from terminals having the label $SYSLOG and$SYSLOGA. After entering the time, the timer is started at the instant carr i age return/ENTER is pressed. Th i s resets the seconds to zero. Notes: Make sure your time and date entry is correct as the system does not ver i fy th i s data. If $T is entered from other than $SYSlOG or $SVSLOGA, it is equivalent to entering $W. Syntax $T Required: Default: o Operands date,time date,time date defaults to 00/00/00 time defaults to 00:00:00 Description date The current date. time The current time. Example - Set date and time > $T DATECM.D.T): a:22:79 TIMECH.M): 11:15 0'·"" I, Chapter 2. The Operator Commands 19 Operator Commands $VARYOFF - Set Dev;ce Offline Sets the status of a disk, diskette, diskette magaz i ne un it, or tape drive to offline. On the 4966 diskette magaz i ne un it, each diskette vo I ume in individual diskette slots or either of the diskette magazines can be set to offline. When you vary a tape dev i ce 0 ff line, that tape dr i ve is rewound to the load point and set logically offline. Syntax $VARYOFF Required: Default: Operands ioda slot loda None Description ioda The hexadecimal device address of the device to be varied offline. slot The slot number (1,2,3,A,B) of the diskette to be varied offline. This parameter applies to the 4966 only. /'"~ -""\ \-\.,.JI' Examples: Vary offline the volume in slot 2 of a 4966 device at address 22 > $VARYOFF 22 2 IBMIRD OFFLINE c 20 SC34-0313 Operator Commands o Vary offline tape drive at device address 4C on which a standard label tape volume (volume serial 123456) was mounted and is displayed. > $VARYOFF 4C 123456 OFFLINE Vary offline tape drive at device address 4E. In this example, the tape drive was defined for non-labeled (NL) tapes or for bypass label-processing (BLP). Therefore, the tape ID assigned to that device at system generation is displayed. > $VARYOFF 4E TAPE1 OFFLINE o Note: If you vary offline a tape drive that use, yoU are prompted as fo llows: is online and in DEVICE MARKED IN USE, CONTINUE? (Y,N): If response is N, the tape is not varied offline." If response is y, the tape will be put logically offline (closed) and usable (ready to be var i ed on line). Th is a llows an "unc lased" tape dr i ve to be recovered. o Chapter 2. The Operator Commands 21 Ope~ator Commands ( ~)~ .. $VARYON - set Dev;ce On1;"8 . , Sets the status of a disk, diskette, diskette magaz i ne un it, or tape drive to online. On the 4966 diskette magazine unit, each diskette volume in the individual slots or either of the diskette magazines can be independently set to online. When a new diskette volume is mounted, the diskette volume must be online for it to become accessible. I/O commands issued to disk or diskette will not operate unless the device and/or the di$kette volume is online. I I I· Before I/O commands can be l$sued to a tape, the tape must be mounted on a tape dr i ve and var i ed on 1 i ne. $VARYON performs special tape functions, depending labe 1 type that is def i ned for the tape dr i ve. • I· I on the If the drive is defined for a standard label (Sl) tape, the VOll volume label is read. If the drive is defined for a non-labeled (Nl) tape, the leading tape mark Cif one exists) is automatically bypassed or, if a label is encounted, terminates without sett i ng the tape onl i ne. If the drive is defined for bypass label-processing (BlP), no initial tape motion qccurs. $VARYON also allows access to a mul~iple-file through a spec; f; ed f; Ie sequence i nd i cator. tape volume The tape drive must be set to the proper density at system generation or by the Change Tape (eT) command of the $TAPEUTI ut i i i ty before YOU vary a tape onl i ne. You ~an request that the exp i rat i on date on an SL tape data set be ignored. o 22 SC34-0313 Operator Commands o SVARYON Required: Default: ioda slotlfile 'EX' iada file defaults to 1, maximum value of 255 Note: The OR symbo 1 Operands (I) i nd i cates mutua 11 y exc I us i ve operands. Description ioda Tha hexadecimal device address of the device to be varied online. slotlfile The slot number (1,2,3,A,B) of the diskette to be varied online. This parameter applies to the 4966 only. The decimal fi Ie number on the tape to be accessed. This parameter applies to the tape drive only. o , EX' This parameter applies to tape only and requests an expiration date override. If a tape data set is initialized with an expiration date, this parameter must be used to write to that tape data set and the file number must be specified. Examples: Vary diskette in slot 1 of 4966 at device address 22 online > $VARYON 22 1 IB~1IRD ONLINE Vary a standard label (SL) tape (volume 123456) at address 4C online and access the first file. o Chapter 2. The Operator Commands 23 Operator Commands > $VARYON 4C 123456 ONLINE Vary a non-labeled (NL) tape at address 4C online and access the second file, where TAPE1 was the ID ass i gned at system generation. > $VARYON 4C 2 TAPE1 ONLINE Vary a standard label tape at address 4D online. The first file of this tape has an expiration date that has not expired; however, output to this file is allowed. > $VARYON 40 1 EX OVERRIDE EXPIRATION DATE CHECK? (Y,N): Y 123456 ONLINE o 24 SC34-0313 o Operator Commands $W - Display Date and Time Displays date and time. Syntax $W Required: Default: None None No operands are supported. Example - Display date and time > $W DATE = 08/22/79 TIME = 11:16:54 o Chapter 2. The Operator Commands 25 Session Manager o o o 26 SC34-0313 Sess;on Manager o CHAPTER 3. THE SESSION MANAGER The session manager provides a quick and easy to use method of accessing programs (including the utilities) interactively from a terminal. Predefined full scre,en menus and associated procedures enable you to invoke the functions you request. Full screen 4978 or 4979 dis~l~y terminals present prompting messages and gather input parameters for processing system functions or application programs. Input requests are accompanied by prompting messages to help you supply all required information. The session manager requires a m1nlmum partition of 10K bytes to process menus and your requests, but only 2K bytes remains resident during execution of the functions yoU request. Each terminal (4978 or 4979) has a dedicated copy of the session manager loaded into the part it i on to wh i ch that term ina l i s assigned. INVOKING TH~ SESSION MANAGER You can invoke the sess ion e i thet of two ways: • as part of the IPL procedure • your request using $L (Load a Program) When you IPL the Event Driven Executive system, the session manager can be automatically loaded for each active 4978 or 4979 display terminal and the logon menu (as shown in Figure 1) is displayed. $SMMLOG: THIS TERMINAL Il LOGGED TO THE SESSION MANAGER ENTER 1-4 CHAR USER 10 ==> (ENTER LOGOFF TO EXIT) 17:55:31 OS/24/79 ALTERNATE SESSION MENU ==> (OPTIONAL) o Figure 1. Session Manager logon menu Chapter 3. The Session Manager 27 [ Session Manager If you wish ~o start the session manager at IPL time, you must rename the session manager module $SMINIT to $INITIAL, using the following $OISKUTI utility command: o RE $SMINIT $INITIAL The module $INITIAL, if present, is part of the IPL stream and is automatically loaded. If you do not wish the automatic start feature, you can load the session manager using the following command: $L $SMMAIN To beg i 11 a sess ion, enter your user 10 (one to four characters) and press the ENTER key. Use the ENTER key throughout the session for all data entry operations from the terminal. The user 10 should be unique and not be used by more than one person simultaneously. This is because the user 10 is used to create temporary work data sets whose names contain the fourcharacter ID. Multiple use of the same ID results in sharing the same work data sets, with unpredictable results. NQ..tg: If you do not wish to use the session manager, enter the word LOGOFF instead of a user ID and the session manager,terminates. SESSION MANAGER PROGRAM FUNCTION KEYS Four program function (PF) keys enable you to perform the following functions: PFl Blanks the current screen image and allows system commands to be entered through prompt i ng messages: o 28 SC34-0313 Sess;on Manager o ENTERING SYSTEM COMMAND MODE TO REENTER THE SESSION MANAGER, DEPRESS ATTN KEY AND ENTER '$SM': PF2 Restores the current screen image to its appearance when first displayed. Use this key to erase erroneous entries. PF3 Returns the previously displayed screen image. Use this key to back out from the current screen image. PF4 Returns you to the primary option menu. Use this key to return from any sess i on manager screen. AUTOMATIC DATA SET ALLOCATION/DELETION o The session manager logon/logoff time. allocates and deletes data sets at Data Set Allocation After you enter your user ID, the session manager allocates work data sets on a disk resident volume. The data set called $SMALLOC controls the data sets that are to be allocated. Figure 2 on page 30 lists the data set contents which consists of the data set prefix names, the sizes in 256-byte records, and the volumes to be used. The END statement i nd i cates the end of the list of data sets to be allocated. Six data sets are usually allocated, five of which are temporary. Temporary data sets are deleted at the end of the session manager session. The data sets are allocated on volume EDX003. Figure 3 on page 31 lists the data sets, their sizes, and their functions. o The data sets to be allocated, their volume, or size can be changed by using $FSEDIT or $EDIT1N to edit $SMAlLOC. Four other optional data sets ($SM4, $SM5, $SM6, and $SM7) can also be allocated. To change the number of data sets to be allocated, move the END statement behind the last data set to be allocated. To change a data set size or volume, change the size or Chapter 3. The Session Manager 29 Session Manager o volume field. The on I y req u i red data sets are $SMP and $SMW. They allocated on volume EDX003. must be For each user ID, a permanent parameter data set named $SMPuser is created. The last input parameters entered on a parameter select i on menu are displayed, allowi ng them to be used as is or changed. They are saved in the data set and recalled on the next i nvocat i on of the menu. When the data sets have been allocated, the primary option menu is displayed on the screen and you can select the option desired. $SMP $SMP $SMW $SME $SM1 $SM2 $SM3 END *** $SM4 $SMS $SM6 $SM7 100 100 100 100 00 30 30 400 400 400 250 EDX003 NAME AND VOLUME FOR OPEN EDX003 SIZE AND VOLUME TO ALLOCATE EDX003 SIZE AND VOLUME TO ALLOCATE EDX003 SIZE AND VOLUME TO ALLOCATE EDX003 SIZE AND VOLUME TO ALLOCATE EDX003 SIZE AND VOLUME TO ALLOCATE EDX003 SIZE AND VOLUME TO ALLOCATE TERMINATOR - INDICATES END OF ALLOCATED DATASETS *** EDX003 SIZE AND VOLUME TO ALLOCATE SIZE AND VOLUME TO ALLOCATE EDX003 EDX003 SIZE AND VOLUME TO ALLOCATE SIZE AND VOLUME TO ALLOCATE EDX003 ********************************************************* ********************************************************* ** $SMLOG WORK DATASET PARAMETER VALUES FOR ALLOCATE ** ** FUNCTION ** ** NOTE: THE DATASETS $SMW AND $SMP MUST RESIDE ON ** ** THE VOLUME EDX003. ALL OTHERS MAY BE ** ** REASSIGNED. ** ** NOTE: THE FIRST ENTRY IN THIS LIST IS USED TO ** ** TEST FOR THE EXISTENCE OF THE $SMP ** ** DATASET. DON'T DELETE. ** ** DC C'5719-XSl COPYRIGHT IBM CORP 1979' ** ********************************************************* ********************************************************* END ********************************************************* Figure 2. $SMALLOC contents o 30 SC34-0313 Session Manager o Data set Size in 256 name byte blocks o Functional usage $SMEuser 400 Used by the full screen text editor utility ($FSEDIT) as a work data set. $SMPuser 30 Used by the session manager to save your input parameters from session to session. This data set is not deleted at the completion of a session. $SMWuser 30 Used by the session manager to submit procedures via the job stream utility ($JOBUTIL). $SMluser* 400 Used by the linkage editor ($LINK), the assembler ($SlASM), the compilers ($EDXASM, COBOL, PL/I, and FORTRAN IV as a work data set. $SM2user* 400 Used by the linkage editor ($LINK), the Series/l Macro Assembler ($SlASM), COBOL, FORTRAN IV, and P!/I as a work data set. $SM3user* 250 Used by the Series/l Macro Assembler ($SlASM), COBOL, and PL/I as a work data set. NQtes~ 1. 'user' in the data set name is replaced by your user 10. 2. *Using tha session manager to invoke $SIASM, COBOL, and PL/I requires that these data sets be deleted and reallocated. Recommended sizes for most programs are 2000 records for $SMluser and $SM2user and 800 record for $SM3user. Figure 3. Data sets created by the Session Manager o Chapter 3. The Session Manager 31 I Session Manager o Data Set Deletion Data sets created by the session manager can be deleted when you return to the logon menu. A prompt message is issued ask i ng if you wish to save the data sets. To reply, enter a V for yes or an N for no and press the ENTER key. Abnormal termination of the session manager prevents the deletion of the temporary data sets. The data set $SMDELET controls the data sets to be deleted at the end of the sess ion. The data set conta i ns the data set prefix names and the volumes on which they reside. The END statement i nd i cates the last data set to be de leted. The data sets to be deleted should normally be the data sets that were allocated at the start of the sess ion. Figure 4 1 i sts the contents of the $SMDELET data set. $SME $SMI $SM2 $SM3 $S~1W END $SM4 $SM5 $SM6 $SM7 EDX003 EDX003 EDX003 EDX003 EDX003 *** TERMINATOR BE DELETED EDX003 EDX003 EDX003 EDX003 PREFIX NAME PREFIX NAME PREFIX NAME PREFIX NAME PREFIX NAME - INDICATES *** PREFIX PREFIX PREFIX PREFIX NAME NAME NAME NAME AND AND AND AND AND END VOLUME TO DELETE VOLUME TO DELETE VOLUME TO DELETE VOLUME TO DELETE VOLUME TO DELETE OF DATA SETS TO AND AND AND AND VOLUME VOLUME VOLUME VOLUME TO TO TO TO o DELETE DELETE DELETE DELETE ********************************************************* ********************************************************* ** $SMEND WORK DATASET PARAMETER VALUES FOR DELETE ** ** FUNCTION ** ** DC C'5719-X51 COPYRIGHT IBM CORP 1979' ** ********************************************************* ********************************************************* END ********************************************************* Figure 4. $SMDELET contents o 32 SC34-0313 o Sess;on Manager SESSION MANAGER MENUS The sess i on manager menus enable you to select opt ions, such as text editing or program preparation, and to enter parameters. A un i que procedure, associ ate d wi t h each menu , enables you to select option menus or to invoke through the batch job processing utility, $JOBUTIL, the functions you desire. Menus and procedures are stored in a library that resides on a direct access storage device. A menu is either a parameter selection menu or an option selection menu. You use a parameter se lect i on menu to pass parameters to the program be i ng invoked. The option selection menu is used to select other menus based on which option is selected. When you log on to the session manager, the supplied environment can be overridden by specifying a main option menu that you have created. This provides for additional environments tailored to your system. Option selection menus can be modified to add options that provide different environments for different users. (Procedures for modifying and adding new menus are discussed in the System Gu j de) • Figure 5 on page 34 shows the structure and the various paths that can be used to execute a requested function. When a function completes, the most recently displayed menu is again displayed. You can then change parameters and again request the function, or you can return to previously displayed menus by pressing the PF3 key. Use the PF3 key to return to a previous menu and, finally, to exit the session manager. o Chapter 3. The Session Manager 33 I Sess;on M~nager o Logon menu Levell I I User supplied menu Level 2 f Level 3 I Primary option menu I I 1 I Parameter selection menu Level 4 Secondary option , menu I I I I Execute requested function Execute requested function Tertiary option menu r Level 5 • • • • • I I Parameter selection menu I Execute requested function Figure 5. Menu selection hierarchy c 34 SC34-0313 o Session Manager Pr;mary opt;on Menu The primary option menu provides nine options as shown in Figure 6. The session manager automatically positions the cursor to accept input. Type in the desired option number and press the ENTER key. The function of each primary option is discussed in the following pages. $SMMPRIM: SESSION MANAGER PRIMARY OPTION MENU ---------ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN SELECT OPTION ==> 19:42:07 07/13/79 USER , C ~ 1 2 3 4 5 6 7 8 9 - TEXT EDITING PROGRAM PREPARATION DATA MANAGEMENT UTILITIES TERMINAL UTILITIES GRAPHICS UTILITIES EXEC PROGRAM/UTILITY EXEC $JOBUTIL PROC COMMUNICATION UTILITIES DIAGNOSTIC UTILITIES Figure 6. Primary option menu Chapter 3. The Session Manager 35 ( Sess;on Manager Secondary Option Menus o Option 1 - Text Editing Th is opt i on requ i res no further parameter input. When you select this option, the session manager loads the full screen text editor utility program $FSEDIT and passes control to it. The edit work data set used is the one automatically preallocated by the Session Manager. All further communication is directly between you and $FSEDIT. Commands for $FSEDIT can be found under "Primary Commands" on page 218. When $FSEDIT terminates, control returns to the session manager, the primary option menu is displayed, and another option can be selected. Option 2 - Program Preparation This option allows YOli to prepare programs for execution. By further spec if i cat i on on a secondary opt i on menu, programs can be assembled, compiled, linked, updated, or listed. A secondary option menu, as shown in Figure 7 on page 37, is displayed on the screen after you select the program preparation utilities opt i on from the pr i mary opt i on menu. You can select one of the 1 i sted ut i i i ty programs from it. A parameter selection menu is displayed based on which secondary option you select. The menu allows entry of required parameters such as: source input data set name, object output data set name, and assemb ler or camp i ler opt ions. The se lected parameters are saved from one session logon to the next. An example of the $EDXASM parameter menu is' shown in Figure 8 on page 38. Parameter menus for other program preparation utilities are similar and self explanatory. The required work data set for assemblers, compilers, and the linkage editor are preallocated by the session manager. 'You must allocate the object data set. The fo llow i ng programs can be invoked from th i s opt i on: $EDXASM Compiles Event Driven Language programs $SlASM Assembles macro assembler language programs $COBOl Camp i les COBOL programs 36 SC34-0313 o o Sess;on Manager $FORT Comp i les FORTRAN IV programs $LINK Link-edits program object modules $UPDATE Converts an object program to an executable program $UPDATEH Transmits and converts host assembled modules $PREFIND Locates program $PL/I Compiles PL/I programs data sets/overlays prior to loading a Opt ion 9 of the program preparat ion ut iii ties opt i on menu invokes the ut iii ties referenced in the sequence shown. You can pass parameters to those programs as needed. $SMM02 SESSION MANAGER PROGRAM PREPARATION OPTION MENU-ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN SELECT OPTION ==> o 1 2 3 4 5 6 7 8 9 10 - $EDXASM COMPILER $SlASM ASSEMBLER $COBOL COMPILER $FORT FORTRAN COMPILER $LINK LINKAGE EDITOR $UPDATE $UPDATEH (HOST) $PREFIND $EDXASM/$LINK/$UPDATE $PL/I COMPILER/$LINK/$UPDATE Figure 7. Program preparation utilities option menu o Chapter 3. The Session Manager 37 Sess;on Manager o $SMM0201: SESSION MANAGER $EDXASM PARAMETER INPUT MENU ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN SOURCE INPUT (NAME,VOlUME) ==> OBJECT OUTPUT CNAME,VOlUME) ==> ENTER OPTIONAL PARAMETERS BY POSITION==> 1--------2----------LIST PRINTER NAME NOlIST ERRORS DEFAULTS ARE: LIST $SYSPRTR Figure 8. $EDXASM parameter se lect i on menu I (~) Option 3 - Data Management This option allows you to invoke the following utilities: $DISKUTl Allocates and deletes data data $DISKUT2 Patches and dumps data sets $COPYUTl Cop i es data sets with output data set a llocat ion $COMPRES Compresses libraries $COPY Cop i es d i sk/d 1 skette data sets and vo I umes $DASDI Initializes, diskettes $INITDSK Initializes and storage volume $MOVEVOL Saves direct access multiple diskettes 38 SC34-0313 formats, sets; and verifies read-verifies volumes lists a whose directory disks direct SI ze or access requi res - :.,:' c o I Sessi on Manager -, $IAMUTl Builds and maintains Indexed Access Method data sets $TAPEUTl Allocates tape data sets, cop i es data sets or volumes from disk/diskette to tape, from tape to disk/diskette, or tape to tape, and changes tape attributes. A secondary option menu, as shown in Figure 9, is displayed on the screen after you select the data management option from the pr i mary opt i on menu. You can se I ect one of the listed ut iii ties from it. $SMM03 SESSION MANAGER DATA MANAGEMENT OPTION MENU------" ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN SELECT OPTION ==> 1 2 3 4 5 6 7 8 9 10 - $DISKUTl $DISKUT2 $COPYUTl $COMPRES $COPY $DASDI $INITDSK $MOVEVOL $IAMUTI $TAPEUT1 (ALLOCATE, LIST DIRECTORY) (DUMP/LIST DATA SETS) (COpy DATASETS/VOLUMES) (COMPRESS A VOLUME) (COPY DISK/DISKETTE DATASET$/VOLUMES) (DISKCETTE) SURFACE INITIALIZATION) (INITIALIZE/VERIFY DISK/DISKETTES) (COpy DISK VOLUME TO MULTI-DISKETTES) (MAINTAIN INDEXED DATA SETS) CTAPE ALLOCATE, CHANGE, COPY) WHEN ENTERING THESE UTILITIES, THE USER IS EXPECTED TO ENTER A COMMAND. IF A QUESTION MARK (?) IS ENTERED INSTEAD OF A COMMAND, THE USER WILL BE PRESENTED WITH A LIST OF AVAILABLE COMMANDS. Figure 9. Data management option menu The $TAPEUT1 ut iii ty has been added to the secondary menu of the Data Management utilities for the Event Executive Version 2 (S719-UT4). opt i on Driven o Chapter 3. The Session Manager 39 [ Sess i on Manager () Option 4 - Terminal Utilities This option allows you to invoke the following grams: utility pro- $TERMUTl Alters logical device names, address assignments, or terminal configuration parameters $TERMUT2 Defines routines and changes key definitions on the 4978 keyboard. Restores the 4974 pr inter to the standard character set. $TERMUT3 Sends a single line message from another $IMAGE Defines formatted screen images for the 4978 or 4979 display terminals $FONT Modifies terminal $PFMAP Identifies terminal character program image tables function keys one terminal to for the 4978 on the 4978 A secondary option menu, as shown in Figure 10 on page 41, is displayed on the screen after you select the terminal utilities option from the primary option menu. You can select one of the listed ut iIi ty programs from it. Option 5 - Graphics Utilities Th i s opt i on allows you to invoke ut iii ties to generate, store" and display information graphically or in reports. The followi ng ut iii ty programs can be invoked from th i s opt ion: $DIUTIL Performs uti lity functions on a display data base $DICOMP Composes existing display profi les and adds new ones $DIINTR Generates the requested display A secondary option menu, as shown in Figure lion page 41, is displayed on the screen after you select the graphic utilities option from the primary option menu. You can select one of the listed ut iIi ty programs from it. 40 SC34-0313 c Session Manager o $SMM04 SESSION MANAGER TERMINAL UTILITIES OPTION MENU--ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN SELECT OPTION ==> 1 2 3 4 5 - $TERMUTl $TERMUT2 $TER~'UT3 $IMAGE $FONT 6 - $PFMAP (TERMINAL CONFIGURATOR) (4978 KEYBOARD DEFINE) (TERMINAL MESSAGE SENDER) (SCREEN FORMAT BUILDER) (CREATE/MODIFY CHARACTER IMAGES) (DISPLAY PF KEY CODES) WHEN ENTERING THESE UTILITIES, THE USER IS EXPECTED TO ENTER A COMMAND. IF A QUESTION MARK (?) IS ENTERED INSTEAD OF A COMMAND, THE USER WILL BE PRESENTED WITH A LIST OF AVAILABLE COMMANDS. Figure 10. Terminal utilities option menu $SMM05 SESSION MANAGER GRAPHICS UTILITIES OPTION MENU-ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN SELECT OPTION ==> 1 - $DIUTIl 2 - $DICOt1P 3 - $DIINTR (GRAPHICS ORGANIZOR) (GRAPHICS COMPOSER) (GRAPHICS INTERPRETER) WHEN ENTERING THESE UTILITIES, THE USER IS EXPECTED TO ENTER A COMMAND. IF A QUESTION MARK (?) IS ENTERED INSTEAD OF A COMMAND, THE USER WILL BE PRESENTED WITH A LIST OF AVAILABLE COMMANDS. Figure 11. Graphics utilities option menu Option 6 - Execute Program o This option allows you to execute any program. The program can be a system program or utility, or one of your application programs. The parameter selection menu has provision for specifyi ng the parameters and data sets that the program may need. Chapter 3. The Session Manager 41 Sess·i on Manager Option 7 - () Execute $JOBUTIl Procedure This option allows the submission of previously built procedures to the job stream processor uti lity $JOBUTIL. A parameter selection menu allows entry of the procedure name and volume name it res i des on. The procedure cannot invoke the name of another procedure. Option 8 - Communications Utilities This option programs: allows yoU to invoke the following $BSCTRCE Traces the I/O act i vi ties on synchronous communications line $BSCUTl Formats binary synchronous trace files to either a pr inter or a termi nal . $BSCUT2 a given utility binary Exercises BSCAM capabilities $RJE27BO S.i.mulates a 2780 RJE interface $R..)E3780 Simulates a 3780 RJE interface $PRT2780 Prints spool records produced by $RJE2780· $PRT3780 Prints spool records produced by $RJE3780 $HCFUTI Interacts with the Host Communications Facility A secondary option menu, as shown displayed on the screen after you ut iIi ty opt i on from the pr i mary opt of the listed ut iii ty programs from o in Figure 12 on page 43 is select the communications i on menu. You can select one it. o 42 SC34-0313 I o Session Manager $SMM08 SESSION MANAGER COMMUNICATION UTILITIES OPTION MENU ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN SELECT OPTION ==> 1 2 3 4 5 6 7 8 - $BSCTRACE $BSCUTI $BSCUT2 $RJE2780 $RJE3780 $PRT2780 $PRT3780 $HCFUTI (TRACE BSCAM LINES) (PRINT TRACE FILE) (SSC EXERCISER) (2780 RJE TO HOST) (3780 RJE TO HOST) (2780 SPOOLED RJE FILE PRINTER) (3780 SPOOLED RJE FILE PRINTER) (HOST COMMUNICATIONS FACILITY) WHEN ENTERING THESE UTILITIES, THE USER IS EXPECTED TO ENTER A COMMAND. IF A QUESTION MARK (?) IS ENTERED INSTEAD OF A COMMAND, THE USER WILL BE PRESENTED WITH A LIST OF AVAILABLE COMMANDS. Figure 12. Communications utilities option menu C~ / Option 9 - Diagnostic Utilities This option programs: o allows you to invoke the following utility STRAP Saves the env ironment ina data set incase of error $DUMP Formats and d i SLOG Logs I/O errors into a data set $DISKUT2 Formats and d i sp lays the log data set on a pr inter or terminal SlOTEST Tests sensor-based operations; configuration and volumes SP lays the data saved by $TRAP lists system A secondary option menu, as shown in Figure 13 on page 44 is d i sp 1 ayed on the screen after you se lect the d i agnost i c ut i i i ty option from the primary option menu. You can select one of the 1 i sted ut iii ty programs from it. Chapter 3. The Session Manager 43 Sess;on Manager o $SMM09 SESSION MANAGER DIAGNOSTIC AIDS OPTION MENU -ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN SELECT OPTION ==> 1 - $TRAP 2 3 4 5 - $DUMP $LOG $DISKUT2 $IOTEST (CAPTURE PROGRAM INFORMATION TO DATA SET) (FORMATTED STORAGE/REGISTER (I/O ERROR LOGGING) (DUMP/PATCH DISK(ETTE) UTILITY (SENSOR I/O DEVICE EXERCISOR) WHEN ENTERING THESE UTILITIES, THE USER IS EXPECTED TO ENTER A COMMAND. IF A QUESTION MARK (1) IS ENTERED INSTEAD OF A COMMAND, THE USER WILL BE PRESENTED WITH A LIST OF AVAILABLE COMMANDS. Figure 13. Diagnostic aids utilities option menu A parameter selection menu, as shown in Figure 14 is displayed on the screen after you select the STRAP utility. Use the menu to enter the name of the data set to be used by $TRAP and the name of the vo lume conta i n i ng the data set. /1', \i:U) $SMM0901: SESSION MANAGER STRAP PARAMETER INPUT MENU ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN $TRAP DUMP DATASET (NAME,VOLUME)==> Figure 14. $TRAP parameter select i on menu A parameter selection menu, as shown in Figure 15 on page 45 is displayed on the screen after you select the SDUMP uti lity. Use the menu to enter the name of the data set to be used for the dump and the name of the volume containing the data set. o 44 SC34-0313 Session Manager o $SMM0902: SESSION MANAGER $DUMP PARAMETER INPUT MENU --ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN $DUMP DUMP DATASET (NAME,VOLUME)==> Figure 15. $DUMP parameter selection menu A parameter selection menu, as shown in Figure 16 is displayed on the screen after you select the $LOG uti lity. Use the menu to enter the name of the data set to be used by $lOG and the name of the vo 1 ume conta i n i ng the data set. o $SMM0903: SESSION MANAGER $LOG PARAMETER INPUT MENU -ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN $LOG LOG DATASET (NAME,VOLUME)==> Figure 16. $LOG parameter selection menu o Chapter 3. The Session Manager 45 Session Manager Menu 'opt; on Comb i nat; ons () When se lect i ng a pr i mary opt ion, the secondary opt i on, if applicable, can also be entered. This results in the secondary option being invoked without display of the secondary option menu. The secondary opt i on is separated from the pr i mary opt ion by a period. Example: To request an assembly from the primary option menu, enter 2.1 as the selected option. You have selected primary opt i on 2 (program preparat ion) and its secondary opt ion '1 ($EDXASM - compile Event Driven Language program). The next menu displayed is the parameter selection menu ($SMM0201) for the compiler $EDXASM. utilities Not Supported by Session Manager Menus The following uti llty programs are not supported by the Session Manager menus: $DEBUG $DISKUT3 $EDITI $EDITIN $EDXLIST $PDS The Multiple Terminal Manager utilities The Remote Management ut iii ty ($RMU) o ·Wi th the except i on of $DISKUT3 and $PDS, these ut iIi ty programs can be invoked by enter i ng the operator command $L (Load a Program) and the utility name. $DISKUT3 and $PDS can only be used from a program us i ng the LOAD instruct i on and are documented in the System Guide. $RMU is documented in the Communications and Terminal Applications Guide. c 46 SC34-0313 o CHAPTER 4. THE UTILITIES The utilities are a set of programs supplied with the Event Driven Executive system that allow you to interactively commun i cate with the system and perform many funct ions necessary for Series/l application program development and system maintenance. INVOKING THE UTILITIES To aid you in performing utility functions, the Event Driven Execut i ve system prov i des three ways to invoke the ut iii ty programs from a termi nal: (j: • The session manager - You choose the desired utility program from a predefined option menu provided. Most utilities can be invoked in this manner. This is the easiest to use for interactive utilities because you need only enter option numbers (not program names) to access the function needed. • $JOBUTIL - The job stream processor utility can be used to invoke a predefined sequence of pro 9 ramp rep a rat ion uti I i ties and pass parameters to them. $JOBUTIl can itself be invoked by the sess i on manager. • $l command - Enter the operator command $~ (Load program), followed by the name of the utility of your choice. All utilities described in this book can be invoked in this manner. Most utility programs are used interactively from a terminal. After a utility program is invoked, you can list its defined operations and command codes by entering a question mark in response to the' COMMAND (?):' prompt. o Chapter 4. The utilities 47 SUGGESTED UTILITY USAGE TABLE o The following table is intended to help you find the appropriate utility program and command to perform the function that you want to accomplish. To use it, find the activity and function that you want to do in the left columns; the corresponding utility and command to accomplish the function are in the right columns. The program name indicated can be used on the $L command to load that utility program. When using the session manager, the menu option corresponding to the program name on the secondary option menu can be selected to access the program. The command indicated is used to direct the utility to perform the desired function. c 48 SC34-0313 C \,',' ACTIVITY FUNCTION UTILITY Activate Error logging stopped task TRAP function of storage dump SLOG $DEBUG SLOGaN GO STRAP TRAPON Data set SDISKUT1 SDIUTIL SIAMUTI STAPEUTI AL AL CR TA SDICOMP AD $DASDI 3,1 $TERMUT2 AD SDUMP SFSEDIT $COPYUTI SDISKUTI $DISKUT2 $DISKUT2 CA CA CA CA CA CA $EDXASM CA STERt1UTl $DEBUG $OEBUG RA QUALIFY GOTD $OICOMP AL,IN $TERMUTl $UPDATEH RH CH $TER~'UT2 $TERMUTI C RE $TERMUTI CT Allocate A new data set in a data base for a graphics display profile Assign Cancel Change . 0 Alternate for defective 4963 sector DEFINE key i n a 4978 control store Dump List option ~1ultiple member Multiple member Multiple record Multiple record copy list dump list $EDXASM assembly of EDL Address assignment of a terminal Base address Execution sequence Graphic or report display profile H~rdcopy device associated with 4978/4979 Host library Key definition in a 4978 control store Name of logical device Page formatting parameters of a terminal COMMAND '1,,'''', v, Chapter 4. The Utilities 49 Utilities ACTIVITY FUNCTION UTILITY COMMAND Change Series/l library Tape drive attributes Trap function of storage dump Volume $UPDATEH $TAPEUTI CV CT $TRAP $DISKUTI $DISKUT2 $UPDATE $TRAPEND CV CV CV Clear Data set to zero $DISKUT2 CD Compress Graphics data base Library $DIUTIL $COMPRES CP None COpy All of data set to existing data set Part of data set to existing data set All of disk or diskette data set to tape data set A tape data set to disk or diskette data set A tape data set to another tape data set Absolute Entire disk or diskette volume Member with allocation Member from graphic source data base to target data base All members with allocation Data members with allocation Program members with allocation Generic members with allocation Non-generic members with allocation $COPY CD $COPY CD $TAPEUTI CD $TAPEUTI CD $TAPEUTI $COPY CD CD $COPY $COPYUTI CV CM $DIUTIL CM $COPYUTI CALL $COPYUTI CAD $COPYUTI CAP $COPYUTI CG $COPYUTI eNG c 50 SC34-0313 o ACTIVITY FUNCTION Define Indexed Access Method data set Formatted screen: - image dimensions - horizontal tab - vertical tab - null representation Delete Member Prefound status of data sets and overlays Direct Output to $SVSPRNT Output to terminal Display o 4978 program function keys Character image table Contents of storage or registers Graphics or report display profile Header of a data member in graphics data base Indexed Access Method SE command parameters Members in graphics data base Status of all tasks Status of current graphics data base Volume information UTILITY COMMAND $IAMUTI OF $IMAGE $IMAGE $IMAGE $IMAGE DIMS HTAB VTAB NULL $DISKUTI $DIUTIL DE DE $PREFIND DE $DISKUTI $DISKUT2 $DISKUTI $DISKUT2 LISTP PL LISTT LL $PFMAP $FONT Each key DISP $DEBUG LIST $DIINTR None $DIUTIL LH $IAMUTI 01 $DIUTIL $DEBUG LA WHERE $OIUTIL $IOTEST ST VI o Chapter 4. The utilities 51 utilities o ACTIVITY FUNCTION PROGRAM Dump Data set or program on printer $DISKUT2 $DICOMP $DUMP $DISKUT2 $DICOMP $DUMP DP PR None DU PR None Tape on printer or terminal $TAPEUTI DP Tape to verify it i s executing correctly and surface is free of defects $TAPEUTI EX Graphic or report display profile $DIINTR None $COPY $COPYUTI $DICOMP $DISKUTI $DISKUT2 $DIUTIL $FONT $FSEDIT $IAMUTI $ I~1AGE $INITDSK $IOfEST $PREFIND $TAPEUTI $TERHUTI $TERMUT2 $lJPDATE $UPDATEH ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Data set or program on console Exercise Generate Help With With '~i t h With With With With With With loJ i t h With With ,oJ i t h With With With With With use use use use use use use use use use use use use use use use use use of of of of of of of of of of of of of of of of of of $COPY $COPYUTI $DICOMP $DISKUTI $DISKUT2 $DIUTIL $FONT $FSEDIT $IAMUTI $IMAGE $INITDSK $IOTEST $PREFIND $TAPEUTI $TERMUTI $TERMUT2 $UPDATE $UPDATEH COMMAND c 52 SC34-0313 utilities o ACTIVITY FUNCTION Initialize Disk Diskette For use with Event Driven Executive Graphics data base Log data set Tape List load Log All members in volume All members (CTS mode) Breakpoints/trace ranges Data members (CTS mode) Data members in volume Data set on printer Data set on console Devices supported by system Hardware configuration Log on printer Log on console One member Program function keys Program members (CTS mode) Program members in volume Space available Terminal names/types/ addresses Through volumes UTILITY COMMAND $DASDI SDASDI 2 1 SINITDSK SDIUTIL $LOG STAPEUTI I IN $LOGINIT IT SDISKUTI $DISKUTI $OESUG $DISKUTI SDISKUTI $DISKUT2 $OISKUT2 LA LACTS BP LDCTS LO LP LU SIOTEST $IOTEST $OISKUT2 $OlSKUT2 $OISKUTI $IMAGE LS LD PL LL LM KEYS $DISKUTI SDISKUTI SDISKUTI LPCTS LP LS $TERMUTI $OISKUTI LA $TERMUT2 LC LV A 4978 control store from a direct access data set Character image table into a 4978 Indexed Access Method data set $FONT PUT $IAMUTI LO I/O errors into disk or diskette data set $LOG $LOGON o Chapter 4. The Utilities 53 utilities o ACTIVITY FUNCTION UTILITY Move Graphics data base from on~ volum~ to another Tape forward or back $OIUTIL $TAPEUTI MD MT Data set or program Storage or registers $OISKUT2 $OEBUG PA PATCH $PREFINO PF An event or process interrupt $OEBUG POST Map of 4963 alternate sectors $OASDI 3,3 Pulse A digital output address $IOTEST PO Read Character image table from 4978 Analog input Program $FONT $IOTEST $UPDATE $UPDATEH $tOTEST GET AI RP RP $IOTEST XI $DISKUTI RE $DIUTIL RE Patch Preallocate Data sE:lts and overlays Post Print Digital input Digital input using external ,sync Rename Member Display profile identification name Remove Breakpoints/tr~ce Reset Indexed Acpe!is Metho~ ECHO mode Indexed Access Method SE command parameters ranges Reorganize Indexed Acee$is Method data set $OEBUG COMMAND 01 OFF $IAMUTl EC $IAMUTl RE $IAMUTI RO o 54 SC34-0313 utilities o ACTIVITY FUNCTION Restore Assigned 4963 alternate sector Disk volume from diskettes Disk or diskette volume from tape 4974 printer to the standard character set UTILITY Rewind Tape Tape and place offline Save A 4978 control store into a direct access data set Character image table Cont.ents of hardware registers and main storage in disk or diskette data set Disk volume on diskettes Disk or diskette volumes on tape Formatted screen image on disk o Send A single line message to another terminal COMMAND $DASDI 3,2 $MOVEVOL None $TAPEUTI RT $TERMUT2 RE $TAPEUTI $TAPEUTI MT NT $TERMUT2 $FONT SC SAVE $TRAP $MOVEVOL None None $TAPEUTI ST $IMAGE SAVE $TERMUT3 None $DEBUG AT Breakpoints/trace ranges Indexed Access Method ECHO mode Indexed Access Method SE command parameters Tape offline $IAMUTI EC $IAMUTI $TAPEUTI SE MT Terminate Logging $LOG $LOGTERM Test Generated report or graphic display profile member Process interrupt for occurrence of an event $DICOMP TO $IOTEST PI,SG,SB Set o Chapter 4. The Utilities 55 utH;thSJ 0,j ~l COMMAND ACTIVITY FUNCTION UTILITY Unload Indexed Access Method data set $IAMUTI UN $INITDSK V $TAPEUTI EX $TAPEtJTl EX $IOTEST DO $IOTEST $TAPEUTI XO MT Verify Write ReadClbilityof disk or diskette datCl set Tape executing correctly Tape surface free of defects A hex value to a DO address Digital output using external sync Tapemark c 56 SC34-0313 o $COt1PRES $COMPRES - COMPRESS LIBRARY $COMPRES compresses a library on disk or diskette. It is used so that new data sets can be allocated when a library is fragmented (due to deletion of data sets). Caution: • Do not compress a 11 brary wh i Ie it is be i ng accessed. • You must IPL the system after using $COMPRES if the volume that was compressed conta i ns the superv i sor ($EDXNUC). The following is an example of using the $COMPRES utility. In response to the prompting message >, the $A operator command determi nes if another program; s act i ve and the $L operator command invokes the $COMPRES uti lity. o Chapter 4. The utilities 57 [ $COMPRES 1 Examp'le > $A PROGRAMS AT 08:14:19 IN PARTITION is NONE > $L PGMCNAME,VOLUME): $COMPRES $COMPRES I1P,14.00.35, LP=4COO COMPRESS SYSTEM LIBRARY WARNING! SHOULD BE RUN ONLY WHEN NO OTHER PROGRAMS ARE ACTIVE VOLUME LABEL = EDX001 COMPRESS LIBRARY ON EDX001? Y $EDXNUC COPIED $INITIAL COPIED $UPDATE COPIED $COMPRES COPIED $DISKUTI COPIED $DISKUT2 COPIED $COPY COPIED. LIBRARY COMPRESSED o ANOTHER VOLUME? N $COMPRES ENDED AT 14.05.03 () 58 SC34-0313 o $COPY $COPY - COpy DATA SET $COPY cop i as a disk or diskettE! data set, in part or in its entirety, to another disk or diskette data set. Source and target data sets must have the same organization; the need not be on the same disk or diskette drive or volume. You can specify the number of records of the source data set to copy and the relative starting record in each data set to begin copying. All target data sets must have beeh prea llocated us i ng $DISKUTI. Piirt i al copy is only permi tted if the data set organization is of type DO (Direct Organization, see $DISKUT1). Note: For any copying related to tape, see "$TAPEUTl Management" on page 311 Tape $COPY Commands o The commands avai lable under $COPY are listed below. To display this list at your terminal, enter a question mark in response to the prompt i ng message COMMAND (1):. COMMAND (1): ? CD - COPY DATA SET CV - COpy VOLUME RE - COpy FROM BASIC EXCHANGE WE - COpy TO BASIC EXCHANGE (-CA- WILL CANCEL) EN - END PROGRAM COMMAND (1): After the commands are displayed, you are again prompted with COMMAND (1):. You respond with the command of your choice (for e)(ample, CO). Absolute Record Copy o An a b sol ute r e e or d eo py i n g fun c t 1on i sal so pro v ; de d as par t 0 f the Copy Data (CD) command. See the data set naming conventions in the System Gyid~. for a description of the special data set names, $$EDXVOL and $$EDXLIB, which are used when do i n gab sol ute r e e 0 r d and bas ice x t h an ge cop yin g • Chapter 4. The Utilities 59 $COPY Volume COpy o $COPY can be used to copy an ent ire disk or diskette vo I ume for the purpose of creating new or backup volumes .• See the System Guide for an explanation of disk and diskette organization. Bas; c Exchange Di skette Data Set COpy. $COPY can be used to read a basic exchange data set from a diskette and write it to a disk dat.a set, or write a disk data set to ab a sic e xc han g e d a t a set 0 n d 1. s k e t t e • All data sets must exist before the copy operation. Only one sided, 128-byte diskettes can be used. The Event Driven Executive recognizes only one volume on a diskette. $COPY prompts you for the name of the basic exchange volume. The volume specified must already be varied online. You are prompted for the diskette bas i c exchange data set name. If you use $DASDI to format and initialize the basic exchange header on the diskette, a data set named DATA will be automatically allocated. If you use $INITDSK to initialze the volume directory, the data set name becomes EDXLIB. DATA consists of all the data tracks on the diskette. A record size of 128 bytes must be specified. 1. Errors may occur if the diskette contains uninitialized HDR Is. Data on the diskette is read and wr i tten two sectors per I/O operat i on. 2. The diskette data set accessed must start on an odd sector boundary. You can control the location in the disk data set where data is read or wr i tten by enter 1 ng the start 1 ng and end 1 ng record numbers when prompted for that i nformat 10n. The following error message is issued if the output data set is too small to accommodate the amount of data to be copied from the i n put data set. DATA SET TOO SMALL When the output data set is on disk ord i skette, the end of data po inters are updated. 60 SC34-0313 c o $COPY Examples CD - COpy Ent 1 re Data Set COMMAND (?): CD SOURCE (NAME,VOLUME): DATAFILl COpy ENTIRE DATA SET? Y TARGET (NAME,VOLUME): DATAFIL1,EDX002 ARE ALL PARAMETERS CORRECT? Y COPY COMPLETE 50 RECORDS COPIED COMMAND (?): CD - Copy Where Rece 1 vi n9 Member Is Too Sma 11 COM~'AND (?): CD SOURCE (NAME,VOLUME): DATAFILl COpy ENTIRE DATA SET? Y TARGET (NAME,VOlUME): DATAFIL2 ***TARGET DATA SET TOO SMAll*** ***COPY REQUEST CANCEllED*** Note: No data is copied in this case 0 ',· ,I Chapter 4. The Utilities 61 $COPY () CD - Copy A Part i a 1 Data Set COMMAND (1): CD SOURCE (NAME,VOLUME): DATAFILl COpy ENTIRE DATA SET? N FIRST RECORD: 1 LAST RECORD: 3 TARGET (NAME,VOlUME): DATAFIL2 FIRST RECORD: 1 ARE ALL PARAMETERS CORRECT? Y COpy COMPLETE 3 RECORDS COPIED COMMAND C?): CV - COPy A Dj skette To A Backup Data Set On 4962 Dj sk COMMAND (?): CV COpy VOLUME ENTER SOURCE VOLUME: EDXOOl ENTER TARGET VOLUME: EDX002 ENTER TARGET DATA SET NAME - eDXOOl ARE ALL PARAMETERS CORRECT? y COpy COMPLETE 949 RECORDS COPIED COMMAND o (?): The CV command copies the entire diskette volume. Therefore the target data set on the 4962 disk must equal the diskette size in reco rds; 949 records for Diskette 1, 1924 records for D i skette2. Use $DISKUTl to a llocate the data set on the disk. p o 62 SC34-0313 $COPY RE - COPY A Basic Exchange Diskette Data Set To Disk COMMAND (1): RE SOURCE ($$EDXVOL,VOLUME): $$EDXVOL,BASIC TARGET (NAME,VOLUME): DATAFIL1,EDX002 SPECIFY START/END? Y/N: N ENTER BASIC EXCHANGE DATA SET NAME: DATA NUMBER OF RECORDS COPIED: 52 COpy COMPLETED COMMAND (?): WE - Copy A D j sk Data Set To A Bas i c Exchange Diskette ,0 COMMAND (1): WE SOURCE (NAME,VOLUME): DATAFIL1,EDX002 SPECIFY START/END? Y/N: N TARGET ($$EDXVOL,VOLUME): $$EDXVOL,BASIC ENTER BASIC EXCHANGE DATA SET NAME: DATA COPY COMPLETED COMMAND (?): o Chapter 4. The Utilities 63 $COPYUTl o $COPYUTl - COpy DATA SET WITH ALLOCATION $COPYUTI performs .several related COpy functions. These functions determine the size and organization of the source data set to be copied, allocates a member on the target volume, and then cop i es the source member to the target member. If a member already exists on the target volume, it is deleted, reallocated, and the new source copied to the target volume. There are no prompting messages asking if you wish to replace the existing member. ~§tut;on: Jiote: For any copying related to tape, see "$TAPEUTI Management" on page 311 - Tape $COPYUTl Commands The commands avai lable under $COPYUTI are listed below. To display this list at your terminal, enter a question mark in response to the prompt i ng message COMMAND (?):. ('~ O.. / COMMAND (1): ? CM---COPY MEMBER FROM SOURCE TO TARGET ------ MULTIPLE COPY COMMANDS----CALL--COPV ALL MEMBERS FROM SOURCE TO TARGET CAD---COPY ALL DATA MEMBERS FROM SOURCE TO TARGET CAP--~COPY ALL PROGRAMS FROM SOURCE TO TARGET CG----COPY ALL MEMBERS S~rARTING WITH TEXT FROM ••• CNG---COPY ALL MEMBERS NOT STARTING WITH TEXT FROM ------END OF MULTIPLE COpy COMMANDS----SQ----SET PROMPT MODE FOR ALL MULTIPLE COPY COMMANDS NQ----RESET PROMPT MODE FOR ALL MULTIPLE COpy COMMANDS --CA-- WILL CANCEL MULTIPLE COpy COMMANDS CV---CHANGE SOURCE AND TARGET VOLUMES EN---END PROGRAM ? ---HELP COMMAND (?): After the commands are displayed, you are ag~in prompted with COMMAND (1):. You respond with the command of your cho i ce (for example, CM). 64 SC34-0313 o o $COPYUTl The fo llow i ng commands mod i fy the way the mu 1 tip Ie copy commands work; if needed, they must be entered before you start a multiple copy function. SQ You are asked if you want to copy the current member. NQ No quest ions are asked. All matched members This is the default. are cop i ed. The following keyboard function is invoked with the ATTENTION key. (It is not a command.) CA If entered, CA stops the multiple copy after the current member is cop i ed. When $COPYUTI is loaded, the source and target volumes are set to the IPl volume. You can then change the source and target volumes. Once the volumes are set, the copy commands copy members from the source volume to the target volume unti I you do a CV to change a volume. () The CG (copy gener i c) and CNG (copy not gener i c) commands prompt you for a text string. The source volume directory is then searched for names beginning with this text string. Use CG to copy only those members beginning with the text string. Use CNG to copy only those members that do not begin with the text string. If the multiple copy commands stop because the target volume is full, you can mount a new volume and continue the copy. Thus, you can create a disk backup spanning several diskettes. The actua I copy process may take longer than with the ut iii ty $MOVEVOl, but may use fewer diskettes as only members are copied. In addition, single and double-sided diskettes can be intermixed. Since $COPYUTI deletes a member if it already exists, the multiple copy functions run faster if the target volume does not contain the same member names. If you are creating a new volume, use $INITDSK to start with an empty target volume. The multiple copy commands will not copy the supervisor ($EDXNUC). Th is prevents the inadvertent loss of a ta i lored supervisor. Furthermore, since the supervisor is allocated when the disk is initialized, the eM command will not allocate $EDXNUe on the target volume. It will copy $EDXNUe from source to target but only if the size of $EDXNUe on the target is the same size as on the source. o Chapter 4. The utilities 65 No absolute record copy from disk or diskette is provided. Ther.fore the s~etial names $$, $$EDXLIB, $$EDXVOL are hot allowed. The $COPV utility provides ~n absolute copy by.record number. o o o $COPYUTl Example > $L $COPYUTI $COPYUTI 35P,ll:l6:57, LP= 6900 ** WARNING ** MEMBERS ON TARGET VOLUME WILL BE DELETED. REALLOCATION AND COPYING OF MEMBERS IS DEPENDENT ON SUFFICIENT CONTIGUOUS SPACE. THE DEFINED SOURCE VOLUME IS EDX003, OK ? Y THE DEFINED TARGET VOLUME IS EDX003, OK 1 N ENTER NEW TARGET VOLUME: MIKES MEMBER WILL BE COPIED FROM EDX003 TO MIKES OK?: Y COf1MAND ( ? ) : CM ENTER FROM(SOURCE) MEMBER: COFFEE ENTER TO (TARGET) MEMBER OR * FOR SAME NAME AS SOURCE:GO GO COpy COMPLETE 4 RECORDS COPIED COMMAND (?): CM LEM * LEM COPY COMPLETE 10 RECORDS COPIED COMMAND (?): CG o ENTER GENERIC TEXT: MIKE MIKEEDIT COpy COMPLETE MIKEANL COpy COMPLETE MIKEDATA COpy COMPLETE 54 RECORDS COPIED 13 RECORDS COPIED 50 RECORDS COPIED MIKENAME TOO LARGE TO COpy, ONLY 92 RECORDS LEFT IN LIB TARGET VOL IS FULL,DO YOU WISH TO CaNT ON A NEW VOL?: Y MOUNT NEW VOLUME AND DO A $VARYON THEN ENTER ATTN RESTART TO CONTINUE COPY > $VARYON 2 EDXOOI ONLINE > RESTART o THE DEFINED TARGET VOLUME IS MIKES, OK VOLUME NOT MOUNTED ENTER NEW TARGET VOLUME: EDXOOI MIKEl COpy COMPLETE 100 RECORDS COMMAND(l): SQ CON~'AND ( 1): CALL COpy TEMP ? Y TEMP COpy COMPLETE 40 RECORDS COpy EDITWORK 1 N COpy DATAFILE 1 Y DATAFILE COpy COMPLETE 110 RECORDS COMMAND (1): 1 y COPIED COPIED COPIED Chapter 4. The Utilities 67 o $DASDI - FORMAT DISK OR DISKETTE $DASDI initializes your 4962 or 4963 disk or formats diskettes on the 496(t or 4966 diskette un i ts. The ut i I j ty can be used online. When this utility is invoked, you are prompted for one of the following disk or diskette initialization option!;: • Option 1 - 4964,4966 diskette initialization • • Option 2 - 4962 disk initialization • Option 3 - 4963 disk initialization $DASDI must be loaded into part i t i on 1. C~ution: For disk initialization, a program tha~ accesses the disk being initialized should not be run concurrently with this utility. Diskette initialization can run concurrently with other programs. o Option 1 - 4964, 4966 Diskette Initialization Diskette Formats The $DASDI utility reformats single diskettes. Three formats are ava i lable: and double-sided 1. Format for use wi th the Ser i es/l Event Dr i ven Execut i ve 2. Format to the IBM Standard for Informat i on Interchange 3. Format entire diskette to 128,256, or 512 byte records. If you select the Event Driven Executive format, all tracks are formatted for 128 byte sectors. Also, cylinder 0 is formatted accord i ng to the IBM Standard for Informat i on Interchange. The assigned volume label is IBMEDX. Note: Use this format 128-byte sectors. if all cylinders are to be formatted to If you initialize according to the IBM Standard for Information Interchange, Cylinder 0 is formatted for 128-byte sectors, and the remaining cylinders are formatted for either 128-,256-, or 68 SC34-0313 o o SDASDI 5l2-byte records. You are asked to select the desired The assigned volume label is IBMEDX. size. When you initialize according to sector size, all cylinders are formatted to the si ze you select (128-, 256-, or 512-bytes). No volume labels, headers, or deleted records are written on Cylinder o. Caut; on: In th is format, the diskette is not usab Ie on an Event Dr i ven Execut i ve system except for reformatt i ng. Operating Characteristics You are asked to i dent i fy the diskette dr i ve by dev i ce address. The selected diskette drive is varied offline and a .warning message issued to you before proceeding. On a 4966, diskette initialization can be performed only on slot 1. You are then prompted to se lect the opt ions des ired. Comp let i on of the reformatt i ng is i nd i cated by the d i SP layed messages: 'IBMEDX VARIED ONLINE' 'FORMATTING COMPLETE' In the process of reformatting, a new volume label (IBMEDX) is written. Caut; on: Do not use $C to cance 1 formatt i ng ope rat i on. Enter> $DASDI to force term i nat ion. o Chapter 4. The Utilities 69 [$DASDI I () Examples Format Dis k e t t e f $OASDI 0 ,. Event D ,.~ n E x e cut i ve 15P,OO:28:55,LP= 7EOO DIRECT ACCESS DEVICE INITIALIZATION DISK INITIALIZATION OPTIONS: 1 = 4964, 4966 DISKETTE INITIALIZATION 2 = 4962 DISK INITIALIZATION 3 = 4963 DISK INITIALIZATION 4 = EXIT DISK INITIALIZATION ENTER DISK INITIALIZATION OPTION: 1 ********************************************** * * * * DISKETTE FORMATTING PROGRAM IF FORMATTING IS IN PROGRESS, DO NOT CANCEL ($C) THIS PROGRAM. INSTEAD, ENTER ATTN/$DASDI TO FORCE TERMINATION. * * * * ********************************************** ENTER DISKETTE ADDRESS IN HEX 12 INITIALIZE FOR USAGE WITH THE EVENT DRIVEN EXECUTIVE? Y EDX VARIED OFFLINE ** WARN1NG ** FORMATTING WILL DESTROY ALL DATA. CONTINUE? Y IBMEDX VARIED" ONLINE FORMATTING COMPLETE LOAD $INITDSK? Y $INITDSK 16P,OO:30:16, lP= 8000 COMMAND (?>: I LIBRARY INITIALIZATION l=ENTER VOLUME LABEL 2=ENTER DEVICE ADDRESS SELECT OPTION: 2 ENTER DEVICE ADDRESS IN HEX: 12 o 70 SC34-0313 o $DASDI ] Format Diskette for Event Drlven Executive (continued) WRITE VOLUME LABEL? Y ENTER DESIRED VOLUME LABEL (1-6 CHARACTERS) EDX ENTER OWNER ID (1-14 CHARACTERS): FCS LABEL WRITTEN CREATE A DIRECTORY? Y HOW MANY RECORDS IN DIRECTORY? (2 - 120): 13 MAXIMUM NO. OF MEMBERS = 102, OK? Y DO YOU WISH TO RESERVE SPACE FOR A NUCLEUS? Y ENTER MAXIMUM SIZE IN K-BYTES (16-64): 64 DIRECTORY INITIALIZED WRITE IPL TEXT? Y IPL TEXT WRITTEN COMMAND (?): EN $INITDSK ENDED AT 00:31:10 c ANOTHER DISKETTE? N $DASDI ENDED AT 00:31:15 o Chapter 4. The Utilities 71 $DAS~I 1 Format Diskette to IBM Standards for Information Interch~ng~ o ENTER DISKETTE ADDRESS IN HEX 02 INITIALIZE FOR USAGE WITH THE~ EVENT DRIVEN EXECUTIVE? N INITIALIZE TO STANDARDS FOR INFORMATION INTERCHANGE? Y SELECT SECTOR SIZE (1=128, 2=256, 3=512): 2 NND002 VARIED OFFLINE ** WARNING ** FORMATTING WILL DESTROY ALL DATA. CONTINUE? Y IBMEDX VARIED ONLINE FORMATTING COMPLETE ANOTHER DISKETTE? N $DASDI ENDED AT 00:44:30 Format Diskette to 128-, 256-, or 512-Byte Records ENTER DISKETTE ADDRESS IN HEX 02 INITIALIZE FOR USAGE WITH THE EVENT DRIVEN EXECUTIVE? N INITIALIZE TO STANDARDS FOR INFORMATION INTERCHANGE? N SELECT SECTOR SIZE (1=128, 2=256, 3=512): 3 ** WARNING ** FORMATTING WILL DESTROY ALL DATA. CONTINUE? Y FORMATTING COMPLETE ANOTHER DISKETTE? N $DASDI ENDED AT 01:01:27 c 72 SC34-0313 $DASDI o Option 2 - 4962 Disk Initialization The disk initialization utility for the 4962 initializes your disk, writes sector addresses on the entire volume, analyzes and locates defective sectors, and assigns alternate sectors. After initialization, the disk is ready for use with the Event Driven Executive. For a new disk device, initialization should be performed before the Event Driven Executive system is installed on it. When using this option, you are required to select one of two initialization types: • PI (primary) - initialize a disk for the first time or to completely reinitialize the disk. caution: This option rewrites the complete disk surface and destroys all data that may have been on the disk. • AS (alternate sector assignment) - assign alternate sectors without destroying the data currently on the disk. Use the AS option only when necessary. Cylinder 1 has a limited number of available alternate sectors. Once an alternate sector is assigned, it can only be recovered by writing all sector IDs during a primary initialization. H.o..:t~: () The PI option verifies and corrects sector IDs and analyzes the disk surface to find defective sectors. If the programmer's console is present, the data buffer displays the number of the cylinder currel,tly being initialized. If a defective sector is found, either on a movable or a fi xed head, an alternate sector is ass i gned from Cyl i nder 1 and a message is issued by the lit i 1ity. When an alternate sector is assigned, the sector ID of the defective sector references the location of its alternate on Cylinder 1. Defective sectors are marked defective. Skewed IDs are written where normal IDs fail. For a defective sector on Cylinder 0, an alternate good sector under the same head on Cyl i nder 0 is reass i gned to the defect i ve sector. The AS option forces the assignment of alternate sectors without destruction of data on the disk. $DASDI tries to move data from the defective sector to its assigned alternate. If data recovery fails, $DASDI issues a message. and the alternate data field is flagged with one bits (hexadecimal FFFF). If an already ass i gned alternate is found defect i ve, it is marked defective and a new alternate is assigned. Data recovery is attempted in th i s case a Iso. o Chapter 4. The Utilities 73 $DASDI The number of alternate sectors avallable on Cyl inder 1 depends on the 4962 model: Model Capacity 9.3 MB 13.9 MB () Alternates 120 180 o 74 SC34-0313 $DASDI o Examples Primary Initialization of a 49§2Disk $DASDI I5P,OO:28:55,LP=7EOO DIRECT ACCESS DEVICE INITIALIZATION DISK INITIALIZATION OPTIONS: I = 4964, 4966 DISKETTE INITIALIZATION 2 = 4962 DISK INITIALIZATION 3 = 4963 DISK INITIALIZATION 4 = EXIT DISK INITIALIZATION ENTER DISK INITIALIZATION OPTION: 2 ******************************************************* * * * * WARNING NO USER PROGRAM SHOULD BE RUNNING WHILE PERFORMING DISK INITIALIZATION * * ******************************************************* DISK INITIALIZATION STARTED ENTER DEVICE ADDRESS - NNN: 003 , 0 ENTER INITIALIZATION TYPE - PI OR AS: PI )/ ENTER INITIALIZATION MODE REMOVE PREVIOUS ••. DEFECTIVE SECTOR FLAGS? YiN: NO I nth e abo vee xamp 1 e, you are pro mpte df 0 r the following: • Disk or diskette initialization option: 1,2, or 3 • Initialization type: PI for primary or AS sector • Initialization mode: for alternate NO - Retain defective flag,byte of each sector 10. YES - Rewrite sector flag IDs and reinitiali ze the flag byte where possible. Allows a disk with invalid sector flags to be initialized. o Ca u t ; 0 n : Respond YES only if you l\11 S ht 0 r e wr i tea 11 sector IDs. This causes the loss of any IBM facto~y assigned defect i ve sector flags. I f you respond YES, the fo llow i ng ver i fy operation occurs: Chapt~r 4. The Utilities 75 $DASDI FACTORY MARKED DEFECTIVES MAY BE LOST IS CHANGE OF REPLY DESIRED? YiN: NO NO Operation is to continue with flags considered invalid. YES A reprompt of the previous message results, allowing you to change the status of the defecti ve flags. The following message is repeated ass i gnment, i f any occur: ALTERNATE SECTOR ASSIGNED FOR for each alternate sector ccchss Note: ccchss=the address of the al ternate sector ass i gned. o 76 SC34-0313 $DASDI o I· Alternate Sector Ass i gnment on a 4962 Di sk $DASDI I5P,00:28:55,LP=1EOO DIRECT ACCESS DEVICE INITIALIZATION DISK INITIALIZATION OPTIONS: 1 = 4964, 4966 DISKETTE INITIALIZATION 2 = 4962 DISK INITIALIZATION 3 = 4963 DISK INITIALIZATION 4 = EXIT DISK INITIALIZATION ENTER DISK INITIALIZATION OPTION: 2 ******************************************************* * * * WARNING NO USER PROGRAM SHOULD BE RUNNING WHILE PERFORMING DISK INITIALIZATION * * * ******************************************************* DISK INITIALIZATION STARTED ENTER DEVICE ADDRESS - NNN: 003 ENTER INITIALIZATION TYPE - PI OR AS: AS o ALTERNATE SECTOR MODE ENTER SECTOR ADDRESS - CCCHSS The following message is displayed at your terminal indicating completion of the disk initialization. ALTERNATE SECTOR ASSIGNED FOR CCCHSS DISK INITIALIZATION COMPLETE $DASDI o ENDED AT 00:31:15 ccchss: The address of the sector presumed to be defect i ve. The utility assigns an alternate sector on Cylinder 1, then tries to move the data from the defect i ve sector, to the a I ternate sector. Alternates on Cylinder 0 are located on the same track and head as the defects on Cylinder O. This process may reveal that the sector 105 on Cyl i nder 0 are in an i ncons i stent cond i tion. Processing continues if possible. You cannot assign an alternate to a defective sector on Cylinder 1. Chapter 4. The Utilities 11 $DASDI Note: Theft xed head area is always referred to as Cylinder 303. You should consider that this cylinder contains eight heads (zero through seven). To refer to sector five under fixed head four, you would speci fy 303405 for ccchss. () The $DASDI utility program identifies and restores defective sectors on a 4963 disk device. The 4963 comes from the factory already formatted with all logical sector addresses assigned and tested and with alternates assigned to any defective sectors; you do not have to initialize a newly installed 4963. With this function, you are given the option of: • Identifying a specific sector as being defective, causing the uti lity to assign an alternate to it. • Restoring a previously identified defective sector, causing the uti lity to free its alternate. • Printing a map of all defective sectors, indicating if the defect i ve sector was factory or user i dent if i ed. Alternate sectors are ass i gned as fa llows: • If the primary alternate (the extra sector on the same track) is available, it is used as the alternate for the defective sector. • If the primary alternate is not available (either it is defective or already assigned), a secondary alternate is assigned from the nearest track under the movable heads having an avai lable primary alternate • .t:I 0 t e : The pr i mary a I t ern ate under a f i xed head i s ass i g ned to a sec tor t hat is u nd e r the sam e fix e d h e ad. When restoring sectors from defective status, $DASDI physically moves the sectors within the track to minimize the processing time between consecutive logical sectors. You cannot restore: • A factory ass i gned defect i ve sector • A primary defect (one that cause the sector for the t r a c kt 0 b e ass i g ned) 78 SC34-0313 primary alternate o o • A sector whose ID has been wr i tten extende«:J Examples InvQkjng 4963 Disk Initialization $DASDI ISP,OO:28:SS,LP=7EOO DIRECT ACCESS DEVICE INITIALIZATION DISK INITIALIZATION OPTIONS; 1 = 4964, 4966 DISKETTE INITIALIZATION 2 = 4962 DISK INITIALIZATION 3 = 496~ DISK INITIALIZATION 4 = EXIT DISK INITIALIZATION ENTER DISK INITIALIZATION OPTION: 3 ******************************************~************ * * * WARNING NO USER PROGRAM SHOULD BE RUNNING WHILE PERFORMING DISK INITIALIZATION * * * **********************************~******************** o DISK INITIALIZATION STARTED ENTER DEVICE ADDRESS - NNN: 048 AVAILABLE OPTIONS ARE: IDENTIFY DEFECTIVE SECTORCS) RESTORE DEFECTIVE SECTORCS) 3 ~ MAP DEFECTIVE SECTORCS) 4 - EXIT UTILITY THE 1 2 - ENTER OPTION: n The entry n must be Qne of the four options listed in the ~Om mand menu. You can choose to identify, restore, or map defect i ve sectors. The ut iIi ty termi nates when you enter Opt i on 4. o Chapter 4. The Utilitie$79 SDASDI Obta i n i ng Map of Defect i ve 4963 Sectors o ENTER OPTION: 3 DEFECT ALTERNATE EXTENDED 000101 020114 Assigning an Alternate Sector ENTER OPTION: 1 ENTER CCCHHSS OF SECTOR TO BE MARKED DEFECTIVE OR END: 0010205 ENTER 'V' TO ASSIGN ALTERNATE, ANYTHING ELSE TO CANCEL: Y ccchhss ASSIGNED ALTERNATE OF 0010205 rr,)· " '\Jl " ENTER CCCHHSS OF SECTOR TO BE MARKED DEFECTIVE OR END: END ENTER OPTION: Note: In the preceding example, the disk address for a 4963 is entered ~s a seven-digit number (0010205): the cylinder is 1 (001), the head is 2 (02), and the sector is 5 (05). c 80 SC34-0313 $DASDI o Re&tgrjog i' rr,vigyslX A=,signed Alt!!rnate Sector ENTER OPTION: 2 ENTER CCCHHSS OF SECTOR TO BE RESTORED OR END: 0010207 OOloa07 HAS BEEN RESTORED FROM ccchhss ENTER CCCHHSS OF SECTOR TO BE RESTORED OR END: END ENTER OPTION: 4 DISK INITIALIZATION ENDED $DASDI ENDED AT 01:01:27 o o Chapter 4. The Utilities 81 $DEBUG $DEBUG DEBUGGING TOOL () $DEBUG is a tool for locating errors in programs. By operating a program under control of $DEBUG, you can: • Stop the program each time execution reaches any of one or more instruction addresses that you have specified. These addresses are known as breakpo i nts. • List the contents of spec if i ed storage locat ions or reg i ster contents each ti me the program execut i on reaches one or more of your breakpo i nts. • Trace the f low of execut i on of instruct ions wi th i n the program by spec i fyi ng one or more ranges of instruct ion addresses (known as trace ranges). Each time the program executes an instruction within any of the specified trace ranges, the term ina I d i sp lays a message i dent i fy i ng the task name and the instruction address just executed. Optionally, program execution can be stopped after each instruct i on is executed with i n a trace range. Also, optionally, storage locations or register contents can be displayed on the terminal after the execution of each instruct i on wi th ina trace range. • Restart program execution at the breakpoint or trace range address where it is currently stopped. Or, in the case of Event Driven Language instructions, restart program execut i on at other than the next instruct i on. • List additional registers and storage location contents while the program is stopped at a breakpoint or at an instruction within a trace range. • Patch the contents of storage locat ions and reg i sters. i--~ ~J Using these functions, you can determine the results of computations performed by the program and the sequence of instruction execution within the program. You can also modify data or instruct ions of the program dur i ng execut i on. To use $DEBUG effectively, you must have a printed listing of the program to be debugged wh i ch shows the storage addresses of each instruction and data area of interest. To obtain such a listing, specify PRINT GEN in the source program, after the PROGRAM statement, at assembly time. A PRINT NOGEN should precede the PROGRAM statement to prevent the unnecessary printing of many system EQU statements, etc. For $EDXASM a satisfactory listing is produced by specifying LIST. 82 SC34-0313 c $DEBUG o Debug Usage Cons;derat;ons The program debug fac i i i ty aids in test i ng mu I t i tasked programs in a multiprogramming and multiuser environment. All of your interactions are via terminals and do not require the use of the mach i ne conso Ie. A summary of the maj or features of the $DEBUG program follows: Notes: 0 1. $DEBUG should be invoked from a terminal other than the one used by the program to be tested if the program uses 4978/4979 terminals in STATIC screen mode. 2. Mu I tip Ie breakpo i nts and trace ranges can be estab I i shed. 3. Several users can each use separate copies of $DEBUG concurrently, if sufficient storage is available. 4. Ser i es/1 assemb ler language as we 11 as Event language instruct ions can be traced and tested. 5• Both superv i sor and appl i cat i on programs can be debugged. 6• Task names are automaticallY obtained from the program to be tested. 7. Task reg i s t e r s i 1 and i 2 can be dis p lla ye d and mod i fie d • 8. Hardware reg i sters RO through displayed and modified. 9. Five different data formats are accepted by the list and patch functions. R7 and the IAR Dr i ven can be 10. No special preprocessing of a program is required to permit it to be debugged. 11. All address spec if i cat ions are made as shown in the program assembly listing without concern for the actual memory addresses where the program is loaded into storage for testing. 12. No processing overhead is incurred unless the hardware t rae e f eat u rei sen a b led • Eve nth en, the h a r d t'H) r e t race feature is only enabled for speci fic tasks. o 13. The debug facility can be activated for a program that is experiencing problems but was previously loaded without the debug facility. Chapter 4. The utilities 83 SOEBUG ] 1 4. Apr 0 g r. am can bed e bug g e d b y loa din g $ 0 E BUG fro mat e r min a I other than the one from which the program to be tested was loaded. o 15. Breakpoints or trace ranges specified during a debug session can be listed. 16. $OEBUG can only control the execution of programs containi ng no more than 20 tasks. The $OEBUG program can be used to test different types of programs. The mos·t: common usage is to debug app I i cat ion programs written using the Event Driven Language instruction set. However, it can also be used to test portions of application programs that are written in assembler language and portions of the sliPervisor program that are written in either Event Driven Language or Series/l assembler language. Testing of the supervisor should normally be required only if you are making your own modifications or additions to this program. You can use $OEBUG to debug overlay programs by loading the primary program that will subsequently load the overlay program to be debugged. Load $OEBUG after the overlay program is in storage. (For more information on debugging overlay programs that are part of the Event Driven Language compiler, $ E0 XAS M, ref e r tot h e I n t ern aID e.JLi..rul). T0 sus pen d e x e cut ion 0 f the overlay program so that $OEBUG can be loaded, enter a REAOTEXT or QUESTION as the first instruction of the overlay program. Multiple. Terminal Manager users should code a CALL ACTION instruction to provide the required function. When the overlay program is entered, it pauses at the first instruction and waits for input. At this point, load $OEBUG. This can be done from another terminal assigned to the same partition. Specify the overlay program name when prompted for the program name and indicate that no new copy of the overlay program is to be loaded. The $OEBUG utility can then be used to set breakpoints and perform other functions as requi red. If the overlay program causes a program check, it is cancelled by the system. If an overlay program terminates through a PROGSTOP or for any other reason and is reloaded by the primary program, any breakpoints or patches made prior to the termination are lost. Use of certa in capab i i i ties of $OEBUG requ i res a thorough knowledge of both the supervisor and debugging techniques. For example, altering the contents of storage locations occupied by the supervisor or contents of the Series/l hardware registers could have undesirable effects on the operation of the supervisor or application programs in operation concurrently with $DEBUG. 84 SC34-0313 c $DEBUG o Only those instructions that execute as part of a task can be debugged. Those port ions of the superv i sor program that service interrupts created by various hardware devices (disk, timers, terminals, etc) cannot be executed under control of $DEBUG. N~: start and Term;nat;on Procedure The primary method for activating the debug facility is to load $DEBUG and then specify the name of the program to be tested, when prompted CDBUGDEMO in the following example). $D.EBUG then loads your program, inserts a breakpoint at the first executable instruction, and notifies you that your program is stopped at this point. For example: > $L $DEBUG $DEBUG 26P,09:10:17, LP=5200 PROGRAM NAME: DBUGDEMO DBUGDEMO 4P,09:10:28, LP=6700 DBUGDEMO STOPPED AT 009E o Chapter 4. The Utilities 85 SDEBUG O ·'~' $DEBUG Commands , ' The following commands are avai lable: AT BP END GO GO TO HELP LIST OFF PATCH POST QUALIFY WHERE - Set breakpoints and trace ranges - List breakpoints and trace ranges thus far specifiad - Terminate debug facility - Activate stopped task - Change execution sequence - List debug commands - Display storage or registers - Remove breakpoints and trace ranges - Modify storage or registers - Post an event Qr process interrupt - Modify base address - Display status of all tasks Command Entry A command is entered by press i ng the ATTENTION key on your terminal and entering the command name, or the command name plus the requ i red parameters for the command, in response to the prompt i ng message' >, • Syntax Summary In'the command syntax examples and descriptions in the following sections, keyword parameters are capitalized and variable parameters are shown in lower case, Whenever one of several keywords can be chosen, these keywords are separated by a slash(/). The examples show the vario~s formats of each command which are available for different purposes. Detailed syntax descr i pt ions are presented under $DEBUG Command Descriptions. o 86 SC34-0313 $DEBUG o Set breakpoints and trace ranges: AT ADDR address NOLIST/LIST NOSTOP/STOP AT TASK taskname start-add end-add EDX/ASM NOLIST/LIST NOSTOP/STOP AT ALL NOLIST/LIST NOSTOP/STOP NOLIST/LIST NOSTOP/STOP AT * Terminate $DEBUG: END Activate breakpoints or trace ranges: GO ADDR address GO TASK taskname start-add end-add GO ALL GO * List ·$DEBUG commands: HELP Display storage or registers: LIST LIST LIST LIST LIST ADDR R0 •.• R7 #1/12 IAR address taskname task name task name length length length length mode mode mode mode * Remove breakpoints or trace ranges: OFF ADDR address OFF TASK taskname start-add end-add OFF ALL OFF * o Chapter 4. The Utilities 87 $DEBUG o Modify storage or registers: PATCH PATCH PATCH PATCH PATCH ADDR address taskname taskname IAR taskname R 0 ••• R7 #1/#2 length length length length mode mode mode mode * Post events or process interrupts: POST ADDR address code POST PIxx code POST * Modify base address: QUALIFY base disp Q base displ Display status of all tasks: WHERE Display breakpoints and trace ranges: (;(--~ IV BP Change execution sequence: GOTO current-address new-address o 88 SC34-0313 o $DEBUG Example: The command syntax permits most keyword parameters to be abbreviated to a single character, except ALL which conflicts with ADDR; entry of AL for ALL and A for ADDR is permitted. You are prompted for command parameters individually, unless you are sufficiently familiar with the syntax to enter a complete command on a single line. For example, to set the task TIMET into a program trace between addresses 0 and 3000 and also print the contents of both task registers in task LOOP2 in decimal mode but continue processing, the following interactive keyboard sequence may occur. Each response is terminated by a RETURN key entry. > o AT OPTIONC*/ADDR/TASK/ALL): TASK TASK NAME: TIMET FIRST ADDRESS: 0 LAST ADDRESS: 3000 TRACE TYPECEDX/ASM): EDX LIST/NOLIST: LIST OPTIONC*/ADDR/RO ••• R7/tl/t2/IAR): 11 TASK NAME: LOOP2 LENGTH: 2 MODEeX/F/D/A/C): F STOP/NOSTOP: NOSTOP 1 BREAKPOINT(S) SET Identical response: results are obtained by entering the single > AT T TIMET 0 3000 E L 11 LOOP2 2 F N 1 BREAKPOINT(S) SET o Chapter 4. The Utilities 89 [ $DEBUG I o $DEBUG Command Descriptions AT - Se't Breakpo; nts and Trace Ranges AT sets breakpoints and trace ranges. The LIST and STOP options established for a breakpoint or trace range are executed prior to executing the instruction that satisfied the breakpoint or trace range spec if i cat ion. l~hen the spec if i cat i on for a breakpoint or trace range is satisfied, the task currently active is detoured and $DEBUG performs the fo llow i ng act i OilS for the subject task: prints its status, prints the LIST specification, and optionally puts the task into a wait state. If the NOSTOP opt i o'n was requested, task status is pr i nted as "taskname CHECKED AT XXXX". The STOP opt i on generates a "taskname STOPPED AT XXXX" message. The and ly, can LIST and STOP options for all currently defined breakpoints trace ranges can be modified by entering AT ALL. Similarthe speci fications for the most recently entered AT command be altered by the AT * option. Notes: 1. You cannot set breakpo i nts in ATTNL 1ST rout i nes. 2. You can only set breakpo i nts on EDl instruct ions wi th i n an EDL program. () Syntax AT ADDR address NOLIST/LIST NOSTOP/STOP AT TASK taskname start-add end-add EDX/ASM NOLIST/LIST NOS TOP/STOP AT ALL NOLIST/LIST NOSTOP/STOP AT * NOLIST/LIST NOsTOP/STOP Operands Description ADDR Keyword indicating this is an instruction program breakpoint specification. address Instruction address where a breakpoint inserted. 90 SC34-0313 is to be o $DEBUG o Caut;on: Be sure that this is the first word of an executable instruction, since the low-order byte of this word will be modified by $DEBUG. Unpredictable results can occur if you speci fy the address of data or the address of other than the first word generated by an instruct i on. NOlIST No special print request is needed at this breakpo i nt or trace range. LIST Complete spec if i cat i on for a storage or reg i ster display. See the lIST command for a description of a 11 list opt i on5 and parameters. NOSTOP Process; ng is to cant i nue notification has occurred. STOP The task is to stop whenever this breakpoint trace range speCification is satisfied. TASK Trace range spec if i cat i on. taskname Name of task to be traced. If. the program conta ins on 1 y one task , om i t t his par a met e r • start-add Trace range starting address. Since your program is not actually modified by a trace specification, no special care needs to be exercised in entering trace addresses. end-add Trace range end i ng address. To estab Ii sh a breakpoint at an individual assembler instruction, specify both the starting and ending address to co i hC ide with the instruct i on address. EDX Only Event Driven language instructions are to be traced. ASM All Series/l assembler instructions spec if i ad range are to be traced. All All cUrrently defined breakpoints and trace ranges are redef i ned with new list and stop opt ions. * The most recent ly def i ned breakpo i nt or trace range specification is to be redefined. This specification is determ~ned by the last usage of an AT, GO, or OFF command. after the breakpo i nt within ~r the o Chapter 4. The Utilities 91 [$DEBUG BP - Li st Breakpoi nts and Trace Ranges () BP displays all breakpoints and trace ranges that have been specified during the current debug sessio~. The information supp 1 i ed for each breakpo i nt inc 1 udes t he task address, instruction type, associated list options, and whether a stop was specified. Syntax BP No operands are requ ired. END - Termi nate SDEBUG END removes all currently active breakpoints and trace ranges, act i vates a 11 current 1 y stopped tasks, and term i nates $DEBUG. Syntax () END No operands are requ ired. o 92 SC34-0313 o $OEBUG GO - Act; vate a Stopped Task GO reactivates any task that has been stopped by $DEBUG. If a task is stopped at a breakpoint, specify the exact breakpoint address. If a task 1S stopped as a result of a trace specification, supply the name of the task and an address range which brackets the addresses in the original trace request. If only one task is be i ng debugged, no operands need be spec i f i ed. Syntax GO ADDR address GO TASK taskname start-add end-add GO ALL GO * GO o Operands Description i s ADDR Keyword indicating specification. address Instruct i on address where the task is .stopped. TASK Keyword indicating specification. taskname Name of task to be act i vated. For programs conta i ning only a single task, omit this parameter. start-add Trace range start i ng address. end-add Trace range ending address. ALL All currently stopped tasks are to be activated. * The most recently referenced breakpoi nt or trace range specification is to be used. This specification is determined by the last u7~ge of an At, GO, or OFF command. / this this is a a breakpoint trace range o Chapter 4. The Utilities 93 $DEBUG GOTO - Change Execut i on Sequence () Gala react i vates, at a different instruct i on, any task that has been stopped at an Event Dr i ven Language instruct ion. If stopped using a breakpoint or trace, supply the current address and the address at which execution should be resumed. Break~ po i nt or trace spec i f i cati ons are not changed. S}!ntax GOTD Qe.erands current-address new-address Description current-address Address where the task is stopped. new-address Address where execut i on is to be restarted. () HELP - Li st $DEBUG Commands The HELP command produces a list of $DEBUG commands and functions. Syntax HELP No operands are requ ired. o 94 SC34-0313 o $DEBUG LIST - 0; splay Storage or Regi sters LIST displays the contents of memory locations, or task registers, or hardware registers, or the IAR. The LSB can be displayed by listing the IAR with a length of 11 words. Any r~gister data is only guaranteed to be current if the corresponding task is inactive or stopped by a $DEBUG breakpoint or trace range. To repeat the most recent I y spec if i ed LIST command or to verify (list) a patch you have just entered, use "LIST *". Syntax LIST LIST LIST LIST LIST ADDR address RO/ ••• /R7 taskname #1/#2 taskname taskname IAR length length length length mode mode mode mode * Operands Description ADDR Keyword indicating this is a display of a storage location. address Address of the storage locat i on to be d i sp layed. length Length of display in words, characters. depend i ng on mode. mode Mode of data display: doublewords, or x - hexadec i rna I word F - decimal number(word) o- decimal numberCdoubleword) A - relocatable address C - EBCDIC character o RO/ ••• /R7 One of the Series/1 hardware registers RO through R7. To define the start of the LIST. taskname Name of task from which register data is to be displayed. For programs containing only a single task, am i t th is parameter. #1/#2 Task reg i ster i1 or #2 spec if i cat ion. Chapter 4. The Utilities 95 $DEBUG IAR Keyword indicating the IA~ Register) is to be displayed_ * The most recently s~ecified (Instruction LIST Address s~ecification is to be used. Th is is determi ned by the last usage of a LIST or PATCH command. o 96 SC34-0313 o $DEBUG OFF - Remove Breakpo; nts and Trace Ranges OFF removes a breakpoint or' trace range established with the AT command. To remove a breakpoint, specify the exact breakpoint address. To remove a trace request, specify the name of the task and an address range which brackets the addresses in the original trace request. If a task is currently stopped at the requested breakpoint or trace range, this task is automatically re~ctivated. Syntax OFF ADDR ~ddress (breakpoints) OFF TASK taskname start-add end-add (trace ranges) OFF ALL OFF * Operands Description ADDR Keyword i nd i cat i ng th i s i s breakpoint specification. address Instruction address where a breakpoint has previously been established. TASK Keyword i nd i cat i ng a trace range is to be removed. taskname Name of task assoc i ated wit h a trace range. For programs containing only a single task, omit this parameter. start-add Trace range start i ng address. end-add Trace range end i ng address. All All breakpoints and trace ranges are to be removed. * The most recent ly referenced breakpo i nt or trace r'ange specification is to be used. This specification is determined by the last usage of an AT, GO, or OFF command. the remova I 0 f the o Chapter 4. The Utilities 97 $DEBUGJ () PATCH - Modi fy storage or Regi sters PATCH modifies the contents of memory locations, task registers, hardware registers, and the IAR (Instruction Address Register). The entire LSB (Level status Block) can be modified by patching the IAR with a length specification of 11 words. The patch to any reg i s t e r data i S 0 nl y g u Ct ran tee d i f the cor r e sponding task is inactive or stopped by a $OEBUG breakpoint or trace range. To respec i fy the data for the most recent patch or to patch the data displayed by the most recent LIST command, enter 'PATCH *'. After the patch command is entered, the current memory or register content is displayed, and you Ctre prompted for the patch data (a string of data entries that satisfy the length and mode spec if i cat 1 ons). The entr i es are separated by spaces, for example, data ••. data. After the patch data is entered, you can apply the patch by responding YES, abort by responding NO, or indicate additional patches with a CONTINUE reply to the prompt i ng message. By spec i fy i ng CONTINUE, the patch is performed and prompting continues for entry of new length, mode, and data specifications to memory or register locations immediately behind your previous patch. If less data than spec if i ed wi th the length operand is entered, the effective patch is padded with blanks for character data and zeros for all other data types. o Syntax PATCH PATCH PATCH PATCH PATCH Operands ADDR address RO/ .•• /R7 taskname #1/#2 taskname IAR taskname * length length length length mode mode mode mode Description ADDR Keyword i nd i cat i ng th is is a storage patch. address Address of the storage locat i on to be mod if i ed. length Length of patch in words, characters depend i ng on mode. 98 SC34-0313 doublewords, or o o $DEBUG mode Mode of data entry: x- hexadecimal word F - decimal numberCword) o - dec i rna 1 number Cdoub leword) A - relocatable address C - EBCDIC character RO/ ••• /R7 One of the Series/l hardware registers RO through R7, where the patch is to be started. taskname Name of task for which register data is modified. For programs containing only a task, ami t th i s parameter. 11/12 Task reg i ster 11 or 12 spec if i cat i on. IAR Keyword indicating the IAR Register) is to be modified. * The most recently referenced LIST or PATCH speci fication is to be used. This is determined by the last usage of a LIST or PATCH command. (Instruction to be single Address o o Chapter 4. The Utilities 99 I $DEBUG I o POST - Post an Event or Process Interrupt POST activates a task waiting for an event or a process inter~,u pt. To d up I i cat e apr e v i 0 u s p 0 s tin g , en t e r POST The address of the ECB (Event Control Block) to be posted is contained in the second word of a WAIT command as shown on a program assembly listing. Process interrupts can also be posted by name, using the PIxx option. *. POST ADDR address code POST PIxx code POST * Operands' Description ADDR The address of an ECB (Event Contro I Block). address ECB address to be posted. code Dec i rna 1 code to be posted to the spec i f i ed ECa. Plxx Name of process interrupt PII to PI99. * The most recently- referenced ECB address n a me and cod e spec i f i cat ion i s t 0 b e use d • or PIxx o 100 SC34-03l3 o $DEBUG QUALIFY - Modify Base Address QUALIFY modifies the base address used by $DEBUG to reference physical storage locations. This command is useful for debugging supervisor program modifications. Syntax QUALIFY base displ base displ Q Operands o Description base New hexadecimal base address. Enter 0 when working with the supervisor. displ Hexadecimal offset to be added to base to form the new base address for all subsequent address references. Enter the origin of the supervisor program module as shown on the link editor listing. o Chapter 4. The utilities 101 $DEBUG WBERE - D; splay status of All Tasks o WHERE displays the current status of each task. I f a task is currently processing its breakpoint routine, i t is marked CHECKED. I f a task has been stopped by a breakpoint or trace request or i f the main task has not yet been attached by $DEBUG, the task is marked STOPPED. In all other cases, each task is shown to be at the currently executing instruction, at the command i t wi 11 start execut i ng when dispatched by the task supervisor, or at the last command executed pr i or to enter i ng a wa i t state. Syntax WHERE WH No operands are requ ired. f)·.·. \'- o 102 SC34-0313 o $DEBUG Tips and Techniques Additional breakpoints and trace ranges that are should usually be established before initiating execution with a GO ALL command. At program load time names are obtained by $DEBUG, and the current status task can be requested by entering WHERE. For example: desired program all task of each > l!JHERE DBUGDEMO USERT LOOP3 LOOP2 TIMET o STOPPED AT AT 02EE AT 0230 AT OICO AT 0124 009E Actual task names are only available if the program is loaded by $DEBUG. If the program to be tested is already loaded and executing, task names have been destroyed, and artificial names are generated by $DEBUG by appending the relative address (in hexadecimal) of the TCB (task control block) to TASK. For example: > L'IIHERE TASK0308 TASK02AO TASKOIE2 TASK0172 TASKOOD6 AT AT AT AT AT OOBE 0300 0298 01CO 0164 If the program to be debugged has previously been loaded into storage multiple times, the load points of all currently active cop i es are 1 i sted, and YOll have the opt i on to spec i fy wh i ch copy you wish to debug. You also have the option to request a fresh copy of the same program to be loaded. For example: o Chapter 4. The Utilities 103 I $DEBUG () > $l $DEBUG SDEBUG 21P,09:37:17, LP=C200 PROGRAM NAME: DBUGDEMO ALREADY ACTIVE AT 5200 5600 5AOO DO YOU WANT A NEW COpy TO BE LOADED? N PROGRAM LOAD POINT: 5600 or DO YOU WANT A NEW COpy TO BE LOADED? Y DBUGDEMO 4P,09:38:02, LP=5EOO When more than one disk/diskette drive is available, programs from a volume other than the IPL volume can be loaded. For example: PROGRAM NAME: DBUGDEMO,EDX002 (~ '\...)~j Notes: • SDEBUG is terminated by the command END. It cannot be ended by the superv i sor ut i i i ty funct i on command $C. • When $DEBUG is ended the program wh i ch was be i ng tested under the control of SDEBUG remains in storage with all .of j ts tasks act i ve and ope rat i ng. o 104 SC34-0313 $DICOMP ,. o $DICOMP - DISPLAY COMPOSER The composer allows you to add display profiles and modify existing display profiles. Through the use of interactive dialogue, the program guides you through the g~neration or alteration of a display profi Ie. Because this program does not change the bas i c structure of the onl i ne data base, you can use it at the same time other functions are being performed. This program can be used to generate a portion of a new display profile. Then you can use $DIINTR to cause the partial display to be generated. If corrections or additions are necessary, you can then use $DICOMP to alter the display prof; Ie. These steps can be repeated unt; I the des ired resu 1 ts are obta i ned. Invoking $DICOMP To start execut i on of $DICOMP: 1. Load the program $DICOMP specifying the appropriate data set name. $DIFILE, the online data set, or any other data set can be used. However, you should make sure that another user or program is not changing or using the same data set. 2. The system responds with the program loaded message followed by: C"· ') $DICOMP - DISPLAY DATA BASE COMPOSER COMMAND (1): $DICOMP Commands The commands available under $DICOMP are listed below. To display this list at your terminal, enter a question mark in response to the prompt i ng message COMMAND (1):. Chapter 4. The Utilities 105 $DICOMP o CO~1MAND AD AL EN IN PR TO - (? r: ? ADD A NEW MEMBER ALTER EXISTING MEMBER EXIT PROGRAM INSERT OR DELETE DISPLAY ELEMENTS IN A MEMBER PRINT MEMBER FORMATTED TEST DISPLAY COMMAND (?): After the commands are displayed, you are again prompted with (?):. You respond wi th the command of your cho i ce (for example, AD).' COM~lAND AD - Add aNew Member to Data Base Allows you to generate a new display profile. The display can be 1 n either graph i c or report form. You are prompted to enter a 1 - 8 c h a r a.c t e r Dis p lay Prof i Ie name used by the Interpreter to .retrieve the display. The next prompt message asks if a display heading is desired. If so, a report display is assumed. If n~t, a graphic display is assumed and you are prompted to proceed with generating the display. You are also permitted to select the device to which the output from the Interpreter is to be routed. If the response to the question IS THIS A GRAPHIC DISPLAY?' is NO, you are prompted to enter the column headings desired. One line up to 132 cha~acters is allowed. Following the entry of the column headings, you are prompted to enter the name of the print report data member. You are then prompte~ to enter the next command. Report Display: Graphic Display: If a graphic display is desired, you should respond to the message IS THIS A GRAPHIC DISPLAY? by entering the character Y. The composer then asks if ·the display is to be a 3D object. If you respond with a character Y, then all following references to X and Y values wi 11 also include the Z value. The composer asks you to enter the values X, y, and Z, if 3D object. They are used to position the first character of the display heading. You are then prompted with the request COMMAND (?):'. Subcommands should then be entered. c 106 SC34-0313 $DICOMP o AL - Alter an Ex; st; n9 Member This function allows you to display each element of a display profile and make changes, using subcommands, provided the size of the element and the sequence of commands is not changed. This function is of great value during the trial and error per i od when you are gene rat i ng a new d i sp lay. You can generate a display using the AD function and display the results using the Interpreter. You are allowed to either start alteration at the beginning of the member and display each element in turn or or to skip to a specific element within it. Use the PR command to display the elements and their sequence numbers. As each element is displayed, you are questioned whether or not this e Ie men t i s to be a I t ere d • ALTER ENTRY? o When Y is selected, you are prompted to reenter the element as described in the AD/Add Member/ section. When the end of the display profi Ie is reached, the Composer is terminated and you can redisplay the profile to see if the corrections are satisfactory. EN - Ex; t P,rogram This func·tion provides an immediate exit from the Composer. IN - Insert or Delete Elements; n an Ex; st; ng Member This function combines the facilities of the Alter and Add functions with the ability to delete individual display elements. Because the Insert funct i on creates a new member in the data base, the size and sequence of display elements can be changed • .t:jote; Use of the ut iii ty program to ver i fy that suff i c i ent space rema ins in the data base is recommended. By us i ng the LA and 5T funct; ons, you can determ i ne the size of the member to be mod if i ed and the rema in i ng space ; n the data base. As described in the Alter function, the Composer displays each element in turn with the fo llow i ng quest ions asked: o Chapter 4. The Utilities 107 $DICOMP o KEEP ENTRY? DELETE ENTRY? ALTER ENTRY? If you elect to keep the entry, the Composer proceeds to the next element. If N is selected, the DELETE ENTRY? question is displayed. If N is entered, the ALTER ENTRY? question is displayed. If Y is entered, the Composer proceeds with the alterat i on process as descr i bed in the AL funct i on descr i pt i on. Following the Alteration function, control is returned to the Insert function and the process is repeated for the next element. If the element L!Jas not altered, you are prompted to insert a new subcommand. At this point, all the functions of the AD facility are available. You can add one display element after which control is returned to the Insert function where the previous element is redisplayed and the sequence is repeated. Aga in, as in the Al ter funct ion, you must step through each element in the Display Profile before completion. When the end is reached, the message END OF DATA - ISSUE SAVE OR ADD NEW COMMANDS is d i sp layed. The Composer then reverts to the Add funct i on and add it i ona I commands can be entered. o Note: You must issue a Save command to term i nate the Insert funct ion. When the Save command is issued, the Composer deletes the old member and renames the newly built member with the old name. This procedure m:Clkes the modified version available to the Interpreter. You are urged to use the utility to compress the data base following insert activity to prevent fragmentation of the data base and reclaim unused space • . PR - Pr i nt Member Formatted Display on the terminal or printer the contents of a display profile member formatted in the same way as used by the Alter and Insert functions. This display is useful asan aid in maintaining display profiles. Routing to $SYSPRTR is allowed to provide a high speed hard copy. TD - Test Di splay as Currently Entered You are prompted for the name of a plot control member and then $DIINTR is invoked to generate the specified display after which control is returned to you to make alterations. 108 SC34-0313 o $DICOMP o Composer Subcommands When adding, altering, or inserting elements in a member, subcommands are used. These are listed below and described on the following pages. When entered, subcommands are placed in or mod i fy the member. The member can later be used by the interpreter to generate the desired display. The following subcommands are available: AD 01 DR EN EP HX 1M JP JR LB LI LR MP PC PL RT SA TD - ADVANCE X,Y DIRECT OUTPUT DRAW A SYMBOL EXIT PROGRAM END DISPLAY DISPLAY HEX WORDS INSERT MEMBER JUMP TO ADDRESS JUMP REFERENCE DISPLAY CHARACTERS DRAW A LINE TO X,y DRAW LINE RELATIVE MOVE BEAM TO X,Y PLOT CURVE ONLY PLOT DATA ACTIVATE REALTIME DATA MEMBER SAVE ACCUMULATED DATA DISPLAY TIME AND DATE VA - DISPLAY VARIABLE Most ~ubcommands perform actions based on the X and Y coordinates of the viewing screen. It is important that you keep t rack 0 f the cur rent X and Y va I u e s as t he dis p I a y i s de vel oped • The suggested method to produce a graphic display is to first draw the display on graph paper and assign X and Y coordinates to the key nodes in the display. Then use this drawing as a guide to the generation of the display, keeping in mind the screen Ii mi ts for the termi nal to be used. The view area of the graphic terminals supported is shown in Figure 17 on page 110. Figure 18 on page 111 shows the space supported in 3D mode. o Chapter 4. The Utilities 109 I $DICOMP () M N ~ "' 1'---_________--11/ \ ~ ~. \ ·c ~ O:Je ~>~ ~ o m ~~ Vl ~ \ \ I . ~'C I B ~ } o I I~ 0 to 1023 • Normal viewing area I X units addressable Figure 17. X,Y Coordinate Grid and Viewing Area o 110 SC34-0313 $DICOMP o 32767~~ ________-+__________~ I I en 'xco I I I I I o N J---------/' o /'~ ,/ ~,,=, ~;......----~-----~-32768 / -32768 -32768 . . .fooo----. 32767 0 / 4~ 32767 X axis----""'!t.~ Figure 18. X,V,Z Coordinate Grid and Viewing Area AD - Advance X, Y Moves the beam position by the specified value. This could be helpful in displaying data with even spacing on the screen. After issuing a 'DR' command using a symbol, AD could advance the X,V position to the next position without regard to the actual screen X,V location. The limit for the specified X or V value is plus or minus 512 units. If a 3D object is being defined, then the Z axis value is also requested. o Chapter 4. The Utilities 111 $DICOMP () DI - D; rect output Directs the resultlng graphic output to appear at a terminal other than the one used to enter commands. The terminal name to be entered ;s the label of the TERMINAL statement used to descr i be the des ired termi nal. DR - Draw a Symbol Draws a predefined symbol. Several commonly used symbols have been prov i ded. In spec i fyi ng a symbol, you are prompted to enter the symbol number and the symbol modifier. These values are used by the Interpreter to generate the requested symbol. Some of the symbols require additional information. If requ ired, you are prompted for th is add it i ona I i nformat ion. Valid symbol numbers are 1 through 14. Symbol # =1 Draw Fan SYmbol Left Hand Format Modifier = Radius of fan body and opening on left side of fan. Must be a multiple of 4. = start and end position. Symbol # =2 X,Y current Draw Fan Symbol Right Hand Format Modifier = Radius of fan body and opening on right side of fan. Must be a multiple of 4. = start and end position. x,V current o 112 SC34-0313 $DICOMP o Symbol :it: =3 Draw Damper Vertical ---.--- ----- -----,.. -, Modifier = Number of damper pairs to be generated in the down direction. = start and end Symbol :it: = 4 140 Units X,V current position. Y 16 Units X Draw Damper Hor i zontal I Modifier = Number of damper pairs to be generated to the right. = start and end position. Symbol :it: = 5 X,V current t\ / I I6unitsy -, ,.. 40 Units X Drawa Hot COlI ----.--- D Modifier = Number of hot coil pairs to be generated in the down direction. = start and end position. X,V current D ,.. 116 Units Y -, 12 Units X o Chapter 4. The Utilities 113 $DICOMP Symbol * =6 () Drawa Cold COlI ---...--Modifier = Number of double pairs to be generated in the down direction. = start and end position. SYmbo 1 *= 7 \- X,Y current *= 8 -\ Draw a F i 1 ter Element start and end Symbol Units Y 16 Units X Modifier = Number of elements to be generated in the down direction. = "" 116 "" X,V current position. I~ -I 8 Units X Draw a Valve ~}6unitSY , For 2-way valve Modifier = 2 I. I I I For 3-way valve Modifier = 3 = start and end I 32 Units X ..II I I 32 Units Y x,V current position. o 114 SC34-0313 $DICOMP o Symbol i = 9 Draw An Arrow e:::::::::J I 8 Units Y ~ I ·16 Units X· I Modifier 616unitsy = 1 for 2 for left right 3 for up 4 for down = start 8 Units X H V16 Units Y and end X,Y current position. Symbol i = 10 Drawa logic Block Right Modifier = Radius of Half Circle. Must be a multiple of 4. = start and end X,Y current position. o Chapter 4. The Utilities 115 $DICOMP Symbol t = 11 Draw a Log i c Block Left Modifier = Radius of half circle. Must be a multiple of 4. = start Symbol «= and end = 12 X,Y current position. Drawa Circle Modifier = Radius of Circle. Must be a multiple of 4. = start and end X,V current position. o 116 SC34-0313 $DICOMP o Symbol t = 13 Draw An Arc Right Modifier = Radius of circle. Must be a multiple of 4. = s~art and end X,V current position. Note: This symbol requires additional values. 1. Draw arc UP or down. Enter zero for down or one for up. 2. Number of V units to draw arc. Must be a multiple of 4. Note: This symbol always starts at X=O and proceeds until the V units have been exhausted. Symbol t = 14 Draw An Arc left Modifier = Radius of circle. Must be a multiple of 4. = start and end. position. X,V current Note: See note under Symbol 13 for additional information. EN - Ex; t Program 0 ,·' Causes the Composer to be term i nated without updat i ng the Display Profile Data Base Directory. All data collected up to this point for this member is lost. I, Chapter 4. The Utilities 117 $D1COMP The preceding list of available subcommands are those that are available when using the AD function. These descriptions are also valid when using the AL Alter function or the IN Insert function. o EP - End D; splay Specifies that the end of this section of the display has been reached. Normally, this command is followed by a SA (Save) command. However, this command can be useful if a jump zero/not zero causes the Interpreter to take alternate paths. You can use the EP command at the end of each of these paths instead of an uncond it i onal jump to a common end i ng po i nt. HX - Send Data Sends to the terminal up to 16 words of data without conversion. All bit patterns are valid; therefore, control or special data can be sent to the terminal. 1M - Insert Member Combines display profile members to form one display. This allows you to conserve disk space, decrease time required to enter display profiles, and standardize display formats. For example, you can build a display profile member to represent a common background of a physical system or floor plan. Then, by def i n i ng another display prof i Ie member, super' impose on the background the variables that will make the display unique. Only one level of nesting is permitted. That is, a member inserted us i ng the '1M' command cannot conta i n Clny 'IM' commands. However, a primary member can include multiple '1M' commands. JP - Jumlt to Address Causes a change in the sequence of execution of subcommands. There are three types of Jump to Address subcommands that can be used. They are: • Jump Unconditional • Jump if Zero • Jump if Not Zero As described in the Display Variable command, the conditional jump commands are dependent on the use of the Realtime Data Member. If conditional jump is selected, then the jump is based on the current cond i t i on (zero/not zero) of the spec if i ed word and record. Jump Unconditional prompts you to enter a J u mp toR e fer e nee • T his ref ere nee i s two c h a r act e r san dis· 118 SC34-0313 o $DICOMP o resolved when a 'JR' Jump Reference 1S defined. See the 'JR' command definition. If you select a conditional jump, prompt messages requesting word number and record number are issued. Following the definition of these two codes, you are requested to enter the Jump to Reference. The Jump to Reference for a Conditional Jump is the same as that of an unconditional Jump. The following example shows the use of the Jump command. Command sequence us i ng Jump: MP JP DR JP JR DR JR EP SA X=200, V=200 Zero, WDRD#=O, RECORDt=4, JR=AA SYM=l, MOD=40 JR=BB AA SYM=2, MOD=40 BB The preceding example draws a fan symbol at 200,200 either right or left depending on the zero/not zero condition of the Realtime Data Member word 0, record 4. In the preceding sequence, the first JP causes a jump to JR AA if word 0 of record 4 is zero. The second JP causes a jump to JR BB unconditionally. JR - Jump Reference Indicates to the Composer that this location in the command sequence is referred to in a JP command. As defined in the JP command, the location is defined by 2 characters. If these characters have already been used, an error message is displayed. If the capacity of the JR table is exceeded, an error message is d i sp layed. The capac i ty 0 f the jump re ference tab Ie ...j..s~ 4 0 un i que j u mpre fer e n c e poi n t s for e a c h dis p I a y • LB - D; splay Characters o Places a character string on the screen. It is not necessary to use an MP command to pos i t i on the beam because th is command allows specification of the location of first character. If a 3D object is being defined, then X, V, and Z values are requested. Up to 72 characters can be displayed. The ending X,V position are 1 character position beyond the last character in the string. Chapter 4. The Utilities 119 $DICOMP LI - Draw a L;ne to X,Y Draws a vector to the specified X and Y coordinates from wherever the beClm was left with the previous commClnd. 600- / 200I I 100 600 Draw line to X=600 Y=600 END X,Y line shown on screen Current position When generating a 3D display, 3 values Clre values are X, y, and Z. ~ These (~) ~ ./ 600 _ ·0_ required. -----( I ~ ./ I I ,/600 -0 I I 0 Draw line to X=600 END Y=600 X,Y,Z 600 2=600 o 120 SC34-0313 o I $DICOMP LR - Draw L; ne Relat; ve Draws a line relative to the current position. For example, you can, through the lise of the 'MP', 'JP', and 'JR' commands, position the beam at various current positions based on Rea It i me Data Member cond i t ions. Then a ser i es of lines can be drawn to form a symbol using the 'LR' command. This would have the effect of placing the symbol at various screen locations based on external conditions. The limits allowed for the X,V values are plus or minus 512 units. If a 3D object is being defined, then the Z axis value is also requested. MP - Move Beam to X, Y Draws a dark vector to the specified X and V coordinates. A dark vector 1s not visible and, therefore, results in moving the beam to the spec if i ed locat i on. C"'.·\ ../ 200- • I 100 Beam moved to X=lOO END V=200 X,V Nothing shown on screen Current position When generating a 3D display, 3 values are values are X, V and Z. required. These o Chapter 4. The Utilities 121 I $DICOMP 1 ~ 100 _ 0_ ~ ----( I I ". -100 -0 I I I o 100 Beam moved to X=100 END Y=100 X,Y,Z Z=100 Current position PC - Plot Curve Only Provides multiple curves on an existing background as defined by a preceding PL command. Refer to the folioNin9 section (PL) for descriptions of entry procedure. steps 9 and 10 are the only required action. As many PC commands as are necessary to obtain the desired results can be included. PL - Plot Data Formats the viewing area into a basic plotter. Options are provided for X and Y labels as well as X and Y grids. You are prompted to include the name of a plot curve data member. Refer to the "$DIUTIL Uti lity Program" in "$DIUTIL - Display Data Base Utility" on page 150 for information regarding the allocation and formatting of the plot curve data member. The sequence of quest ions to be answered for the PL command: 1. Enter i of Y axis divisions To present a readable display, it is suggested that this value be under 20. However, if Y axis division values are bypassed (Step 7), then larger values are appropriate. Y axis divisions become unreadable when this value exceeds 125. 2• 122 Enter:lt of X axis divisions SC34-0313 c $DICOMP o To present a readable display, it is suggested that this value be under 40. However, if X axis division values are bypassed (Step 8), then larger values are appropriate. X axis divisions become unreadable when this value exceeds 200. 3. Vertical Grid? A Y answer causes the Composer to include commands to connect the X axis divisions (specified in 2 preceding) to the top of the viewing area. An N bypasses this feature. 4. Horizontal Grid? A V answer causes the Composer to include commands to connect the V axis divisions specified in 1 preceding to the right side of the viewing area. An N bypasses this feature. 5. Enter V axis label - 24 characters You must enter the V axis label. If no axis label is desired, press the enter key. This label is general in nature and-is placed at the left side of the viewing area. This label is vertical, that is, one character under the next. 6• Enter X ax is label - 24 characters You must enter the X axis label. If no X axis label is desired, press the enter key. This label is general in nature and is placed near the lower portion of the plot viewing area. 7. V axis division values? If Y axis division values are desired, respond with a Y. The Composer asks-for as many values as you have specified divisions plus 1 (see Step 1 preceding). You must enter 6 characters fo-r each division. The first value requested is the value for the V base line and each succeeding value is for the next division in the plus Y direction. 8. o X axis division values? If X axis division values are to be displayed, respond with a V. The composer asks for as many values as you have specified divisions plus 1 (see Step 2 preceding). You must e n t e r 6 c h a r ac t e r s for e a c h d i vis ion • The fir s t val u e requested is the value for the X base line and each succeeding value is for the next division in the plus X direction. Chapter 4. The utilities 123 [: $DICOMP ] 9. Enter Name of Member for Plot Data () Enter the name of a plot curve data member. This member must have been allocated and initialized by the use of the utility program $DIUTIL. Refer to "$DIUTIL Utility Program" in "$DIUTIL - Display Data Base Utility" on page 150 for procedures on allocation and initializing of this member. 10. Is This Plot a Point Plot? The composer allows the use of any valid printable character to be used for the plot. If Yes is selected, then a plot character is requested. If N is selected, then a normal line for the curve is used. The preced i ng a basic plot super imposed desired, then 10 steps generate the necessary commands to cause background to be displayed and one curve to be on that background. If add it i onal curves are 'PC' commands should be issued next. RT - Act; vate New Real t; me Data Member You call define multiple Realtime Data Members. This command allows you to switch from one to another during the generation of a Display. The default name for the realtime data member is , REALTIME' • SA - Save Accumulated Data Specifies that completion of a display profile has been reached. The Composer enters the member name into the d i rectory of the display profile data base and make it availabla for the Interpreter. TD - Di splay T; me and Date This command allows you to display the current time of day and date from the realtime clocks used by the Event Driven Executive. You are reminded that prior to issuinga 'TO' command, a 'MP' may be required to position the beam to the desired display location. The 'TO' command displays the time and date in the following format: o 124 SC34-0313 $DICOMP o HH:MM:SS where: MM/DD/YY HH is Hours MM is Minutes SS is Seconds MM is Month DO is Day YY is Year VA - Di splay Vari able Places a data variable from the Realtime Data Member on the screen. A prompt message is issued ask i ng if you wish to locate the data at a location other than the current X,V position. If a 3D object is being defined, then X, V, and Z are requested. The use of this command requires that the Realtime Data Member be allocated. The Composer continues by asking for the record number and word number. The record number is the record number within the Realtime Data Member. The word number is the word number within the record specified. This value is in the range of 0-8. The funct i on code is requested next and is used to i nd i cats the type of variable to be displayed. Valid function codes are as follows: o 1 2 3 15 Single precision integer Double precision integer Standard precision floating point Extended precision floating point Character data Type code i s reques~ed next and is an i nd i cator of the format of the value to be displayed. Val i d type codes are: o Chapter 4. The Utilities 125 [ $DICOMP o 1 2 Integer Floating point F format Floating point E format Field width and number of decimal places are requested next. If the variable 1S an integer, the number of decimals should be zero. o 126 SC34-0313 o $DIINTR $DIINTR - DISPLAY INTERPRETER The Interpreter program searches the data base and generates the requested display. Both graphic and report displays are generated in this manner. Each display profile is made up of many display profile elements. Each element, when retrieved from the data base by the Interpreter, is decoded and converted to the appropriate command to cause the requested action to be performed. Each display profile element contains various parts, such as Display Code, X and Y coordinates, Symbol ID, and Symbol Modifier. Realtime Data Member record number and Additional Member names are included in the display profi Ie element. To begin operation of the Interpreter, you must first load $OIINTR. Output is directed to the terminal that requests the display or as directed by the Display Profile. The following steps are requ i red to in it i ate the Processor Mon i tor: 1• Load the program $DI INTR. 2• The system responds wi th the prompt message: C,: ) ENTER DISPLAY ID--XXXXXXXX OR EXIT TO TERMINATE 3. To terminate the Interpreter, enter 'EXIT'. To cause the Interpreter to prepare the d i SP lay, enter the 0 i sp lay 10. Us;ng $DIINTR from an Appl;cat;on Program $DIINTR can be loaded from an application program to allow displays without operator assistance. The following example is the method used to cause th i s act i on to occur. o Chapter 4. The Utilities 127 $DIINTR * Your program LOAD WAIT MBRNME 51 52 53 D T R 01 Tl () $DIINTR,MBRNME,D5=($DIFILE),EVENT=iWAIT, LOGMSG=NO #W.'\IT DATA DATA DATA DATA DATA DATA DATA DATA DATA C CL8'DI5PLAY' THESE 8 VALUES ARE FOR 3D OBJECTS F' 0 ' F' 0' * F' 0 ' * F' 0 ' * F' 0' F' 0 ' F' 0 ' F' 0 ' * * * * When using $DIINTR to display a 3D object there are 8 values that are needed to describe the manner in which you want the object displayed. The preceding example shows the eight values passed to $DIINTR as follows: 51 52 53 o T R D1 Tl Platform Location X= Platform Location Y= Platform Location Z= Platform Direction in Degrees Platform Tilt in Degrees Platform Rotate in Degrees View Direction in Degrees View Tilt in Degrees These values are single precision integers and may contain a numeric value from -32768 to +32767. Displaying 3D images requires a 4955 processor with floating point hardware installed. 128 SC34-0313 c o $DIINTR 3D Concepts as used by $DIINTR 3D objects can be defined by .$DICOMP and placed on disk or diskette much the same as with a 20 object. The only difference is that each po i nt in space has three va lues as soc i ated with it instead of 2. These three values represent the X, V, and 2 coord i nates of the po i nt in space. Figure 5-2 shot~s the Ii mi ts of the defined area in space. The maximum limits of the defined areas in space are -32,768 to +32 1 767. Vou can define one or more objects within this cube. Once the object is defined, you can view this object from any location within the same space. To spec i fy the locat i on from whare you wi sh to view the object, either pass these eight values through the use of the PARM= parameter in the LOAD instruction or $DIINTR requests this input if it is invoked by the $L command. The concept used to com put e the 2 D rep res e n tat ion 0 f a 3 0 0 b j e c t i s a's f 0 I low s. The user is assumed to be suspended on a platform at a specific location in space. The first three values are the X, V, and 2 values that define the location in space of the vie~ing platform. The next five values represent the physical orientation of the platform and the v i ewers or i entat i on on that platform. o Platform Direction in tor: Oegrees~ Assume the following unit vec- If we rotate this unit vector in the direction V to X around the we can turn the view in any direction. A plus value causes, the un it vector to rotate c lockw i se as viewed from the +2 axis to zero. Z axis, o Chapter 4. The Utilities 129 I $DIINTR I Platform Tllt in Degrees: Assume the following unit vector: () z I f we rotate th is un i t vector in the direct i on Z to Y around the X axis, we can tilt the view to any angle. A plus value causes the unit vector to rotate clockwise as viewed from the +X axis to zero. P 1 a t for m Rot ate i n De 9 r e e s : As s u me the foIl 0 win gun i t v e c to r s : () z I f we rotate th i s un it vector in the d j rect ion Z to X ar-ouhd the Y axis, we can rotate the view to any angle. A plus value causes the unit vector to rotate clockwise as viewed from the -Y axis to zero. View Direction In Degrees: This value is used the same as th~ Platform Direction but is calculated after the above 3 are computed. This calculation rotates the unit vector in a V to X direction around the Z axis with a plus value causing the unit vector to rotate clockwise as viewed from the +Z axis to zero. 130 SC34-0313 o o $DIINTR View Tilt In Degrees: This value is used the same as form Ti It but is calculated after the above 4 are This calculation rotates the unit vector in a Z to X around the Y axis with a plus value causing the unit clockwise as viewed from the -Y axis to zero. I the Platcomputed. direction to rotate Once the 8 values provided are computed. the object in space is converted to its 20 representation and sent to the terminal. It is possible to view an object with all or a portion outside the viewing area. Points and lines that do not fall within the viewing area are not shown on the 2D screen. The viewing area is shown in Figure 19 on page 132. (.1>'~)" Chapter 4. The Utilities 131 [ :SOUNTR () Viewing screen Platform location Distance between platform location and viewing SCreen =1 Figure 19. Viewing Area in 3D Mode. c 132 SC34-0313 o $DIINTR The following example defines a 3D object in space A Cube X CMO MP LI II II LI LI II II II II MP II ~1P II C\ MP LI -100 +100 +100 -100 -100 -100 +100 +100 -100 -100 +100 +100 +100 +100 -100 -100 V -100 -100 -100 -100 -100 +100 +100 +100 +100 +100 -100 +100 -100 +100 -100 +100 Z -100 -100 +100 +100 -100 -100 -100 +100 +100 -100 -100 -100 +100 +100 +100 +100 EP SA Object as viewed from: ~ / 51 S2 S3 0 T / ~ 0 -400 0 0 0 R 0 01 T1 0 0 o Chapter 4. The utilities 133 [ $DIINTR 1 Object as viewed from: 51 52 53 -150 -400 0 D T 0 0 R 0 D1 Tl 0 0 Object as viewed from: 51 S2 S3 -150 -400 100 D T 0 0 R 45 D1 Tl 0 0 c 134 SC34-0313 o $DISKUTl $DISKUTl - ALLOCATE/DELETEj LIST DIRECTORY DATA $DISKUTI performs several commonly used disk or diskette storage management functions. Note: For tape management Management" on page 311 functions, see "$TAPEUTI - Tape $DISKUTl Commands The commands avai lable under $DISKUTI are 1 isted below. To display th is list at your term ina 1, enter a quest i on mark in response to the prompt i ng message COMMAND (?):. c COMMAND (?): ? AL ALLOCATE SPACE CV CHANGE VOLUME DE DELETE MEMBER EN END THE PROGRAM LA *--- LIST ALL(DS/PGM) LACTS-* LIST ALL (CTS MODE) LD "*--- LIST DATA SETS LDCTS-* LIST DATA SETS (CTS MODE) LM ---- LIST 1 MEMBER LP *--- LIST PROGRAMS LPCTS-* LIST PROGRAMS (CTS MODE) LS ---- LIST SPACE LV *--- LIST THROUGH VOLUMES (DS/PGM) LISTP-- DIRECT LISTING TO eSYSPTR LISTT-- DIRECT LISTING TO TERMINAL RE ---- RENAME A MEMBER *--- PREFIX (OPTIONAL) CO~'MAND (1): After the commands are displayed, you are ag~in prompted with CO~1MAND (1):. You respond with the command of your choice (for e x a mp 1 e, AL ) • o Note: In CTS mode, disk locations ar'e shoL",n in cylinder, track, and sector format instead of by record number. Chapter 4. The Utilities 135 $DISKUTl The program prompts you for any parameters required by the requested function. Examples of some of the $DISKUTI command execution prompts and replies are given on the following pages. $DISKUTl Parameters The following table identifies the parameters that can be used for the various $DISKUTI commands. Function Help AII'ocate Space Change Volume Delete Member End Utility list All Members list All Members in CTS mode list Data Sets list Data Sets in CTS mode list One Member list Programs list Programs in CTS mode list Space list Through Volumes Direct listing to $SYSPRTR Direct listing to Terminal Rename ~1ember Command ? AL CV DE EN LA lACTS lD lDCTS l ~1 lP lPCTS lS LV lISTP lISTT RE Parameters None Name Size Type New-volume-label Member-name None Prefix (optional) Prefix (optional) Prefix (optional) Prefix (optional) Member-name Prefix (optional) Prefix (optional) None Prefix (optional) Terminal-name (optional) None Old-name New-name Notg: When using the Al command, select either of the following organization types for the data set to be allocated: o - Data Organ i zat ion P - Program: Use this only for executable object programs (the output of $UPDATE/$UPDATEH) All the functions listed (except for ?, CV, lV, and EN) initially act upon the IPL volume and is indicated by the message USING VOLUME XXXXXX when $OISKUTI is loaded. To point to another volume to perform one or more of the previously listed functions, enter the CV command and the name of the volume. All funct ions act upon the spec if i ed vo I ume unt i I changed by another CV command or unti I $OISKUTI is terminated and reloaded. If a pref i x of up to 8 characters is spec if i ed in the List commands (except lM), only those data sets/programs beginning with 136 SC34-0313 c $DISKUTl o these characters are listed. The LV command scans through all ex i st i ng vo I umes, list i ng members in each vo I ume. When the scan is completed, the utility points to the last volume accessed. The LV command is useful in finding a data set when the volume is not known or when the same data set appears in multiple volumes. Examples AL - Allocate a 100 Record Data Set Named DATAFILE COMMAND (?): AL MEMBER NAME: DATAFILE HOW MANY RECORDS? 100 DEFAULT TYPE = DATA - OK? Y DATAFILE CREATED COMMAND (?): C\ CV - Change Volume to be Accessed by Subsequent Commands / COMMAND (1): CV NEW VOLUME LABEL = EDXOOl COMMAND (?): DE - Delete a Member Named DATAFIl~ COMMAND (?): DE MEMBER NAME: OATAFILE DATAFILE DELETE? Y DATAFIlE DELETED COMMAND (1): o Chapter 4. The Utilities 137 $DISKUTI LD - List Description of the Data Sets in a Volume () COMMAND ( ? > : LD USING VOLUME EDXOOI FREC NAME TEXTWORD DATA 105 $SAMDATA DATA 127 $NAME3 DATA 450 SIZE 22 36 10 506 FREE RECORDS IN LIBRARY COMMAND . ( ? > : FREC is the number of the record containing the first record of the data set. ~ote: LM - list Description of an Individual Member COMMAND (?>: LM MEMBER NAME: TEST12 USING VOLUME EDXOOI NAME TEST12 DATA FREC SIZE 305 7 IODA,CTS=003,022116,022122 COMMAND (?): IODA,CTS= I/O Device Address, Cylinder, Track, and Sector. In this example, the extent of the member is on the device at device address 003 at cylinder 22, track 1, from sector 16 through sector 22. Not~: c 138 SC34-0313 o $DISKUTl LP - List Oeser i pt i on of the Program Members in Vo 1 ume COMMAND (?): LP $DISK USING VOLUME EDXOOI NAME FREC $DISKUT1 PGM $DISKUT2 PGM 256 288 SIZE 32 30 2550 FREE RECORDS IN LIBRARY COMMAND (?): Note: Only members with a prefix of $DISK are listed in this example. C ~) ./' o Chapter 4. The Utilities 139 $DISKUTl LS - L 1st F r e e SPill c e A va i 1 ill b 1 e ; n Vol u.J!1...!. COMMAND (?): LS USING VOLUME EDXOOI LIBRARY AT REC SIZE UNUSED 1 3600 RECORDS 665 RECORDS DIRECTORY SIZE 24 RECORDS UNUSED 2450 BYTES NO. MEMBERS - 35 NO. FREE SPACE ENTRIES LIST FREE SPACE CHAIN? Y FREC 3000 247 SIZE 600 65 COMMAND (1): c 140 SC34-0313 $DISKUTl o LV""', L 1 s t Me mb e r s. wit b aPr, fix 0 f 'S' i" AI 1 V0 ! u me s COMMAND ( ? ) : LV S NAME SEW FREe DATA DATA SSRC SMODUL DATA SWORK DATA SDATA DATA 1646 7748 1386 15522 6989 SlZE VOLUME 100 5 10 300 EDXOO2 5 EOXOOZ ASMLIB EDX003 EDXOO5 USING VOLUME EDX005 COMMAND (?): o Cha~ter 4. The Utilities 141 $DISKUT2 o $DISKUT2 - PATCH, DUMP OR CLEAR MEMBER $DISKUT2 dumps or patches data or program members of a volume. It also can clear (set to zero) all or portions of a data set and reset its end-of-data pointer, list any data set created us i ng $EDITIN or $FSEDIT, and 1 i st the I/O error log data set. Note: For tape management Management" on page 311 functions, see "$TAPEUT1 Tape $DISKUT2 can also be used to modify the default load time storage allocation associated with a program. The S5 (set storage) command allows you to change the allocation without reassemb i ng the source code or prov i ding an overr i de on the LOAD instruction. Program dumps and patches are made by relat i ve address (hexadecimal) within the program. The relative address corresponds exactly to the address specified in the lOC field of an assembly listing. Data can be entered in hexadecimal or EBCDIC as shown in the examples that follow. To convert an Event Driven language instruction to a no operation (NOP), patch all of the generated DCs to hexadec i mal zero. Data set dumps and patches are made by spec i fyi ng a record number and a first word. The numbering for both record and word number begins with 1. Data can be entered in either decimal or hexadecimal. Each field of patch data should be separated with a a non-numer i c character other than a carr i age return. Dumps of programs or data sets are formatted when hexadecimal is selected as an opt i on. $DISKUT2 can 1 i st data sets created by $EDIT1N or $FSEDIT. You can list all or part of a source data set on a terminal or printer. A spec i a 1 feature of $DISKUT2 a llows dump i n9 and/or patch i ng of any area on a disk volume by referencing absolute record numbers. Th i s mode is selected by enter i ng the characters $$EDXVOL as a member data set name. When us i ng this mode, record numbering begins wit ho n e • The I/O error log list commands allows the specification of any data set as the log data set. The option is available to print every log record or only those log records containing data for a spec if i c dey ice address. The output is a formatted dump. You are prompted, as necessary, for i nformat ion requ i red by any of the funct ions of $DISKUT2. 142 SC34-0313 c L $DISKUT2 o $DISKUT2 Commands The commands available under $DISKUT2 are listed below. To display this list at your terminal, enter a question mark in response to the prompt i ng command COMMAND (1). COMMAND (1): ? CD CV DP DU PA SS LP LU PL LL EN - CLEAR DATA SET - CHANGE VOLUME - DUMP DS OR PGM ON PRINTER - DUMP DS OR PGM ON CONSOLE (-CA- WILL CANCEL) - PATCH DS OR PGM - SET PROGRAM STORAGE PARM - LIST DS ON PRINTER - LIST DS ON CONSOLE - LIST LOG ON PRINTER - LIST LOG ON CONSOLE - END PROGRAM COMMAND (1): After the commands are displayed, you are again prompted with COMMAND (1):. You respond wi th the command of your eho i ce (for example, CD). o Chapter 4. The Utilities 143 [ $DISKUT2 o Examples CD - C1 ear a Da t a Set (t 0 Zer ou COMMAND (?): CD DATA SET NAME? DATA CLEAR ENTIRE DATA SET? N FIRST RECORD: 1 LAST RECORD: 100 RESET THE E.O.D. POINTER? Y HOW MANY RECORDS TO EOD? 100 ARE ALL PARAMETERS CORRECT? Y CLEAR COMPLETED CONMAND (?): DU/DP - Dump a Data Set Q" Term;"tiI !/Pr inter () COMMAND(?): DU PGM OR DS NAME: EDITWORK EDITWORK IS A DATA SET FIRST RECORD: 1 LAST RECORD: 1 WORDS / RECORD: 52 (O)EC OR HE(X): X RECORD I 73 7A2E 81 0000 89 0000 0000 97 105 0000 113 7B96 121 7BA4 7800 0000 0000 0000 0000 402F 6808 0088 34D6 14DO 0000 0000 7BAO OOF6 7A30 0000 5600 0000 0000 0000 680D COOA 0000 0000 0000 5040 1a2e lOlA 0000 7A02 0000 6F03 6808 0240 0000 0000 0000 023C OOC4 4040 FFFF 0000 0000 0254 680D · ........ . • •••• 0 ••• • ••••••• & .:It •••• i •... 6 •• t. DUMP COMPLETE ANOTHER AREA? N COMMAND(?) c 144 SC34-0313 $DISKUT2 o DU/DP - Dump a Program on Term ina !/Pr inter COMMAND (?): DU PGM OR DS NAME: MYPROG MVPROG IS A PROGRAM ADDRESS: 22 DUMP TO PROGRAM END? N HOW MANY WORDS? 22 0022 0032 0000 0000 1C66 FFFF 0000 0000 4040 4040 4040 0606 4040 4040 . $1. I · · · · · · · .· .· · · · · · $ 0042 0000 0001 0001 0000 0000 I············· DUMP COMPLETE ANOTHER AREA? N COMMAND (?): o I I - list log Data Set COMMAND (?): LL lOG DS NAME: $LOGDS DEVICE ADDRESS(NULl FOR ALL): 003 SOFT ERR DEV ADDR: 0003 DEV 10: 0304 DATE: 10/26/79 LVL: 0002 AKR: 0001 TINE: 11:59:59 RETRY: 13 IOCB: 7000 2100 INTCC: 07 ISB: 80 DCB1: XXXX XXXX XXXX XXX X XXXX XXXX XXXX XXXX DCB2: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX CSSt-t: xxxx xxxx xxxx c Chapter 4. The Utilities 145 $DISKUT2 LU - List a Source Data Set on Term ina 1 o COMMAND(?): LU DATA SET NAME? CALSRC LIST ALL OF THE DATA SET? N FIRST RECORD: 4 LAST RECORD: 8 ATTNLIST ATTNLIST SPACE 1 POSTI POST ENDATTN SPACE 1 (STOP,POST1,CALC,POST2) KBEVENT,1 LIST COMPLETE COMMAND(?): c 146 SC34-0313 $DISKUT2 o PA - Patch a Program in Hexadec i mal COMMAND (?): PA PGM OR OS NAME: MYPROG MYPROG IS A PROGRAM ADDRESS: 312 HOW MANY WORDS? 2 CD)EC, CE)BCDIC, OR (H)EX?: H NOW IS: 0312 D3C9 E2E3 ILIST ENTER DATA: C3Cl D3D3 NEW DATA: 0312 C3Cl 0303 ICALL OK? Y PATCH COMPLETE ANOTHER PATCH? N COMMAND (?): () o Chapter 4. The Utilities 147 $DISKUT2 () PA - Patch a Program in EBCDIC COMMAND (?>: PA PGM OR DS NAME: MYPROG MYPROG IS A PROGRAM ADDRESS: 2D8 HOW MANY WORDS? 7 CD)EC, CE)BCDIC, OR (H)EX?: E NOW IS: 02D8 D4C5 D4C2 C5D9 40C4 C5D3 C5.. .• 1 MEMBER DELETEOl ENTER DATA: DELETE MEMBERa NEW DATA: 0208 C4C5 D3C5 E3C5 40D4 C5D4 C2.. .• 1 DELETE MEMBERQl OK? Y PATCH COMPLETE ANOTHER PATCH? N COMMAND (?>: () o 148 SC34-0313 $DISKUT2 o S S - Set P r Q 9 ram S t o.ll.9...e Par m: The follow i n g e x amp 1 e s how 5 reduc i ng the dynami c storage to be allocated for the COBOL compiler at program load. The SS command requires the size in bytes to be expressed in decimal. The value requested, if not an even multiple of 256, will be rounded up. > $DISKUT2 USING VOLUME EDX002 COMMAND (1): CV ASMLIB COMMAND (1): 5S $COBOL ENTER NEW STORAGE SIZE IN BYTES: 2816 OLD STORAGE SIZE WAS 8448 OK TO CONTINUE? Y COMMAND (?): EN $DISKUT2 ENDED AT 08:36:02 o o Chapter 4. The Utilities 149 $DIUTIL $DIUTIL - DISPLAY DATA BASE UTILITY o $DIUTIL maintains the disk resident data base used with graphics applications. This utility provides comprehensive facilities to keep the data base current by means of the following functions: • Initialize the Disk Resident data base • Delete a member • Rec la i m space in data base due to deleted members • Display contents of data base • Copy data base • Copy i nd i vi dua I members of data base • Allocate and bu i Id a data member This utility is normally used only when no other programs of the Display Processor are 1n use. The online data base can be changed or you may select another data base to be referenced. This allows you to create displays in a data base other than the anI i ne data base and then copy the members into the onl i ne data base after test i ng. (f.). {- Invoking $DIUTIL To start execut i on of $DIUTI L: 1. Load the program $DIUTIL specifying the appropriate data set. $DIFILE, the online data set, or any other data set can be used. However, you should make sure that another user or program is not chang i ng or us i ng the same data set. 2. The system responds with the Program Loaded message followed by: DISPLAY DATA BASE UTILITY COMMAND (?): o 150 SC34-0313 $DIUTIl o $DIUTIl Commands The commands available under $DIUTIL are listed below. To display this l i s t at your terminal, enter a question mark in reply to the prompt i ng message CO~1MAND (?):. COMMAND AL BU CP CM DE EN IN LA LH MD RE ST c - (?): ? ALLOCATE DATA MEMBER BUILD DATA MEMBER COMPRESS DATA BASE COPY MEMBER DELETE A MEMBER EXIT PROGRAM INITIALIZE DATA BASE DISPLAY MEMBER DIRECTORY DISPLAY MEMBER HEADER MOVE DATA BASE RENAME MEMBER DISPLAY DATA SET STATUS COMMAND (?): After the commands are displayed, you are again prompted with COMMAND (?): to which you respond with the command symbol for the function of your choice (for example, AL). Al - Allocate Data Member Reserves space in a data base for one of several types of data members. Information such as size in sectors and member code is requested. Member codes are spec i f i ed as fo llows: 4 - Pr i nt Report Data Member: Informat i on such as number of lines and line length are requested. Each line is then entered, limited to 132 characters. o 5 - Plot Curve Data Member: Information such as X and Y ranges, X and Y base values and number of points to plot are requested. Automatic entry of the X points can be selected to reduce the data entry requ i rements. A sawtooth pattern opt i on is prov i ded to shade under the curve for more vivid presentation of plotted data. Us i ng less than 200 po i nts on the X ax i s gives an i nadequate shad i ng effect. Chapter 4. The Utilities 151 I $DXUTXl. 6 - Realtime Data Member: The number of records is requested. You can enter hexadecimal data for testing. 7 thru 9 ~ User Data Member: These codes are used by the build function to guide you through the correct data entry procedure. COMMAND (?): AL MEMBER NAME: TOATA ENTER i OF RECORDS TO ALLOCATE? 10 ENTER MEMBER CODE #: 4 MEMBeR TDATA ALLOCATED COMMAND (?): o 152 SC34-0313 o $DIUTIL BU - Bu; Id Data Member Inserts fixed data into a data member. Thi s allows you to enter data records to describe a fixed display or enter retards, which normally will be dynamic, with a fixed value, to allow testing of the display. The member may have been allocated using Al; if not, you are prompted for the requisite allocation information before proceeding with the "build" process. You are guided one step at a time through the initialization of the data member. COMMAND (?): BU ENTER MEMBER NAME: RDATA INITIALIZE REPORT DATA MEMBER ENTER i OF LINES IN REPORT: 2 LINE LENGTH=32 ENTER LINE ITEMS LINE ONE OF REPORT LINE TWO OF REPORT ME~1BE R LOADED COMMAND (?): In this case, the member had already been allocated. o Chapter 4. The Utilities 153 $DIUTIl CP - Compress Data Base o Compress reclaims unused space in the data base. Deleted members are not actually removed; the space is merely flagged unusable. The tnsert function of SDICOMP also flags space as unusable. CM is used to reclaim this space for future use. As each member is moved, a message is displayed. At the completion of the compress 'function, the message COMPRESS COMPLETED is displayed. Caution should be exercised in using this function as it actually rearranges the members in the data base. It is advisable, in order to prevent unpredictable results, to restrict the use of the Interpreter (SDIINTR) during this process. If an unrecoverable I/O error occurs, the data set is destroyed. Caution: COMMAND (?): CP WARNING--COMPRESS IN PLACE. IF AN ERROR SHOULD OCCUR DATASET WILL BE DESTROYED DO YOU WISH TO PROCEED? Y DATA COPIED RDATA COPIED REPORT COPIED SQUARE COPIED CIRCLE COPIED RPT COPIED ARC COPIED PLOT COPIED COMPRESS COMPLETED COMMAND (1): o 154 SC34-0313 o $DIUTIL CM - Copy Member Copies a member from the source data base to the target data base. The options avai lable in MD are also included in CM. COMMAND (1): eM SOURCE DATASET NAME: $DIFILE LOCATED ON VOLUME: EDX002 CHANGE SOURCE DATASET? N TARGET (NAME, VOLUME): $DIFILE,EDX003 SAVE EXISTING MEMBERS IN TARGET DATA BASE? Y ENTER MEMBER NAME TO BE COPIED PLOT PLOT COPIED COPY COMPLETED COMMAND (?): o Chapter 4. The Utilities 155 [ $DIUTIL I DE - Delete a Member o Removes display or data members from the data base. You are prompted for the name of the member to be deleted and asked to ver i fy the accuracy of your entry pr i or to actua 1 de let i on. CO~1MAND (?): DE MEMBER NAME: PLTT DELETE MEMBER PLTT? Y PLTT DELETED COMMAND (?): EN - Exi t Program Causes the Di sp 1 ay Processor ut i i i ty to be term i nated. o 156 SC34-0313 o $DIUTIL IN - Ini t i a1 i ze Data Base Formats the ent ire data base to zeros and formats the directory to reflect the starting and ending record numbers. After entry, you are prompted to proceed. Cauti on: Th is funct i on destroys any data in the data base. Make sure the data set name entered is correct. The command is terminated when the message DATA SET FORMATTED is displayed. $DIFILE was allocated by $DISKUT1. Each di rectory record allocated by IN contains sixteen directory entries, except the first, which contains fifteen. COMMAND (?): IN *-*-WARNING THIS FUNCTION WILL DESTROY ANY DATA CURRENTLY IN DATA SET-*-* C) DO YOU WISH TO PROCEED? Y ENTER DIRECTORV SIZE IN RECORDS: 2 DATA SET FORMATTED DATASET NAME: $DIFILE LOCATED ON VOLUME: EDX002 - DATA SET -- DIRECTORVNEXT TOTAL NEXT TOTAL 3 100 1 31 END OF STATUS COMMAND (?): c Chapter 4. The Utilities 157 I $DIUTIL I () LA - D; splay D; rectory Displays all active members. Each line of display shows member name followed by four values: 1. Start i ng sector relat i ve to the start of the data base. 2. Length of member in records. 3. Membe r usage code. 4. User defined member code. COMMAND PLOT DATA RDATA REPORT SQUARE CIRCLE RPT ARC ( ? ) : LA 11 15 25 35 36 38 39 40 4 10 10 1 1 1 1 1 2 5 4 1 2 2 1 2 0 0 0 0 0 0 0 0 the (/I' '\\ l,'IL.) COMMAND (?): o 158 SC34-0313 $DIUTIL o LH - Di splay Mambel' Headel' Displays the header of a data member (types 4-9). The header describes the characteristics and use of the member. For a description of header contents, see Data Set Format in IBM Series/l Event Driven Executive System Guide, SC34-0312 Example: COMMAND (1): LH MEMBER NAME: RDATA MEMBER RDATA HEADER 000 o 2 32 80 o END OF HEADER COMMAND (1): c Chapter 4. The utilities 159 $DIUTIL MD - Move Data Base Moves the data base on the same or another volume when the data base becomes too small to add a member. You can temporarily move the online data base to another location, delete the old version, reallocate and initialize the new expanded versio~, and move back the previous contents. During this procedure, care should be observed in the use of the Interpreter. caut;on: If the data base is being moved and the Interpreter uses a member, unpredictable results will occur. Dur i ng the, execut i on of MD, you are prompted for a new source data base if des i red and a target data base. You have the opt i on of say i ng the members in the target data base. MD is helpful if you wish to use $DICOMP to develop display members in a different data base than the online version and then, at a later time, combine the new members with those in the online data base. COMMAND (?): MD SOURCE DATASET NAME: $DIFILE LOCATED ON VOLUME: EDX002 CHANGE SOURCE DATASET? N TARGET (NAME,VOLUME): $DIFILE,EDX003 SAVE EXISTING MEMBERS IN TARGET DATA BASE? Y PLOT COPIED DATA COPIED RDATA COPIED REPORT COPIED SQUARE COPIED CIRCLE COPIED RPT COPIED ARC COPIED COPY COMPLETED COMMAND (?): 160 SC34-0313 o $DIUTIL RE - Rename Member Changes the Display Profile 10 name. You are prompted for each step and no action is taken unless your response is first o b t a i ned • REi sus e f u 1 'IJ hen a n C) n lin e me mb ern e e d s t 0 b e mod i fied. The member that needs changing can be copied to another data base, mod if i ed and tested, then tenamed and cop i ed back to the online data base. By using the rename and delete funct ions, you can exchange the new for the old wi thout i nterfer i ng with any online functions. (?): RE MEMBER NAME: PLOT ENTER NEW NAME: PLTT COMMAND RENAME COMPLETED COMMAND (?): c Chapter 4. The Utilities 161 [ $DIUTIL ST - 0; splay Data Set status Displays the current data base status. The first line shows the data base location and name. The data that follows is the current status of the data base. There are 4 values presented. The first is the next available record. The second is the total number of records in the data base. You can then see how much space is avai lable for new members. If space is running short, you can compress the data base or allocate a larger area. The next value displayed is the next avai lable directory entry. The last value displayed is the total number of directory entries available. Refer to these two values to determine if more or less space is needed for directory entries. Following the completion of the status display the message END OF STATUS is displayed. COMMAND (?): ST DATASET NAME: $DIFILE LOCATED ON VOLUME: EDX002 - DATA SET -- DIRECTORVNEXT TOTAL NEXT TOTAL 41 100 10 159 END OF STATUS COMMAND (?): c 162 SC34-0313 $DUMP SDUMP - FORMAT AND DISPLAY SAVED ENVIRONMENT $DUMP displays on a terminal or printer the contents of the data set generated by the $TRAP utility. After the successful execution of $TRAP and the subsequent occurrence of a trap condition, the data set assigned to $TRAP will contain a storage image. Use $DUMP to retrieve, format, and print the data on a terminal or printer. Invok;ng $DUMP $OUMP can be invoked by the session manager using the Diagnostic Uti lities option menu or by the $L command. c Chapter 4. The Utilities 163 ~DUMP Example Dump Part of Supervisor Partition to Printer < $L SOUMP DUMPDSCNAME,VOlUME): DUMP,EDXOO3 $DUMP 22P,12:20:17, lP=8FOO Notes il.l. ENTER DEVICE NAME FOR OUTPUT $SYSPRTR .1.2.l PARTIAL DISPLAY? CY/N): Y 1.11 ENTER PARTITION I OR S FOR SUPERVISOR S ENTER START END ADDR IN HEX a 100 ..t2.l ~ EVENT DRIVEN EXECUTIVE FORMATTED STORAGE DUMP AT TIME OF TRAP PSW WAS 8002 ON HARDWARE lEVEL 2 IAR AKR lSR RO R1 R2 R3 R4 R5 R6 R7 lEVEL 0 lEVEL 1 lEVEL 2 lEVEL 3 0892 0000 0000 0000 0000 0000 0000 0000 0000 8000 0000 0892 0000 0090 0000 0000 0000 0000 0000 0001 8000 0000 0892 0000 0090 0000 0000 0000 0000 0000 0002 8000 0000 0892 0000 0090 0000 0000 0000 0000 0000 0003 8000 0000 rr-\ '-~ 164 SC34-0313 o $DUMP Dump Part of Super v i sor Part i t i on to Pr inter (cont.) Notes: 1. The data set spec if i ed here must def i ned when $TRAP was executed. be the same 2. Vou can specify a terminal to receive the output from $DUMP. If the operator presses the 'ENTER' key or enters '$DUMP', the dump program assumes that the output is to be directed to the term ina I that loaded $DUMP. Us i ng the attention key followed by 'CA' cancels the $DUMP program. 3. If a display of all storage is desired then respond to this question with a 'N'. If 'N' is used, the output display begins immediately and continue until all of storage is dumped or an attention 'CA' is entered. If 'V' is used, $DUMP allows sections of storage to be displayed. 4. Enter an '5' for the supervisor partition or the number 1 through 8 for the part it i on number to dump. 5. Enter the starting and ending addresses included in this section of the output. that as that should be c Chapter 4. The Utilities 165 [$DUMP I Dump Part of Supervisor Partition to Printer (cont.) () SEGMENTATION REGISTERS: BLOCK ADSO ADS1 ADS2 ADS3 ADS4 ADS5 ADS6 ADS7 0000 0800 1000 1800 2000 2800 3000 3800 4000 4800 5000 5800 6000 6800 7000 7800 8000 8800 9000 9800 AOOO ABOO BOOO B800 COOO CBOO DOOO OBOO EOOO EBOO FOOO F800 0004 OOOC 0014 OOIC 0024 002C 0034 003C 0044 004C 0054 005C 0064 006C 0074 007C 0084 D08C 0094 009C 00A4 OOAC 0084 OOBC 00C4 OOCC 00D4 OODC 00E4 OOEC 00F4 OOFC 0104 OIOC 0114 01lC 0124 012C 0134 013C 0144 014C 0154 015C 0164 016C 0174 017C 0184 018C 0194 019C 0lA4 OIAC 0184 OIBC 01C4 OICC 01D4 OlOC 01E4 01EC 01F4 OlFC 0204 020C 021.4 02lC 0224 022C 0234 023C 0244 024C 0254 025C 0264 026C 0274 027C 0284 028C 0294 029C 02A4 02AC 02B4 02BC 02C4 02CC 02D4 02DC 02E4 02EC 02F4 02FC 0304 030C 0314 03lC 0324 032C 0334 033C 0344 034C 0354 03SC 0364 036C 0374 037C 0384 038C 0394 039C 03A4 03AC 03B4 03BC 03C4 03CC 0304 03DC 03E4 03EC 03F4 03FC c 166 SC34-0313 $DUMP Dump Part of Supervisor Partition to Printer (cant.) STORAGE MAP: PARTI NAt1E $SVSCOM AT ADDRESS 3420 ADDR PAGES TCB PI PI PI **PART** $TRAP **FREE** 9FOO 9FOO B400 97 21 76 P2 P2 **PART** **FREE** 0000 0000 256 256 P3 P3 **PART** **FREE** 0000 0000 256 256 P4 P4 P4 P4 **PART** $SNMAIN $SMLOG **FREE** 0000 0000 0400 2600 256 4 02F8 34 1978 218 B2B4 ("""\.' ",/ o Chapter 4. The Utilities 167 [ $DUr1P ] Dump Part of Supervisor Partition to Printer (cont.) TERMINAL LIST: eeB NA~1E $SYSLOG $TERMI $TERM2 $SYSLOGA $SYSPRTR 1876 IA82 OC32 IDee IF86 DSKCETTE) LIST: 10 ADDR 0406 040E 040E 0010 0306 0004 0005 0006 0000 0001 NAME DDB TYPE EDXOOI EOX002 ASMLIB SUPLIB MACLIB EDX002 165E 16FO 1782 17A2 17C2 17E2 PRI PRI SEC SEe SEC SEC 10 ORG SIZE LIB 0106 OOAA 0 0 92 108 124 202 75 92 16 16 78 102 27 2461 1 ADOR 0002 0003 IP 1 1 1 SUPV BEGINNING AT ADDRESS 0000 FOR 139 PAGES 6802 882A 0000 0000 8968 8826 8969 8826 0000 DOlO 0000 0000 8968 8826 OA76 OA12 8968 8826 SAME AS ABOVE 0100 12DC 8BC2 0004 0006 1010 6A08 03F8 5B22 ANOTHER AREA? ( Y/N) : N 1-...... .... - I · · · B .. Note Note: $DUMP allows you to request several partial dumps. If a 'V' response is entered, then $DUMP prompts you for the starti ng and end i ng addresses that are to be dumped. See note 4. (./ ~\ " 168 SC34-0313 I $EDIT! and $EDIT!N o SEDIT! AND $EDIT!N - LINE EDITORS $EDITI and $EDITIN provide a text editing facility (primarily used for source program entry and editing) that can be invoked simultaneously with the execution of other programs. The Host Communication Facility related version ($EDITI) provides a few commands for data communication using the Host Communications Facility IUP on the System/370 so that almost the entire process of program preparation can be controlled from a Series/l terminal~ The native program preparation version ($EDITIN) produces members that can be processed by the Series/I assembler. Both versions work with 80-character lines that are line numbered in positions 73-80 and are invoked by the $L command. Data Set Requ;rements One work data set is required by the editing facility and must be allocated on disk or diskette using SDISKUTI. You are prompted for its name when eithe~ version is loaded. This data set contains both your data and some index information during the editing session, and the size (number of records) of the data set determines the maximum number of data records that it can conta in. It is d i vi ded into three parts: 1. One header record 2. A ser i es of index records (32 entr i es per record) 3• A s er i es 0 fda tar e cor d s (3 e n t r i es per r e cor d ) The required data set size can be calculated as follows: number of text lines (n) divided by 30, times II, plus 1 «n/30 xII) + I ). c Chapter 4. The Utilities 169 $EDITl and $EDITIN Sequence of Operations When the edit program is loaded, i t prompts you for the name the work data set to be used. I f an existing data set is to edited, the READ command should be used to copy the data set the work data set. For a new data set, edit mode should invoked. The contents of the work data set can be pr i nted us i the LIST command. of be to be ng The EDIT command is used to enter edit mode. Edit subcommands are then recogn i zed unt i I term i nated by the END command. No~: You should use the VERIFY ON subcommand until you become familiar with the editing process. The TABSET subcomm~nd is used, i f desired, to specify the tab character and tab column. This eliminates the entry of blanks when a substantial amount of the text to be entered is in tabular format or begins in a particular column. Data can be entered a l i ne at a time under the INPUT subcommand (recommended for new data sets and bulk sequential updates because of the automatic prompting feature) or by using the line editing function (for single line corrections). Portions of the ed i ted data can be listed at the term i nal us i ng the LIST command. The position of the current line pointer is controlled by the FIND, TOP, BOTTOM, Up, and DOWN subcommands. Ed i t mode is term; nated wi th the END command. When the text has been ed i ted, copy the work data set to a permanent data set us i ng either the WRITE or SAVE subcommand. The t~ork data set is ina blocked format that is i ncompat i ble wi th most Event Dr i ven Executive functions. Automatic translation from text editor format to source statement format is performed. The fo llow i ng figure shows the pr i mary commands mands available under $EDIT1/$EDIT1N. 170 SC34-0313 and subcom- $EDITl and $EDITIN o I >$L $EDIT1/N ( I Editor ready COMMANDS ~ I LIST (printer) READ WRITE SUBMIT END $EDIT1/N I EDIT Edit mode ) SUBCOMMANDS ~ I INPUT ~ I I END I LIST (terminal) VERIFY RENUM SAVE TABSET I LINE EDIT I CHANGE COPY DELETE MOVE FIND TOP BOTTOM UP DOWN Figure 20. $EDIT1/$EDITIN Commands and Subcommands o Chapter 4. The Utilities 171 $EDITI and $EDITIN Special Control Keys 1. End of Line Character (see note be low). The Carr i age Return Key (CR )/ENTER is used to end an input line. 2• Line Delete Character (see note below). The (DEL) of certain teletypewriter terminals delete an input line. Note: CR and DEL keys can be def i ned statement. See the System Gu i de. in Delete Key is used to the TERMINAL 3. Character Delete Character. The backspace (BS) key on terminals is used for the character delete function. On teletypewriter terminals, use the CTRL and H keys simultaneously. 4. Tabulation Character. You can set the TAB character to the character of your choice. '%' is the default TAB character. Columns 10, 20, 40, and 72 are the default TAB columns. 5. ATTN Key (4978/4979) or ESC or ALT MODE Key (teletypewriter terminals). The subcommands CHANGE, FIND, and LIST, described below, can be cancelled by pressing the ATTN/ESC key and enter i ng, as a spec i a 1 system ut i i i ty funct i on, the two character code CA. This feature is useful, for example, to termi nate a long 1 i st i ng. o 172 SC34-0313 $ED~Tl and $EDIT1N o The editor commands are described in the following pages. Unless specifically indicated, the commands apply to both the host and native versions of this utility. The editor commands are: COMMAND EDIT END LIST READ SUBMIT WRITE DESCRIPTION Enters edit mode; allows edit subcommands Terminates $EDIT1/$EDIT1N Lists the work data set on the system printer Reads a source data set into the work data set Submits a job to the host batch job stream Writes the work data set into a source data set o Chapter 4. The Utilities 173 $EDITI and $E~ITIN EDIT - Enter Ed; t Mode EDIT is used to beg; n ed i t i ng source data. Syntax EDIT OLD/NEW Required: None Defaults: NEW when using a newly allocated work data set. OLD when using an old work data set. Alias: E,ED Operands Descript;on OLD Indicates that data exists in the data set you want to modify. NEW Ind i cates that you are creat i ng new data. Notes: 1• The EDIT command must be entered before the ed i tor subcommands can be used. 2. When in ed i t mode, the subcommand END or SAVE must be entered before the editor commands listed on the preceding p age c an be used. c 174 SC34-0313 $EDITl and $EDITIN o END - End $EDIT1/$EDITIN END terminates execution of $EDITI or $EDITIN. The contents of the edit work data set are unchanged. You can re invoke $EDIT l/N at a later t j me and cont i nue. Syntax END Required: None Defaults: None Alias: EN No operands are requ ired. o Chapter 4. The Utilities 175 $EDITl and $EDITIN LIST - L; st Work Data set LIST prints all or p~rt of the work data set on the system pr inter ($SYSPRTR). A sing Ie line number can be spec if i ed or a pa i r of line numbers can be entered to 5~ec; fy a l; ne range. If no line numbers are specified, the ent.re data set is listed. List i ng can be term i nated by enter i ng ATTN and CA. Note a's i mi larity to the EDIT .ubcommand. A~ a command following READY, the data set is pr i nted on $SYSPRTR. As a subcommand followi ng EDIT, the data set is displayed on your terminal. Syntax LIST line-spec Required: None Defaults: None Alias: L,LI Operands line-spec Descriptjon '*' (for the current indicate a single line 'linenuml linenum2' to The entire data set is omitted. Examples LIST 10 100 L L LI 176 * * 5 SC34-0313 line) or 'line-number' to to be listed. '* COUNT' or display a range of lines. printed if this operand is $EDITl and $EDITIN o READ - Retr; eve Host Data Set ($EDIT1) READ retr i eves a data set from the host system and stores it in your Ser i es/l work data set. The Host required. READ Communications Facility on the System/370 is dsname Required: None Defaults: If dsname is omitted, the system prompts you Alias: None Operands dsname Description The fully qualified name of the host data set to be retr i eved. It must conta in fixed length records, 80 bytes in length, with line numbers in co 1 umns 73-80. You can enter the command and name together on the same line or enter the command READ and the system prompts for the data set name. c Chapter 4. The Utilities 177 I [ SEDITI and $EDITIN () READ - Retr; eve Ser; es/l Data set ($EDIT1N) READ retrieves a named data set from a volume on the Series/l disk or diskette and stores i t ina Ser i es/l work data set READ dsname volname Required: Default: Alias: None - Operands R, System prompts for operands RE Description dsname Name of data set to be retr i eved. volname Name of the volume containing the data set retrieved. t!Qh: These operands are entered as responses to to be ,~ , system ~ \ \.,.::) prompts. c 178 SC34-0313 $EDIT! and $EDITIN o SUBMIT - Submi t Job to Host ($EDIT1) SUBMIT injects a job (JCL and optional data) batch job stream. into The Host required. System/370 Communications Facility on the the host is Note: This option is only to be used in systems with a HASP or JES/Host Communication Facility interface. Syntax SUBMIT SUBMIT Operands ( ''''''., dsname DIRECT Description dsname The fully qualified name of the host data set, the contents of which are to be entered into the job stream. This data set must contain fixed length, 80 byte records. DIRECT If specified, the contents of your edit work data set are transferred di rectly to the host job stream. ;' j o Chapter 4. The Utilities 179 [ $EDITI and $EDITIN o WRITE - Write Work Data Set to Host ($EDIT1) WRITE transfers your Series/l work data set to a host data set. It is assumed that your data set has been created or ed i ted wi th the $EDITI uti 1 ity program. The Host required. Communications Facility on the System/370 is If a host data set has been previously speci fied, you are asked if you wish to reuse it. If not, or if one was not previously spec if i ed, you are prompted for a new host data set name. Syntax WRITE dsname Dgerands dsname Description The fully qualified name of the target host data set. Th is data set shou ld conta in fixed length 80-byte records. You can enter t~e command and name together on the same line or enter only the command WRITE and the system prompts you for the data set name. 180 SC34-0313 $EDITl and $EDITIN o WRITE - Wr; te Work Data Set to Ser; e5/1 Data Set ($EDITIN) WRITE copies the Series/1 work data set to a named data set in a Series/1 disk or diskette volume. Syntax WRITE Req~ired: Default: Alias: None - System prompts you for operands Copy to the originating data set, i f any W, WR No operands are requ ired. The following prompt is issued by EDIT1N: WRITE TO 'READVOL' OR 'READVS'?YES/NO where 'READVOL' is the originating volume and 'READVS' is the originating data set. This prompt is issued only i f the work data set was initialized via the READ command. I f the response is 'NO' or the data set is new, the following prompt is issued: I ENTER VOLUME LABEL: volname o Chapter 4. The Utilities 181 $EDITI and $EDITIN Edit Mode Subcommands ".. " 0 " , The subcommands used to edit your work data set while in EDIT mode are descr i bed as fo llows: Subcommand BOTTOM CHANGE COPY DELETE DOWN END FIND INPUT Line Editing LIST MOVE RENUM SAVE TABSET TOP UP VERIFY Operands line-spec /textl/text2/ALL line-spec line-spec count /character-string/ line-number increment line-number character-string line-spec line-spec new-line-number increment ONCinteger list), OFF, CHCcharacter) count ON/OFF (,-.~.\ ->,/ , , " 182 SC34-0313 ... o $EDITI and $EDITIN BOTTOM - Set Li ne Poi nter to Bottom BOTTOM repositions the current line pointer line of the data set being edited. (*> to the last Syntax BOTTOM Required: None Defaults: None Alias: B,BO No operands are requ ired. c Chapter 4. The Utilities 183 [ $EDITI and $EDIT1N CHANGE - Change Cha~acte~ () str; ng CHANGE mod if i es a character str i ng ina 1 i ne or range of 1 i nes. Syntax CHANGE line-spec /textl/text2/ALL Required: /textl/text2 Defaults: line-spec defaults to Alias: C,CH Qperands Description line-spec '*' *. or blank for the current line. '* count' or '1 i nenum! 1 i nenum2' for lines. a range 0 f 'line-number' for a particular line. /textl/text2/ALL ' / ' can be any non-numeric character except BLANK, TAB, and ASTERISK. It is not a part of, "and cannot appear within the character strings 'text!' and 'text2'. The line or range of lines is searched for 'text!', which, if found, is replaced by 'text2'. Note that the same character must be used for both del i mi ters in anyone change command. The keyword 'ALL' is optional and causes every in the occurrence of 'text l' to be replaced line(s). Two adjoining delimiters denote a null operand. If text! is a null operand, then text2 is inserted at the start of the line. The line is shifted right. If text2 is a null operand and text! is specified, text2 is removed from the line and the rest of the line shifted left. o 184 SC34-0313 $EDITl and $EDIT1N o Example C 20 /ABC/ADC/ C 100 250 =/*=//=ALL C * //XYZ C /PROG/PGM/ c Chapter 4. The Utilities 185 [SEDITI and $EDITlN ] COpy - Copy Text () COpy duplicates text, from one location in a data set, at another location within that data set. The 'from' and 'to' text both remain in the data set. Syntax COpy linenuml linenum2 linenum3 Required: linenuml linenum3 Defaults: linenuml linenurn3 defaults to a single line copy of ' 1 ' to ' 3 ' • Alias: CO Operands Description linenuml The first line of text to be copied. linenum2 The last line of text to be copied. linenum3 The line of text after which the copied text is to be placed. All specified line numbers must exist. 'linenum2' must be equal to or greater than 'linenuml'. 'linenum3' must be less than 'linenuml' or equal to or greater than 'linenum2' when three line numbers are spec if i ed. The data set is renumbered wi th standard specifications. The original 'linenum2' is listed with its new line number on exit. ~ I.J ( 186 SC34-0313 o [ $EDITl and $EDIT1H Example CO 100 CO 120 CO 150 COpy 300 250 150 150 60 820 310 310 Note: The last two examples are equivalent. o Chapter 4. The Utilities 187 $EDITI and $ED~~IN o DELETE - Delete Text DELETE removes records from the data set. The current pointer C*> is repositioned prior to the deleted lines. line line-spec DELETE Required: None Defaults: * Alias: DE Oeer~nds line-spec Descrietjon * for current '* count' or 1 i ne. 'I i nenurn1 1 j nenum2' for a range of lines. '1 i ne-number' for a part i cular 1 i ne. Example DELETE * DE * 4 DE 100 150 DE 125 c 188 SC34-0313 o $EDITI and $EDITIN DOWN - Move Li ne Po; ntar Down DOWN moves the current line pointer C*) toward the end of the data set. Syntax DO~JN count Required: None Defaults: 'COUNT' defaults to 1. Alias: DO Operands couRt Description Spec if i es the number of po inter is to be moved. lines the current line Example DOWN 5 DO 10 0 '" I, Chapter 4. The Utilities 189 I $EDITI ~n~$EDITIN END - Ex; tEd; t Mode o END requests that the EDIT mode be terminated. The editor commands can now be used relative to your finished source data. To save or list your data set or to write or submit your data set to the host, see "Editor Commands" on page 173. The contents of the work data set rema i n unc'hanged. You can re'-enter the ed i t mode using the EDIT command and continue editing the work data set. END Required: None Defaults: None Alias: EN No operands are requ ired. o 190 SC34-0313 o $EDITl and $EDIT1N FIND - F; nd Character str; n9 FIND searches for a specified character string beginning with the current line, if operands are specified (see ~yntax.) The current line pointer (*) is moved to the first line found to contain the string. The search is made at every position within each line. Note: VERIFY should be set to ON when using the FIND command. ~yntax FIND =char-string= Required: None Defaults: If no operands are specified, those specified on the last previous issue of the FIND subcommand are assumed., The search begins at the line following the current line. Alias: F,FI Operands Description =char-string= The string delimiter can be chosen to be any nonnumeric character, except BLANK, TAB, or ASTERISK and which does not appear within the specified character string. The second occurrence can be replaced by a carriage return. Note that both delimiters must be the same character. Example FIND /START/ F FI =DATA X'OOFl'= o Chapter 4. The Utilities 191 o INPUT - Inpu't Text INPUT allows lines to be added or replaced. INPUT can be used any time in ed it mode by press i n9 the ENTER key. lines are then added to the end of the data set. To terminate INPUT mode, press the ENTER key immediately after you rece i ve the prompt for the next line number to be entered. INPUT line-number or * increment increment Required: None Defaults: Increment defaults to previous or 10 Alias: I,IN OQ....erands Description line-number The first line inserted will have this number, or this number plus the increment if the specified line number already exists. increment The increment for numbering inserted lines. The default is the previously specified increment or 10 if not specified. * lines are to be inserted at the current line position plus the default increment. If no operands are specified, lines are to be inserted at the end of the data set plus the default increment. c 192 SC34-0313 o SEDITl and $EDITIN Example INPUT * 1 IN 100 5 I 20 I C:I 0 ", ,'I",' Chapter 4. The Utiliti~s 193 $EDITl a~d $EDITlN I LIST - Li st Work Data Set LIST displays, at the terminal, lines of the data edited. LIST set being line-spec Required: None Defaults: line-spec defaults to entire data set Alias: L,LI 1ULerands line-spec Description C*) or line-number to indicate a single line to be listed. '* count' or 'linenuml linenum2' to displaya range of 1 i nes. Example LIST 10 100 L L LI * * 5 c 194 SC34-0313 o $EDITl and $EDITlN MOVE - Move Text MOVE moves text from one location in a data set to another location within that data set. The 'from' text is deleted and only the 'to' text remains in the data set. Syntax MOVE linenuml linenum2 linenum3 Required: linenuml linenum3 Defaults: linenuml linenum3 defaults to move one line. Alias: MO Ope ran d s .p e s c rip t.iQ.n, Ii nenuml The first line of text to be moved. linenum2 The last 1 i ne of text to be moved. linenum3 The 1 i ne of text after wh i ch the moved text is to be placed. All spec if i ed 1 i ne numbers must ex i st. 'I i nenum2' must be equal to or greater than 'linenuml'. 'linenum3' must be less than 'linenuml' or greater than 'linenum2' when three line members are specified. The data set is renumbered with standard specifications. The origin~l 'linenum2' is listed with its new line number on exit. Example MO 100 300 60 MO 120 250 820 MO 87 87 310 MOVE 87 310 Not~: The last two examples are equivalent. o Chapter 4. The Utilities 195 I :~E~ITl and $EDITlNJ RENUM - Renumber Wor k Data Set RENUM renumbers each 1 i ne of a l i ne numbered data set ass i gns 1 j ne numbers to each 1 i ne of an unnumbered data set. or Syntax RENUM new-line-number Required: Defaults: None Both new-line-number default to 10. Alias: R, and increment RE No t.1t : ' new - 1 i n e - n u mb e r' specified. Q[Le rands increment i s r e qui red i f ' inc rem e nt' i s .Descr i pt ion /~---\ \,,",,'; new-line-number The sequence number to be ass i gned to the first 1 i ne processed. increment The increment to be used in renumber i ng. Example RENUM 10 10 RE 100 5 RENUM R o 196 SC34-0313 o $EDIT! and $EDIT!N SAVE - Save Work Data Set SAVE wr i tes the current contents of the L>Jork data set to a host data set with the host related version ($EDIT!) or to a Series/! data set with the nati ve related version ($EDITIN). If a data set has been previously specified (e.g., in a READ command), you are asked if you wish to wr i te onto that data set; otherwise, you are prompted for a new data set name. Syntax SAVE dsname Required: None Defaults: None Alias: S, SA ( "',/: Operands dsname Description When using $EDIT!, you are prompted for the target host data set name. It must be a fully qualified data set name. When using $EDIT!N, the target data set must have been previously allocated in a volume on a Series/l disk or diskette. The data set should contain fixed length records, 80 bytes in length. You are prompted for the target volume name. Example SA S SAVE o Chapter 4. The Utilities 197 SEDITl and $EDITIN () TABSET - set Tabs TABSET reestablishes tab values or nullifies existing t~b values. The tabulation character and tab stop values are mainta i ned as part of your work data set. (They can be changed later). The tab character can be entered anywhere in the data line under the INPUT subcommand or line editing function. It causes a skip to the next tab position when the data line is entered into the work data set. The resulting line is not visible, but can be displayed if desired. Syntax ONCinteger-list) OFF CHCtab-character) TABSET TABSET TABSET Required: ON, OFF, or CH Defaults: None Ali~s: TA Operands Description integer-list The relative column positions in each line to which tab values are to be set. Initial system defaults are 10,20,40, and 72. tab-character A new tab character. sign. OFF The standard is a percent Term i nates the tab funct ion. c 198 SC34-0313 o $EDITI and $EDITIN Examples TABSET ONCI0 20 40 72) TA ONCIO 16 31) TA CHCI) TA OFF TABSET ONCI0 20) 36 %TAB POSITION 1 INPUT 37 I INPUT 00037 %%TAB POSITION 2 00038 o EDIT LIST 36 37 00036 00037 TAB POSITION 1 TAB POSITION 2 o Chapter 4. The Utilit'ies 199 I $EDITI and $EDITIN TOP - set Line Poi nter to Top TOP pos i t j ons the current 1 i ne po inter 1 i ne of the data set. (*) before the first TOP Required: None Defaults: None Alias: TO No operands are requ ired. Note: If VERIFY is ON, no line is printed because the current line number precedes the f i rs't· line. o 200 SC34-0313 $EDITl and $EDITlN o I UP - Move Line Pointer Up UP moves the current line pointer (*) toward the start of the data set. Syntax UP count Required: None Defaults: Count defaults to 1 Alias: U Operands count Description The number of lines that the current line pointer (*) is to be moved. Example UP 10 o Chapter 4. The Utilities 201 [ $EDITl and $EDITlN 0 1',1' VERIFY - Di splay Changes on Termi nal ~" VERIFY causes the changes you made to be shown on the terminal (ON), or not sho"Jn (OFF). Verification is off until it is invoked the first time during an edit • ..s..Y.ntax VERIFY ON/OFF Required: None Defaults: ON V,VE Alias: Operands Description ON Each time the position of the current line pointer (*) changes, the line to which it moves should be printed. In addition, modifications made in fields of records using the 'character-string' or 'text' forms of the CHANGE subcommand are ver if i ed. OFF Changes of the position of the current line pointer (*), and of fields of records by means of the CHANGE subcommand, are not to be ver if i ed. Example V ON V V OFF VERIFY c 202 SC34-0313 $EDITl and $EDITIN o Line Editing Commands The line editing commands allow a single line to be replaced, or deleted from the data set being edited. added, Note: Line ed it i ng funct ions are not subcommands. Syntax line-number character-string Required: line-number Defaults: None Note: I f spec if i ed, 'character-str i ng' must be separated from 'line-number' by a single blank or tab. ·Operands Description line-number 'line-number' with an immediate carriage return deletes the 1 i ne hav i ng the spec if i ed number (i t does nothing if the line does not exist). 'L i ne-number', fo 110wed by a character str i ng, adds the string to the data set. If a line having. the s p e c i fie d Ii u mbe r a 1 rea dye xis t s, i t i s rep 1 ace d' it character-string The text of the 1 i ne to be added. c Chapter 4. The Utilities 203 $EDITl and $EDIT1N Examples Add line (line 112345 does not exist) 12345 This line is being ~dded Delete line 12345 [ 12345 Replace ~345 li~e 12345 This line replaces 12345 c 204 SC34-0313 $FONT ] o $FONT - PROCESS 4978 CHARACTER IMAGE TABLES $FONT, a special purpose utility, creates or modifies character image tables for the 4978 display station. Each character image is def i ned by a dot matr i x that is coded into eight bytes of data. The entire table of codes requires 2048 bytes of storage. For details on the associated 4978 hardware, see the Bibliography for the 4978 Display Station manuals. $FONT requ i res one prea Ilocated data set of 2048 bytes (8 records). The data set can conta ina character i mage tab Ie, or it can represent storage for a new table to be constructed. $FONT Commands The commands available under $FONT are listed below. To display this list at your terminal, enter a question mark in response to the prompt i ng message COMMAND (?):. (~ "\ COMMAND ( ? ) : ? ) DISP EDIT SAVE PUT GET END DISPLAY TABLE ENTER EDIT MODE SAVE TABLE LOAD TABLE INTO DEVICE READ TABLE FROM DEVICE END PROGRAM COMMAND ( ? ) : After the commands are displayed, you are again prompted with CO~1f1AND (?):. You respond with the command of your choice (for example, DISP). DISP - Di splay Table The character images defined by the table are displayed along with their associated EBCDrC codes. EDIT - Enter Ed i t Mode o Edit mode enlarges the display for modification of the dot matrix patterns (a complete description of the edit mode funcChapter 4. The Utilities 205 $FONT o tions is given following this section). END - End Program When you enter the END subcommand, the system displays the message SAVE TABLE? if edit mode has been entered at least once since the last SAVE operation. This allotr.ls you to save the current table, if desired, before ending the program. GET - Read Table from Devi ce The image store is read from a (4978) terminal and becomes the current table. The GET command followed by SAVE provides a means for in it i ali zing a data set with a character i mage tab Ie. PUT - Load Table into Dev; ce The current table is written to the image store of a (4978) terminal. A terminal name can follow the command on the same line, or you are prompted for it. The image store is a table which conta i ns codes for gene rat i ng characters or i mages for the 4978 terminal. SAVE - Save Table The current table, reflecting any changes made during mode, is wr i tten to the data set des i gnated at load time. edit Edit Mode When you enter edit mode, a 4X8 grid is displayed in the center of the screen. For each grid row, the centers of seven overlapping dot areas occur at the centers of each of the four squares and at each of the three interior grid lines. (See 4978-Lpis1tl a y S tat; 0 nan d At t a c "me. n t Ge n era I I.n for mat; 0 n for d eta i Iso n the character matr i x.) Dots are represented wi th the followi ng pattern: o 206 SC34-0313 $FONT Screen Format The following complete screen format appears after you select a character for display: TAB FORWARD TAB BACK NEXT LINE INVERT DOT SET PATTERN COMMAND MODE PFI PF2 PF3 PF4 ENTER PF5 CODE o A (Cl) II II IIII IIII A o Chapter 4. The Utilities 207 $FO~IT Character Image DisRlay and Modification You can d i sp lay and mod i fy the character i mages as fo llows: 1. Spec i fy the character to be viewed either by enter i ng a character at the cursor position (the alphanumeric field), or by entering the hexadecimal representation of the EBCDIC code between the parentheses (the hex fie ld) • 2. Press the ENTER key. The character image, as determ i ned by t h.e tab led e s i 9 nat e d a t loa d tim e, i s dis pIa ye don the grid. For 4978 terminals, the image is also displayed beneath the grid in normal dimensions. If the character was designated with an alphanumeric field entry, then the EBCDIC code as determined by the keyboard in use is displayed in the hex field. 3. The program function keys can then be used according to the displayed instructions to modify the dot pattern. Note that adjacent or overlapping dots appear as a continuous solid line on the grid. This reflects a feature of the character generat i on hardware on the 4978 display. 4. When the des i red pattern has been constructed, press ENTER. The word CODE on the code entr y line changes to SET, displayed at high intensity. At this point, press ENTER again and the new pattern replaces the existing pattern for the spec if i ed code. To assoc i ate the pattern wi th a new code, alter either the alphabetic or hex field before press i ng ENTER. o 208 SC34-0313 $FSEDIT o $FSEDIT - FULL SCREEN EDITOR $FSEDIT is a full-screen text editing utility that helps you develop and modify programs. It operates the terminal as a static screen device and therefore must be run from a terminal with static screen capabi lity (4978/4979). With $FSEDIT you can: - Edit programs using a full screen • Scroll information forward and backward - U s e PF (program function) tions keys for frequently used func- - Insert a mask for pref ill i ng inserted lines - Merge data from other data sets - Communicate with a System/370 in conjunction with the Host Communication Facility IUP installed on the host System/370 NQ..i.g,: To use $FSEDIT, the modules SFSUTIL, $FSUTLN, $FSHELP and $FSIMI to $FSIM8 must reside on the system IPL volume. Data Set Requ;rements $FSEDIT requires a preallocated work data set for use as a text edit work area. This work data set is automaticallY allocated if $FSEDIT is invoked by the session manager. If you use the $L command, you can provide the name of the work data set when you enter the load request, or when $FSEDIT issues a prompt for the name of the work data set. Text data (source statements) within this work data set are in a special text editor format, identical to that used by the $EDITIN text editor. See "Data Set Requirements" on page 169. Data within a work data set can be edited by either $EDITIN or $FSEDIT. Note: $FSEDIT uses source data sets of 80-character lines that are line numbered in positions 73-80 for host or Series/l data sets or in pos i t ions 1-6 (COBOL convent ion) for host data sets. o Chapter 4. The Utilities 209 $FSEDIT Whe.n you end a text editing utility session, save the contents of the work data set in a source data set on disk, diskette or tape. If a new data set is used, a prompt is issued asking if the work data set is to be written to the same disk, diskette, or tape it was read from. If your response is N, a prompt is issued asking for a new data set to be used. If the data set does not exist on the volume specified, $FSEDIT creates it automatically. Automatic translation from text editor format to source statement format is performed. () Caution: If you write the work data set out to a multifile tape, all files following this data set will no longer be accessible. Scrolling During editing and browsing, the information to be displayed usually exceeds the si ze of the display screen. Scrolling allows you to page UP or down through the information. Two PF keys are used for th i s purpose -- one for each direct i on. Whenever scrolling is allowed, a scroll amount, displayed at the end of the second line of the display, shows the number of lines scrolled with each use of a scroll key, PAGE or P Specifies scrolling one page (22 lines). HALF or H Specified scrolling a half page MAX n or M ( 11 lines), Specifies scrolling to the top or bottom of the data set. Specifies number of scrolling lines You can change the scroll amount by moving the cursor to the scroll field and overtyping the amount currently displayed. To change the scroll amount, type over the first character with a P, H or M to change the scroll amount to a page, half page, or maximum, respectively. To specify a number of lines to scroll, o v e r t y pet h e fie I d wit h the n u mb e r 0 f l.i n e s des ire d • In browse mode, the scroll amount is initialized to PAGE; in edit mode, it is initialized to HALF. the new value remains in effect for sess i on un less you change it. The exception; following a MAX scroll, the back to the initial value. When you make a change, the remainder of the va 1 ue for MAX is an scroll amount defaults c 210 SC34-0313 $FSEDIT o Program Function Keys The ATTN and six program funct i on keys are used to request commonly used or special $FSEOIT operations as follows: PFl Redisplays the screen image. All changes are ignored and the original data is displayed. PF2 SCROll field. PF3 SCROLL OO~~N scrolls down scroll amount field. the PF4 REPEAT FIND repeats FINO pr j mary command. action PFS REPEAT CHANGE repeats the action of the previous CHANGE pr i mary command (App lies on I y to ed i t mode). PF6 PR INT SCREEN pr i nts the screen i mage on the system pr inter ($SYSPRTR). The use of PF6 for hardcopy may have been changed by use of the TERMINAL HOCOPY statement (see the ~tem Guicill>. ATTN CA Cancel the l i s t option. Pressing the ATTN key and typing CA stops the l i s t option of $FSEOIT and returns to the primary option selection l i s t . UP scrolls up the amount shown in scroll amount the amount of shown the in the previous Note: The PF2 - PFS keys are active only during browse and edit modes. PFI use is only meaningful during edit mode. o Chapter 4. The Utilities 211 L,$FSEDIT I $FSEDIT Options and Command Summary This summary shows the options and commands $F SED IT. A des c rip t ion 0 f e a c h follow s • available under Primary Options: ~'ERGE READ SUBMIT t~R IT E BROWSE EDIT END HELP LIST Display Data Set Edit Data Set Terminate $FSEDIT Display Commands Print Data Set Merge Data from a Source Data Set Retrieve Data Set From Native/Host Submit Job to Host Transfer Data Set to Native/Host BROWSE Primary Commands: END FIND LOCATE MENU - Same as MENU Find a Character String Find Data by Line Number Return to Primary Option Menu ~.-------------------------,------------------------------------------~ EDIT Primary Commands: CHANGE CLEAR END FIND LOCATE NENU RENUM RESET - Modify Character Strings Clear Work Data Set Return to Primary Option Menu Find Character String Find Data by Line Number Return to Primary Option Menu Renumber Data Set Clear Line Commands EDIT Line Commands: A,B C,CC COLS D,DD I,ll M,MM MASK - Define Copy/Move Destination Copy Lines of Text Display Columns Delete Text Insert Text Move Line of Text Display Insert Mask c 212 SC34-0313 $FSEDIT o P~;ma~y Option Menu When $FSEDIT is loaded, the following primary option menu (selection list) is displayed. To select the desired function, enter the number of the opt i on in the 'Se lect Opt i on' input field. ---------- SFSEDIT PRIMARY OPTION SELECT OPTION ===> 1 1 2 3 4 5 6 7 8 9 BROWSE EDIT READ WRITE SUBMIT LIST MERGE END HELP - MENU ------------- DISPLAY DATASET CREATE OR CHANGE DATASET READ DATASET FROM HOST/NATIVE (H/N) WRITE DATASET TO HOST/NATIVE (H/N) SUBMIT BATCH JOB TO HOST SYSTEM PRINT DATASET ON SYSTEM PRINTER MERGE DATA FROM A SOURCE DATASET TERMINATE SFSEDIT DISPLAY TUTORIAL opt ion 1 - BRO'''SE The BROWSE mode allows you to display and examine a source fi Ie in the work data set, but prevents the possibility of changing it. In this mode, you can view all parts of the work data set using the scroll i ng funct i on (i nvoked by press i ng PF keys). In addition, two primary comm~nds are used to locate specific i nformat i on wi th i n the data set. FIND Searches for a des i gnated text str i ng LOCATE Searches for a des i gnated line number. These primary option commands are Commands" on page 218. o discussed under "Primary During browsing, the current number of lines in your data set and the maximum number of lines the work data set can hold is displayed on the top line of the display, following the data set name and the volume identification. (The maximum number of lines is displayed in parentheses. ) Chapter 4. The Utilities 213 $FSEDIT Browsing is terminated by entering the primary command MENU in the command input field to return to the Pr i mary Opt i on Menu. opt; on 2 - EDIT In the ed i t mode, you can mod i fy an ex i st i ng source data set or create a new one. To do th is, you use: • Program function keys for two-way change and find scrolling and repeat • Primary commands (CHANGE, CLEAR, END, FIND, LOCATE, MENU, RENUM, and RESET) • Line edit commands to manipulate whole lines or blocks of lines. Creating a Source Data Set To create a new source data set, you enter EDIT mode (option 2 of the primary option menu) with an empty data set (the work data set specified when SFSEDIT was invoked). Because the work data set is empty, the editor assumes insertion (creation) of lines is desired and the INSERT function is active. Following is an example of the initial display when editing an empty data set. EDIT --- EDITWORK, EDX002 0(24)--- COLUMNS 001 072 COMMAND INPUT ===> SCROLL ===>HALF ***** ***** TOP OF DATA ******************************** ***** **** BOTTOM OF DATA ****************************** The top line of the screen, from left to right, displays ut ility mode (EDIT), the name and volume of the work data set (EDITWORK,EDX002), the number of source statements in the work data set, and in parentheses, the total number of statements the data set will hold. The cursor is positioned at character position 1 of the insert line. After you enter i nformat i on on th i s line, press the ENTER key to wr i te the data on the screen to your work data set. 214 SC34-0313 o $FSEDIT o The utility then numbers the entered line and sets up for the next insert line. As you continue in this manner, a new insert line is readied each time the preceding line is entered (ENTER key). The insert (creation) operation is terminated by pressing the ENTER key wi thout enter i ng anyth i ng on the new insert 1 i ne. Note: $FSEDIT does not distinguish between input mode and edit mode during editing operations and data on the screen can be changed at any time. To save the source statements just created, return to the primary option menu (using the MENU command). Use the WRITE option to save the newly created data set. You are prompted for the name of the target data set and volume. Modifying an Existing Data Set To modify (edit) an existing data set, it must first be read into the work data set using option 3 (READ) of the primary opt i on menu. ~ ,~ C) Once your data set has been read into the work data set, you can locate and change information by scrolling the data set by press i ng the PF keys. The PF keys and def i nit ions are descr i bed under "Program Funct i on Keys" on page 211. To modify data on the screen, move the cursor to the desired location and enter the new information. Several lines can be changed before pressing the ENTER key. A single line or blocks of lines can be deleted, inserted, duplicated, or rearranged using the edit line commands. These are discussed under "Edit Line Commands" on page 226. For general editing purposes, primar'y edit commands are used to find and change designated character strings and to change the 1 i ne number i ng sequence. These commands are discussed under "Pr i mary Commands" on page 218. After you finish modifying the data set, use WRITE to save the data in the same data set it was read from or to a new data set on disk or diskette. Editing is terminated by entering the primary command END or MENU in the command input field, which returns you to the primary opt i on menu. Chapter 4. The Utilities 215 $FSeDIT 1 Opti 0:" :5 - READ o The ~EAD option retrieves a data set from either a host system ora .dat a set and i s k, dis k e t t e, 0 r tap eon the nat i ve 5 e r i e s /1 system and stores it in your work data set. The primary option menu remains on the display and the area below it is used to prompt for the data set name and to provide information. The data set n a me en t ere d mu s t b e f u 1 1 y qua 1 i fie dan d mu s t con t a i n fix e d Ie n 9 t h 8 0 - b y t ere cor d s • Line numbers for nati ve data sets must be in columns 73-80. For line numbers can be in either columns 1-6 or 73-80. If the line numbers in the data set exceed the maximum al10~ed by $FSEDIT (32767), the data is automatically renumbe r ed with a smaller lin e number inc rem e n t • htist data sets, When the READ is completed or terminated because of an error, the number of lines transferred, or the appropriate error message, is displayed and the cursor is moved to the 'Select Option' input field. This indicates the completion of the READ ~unction and another option can be selected. The READ to host requires the Host Communications Faci lity on the System/370. opt; on 4 -WRITE The W.RITE option transfers the contents of the work data set to a ho~t/native data set. A prompt is issued asking if the work dat~ set is to be written to the same disk, diskette, or tape dat~ set i t was read from. If the response is NO (N), a prompt is issued ask i ng for a new data set to be used. If the data set does not exist on the volume specified, it is created automatically~ The WRITE to host requires the Host Communications F a c ili··t yon the S y s t e m/ 3 7 0 • Mo t e '.: The l~ RI TEo p t ion doe s not des t roy the con ten t 5 0 f the work data set. Therefore, the WRITE option can be directed to another data set to obtain a backup copy. The WRITE option can a 150 be .U sed follow i n g fur the red i tin 9 o'f the w0 r k d a t a 5 e t • Caut.io·n. 1. If YOU increase the contents of the work data set so that 1 t is too big to be written back to the source data set, $FSEDIT deletes the source data set and attempts to reallocate i t with enough space to save the work data set contents. If the allocation fails, the original source data set is lost. However, the work data set rema i ns intact and can be s a v e din a 5 u ita b 1 e so u r c e d a t a set. ·lfyou write the work data set out to a multifile tape, all .fi 1 e 5 f oIl 0 win 9 t his data set wi I 1 no longer be access i b 1 e • 216 SC34-0313 o o $FSEDIT opt; on 5 - SUBMIT The SUBMIT option injects a job (Jel and optional data) into the host job stream. The display and operation are similar to the READ and WRITE commands. The data set name entered must be the fully qualified name of the host data set containing the JCl to be submitted. If the keyword DIRECT is entered instead of a data set name, the contents of the work data set are transferred directly into the host job stream. The SUBMIT to h~st requ i res the Host Commun i cat ions Fac iii ty on the System/370. Noh: The DIRECT option is only to be used in systems with HASP or JES2 interface. a opt; on 6 - LIST The LIST option prints the entire contents of the work data set on the hardcopy device assigned to the terminal. (The listing can be terminated at any time by pressing the ATTN key and typing CA.) opt; on () 7 - MERGE The MERGE opt i on merges all, or part, of a sour'ce data set into the current edit work data set. You are prompted for the names of the Series/l source data set and volume. If the specified data set is found, you are then prompted for the first and last line numbers of the data to be copied. If the entire data set is to be merged, an '*' can be entered instead of the 1 i ne number specifications. You are also prompted for the line number of the current work data set after which the data is to be added. The spec if i cat i on of an aster i sk is only to be used for the source data set. (I f the format of the 1 i ne number spec i f i cat ion s i s inc 0 r r e c t, an err 0 r me s sag e i s dis p I aye d an d you ar e prompted for the data again.) If all parameters are correct, the data is then read from the source data set, added t~ the current work data set and the current work data set is renumbered. To cancel the MERGE function, press the ENTER key when prompted for MERGE FROM data set name. Caut; O!1.!.. 0 n c e the mer g e has s tar ted, i t mu s t b e a 11 0 wed to complete nor'mally or unpredictable results may occur. Series/l source data sets are defined to consist of 80 character 1 i nes wh i ch are numbered in columns 73-80. o Chapter 4. The Utilities 217 r $FSEDIT Opti on B - END () The END opt 1 on termi nates $FSEDIT. Opti on 9 - HELP The HELP option displays tutorial text on the use of $FSEDIT. Primary Commands Primary commands are entered on line 2 of the display in the Command Input Field. All pr i mary commands can be entered wh i Ie in ed j t mode. In browse mode, three pr i mary commands are recogn i zed by $FSEDIT: LOCATE, FIND, MENU. Most of the pr i mary commands can be entered in abbrev i ated format. Only the first character is required. Minimum free form format is indicated with each command enclosed in (). The function of each of the primary commands is described on the fa llow i ng pages. o 218 SC34-0313 o $FSEDIT C (CHANGE) - Change Text (Ed; t Mode Only) Changes text str i ngs. The search for the 'text l' str i ng proceeds unt i 1 the str i ng is found or the bottom of the data set is reached. If found, 'textl' is replaced with 'text2'. If the two text str i ngs are not the same length, automat i c sh i ft i ng is performed by expanding or collapsing blank characters at the end of the line. If insufficient blanks exist for shifting right without shifting a non-blank character into column 72, the change is not made and the line is displayed with an error message in the line number field. (If the ALL option was selected, the change is terminated at this point.) If the 'text!' string is not found, you are notified with an error message displayed on the top line of the screen. PFS would repeat the prev i ous CHANGE spec if i cat ion. Syntax CHANGE /textl/text2/option C /textl/text2/option Requi~ed: /textl/text2/ Defaults: option defaults to Operands 'NEXT' Descriptjon /textl/text2/ The delimiter (/) can be any alphanumeric character except blank. It is not part of, and cannot appear in, the character str i ngs 'text l' and' text2'. All three delimiters are required and all must be the same character. 'text!' and 'text2' can be any character str i ng not conta i n i ng the de lim iter used. option Def i nes the beg i nn i n9 and the extent of the search. The following are valid options: NEXT a,\' Locate and change the next occurrence of 'textl' to 'text2'. The search starts with the first line displayed. FIRST " Chapter 4. The Utilities 219 $FSEDIT ] 0. . \ Locate and change the first occurrence of 'text!beg inn i ng the search at the first line of data set. 1 ., ." ALL Locate and change all occurrences of 'text!' beginning at the first line of the data set. C ,. 1 220 SC34-0313 .~ $FSEDIT o CL (CLEAR) - Clear Work Data Set (Ed; t Mode Only) Clear the work data set. Syntax CLEAR CL Required: Defaults: none none No operands are requ ired. E (END) - End PI'; mary Command Input Return to Pr i mary Opt i on Menu. The END command term i nates ed i t or browse mode and returns to the Pr i mary opt i on Menu screen. Syntax No operands are requ ired. o Chapter 4. The Utilities 221 [ $FSEDIT o F (FIND) - Find Text String Find and display text strings. The search proceeds until the text string is found or until the end of the data set is reached. If the string is found, automatic scrolling takes place to display the line containing the text string to be displayed at the top of the data area of the display. If the string is not found, you are notified. PF4 repeats the previous FIND specification. Syntax FIND /text/ option F /text/ option Required: /text/ Defaults: option defaults to Operands 'NEXT' Description /text/ The delimiter (/) can be any alphanumeric character except blank which does not appear within the text string. Both delimiters are required and must be the same character. option Defines the beginning opt ions are: of the search. The valid NEXT The search starts with the first line of the current display. FIRST The search starts at the first 1 i ne of the data set. o 222 SC34-0313 o $FSEDIT L (LOCATE) - Locate L;ne Number Locate and display the requested line number. The data set is searched for the requested line. If found, automatic scrolling takes place and the requested line is displayed at the top of the display. If the requested line number does not exist, an error message is displayed. Syntax LOCATE line-number L line-number Required: Defaults: Operands o line-number none Description line-number The number of the line to be located and displayed. M (MENU) - Return to Pr;mary Opt;on Menu Return to Primary Option Menu. The MENU command terminates edit or browse mode and returns to the Primary Option Menu screen. MENU M No operands are required. o Chapter 4. The Utilities 223 $FSEDIT () R (RENUM) - Renumber Data Set (Edit Mode Only) Ass i gn new line numbe.rs to each line of the data set. '£y'ntax RENUM first increment R first increment Required: none Defaults: first and increment default to 10 or to the values last used. QRerands Description first The number to be assigned to the first line of the data set. increment The increment numbers. to be used in generating line Not~: If the number of lines in the data set is so large that the maximum line number of 32767 is exceeded, the 'first' and 'increment' values are automaticallY reduced unti I the data set can be properly renumbered. o 224 SC34-0313 o $FSEDIT RESET - Reset L; ne Commands (Ed; t Mode Only) The RESET command can be used to ~~set e~~oneous o~ unwanted line commands, to reset line numbers td normal after they were replaced with ERR messages and to terminate the display of the MASK 1 i ne • Syntax RESET Required: none No operands are requ ired. o Chapter 4. The Utilities 225 $FSEDlt Edit L;ne Commands o The edit line commands are used to delete, insert, duplicate, or reatrange a single line or a group of lines. They are valid only in edit mode. Single charactet line commands operate on single lines of data and are spec if i ed by enter i ng the line command in the first position of the line preCeding the line number. Double cha~acter line commands operate on blocks of data and are specified by entering the block command in the first two positions on the first and last line of the block of data. A (After) and B (Before) Defines the destination for a copy or move operation. The 'A' and 'B' lirie commands are entered to define the destination of a copy or move operation. The 'A' defines the destination as be i ng after the line and the 'B' de fines the dest i nat i on as being before the line. Thus it is possible to move or copy anywher e i nth e d a t a set, inc 1 u d', n 9 b e for e the fir s t lin e 0 r aft e r the last line. c (Copy L; ne) and CC (COpy Block) Dup Ii cate lines of data with i n the data set. The procedure for dupl i cat i ng I j nes is the same as for mav i ng except that the' C' or 'CC' rep laces the t ~1' or 'MM'. The copy ope rat i on leaves the original data intact and inserts a duplicate copy of the data at the destination specified. The entire data set is renumbered at the complet i on of the copy operat i on. c 226 SC34-0313 o $FSEDIT Example kruD!. Block EDIT --- EDITWORK, EDX002 24)--- COLUMNS 001 072 2C COMMAND INPUT ===> SCROLL ===>HALF ***** ***** TOP OF DATA ******************************** CCOOOIO LINE 1 CC00020 LINE 2 B**** **** BOTTOM OF DATA ****************************** .screen image after Block COPY EDIT --- EDITWORK, EDX002 4( 24)-BLOCK- DATA RENUMBERED COMMAND INPUT ===> SCROLL ===>HALF ***** ***** TOP OF DATA ******************************** 00010 LINE 1 00020 LINE 2 00030 LINE 1 00040 LINE 2 ***** **** BOTTOM OF DATA ****************************** o Chapter 4. The Utilities 227 0"',:' , COLS - Di splay Columns " ' The COlS command are used to display a line showing column numbers. To display the column numbers, type COLS starting in the left margin of the line where the display is desired. D (Delete Line) and DD (Delete Block> Delete a line, or a block, of data. A 'D' on a line causes the line to be deleted when the ENTER key is pressed. More than one line can be deleted by entering a '0' on each line. The 'DD' line commands are used to delete a block of data. The 'DO' is entered on the first and last line of the block of code to be deleted. The first line of the block does not have to be on the same display page as the end of the block (scrolling can take place between defining the two 'DO' lines). The block of data is deleted when the ENTER key is pressed the first time after both 'DO' lines have been specified. Example Del e t e B I 0 c k a f lin e,s EDIT --- EDITWORK, EOX002 7( 24)--- COLUMNS 001 072 COMMAND INPUT ===> SCROLL ===>HALF ***** ***** TOP OF DATA ******************************** 00010 LINE 1 0000020 LINE 2 00030 LINE 3 ODOOO(.O lINE 4 00050 LINE 5 00060 LINE 6 ~ 00070 lINE 7 ***** **** BOTTOM OF DATA ****************************** o 228 SC34-0313 o $FSEDIT Screen Image after Block Delete EDIT --- EDITWORK, EDX002 7( 24)-BLOCK-DATA RENUMBERED COMMAND INPUT ===> SCROLL ===>HALF ***** ***** TOP OF DATA ******************************** 00050 LINE 5 00060 LINE 6 00070 LINE 7 ***** **** BOTTOM OF DATA ****************************** I (Insert) - Insert New Li ne Causes a new 1 i ne to be inserted after th is line. Any i nformation typed on the inserted line is assigned a line number and becomes part of your data when the ENTER key is pressed. If the line number assigned to the newly inserted line is equal to, or greater than, the line number of the next sequential line, all data to the end of the data set is automaticallY renumbered. If no information is entered, the inserted line is automatically deleted the next time the ENTER key is pressed. If information is entered on the inserted line and the cursor is still on the inserted line when the ENTER key is pressed, another new line is automatically inserted. This allows line ~fter line to be generated ina cont i nuous insert mode. The cursor is set to the first position where data appears in the following line. The inserted line dup I i cates the current va I ue of the ed it mask line. The initial value of the mask line is 72 blanks. It can be changed at any time as noted in the descr i pt i on of the MASK command. Note: The I line command can be entered on the TOP OF DATA message line to insert a line ahead of what is currently the first line. It is typed in the first position of the TOP of DATA line. o Chapter 4. The Utilities 229 $FSEOIT Example o I L i ne Command 2( 24)--- COLUMNS 001 072 EDIT --- EDITWORK, EDX002 COMMAND INPUT ===> SCROLL ===>HALF" 1**** **** TOP OF DATA ********************************* 00010 LINE 1 00020 LINE 2 ***** **** BOTTOM OF DATA ****************************** .screen Image After I Line Command EDIT --- EDITWORK, EDX002 2C 24)--- COLUMNS 001 072 COMMAND INPUT ===> SCROLL ===>HAlF ***** ***** TOP OF DATA ******************************** 00010 LINE 1 00020 LINE 2 ***** **** BOTTOM OF DATA ****************************** o 230 SC34-0313 o $FSEDIT II (Insert Block) - Insert Block of Lines Insert a block of new data. The line with the II command is displayed at the top of the display with twenty-one inserted lines following it. Data can be entered on all twenty-one lines before entering it with the ENTER key. The new data is then saved as with the 'I' command. If all inserted lines have data entered on them and the cursor is left on the last line of the display when the ENTER key is pressed, another twenty-one lines are generated. If data are not entered on one or more of the lines, the unchanged lines are deleted and the insert mode is term i nated. Notes: • The II command can be entered on the TOP OF DATA message line to insert data in front of what is now the first 1 i ne. It is typed over the first two asterisks of the TOP OF DATA line. • The II command is di fferent from the rest of the double character line commands in that it is entered on only one 1 j ne and generates a block of new data instead of ope rat i ng on a block of data. • The inserted lines duplicate the current value of the edit line mask. Example Block lnsert Line Command EDIT --- EDITWORK, EDX002 2( 24)--- COLUMNS 001 072 COMMAND INPUT ===> SCROLL ===>HALF ***** ***** TOP OF DATA ******************************** 00010 LINE 1 1100020 LINE 2 ***** **** BOTTOM OF DATA ****************************** c Chapter 4. The Utilities 231 [ $FSE~IT ] ~creen Im~~ After Block Insert Command EDIT --- EDITWORK, EDX002 COMMAND INPUT ===> 00020 LINE 2 2( () 24)--- COLUMNS 001 072 SCROLL ===>HAlF MASK - D; splay Insert Mask The MASK line command is used to display the insert mask which is used to pref ill inserted 1 i nes. The insert mask is 72 bytes long and is initialized to ~ll blanks at the beginning of the session. Any data filled into it remains in effect for the remainder of the current session unless changed by you. The insert mask can be changed any time it is displayed by overtyping it with the desired information. Note: To display the insert mask requires that all four characters of the MASK line command be entered by overtyping the first four characters of the line number. c 232 SC34-0313 [SFSEDIT o M (Mo veL i n e) and MM (M 0 v e B 10 c k ) Move a line, or block of lines, from one location to another. When a 'M' line command is entered, a single line is moved to the location specified by an 'A' or 'B' line command. The'MM' line commands cause the block of data defined by the two 'MM' line commands to be moved to the locat i on spec if i ed by an 'A' or 'B' line command. The moved lines are removed from their original location and the entire data set renumbered after the move. The move occurs when the ENTER key is pressed the first time after both the lines to be moved and the destination are defined. The destination does not have to be on the same page of the display as the move line commandCs) and the two 'MM' line commands can also be separated. Excample Move Block of Lines 7( EDIT --- EDITWORK, EDX002 24)--- COLUMNS 001 072 COMMAND INPUT ===> SCROLL ===>HALF A**** ***** TOP OF DATA ******************************** 00010 LINE 1 00020 LINE 2 00030 LINE 3 MM00040 LINE 4 00050 LINE 5 MM00060 LINE 6 00070 LINE 7 ***** **** BOTTOM OF DATA ****************************** o Chapter 4. The Utilities 233 Screen Image After Block Move () EDIT --- EDITWORK, EDX002 7(24)-BlOCK-DATA RENUMBERED COMMAND INPUT ===> SCROll ===>HAlF ***** ***** TOP OF DATA ******************************** 00010 LINE 4 00020 LINE 5 00030 LINE 6 00040 LINE 1 00050 LINE 2 00060 LINE 3 00070 LINE 7 ***** **** BOTTOM OF DATA ****************************** _"\ 0 I 234 SC34-0313 .. 1 $IAMUTl o $IAMUTl - BUILD AND MAINTAIN INDEXED DATA SET $IAMUTI helps you manage your indexed data sets. The $IAMUTI utility is shipped with an input/output buffer of 512 decimal bytes. This allows you to define an indexed data set with a maximum block size of 512 bytes, and to load, unload, and reorganize indexed data sets with a maximum record size of 512 bytes. I f you want to change the max i mum record size, refer to the Program Directory for use with Version 1, Modification level 1 of program 5719-AM3, section J, Programming Considerations $IAMUTI can be invoked using the $l command, $JOBUTIl, or the Sess i on Manager. $IAMUTl Commands The commands available under $IAMUTI are listed below. To display th i s list at your termi nal, enter a quest i on mark in response to the prompt i ng message COMMAND (1):. ENTER COMMAND (1): ? CR - INVOKE $DI·SKUTI EC - SET/RESET ECHO ~10DE EN - END THE PROGRAM SE - SET DEFINE PARAMETERS DF DEFINE AN INDEXED FILE DI DISPLAY CURRENT SE PARAMETERS RE RESET CURRENT VALUES FOR DEFINE LO - LOAD INDEXED FILE FROM SEQUENTIAL FILE RO - REORGANIZE INDEXED FILE UN - UNLOAD INDEXED FILE TO SEQUENTIAL FILE ENTER COMMAND (?): After the commands are displayed, you are again prompted with COMMAND (1):. You respond with the command for of your choice (for example, EC). o Chapter 4. The Utilities 235 [ $IAMUnJ o CR - Create Data set CR allocates space for your data set in a volume by internally invoking the $DISKUTl utility. The SE command should have been used to determine the number of ,-ecords to allocate. When CR is entered on a terminal, the $DISKUTI utility is loaded. You can then use the Al command of $DISKUTI to allocate a data set; any other $DISKUTI function can also be performed. Communication to the $DISKUTI uti lity continues unti 1 the END command (EN) is entered, at which time communication to $IAMUTI is restored. For information on the SDISKUTI utility, refer to "$DISKUTI Allocate/Delete; List Di rectory Data" on page 135. Note: Echo mode is not act i ve dur i ng use of $DISKUTI. The f 0 1 low i n g e x amp I e s how s a use 0 f t he CR comma n d : ENTER COMMAND (?): CR $DISKUTI ACTIVE USING VOLUME EDX002 COMMAND (?): AL SAMPLEl HOW MANY RECORDS? 72 DEFAULT TYPE = DATA - OK? Y SAMPlEl CREATED ENTER COMMAND (?): c 236 SC34-03l3 $IAMUTl o DF - Def; ne Indexed Data set DF command defines an indexed data set using an existing data set and the information you specify. When OF is entered, you are prompted for the immediate write back option and the names of the data set and volume to be formatted. Size calculations are made and the data set is formatted. The size calculation information is returned to you at your terminal on completion of the DF command. Before entering DF, you must use the SE command to set up parameters that determine the si ze and format of the indexed data set. The data set must have been allocated previously (the CR command can be used to allocate it). DF allows you to select th~ immediate write back option. With this option, each modification to the indexed data set records that is the result of your request to update a data record is written to the data set immediately, thus contributing to the integrity of the data set. If you enter N to the immediate write back prompt, modi fications are held in the main storage buffers for a period of time before being written back to the indexed data set. In most cases, not us i ng the i mmed i ate wr i te back option often results in fewer I/O operations and in better performance. The following example shows a use of the DF command: ENTER COMMAND (?>: OF DO YOU WANT IMMEDIATE WRITE-BACK? N ENTER DATASET (NAME,VOlUME): SAMPLE1,EDX002 After entering the above information, the following played: is dis- o Chapter 4. The utilities 237 $IAMUTl () ~ TOTAL LOGICAL RECORDS/DATA BLOCK: FULL RECORDS/DATA BLOCK: INITIAL ALLOCATED DATA BLOCKS: INDEX ENTRY SIZE: TOTAL ENTRIES/INDEX BLOCK: FREE ENTRIES/PIXB: RESERVE ENTRIES/PIXBCBLOCKS): FULL ENTRIES/PIXB: RESERVE ENTRIES/SIXB: FULL ENTRIES/SIXB DELETE THRESHOLD ENTRIES: FREE POOL SIZE IN BLOCKS: i OF INDEX BLOCKS AT LEVEL 1: i OF INDEX BLOCKS AT LEVEL 2: i OF INDEX BLOCKS AT LEVEL 3: DATA SET SIZE IN EDX RECORDS: INDEXED ACCESS METHOD RETURN CODE: SYSTEM RETURN CODE: ENTER COMMAND (?): 3 2 1 32 7 1 o 6 o 7 7 o 9 2 1 72 -1 -1 c 238 SC34-0313 $IAMUTl o DI - Di splay Parameter Values DI displays the current parameter values entered via the SE command. The parameter values can be used to format a data set via the DF command or they can be modified by reusing the SE command. The following example shows a use of the DI command. ENTER COMMAND (?>: DI CURRENT VALUES FOR SE COMMAND ARE: BASEREC 100 BLKSIZE 256 RECSIZE 80 KEYSIZE 28 KEYPOS 1 FREEREC 1 FREEBLK 10 RSVBLK NULL RSVIX 0 FPOOL NULL DELTHR NULL ENTER COMMAND (?): o Chapter 4. The Utilities 239 $IAMUTl () EC - Control Echo Mode EC allows YOU to enter or leave echo mod~. When in echo mode, all $lAMUTl input and output is logged on the $SVSPRTR device. This allows YQU t9 save information about the data sets you maintain using $IAMUTI. When in echo mode, all input and output is logged unt i 1 either the current ut iii ty sess i on is ended or echo mode is reset by use of the EC command. Echo mode is off when $IAMUTI is loaded. Note: Input and logged. output from $DISKUTI (CR command) is not The following examples show the commands to set and reset echo mode: ENTER COMMAND (?): EO 00 YOU WANT ECHO MODE? ENTER COMMAND (?): EC (V/N) Y DO YOU WANT ECHO MODE? (V/N) N ENTER COMMAND (?): (Set echo mode) (Reset echo mode) ~C--'\ \.,-~) o 240 SC34-0313 o LO - Load Indexed Data Set LO loads an indexed data set from a sequential data set. The sequential data set must contain unblocked records. They can span two or more 256-byte records. The records in the sequential data set must be in ascending order by the data that represents the key field. If a record wi th a dupl i cate or out of sequence key in found, you are given the option to either omit the record and cont i nue load i ng, or to end load i ng. The indexed data set must have been allocated and defined by use of the CR, SE and DF commands before us i ng the LO command. The record lengths of the two data sets do not have to be the same. When the indexed data set is opened, the record length is displayed on the terminal. At this point, you can specify the record length of the sequent i al data set if it is different than that of the indexed data set. If the indexed data set records are longer than the sequential data set records, the loaded records are left justi 'fied and fi lIed with binary zeros. If the indexed data set records are shorter than the sequential data set records, the following message appears on the terminal: o INPUT REC GT OUTPUT REC. OK TO PROCEED? TRUNCATION WILL OCCUR. Reply 'V' to proceed (records will be truncated). Reply 'N' to -terminate the load function. If the end of the input sequential data set is reached, you can continue loading from another sequent i al data set. You are asked if there is more data to load. If you reply yes (V), you are prompted for the data set and volume name of the new input sequential data set to use. The load operation continues, putting the first record of the new input sequential data set in the next available record slot of the indexed data set. Note: The record lengths of subsequent input data assumed to be the same as the in it i a I input data set. sets are If the end of input data set is reached and you choose not to name another input data set, the load operat ion is comp lete. The following example shows use of the LO command: o Chapter 4. The Utilities 241 $IAMUTl o ENTER COMMAND (1): LO LOAD ACTIVE ENTER INPUT DATASET (NAME,VOLUME): SEQOATA,EOX002 ENTER OUTPUT DATASET (NAME,VOLUME): SAMPLE1,EDX002 INPUT RECORD ASSUMED TO BE 80 BYTES. OK?: Y LOAD IN PROCESS END OF INPUT D/S ANY MORE DATA TO BE LOADED?: N 100 RECORDS LOADED LOAD SUCCESSFUL ENTER COMMAND (?): RO - Reorgan; ze Indexed Data set RO unloads an indexed data set filled by insert activity into an empty indexed data set and reorganizes the records to allow additional inserts. The empty indexed data set must have been allocated and defin~d by use of the SE, CR, and DF commands be fore us i ng the RO command. The record lengths of the two data sets need not be the same. Unloaded re60rds are truncated or filled with binary zeros if record lengths differ (see LO command). The key fields and key positions of the two data sets must be the same; however, the other data set specifications (SE parameters) may differ. The following example shows use of the RO command: ENTER COMMAND (?): RO REORG ACTIVE ENTER INPUT DATASET (NAME,VOLUME): SAMPLE,EDX002 ENTER OUTPUT DATASET (NAME,VOLUME): SAMPlEl,EDX002 REORG IN PROCESS END OF INPUT D/S 100 RECORDS LOADED REORG SUCCESSFUL ENTER COMMAND (?): c 242 SC34-0313 $IAMUTI RE - Reset Parameters RE resets the parameters set up by the SE default values. command to their The following example shows a use of the RE command: ENTER COMMAND ENTER COMMAND (?): (?): RE o Chapter 4. The Utilities 243 I $IAMUTl I o SE - Set Parameters SE prompts you for parameters that determine the structure and size of the indexed data set. The parameter values entered are saved by SIAMUTI. This allows you to reuse the SE command to change one or more parameters without having to reenter all of them. The current values can be displayed by the DI command. Note: The values are retained only as long as SIAMUTI remains loaded. Size calculations are performed using the parameter values you have specified. The results are returned to you at your terminal. The SE command Celn be followed by the CR command to create a data set of the size specified on the SE command. After the data set has been allocated, or if a data set of the correct size already ex i sts, the DF command can be used to format it. The following list shows the default values for parameter$ on the SE command (all values are decimal): BASEREC BLKSIZE RECSIZE KEVSIZE KEVPOS FREEREC FREEBLK RSVBLK RSVIX FPOOL DELTHR 0 0 0 0 (~-~) 1 0 0 NULL 0 NULL NULL If the default value is acceptable, enter a null line for the parameter when prompted for it. If you wish to change the value for any parameter, enter the new value in response to the prompting message. The new value becomes the new default value for the current SIAMUTI session. The only parameters for which a null can be specified are RSVBlK, FPOOL, DELTHR, and RSVIX. To specify a null parameter after the original default has been modified, enter an ampersand (&) in response to the prompting message. For an explanation of the SE command parameters, refer to "Determi n i ng Data Set Size and Format" on page 247. The following example shows a use of the SE command in establishing the size and structure of an indexed data set. 244 SC34-0313 o $IAMUTI o ENTER ENTER ENTER ENTER ENTER ENTER ENTER ENTER ENTER ENTER ENTER ENTER COMMAND C?): SE BASEREC 100 BLKSIZE ,256 RECSIZE 80 KEVSIZE 28 KEVPOS 1 FREEREC 1 FREEBLK 10 RSVBLK RSVIX FPOOL DELTHR After the above information has been entered, the following is displayed showing the size and structure of the defined indexed data set. TOTAL LOGICAL RECORDS/DATA BLOCK: FULL RECORDS/DATA BLOCK: INITIAL ALLOCATED DATA BLOCKS: INDEX ENTRY SIZE: TOTAL ENTRIES/INDEX BLOCK: FREE ENTRIES/PIXB: RESERVE ENTRIES/PIXBCBLOCKS): FULL ENTRIES/PIXB: RESERVE ENTRIES/SIXB: FULL ENTRIES/SIXB DELETE THRESHOLD ENTRIES: FREE POOL SIZE IN BLOCKS: i OF INDEX BLOCKS AT LEVEL 1: i OF INDEX BLOCKS AT LEVEL 2: i OF INDEX BLOCKS AT LEVEL 3: DATA SET SIZE IN EDX RECORDS: INDEXED ACCESS METHOD RETURN CODE: SYSTEM RETURN CODE: ENTER COMMAND (?): 3 2 50 32 7 1 o 6 o 7 7 o 9 2 1 72 -1 -1 o Chapter 4. The Utilities 245 I $IAMUn 1 UN - Unload Indexed Data Set () UN unloads an indexed data s.et to a sequential data set. The record lengths of the tLoJO data sets need not be the same. Unloaded records are truncated or padded with zeros if the records lengths of the two data sets differ. Refer to the LO command. Records are placed in the sequential data set in ascending key sequence as indicated by the indexed data set. Unloaded records are not blocked. They can span two or more 256 byte records. If the indexed data set contains more records than are allocated in the sequent i al data set, you are given the opt j on to cont i nue unloading to another sequential data set. If you choose to continue unloading, you are prompted for the name of the data set and volume to use to continue the unload operation. The unload operation continues, putting the records read from the indexed data set into the new sequent i al data set. NO!.!t: The record length of subsequent output sequent i al data sets is assumed to be the same as the initial output sequential data set. If the end of the output data set is reached and you choose not to continue, the unload operation ends. Ciluti on: Do not spec i fy the same data set 'for input and output. The following is an example of the commands and responses of an UN command: ENTER COMMAND (1): UN UNLOAD ACTIVE ENTER INPUT DATASET (NAME,VOLUME): SAMPLE1,EDX002 ENTER OUTPUT DATASET (NAME,VOLUME): SAMPLE2,EDX002 OUTPUT RECORD ASSUMED TO BE 80 BYTES. OK?: N ENTER RECORD SIZE: 256 UNLOAD IN PROCESS END OF INPUT D/S 100 RECORDS UNLOADED UNLOAD SUCCESSFUL ENTER COMMAND (1): o 246 SC34-0313 o $IAMUT~ Bu;lding an Indexed Data Set The SE and DF commands allow you to spec i fy the size and format of your indexed data set and to do the actual data set formatting. Use the SE command to enter those values that determine the size of the indexed data set. Use the DF command to actually format the data set using the values previously specified on the SE command. If the data set is too small to support the specified format, the amount of space required is returned to you. Knowing the available space and using the SE command, you can vary the SE parameters to des i gn a data set of proper size. Determin;ng Data Set Size and Format The data set design ters: BASEREC is determined by these SE command parame- The est i mated number of records to be loaded into the data set in ascend i ng key sequence. These records can be loaded by $IAMUTI or by a PUT request after either a LOAD or PROCESS request. BASEREC should never be zero. o BLKSIZE The length, in bytes, of blocks in the data set. It must be a multiple of 256. RECSIZE The length, in bytes, of records in the data set. Record length must not exceed block length minus 16. KEYSIZE The length (1 to 254 bytes) of the key to be used for this data set. KEYPOS The position, in bytes, of the key within the record. The first byte of the record is pos it i on 1. FREEREC The nllmber of free records to be reserved in each block. It should be less than the number of records per block (block size minus 16, divided by record size). It can be zero. FREEBLK The percentage (0-99) of each cluster to reserve for free blocks. The percentage calculation result is rounded up so that at least one free block results. The calculation is adjusted to ensure that there is at least one allocated block in the cluster; that is, Chapter 4. The utilities 247 [ $IAMUTl there cannot be 100% free blocks. RSVBLK The percentage of the entries in each lowest level index block to reserve for cluster expansion. The~e reserved entries are used to point to neLoJ data blocks as they are taken from the free pool to expand the cluster. The result of the calculation is rounded UP so tha t any non-'zero spec i f i cat i on i nd i cates at least one reserved index entry. The calculation is adjusted to ensure that there is at least one allocated block in the cluster. Enter a null character (*) for this prompt if you do not want initial reserved blocks and do not want the indexed access method to create reserved blocks as records are deleted and blocks become empty. Specify a value of zero for this prompt if you do not ,~ant initial reserved blocks but you do want the indexed access method to create reserved blocks as records are deleted and blocks become empty (See the DEL THR prompt). Note that the sum of the FREEBLK and RSVBLK prompts should be less than 100. RSVIX The percentage (0-99) of the entries in each second level index block to reserve for use in case of cluster splits. A cluster split is required when a cluster expands to its maximum potential size (as defined by the RSVBLK prompt) and another data set is inserted into the cluster. Each cluster split uses one reserved entry of the second level index block. The result of this calculation is rounded liP so that any non-zero spec if i cat i on i nd i cates at least one reserved index entry. The calculation is adjusted so that there is at least one unreserved entry in each second level index block. This value defaults to zero. FPOOL The percentage (0-100) of the maximum possible free pool to allocate. The RSVBLK and RSVIX prompts result in a data set structur'e capable of dra"'Jing on the free pool for expansion. If insertion activity j s evenly d j str i buted throughout the data set, every reserve entry of every index block can be used. The number of blocks drawn from the free pool to support this highly unlikely condition is the maximum free pool size needed for the data set. In more realistic cases, insertion activity is not evenly distributed throughout the data set, so fewer free blocks are needed. The percentage speci fied here represents the evenness of the d i str i but i on of inserted records. Speci fy a large number (90, for example) if you expect insertions to be evenly distributed. Specify a small number (20, for example) if insertions are 248 SC34-0313 o o $IAMUTl o anticiPClted to be concentrated 1n specific key ranges. If null 15 specified for this prompt, a free pool is not created for th is indexed data set. If zero is spec if i ed, an empty free pool is created. Blocks can then be added to the free pool as records are deleted and blocks become empty (see the DELTHR prompt explanation). If you do not speci fy a null for this prompt, the RSVBLK must not be null and/or the RSVIX must be non-zero or an error is returned. Conversely, if the RSVBLK and/or RSVIX is non-zero, FPOOL must not be null or an error is returned. DELTtfR o The percentage (0-99) of blocks to retain in the cluster as records are deleted and blocks made available. This is knoJ..>1n as the delete threshold. When a b lock becomes empty, it is first determ i ned if the block should be gi ven liP to the free pool by checking the response to this prompt. If the block is not given up to the free pool, it is retained in the cluster, either as a free block or as an active empty block. The result of this calculation is rounded up so that any non-zero spec if i cat i on i nd i cates at least one block. The calculation is adjusted to ensure that the cluster alllJays conta i ns at least one block. If specified as null, this value defaults to the number of allocated blocks in the cluster plus one half of the value calculated by the FREEBLK prompt. Specify null unless data set usage indicates that tuning is required. The define (DF) command sets the size of the data set. Therefore, the BASEREC, FREEREC, FREEBLK, RSVBLK, RSVIX, and FPOOL parameters should be large enough to accommodate the maximum number of records planned for the data set. To calculate the size of the data set for a given combination of parameters, lise the SE command. Chapter 4. The Utilities 249 $IMAGE 1 $IMAGE - DEFINE 4978/4979 FORMATTED SCREEN IMAGE o $IMAGE defines formatted screen images for the 4978/4979 display terminals, or for any terminal whose support includes the stat i c screen funct ions. The images (formatted screens), wh i eh are def i ned in terms of protected and non-protected alphanumeric fields, can be saved in disk or diskette data sets, to be retrieved later by application programs for display, or by this utility for modification. You must allocate the data set where the image will be stored before using $IMAGE. f10st logical screens require a data set of two records. There are two modes of interaction with the $IMAGE program: command mode and edit mode. For retrieval informat ion, refer to screen formatt i ng in the System Gu ide. You can find an example using $IMAGE to format a static screen in the Syst.~m Guide. For an aid in laying out the format of the screen to be defined, refer to the IBM 3270 Information Display System layout Sheet, GX27-2951. $IMAGE Commands 1'. .'''''\ I ~) $IMAGE is in command mode when loaded. When $IMAGE is in command mode, you spec i fy the funct i on to be per formed by enter i ng an alphabetic code followed by a parameter list. You are, prompted for each item that is not spec if i ed in advance and' does not have a default value. The commands available under $IMAGE are listed below. To display this list at your terminal, enter a question mark in response to the prompt i ng message COMMAND (?):. o 250 SC34-0313 $IMAGE o COMMAND(?): ? DIMS HTAB VTAB NULL EDIT KEYS SAVE END DEFINE IMAGE DIMENSIONS DEFINE HORIZONTAL TAB SETTINGS DEFINE VERTICAL TAB SETTINGS DEFINE NULL REPRESENTATION ENTER EDIT MODE LIST PROGRAM FUNCTION KEYS SAVE IMAGE ON DISK END PROGRAM COMMAND(?): After the commands are displayed, you are again prompted with COMMAND (?):. You respond with the command of your cho i ce (for example, DIMS). DIMS - Daf; ne Image D; mens; ons The DIMS command is followed by two values, giving the number of lines and the line size, for example: DIMS DIMS 10 20 24 80 (10 20-character lines) (full screen image) EDIT - Enter Ed i t Mode The EDIT command can be fo llowed by a data set name in the form: dataset,volume o Here the volume, if unspecified, defaults to the IPl volume. If a data set name is not given, then the program displays the currently defined image. Some examples are: Chapter 4. The Utilities 251 f:SIMAGE EDIT EDIT EDIT I IMAGEl IMAGEB,EDX002 END - End the Program END (or EN) ends the utility program. I f the screen image has been mod if i ed since the last SAVE operat i on, then the quest i on: SAVE FINAL IMAGE? appears. The image is saved or not, depend i ng on your response (YES/NO), and the command prompting message is issued again. HTAB - Oef; ne Hor; zontal Tab Setti ngs HTAB defines tab settings example: [ HTAB for 10 15 20 40 45 SO 73 the duration of edit mode, for 1 The default .settings are 10,20,30,40,50,60 and 70. I f atab value exceeds the line size or is not in ascending order, then the cursor moves to the next 1 i ne when that sett i ng is encountered. When the horizontal tab key (PFI when in EDIT mode) is pressed, the cursor moves to the next hor i zontal tab pos i t ion. c 252 SC34-0313 o $IMAG! KEYS - Li st Program Functi on Keys KEYS lists on the terminal the meaning of the PF keys while in the edit mode. COMMAND(?): KEYS PFI PF2 PF3 DEFINE PROTECTED FIELDS DEFINE DATA FIELDS ENTER COMMAND MODE COMMAND(?): PFI and PF2 function as the horizontal and vertical tab keys (respectively) when you are defining protected or data fields in EDIT mode. NULL - Defi ne Null Representat ion NUll defines a character that is interpreted as the null character during editing of the image. Null characters define the non-protected pos it ions on the screen i mage to be used for data entry. Some examples are: NULL NULL / NULL CHARACTER: In the last example, no character l·las indicated causing the prompt message to be issued. If again no character is entered, then the null character itself is used. Not e, : 1ft heN UII com man dis not d e fin e d p rio r t 0 a ned i tin g session, the null character defaults to a period C.). Therefore, all periods defined as protected in subsequently edited screens assume an unprotected status. o Chapter 4. The Utilities 253 $IMAGE "I SAVE - Save Image on Di sk o The screen image, as currently defined, is saved in the last data set edited, or in a new data set if one is specified following SAVE. The formatting information and text that def i ne the i mage are stored in the spec if i ed data set ina special packed format to conserve space. For packed format information, refer to the System Guide. Some examples are: SAVE SAVE SAVE IMAGE2 IMAGE2,EDX003 When the image has been saved, the following message appears, with the number of 256 byte records i nd i cated in parentheses. I SAVED n(RECORDS) VTAB - Defi ne Verti cal Tab Setti ngs VTAB defines vertical tab settings to conveniently edit the screen image by columns rather than rows. The default vertical tabs range from 1 to 24 in 1-1 i ne increments. These can be redefined as in the following example: I VTAB 5 10 20 24 When the vertical tab key (PF2 when in edit mode> is pressed, the cursor moves to the next i nd i cated line at the last encountered horizontal tab setting. When the last vertical tab sett i ng is passed, the cursor moves to line 0 at the next hor izonta I tab sett i ng. () 254 SC34-0313 o $IMAGE Ed;t Mode When you enter edit mode, the current image is displayed within a rectangular frame whose upper lefthand corner is at line 0, indent O. The frame and all screen positions outside it are protected in the display buffer; this limits the cursor to positions within the frame when the field-advance key is pressed. If the image dimensions do not allow display of the entire frame, then its sides are omitted according to the following priority: top before bottom, left before right. Null characters, dimension fields, and tab settings should be defined before entering edit mode. If you are modifyi~g an ex i st i ng screen image, the nu 11 character must be rede fined each time $IMAGE is invoked. Once the image is displayed, you can invoke the edit phases by means of the PF keys. PFl This key causes the protected fields of the image to be displayed as non-protected, so you can r~def i ne them directly on the screen. The non-protected (data) fields of the image are indicated with the null representation character, and you use that character to redefine those fields if desired. Once this edit phase has been entered, PFI acts as the horizontal tab key and PF2 as the vertical. When the ENTER key is pressed, the newly defined image is displayed, with protected fields in their proper mode. PF2 This key prepares the $IMAGE program for modification of the data (non-protected) fields of the image. The cursor is displayed at position (0,0) of the image, and you can use the field-advance keys to move to each data field in turn, or the tab keys (PF land PF2) can be used when appropriate. When the ENTER key is pressed, the new data valu e s are saved, but not ye tw r itt e n to disk. PF3 Th is key is used to return from ed i t mode to command mode. Note: The ENTER key function correctly. must have been used for PF3 to o Chapter 4. The Utilities 255 L:IIlITDSK o $INITDSK - INITIALIZE OR VERIFY VOLUME $INITDSK initializes and/or read verifies a Series/l access storage device volume for use with the Event Executive. direct Driven $INITDSK performs the following functions: • Initialization (I) Initializes a library Driven Executive directory for the Event Writes IPL text on a disk or diskette, if desired. The IPL dev ice address for 4962 disk, 4963 disk, 4964 diskette, and 4966 diskette magaz i ne un its are hexadecimal 03, 48, 02, and 22, respectively. An initialized diskette can be used to IPL from either a 4964 or 4966 diskette dev i ce. Writes a volume label on a diskette. Note: A label is not required on a disk since it is not a removable device. I • I Verification (V) verifies the readability of: A group of records within a disk or diskette volume A disk or diskette volume All d j sk vo I urnes at a spec j f i ed address • I Writes (W) only IPL text on a primary $EDXNUC has been allocated. volume for which $INITDSK Commands The commands avai lable under $INITDSK are listed below. To display this list at your terminal, enter a question mark in response to the prompt i ng message COMMAND (?): o 256 SC34-0313 $INITDSK o COMMAND (?): ? E I V W - END PROGRAM INITIALIZE DISKCETTE) VERIFY DISKCETTE) AREA WRITE IPL TEXT ONLY COMMAND (?): After the commands are displayed, you are again prompted with (?):. You respond wi th the command of your cho i ce Cfor example, I). CO~'~1AND Initialization o Directory Creation A directory can be created on each volume with $INITDSK. The minimum directory size ;s 2 records. The maximum sizes are 120 records on a 4962, 4963, 4964, or 4966 and 60 records on the fixed head volume of a 4962 or 4963. The maximum volume size, including directory, ;s 32,767 records. The directory size determines the maximum number of programs and data sets that can be stored. A directory of n records can catalog a maximum of 8n-2 data sets. Diskette Initialization o The volume label on a diskette conforms to the standard for an EBCDIC Basic Exchange format. One EBCDIC Header Label (HDR1) is written which describes the entire diskette as an allocated data set. An entire diskette is considered as an Event Driven Executive volume. A single-sided diskette is initialized to conta i n up to a 13-record directory and a 949-record data area. A double-sided diskette is initialized to contain up to a 26 record directory and an 1898 record data area. A diskette must have been previously initialized to 128 bytes per sector by us i ng the $DASDI ut iii ty. On a 4966 diskette magaz i ne un it, you Chapter 4. The Utilities 257 I $INITDSK I can initialize only on slot number 1. o Disk Initialization Each disk volume (primary and secondary) must be initialized by using $INITDSK. Ca..Y.t ; 0 n : I f you i nit i ali z e and ere ate a d ire c tor yon dis k 0 r diskette, any data previously stored on the disk or diskette will no longer be access i b 1 e • () c 258 SC34-0313 o $INITDSK Example Initializing and Writing IPL Text on Diskette SINITDSK 13P,13.44.14, LP= 5000 COMMAND (?): I LIBRARY INITIALIZATION 1 = ENTER VOLUME LABEL 2 = ENTER DEVICE ADDRESS SELECT OPTION: 2 ENTER DEVICE ADDRESS IN HEX: 2 WRITE ENTER ENTER LABEL c VOLUME LABEL? Y DESIRED VOLUME LABEL (1-6 CHARACTERS) EDXOOl OWNER 10 (1-14) CHARACTERS: DEPT.L78 09/77 WRITTEN CREATE A DIRECTORY? Y HOW MANY RECORDS IN DIRECTORY? (2 - 120): 13 MAXIMUM NO. OF MEMBERS = 102, OK? Y DO YOU WISH TO RESERVE SPACE FOR A NUCLEUS? Y ENTER MAXIMUM SIZE IN K-BYTES (16-64): 32 DIRECTORY INITIALIZED WRITE IPL TEXT? Y IPL TEXT WRITTEN COMMAND (?): EN $INITDSK ENDED AT 13:54:00 0" ~ Chapter 4. The Utilities 259 o Verification $INITDSK can be used to per"form a readabi lity check of an entire disk device, or an entire disk or diskette volume, or any portion thereof, to determine if any defective records exist for which alternates should be assigned. Only record read operations are performed. Therefore, a verify operation can be performed with no risk of destroying existing data. Exam·ples VerifYing ~ortion df'a Volume CONMAND(?): V DISK OR DISKETTE VERIFICATION = = ENTER VOLUME LABEL ENTER DEVICE ADDRESS SELECT OPTION: 1 1 2 ENTER VOLUME LABEL: EDX002 EDX002 AT 0003 IS A PRIMARY DISK CHECK THE ENTIRE VOLUME? NO FIRST RECORD = 300 NO. OF RECORDS = 1200 1200 RECORDS CHECKED cor1MAND (?): c 260 5C34-0313 o $INITDSK -I Ve r i f Y-l.!HLA 11 Vol u m~ son a Dis k COMMAND(?): V DISK OR DISKETTE VERIFICATION 1 = ENTER VOLUME LABEL 2 = ENTER DEVICE ADDRESS SELECT OPTION: 2 ENTER DEVICE ADDRESS IN HEX: 3 CHECK THE ENTIRE VOLUME? Y ASSIGNED ALTERNATE SECTOR AT RECORD ASSIGNED ALTERNATE SECTOR AT RECORD ASSIGNED ALTERNATE SECTOR AT RECORD EDX002 32000 RECORDS CHECKED EDX003 30000 RECORDS CHECKED EDX004 12000 RECORDS CHECKED 121 122 151 COMMAND (?): VerifYing Diskette Volume (No Errors Found) COMMAND (?): V DISK OR DISKETTE VERIFICATION 1 = ENTER = ENTER VOLUME LABEL DEVICE ADDRESS SELECT OPTION: 2 ~ ENTER DEVICE ADDRESS IN HEX: 2 CHECK THE ENTIRE VOLUME? YES 962 RECORDS CHECKED COMMAND (?): o Chapter 4. The Utilities 261 Write IPL Text Where $EDXNUC Has Been Preallocated COMMAND (?): () W WRITE IPL TEXT l=ENTER VOLUME LABEL 2=ENTER DEVICE ADDRESS SELECT OPTION: 1 ENTER VOLUME LABEL: EDX002 EDX002 AT 0002 IS A PRIMARY DISKETTE WRITE IPL TEXT? Y IPL TEXT WRITTEN COMMAND (?): Write IPL Text on a Volume That Does Not Contain $EDXNUC CO~1MAND (?): W WRITE IPL TEXT l=ENTER VOLUME LABEL 2=ENTER DEVICE ADDRESS SELECT OPTION: 1 ENTER VOLUME LABEL: EDX002 EDX002 AT 0002 IS A PRIMARY DISKETTE IPL WRITE ABORTED. NO NUCLEUS FOUND COMMAND (?): o 262 SC34-0313 o $IOTEST $IOTEST - TEST SENSOR I/Oj LIST CONFIGURATION $IOTEST determines the complete I/O configuration of a Series/l and tests the operation of sensor based I/O features. $IOTEST performs the following functions: • Reads and wr i tes dig ita I (group or subgroup) • Writes digital with selected time intervals • External sync DI and DO • Processes interrupts (normal, special bit and group) • Reads and wr i tes analog • Lists the hardware configuration of the Series/l • Lists the dev ices supported by the system • lists volume information Invok;ng $IOTEST $IOTEST can be invoked by the session manager using the Diagnosti c Ut iii ties opt i on menu or by the $L command. 0 ", " Chapter 4. The Utilities 263 $IOTEST o $IOTEST Commands The commands available under GIOTEST are listed below. To display this list a"t: your terminal, enter a question mark in response to the prompt i ng message COMMAND (?):. GIOTEST 24P,13:26:42 LP=5000 ATTNLIST (ALTER) TO STOP LOOPING FUNCTIONS COMMAND (?): ? EN = END PROGRAM DO = DIGITAL OUTPUT PD = UP AND DOWN DO WITH TIME XO = EXTERNAL SYNC DO 01 = DIGITAL INPUT XI = EXTERNAL SYNC 01 PI = PROCESS INTERRUPT SG = SPECIAL PROCESS INTERRUPT GROUP S8 = SPECIAL PROCESS INTERRUPT BIT AI = ANALOG INPUT AO = ANALOG OUTPUT LD = LIST ALL HARDWARE DEVICES LS = LIST SUPERVISOR CONFIGURATION VI = DISPLAY VOlU~lE INFORt'1ATION WS = PUT PG~1 IN WAIT STATE (!:'---.\ \\.....I COMMAND (?): EN $IOTEST ENDED AT 13:27:29 After the commands are displayed, you are again prompted with COMMAND (?):. You respond wi th the command of your cho ice (for example, DO). AI and DI issue a read every 10 mi 11 i seconds and only pr i nts the value if it is different from the last reading. PI issues a wait and prints on each occurrence. External sync 01 and DO perform their functions and do not return to command status until the number of words i nd i cated are read or wr i tten • ALTER is used to terminate repetitive functions and to reactivate the program if it was put in the wait state. 264 SC34-0313 c $IOTEST o Examples DO - Wr i te X' A5A5' to DO Address 52 COMMAND (?) : DO ENTER DEVICE ADDRESS ,(HEX 1-FF) ENTER START BIT (0-15) : 0 ENTER # OF BITS : 16 EN T ER DATA (H EX) : ASA5 COMMA·ND (1): 52 PO - Pulse DO Address 53 Bit 8 on for 10 Milliseconds, Off for 50 Milliseconds 100 times o COMMAND (1): PD ENTER DEVICE ADDRESS ,(HEX I-FF) 53 ENTER START BIT (0-15) B ENTER i OF BITS : 1 ENTER DATAl (O-FFFF) : 1 ENTER TIME! IN MS : 10 ENTER DATA2 (O-FFFF) : 0 ENTER TIME2 IN MS : 50 ENTER NUMBER OF TIMES TO LOOP 100 COMHAND (1): Note: I f number 0 f times to loop is set less than or equa I to zero, the loop i I1g cont i !lues unt i 1 the next AL TER command. Chapter 4. The Utilities 265 SlOT EST XO - Write Digital Output using External Sync COMMAND (1): XO ENTER DEVICE ADDRESS ,(HEX I-FF) ENTER WORD COUNT 1-256 : 100 COMMAND (1): o S3 No·te: Data is wr i tten from a buffer with in th i s program that is used for external sync 01 an DO. Therefore, data can be input via DI and written via DO. DI - Read Digital Input COMMAND (1): DI ENTER DEVICE ADDRESS ,(HEX I-FF) ENTER START BIT (0-15) : 0 ENTER i OF BITS : 16 VALUE = A5A5 VALUE = COFE 50 > ALTER COMNAND (1): XI - Read Digital Input using External Sync COMMAND (1): XI ENTER DEVICE ADDRESS ,(HEX I-FF) ENTER WORD COUNT : 100 COM~1AND 51 (?): c 266 SC34-0313 $lOTEST o PI - Test Process Interrupt for the Occurrence of this Event COMMAND (?): PI ENTER DEVICE ADDRESS ,(HEX I-FF) ENTER BIT (0-15) : 3 PI OCCURRED PI OCCURRED PI OCCURRED 50 > ALTER COMMAND (?): SG/SB - Special Process Interrupt Grqup/Bit Commands SG and SB functionally operate differently within the supervisor but they print basically the same information as normal PI with this uti lity program. ( "'"""~~ \ , / An easy way to test the system is to use the Customer Eng i neer' s wrap back connectors. The wrap cable for the 1010 unit connect~ the first DI address on the card to the first DO address and the same for the second 01 and DO. These connect ions include the external sync functions also. Therefore, two copies of $IOTEST can be executed simultaneously. There are simi lar connectors avai lab Ie for the 4982 Sensor I/O Unit. 0 :· I ",'I Chapter 4. The Utilities 267 I $lOTEST ] () AI - Read Analog Input COMMAND (1): AI ENTER DEVICE ADDRESS ,(HEX I-FF) : 61 ENTER RANGE: 1=5V, 2=500MV, 3=200MV, 4=100MV, 5=50MV, 6=20t1V, 7=10MV : 7 ZERO CORRECTION 1 N ENTER MPXR POINT (0-15) : 1 AI VOLTAGE = -629 MV, E-3 AI VOLTAGE = -688 MV, E-3 > ALTER COMMAND (1): Analog input has a testing facility to convert diagnostic zero or voltage. This utility allows these functions if the ADC add res sis g i v e n ins tea d 0 f t he mu 1 tip 1 e x 0 r address. COMMAND (1): AI ENTER DEVICE ADDRESS ,(HEX I-FF) : 60 CONVERT DIAGNOSTIC ZERO 1 y ENTER RANGE: 1=5V, 2=500MV, 3=200MV, 4=100MV, 5=50MV, 6=20MV, 7=10MV : 1 AI VOLTAGE = 0 MV, E-O > ALTER COMMAND (1): AI ENTER" DEVICE ADDRESS, (HEX I-FF) CONVERT DIAGNOSTIC ZERO 1 N 60 CONVERTING DIAGNOSTIC VOLTAGE, SHOULD BE 4.5 +- 0.5 AI VOLTAGE = 4604 MV, E-O AI VOLTAGE = 4602 MV, E-O > ALTER COMMAND (1): ~. \. C . 268 SC34-0313 ) $IOTEST o COMMAND (?>: AI ENTER DEVICE ADDRESS ,(HEX I-FF) CONVERT DIAGNOSTIC ZERO 1 N 60 CONVERTING DIAGNOSTIC VOLTAGE, SHOULD BE 4.5 AI VOLTAGE =' 4604 MV, E-O AI VOLTAGE = 4602 MV, E-O > ALTER COMMAND (1): LD - +- 0.5 List Devices LD reads the actual hardware addresses, their IDs, and displays a list of the descriptions. If a device exists but is not powered on, the description for that device is displayed. COMMAND (?): LD ACTUAL SERIES/l HARDWARE CONFIGURATION 00 01 02 04 09 40 41 50 51 52 53 = TELETYPEWRITER ADAPTER = 4974 PRINTER = 4964 DISKETTE UNIT = 4979 DISPLAY STATION = SINGLE lINE BSC = = = = = = TIMER FEATURE TIMER FEATURE 1010 DI/PI NON-ISOLATED 1010 DI/PI NON-ISOLATED 1010 DO WITH EXTeRNAL SYNC 1010 DO WITH EXTERNAL SYNC COMMAND (?>: 0', .,I'~ Chapter 4. The Utilities 269 $IOTEST () LS - List Supervisor Configuration LS provides a display similar to LD except that it lists the devices your supervisor is generated to support (whether or not they are j n the hardware of the system current ly be i ng used). VI - Display Volume Information VI d i sp lays in format j on about vo I umes as fo llows: COMMAND ( ? ) : VI VOLSER TYPE IODA NRQ021 NRP001 SMVOL NRP002 NRP003 NEWPRG FORT DEV EDX002 ASMLIB SUPLIB EDX003 EDX005 EDX006 EDX007 EDX008 270 PRI. PRI. SEC. SEC. SEC. SEC. SEC. SEC. PRI. SEC. SEC. SEC. PRI. SEC. SEC. SEC. SC34-0313 STATUS 0002 ONLINE 0022 1 ONLINE 0022 2 OFFLINE 0022 3 ONLINE 0022 1A ONLINE 0022 3A ONLINE 0022 4A ONLINE 0022 lOA ONLINE 0003 ONLINE (IPL) 0003 0003 0003 0048 ONLINE 0048 0048 0048 VOLORG VOLSIZE LIBORG 0 0 0 13 13 0 13 0 0 130 1 l.6 162 0 51 150 200 75 75 75 74 75 74 75 74 130 16 16 141 50 50 50 50 27 27 27 14 27 14 27 14 241 1 1 1 705 1 1 1 $JOBUTIL o $JOBUTIL - JOB STREAM PROCESSOR $JOBUTIL is a batch job processing capability that can be invoked simultaneously with the execution of other programs. This allows you to sequentially execute a series of programs without intervention. You include the names of the programs, and other information in a collection of $JOBUTIL commands created via $EDIT1N or $FSEDIT. A procedure can invoke another procedure, however, the called procedure cannot invoke another. A typical use of $JOBUTIL would be to execute a procedure that causes the assembly, link editing, and formatting of your program. Refer to "Batch Job Example" on page 290. $JOBUTIL is the main program that calls two overlay programs: $JP1 which opens required data sets and $JP2 which processes all commands. Programs tha't are capable of receiving parameter,s in the format used by $JOBUTI L are: $COBOL $EDXASM $FORT $LINK () $PL/I $PREFIND $SlASM $UPDATE Setup Procedure The steps requ i red to set UP and start a procedure are: 1. Using $DISKUT1, allocate a data set on either di,sk or diskette which is to contain the procedure. The size of the data set depends on the number of commands. Allocate one record for each two commands. 2. Us i ng $EDITIN or $FSEDIT, enter the $JOBUTI L commands necessary for yo ur procedure into an ed i tor L~ork data set, and , S AVE' the In i nth e d a t a s.e t a 110 cat e din S t e p 1. 3. To run your job, load $JOBUTIL and speci fy the name of your procedure data set. Loading can be done by use of the ses5 i on manager or the $L command. o Chapter 4. The Utilities 271 $JOBUTIL o $JOBUTIL Commands The $JOBUTIL commands are listed entered in the fo llow i ng format: below. Commands must be Command - Position 1 to 8 Operands - Position 10 to 17 Comment - Position 18 to 71 For internal comments - '*' in position 1 Note: All commands without operands can have comments starting in position 10. Command AL DE DS EOJ EOP EXEC JOB JUMP LABEL lOG NOMSG PARM PAUSE PROC PROGRAM REMARK * Function Allocate data set Delete data set Identify data set Identify end of job Identify end of nested procedure load and execute program Identify job Jump to label End jump log Job stream Processor Commands Suppress load messages Identify program parameter Await manual intervention Identify nested procedure Identify program Remark to operator Internal comment o 272 SC34-0313 o $JOBUTIL AL - Allocate Data Set AL j dent j f j es a data set to be allocated. It returns a $DISKUT3 return code that can be used by the JUMP command. Syntax AL name,volume size type Required: name,volume size type None Default: () name Defines the data set to be allocated volume Defines the volume on which the data set is to be allocated size Defines the size ;n blocks of the data set type Defines the type of data set as follows: D indicates data (default) P i nd i cates program U indicates undefined Example AL TEMPDS,EDX003 25 0 o Chapter 4. The Utilities 273 $JOBUTIL DE - Delete Data Set o DE i dent if i es a data set to be de leted. Syntax DE name, volume Required: Default: name, volume None Operands Description name Def i nes the data set to be deleted volume Defines the volume from which the data set is to be deleted Example DE TEMPDS,EDX003 c 274 SC34-0313 [ $JOBUTIl o DS - Ident; fy Data Set DS i dent if i es a data set to be opened and accessed by a program. D S co," man d 5 are a II owed on I y between PROGRAM and EXEC commands. Up to nine (9) DS commands can be spec i f i ed for a program. Syntax DS name,volume Requ ired: Default: name volume Operands () is IPL volume Description name Defines the data set to be accessed by a program volume Def i nes the vo I ume that conta i ns the data set to be accessed by a program Example DS WORKl,EDXOOl o Chapter 4. The Utilities 275 I $JOBUTIL ·1 EOJ - End o'F Job o EOJ indicates the end of the primary procedure and must be the la,st command in the procedure data set. data set. S)!ntax No operands are requ ired. EOP - End of Procedure EOP i nd i cates the end of a nested procedure and must be the last command in the called procedure data set. r"c,\ EOP \""c~ No operands are requ ired. o 276 SC34-0313 $JOBUTIL o EXEC - Execute Program EXEC loads and executes the program i dent if i ed in the preced i ng PROGRAM command. EXEC must have been p.roceeded by a PROGRAM command. SYntaK EXEC Required: Default: Operands STORAGE () STORAGE=size None STORAGE=O Description Spec i f i es the amount 0 f dynam i c storage to be all 0cated to the program to be executed. This value overrides the value specified when the program was comp i led. STORAGE=O (the de fau It) i nd i cates that the dynamic storage specified (if any) during compilat i on should be allocated. o Chapter 4. The Utilities 277 I $JOBUTIL I JOB - Ident; fy Job () JOB, an optional command, identifies the procedure or a collection of commands within a procedure data set. When a JOB command is read by $JOBUTI L, a message is pr i nted on the terminal with the Job name, time started and date (if timer support is included). ~ntax JOB job-name Required: job-name Operands job-name Description Names the current group of commands as a job Example (' ') \"-- JOB ' TEST1 O~" ' 278 SC34-0313 \ $JOBUTIL o JUMP - Jump to Label JUMP bypasses $JOBUTI L commands by test i n9 the camp let i on code of the previously executed program. The test compares the program comp let i on code to 'cc'. The commands between the JUMP and the LABEL command with the same label name are ignored if the condition tested for is 'true'. An unconditional JUMP to a LABEL is also permitted. Jumps are forward only and are limited to the range of the current procedure, for example, a jump cannot occur from one procedure to a label in another procedure. A JUMP with no label name jumps to the next unlabeled LABEL command or to an EOJ or an EOP, whichever occurs first. If an EOJ or an EOP is encountered while searching for a LABEL command, the search for the LABEL command terminates and the EOJ or EOP is executed. Note: The JUMP and LABEL commands are PAUSE mode. not permitted in the Syntax JUMP o Required: Operands label-name,op,cc None Description label-name The name associated with a LABEL comman.d. op LT, GT, EQ, GE, LE, or NE. cc Program comp let i on code. Examples JUMP JUMP JUMP lBLl,EQ,20 LBL2 o Chapter 4. The Utilities 279 [ $JOBUTIL I LABEL - Identi fy Conti nuati on Poi nt Job processing continues at the LABEL command after a related JUMP command is encountered. The LABE L command is not va lid in the PAUSE mode. LABEL label-name Requ ired: None Operands Descri~tion label-name Defines the command where processing can continue. Examples LABEL LABEL LBLI o 280 SC34-0313 o $JOBUTIL LOG - Log Control LOG indicates whether the $JOBUTIL commands are to be printed as they are read and which terminal device is to print them. LOG commands can be placed anywhere in the procedure data set. If a terminal device is not specified, the commands are logged on the terminal from which the Job Processor was invoked. LOG Operand Required: Default: None ON Operands c) Description ON Ind i cates that $JOBUTI L commands are to be pr i nted OFF Ind i cates that $JOBUTI L printed commands are not to be terminal-name Identifies the terminal device which is to print the job processor commands. If omitted indicates that the job processor commands ~re to be logged on the terminal from which the job processor was called. Examples LOG LOG LOG LOG ON OFF $SYSPRTR o Chapter 4. The Utilities 281 I $JOBUTIL I NOMSG - No Message Logg; ng NOMSG sets LOGMSG=NO for the program identified in the preceding PROGRAM command. See the LOAD instruction in the Language R e of ere n c e for the de fi nit ion 0 fLO GMS G. NO f1 S Gis i n val i d i f not preceded by a PROGRAM command. The NOMSG command must be between the PROGRAM and mands. EXEC com- Syntax I NOMSG Required: None No operands are requ ired. Example PROGRAM HOMSG CALCDEMO o 282 SC34-0313 $JOBUTIL 0" 1 " PARM - Pass Parameter PARM identifies the parameters to be passed to the program in the preceding PROGRAM command. PARM must be between the PROGRAM and EXEC commands. Maximum length of the operand on the PARM command is 62 bytes. The parameters spec if i ed on the PARM command are passed to the specified program as an EBCDIC character string. In the specified program they can be referenced as beginning at the label $PARMI and are packed two characters per LtJord. The length of the str i ng is determi ned by the 'PARM=n' operand of the PROGRAM statement in the specified program. For example, 'PARM=31' would cause the maximum 62 characters from positions 10-71 of the PARM command to be transferred to the specified program starting at the label $PARM1. S}!ntax PARM Requ ired: Operands parameters None Description parameters Def i nes parameters to be passed to the program Example PARM NOLIST,XREF e liI, Chapter 4. The Utilities 283 [ $JOBUTIL PAUSE - Await Manual Intervention PAUSE allows $JOBUTIl commands to be entered from a terminal keyboard. JUMP and LABEL commands are not permitted. When a PAUSE command is read, you are prompted for input. You communicate with the processor using the attention key and three PAUSE subcommands. You can initiate the PAUSE mode by pressing the attention key and typ i ng PAUSE. PAUSE subcommands are: To end $JOBUTI L process i ng • ABORT • ENTER - To enter $JOBUTIL commands • GO - To end the PAUSE mode and read the next command in the procedure data set Syntax Requ ired: None No operands are requ ired. c 284 SC34-0313 o $JOBUTIL Example Data Set with PAUSE JOB LOG PROGRAM EXEC REMARK REMARK PAUSE EOJ PAYROll ON WAGES LAST DAV OF MONTH? RUN MONTH END In PAUSE Mode (Terminal Outp-ut) PAUSE - C IJ~~ ;' * - ATTN: GO/ENTER/ABORT PAUSE >ENTER ENTER ENTER ENTER ENTER COMMAND OPERAND COMMAND OPERAND PROGRAM MONTH END EXEC o Chapter 4. The Utilities 285 [ $JOBUTIL I PROC - Execute Procedure PROC allows you to pass control to another procedure data set. The operand identifies the data set. A PROC command is not allowed in the called procedure data set. PROC cannot be placed between a PROGRAM command and EXEC command. The completion code of the last program executed in the sub-procedure wi 11 be avai lable for testing by the main procedure. PROC procedure-name, volume Required: procedure-name Default: volume is IPl volume Description procedure-name Defines the procedure data set to which control is to be passed. volume Defines the volume contCiining the procedure set to wh i ch control is to be passed. data Examples PROC PROC PAYROll,EDX002 PAYROLL c 286 SC34-0313 $JOBUTIL o PROGRAM - Ident; fy Program PROGRAM i dent if i es a program to be executed. Syntax program-name, volume PROGRAM Required: program-name Default: volume is IPl volume operands Description program-name Def i nes the executed ( '1 volume name of the program Def i nes the name of the volume program member to be executed member to conta i n i ng be the ,I Examples PROGRAM PROGRAM $DEBUG,EDX002 CHECKS o Chapter 4. The Utilities 287 $JOBUTIl REf1ARK - D; splay Remark () REMARK allows you to output a message to the operator with log ON or OFF. The operand contains the message. The maximum message length is 62 bytes. Syntax REMARK comment Required: None Des c.r:...i..Q t 1 on comment Defines the comment to be displayed Example I REMARK INSERT DISKETTE EDX005 o 288 SC34-0313 o $JOBUTIL *- Comment An asterisk (*) in position 1 allows internal comments in the procedure data set. Comments can start in pos i t i on 2. The 1 nternal comment is not pr i nted. Syntax * internal comment Required: None No operands are requi red. Example * THIS PROCEDURE IS A TEST CASE o Chapter 4. The Utilities 289 $JOBUTIL .1 o Batch Job Example The following examples list three procedure data last two procedures shown are invoked by the first. List Data Set BATCH on JOB LOG REMARK PROGRAM NOMSG DS PARM EXEC PROGRAM EXEC JUMP PROGRAM EXEC LABEL PROGRAM PARM EXEC JUMP PROGRAM OS EXEC LABEL PROC PROC EOJ sets. The EDXOO~ BATCH $SYSPRTR THIS JOB SHOULD RUN UNINTERRUPTED JUTESTl,EDX003 LOADl,EDX003 FOF4FIF7 JUTEST2,EDX003 JMPl,EQ,-lO CALCDEMO,EDX002 JMPI JUTEST3,EDX003 2 JMP2,LT,5 $EDITIN,EDX002 EDITWORK,EDX002 JMP2 PROCl,EDX003 PROC2,EDX003 c 290 SC34-0313 [ $JOBUTIL l j st Data Set PROCI on EDX003 lOG REMARK PROGRAM EXEC EOP ON PROCI JUTEST2,EDX003 li st Data Set PROC2 on EDX003 RENARK PROGRAM DS PARM EXEC EOP PROC2 JUTESTl,EDX003 lOADl,EDX003 ENDT c o Chapter 4. The utilities 291 [ $lOG I $LOG - LOG I/O ERRORS INTO DATA SET ", 0 1 . . '"' $lOG records information concerning I/O errors onto a disk or d j skette data set. The i nformat i on recorded on the log data set can then be d i sp layed us i ng $DISKUT2. You must include the supervisor I/O error logging module (SYSlOG) in your generated system to have I/O error logg i n9 capability. N01~: Log Data Set Before I/O errors can be recorded, you must allocate a log data set to contain the device and system information available at the time of the I/O error. The log data set should be at least eight records long and should be named $LOGDS. $LOGDS may reside in a disk or diskette volume. The log data set contains one 256-byte log entry per record. The first two records are used for contra 1 i nformat ion. If the log data set was previously used and contains valid entr i es, new entr i es are added after the old ones. If the data set is not initialized, a new log control record is written, indicating that no entries are in the log data set. When the log data set becomes full, the following message is sent to the terminal: $LOG - *** INSUFFICIENT BUFFERS FOR LOG RATE "Following this message, subsequent log entries 'oJritten over the oldest entries. *** received are Invoking SLOG To activate error logging, load $lOG into any partition. Use the session manager diagnostic utilities option menu or the $L operator command. You are prompted for the name of the log data set. After $LOG is loaded and error logging is activated, you can use attention commands provided by $LOG to deactivate, reactivate or terminate error logging. You can also reinitiali ze the log data set us i ng one of these attent i on commands. For 292 SC34-0313 o o SLOG information about I/O error logging, system generation considerations, and execution time interfaces, refer to the ~stem Guide. Example: The follo,~ing example shows how to activate error logging and the attention commands that are avai lable. > $L SLOG SLOGDS,EDX002 $LOG 21P, LP= 7400 ********************************************************* * ** * * * * ** * o $ LOG UTI LIT Y THE FOLLOWING ATTENTION COMMANDS ARE AVAILABLE: ATTN/$LOGOFF - TEMPORARILY DEACTIVATE LOGGING ATTN/$LOGON - REACTIVATE LOGGING ATTN/$LOGINIT - INITIALIZE LOG DATA SET ATTN/$LOGTERM - TERMINATE LOGGING ATTN/$LOG - REISSUE COMMAND LIST WARNING: DO NOT CANCEL($C) THIS PROGRAM. * ** * * * * * ** ********************************************************* LOGGING ACTIVATED c Chapter 4. The Utilities 293 [ $MOVEVOI. ] $MOVEVOL - DISK VOLUME DUMP/RESTORE $~10VEVOL dumps the contents of an Event Dr i ven Execut i ve direct access volume to diskette when such a volume spans several diskettes. $MOVEVOL also restores a volume from diskette to disk. Thus, $MOVEVOL provides the facility for transferring large amounts of data from one system to another or for creating backup copies of an online data base. Diskette Usage Diskette Contents The first of the set of diskettes used for the dump function, called the control diskette, records control information and the volume directory. The rest of the diskette,s store the data portion of the volume being dumped. Control information is recorded on each data diskette to identify the diskette contents and to ensure that it contains data related to the dump operation described on the control diskette. Diskette Format All diskettes must be 'formatted using $DASDI to contain 128-byte sectors. Either single-sided or double-sided diskettes can be used; however, all diskettes in a set must be the same type. Each diskette must contain a volume label in the standard format. The volume label must be a six-character field in which the last two characters are used for sequencing; for example, SAVEOO, SAVEOl, ••• , SAVEnn, where nn is the last diskette used. All diskettes used must have the same fourcharacter prefix. 294 SC34-0313 o $MOVEVOl 4966 Diskette Usage Considerations If you are using the 4966 diskette magazine unit for your dump/restore operation, you can use diskette magazines or an individual diskette slot. If you use an individual diskette slot, then all of the subsequent diskettes mounted must be placed in the same slot. If you use diskette magazines, you must have all of your diskettes in the correct sequence with no empty slots in the magazine. The first volume with the suffix 00 must be in slot number 1 of the first magazine. You can use either or both of the diskette magaz i nes, A and B. Data Set Specification If $MOVEVOL is invoked with the $L command, you are prompted to enter the names of the data sets and volumes to be used. c Figure 21 shows the parameter menu displayed when $MOVEVOL is invoked using the session manager. Enter the requested informat i on and press ENTER. $SMM0308: SESSION MANAGER $MOVEVOL PARAMETER INPUT MENUENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN DISK ($$EDXLIB,VOLUME) ==> DISKETTE (NAME, VOLUME) ==> Figure 21. $MOVEVOl parameter input menu o Chapter 4. The utilities 295 [ :SMOVEVOL I Dump Procedure The following steps are required to dump the direct access volume onto diskette. 1. contents of a Set up a control diskette. a. b. c. Use $INITDSK to: 1) Initialize the label that is SAVEOO). 2) Create a di rectory of at least 2 records. 3) If the diskette is to be used to IPl another system, reserve space for a nucleus of the appropriate s j ze and I-Jr i te the IPl text. control diskette suffixed with 00 with a volume (for example, Use $DISKUTI to: 1) Determine the directory size, volume to be dumped. in records, of the 2) Change volume to the control diskette (for example, SAVEOO) and allocate a control data set with the same name as the name of the volume to be dumped. The member size of the control data set must be one record larger than the size of the volume be i ng dumped. Use $COPYUT 1 to: 1) Copy other data sets onto the control data set. For example, you may required $EDXNUC, the transient loader, or a copy of $MOVEVOl. Note: The first record in the control data set contains control information and up to 50 characters of text descr i bing the data be i ng dumped. The remaining space stores a copy of the directory of the vo I ume be i ng dumped. 2. Set up a ser i es of data diskettes. For each data diskette: a. Use $INITDSK to: 1) 296 Create a volume label. The volume label of each diskette must have the same four-character prefix as the control diskette and a two-character suffi x indicating the sequence number, for example, SC3 l .-0313 o I SMOVEVOL o SAVEO 1, SAVE02, .••.•• , SAVEnn. b. 3. 2) Create an owner 10 fie ld. 3) Allocate a two-record directory. Use $01SKUTl to: 1) Allocate a one-record data set named $CONTROL. 2) Allocate a second data set with the name of the volume to be dumped (for example, EOX002). The second data set must use the remaining available space on the diskette (946 records for a singlesided diskette and 1921 records for a double-sided diskette. Mount the control diskette, $MOVEVOL for execution. vary it online and load You must spec i fy two data sets at load time: o DISK The volume on disk $$EDXLIB,volser. DISKETTE The control data dsname,volser. to set dumped. Specify diskette. Specify be on $MOVEVOL asks if you wi sh to dump from disk to diskette. $MOVEVOL then determines the number of additional diskettes required to dump the referenced volume (DISK), informs you of this requirement, and asks whether the procedure should be continued. A negati ve response terminates the operat ion. I f the response is pos i t i ve, the contro 1 i nformat i on and disk directory are recorded on the control diskette and you are asked to mount a new diskette for transfer of the data portion of the volume being dumped. 4. Each time a diskette is filled, $MOVEVOL requests another diskette. Mount as many data diskettes as requested. o Chapter 4. The Util~ties 297 $MOVEVOL 1 ( .Y'\ Example Dump Operation Using a 4966 Diskette Ma..,9.P.zine Unit > $L $MOVEVOL DISK(NAME,VOLUME): $$EDXLIB,EDX002 DISKETTECNAME,VOLUME): $EDX002,SAVEOO 20P,10:07:52, LP=5200 $MOVEVOL DUMP LIBRARY FROM VOLUME EDX002 TO DISKETTE? Y PROCESSING DISKETTE VOLUME SAVEOO ENTER LIBRARY IDENTIFICATION (1-50 CHAR.): DUMP OF EDX002 - DATE IS 09/14/77 11 MORE DISKETTES ARE REQUIRED, CONTINUE? Y PROCESSING PROCESSING PROCESSING PROCESSING PROCESSING PROCESSING PROCESSING PROCESSING PROCESSING DISKETTE DISKETTE DISKETTE DISKETTE DISKETTE DISKETTE DISKETTE DISKETTE DISKETTE VOLUME VOLUME VOLUME VOLUME VOLUME VOLUME VOLUME VOLUME VOLUME SAVE01 SAVE02 SAVE03 SAVE04 SAVE05 SAVE06 SAVE07 SAVE08 SAVE09 MOUNT NEXT DISKETTE OR MAGAZINE REPLY -Y- WHEN DONE: Y PROCESSING DISKETTE VOLUME SAVEI0 PROCESSING DISKETTE VOLUME SAVEll VOLUME DUMP OPERATION COMPLETE 9200 RECORDS TRANSFERRED $MOVEVOl ENDED 10:10:13 c 298 SC34-0313 $MOVEVOL Restorat;on Procedure The following steps are required for a restore operation. 1. 2. Mount the contro I diskette, $MOVEVOL for execution. vary it on line and load a. Respond as described previously in Dump Procedure to requests for data sets. b. Select the restoration mode by responding N to the query for disk to diskette dump and Y to the query for diskette to disk restoration. Mount data diskettes as requested. Examples Restore Operat i on Us i n9 a 4964 Diskette Un it: The smaller than the receiving volume in size. O ~''\;, source is > $l $NOVEVOL,GREYV2 DISK (NAME,VOLUME): $$EDXLIB,MACLIB DISKETTECNAME,VOLUME): $MACLIB,BACKOO $MOVEVOL 20P,00:26:08, LP= 7000 DUMP LIBRARY FROM VOLUME MACLIB TO DISKETTE? N RESTORE LIBRARY FROM DISKETTE TO DISK VOLUME MACLIB ? Y RESTORING 5719-XX2 V01M01 JAN. 12, 1979 TO VOLUME MACLIB CONTINUE? Y SOURCE VOLUME IS SMALLER THAN THE TARGET. CONTINUE? Y COMPRESS THIS LIBRARY AFTER INSTALLATION. PROCESSING DISKETTE VOLUME BACKOO MOUNT NEXT DISKETTE OR MAGAZINE REPLY -Y- WHEN DONE: Y PROCESSING DISKETTE VOLUME BACK01 o Chapter 4. The Utilities 299 $MOVEVOL Restor~eratl0n USl~n Individual 4966 Diskette Magazine Slot: The source and target volumes are equal in si ze. > $L $MOVEVOL $$EDXLIB,EDX003 $EDX003,SAVEOO $MOVEVOL 20P,11:05:05, LP=6300 DUMP LIBRARY FROM VOLUME EDX002 TO DISKETTE? N RESTORE LIBRARY FROM DISKETTE TO DISK VOLUME EDX002? Y RESTORING DUMP OF EDX002 - DATE IS 09/14/77 CONTINUE? Y PROCESSING DISKETTE VOLUME SAVEOO MOUNT NEXT DISKETTE OR MAGAZINE REPLY -Y- WHEN DONE: Y PROCESSING DISKETTE VOLUME SAVEOI MOUNT NEXT DISKETTE OR MAGAZINE REPLY -Y- WHEN DONE: Y PROCESSING DISKETTE VOLUME SAVE02 MOUNT NEXT DISKETTE OR MAGAZINE REPLY -Y- WHEN DONE: Y PROCESSING DISKETTE VOLUME SAVE03 MOUNT NEXT DISKETTE OR MAGAZINE REPLY -Y- WHEN DONE: Y PROCESSING DISKETTE VOLUME SAVE04 VOLUME INSTALLED 3600 RECORDS TRANSFERRED $MOVEVOL ENDED 11.10.56 o 300 SC34-0313 $PFMAP $PFMAP - IDENTIFY 4978 PROGRAM FUNCTION KEYS The $PFMAP utility identifies the program function keys on the 4978 display station. As each key is pressed, its associated system code is displayed in decimal and hexadecimal. A key's associated system code is the identification returned at completion of a WAIT KEY instruction or an ATTNLIST interrupt. The hardcopy key is active during execution of this program, and its code is not displayed. The program is terminated by press i ng the ENTER key. o Chapter 4. The Utilities 301 $PREFIND $PREFIND - PREFIND DATA SETS AND OVERLAYS $PREFIND locates the disk, diskette, overlay programs to be referenced by their addresses in the header of your has executed, the tasks performed by future program load times for the your o or tape data sets and your program and stores program. After $PREFIND $LOADER are reduced and program are shortened. Under certain carefully controlled conditions, $PREFIND reduces the time required to load other programs from disk or diskette for execution. $PREFIND is normally used as the last step in the program preparation process, following the execution of $UPDATE; hO"Jever, it can be used to process a program at any time after the program has been processed by $UPDATE or after a previous processing by $PREFIND as is described as follows. $PREFIND is most effective when it is used to process programs that reference a large number of disk, diskette, or tape data sets and overlay programs and when these programs must be loaded frequent I y from disk or diskette. I Program Load Process Overview If a program uses data sets or overlays programs (OS= and PGf1S= keyword parameters in PROGRAr" statement), the assembly process creates control blocks in the program header for each data set and overlay program specified. Space is reserved in these control blocks for the physical disk/diskette/tape addresses of the data sets and overlay programs defined. After completion of the program preparation process ($LINK if required, and then $UPDATE), the executable load module can be loaded to storage. The system program that performs the load operation is a transient loader program ($LOADER), and part of that operat i on inc I udes fill i ng in the actua I phys i ca I addresses of data sets and overlay programs in the control blocks of the program header of the program that was loaded. When a large number of data sets and/or overlay programs are defined, this can be a time-consuming process, as $LOADER must search a volume di rectory for each data set/program used. In this manner, all data sets and overlay programs required by a program are located and their sizes determined each time the using program is loaded for execution. Thus, the loaded program wi 11 execute correctly even if the si ze or location o'f one or more of the data sets or overlay programs it uses has changed. 302 SC34-0313 o $PREFIND o The program loading process just described provides maximum safety and flexibi lity in loading programs for execution. However, the time requ i red to locate each data set and over lay program each time a program is loaded may be undesirable in some circumstances. $PREFIND allows data sets and overlay programs to be located prior to program load time, and written directly into the program header on disk or diskette. When a program is loaded, the information required is already present, and load time is therefore reduced. Note: See Internal Des~ for a description of the Relocating Program Loader ($LOADER), the program header, and Data Set Control Blocks (DSCBs). $PREFIND Usage Caut;ons 1. Use $PREFIND only to locate data sets and/or overlay programs in well tested production systems where the size and location of the referenced data sets and overlay programs are unlikely to change and where programs are loaded so frequently that the saving of a few seconds in program load time results in a useful performance increase for the system. 2. Use $PREFIND only in situations where the disk, diskette, or tape locations of referenced data sets and overlay programs will remain relatively static. If a referenced data set or overlay program is moved to a new location on disk or diskette, or to another tape volume, then programs that have been processed by $PREFIND will not be aware of the new location or size. This will produce undesirable results the next time the programs are executed. $PREFIND must be used again to insert the new information into the program headers of all referencing programs. 3. o Before loading a program that references data sets on removeable media, such as diskette or tape, make sure. that the proper diskette or tape volume containing the prefound data sets has been mounted and varied online. If the correct diskette or tape volume is not mounted, the program wi 11 use whatever volume is mounted at the time of execution. If you should access an incorrect volume, unpredictable results may occur and possible destroy the data on the diskette or tape. Chapter 4. The Utilities 303 $PREFIND 4. The system does not keep track of referenced data sets or overlay program locations that are no longer valid. It is ynur responsibility to prevent disk, diskette, or tape data sets and program overlays from being incorrectly modified. System functions that can change the size or location of data sets or overlay programs are: 5. • DE Clnd AL commands of $DISKUTl • CD, ST, and RT commands of $TAPEUTI • $COPYUTI • $UPDATE, following reassembly of a program • $COMPRES If you generate a new system and IPL from that system, make sure that the disk, diskette, or tape control blocks have not been relocated. A change in control block location with j n the super visor requ j res that $PREF IND be used aga i n to locate any referenced data sets and overlay programs. Changes made during system generation that can affect the location of control blocks are: • Add i ng, de let i ng, or chang i ng $EDXDEF statements. • Modifying the $LNKCNTL INCLUDE statements. • Relinking the supervisor with new or modified object modules, for example, $SYSCOM or PTF module replacements. data set to add additional $PREFIND Commands The $PREFIND commands are listed belo,.,. When invoked using $L, $PREFIND prompts you for the information required for each command. When invoked through $JOBUTIL as a batch processing job, $PREFIND must be supplied with the necessary information with the PARM command of $JOBUTIL, as descr i bed on the follo~.Ji ng pages. 304 SC34-0313 () $PREFINO o Command PF DE EN ? Description PRE LOCATE DATA SETS AND OVERLAYS DELETE PREFOUND STATUS END $PREFIND LIST AVAILABLE COMMANDS Invok;ng $PREFIND $PREFIND can be invoked by the $L command, the job stream processor ($JOBUTI L), or the program preparat i on opt i on of the session manager. Invoking $PREFIND Using $L ·~ C. ~\ ) When invoked with $L, $PREFIND prompts you for the command name and, i f e j ther PF or DE is entered, prompts you for the name and volume of the program, as well as the numbers (1 through 9) of the data sets and overlay programs that are to be located or whose prefolJnd status is to be deleted. All of the requi red information can be entered without waiting for the prompting messages. For example: J PF MYPROG .. EDX003 D=(1 .. 2 .. 4,7) P=(1,2,3) '-------_. her e the n u mb e r 5 i n p a " e nth e 5 i ,S cor res p 0 n d t o t hen u mb e r sus e d in the DSn and PGMn parame'ters on the READ/WRITE and LOAD Event Driven Language instructions. o The data set and program numbers must always be entered in the formats D=(_,_,_) and P=(_,_). Data set numbers, i f present, must always precede overlay program numbers. The word ALL can be used in place of the number string within the parenthesis i f desired. A null response to the prompt for either (but not both) the data set or program numbers can be made, i f appropr i - Chapter 4. The Utilities 305 $PREFIND ate, and no change will occur. in the status of the data sets or programs o Only those data set or program numbers whose status is to be changed should be entered. For example, i f a program references six data sets and i t is desired to prelo~ate the first three and the sixth, then D= (1 ,2,3,6) l.JOU ld be entered when using the PF command. I f at a later time i t is desired to no longer have the th i rd data set in the pre found state, a DE command specifying 0=(3) would be used. After performing the two commands described .bove, data sets I, 2, and 6 would be pref 0 u n dan d d a t a set s 3," 4, 5 W 0 u I d not. I nth e e x amp l e g i v e n here, the execut i on of the DE command only affects DS3 and does not update the i nformat i on in the program header concern i ng DSI, D52, or DS6 should they have been moved to di fferent locations on disk between'the execution of the PF and DE commands described. Note: Dur i ng' execut i on 0 f the DE command, a data set can be deleted which was originally defined in the format (dsname,??). In this case, $PREFIND prompts you to enter the prompting dsname to be placed back into the program header since the original name was overridden during the previous PF command. I f the DE command is invoked via $JOBUTIL, an error message occurs i f the above cond i t i on is encountered. Any data set or overlay program not marked as be i ng in the prefound state is located by $LOADER whenever the using program is loaded into storage for execut i on. Examples Process i n9 One Program Wi thout Prompt i ng Messages > $L $PREFIND $PREFIND 22P,00:06:15, LP= 9800 COMMAND (1): PF TESTPREF,EDX001 D=(1,2,3,5,7,9) COMMAND COMPLETED COMMAND (?): EN P=(ALL) $PREFIND ENDED AT 00:07:30 o 306 SC34-0313 $PREFIND o Processing Multiple Programs with/without Prompting Messages COMMAND (?): PF PGM(NAME,VOLUME): TESTPREF,EDXOOI ENTER DATA SET NUMBERS: 0=(1,2,3,7,9) ENTER OVERLAY PGM. NUMBERS: P=(ALL) COMMAND COMPLETED COMMAND (?): COMMAND (1): PF PGM(NAME,VOLUME): TESTPRE2,EDXOOI D=(ALL) P=(ALL) COMMAND COMPLETED COMMAND (?): EN $PREFIND ENDED AT 00:10:59 o Chapter 4. The Utilities 307 $PREFIND Invoking $PREFIND Using $JOBUTIL () When $PREFIND is invoked through $JOBUTI l, it requ i res the same information as was described under 'Invoking $PREFIND Using $L'. This information is provided with a PARM command having the format shown below. The number of spaces between the operands in the PARM command may be one or more, as long as the total number of characters, including spaces, does not exceed 62. Syntax Character Position 1 10 PARM progname,volume c D=(_,_,_) P=(_,_,_) Operands Description progname The name of the program whose data set and overlay program status is to be mod if i ed. volume The volume of residence of the program whose data set and overlay program status is to be modified. c Either character P for PREFIND or character D for DELETE -'-'- The string of data set or overlay program numbers, or the word ALL When i n v 0 ked wit h $ JOB UTI l, $ PRE FIN D per for m5 e i t h e,r a sin 9 1 e prefind or delete function and then terminates its execution. $PREFIND directs its error and/or termination messages to the device defined as $SYSPRTR. c 308 SC34-0313 $PREFIND Example Messages and responses on your terminal: > $L $JOBUTIL $JOBUTIL 3P,02:23:15, LP= 6500 ENTER PROCEDURE (NAME,VOLUME): PREPROC,EDXOOI $JOBUTIL ENDED AT 02:23:38 Output on $SYSPRTR: LOG *** $SVSPRTR JOB - PREFIND JOB PROGRAM NOMSG PARM EXEC STARTED AT 02:23:28 00/00/00 *** PREFIND $PREFIND,EDXOOI D TESTPREF,EDXOOl D=(ALl) P=(All) COMMAND COMPLETED $PREFIND ENDED AT 02:23:37 The procedure used: 00010 00020 00030 00040 00050 00060 00070 lOG JOB PROGRAM NOMSG $SVSPRTR PREFIND $PREFIND,EDXOOI .PAR~1 D TESTPREF,EDXOOl D=(ALl) P=(ALL) EXEC EOJ o Chapter 4. The Utilities 309 Invoking $PREFIND Using the Session Manager The session manager option menu for program preparation can be used to invoke $PREFIND. Selection of $PREFIND causes the following parameter option menu to be displayed: $SMM0208: SESSION MANAGER $PREFIND PARAMETER INPUT MENU-ENTER/SELECT PARAMETERS DEPRESS PF3 TO RETURN COMMAND (P/D) PROGRAM (NAME,VOLUME) DATASET i'S (OR ALL) PROGRAM #'S (OR ALL) ==> ==> ==> ==> D TESTPREF,EDXOOl All ALL After the parameters are entered, $PREFIND executes as if it were invoked using $JOBUTIL. /",,--,,\ \~~.~J ( \) . 310 SC34-0313 $TAPEUTl o $TAPEUTl - TAPE MANAGEMENT $TAPEUTI performs several commonly used tape management functions. You can initialize tapes, allocate tape data sets, copy data sets or volumes to or from tape, copy tape to tape, print tape records, dump/restore disk devices, and test the tape transport hardware. $TAPEUTI is invoked with the $L command or primary option 3 of the session manager. Once invoked and prior to accepting commands, $TAPEUTI displays the following information about the tapes def i ned to the system: (''') ,.J I I I I I I I • TAPEID • density selection (800, 1600, DUAL) • label type (SL, NL, BLP) • current density setting • online or offline • volume information (i f an onl ine SL tape) • device address Example: load i ng $TAPEUT 1 and its automat i c d i sp 1 ay of the sYStem tapes. > $l $TAPEUTl $TAPEUTI 21P,II:II:33, LP= 0000 TAPEOI DUAL SL 1600 OFFLINE DEVICE ADDRESS = 004C TAPE02 DUAL Nl 1600 OFFLINE DEVICE ADDRESS = 0040 COMMAND (1): Note: Error logging of tape errors is available. Refer to the SYstem Guide. 0, .,1, Chapter 4. The Utilities 311 $TAPEUTI $TAPEUTI Commands o The commands avai lable under $TAPEUTI are 1 i sted below. To di spIa y t h 1 s 1 1 s ,t a t you r t e r mj n aI, e n t era que s t ion mar kin rep 1 y to the prompt i ng message COMMAND (?):. COMMAND (?>: ? CD CT OP EN EX IT MT RT ST TA - COpy DATASET CHANGE TAPE ATTRIBUTES DUMP TAPE END $TAPEUTI EXERCISE TAPE INITIALIZE TAPE MOVE TAPE RESTORE DISK/VOL FROM TAPE SAVE A DISK/VOL ON TAPE ALLOCATE TAPE DATASET COMMAND (?): /1"\ '\'\.,) After the commands are displayed, you are again prompted with COMMAND (?>:. You respond with the command of your choice (for e )( a mp 1 e, CO). 312 $C34-0313 o $TAPEUTl CD - Copy Data Set CD cop i es a d 1 sk or d 1 skette data set onto a tape, cop 1 es a tape data set 1 nto a disk or diskette data set or onto another tape. The command wr 1 tes a tra 1 ler labe I at the end of the data set on the target tape 1f it is a standard label tape. Header labels are not written on standard or non-labeled tapes, therefore, the target tape data set must be preallocated. I fad i sk or diskette data set is be i ng cop i ed to tape, the tape records wi 11 be 256-bytes. If a tape data set from another system (for example, a 5/370) is copied to a disk or diskette and the source records are not 256-bytes, the source records are split into multiple 256-byte records with any unused bytes padded with zeros. Prior to copying, you are prompted for the max 1 mum 1 nput record size. Cons i der the fo llow i ng when you are copy i ng data sets: • When you reach a tapemark (end of input data), you are prompted to continue. If you have more records to copy, you can continue; however, make sure that there 1S sufficient room on the target tape. You are prompted at every tapemark encountered on the source tape. If you do not wish to cont i nue, the tra i ler label 1 s wr i tten on the target tape. • To copy the contents of one tape to another tape, thereby creating an exact duplicate of the entire tape (header label and data records or only data records), you can use either of two methods: To copy only data records, initialize the target tape (using the IT command) 50 that it has the same label type as the source tape. Copy (using the CD command) the source tape to the target tape. This allows you to create a new header label on the target tape and to duplicate only the data record.s from the source tape. To create an exact duplicate of the source tape, mount the source and target tapes on dr i ves spec if i ed for bypass label-processing. Then copy (using the CD command) the entire source tape. The target tape becomes an exact duplicate of the source all label records, all data records, and all trai ler labels). o Chapter 4. The utilities 313 [$TAPEUTl o Example .c..opYing Data from a Disk to a T,iE..g, COMMAND (?): CD SOURCE (NAME,VOLUME): $TAPEUTl,EDX002 TARGET (NAME,VOLUME): DATAl111,123456 ENTER SOURCE BlOCKSIZE CNULL=DISKCETTE»: USE ATTN/CA TO CANCEL COpy ARE ALL PARMS CORRECT? (Y,N): Y EOD ON SOURCE DATASET 25 RECORDS COPIED COMMAND (?): c 314 SC34-0313 $TAPEUTl o CT - Change Tape Dr;ve Attr; butes CT resets the label type and density for any tape drive. The label type and density are set at system generation. CT allows you to dynamically reconfigure the tape drives. You must vary off the tape dr i ve before you can change its attr i butes. where nn = hexadec i ma I dev ice address The current settings for label and density are displayed. You are prompted to enter any changes. The CT command fails and issues an error message on the terminal for the following conditions: o I· i nval i d dev; ce address I• I• I. I. tape drive is not varied offline invalid label type invalid density tape dr i ve not def i ned as dual dens i ty o Chapter 4. The Utilities 315 I [$TAPEUTl~ o Examples ~e c i f y C h$VARYON 4C c) TAPEOl ONLINE > $L $TAPEUTI $TAPEUTI 19P,00:08:48, LP= TAPEOI DUAL NL 1600 ONLINE DEVICE ADDRESS = 004C TAPE02 SL 1600 OFFLINE DEVICE ADDRESS = 0040 COM~1AND (?): 7AOO RT ********************************** * * * * WARNING: TO ENSURE PROPER DISK CONTENTS, THE SYSTEM SHOULD BE INACTIVE WHILE RUNNING THIS UTILITY * * * * ********************************** SOURCE (NAME,VOLUME): X,TAPEOI TARGET (NAME,VOLUME): $$EDXVOL,ASMlIB DEVICE RESTORE? N ARE ALL PARMS CORRECT? (Y,N): Y USE ATTN/CA TO CANCEL THE RESTORE VOLUME RESTORED COMt1AND (?): o Chapter 4. The Utilities 327 I $TAPEUTl Res tor e D i ~ I o k De vic e fro m el Tel P e > $VARYON 4C TAPEOI ONLINE > $L $TAPEUTI $TAPEUTI 19P,00:l2:06, LP= 7AOO TAPEOl DUAL NL 1600 ONLINE DEVICE ADDRESS = 004C TAPE02 SL 1600 OFFLINE DEVICE ADDRESS = 004D COMMAND (?>: RT ********************************** * * * * WARNING: TO ENSURE PROPER DISK CONTENTS, THE SYSTEM SHOULD BE INACTIVE WHILE RUNNING THIS UTILITY * * * * ********************************** SOURCE (NAME,VOLUME): X,TAPEOI TARGET (NAME, VOLUME): $$EDXVOL,EDX002 DEVICE RESTORE? Y ARE ALL PARMS CORRECT? (Y,N): Y USE ATTN/CA TO CANCEL THE RESTORE DISK RESTORED COMMAND (?): o 328 SC34-0313 $TAPEUTl o Restore Disk Device from More than One Tape COMMAND (?): RT ********************************** * * * * WARNING: TO ENSURE PROPER DISK CONTENTS, THE SYSTEM SHOULD BE INACTIVE WHILE RUNNING THIS UTILITY * * * * ********************************** SOURCE (NAME,VOLUME): SAVE1,TAPE02 TARGET (NAME,VOLUME): $$EOXVOL,EOX002 DEVICE RESTORE? Y ARE ALL PARMS CORRECT? (Y,N): Y USE ATTN/CA TO CANCEL THE RESTORE MOUNT SAVE2,TAPE02 REPLY Y WHEN TAPE MOUNTED AND VARIED ONLINE? > $VARYON 40 TAPE02 ONLINE ? Y DISK RESTORED COM~1AND (?): o Chapter 4. The Utilities 329 [ $TAPEUTl I ST - Save a 0; sk Dev; ce or 0; sk Volume on Tape ST saves an entire disk device or a single disk volume on a tape. 5T prompts you to spec i fy whether you are sav i ng a dev i ce or volume. The ST command can be used in conjunction with the restore command (RT) to backup data you wish to protect. Examples Save Di sk Volume on Tape > $VARYON 4C TAPEOI ONLINE > $L $TAPEUTI $TAPEUTI 19P,00:06:26, LP= 7AOO TAPED! DUAL NL 1600 ONLINE DEVICE ADDRESS = 004C TAPE02 SL 1600 OFFLINE DEVICE ADDRESS = 004D COMMAND (?): ST ******************************** * WARNING: TO ENSURE PROPER * * * * TAPE CONTENTS, THE SYSTEM SHOULD BE INACTIVE WHILE RUNNING THIS UTILITY. * * * ******************************** SOURCE (NAME,VOLUME): $$EOXVOL,ASMLIB TARGET (NAME,VOLUME): X,TAPEOl DEVICE SAVE? N VOLUME SAVE OF ASMLIB ONTO TAPE X,TAPEOI OK? (Y,N): Y I USE ATTN/CA TO CANCEL THE SAVE VOLUME SAVED COMMAND (?): c 330 SC34-0313 $TAPEUTl o Save Disk Device on Tape > $VARYON 4C TAPEDI ONLINE > $l $TAPEUTl $TAPEUTI 19P,DO:02:16, LP= 7AOO TAPEOl DUAL NL 1600 ONLINE DEVICE ADDRESS = 004C TAPE02 SL 1600 OFFLINE DEVICE ADDRESS = 004D COMMAND (?): ST ******************************** * * * * WARNING: TO ENSURE PROPER TAPE CONTENTS, THE SYSTEM SHOULD BE INACTIVE WHILE RUNNING THIS UTILITY. * * * * ******************************** SOURCE (NAME,VOLUME): $$EDXVOL,EDX002 TARGET (NAME,VOlUME): X,TAPEOl DEVICE SAVE? Y DEVICE SAVE OF DISK CONTAINING EDX002 ONTO TAPE X,TAPEOl OK? (Y,N): Y USE ATTN/CA TO CANCEL THE SAVE DISK SAVED COMMAND (?): o Chapter 4. The Utilities 331 [ $TAPEUTl Save Disk Dev ice on More than One Tape COMMAND (?): ST ******************************** * * * * WARNING: TO ENSURE PROPER TAPE CONTENTS, THE SYSTEM SHOULD BE INACTIVE WHILE RUNNING THIS UTILITY. * * * * ******************************** SOURCE (NAME,VOLUME): $$EDXVOL,EDX002 TARGET (NAME,VOLUME): SAVE1,TAPEOl DEVICE SAVE? Y DEVICE SAVE OF DISK CONTAINING EDX002 ONTO TAPE SAVEl,TAPEOl OK? (Y,N): Y USE ATTN/CA TO CANCEL THE SAVE END OF TAPE ENCOUNTERED. CONTINUE? Y ENTER NEXT TAPE (NAME,VOLUME): SAVEl,TAPEOl REPLY Y WHEN TAPE SAVE2,TAPEO! IS MOUNTED AND VARIED ONLINE? > $VARYON 4C TAPEO! ONLINE ? Y rf"\ \'(\.:_.-,1J) DISK SAVED COMMAND (?): o 332 SC34-0313 $TAPEUTl o TA - Allocate a Tape Data set TA deletes an existing data set and reallocates a null data set, or adds a null data set after the last data set on the volume. Notes: 1. Th i s command is used to p lace data set labe Is on prev i ous 1 y initialized standard labeled (SL) tapes; the tape unit must be in the standard label processing mode. 2. All the data on the tape following the newly allocated data set is destroyed. 3. The tape must be varied online to the file number of the data set be i ng allocated. 4. To be accessed by a online. program, the tape must be var i ed Example Allocate Data Set (DATA2222) on Volume 123456 o COMMAND (?): TA TAPEDS (NAME,VOlUME): DATA2222,123456 EXPIRATION DATA (VVDDD): 79001 DATA SET ALLOCATED COMMAND (1): o Chapter 4. The Utilities 333 I $TERMUn] $TERMUTI - CHANGE TERMINAL PARAMETERS ( )j II ~ $TERMUTl, a general purpose terminal utility program, alters logical device names, address assignments or terminal configuration parameters. Changes remain in effect until the next IPL. $TERMUTI Commands The commands avai lable under $TERMUTI are listed below. To disp I a y t his 1 i s ton yo lJ r t e r min aI, en t e r a que s t ion mar kin response to the prompti ng message COMMAND (?):. COMMAND(?): ? LA RE RA RH CT EN LIST TERMINAL ASSIGNMENTS RENAME REASSIGN ADDRESS REASSIGN HARDCOPY CONFIGURE TERMINAL END PROGRAM COMMAND(?): After the commands are displayed, you are again prompted with COMt1AND (?):. You respond with the command of your choice (for example, LA). o 334 SC34-0313 $TERMUTl ] o CT - Conf; gure Term; nal CT modifies the page formatting parameters associated with a terminal. In the following example, the conditional prompt message associated with each parameter is shown. Default values are i nd i cated in parentheses. ENTER TERMINAL NAME: $SYSLOG PAGE SIZE: 24 (from TOP MARGIN: 12 (0) (page BOTTOM MARGIN: 23 (0) HISTORY LINES: 6 (0) LEFT MARGIN: 0 RIGHT MARGIN: 79 (line (N) OVERFLOW LINES? N (N) OUTPUT PAUSE? N (loading terminal) TERMINAL statement) size -1) size -1) The option OUTPUT PAUSE allows the 'screen full' pause for screen dey ices to be d i sai:tled so that unattended systems do not enter an indefinite wait state. !!2ll: For more information on terminal TERMINAL statement in the System Gu ide. parameters, see the EN - End Program EN term i nates the $TERMUTI ut iii ty. o Chapter 4. The Utilities 335 r "$TERMUTl I (~) LA - L; st Term; nal Ass; gnments LA lists the current terminal names, addresses and types. LA COMMAND(?): NAME ADDRESS $SYSLOG $SYSPRTR $SYSLOGA 04 01 00 06 DISPLAY2 07 TYPE 4979 4974 TTY 4979 4978 COMt1AND ( ? ) : No name appears for the device at address 06 because there was none on the or i gina 1 TERMINAL statement. RA - Reass; 9" Address RA reassigns the physical address of a terminal specified in the address:: parameter of the TERMINAL statement dur i ng system generat i on The form for th i s funct i on is: ~ ____ n_a_m_e__a_d __ d_r_e_s_s______________________________________________ where the address in question must be Some examples are: RA RA RA currently ~ unassigned. DISPLAY2 7 $SYSPRTR 12 (05) 06 c 336 SC34-0313 [ o $TERMUTl RE - Rename Log;cal Dev;ce RE renames the logical terminal name (the label on the TERMINAL statement) that you specified during system generation. The form for this function is: RE oldname newname The new name replaces the old name. As shown in the following examples, the old name can be a logical name or a hexadecimal device address. If a device address is indicated, it must cons i st of 1 or 2 dig its enc losed in parentheses. RE RE Cj ~, DISPLAY2 DISPLAY3 (06) TERMl The changes are ver if i ed by enter i ng the LA command. o Chapter 4. The Utilities 337 $TERMUTI o RH - Reassi gn Hardcopy RH changes the hardcopy device associated with a 4979/4978 display, and indicates which program function key wi 11 produce the hardcopy. The form is: RH name keycode Here 'name' is the logical name (not device address) of the hardcopy device, and 'keycode' is the code for the desir'ed hardcopy key (e.g., 1 to 6 for the 4979 display). The hardcopy device is changed for the $TERMUTI was loaded. Some examples are: Rti RH RH $SYSlOGA 6 $SYSLOGA 4 PRTR2 6 terminal from which :r-) ("", . o 338 SC34-0313 $TERMUT2 o I $TERMUT2 - PROCESS 4974/4978 IMAGE/CONTROL STORE $TERMUT2 is used to: • Assign a DEFINE key in a 4978 control store. • Change the definition of one or more keys in a 4978 control store. • Load a 4978 control store from a direct access data set or saving a newly redefined 4978 control store into a direct access data set. The contro I store is a data set containing the 4978 control store and microcode to access the i mage store. • Load a 4978 image store from a direct access data set or save a 4978 i mage store into a direct access data set. (Refer to the description of the $FONT utility program for a description of image store definition.) Restore the i mage buffer of a 4974 pr inter to the standard 64 character set. Cl You may wish to invoke these functions from a terminal other than the one you are us i ng; therefore, you are requested to specify a terminal. If the selected terminal is not a 4978, you are not if i ed and the command is rej ected. 4978 Support Use $TERMUT2 to to make spec i a 1 character str i r,g ass i gnments on the 4978 keyboard. Key definitions can be changed, perhaps to be appropr i ate to a spec i al key data appl i cat i on, and the redefined keyboard definitions saved on disk. The keyboard definition can be reloaded later using $TERMUT2 or by using the TERMCTRL instruction within your application. 4096 bytes are transferred during an image control save so a 16 record data set must be defined for each control store image to be stored. Use $FONT to change the display image of redefined keys. For detailed information on the 4978 display station functions and the 4978 keyboards, refer to the Bibliography for 4978-1 Oisp lay Stat i on manua Is. o Chapter 4. The Utilities 339 $TERMUT2 () 4974 Support Use $TERMUT2 to restore the image buffer of a 4974 printer to the standard 64 character set. The 4974 printer uses the Extended Binary Coded Decimal Interchange Code (EBCDIC), which includes 64 standard characters and five characters for international use. The standard key definition can be changed by using the TERMCTRL instruction within your application program and the redefined character set is stored in the image buffer of the 4974. For detailed information on the 4974 printer, refer to the B1 bl i ography for the 4974 Pr inter manual. Data Set Names Naming follow can be by the conventions for image store and control store data sets the convent ions of the Event Dr i yen Execut i ve: the label up to eight characters. Two special names are reserved system and used during initial program load time: $4978150 image store label $4978C50 control store label These data sets are automaticallY searched for and loaded to defined 4978 display stations during the initialization phase at IPL time. $TERMUT2 Commands The commands ava i lab Ie under $TERMUT2 are 1 i sted be low. To d i splay th is 1 i st at your term ina I, enter a quest i on mark in response to the prompt i ng message COMMAND (?):. c 340 5C34-0313 $TERMUT2 o COMMAND (1): ? AD C EN LC LI RE SC SI - ASSIGN DEFINE KEY CHANGE KEY DEFINITION END PROGRAM LOAD CONTROL STORE LOAD IMAGE STORE RESTORE 4974 TO STD. 64 CHAR. SET SAVE CONTROL STORE SAVE IMAGE STORE COMMAND (1): After the commands are displayed, you are ag~in prompted with COMMAND (?):. You respond wi th the command of your cho ice (for example, AD). o Chapter 4. The Utilities 341 $TERMUT2 1(' I, )-,'1',' " Examples AD - Assign a Define Key COMNAND (?): AD ENTER SCAN CODE OF KEY TO BE ASSIGNED AS THE DEFINE KEY (HEX): 1 ENTER TERMINAL NAME (CR OR * ~ THIS ONE): $SYSLOG C - Change a Key Definition COMMAND (?): C ENTER TERMINAL NAME (CR OR * = THIS ONE): $SYSLOG ENTER SCAN CODE OF THE KEY TO BE REDEFINED (HEX): 1 ENTER NEW FUNCTION 10 (HEX): 20 ENTER NEW CHARACTER/FUNCTION CODE (HEX): 0 ENTER NEW INTERRUPT CODE (HEX): 1 ANOTHER KEY? N /'~- '''\ i~,_) lC - load a Control store COMMAND (?): LC FROM DATA SET (NAME,VOlUME): ENTER TERMINAL NAME (CR OR * $4~78CSO = THIS ONE): * o 342 SC34-0313 $TERMUT2 o RE - Restore 4974 to Standard 64 Character Set COMMAND (1): RE ENTER TERMINAL NAME (CR OR * = THIS ONE): MPRINTER SC - Save a Control Store COMMAND (1): SC SAVE DATA SET (NAME,VOlUME): $4978CSO ENTER TERMINAL NAME (CR OR * = THIS ONE): $SYSLOG o o Chapter 4. The Utilities 343 $TERMUT3 $TERMUT3 - SEND MESSAGE TO A TERMINAL o $TERMUT3 sends a single line message from your terminal to any other termi nal def i ned 1 n the system. One message line is sent at a time and you are prompted for the message, the terminal the message is to be send to , and if add it i ona I messages are to be sent. There are no commands, only prompting messages as follows: ENTER TERMINAL NAME: Label of the terminal to which message is to go. ENTER MESSAGE TO SEND Type in message and press the ENTER (CR) key. The message is transmitted to the destination terminal. ANOTHER LINE? Yes or No. If yes, you are prompted to enter another message line. ANOTHER TERMINAL? Yes or No. If yes, select another terminal and repeat the above process. SEND MESSAGE LATER ('ATTN SEND')? Yes or No. If yes, the program remains loaded and inactive. Pressing the ATTN key and entering 'SEND' starts the above process again. o o 344 SC34-0313 o $TERMUT3 Examples Send a Message to Terminal $SVSlOGA $TERMUT3 3P,00:41:10, LP= 8800 TERMINAL BROADCAST PROGRAM ENTER TERMINAL NAME: $SYSLOGA ENTER MESSAGE TO SEND THIS IS A TEST MESSAGE. ANOTHER MESSAGE ? Y ENTER MESSAGE TO SEND THIS IS ANOTHER TEST MESSAGE. ANOTHER MESSAGE ? N ANOTHER TERMINAL ? N C) ~ DETACH PGM (WAIT FOR 'ATTN SEND') ? N $TERMUT3 ENDED AT 00:43:05 o Chapter 4. The Utilities 345 I $TEI!MUT3 I S e 1 e etA not her T e r min a 1 A f t e r Sen din gaM e s~ o ANOTHER LINE ? N ANOTHER TERMINAL ? Y ENTER TERMINAL NAME: $SYSPRTR ENTER MESSAGE TO SEND HELLO $SYSPRTR ANOTHER LINE ? N ANOTHER TERMINAL ? N SEND MESSAGE LATER ('ATTN SEND') ? N $TERMUT3 ENDED AT 00:54:00 c 346 SC34-031.3 o $TERMUT3 1 Keep $TERMUT3 Act i ve, Send a Message Later ANOTHER LINE ? N ANOTHER TERMINAL ? N SEND MESSAGE LATER ('ATTN SEND') ? Y > SEND ENTER TERMINAL NAME: TTY30 ENTER MESSAGE TO SEND TTY30 - ARE YOU THERE ANOTHER LINE ? N ANOTHER TERMINAL ? N SEND MESSAGE LATER ('ATTN SEND') ? C") N $TERMUT3 ENDED AT 01:42:15 ~J,I c Chapter 4. The Utilities 347 ~RAP STRAP - SAVE STORAGE ON ~RROR CONDITION () $TRAP intercepts certain class interrupts and saves the contents'of hardware registers and processor storage on a disk Or diskette data sat. Th i s ut j 1 i ty helps you to diagnose system or application program problems. The companion utility, $DUMP, prepares a formatted display of the data saved by $TRAP. $TRAP must be executed before an expected failure so that the requested class interrupts can be intercepted when they occur. It can also be acti \fated if a class interrupt such as a program check or mach i ne check do not occur. Two methods are prov i ded to accomp I j shed forced traps: • ATTN: TRAPDUMP • The console interrupt button $TRAP does not affect the execution of any program or operator command unles~ it is activated by a class interrupt such as a program check or ea mach i ne check, or by the operator. //\ I,) c 348 SC34-0313 o $TRAP Example > $L $TRAP Notes ( "\" ,/ DUMPDSCNAME,VOLUME): DUMP,EDX003 $TRAP 15P,12:16:42, LP8FOO (1) TO ACTIVATE TRAP USE ATTN: TRAPON TO DEACTIVATE TRAP USE ATTN: TRAPOFF TO FORCE TRAP USE ATTN: TRAPDUMP TO END $TRAP USE ATTN: TRAPEND DO NOT USE $C TO END $TRAP IF TRAP OCCURS SYSTEM MUST BE IPLED TRAP ON MACHINE CHECK? CY/N) Y TRAP ON PROGRAM CHECK? (Y/N) Y SPECIFICATION CHECK? (Y/N) Y INVALID STORAGE ADDRESS? (Y/N) Y PRIVILEGE VIOLATE? (V/N) Y PROTECT CHECK? (V/N) Y INVALID FUNCTION? CY/N) Y TRAP ON SOFT EXCEPTION? CY/N) Y INVALID FUNCTION? (Y/N) Y FLOATING POINT EXCEPTION? (Y/N) Y STACK EXCEPTION? (Y/N) Y TRAP ON CONSOLE INTERRUPT? (Y/N) Y SAVE FLOATING POINT REGS? (Y/N) Y (2) (2) (2) (3) (3) (4) (5) (6) (8) (9) TRAP SET OFF READY FOR ATTN: X---X (10) > TRAPON TRAP SET ON > TRAPOFF TRAP SET OFF (7) (11) (11) Notes: c 1. The $TRAP data set must be as large as the storage used: for a 64K-byte system, it must be at least 256 records; for a 128K-byte system at least 512 records. 2. Trap initiation is via the attention handler. TRAPON activates the trap facility but does not produce a storage dump. You must activate the trap facility (TRAPON) first; then specify TRAPDUMP to force a storage dump. If TRAPDUMP Chapter 4. The Utilities 349 [$TRAP ] (~) is used, I PL to resume operat ions. 3. STRAP should not be cancelled using $C. Use TRAPEND. 4. During trap processing, all I/O activities are halted. All configured devices are reset. IPL to resume operations. 5. A 'V' response saves storage and hardware registers when any machine check (storage parity, CPU control or I/O error check) occurs. 6. A 'V' response prompts you for the type of program check to trap. Any combination of the five types can be selected. 7. A 'V' response prompts you for the type of soft exception to trap. Any combination can be selected. 8. It may be desirable to save storage even though no hardware detectable error has occurred. This option can be used to cause a trap when the console interrupt button is pressed. (Programmer console must be installed on Series/I) 9. Respond with 'V' if the Series/1 has the hardware installed. floating point "c--"\ 10. STRAP initializes to a TRAPOFF state. Any time after this message YOll can act i vate trap us i ng the STRAP attent i on commands. See notes 2-4. I,c;;) 11. These are the TRAPON and TRAPOFF attent i on commands. o 350 SC34-0313 [ App!;cat;on Program Preparat;on o CHAPTER 5. APPLICATION PROGRAM PREPARATION Application program preparation consists of four major operations: 1. Enter i ng the diskette. program source statements onto disk or 2. Compiling or assembling the source program into an object module. 3. Link editing two or more object modules together to form the final object module. 4. Converting the object module into an executable relocatable load module which can then be loaded and executed. Entering Source statements o Entering program source statements for assembly or campi lation on the Series/l is normally performed using either of the editor utilities, $EDITIN or $FSEDIT. (For descriptions of the text ed i tors, refer to "Chapter 4. The Ut iii ties" on page 47. When entering source programs which will be assembled by the System/370 host assembler, $EDITI or $FSEDIT can be used to enter the program and store it in a host data set. This operation requires that IUP 5796-PGH, Event Driven Executive Host Communication Facility, be installed on the host computer. Alternatively, a source program entered using $EDITIN or $FSEDIT can be transmitted to the host for assembly using uti 1ity programs $RJE2780 or $RJE3780 when the host computer supports the IBM 2780 or 3780 RJE stations. Pro g ram s to be ass e mb 1 e don the h '0 5 t S y s t e m/ 370 can a 1 sob e entered into the System/370 as either punched card decks or by any type of terminal input supported by the host system. o Chapter 5. Application Program Preparation 351 o Program Asse.mbly/CompilQt;on Program assembly or campi lation can be performed by several assemblers and compilers each with some restrictions on their capabilities. They include: • The Event Dr i ven language comp i ler, $EDXASM, from Event Driven Executive Program Preparation Facility • The Series/l Macro Assembler ($SlASM) • The Macro Assembler supplied by Preparation Facility • The COBOL comp i ler • The FORTRAN comp i ler I· the System/370 the Program The Pl/I camp i ler Some restrictions that apply to the use of the two assembler programs ($SlASM and Host Preparation) and the 9EDXASM compiler are discussed in more detai 1 in the chapters on each of them. The $EDXASM compiler and the $SlASM assembler can be executed concurrently with other programs in an Event Driven Executive based system. Both the Series/l and Host assemblers are macro assemblers which permit the assembly of both Event Dri ven Language instructions and Series/l assembler language instructions. $EDXASM provides for the compilation of Event Driven Language instructions only. Use of the host assembler requi res installation of the Event Dri ven Executi ve Macro Library/Host. Assembly of Series/l assembler instructions and Event Driven language instructions using $SlASM requires the Event Dr i ven Execut i ve Macro Library. Object modules produced by the host assembler must be transmitted to Series/l disk or diskette for link editing and conversion into executable programs. Possible means of transmission include the use of utility programs $HCFUTl, $RJE2780, or $RJE3780. If the host assembly is a complete main program, it can be transmitted and converted in one step by using the uti Ii ty pr'ogram $UPDATEH. Use of $HCFUTI or $UPDATEH requi res that the Host Communications Facility (IUP 5796-PGH) be installed on the host computer. Minor differences exist between the format of source programs to be compiled by $EDXASM and either of the macro assemblers. When using $EDXASM, you must explicitly code any ECB and QCB statements that are required. Also, $EDXASM provides the COpy statement function in a different manner than the host assembler, or the limited manner available with the Event Driven o o [ Application Program Preparation Executive Macro Library as a macro instruction. $EDXASM permi ts labels in programs to be composed of any pr i ntaole characters with a maximum label length of eight characters. Linkage Editor Link ed i t i ng obj ect modu les together is an op tiona I program preparation step except when the Series/l Macro Assembler ($SIASM) is used. In that case, the output object module of $SIASM must always be link edited ($LINK). If your program is compi led or assembled as a single module it is not necessary to use the linkage editor, $LINK, in the program preparation process (except when $SlASM is used). However, when creating large programs it is frequent ly des i rable to segment the program into functional modules. The modules can then be compi led or assembled separately, as they are created, and then linked together to form the final program. In this manner, a change in one module requires only recompiling or reassembling the modified section followed by a link editing with the unchanged modules. Object modules that are input to SLINK can be created by $EDXASM, $SlASM, COBOL, FORTRAN, PL/I, or the Host Assembler as previously described. Object Module Conversion The program modules which are the output of the various campi 1er or assembler programs or $LINK are not in the format that is required by the program loading function of the system supervisor. The utility programs eUPDATE or eUPDATEH must be used to convert an object module into loadable form and to update the directory of the volume on which the loadable program is stored. Prefind of Oata Sets and Overlays o Each time your program is loaded into storage for execution, the location of the data sets and overlays it uses must be determined by the loader. $PREFIND can be used to perform the data set and overlay location fUnction before program load tfme. The result is a faster load operation. Use of ePREFIND is optional. Chapter 5. Application Program Preparation 353 [APPlication Program Preparation Caution must be exercised in using Usage Cautions" on page 303. I $PREFIND. See "$PREFIND o Summary The following sections describe in more detail the use of the various assemblers and compilers ~nd the operation of $lINK, $UPDATE, $UPDATEH, and $PREF IND. See "Chapter 4. The Utilities" on page 47 for descriptions of the editing utilities $EDITl, $EDITIN, and $FSEDIT (th~y are not used exclusively for source program entry). The programs $EDXASM, SLINK, $PREFIND, $UPDATE, and $UPDATEH can be invoked individually from a terminal using either the session manager or the $L ·function. They can also be invoked as part of a batch job stream operation under the control of $JOBUTI l lit iIi ty. For a descr i pt i on of $JOBUTI L ope rat ions, see "$JOBUTI l - Job stream Processor" on page 271. Figure 22 on page 355 shows the program preparation process of assembling or compiling, link editing and updating. The programs can be invoked individuallY by the session manager or through the batch job stream processing utility. An example of prepar i ng an appl i cat i on program can be found in the System Guide. o 354 SC34-0313 $EDXASM o Other object libraries C) Format $UPDATE Figure 22. Event Driven Executive program preparation o Chapter 5. Application Program Preparation 355 $EDXASM - EVENT DRIVEN LANGUAGE COMPILER () SEDXASM provides an online program compi lation capabi lity that can be executed concurrently with other programs in an Event Driven Executive based system. Multiple copies of SEDXASM can operate concurrently. $EDXASM is composed of a main program plus a large number of overlay programs and, therefore, makes extensive use of the program loading facilities of the supervisor. If during execution of SEDXASM, you invoke other programs by means of the $L function, the execution of SEDXASM may be delayed until all information needed by the $L command (e.g. data set names) has been entered. This delay is because the program load facility is a serially usable function and must complete one program load request before starting another. It is good practice to enter as much of the required information as possible on the same line of input as the $L command to minimize the time that the loader is busy. Ex~mple > $L PROGRAM, VOLUME DATASETl,VOLUME DATASET2,VOLUME Not..,g,: Volume parameters are optional if the IPL volume is used. The description of $EDXASM aSsumes that you have already entered the source program to be comp i led into a disk or diskette data set by means of one of the editor utilities, $EDITIN or $FSEDIT. SEDXASM can be invoked either by the $L command, by the $JOBUTI L ut iii ty, or by the program preparat ion ut iIi ties option selection menu operating under the Session Manager. In each case, the same information must be provided when $EDXASM is loaded for execution. Invoking $EDXASM using $JOBUTIL is shown under "Invoking $EDXASM Using $JOBUTIL" on page 368. Invok i ng SEDXASM us i ng the Sess i on Manager is shown under "Invoking SEDXASM Using the Session Manager" on page 369. o 356 SC34-0313 o $EDXASM Language Control Data Set $EDXASM uses a language control data set, $EDXL. The 'data set is divided into two logical parts: the error messages and the operation codes to process module specifications. This data set is produced by $EDITlN. As distributed, $EDXL in the volume ASMLIB contains the standard compiler error messages and Event Driven Language instruction set specifications. You may wish to add COPY code definitions or additional processing modules and error messages and may even desire to have differently modified versions assigned to different users. The contents of SEDXL are described in the Internal Design. The use of the *COPYCOD function LoJithin $EDXL is described under "COPV statements" on page 362. Required Data Sets $EDXASM requires three data sets. These data sets, in order of specification when $EDXASM is invoked using $L are: 1. l ...DJLl..t:lJlllt, or source, data .set. 2. Th,g. work data set. Th is data set conta i ns object code, relocation pointers and the symbol table. A minimum size of 100 records is recommended; 250 records might be considered average and 500 records would be large. This data set is automat i ca 11 y a Ilocated by the Sess i on Manager to be 400 records. 3• T h e.~Q..ll.~_ t d a t a s.~ T his d a t a set con t a ins the 0 u t " u t object module from the compilation and serves as input to $UPDATE (or to $LINK, if a link edit is required). The appropriate S1 ze for the object module data set is also ,dependent 011 the program size. For est i mat i ng purposes, divide the program length in bytes by 100 to get the number of records required. The format of th i s data set is the same as produced by $EDITIN/$FSEDIT. c Chapter 5. Application Program Preparation 357 r $EOXASM I Sample printouts showing the prompt messages and replies follow: > $L $EDXASM,ASMLIB SOURCE CNAME,VOLUME): ASMSRC WORKFILECNAME,VOLUME): ASMWORK OBJECT (NAME,VOLUNE): ASMOBJ $EDXASM 64P,02:48:50, LP= 6300 SELECT OPTIONS (?): ? The program name and data sets required can be entered in the same line. For example: > $L $EDXASM,ASMLIB ASMSRC ASMWORK ASMOBJ (' This single line entry is equivalent to the multiline entries above. Compiler Options When the compiler is loaded into storage, enter the options to be used. The option list follows: SELECT OPTIONS LIST NOlIST ERRORS CONTROL END ('ATTN 358 - (?): ? SPECIFY lIST DEVICE DO NOT PRINT LISTING LIST ERRORS ONLY SPECIFY CONTROL LANGUAGE END OPTION SELECTION CA' TO CANCEL ASSEMBLY) SC34-0313 (\,. "l o $EDXASI\1 If no options are selected, because YOll entered only a carriage return/ENTER in response to the select option message, the defaults are LIST on $SYSPRTR using the language control data set $EDXL on the volume ASMLIB. If a listing is required on another device, specify LIST or L. You can enter the name of the device in response to the prompt for device name or on the same 1 i ne. A nu 11 entry or an * 1 s used to spec i fy your term inal. If no listing is required, specify NOLIST or N •. In this case, the com p i I e s t a tis tic s are p r i n ted 0 nth e sam e.. t e r min a 1 a s $EDXASr1 was loaded from. If only statements containing errors are to be pr i nted, spec i fy ERRORS or ER. In th is case, a dev ice name is required as in LIST. Similarly, a null entry or asterisk (*) indicates that the error messages are to be listed on the loading terminal. This option is very useful for the first few compilations to remove typographical or simple syntactical errors from the source program. o If a control data set other than $EDXl on the volume ASMlIB is required, enter CONTROL followed by the name and volume of the data set to be used. All option entries can be entered on a single line or in response to prompt messages. The last entered listing option takes precedence. The compilation or the subsequent 1 i st i ng can be cance 11 ed at any time by press; ng ATTN and enter i ng CA. $EDXASM Output When the compilation process is complete, the compiler prints out statistics. They indicate the source, work, and object data sets used, the date and time the comp i lat i on started, the elapsed time for the compilation, the number of statements processed, the number of statements flagged with er'ror messages, and the compilation completion code. A completion code of -1 is normal. At this time, the object module is stored and is ready for input to $UPDATE or $l INK. I f a list i ng has been requested, it is then pr i nted on the appropr i ate output dev i ce. The printing of duplicate lines of object code is automaticallY sliPpressed by the listing routine of $EDXASM. Before the data sets specified in the compilation are reused, it is possible to r e que s t a lis tin g 0 f the com p i 1 a t ion u 5 i n-g the pro g ram $EDXL 1ST. Refer to "$EDXL 1ST - Comp i ler List i ng Program" on page 370 for more i nformat i on. O ·~, ', I' Chapter 5. Application Program Preparation 359 o Examples LIST on $SYSPRTR: SELECT OPTIONS (1): null entry ERRORS on PRINTER!: SELECT OPTIONS (1): ERRORS DEVICE NAME: PRINTERl SELECT OPTIONS: END or SELECT OPTIONS: ER PRINTERl END --------------------------------------------------------------~ NOLIST and use $EDXL on EDX002: SELECT OPTIONS (1): N CONTROL CONTROL(NAME,VOLUME): $EDXL,EDX002 SELECT OPTIONS (?): END P r,.o c e S...!iin.9 Com p i 1 e r 0 u tJ2..Y.J wit h $ UP D ATE 0 r $ L tN K The output object module has been completed before the listing is started; therefore, the object module can be processed by $LINK and/or $UPDATE while the listing is being produced. The operation of $UPDATE is described under "$UPDATE - Object Program Converter" on page 408. The operation of $LINK is descr'ibed under "$LINK - Linkage Editor" on page 390. o 360 SC34-0.313 $EDXASM o Compiler Features Supported Print Control Supported: EJECT SPACE 1 < n < 25 SPACE n PRINT OFF/ON PRINT DATA/NODATA PRINT NODATA suppresses the printing of all lines of object code which are not on the same line as a source statement. PRINT DATA is equivalent to PRINT ON. Print Control Unsupported: o TITLE PRINT GEN/NOGEN Establishing Symbolic Representation: EQU CSECT ENTRY EXTRN WXTRN Programming Considerations Source Line ContinuatioQ 0,"' " Continuation of source lines is indicated by placing any character in position 72 of the line to be continued. If the line to be continued contains a blank prior to position 71, then any further information on that line is ignored. Continuation lines must begin in position 16. The data in positions 16 up to 71 (or the first blank) i~ concatenated to the data from the preceding line. Chapter 5. Application Program Preparation 361 [ $EDXASM Recommended practice 1S to either code the operand fields through position 71 of a line to be continued, or to terminate the line by placing a b.lank after the comma which terminates one operand in the str i ng of operands. () The maximum number of continuation lines is limited only by the maximum of 254 characters in the operand field. COpy Statements COpy statements can only be used in the first level of source code. They cannot be used with i n COpy code. $EDXL conta i ns t,oJO *COPYCOD statements, *COPYCOD ASMLIB and *COPYCOD EDX002. This indicates to $EDXASM that volumes ASMLIB and EDX002 are to be searched for the spec j al source module each time a COpy statement appears ina source program. I f your COpy modules are not in either of the above volumes, you must add an *COPYCOD statement to $EDXL for each additional volume wh i ch conta i ns COPY modules. To def i ne your COPY code to the comp i ler: 1. Create your COpy code source statements by using $EDITIN or $FSEDIT 2. Add *COPYCOD statements (i f requ ired) to $EDXL $EDXL special copy), with $EDITIN or $FSEDIT. (or o your The format of the *COPYCOD statements is: Column *COPYCOD volume 1 10 The libraries are searched statements appear in $EDXL. in the order in which the *COPYCOD ECB and QCB Certain conditions apply when any of the following are coded: 362 SC34-0313 c $EDXASM LOAD .•• ,EVENT=ecbname WAIT/POST ecbname ENQ/DEQ qcbname The ECB or QCB is not automat i ca 11 y created but must be exp 1 i citly specified by you. If EVENT=ecbname is specified in a PROGRAM or TASK statement, do not code an ECB statement; otherwise, duplicate labels will result. Multiple Declarations on DC and DATA statements When implementing DC (or DATA) statements, up to 10 declarations can be made on a single DC statement. A sample statement follows: DC F'S',ACTEST),CL5'ABC' The fo llow i ng DC types are supported: o Chapter 5. Application Program Preparation 363 [:SEDXASM I 0 ,11 I, F'x',mF'x' where 'm' is the number of times the data is to be duplicated A(y),mA(y) where 'z' can be from 1-8 hexadecimal digits. X'z',mX'z' H' s ' , mH ' s ' C't',mC't',CLn't',mCLn't' where 'n' is the length of the data in bytes D'w' ,mD'w' E'u',mE'u' L'v',mL'v' ~F Statement Placement IODEF statements must appear after the PROGRAM statement and before the ENDPROG statement. Also, all IODEF statements of the sa m,e t y p e (e. g ., PI, DI, 00, AI, A 0) mu s tap pea r tog e the r i n a group. For example, if a program requi res two DI and three DO definitions, the statements in the program would be coded as follows: IOOEF IODEF IODEF IOOEF 100EF 011 , 012, 001 , D02, 003, ••. ... ••• ..• .•• In other words, the DI and together. DO de fin i t ion s must be grouped o 364 SC34-0313 $EDXASM GETEDIT and PUTEDIT The instructions GETEDIT and PUTEDIT cannot have the format statement included in the instruction. A separately coded FORMAt statement must be referenced by the GET EDIT or PUTEOIT instruction. ATTNlIST Statement The ATTNlIST statement can have only one list coded. The list can be up to 254 characters in length and can contain a total of 50 suboperands or 25 ATTNlIST entr i es. EQU Statement labels referenced in EQU statements must have been previously defined. Arithmetic Expression Operators Only one operator is allowed in an arithmetic expression. Valid operators are +, -, *, and /. For example, the following expressions are valid: A+B, C-l, 0*4, E/2. If an expression containing more than one term is required, multiple equate statements can be coded. For example, to compute the address A+B-2, the following statements can be coded: APB APBM2 EQU EQU A+B APB-2 Instructions Requiring Support Modules o Certain instructions require support modules link edited into the executable load module. These modules are referenced in Chapter 5. Application Program Preparation 365 I $EDXASM I the linkage ed i tor autocall data set $AUTO. Therefore, the modules are automatically included in your program by running the link editor on the object module output of $EDXASM. Use of the following instructions requires a link edit. Formatting instructions GETEDIT PUTEDIT FORMAT Graphics instructions CONCAT GIN PLOTGIN SCREEN XYPLOT YTPLOT Square root instruction SQRT S ~ r i e 5/1 MCl.C r 0 Ass e mb I e r i n t e r fa C e ins t r u C t ion USER The supervisor interface module $$RETURN must be link-edited with any module that includes the USER statement. 366 SC34-0313 o $EDXASM o A link edit is also required if any of the following screen formatting subroutines are called in an application program: $IMOPEN $IMGEN $IMDEFN $IMPROT $IMDATA $PACK $UNPACK The supervisor interface module $$RETURN must be link-edited with $IMOPEN and $IMGEN if they are called in an application program. See the descr i pt i on of "$ LINK - L; nkage Ed i tor" on page 390 for i nformat i on on us i ng the 1 i nkage ed i tor. o Chapter 5. Application Program Preparation 367 I SEDXASM] Invok;ng $EDXASM o Invoking $EDXASM Using $JOBUTIL $EDXASM can be invoked using $JOBUTIL. The same options are a val I a b let h r 0 ugh the PAR Mfa c iii t y 0 f the job s.t rea m pro c e s s 0 r ($JOBUTIL) as were described previously under the $L command. The listing option is specified in column 10, the device name in column 20, and the control data set name and volume in column 40. If the default options are required, the PARM statement can be blank but must be included in the procedure. A sample procedure is shown be low: LOG PROGRAM OS OS DS PARM NOMSG EXEC PRINTER! $EOXASM,ASMLIB ASMSRC ASMWORK,EDX003 ASMOBJ LIST PRINTER! o 368 SC34-0313 o Invoking SEDXASM Using the Session Manager $EDXASM can be invoked using the session manager by selecting opt i on 1 from the program preparat i on secondary opt i on menu. The following parameter selection menu is displayed for entry of the required data sets and optional parameters. The control data set is assumed to be SEDXL on ASMLIB. The example shows the data set ASMSRC is to be compiled with the object output being di rected to the data set ASMOBJ. SSMM0201: SESSION MANAGER SEDXASM PARAMETER INPUT MENU ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN SOURCE INPUT (NAME,VOLUME) OBJECT OUTPUT (NAME,VOLUME) ==> ==> ASMSRC,EDX002 ASMOBJ,EDX002 ENTER OPTIONAL PARAMETERS BY POSITION ==> NOlIST 1-------- LIST NOLIST ERRORS lPRINTER 2-------- PRINTER NAME DEFAULTS ARE: LIST SSYSPRTR c Chapter 5. Application Program Preparation 369 $EDXASM $EDXLIST - Compiler Listing Program () $EDXLIST is used to obtain a listing of the last $EDXASM compilation performed. You can specify LIST or NOLIST in response to the SELECT OPTIONS ( ? ) : prompt when $EDXASM is loaded. If you respond with the ENTER key or LIST, $EDXASM automaticallY loads $EDXLIST as part of the comp i lat i on step and produces ali st i ng of the compilation. If you respond with NOLIST, the statistics from the compilation are displayed on the loading terminal and a listing is not produced. $EDXLIST can be loaded as a separate program. For example, if NOLIST were selected, and the statistics displayed at the end of the comp i lat ion i nd i cate that there are comp i lat i on errors, $EDXLIST can then be loaded to pr i nt ali st i ng. $EDXLIST will prompt for the source data set and the work data set and wi 11 get the name of the language control data set from the work data set, in wh i ch it is stored, at the end of the compi 1 at ion. As long as an i liter ven i ng comp i lat i on has not a I tered the contents of the work data set, and you have not mod if i ed the source or language control data sets, $EDXLIST wi 11 produce the same 1 i st i ng when loaded by you after a comp i lat i on as it would we rei t loa d e d b y $ E DXASMa spa r t 0 f the com p i 1 a t ion s t e p.• I Invoking $EDXLIST $EDXlIST is invoked using $l. Two data set names are required: the source (SOURCE) and work (WORKFILE) data set used for compilation. The name of the control data set used for the compilation is kept in the work data set. If $EDXASM was invoked by the session manager, the work data set will be named $SMluser (where user is the sign on ID used). Caut;on: If you want a listing of the latest compilation, use $EDXLIST before invoking $EDXASM again. Any subsequent compilation modifies the contents of the source and work data sets. An example using $EDXLIST follows: o 370 SC34-0313 $EDXASM o > $L $EDXLIST,ASMLIB SOURCE CNAME,VOLUME): ASMSRC , EDX002 WORKFILE(NAME,VOLUME): ASMWORK,EDX002 $EDXLIST 21P,00:07:49, LP= 6500 SELECT OPTIONS LIST ERRORS END ('ATTN - (?): ? SPECIFY LIST DEVICE LIST ERRORS ONLY END OPTION SELECTION CA' TO CANCEL LISTING) SELECT OPTIONS (?): LIST DEVICE NAME: $SYSPRTR SELECT OPTIONS (?): END $EDXLIST ENDED AT 00:08:46 o o Chapter 5. Application Program Preparation 371 $SlASM $SlASM o SERIES/l ASSEMBLER $SlASM prov i des an on 1 i ne program assemb 1 y capab iii ty that can be executed concurrently with other programs in an Event Driven Executive system. $SlASM produces object modules from source programs written in Series/l assembler language or Series/l assembler language macros such as the commands provided by the Event Driven Executive Macro Library. Multiple copies of $SlASM can operate concurrently if each copy has its own work files and printer. $SlASM is composed of a main program and a number of overlays. The following description of $SlASM assumes that you have entered the source program to be assemb led ; nto a disk or diskette data set. This is accomplished by using one of the editor utility programs, $EDITIN or $FSEDIT. $SlASM can be invoked by: • The Program Preparat ion ut iIi ties opt i on operat i ng under the sess i on manager se lect i on • The $L operator command • The batch job stream process i ng ut iii ty, $JOBUTI L. menu Required Data Sets $L and $JOBUTIL require that the following information be provi ded when $SlASM is loaded for execut i on. 1. The source input data set. 2. Three work data sets, used as work files, conta in i ng object code, re locat i on po inters, the symbo 1 tab Ie, and other i nformat i on. For. most programs, sizes of 2000, 2000, and 800 for ASMWRKl, ASMWRK2, and ASMWRK3, respectively, are sufficient. This requirement can increase when assembling a large program conta in i ng many macro ca lIs. 3. The object data set. This data set wi 11 contain the output object module. It serves as input to the 1 i nkage edi tor ($LINK) which must always be run when using $SlASM. A size of 50 to 100 sectors is sufficient for most programs. The Sess i on Manager prov i des the work data sets and requ i res only that the input and output data sets be spec ified. 372 SC34-0313 c $SlASM o Invoking $SlASM Invoking $SlASM using $l For i 11 ustrat i ve purposes, let us assume that: • EDX002 is the IPl volume • Data sets ASMSRC and ASMOBJ are on that volume • EDX003 contains the ASMWORKl, ASMWORK2, and ASMWORK3 data set.:!, • PRNTRl is the name of a print device. Specify Data Sets (Prompt/Reply Mode) A sample printout showing the prompt/reply format of invoke $SlASM and specifying these data sets follows: $l to $l to > $L $SlASM,ASMLIB SOURCE (NAME,VOLUME): WORKl (NAME,VOLUME): WORK2 (NAME,VOLUME): WORK3 CNAME,VOLUME): OBJECT (NAME,VOLUME): ASMSRC ASMNORK1,EDX003 ASML,JORK2, EDX003 ASM"~ORK3, EDXO 03 ASMOBJ MACLIBl (?): Specify Data Sets (Single Line Mode) A sample printout showing the single line format of invoke $SlASM and specifying these data sets follows: o Chapter 5. Application Program Preparation 373 $SlASM () > $L $SlASM,ASMLIB ASMSRC ASMWORK1,EDX003 ASMWORK2,EDX003 ASMWORK3,EDX003 ASMOBJ MACLIBI (1): Specify Macro Libraries In both of the previously shown modes, you are prompted as follows: MACLIBI (1): If you require macros for this assembly, yoU can specify one or two macro library volumes. A null response (ENTER) takes you to the next prompt (SELECT OPTIONS). If a MACLIBI is specified (as shown in the following example), another prompt (MACLIB2) appears: MACLIBI (1): MACLBl MACLIB2 (1): You can supply the name of another macro library or enter a null response. Note: If your source program contains Event Driven Language instructions, you must specify, as either MACLIBI or MACLIB2, the name of the volume(s) that contains the Event Dri ven Executive Macro Library (S719-LMS) and copy code. c 374 SC34-0313 $SlASM o Specify Assembly Options After entering the macro library volume name(s) and/or a null response, you are prompted as fo llows: ENTER OPTIONS (1): Following is a list of possible replies: • Enter a null response and take the default options (LIST, OBJ ECT, MAC RO) • Enter the options you desire (for example, LIST, NOXREF, NORLD). See "List of Options" on page 378. • Enter a question mark to display a list of the available options. After the options are displayed, the ENTER OPTIONS (?): prompt is d i sp layed. • Enter the options of your choice, followed by the name of your output device. This prevents the next prompt from appearing. If you do not s~ecify the name of the output device with your options, as follows: ENTER OPTIONS (1): LIST,NOXREF,NORLD 0,") '" Chapter 5. Application Program Preparation 375 $SlASM You are prompted wi th: ENTER OUTPUT DEVICE NAME: You can enter the name of the dev i ce on wh i ch your 1 i st i ngs and d i agnost j c messages are to be wr j tten. I f you do not spec i fy an output device (a null response), i t defaults to $SYSPRTR. The next message displayed is: I CPAOOOI ASSEMBLER STARTED c 376 SC34-0313 o $SlASM Complete Example: A complete example follows using: • AsMsRC for the source library • AsMWORKl, • ASMOBJ for the output fi Ie • MACLBl for the macro library • PRNTRI for the output list i ng • AsMt~ORK2, and AsMWORK3 for work fi les .Invoke $SlASM and Spec i fy Data Sets to Use > $L $SlASM,ASMLIB SOURCE (NAME,VOLUME): CNAME,VOLUME): WORKl (NAME,VOLUME): t~O RK 2 (NAME,VOLUME): l~ORK3 OBJECT (NAME,VOLUME): ASMSRC ASNWORK1,EDX003 ASMWORK2,EDX003 ASMWORK3,EDX003 ASMOBJ MACLIBI (?): MACLBl MACLIB2 (?): ENTER OPTIONS (?): ? C ""J 'I Chapter 5. Application Program Preparation 377 ~lASM I List of Options If you enter a question mark in response to the prompt ENTER OPTIONS, the following list of options is displayed: VALID OPTIONS ARE: LIST/NOLIST - COMPLETE ASM LISTING/ ERRORS ONLY TEXT/NOTEXT - SOURCE AND OBJECT LISTING/ ESD/NOESD - LIST EXTERNAL SYMBOL DICTIONARY/ SUPPRESS THIS OPTION RLD/NORLD - LIST RELOCATION DICTIONARY/ SUPPRESS THIS OPTION XREF/NOXREF!FULLXREF - LIST REFERENCED SYMBOLS/ NO XREF LISTING/ LIST ALL SYMBOLS OBJECT/NOOBJECT - WRITE OBJECT TO OBJECT FILE/ SUPPRESS THIS OPTION MACRO/NOMACRO --- PROCESS MACROS IN SOURCE/ DO NOT PROCESS MACROS IN SOURCE SYSPARM(' ••• ') -- SUBSTITUTION STRING FOR MACRO PROCESSIN LINECOUNTCN) ---- LINE/PAGE FOR ASH LIST DEFAULT N = 55 LINES/PAGE SETCCN) --------- NUMBER OF CHARACTERS ASSIGNED TO SETC SYMBOLS END ------------- TERMINATE OPTIONS PROCESSING CA -------------- TO CANCEL ASSEMBLY ENTER OPTIONCS) SEPARATED BY COMMAS DEFAULT OPTIONS ARE: "LIST,OBJECT,MACRO" o 378 SC34-0313 o $SlASM Select processing options You now enter the options of your choice and are prompted as follows. A message is displayed indicating that the assembler has started. ENTER OPTIONS (1): LIST,NOXREF,NORLD ENTER OUTPUT DEVICE NAME: PRNTRl CPAOOOI ASSEMBLER STARTED Single line format c Combining your inputs, using the single line format, the previous example looks like this: > $L $SlASM,AS~LIB ASMSRC ASMWORKl,EDX003 ASMWORK2,EDX003 ASMWORK3,EDX003 ASMOBJ MACLIBI (1): MACLBl MACLIB2 (1): ENTER OPTIONS (1): LIST,NOXREF,NORLD PRNTRl CPAOOOI ASSEMBLER STARTED o Chapter s. Application Program Preparation 379 GS1ASM] o Invoking $SIASM Using $JOBUTIl $SIASM can be invoked using $JOBUTIl. The same options are avai lable through the PARM faci l i t y of the job stre;»m processor ($JOBUTIl) as were described previously under the $l command. I f the default options are required, the PARM card can be blank but must be included in the procedure. A sample procedure that parallels the previous example using $l follows: PROGRAM $SIASM,ASMLIB ASMSRC ASM~JORKl, EDX003 DS ASMWORK2,EDX003 OS OS AS M~J 0 RK 3 , E D X 0 0 3 ASMOBJ DS PARM NAClBl EXEC OS PRNTRI LIST,NOXREF,NORLD Not~: Parameter"s of the PARM statement in the preceding sample are column dependent: MAClBl must start in column 10 ~1AClB2, i f coded, must start in column 20 PRNTRI must start in column 30 The opt i on l i s t must start in column 40 o 380 SC34-0313 o $SlASM Invoking $SlASM Using the Session Manager To invoke $S1ASM using the session manager, select from the program preparat i on secondary opt i on menu. option 2 The following parameter selection menu is displayed for entry of the required data sets and optional parameters. The example shows the data set ASMSRC ;s to be assembled with the object output be i ng directed to the data set ASMOBJ. $SMM0202: SESSION MANAGER $S1ASM PARAMETER INPUT MENU --ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN SOURCE INPUT (NAME,VOLUME) ==> ASMSRC,EDX002 OBJECT ,OUTPUT (NAME,VOLUME) ==> ASMOBJ,EDX002 ENTER OPTIONAL PARAMETERS BY POSITION : MAClBl PRNTRl lIST,NORlD,NOXREF 1---------2---------3---------4-------------------------MACLIB! MAClIB2 PRINTER ASSEMBLER OPTIONS (VOLUME) (VOLUME) NAME SEPERATED BY COMMAS LIST/NOlIST XREF/NOXREF/ FULLXREF TEXT/NOTEXT MACRO/NOMACRO ESD/NOESD OBJECT/ NOOBJECT RLD/NORLD LINECOUNT(N) N=lINES/PAGE DEFAULT OPTIONS ARE: LIST OBJECT MACRO 0 '1",,'\ '"'' Chapter 5. Application Program Preparation 381 [:Host Assembler , 0 \',,~ HOST ASSE1'1BLER Assembly of Event Dr i ven Executi ve programs on an IBM System/370 requires installation of the following programs on the System/370. • FOP 5798-NNQ, System/370 Program for Ser i es/l Preparation Facilities • 5740-LM2, Event Driven Executive Macro library/Host, as is descr i bed in the ~tem Gu ide. Invoking the Host Assembler It is assumed in the following discussion that the procedure EDXPREP (described in the System Guidl:t) is installed as a cataloged procedure. If the procedure is not cataloged, it can be used inline. This procedure makes use of the host assembler program of 5798-NNQ and the macro library and listing program EDXlIST provided by 5740-l~12. The function and operation of EDXlIST is described under "EDXlIST - Host listing Formatter". on page 383. Program assembly is accomplished by modifying the source and object program names spec if i ed in the SYSIN and SYSOUT DD statements of EOXPREP to reflect your program names, followed by execut i on of the procedure. Source programs can contain both Event Dri ven language instructions and Series/l assembler language instructions. Refer to the USER instruction in the language Reference for i nformat i on concern i ng i nclus i on of Ser i 9s/1 assembler instructions. The object module pr'oduced by the assembly process can be either a main program or a subprogram, as described in the MAIN= operand of the PROGRAM instruction in the language Reference. 382 SC34-0313 ""'--'\ I,,,,) o Host Assembler Transferring the Object Module to Series/l There are various methods which can be used to transfer object modules created on the System/370 to the Series/I. If IUP 5796-PGH, Event Driven Executive Host Communication Fac iii ty, is i nsta lIed on the System/370 then ut iii ty programs $HCFUTl or $UPDATEH can be used. If the object module is a main program and is not to be linked together with any other object modules, $UPOATEH can be used to read the object module from the System/370, convert it to an executable program, and store it in a Series/l disk or diskette. If the object module is to be link edited with other object modules, it can be transferred to the Series/l by using the READOBJ command of utility program $HCFUTI. If IUP 5796-PGH is not installed on the System/370, 'but a binary synchronous cornmun i cat i on 1 i nk ex i sts between the System/370 and the Ser i es/l, then the ut iii ty program $RJE2780 or $RJE3780 can be used to transfer object modules from Systern/370 to the Series/l if suitable 2780 or 3780 support is installed on the System/370. Modules transferred in this manner must then be processed by $LINK and/or $UPDATE to convert them into executable programs. $RJE2780 or $RJE3780 can also be used to submit the source program for assembly on the System/370. If the object module is a subprogram, it must be transmitted to the Ser i es/l for link ed i t i ng wi th a ma i n program before it can be converted into executable format by $UPDATE. A complete main program object module only requires processing by $UPDATE on the Series/l to convert it to executable form. Refer to "$UPOATE - Object Program Converter" on page 408. Program preparation of Event Dr i ven Language programs ona SyStem/370 does noe use the Series/l Native Application Load Facility, 5798-NNR. EDXLIST - Host Listing Formatter o The purpose of the EOXLIST program is to reduce the size of, and improve the readab iii ty of, the program list i ng. When the PR INT GEN opt ion is used for an assemb 1 y conta in i ng macros, the macro generated code appears on the assembler produced listing following each source statement. Event Driven Language instructions are implemented as macros, each macro generating an average of si x bytes of object code. The object code is genChapter 5. Application Program Preparation 383 [-Host Assembl~~ o erated using the assembler DC stat·ement. Example:: The following example shows the format of the assembler listing for a small .section of a program: LOC OBJECT CODE STMT 0000 0002 0004 DOSC OODC OOOE 2+ 3+ 4+ 0006 0008 aOOA 0033 OOOE 0010 OOOC 0000 OOOE 0000 0010 0000 1 5 6+ 7+ 8+ 9 A 10+A 11 B 12+8 13 C 14+C SOURCE STATEMENT MOVE DC DC DC ADD DC DC DC DATA DC DATA DC DATA DC A,B A($MOV2) ACA) ACB) B,C A($AD222) ACB) ACe) F '0' F' 0 ' F' 0 ' F' 0 ' F' 0 ' F' 0 ' ''\ ,,~-_/ This listing is difficult to read because of the mixture o'f source statements and macro generated object code. The purpose of the list post processing program, EDXlIST, is to condense as mu c h 0 f the 1 i s tin gas po 5 5 i b I e and t 0 p·r i n t o n 1 yes sen t i a I information in a more readable format. EDXLIST takes each source statement and prints on the same line with it the object code generated by the macro expansion. Each line has room for 10 bytes 0 f data so that near 1 y all instructions can be printed on one line. This gives the assembly the appearance of being an actual assembler type language. The results of processing the above example with EDXLIST is shown below: o 384 SC34-0313 Host Assembler 0 LOC 0000 0006 OOOC OOOE 0010 OBJECT CODE OOSC OOOC OOOE 0033 QOOE 0010 0000 0000 0000 STMT SOURCE STATEMENT 1 6 9 11 13 MOVE ADD DATA DATA DATA A,B B,C F' 0 ' F •0 i F'O' Program Opt;ons A number of options are provided to further condense or eliminate cross reference and relocation dictionary, as well as your own and macro generated comrnen"ts. To use EDXlIST, the assembly output must be di rected to a dataset rather than the customary SYSOUT class. For example: I //SYSPRINT DD DSN=$$PRINT.DISP=(.PASS). / ~_ SPA CE= ••• , UN I T = .•. , DC B="_(~B_L_K_S_I_Z_E_=_._._._)_______._ _--' Th i 5 data set then becomes input to the EDXL 1ST program. ple job control statements are shown below: Exam- //LIST EXEC PGM=EDXLIST,PARM='ISA(16)/ ••. PARMS' //STEPLIB DD OSN= ••• //SYSPRINT DO SYSDUT=A //WORK DD DSN=$$WORK,UNIT=SYSDA,SPACE=CTRK,5) //IN DD OSN=$$PRINT,OISP=(OLD,PASS) //LIST DO SYSQUT=A o The IN DD c~rd refers to the data set containing original assembler listing and the LIST DO card refers to the new listi ng produced by EDXL1ST. Chapter 5. Application Program Pr~p~ration 385 [H:st Assembler If in addition to the above, the original assembler listing is a Iso requ ired, the host ut iii ty program I EBPTPCH can be used in the fo llow i ng manner to produce 1 t: //BIGLIST EXEC PGM =IEBPTPCH //SVSPRINT DO SYSOUT=A //SVSUTI DO DSN=$$PRINT,DISP=(OLD,PASS) //SVSUT2 DO SYSOUT=A,DCB=BLKSIZE=133 //SVSIN DD * PRINT PREFORM=A EXfC Statement Parameters A number of parameters for the EDXLIST program can be speci fied on the EXEC statement. A list of the options follows. Default values can be found under "Defaults" on page 388. PRINTER Output is listed on a pr inter. TERMINAL Output is listed on a terminal. TERMINALE Same as TERMINAL, except only error messages and associated source statements are printed. SEQ Source code sequence numbers are pr i nted. STMT Assembler statement numbers are pr i nted. CONTROL=*** Def i nes a spec i al control card that is recognized as an execution time control statement. Any two characters can be specified for the second and third characters; the first, however, must be an '*'. See contro 1 opt ions below. COMMENTS=NONE Pr i nt no comments. COMMENTS=ALL Print all comments. COMMENTS=PROGRAM Pr i nt onl y comments not generated by macros. 386 SC34-0313 o o Host Assembler COMMENTS=CONTROL Print comments only if columns 1, 2, match the value specified parameter. in the and 3 CONTROL= EQUATES=* Print only macro generated form +LABEL EQU *. EQUATES=PROGRAM Pr i nt on I y equates not generated by macros. LABELS=PROGRAM Print labels not generated by macros. LABELS=PEND Same as PROGRAM except all labels after the ENDPROG statement are pr i nted. START=PROGRAM AlII i st i ngs before the PROGRAM statement are not pr i nted. START=START Printing is to begin at first equates of the line of list- i ng • C .. XREF=NONE Cross-reference listing is not printed. XREF=$ Print abbreviated cross-reference listing with the exception of labels beginning with the character $. XREF=ALL Same as $, except $ labels are included. XREF=AREF Same as ALL, except statement references are included. XREF=$REF Same as AREF, except $ LABELS are included. RLD=YES Pr i nt condensed re locat ion d i ct i onary. RLD=NO Do not print reloca'tion dictionary. I~ '\ / Notes: o 1. I f both STHT and SEQ are spec if i ed, then statement numbers appear to the left of the source code and sequence numbers in the right margin. If only one is specified, the numbers appear to the left o'f the source code. 2. XREF=ALL or XREF=$ print only the label name and its address and these are placed in seven columns across the page. 3. XREF=AREF or $REF prints one label per line and all statement numbers referencing the label are printed. If this option is selected, it is assumed STMT was also specified. Chapter 5. Application Program Preparation 387 Host ASS~mbler I 0 ,' , 4. If START=PROGRAM is speci fied and there is no PROGRAM statement, then the listing is printed as if START=START was coded. 5. Whenever one of the following control statements appears in the assembler listing, then the special listing func'I:ions occur. ' Cootrol Options *XXEJECT Skip to a ne~ page *XXSPACE 1 Skip one line *XXSPACE 2 Skip two lines *XXTITLE X-----------maximum 50 characters-----------X Will print this character string at the top of each successive page. *XXLIST ON List input exactly as it appears on original listing *XXLIST OFF Resume listing compression. N.ote: '*XX' represents the three characters CONTROL= parameter discussed prey i ous I y. coded in the These control statements are treated as comments by the assembler. The macros EJECT, SPACE, and TITLE distributed in the library Sl.EDX.LISTMAC.ASM will create control statements with the characters *** in columns 1, 2, and 3. Thus, when the corresponding assembler listing control statements appear in the source program, the appropriate control statements are created for EDXLIST. They require CONTROL=*** in the PARM field. Defaults The two ma in parameter opt ions are PR INTER and TERMINAL. TERMINAL assumes output on a slow typewr iter dey i ce. It, therefore, attempts to print as little nonessential information as possible. PRINTER, on the other hand, assumes a high speed printer is being used, and although there is st ill around a 5to 1 output compression ratio, the listing has a little extra information to make it more readable. The following defaults apply: 388 SC34-0313 c Host Assembler o PRINTER TERMINAL STMT,SEQ COMMENTS=PROGRAM EQUATES=* LABELS=PEND START=PROGRAM XREF=$ RLD =YES COt1M ENTS =NON E EQUATES=* LABELS=PEND START=PROGRAM XREF=NONE RLD=NO ST~1T o Chapter 5. Application Program Preparation 389 SLINK $LINK - 1 () LINKAGE EDITOR The $LINK program provides a linkage editor capability to aid in preparing programs to execute in an Event Driven Executive system. With $LINK, you can: Combine two or more separately compi led object modules into a composite module • I• or assembled Combine modules with multiple control sections, for example, COBOL, FORTRAN, and PL/I programs, into a composite module Format the output of $SlASM for input to $UPOATE I · Eliminate duplicate control sections from the input modules I· Automatically include standard routines referenced by the program (AUTOCALL) I • Provide a storage map of the combined, edited I. Bui ld an EDX supervisor nucleus I Each of these is explained in this section. modules (~-'\, '\",_",)-l The object modules that are input to $lINK can be created by any of the following program preparation facilities: $EDXASM $SlASM FORTRAN COBOL PL/I Host Assembler (FOP 5798-NNQ) $LINK accepts object modules that ar~ in the compressed record format created by the Realtime Programming System assembler. A $LINK output module must be formatted by the utility program $UPDATE to convert it to executable (lo:adablel form. Figure 23 on page 391 illustrates the steps necessary to prepare a program for execut i on. ( '") 390 SC34-0313 $LINK o Source module I nput object module Output object module Executable (relocatable) load module Program execution o Figure 23. Programming with a linkage editor Chapter 5. Application Program Preparation39l I $lUlK I Combining Modules o Every program is designed to fulfill a particular purpose. To achieve that purpose, the program can often be divided into logical units that perform specific functions. A logical unit of code that performs a function, or several related functions, is called a source module. Each source module can be programmed as a separate entity using an appropriate programming language (for example, Event Driven Language, Series/l Assembler Language, COBOL, FORTRAN, PL/I, or the host assembler) and assembled or campi led. The resulting object module can then be processed by SLINK, along with the other object modules that are necessary to make up the entire program. Preparing source modules as separate logical units allows you the ability to modify one part of a program and requires the reassembly or recompilation of only the modified unit (followed by another execution of SLINK), as opposed to requiring the reassembly or recompilation of the entire program. It also allows a function that is common to several programs to be coded and assembled or compi led once and then included wherever needed, saving effort and ensuring consistency. Linkage editing, if needed, follows the source program assembly or campi lation of a program. I Multiple Control Sections A control section (CSECT) is a unit of code (instructions and data) that is, in itself, an entity. All elements of a control section have a constant relationship to each other and, therefore, it is the smallest separately relocatable unit or a program. Separate compilations always produce individual control sections, but multiple control sections can be produced from a single compilation as well. The COBOL, PL/I, and FORTRAN compi ler's always produce multiple CSECTs and, therefore, their output must always be processed by SLINK. SSIASM and the host assembler will also produce multiple control sections if the CSECT instruction is used. Formatting Modules for $UPDATE The output object modules of SSlASM and the Realtime Programming System Program Preparation Subsystem assembler must be 392 SC34-0313 c $LINK o reformatted by $LINK prior to $UPDATE processing. The standard link edit process does the reformatting and no special parameters are requ ired. Notes: I 1. $UPDATEH can handle host assembler editing. 2. The output of the Realtime Programming System language processors must be link-edited before processing by $UPDATE. modul~s without link- Elimination of Duplicate Control Sections If the input to $LINK contains more than one control section (CSECT) wi th the same name, the first sect i on is kept, all subsequent sections with the same name are deleted and all references are adj us ted to po i nt to the first CSECT. Th i s makes the resulting program smaller and assures that there is only one copy of any shared data areas. C' ''I ! .)' I Automatic Inclusion (Autocall) Frequently used routines can be assembled or compiled as separate modules and automaticallY included in any program that references them by using the AUTOCALL facility of $LINK. This technique makes it convenient to define and use standard routines almost as if they were instructions. The Event Driven Language FORMAT, GETEDIT, and PUTEDIT instructions use this techni que. See "Autoca 11 opt i on" on page 401 for deta i led i n for mat i on 0 nus i n g the aut 0 call op t ion. I storage Map $LINK produces a table showing the name, location, and length of all contro 1 sect ions in the program p I us the locat i on of symbols (entries) defined as referenceable by the entire program. This is useful in debugging and in determining the total si ze of the program. 0" I ,i,i Chapter 5. Application Program Preparation 393 o Building an Event Driven Executive Supervisor $lINK and the link edit process are used to generate a customized supervisor by selectively including the modules needed for the des ired funct ions. See the ~tem Gu i de for further information. The Link Edit Process The logical structure of an object module consists entities: of three ESC An external symbol dictionary that includes the name of each external symbol, the type of reference it is, and its iocation in the program. ESD entries represent symbols such as the label on a PROGRAM, CSECT, or ENTRV statement, or the label of a DATA or DC statement that defines an A-type constant. RLD A relocation dictionary that contains an entry for each address that must be relocated (adjusted) before the module is executed. Each entry specifies an address constant by i nd i cat i ng its locat i on in the program. TEXT An area that contains the instructions and data of the program in the binary codes used by the Event Dr'ven Execut i ve and/or the Ser i es/l processor. To produce a program from a collection of object modules comp i led 0 r ass e mb 1 e d s epa rat ely b y d iff ere n t com p. i I e r S 0 r ass e mbIers (for example, $EDXASM, SSIASM, COBOL, FORTRAN, Pl/I, or the host assembler FDP 5798-NNQ), the object modules must be link-edited (combined) to resolve the program origins (load points) of each object module and the external references between the di fferent modules. Each object module is assigned a program origin (usually zero) during assembly or compilation. When these object modules are link-edited, SLINK assigns an origin (load point) to the text for the pr i mary program and adj usts the RlDs descr i bing address constants accordingly. The text for the other object modules, as well as the address constants, are assigned addresses relative to the origin (load point) assign~d to the primary program. This causes the link-edited (combined) text for all' object modules to occupy consecutive addresses in the output object module produced by SLINK. See Figure 24 on page 395. (J \ ( .I 394 SC34-0313 , $LINK o Any object module that refers to an external symbol defined in another object module must identify it as an externally defined symbol. External symbols (EXTRNS or WXTRNS) between these modules are resolved by matching the referenced symbols to defined symbols. The ESDs and RlDs of the object modules are combined to form composite ESDs and RlDs for the complete program. The output RlDs include relocatable information for the complete text of the output object module of $lINK. An output object module produced by $lINK looks as follows. ESD TEXT RLD Input object modules C1 CESD $LlNK ESD TEXT Output object modules RLD TEXT RLD o Chapter 5. Application Program Preparation 395 $LINK Input to $LINK () Input to $LINK consists of LINKCNTL, the data set containing control records, the various data sets containing the object modules to be linked together, and the optional autocall data set. You must provide the na~es of the input and output object modules to $LINK with a set of control records stored in a disk or disk ette data set ca lIed LINKCNTL. How to format and create these control records is descr i bed under "Control Records." In add i t i on to the data set conta i n i n9 the contro I records, You must also allocate two work data sets on disk or diskette. The message data set SLEMSG is supplied with your installation package and is required by SLINK. A description of all of the data sets is contained under "Data Sets Used by $LINK" on page 400, along with suggestions for selecting the sizes of the data sets. A sample of input to $LINK follows: OUTPUT INCLUDE INCLUDE INCLUDE INCLUDE END LEOUT,DANOI AUTO=LEAUTO,DANOI lETEST,DANOl lETESTl,DANOl LETEST2 lETEST3,DANOl Control Records You must allocate the control record data set (lINKCNTL) using SDISKUTI. Then enter the control records with SEDITIN or $FSEDIT and store the records with either SAVE or WR ITE. LINKCNTL should contain the names of the input object modules, the names of the output object modules, and other control information. Both data set name and volume name are required on all OUTPUT and INCLUDE records, unless the data set resides on the IPL volume. In the latter case, only the data set name is required. 396 SC34-0313 o SLINK] o Any number of leading blanks are permitted in control records, but the record must not be longer than 71 characters. Any record with an '*' in position 1 is treated as a comment and wi 11 list out on the printed output. All the parameters used must be coded in the order shown. parameters must be separated by one or more spaces. The END Record The END record termi nates format is: the control record str i ng. The Syntax END Required: None Default: None No operands are requ ired. o Chapter 5. Application Program Preparation 397 $LINK INCLUDE Record The INCLUDE records specifies the input object module to be link-edited. You can include several input object modules but you must have an INCLUDE record for each input object module. The format is: Syntax INCLUDE name,volume Required: name Default: Volume defaults to IPL volume. Oeerands Description The the input object There must be one between 'INCLUDE' and 'name'. name name of link-edited~ volume module or more to be spaces The disk or diskette volume that contains 'name'. Not required if 'name' resides on the IPL volume. The first INCLUDE record cannot spec i fy the name of a subprogram (i .e., one with MAIN=NO in the PROGRAM statement or one t hat does not canta ina PROGRAM statement). All other INCLUDE records should spec"": i fy the names of subprograms. All of the 'name,volume' specifications on INCLUDE records must be unique in the input to $LINK. In a like manner, all ENTRY labels and program section (CSECT) definitions must be un i que (i. e., the same name cannot be used for both a CSECT and an entry, or for two ENTRYs, etc.). Duplicate symbol type errors will result if these rules are not observed. If $lINK encounters two or more CSECTs with the same name, the first one ,~i 11 be accepted and a 11 others ignored. CSECTs input to $LINK must not have a length of zero. o 398 SC34-0313 SLINK o OUTPUT Record There can only be one OUTPUT record in LINKCNTL and it must be the first record (excluding comment records) in the data set. The format is: Syntax OUTPUT name,volume NOMAP AUTO=name2,volume ENTRY=label Required: name Default: Volume defaults to IPL yolume. Operands Description name The name of the data set (previously allocated on disk or diskette) to conta i n the output obj ec t module from SLINK. There must be one or more spaces between·'OUTPUT' and 'name'. volume The name of the disk or diskette volume containing the output data set. NOMAP This parameter suppresses printing of the storage map portion of SLINK output starting with the line which begins 'OUTPUT NAME=' and continuing through the f ina 1 CSECT or ENTRY list i ng line. See the sample pr i ntout for deta i Is. AUTO=name2,Yolume Th i s parameter spec if i es the name (and YO I ume if the data set is not on the IPL volume) of the data set containing the list of names of object modules which may be included via the autocall facility. A further discussion of the autocall option is provided under "Data Sets Used by $LINK" on page 400 and "Autocall Option" on page 401. ENTRY=label o This parameter is used only if the output of $lINK is to be an Event Driven Executive supervisor program ($EDXNUC). .When generat i ng a superv i sor, 'ENTRY=$START' must be coded. Chapter 5. Application Program Preparation 399 () Data sets Used by $LINK SLINK requ i res you to spec i fy three data set names at the star t of program execut i on (one if invoked by the Sess i on Manager) • LINKCNTL (051) LEWORKI (DS2) The data set records. that wi 11 contain the control A work data set that wi 11 contain various intermediate work areas for $LINK. This data set must be at least 265 records and wi 11 require approximately 1 additional record for each 60 RLD items or for each 42 program section definition (CSECT) or ENTRY specifications. 400 records should be sufficient for almost any program. SLINK dynamically divides 052 into three sect ions and refers to them as 052, OS7, and 058. Therefore, error messages loJhich reference 057 or OS8 actually refer to portions of DS2. The session manager automatically allocates 4 0 0 records to D5 2 • Its name is $ S f11 use r (where user is the sign on 10 used). the sign on ID used). LEWORK2 (D53) A second work data set. Th i s data set conta i ns a work area for SLINK, plus the storage area where all SLINK printed output is stored until it is printed at the end of $LINK execution. A size of 20 records plus 1 rec~rd for each 3 lines of printed output expected should be suf·ficient. The amount of printed output varies with the number of INCLUDE records, the number of unresolved EXTRNs and WXTRNs, etc. A data set size of 150 records should be suffic i ent for most programs. If the space avai lable for messages in DS3 becomes filled, then the message file will be pr inted before the end of SLINK execution. SLINK then refills the message file as needed. This condition can result in the printed If you are executing other programs from the same terminal doing $LINK, the printed output will be interspersed with the output from the other programs. 400 SC34-0313 $LINK o The session manager automaticallY allocated 400 records to 052. Its name is $SM2user (where user is the sign on ID used). The optional data set specified by the AUTO= parameter of the OUTPUT record is dynamically opened as DS9 by $LINK. At least one record in 059 is required for every object module named in the autocall list. In addition, the data set $LEMSG must be installed on volume ASMLIB. $LEMSG is supplied as part of the distributed system and contains messages used by $LINK and is referenced as '054' by $LINK. $LINK dynamically opens the data sets specified by the OUTPUT and INCLUOE records as '055' and '056', respectively. The data set spec i f i eel by the OUTPUT contro I record may need to be as large as 350-450 records when 1 ink ed it i ng $EDXNUC. Autocall Opt;on C"·' '\ $LINK provides a limited autocall option whereby modules that are no t ex pI i cit I yin c III d e d (v i a t he I Ne l. UDEc on t r 0 Ire cor d) i n the output object module can be automatically incorporated. When you code the AUTO= parameter of the OUTPUT record, spec i fy the name (and volume unless the data set is on the IPL volume) of the data set that contains the list of object module names/volumes, along with their entry point names, which are avai lable for automatic inclusion in the output object module. Stand~rd Autocall List As part of the distribution of the Event Driven Executive syStem, a standard autocall list is included in the data set $AUTO in volume ASMLIB. This standard list contains the names of the modules and entry points that can be autocalled as a result of including the folloNing functions in your program: o • graphics formatting instructions • data formatting instructions • screen formatting subroutines • square root function • Chapter 5. Application Program Preparation 401 SLINK These functions generate EXTRN statements that are resolved by specifying AUTO=$AUTO,ASMLIB. () Using a Seecial Autocall List To add your own autoca 11 1 i st names to those prov i ded in $AUTO, use $EDITIN or $FSEDIT to make the additions and then save the resulting modi fied list as a saved data set with a name of your choice. This data set name (and volume) are specified in the AUTO= parameter of the OUTPUT record. 'I f you use the funct ions listed previously in your program, you will need to merge the contents of $AUTO into your autocall list. Using the Autocall Feature Perhaps the most common use of the autocall feature occurs when you have assembled some number of commonly used subroutines that mayor may not be needed by a given pr i mary program. When you assemble a primary program, you can link edit it with the requ ired subrout i nes by prov i ding an INCLUDE record for the primary program and for each required subroutine. An alternate method is to put the names of all potentially needed subroutines and their entry point names into the autocall list, then provide only an INCLUDE record for the primary program and add the AUTO= parameter to the OUTPUT record. The method that is most e'ff i c i ent depends upon how your programs are organ i zed and the frequency wi th wh i ch common subrout i nes are used. You must provide EXTRN statements in the primary program for the entry point names in the modules to be autocalled as well as linkage (branches) to the desired entry points in the autocalled modules. Modules that have been included with the autocall can contain EXTRNs that are to be resolved by further autocall processing. $LINK searches the autocall list repeatedly unti I either all EXTRNs have been resolved or unti I no ENTRY in the autocall list matches an unresolved EXTRN. WXTRN Processing The autocall list is not searched for ENTRY po i nts to match unresolved WXTRNs. They are resolved only from the ENTRY defin; t ions conta i ned 1 n the modu les inc I uded (v 1 a the INCLUDE control record) or autocalled. An unresolved WXTRN has no affect 402 SC34-0313 o SLINK o upon $LINK completion codes and the storage location containing the WXTRN is set to relocatable zero. Therefore, at program execut i on time, the addresses of unreso I ved WXTRN' s are the program load po i nt. Autocall List Record Format The format of the autocall list records is shown below. They can most conveniently be created as the saved output of a $EDITIN or $FSEDIT editing session using tab settings of 20, 30, 40 t 50 and 60. Each input 1 i ne must conta i n the 'name, volume' entry of the object module to be autocalled, start i ng in post i on 1. Up to 5 entry po i nt names can be spec ified per line, starting in positions 20,30,40,50, and 60. If a data set has more than five entry points, multiple lines are required. Each line must contain the module 'name,volume' entry beg i nn i ng in pos it ion 1 and at least one entry po i nt name starting in position 20. The autocall list must be terminated by an '**END ' entry in an entry point name field or in a module name field. 'Volume' is required for each 'name' that is not on the IPL volume. For example: C'\ ,/ line position: 20 30 40 50 NAf1El,VOLI NAME2,VOLl ENTRY2 ENTRYB ENTRY3 ENTRYC **END 1 ENTRYl ENTRYA 60 Output from SLINK The ,'esul t of execut i ng $LINK cons i sts of a pr i nted 1 i st i n9 and an output object module. A sample of the printed listing follows. It cons i sts of a start message, a list of the input control records, a list of any unresolved EXTRN or WXTRN labels (none in example), an optional map of program section (CSECT) and ENTRY point locations in the output module, a length message, and an ending message. All numeric values are given in hexadec i rna I, except the RLD COUNT fie ld. o Chapter 5. Application Program Preparation 403 [ $LINK o SLINK EXECUTION STARTED $LINK EXECUTION CONTROL RECORDS FROM LINKCNTL,EDX002 OUTPUT LEOUT,DANOI AUTO=LEAUTO,DANOI INCLUDE LETEST,DANOI INCLUDE LETEST1,DANOI INCLUDE LETEST2 INCLUDE LETEST3,DANOI INCLUDE SUB4,DANOI VIA AUTOCALL INCLUDE SUBS,DANOI VIA AUTOCAll END OUTPUT NAME= LEOUT ESD TYPE LABEL ADDR LENGTH $PROGRAM 0000 CSECT OOFO CSECT OOFO 0026 SUBI 00F2 ENTRY ENTRY DEF OlOF CSECT 0116 0044 ENTRY 0116 I ENTRY MSG OllA ENTRY SUB2 013E CSECT OISA 0034 ENTRY OlSA X ENTRY SUB3 0160 ENTRY ABC 0180 CSECT Ol8E 0022 ENTRY SUB4 0190 CSECT OlBO DOlE ENTRY SUBS 01B2 MODULE TEXT LENGTH= DICE, RLD COUNT= 40 lEOUT ADDED TO DANDI $LINK COMPLETION CODE= -1 /r-,\ I,~~_) The printed output can be di.rected to any terminal on the system by passing the terminal name as a parameter ($PARMI) to $LINK. If the parameter is not passed to $LINK at program load time, you will be prompted to enter the desired name from the invoking terminal. A null response to the prompt for the termina I name routes the output to the system pr inter, $SYSPRTR. The output object module is stored in the disk or diskette data set specified by the OUTPUT control record if no errors occur that are severe enough to ca~se $LINK to terminate (e.g., disk hardware errors). However, the output module is probably not usable if any errors occurred during $LINK execution. Refer to 404 SC34-0313 c o I SLINK J "$LINK Complet i on Codes" on page 440 for more i nformat i on. Invok;ng SLINK Invoking SLINK using $L and $JOBUTIL If you invoke $LINK with the SL from a terminal, you are prompted for the names (and volumes) of data sets LINKCNTL, LEWORKl, and LEWORK2. You are also prompted to enter the name of the terminal to which the printed output is to be directed. An invalid name reply to the device name prompt causes the output to be directed to the terminal you are currently assigned to. A null reply (pressing the ENTER key or carriage return) causes the output to be directed to $SYSPRTR. SLINK can eliso be invoked as part of a batch procedure under the control of the job stream processor uti lity, $JOBUTIL. In this instance, you must supply the same information as above, with the DS and PARM commands of SJOBUTI L. An example of invoking SLINK via SJOBUTIL commands follows: LOG PROGRAM OS OS DS PARM NOMSG EXEC SSYSPRTR SLINK LNKCONTR,MYLIB LNKWORKl,EOX003 LNKWORK2,EOX003 $SYSPRTR SLINK sets a completion code that can be tested by means of the JUMP command of $JOBUTIL. Successful completion results in a code of -1. Errors encountered dur i ng $LINK execut i on cause completion codes as shown in "$LINK Completion Codes" on page 440. Any disk I/O error which causes abnormal termination of $LINK results in a completion code of 12. The most severe (numerically greatest) completion code encountered is the one posted when $ LINK term i nates exec ut i on. c Chelpter 5. Application Program Preparation 405 [ $LINK I Invoking .LINK Using the Session Manager () To invoke $LINK using the session manager, select option 5 from the program preparat i on secondary opt i on menu. The following parameter selection menu is displayed for entry of the control data set ~nd volume, and the output device. The example shows the control data set as being LINKCNTL on volume EDX002. The required linkage editor work data sets were allocated at sess i on manager log all time. $SMM0205: SESSION MANAGER $LINK PARAMETER INPUT MENU --ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN LINK CONTROL (NAME,VOLUME) ==> LINKCNTL,EDX002 OUTPUT DEVICE (DEFAULTS TO TERMINAL) ==> $SYSPRTR c 406 SC34-0313 SLINK o Oblect Module Record Format Records in object modules are 80 bytes in length, packed 3 per disk or diskette record or var lab Ie-length records blocked 256. The following general description of their format is given as an aid in diagnosing error printouts. If error message 13 is received while link editing, error records will be printed. Object module records containing errors are printed in hexadecimal form if byte one equals '02'; otherwise they are pr i nted in character str i ng form. Byte 1 Contents Hexadecimal '02' One of the following EBCDIC strings: ESD = External Symbol dictionary record TXT = Text data record RLD = Relocation dictionary record END = End of object module C '''','~~' 5-6 Unused 7-8 Blank for ESD, RLD, END Address of 1st data word for TXT 9-10 Blanks 11-12 Number of bytes of ESD, RLD, or TXT data in record 13-14 Blanks 15-16 ESD= External Symbol Dictionary Identification (ESDID) of first ESD item in record; blank if all ESD items in record are label definitions (LDs) TXT= ESD ID of control section containing the text. RLD,END= blanks 17-72 Data items for this record 73-80 Unused by $LINK 'I / c Chapter 5. Application Program Preparation 407 $UPDATE $UPDATE - OBJECT PROGRAM CONVERTER $UPDATE converts an object module on a specified volume into an executable relocatable load module and stores i t into a specified volume. The object module used as input to $UPDATE may have been compi led by $EDXASM or the host assembler provided by FDP 5798-NNQ. An object module that is the output of the linkage editor, $LINK, can be the input to $UPDATE. Object modules created by the host assembler must be transmitted to a Series/l disk or diskette volume by a facility such as the IBM 2780/3780 RJE emulation program $RJE2780/$RJE3780, or by uti l i t y program $HCFUTl, before they can be used as the input to $UPDATE. The object output of language translators other than $EDXASM or the host assembler must be processed by the linkage editor, $LINK, before i t can be used as input to $UPDATE. $UPDATE can be invoked either by the $L command, by the batch job stream processor ($JOBUTIl), or by the session manager. When invoked, $UPDATE prompts you for the i nformat jon it requires. Examples of this interactive usage follow. An example of batch job stream invocation is given at the end of this section. ;/ -"I ~,""-..; $UPDATE Commands $UPDATE commands are: COMMAND (?): ? CV - CHANGE VOLUME RP - READ PROGRAM EN - END COMMAND (7): 408 SC34-0313 $UPDATE o Examples Load $!JPDATE > $L $UPDATE $UPDATE 22P" LP= 4800 THE DEFINED INPUT VOLUME IS EDX002, OK? N ENTER NEW INPUT VOLUME LABEL: EDX003 THE DEFINED OUTPUT VOLUME IS EDX003, OK? Y Change Volume COMMAND (?):CV ~\ () THE DEFINED INPUT VOLUME IS EDX002, OK? N ENTER NEW INPUT VOLUME LABEL: EDX003 THE DEFINED OUTPUT VOLUME IS EDX003, OK? Y COMMAND (?): If volume not mounted: COMMAND ( ? ) : CV ENTER NEW OUTPUT VOLUME LABEL: VOLUME NOT MOUNTED COMMAND EDXDFG (?): c Chapter 5. Application Program Preparation 409 $UPD~ Con v e r..:t a n d_S,J: o..r..!L-fLli.e w P r.:.Q.9..r am: T his e x amp I e a I I 0 cat e san e w data set TESTPROG (type PGM) of the requi red si ze i f a data set with that name has not already been allocated. COMMAND (?): RP OBJECT MODULE NAME: OUTPUT PGM NAME: TESTPROG STORED COt1MAND OBJSET TESTPROG (?): Convert and Store a Nonex i stent Program COMMAND (1): RP OBJECT MODULE NAME: OUTPUT PGM NAME: INPUT DATA SET COMMAND (1): Not~: 410 No action SC34-0313 DUMMY PROGRAM 'DUMMY' NOT FOUND is taken when error occurs. $UPDATE o Convert E)( i st i ng 'Program' That is Not a Program Type Member COMMAND (1): RP OBJECT MODULE NAME: PROGl OUTPUT PGM NAME: PROG2 ILLEGAL HEADER FORMAT COMMAND (1): Note: No action is taken when error occurs. Convert Program Where E)(isting Output Data Set is Not Program ~ COMMAND (?): RP OBJECT MODULE NAME: OBJSET OUTPUT PGM NAME: TSTPROG TSTPROG IS NOT A PROGRAM COMMAND (1): Note. No action is taken when error occurs. o Chapter 5. Application Program Preparation 411 Co n v e r tan d R~-:..PJ_c;:a c e_E xis t i t19 0 u t p u.t Pro.9. ram wit h Sam e Out put Name: In this example, if the existing output program is to be replaced with the new output program and the new and old sizes are the same, then the new prograrn data replaces the old with no other changes. If the new space required is different from the existing space, the existing data set is deleted and a new one of the proper size is allocated wherever enough free space is available. COMMAND (?): () RP OBJECT MODULE NAME: OUTPUT PGM NAME: OBJSET TSTPRGI OUTPUT PGM NAME: TSTPRGI TSTPRGI REPLACE? Y TSTPRGI STORED cor1MAND (?): o 412 SC34-0.313 $UPDATE o Convert ~nd Rename New Output Progr~m if an Output Program Alreac1y ex i sts: The ex i st i ng output data set is und i sturbed and a new data set (type PGM) of the proper size and with the new name is allocated. COMMAND (?): RP OBJECT MODULE NAME: OBJSET OUTPUT PGM NAME: TESTPROG TESTPROG REPLACE? N RENAME? Y NEW PGM NAME: TSTPRG STORED COMMAND TSTPRG (?): End $UPDATE COMMAND (?): EN $UPDATE ENDED AT 11:39:34 o Chapter 5. Application Program Preparation 413 I: $UPD~E o Invoking $UPDATE Invoking $UPDATE Using $JOBUTIL When $UPDATE is invoked as part of a batch job under the control of $JOBUTIL, certain restrictions apply to its operation. In th i s mode, the command 1 s assumed to be RP. The Rename funct ion is not supported; however, the Replace function 1S. Refer to the preceding examples for a description of Rename and Replace. In batch mode, $UPDATE terminates its execution after performi ng one RP command. A complet i on code is set by $UPDATE depending upon the success or failure of the requested operation. This code can be tested by the JUMP command of $JOBUTIL. The $UPDATE completion codes are described in **Figure reference 'ccupd' unresolved**. ~lhen $JOBUTIL is used to invoke $UPDATE, the information required by $UPDATE must be passed to i t by means of the PARM command of $JOBUTI L. The requ ired i nformat i on cons i sts of: 1• The name of the dev i ce to rece i ve resulting from $UPDATE execution 2. The name,volume of the data set containing the input object module 3. The name,volume of the data loadable program 4. An optional parameter YES i f the output module replace an existing module of the same name,volume set to the pr 1 nted contain The volume names of the data sets must be given reside on the IPL volume. the output output unless is to they The first three items of information are required and must be given in the order described. At least one blank must occur between each of these four items in the PARM command. An example of invoking $UPDATE via $JOBUTIL commands follows: o 414 SC34-0313 $UPDATE o PROGRAM PARM NOMSG EXEC $UPDATE $SVSPRTR OBJMOD,VOll MVPROG YES In this example, $SVSPRTR receives the printed messages, the input object module is OBJMOD on VOLl, the output program is MYPROG on the IPL volume. If MYPROG already exists on the IPL volume it is replaced by the new version. If MYPROG does not already exist then space is allocated for it by $UPDATE. o Chapter S. Application Program Preparation 415 [~$UPDATE I Invoking $UPDATE Using the Se~sion Manager To invoke $UPDATE using the session manager, select option 6 from the program preparat j on secondar-y opt i on menu. The following parameter selection menu is displayed for entry of the required data sets and other parameters. The example shows the object program in the data set ASMOBJ is to be formatted and placed in the data set TSTPGM. The REPLACE parameter is left blank when a member does not already exist. If the member did exist, that parameter should be entered as YES. $SMM0206: SESSION MANAGER $UPDATE PARAMETER INPUT MENU ENTER/SELECT PARAMETERS: DEPRESS PF3 TO RETURN =============> ASMOBJ,EDX002 OUTPUT (NAME,VOLUME) ============> TSTPGM,EDX003 (ENTER YES IF PROGRAM EXISTS) ===> (TERMINAL NAME/*> ==========> $SYSPRTR OBJECT INPUT PROGRAM REPLACE LISTING (NAME,VOLUME) Note: The object input, program output, and listing terminal name must be entered .. An '*' indicates the listing will be displayed on the terminal you are currently assigned to. o 416 SC34-0313 o $UPDATE Creating a Supervisor The name $EDXNUC for the output program receives special treatment by eUPDATE since the creation of a supervisor results in an absolute, rather than a relocatable program. The following rules apply: 1. If the first seven characters of the output program name are $EDXNUC then an absolute supervisor program wi 11 be formatted. 2. If the eighth character of the name is either a blank or is not present, then the output program will automat i ca 11 y replace the existing supervisor program on the specified volume. 3. If the eighth character of the program name is any character except a blank, then the output supervisor program wi 11 be stored in the library on the specified volume using the eight character name. In this manner, you can create multiple supervisor programs for different mach i ne con f i gurat ions on one Ser i es/l. You can then copy them to the diskettes which can be used on the Series/l having the proper configuration. Supervisors created and stored under 8-character names (e.g., eEDXNUC2, $EDXNUCX, etc.) can be tested by: 1. Copying the member into eEDXNUC on the IPL volume, and IPL the system aga in, or by 2. Providing the CTS address of the stored supervisor response to the Stand Alone Utilities IPL message: in 'EXEC=', o Chapter 5. Application Program Preparation 417 I $UPDATEH $UPDATEH - OBJECT PROGRAM CONVERTER (HOST) () $UPDATEH transfers, over a commun i cat 1ens 1 ink, Ser i es/l object programs that are members of a host partitioned data set (PDS) and stores them in a Series/l disk or diskette volume in the proper format to be loaded for execution. These programs were previously assembled on the host. To change the name of the default host library, locate the label, HOSTNAME, in the $UPDATEH listing and change the name from the supplied default library name to the host library name desired by you. $UPDATEH must then be assembled and installed in the program library. $UPDATEH requires that the Event Driven Executive Host Communication Facility (rUp 5796-PGH) be installed on the host computer. $UPDATEH can be invoked either by the $L command, by the batch job stream processor ($JOBUTr l), or by the sess i on manager. When invoked, $UPDATE prompts you for the i nformat i on it requires. Examples of this interactive usage follow. $UPDATEH Commands The commands avai lable under $UPDATEH are I isted below. To display this list at your terminal, enter a question mark in response to the prompt i ng message COMMAND (?):. COMMAND (1): ? CH CV RP EN Change Host Library Change Series/l Library Read a Program End $UPDATEH COMMAND (1): After the commands are displayed, you are again prompted with COMMAND (1): to which you respond with the command symbol for the funct i on of your cho i ce (for examp Ie, CH). c 418 SC34-0313 o $UPDATEH Examples Transfer of a New Program > $L PGMCNAME,VOLUME): $UPDATEH $UPDATEH 23P,15.29.59, LP=4400 THE DEFINED HOST LIBRARY IS Sl.EDX.LOADLIB, OK? Y THE DEFINED VOLUME IS EDXOOl, OK? Y COMMAND (?): RP PGM NAME: TPTEST TPTEST STORED COMMAND (?): Request Nonexistent Program C:I COt1MAND (?): RP PGM NAME : DUMMY I S UNKNOWN COr1MAND (?): DU~lMV Transfer and Replace Existing Program COMMAND (?): RP PGM NAME: PROGl PROG1 REPLACE? Y PROGl STORED COMMAND (?): O··,·~ I.,'. Chapter 5. Application Program Preparation 419 [$UPDATEH I T.ransfer and Rename an Existll1.g Program: This example transfers an existing program, P~OGl, and renames it PROG2. The ex i st i ng program is not rep laced. () COMMAND(?): RP PGM NAME: PROSl PROGI REPL? N RENAME? Y PROG NAME: PROG2 PROG2 STORED COMMAND (?): Change Host Library COMMAND (?): CH ENTER HOST LIBRARY NAME: Sl.EDX.LOADLXB2 COMMAND (?): EN $UPDATE ENDED 15.30.54 o 420 SC34-0313 Messages and Codes o CHAPTER 6. MESSAGES AND CODES This chapter contains messages and codes issued by the Event Driven Executive system. SYSTEM OPERATION MESSAGES IPL Operation The supervisor can be IPLed from the 4962 or 4963 disk or the 4964 or 4966 diskette. The IPL switches on the Series/l operator console must be in the appropr i ate pos i t i 011 for the type of IPL and the $SYSLOG terminal should be turned on. For example, if DISK is used to IPL, the IPL switch must be set to PRIMARY if the DISK is wired as the primary IPL device or to SECONDARY if the DISK is wired as a secondary IPl device. After IPL, the following message appears on the $SVSlOG terminal: ~ *_*_*~ __E_V_E_N_l_'__ D_R_I_V_E_N__E_X_E_C_U__ T_I_V_E__ ___________._________________ ~ o Chapter 6. Messages and Codes 421 IMess~~~ o Volume Initialization Th e sup e r vis 0 r bh e nat tern p t s t o r e a d e a c h 0 f the de fin e d disk/diskette volumes and prints a status message similar to the following: VOLSER EDXOOI EDX002 SUPLIB MACLIB TVPE PRI. PRI. SEC. SEC. PRI. EDX013 PRJ. IODA 0002 0003 0003 0003 0012 0013 STATUS ONLINE ONLINE CIPL) UNUSABLE ONLINE Note: This information can be displayed $IOTEST utility. again by using the VOLSER The volume identification for the disk/diskette or the name of a volume on a disk or diskette. TYPE If primary,VOLSER is the volume identification of the disk/diskette. I f secondary, VOLSER is the name of def i ned va I ume on the device. IODA The hardware dev ice address. STATUS The status of the hardware dev ice. I f a d i skette was not inserted ina def i ned 4964 dr i ve, the STATUS is UNUSABLE and the volume identification for the IODA is blank. If a diskette is subsequently put into the drive, it will be considered OFFLINE until a $VARVON command is performed. If the diskette contains a nonstandard label, the STATUS is marked OFFLINE. During IPL, the system initializes the 4966 Diskette Magazine Unit by reading the diskette label on each diskette. The diskettes are read in the fo llow i ng order: 1. The diskettes in i nd i vi dua 1 diskette slots 1 through 3 are read unt i I a 11 three are read or an empty slot is found c ' \ --,j! 422 SC34-0313 o Messages 2. The diskettes in diskette magazine A are read until all ten are read or an empty slot is found 3. The diskettes in diskette magazine B are read until all ten are read or an empty slot is found Each diskette read that conta i ns a va lid ONLINE. All others are marked OFFLINE. labe l i s marked If the device is not turned on or has a hardware failure, the STATUS is marked UNUSABLE. Tape initialization is performed after volume initialization. The supervisor attempts to read each tape address, as defined at system gener'ation. If the address is valid, the tape is marked OFFLINE and is therefore usable. A message is issued for each valid tape address simi lar to the following: ] TAPE 004C OFFLINE TAPE 0040 OFFLINE If an address is incorrectly defined (for example, the device is not a tape), if the tape drive is not turned on, or if the tape drive has a hardware failure, messages describing the problem are issued. Examples of messages are: TAPE 004C IS NOT A TAPE * TAPE 004C MARKED UNUSABLE * * storage Map Generation c At this point, the storage map for the supervisor is printed. If 64K or less storage is avai lable, one partition is avai lable for your programs. If more than 64K is ava i lable and the Chapter 6. Messages and Codes 423 address translator feature is installed, multiple partitions can be defined as described in the system configuration statement SYSTEM. The starting address and size of each partition is printed as shown in the following example: STORAGE MAP PART i START SIZE 30720 65536 100352 34816 34816 30720 1 2 3 The superv i sor occup i es the first 30720 bytes of storage. Three partitions are available for your programs. Partitions 1 and 2 are 34816 bytes long, and partition 3 is 30720 bytes long. /' At this point, the system locates the load utility program, $LOADER. If it cannot be found on the IPL volume, the following message is pr i nted: I NO PROGRAM LOAD FACILITY Sensor I/O status Check The system also checks the status of any defined sensor I/O or Binary Synchronous Communications Adapter devices and prints appropriate status messages, for example: 424 SC34-0313 Messages o SENSOR I/O DEVICE AT ADDRESS 0050 IS OFFLINE BSCA NOT THE DEVICE AT ADDR: 0019 Date and Time Printing If timer support was included during system generation, the system prints a message indicating that the date and time can be optionally entered (or reset) using the $T supervisor uti lity: ~S_E_T __D_A_T__ E__ A_N_D__T_I_M_E__U_S_I_N_G__C_O_M_M_A_N_D__$_T_____________________ ~ If a system has been defined to include fixed head support for the 4962, a period of about 10 seconds will elapse before the 'Set Date •••• ' message appears. During this time, the fixed head portion of the disk is being initialized. Normally you enter date and time at IPl time; however, if the system started as a result of an AUTO IPl, the date and time can be entered later. The super,v i sor is now ready for operat ion. Program load Message Any program invoked using $l (load a Program) results in the fo llow i ng message be i ng d i sp layed, i nd i cat i ng that the program you requested has been loaded. ~15P,14.00.35,lP=4COO _ _ _ _ _ _ _- - l ~RAM ~ o Chapter 6. Messages and Codes 425 I MeSSages] Here, 15P indicates that the program is 15 pages long, where 256 bytes equals one page. 14.00.35 is the time in hours, minutes, and seconds. LP=4COOi nd i cates that the load po i nt of the program is at locat i on X' 4COO'. 1 f t i mer support is not included in the sliPervisor, the time is not printed. C I·--"-\ .. ~ 426 SC34-0313 ) Messages o ERROR MESSAGES Program Check Error Message If a program check occurs during execution of a program, a message with the fa llow i ng format is pr i nted on the load i ng term inal: PGM CHK: o PlP 6BOO TCB PSW LSB 0138 8002 lE6A 0000 8800 PLP The program load point of the fai ling program. TCB The locat i on 0 f the task contra I b lock for the fa iii ng program (the address appear i ng on the assemb I y I 1st i ng) • PSW The processor status word when (described later in this chapter). LSB Level status block, consisting of the following: WORD WORD WORD WORD 1 2 3 4 - 11 - the check occurred instruction address register (IAR) address key register (AKR) level status register (LSR) general registers (RO-R7) I f the program is wr i tten is assemb ler language, COBOL, FORTRAN, or PL/I, the contents of the reg i sters depend upon the conventions unique to that language. If the program is written in Event Driven Language, registers 0 through 7 (words 4-11) contain: o Chapter 6. Messages and Codes 427 Messages :I () WORD WORD 4 S WORD WORD WORD 6 7 8 '~ORD 9 WORD 10 WORD 11 CRO) work register ( R1 ) address of Event Driven Executive instruction (R2) address of El')l TCB (R3) address of EDl operand 1 (R4) address of EDl operand 2 (RS) EDl command (R6) work register (R7) work register The program in which the error occurred is either aborted or, if it has a task error exit, the exit is entered. In either case, normal system execution is resumed after the program check message has been pr i nted. o 428 SC34-0313 Messages o System P~og~am Check E~~o~ Message If a program check occurs in the supervisor, the following message pr i nts on the $SYSlOG term ina 1: SYSTEM PGM CHK: PSW AND lSB 8000 0000 1014 BODP 6FOO 6F22 1015 s4Fs 6F26 80SC ••. where: WORD WORD WORD WORD 1 2 3 4 - 11 - processor status word (PSW) - instruction address register (IAR) - address key register (AKR) - level status register (lSR) c Chapter 6. Messages and Codes 429 r I Messages () Processor status Word (PSW) Processor Type 495x Bit 2 3 5 00 01 02 03 X X X X 04 X X X X X X 05 X X X X X X 06 X X X X 07 - - - 08 X X X X 09 - - - 10 11 13 14 X X X X X X X X X X X X X X 15 X 12 X X X Class Interrupt Condition Specification Check Invalid Storage Addr Privilege Violate Protect Check Not Used Invalid Function Floating Point Exception Not Used Stack Exception Not Used Storage Parity Check Not Used CPU Control Check I/O Check Sequence Indicator Auto IPL Translator Enabled Not Used Power/Thermal Warning Program Program Program Program Note Check Check Check Check 1 Soft Exception Trap Soft Exception Trap 1 Soft Exception Trap 1 Machine Check 1 Machine Check Machine Check None None None 2 - 1 Power/Thermal 3 2 Notes: 1• Always Zero 2• Status Flag 3. Controlled by summary mask o 430 SC34-0313 Messages o $DUMP E~ro~ Messages Error messages may appear when the $DUMP ut iii ty is act i ve. The following error message occurs if the data on the data set to be dumped is not the output of $TRAP: dsname ON dsvol DOES NOT CONTAIN $TRAP OUTPUT $DU~1P TER~tINATED where dsname and dsvol are the names of the data set and the va I ume in wh i ch it res i des used as input to $DUMP. The following error message occurs if an invalid number is entered dur i ng a part i al storage dump: partition PARTITION NUMBER IS INVALID The following error message occurs if an invalid starting or ending storage address is entered during a partial storage dump: DUMP RANGE INVALID VALID RANGE IS xxxx TO yyyy where XX)(X and yyyy are the valid range of storage addresses. o Chapter 6. Messages and Codes 431 .: MeSSages] (t=) $LOG Error Message The followi ng error message occurs if the error f u 11 : $LOG - *** INSUFFICIENT BUFFERS FOR LOG RATE log becomes *** () 432 SC34-0313 Messages o I $RMU Error Messages The following error messages are issued when the Remote Management Utility encounters an error and are written to the terminal that loaded the uti lity. $RMU Error 1 The size of the buffer defined for use by the utility is less than the 512-byte minimum. The default 1024-byte buffer size has been modified incorrectly. $RMU ERROR 1 - INSUFFICIENT BUFFER. SIZE: nnnn $RMU Error 2 C i~ The OPEN of the BSC commun i cat ions 1 i ne fa i led. The return code is defined in the description of the BSC Access Method for the Event Driven Executive. ~, 'i / $RMU ERROR 2 - COMMUNICATIONS OPEN FAILED, RETURN CODE: nnnn $RMU Error 3 The CLOSE of a BSC communications line failed. The return code is defined in the description of the BSC Access Method for the Event Driven Executive. $RMU ERROR 3 - COMMUNICATIONS CLOSE FAILED, RETURN CODE: nnnn o Chapter 6. Messages and Codes 433 Messages $RMU Error 4 A communications error has been detected by the utility. The I/O function (aaaaaa) indicates the type of request as follows: READ INITIAL READ CONTINUE WRITE EOT WRITE INITIAL WRITE EOT (ABORT) WRITE CONTINUE The return code is def i ned in the descr i pt i on of the BSC Access Met hod' for the Eve n t Dr i v e n Ex e cut i v e • $RMU ERROR 4 - COMMUNICATIONS I/O ERROR. I/O FUNCTION: aaaaaa RETURN CODE: nnnn $RMU Error 5 The ut iIi ty attempted to load an over lay program v i a a LOAD instruct ion, and the load fa i led. The return code is issued for the LOAD instruction. $RMU ERROR 5 - LOAD OVERLAY FAILED, RETURN CODE: nnnn OVERLAY NUMBER: mmmm $RMU Error 6 The utility's function table defined a function as being contained within an overlay, but it was not. This, error can occur if a user-written function is not added properly to the function table. $RMU ERROR 6 - OVERLAY FUNCTION MISSING. FUNCTION: nnnn OVERLAY NUMBER: mmmm 434 SC34-0313 () Messages o $TRAP Error Messages Error messages may appear when the $TRAP utility is active. The following error message occurs if $TRAP is loaded into a partition other than partition 1: $TRAP MUST BE IN PARTITION i l $TRAP TERMINATED The following error message occurs if the data set assigned to $TRAP is not large enough to contain the amount of storage being saved: o dsname ON dsvol IS ONLY xxx RECORDS. MINIMUM SIZE IS yyy RECORDS STRAP TERMINATED The following error message occurs if no trap conditions have been specified: NO TRAP CONDITIONS SPECIFIED STRAP TERMINATED o Chapter 6. Messages and Codes 435 Comp!et;on Codes UTILITY COMPLETION CODES The utility completion codes are printed on the list device by the utility programs upon their completion unless otherwise noted. $EDXASM Comp!et;on Codes $EDXASM completion codes are accompanied by an appropriate error message. The completion codes can be tested by the job stream processor, allowing steps subsequent to the assembly to be sk i pped, if appropr i ate. The complet i on codes are: Completion Conditions Successful completion no errors in assembly. Successful completion one or more statements had assembly errors. Completion Code -1 8 Out of space in work or object data set. 12 I/O error in source, work, or object data set. 12 Overlay-instruction table full. 12 Unable to locate overlay program or copy code module. 12 Operator cancelled assembly with ATTN CA command. (~:) 100 o 436 SC34-0313 Complet;on Codes o $IAMUTI Complet;on Codes CODE - C\ 1 01 02 03 04 05 06 07 08 12 13 23 31 32 33 34 36 ~J 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 54 55 DESCRIPTION Successful completion Data set not found (OPEN failed) Invalid IODA exit (OPEN failed) Volume not mounted (OPEN failed) Library not found (OPEN failed) Disk I/O err'or (OPEN failed) No VTOC exit address (OPEN failed) Link module i n use Load error for $IAM Data set shut down Module not included in load module Get storage error - IACB FCB WRITE error during IDEF processing Blocksize not multiple of 256 Data set is great~r than 32,767 Event Driven Executive records Data set i s too small Invalid block size during file definition processing Invalid record size Invalid index size Record size greater than block size Invalid number of free records Invalid number of clusters Invalid key size Invalid reserve index value Invalid reserve block value Invalid free pool value Invalid delete threshold value Invalid free block value Invalid number of base records Invalid key position Data set i s opened for exclusive use Data set opened i n load mode Data set i s opened, cannot be opened exclusively Invalid block size during PROCESS or LOAD Get storage for FeB error o Chapter 6. Messages and Codes 437 Complet;on Codes o CODE 56 60 61 62 100 101 110 DESCRIPTION FCB READ error LOAD mode key is equal to or less than previous high key in data set End of file Duplicate key found READ error WRITE error WRITE error - data set closed o 438 SC34-0313 [ Complet;on Codes o $JOBUTIL Comp!et;on Codes The $JOBUTIL completion codes are displayed on the used to access $JOBUTI L. The codes are as fo llows. Code -1 61 64 67 70 71 72 73 C,l 74 75 76 77 78 79 80 terminal Description Successful completion The transient loader C$LOADER) is not included in the system No space available for the transient loader A disk or diskette I/O error occurred during the load process Not enough main storage available for the program Program not found on the specified volume Disk or diskette I/O error while reading directory Disk or diskette I/O error while reading program header Referenced module is not a program Referenced module is not a data set Data set not found on referenced volume Invalid data set name LOAD instruction did not specify required data setCs) LOAD instruction did not specify required parameterCs) Invalid volume label specified; for example, greater than eight characters o Chapter 6. Messages and Codes 439 [ Completion Codes o $LINK Complet;on Codes Message Description number 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 22 23 24 Successful completion 052 less than 265 records Disk error reading DS1 End of f i 1 e reached on 051 Disk error reading object module Invalid 'OUTPUT' record Invalid 'INCLUDE' record Error opening object output module: - misspelled name or volume - data set not allocated Error opening input object module (see Error 07) Error opening output module (hardware error) Error opening an input module (hardware error) Error opening autocall list (059). See Error 07 for causes Error opening autocall list (DS9) (hardware error) Invalid input object module record type Entry point label not found No valid ESDID for TXT or RLD Invalid ESD item type Duplicate ESDID number Invalid Symbol Duplicate Entry point symbol Invalid ESDID number Invalid ESD symbol End of f i 1 e reached on DS9 Disk error reading DS9 Cause code Action Return code code 1 2 1 2 2 3 -1 12 12 4 2 1 1 1 2 12 6 8 1 5 12 1 2 6 8 5 12 8 /(---'\ 'I II 2 6 8 1 5 12 2 5 12 4 4 3 8 4 4 4 4 4 8 8 8 8 3 4 4 1 2 4 1 4 4 4 '"".-"J 4 4 1 8 8 8 2 2 12 12 (("\c l " 440 SC34-0313 :c''; ;;I' Completion Codes 0 Message Description number 25 26 27 28 29 30 31 32 33 34 36 37 38 Cause code Disk error reading DS4 End of F i 1 e reached on DS3 Disk error Read/~Jr i te on DS8 End of f i 1 e reached on DS8 End of f i 1 e reached on DS7 End of file reached on DS4 Disk error writing on DS5 End of f i 1 e reached on DS5 End of f i 1 e reached on DS2 Duplicate section definition (CSECT) End of f i 1 e reached 011 DS6 Disk error, read/write on DS7 Disk error, read/write on DS3 39 C! 40 42 45 It 6 None Invalid RLD record data length Disk error, read/write on DS2 D52 not large enough (program size over 64K) No 'INCLUDE' records No CSECT length field Unresolved EXTRN Action Return code code -- 2 6 2 2 12 12 2 5 6 2 5 6 2 2 2 2 2 2 2 12 12 12 12 12 12 12 3 4 1 1 4 8 2 2 12 2 2 12 4 4 8 2 2 12 5 1 2 2 4 3 12 12 4 4 6 0 ":,; I, Chapter 6. Messages and Codes 441 [ Complet;on Codes Cause 1 o Code~ 1 - Your error 2 - System error 3 - Possible duplicate 'name,volume' or duplicate CSECT or ENTRY names 4 - Input object recordCs) in error. Probable cause is that 'name,volume' is not a valid object module 5 - Data set is of insufficient size 6 - Probable $LINK error, this condition should not occur Action Codes 1 2 3 4 - Log warning message and continue at next 'INCLUDE' Terminate $lINK with error message Continue as if expected occurance had happened Log error message plus invalid object module record and continue at next 'INCLUDE' 5 - Log error message plus OUTPUT record and terminate $LINK 6 - log error message plus INCLUDE record, continue at next 'INCLUDE' Return Code Definitions -1 4 8 12 Successful completion Warning: A module has been written execution will probably work Warning: A module has been written execution will probably fail Severe error: Module is not written c 442 SC34-0313 o Complet;on Codes $UPDATE Comp!et;on Codes The $UPDATE completion codes are displayed on the terminal used to access $UPDATE. The codes are as follows. Code -1 8 8 o 0 8 8 8 8 8 8 8 8 8 8 8 8 12 Condition Successful completion No supervisor space in this library Output name specified is not a program Disk volume already in use by another program No space in directory No space in data set (output library) Invalid header format Invalid program name Disk volume not mounted Disk volume off line Library not found Input data set not found No parameter supplied via $JOBUTIL No data set names provided via $JOBUTIL Replacement of output data set not allowed Any disk or diskette I/O errors '1: 'I Chapter 6. Messages and Codes 443 ~n Codes I EVENT DRIVEN LANGUAGE AND FUNCTION RETURN CODES () The Eve n t Dr i v e n Lan 9 u age ret urn C 0 de s are ret urn e d i n t he fi rst: word o'f the Task Control Block of the program which invoked the respective language instruction or function unless otherwise noted. $DISKUT3 Return Codes The $DISKUT3 utility places a return code in the first word of the DSCB specified. The return codes for $DISKUT3 are listed below. Code 1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Condition Invalid request code parameter (not 1-5) Volume does not exist (All functions) Insufficient space in library (ALLOCATE) Insufficient space in directory (ALLOCATE) Data set already exists - smaller than the requested allocation Insufficient contiguous space (ALLOCATE) Disallowed data set name, eg. $EDXVOL or $EDXLIB (All functions) Data set not found (DELETE, OPEN, RELEASE, RENAME) New name pointer is zero (RENAME) Disk is busy (ALLOCATE, DELETE, RELEASE, RENAME) I/O error writing to disk (ALLOCATE, DELETE, RELEASE, RENAME) I/O error reading from disk (All functions) Data set name is all blanks (ALLOCATE, RENAME) Invalid size specification (ALLOCATE) Invalid size specification (RELEASE) Mismatched data set type (DELETE, OPEN, RELEASE, RENAME) Data set alreadY exists - larger than the requested allocation SETEOD only valid for data set of type 'data' Load of $DISKUT3 failed ($RMU only) Tape data sets are not supported c 444 SC34-0313 o Return Codes $PDS Return Codes Use the EVENT=parameter on the LOAD command when using the $PDS utility. The $PDS utility returns the status of the request in the Event Control block specified in the LOAD command. The return codes for $PDS are listed below. Code -1 1 2 3 4 5 7 8 9 10 Condition Successful operation Member not found Member already allocated No space Directory is full Member was not used Record not in member Member control block invalid Space not released Not a data member o Chapter 6. Messages and Codes 445 [~;turn Codes I , 0 L.I,I •••• BSC Return Codes Code Description 'I Notes Text received in conversational mode Successful completion -2 -1 ~.----------,------.--------------------------------------------------~ END= EDT received OLE EDT received Reverse interrupt received Forward abort received Rem 0 t est, a t ion not rea d y (N AK r e c e i v e d ) Remote station busy (WACK received) 1 2 3 4 5 6 4 4 ERROR= Timeout occurred Unrecovered transmission error (BCC error) Invalid sequence received Invalid multi-point tributary write attempt Disregard this block sequence received Remote station busy (WACK received) Wrong length record - long (No COO) Wrong length record - short (write only) Invalid buffer address Buffer length zero Undefined line address Line not opened by calling task Modem interface error Hardware overrun Hardware error Unexpected ring interrupt Invalid interrupt during auto-answer attempt Enable or disable OTR error Access method error 10 11 12 13 14 15 20 21 22 23 24 25 30 31 32 33 34 35 99 1 1 3 2 1 1 6 2 2 2 2 2 2 2 5 2 2 2 2 Notes: 1• 446 Retried up to the limit specified in the RETRIES= operand of the BSCLINE definition. SC34-0313 o Return Codes 2. Not retried. 3. Retr i ed dur i ng wr i te operat i on on 1 y when a wrong ACK is received following an ENQ request after timeout Cindicati ng that no text had been rece i ved at the remote stat ion) • 4. Returned only during an attempted. 5. Retried only after an unsuccessful start I/O attempt. 6. Retried only during read operations. initial sequence with no retry riata Formatting Return Codes Code -1 1 2 3 Description Successful completion No data in field Field omitted Conversion error c Chapter 6. Messages and Codes 447 EXIO Return Codes I/O Instruction Return Codes (word 0 of TCB) (Word 1 of TCB contains supervisor instruction address) Code Description -1 Command accepted Device not attached Busy Busy after reset Command reject Intervention required Interface data check Controller busy Channel command not allowed No DDB fOllnd Too many DCBs chained No address specified for residual status EXIODEV specified zero bytes for residual status Broken DCB chain (program error) Device already opened 1 2 3 It 5 6 7 8 9 10 11 12 13 16 448 SC34-0313 / Return Codes 1 Interrupt Condition Codes (Bits 4-7 of word 0 of ECB) (If bit 0 is on, bits 8-15=device 10) Code o 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Description Controller end Program Controlled Interrupt (PCI) Exception Device end Attention Attention and PCI Attention and exception Attention and device end Not used Not used SE on and too many DCBs chained SE on and no address specified for residual status SE on and EXIODEV specified no bytes for residual status Broken DCB chain ECB to be posted not reset Error in Start Cycle Steal Status (after exception) ---.---------------------------------------------------------------------------~ c Chapter 6. Messages and Codes 449 Floating Point Return Codes Code -1 1 3 5 Description Successful completion Floating point overflow Floating point divide check (divide by '0') Floating point under flow Formatted Screen Image Return Codes These return codes are issued by the $IMOPEN subroutine. They are returned in the second word of the Task Control Block of the calling program. Code Description -1 1 2 3 4 5 Successful completion Disk I/O error Invalid data set name Data set not found Incorrect header or data set length Input buffer too small o 450 SC34-0313 o Return Codes Indexed Access Method Return Codes CODE - 1 57 - 58 - 80 - 85 01 07 08 10 12 13 22 23 50 51 52 54 55 56 60 61 62 70 80 85 90 100 101 110 DESCRIPTION Successful completion Data set has been loaded Record not found End of data Record to be deleted not found Function code not recognized Link module in use load error for $IAM Invaild request Data set shut down due to error Module not included in load module Invalid IACB address Get storage error - IACB Data set is opened for exclusive use, cannot be opened exclusively Data set opened in load mode Data set is opened, cannot be opened exclusively Invalid block size during PROCESS or LOAD processing Get storage error - FCB READ error - FeB Out of sequence or duplicate key End of file Duplicate key found in PROCESS mode No space for insert FeB WRITE error during DELETE processing Key field modified by user Key save area in use READ error HRITE error WRITE error - data set closed 0, , , Chapter 6. Messages and Codes 451 [Return Codes I LOAD Return Codes Code -1 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 Description Successful completion The transient loader ($LOADER) is not included in the system In an overlay request, no overlay area exists In an overlay request, the overlay area is in use No space available for the transient loader In an overlay load operation, the number of data sets passed by the LOAD instruction does not equal the number required by the overlay program In an overlay load operation, no parameters were passed to the loaded program A disk(ette) I/O error occurred during the load process Reserved Reserved Not enough main storage available for the program Program not found on the specified volume Disk(ette) I/O error while reading directory DiskCette) I/O error while reading program header Referenced module is not a program Referenced module is not a data set Data set not found on referenced volume Invalid data set name LOAD instruction did not specify required data setcs) LOAD instruction did not specify required parametersCs) Invalid volume label specified Cross partition LOAD requested, support not included at system generation Requested partition number greater than number of partitions in the system Not!;i: I f the program be i ng loaded is a sensor I/O program and a sensor I/O error is detected, the return code will be a sensor I/O return code, not a load return code. o 452 SC34-0313 0 ', Return Codes " Multiple Terminal Manager Return Codes These return codes are returned in a caller-specified variable on the SETPAN or FILEIO function. CODE -1 1 2 201 202 203 204 205 206 207 208 ('~\I ., / -500 -501 other DESCRIPTION Successful completion Warning: uninitialized panel. Input buffer has been set to unprotected blanks (x'OO') and cursor position set to zero. Data table truncated. Data set not found Volume not found No file table entries are available; all have updates outstanding I/O error reading volume directory I/O error writing volume directory Invalid function request Invalid key operator SEOD record number greater than data set length Terminal is not an IBM 4978/4979 • No action has been taken Screen data set not found. Return code from READ/WRITE or the Indexed Access Method o Chapter 6. Messages and Codes 453 [Return COdes] o READ/WRITE Return Codes Disk/tape return codes resulting from READ/WRITE instructions are returned in two places: 1. The Event Control Block CECB) named DSn, where n number of the data set be i ng referenced. 2. The task code word referred to by taskname. is the The disk/tape return codes and the i r mean i ngs are shown below. If further information concerning an error is required, it may be obtained by printing all or part of the contents of the Disk Data Blocks (DOSs) located in the Supervisor. The starting address of the DDBs can be obtained from the linkage editor map of the supervisor. The contents of the DDBs are described in the Internal Design. Of particular value are the Cycle Steal Status Words and the Interrupt Status Word save areas, along with the contents of the word that contains the address of the next DDB in storage. o 454 SC34-0313 o Return Codes Disk Return Codes Code -1 1 2 3 4 5 6 7 9 10 11 Description Successful completioM I/O error and no device status present (this code may be caused by the I/O area starting at an odd byte address) I/O error trying to read dev'ice status I/O error retry count exhausted Error on issuing I/O instruction to read device status Unrecoverable I/O error Error on issuing I/O instruction for normal I/O A 'no record found' condition occurred, a seek for an alternate sector was performed, and another 'no record found' occurred i.e., no alternate is assigned Device was 'offline' when I/O was requested Record number out of range of data set--may be an end-of-file (data set) condition Device marked 'unusable' when I/O was requested o Chapter 6. Messages and Codes 455 [ Re turn Codes I Return Codes ~~e Code -1 1 2 4 5 6 10 20 21 22 23 24 25 26 27 28 29 30 31 32 33 76 o Description Successful completion Exception but no status Error reading STATUS Error issuing STATUS READ Unrecoverable I/O error Error issuing I/O command Tape mark (EOO) Device in use or offline Wrong length record Not ready File protect EDT Load point Uncorrected I/O error Attempt WRITE to unexpired data set Invalid blksize Data set not open Incorrect device type Incorrect request type on close request Block count error during close EOVI label encountered during close DSN not found c 456 SC34-0313 Return Codes o SBro (Sensor-based I/O) Return Codes Code -1 90 91 92 93 94 95 96 97 98 100 101 102 104 Description Successful completion Device not attached Device busy or in exclusive use Busy after reset Command reject Invalid request Interface data check Controller busy Analog Input over voltage Analog Input invalid range Analog Input invalid channel Invalid count field Buffer previously full or empty Delayed command reject c Chapter 6. Messages and Codes 457 Return Codes Terminal I/O Return Codes Code -1 1 2 3 4 5 6 7 11 Bit o 1 2 3 4 5 6 7 (~ III .•) Description Successful completion Device not attached System error (busy condition) System error (busy after reset) System error (command reject) Device not ready Interface data check Overrun received Codes greater than 10 represent possible multiple errors. To determine the errors, subtract 10 from the code and express the result as an 8-bit binary value. Each bit (numbering from the left) represents an error as follows: Description Unused System error (command reject) Not used System error (DeB specification check) Storage data check Invalid storage address Storage protection check Interface data check NQ..t!lt: If an error message code greater than 128 is returned for devices supported by 1052741 (2741,PROC), subtract 128; the result then contains status word 1 of the ACCA. (Refer to Co DIm u n i cat i 0 n Fe a t u res Des c rip t ion to de t e r min e the s p e cia 1 error condition.) o 458 SC34-0313 Return Codes o Terminal I/O - ACCA Return Codes -1 Successful completion. Bit Description 0 1-8 9-10 11 12 13 14-15 Unused ISB of last operation (I/O complete) Unused 1 i f a write or control operation (I/O complete) Read operation (I/O complete) Unused Condition code +1 after I/O start (or) Condition code after I/O complete c Chapter 6. Messages and Codes 459 Return Codes Terminal I/O - Interprocessor Communications Return Codes CODTVPE= EBCD/CRSP End of Transmission (EOT). End of Record (NL). End of Subrecord (EOSR). IF 5B Not used. EBCDIC FDFF FEFF FCFF Return Codes -2 -1 Handled by device support. o 460 SC34-0313 I Return Codes Terminal I/O - Virtual Terminal Communications Return Codes Value x'BFnn' x'BEnn' -2 -1 1 5 B "'\ C , Transmit Receive NA NA NA Successful completion Not attached Disconnect Break LINE=nn received SKIP=nn received Line received (no CR) New line received Not attached Disconnect Break LINE=nn (x'BFnn'): This code is posted for READTEXT or GETVALUE instructions if the other side sent the LINE forms control operat i on; it is transmi tted so that the rece i vi ng program may reproduce on a rea I term ina I (for pr inter spoo ling app 1 i cations for example) the output format intended by the sending program. SKIP=nn (x'BEnn'): The sending program transmitted SKIP=nn. Line Receiv~d (-2): This code indicated that the sending program did not send a new line indication, but that'the line was transmitted because of execution of a control operation or a trans i t i on to the read state. Th is is how, for examp Ie, a prompt message is usua 11 y transm i tted with REAPTEXT or GETVALUE. New Line Received (-1): This code indicates transmission of the carriage return at the end of the data. The distinction between a new line transmission and a simple line transmission is, again, made only to allow preservation of the original output format. Not attached (1): If the virtual terminal accessed for the operation does not reference another virtual terminal, then th is code is returned. c Disconnect (5): This code value corresponds to the 'not ready' indication for real terminals; its specific meaning for virtual terminals is that the program at the other end of the channel terminated either through PROGSTOP or operator intervention. Chapter 6. Messages and Codes 461 [Return Codes Break (8): The break code indicates that the other side of the channel is in a state (transmit or receive) which is incompatible with the attempted operation. If only one end of the channel is defined with SYNC=YES (on the TERMINAL statement), then the task on that end wi 11 always recei ve the break code, whether or not it attempted the operation first. If both ends are defined with SYNC=YES, then the code wi 11 be posted to the task wh i ch last attempted the operat i on. The break code may thus be understood as follows: when reading (READTEXT or GETVALUE), the other program has stopped send i ng and is wa i t i ng for input; when writing (PRINTEXT or PRINTNUM), the other program is also attempting to write. Note that current Event Driven Executive programs, or future programs which do not interpret the break code, must always communicate through a virtual terminal which is defined with SYNC=NO (the default). o 462 SC34-0313 "Return Codes TP Return Codes Code -1 1 2 3 4 5 6 7 8 9 10 11 50 51 100 101 102 Module Description Supervisor Successful completion Supervisor Illegal command sequence Supervisor TP I/O error HCFCOMM TP I/O error on host Supervisor Looping bidding for the line Supervisor Host acknowledgement to request code was neither ACKO,ACKl,WACK, or a NACK Supervisor Retry count exhausted - last error was a timeout: the host must be down Supervisor Looping while reading data from the host Supervisor The host responded with other than an 'EDT' or an 'ENQ' when an 'EDT' was expected Supervisor Retry count exhausted - last error was a 'modem interface check' Supervisor Retry count exhausted - last error was not a timeout,modem check, block check or overrun Retry count exhausted - last error Supervisor was a transmit overrun I/O error from last I/O in DSWRITE. DSCLOSE I/O error when writing the last buffer DSCLOSE Length of DSNAME is zero Length of DSNAME exceeds 52 Invalid length specified for HCFCO~1M I/O HCFCOMM HCFINIT C\ :! Chapter 6. Messages and Codes 463 Code Description f10dule HCFINIT 221 222 Data set not on volume specified for controller Invalid member name specification Data set in use by another job Data set already allocated to this task Data set is not cataloged Data set resides on multiple volumes Data set is not on a direct access device Volume not mounted (archived) Device not online Data set does not exist Record format is not supported Invalid logical record length Invalid block size Data set has no extents Data set organization is partitioned and no member name was specified Data set organization is sequential and a member name was specified Error during 05/ OPEN The specified member was not found An I/O error occurred during a directory search Invalid data set organization Insufficient I/O buffer space available 300 301 302 303 End of an input data set I/O error during an 05/ READ Input data set is not open A previous error has occurred 200 201 202 203 204 205 206 207 208 209 211 212 213 214 216 217 218 219 220 DSOPEN DSOPEN D50PEN DSOPEN DSOPEN DSOPEN DSOPEN DSOPEN DSOPEN DSOPEN DSOPEN DSOPEN DSOPEN DSOPEN D50PEN DSOPEN D50PEN DSOPEN DSOPEN DSOPEN D5READ D5READ D5READ DSREAD -C'" ' , ! 464 SC34-0313 ) Return Codes o Code Description Module 400 401 402 403 404 End of an output data set I/O error during an OS/ WRITE Output data set is not open A previous error has occurred Partitioned data set is full DSWRITE DSWRITE DSWRITE DSWRITE DSCLOSE 700 701 702 703 704 710 Index, key, and status record added key and status added Index exists, Index and key exist, status replaced Error - Index full Error - Data set full I/O Error SET SET SET SET SET SET 800 801 802 810 Index and key exist Index does not exist Key does not exist I/O error FETCH FETCH FETCH FETCH 900 901 902 910 Index and/or key released Index does not exist Key does not exist I/O error RELEASE RELEASE RELEASE RELEASE 1xxx .- An error occurred in a subordinate module during SUBMIT. ' xxx ' i s the code returned by that module. S7SUBMIT o Chapter 6. Messages and Codes 465 466 SC34-0313 BIBLIOGRAPHY EVENT DRIVEN EXECUTIVE LIBRARY SUMMARY The library summary is a guide to the Event Driven Executive 1 i brary. By br i ef 1 y list i ng the content of each book and providing a suggested reading sequence for the library, it should assist you in using the library as a whole as well as direct you to the i nd i vi dua 1 books you requ ire. Event Driven Executive Library The IBM Series/l Event Driven Executive 1 i brary mater i a Is consist of five full-sized books, a quick reference pocket book, and a set of tabs: • IBM Series/l Event Driven System Guide), SC34-0312 • IBM Series/l Event Driven ~xecutive Utilities, Operator Com man d s, P r O..9..r a m Pre par a t ion , Me s sag e san d Cod e s ( 0 r ~tilities), SC34-0313 • IBM Series/l Event Driven Executive language Reference (or language Reference), SC34-0314 • IBM Series/l Event Drive~ Executive Communications and Terminal Application Guide (or Communications Guide), SC34-0316 • IBM Series/l Event Driv~n Executive Internal Internal Design), LY34-0168 • I B.M S e r i e s / 1 Eve n t Dr i v e n Ex e c uti v eMu I t i pIe T e r min a I Man.9..fler Internal Design (or Multiple Terminal Manager Internal Design), lY34-0190 • IBM Series/l Event Driven Executive Indexed·Access Method Internal Desi9J.1 (or Indexed Access Method Internal Dt;! 5 i 9n.), l Y34 - 0 1 8 9 • Executive System IBM Series/l Event Driven Exgcutive Reference Guide Design Summar~ (or (or (or B_e fer e n c e 5 u mmar y ), S X34- 0 1 0 1 • IBM Series/l SX34-0030 Event Driven Executive Tabs (or Tabs), o Bibliography 467 Summary of L;brary -~ ( I,. ) System Guide The System Guide introduce~ the concepts and capabilities of the Event Dr i ven Execut i ve system. It discusses mu It i-task i ng, program and task structure, program overlays, storage management, and data management. Planning aids include hardware and software along with guidelines for storage estimating. requirements, The System Guide also presents step-by-step procedures for generating a supervisor tailored to your Series/l hardware conf i gurat i on and software needs. The descr i pt i on of the Indexed Access Method conta i ns the information on how to write applications that use indexed data sets. The descr i pt i on of the sess i on manager includes a procedure for modifying the session manager to include application programs in the primary option menu so that you can execute them under the session manager. You can also add a procedure to compile, link, and update programs. Information is also provided concerning partitioned data sets, tape data organization, diagnostic aids, inter-program communication, logical screens, and dynamic data set allocation. Uti 1 i t i 'e s Utilities describes: • Event Dr i ven Execut i ve ut iIi ty programs • Operator commands • Procedures to prepare and execute system and application programs • The session manager -- a menu-driven interface program that will invoke the programs required for program development • Messages and codes issued by the Event system 468 SC34-0313 Dr i ven Executi ve o 0 ·' .. ) The operator commands, program preparation facilities, and sess i on manager are grouped by funct i on and discuss ions include detailed syntax and explanations. The utilities are presented in alphabetical order • !anguage Reference The Language Reference familiarizes you with the Event Driven Language by first groupihg the instructions into functional categories. Then the instructions are listed alphabetically, with complete syntax and an explanation of each operand. The final section of th~ Language Reference contains examples of using the Event Driven language for applications such as: • Program loading • User exit routine • Graphics • I/O level control program • Index i ng and hardware reg i ster usage Communications Guide The Communications Guide introduces the Event Driven Executive communications support -- binary synchronous communications, as y n c h ron 0 usc o·m mu n i cat ion s , and the H0 5 t COlli mu n i cat ion s Facility. The Communications Guide contains coding details for all utilities and Event Driven language instructions needed for communications sliPport and advanced terminal applications. Internal Design c Internal Design describes the internal logic flow and specifications of the Event Driven Executive system so that you can understand how the system interfaces with application programs. It familiarizes YOll with the design and implementation by describing the purpose, function, and operation of the various Event Dr i ven Execut i ve system programs. Bibliography 469 Mu I tip leT e r min a I Man age r I n :t, r nS! 1 Des i g nan d I n d e x@_d Ac c e s s Nethod Internal Desl9..!l de,scribe the internal logic flow and spec if i cat ions of these programs. O ·i I' Unlike the other manuals in the library, the Inte~J-JLesign books conta in mater i al that is the I icensed property of IBM and they are available only to licensed users of the Event Driven Executive system. Reference Summary The Reference Summary is a pocket-sized booklet to be used for qu i ck reference. It lists the Event Dr i ven language instructions with their syntax, the utilit~ and program preparation commands, and the completion codes. The tabs package must be ordered separately. The tains 33 index tabs by subject, with additional These extended tabular pageS can be inserted at various sections of the library. The tabs are accord i ng to the major library top i cs. package conblank tabs". the front of color coded Reading Sequence All readers of the Event Driven Executive library should begin wit h the fir s t t hr e e c hap t e r s 0 f the .5,.v:;t e m Gu ide ("Introduction," "The Supervisor and Emulator," and "Data Management") for an overview of the Event Driven Executive concepts and facilities. Readers respons i b Ie for i nsta 11 i ng and prepar i ng the system should then continue in the System Guide with "System Configurat i on" and "System Generat i on." ' All readers should review the Utilities become familiar with the utility functions Event Dr i yen Execut i ve system. Then you can sections for particular utilitie$, operator gram preparation facilities. "Introduct i on" to available for the read more spec if i c commands, and pro- After you have a basic understanding of the Event Driven E x e c u t i ve system and how you can best use the system for your appl icat ions, you should reC1d the Lan~'-!LCULe Reference "Introduction." This will familiarize you with the potential 470 SC34-0313 of the Event Driven Language and prepare you to start coding application programs. I f yoU have communications support for your Event Driven Executive system, you should read the Communication5,..l1uide, which is an extension of the System Guide, Utilities, and the Lan9uag~ Reference. After you know the functions of the various Event Driven language instruct ions, ut i I i ties, and program preparat i on faci lities, you may wish to refer only to the Reference Summary for correct syntax whi Ie coding your applications. On 1 y readers respons i b Ie for the support or mod i f i cat i on of the Event Driven Executive system need to read Internal Design. OTHER EVENT DRIVEN EXECUTIVE PROGRAMMING PUBLICATIONS () • IBM Series/l Event Guide, SC34-0315. Driven • I BM S e r i e s / 1 E v.!!::..:.n~t-=----"D:;.,;r,--,-i..;:..v..::;e.-n:..--......::E..-x"-=e::,.;::c:;...;u:;,..t.;::...:..i__v..::;e:-......-P_-=L~/..:I:--.::.L-=a..:...n:..;;;9;r...;u=-a:;.,g ....... 1 Reference, GC34-0147. • IBM Serigs/l Event Driven Executive GC34-0148. • IBM Series/l Event Driven Guide, SL23-0014. • IBM Ser i es/l Event Dr i ven Execut i ve mer's Guidg, SL23-0016 • IBM Series/l Event Reference,GC34-0317. • tBM Ser i es/l SR30-0436. Event Driven Executive Executive FORTRAN Pl/I COBOL User's Macro Executive User's Guide, Programmer's Sort/Merge Executive Driven IV Program- Assembler Study Guide, OTHER SERIES/l PROGRAMMING PUBLICATIONS • IBM Ser i e5/1 Programm i n9 Syst@m Summar\!, GC34-0285. • IBM Series/l COBOL Language Reference, GC34-0234. • IBM Series/l FORTRAN IV language Reference, GC34-0133. c Bibliography 471 • IBM Ser i es/l Host Commun i cat ions Description Manual, SH20-1819. • IBr1 Series/l Mathematical and Library User's Guide, SC34-0139. • IBM Series/l Macro Assembler Reference Summary, SX34-0128 • IBM Series/l Data Collection Interactive Programming RPQ P82600 User's Guide, SC34-1654. Facility Functional Program Subroutine OTHER PROGRAMMING PUBLICATIONS • IBM Data Processing Glossary, GC20-1699. • IBM Series/l Graphic Bibliography, GA34-0055. • IBM OS/VS Basic Telecommunications Access Method (BTAM), GC27-6980. • General Information GA27-3004. • IBM System/370 Program Preparat i on Fac iii ty, SB30-1072. Binary Synchronous Communications, SERIES/l SYSTEM LIBRARY PUBLICATIONS • IBM Series/l 4952 Processor Description, GA34-0084. and Processor Features • IBM Series/l 4953 Processor Description, GA34-0022. and Processor Features • IBM s..eries/l 4955 Processor Description, GA34-0021. and Processor Features • IBM Series/l Communications -0028. • IBM Series/l 3101 Display Terminal Description, GA34-2034. • IBM Series/l 4962 Disk Storage Unit and 4964 Diskette Unit Description, GA34-0024. • IBM Ser i es/l 4963 Di sk Subsystem Descr i pt ion, GA34-0051. • IBM Series/l GA34-0052. 472 SC34-0313 4966 Diskette Features Magazine Description, Unit GA34 Description, c o • IBM Series/l 4969 Magnetic GA34-0087. • IBM Ser i es/l 4973 Line Pr inter Descr i pt i on, GA34-0044 • • JLBM~~rie5/1 • IBM Se r i e s/ l~J"'§-=.l----ILL?.JUJ.u__Sta t i..9n (R PQ DO 2 0 55) and .A t t a c h men t (R P Q D0 2 0 3 8) Ge n era t I n for mat ion, GA34 - 1 5 5 0 • Tape SubsYstem Description, 4974 Printer Description, GA34-0025. IBM S e r i e s/ 1 4 9 78- 1 D i ,2B..1.2-Y. S tat ion, Key boa r d (R P Q D0 2 0 5 6 ) Information, GA34-1551 ~~peral • IBM Series/l 497.8-1 Display Station, Keyboard (RPQ D02057) General Information, GA34-1552 • 1.B M S ~ r i e s / 1 4 9 7 8 - 1 Dis p 1 ~ y 5 tat i 0 n Key boa r d s and D02065) General Information, GA34-1553 • IBM Series/l 4979 Display Station Description, GA34-0026 • IBM Series/l 4982 Sensor GA34-0027 • 1..H M S e.r i e 5/1 Input/Output Unit Da t a Co 11 e c t ion In t era c t i ve 002313, and D02314 Custom Feature, GA34-1567 (R P Q D0 2 0 6 4 Description, RP Q s DO 2312 , () o ' C ,,:1 Bibliography 473 () o 474 SC34-0313 GLOSSARY o This glossary contains terms that are used in the Series/! Event Driven Executive software publications. All software and hardware terms are Series/1 oriented. This glossary defines terms used in this library and serves as a supplement to the IBM Data Processing Glossary (GC20-1699). $SYSLOGA. The name of the alternate system logging device. This device is optional but, if defined, should be a terminal with keyboard capability, not just a printer. The name of the sy5te~ logging device or operator station; must be defined for every system. It sh~uld be a terminal with keyboard capability, not just a printer. $SYSLOG. $SYSPRTR. The name of the system printer. the Multiple Terminal Manager facilities. asynchronous commun;cat;ons control adapter. An ASCII terminal attached via 11610, #2091 with #2092, or 12095 with #2096 adapters. attention list. A series of pairs of 1 to 8 byte EBCDIC strings and addresses pointing to EDL in~tructions. When the attention key is pressed on the terminal, the operator can enter one of the strings to cause the associated EDl instructions to be executed. ACCA. See asynchronous communications control adapter. address key. C·: ,",; backup. A copy of data to be used in the event the original data is lost or damaged. Identifies a set of Series/1 segmentation registers and represents an address space. It is one less than the partition number. base retords. address space. The logical storage identified by an address key. An address space is the storage for a partition. basic exchange format. A standard format for exchanging data on diskett~s between systems or devices. application program manager. binary synchronous dev;ce data blbck (BSCDDB1. A control block Records that have been placed into an indexed data set while in load mode. The component of the Multiple Terminal Manager that provides the program management facilities required to process user requ~sts. It centroIs the contents of a program area and the execution of programs within the area. that provides the information to control one Series/l Binary Synchronous Adapter. It determines the line characteristics and provides dedicated storage for that line. application program stub. block. A collection of subroutines that are appended to a progrhm by the linkage editor to provide the link from the application program to (1) See data block or index block. (2) In the Indexed Method, the unit of space used by the access method to contain indexes and data. Glossary {t75 BSCDDB. See binary synchronous device data block. can be used to contain control blocks or data that will be accessed by more than one program. buffer. An area of storage that is temporarily reserved for use in performing an input/output operation, into which data is read or from which data is written. See input buffer and output buffer. o completion code. An indicator that reflects the status of the execution of a program. The completion code is displayed or printed on the program's output device. bypass label processing. Access of a tape without any label processing support. conversion. See update. cross partition service. eCB. See terminal control block. A function that accesses data in two partitions. character image. An alphabetic, numeric, or special character de.fined for an IBM 4978 Display Station. Each character image is defined by a dot matrix that is coded into eight bytes. character ima9a table. An area containing the 256 character images that can be defined for an IBM 4978 Display Station. Each character image is coded into eight bytes, the entire table of codes requiring 2048 bytes of storage. cluster. In an indexed file, a group of data blocks that is pointed to from the same primary-level index block, and includes the primary-level index block. The data records and blocks contained in a cluster are logically contiguous, but are not necessarily physically contiguous. COD (change of direction). command. A character string from a source external to the system that represents a request for action by the system. common area. A user-defined data area that is mapped into every partition at the same address. It SC34-0313 In an indexed file, an area that contains control information and data records. These blocks are a multiple of 256 bytes. data set. A group of contiguous records within a volume pointed to by a directory member entry in the directory for the volume. data set control block (DSCB). A control block that provides the information required to access a data set, volume or directory using READ and WRITE. o data set shut down. An indexed data set that has been marked (in main storage only) as unusable due to an error. DeE. See directory control entry. DDB. See disk data block. A character used with ACCA terminal to indicate a reverse in the direction of data movement. 476 data block. direct access. (1) The access method used to READ or WRITE records on a disk or diskette device by specifying their location relative the beginning of the data set or volume. (2) In the Indexed Access Method, locating any record via its key without respect to the previous operation. o o directory. event control block (ECB). directory control entry (DCE). The first 32 bytes of the control block used to record the status (occurred or not occurred) of an event; often used to synchronize the execution of tasks. ECBs are used in conjunction with the WAIT and POST instructions. A series of contiguous records in a volume that describe the contents in terms of allocated data sets and free spaces. first record of a directory in which a description of the directory is stored. directory member entry (DME). A 32-byte directory entry describing an allocated data set. disk data block (DDB). A control block that describes a direct access volume. display station. An IBM 4978 or 4979 display terminal or similar terminal with a keyboard and a video display. A event driven language (EDL). The language for input to the Event Driven Executive compiler ($EDXASM), or the Macro and Host assemblers in conjunction with the Event Driven Executive macro libraries. The output is interpreted by the Event Driven Executive emulator. EXIO (execute input or output). An EDL facility that provides user controlled access to Series/l input/output devices. external label. DNE. c DSCB. See directory member entry. See data set control block. dynamic storage. An increment of storage that is appended to a program when it is loaded. A code that signals that the last record of a data set has been read or written. End-of-data is determined by an end-of-data pointer in the DME or by the physical end of the data set. external name (EXTRN). The 1- to 8-character symbolic EBCDIC name for an entry point or data field that is not defined within the module that references the name. FCA. See file control area. ECB. See event control block. FeB. See file control block. EDL. See Event Driven language. end-of-data indicator. emulator. The portion of the Event Driven Executive supervisor that interprets EDL instructions and performs the function specified by each EDL statement. end-of-tape (EDT). o A label attached to the outside of a tape that identifies the tape visually. It usually contains items of identification such as file name and number, creation data, number of volumes, department number, and so on. A reflective marker placed near the end of a tape and sensed during output. The marker signals that the tape is nearly full. file control area (FCA). A Multiple Terminal Manager data area that describes a file access request. file control block (FCB). In an indexed data set, the first block of the data set. It contains descriptive information about the data 'contained in the data set. Glossary 477 file manager. A collection of subroutines contained within the program manager of the Multiple Terminal Manager that provides common support for all disk data transfer operations as needed for transaction-oriented application programs. It supports indexed and direct files under the control of a single callable function. formntted screen image. A collection of display elements or display groups (such as operator prompts and field input names and arQas) that are presented together at one time on a display device. refers to the System/370 Program Preparation Facility (5798-HNQ). host system. '·\ I' 0··· Any system whose resources are used to perform services such as program preparation for a Series/I. It can be connected to a Series/l by a communications link. lACS. See indexed access control block. IAR. See instruction address register. ICB. See indexed access control block. free pool. In an indexed data set, a group of blocks that can be used as either a data bl~ck or an index block. These differ from other free blocks in that these are not initially assigned to specific logical positions in the data set. free space. In the Indexed Access Method, record spaces or blocks that do not currently contain data, and are available for use. lIB. See interrupt information byte. image store. The area in a 4978 that contains the character image table. index. In the Indexed Access Method, an ordered collection of pairs, each consisting of a key and a pointer, used to sequence and locate the records in an Indexed Access Method data set. free space entry (FSE). A 4-byte directory entry defining an area of free space within a volume. FSE. See free space entry. index block. In an indexed file, an area that contains control \nformation and index entries. These blocks are a multiple of 256 bytes. hardware timer. The timer features available with the Series/l processors. Specifically, the 7840 Timer Feature card or the native timer (4952 only). Only one or the other is supported by the Event Driven Executive. host assembler. The assembler licensed program that executes in a 370 (host) system and produces object output for the Series/I. The source input to the host assembler is coded in Event Driven language or Series/l assembler language. The host assembler 478 SC34-0313 indexed access control block (lACB/ICB). The control block that relates an application program to an indexed data set. indexed access method. An access method for direct or sequential processing of fixed-length records by use of a record's key. indexed data set. A data set specifically created, formatted and used by the Indexed Access Method. An indexed data set may also be called an indexed file. c indexed file. Synonym for indexed o index entry. In an indexed file, a key-pointer pair, where the pointer is be used to locate a lower-level index block or a data block. index register (11, 12). Two words defined in EDl and contained in the task control block for each task. They are used to contain data or for address computation. input buffer. (!) See buffer. In the Multiple Terminal Manager, an area for terminal input and output. (2) input output control block A control block containing information about a terminal such as the symbolic name, size and shape of screen, the size of the forms in a printer. (IDCB). instruction address register (IARl. The pointer that identifies the instruction currently being executed. The Series/! maintains a hardware tAR to determine the Series/! assembler instruction being executed. It is located in the level status block (LSB). interactive. The mode in which a program conducts a continuous dialogue between the user and the system. internal label. An area on tape used to record identifying information (simila~ to the identifying information placed on an external label). Internal labels are checked by the system to ensure that the correct volume is mounted. interrupt information byte c request to or from a terminal. data set. In the Multiple Terminal Manager, a word containing the status of a previous input/output (lIB). job. A collection of related program execution requests presented in the form of job control statements, identified to the jobstream processor by a JOB statement. job control statement. A statement in a job that specifies requests for program execution, program parameters, data set definitions, sequence of execution, and, in general, describes the environment required to execute the program. job strea~ processor. The job processing facility that reads job control statements and processes the requests made by these stataments. The Event Driven EMecutive job stream processor is $JOBUTIl. key. In the Indexed Access Method, one or more consecutive characters in a data record, used to identify the record and establish its order with respect to other records. See also key field. key field. A field, located in the same position in each record of an Indexed Access Method data set, whose content is used for tha key of a record. level status block (LSB). A Series/! hardware data area that contains processor status. library. A set of contiguous records within a volume. It contains a directory, data sets and/or available space. line. A string of characters accepted by the system ~s a single input from a terminal; for example, all characters entered before the carriage return on the teletypewriter or the ENTER key on the display station is pressed. Glossary 479 link edit. The process of resolving symbols in one or more object modules to produce another single module that is the input to the update process. load mods. In the Indexed Access Method, the mode in which r~cords are initially placed in an indexed file. load module. A single modure having cross references resolved and prepared for loading into storage for execution. The module is the output of the $UPDATE or $UPDATEH utility. load point. A reflective marker placed near the beginning of a tape to indicate where the first record is written. lock. In the Indexed Access Method, a method of indicating that a record or block is in use and is not available for another request. LSB. See level status block. membe~. A term used to identify a named portion of a partitioned data set (POS). Sometimes member is also used as a synonym for a data set. See data set. menu. A formatted screen image containing a list of options. The user selects an option to invoke a program. menu-driven. The mode of processing in which input consists of the responses to prompting from an option menu. transaction-oriented applications on a Series/I. It provides the capability to define transactions and manage the programs that support those transactions. It also manages multiple terminals as needed to support these transactions. multivolume file. A data file that, due to its size, requires more than one unit of recording media (such as tape reel or disk pack) to contain the entire file. non-Inbeled tapes. Tapes that do not contain identifying labels (as in standard labeled tapes) and contain only files separated by tapemarks. null character. A user-defined character used to define the unprotected fields of a formatted screen. option selection menu. A full screen display used by the Session Manager to point to other menus or system functions, one of which is to be. selected by the operator. (See primary option menu and secondary option menu.) output buffer. (1) See buffer. (2) In the Multiple Terminal Man- ager, an area used for screen output and to pass data to subsequent transaction programs. overlay. The technique of reusing a single storage area allocated to a program during execution. The storage area can be reused by loading it with overlay programs that have been specified in the PROGRAM statement of the program. multifile volume. A unit of recording media, such as tape reel or disk pack, that contains more than one data file. multiple terminal manager. An Event Driven Executive licensed program that provides support for 480 SC34-0313 overlay area. A storage area within a program reserved for overlay programs specified in the PROGRAM statement. .r: . . . . . .\ \ i \~",f7 parameter selection menu. o A full screen display used by the Session Manager to indicate the parameters to be passed to a program. partition. A contiguous fixed-sized area of storage. Each partition is a separate address space. physical timer. Sy~onym for hardware timer. processor status word (PSW1. A 16-bit register used to (1) record error or exception conditions that may prevent further processing and (2) hold certain flags that aid in error recovery. program. A disk- or diskette-resident collection of one or more tasks defined by a PROGRAM statement; the unit that is loaded into storage. (See primary task and secondary task.) prefind. To locate the data sets or overlay programs to be used by a program and to store the necessary information so that the time required to load the prefound items is reduced. program header. The control block found at the beginning of a program that identifies the primary task, data sets, storage requirements and other resources required by a program. primary-level index block. In an indexed data set, the lowest level index block. It contains the relative block numbers (RBHs) and high keys of several data blocks. See cluster. c program/storage manager. A The program selection screen displayed by the Multiple Terminal Manager. component of the Multiple Terminal Manager that controls the execution and flow of application programs within a single program area and contains the support needed to allow multiple operations and sharing of the program area. primary option protected field. primary menu. m~nu. The first full screen display provided by the Session Manager. primary task. The first task executed by the supervisor when a program is loaded into storage. It is identified by the PROGRAM statement. On a display device, a field in which the operator cannot enter, modify, or erase data from the keyboard. It can contain text that the user can read. PSW. See processor status word. QCB. See queue control block. priority. A combination of hardware interrupt level priority and a software ranking within a level. Both primary and secondary tasks will ex~cute asynchronously within the system according to the priority assigned to them. precess mode. c In the Indexed Access Method, the mode in which records may be retrieved, updated, inserted or deleted. QD. See queue descriptor. QE. See queue element. queue control block (QCB). A data area used to serialize access to resources that cannot be shared. See serially reusable resource. qugue descriptor (QDJ. A control block describing a queue built by the DEFINEQ instruction. Glossary 481 queue element (QE). An entry in the queue defined by the queue descriptor. record. (1) The smallest unit of direct access storage that can be accessed by an application program on a disk or d~skette using READ and WRITE. Records are 256 bytes in length. (2) In the Indexed Access Method, the logical unit that is transferred between $IAM and the user's buffer. The length of the buffer is defined by the user. roll screen. A display screen on which data is displayed 24 lines at a time or data is entered line by line, beginning with line 0 at the top of the screen and continuing through line 23 at the bottom of the screen. When a roll screen device's screen is full Call 24 lines used), an attempt to display the next line results in removal of the old screen (screen is erased) and the new line on line 0 is displayed at the top of the screen. SBlOCB. recovery. The use of backup data to recreate data that has been lost or damaged. reflective marker. A small adhesive marker ettached to the reverse Cnonrecording) surface of a reel of magnetic tape. Normally, two reflective markers are used on each reel of tape. One indicates the beginning of the recording area on the tape JRITE U-216 overview 5-66, U-209 primary commands U-218 program function (PF) keys U-211 scrolling U-210 summary of options and commands U-212 $HCFUTI Host Communications Facility utility C-I07 $IAM Indexed Access Method load module S-155 $1AM task error exit 5-178 488 SC34-0313 $1AMUT1 Indexed Access Method utility 5-148, U-235 $IDEF $EDXA5M instruction definition description 1-241 instruction format 1-226 $1MAGE define screen image utility 5-68, U-250 usage example S-387 $1MDATA subroutine 5-303 usage example 5-375 $1MDEFN subroutine 5-301 usage example 5-375 $1MOPEN subroutine 5-300 usage example 5-374 $1MPROT subroutine 5-302 usage example 5-375 $INDEX subroutine, $EDXA5M 1-233 $1NITD5K initialize or verify volume 5-64, U-256 $INITIAl automatic initialization and restart description 5-129 with session manager 5-209, U-28 $IOTEST test sensor I/O, list configuration 5-67, U-263 $JOBUTIL job stream processor 5-69, U-271 commands U-272 set up procedure U-271 usage example 5-408, U-290 $l load program, operator command internals 1-23 overview 5-63 syntax U-17 $lEM5G $lINK message data set U-401 $LINK linkage editor data set requirements U-400 description U-390 in system generation 1-5 invoking with $JOBUTIl U-405 with $L U-405 with session manager U-406 overview 5-71 usage example 5-402 $lNKCNTL data set 5-118 $LOADER 1-19, 1-22 module description 1-78 $lOG I/O error logging utility description 5-270, U-292 overview 5-67 $lPARSE subroutine 1-240 $MOVEVOl disk volume dump/restore 5-65, U-294 $P patch storage, operator command 5-63, U-18 $PACK/$UNPACK subroutines 5-309 $PD5 partitioned data set utility in a program 5-259 overview 5-65 $PFMAP identify 4978 program function keys 5-68, U-30l $PREFIND prefind data sets and overlays 5-69, U-302 $PRT2780 spooled print utility C-72 $PRT3780 spooled print utility C-72 $RJE2780 remote job entry utility C-73, 5-66 c o c $RJE3780 remote job entry uti!ity C-73, 5-66 $RMU (see Remote Management Uti!ity) $5MCTL session manager program 5-209, 5-212 $SMEND session manager program S-212 $5MJOBR session manager program 5-212 $5MLOG session manager program 5-212 $SMMAIN session manager program 5-210, 5-212, U-28 $SMMLOG, logon menu for session manager 5-212 $5MMPRIM, primary option menu for session manager 5-212, U-27, U-35 $5MM02, program preparation secondary option menu 5-214, U-37 $5MM03, data management secondary option menu 5-215, U-39 $5MM04, terminal utilities secondary option menu 5-215, U-41 $SMM05, graphics utilities secondary option menu 5-216, U-41 $5MM06, execute program utilities secondary option 5-216 $SMM07, job stream processor utilities secondary option 5-216 $SMM08, communications utilities option 5-217, U-43 $5MM09, diagnostic utilities 5-217, U-44 $5TART supervisor entry point 1-279, 1-313 $STOREMAP example 1-27 $5Y5COM data area 1-12, 1-279, 1-313, 5-113 $5Y5LOG system logging device overview 5-110 $SY5LOGA alternate system logging device overview 5-111 $5Y5PRTR system printer overview 5-111 $51A5M 5eries/1 macro assembler description U-372 internals 1-5, 1-253 overview 5-9 storage map, general 1-256 $T set date/time, operator command 5-63, U-19 $TAPEUT1 tape management utility U-311 $TCBCCB (ATTACH) L-59 $TERMUT1 change terminal parameters 5-68, U-334 $TERMUT2 process 4978 image or contro! store 5-68, U-339 restore 4974 image U-339 $TERMUT3 send message to a terminal 5-68, U-344 $TRAP class interrupt trap utility 5-67, U-348 $UNPACK/$PACK subroutines 5-309 $UPDATE object program converter description U-408 in system generation 1-5 overview 5-69 usage example 5-407 $UPDATEH object program converter (host) 5-69, U-418 $VARYOFF set disk, diskette, or tape offline 5-63, U-20 $VARYON set disk, diskette, or tape online 5-63, U-22 with standard labeled tape 5-237 $W display date/time, operator command 5-63, U-25 11 index register 1 L-6 12 index register 2 L-6 A after, $F5EDIT line command U-226 A-conversion L-153 A/I (see analog input) A/O (see analog output) abort task level (5VC abend) 1-49 ACCA terminal C-7, L-295 Access Method, Indexed (see Indexed Access Method) ACTION, Multiple Terminal Manager CALL coding description C-130, L-360 internals M-9 overview C-117, L-29 activate error logging, $LOG utility U-293 realtime data member, RT $DICOMP subcommand U-124 stopped task, GO $DEBUG command U-93 task supervisor execution state 1-43 TRAP function of storage dump, $TRAP utility U-348 AD add member, $DICOMP command U-106 advance, $DICOMP subcommand U-111 advance X,Y (PD5) 5-255 assign define key, $TERMUT2 command U-342 add add member, AD $DICOMP command U-106 null data set on tape volume, TA $TAPEUT1 command U-330 options to the session manager 5-224 support for new I/O terminals 1-117 calling conventions 1-118 code translation tables 1-118 linkage conventions 1-119 terminal instruction modification 1-119 ADD data manipulation instruction coding description L-52 overview l-19 precision table L-53 address relocation translator 1-71, 5-42 addressing indexing feature L-6 Common Index 489 ADDV data manipulation instruction coding description L-54 index register use L-55 overview L-19 precision table L-55 advance, AD $DICOMP subcommand U-1l1 advance and prompting input, terminal I/O L-46 AI (see analog input) AL allocate data member, $DIUTIL command U-151 allocate data set, $DISKUT1 command U-137 allocate data set, $JOBUTIL command U-273 allocate member, $DICOMP command U-I07 allocate data set $JOBUTIL command U-273 AL $DISKUTl command U-137 ALLOCATE function C-214 tape, TA $TAPEUTl command U-333 member $DICOMP command U-I07 $DIUTIL command U-151 $PDS S-261 ALLOCATE function C-216, 1-166, 1-174 allowable precision table L-20 alter member AL $DICOMP command U-107 alter terminal configuration, $TERMUT1 U-334 alternate system logging device ($SYSLOGA) 5-47 alternate tracks S-58, U-73, U-78 ALTIAM Indexed Access Method subroutine S-167 analog input S-49 AI $IOTEST command U-268 control block 1-129 IODEF statement L-187 overview S-49 SBIO instruction L-263 SENSORIO configuration statement L-39 analog output AO $IOTEST command U-264 control block 1-129 description S-49 10DEF statement L-186 SBIO instruction L-264 SENSORIO configuration statement l-39, S-84 AND data manipulation instruction coding description L-57 overview l-19 AO (see analog output) application program automatic initialization and restart S-129 indexed access S-149 introduction L-1 manager C-119 preparation U-351 size estimating S-344 structure L-8 support S-20 ASCII terminals codes S-110 490 SC34-0313 configuring S-96 devices supported C-6, S-14 graphics L-26, S-46 TERMINAL statement examples S-106 A5MERROR, $EDXASM instruction 1-230 assembler (see $EDXASM) (see $S1ASM) (see host assembler) assign alternate for defective 4963 sector, $DASDI utility U-78 DEFINE key in 4978 control store, AD $TERMUT2 command U-341 asynchronous communications control adapter (see ACCA) AT set breakpoints and trace ranges, $DEBUG command U-90 ATTACH task control instruction coding description L-59 internals 1-44 overview L-42, S-34 attention handling, terminal I/O 1-108, L-47, S-63 attention keys, terminal I/O l-47 attention list (see ATTNLIST) ATTN key (see attention handling) ATTNLIST task control statement $ATTASK l-61 coding description L-61 overview L-42, S-30 attribute character, 3101 C-122 autocall option, $LINK U-401 AUTOCALL statement requirement (WXTRN) l-323 automatic application initialization S-13, S-129 application restart S-13, S-129 B before, $F5ED1T line command U-226 backup disk or disk volume on tape, 5T $TAPEUT1 command U-330 backup dump restore utility, $MOVEVOL U-294 base records, indexed data set definition S-149 loading 5-160 basic exchange diskette data set copy utility, $COPY U-59 basic supervisor and emulator (see supervisor/emulator) batch job processing (see $JOBUT1L) BEEP, Multiple Terminal Manager CAll coding description C-137, l-361 internals M-9 overview C-117, L-29 binary synchronous communications automatic retry S-17 BSCAM/BSCAMU module o o o descriptions 1-80 BSClINE configuration statement C-42, S-76 control flow (BSCAM) 1-147 device data block (BSCDDB) 1-133 features C-35, S-16 Host Communications Facility protocol 1-156 instruction formats C-38, 1-144 multipoint operation C-36, S-16 overview 5-16 point-to-point lines 5-16 Remote Management Utility requirements C-208 sample programs C-59 special labels for, description 1-149 system internal design 1-133 test utility, $B5CUT2 C-64 trace printing routine, $B5CUT1 C-62 trace routine, $BSCTRCE C-61 blank screen, $B operator command S-63, U-12 BLANK TERMCTRl function l-288 BlDTXT subroutine, $EDXA5M 1-237 BLINK TERMCTRl function l-288 BlP (see bypass label processing) BOT (beginning-of-tape> l-40 BOTTOM reposition line pointer, $EDIT1/N editor subcommand U-183 boundary requirement, full-word DO l-34 IF l-34 PROGRAM l-225 BP list breakpoints and trace ranges, $DEBUG command U-92 breakpoints and trace setting, AT $DEBUG command U-90 BROWSE display data set, $F5EDIT option U-213 BSC (see binary synchronous communications) BSCAM (see binary synchronous communications> BSCClOSE BSC statement 1-144, 1-148 coding description C-38 BSCDDB binary synchronous device data block description of 1-133 equates 1-291 BSCEQU l-11 BSCIA immediate action routine CBSC) 1-148 BSCIOCB BSC statement C-39, 1-144 BSCl1NE configuration statement C-42, 5-76 BSCOPEN BSC statement C-44, 1-145, 1-148 BSCREAD BSC statement C-45, 1-145, 1-148 BSCWRITE BSC statement C-49, 1-146, 1-148 BSF (backward space file) l-75 BSR (backward space record) l-75 BTE, buffer table entry A-20 BU build data member, $DIUTIl command U-153 buffer table entry definition A-20 description A-31 terminal I/O buffer management 1-109 BUFFER data definition statement . coding description l-65 overview l-17 build data member, BU $DIUTIl command U-153 building an indexed data set U-247 burst output with electronic display screens l-46 bypass label processing U-311 description S-244 C change a key definition, $TERMUT2 command U-342 copy line, $FSEDIT line command U-226 CA cancel assembly, $EDXASM attention request U-358 copy, $COPYUT1 attention request U-64 list option, $FSEDIT attention request U-217 listing, $EDXlIST attention request U-358 CAD COpy all data members, $COPYUT1 command U-64 CAll copy all members, $COPYUT1 command U-64 program control instruction coding description l-68 Indexed Access Method syntax S-146 Multiple Terminal Manager syntax l-359 overview l-32, S-31 program l-68 subroutine l-68 callable routines l-30 CAllFORT program control instruction coding description l-70 overview l-32 cancel $C operator command U-13 assembly, CA $EDXASM attention request U-358 copy, CA $COPYUTI attention request U-64 dump, CA $DUMP command U-165 list option, CA $FSEDIT attention request U-217 listing, CA $EDIT/N attention request U-172 CAP copy all programs, $COPYUT1 command U-64 CC copy block, $FSEDIT line command U-226 CCB equate table 1-292 internals 1-105, 1-119 interprocessor communications C-30 use in terminal I/O support 1-113 Common Index 491 CCBEQU L-l1 CD clear data set, $DISKUT2 command U-144 copy data set, $COPY command U-61 copy data set, $TAPEUTl command U-313 CDATA, Multiple Terminal Manager CALL coding description C-139, L-362 internals M-9 overview L-29 CDRRM equates C-292 CG copy all members (generic) $COPYUTl command U-64 CH change hardcopy device, $BSCUT2 command C-70 change host library, $UPDATEH command U-420 chain, ECB/QCB/TCB I-55 CHAIN supervisor service routine I-54 CHA1ND supervisor service routine I-54 CHAINE supervisor service routine I-54 chaining L-27 CHA1NP supervisor service routine I-54 change address assignment of terminal, RA $TERMUTl command U-336 base address, QUALIFY $DEBUG command U-101 character string, CHANGE $EDIT1/N editor subcommand 1'-184 clo")cter stri ng, change $~~EDIT primary command U-219 execution sequence, GOTO $DEBUG command U-94 graphics or report display profile, $DICOMP utility U-I05 hardcopy device, CH $BSCUT2 command C-70 hardcopy device, RH $TERMUTl command U-338 host library, CH $UPDATEH command U-420 key definition in 4978 control store, C $TERMUT2 U-342 name of logical device, RE $TERMUTl command U-337 output volume, CV $UPDATE command U-409 page formatting parameters of a terminal, CT $TERMUT1 U-335 partition assignment, $CP operator command U-14 realtime data member name RT ($PDS) S-258 tape label support U-322 volume CV $BSCUT1 command C-62 CV $COPYUTl command U-64 CV $DISKUTl command U-137 CV $D1SKUT2 command U-143 CV $UPDATEH command U-418 492 SC34-0313 character constants L-89 character image table U-205 CHGPAN, Multiple Terminal Manager CALL coding description C-135, l-364 internals M-9 overview C-124, L-29 CL clear work data set, $FSEDIT primary command U-221 class interrupt vector table 1-10, 1-277 class interrupts, intercepting, $TRAP utility U-348 clear data set, CD $D1SKUT2 command U-144 screen, $B operator command U-12 CLOSE Host Communications Facility, TP operand C-90 CLSRU (close tape data set) L-75 cluster, indexed data set S-200 CM copy member $COPYUTl command U-64 $DIUTIL command U-155 CMDEQU L-12 CMDSETUP 1-13, 1-67 CNG copy all members (non-generic),$COPYUT1 command U-64 CO command, $RJE2780/$RJE3780 C-76 COBOL execution requirements S-23 link editing 5-71 overview S-7 program preparation requirements S-23 use with Multiple Terminal Manager C-193 code translation new support tables 1-111 terminal I/O layer 2 1-109 code words, task L-8 COLS display columns, $FSEDIT line command U-228 command area, $EDXASM 1-214 command descriptions U-235 COMMAND send to host, $RJE2780/$RJE3780 C-75 command table 1-68, 1-282, 1-301 common data area (see $SYSCOM) common emulator setup routine command table 1-13, 1-282, 1-301 operating conventions 1-67 communication error function 1-166 communications utilities $BSCTRCE C-61 $BSCUT1 C-62 $BSCUT2 C-64 $HFCUT1 C-I07 $PRT2780 C-72 $PRT3780 C-72 $RJE2780 C-73 $RJE3780 C-73 $ Rt'1U C-282 communications utilities (session manager) S-217, U-42 communications vector table 1-11, 1-278, 1-313 compiler (see $EDXA5M) o o C "i ,) completion codes (see return codes) $EDXASM U-436 $IAMUT1 U-437 $JOBUTIl U-439 $lINK U-440 $UPDATE U-443 compress data base, CP $DIUTIl command U-154 library, $COMPRES utility U-57 compressed byte string 5-309 CONCAT graphics instruction coding description l-72 overview l-26 concatenating indexed data sets 5-167 concurrent access l-27 concurrent execution l-42 configuration statements 5-75 configure terminal CT $TERMUT1 command U-335 connecting an indexed data set 5-159 continuation, source program line, $EDXASM U-361 control, device instruction level L-24 control block (see DSCB) control block and parameter tables BSCEQU 1-133, 1-291, L-11 CCBEQU (see also CCB) l-11 CMDEQU (see also emulator command table) l-12 DDBEQU 1-92, 1-308, l-12 DSCBEQU (see also DSCB) l-12 ERRORDEF L-12 FCBEQU A-20, l-12 IA~lEQU l-12 PROGEQU 1-312, l-13 referencing 1-289 TCBEQU (see also TCB) l-13 control block module (ASMOBJ) description 1-76 CONTROL IDCB command L-175 control keys for text editors U-172 control records, $LINK U-396 control statements, program listing l-28 task l-42 terminal I/O forms control l-45 CONTROL tape instruction l-74 conversion algorithm for graphics 1-201 alphameric data l-152 definition EBFLCVT module description 1-80 floating point/binary 1-205 numeric data l-148 program modules by $UPDATE/H U-418 terminal I/O binary/EBCDIC 1-110 CONVTB data formatting instruction coding description L-79 internals 1-207 overview L-18 CONVTD data formatting instruction copy coding description internals 1-207 overview L-18 L-82 block of text, CC $F5ED1T line command U-226 data members, all, CAD $COPYUT1 command U-64 data set, CD $COPY command U-61 data sets with allocation, $COPYUTI utility U-64 line of text, C $F5EDIT line command U-226 member CM $COPYUT1 command U-64 CM $DIUT1L command U-155 members all, CALL $COPYUT1 command U-64 generic, CG $COPYUT1 command U-64 non-generic, CNG $COPYUT1 command U-64 programs, all, CAP $COPYUT1 command U-64 text, $EDIT1/N editor subcommand U-186 volume, CV $COPY command U-62 copy code library, instruction parsing ($EDXASM) 1-222 COpy instruction coding description L-86 overview L-33 Count record C-256 CP compress data base, $DIUTIl command U-154 CR invoke $DISKUT1, $1AMUT1 command U-236 create character image tables, $FONT U-205 source data 'set, $F5ED1T U-214 supervisor for another Series/1 5-132 unique labels, '$SYSNDX ($EDXA5M) 1-242 create indexed data set 5-156 cross partition instructions 1-71 cross partition services 5-286 CSECT list, supervisor Version 1.1 5-347 Version 2 5-357 C5ECT program module sectioning statement coding description l-87 overview L-33 CT change tape drive attributes, $TAPEUTI command U-31S configure terminal, $TERMUTI command U-335 CV change output volume U-409 $UPDATE command U-409 $UPDATEH command U-418 change volume $B5CUTl command C-62 $COPYUT1 command U-64 $DISKUTI command U-137 $DISKUT2 command U-143 copy volume, $COPY command U-S9 Common Index 493 CYCLE coding description C-132, l-365 internals M-9 overview C-116, l-29 cylinder 5-60 cylinder track sector (CTS) U-135 D delete line, $F5EDIT line command U-228 D/I (see digital input) D/O (see digital output) data conversion (see conversion) conversion specifications (see also conversion) l-146 definition statements l-17 files for $S1ASM 1-254 floating-point arithmetic instructions l-20 formatting functions l-18 formatting instructions l-18 integer and logical instructions l-19 length of transmitted, host communications 1-159 management S-45 management system, Indexed Access Method l-27 manipulation instructions l-19 record contents, text editor 1-325 representation l-20 floating-point l-20 integer L-19 terminal input l-45 terminal autput l-45 transfer initialization, terminal I/O support 1-112 transfer rates, Host Communications Facility C-84 transfer ready, (DTR) BSCOPEN 1-148 Data Collection Interactive 5-11 DATA data definition statement coding description L-88 overview L-17 data management utilities $COMPRES 5-64, U-57 $COPY 5-64, U-59 $COPYUT1 5-64, U-64 $DASDI 5-64, U-68 $DI5KUT1 5-64, U-135 $DI5KUT2 5-64, U-142 $DI5KUT3 S-315 $IAMUT1 5-148, U-235 $INITD5K 5-64, U-256 $MOVEVOL 5-65, U-294 $PD5 5-247 $TAPEUTI U-311 session manager 5-215, U-38 data manipulation, vector l-19 data manipulation instructions l-19 Data record C-257 data representation, terminal I/O L-45 data set allocation/deletion 494 5C34-0313 $DI5KUT1 U-137 $DI5KUT3 5-315 $JOBUTIL U-273 $PD5 5-248 session manager U-29 characteristics, HCF C-83 format $F5EDIT U-210 $PD5 5-249 $PRT2780 C-72 $PRT3780 C-72 naming conventions C-82, 5-56 transfer RECEIVE function C-243 SEND function C-247 utilities (see data management utilities) data set naming conventions, Host Communications Facility C-82 data-set-shut-down condition 5-179 date/time display, $W operator command U-25 set, $T operator command U-19 DC data definition statement coding description L-88 overview l-17 DCB EXIO control statement coding description l-91 overview L-24 DCE directory control entry format 1-88 DCI (Data Collection Interactive) 5-11 DD block delete, $F5EDIT line command U-228 DDB disk data block description 1-92 equate table 1-308 DDBEQU L-12 DE delete member $DI5KUT1 command U-137 $DIUTIl command U-156 delete data set, $JOBUTIL command U-274 deadlocks C-238, 5-180 debug $EDXA5M overlay programs 1-248 aids (see also diagnostic aids) 5-18 facility, $DEBUG utility U-82 define horizontal tabs, HTAB $IMAGE command U-252 image dimensions, DIM5 $IMAGE command U-251 indexed data set, DF $IAMUT1 command U-237 null representation, NULL $IMAGE command U-253 vertical tabs, VTAB $IMAGE command U-254 DEFINEQ queue processing statement coding description l-94 overview l-37 definition statements, data l-17 delete data set $JOBUTIl command U-274 DELETE function C-216 tape data set, TA $TAPEUT1 command U-333 () ,/\ \~-) c c' elements, IN $DICOMP command U-I07 member $PD5 5-261 DE $DI5KUTI command U-137 DE $DIUTIL command U-156 text $EDIT1(N) editor subcommand U-188 line, D $F5EDIT line command U-228 with $PREFIND U-305 DELETE function C-216, 1-166, 1-174 DELETE instruction coding description L-329 overview L-27, 5-147 return codes L-330 DEQ task control instruction coding description l-95 internals I-59 overview L-42, 5-33 supervisor function 1-46 DEQB5C dequeue B5C DDB routine 1-149 DEQT terminal I/O instruction coding description L-97 overview L-44, 5-47 DETACH task control instruction coding description L-98 internals 1-45 overview L-42, 5-30 detached, task supervisor execution state 1-43 device busy (EXOPEN) L-129 data block description, EXIO 1-123 instruction level control L-24 interrupt handling, EXIO 1-125 test utility, $IOTE5T U-263 vector table 1-11, 1-278 DF define indexed file, $IAMUT1 command U-237 DI (see digital input) diagnostic aids 5-265 summarized 5-18 utilities $DEBUG U-82 $DUMP U-163 $IOTE5T U-263 $LOG U-292 $TRAP U-348 with session manager 5-217, U-38 digital input $IOTE5T command U-266 digital I/O control block 1-129 direct output,$DICOMP subcommand U-112 direct output to another device ($PDS) S-255 display parameters, $IAMUTI command U-239 external sync, XI $IOTE5T command U-266 IODEF statement L-186 overview S-48 5aIO instruction L-265 5ENSORIO configuration statement S-84 digital output digital I/O control block 1-129 DO $IOTE5T command U-265 external sync, XO $IOTE5T command U-266 IODEF statement L-186 overview 5-48 SBIO instruction L-267 5ENSORIO configuration statement L-84 DIMS define image dimensions, $IMAGE command U-251 direct access common I/O module, DISKIO, description 1-77 direct access storage device organization 5-52 direct output, DI $DICOMP subcommand U-112 directory control entry (DCE) 1-88 entries 5-249 member entry (DME) 1-89 disaster recovery from tape, RT $TAPEUTI command U-326 DISCONN Indexed Access Method CALL coding description L-332 overview L-27, 5-148 return codes L-333 DISCONNECT Multiple Terminal Manager utility C-119, C-159 disconnecting an indexed data set 5-159 DISK configuration statement 5-78 disk/diskette capacity 5-58 data block (DDB) 1-92 fixed-head S-15, 5-61 I/O task 1-95 IPL 5-16, 5-61 primary volume 5-60 resident loading code 1-19 secondary volume s-60 symbolic addressing L-10 utilities $COMPRE5 5-64, U-57 $COPY S-64, U-59 $COPYUT1 S-64, U-64 $DASDI 5-64, U-68 $DISKUTI 5-64, U-135 $DI5KUT2 5-64, U-142 $DISKUT3 5-315 $IAMUTI 5-148, U-235 $INITDSK 5-64, U-256 $MOVEVOL 5-65, U-294 $PDS 5-247 utility functlon table U-49 volume 5-16, 5-52 disk I/O instructions L-22 DISKIO direct access common I/O module description 1-77 display (see also list) character image tables, DI5P $FONT command U-205 contents of storage or registers, LIST $DEBUG command U-95 control member ($PD5) 5-250 control member format ($PDS) S-252 initial data values for image 5-303 processor composer, $DICOMP U-105 Common Index 495 processor interpreter, $DIINTR U-150 processor utility, $DIUTIL U-150 processor utility, general description U-105 profile elements ($PDS) S-252 protected and null fields of an image S-302 report line items ($PDS) S-255 status of all tasks, WHERE $DEBUG command U-102 storage, $D operator command S-63, U-15 time and data, TD ($PDS) S-258 time and date, $W operator command S-63, U-25 utility program set ($PDS) S-248 variable, VA($PDS) 5-254 4978 program function keys, $PFMAP utility U-301 DISPLAY TERMCTRL function L-288 DIVIDE data manipulation instruction coding description L-99 overview L-19 precision table L-100 DME directory member entry format 1-89 updated bySETEOD S-324 DO digital output (see digital output) program sequencing instruction coding description L-I01 overview L-34 double-precision L-19 floating-point arithmetic L-21 integer and logical l-19 DOWN move line poiner, $EDIT1/N editor subcommand U-189 DP dump to printer $DISKUT2 command U-144 $TAPEUT1 command U-317 print trace file, $B5CUTI command C-62 DR draw symbol, $DICOMP subcommand U-112 DR draw symbol ($PDS) S-254 draw line, LI $DICOMP subcommand U-120 line relative LR ($PDS) S-257 symbol, DR $DICOMP subcommand U-112 DS data set identifier, $JOBUTIL command U-275 DSCB data set control block statement coding descri'ption L-I05 equate table, DSCBEQU 1-311 for tape, internals 1-99 internals 1-92 overv i etoJ L-22 DSCBEQU L-12 DSECT (see control block and parameter equate tables) L-11 DSOPEN subroutine description S-322 496 SC34-0313 DSR data set ready in BSCOPEN 1-148 DTR data transfer ready in BSCOPEN 1-148 DU dump on terminal, $DISKUT2 command U-144 dump trace file on terminal, $BSCUT1 command C-62 dump restore volume utility $MOVEVOL U-294 storage partition, DUMP function C-218 to printer $DUMP utility U-163 DP $DISKUT2 command U-143 DP $TAPEUTI command U-317 PR $DICOMP command U-I08 to terminal $DUMP utility U-163 DP $TAPEUTI command U-317 DU $DISKUT2 command U-143 PR $DICOMP command U-I08 trace file on printer, DP $BSCUTI command C-62 trace file on terminal, DU $BSCUT1 command C-62 DUMP function C-218, 1-166, 1-175 D4969, tape device handler module description 1-82 E-conversion (Ew.d) L-150 EBFLCVT, EBDIC to floating-point conversion 1-205 module description 1-80 EC control echo mode, $IAMUT1 command U-240 ECB task control statement coding description L-I07 internals I-55 overview L-42, S-30 with SBIOCB 1-128 EDIT begin editing source data, $EDIT1/N command U-174 create or change data set, $FSEDIT option U-214 enter edit mode, $FONT command U-205 enter edit mode, $IMAGE command U-251 edit data set subroutine examples, text editor 1-326 editor subcommands, $EDITI/N U-182 EDL (see Event Driven Language) compiler ($EDXASM) U-356 instruction format 1-67 interpreter, EDXALU, module description 1-77 operation codes 1-67 EDXALU Event Driven Language interpreter description I~5, 1-77 EDXFLOAT floating-point operations module description 1-79 EDXINIT supervisor initializ~tion control module 1-15 description 1-81 //.1"' ''l\ J \;,l __ ./ ·,/1 ( , ~\ o EDXlIST host listing formatter U-383 EDXSTART supervisor initialization task module description 1-81 EDXSVCX/EDXSVCXU task supervisor addr. trans. support desc 1-5, 1-76 EDXSYS system data tables, description 1-75 EDXTIMER 7840 timer feature card module description 1-80 EDXTIMR2 4952 timer module description 1-80 EDXTIO terminal 1/0 EDXTIO/EDXTIOU module description 1-78 internals 1-105 EJECT listing control statement coding description l-109 overview l-28 eject printer page $E operator command U-16 ELSE program sequencing instruction coding description l-110, L-178 overview l-34 emulator (see supervisor/emulator) emulator command table 1-13, 1-282, 1-301 emulator functional flow 1-69 emulator setup routine 1-67 command table 1-13, 1-282, 1-301 EN end program, $IAMUT1 command U-235 END $lINK control record U-396 option selection, $EDXASM command U-358 option selection, $EDXLIST command U-371 option selection, $SlASM U-378 primary command input, $FSEDIT primary command U-221 task control statement coding description l-111 overview L-42 end display, EP $DICOMP subcommand U-118 end-of-file, indicating with SETEOD S-324 ENDATTN task control instruction coding description l-112 overview L-42, S-30 ENDDO program sequencing instruction coding description L-103, L-113 overview l-34 ENDIF program sequencing instruction coding description L-114, l-178 overview L-34 ENDPROG task control statement coding description l-115 overview l-42, S-30 ENDSEQ Indexed Access Method CALL coding description L-334 overview L-27, S-147 return codes L-335 ENDSPOOl switch spool to print, $RJE2780/$RJE3780 C-75 ENDTASK task control instruction coding description l-116 overview L-42, S-30 ENQ task control instruction coding description L-117 internals 1-60 overview L-42, S-33 supervisor function 1-45 ENQT terminal 1/0 instruction S-293 coding description L-119 overview L-44, S-47 enqueue, task supervisor function (see ENQ) entering and editing source statements' S-66, U-192 entry points, supervisor Version 1.1 S-347 Version 2 S-357 ENTRY program module sectioning statement coding description L-121 overview L-33 EOF (end-of-file) l-74 EOJ end of job, $JOBUTIL command U-276 EOP end of nested procedure, $JOBUTIL command U-276 . EOR data manipUlation instruction coding description L-122 overview L-19 EOT (end-of-tape) L-41 EP end display, $DICOMP subcommand U-118 EQ (equal) L-34 EQU data definition instruction coding description L-124 overview L-17 equate tables $EDXASM compiler common area 1-214 BSCDDB, BSC line control block 1-291 CCB, terminal control block 1-292 DDB, diskldiskette control block 1-308 DDB for sensor 1/0 1-309 DSCB, data set control block 1-311 emulator command table 1-282, 1-301 Indexed Access Method A-19 parameter and control block L-11 program header 1-312 referencing 1-30 supervisor 1-279, 1-313 TCB, task control block 1-314 ERASE terminal lID instruction coding description L-126 overview L-44, S-47 error codes (see return codes) error handling lID error logging S-270 Indexed Access Method error exit S-178 Remote Management Utility C-277 software trace S-265 task error exit S-33, S-268 terminal 1/0 L-44 ERRORDEF L-12 Common Index 497 ERRORS list error option $EDXASM command U-358 $EDXLI5T command U-370 estimating storage (see storage estimating) event control block (see ECB) Event Driven Language (see EDL) EX exercise tape, $TAPEUTl command U-319 EXEC function C-220, 1-166, 1-178 EXEC load and execute program, $JOBUTIL command U-277 execute program EXEC function C-220 PA55THRU function C-225 SHUTDOWN function C-251 utilities (session manager) 5-216 executing, task supervisor execution state 1-43 exercise tape, EX $TAPEUTl command U-319 EXFLIH command start 1-125 EXI0 control instruction coding description L-128 EXI0DDB device data block description 1-123 internals 1-125 overview L-24, 5-51 EXI0CLEN, EXI0 termination module 1-126 EXIODEV configuration statement S-82 EXIOINIT, system initialization 1-125 EXOPEN EXIO control instruction coding description L-129 internals 1-125 interrupt codes L-132 overview L-24 return codes L-131 external sync DI/DO, XI/XO $IOTE5T command U-266 EXTRACT, Indexed Access Method CALL coding description L-336 overview L-26, 5-148 return codes L-337 EXTRN program module sectioning statement coding description L-134 overview L-33 F-conversion (Fw.d) L-149 FADD data manipulation instruction coding description L-135 overview L-19 return codes L-136 FAN, Multiple Terminal Manager CALL coding description C-139, L-366 overview L-31 FCA file control area, Multiple Terminal Manager C-143 FCB file control block for Indexed Access Method definition A-9, A-20 description A-II, A-21, 5-194 498 SC34-0313 location A-20 map provided by FCBEQU 5-155 FCBEQU Indexed Access Method copy code module L-12, 5-155 FDIVD data manipulat·ion instruction coding description L-137 overview L-19 return codes L-138 FETCH Host Communications Facility, TP operand C-92 fetch record ($PD5) 5-261 fetch status, FE $HCFUT1 command C-110 file L-75 backward space file (BSF) L-75 control area (see FCA) control block (see FCB) definition L-40 forward space file (F5F) L-75 manager, Multiple Terminal Nanager M-8 tape control commands L-75 FILEIO, Multiple Terminal Manager CALL coding description C-141, L-367 internals M-9 overview C-118, L-29 FIND editor commands character string, $EDITI/N subcommand U-191 character string, $F5EDIT primary command U-222 program sequencing instruction coding description L-139 overv i etoJ L-34 FINDNOT program sequencing instruction coding description L-141 overview L-34 FIRSTQ queue processing instruction coding description L-143 overview L-37, 5-32 fixed-head devices 5-61 fixed storage area, contents 1-9 floating-point arithmetic instruction equates 1-283, 1-303 arithmetic instructions L-20 binary conversions 1-205 command entries module, NOFLOAT, description 1-79 operations module, EDXFLOAT, description 1-79 return codes L-21 FMULT data manipulation instruction coding description L-144 overview L-19 return codes L-145 format illustrated L-5 instruction (general) L-3 FORMAT data formatting statement 'A' conversion L-153 'E' conversion L-150 'F' conversion L-149 'H' conversion L-152 'I' conversion L-148 coding description L-146 -~ ( ii, _.,.; (~.l -~ I I c o conversion of alphameric data L-153 conversion of numeric data L-148 data conversion specifications L-146 module names L-18 multiple field format L-155 overview L-18 repetitive specification L-155 using multipliers L-155 X-type format l-154 formatted screen images S-300, U-250 formatting instructions, data L-18 forms control burst output with electronic display screens L-46 forms interpretation L-46 output line buffering L-46 parameters, terminal I/O L-44 terminal I/O L-45 FORTRAN IV execution requirements S-24 link editing S-71 overview S-6 program preparation requirements S-24 use with Multiple Terminal Manager C-197 FPCONV data manipulation instruction coding description L-157 overview L-19 free pool in Indexed Access Method L-27 free space definition S-148 estimating S-168 in Indexed Access Method l-27 free space entry 1-90 FREEMA1N storage allocation function 1-25 FSE free space entry 1-90 FSR (forward space record) L-75 FSUB data manipulation instruction coding description L-159 index registers L-160 overvie~.J L-19 return codes L-160 FTAB, Multiple Terminal Manager CALL coding description C-138, L-372 overview C-124, L-31 return codes L-373 full-screen static configuration S-293 full-screen text editor host and native, $FSED1T U-209 full-word boundary requirement DO L-34 IF L-34 PROGRAM L-225 function process overlays 1-162 function process subroutines 1-162, 1-170 new subroutines 1-187 function table 1-164, 1-167 GE (greater than or equal) L-34 general instruction format L-3 generating the supervisor S-115 GENxxx~ macro 1-120 GET Indexed Access Method CALL coding description L-338 overview L-27, S-147 return codes L-340 GETEDIT data formatting instruction coding description L-162 overview L-18 GETMAIN storage allocation instruction 1-25 GETPAR3 1-69 GETSEQ Indexed Access Method CALL coding description L-342 overview L-27, S-147 return codes L-343 GETSTORE TERMCTRL function L-288 GETTIME timing instruction coding description L-167 overview L-50, S-32 GETVAL subroutine, $EDXASM 1-234 GETVALUE terminal I/O instruction coding description L-169 overview L-44, S-47 GIN graphics instruction coding description L-172 overview l-26 global area, $EDXASM 1-224 GLOBAL ATTNLIST L-61 GO activate stopped task, $DEBUG command U-93 GOTO change execution sequence, $DEBUG command U-94 coding sequencing instruction coding description L-173 overview L-34 graphics conversion algorithm 1-201 functions overview l-26 hardware considerations C-6, C-300 instructions l-26 CONCAT L-72 GIN L-172 PLOTGIN l-210 SCREEN l-270 XYPLOT L-324 YTPLOT L-325 requirements L-26 terminals S-46 utilities $DICOMP U-105 $DIINTR U-127 $DIUTIl U-150 session manager S-216, U-40 summarized S-64, U-5 GT (greater than) l-34 Common Index 499 H-conversion L-152 hardcopy function for terminals PF6 1-114, U-7 hardware levels 5-30 HCF (see Host Communications Facility) HDRI tape label 5-239 header labels, tape 5-235 header record Remote Management Utility C-209 header record format, text editor 1-323 HELP list debug commands, $DEBUG command U-94 higher-level index block 5-197 horizontal tabs, defining with $IMAGE U-252 host assembler U-382 Host Communications Facility C-81, 1-153 data set naming conventions C-82 Program Preparation 5ystem/370 1-153, U-382 TPCOM module description 1-81 utility program, $HCUTI C-I07 host program, Remote Management Utility C-205 host system considerations C-83 H05TCOMM configuration statement 5-83 HX display hex words, $DICOMP subcommand U-118 I initialization, $INITD5K command U-257 insert line, $F5EDIT line command U-229 I-conversion (Iw) L-148 I/O device instruction level L-24 I/O error logging data set list utility, $DI5KUT2 U-142 device table 5-276 invoking 5-273, U-292 log control record 5-276 log data set U-292 LOG macro equates 5-278 syntax 5-272 printing the errors 5-275 recording the errors 5-270 tape log entries 5-245 utility, $LOG U-292 I/O functions disk/diskette 1-95, L-22 summarized 5-46 EXIO control 1-123, L-24 summarized 5-51 H05TCOMM configuration statement L-39, 5-83 overview 5-45 sensor 1-127 summarized 5-51 500 5C34-0313 tape L-40, L-75 terminal 5-46 timers L-50, 5-32 I/O instructions disk L-22 diskette L-22 tape L-40 IACB indexed access control block built by connecting data set 5-159 definition A-20 description A-35 location A-14 lAM Indexed Access Method link module 5-155 IAMEQU Indexed Access Method copy code module L-12, 5-155 IDCB EXIO control statement coding description L-175 overview L-24 IDCHECK function C-223, 1-166, 1-177 identification, verify host system C-223 IDCHECK function C-223 remote system C-223 IF program sequence instruction coding description L-177 overview L-34 II insert block, $F5EDIT line command U-231 lIB interrupt information byte, Multiple Terminal Manager C-128 1M insert member $DICOMP subcommand U-118 $PD5 5-257 image dimensions, define, DIM5 $IMAGE command U-251 image store U-205 immediate action routines 1-46 binary synchronous access method 1-149 specifying maximum number 5-88 task supervisor 1-48 immediate data L-4 IN initialize data base, $DIUTIL command U-157 insert or delete elements, $DICOMP command U-I07 INCLUDE $LINK control record U-398 INCLUDE statement requirement (EXTRN) L-134 index block A-20, A-33 overview 5-151 index entry A-12 index record contents, text editor 1-323 index registers floating-point operations using L-21 integer operations using L-19 software introduction L-6 indexed access control block (see IACB/ICB) Indexed Access Method L-26, L-327 $IAM load module 5-155 $IAMUT1 utility U-235 overview 5-148 parameters 5-187 used in data set reorganization 5-166 application program (.) \., c~ C,' . I preparation $JOBUTIL procedure 5-158 link edit control 5-158 CALL instruction syntax L-68, 5""146 CALL processing A-4 ~oding instructions L-327 control block linkages A-15 control flow A-3 data block location calculation A-9 ~evices supported by 5-146 ~iagnostic aids A-I0 I/O requests DELETE L-329, 5-147 DI5CONN L-332, 5-148 END5EQ L-334, 5-147 EXTRACT L-336, 5-148 GET L-338, 5-147 GET5EQ L-341, 5-147 LOAD L-344, 5-147 PROCE55 L-347, 5-147 PUT L-350, 5-147 PUTDE L-352, 5-147 PUTUP L-354, 5-147 RELEA5E L-356, 5-147 lAM link module 5-155 pperation 5-148 ov,rview L-27, 5-145 performance 5-205 program preparation procedure 5 ... 155 record processing A-6 request processing A-5 request verification A-10 storage requirements 5-204 '",d, .~ed.applications, planning and ·,:I.11gn1ng , Qonnecting and disconnecting data sets 5-159 handling errors data-set-shut-down condition 5-179 deadlocks 5-180 error exit facilities 5-178 long-lock-time condition 5-180 system function return codes 5-179 lQading base records 5-160 processing indexed data sets delete 5-165 direct read 5-161 direct update 5-162 extract 5-165 insert 5-146 sequential read 5-162 sequential update 5-146 resource contention 5-181 • ndluced data set I: : base records 5-149 building U-247 concatenating with ALTIAM subroutine 5-167 qQntrol block arrangement A-8 ~reation with $IAMUT1 utility U-236 formatting 5-187 procedure 5-156 df!51gn A-7 d~termining size and format .ij"'24 7 format blocks 5-192 cluster 5-200 data block 5-194 file control block (FCB) 5-151, 5-194 free blocks 5-200 free pool 5-203 free records 5-200 free space 5-184 higher-level index block 5-197 index 5-195 index block 5-194 introduction 5-151 last cluster 5-203 primary-level index block (PIXB) 5-152, 5-195 relative block number (RBN) 5-152 reserve blocks 5-201 reserve index entries 5-202 second-level index block (5IXB) 5-152, 5-197 sequential chaining 5-203 loading and inserting records 5-150 maintenance backup and recovery 5-165 deleting 5-167 dumping 5-167 recovery without backup 5-166 reorganization 5-166 overview 5-148 physical arrangement A-8 preparing the data defining the key 5-166 estimating free space 5-168 selecting the block size 5-167 putting records into 5-149 RBN, relative block number A-7, A-12 record locking 5-146, 5-160 verification A-11 indexed data set, defining U-237 indexed file (see Indexed Access Method) indexing, address feature L-6 initial program load (see also IPL) 1-15 initialization automatic application 5-129 disk (4962) U-68, U-73 disk (4963) U-68, U-78 diskette (4964,4966) U-68 libraries, $INITD5K utility U-256 modules 1-16 nucleus 1-15 Remote Management Utility, internals 1-166, 1-171 tape, $TAPEUT1 utility U-322 task 1-15 initialize data base, IN $DIUTIL command U-157 initializing secondary volumes 5-132 INITMOD5, initialization modules 1-16 INITTA5K, initialization task 1-15 input, terminal I/O L-46 Common Index 501 Input Buffer, Multiple Terminal Manager C-116 contents during 4978/4979/3101 buffer operation C-129 description C-116 input data parsing, description of 1-218 Input Error function 1-166, 1-182 input/output (see I/O) input output control block (see IOCB) INPUT switch to input mode, $EDIT1/N editor subcommand U-192 insert block, II $F5EDIT line command U-231 elements, IN $DICOMP command U-107 line, I $F5EDIT line command U-229 member, 1M $DICOMP subcommand U-118 instruction address register (see IAR) instruction and statements - overview l-15 instruction definition and checking ($EDXA5M) 1-241 instruction format, Event Driven language 1-67, l-3 instruction format, general l-3 instruction operands l-3 integer and logical instructions l-19 interactive program debugging 5-67, U-82 interface routines, supervlsor 1-61 interprocessor communications C-29 interprogram dialogue 5-282 interrupt, from EXIO device 1-125 interrupt information byte (see lIB) interrupt line 5-313 interrupt servicing 1-46, 1-113 INTIME timing instruction coding description l-181 overview l-50, 5-32 introduction to EDl l-1 invoking the loader 1-23 invoking the session manager U-27 invoking the utilities U-47 IOCB terminal I/O instruction coding description l-183 constructing, for formatted screen ($IMDEFN) 5-301 overview l-44, 5-47 structure 5-296 terminal I/O instruction l-183 TERMINAL statement converted to 5-96 IODEF sensor based I/O statement U-364 coding description l-185 overview l-39, 5-51 5PECPI - process interrupt user routine l-189 IOlOADER, function of 1-127 IOlOADER/IOLOADRU sensor based I/O init. module desc. 1-78 lOR data manipulation instruction coding description l-191 overview l-19 502 5C34-0313 IPl automatic application initialization and restart 5-129 messages U-421 date and time U-425 IPl operation U-421 load utility location U-424 sensor I/O status check U-424 storage map generation U-423 tape initialization U-423 volume initialization U-422 procedure U-421 IPlSCRN, Multiple- Terminal Manager C-125 () job U-278 job control statement U-278 JOB job identifier, $JOBUTIL command U-278 job stream processor, $JOBUTIl 5-69, U-27l job stream processor utilities (session manager) S-216 JP jump ($PDS) 5-255 to address, $DICOMP subcommand U-118 JR jump reference, $DICOMP subcommand U-118 JUMP, $JOBUTIL command U-279 jump reference, JR $DICOMP subcommand U-118 jump to address, JP $DICOMP subcommand U-118 key (see program function (PF) keys keyboard and ATTNlI5T tasks, terminal I/O l-47 keyboard define utility for 4978, $TERMUT2 U-339 KEY5 list program function keys $IMAGE command U-253 keyword operand l-5 lA display directory, $DIUTIl command U-158 list all members, $DISKUT1 command U-135, U-136 list terminal assignment, $TERMUT1 command U-336 label l-3 field l-3 syntax description L-4 o c LABEL end jump, $JOBUTIL command U-280 labels, tape (see tape) LABELS subroutine, $EOXASM 1-238 LACTS list all members CTS mode, $DISKUT1 command U-135 language control data set, $EDXASM 1-221, U-357 LASTQ queue processing instruction coding description L-191 overview L-37, S-32 layers, terminal I/O 1-108 LB display characters $OICOMP display character subcommand U-119 $POS S-252 LC load control store, $TERMUT2 command U-342 LO list all hardware devices, $IOTEST command U-269 list data members, $OISKUT1 command U-138 LOCTS list data members CTS mode, $OISKUT1 command U-135 LE (less than or equal) L-34 level status block (see LSB) LEWORK1 work data set for $LINK U-400 LEWORK2 work data set for $LINK U-400 LH display member header, $OIUTIL command U-159 LI draw line $OICOMP subcommand U-120 draw line $POS S-253 load image store, $TERMUT2 command U-342 library definition 5-52 directory, disk or diskette 1-87 origin 5-60 line commands, $FSEDIT U-229 continuation, source statement L-4 editing, $EOIT1/N U-203 pointer reposition (see move line pointer) source line continuation U-361 LINK, Multiple Terminal Manager CALL coding description C-131, L-374 internals M-9 overview C-115, L-29 link edit process, $LINK U-394 autocall option U-393 building an EOX supervisor U-394 combining program modules U-392 control records U-396 elimination of duplication control sections U-393 formatting modules for $UPOATE U-392 input to $LINK U-396 multiple control sections U-392 object module record format U-407 output from $LINK U-403 storage map U-393 link edit program object modules U-390 link module, Indexed Access Method 5-155 linkage editor S-71, U-353 LINKOH, Multiple Terminal Manager CALL coding description C-132, L-376 internals M-9 overview C-115, L-29 list active programs, $A operator command U-l1 breakpoints and trace ranges, BP $OEBUG command U-92 characters, LB $OICOMP subcommand U-119 data members, LO $OISKUT1 command U-138 data members, LOCTS $OISKUT1 command U-135 data set BROWSE $FSEOIT option U-213 LP $OISKUT2 command U-143 LU $OISKUT2 command U-146 status, ST $OIUTIL command U-162 date/time, $W operator command U-25 date/time, TO $OICOMP subcommand U-124 devices, LO $IOTEST command U-269 end, EP $OICOMP subcommand U-117 error specification, ERRORS $EOXASM command U-358 hardware configuration, LO $IOTEST command U-264 insert mask, MASK $FSEOIT line command U-232 member, LM $DISKUTI command U-138 member, PR $OICOMP command U-108 member header, LH $DIUTIL command U-159 members, all LA $DISKUT1 command U-135 LA $DIUTIL command U-158 LACTS $DISKUTI command U-135 processor program, $EOXLIST U-370 program function key codes, $PFMAP utility U-301 program function keys, KEYS $IMAGE command U-253 program members, LP $DISKUTI command U-139 program members, LPCTS $OISKUTl command U-135 status of all tasks, WHERE $DEBUG command U-102 storage, $0 operator command U-15 terminal names/types/addresses, LA $TERMUT1 command U-335 variables, VA $DICOMP Common Index 503 subcommand U-125 volume information, VI $IOTEST command U-270 LIST commands data set LIST $EDITI/N command U-193 LIST $FSEDIT option U-217 display lines of text, $EDIT1/N editor subcommand U-193 display storage or registers, $DEBUG command U-95 lines of text, LIST $EDIT1/N editor command U-176 list device option, $EDXASM command U-358 list device option, $EDXLIST command U-370 obtain full listing, LIST $EDXASM command U-358 print data set, $EDITI/N command U-176 print data set, $FSEDIT option U-217 registers, LIST $DEBUG command U-95 storage, LIST $DEBUG command U-95 listing control functions U-29 listing control instructions EJECT L-109 overview L-28 PRINT L-216 SPACE L-275 TITLE L-308 LISTP list to $SYSPRTR, $DISKUT1 command U-135 LISTT list to terminal, $DISKUTI command U-135 LL list log data set, $DISKUT2 command U-145 LM list member, $DISKUT1 command U-138 LO load indexed file, $IAMUTI command U-241 LOAD Indexed Access Method CALL coding description L-344 connect file S-159 overview L-27, S-146 return codes L-346 task control instruction coding description L-194 internals 1-24 overview L-42 return codes L-199 used with automatic initialization S-129 used with overlays S-40 load mode S-149 load point defined L-40 load program $L operator command 1-23, U-17 automatic initialization S-129 EXEC $JOBUTIL command U-277 loading overlays 1-22 loading programs 1-19 locate data sets and overlay programs, $PREFIND U-302 LOCATE locate requested line number $FSED1T primary comman U-223 504 SC34-0313 location dictionary 1-250 lock locks, block and record A-16 locks, file A-17 record S-146 LOCK TERMCTRL function L-288 LOG I/O error logging macro 5-271 job processor commands, $JOBUTIL command U-281 log data set for I/O errors U-292 logical end-of-file on disk S-324 logical screens S-293 logon menu for session manager S-212, U-27 long-lock-time condition S-180 low storage during IPL 1-16 during program load 1-20 LP list data set on printer, $DISKUT2 command U-144 list program members, $DISKUT1 command U-139 LPCTS list program members CTS mode, $DISKUT1 command U-135 lR draw line relative $DICOMP subcommand U-121 $PDS S-257 LS list space, $DISKUT1 command U-140 list supervisor configuration, $IOTEST command U-270 LSB level status block I-52, U-427 IT (less than) L-34 LU list data set on console, $DISKUT2 command U-146 LV list through volumes, $DISKUTI U-141 M move line, $FSEDIT line command U-233 macro assembler internal overview $S1ASM 1-253 overview S-9 macro library S-6 macro library/host S-5 magazine diskette (see 4966 diskette magazine unit) magnetic tape (see tape) MASK display insert mask, $FSED1T line command U-232 master control block (see MCB) Mathematical and Functional Subroutine Library S-6 MCB master control block $PDS S-260 definition A-20 description A-28 MD move data base, $DIUTIL command U-160 member area S-250 member control block (MCB) S-260 MENU Multiple Terminal Manager CALL coding description C-137, o ;(~~. ,:,~,.J o c c l-377 internals M-9 overview C-116, l-29 return to primary option, $F5EDIT U-223 menu-driven U-2 menus (see option selection menu) (see parameter selection menu) (see primary menu) (see primary option menu) (see secondary option menu) (see session manager, menus) (see transaction selection menu) MENU5CRN, Multiple Terminal Manager C-126 MERGE merge data, $F5EDIT option U-217 message, PRINTEXT instruction L-217 message sending utility, $TERMUT3 U-344 messages U-421 error U-427 $DUMP U-431 $LOG U-432 $RMU U-433 $TRAP U-435 program check U-427 system program check U-429 IPL (see IPL messages) Multiple Terminal Manager C-178 Remote Management Utility C-279 minimum execution system configuration 5-22 minimum program preparation requirements 5-22 mirror image description C-7, 5-109 in TERMINAL configuration statement 5-101 mixed precision combinations L-20 MM move block, $F5EDIT line command U-233 modified data 5-307 modify character image tables U-339 modify character string, CHANGE $EDIT1/N editor subcommand U-184 $F5EDIT primary command U-219 modify default storage allocation, $DI5KUT2 U-149 modifying an existing data set, $F5EDIT U-215 modifying TERMINAL statement for new I/O terminal 1-119 module descriptions -$51A5M 1-269· supervisor 1-75 module names and entry points, supervisor Version 1.1 5-347 Version 2 5-357 move block, MM $F5EDIT line command U-233 line pointer BOTTOM $EDIT1/N editor subcommand U-183 DOWN $EDITI/N editor subcommand U-189 TOP $EDITI/N editor subcommand U-200 UP $EDIT1/N editor subcommand U-201 tape U-324 text $ED1Tl/N editor subcommand U-195 $F5EDIT line command U-233 volumes on disk or diskette, $MOVEVOL utility U-294 MOVE data manipulation instruction coding description L-201 overview L-19 MOVEA data manipulation instruction coding description L-204 overview L-19 MOVEBYTE subroutine, $EDXA5M 1-236 MP move beam, $DICOMP subcommand U-121 move position ($PDS) S-253 MT move tape, $TAPEUT1 command U-324 MTM5TORE file, Multiple Terminal Manager C-120, C-171, M-12 MTM5TR, Multiple Terminal Manager C-169, C-170, M-12 multiple field format L-155 multiple program execution 1-36 multiple program structure S-26 multiple-task programs 1-33 Multiple Terminal Manager accessing the terminal environment block C-139, M-22 application program C-116 application program languages L-30 application program manager C-119, M-4 automatic OPEN/CLOSE C-140, M-8 CAll ACTION C-130, l-360 BEEP C-137, L-361 CDATA C-139, l-362 CHGPAN C-135, l-364 CYCLE C-132, L-365 FAN C-139, L-366 F1LE10 C-141, L-367 FTAB C-138, L-372 LINK C-131, L-374 L1NKON C-132, L-376 MENU C-137, L-377 SETCUR C-137, L-378 SETPAN C-134, L-379 WRITE C-133, L-381 coding instructions L-359 components C-123, M-4 considerations for 3101 terminal C-122 data files C-120 MTMSTORE file C-120, C-171, M-12 PRGRM5 volume C-120, C-173 SCRNS volume C-120, C-173 TERMINAL volume C-120, C-171 Common Index 505 direct file request types . C-144, l-370 disk file support C-140 distribution and installation C-161 dynamic screen modification and creation C-136 file control area C-142 file I/O considerations (Event Driven Executive) C-146 file management C-118, M-8 FIlEIO, disk file support C-140 FIlEIO Indexed Access Method considerations C-148 fixed screen formats C-125 functions (callable routines) C-117, C-124 indexed file request types C-144, l-369 indexed file support C-140, l-367 initialization programs C-119, C-158, M-4, M-6 Input Buffer C-116, C-127 Input Buffer Address C-116 Input Buffer during 4978/4979/3101 buffer operation C-127 interrupt information byte C-128 messages C-178 module list M-4 operation C-115 Output Buffer C~116 Output Buffer Address C-127 Output Buffer during 4978/4979/3101 buffer operation C-128 overview l-29, S-10 program management C-115, M-4 program preparation COBOL C-166 Event Driven language C-164 FORTRAN C-165 Pl/I C-167 programming considerations COBOL C-153 Event Driven language C-151 FORTRAN C-152 Pl/I C-155 return codes (FIlEIO) C-145, L-371 screen definition C-121 screen formats C-125 IPlSCRN C-125 MENUSCRN C-126 SCRN5REP C-126 SIGNONSC C-126 screen panel manager M-7 SIGNON/SIGNOFF C-156 SIGNONFl C-174 storage requirements C-168 swap out data set C-116 system generation considerations C-169 data set requirements C-171, C-175 volume requirements C-169 terminal environment block (TEB) C-128, M-13 TERMINAL file C-124, C-172 terminal manager C-121 506 SC34-0313 terminal/screen management C-117 terminal server C-119, M-7 terminal support C-114, C-126 transaction oriented applications C-121 user application programs C-124 utilities C-159 DISCONNECT turn off specified terminals C-159 programs report C-159 RECONNECT turn on specified terminals C-159 screens report C-160 terminal activity report C-159 work areas, control blocks and tables M-l1 buffer areas M-15,. M-29 common area M-l1, M-25 file table M-15, M-27 MTMSTORE data set M-12 program table M-14, M-21 screen table M-14, M-21 terminal environment block (TEB) M-13, M-22 terminal table M-13, M-21 MULTIPLY data manipulation instruction coding description l-205 overview l-19 precision table l-206 multiprogramming automatic application initialization S-129 design feature S-13 multitasking 1-42 NE (not equal) l-34 newline subroutine, terminal I/O 1-112 NEXTQ queue processing instruction coding description l-207 overview l-37, 5-32 NOFlOAT floating-point command entries module description 1-79 NOlIST no list option, $EDXASM command U-358 NOMSG message suppression, $JOBUTIl command U-282 non-compressed byte string S-309 non-labeled tapes description S-241 layout S-242 processing S-243 NOTE disk/tape I/O instruction coding description l-209 overview l-22 notify of an event (see POST) NQ reset prompt mode, $COPYUT1 command U-64 nucleus initialization 1-15 null character U-253 NUll define null representation $IMAGE command U-253 o o C "i , ( null representationl defining U-253 number representation conversion (see conversion) I """" '" ,j c object data set for $EDXASM U-357 object module record format l $LINK U-407 object text elements, format ofl $EDXASM I-215 OFF (set tape offline) L-75 OFF remove breakpoints and trace rangesl $DEBUG command U-97 OLE operand list elementl $EDXASM format of 1-216 in instruction parsing ($EDXASM) 1-220 used in $IDEF 1-241 online debug aids 5-67 op (operation field) L-3 OPCHECK subroutinel $EDXASM 1-232 opcode table, instruction parsing ($EDXA5M) 1-220, 1-223 open a data set disk or diskette 1-90 tape 1-99 open EXIO device, EXOPEN 1-125 open member ($PDS) S-261 OPENIN Host Communications Facility, TP operand C-93 OPENOUT Host Communications FacilitYI TP operand C-94 operands defined L-3 keyword L-5 parameter naming (Px) L-8 operating conventions, supervisor program 1-67 operating environment S-22 operation codel instruction parsing ($EDXA5M) 1-220 operation codes, Event Driven Language 1-68 operations using index registers L-20 . operator commands 5-63, U-9 operator signals, terminal I/O L-49 option selection menu U-33 optional features support L-15 OTE define object text element $EDXASM instruction 1-227 OUTPUT $LINK control record U-399 Output Buffer, Multiple Terminal Manager C-116, C-128 contents during 4978/4979/3101 buffer operation C-129 definition M-29 overflow L-20 overlay function processor table 1-167, 1-220 overlay program S-40 instructions, $EDXASM 1-259 loading 1-22 locating, $PREFIND U-302 subroutines, $EDXASM 1-231 user 1-38 overlay program execution 1-38 overlay selection, instruction parsing ($EDXASM) 1-223 overlay table 1-167 1 I-220 overview data definition statements L-17 data formatting instructions L-18 data format module names L-18 data manipulation instructions L-19 data representation L-19 mixed-precision operations L-20 operations using index registers L-20 overflow L-20 vector L-19 disk I/O instructions L-22 EXIO control instructions L-24 floating-point arithmetic l-20 floating-point arithmetic instructions l-20 data representation l-21 operations using index registers L-21 return codes L-21 graphics instructions L-26 Indexed Access Method instructions L-27 instructions and statements L-15 integer and logical instructions l-19 listing control statements L-28 Multiple Terminal Manager instructions L-29 program control statements L-32 program module sectioning statements L-33 program sequencing instructions L-34 queue processing l-37 sensor-based I/O statements L-39 single-precision L-19 system configuration statements L-39 tape I/O instructions L-40 task control instructions L-42 terminal I/O instructions L-44 timing instructions L-50 P/I (see process interrupt) PA patch, $DISKUT2 command U-147 page eject 5-63, U-16 parameter equate tables L-11 parameter naming operands in the instruction format L-8 parameter passing, Remote Management Utility C-212 parameter selection menu U-33 parameter tablesl control block and L-l1 Common Index 507 PARM program parameter passing, $JOBUTIL command U-283 parsing, input data ($EDXASM) I-218 partition assignment changing, $CP operator command U-14 partitioned data sets S-247 partitions S-42 PASSTHRU function conducting a session C-227 establishing a session C-225 internals 1-166, 1-179 overview C-225 programming considerations C-237 sample program C-265 types of records C-232 virtual terminals C-239 Passthru record C-209 patch disk/diskette, PA $DISKUT2 command U-147 Remote Management Utility defaults C-283 storage, $P operator command S-63, U-18 storage or registers, PATCH $DEBUG command U-98 PATCH modify storage or registers, $DEBUG, command U-98 PAUSE operator intervention, $JOBUTIL command U-284 PC plot curve $DICOMP subcommand U-119 from plot curve data member ($PDS) S-255 PD pulse DO, $IOTEST command U-265 PF,code TERMCTRL function L-288 PF keys (see program function keys) phase execution and loading, $S1ASM 1-255 PI process interrupt (see process interrupt) U-267 PID program directory S-27 PIXB (see primary-level index block) PL/I execution requirements S-24 link editing S-71 overview S-8 program preparation requirements S-23 supported by Multiple Terminal Manager C-200 Pl plot data, $DICOMP subcommand U-122 plot control block (see PLOTCB) plot curve data member ($PDS) S-251 PLOTCB graphics plot control block L-210 PLOTGIN graphics instruction coding description. l-210 overview L-26 POINT disk/tape instruction coding description l-212 overview L-22, S-54 point-to-point (BSC) S-65 point-to-point vector drawing S-46 POST post an event, $DEBUG command 508 SC34-0313 U-100 task control instruction .. J. coding description L·II~ internals I-58 overview L-42, 5-~4 : supervisor function %~4' power outage, restoring aftar S-129 PR print member, $OICOMP commana U-I08 preC1Slon l-19 floating-point arithmetic l-21 integer and logical L-19 precision combinations, allowed L-20 precision table ADD L-53 ADDV L-54 DIVIDE L-101 ~1UL TIPL Y L-206 overview l-20 SUBTRACT L-284 prafind U-302 PREPARE IDCB command L-175 PRGRMS volume, Multiple TQrmih~i Manager C-120, C-173 primary commands, $FSEDIT U-218 option menu, $FSEDIT U-21J option menu, session manag~~ S-218, U-35 task internals 1-29 overview S-29 volume S-60 primary-level index block description S-195 overview S-151 PRINDATE terminal I/O instruct"" coding description l-21S overview L-44, S-47 timer-related instruction S-33 PRINT listing control statement coding description L-216 overview l-28 print member, PR $DICOMP co~~ahd: U-I08 PRINTEXT terminal I/O instructioH coding description l-217 overview l-44, S-47 return codes l-219 ~. PRINTIME terminal I/O instruct •• ~· coding description l·221 o v e r view l- 4 4, l- 50, S- 41 timer-related instruction S-33 PRINTNUM terminal I/O instruct'Oft coding description l-222 overview l-44, S-47 PRINTOH define terminal name, $RJE2780/$RJE3780 C-75 priority assigned to tasks 5-29 design feature S-13 illustrated S-38 internals 1-31 task l-226, l-286 PROC identify nested procedura, $JOBUTIl command U-286 . procedures, session manager ( ••• session manager) PROCESS Indexed Access Method CALL > o c coding description L-347 overview L-27, S-147 return codes L-349 process interrupt control block (SBIOCB) 1-128 description S-48 IODEF statement L-189 IOTEST command U-267 supported by sensor I/O S-15 user routine (SPECPI) L-189 process mode definition S-150 processing compiler output with $LINK or $UPDATE U-360 processor status word (see PSW) PROGEQU L-13 program equates I-312 assembly/compilation U-352 control L-32 disabling S-102 entry (see $FSEDIT, $EDIT1/N) function (PF) keys L-47 internals 1-108 listing, KEYS $IMAGE command U-253 listing 4978, $PFMAP utility U-301 when using $FONT edit mode U-206 ~hen using $FSEDIT U-211 when using $IMAGE edit mode U-255 when using session manager U-28 header 1-30 identifier, $JOBUTIL command U-287 internal processing 1-30 library update (see $UPDATE) load process, $PREFIND U-302 loading (see also LOAD) 1-19 module sectioning functions L-33 organization S-29 sequencing functions L-34 structure S-29 termination, EXIO 1-126 types 1-32 program check error messages U-427 program execution via Remote Management Utility EXEC function C-220 PASSTHRU function C-225 SHUTDOWN function C-251 PROGRAM identifier, $JOBUTIL command U-287 program preparation $EDXASM 1-211, U-356 $S1ASM 1-253, U-372 host assembler U-382 of Remote Management Utility 1-184 summary S-18 usage example S-367 Program Preparation Facility description S-71 overview S-5 program preparation utilities U-351 program preparation utilities (session manager) OU-36, 5-214 program/storage manager, Multiple Terminal Manager M-4 program structure S-36 internals 1-33 program/task concepts 1-29, S-29 PROGRAM task control instruction coding description L-225 internals 1-30 overview L-42, S-31 PROGSTOP task control statement coding description L-234 overview L-42, S-31 prompting and advance input, terminal I/O L-46 protected field S-307, U-253 protocol, BSC transmission 1-156 P5W processor status word U-430 PU PUNCHO/PUNCHS function, $RJE2780/$RJE3780 reset type C-76 pulse a digital output address, PD $IOTE5T command U-264 PUNCHO/PUNCHS define output file, $RJE2780/$RJE3780 C-75 purpose of EDL L-1 PUT Indexed Access Method CALL coding description l-350 overvi e~... L-27 return codes L-351 PUTDE Indexed Access Method CALL coding description L-352 overview L-27 return codes L-353 PUTEDIT data formatting instruction coding description L-236 overview L-18 return codes L-238 PUTSTORE TERMCTRL function L-288 PUTUP Indexed Access Method CALL coding description L-354 overv i e~o,J L-27 return codes L-355 Px L-8 QCB task control statement S-33 coding description L-240 overview L-42 queue control block 1-45, I-54 QD queue descriptor 1-64, L-37 QE queue entry functions 1-64 overview L-37 processing 5-32 QUALIFY modify base address, $DEBUG command U-101 QUESTION terminal I/O instruction coding description L-242 overview L-44, 5-47 queuable resource 5-33 queue control block (see QCB) queue descriptor (see QD) queue entry (see QE) queue processing 1-64 queue processing instructions L-37 queue processing supp~rt module, QUEUEIO, description 1-81 QUEUEIO queue processing support module description 1-81 Common Index 509 RA reassign address, $TERMUTI command U--336 random access 5-53 random work file operation, $SlASM 1-260 RCB (see Remote Management Utility, control block) RDCURSOR terminal I/O instruction coding description l-244 overview l-44, $-47 RE copy from basic exchange data set, $COPY command U-59 rename, $TERMUTI command U-337 rename member, $DISKUTl command U-135, U-136 rename member, $D!UTIl command U-161 reset parameters, $IAMUTI command U-243 restore 4974 to standard character set, $TERMUT2 U-339 read analog input, AI $IOTEST U-268 character. image table from 4978, GET $FONT U-206 data set into work file $EDITI U-177 $EDITIN U-176 $FSEDIT U-216 digital input, 01 $IOTEST command U-266 digital input using external sync U-266 Host Communications FaCility, TP operand C-95 IDCB command l-175 operations (BSC) 1-157 program, RP command $UPOATE U-410 $UPDATEH U-419 READ instruction disk/diskette return codes l-249, U-455 disk/diskette/tape I/O instruction coding description l-245 overview l-22 tape return codes l-249, U-456 REAODATA read data from host, $HCFUTI command C-I08 READID IOCB command L~115 READOBJ read object module, $HCFUTI command C-I09 REAOTEXT terminal I/O instruction coding description L-251 overview L-44, $-48 . return codes l-255 return codes, virtual terminal communications L-256 ready a task supervisor execution state 1-43 READI IDCB command L-175 READ80 read 80 byte records, $HCFUTI command C-I09 real image ACCA terminals C-7 510 SC34-0313 realtime data member $POS S-251 RT $D1COMP subcommand U-124 RECEIVE function overview C-243 sample program C-262 RECONNECT Multiple Terminal Manager utility C-120, C-159 record blocking, Remote Management Utility C-211 definition S-53 exchange, Remote Management Utility C-208 format for object module, $lINK U-407 header, Remote Management Utility C-209 sizes, Host Communications Facility C-83 reformat diskettes U-68 register, index l-6 register, software l-6 register conventions $SIASM 1-257 BSCAM processing 1-147 common emulator setup routine 1-68 EnCOIC to floating-point conversion 1-205 summary chart $SIASM 1-258 terminal I/O support 1-106 REl release a status record, $HCFUTI command C-I10 relational statements l-180 RELEASE Host Communications Facility, TP operand C-96 Indexed Access Method CALL S-147 coding description l-356 overview L-27, S-147 return codes l-357 release a status record, REl $HCFUTI command C-110 release space ($PDS) S-261 relocating program loader 1-19 relocation dictionary, $EOXASM 1-250 REMARK operator comment, $JOBUT1L command U-288 remote job entry to host, $RJE2780/$RJE3780 C-73 Remote Management Utility CDRRM equates C-292 control block (RCB) description 1-164, 1-169 equate tables C-292, 1-295 use in problem determination 1-190 defaults C-283 error handling C-277 function table 1-164, 1-167 functions C-206, 1-166 installation C-281 interface C-207 internals 1-216 logic flow 1-170 messages C-279 modifying defaults C~283 module descriptions 1-191 module list 1-186 operation C-213 overlay function processor ~ , () c o c O r' 'l table 1-167, 1-220 overlay table 1-167, 1-220 overview C-205 program preparation I-184 requirements C-207 sample host programs C-259 system generation considerations C-281 TERMINAL statement example S-107 terminating C-251 remote system (see Remote Management Utility) C-205 remove breakpoints and trace ranges, OFF $DEBUG command U-97 rename member RE $DISKUTI command U-135, U-136 RE $DIUT1l command U-161 RENUM renumber lines $EDITI/N subcommand U-196 $FSEDIT primary command U-224 reorganize an indexed data set U-242 procedure S-166 report data member ($PDS) 5-251 reposition line pointer (see move line pointer) Request record C-209 reserved labels l-4 reset function, $RJE2780/$RJE3780 attention request C-76 IDCB command L-176 Indexed Access Method ECHO mode, EC $IAMUT1 command U-240 SE command parameters, RE $IAMUTI command U-243 line command, $FSEDIT primary command U-225 RESET task control instruction coding description l-258 overview L-42, 5-31 resident assembler routines 1-256 resolution, enhanced 1-201 resolution, standard graphics 1-201 resource control, supervisor I-54 restart, automatic S-129 restore disk or disk volume from tape, RT $TAPEUTI command U-326 dump volume utility, $MOVEVOl U-294 . 4974 to standard character set, RE $TERMUT2 command U-343 resulting field (EOR) l-122 return codes (see also completion codes) $DISKUT3 S-319, U-444 $PDS U-445 BSC C-57, U-446 CONVTB l-80 CONVTD L-83 data formatting instructions U-447 DELETE l-330 DISCONN l-333 ENDSEQ l-335 EXIO U-448 EXIO instruction L-131 EXIO interrupt L-132 EXTRACT l-337 FADD l-136 FDIVD l-138 FIlEIO C-145 floating point instruction U-450 FMUlT l-145 formatted screen image U-450 FSUB l-160 FTAB C-L38, l-373 GET L-340 GETSEQ l-343 in Remote Management Utility control block 1-190 Indexed Access Method U-451 lOAD l-199, U-452 LOAD (Indexed Access Method) L-346 Multiple Terminal Manager U-453 PRINTEXT l-219 PROCESS L-349 PUT l-351 PUTDE l-353 PUTEDIT l-238 PUTUP l-355 READ disk/diskette l-249, U-455 READ tape l-250, U-456 READTEXT L-255 RELEASE L-357 SBIO U-457 SBI0 instruction l-262 SETPAN C-135 tape L-77 TERMCTRl L-288 terminal I/O l-255, U-458 ACCA U-459 interprocessor communications C-31, U-460 virtual terminal L-256, U-461 TP (Host Communications Facili~y) C-I02, U-463 WHERES l-316 WRITE disk/diskette l-320, U-455 WRITE tape l-320, U-456 return from immediate action routine (SUPEX1T) 1-49 return from task level (SUPRTURNl 1-49 RETURN program control instruction coding description l-259 overview L-32, S-31 supervisor entry point 1-279, 1-313 supervisor interface 1-62 REW (rewind tape) L-75 rewind tape, MT $TAPEUT1 command U-324 RH reassign hardcopy, $TERMUT1 command U-338 RI read transparent/non-transparent, $BSCUT2 commahd C-68 RJE (see Remote Job Entry) RlOADER 1-19, 1-22 RLOADER/RLOADRU module description 1-78 RO reorganize indexed file, $IAMUTI command U-242 ROFF (rewind offline) l-75 Common Index 511 roll screen, terminal I/O l-48, 5-293 RP read program $UPDATE command U-410 $UPDATEH command U-419 RPQ 002038, 4978 display station attachment C-6, 5-97 different device confjgura~ions C-8 RSTATU5 rDCB command l-175 RT activate realtime data member, $DICOM? subcommand U~124 change realtime data member name ($PD5) 5-258 disk or disk volume from tape, $TAPEUTI utility U-326 RWI read/write non-transparent, $BSCUT2 command C-58 RWIV read/write non-tr~nsparent conversational, $B5CUT2 C-71 RWIVX read/write transparent conversational, $BSCUT2 C-70 RWIX read/write transparent, $BSCUT2 command C-67 RWIXMP read/write multidrop transparent, $BSCUT2 command C-60 SA saVe data, $DICOMP subcommand U-124 SAVE data set on disk, $IMAGE command U-254 work data set, $EDITI/N subcommand U-197 save current task status (TASKSAVE) I-54 save data, SA $DICOMP subcommand U-124 save disk Or disk volume on tape, $TAPEUTI utility U-330 save storage and registers, $TRAP utility U-348 SB special PI bit, $IOTEST command U-267 SBAI sensor based I/O support module description 1-80 SBAO sensor based I/O support module description 1-80 SBCOM sensor based I/O support module description 1-80 SBDIDO sensor based I/O support module description 1-80 SBIO sensor based I/O instruction coding description l-260 control block (SBIOCB) 1-127 overview L-39, 5-51 return codes L-262 SBIOCB sensor based I/O control block 1-127 SBPI sensor based I/O support module description 1-80 SC save control store, $TERMUT2 command U-343 screen format builder utility, $IMAGE S-68, U-250 SCREEN graphics instruction coding description L-270 overView L-26 512 5C34-03I3 screen image format building U-250 screen images, retrieving and displaying 5-300 screen management, terminal I/O L-48 SCRN5 volume, Multiple Terminal Manager C-120, C-173 5CRN5REP, Multiple Terminal Manager C-125 scrolling, $F5EDIT U-210 5C5S IDCB command L-176 5E set parameters, $IAMUTI command U-244 SE set status, $HCFUTI command C-II0 second-level index block description 5-197 overview 5-153 secondary disk volumes 5-132 volumes 5-60 secondary option menus S-218, U-36 (see session manager) sectioning of program modules L-33 sector $-52 self-defining terms L-4 send data, HX $DICOMP subcommand U-118 data set, SEND function C-247 message to another terminal, $TERMUT3 utility U-344 SEND function internals 1-166, 1-172 overview C-247 sample program C-274 sensor based I/O assignment L-188 I/O control block (SBIOCB) 1-127 modules (IOLOADER/IOLOADRU) 1-78 statement overview L-39 support module descriptions 1-81 symbolic L-9 SEN50RIO configuration statement 5-51, 5-84 sequence chaining L-27 sequencing instructions, program L-34 sequential access in Indexed Access Method 5-145 overview S-53 sequential work file operations ($51ASM) I-259 serially reusable resource (5RR) I-59, 5-33 session, PA55THRU conducting C-227 establishing C-225 logic flow diagram C-230 using $DEBUG utility C-272 session manager U-27 $5MALLOC data set allocation control data set 5-222. U-30 $5MDELET data set deletion control data set 5-222, U-32 adding an option 5-209, 5-224 communications utilities U-42 communications utilities ;1'----'1\ ~.;Ji) o o o S-217 data management S-215 diagnostic utilities S-217 disk utilities (see data management) execute program utilities 5-216 graphics utilities 5-216 job stream processor utilities S-216 logon menu U-27 primary 5-218, U-35 program preparation utilities S-214 secondary S-218, U-36 summary of S-213 terminal utilities S-215 updating primary option S-224 creating a new menu S-224 data management U-38 data set deletion U-32 data sets creation U-29 diagnostic utilities U-43 execute program utilities U-41 graphics utilities U-40 invoking U-27 invoking a $JOBUTIl procedure S-229 job stream processor utilities U-42 menus U-33 minimum partition size required U-27 operational overview S-209 primary option menu, $SMMPRIM S-218, U-35 procedures communications utilities S-217 data management utilities S-215 diagnostic utilities S-217 execute program utilities S-216 graphics utilities S-216 job stream processor utilities S-216 overview S-220 program preparation utilities S-214 terminal utilities S-215 updating S-225 program function keys U-28 program preparation utilities U-36 secondary option menus S-218, U-36 storage usage S-211 terminal utilities U-40 text editing utilities U-36 utilities not supported U-46 SET,ATTN TERMCTRL function L-288 set breakpoints and trace ranges, AT $DEBUG command U-90 set date and time, $T operator command S-63, U-19 SET Host Communications Facility TP operand C-97 SET,LPI TERMCTRL function l-288 set status, SE $HCFUT1 command C-110 set tape offline, MT $TAPEUT1 command U-324 set time, $T operator command U-19 SETBUSY supervisor busy routine 1-48, 1-63 SETCUR, Multiple Termi~al Manager CALL coding description C-137, L-378 internals M-9 overview C-117, l-29 S ETEOD subrout i ne S-324· SETPAN, Multiple Terminal Manager CALL coding description C-134, L-379 internals M-9 overview C-117, l-29 return codes l-380 setup procedure for $JOBUTIl U-271 SG special PI group, $IOTEST command U-267 SHIFTl data manipulation instruction coding description l-271 overview l-19 5HIFTR data manipulation instruction coding description l-273 overview L-19 SHUTDOWN function C-251, 1-166, 1-181 51 save image store, $TERMUT2 command U-341 SIGNON/SIGNOFF, Multiple Terminal Manager C-156 SIGNONFL C-174 single program execution 1-35 single-task program 1-33 single task program S-34 SIXB (see second-level index block) 5LE sublist element, $EDXASM format of 1-217 in instruction parsi~g ($EDXASM) I-220 instruction description and format I-229 used in $IDEF 1-241 software register l-6 software trace table S-265 sort/merge S-9 source program compiling S-71 source program entry and editing S-66, U-351 source program line continuation using $EDXASM l-4, U-361 source statements, $EDXASM overlay generated 1-243 SP spool function, $RJE2780/$RJE3780 reset type C-76 SPACE listing control statement coding description l-275 overview l-28 special control characters 5-46 special PI bit, SB $IOTEST command U-267 group, SG $IOTEST command U-267 specifications, data conversion L-146 Common Index 513 SPECPI define special process interrupt L-189 SPECPIRT instruction coding description L-276 overview L-39 split screen configuration S-293 SPOOL define spool file, $RJE2780/$RJE3780 C-76 SQ set prompt made, $COPYUTI command U-64 SQRT data manipulation instruction coding description L-277 overview L-19 S5 set program storage parameter, $DI5KUT2 command U-149 ST display data set status, $DIUTIL command U-162 save disk or disk volume on tape, $TAPEUTI command U-330 standard labels, tape EOFI S-240 EOVI S-239 fields S--238 HDRI S-239 header label S-235 layouts S-236 processing 5-236 trailer label S-235 volume label 5-235 VOL1 S-238 START IOCB command L-176 PROGRAM statement operand L-225 start and termination procedure, $OEBUG U-85 STARTPGM 1-16 statemeht label L-4 static screen, terminal I/O accessing example S-297 overview L-48 statu., set, SE $HCFUTI comm~nd C-I10 STATUS data definition statement coding description L-278 overview L-17 status data set, system Host Communications Facility C-85 5tatus record C-258 STIMER timing instruction coding description L-280 overview L-50, 5-32 with PASSTHRU function C-238 storage estimating application program size S-344 supervisor size S-333 utility program size S-342 storage management address relocation translator 1-71, 5-42 allocating 1-25 descriptiOn 5-42 design feature $-13 storage map, resident loader 1-26 storage map ($SIASM) phase to phase 1-262 storage resident loader, RLOADER 1-19 storage usage during program load 1-20 store next record ($PDS) $-261 store record ($PDS) S-261 514 SC34-0313 statement L-180 -. SU submit eX) function, $RJE2780/$RJE3780 reset type C-77 submit job to host, $HCFUT1 command C-111 SUBMIT Host Communications Facility, TP operand C-98 send data stream to host, $RJE2780/$RJE3780 C-77 submit job to host, $EDITI command U-179 submit job to host, $FSEDIT option U-217 SUBMITX send transparent, $RJE2780/$RJE3780 C-77 SUBROUT program control statement coding description L-281 overview L-32, S-31 subroutines $IMDATA S-303 $I~1DEFN S-30 1 $IMOPEN S-300 $IrolPROT S-302 ALTIAM concatenation S-167 DSOPEN S-322 overview S-31 SETEOD S-324 SUBTRACT data manipulation instruction coding description L-283 overview L-19 precision table L-284 suggested utility usage U-48 supervisor/emulator class interrupt vector table 1-10, 1-277 communications vector table 1-11, 1-278, 1-313 control block pointers 1-11 design features S-13 device vector table 1-11, 1-278 emulator command table 1-13, 1-282, 1-301 entry routines 1-47 equate table 1-279, 1-313 exit routines 1-49 features S-13 fixed storage area 1-9 functlons 1-44 calling 1-60 generation 1-5, S-115 initialization control module, EDX1NIT, description 1-81 initialization task module, EDXSTART, description 1-81 interface routines 1-61 introduction 1-5 module names and entry points S-309 module summary 1-8 overview S-29 PASSTHRU session with C-225 referencing storage locations in 1-12 service routines I-53 size, estimating S-333 task supervisor work area 1-13, 1-280 utility functions (see operator commands) string.~relational o o ( 'i f with the address translator support 1-72 SUPEXIT supervisor exit routine 1-49, 1-63 support for optional features L';"15 SUPRTURN supervisor exit routine 1-49 surface analysis of tape, $TAPEUT1 utility U-319 SVC supervisor entry routine 1-47, 1-62 SVCABEND supervisor exit routine 1-49 SVCBUF supervisor request buffer 1-48 SVCI supervisor entry routine 1-48 symbol dictionary, $EDXASM 1-250 symbol table types, $EDXASM 1-216 symbolic L-I0 address (disk,tape) L-10 disk/tape I/O assignments L-I0 diskette L-10 reference to terminals S-110 sensor I/O addresses L-9 terminal I/O L-10 symbols (EXTRN) L-134 symbols (WXTRN) L-323 syntactical coding rules L-4 syntax checking in instruction parsing ($EDXASM) I-221 syntax rules L-4 SYSGEN (see system generation) system alternate logging device S-46, S-111 class interrupt vector table 1-10, 1-277 commands (see operator commands) common area 1-12 communications vector table 1-11, 1-278, 1-313 control blocks, referencing 1-289 data tables, EDXSYS, module description 1-75 device vector table 1-11, 1-278 emulator command table 1-13, 1-282, 1-301 generation procedure S-115 host/remote C-205 logging device S-46, S-110 operational and error messages U-421 printer S-46, $-110 program check and error messages U-427 task supervisor work area 1-13, 1-280 SYSTEM configuration statement L-39, $-86 system configuration statements $-75 system control blocks $-42 system reserved labels L-4 TA allocate tape data set, $TAPEUT1 command U-333 tables, parameter equate L-11 tabs HTAB $IMAGE command U-252 TASSET $EDIT1/N subcommand U-198 VTAB $IMAGE command U-254 TABSET establish tab values $EDIT1/N editor subcommand U-198 tape bypass label processing $-244 control L-74 data set L-40 defining volumes $-62 definitions for data sets L-40 end-of-tape (EOT) L-41 I/O instructions L-40 internals 1-97 labels external $-233 internal $-233 load point (BOT) L-40 non-label layout S-242 processing S-243 support $-241 record L-40 return codes L-77, U-455 standard label fields S-238 layout $-236 processing S-236 support $-235 storage capacity S-59 symbolic addressing L-10 utility, $TAPEUT1 $-233, U-311 volume L-40 TAPE configuration statement $-94 tape data set control block 1-99 tape device data block (see TDB) TAPEINIT, tape initialization module-description 1-82 tapemark L-74 task active/ready level table I-50 concepts 1-29 control 1-42 control block (see TCB) definition and control functions dispatching I-52 error exit facility check and trap handling $-268 linkage conventions $-269 execution states 1-43, S-39 internals 1-42 multiple-task program 1-33, $-34 overview L-42, $-29 priority (see priority, task execution) single-task program 1-33, $-34 states $-39 status display, WHERE $DEBUG command U-102 structure $-29 Common Index 515 superv!sor 1-42 superVlsor address translator support module 1-76 supervisor functions 1-44 supervisor work area 1-13, 1-280 switching I-51, S-30 synchronization and control I-54, S-30 task code words L-8 TASK task control statement coding description L-285 overview L-42, S-31 TASKSAVE supervisor service routine I-54 TCB task control block 1-32, 1-43, 1-49, I-56, 1-314 TCBEQU L-13 TO display line and data ($POS) 5-258 display time and date, $OICOMP subcommand U-124 test display, $DICOMP command U-I08 TOB, tape device data block description 1-97 equate listing 1-316 TEB terminal environment block C-128, M-13 Tektronix C-6 devices supported S-14, 5-45 support for digital I/O 5-312 teleprocessing (see TP) teletypewriter adapter C-7, C-21 TERMCTRL terminal I/O instruction coding description L-288 overview L-44 return codes L-301 TERMERR L-44 terminal #7850 teletypewriter adapter C-21 ACCA support C-7, L-295 ASCII C-7 assignment list, LA $TERMUTI command U-336 attention handling L-47 attention keys L-47 code types C-303 configuration utility, $Tl:RMUTl U-334 connected via digital I/O 5-312 control block (see CCB) data representation L-46 definition and control functions 5-47 device configurations C-8 EDXTIO/EDXTIOU module description 1-78 environment block (see TEB) error handling L~44 forms control L-46 f~rms interpretation for display screens L-46 functions data formatting C-16 definition C-16 interrupt processing C-17 hardware jumpers C-18 I/O L-46 attention handling L-47 data representation L-45 error handling L-44 516 5C34-0313 forms control L-45 prompting and advance input L-46 screen management L-48 I/O internal design 1-105 I/O support layer 3 1-112 input L-46 keyboard and ATTNLI5T tasks L-47 message sending utility, $TERMUT3 U-344 new I/O terminal support 1-117 operations C-14 operator signals L-49 output L-46 output line buffering L-46 program function keys L-47 prompting and advance input L-46 return codes C-20, L-219, L-255, U-458 roll screens L-48 sample terminal support program C-26 screen management L-48 server, Multiple Terminal Manager C-119, M-7 session manager (see session manager) special considerations for attachments of devices via #1610 or #2091 with #2092 adapters C-17 via #2095 with #2096 adapters C-21 special control characters S-46 static screens L-48 supported devices and features C-6 terminal I/O L-47 terminology for supported terminals C-7 transmission protocol C-31 utilities (session manager) S-215, U-40 virtual I/O 1-115 TERMINAL configuration statement defaults 5-105 definition 5-96 overview S-48 TERMINAL volume, Multiple Terminal Manager C-120, C-171 terminate logging, $LOG utility U-292 Remote Management Utility C-251 test BSC lines, $B5CUT2 utility C-64 generated report or graphics profile'member U-108 label types, $TAPEUT1 utility U-319 ' pro~ess interrupt for occurrence of event, $IOTEST U-267 TEXT data definition statement coding description L-305 overview L-17 text editing utilities edit dataset subroutine examples 1-326 full screen-editor $FSEOIT () --~ 'J ( o o o U-209 line editors, $EDITI/N U-169 overview 5-66 work data set, format of 1-321 text wrapping, WRAP function C-254 time/date display, $W operator command U-25 set, $T operator command U-19 set, automatic initialization facility 5-130 time of day GETTIME instruction L-167 TIMEDATE Host Communications Facility, TP operand C-I00 TIMER configuration statement 5-33, 5-112 timer control L-50 timer module descriptions (EDXT1MER, EDXTIMR2) 1-80 timing instructions L-50, 5-32 TITLE listing control statement coding description L-308 overview L-28 TONE TERMCTRL function L-288 TOP repostiton line pointer, $EDITI/N editor subcommand U-200 TP host communication instruction description coding description C-90 internals 1-153 subcommand operations 1-157 TPCOM host communications support module description 1-81 trace printing routine for B5C, $B5CUT1 C-62, 5-65 trace ranges and breakpoints setting, AT $DEBUG command U-90 trace routine for B5C, $B5CTRCE C-61 trace table, software 5-265 transaction program, Multiple Terminal Manager functions L-28 Multiple Terminal Manager C-121 transfer data set to host 5END function C-247 WR $HCFUT1 command C-112 WRITE $EDITI command U-180 WRITE $F5ED1T option U-216 transfer rates for data, Host Communications Facility C-84 transient program loader 1-19 transmission codes 5-98 transmission protocol, host communications 1-156 transmitted data, length of, host communications 1-159 TRAPDUMP force trap dump, $TRAP attention command U-349 TRAP END end $TRAP use, $TRAP attention command U-349 TRAPOFF deactivate error trap, $TRAP attention command U-349 TRAPON activate error trap, $TRAP attention command U-349 UN unload indexed file, $IAMUT1 command U-246 UNBLINK TERMCTRL function L-288 undefined length records, tape 5-245 UNLOCK TERMCTRL function L-288 unprotected field 5-307, U-253 UP move line pointer, $EDIT1/N editor subcommand U-201 update utility $UPDATE convert object program to disk U-408 $UPDATEH convert host object program to disk U-418 updating a menu for the session manager 5-224 user defined data member ($PD5) 5-252 user exit routine L-310 requires Macro Assembler $-71 user initialization modules 1-17 USER program control instruction coding description L-310 overview L-32 utilities U-47 B5C communications C-61 invoking U-2 listed by type S-64, U-3 overview 5-5 utilities not supported by session manager menu U-46 utility program size 5-342 utility usage U-48 V verify, $INITD5K command VA U-260 display, variable, $DICOMP subcommand U-125 display variable ($PD5) 5-254 variable length record, Host Communications Facility C-84 variable length records, tape 5-244 variable names L-4 vary disk, diskette, or tape offline, $VARYOFF U-20 vary disk, diskette, or tape online, $VARYON U-22 vector addition L-19, L-54 data manipulation L-19 vector addition (ADDV) coding description L-54 overview L-19 verify disk or diskette data set, V $IN1TD5K U-260 tape executing correctly, EX $TAPEUT1 command U-319 tape surface free of defects, EX $TAPEUT1 command U-319 verify and initialize disk or diskette library, $INITDSK U-256 verify identification host system C-223 remote system C-223 Common Index 517 VERIFY verify changes, $EOITI/N editor subcommand U-202 vertical tabs, defining U-254 VI list volume information, $IOTEST command U-270 virtual terminal communications accessing the virtual terminal S-281 creating a virtual channel S-280 establishing the connection S-280 inter-program dialogue 5-282 internals 1-115 loading from a virtual terminal S-281 Remote Management utility requirements C-281 volume definitions (disk/diskette) L-22, S-52 dump restore utility, $t10V EVO L U-294 labels S-60 VTAB define vertical tab setting, $IMAGE command U-254 WAIT program sequencing statement coding description L-313 overview L-42, S-31 supervisor function 1-45, I-58 wait state, put program in, WS $IOTEST command U-264 waiting, task execution state 1-43 WE copy to basic exchange diskette data set, $COPY command U-63 WHERE display status of all tasks, $DEBUG command U-I02 WHERES task control function coding description l-315 overview L-42, S-287 return codes L-316 WI write non-transparent, $BSCUT2 command C-69 WIX write transparent, $B5CUT2 command C-69 word boundary requirement DO L-34 IF L-34 PROGRAM L-225 work data set $EDXA5M 1-249 $LINK U-400 $SlASM 1-258 work files, $SIASM, how used 1-258 WR write a data set to host, $HCFUTI command C-112 WRAP function C-254, 1-166, 1-176 WRITE disk/diskette I/O instruction coding description L-317 overview L-22 return codes L-320, U-455 Host Communications Facility, TP operand C-I0l IDCB command L-175 Multiple Terminal Manager 518 5C34-0313 CALL coding description C-133, L-381 internals M-9 overview C-118, L-29 save work data set $EDITI command U-180 $EDITIN command U-181 $FSEDIT primary option U-216 tape I/O instruction coding description L-317 overview L-22 return codes L-320, U-456 write data set to host, WR $HCFUTI command C-112 write operations, HCF 1-156 WRITEI IDCB command L-175 WS put program in wait state, $IOTEST command U-264 WTM (write tape mark) L-75 WXTRN program module sectioning statement coding description L-323 overview L-33 o X-type format L-154 XI external sync 01, $IOTEST command U-266 XO external sync DO, $IOTEST command U-266 XYPLOT graphics instruction coding description L-324 overview L-26 YTPLOT graphics instruction coding descrition L-325 'overv i ew L-26 ZCOR, sensor I/O L-189 Nu~er;c Subjects 1560 integrated digital input/output non-isolated feature C-6 different device configurations C-8 use with different terminals C-7 1610 asynchronous communications single line controller C-6 considerations for attachment of devices C-17 different Qevice configurations C-8 for interprocessor communications C-29 to a single line controller S-99 use with different terminals C-7 2091 asynchronous communications eight line controller C-6, S-99 considerations for attachment of devices C-17 different device configurations C-8 use with different terminals o o o c C-7 2092 asynchronous communications four line adapter C-6 considerations for attachment of devices C-17 different device configurations C-8 to attach ACCA terminal S-99 use with different terminals C-7 2095 feature programmable eight line controller C-6 considerations for attachment of devices C-21 different device configurations C-8 use with different terminals C-7 2096 feature programmable four line adapter C-6 considerations for attachment of devices C-21 different device configurations C-8 use with different terminals C-7 2741 Communications Terminal supported S-45 TERMINAL statement example S-106 3101 Display Terminal attribute character C-122 block mode considerations C-25 character mode considerations C-22 interface with Multiple Terminal Manager C-121, L-29 TERMINAL configuration stateme~t examples 5-108 3585 4979 display station attachment C-6, 5-97 4952 Processor partitions on S-42 timer feature installed on S-32 4953 Processor partitions on 5-42 timer feature installed on S-32 4955 Processor partitions on S-42 timer feature installed on 5-32 4962 Disk Storage Unit storage capacity S-58 supported by Indexed Access Method S-146 4963 Disk Subsystem storage capacity S-58 supported by Indexed Access Method S-146 4964 Diskette Storage Unit part of minimum system configuration S-22 required for program preparation S-22 supported by Indexed Access Method S-146 4966 Diskette Magazine Unit part of minimum system configuration 5-22 required for program preparation S-22 supported by Indexed Access Method S-146 4969 Magnetic Tape Subsystem S-233 4973 Line Printer defined in TERMINAL configuration statement 5-96 end of forms S-307 TERMINAL statement example S-105 4974 Matrix Printer defined in TERMINAL configuration statement S-96 end of forms S-307 restore to standard character set, RE $TERMUT2 U-339 TERMINAL statement example S-105 4978 Display Station defined in TERMINAL configuration statement S-96 part of minimum system configuration 5-22 reading modified data S-307 required for program preparation 5-22 TERMINAL statement example S-105 4979 Display Station defined in TERMINAL configuration statement S-96 part of minimum system configuration 5-22 required for program preparation S-23 TERMINAL statement example 5-105 4982 sensor I/O unit S-84 5230 Data Collection Interactive S-11 5620 4974 matrix printer attachment C-6 defined in TERMINAL statement S-97 different device configurations C-8 5630 4973 line printer attachment C-6 defined in TERMINAL statement S-97 5719-AM3 (see Indexed Access Method) 5719-A5A (see Macro Assembler) 5719-CB3 (see COBOL) 5719-CB4 (see COBOL) 5719-F02 (see FORTRAN IV) 5719-LM3 (see Mathematical/Functional Subroutine Library) 5719-LM5 (see Macro Library) 5719-M51 (see Multiple Terminal Manager) 5719-SM2 (see Sort/Merge) 5719-UT3 (see Utilities) 5719-UT4 (see Utilities) 5719-X51 (see Basic Supervisor and Emulator) 5719-XX2 (see Program Preparation Facility) 5740-LM2 (see Macro library/Host) 5799-TDE (see Data Collection Interactive) 7850 teletypewriter adapter C-6, C-21 Common Index 519 c 520 SC34-0313 READER'S COMMENT FORM SC34-0313-2 C, l! IBM Series/1 Event Driven Executive Utilities, Operator Commands, Program Preparation, Messages and Codes " Your comments assist us in improving the usefulness of our publications; they are an important part of the input used in preparing updates to the publications. I BM may use and distribute any of the information you supply in any way it believes appropriate without incurring any obligation whatever. You may, of course, continue to use the information you supply. Please do not use this form for technical questions about the system or for requests for additional publ ications; this only delays the response. Instead, direct your inquiries or requests to your I BM representative or the I BM branch office serving your locality. Corrections or cI arifications needed: Page Comment (") c: .-+ ...o "a: » o ( '"'" ---'" II ~j 0' :::s Ie r5' (1) Please indicate your name and address in the space below if you wish a reply. Thank you for your cooperation. No postage stamp necessary if mailed in the U.S.A. (Elsewhere, an I BM office or representative will be happy to forward your comments.) Reader's Comment Form (') S Fold and tape Please Do Not Staple Fold and tape 111111 NO POSTAGE NECESSARY IF MAILED IN THE UNITED STATES BUSINESS REPLY MAIL FIRST CLASS PERMIT NO. 40 ARMONK, NEW YORK / POSTAGE WILL BE PAID BY ADDRESSEE I BM Corporation Systems Publications, Dept 27T P.O. Box 1328 Boca Raton, Florida 33432 -----------------------------Fold and tape Please Do Not Staple Fold and tape ----- ----- --- -- ---------- ----- ® International Business Machines Corporation General Systems Division 4111 Northside Parkway N. W. P.O. Box 2150, Atlanta, Georgia 30301 (U.S.A. only) General Business Group/International 44 South Broadway White Plains, New York 10601 (I nternational) c SC34-0313-2 Printed in U.S.A. READER'S COMMENT FORM o SC34-0313-2 IBM Series/1 Event Driven Executive Utilities, Operator Commands, Program Preparation, Messages and Codes Your comments assist us in improving the usefulness of our publications; they are an important part of the input used in preparing updates to the publications. I BM may use and distribute any of the information you supply in any way it believes appropriate without incurring any obligation whatever. You may, of course, continue to use the information you supply. Please do not use this form for technical questions about the system or for requests for additional publications; this only delays the response. I nstead, direct your inquiries or requests to your I BM representative or the I BM branch office serving your locality. Corrections or clarifications needed: Page Comment Please indicate your name and address in the space below if you wish a reply. C ·~\ ,) Thank you for your cooperation. No postage stamp necessary if mailed in the U.S.A. (Elsewhere, an IBM office or representative will be happy to forward your comments.) Reader's Comment Form o Fold and tape Please Do Not Staple Fold and tape II "I NO POSTAGE NECESSARY IFMAILED IN THE UNITED STATES BUSINESS REPLY MAl L FIRSTCLASS PERMIT NO. 40 ARMONK, NEW YORK POSTAGE WILL BE PAID BY ADDRESSEE I BM Corporation Systems Pu bl ications, Dept 27T P.O. Box 1328 Boca Raton, Florida 33432 Fold and tape Please Do Not Staple Fold and tape --- -----------_.- ----- ----- ® International Business Machines Corporation General Systems Division 4111 Northside Parkway N.W. P.O. Box 2150, Atlanta, Georgia 30301 (U.S.A. only) General Business Group/International 44 South Broadway White Plains, New York 10601 (International) SC34-0313- 2 Printed in U.S.A. I ------- ------- - --_ .- ----- International Business Machines Corporation General Systems Division 4111 Northside Parkway N.W. P. O. Box 2150 Atlanta, Georgia 30301 (U.S.A. only) General Business Group/International 44 South Broadway White Plains, New York 10601 (International) SC34-0313-2 Printed in U.S.A.
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 : 2013:01:03 08:53:55-08:00 Modify Date : 2013:01:03 12:53:02-08:00 Metadata Date : 2013:01:03 12:53:02-08:00 Producer : Adobe Acrobat 9.52 Paper Capture Plug-in Format : application/pdf Document ID : uuid:aeb65149-d3b7-40c1-a811-d5f044ed5134 Instance ID : uuid:ff65074c-564e-4e74-b1fa-c970ac315b11 Page Layout : SinglePage Page Mode : UseNone Page Count : 542EXIF Metadata provided by EXIF.tools