*DECK,ITU 
***  ITU - INTELLIGENT SMALL MAGNETIC TAPE SUBSYSTEM UTILITY ROUTINE
***  1.0  IDENTIFICATION
**
* 
*    1.1  PROGRAM NAME
* 
*         ITU - INTELLIGENT  SMALL  MAGNETIC  TAPE  SUBSYSTEM   UTILITY 
*         ROUTINE 
* 
*    1.2  AUTHORS 
* 
*         R.  F.  FELLRATH    APRIL 9, 1984 
* 
*    1.3  AUTHORS OF MODIFICATIONS
* 
*         R.  F.  FELLRATH    JUNE 26, 1984 
* 
*         BILL DISANTO    NOVEMBER 18, 1985 
* 
*    1.4  COPYRIGHT 
* 
*                     COPYRIGHT CONTROL DATA 1984 
*                          ALL RIGHTS RESERVED
* 
*         CONTAINED HEREIN ARE SOFTWARE PRODUCTS COPYRIGHTED
*         BY CONTROL DATA CORPORATION.  REPRODUCTION WITHOUT
*         PERMISSION IS PROHIBITED.  THE COPYRIGHT NOTICE MUST
*         APPEAR ON ALL AUTHORIZED COMPLETE OR PARTIAL COPIES.
* 
* 
***  2.0  INTRODUCTION
**
*    2.1  OVERVIEW
* 
*         THE  ITU MALET UTILITY IS DESIGNED TO SUPPORT THE INTELLIGENT 
*         SMALL MAGNETIC TAPE SUBSYSTEM (IMST).  THE UTILITY CAN INVOKE 
*         THE  ADAPTOR  DIAGNOSTIC,  TEST  THE  DATA  PATHS BETWEEN THE 
*         ADAPTOR MEMORY AND THE PP, AND THE DATA PATHS IN THE ADAPTOR. 
*         THE  ITU  UTILITY  CAN  ALSO  TEST THE DATA PATHS BETWEEN THE 
*         ADAPTOR AND STREAMING TAPE UNIT  (STU)  AND  INVOKE  THE  STU 
*         DIAGNOSTICS.
* 
*    2.2  CHARACTERISTICS 
* 
*         1. PROGRAM NAME ..................... ITU 
*         2. TEST/DIAGNOSTIC/UTILITY/SYSTEM ... UTILITY 
*         3. BINARY LENGTH .................... 13,480 12 BIT WORDS 
*         4. TYPE OF CODE ..................... 12 BIT PP 
*         5. RUN TIME (DEFAULT) ............... NA
*         6. LEVEL OF ISOLATION ............... DETECTION 
*         7. ON-LINE/OFF-LINE/BOTH ............ BOTH
*         8. ON-LINE SYSTEM ................... NOS 
*         9. OFF-LINE SYSTEM .................. CMSE
*        10. PROGRAM LANGUAGE ................. MALET 
* 
*    2.3  FEATURES
* 
*         ITU  RELIES ON THE DIAGNOSTICS IN THE ADAPTOR CONTROLWARE AND 
*         STU CONTROL STORAGE FOR ERROR DETECTION.  ITU DOES  TEST  THE 
*         DATA  PATHS  IN  THE  ADAPTOR  AND THE DATA PATHS BETWEEN THE 
*         ADAPTOR AND STU.
* 
*         ITU00 -   PROVIDED IN ORDER TO SUPPORT  THE  RUNNING  OF  ITU 
*                   USING DEMOT IN AN OFF-LINE ENVIRONMENT. 
* 
*         ITU01 -   PROVIDES  THE  USER  WITH THE ABILITY TO INVOKE THE 
*                   DIAGNOSTICS IN THE ISMT ADAPTOR.
* 
*         ITU03 -   PROVIDES THE USER WITH  THE  ABILITY  TO  TEST  THE 
*                   WRITE  AND  READ  MEMORY  DATA  PATHS  IN  THE ISMT 
*                   ADAPTOR.
* 
*         ITU05 -   PROVIDES THE USER WITH THE ABILITY TO TEST THE READ 
*                   DATA PATH TO MEMORY IN THE ISMT ADAPTOR.
* 
*         ITU07 -   PROVIDES  THE  USER  WITH  THE  ABILITY TO TEST THE 
*                   WRITE DATA PATH TO MEMORY IN THE ISMT ADAPTOR.
* 
*         ITU09 -   PROVIDES THE USER WITH  THE  ABILITY  TO  TEST  THE 
*                   WRITE  AND  READ  DATA  PATHS TO MEMORY IN THE ISMT 
*                   ADAPTOR.
* 
*         ITU11 -   PROVIDES THE USER WITH  THE  ABILITY  TO  TEST  THE 
*                   WRITE  AND  READ DATA PATHS IN THE ISMT ADAPTOR AND 
*                   THE CABLE TO/FROM THE STU AND THE STU INTERFACE.
* 
*         ITU13 -   PROVIDES THE USER WITH THE ABILITY  TO  INVOKE  THE 
*                   DIAGNOSTICS CONTAINED IN THE CONTROL STORAGE OF THE 
*                   STU.
* 
*         ITU14 -   PROVIDES TESTING TO ENSURE DEAD MAN 
*                   TIMER FUNCTIONS PROPERLY FOR THE ISMT.
* 
*         ITU21 -   PROVIDES AUTODUMPING OF ADAPTER MEMORY. 
* 
*         *** WARNING *** SOME OF THE DIAGNOSTICS IN THE STREAMING TAPE 
*                         UNIT RUN UNTIL THE RESET SWITCH IS  DEPRESSED 
*                         ON  THE STU OPERATOR PANEL.  THE ISMT ADAPTOR 
*                         WILL NOT RESPOND  CORRECTLY  UNTIL  A  MASTER 
*                         CLEAR  IS  ISSUED  OR THE RESET SWITCH ON THE 
*                         STU IS DEPRESSED. THE MODULES DO NOT ISSUE  A 
*                         MASTER CLEAR ON A  RUN  BUT WILL IF A *GO* IS 
*                         ISSUED AFTER  A  FUNCTION  REJECT  AND  ERROR 
*                         STOP. 
* 
*    2.4  HARDWARE REQUIREMENTS 
* 
*          ITU REQUIRES THAT AN ISMT ADAPTOR AND AN STU BE CONNECTED
*          TO A 16 BIT I/O CHANNEL ON A CYBER 810 OR 830. 
* 
*    2.5  RESTRICTIONS
* 
*         ITU ASSUMES THAT THE MB465-D CONTROLWARE HAS BEEN LOADED INTO 
*         THE ADAPTOR AND THAT IT IS OPERATIONAL. 
* 
*         THE UTILITY ROUTINE ITU REQUIRES AN ACCESS LEVEL OF 10, WHICH 
*         MEANS THAT THE ISMT ADAPTOR AND STU MUST BE DEDICATED.
* 
*         MODULES ITU11 AND ITU13 REQUIRE THE USE OF A  STREAMING  TAPE 
*         UNIT  CONNECTED TO THE ADAPTOR.  MODULE ITU11 REQUIRES THAT A 
*         TAPE BE MOUNTED AND THAT THE STU IS ON-LINE (READY).
* 
*         SOME OF THE DIAGNOSTICS IN THE STREAMING TAPE UNIT RUN  UNTIL 
*         THE  RESET  SWITCH  IS  DEPRESSED ON  THE STU OPERATOR PANEL. 
*         THE ISMT ADAPTOR WILL NOT RESPOND CORRECTLY  UNTIL  A  MASTER 
*         CLEAR IS ISSUED OR THE RESET SWITCH ON THE STU IS DEPRESSED.
* 
***  3.0  APPLICABLE DOCUMENTS
**
*         CML 3.1 REFERENCE MANUAL               PUB. NO. 60455980
*         DEMOT REFERENCE MANUAL                 PUB. NO. 60456310
*         MALET REFERENCE MANUAL                 PUB. NO. 60456020
*         ISMT ADAPTOR ENGINEERING SPEC.              NO. 53318141
*         ISMT CONTROLWARE ERS                        NO. 53371028
*         STREAMING TAPE UNIT PRODUCT SPEC.           NO. 49793200
* 
***  4.0  DESIGN OVERVIEW 
**
*    4.1  MODULES OVERVIEW
* 
*         THE ITU UTILITY IS DIVIDED INTO TWO PARTS  AS  DETERMINED  BY 
*         THE HARDWARE REQUIREMENTS OF THE MODULES.  THE MODULES IN THE 
*         FIRST PART OF THE ITU UTILITY REQUIRE ONLY THE ISMT  ADAPTOR. 
*         THE MODULES IN THE SECOND PART OF THE ITU UTILITY REQUIRE THE 
*         ISMT ADAPTOR AND THE STU. 
* 
*         THE FOLLOWING MODULES REQUIRE ONLY THE ISMT ADAPTOR HARDWARE. 
* 
*                                                ACCESS    RUN
*         MODULE    DESCRIPTION                  LEVEL     TIME 
*         ------    -----------                  ------    ---- 
*         ITU00     DUMMY PARAMETER MODULE         10      1 SEC. 
*         ITU01     ISMT DIAGNOSTIC TEST           10      2 SEC. 
*         ITU03     WRITE/READ MEMORY TEST         10      1 SEC. 
*         ITU05     READ DATA PATH TEST            10      6 SEC. 
*         ITU07     WRITE DATA PATH TEST           10      1 SEC. 
*         ITU09     WR/RD DATA PATH TEST           10      6 SEC. 
*         ITU14     DEAD MAN TIMER TEST            21      15 SEC.
*         ITU21     AUTODUMP ADAPTER MEMORY        10      - SEC. 
* 
*         NOTE - THE  RUN  TIME  FOR  MODULE  ITU21  IS DEPENDENT ON THE
*                NUMBER OF BLOCKS OF ADAPTER MEMORY DUMPED. 
* 
* 
*         THE  FOLLOWING  MODULES REQUIRE THE ISMT ADAPTOR HARDWARE AND 
*         THE STU HARDWARE.  MODULE  ITU11  REQUIRES  THAT  A  TAPE  BE 
*         MOUNTED AND THAT THE STU IS ON-LINE (READY).
* 
*                                                ACCESS    RUN
*         MODULE    DESCRIPTION                  LEVEL     TIME 
*         ------    -----------                  ------    ---- 
*         ITU11     LOOP WRITE/READ TEST           10      3 SEC. 
*         ITU13     STU DIAGNOSTIC TEST            10      - SEC. 
* 
*         NOTE  - THE RUN TIME FOR MODULE ITU13 IS DEPENDENT ON THE STU 
*                TEST SELECTED AND LENGTH OF TAPE IF  ONE  IS  REQUIRED 
*                (MILLISECONDS TO MINUTES). 
* 
*    4.2  EXECUTION SEQUENCE
* 
*         NONE  OF THE MODULES IN THE ITU UTILITY ROUTINE ARE DEPENDENT 
*         ON DATA WRITTEN ON THE MEDIA BY ANOTHER ITU MODULE. 
* 
***  5.0  PARAMETERS
**
*    5.1  PARAMETER REGISTER DEFINITIONS
* 
*         ALL PARAMETER VALUES ARE OCTAL. 
* 
*         P0=0XXX - STREAMING TAPE UNIT (STU) DIAGNOSTIC  TEST  NUMBER. 
*                   SEE   THE  STU  FIELD  SERVICE  MANUAL  LEGAL  TEST 
*                   NUMBERS.  THE STU ASSUMES THAT THE TEST NUMBER IS A 
*                   HEXADECIMAL NUMBER. 
*         P1=000X - STREAMING  TAPE  UNIT  (STU) DIAGNOSTIC TEST OPTION 
*                   FOR  THE  DIAGNOSTIC  TEST   NUMBER   SELECTED   IN 
*                   PARAMETER  WORD  P0.   SEE  THE  STU  FIELD SERVICE 
*                   MANUAL FOR LEGAL TEST OPTIONS  FOR  THE  DIAGNOSTIC 
*                   TEST  SELECTED.   THE  STU  ASSUMES  THAT  THE TEST 
*                   OPTION NUMBER IS A HEXADECIMAL NUMBER.
*         P2=0000 - NOT USED. 
*         P3=0000 - NOT USED. 
*         P4=XXXX - DATA PATTERN CONTROL. 
*            0000 - SELECT RANDOM PATTERN BY P7 OR RT.
*            1XXX - SELECT ALTERNATE PATTERN XXX. 
*                   PATTERN XXX IS STORED IN THE  1ST,  3RD,  5TH,  ETC 
*                   8 BIT BYTES OF THE OUTPUT BUFFER. THE COMPLEMENT OF 
*                   XXX IS STORED 2ND, 4TH, 6TH, ETC BYTES. 
*            2XXX - SELECT FIXED PATTERN XXX. 
*                   PATTERN XXX IS AN 8 BIT PATTERN STORED IN OB. 
*         P5=0000 - NOT USED. 
*         P6=0000 - NOT USED. 
*         P7=XXXX - RANDOM NUMBER BASE. 
*            0000 - THE RANDOM NUMBER SEED WILL BE  OBTAINED  FROM  THE 
*                   REAL TIME CLOCK.
*            XXXX - XXXX IS THE RANDOM NUMBER SEED. 
*         P8=XXXX - THE  NUMBER  OF  BLOCKS  (400 HEX BYTES)  OF ADAPTER
*                   MEMORY TO BE DUMPED. MAXIMUM BEING 100B.
*         P9=00XY - THE STARTING BYTE ADDRESS OF ADAPTER MEMORY TO BE 
*                   DUMPED. 
*            0000 - START AT HEXADECIMAL ADDRESS 0000 
*            0001 - START AT HEXADECIMAL ADDRESS 0400 
*            0002 - START AT HEXADECIMAL ADDRESS 0800 
*            0003 - START AT HEXADECIMAL ADDRESS 0C00 
*            0004 - START AT HEXADECIMAL ADDRESS 1000 
*            0005 - START AT HEXADECIMAL ADDRESS 1400 
*            0006 - START AT HEXADECIMAL ADDRESS 1800 
*            0007 - START AT HEXADECIMAL ADDRESS 1C00 
*            001Y - START AT HEXADECIMAL ADDRESS 2Y00 
*            002Y - START AT HEXADECIMAL ADDRESS 4Y00 
*            003Y - START AT HEXADECIMAL ADDRESS 6Y00 
*            004Y - START AT HEXADECIMAL ADDRESS 8Y00 
*            005Y - START AT HEXADECIMAL ADDRESS AY00 
*            006Y - START AT HEXADECIMAL ADDRESS CY00 
*            007Y - START AT HEXADECIMAL ADDRESS EY00 
* 
*    5.2  PARAMETER REGISTER USAGE
* 
*         BELOW  IS  A  CROSS-REFERENCE  OF  MODULES  AND  THE  AND THE 
*                   PARAMETER REGISTERS THEY REFERENCE. 
* 
*         MODULE      P0   P1   P2   P3   P4   P5   P6   P7   P8   P9 
*         ------      --   --   --   --   --   --   --   --   --   -- 
* 
*         ITU01 
*         ITU03                                          X
*         ITU05                                          X
*         ITU07                                          X
*         ITU09                                          X
*         ITU11                           X              X
*         ITU13       X    X
*         ITU21                                               X    X
* 
*         NOTE:   MODULE ITU13 CALL MODULE ITU98S TO VALIDATE PARAMETER 
*                 WORDS P0  (STU TEST NUMBER) AND P1 (STU TEST OPTION). 
* 
***  6.0  PROGRAM USE 
**
*    6.1  USING UTILITY MODULES 
* 
*         THE UTILITY MODULES PROVIDE THE  USER  WITH  THE  ABILITY  TO 
*         INVOKE DIAGNOSTIC TESTS IN THE ISMT ADAPTOR AND STU, AND ALSO 
*         TO TEST THE DATA PATHS IN THE ADAPTOR AND THE  DATA  PATH  TO 
*         THE  STU AND BACK.  THE MODULES ARE DESIGNED TO BE RUN ONE AT 
*         A TIME IN NUMERICAL SEQUENCE.  THE P7 PARAMETER WORD  PROVIDE 
*         THE  USER WITH THE ABILITY TO CONTROL THE SEED FOR THE RANDOM 
*         NUMBER GENERATOR IN MODULES ITU03-ITU11.  PARAMETER WORDS  P0 
*         AND P1 ARE USED TO SELECT THE DIAGNOSTIC TESTS TO BE  RUN  IN 
*         THE   STU  IN  MODULE  ITU13.   ALL  MODULES  SUPPORT  REPEAT 
*         CONDITION, REPEAT MODULE, AND SCOPE LOOP EXCEPT MODULE 14 
*         WHICH ONLY SUPPORTS REPEAT MODULE.
* 
***  7.0  MESSAGES
**
*    7.1  NORMAL MESSAGES 
* 
*         THE FOLLOWING MESSAGES ARE PRINTED AND DISPLAYED  DURING  THE 
*         NORMAL COURSE OF EXECUTING ITU. 
* 
*              ITUNN M--M 
*              THIS  MESSAGE  INDICATES  THAT MODULE NN IS NOW RUNNING. 
*              M--M IS A DESCRIPTION OF THE MODULE. 
* 
*              ADAPTER MEMORY HEX BYTE ADDRESS = YYYY 
*              THIS MESSAGE  FROM  MODULE  ITU21  IS THE ADAPTER MEMORY 
*              HEX BYTE LOCATION THAT IS BEING PRINTED. 
*              WHERE YYYY IS THE HEX VALUE. 
* 
*              00 OR 80  ZZZZ ZZZZ ZZZZ ZZZZ
*              08 OR 88  ZZZZ ZZZZ ZZZZ ZZZZ
*              .. 
*              .. 
*              70 OR F0  ZZZZ ZZZZ ZZZZ ZZZZ
*              78 OR F8  ZZZZ ZZZZ ZZZZ ZZZZ
* 
*              THIS MESSAGE  FROM  MODULE  ITU21  IS THE ADAPTER MEMORY 
*              DATA PRINTED WITH LOWER BITS OF HEX BYTE ADDRESS.
*              WHERE ZZZZ IS THE HEX DATA FROM ADAPTER MEMORY.
* 
* 
*         THE FOLLOWING MESSAGES ARE DISPLAYED BUT NOT  PRINTED  DURING 
*         THE NORMAL COURSE OF EXECUTING ITU. 
* 
*              ITUNN EC = EEEED  LC = LLLLD 
*              MODULE  NN IS LOOPING.  EEEE IS THE ERROR COUNT AND LLLL 
*              IS THE LOOP COUNT. 
* 
*              ITU01 DIAGNOSTIC TEST-XXXXD
*              THIS MESSAGE INDICATES  THAT  MODULE  ITU01  IS  LOOPING 
*              WAITING  FOR  THE  ISMT  ADAPTOR  DIAGNOSTIC TO COMPLETE 
*              EXECUTION.  XXXX IS THE CONTENTS OF THE LOOP COUNTER  IN 
*              THE MODULE.
* 
*              ITUNN M---M-XXXXD
*              THIS  MESSAGE  INDICATES  THAT MODULE NN IS NOW RUNNING. 
*              M--M IS A  DESCRIPTION  OF  THE  MODULE.   XXXX  IS  THE 
*              CONTENTS OF THE INTERNAL LOOP COUNTER IN THE MODULE. 
* 
*              ITU13 STU DIAGNOSTIC-XXXXD 
*              THIS  MESSAGE  INDICATES  THAT  MODULE  ITU13 IS LOOPING 
*              WAITING FOR THE STU INVOKED DIAGNOSTIC TEST TO  COMPLETE 
*              EXECUTION.   XXXX IS THE CONTENTS OF THE LOOP COUNTER IN 
*              THE MODULE.
* 
*              ITU98S PARAMETER ERROR STOP
*              THIS MESSAGE INDICATES THAT  THE  P0  AND  P1  PARAMETER 
*              CHECKING  MODULE  ITU98S HAS DETECTED AN ERROR IN EITHER 
*              PARAMETER WORDS P0 OR P1 OR BOTH.
* 
*              //ITU00 RM SELECTED. 
*              THIS MESSAGE INDICATES THAT MODULE ITU00 HAS DETECTED RM 
*              SELECTED  IN  THE  ES  REGISTER  UPON ATTEMPTING TO EXIT 
*              MODULE ITU00.  THE  USER  SHOULD  CLEAR  RM  IN  THE  ES 
*              REGISTER.
* 
*              //ITU98S RM SELECTED.
*              THIS  MESSAGE  INDICATES  THAT  THE  P0 AND P1 PARAMETER 
*              CHECKING MODULE ITU98S HAS DETECTED THE RM  SELECTED  IN 
*              THE   ES   REGISTER   AFTER  DETECTING  PARAMETER  ENTRY 
*              ERROR(S).  THE USER SHOULD CLEAR RM IN THE ES  REGISTER, 
*              CORRECT  THE PARAMETER WORD THAT IS INCORRECT, AND RERUN 
*              MODULE ITU13.
* 
*** 
**
*    7.2  ERROR FORMAT
* 
*         THE FOLLOWING DISPLAY FORMAT IS USED BY ITU TO REPORT PRODUCT 
*         OVERLAY DETECTED ERRORS TO THE USER.
* 
*         LINE      DISPLAY FORMAT
*         ----      --------------
* 
*         00  ITUNN MMMM
*         01  ITUNN ABORT ON .C-----------------C. COMMAND
*         02   ITUNN  EXXXX LXXX (M------------M) 
*         03
*         04   WT=WTTTB  LF=LFFFB  EC = NEEEB  SEED = SEEEB 
*         05        GENERAL/DETAILED STATUS BUFFER (OCTAL)
*         06  SB(1D-8D) =NNNN NNNN NNNN NNNN NNNN NNNN NNNN NNNN
*         07  SB(9D-16D)=NNNN NNNN NNNN NNNN NNNN NNNN NNNN NNNN
*         08  DETAILED STATUS ERROR CODE DESCRIPTION
* 
*         WHERE:  
*         C---C = COMMAND ON WHICH MODULE ABORTED 
*         EXXX  = PRODUCT OVERLAY ERROR CODE
*         LFFF  = LAST FUNCTION ISSUED TO THE ADAPTOR 
*         LXXX  = LINE NUMBER IN MODULE NN ON WHICH ERROR OCCURRED
*         MMMM  = MODULE TITLE
*         M---M = ERROR MESSAGE DESCRIPTION 
*         NN    = MODULE NUMBER 
*         NEEE  = NUMBER OF ERRORS FOR THIS MODULE
*         NNNN  = GENERAL/DETAILED STATUS WORDS 
*         NWWW  = NUMBER OF THE WORD IN THE I/O BUFFER
*         SEEE  = RANDOM NUMBER SEED
*         WTTT  = NUMBER OF WORDS TRANSFERRED ON THE LAST I/O OPERATION 
* 
* 
*         THE  FOLLOWING DISPLAY FORMAT IS USED BY ITU TO REPORT MODULE 
*         DETECTED GENERAL STATUS ERRORS TO THE USER. 
* 
*         LINE      DISPLAY FORMAT
*         ----      --------------
* 
*         00  ITUNN MMMM
*         01
*         02   ITUNN  EXXXX LXXX (M------------M) 
*         03  ERROR MESSAGE DESCRIPTION 
*         04
*         05   WT=WTTTB  LF=LFFFB  EC = NEEEB  SEED = SEEEB 
*         06        GENERAL/DETAILED STATUS BUFFER (OCTAL)
*         07  SB(1D-8D) =NNNN NNNN NNNN NNNN NNNN NNNN NNNN NNNN
*         08  SB(9D-16D)=NNNN NNNN NNNN NNNN NNNN NNNN NNNN NNNN
*         09  DETAILED STATUS ERROR CODE DESCRIPTION
* 
*         WHERE:  
*         EXXX  = MODULE ERROR CODE 
*         LFFF  = LAST FUNCTION ISSUED TO THE ADAPTOR 
*         LXXX  = LINE NUMBER IN MODULE NN ON WHICH ERROR OCCURRED
*         MMMM  = MODULE TITLE
*         M---M = ERROR MESSAGE DESCRIPTION 
*         NN    = MODULE NUMBER 
*         NEEE  = NUMBER OF ERRORS FOR THIS MODULE
*         NNNN  = GENERAL/DETAILED STATUS WORDS 
*         NWWW  = NUMBER OF THE WORD IN THE I/O BUFFER
*         SEEE  = RANDOM NUMBER SEED
*         WTTT  = NUMBER OF WORDS TRANSFERRED ON THE LAST I/O OPERATION 
* 
* 
*         THE FOLLOWING DISPLAY FORMAT IS USED BY ITU TO REPORT  MODULE 
*         DETECTED DATA COMPARE ERRORS TO THE USER. 
* 
*         LINE      DISPLAY FORMAT
*         ----      --------------
* 
*         00  ITUNN MMMM
*         01
*         02   ITUNN  EXXXX LXXX (M------------M) 
*         03  ERROR MESSAGE DESCRIPTION 
*         04
*         05   WT=WTTTB  LF=LFFFB  EC = NEEEB  SEED = SEEEB 
*         06        GENERAL/DETAILED STATUS BUFFER (OCTAL)
*         07  SB(1D-8D) =NNNN NNNN NNNN NNNN NNNN NNNN NNNN NNNN
*         08  SB(9D-16D)=NNNN NNNN NNNN NNNN NNNN NNNN NNNN NNNN
*         09  DETAILED STATUS ERROR CODE DESCRIPTION
*         10                    DATA ERROR(S) 
*         11  WORD=NWWWB   EXP=EEEEB   ACTUAL=AAAAB   DIF=DDDDB 
*         12  WORD=NWWWB   EXP=EEEEB   ACTUAL=AAAAB   DIF=DDDDB 
*         13  WORD=NWWWB   EXP=EEEEB   ACTUAL=AAAAB   DIF=DDDDB 
*         14  WORD=NWWWB   EXP=EEEEB   ACTUAL=AAAAB   DIF=DDDDB 
*         15
* 
*         WHERE:  
*         AAAA  = ACTUAL DATA WORD
*         DDDD  = DIFFERENCE BETWEEN THE EXPECTED AND ACTUAL DATA WORDS 
*         EEEE  = EXPECTED DATA WORD
*         EXXX  = PRODUCT OVERLAY OR MODULE ERROR CODE
*         LFFF  = LAST FUNCTION ISSUED TO THE ADAPTOR 
*         LXXX  = LINE NUMBER IN MODULE NN ON WHICH ERROR OCCURRED
*         MMMM  = MODULE TITLE
*         M---M = ERROR MESSAGE DESCRIPTION 
*         NN    = MODULE NUMBER 
*         NEEE  = NUMBER OF ERRORS FOR THIS MODULE
*         NNNN  = GENERAL/DETAILED STATUS WORDS 
*         NWWW  = NUMBER OF THE WORD IN THE I/O BUFFER
*         SEEE  = RANDOM NUMBER SEED
*         WTTT  = NUMBER OF WORDS TRANSFERRED ON THE LAST I/O OPERATION 
* 
* 
*         THE  FOLLOWING  DISPLAY  FORMAT  IS  USED  BY  ITU  TO REPORT 
*         PARAMETER ENTRY ERRORS TO  THE  USER  BY  MODULE  ITU98S  FOR 
*         MODULE ITU13. 
* 
*         LINE      DISPLAY FORMAT
*         ----      --------------
* 
*         00  ITUNN MMMM
*         01   - PARAMETER ENTRY ERROR(S) - 
*         02  P0 PARAMETER ENTRY ERROR
*         03  P1 PARAMETER ENTRY ERROR
*         04
*         05  P0 AND P1 PARAMETERS
*         06  P0 = P00H    P1 = P11H
*         07
* 
*         WHERE:  
*         MMMM  = MODULE TITLE
*         NN    = MODULE NUMBER 
*         P00   = CONTENTS OF PARAMETER WORD P0 
*         P11   = CONTENTS OF PARAMETER WORD P1 
* 
*** 
**
*    7.3  ERROR MESSAGES
* 
*         ERROR CODE      ERROR MESSAGE 
*         ----------      ------------- 
* 
*         0100      LXXX ADAPTOR DIAGNOSTIC ERROR 
*                   AD ERROR EEE M---M
*                   XXX  IS  THE  LINE  NUMBER  ON  WHICH THE ERROR WAS 
*                   DETECTED IN THE MODULE.  EEE IS THE  ADAPTOR  ERROR 
*                   CODE  AND  M---M IS THE DESCRIPTION FOR THE ADAPTOR 
*                   ERROR CODE. 
* 
*         0101      LXXX ADAPTOR DIAG. TIMEOUT ERROR
*                   THE ADAPTOR DIAGNOSTIC FAILED TO COMPLETE 
*                   EXECUTION IN THE ALLOTTED AMOUNT OF TIME. 
*                   XXX IS THE LINE  NUMBER  ON  WHICH  THE  ERROR  WAS 
*                   DETECTED IN THE MODULE. 
* 
*         0102      LXXX WRITE/READ MEMORY STATUS ERROR 
*                   ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
*                   COMPLETION OF A ADAPTOR WRITE MEMORY/ADAPTOR
*                   MEMORY READ TEST SEQUENCE.
*                   XXX  IS  THE  LINE  NUMBER  ON  WHICH THE ERROR WAS 
*                   DETECTED IN THE MODULE. 
*         0103      LXXX READ DATA PATH STATUS ERROR
*                   ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
*                   COMPLETION OF A ADAPTOR WRITE MEMORY/ADAPTOR DATA 
*                   PATH READ TEST SEQUENCE.
*                   XXX IS THE LINE  NUMBER  ON  WHICH  THE  ERROR  WAS 
*                   DETECTED IN THE MODULE. 
* 
*         0104      LXXX WRITE DATA PATH STATUS ERROR 
*                   ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
*                   COMPLETION OF A ADAPTOR DATA PATH WRITE/ADAPTOR 
*                   MEMORY READ TEST SEQUENCE.
*                   XXX  IS  THE  LINE  NUMBER  ON  WHICH THE ERROR WAS 
*                   DETECTED IN THE MODULE. 
* 
*         0105      LXXX WR/RD DATA PATH STATUS ERROR 
*                   ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
*                   COMPLETION OF A ADAPTOR DATA PATH WRITE/ADAPTOR 
*                   DATA PATH READ TEST SEQUENCE. 
*                   XXX IS THE LINE  NUMBER  ON  WHICH  THE  ERROR  WAS 
*                   DETECTED IN THE MODULE. 
* 
*         0106      LXXX STU CONNECT STATUS ERROR 
*                   ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
*                   ATTEMPTING TO CONNECT TO THE STU USING A FORMAT 
*                   FUNCTION. 
*                   XXX  IS  THE  LINE  NUMBER  ON  WHICH THE ERROR WAS 
*                   DETECTED IN THE MODULE. 
* 
*         0107      LXXX LOOP WRITE-TO-READ STATUS ERR. 
*                   ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
*                   COMPLETION OF A LOOP WRITE-TO-READ TEST SEQUENCE. 
*                   XXX IS THE LINE  NUMBER  ON  WHICH  THE  ERROR  WAS 
*                   DETECTED IN THE MODULE. 
* 
*         0110      LXXX STU DIAGNOSTIC DETECTED ERROR
*                   ALERT WAS SET THE GENERAL STATUS WORD UPON
*                   COMPLETION OF THE STU INVOKED DIAGNOSTIC TEST 
*                   INDICATING THAT THE DIAGNOSTIC TEST DETECTED A
*                   FAULT CONDITION.
*                   FAULT SYMPTOM = FFH, FAULT SUBCODE = SSH
*                   XXX  IS  THE  LINE  NUMBER  ON  WHICH THE ERROR WAS 
*                   DETECTED IN THE MODULE.  FFH IS THE  FAULT  SYMPTOM 
*                   CODE FROM THE STU DIAGNOSTIC IN HEXADECIMAL AND SSH 
*                   IS THE FAULT SUBCODE FROM  THE  STU  DIAGNOSTIC  IN 
*                   HEXADECIMAL.
* 
*         0111      LXXX WAIT END-OF-OP TIMEOUT 
*                   A TIMEOUT OCCURRED WHILE WAITING FOR END-OF-OF
*                   FROM THE ISMT ADAPTOR AFTER EITHER AN ISMT
*                   DIAGNOSTIC MEMORY READ OPERATION OR ISMT
*                   DIAGNOSTIC DATA PATH READ OPERATION.
*                   XXX  IS  THE  LINE  NUMBER  ON  WHICH THE ERROR WAS 
*                   DETECTED IN THE MODULE. 
* 
*         0112      LXXX STU NOT READY STATUS ERROR 
*                   THE STU WAS FOUND NOT READY AFTER CONNECTING TO 
*                   IT.  THE STU MUST BE READY IN ORDER TO RUN THIS 
*                   MODULE. 
*                   XXX  IS  THE  LINE  NUMBER  ON  WHICH THE ERROR WAS 
*                   DETECTED IN THE MODULE. 
* 
*         0200      LXXX MEMORY WRITE/READ DATA ERROR 
*                   ONE OR MORE DATA COMPARE ERRORS WERE DETECTED IN
*                   THE DATA INPUTTED DURING A ADAPTOR MEMORY 
*                   WRITE/ADAPTOR MEMORY READ TEST SEQUENCE.
*                   XXX IS THE LINE NUMBER TO WHICH THE COMPARE COMMAND 
*                   ABORTED IN THE MODULE.  UP TO FOUR DATA ERRORS WILL 
*                   BE POSTED IN THE ERROR DISPLAY FOR THIS ERROR.
* 
*         0201      LXXX READ DATA PATH DATA ERROR
*                   ONE OR MORE DATA COMPARE ERRORS WERE DETECTED IN
*                   THE DATA INPUTTED DURING A ADAPTOR MEMORY 
*                   WRITE/ADAPTOR DATA PATH READ TEST SEQUENCE. 
*                   XXX IS THE LINE NUMBER TO WHICH THE COMPARE COMMAND 
*                   ABORTED IN THE MODULE.  UP TO FOUR DATA ERRORS WILL 
*                   BE POSTED IN THE ERROR DISPLAY FOR THIS ERROR.
* 
*         0202      LXXX WRITE DATA PATH DATA ERROR 
*                   ONE OR MORE DATA COMPARE ERRORS WERE DETECTED IN
*                   THE DATA INPUTTED DURING A ADAPTOR DATA PATH
*                   WRITE/ADAPTOR MEMORY READ TEST SEQUENCE.
*                   XXX IS THE LINE NUMBER TO WHICH THE COMPARE COMMAND 
*                   ABORTED IN THE MODULE.  UP TO FOUR DATA ERRORS WILL 
*                   BE POSTED IN THE ERROR DISPLAY FOR THIS ERROR.
* 
*         0203      LXXX WR/RD DATA PATH DATA ERROR 
*                   ONE OR MORE DATA COMPARE ERRORS WERE DETECTED IN
*                   THE DATA INPUTTED DURING A ADAPTOR DATA PATH
*                   WRITE/ADAPTOR DATA PATH READ TEST SEQUENCE. 
*                   XXX IS THE LINE NUMBER TO WHICH THE COMPARE COMMAND 
*                   ABORTED IN THE MODULE.  UP TO FOUR DATA ERRORS WILL 
*                   BE POSTED IN THE ERROR DISPLAY FOR THIS ERROR.
* 
*         0300      THE ALERT STATUS BIT WAS EXPECTED TO OCCUR
*                   AS A RESULT OF THE DEADMAN TIMEOUT, BUT DID NOT.
* 
*         0301      DEADMAN TIMEOUT EXCEEDED THE 20.0 SECOND MAXIMUM
*                   ALLOWED.
* 
*         0302      DEADMAN TIMEOUT OCCURRED IN LESS THAN 15 SECONDS
*                  (NOMINAL IS 16 SECONDS). 
* 
* 
*    7.4  DAYFILE MESSAGES
* 
*              ITUNN ERROR(S) = XXXXD 
*              MODULE NN DETECTED XXXX ERRORS BY THE TIME IT  COMPLETED 
*              EXECUTION. 
* 
*              ITU13 MODULE ABORTED - SUSPECT PARAMETER ERRORS
*              MODULE  ITU13  WAS  NOT  EXECUTED  BECAUSE  OF SUSPECTED 
*              PARAMETER INPUT ERRORS.
* 
***  8.0  GLOSSARY
**
*    8.1  DEFINITION OF TERMS 
* 
*         NONE. 
* 
*    8.2  ABBREVIATIONS 
* 
*         BOT       - BEGINNING OF TAPE 
*         DSE       - DATA SECURITY ERASE 
*         EOT       - END OF TAPE 
*         ERS       - EXTERNAL REFERENCE SPECIFICATION
*         GCR       - GROUP CODED RECORDING 
*         ISMT      - INTELLIGENT MAGNETIC TAPE SUBSYSTEM 
*         I/O       - INPUT AND OUTPUT
*         NA        - NOT APPLICABLE
*         PE        - PARITY ERROR
*         PE        - PHASE ENCODED 
*         SPEC.     - SPECIFICATION 
*         STU       - STREAMING TAPE UNIT 
*         VLG       - VARIABLE LONG GAP 
* 
*    8.3  MISCELLANEOUS 
* 
*         GENERAL STATUS      MEANING 
*         --------------      ------- 
* 
*         2**11     - ALERT.
*         2**10     - UNUSED (ZERO FILLED). 
*         2**9      - NOT TCU CONNECT.
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - WRITE RING. 
*         2**6      - 9-TRACK.
*         2**5      - CHARACTER FILL. 
*         2**4      - FILE MARK.
*         2**3      - END OF TAPE (EOT).
*         2**2      - BEGINNING OF TAPE (BOT).
*         2**1      - UNIT BUSY.
*         2**0      - UNIT READY. 
* 
* 
*         DETAILED STATUS 
*             WORD 2          MEANING 
*         ---------------     ------- 
* 
*         2**11     - BLOCK IDENTIFICATION CODE (BIT 8).
*         2**10     - BLOCK IDENTIFICATION CODE (BIT 7).
*         2**9      - BLOCK IDENTIFICATION CODE (BIT 6).
*         2**8      - BLOCK IDENTIFICATION CODE (BIT 5).
*         2**7      - BLOCK IDENTIFICATION CODE (BIT 4).
*         2**6      - BLOCK IDENTIFICATION CODE (BIT 3).
*         2**5      - BLOCK IDENTIFICATION CODE (BIT 2).
*         2**4      - BLOCK IDENTIFICATION CODE (BIT 1).
*         2**3      - BLOCK IDENTIFICATION CODE (BIT 0).
*         2**2      - UNUSED (ZERO FILLED). 
*         2**1      - UNUSED (ZERO FILLED). 
*         2**0      - UNUSED (ZERO FILLED). 
* 
* 
*         DETAILED STATUS 
*             WORD 3          MEANING 
*         ---------------     ------- 
*         2**11     - LOST DATA.
*         2**10     - UNIT CHECK. 
*         2**9      - TAPE PARITY ERROR.
*         2**8      - CHANNEL PARITY ERROR. 
*         2**7      - ADAPTOR PARITY ERROR. 
*         2**6      - ERROR CODE IF NON-ZERO (BIT 6). 
*         2**5      - ERROR CODE IF NON-ZERO (BIT 5). 
*         2**4      - ERROR CODE IF NON-ZERO (BIT 4). 
*         2**3      - ERROR CODE IF NON-ZERO (BIT 3). 
*         2**2      - ERROR CODE IF NON-ZERO (BIT 2). 
*         2**1      - ERROR CODE IF NON-ZERO (BIT 1). 
*         2**0      - ERROR CODE IF NON-ZERO (BIT 0). 
* 
* 
*         DETAILED STATUS 
*             WORD 4          MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - DOUBLE TRACK CORRECTION.
*         2**9      - SINGLE TRACK CORRECTION.
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - UNUSED (ZERO FILLED). 
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - UNUSED (ZERO FILLED). 
*         2**4      - UNUSED (ZERO FILLED). 
*         2**3      - UNUSED (ZERO FILLED). 
*         2**2      - UNUSED (ZERO FILLED). 
*         2**1      - UNUSED (ZERO FILLED). 
*         2**0      - UNUSED (ZERO FILLED). 
* 
* 
*         DETAILED STATUS 
*             WORD 5          MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - UNUSED (ZERO FILLED). 
*         2**9      - READ CRC CHECK. 
*         2**8      - READ AUX CRC CHECK. 
*         2**7      - UNUSED (ZERO FILLED). 
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - UNUSED (ZERO FILLED). 
*         2**4      - VELOCITY ERROR IF WRITE.
*         2**3      - UNUSED (ZERO FILLED). 
*         2**2      - FLAG BIT DETECTED.
*         2**1      - UNUSED (ZERO FILLED). 
*         2**0      - EXCESSIVE SKEW ERROR. 
* 
* 
*         DETAILED STATUS 
*             WORD 6          MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - DATA PATH PARITY ERROR. 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - UNUSED (ZERO FILLED). 
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - UNUSED (ZERO FILLED). 
*         2**4      - UNUSED (ZERO FILLED). 
*         2**3      - UNUSED (ZERO FILLED). 
*         2**2      - UNUSED (ZERO FILLED). 
*         2**1      - BAD RESYNC BURST IN GCR.
*         2**0      - UNUSED (ZERO FILLED). 
* 
* 
*         DETAILED STATUS 
*             WORD 7          MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - UNUSED (ZERO FILLED). 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - BIT FOR ERROR TRACK POINTER 9 (DATA BIT 3). 
*         2**7      - BIT FOR ERROR TRACK POINTER 8 (DATA BIT 1). 
*         2**6      - BIT FOR ERROR TRACK POINTER 7 (DATA BIT 7). 
*         2**5      - BIT FOR ERROR TRACK POINTER 6 (DATA BIT 6). 
*         2**4      - BIT FOR ERROR TRACK POINTER 5 (DATA BIT 5). 
*         2**3      - BIT FOR ERROR TRACK POINTER 4 (PARITY BIT). 
*         2**2      - BIT FOR ERROR TRACK POINTER 3 (DATA BIT 4). 
*         2**1      - BIT FOR ERROR TRACK POINTER 2 (DATA BIT 0). 
*         2**0      - BIT FOR ERROR TRACK POINTER 1 (DATA BIT 2). 
* 
* 
*         DETAILED STATUS 
*             WORD 8          MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - CODE TRANSLATION. 
*         2**9      - ASSEMBLY/DISASSEMBLY MODE.
*         2**8      - LAST DIRECTION REVERSE. 
*         2**7      - LAST OPERATION WRITE. 
*         2**6      - ERROR CORRECTION DISABLED.
*         2**5      - ASSEMBLY/DISASSEMBLY MODE OVERRIDE. 
*         2**4      - UNUSED (ZERO FILLED). 
*         2**3      - UNUSED (ZERO FILLED). 
*         2**2      - UNUSED (ZERO FILLED). 
*         2**1      - UNUSED (ZERO FILLED). 
*         2**0      - UNUSED (ZERO FILLED). 
* 
* 
*         DETAILED STATUS 
*             WORD 9          MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - NOISE BYPASSED. 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - UNUSED (ZERO FILLED). 
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - ERASE ERROR.
*         2**4      - UNUSED (ZERO FILLED). 
*         2**3      - UNUSED (ZERO FILLED). 
*         2**2      - UNUSED (ZERO FILLED). 
*         2**1      - READ CLIP LEVEL (BIT 1).
*         2**0      - READ CLIP LEVEL (BIT 0).
* 
* 
*         DETAILED STATUS 
*             WORD 10         MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - UNUSED (ZERO FILLED). 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - ADAPTOR ERROR CODE (BIT 8). 
*         2**7      - ADAPTOR ERROR CODE (BIT 7). 
*         2**6      - ADAPTOR ERROR CODE (BIT 6). 
*         2**5      - ADAPTOR ERROR CODE (BIT 5). 
*         2**4      - ADAPTOR ERROR CODE (BIT 4). 
*         2**3      - ADAPTOR ERROR CODE (BIT 3). 
*         2**2      - ADAPTOR ERROR CODE (BIT 2). 
*         2**1      - ADAPTOR ERROR CODE (BIT 1). 
*         2**0      - ADAPTOR ERROR CODE (BIT 0). 
* 
* 
*         DETAILED STATUS 
*             WORD 11         MEANING 
*         ---------------     ------- 
* 
*         2**11     - GCR CAPABILITY. 
*         2**10     - NOT NRZI CAPABILITY.
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - UNUSED (ZERO FILLED). 
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - DUAL DENSITY. 
*         2**4      - DENSITY (BIT 1).
*         2**3      - DENSITY (BIT 0).
*         2**2      - SPEED CAPABILITY OF UNIT (BIT 2). 
*         2**1      - SPEED CAPABILITY OF UNIT (BIT 1). 
*         2**0      - SPEED CAPABILITY OF UNIT (BIT 0). 
* 
* 
*         DETAILED STATUS 
*             WORD 12         MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - UNUSED (ZERO FILLED). 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - UNUSED (ZERO FILLED). 
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - UNUSED (ZERO FILLED). 
*         2**4      - RESET KEY.
*         2**3      - DATA SECURITY ERASE (DSE).
*         2**2      - UNUSED (ZERO FILLED). 
*         2**1      - UNUSED (ZERO FILLED). 
*         2**0      - UNUSED (ZERO FILLED). 
* 
* 
*         DETAILED STATUS 
*             WORD 13         MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - UNUSED (ZERO FILLED). 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - UNUSED (ZERO FILLED). 
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - TAPE HAS STOPPED MOVING (PARKED). 
*         2**4      - UNUSED (ZERO FILLED). 
*         2**3      - UNUSED (ZERO FILLED). 
*         2**2      - UNUSED (ZERO FILLED). 
*         2**1      - UNUSED (ZERO FILLED). 
*         2**0      - UNUSED (ZERO FILLED). 
* 
* 
*         DETAILED STATUS 
*             WORD 14         MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - UNUSED (ZERO FILLED). 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - UNUSED (ZERO FILLED). 
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - UNUSED (ZERO FILLED). 
*         2**4      - UNUSED (ZERO FILLED). 
*         2**3      - UNUSED (ZERO FILLED). 
*         2**2      - UNUSED (ZERO FILLED). 
*         2**1      - UNUSED (ZERO FILLED). 
*         2**0      - UNUSED (ZERO FILLED). 
* 
* 
*         DETAILED STATUS 
*             WORD 15         MEANING 
*         ---------------     ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - UNUSED (ZERO FILLED). 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - AGC FAULT (GCR ONLY). 
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - UNUSED (ZERO FILLED). 
*         2**4      - UNUSED (ZERO FILLED). 
*         2**3      - UNUSED (ZERO FILLED). 
*         2**2      - UNUSED (ZERO FILLED). 
*         2**1      - VARIABLE LONG GAP SELECTED IN THE STU.
*         2**0      - VARIABLE SHORT GAP SELECTED IN THE STU. 
* 
* 
*         DETAILED STATUS 
*             WORD 16         MEANING 
*         ---------------     ------- 
* 
*         2**11     - HARD ERROR. 
*         2**10     - CORRECTED ERROR.
*         2**9      - PE OR GCR ID BURST DETECTED.
*         2**8      - FILE MARK DETECTED. 
*         2**7      - FILE PROTECT. 
*         2**6      - GCR MODE. 
*         2**5      - HIGH SPEED. 
*         2**4      - READY.
*         2**3      - END-OF-TAPE.
*         2**2      - LOAD POINT. 
*         2**1      - REWIND. 
*         2**0      - ON-LINE.
* 
* 
*         SENSE STATUS
*            WORD 1           MEANING 
*         ---------------     ------- 
* 
*         2**11     - COMMAND REJECT. 
*         2**10     - INTERVENTION REQUIRED.
*         2**9      - DRIVE TYPE (0=PE, 1=PE/GCR).
*         2**8      - EQUIPMENT CHECK.
*         2**7      - DATA CHECK. 
*         2**6      - COMMAND OVERRUN.
*         2**5      - UNIT CHECK. 
*         2**4      - UNIT EXCEPTION. 
*         2**3      - REVERSE - WAS LAST COMMAND ISSUED.
*         2**2      - WRITE - WAS LAST COMMAND ISSUED.
*         2**1      - EDIT - WAS LAST COMMAND ISSUED. 
*         2**0      - WRITE FILE MARK - WAS LAST COMMAND ISSUED.
* 
* 
*         SENSE STATUS
*            WORD 2           MEANING 
*         ---------------     ------- 
* 
*         2**11     - ERASE - WAS LAST COMMAND ISSUED.
*         2**10     - HIGH SPEED SELECT - WAS LAST COMMAND ISSUED.
*         2**9      - THRESHOLD - WAS LAST COMMAND ISSUED.
*         2**8      - LONG GAP - WAS LAST COMMAND ISSUED. 
*         2**7      - READY - TAPE STATUS.
*         2**6      - ON LINE - TAPE STATUS.
*         2**5      - REWINDING - TAPE STATUS.
*         2**4      - FILE PROTECTED - TAPE STATUS. 
*         2**3      - POSITIONING/RAMP - TAPE STATUS. 
*         2**2      - HIGH SPEED - TAPE STATUS. 
*         2**1      - BOT - TAPE STATUS.
*         2**0      - EOT - TAPE STATUS.
* 
* 
*         SENSE STATUS
*            WORD 3           MEANING 
*         ---------------     ------- 
* 
*         2**11     - FILE MARK.
*         2**10     - ILLEGAL COMMAND.
*         2**9      - DENSITY CONFLICT. 
*         2**8      - DEVICE RESPONSE CHECK.
*         2**7      - POSITION CHECK. 
*         2**6      - CHANNEL IN PE.
*         2**5      - WRITE HARDWARE CHECK. 
*         2**4      - GAP CONTROL.
*         2**3      - READ TIME-OUT.
*         2**2      - NOISE.
*         2**1      - ID CHECK. 
*         2**0      - UNCORRECTABLE DATA. 
* 
* 
*         SENSE STATUS
*            WORD 4           MEANING 
*         ---------------     ------- 
* 
*         2**11     - POSTAMBLE ERROR.
*         2**10     - MULTI-DROP. 
*         2**9      - NO TRACK POINTER. 
*         2**8      - TIE 4 - TRACK IN ERROR 4 (PARITY BIT).
*         2**7      - TIE 7 - TRACK IN ERROR 7 (DATA BIT 0).
*         2**6      - TIE 6 - TRACK IN ERROR 6 (DATA BIT 1).
*         2**5      - TIE 5 - TRACK IN ERROR 5 (DATA BIT 2).
*         2**4      - TIE 3 - TRACK IN ERROR 3 (DATA BIT 3).
*         2**3      - TIE 9 - TRACK IN ERROR 9 (DATA BIT 4).
*         2**2      - TIE 1 - TRACK IN ERROR 1 (DATA BIT 5).
*         2**1      - TIE 8 - TRACK IN ERROR 8 (DATA BIT 6).
*         2**0      - TIE 2 - TRACK IN ERROR 2 (DATA BIT 7).
* 
* 
*         SENSE STATUS
*            WORD 5           MEANING 
*         ---------------     ------- 
* 
*         2**11     - FAULT SYMPTOM CODE (BIT 7). 
*         2**10     - FAULT SYMPTOM CODE (BIT 6). 
*         2**9      - FAULT SYMPTOM CODE (BIT 5). 
*         2**8      - FAULT SYMPTOM CODE (BIT 4). 
*         2**7      - FAULT SYMPTOM CODE (BIT 3). 
*         2**6      - FAULT SYMPTOM CODE (BIT 2). 
*         2**5      - FAULT SYMPTOM CODE (BIT 1). 
*         2**4      - FAULT SYMPTOM CODE (BIT 0). 
*         2**3      - MARGINAL DRIVE INDICATION (BIT 7).
*         2**2      - MARGINAL DRIVE INDICATION (BIT 6).
*         2**1      - MARGINAL DRIVE INDICATION (BIT 5).
*         2**0      - MARGINAL DRIVE INDICATION (BIT 4).
* 
* 
*         SENSE STATUS
*            WORD 6           MEANING 
*         ------------        ------- 
* 
*         2**11     - MARGINAL DRIVE INDICATION (BIT 3).
*         2**10     - MARGINAL DRIVE INDICATION (BIT 2).
*         2**9      - MARGINAL DRIVE INDICATION (BIT 1).
*         2**8      - MARGINAL DRIVE INDICATION (BIT 0).
*         2**7      - HOST COMMAND REJECT.
*         2**6      - WRITE PARITY ERROR. 
*         2**5      - READ PARITY ERROR.
*         2**4      - READ BUFFER OVERFLOW/UNDERFLOW. 
*         2**3      - REMOTE DENSITY SELECT.
*         2**2      - I/F UNIT CHECK. 
*         2**1      - FORMATTER RESPONSE CODE.
*         2**0      - UNUSED (ZERO FILLED). 
* 
* 
*         SENSE STATUS
*            WORD 7           MEANING 
*         ------------        ------- 
* 
*         2**11     - ILLEGAL CHANNEL COMMAND.
*         2**10     - DEVICE COMMAND CHECK. 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - FILE PROTECTED. 
*         2**7      - RESET KEY.
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - DEVICE NOT READY. 
*         2**4      - DEVICE OFF-LINE.
*         2**3      - CHANNEL PARITY ERROR. 
*         2**2      - CHANNEL RESPONSE CHECK. 
*         2**1      - READ HARDWARE CHECK.
*         2**0      - WRITE HARDWARE CHECK. 
* 
* 
*         SENSE STATUS
*            WORD 8           MEANING 
*         ------------        ------- 
* 
*         2**11     - DEVICE RESPONSE CHECK.
*         2**10     - DEVICE HARDWARE CHECK.
*         2**9      - VELOCITY CHECK. 
*         2**8      - DEVICE INTERRUPT. 
*         2**7      - AGC CHECK.
*         2**6      - UNUSED (ZERO FILLED). 
*         2**5      - READ DATA CHECK.
*         2**4      - ID FAULT. 
*         2**3      - UNUSED (ZERO FILLED). 
*         2**2      - UNRECOVERABLE.
*         2**1      - BOT.
*         2**0      - TAPE MOTION.
* 
* 
*         SENSE STATUS
*            WORD 9           MEANING 
*         ------------        ------- 
* 
*         2**11     - FORMATTER COMMAND (BIT 7).
*         2**10     - FORMATTER COMMAND (BIT 6).
*         2**9      - FORMATTER COMMAND (BIT 5).
*         2**8      - FORMATTER COMMAND (BIT 4).
*         2**7      - FORMATTER COMMAND (BIT 3).
*         2**6      - FORMATTER COMMAND (BIT 2).
*         2**5      - FORMATTER COMMAND (BIT 1).
*         2**4      - FORMATTER COMMAND (BIT 0).
*         2**3      - GCR MODE. 
*         2**2      - HIGH SPEED MODE.
*         2**1      - ADAPTIVE VELOCITY.
*         2**0      - FILE MARK DETECTED. 
* 
* 
*         SENSE STATUS
*            WORD 10          MEANING 
*         ------------        ------- 
* 
*         2**11     - DIAGNOSTIC MODE.
*         2**10     - START/STOP MODE.
*         2**9      - VARIABLE LONG GAP MODE. 
*         2**8      - VARIABLE SHORT GAP MODE.
*         2**7      - DIAGNOSTIC FAULT CODE (BIT 7).
*         2**6      - DIAGNOSTIC FAULT CODE (BIT 6).
*         2**5      - DIAGNOSTIC FAULT CODE (BIT 5).
*         2**4      - DIAGNOSTIC FAULT CODE (BIT 4).
*         2**3      - DIAGNOSTIC FAULT CODE (BIT 3).
*         2**2      - DIAGNOSTIC FAULT CODE (BIT 2).
*         2**1      - DIAGNOSTIC FAULT CODE (BIT 1).
*         2**0      - DIAGNOSTIC FAULT CODE (BIT 0).
* 
* 
*         SENSE STATUS
*            WORD 11          MEANING 
*         ------------        ------- 
* 
*         2**11     - DIAGNOSTIC SUBFAULT CODE (BIT 7). 
*         2**10     - DIAGNOSTIC SUBFAULT CODE (BIT 6). 
*         2**9      - DIAGNOSTIC SUBFAULT CODE (BIT 5). 
*         2**8      - DIAGNOSTIC SUBFAULT CODE (BIT 4). 
*         2**7      - DIAGNOSTIC SUBFAULT CODE (BIT 3). 
*         2**6      - DIAGNOSTIC SUBFAULT CODE (BIT 2). 
*         2**5      - DIAGNOSTIC SUBFAULT CODE (BIT 1). 
*         2**4      - DIAGNOSTIC SUBFAULT CODE (BIT 0). 
*         2**3      - WRITE TRANSFER CHECK. 
*         2**2      - RESIDUAL BYTE COUNT CHECK.
*         2**1      - WRITE CRC PARITY ERROR. 
*         2**0      - 4/5 PARITY ERROR. 
* 
* 
*         SENSE STATUS
*            WORD 12          MEANING 
*         ------------        ------- 
* 
*         2**11     - UNUSED (ZERO FILLED). 
*         2**10     - WRITE AUX CRC PARITY ERROR. 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - RESIDUAL CHARACTER CHECK. 
*         2**6      - READ CRC CHECK. 
*         2**5      - READ AUX CRC CHECK. 
*         2**4      - RESYNC ERROR. 
*         2**3      - ECC 3.
*         2**2      - UNCORRECTABLE DATA. 
*         2**1      - NO TRACK POINTER. 
*         2**0      - EXCESSIVE POINTERS. 
* 
* 
*         SENSE STATUS
*            WORD 13          MEANING 
*         ------------        ------- 
* 
*         2**11     - NOISE CHECK.
*         2**10     - POSTAMBLE ERROR.
*         2**9      - SKEW ERROR. 
*         2**8      - READ TIME-OUT.
*         2**7      - WRITE TAPE MARK CHECK.
*         2**6      - ID CHECK. 
*         2**5      - ARA BURST CHECK.
*         2**4      - ARA ID CHECK. 
*         2**3      - EC HARDWARE CHECK.
*         2**2      - READ BUFFER IN PARITY ERROR.
*         2**1      - READ TRANSFER CHECK.
*         2**0      - READ DATA PARITY ERROR. 
* 
* 
*         SENSE STATUS
*            WORD 14          MEANING 
*         ------------        ------- 
* 
*         2**11     - END MARK CHECK. 
*         2**10     - DUAL TRACK CORRECTION.
*         2**9      - SINGLE TRACK CORRECTION.
*         2**8      - TIE 4 - TRACK IN ERROR 4 (PARITY BIT).
*         2**7      - TIE 7 - TRACK IN ERROR 7 (DATA BIT 0).
*         2**6      - TIE 6 - TRACK IN ERROR 6 (DATA BIT 1).
*         2**5      - TIE 5 - TRACK IN ERROR 5 (DATA BIT 2).
*         2**4      - TIE 3 - TRACK IN ERROR 3 (DATA BIT 3).
*         2**3      - TIE 9 - TRACK IN ERROR 9 (DATA BIT 4).
*         2**2      - TIE 1 - TRACK IN ERROR 1 (DATA BIT 5).
*         2**1      - TIE 8 - TRACK IN ERROR 8 (DATA BIT 6).
*         2**0      - TIE 2 - TRACK IN ERROR 2 (DATA BIT 7).
* 
* 
*         SENSE STATUS
*            WORD 15          MEANING 
*         ------------        ------- 
* 
*         2**11     - REVERSE - DRIVE STATUS FOR LAST COMMAND.
*         2**10     - WRITE - DRIVE STATUS FOR LAST COMMAND.
*         2**9      - DSE - DRIVE STATUS FOR LAST COMMAND.
*         2**8      - GCR - DRIVE STATUS FOR LAST COMMAND.
*         2**7      - VLG - DRIVE STATUS FOR LAST COMMAND.
*         2**6      - START/STOP - DRIVE STATUS FOR LAST COMMAND. 
*         2**5      - UNUSED (ZERO FILLED). 
*         2**4      - UNUSED (ZERO FILLED). 
*         2**3      - LOCAL DIAGNOSTICS.
*         2**2      - REMOTE DIAGNOSTICS. 
*         2**1      - LOOP WRITE-TO-READ I/F. 
*         2**0      - LOOP WRITE-TO-READ PE.
* 
* 
*         SENSE STATUS
*            WORD 16          MEANING 
*         ---------------     ------- 
* 
*         2**11     - LOOP WRITE-TO-READ GCR. 
*         2**10     - UNUSED (ZERO FILLED). 
*         2**9      - UNUSED (ZERO FILLED). 
*         2**8      - UNUSED (ZERO FILLED). 
*         2**7      - COMMAND REJECT. 
*         2**6      - INTERVENTION REQUIRED.
*         2**5      - DIAGNOSTIC REQUEST. 
*         2**4      - EQUIPMENT CHECK.
*         2**3      - AGC CHECK.
*         2**2      - RESET KEY.
*         2**1      - REVERSE IN BOT. 
*         2**0      - UNUSED (ZERO FILLED). 
* 
* 
*         SENSE STATUS
*            WORD 17          MEANING 
*         ------------        ------- 
* 
*         2**11     - LAST REJECTED COMMAND OR AGC ERROR BITS (BIT  7). 
*         2**10     - LAST REJECTED  COMMAND OR AGC ERROR BITS (BIT 6). 
*         2**9      - LAST REJECTED COMMAND OR AGC ERROR BITS (BIT  5). 
*         2**8      - LAST REJECTED  COMMAND OR AGC ERROR BITS (BIT 4). 
*         2**7      - LAST REJECTED COMMAND OR AGC ERROR BITS (BIT  3). 
*         2**6      - LAST REJECTED  COMMAND OR AGC ERROR BITS (BIT 2). 
*         2**5      - LAST REJECTED COMMAND OR AGC ERROR BITS (BIT  1). 
*         2**4      - LAST REJECTED  COMMAND OR AGC ERROR BITS (BIT 0). 
*         2**3      - HSPD UP RAMP TIME-OUT OF MARGINAL LIMITS. 
*         2**2      - LSPD UP RAMP TIME-OUT OF MARGINAL LIMITS. 
*         2**1      - HSPD DOWN RAMP TIME-OUT OF MARGINAL LIMITS. 
*         2**0      - LSPD DOWN RAMP TIME-OUT OF MARGINAL LIMITS. 
* 
* 
*         SENSE STATUS
*            WORD 18          MEANING 
*         ------------        ------- 
* 
*         2**11     - HSPD SPEED. 
*         2**10     - LSPD SPEED. 
*         2**9      - LSPD AGC. 
*         2**8      - HSPD AGC. 
*         2**7      - FAULT CODE/TEST COMPLETION CODE (BIT 7).
*         2**6      - FAULT CODE/TEST COMPLETION CODE (BIT 6).
*         2**5      - FAULT CODE/TEST COMPLETION CODE (BIT 5).
*         2**4      - FAULT CODE/TEST COMPLETION CODE (BIT 4).
*         2**3      - FAULT CODE/TEST COMPLETION CODE (BIT 3).
*         2**2      - FAULT CODE/TEST COMPLETION CODE (BIT 2).
*         2**1      - FAULT CODE/TEST COMPLETION CODE (BIT 1).
*         2**0      - FAULT CODE/TEST COMPLETION CODE (BIT 0).
* 
* 
*         SENSE STATUS
*            WORD 19          MEANING 
*         ------------        ------- 
* 
*         2**11     - SUB-FAULT CODE/TEST COMPLETION CODE (BIT 7).
*         2**10     - SUB-FAULT CODE/TEST COMPLETION CODE (BIT 6).
*         2**9      - SUB-FAULT CODE/TEST COMPLETION CODE (BIT 5).
*         2**8      - SUB-FAULT CODE/TEST COMPLETION CODE (BIT 4).
*         2**7      - SUB-FAULT CODE/TEST COMPLETION CODE (BIT 3).
*         2**6      - SUB-FAULT CODE/TEST COMPLETION CODE (BIT 2).
*         2**5      - SUB-FAULT CODE/TEST COMPLETION CODE (BIT 1).
*         2**4      - SUB-FAULT CODE/TEST COMPLETION CODE (BIT 0).
*         2**3      - RESERVED FOR FUTURE USE.
*         2**2      - RESERVED FOR FUTURE USE.
*         2**1      - RESERVED FOR FUTURE USE.
*         2**0      - RESERVED FOR FUTURE USE.
* 
* 
*         SENSE STATUS
*            WORD 20          MEANING 
*         ------------        ------- 
* 
*         2**11     - RESERVED FOR FUTURE USE.
*         2**10     - RESERVED FOR FUTURE USE.
*         2**9      - RESERVED FOR FUTURE USE.
*         2**8      - RESERVED FOR FUTURE USE.
*         2**7      - MICROCODE REVISION LEVEL (BIT 7). 
*         2**6      - MICROCODE REVISION LEVEL (BIT 6). 
*         2**5      - MICROCODE REVISION LEVEL (BIT 5). 
*         2**4      - MICROCODE REVISION LEVEL (BIT 4). 
*         2**3      - MICROCODE REVISION LEVEL (BIT 3). 
*         2**2      - MICROCODE REVISION LEVEL (BIT 2). 
*         2**1      - MICROCODE REVISION LEVEL (BIT 1). 
*         2**0      - MICROCODE REVISION LEVEL (BIT 0). 
* 
   MODULE ITU00,6000(57),LOCK 
***  ITU - DUMMY PARAMETER MODULE 
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU00 IS PROVIDED IN ORDER TO SUPPORT THE  RUNNING  OF 
*         ITU USING DEMOT IN AN OFF-LINE ENVIRONMENT. 
* 
*    1.2  METHOD
* 
*         1.   POST THE MODULE RUNNING MESSAGE. 
*         2.   IF REPEAT MODULE IS NOT SELECTED, EXIT THE MODULE. 
*         3.   POST THE PAUSE MESSAGE IN INDICATE THAT REPEAT MODULE IS 
*              SELECTED AND PAUSE.
*         4.   LOOP TO STEP 2.
* 
*    1.3  ERRORS REPORTED - NONE
* 
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS - NONE 
* 
*    2.2  REGISTER AND BUFFER USAGE - NONE
* 
*    2.3  SUBMODULES USED - NONE
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT ITU00-DUMMY PARAMETER MODULE
 1 FORMAT //ITU00 RM SELECTED.
* 
*------------------TEST-------------------------------------
* 
20 MSG 0 TO DISPLAY,PRINT    *POST MODULE TITLE 
* 
*------------------REPEAT/EXIT------------------------------
* 
30 IF(ES.AND.RM.EQ.0) EXIT   *EXIT MODULE IF NOT RM 
* 
   MSG 1 TO DISPLAY          *POST PAUSE MESSAGE
   PAUSE                     *STOP
   GOTO 30                   *LOOP IF RM SELECTED 
* 
   END 20 
COMPILE     *ITU00 DUMMY PARAMETER MODULE 
   MODULE ITU01,6000(57),LOCK 
***  ITU01 - ISMT DIAGNOSTIC TEST 
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU01 WILL INVOKE THE  ADAPTOR  DIAGNOSTICS  THAT  ARE 
*         EXECUTED  DURING A CONTROLWARE AUTOLOAD EXCEPT FOR THE MEMORY 
*         TEST.  THE DIAGNOSTICS WILL TEST THE HARDWARE IN THE  ADAPTOR 
*         AND   REPORT   ANY   ERRORS   THAT  THE  DIAGNOSTICS  DETECT. 
*         SUCCESSFUL EXECUTION OF THE  DIAGNOSTICS  INDICATE  THAT  THE 
*         HARDWARE IN THE HARDWARE IN THE ISMT ADAPTOR IS FAULT FREE. 
* 
*    1.2  METHOD
* 
*         1.   INITIALIZE THE TIMEOUT COUNTER B11 REGISTER. 
*         2.   POST  THE  MODULE RUNNING MESSAGE IF REPEAT CONDITION OR 
*              REPEAT MODULE IS NOT SELECTED, OTHERWISE POST THE REPEAT 
*              MESSAGE. 
*         3.   RESERVE  THE  ADAPTER  CHANNEL.
*         4.   ISSUE  THE  RUN ISMT ADAPTOR DIAGNOSTICS FUNCTION TO THE 
*              ADAPTOR AND GO TO STEP 8.
*         5.   POST  THE  MODULE RUNNING MESSAGE IF REPEAT CONDITION OR 
*              REPEAT MODULE IS NOT SELECTED, OTHERWISE POST THE REPEAT 
*              MESSAGE. 
*         6.   IF THE TIMEOUT COUNTER B11 REGISTER DOES NOT INDICATE IT 
*              IS TIME TO RESERVE THE ADAPTOR CHANNEL, GO TO STEP 8.
*         7.   RESERVE THE ADAPTOR CHANNEL. 
*         8.   DELAY 1000 DECIMAL MILLISECONDS. 
*         9.   ISSUE A STATUS FUNCTION TO THE ADAPTOR.
*         10.  IF THE STATUS FUNCTION IS REPLIED TO, GO TO STEP 14. 
*         11.  IF  THE STATUS FUNCTION ABORTS, CHECK THE ERROR CODE FOR 
*              BEING EQUAL TO 4024 OCTAL.  IF IT IS NOT EQUAL  TO  4024 
*              OCTAL, REPORT A PRODUCT OVERLAY ERROR AND GO TO STEP 16. 
*         12.  INCREMENT THE TIMEOUT COUNTER B11 REGISTER BY ONE AND IF 
*              IT IS NOT EQUAL TO 4, GO TO STEP 5.
*         13.  REPORT A 101 ADAPTOR DIAGNOSTICS TIMEOUT ERROR AND GO TO 
*              STEP 16. 
*         14.  INPUT 16 DECIMAL WORDS OF STATUS FROM THE ADAPTOR. 
*         15.  IF ALERT (BIT 11 DECIMAL) IS SET IN THE  GENERAL  STATUS 
*              WORD, REPORT A 100 ADAPTOR DIAGNOSTIC ERROR. 
*         16.  REPEAT CONDITION OR REPEAT MODULE LOOPS ON STEPS 2-15. 
* 
*    1.3  ERRORS REPORTED 
* 
*         ITU01 ABORT ON .FUNC ISMTEST.  COMMAND
*         ITU01 ABORT ON .FUNC STATUS.  COMMAND 
*         ITU01 ABORT ON .RES.  COMMAND 
*         ITU01 ABORT ON .RESET.  COMMAND 
*         ITU01 ABORT ON .STATUS.  COMMAND
* 
*         ITU01 E0100 LXXX ADAPTOR DIAGNOSTIC ERROR 
*         ITU01 E0101 LXXX ADAPTOR DIAG. TIMEOUT ERROR
* 
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS - NONE 
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B3   = LAST FUNCTION (LF REGISTER)
*         B4   = WORD COUNT (WC REGISTER) 
*         B5   = WORDS TRANSFERRED (WT REGISTER)
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B11  = INTERNAL LOOP COUNTER
*         B12  = COMMAND INDEX FOR COMMAND ABORTS 
*         B13  = MODULE ERROR COUNTER 
*         B14  = MODULE LOOP COUNTER
*         B15  = MODULE NUMBER
* 
*         SB   = GENERAL/DETAILED STATUS (1-20) 
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98A    - MODULE ERROR AND COMMAND ABORTS ERROR PROCESSOR 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT ITU01-ISMT DIAGNOSTIC TEST
 1 FORMAT ITU01 ERROR(S) = *DECD
 2 FORMAT ITU01 DIAGNOSTIC TEST-*DECD 
 3 FORMAT ITU01 EC = *DECD  LC = *DECD
* 
   EQUATE FISMTST = 3, FSTATUS = 10, RES = 20, RESET = 23 
   EQUATE STATUS = 21 
* 
*------------------INITIALIZATION---------------------------
* 
20 B15 = 01D                 *MODULE NUMBER 
   MSG 0 TO DISPLAY,PRINT    *POST MODULE TITLE 
22 B11 = 0                   *INITIALIZE INTERNAL COUNTER 
* 
*------------------TEST-------------------------------------
* 
   IF(ES.AND.CM.EQ.0)MSG 2 (B11) TO DISPLAY  *NORMAL MESSAGE
   IF(ES.AND.CM.NE.0)MSG 3(B13,B14)TO DISPLAY  *CM MESSAGE
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 72               *RESERVE ISMT CHANNEL
   B12 = FISMTST             *ISMT DIAGNOSTIC COMMAND 
   FUNC, 70, ABT 72          *ISSUE DIAGNOSTIC FUNCTION 
* 
30 IF(B11.AND.2.NE.0)GOTO 32  *IF NOT TIME FOR RES
* 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 72               *RESERVE ISMT CHANNEL
* 
32 IF(ES.AND.CM.EQ.0)MSG 2 (B11) TO DISPLAY  *NORMAL MESSAGE
   IF(ES.AND.CM.NE.0)MSG 3(B13,B14)TO DISPLAY  *CM MESSAGE
   DELAY, 1000D MSEC         *DELAY 1000 MSEC 
   B12 = FSTATUS             *STATUS FUNCTION COMMAND 
   FUNC, 12, ABT 70          *ISSUE STATUS FUNCTION 
   B12 = STATUS              *STATUS COMMAND
   STATUS 16D WORDS TO SB(1), ABT 72  *INPUT ISMT STATUS
* 
   IF(SB(1).RS.13.NE.0)ERROR 0/100 GOTO 72  *DIAG. ERROR
* 
*------------------REPEAT/EXIT------------------------------
* 
40 IF(ES.AND.CM.EQ.0)GOTO 42  *IF NOT .RC. OR .RM.
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 22                   *REPEAT CONDITION/MODULE 
* 
42 IF(B13.NE.0)MSG 1(B13)TO DAYFILE  *IF ERRORS, REPORT 
   EXIT                      *EXIT THE MODULE 
* 
*------------------ABORT PROCESSOR--------------------------
* 
70 IF(EC.NE.4024) GOTO 72    *IF NOT FUNCTION ERROR 
   GOTO 30 WHILE (B11+1.NE.4)  *FUNCTION TIMEOUT
* 
   ERROR 2/101               *DIAGNOSTIC TIMEOUT ERROR
* 
72 B13 = B13 + 1             *INCREMENT ERROR COUNT 
   IF(ES.AND.SL.NE.0) GOTO 40  *IF SCOPING SELECTED 
* 
   MSG 0 TO LINE 0           *MODULE TITLE TO ERROR DISPLAY 
   B3 = LF                   *SAVE LAST FUNCTION
   B4 = WC                   *SAVE WORD COUNT 
   B5 = WT                   *SAVE WORDS TRANSFERRED
   B6 = EA                   *SAVE ERROR ADDRESS
   B7 = EC                   *SAVE ERROR CODE 
   B8 = EM                   *SAVE ERROR MESSAGE
   IF(EC.GE.4000)MSG EM TO LINE 2  *PRODUCT OVERLAY ERROR 
   FUNC 12, ABT 74           *ISSUE STATUS FUNCTION 
   STATUS 16D WORDS TO SB(1), ABT 74  *INPUT STATUS 
74 CALL 98A                  *CALL ERROR PROCESSOR
* 
   IF(EC.NE.4024) GOTO 75    *IF NO RESPONSE TO FUNCTION DO RESET 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 72               *RESERVE ISMT CHANNEL
   B12 = RESET               *RESET COMMAND 
   FUNC, 414, ABT 72         *ISSUE MASTER CLEAR FUNCTION 
75 GOTO 40                   *GO TO CONTINUE TESTING
* 
76 END 20 
COMPILE     *ITU01 ISMT DIAGNOSTIC TEST 
   MODULE ITU03,6000(57),LOCK 
***  ITU03 - WRITE/READ MEMORY TEST 
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU03 WILL TEST THE DATA  PATH  FROM  THE  PP  TO  THE 
*         ADAPTOR  16K  MEMORY  AND  THE DATA PATH FROM THE ADAPTOR 16K 
*         MEMORY BACK TO THE PP.  THE DATA PATH  FROM  THE  PP  TO  THE 
*         ADAPTOR  16K  MEMORY  IS THE SAME DATA PATH USED FOR FUNCTION 
*         PARAMETERS SENT TO THE  ADAPTOR.   THE  DATA  PATH  FROM  THE 
*         ADAPTOR  16K MEMORY BACK TO THE PP IS THE SAME DATA PATH USED 
*         TO SEND STATUS BACK TO THE PP FOR STATUS FUNCTIONS.  THE DATA 
*         READ BACK  IS CHECKED IN THE PP AND ANY DATA ERRORS REPORTED. 
* 
*    1.2  METHOD
* 
*         1.   GENERATE A 502 OCTAL WORD RANDOM DATA PATTERN USING  THE 
*              REAL  TIME  CLOCK SEED VALUE IF THE P7 PARAMETER WORD IS 
*              EQUAL ZERO, OTHERWISE USING THE P7 PARAMETER WORD AS THE 
*              SEED VALUE.
*         2.   POST  THE  MODULE RUNNING MESSAGE IF REPEAT CONDITION OR 
*              REPEAT MODULE IS NOT SELECTED, OTHERWISE POST THE REPEAT 
*              MESSAGE. 
*         3.   RESERVE   THE  ADAPTER  CHANNEL. 
*         4.   ISSUE A DIAGNOSTIC MEMORY WRITE FUNCTION TO THE  ADAPTOR 
*              AND OUTPUT 502 OCTAL WORDS.
*         5.   ISSUE  A  DIAGNOSTIC MEMORY READ FUNCTION TO THE ADAPTOR 
*              AND INPUT 502 OCTAL WORDS. 
*         6.   ISSUE A STATUS FUNCTION TO THE ADAPTOR AND ATTEMPT INPUT 
*              16 DECIMAL STATUS WORDS. 
*         7.   IF  THE  PRODUCT  OVERLAY  DETECTS  A  4030  ERROR WHILE 
*              ATTEMPTING TO  INPUT  THE  STATUS,  REPEAT  STEP  6  TEN 
*              DECIMAL  TIMES  AND  THEN  REPORT  A  111 WAIT END-OF-OP 
*              TIMEOUT ERROR. 
*         8.   IF ALERT (BIT 11 DECIMAL) IS SET IN THE  GENERAL  STATUS 
*              WORD,  REPORT  A 102 DIAGNOSTIC MEMORY WRITE/READ STATUS 
*              ERROR AND GO TO STEP 10. 
*         9.   CHECK THE DATA INPUTTED FROM THE DIAGNOSTIC MEMORY  READ 
*              AND  REPORT  A  200  MEMORY WRITE/READ DATA ERROR IF ANY 
*              DATA ERRORS ARE DETECTED.
*         10.  REPEAT CONDITION LOOPS ON STEPS 2-9. 
*         11.  SET THE RANDOM NUMBER SEED TO THE  CONTENTS  OF  OB(501) 
*              AND REPEAT STEPS 1-9 TEN TIMES.
*         12.  REPEAT MODULE LOOPS ON STEPS 1-11. 
* 
*    1.3  ERRORS REPORTED 
* 
*         ITU03 ABORT ON .COMPARE.  COMMAND 
*         ITU03 ABORT ON .FUNC RDMEM.  COMMAND
*         ITU03 ABORT ON .FUNC STATUS.  COMMAND 
*         ITU03 ABORT ON .FUNC WRMEM.  COMMAND
*         ITU03 ABORT ON .INB.  COMMAND 
*         ITU03 ABORT ON .OUTB.  COMMAND
*         ITU03 ABORT ON .RES.  COMMAND 
*         ITU03 ABORT ON .RESET.  COMMAND 
*         ITU03 ABORT ON .STATUS.  COMMAND
* 
*         ITU03 E0102 LXXX WRITE/READ MEMORY STATUS ERROR 
*         ITU03 E0111 LXXX WAIT END-OF-OP TIMEOUT 
*         ITU03 E0200 LXXX MEMORY WRITE/READ DATA ERROR 
* 
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         PARAMETER WORD P7 OR THE REAL TIME CLOCK IS USED AS SEED  FOR 
*         THE RANDOM NUMBER GENERATOR.
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         BA   = INITIAL WORD COUNT FOR DATA COMPARE
*         B0   = TIMEOUT COUNTER
*         B3   = LAST FUNCTION (LF REGISTER)
*         B4   = WORD COUNT (WC REGISTER) 
*         B5   = WORDS TRANSFERRED (WT REGISTER)
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B10  = RANDOM NUMBER GENERATOR SEED 
*         B11  = INTERNAL LOOP COUNTER
*         B12  = C0MMAND INDEX FOR COMMAND ABORTS 
*         B13  = MODULE ERROR COUNTER 
*         B14  = MODULE LOOP COUNTER
*         B15  = MODULE NUMBER
*         WC   = WORD COUNT FOR COMPARE COMMAND 
* 
*         IB   = INPUT DATA BUFFER (0-501)
*         OB   = OUTPUT DATA BUFFER (0-501) 
*         SB   = GENERAL/DETAILED STATUS (1-20) 
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98A    - MODULE ERROR AND COMMAND ABORTS ERROR PROCESSOR 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT ITU03-WRITE/READ MEMORY TEST
 1 FORMAT ITU03 ERROR(S) = *DECD
 2 FORMAT ITU03 W/R MEMORY TEST-*DECD 
 3 FORMAT ITU03 EC = *DECD  LC = *DECD
* 
   EQUATE COMPARE = 1, FSTATUS = 10, INB = 16, OUTB = 17
   EQUATE RDMEM = 5, RES = 20, RESET = 23, STATUS = 21
   EQUATE WRMEM = 13
* 
*------------------INITIALIZATION---------------------------
* 
20 B15 = 03D                 *MODULE NUMBER 
   MSG 0 TO DISPLAY,PRINT    *POST MODULE TITLE 
22 B11 = 0                   *INITIALIZE INTERNAL COUNTER 
   B10 = RT                  *USE RT CLOCK FOR SEED 
   IF(P7.NE.0) B10 = P7      *USE SEED IN P7
* 
*------------------TEST-------------------------------------
* 
30 RANDOM TO OB FOR 502, START B10  *GENERATE DATA
* 
32 IF(ES.AND.CM.EQ.0)MSG 2 (B11) TO DISPLAY  *NORMAL MESSAGE
   IF(ES.AND.CM.NE.0)MSG 3(B13,B14)TO DISPLAY  *CM MESSAGE
* 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 70               *RESERVE ADAPTOR CHANNEL 
   B12 = WRMEM               *MEMORY WRITE FUNCTION COMMAND 
   FUNC, 65, ABT 70          *ISSUE MEMORY WRITE FUNCTION 
   B12 = OUTB                *OUTPUT COMMAND
   OUTB 502 WORDS FROM OB, ABT 70  *WRITE DATA INTO MEMORY
* 
   B12 = RDMEM               *MEMORY READ FUNC COMMAND
   FUNC, 64, ABT 70          *ISSUE MEMORY READ FUNCTION
   B12 = INB                 *INPUT COMMAND 
   INB 502 WORDS TO IB, ABT 70  *READ DATA FROM MEMORY
* 
   B0 = 0                    *INITIALIZE TIMEOUT COUNTER
34 B12 = FSTATUS             *STATUS FUNCTION COMMAND 
   FUNC, 12, ABT 70          *ISSUE STATUS FUNCTION 
   B12 = STATUS              *STATUS COMMAND
   STATUS 16D WORDS TO SB(1), ABT 60  *INPUT ADAPTOR STATUS 
* 
   IF(SB(1).RS.13.NE.0)ERROR 3/102 GOTO 70  *DATA PATH ERROR
* 
   WC = 502                  *SET COMPARE WORD COUNT
   BA = WC                   *SAVE ORIGINAL WORD COUNT
   B12 = COMPARE             *COMPARE COMMAND 
   COMPARE IB TO OB FOR WC, ABT 62  *CHECK DATA 
* 
36 IF(ES.AND.RC.EQ.0)GOTO 40  *IF NO REPEAT CONDITION 
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 32                   *REPEAT CONDITION
* 
40 B10 = OB(501)             *NEW RANDOM NUMBER SEED
   GOTO 30 WHILE (B11+1.LT.10D)  *REPEAT TEN TIMES
* 
*------------------REPEAT/EXIT------------------------------
* 
   IF(ES.AND.RM.EQ.0)GOTO 50  *IF NO REPEAT MODULE
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 22                   *REPEAT MODULE 
* 
50 IF(B13.NE.0)MSG 1(B13)TO DAYFILE  *IF ERRORS, REPORT 
   EXIT                      *EXIT THE MODULE 
* 
*------------------ABORT PROCESSOR--------------------------
* 
60 IF(EC.NE.4030) GOTO 70    *NOT CHANNEL EMPTY ERROR 
* 
   GOTO 34 WHILE(B0+1.NE.12)  *TIMEOUT END-OF-OP
* 
   ERROR 4/111 GOTO 70       *END-OF-OP ERROR 
* 
62 ERROR 3/200               *DATA COMPARE ERROR
* 
70 B13 = B13 + 1             *INCREMENT ERROR COUNT 
   IF(ES.AND.SL.NE.0) GOTO 36  *IF SCOPING SELECTED 
* 
   MSG 0 TO LINE 0           *MODULE TITLE TO ERROR DISPLAY 
   B3 = LF                   *SAVE LAST FUNCTION
   B4 = WC                   *SAVE WORD COUNT 
   B5 = WT                   *SAVE WORDS TRANSFERRED
   B6 = EA                   *SAVE ERROR ADDRESS
   B7 = EC                   *SAVE ERROR CODE 
   B8 = EM                   *SAVE ERROR MESSAGE
   IF(EC.GE.4000)MSG EM TO LINE 2  *PRODUCT OVERLAY ERROR 
   FUNC 12, ABT 74           *ISSUE STATUS FUNCTION 
   STATUS 16D WORDS TO SB(1), ABT 74  *INPUT STATUS 
74 CALL 98A                  *CALL ERROR PROCESSOR
* 
   IF(EC.NE.4024) GOTO 75    *IF NO RESPONSE TO FUNCTION DO RESET 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 70               *RESERVE ISMT CHANNEL
   B12 = RESET               *RESET COMMAND 
   FUNC, 414, ABT 70         *ISSUE MASTER CLEAR FUNCTION 
75 IF(ES.AND.CM.NE.0)GOTO 36  *IF REPEAT COND. OR MODULE
* 
   IF(B13.GE.5) GOTO 50      *EXIT IF 5 OR MORE ERRORS
* 
   GOTO 40                   *GO TO CONTINUE TESTING
* 
76 END 20 
COMPILE     *ITU03 WRITE/READ MEMORY TEST 
   MODULE ITU05,6000(57),LOCK 
***  ITU05 - READ DATA PATH TEST
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE  ITU05  WILL  TEST  THE DATA PATH FROM THE ADAPTOR 16K 
*         MEMORY TO THE PP THAT IS USED BY THE READ  (FUNCTION  CODE  = 
*         40)  FUNCTION  DURING  A  READ  FROM A 9-TRACK TAPE.  DATA IS 
*         WRITTEN INTO THE ADAPTOR  16K  MEMORY  USING  THE  DIAGNOSTIC 
*         WRITE MEMORY FUNCTION AND THEN READ USING THE DIAGNOSTIC DATA 
*         PATH READ FUNCTION.  THE DATA READ BACK IS CHECKED IN THE  PP 
*         AND ANY DATA ERRORS REPORTED. 
*    1.2  METHOD
* 
*         1.   GENERATE A 502 OCTAL WORD RANDOM DATA PATTERN USING  THE 
*              REAL  TIME  CLOCK SEED VALUE IF THE P7 PARAMETER WORD IS 
*              EQUAL ZERO, OTHERWISE USING THE P7 PARAMETER WORD AS THE 
*              SEED VALUE.
*         2.   POST  THE  MODULE RUNNING MESSAGE IF REPEAT CONDITION OR 
*              REPEAT MODULE IS NOT SELECTED, OTHERWISE POST THE REPEAT 
*              MESSAGE. 
*         3.   RESERVE  THE  ADAPTER  CHANNEL.
*         4.   ISSUE A DIAGNOSTIC MEMORY WRITE FUNCTION TO THE  ADAPTOR 
*              AND OUTPUT 502 OCTAL WORDS.
*         5.   ISSUE  A  DIAGNOSTIC  DATA  PATH  READ  FUNCTION  TO THE 
*              ADAPTOR AND INPUT 502 OCTAL WORDS. 
*         6.   ISSUE A STATUS FUNCTION TO THE ADAPTOR AND ATTEMPT INPUT 
*              16 DECIMAL STATUS WORDS. 
*         7.   IF  THE  PRODUCT  OVERLAY  DETECTS  A  4030  ERROR WHILE 
*              ATTEMPTING TO  INPUT  THE  STATUS,  REPEAT  STEP  6  TEN 
*              DECIMAL  TIMES  AND  THEN  REPORT  A  111 WAIT END-OF-OP 
*              TIMEOUT ERROR. 
*         8.   IF ALERT (BIT 11 DECIMAL) IS SET IN THE  GENERAL  STATUS 
*              WORD, REPORT A 103 READ DATA PATH STATUS ERROR AND GO TO 
*              STEP 10. 
*         9.   CHECK THE DATA INPUTTED FROM THE  DIAGNOSTIC  DATA  PATH 
*              READ  AND  REPORT A 201 READ DATA PATH DATA ERROR IF ANY 
*              DATA ERRORS ARE DETECTED.
*         10.  REPEAT CONDITION LOOPS ON STEPS 2-9. 
*         11.  SET THE RANDOM NUMBER SEED TO THE  CONTENTS  OF  OB(501) 
*              AND REPEAT STEPS 1-9 TEN TIMES.
*         12.  REPEAT MODULE LOOPS ON STEPS 1-11. 
* 
*    1.3  ERRORS REPORTED 
* 
*         ITU05 ABORT ON .COMPARE.  COMMAND 
*         ITU05 ABORT ON .FUNC RDDPAT.  COMMAND 
*         ITU05 ABORT ON .FUNC STATUS.  COMMAND 
*         ITU05 ABORT ON .FUNC WRMEM.  COMMAND
*         ITU05 ABORT ON .INB.  COMMAND 
*         ITU05 ABORT ON .OUTB.  COMMAND
*         ITU05 ABORT ON .RES.  COMMAND 
*         ITU05 ABORT ON .RESET.  COMMAND 
*         ITU05 ABORT ON .STATUS.  COMMAND
* 
*         ITU05 E0103 LXXX READ DATA PATH STATUS ERROR
*         ITU05 E0111 LXXX WAIT END-OF-OP TIMEOUT 
*         ITU05 E0201 LXXX READ DATA PATH DATA ERROR
* 
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         PARAMETER  WORD P7 OR THE REAL TIME CLOCK IS USED AS SEED FOR 
*         THE RANDOM NUMBER GENERATOR.
* 
*    2.2  REGISTER AND BUFFER USAGE 
*         BA   = INITIAL WORD COUNT FOR DATA COMPARE
*         B0   = TIMEOUT COUNTER
*         B3   = LAST FUNCTION (LF REGISTER)
*         B4   = WORD COUNT (WC REGISTER) 
*         B5   = WORDS TRANSFERRED (WT REGISTER)
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B10  = RANDOM NUMBER GENERATOR SEED 
*         B11  = INTERNAL LOOP COUNTER
*         B12  = C0MMAND INDEX FOR COMMAND ABORTS 
*         B13  = MODULE ERROR COUNTER 
*         B14  = MODULE LOOP COUNTER
*         B15  = MODULE NUMBER
*         WC   = WORD COUNT FOR COMPARE COMMAND 
* 
*         IB   = INPUT DATA BUFFER (0-501)
*         OB   = OUTPUT DATA BUFFER (0-501) 
*         SB   = GENERAL/DETAILED STATUS (1-20) 
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98A    - MODULE ERROR AND COMMAND ABORTS ERROR PROCESSOR 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT ITU05-READ DATA PATH TEST 
 1 FORMAT ITU05 ERROR(S) = *DECD
 2 FORMAT ITU05 READ DATA PATH-*DECD
 3 FORMAT ITU05 EC = *DECD  LC = *DECD
* 
   EQUATE COMPARE = 1, FSTATUS = 10, INB = 17, OUTB = 17
   EQUATE RDDPAT = 6, RES = 20, RESET = 23, STATUS = 21 
   EQUATE WRMEM = 13
* 
*------------------INITIALIZATION---------------------------
* 
20 B15 = 05D                 *MODULE NUMBER 
   MSG 0 TO DISPLAY,PRINT    *POST MODULE TITLE 
22 B11 = 0                   *INITIALIZE INTERNAL COUNTER 
   B10 = RT                  *USE RT CLOCK FOR SEED 
   IF(P7.NE.0) B10 = P7      *USE SEED IN P7
* 
*------------------TEST-------------------------------------
* 
30 RANDOM TO OB FOR 502, START B10  *GENERATE DATA
* 
32 IF(ES.AND.CM.EQ.0)MSG 2 (B11) TO DISPLAY  *NORMAL MESSAGE
   IF(ES.AND.CM.NE.0)MSG 3(B13,B14)TO DISPLAY  *CM MESSAGE
* 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 70               *RESERVE ADAPTOR CHANNEL 
   B12 = WRMEM               *MEMORY WRITE FUNCTION COMMAND 
   FUNC, 65, ABT 70          *ISSUE MEMORY WRITE FUNCTION 
   B12 = OUTB                *OUTPUT COMMAND
   OUTB 502 WORDS FROM OB, ABT 70  *WRITE DATA INTO MEMORY
* 
   B12 = RDDPAT              *DATA PATH READ FUNC COMMAND 
   FUNC, 66, ABT 70          *ISSUE DATA PATH READ FUNCTION 
   B12 = INB                 *INPUT COMMAND 
   INB 502 WORDS TO IB, ABT 70  *READ DATA FROM MEMORY
* 
   B0 = 0                    *INITIALIZE TIMEOUT COUNTER
34 B12 = FSTATUS             *STATUS FUNCTION COMMAND 
   FUNC, 12, ABT 70          *ISSUE STATUS FUNCTION 
   B12 = STATUS              *STATUS COMMAND
   STATUS 16D WORDS TO SB(1), ABT 60  *INPUT ADAPTOR STATUS 
* 
   IF(SB(1).RS.13.NE.0)ERROR 3/103 GOTO 70  *DATA PATH ERROR
* 
   WC = 502                  *SET COMPARE WORD COUNT
   BA = WC                   *SAVE ORIGINAL WORD COUNT
   B12 = COMPARE             *COMPARE COMMAND 
   COMPARE IB TO OB FOR WC, ABT 62  *CHECK DATA 
* 
36 IF(ES.AND.RC.EQ.0)GOTO 40  *IF NO REPEAT CONDITION 
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 32                   *REPEAT CONDITION
* 
40 B10 = OB(501)             *NEW RANDOM NUMBER SEED
   GOTO 30 WHILE (B11+1.LT.10D)  *REPEAT TEN TIMES
* 
*------------------REPEAT/EXIT------------------------------
* 
* 
   IF(ES.AND.RM.EQ.0)GOTO 50  *IF NO REPEAT MODULE
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 22                   *REPEAT MODULE 
* 
50 IF(B13.NE.0)MSG 1(B13)TO DAYFILE  *IF ERRORS, REPORT 
   EXIT                      *EXIT THE MODULE 
* 
*------------------ABORT PROCESSOR--------------------------
* 
60 IF(EC.NE.4030) GOTO 70    *NOT CHANNEL EMPTY ERROR 
* 
   GOTO 34 WHILE(B0+1.NE.12)  *TIMEOUT END-OF-OP
* 
   ERROR 4/111 GOTO 70       *END-OF-OP ERROR 
* 
62 ERROR 3/201               *DATA COMPARE ERROR
* 
70 B13 = B13 + 1             *INCREMENT ERROR COUNT 
   IF(ES.AND.SL.NE.0) GOTO 36  *IF SCOPING SELECTED 
* 
   MSG 0 TO LINE 0           *MODULE TITLE TO ERROR DISPLAY 
   B3 = LF                   *SAVE LAST FUNCTION
   B4 = WC                   *SAVE WORD COUNT 
   B5 = WT                   *SAVE WORDS TRANSFERRED
   B6 = EA                   *SAVE ERROR ADDRESS
   B7 = EC                   *SAVE ERROR CODE 
   B8 = EM                   *SAVE ERROR MESSAGE
   IF(EC.GE.4000)MSG EM TO LINE 2  *PRODUCT OVERLAY ERROR 
   FUNC 12, ABT 74           *ISSUE STATUS FUNCTION 
   STATUS 16D WORDS TO SB(1), ABT 74  *INPUT STATUS 
74 CALL 98A                  *CALL ERROR PROCESSOR
* 
   IF(EC.NE.4024) GOTO 75    *IF NO RESPONSE TO FUNCTION DO RESET 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 70               *RESERVE ISMT CHANNEL
   B12 = RESET               *RESET COMMAND 
   FUNC, 414, ABT 70         *ISSUE MASTER CLEAR FUNCTION 
75 IF(ES.AND.CM.NE.0)GOTO 36  *IF REPEAT COND. OR MODULE
* 
   IF(B13.GE.5) GOTO 50      *EXIT IF 5 OR MORE ERRORS
* 
   GOTO 40                   *GO TO CONTINUE TESTING
* 
76 END 20 
COMPILE     *ITU05 READ DATA PATH TEST
   MODULE ITU07,6000(57),LOCK 
***  ITU07 - WRITE DATA PATH TEST 
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU07 WILL TEST THE  DATA  PATH  TO  THE  ADAPTOR  16K 
*         MEMORY FROM THE PP THAT IS USED BY THE WRITE (FUNCTION CODE = 
*         50) FUNCTION DURING A WRITE  TO  A  9-TRACK  TAPE.   DATA  IS 
*         WRITTEN INTO THE ADAPTOR 16K MEMORY USING THE DIAGNOSTIC DATA 
*         PATH WRITE FUNCTION AND THEN READ USING THE  DIAGNOSTIC  READ 
*         MEMORY FUNCTION.  THE DATA READ BACK IS CHECKED IN THE PP AND 
*         ANY DATA ERRORS REPORTED. 
* 
*    1.2  METHOD
* 
*         1.   GENERATE A 502 OCTAL WORD RANDOM DATA PATTERN USING  THE 
*              REAL  TIME  CLOCK SEED VALUE IF THE P7 PARAMETER WORD IS 
*              EQUAL ZERO, OTHERWISE USING THE P7 PARAMETER WORD AS THE 
*              SEED VALUE.
*         2.   POST  THE  MODULE RUNNING MESSAGE IF REPEAT CONDITION OR 
*              REPEAT MODULE IS NOT SELECTED, OTHERWISE POST THE REPEAT 
*              MESSAGE. 
*         3.   RESERVE  THE  ADAPTER  CHANNEL.
*         4.   ISSUE A DIAGNOSTIC  DATA  PATH  WRITE  FUNCTION  TO  THE 
*              ADAPTOR AND OUTPUT 502 OCTAL WORDS.
*         5.   ISSUE  A  DIAGNOSTIC MEMORY READ FUNCTION TO THE ADAPTOR 
*              AND INPUT 502 OCTAL WORDS. 
*         6.   ISSUE A STATUS FUNCTION TO THE ADAPTOR AND ATTEMPT INPUT 
*              16 DECIMAL STATUS WORDS. 
*         7.   IF THE  PRODUCT  OVERLAY  DETECTS  A  4030  ERROR  WHILE 
*              ATTEMPTING  TO  INPUT  THE  STATUS,  REPEAT  STEP  6 TEN 
*              DECIMAL TIMES AND  THEN  REPORT  A  111  WAIT  END-OF-OP 
*              TIMEOUT ERROR. 
*         8.   IF  ALERT  (BIT 11 DECIMAL) IS SET IN THE GENERAL STATUS 
*              WORD, REPORT A 104 WRITE DATA PATH STATUS ERROR  AND  GO 
*              TO STEP 10.
*         9.   CHECK  THE  DATA  INPUTTED  FROM THE DIAGNOSTIC READ AND 
*              REPORT A 202 WRITE DATA PATH  DATA  ERROR  IF  ANY  DATA 
*              ERRORS ARE DETECTED. 
*         10.  REPEAT CONDITION LOOPS ON STEPS 2-9. 
*         11.  SET  THE  RANDOM  NUMBER SEED TO THE CONTENTS OF OB(501) 
*              AND REPEAT STEPS 1-9 TEN TIMES.
*         12.  REPEAT MODULE LOOPS ON STEPS 1-11. 
* 
*    1.3  ERRORS REPORTED 
* 
*         ITU07 ABORT ON .COMPARE.  COMMAND 
*         ITU07 ABORT ON .FUNC RDMEM.  COMMAND
*         ITU07 ABORT ON .FUNC STATUS.  COMMAND 
*         ITU07 ABORT ON .FUNC WRDPAT.  COMMAND 
*         ITU07 ABORT ON .INB.  COMMAND 
*         ITU07 ABORT ON .OUTB.  COMMAND
*         ITU07 ABORT ON .RES.  COMMAND 
*         ITU07 ABORT ON .RESET.  COMMAND 
*         ITU07 ABORT ON .STATUS.  COMMAND
* 
*         ITU07 E0104 LXXX WRITE DATA PATH STATUS ERROR 
*         ITU07 E0111 LXXX WAIT END-OF-OP TIMEOUT 
*         ITU07 E0202 LXXX WRITE DATA PATH DATA ERROR 
* 
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         PARAMETER WORD P7 OR THE REAL TIME CLOCK IS USED AS SEED  FOR 
*         THE RANDOM NUMBER GENERATOR.
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         BA   = INITIAL WORD COUNT FOR DATA COMPARE
*         B0   = TIMEOUT COUNTER
*         B3   = LAST FUNCTION (LF REGISTER)
*         B4   = WORD COUNT (WC REGISTER) 
*         B5   = WORDS TRANSFERRED (WT REGISTER)
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B10  = RANDOM NUMBER GENERATOR SEED 
*         B11  = INTERNAL LOOP COUNTER
*         B12  = C0MMAND INDEX FOR COMMAND ABORTS 
*         B13  = MODULE ERROR COUNTER 
*         B14  = MODULE LOOP COUNTER
*         B15  = MODULE NUMBER
*         WC   = WORD COUNT FOR COMPARE COMMAND 
* 
*         IB   = INPUT DATA BUFFER (0-501)
*         OB   = OUTPUT DATA BUFFER (0-501) 
*         SB   = GENERAL/DETAILED STATUS (1-20) 
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98A    - MODULE ERROR AND COMMAND ABORTS ERROR PROCESSOR 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT ITU07-WRITE DATA PATH TEST
 1 FORMAT ITU07 ERROR(S) = *DECD
 2 FORMAT ITU07 WRITE DATA PATH-*DECD 
 3 FORMAT ITU07 EC = *DECD  LC = *DECD
* 
   EQUATE COMPARE = 1, FSTATUS = 10, INB = 16, OUTB = 17
   EQUATE RDMEM = 5, RES = 20, RESET = 23, STATUS = 21
   EQUATE WRDPAT = 14 
* 
*------------------INITIALIZATION---------------------------
* 
20 B15 = 07D                 *MODULE NUMBER 
   MSG 0 TO DISPLAY,PRINT    *POST MODULE TITLE 
22 B11 = 0                   *INITIALIZE INTERNAL COUNTER 
   B10 = RT                  *USE RT CLOCK FOR SEED 
   IF(P7.NE.0) B10 = P7      *USE SEED IN P7
* 
*------------------TEST-------------------------------------
* 
30 RANDOM TO OB FOR 502, START B10  *GENERATE DATA
* 
32 IF(ES.AND.CM.EQ.0)MSG 2 (B11) TO DISPLAY  *NORMAL MESSAGE
   IF(ES.AND.CM.NE.0)MSG 3(B13,B14)TO DISPLAY  *CM MESSAGE
* 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 70               *RESERVE ADAPTOR CHANNEL 
   B12 = WRDPAT              *DATA PATH WRITE FUNC COMMAND
   FUNC, 67, ABT 70          *ISSUE DATA PATH WRITE FUNCTION
   B12 = OUTB                *OUTPUT COMMAND
   OUTB 502 WORDS FROM OB, ABT 70  *WRITE DATA INTO MEMORY
* 
   B12 = RDMEM               *MEMORY READ FUNCTION COMMAND
   FUNC, 64, ABT 70          *ISSUE MEMORY READ FUNCTION
   B12 = INB                 *INPUT COMMAND 
   INB 502 WORDS TO IB, ABT 70  *READ DATA FROM MEMORY
* 
   B0 = 0                    *INITIALIZE TIMEOUT COUNTER
34 B12 = FSTATUS             *STATUS FUNCTION COMMAND 
   FUNC, 12, ABT 70          *ISSUE STATUS FUNCTION 
   B12 = STATUS              *STATUS COMMAND
   STATUS 16D WORDS TO SB(1), ABT 60  *INPUT ADAPTOR STATUS 
* 
   IF(SB(1).RS.13.NE.0)ERROR 3/104 GOTO 70  *DATA PATH ERROR
* 
   WC = 502                  *SET COMPARE WORD COUNT
   BA = WC                   *SAVE ORIGINAL WORD COUNT
   B12 = COMPARE             *COMPARE COMMAND 
   COMPARE IB TO OB FOR WC, ABT 62  *CHECK DATA 
* 
36 IF(ES.AND.RC.EQ.0)GOTO 40  *IF NO REPEAT CONDITION 
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 32                   *REPEAT CONDITION
* 
40 B10 = OB(501)             *NEW RANDOM NUMBER SEED
   GOTO 30 WHILE (B11+1.LT.10D)  *REPEAT TEN TIMES
* 
*------------------REPEAT/EXIT------------------------------
* 
* 
   IF(ES.AND.RM.EQ.0)GOTO 50  *IF NO REPEAT MODULE
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 22                   *REPEAT MODULE 
* 
50 IF(B13.NE.0)MSG 1(B13)TO DAYFILE  *IF ERRORS, REPORT 
   EXIT                      *EXIT THE MODULE 
* 
*------------------ABORT PROCESSOR--------------------------
* 
60 IF(EC.NE.4030) GOTO 70    *NOT CHANNEL EMPTY ERROR 
* 
   GOTO 34 WHILE(B0+1.NE.12)  *TIMEOUT END-OF-OP
* 
   ERROR 4/111 GOTO 70       *END-OF-OP ERROR 
* 
62 ERROR 3/202               *DATA COMPARE ERROR
* 
70 B13 = B13 + 1             *INCREMENT ERROR COUNT 
   IF(ES.AND.SL.NE.0) GOTO 36  *IF SCOPING SELECTED 
* 
   MSG 0 TO LINE 0           *MODULE TITLE TO ERROR DISPLAY 
   B3 = LF                   *SAVE LAST FUNCTION
   B4 = WC                   *SAVE WORD COUNT 
   B5 = WT                   *SAVE WORDS TRANSFERRED
   B6 = EA                   *SAVE ERROR ADDRESS
   B7 = EC                   *SAVE ERROR CODE 
   B8 = EM                   *SAVE ERROR MESSAGE
   IF(EC.GE.4000)MSG EM TO LINE 2  *PRODUCT OVERLAY ERROR 
   FUNC 12, ABT 74           *ISSUE STATUS FUNCTION 
   STATUS 16D WORDS TO SB (1), ABT 74  *INPUT STATUS
74 CALL 98A                  *CALL ERROR PROCESSOR
* 
   IF(EC.NE.4024) GOTO 75    *IF NO RESPONSE TO FUNCTION DO RESET 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 70               *RESERVE ISMT CHANNEL
   B12 = RESET               *RESET COMMAND 
   FUNC, 414, ABT 70         *ISSUE MASTER CLEAR FUNCTION 
75 IF(ES.AND.CM.NE.0)GOTO 36  *IF REPEAT COND. OR MODULE
* 
   IF(B13.GE.5) GOTO 50      *EXIT IF 5 OR MORE ERRORS
* 
   GOTO 40                   *GO TO CONTINUE TESTING
* 
76 END 20 
COMPILE     *ITU07 WRITE DATA PATH TEST 
   MODULE ITU09,6000(57),LOCK 
***  ITU09 - WRITE/READ DATA PATH TEST
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU09 WILL TEST THE  DATA  PATH  TO  THE  ADAPTOR  16K 
*         MEMORY FROM THE PP THAT IS USED BY THE WRITE (FUNCTION CODE = 
*         50) FUNCTION DURING A WRITE TO A 9-TRACK TAPE  AND  THE  DATA 
*         PATH  FROM  THE  ADAPTOR 16K MEMORY TO THE PP THAT IS USED BY 
*         THE READ (FUNCTION CODE = 40) FUNCTION DURING A READ  FROM  A 
*         9-TRACK  TAPE.   DATA  IS WRITTEN INTO THE ADAPTOR 16K MEMORY 
*         USING THE DIAGNOSTIC DATA PATH WRITE FUNCTION AND  THEN  READ 
*         USING  THE DIAGNOSTIC DATA PATH READ FUNCTION.  THE DATA READ 
*         BACK IS CHECKED IN THE PP AND ANY DATA ERRORS REPORTED. 
* 
*    1.2  METHOD
* 
*         1.   GENERATE A 502 OCTAL WORD RANDOM DATA PATTERN USING  THE 
*              REAL  TIME  CLOCK SEED VALUE IF THE P7 PARAMETER WORD IS 
*              EQUAL ZERO, OTHERWISE USING THE P7 PARAMETER WORD AS THE 
*              SEED VALUE.
*         2.   POST  THE  MODULE RUNNING MESSAGE IF REPEAT CONDITION OR 
*              REPEAT MODULE IS NOT SELECTED, OTHERWISE POST THE REPEAT 
*              MESSAGE. 
*         3.   RESERVE  THE  ADAPTER  CHANNEL.
*         4.   ISSUE A DIAGNOSTIC  DATA  PATH  WRITE  FUNCTION  TO  THE 
*              ADAPTOR AND OUTPUT 502 OCTAL WORDS.
*         5.   ISSUE  A  DIAGNOSTIC  DATA  PATH  READ  FUNCTION  TO THE 
*              ADAPTOR AND INPUT 502 OCTAL WORDS. 
*         6.   ISSUE A STATUS FUNCTION TO THE ADAPTOR AND ATTEMPT INPUT 
*              16 DECIMAL STATUS WORDS. 
*         7.   IF  THE  PRODUCT  OVERLAY  DETECTS  A  4030  ERROR WHILE 
*              ATTEMPTING TO  INPUT  THE  STATUS,  REPEAT  STEP  6  TEN 
*              DECIMAL  TIMES  AND  THEN  REPORT  A  111 WAIT END-OF-OP 
*              TIMEOUT ERROR. 
*         8.   IF ALERT (BIT 11 DECIMAL) IS SET IN THE  GENERAL  STATUS 
*              WORD,  REPORT  A 105 WR/RD DATA PATH STATUS ERROR AND GO 
*              TO STEP 10.
*         9.   CHECK THE DATA INPUTTED FROM THE  DIAGNOSTIC  DATA  PATH 
*              READ  AND REPORT A 203 WR/RD DATA PATH DATA ERROR IF ANY 
*              ERRORS ARE DETECTED. 
*         10.  REPEAT CONDITION LOOPS ON STEPS 2-9. 
*         11.  SET THE RANDOM NUMBER SEED TO THE  CONTENTS  OF  OB(501) 
*              AND REPEAT STEPS 1-9 TEN TIMES.
*         12.  REPEAT MODULE LOOPS ON STEPS 1-11. 
* 
*    1.3  ERRORS REPORTED 
* 
*         ITU09 ABORT ON .COMPARE.  COMMAND 
*         ITU09 ABORT ON .FUNC RDDPAT.  COMMAND 
*         ITU09 ABORT ON .FUNC STATUS.  COMMAND 
*         ITU09 ABORT ON .FUNC WRDPAT.  COMMAND 
*         ITU09 ABORT ON .INB.  COMMAND 
*         ITU09 ABORT ON .OUTB.  COMMAND
*         ITU09 ABORT ON .RES.  COMMAND 
*         ITU09 ABORT ON .RESET.  COMMAND 
*         ITU09 ABORT ON .STATUS.  COMMAND
* 
*         ITU09 E0105 LXXX WR/RD DATA PATH STATUS ERROR 
*         ITU09 E0111 LXXX WAIT END-OF-OP TIMEOUT 
*         ITU09 E0203 LXXX WR/RD DATA PATH DATA ERROR 
* 
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         PARAMETER WORD P7 OR THE REAL TIME CLOCK IS USED AS SEED  FOR 
*         THE RANDOM NUMBER GENERATOR.
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         BA   = INITIAL WORD COUNT FOR DATA COMPARE
*         B0   = TIMEOUT COUNTER
*         B3   = LAST FUNCTION (LF REGISTER)
*         B4   = WORD COUNT (WC REGISTER) 
*         B5   = WORDS TRANSFERRED (WT REGISTER)
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B10  = RANDOM NUMBER GENERATOR SEED 
*         B11  = INTERNAL LOOP COUNTER
*         B12  = C0MMAND INDEX FOR COMMAND ABORTS 
*         B13  = MODULE ERROR COUNTER 
*         B14  = MODULE LOOP COUNTER
*         B15  = MODULE NUMBER
*         WC   = WORD COUNT FOR COMPARE COMMAND 
* 
*         IB   = INPUT DATA BUFFER (0-501)
*         OB   = OUTPUT DATA BUFFER (0-501) 
*         SB   = GENERAL/DETAILED STATUS (1-20) 
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98A    - MODULE ERROR AND COMMAND ABORTS ERROR PROCESSOR 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT ITU09-WR/RD DATA PATH TEST
 1 FORMAT ITU09 ERROR(S) = *DECD
 2 FORMAT ITU09 W/R DATA PATH-*DECD 
 3 FORMAT ITU09 EC = *DECD  LC = *DECD
* 
   EQUATE COMPARE = 1, FSTATUS = 10, INB = 16, OUTB = 17
   EQUATE RDDPAT = 6, RES = 20, RESET = 23, STATUS = 21 
   EQUATE WRDPAT = 14 
* 
*------------------INITIALIZATION---------------------------
* 
20 B15 = 09D                 *MODULE NUMBER 
   MSG 0 TO DISPLAY,PRINT    *POST MODULE TITLE 
22 B11 = 0                   *INITIALIZE INTERNAL COUNTER 
   B10 = RT                  *USE RT CLOCK FOR SEED 
   IF(P7.NE.0) B10 = P7      *USE SEED IN P7
* 
*------------------TEST-------------------------------------
* 
30 RANDOM TO OB FOR 502, START B10  *GENERATE DATA
* 
32 IF(ES.AND.CM.EQ.0)MSG 2 (B11) TO DISPLAY  *NORMAL MESSAGE
   IF(ES.AND.CM.NE.0)MSG 3(B13,B14)TO DISPLAY  *CM MESSAGE
* 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 70               *RESERVE ADAPTOR CHANNEL 
   B12 = WRDPAT              *DATA PATH WRITE FUNC COMMAND
   FUNC, 67, ABT 70          *ISSUE DATA PATH WRITE FUNCTION
   B12 = OUTB                *OUTPUT COMMAND
   OUTB 502 WORDS FROM OB, ABT 70  *WRITE DATA INTO MEMORY
* 
   B12 = RDDPAT              *DATA PATH READ FUNC COMMAND 
   FUNC, 66, ABT 70          *ISSUE DATA PATH READ FUNCTION 
   B12 = INB                 *INPUT COMMAND 
   INB 502 WORDS TO IB, ABT 70  *READ DATA FROM MEMORY
* 
   B0 = 0                    *INITIALIZE TIMEOUT COUNTER
34 B12 = FSTATUS             *STATUS FUNCTION COMMAND 
   FUNC, 12, ABT 70          *ISSUE STATUS FUNCTION 
   B12 = STATUS              *STATUS COMMAND
   STATUS 16D WORDS TO SB(1), ABT 60  *INPUT ADAPTOR STATUS 
* 
   IF(SB(1).RS.13.NE.0)ERROR 3/105 GOTO 70  *DATA PATH ERROR
* 
   WC = 502                  *SET COMPARE WORD COUNT
   BA = WC                   *SAVE ORIGINAL WORD COUNT
   B12 = COMPARE             *COMPARE COMMAND 
   COMPARE IB TO OB FOR WC, ABT 62  *CHECK DATA 
* 
36 IF(ES.AND.RC.EQ.0)GOTO 40  *IF NO REPEAT CONDITION 
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 32                   *REPEAT CONDITION
* 
40 B10 = OB(501)             *NEW RANDOM NUMBER SEED
   GOTO 30 WHILE (B11+1.LT.10D)  *REPEAT TEN TIMES
* 
*------------------REPEAT/EXIT------------------------------
* 
* 
   IF(ES.AND.RM.EQ.0)GOTO 50  *IF NO REPEAT MODULE
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 22                   *REPEAT MODULE 
* 
50 IF(B13.NE.0)MSG 1(B13)TO DAYFILE  *IF ERRORS, REPORT 
   EXIT                      *EXIT THE MODULE 
* 
*------------------ABORT PROCESSOR--------------------------
* 
60 IF(EC.NE.4030) GOTO 70    *NOT CHANNEL EMPTY ERROR 
* 
   GOTO 34 WHILE(B0+1.NE.12)  *TIMEOUT END-OF-OP
* 
   ERROR 4/111 GOTO 70       *END-OF-OP ERROR 
* 
62 ERROR 3/203               *DATA COMPARE ERROR
* 
70 B13 = B13 + 1             *INCREMENT ERROR COUNT 
   IF(ES.AND.SL.NE.0) GOTO 36  *IF SCOPING SELECTED 
* 
   MSG 0 TO LINE 0           *MODULE TITLE TO ERROR DISPLAY 
   B3 = LF                   *SAVE LAST FUNCTION
   B4 = WC                   *SAVE WORD COUNT 
   B5 = WT                   *SAVE WORDS TRANSFERRED
   B6 = EA                   *SAVE ERROR ADDRESS
   B7 = EC                   *SAVE ERROR CODE 
   B8 = EM                   *SAVE ERROR MESSAGE
   IF(EC.GE.4000)MSG EM TO LINE 2  *PRODUCT OVERLAY ERROR 
   FUNC 12, ABT 74           *ISSUE STATUS FUNCTION 
   STATUS 16D WORDS TO SB (1), ABT 74  *INPUT STATUS
74 CALL 98A                  *CALL ERROR PROCESSOR
* 
   IF(EC.NE.4024) GOTO 75    *IF NO RESPONSE TO FUNCTION DO RESET 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 70               *RESERVE ISMT CHANNEL
   B12 = RESET               *RESET COMMAND 
   FUNC, 414, ABT 70         *ISSUE MASTER CLEAR FUNCTION 
75 IF(ES.AND.CM.NE.0)GOTO 36  *IF REPEAT COND. OR MODULE
* 
   IF(B13.GE.5) GOTO 50      *EXIT IF 5 OR MORE ERRORS
* 
   GOTO 40                   *GO TO CONTINUE TESTING
* 
76 END 20 
COMPILE     *ITU09 WRITE/READ DATA PATH TEST
   MODULE ITU11,6000(57),LOCK 
***  ITU11 - LOOP WRITE/READ TEST 
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU11 WILL TEST THE WRITE AND READ DATA PATHS  IN  THE 
*         ADAPTOR,  THE CABLE TO THE STREAMING TAPE UNIT (STU), AND THE 
*         STU INTERFACE.  THE MODULE WILL CONNECT TO THE STU,  SET  THE 
*         LOOP  WRITE-TO-READ  MODE  FLAG,  ISSUE A WRITE FUNCTION, AND 
*         OUTPUT 400 OCTAL WORDS.  THE DATA IS LOOPED FROM THE  ADAPTOR 
*         HARDWARE  THROUGH  THE  STU INTERFACE AND BACK TO THE ADAPTOR 
*         WHERE IT IS CHECKED.  GENERAL STATUS IS USED  TO  DETECT  ANY 
*         ERRORS. 
* 
*    1.2  METHOD
* 
*         1.   BUILD FORMAT FUNCTION PARAMETERS.
*         2.   IF THE P4 PARAMETER WORD IS EQUAL TO ZERO GENERATE A 400 
*              OCTAL WORD RANDOM DATA PATTERN USING THE REAL TIME CLOCK 
*              SEED  VALUE  IF  THE  P7 PARAMETER  WORD  IS EQUAL ZERO, 
*              OTHERWISE USING THE P7 PARAMETER WORD AS THE SEED VALUE. 
*              IF THE P4 PARAMETER WORD IS EQUAL TO 1XXX GENERATE A 400 
*              OCTAL  WORD  ALTERNATE  DATA  PATTERN OF XXX.  IF THE P4 
*              PARAMETER  WORD  IS  EQUAL  TO 2XXX GENERATE A 400 OCTAL 
*              WORD FIXED DATA PATTERN OF XXX.
*         3.   POST THE MODULE RUNNING MESSAGE IF REPEAT  CONDITION  OR 
*              REPEAT MODULE IS NOT SELECTED, OTHERWISE POST THE REPEAT 
*              MESSAGE. 
*         4.   IF  B9 IS NOT EQUAL TO ZERO, ISSUE A RELEASE FUNCTION TO 
*              THE ISMT ADAPTOR.
*         5.   RESERVE  THE  ADAPTER  CHANNEL.
*         6.   ISSUE A FORMAT  FUNCTION  TO  THE  ADAPTOR,  OUTPUT  THE 
*              FORMAT  FUNCTION  PARAMETERS,  AND  SET  THE B9 REGISTER 
*              EQUAL TO ONE.
*         7.   ISSUE A STATUS FUNCTION TO  THE  ADAPTOR  AND  INPUT  16 
*              DECIMAL STATUS WORDS.
*         8.   IF THE NOT TCU CONNECT (BIT 9 DECIMAL)  IS  SET  IN  THE 
*              GENERAL  STATUS  WORD,  REPORT  A 106 STU CONNECT STATUS 
*              ERROR AND GO TO STEP 14. 
*         9.   IF  UNIT  READY (BIT 0) IS NOT SET IN THE GENERAL STATUS 
*              WORD, REPORT A 112 STU NOT READY STATUS ERROR AND GO  TO 
*              STEP 14. 
*         10.  ISSUE  THE  LOOP  WRITE-TO-READ TO TAPE UNIT FUNCTION TO 
*              THE ADAPTOR. 
*         11.  ISSUE A WRITE FUNCTION TO THE  ADAPTOR  AND  OUTPUT  400 
*              OCTAL WORDS OF DATA. 
*         12.  ISSUE  A  STATUS  FUNCTION  TO  THE ADAPTOR AND INPUT 16 
*              DECIMAL STATUS WORDS.
*         13.  IF ALERT (BIT 11 DECIMAL) IS SET IN THE  GENERAL  STATUS 
*              WORD, REPORT A 107 LOOP WRITE-TO-READ STATUS ERROR.
*         14.  REPEAT CONDITION LOOPS ON STEPS 3-13.
*         15.  SET  THE  RANDOM  NUMBER SEED TO THE CONTENTS OF OB(501) 
*              AND REPEAT STEPS 2-13 TEN TIMES. 
*         16.  ISSUE A RELEASE FUNCTION TO THE ISMT ADAPTOR AND SET THE 
*              B9 REGISTER TO ZERO. 
*         17.  REPEAT MODULE LOOPS ON STEPS 2-16. 
* 
*    1.3  ERRORS REPORTED 
* 
* 
*         ITU11 ABORT ON .FUNC FORMAT.  COMMAND 
*         ITU11 ABORT ON .FUNC LOOP WRITE/READ.  COMMAND
*         ITU11 ABORT ON .FUNC RELEASE.  COMMAND
*         ITU11 ABORT ON .FUNC STATUS.  COMMAND 
*         ITU11 ABORT ON .FUNC WRITE.  COMMAND
*         ITU11 ABORT ON .OUTB.  COMMAND
*         ITU11 ABORT ON .RES.  COMMAND 
*         ITU11 ABORT ON .RESET.  COMMAND 
*         ITU11 ABORT ON .STATUS.  COMMAND
* 
*         ITU11 E0106 LXXX STU CONNECT STATUS ERROR 
*         ITU11 E0107 LXXX LOOP WRITE-TO-READ STATUS ERR. 
*         ITU11 E0112 LXXX STU NOT READY STATUS ERROR 
* 
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         PARAMETER WORD P7 OR THE REAL TIME CLOCK IS USED AS SEED  FOR 
*         THE RANDOM NUMBER GENERATOR.
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = STATUS RETRY COUNT 
*         B1   = SELECTED PATTERN 
*         B3   = LAST FUNCTION (LF REGISTER)
*         B4   = WORD COUNT (WC REGISTER) 
*         B5   = WORDS TRANSFERRED (WT REGISTER)
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B9   = STU CONNECTED FLAG 
*         B10  = RANDOM NUMBER GENERATOR SEED 
*         B11  = INTERNAL LOOP COUNTER
*         B12  = C0MMAND INDEX FOR COMMAND ABORTS 
*         B13  = MODULE ERROR COUNTER 
*         B14  = MODULE LOOP COUNTER
*         B15  = MODULE NUMBER
* 
*         OB   = OUTPUT DATA BUFFER (0-377) 
*              = FORMAT FUNCTION PARAMETERS (502-504) 
*         SB   = GENERAL/DETAILED STATUS (1-20) 
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98A    - MODULE ERROR AND COMMAND ABORTS ERROR PROCESSOR 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT ITU11-LOOP WRITE/READ TEST
 1 FORMAT ITU11 ERROR(S) = *DECD
 2 FORMAT ITU11 LOOP W/R TEST-*DECD 
 3 FORMAT ITU11 EC = *DECD  LC = *DECD
* 
   EQUATE FORMAT = 2, FSTATUS = 10, LPWRRD = 4, OUTB = 17 
   EQUATE RELEASE = 7, RES = 20, RESET = 23, STATUS = 21
   EQUATE WRITE = 22
* 
*------------------INITIALIZATION---------------------------
* 
20 B15 = 11D                 *MODULE NUMBER 
   MSG 0 TO DISPLAY,PRINT    *POST MODULE TITLE 
22 B11 = 0                   *INITIALIZE INTERNAL COUNTER 
24 B10 = RT                  *USE RT CLOCK FOR SEED 
   IF(P7.NE.0) B10 = P7      *USE SEED IN P7
* 
   B0 = B11 AND 170 LS 5     BUILD FORMAT WORD 1
   B0 = B0 + 4220 
   OB(502) = B0 + SB(72)     *FORM FORMAT WORD 1
   OB(503) = 400             *FORM FORMAT WORD 2
   OB(504) = 0               *FORM FORMAT WORD 3
* 
*------------------TEST-------------------------------------
* 
30 RANDOM TO OB FOR 400, START B10  *GENERATE DATA
   IF(P4.AND.3000.EQ.0) GOTO 32             *RANDOM PATTERN SELECTED
   B1=P4                                    *FIXED PATTERN
   IF(P4.AND.3000.EQ.2000)B1=P4.XOR.7777    *IF ALTERNATE PATTERN 
   DUP 8 BITS OF P4/B1 TO OB FOR 400        *GENERATE DATA
* 
32 IF(ES.AND.CM.EQ.0)MSG 2 (B11) TO DISPLAY  *NORMAL MESSAGE
   IF(ES.AND.CM.NE.0)MSG 3(B13,B14)TO DISPLAY  *CM MESSAGE
* 
   IF(B9.EQ.0) GOTO 34       *IF UNIT NOT CONNECTED 
* 
   B12 = RELEASE             *RELEASE FUNCTION COMMAND
   FUNC 1, ABT 70            *ISSUE RELEASE UNIT FUNCTION 
   B9 = 0                    *INDICATE UNIT NOT CONNECTED 
* 
34 B12 = RES                 *RES COMMAND 
   RES, ABT 70               *RESERVE ADAPTOR CHANNEL 
   B12 = FORMAT              *FORMAT FUNCTION COMMAND 
   FUNC 4, ABT 70            *ISSUE FORMAT FUNCTION 
   B9 = 1                    *INDICATE UNIT CONNECTED 
   B12 = OUTB                *OUTB COMMAND
   OUTB 3 WORDS FROM OB(502), ABT 70  *OUTPUT FORMAT PARAMS 
* 
   B0 = 0                    *INITIALIZE RETRY COUNT
35 B12 = FSTATUS             *STATUS FUNCTION COMMAND 
   FUNC, 12, ABT 60          *ISSUE STATUS FUNCTION 
   B12 = STATUS              *STATUS COMMAND
   STATUS 16D WORDS TO SB(1), ABT 70  *INPUT ADAPTOR STATUS 
   IF(SB(1).AND.1000.EQ.0)GOTO 36  *IF STU CONNECTED
* 
   ERROR 3/106 GOTO 70       *NO CONNECT
* 
   GOTO 42                   *GO TO REPEAT CONDITION
* 
36 IF(SB(1).AND.1.NE.0)GOTO 40  *IF STU READY 
* 
   ERROR 3/112 GOTO 70       *NOT READY 
* 
   GOTO 42                   *GO TO REPEAT CONDITION
* 
40 B12 = LPWRRD              *LOOP WRITE/RD FUNCTION COMMAND
   FUNC, 175, ABT 70         *ISSUE LOOP WRITE/RD FUNCTION
* 
   B12 = WRITE               *WRITE FUNCTION COMMAND
   FUNC, 50, ABT 70          *ISSUE WRITE FUNCTION
   B12 = OUTB                *OUTPUT COMMAND
   OUTB 400 WORDS FROM OB, ABT 70  *WRITE DATA FOR LOOP W/R 
* 
   B12 = FSTATUS             *STATUS FUNCTION COMMAND 
   FUNC, 12, ABT 70          *ISSUE STATUS FUNCTION 
   B12 = STATUS              *STATUS COMMAND
   STATUS 16D WORDS TO SB(1), ABT 70  *INPUT ADAPTOR STATUS 
* 
   IF(SB(1).RS.13.NE.0)ERROR 2/107 GOTO 70  *DATA PATH ERROR
* 
42 IF(ES.AND.RC.EQ.0)GOTO 44  *IF NO REPEAT CONDITION 
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 32                   *REPEAT CONDITION
* 
44 B10 = OB(377)             *NEW RANDOM NUMBER SEED
   B11 = B11 + 1             *BUMP EXTERNAL LOOP COUNTER
   IF(B11.AND.7.NE.0)GOTO 30  *REPEAT EIGHT TIMES 
* 
   IF(B9.EQ.0) GOTO 50       *IF UNIT NOT CONNECTED 
* 
   B12 = RELEASE             *RELEASE FUNCTION COMMAND
   FUNC 1, ABT 70            *ISSUE RELEASE UNIT FUNCTION 
   B9 = 0                    *INDICATE UNIT NOT CONNECTED 
* 
   IF(B11.LT.50) GOTO 24     *LOOP TO DO FIVE TABLES
* 
*------------------REPEAT/EXIT------------------------------
* 
50 IF(ES.AND.RM.EQ.0)GOTO 52  *IF NO REPEAT MODULE
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 22                   *REPEAT MODULE 
* 
52 IF(B13.NE.0)MSG 1(B13)TO DAYFILE  *IF ERRORS, REPORT 
   GOTO 76                   *EXIT THE MODULE 
* 
*------------------ABORT PROCESSOR--------------------------
* 
60 IF(EC.NE.4024) GOTO 70    *NOT FUNCTION TIMEOUT ERROR
* 
   GOTO 35 WHILE(B0+1.LT.6)  *LOOP IF FUNCTION TIMEOUT ERROR
* 
70 B13 = B13 + 1             *INCREMENT ERROR COUNT 
   IF(ES.AND.SL.NE.0) GOTO 42  *IF SCOPING SELECTED 
* 
   MSG 0 TO LINE 0           *MODULE TITLE TO ERROR DISPLAY 
   B3 = LF                   *SAVE LAST FUNCTION
   B4 = WC                   *SAVE WORD COUNT 
   B5 = WT                   *SAVE WORDS TRANSFERRED
   B6 = EA                   *SAVE ERROR ADDRESS
   B7 = EC                   *SAVE ERROR CODE 
   B8 = EM                   *SAVE ERROR MESSAGE
   IF(EC.GE.4000)MSG EM TO LINE 2  *PRODUCT OVERLAY ERROR 
   B9 = 0                    *INDICATE UNIT NOT CONNECTED 
   FUNC 12, ABT 72           *ISSUE STATUS FUNCTION 
   STATUS 16D WORDS TO SB (1), ABT 72  *INPUT STATUS
   FUNC 1, ABT 72            *ISSUE RELEASE UNIT FUNCTION 
72 CALL 98A                  *CALL ERROR PROCESSOR
* 
   IF(EC.NE.4024) GOTO 75    *IF NO RESPONSE TO FUNCTION DO RESET 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 70               *RESERVE ISMT CHANNEL
   B12 = RESET               *RESET COMMAND 
   FUNC, 414, ABT 70         *ISSUE MASTER CLEAR FUNCTION 
75 IF(ES.AND.CM.NE.0)GOTO 42  *IF REPEAT COND. OR MODULE
* 
   IF(B13.GE.5) GOTO 52      *EXIT IF 5 OR MORE ERRORS
* 
   GOTO 44                   *GO TO CONTINUE TESTING
* 
76 END 20 
COMPILE     *ITU11 LOOP WRITE/READ TEST 
   MODULE ITU13,6000(57),LOCK 
***  ITU13 - STU DIAGNOSTIC TEST
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU13 IS USED TO  INVOKE  THE  DIAGNOSTICS  WHICH  ARE 
*         RESIDENT  IN  THE  CONTROL STORAGE IN THE STREAMING TAPE UNIT 
*         (STU).  THE DIAGNOSTICS  THAT  CAN  BE  INVOKED  IN  THE  STU 
*         PERTAIN  TO  THE  STU  INTERFACE,  FORMATTER,  AND  THE DRIVE 
*         HARDWARE ELEMENTS.  THE LENGTH OF TIME  REQUIRED  TO  EXECUTE 
*         ANY  OF THE STU DIAGNOSTICS IS DEPENDENT ON THE TEST SELECTED 
*         AND LENGTH OF THE TAPE IF ONE IS  REQUIRED  (MILLISECONDS  TO 
*         MINUTES).   PARAMETER  WORD  P0  IS  USED  TO SELECT THE TEST 
*         NUMBER TO BE EXECUTED AND PARAMETER WORD P1 IS USED TO SELECT 
*         THE  TEST  OPTION.   SEE THE STU FIELD SERVICE MANUAL FOR THE 
*         TEST THAT CAN BE SELECTED (P0), THE TEST  OPTIONS  (P1),  THE 
*         FAULT SYMPTOM CODES, AND FAULT CODES. 
* 
*    1.2  METHOD
* 
*         1.   CALL MODULE ITU98S TO VALIDATE THE CONTENTS OF PARAMETER 
*              WORDS P0 AND P1. 
*         2.   BUILD FORMAT FUNCTION PARAMETERS.
*         3.   POST THE MODULE RUNNING MESSAGE IF REPEAT  CONDITION  OR 
*              REPEAT MODULE IS NOT SELECTED, OTHERWISE POST THE REPEAT 
*              MESSAGE. 
*         4.   RESERVE  THE  ADAPTER  CHANNEL.
*         5.   ISSUE A FORMAT  FUNCTION  TO  THE  ADAPTOR,  OUTPUT  THE 
*              FORMAT  FUNCTION  PARAMETERS,  AND  SET  THE B9 REGISTER 
*              EQUAL TO ONE.
*         6.   ISSUE A STATUS FUNCTION TO  THE  ADAPTOR  AND  INPUT  16 
*              DECIMAL STATUS WORDS.
*         7.   IF ALERT (BIT 11 DECIMAL) AND THE NOT TCU CONNECT (BIT 9 
*              DECIMAL) ARE BOTH SET IN THE GENERAL STATUS WORD, REPORT 
*              A 106 STU CONNECT STATUS ERROR AND GO TO STEP 15.
*         8.   BUILD   THE   RUN   REMOTE   STU  DIAGNOSTICS  FUNCTIONS 
*              PARAMETERS,  ISSUE  THE  RUN  REMOTE   STU   DIAGNOSTICS 
*              FUNCTION, AND OUTPUT THE FUNCTION PARAMETER WORDS. 
*         9.   POST THE MODULE RUNNING MESSAGE IF REPEAT  CONDITION  OR 
*              REPEAT MODULE IS NOT SELECTED, OTHERWISE POST THE REPEAT 
*              MESSAGE. 
*         10.  RESERVE THE ADAPTOR CHANNEL. 
*         11.  ISSUE  A  STATUS  FUNCTION TO THE ADAPTOR AND ATTEMPT TO 
*              INPUT 16 DECIMAL STATUS WORDS. 
*         12.  IF THE STATUS INPUT COMMAND ABORTS BECAUSE  THE  CHANNEL 
*              IS  NOT  FULL  AFTER BEING ACTIVATED, DELAY 1000 DECIMAL 
*              MILLISECONDS, INCREMENT THE INTERNAL COUNTER BY ONE, AND 
*              GO TO STEP 9.
*         13.  IF  ALERT  (BIT 11 DECIMAL) IS SET IN THE GENERAL STATUS 
*              WORD, REPORT A 110 STU DIAGNOSTIC DETECTED ERROR.
*         14.  IF B9 IS NOT EQUAL TO ZERO, ISSUE A RELEASE FUNCTION  TO 
*              THE ISMT ADAPTOR.
*         15.  REPEAT CONDITION OR REPEAT MODULE LOOPS ON STEPS 3-14. 
* 
*    1.3  ERRORS REPORTED 
* 
* 
*         ITU13 ABORT ON .FUNC FORMAT.  COMMAND 
*         ITU13 ABORT ON .FUNC RELEASE.  COMMAND
*         ITU13 ABORT ON .FUNC STATUS.  COMMAND 
*         ITU13 ABORT ON .FUNC STUTEST.  COMMAND
*         ITU13 ABORT ON .OUTB.  COMMAND
*         ITU13 ABORT ON .RES.  COMMAND 
*         ITU13 ABORT ON .RESET.  COMMAND 
*         ITU13 ABORT ON .STATUS.  COMMAND
* 
*         ITU13 E0106 LXXX STU CONNECT STATUS ERROR 
*         ITU13 E0110 LXXX STU DIAGNOSTIC DETECTED ERROR
* 
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         P0   = STU TEST NUMBER
*         P1   = STU TEST OPTION
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = STATUS RETRY COUNT 
*         B3   = LAST FUNCTION (LF REGISTER)
*         B4   = WORD COUNT (WC REGISTER) 
*         B5   = WORDS TRANSFERRED (WT REGISTER)
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B9   = STU CONNECTED FLAG 
*         B11  = INTERNAL LOOP COUNTER
*         B12  = C0MMAND INDEX FOR COMMAND ABORTS 
*         B13  = MODULE ERROR COUNTER 
*         B14  = MODULE LOOP COUNTER
*         B15  = MODULE NUMBER
* 
*         IB   = STU UNIT STATUS (1-24) 
*         OB   = STU DIAGNOSTIC PARAMETERS (0-1)
*              = FORMAT FUNCTION PARAMETERS (502-504) 
*         SB   = GENERAL/DETAILED STATUS (1-20) 
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98S    - VALIDATE STU DIAGNOSTIC PARAMETERS
*         ITU98A    - MODULE ERROR AND COMMAND ABORT ERROR PROCESSOR
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT ITU13-STU DIAGNOSTIC TEST 
 1 FORMAT ITU13 ERROR(S) = *DECD
 2 FORMAT ITU13 STU DIAGNOSTIC-*DECD
 3 FORMAT ITU13 EC = *DECD  LC = *DECD
* 
   EQUATE FORMAT = 2, FSTATUS = 10, OUTB = 17, RELEASE = 7
   EQUATE RES = 20, RESET = 23, STATUNT = 11, STATUS = 21 
   EQUATE STUTEST = 12
* 
*------------------INITIALIZATION---------------------------
* 
20 MSG 0 TO DISPLAY,PRINT    *POST MODULE TITLE 
   B15 = 13D                 *MODULE NUMBER 
   CALL,98S                  *CHECK PARAMETERS WORDS P0-P1
* 
   OB(502) = 4220+SB(72)     *FORM FORMAT WORD 1
   OB(503) = 400             *FORM FORMAT WORD 2
   OB(504) = 0               *FORM FORMAT WORD 3
22 B11 = 0                   *INITIALIZE INTERNAL COUNTER 
* 
*------------------TEST-------------------------------------
* 
   IF(ES.AND.CM.EQ.0)MSG 2 (B11) TO DISPLAY  *NORMAL MESSAGE
   IF(ES.AND.CM.NE.0)MSG 3(B13,B14)TO DISPLAY  *CM MESSAGE
   B12 = RES                 *RES COMMAND 
   RES, ABT 72               *RESERVE ADAPTOR CHANNEL 
   B12 =FORMAT               *FORMAT FUNCTION COMMAND 
   FUNC 4, ABT 72            *ISSUE FORMAT FUNCTION 
   B12 = OUTB                *OUTB COMMAND
   OUTB 3 WORDS FROM OB(502), ABT 72  *OUTPUT FORMAT PARAMS 
   B9 = 1                    *INDICATE UNIT CONNECTED 
* 
   B0 = 0                    *INITIALIZE RETRY COUNT
24 B12 = FSTATUS             *STATUS FUNCTION COMMAND 
   FUNC, 12, ABT 60          *ISSUE STATUS FUNCTION 
   B12 = STATUS              *STATUS COMMAND
   STATUS 16D WORDS TO SB(1), ABT 72  *INPUT ADAPTOR STATUS 
   IF(SB(1).RS.13.EQ.0) GOTO 30  *NO ALERT STATUS 
* 
   IF(SB(1).AND.1000.EQ.0)GOTO 30  *IF STU CONNECTED
* 
   ERROR 3/106 GOTO 72       *NO CONNECT
* 
   GOTO 40                   *GO TO REPEAT CONDITION
* 
30 OB(0) = P0                *STU TEST NUMBER 
   OB(1) = P1                *STU TEST OPTION 
* 
   B12 = STUTEST             *STU TEST FUNCTION COMMAND 
   FUNC, 63, ABT 72          *ISSUE STU TEST FUNCTION 
   B12 = OUTB                *OUTB COMMAND
   OUTB 2 WORDS FROM OB(0), ABT 72  *OUTPUT FORMAT PARAMS 
* 
32 IF(ES.AND.CM.EQ.0)MSG 2 (B11) TO DISPLAY  *NORMAL MESSAGE
   IF(ES.AND.CM.NE.0)MSG 3(B13,B14)TO DISPLAY  *CM MESSAGE
   B12 = RES                 *RES COMMAND 
   RES, ABT 72               *RESERVE ADAPTOR CHANNEL 
* 
   B12 = FSTATUS             *STATUS FUNCTION COMMAND 
   FUNC, 12, ABT 72          *ISSUE STATUS FUNCTION 
   B12 = STATUS              *STATUS COMMAND
   STATUS 16D WORDS TO SB(1), ABT 70  *INPUT ADAPTOR STATUS 
   IF(SB(1).RS.13.NE.0)ERROR 5/110 GOTO 72  *STU ERROR
   GOTO 36                   *GO TO RELEASE STU 
* 
34 DELAY 1000D MSEC          *DELAY 
   B11 = B11 + 1             *INCREMENT COUNTER 
   GOTO 32                   *LOOP UNTIL STU TEST DONE
* 
36 IF(B9.EQ.0) GOTO 40       *IF UNIT NOT CONNECTED 
* 
   B12 = RELEASE             *RELEASE FUNCTION COMMAND
   FUNC 1, ABT 72            *ISSUE RELEASE UNIT FUNCTION 
   B9 = 0                    *INDICATE UNIT NOT CONNECTED 
* 
*------------------REPEAT/EXIT------------------------------
* 
40 IF(ES.AND.CM.EQ.0)GOTO 42  *IF NO .RC. OR .RM. 
* 
   B14 = B14 + 1             *INCREMENT PASS COUNT
   GOTO 22                   *REPEAT CONDITION/MODULE 
* 
42 IF(B13.NE.0)MSG 1(B13)TO DAYFILE  *IF ERRORS, REPORT 
   GOTO 76                   *EXIT THE MODULE 
* 
*------------------ABORT PROCESSOR--------------------------
* 
60 IF(EC.NE.4024) GOTO 72    *NOT FUNCTION TIMEOUT ERROR
* 
   GOTO 24 WHILE(B0+1.LT.6)  *LOOP IF FUNCTION TIMEOUT ERROR
* 
   GOTO 72                   *REPORT FUNCTION TIMEOUT ERROR 
* 
70 IF(EC.EQ.4030) GOTO 34    *IF FULL ERROR ON INPUT
* 
72 B13 = B13 + 1             *INCREMENT ERROR COUNT 
   IF(ES.AND.SL.NE.0) GOTO 36  *IF SCOPING SELECTED 
* 
   MSG 0 TO LINE 0           *MODULE TITLE TO ERROR DISPLAY 
   B3 = LF                   *SAVE LAST FUNCTION
   B4 = WC                   *SAVE WORD COUNT 
   B5 = WT                   *SAVE WORDS TRANSFERRED
   B6 = EA                   *SAVE ERROR ADDRESS
   B7 = EC                   *SAVE ERROR CODE 
   B8 = EM                   *SAVE ERROR MESSAGE
   IF(EC.GE.4000)MSG EM TO LINE 2  *PRODUCT OVERLAY ERROR 
   B9 = 0                    *INDICATE UNIT NOT CONNECTED 
   FUNC 12, ABT 74           *ISSUE STATUS FUNCTION 
   STATUS 16D WORDS TO SB(1), ABT 74  *INPUT STATUS 
   FUNC 312, ABT 74          *ISSUE UNIT STATUS FUNCTION
   INB 20D WORDS TO IB(1), ABT 74  *INPUT STATUS
   FUNC 1, ABT 74            *ISSUE RELEASE UNIT FUNCTION 
74 CALL 98A                  *CALL ERROR PROCESSOR
* 
   IF(EC.NE.4024) GOTO 75    *IF NO RESPONSE TO FUNCTION DO RESET 
   B12 = RES                 *RESERVE COMMAND 
   RES, ABT 70               *RESERVE ISMT CHANNEL
   B12 = RESET               *RESET COMMAND 
   FUNC, 414, ABT 70         *ISSUE MASTER CLEAR FUNCTION 
75 IF(ES.AND.CM.NE.0)GOTO 40  *IF REPEAT COND. OR MODULE
* 
   IF(B13.GE.5) GOTO 42      *EXIT IF 5 OR MORE ERRORS
* 
   GOTO 36                   *GO TO CONTINUE TESTING
* 
76 END 20 
COMPILE     *ITU13 STU DIAGNOSTIC TEST
   MODULE ITU14,6000(57),LOCK 
***  ITU14 - DEAD MAN TIMER TEST
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         ITU14 VERIFIES THAT THE DEAD MAN TIMER
*         DEACTIVATES THE CHANNEL AFTER THE SPECIFIED 
*         AMOUNT OF TIME (FROM 15 TO 20 SECONDS). 
*         THIS MODULE DOES NOT SUPPORT REPEAT CONDITION.
* 
*    1.2  METHOD
* 
*         ISSUE THE ISMT DIAGNOSTIC MEMORY WRITE FUNCTION (0065)
*         ACTIVATE THE CHANNEL
*         TIME HOW LONG IT TAKES FOR THE ADAPTER TO DEACTIVATE THE
*         CHANNEL 
*         REPORT ERROR IF IT WAS TOO LONG OR TOO SHORT
*         VERIFY THAT GENERAL STATUS IS EQUAL TO 4000 
* 
* 
*    1.3  ERRORS
* 
*         ITU14 DEADMAN TIMER TOO SHORT (LT 15 SEC) 
*         ITU14 DEADMAN TIMER TOO LONG  (GT 20 SEC) 
*         ITU14 NOT EXECUTED, NEEDS AL=21 
*         ITU14 GENERAL STATUS INCORRECT
  
* 
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         NO SPECIAL ENTRY CONDITIONS 
* 
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0 - TEMPORARY STORAGE
*         B1 - TEMPORARY STORAGE
*         B2 - TEMPORARY STORAGE
*         B3 - LAST FUNCTION (LF REGISTER)/TEMPORARY STORAGE
*         B4 - WORD COUNT (WC REGISTER)/TEMPORARY STORAGE 
*         B5 - WORDS TRANSFERRED (WT REGISTER)/TEMPORARY STORAGE
*         B6 - ERROR ADDRESS (EA REGISTER)/TEMPORARY STORAGE
*         B7 - ERROR CODE (EC REGISTER)/TEMPORARY STORAGE 
*         B8 - ERROR MESSAGE (EM REGISTER)
*         B9 - MAX. TIME LIMIT (UPPER 12) 
*         B10 - MAX. TIME LIMIT (LOWER 12)
*         B12 - COMMAND INDEX FOR COMMAND ABORTS
*         B13 - MODULE ERROR COUNTER
*         B14 - MODULE LOOP COUNTER 
*         B15 - MODULE NUMBER 
*         ES, EC, EM, EA - STANDARD USAGE 
* 
*         BUFFERS USED- 
*         OB(0) AND OB(1) - TIME IN MICROSECONDS
*         OB(2) AND OB(3) - TIME IN MILLISECONDS
*         OB(4) AND OB(5) - TIME IN SECONDS 
*         OB(504) - FLAG BITS 
*         FLAG1 - EXPECTED (SET)/UNEXPECTED (CLEAR) 
*                 ERROR FLAG BIT
* 
*    2.3  SUBMODULES REFERENCED-
*         ITU98A - MODULE ERROR AND COMMAND ABORTS ERROR PROCESSOR
*         ITU14A - INTEGER DIVISION BY 1000D
* 
*         REMARKS-
*         15,000,000D = 71160700B  15.0 SECONDS 
*         16,773,118D = 77767776B  16.773 SECONDS 
*         17,000,000D = 100663100B   17.0 SECONDS 
*         20,000,000D = 114226400B   20.0 SECONDS 
* 
*         THE INITIAL DELAY USES A 4095D USEC DELAY 
*         TO ASSURE THAT THE REAL TIME CLOCK WRAPS AROUND.
*         THIS IS THE ONLY TECHNIQUE THAT WILL OVERRIDE 
*         THE 4.0 SECOND MAXIMUM TIME BETWEEN RELEASES
*         WHICH THE OPERATING SYSTEMS REQUIRE.
* 
* 
* 
1  FORMAT ITU14 - DEAD MAN TIMER TEST 
2  FORMAT ITU14 ERROR(S) = *DECD
3  FORMAT TIME = *DD SECONDS + *DED MILLISECONDS
4  FORMAT // ITU14 NOT EXECUTED, NEEDS AL=0021,AL=*OCT // 
5  FORMAT ITU14 -PAUSE- REPEAT MODULE SELECTED
6  FORMAT ITU14 - DEADMAN TIMER LESS THAN 15.0 SECONDS
* 
* ---------FUNCTION CODE EQUATES
* 
   EQUATE GSTAT TO 0012, WRMEM TO 0065
* 
* ---------STATUS BIT EQUATES 
* 
   EQUATE DMT TO 4000 
* 
* ---------TIME LIMIT EQUATES 
* 
   EQUATE T15S TO 3606D, T17S TO 4095D    *15 SEC OR 17 SEC 
   EQUATE TD15SU TO 7116, TD15SL TO 0700  *DELAY TIME(15.0 SEC) 
   EQUATE TD16SU TO 7776, TD16SL TO 7776  *DELAY TIME(16.7 SEC) 
   EQUATE TD17SU TO 0066, TD17SL TO 3100  *DELAY TIME(17.0 SEC) 
   EQUATE TMAXU TO 1422, TMAXL TO 6400    *UPPER TIME LIMIT 
   EQUATE TMINU TO 7116, TMINL TO 0700    *LOWER TIME LIMIT 
* 
* 
* 
20 MSG 1 TO DISPLAY, PRINT
   IF (AL.GE.21) GOTO 22
   MSG 4 (AL) TO DISPLAY, PRINT 
   MSG 4 (AL) TO LINE 2 
21 IF(ES.AND.RM.EQ.0) GOTO 76 
   MSG 5 TO LINE 1
   MSG 5 TO DISPLAY, PRINT
   PAUSE
   GOTO 20
* 
* --------INITIALIZE. 
* 
22 B15=14D                   *MODULE NUMBER 
   B0=0                      *TEMPORARY STORAGE 
   B13=0                     *ERROR COUNT 
   WC=1 
   BA=0 
   OB(BA)=0 
* 
*        RESERVE, CONNECT, ETC. 
* 
* 
* --------PERFORM DEAD MAN TIMER TEST.
* 
30 B6 = TD15SU               *ACCUMULATED TIME
   B7 = TD15SL               *ACCUMULATED TIME
   B0 = T15S                 *SET 15.0 SEC. DELAY 
   B9 = TD16SU               *SET MAX. TIME LIMIT 
   B10 = TD16SL 
* 
40 B12 = 20                  *COMMAND INDEX 
   RES, ABT 70               *RESERVE CHANNEL 
   B12 = 13 
   FUNC WRMEM, ABT 70 
   B12 = 25                  *COMMAND INDEX 
   ACN, ABT 70
   B12 = 26                  *COMMAND INDEX 
   OUT CHAIN, ABT 70
   B3=0 
* 
* ---------DELAY 15.0 SECONDS 
* 
41 DELAY 4095D USEC 
   GOTO 41 WHILE (B3+1.LT.B0) 
   DELAY 231D MSEC
   B14=RT                    *START CLOCK 
* 
42 B4=B14                    *SAVE OLD TIME 
   B14=RT                    *SAVE NEW TIME 
* 
* ---------CALCULATE ELAPSED TIME 
* 
   B5=B14-B4.RS.17D          *BORROW BIT
   B5=B14-B4+B5              *ELAPSED TIME
* 
* ---------ADD ELAPSED TIME TO ACCUMULATED TIME 
* 
   B4=B7+B5.RS.12D           *CARRY BIT 
   B6=B6+B4                  *UPPER 12 BITS 
   B7=B7+B5                  *LOWER 12 BITS 
* 
   IF (B6.GT.B9) GOTO 50
   IF (B6.LT.B9) GOTO 44
   IF (B7.GT.B10) GOTO 50    *IF ETL.GT.LOWER MAX TIME, 
* 
44 B12 = 25 
   ACN, ABT 42               *BOTTOM OF WAIT LOOP 
* 
   B12 = 27                   *COMMAND INDEX
   DCN, ABT 45
* 
45 IF (B9.NE.7776B) GOTO 46 
   IF (B6.LT.TMINU) ERROR 22/302, GOTO 70   *REPORT TOO SHORT ERROR 
   IF (B6.GT.TMINU) GOTO 46 
   IF (B7.LT.TMINL) ERROR 22/302, GOTO 70   *REPORT TOO SHORT ERROR 
* 
46 B12 = 20                  *COMMAND INDEX 
   RES,ABT 70 
   B12 = 10 
   FUNC GSTAT, ABT 70 
   B12 = 21                  *COMMAND INDEX 
   STATUS 1 WORDS TO SB, ABT 70 
   IF (SB.AND.DMT.NE.DMT) ERROR 20/300, GOTO 70 
   GOSUB 56 
   GOTO 76                   *TERMINATE 
* 
* ---------REPORT TOO LONG ERROR
* 
50 B12 = 27                   *COMMAND INDEX
   DCN, ABT 51
51 B12 = 24                   *COMMAND INDEX
   REL, ABT 70
   IF (B0.EQ.T17S) ERROR 21/301, GOTO 70    *TOO LONG ERROR 
   B6 = TD17SU                *ACCUMULATED TIME 
   B7 = TD17SL
   B0 = T17S                  *SET 17 SEC DELAY 
   B9 = TMAXU                 *SET MAX. TIME LIMIT
   B10 = TMAXL
   GOTO 40                    *REPEAT DEADMAN TIMER TEST
* 
* ---------CONVERT USEC TO MSEC AND SEC 
* 
56 OB(0)=B6                  *SAVE USEC 
   OB(1)=B7 
   CALL 14A                  *DIVIDE BY 1000D 
   OB(2)=B6                  *SAVE MSEC 
   OB(3)=B7 
   CALL 14A                  *DIVIDE BY 1000D 
   OB(4)=B6                  *SAVE SEC
   OB(5)=B7 
* 
* ---------CALCULATE RESIDUAL MSEC
* 
57 B2=OB(3)-1000D.RS.17D     *BORROW BIT
   OB(2)=OB(2)-B2 
   OB(3)=OB(3)-1000D
   GOTO 57 WHILE (B7-1.NE.0)
* 
   IF (B9.NE.7776B) OB(5)=OB(5)+17D     *ADD 17 SEC FOR OVERFLOW
   MSG 3(OB(5),OB(3)) TO LINE 13
   IF (OB(5).LT.15) MSG 6 TO LINE 13
   PICTURE
   RETURN 
* 
* --------ABORT PROCESSOR-----------
* 
70 B13 = B13 + 1              *INCREMENT ERROR COUNT
   IF(ES.AND.SL.NE.0) GOTO 40   *IF SCOPING SELECTED
* 
   MSG 1 TO LINE 0            *MODULE TITLE TO ERROR DISPLAY
   B3 = LF                    *SAVE LAST FUNCTION 
   B4 = WC                    *SAVE WORD COUNT
   B5 = WT                    *SAVE WORDS TRANSFERRED 
   B6 = EA                    *SAVE ERROR ADDRESS 
   B7 = EC                    *SAVE ERROR CODE
   B8 = EM                    *SAVE ERROR MESSAGE 
   IF(EC.GE.4000)MSG EM TO LINE 2   *PRODUCT OVERLAY ERROR
74 CALL 98A                   *CALL ERROR PROCESSOR 
* 
* 
/--------------TERMINATE------------- 
* 
76 IF (ES.AND RM.NE.0) GOTO 22
   IF (B13.NE.0) MSG 2 (B13) TO DISPLAY, PRINT,DAYFILE
77 END 20 
COMPILE      *ITU14 ISMT DIAGNOSTIC TEST
   MODULE ITU14A,6000(57),LOCK
*           ITU14A - INTEGER DIVIDE BY 1000D
* 
*         PURPOSE-
*         ITU14A DIVIDES THE 24 BIT NUMBER CONTAINED IN 
*         REGISTERS B6/B7 BY 1000D AND REPLACES IT WITH 
*         THE QUOTIENT. 
* 
*         METHOD- 
*         1000D IS SUBTRACTED FROM THE 24 BIT DIVIDEND
*         UNTIL IT GOES NEGATIVE.  THE NUMBER OF SUBTRACTS
*         MINUS ONE IS THEN THE QUOTIENT. 
/ 
*         ENTRY-
*         B6 - UPPER 12 BITS OF THE 24 BIT DIVIDEND 
*         B7 - LOWER 12 BITS OF THE 24 BIT DIVIDEND 
* 
*         EXIT- 
*         B6 - UPPER 12 BITS OF THE 24 BIT QUOTIENT 
*         B7 - LOWER 12 BITS OF THE 24 BIT QUOTIENT 
*         OB(502) THROUGH OB(504) ARE DESTROYED 
*         IB(502) THROUGH IB(504) ARE DESTROYED 
* 
*         SUBMODULES REFERENCED-NONE. 
* 
*         REGISTERS USED- 
*         B2 - BORROW/CARRY BIT 2**12 
*         B3 - BORROW BIT 2**24 
*         B4 - UPPER 12 BITS OF QUOTIENT
*         B5 - LOWER 12 BITS OF QUOTIENT
* 
*         BUFFERS USED- 
*         OB(502) THROUGH OB(504) AND IB(502) THROUGH 
*           IB(504) ARE USED TO SAVE THE REGISTERS. 
* 
*         REMARKS-
*         BY CHANGING THE EQUATE FOR DIVISOR, THIS MODULE 
*         CAN BE MODIFIED TO DIVIDE BY ANY NUMBER LESS
*         THAN 4096D. 
* 
*         KNOWN LIMITATIONS-
* 
* 
/---------MISCELLANEOUS EQUATES 
* 
   EQUATE DIVISOR TO 1000D
* 
/---------SAVE THE REGISTERS
* 
20 OB(503)=B0 
   OB(502)=B1 
   OB(501)=B2 
   IB(503)=B3 
   IB(502)=B4 
   IB(501)=B5 
   B4=0 
   B5=0 
* 
/---------SUBTRACT DIVISOR FROM DIVIDEND (B6/B7)
* 
30 B2=B7-DIVISOR.RS.17D      *BORROW BIT 2**12
   B3=B6-B2.RS.17D           *BORROW BIT 2**24
/ 
   B7=B7-DIVISOR+B3          *LOWER 12 BITS 
   B6=B6-B2                  *UPPER 12 BITS 
   IF (B3.NE.0) GOTO 34      *EXIT IF NEGATIVE
* 
/---------INCREMENT QUOTIENT (B4/B5)
* 
   B2=B5+1.RS.12D            *CARRY BIT 2**12 
   B4=B4+B2                  *UPPER 12 BITS 
   B5=B5+1                   *LOWER 12-BITS 
   GOTO 30
* 
/---------REPLACE DIVIDEND WITH QUOTIENT
* 
34 B6=B4                     *UPPER 12 BITS 
   B7=B5                     *LOWER 12 BITS 
* 
/---------RESTORE REGISTERS 
* 
   B0=OB(503) 
   B1=OB(502) 
   B2=OB(501) 
   B3=IB(503) 
   B4=IB(502) 
   B5=IB(501) 
* 
/---------EXIT
* 
   EXIT 
   END 20 
COMPILE 
   MODULE ITU21,6000(57),LOCK 
***  ITU21 - ADAPTER MEMORY DUMP ROUTINE
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU21 WILL DUMP THE ADAPTER MEMORY TO THE  PRINT  FILE 
*         IN 400 HEX BYTE BLOCKS. PARAMETER P8 CONTROLS THE  NUMBER  OF 
*         BLOCKS AND PARAMETER P9 THE STARTING BYTE ADDRESS.
* 
*    1.2  METHOD
* 
*         1.   INITIALIZE ADAPTER ADDRESS FROM P9 AND NUMBER OF  BLOCKS 
*              FROM P8. TEST P8 PLUS P9 NOT GREATER THAN 100B.
*         2.   RES THE I/O CHANNEL. 
*         3.   FUNCTION THE ADAPTER TO AUTODUMP MEMORY. 
*         4.   INB CHAIN 400 OCTAL WORD TO IB(0). 
*         5.   IF OB CONTAINS 400 OCTAL WORDS SKIP STEP 6.
*         6.   COPY IB(0) TO OB(0) FOR FOUR HUNDRED WORDS.
*         7.   GO TO STEP 4 UNTIL OB AND  IB  (0-377)  CONTAIN  200 HEX 
*              BYTES OF ADAPTER MEMORY. 
*         8.   DISCONNECT THE CHANNEL AND TERMINATE THE INB CHAIN.
*         9.   POST MESSAGE TO PRINT OF THE HEX BYTE ADDRESS. 
*         10.  POST MESSAGES TO PRINT OF 80 HEX BYTE DATA OF ADAPTER
*              MEMORY.
*         11.  REPEAT STEPS 9 AND 10 FOR 200 HEX BYTES. 
*         12.  REPEAT STEPS 2 TROUGH 11 FOR 400 HEX BYTES.
*         13.  IF  P8  IS  NOT EQUAL TO ZERO REPEAT STEPS 2-12 UNTIL P8 
*              OR 100B BLOCKS ARE PRINTED.
*         14.  PAUSE THE MODULE.
*         15.  IF GO IS GIVEN EXIT THE MODULE.
* 
*    1.3  ERRORS REPORTED 
* 
* 
*         ITU21 ABORT ON .FUNC AUTODUMP. COMMAND
*         ITU21 ABORT ON .INB CHAIN.  COMMAND 
*         ITU21 ABORT ON .RES.  COMMAND 
* 
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         PARAMETER WORD P8 IS THE NUMBER OF 400  HEX  BYTE  BLOCKS  TO 
*         AUTODUMP WITH THE MAXIMUM BEING 100B  AND  PARAMETER  P9  THE 
*         STARTING HEX BYTE ADDRESS FOR THE AUTODUMP. 
*         NOTE- 
*         P9 =  00XY  WHERE  XY  IS  THE  STARTING  HEX  BYTE  ADDRESS. 
*         REFERENCE PUB. NO. 60461090 AUTODUMP ADAPTER MEMORY  FUNCTION 
*         OR THE PARAMETER DESCRIPTION FOR THIS TEST. 
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = NUMBER OF BLOCKS TO DUMP (FROM P8) 
*         B1   = AUTODUMP FUNCTION PLUS ADDRESS 
*         B2   = HEX BYTE ADDRESS FOR PRINT 
*         B3   = FLAG FOR FIRST/SECOND HALF DATA OF 200 BYTES 
*         B4   = COUNTER FOR DATA THROW AWAY
*         B5   = FLAG FOR FIRST/SECOND HALF DATA OF 400 BYTES 
*         B8   = MESSAGE NUMBER TO POST FOR DATA WORDS
*         B9   = IB OR OB LOCATION OF DATA FOR PRINT (INCREMENTING) 
*         B10  = LWA + 1 OF THE BUFFERS 
*         B11  = BLOCK COUNTER
*         B12  = C0MMAND INDEX FOR COMMAND ABORTS 
*         B13  = MODULE ERROR COUNTER 
*         B14  = HEX BYTE ADDRESS FOR PRINT 
*         B15  = MODULE NUMBER
* 
*         OB   = OUTPUT DATA BUFFER (0-377) 8 BIT DATA FOR PRINT
*         IB   = INPUT DATA BUFFER (0-377) 8 BIT DATA FOR PRINT 
* 
*    2.3  SUBMODULES USED 
* 
*         - NONE
* 
* 
* -----------------DATA DIVISION----------------------------
* 
   BASE OCTAL                *SET DEFAULT BASE
* 
 0 FORMAT ITU21-ADAPTER MEMORY DUMP ROUTINE 
 1 FORMAT ITU21 ABORT ON .FUNC AUTDUMP. COMMAND 
 2 FORMAT ITU21 ABORT ON .RES. COMMAND
 3 FORMAT ITU21 ABORT ON .INB CHAIN. COMMAND
 5 FORMAT ADAPTER MEMORY HEX BYTE ADDRESS = *H*H
10 FORMAT 00 OR 80  *H*H *H*H *H*H *H*H 
11 FORMAT 08 OR 88  *H*H *H*H *H*H *H*H 
12 FORMAT 10 OR 90  *H*H *H*H *H*H *H*H 
13 FORMAT 18 OR 98  *H*H *H*H *H*H *H*H 
14 FORMAT 20 OR A0  *H*H *H*H *H*H *H*H 
15 FORMAT 28 OR A8  *H*H *H*H *H*H *H*H 
16 FORMAT 30 OR B0  *H*H *H*H *H*H *H*H 
17 FORMAT 38 OR B8  *H*H *H*H *H*H *H*H 
20 FORMAT 40 OR C0  *H*H *H*H *H*H *H*H 
21 FORMAT 48 OR C8  *H*H *H*H *H*H *H*H 
22 FORMAT 50 OR D0  *H*H *H*H *H*H *H*H 
23 FORMAT 58 OR D8  *H*H *H*H *H*H *H*H 
24 FORMAT 60 OR E0  *H*H *H*H *H*H *H*H 
25 FORMAT 68 OR E8  *H*H *H*H *H*H *H*H 
26 FORMAT 70 OR F0  *H*H *H*H *H*H *H*H 
27 FORMAT 78 OR F8  *H*H *H*H *H*H *H*H 
* 
   EQUATE FAUTO = 1, AUTOD = 500B, RESC = 2, INBC = 3 
* 
* -----------------INITIALIZATION---------------------------
* 
30 B15 = 21D                 *MODULE NUMBER 
   MSG 0 TO DISPLAY,PRINT    *POST MODULE TITLE 
32 B11 = 0                   *INITIALIZE INTERNAL COUNTER 
   B8 = 10                   *SET BYTE COUNT
   B9 = 0                    *SET BUFFER INDEX
   B10 = 400B                *SET LWA + 1 
   B0 = P8                   *SET NUMBER OF BLOCKS
   IF (P8+P9.GT.100) B0 = 100B-P9  *MAXIMUM BLOCKS TO DUMP
34 B14 = 0                   *STARTING ADAPTER BYTE ADD FOR MESSAGE 
   B1 = P9.AND.77B           *SET STARTING ADAPTER ADDRESS
   B1 = B1 + B11             *UPDATE ADDRESS
   B2 = B1.AND.77B.LS.2      *STARTING ADAPTER BYTE ADD FOR MESSAGE 
* 
* -----------------READ DATA FROM ADAPTER-------------------
* 
   B1 = B1 + AUTOD           *SET FUNCTION AND STARTING ADDRESS 
36 B12 = RESC                *RES COMMAND INDEX 
   RES, ABT 70               *RESERVE I/O CHANNEL 
   B3 = 0                    *CLEAR FIRST/SECOND HALF FLAG
   B12 = FAUTO               *AUTODUMP COMMAND INDEX
   FUNC B1, ABT 70           *AUTODUMP MEMORY FUNCTION
* 
   B12 = INBC                *INB COMMAND INDEX 
   IF (B5.EQ.0) GOTO 42      *NOT SECOND PASS 
   B4 = 0                    *CLEAR COUNTER 
40 INB CHAIN 400 WORDS TO IB(0), ABT 70  *INPUT DATA FROM ADAPTER 
   GOTO 40 WHILE (B4+1.LT.2)  *THROW AWAY OLD DATA
42 INB CHAIN 400 WORDS TO IB(0), ABT 70  *INPUT DATA FROM ADAPTER 
* 
* -----------------PACK DATA FOR PRINT----------------------
* 
44 IF (B3.NE.0) GOTO 45      *IF SECOND HALF DATA 
   COPY IB TO OB FOR 400     *SAVE DATA FOR PRINT 
* 
45 GOTO 42 WHILE (B3+1.LT.2)  *DO SECOND HALF OF 200 HEX BYTES
   DCN                       *TERMINATE THE INB COMMAND 
* 
* -----------------PRINT DATA-------------------------------
* 
   B3 = 0                    *CLEAR FLAG FOR SECOND HALF
50 MSG 5 (B2,B14) TO PRINT   *HEX ADDRESS MESSAGE 
54 IF (B3.NE.0) GOTO 55      *IF NOT IN FIRST HALF (OB) 
   MSG B8 8 WORDS FROM OB (B9) TO PRINT  *PRINT 1ST HALF OF 200 HEX BYTES 
   GOTO 56                   *CONTINUE
* 
55 MSG B8 8 WORDS FROM IB (B9) TO PRINT  *PRINT 2ND HALF OF 400 HEX BYTES 
* 
56 B14 = B14 + 10            *INCREMENT THE HEX BYTE ADDRESS
   IF (B14.EQ.400) B2 = B2 + 1  *INCREMENT UPPER PART OF ADDRESS
   IF (B14.EQ.400) B14 = 0   *RESET LOWER PART OF ADDRESS 
   B8 = B8 + 1               *INCREMENT THE MESSAGE NUMBER
   B9 = B9 + 10              *INCREMENT THE BUFFER ADDRESS FOR MESSAGE
* 
   IF (B8.EQ.30) B8 = 10     *RESET MESSAGE NUMBER TO FIRST MESSAGE 
   IF (B9.GE.B10) GOTO 60    *IF DONE WITH HALF OF THE BUFFER 
   IF (B14.AND.377.EQ.200) GOTO 50  *IF 80 HEX BYTES REPRINT ADDRESS
   GOTO 54                   *CONTINUE PRINT MESSAGES 
* 
60 B9 = 0                    *RESET BUFFER INDEX
   GOTO 50 WHILE (B3+1.LT.2)  *DO BOTH HALVES OF 200 BYTES
   GOTO 36 WHILE (B5+1.LT.2)  *DO NEXT 200 BYTES
   IF (B0.EQ.0) GOTO 64      *DO ONLY 400 HEX BYTES (1 BLOCK) 
   B5 = 0                    *RESET 200 BYTE COUNTER
   GOTO 34 WHILE (B11+1.LT.B0)  *DO ALL BLOCKS
* 
* -----------------PAUSE/EXIT-------------------------------
* 
64 PAUSE                     *PAUSE SO LAST LINE IS NOT PRINTED TWICE 
   GOTO 76                   *END MODULE ON A GO
* 
* -----------------ABORT PROCESSOR--------------------------
* 
70 B13 = B13 + 1             *INCREMENT ERROR COUNT 
   MSG 0 TO LINE 0           *MODULE TITLE TO ERROR DISPLAY 
   MSG B12 TO LINE 1         *COMMAND THAT ABORTED
   MSG EM TO LINE 2          *PRODUCT OVERLAY ERROR 
* 
76 END 30 
COMPILE     *ITU21 ADAPTER MEMORY DUMP ROUTINE
   MODULE ITU98A,6000(57),LOCK
***  ITU98A - POST COMMAND ABORT MESSAGE
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         ITU98A WILL POST THE MESSAGE  INDICATING  THE  MALET  COMMAND 
*         THAT  WAS  ABORTED  IN  THE MODULE.  IT ALSO DETERMINES WHICH 
*         MODULE IN THE ITU98 SERIES TO EXIT TO DEPENDING ON THE  ERROR 
*         CODE IN THE B7 (EC REGISTER) REGISTER.
* 
*    1.2  METHOD
* 
*         1.   INITIALIZE THE DISPLAY LINE NUMBER IN THE B2 REGISTER. 
*         2.   IF  THE  ABORTED  COMMAND  NUMBER IN THE B12 REGISTER IS 
               EQUAL TO ZERO OR GREATER THAN 27, POST THE 
*              UNKNOWN  COMMAND  MESSAGE OTHERWISE POST THE MESSAGE FOR 
*              THE COMMAND THAT WAS ABORTED.
*         3.   IF THE ERROR CODE IN THE B7  REGISTER  IS  GREATER  THAN 
*              3777 OCTAL, EXIT TO MODULE ITU98O. 
*         4.   IF THE ERROR CODE IN THE B7 REGISTER IS GREATER THAN 177 
*              OCTAL, EXIT TO MODULE ITU98M.
*         5.   IF THE ERROR CODE IN THE B7 REGISTER IS GREATER THAN 106 
*              OCTAL, EXIT TO MODULE ITU98K.
*         6.   IF THE ERROR CODE IN THE B7 REGISTER IS GREATER THAN 100 
*              OCTAL, EXIT TO MODULE ITU98I.
*         7.   EXIT TO MODULE ITU98C. 
* 
*    1.3  ERRORS REPORTED - NONE
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         B7   = ERROR CODE (EC REGISTER) 
*         B12  = C0MMAND INDEX FOR COMMAND ABORTS 
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = TEMPORARY STORAGE
*         B2   = DISPLAY LINE NUMBER
*         B15  = MODULE NUMBER
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98C    - POST ERROR MESSAGE 100
*         ITU98I    - POST ERROR MESSAGES 101-106 
*         ITU98K    - POST ERROR MESSAGES 107-112 
*         ITU98M    - POST ERROR MESSAGES 200-203,300-302 
*         ITU98O    - POST STATUS/DATA ERROR MESSAGES 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT ITU*D ABORT ON .COMPARE. COMMAND
 1 FORMAT ITU*D ABORT ON .FUNC FORMAT. COMMAND
 2 FORMAT ITU*D ABORT ON .FUNC ISMTEST. COMMAND 
 3 FORMAT ITU*D ABORT ON .FUNC LPWRRD. COMMAND
 4 FORMAT ITU*D ABORT ON .FUNC RDMEM. COMMAND 
 5 FORMAT ITU*D ABORT ON .FUNC RDDPAT. COMMAND
 6 FORMAT ITU*D ABORT ON .FUNC RELEASE. COMMAND 
 7 FORMAT ITU*D ABORT ON .FUNC STATUS. COMMAND
10 FORMAT ITU*D ABORT ON .FUNC STATUNT. COMMAND 
11 FORMAT ITU*D ABORT ON .FUNC STUTEST. COMMAND 
12 FORMAT ITU*D ABORT ON .FUNC WRMEM. COMMAND 
13 FORMAT ITU*D ABORT ON .FUNC WRDPAT. COMMAND
14 FORMAT ITU*D ABORT ON .FUNC WRITE. COMMAND 
15 FORMAT ITU*D ABORT ON .INB. COMMAND
16 FORMAT ITU*D ABORT ON .OUTB. COMMAND 
17 FORMAT ITU*D ABORT ON .RES. COMMAND
20 FORMAT ITU*D ABORT ON .STATUS. COMMAND 
21 FORMAT ITU*D ABORT ON .WRITE. COMMAND
22 FORMAT ITU*D ABORT ON .RESET. COMMAND
23 FORMAT ITU*D ABORT ON .REL COMMAND.
24 FORMAT ITU*D ABORT ON .ACN COMMAND.
25 FORMAT ITU*D ABORT ON .OUT CHAIN COMMAND.
26 FORMAT ITU*D ABORT ON .DCN COMMAND.
27 FORMAT ITU*D ABORT ON .UNKNOWN. COMMAND
* 
*------------------INITIALIZATION---------------------------
* 
30 B2 = 2                    *DISPLAY LINE NUMBER 
   IF(B7.LT.4000) GOTO 34    *IF NOT PRODUCT OVERLAY ABORT
   B2 = 3                    *SET LINE NUMBER 
* 
*------------------TEST-------------------------------------
* 
   B0 = B12 - 1              *FORM FORMAT NUMBER
   IF(B12.EQ.0) B0 = 27      *IF UNKNOWN COMMAND
   IF(B12.GE.30) B0 = 27     *IF UNKNOWN COMMAND
   MSG B0 (B15) TO LINE 1    *POST COMMAND MESSAGE
* 
*------------------REPEAT/EXIT/-----------------------------
* 
34 IF(B7.GE.4000)EXIT TO 98O  *IF PRODUCT OVERLAY ABORT 
* 
   IF(B7.GE.200)EXIT TO 98M  *PROCESS ERROR CODES 200-203,300-302 
* 
   IF(B7.GE.107)EXIT TO 98K  *PROCESS ERROR CODES 107-112 
* 
   IF(B7.GE.101)EXIT TO 98I  *PROCESS ERROR CODES 101-106 
* 
   EXIT TO 98C               *PROCESS ERROR CODE 100
* 
   END 30 
COMPILE        *ITU98A POST COMMAND ABORT MESSAGE 
   MODULE ITU98C,6000(57),LOCK
***  ITU98C - POST ERROR MESSAGE 100
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE  ITU98C WILL POST THE ERROR MESSAGE FOR ERROR CODE 100 
*         AND POST THE DESCRIPTION FOR THE ADAPTOR ERROR MESSAGE IF THE 
*         ADAPTOR  ERROR  CODE  IS BETWEEN 1 AND 204, OTHERWISE EXIT TO 
*         MODULE ITU98E OR ITU98G  TO  POST  THE  DESCRIPTION  FOR  THE 
*         ADAPTOR ERROR CODE. 
* 
*    1.2  METHOD
* 
*         1.   SET  THE B0 REGISTER THE ADAPTOR ERROR CODE IN THE LOWER 
*              8 BITS OF GENERAL STATUS WORD IN SB(1).
*         2.   POST THE ERROR MESSAGE FOR ERROR CODE 100. 
*         3.   IF THE CONTENTS OF THE FIRST WORD IN THE STATUS WORDS IS 
*              EQUAL TO 7777, EXIT TO MODULE ITU98O.
*         4.   IF THE ADAPTOR ERROR CODE IS  GREATER  THAN  236  OCTAL, 
*              EXIT TO MODULE ITU98G. 
*         5.   IF  THE  ADAPTOR  ERROR  CODE IS GREATER THAT 204 OCTAL, 
*              EXIT TO MODULE ITU98E. 
*         6.   DETERMINE THE FORMAT  MESSAGE  NUMBER  FOR  THE  ADAPTOR 
*              ERROR  CODE  AND  POST  THE ADAPTOR ERROR CODE AND ERROR 
*              CODE DESCRIPTION.
*         7.   EXIT TO MODULE ITU98O. 
* 
*    1.3  ERRORS REPORTED - NONE
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         B2   = DISPLAY LINE NUMBER
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B15  = MODULE NUMBER
*         SB(1) = GENERAL STATUS WORD.
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = ADAPTOR ERROR CODE 
*         B1   = TEMPORARY STORAGE
*         B2   = DISPLAY LINE NUMBER
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98E    - POST ADAPTOR ERROR MESSAGES 205-236 
*         ITU98G    - POST ADAPTOR ERROR MESSAGES 237-377 
*         ITU98O    - POST STATUS/DATA ERROR MESSAGES 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT  ITU*D  E0100 L*OC ADAPTOR DIAGNOSTIC ERROR 
 1 FORMAT AD ERROR 001 SPECIAL FUNCTION LOGIC ERROR 
 2 FORMAT AD ERROR 003 DATA LOOPBACK DATA ERROR 
 3 FORMAT AD ERROR 004 DATA LOOPBACK PARITY ERROR 
 4 FORMAT AD ERROR 077 UNDEFINED ERROR
 5 FORMAT AD ERROR 100 CONTROL SEQUENCE ERROR 
 6 FORMAT AD ERROR 101 WRITEABLE CONTROL STORE ERROR
 7 FORMAT AD ERROR 102 PIPELINE REGISTER PARITY ERROR 
10 FORMAT AD ERROR 103 ALU INDEX REGISTER ERROR 
11 FORMAT AD ERROR 104 FIFO LOGIC ERROR 
12 FORMAT AD ERROR 105 ALU ERROR
13 FORMAT AD ERROR 106 ALU STATUS REGISTER ERROR
14 FORMAT AD ERROR 107 ALU CONDITION CODE MUX ERROR 
15 FORMAT AD ERROR 110 FIFO TO DP PARITY ERROR
16 FORMAT AD ERROR 177 UNDEFINED ERROR
17 FORMAT AD ERROR 200 INTERNAL ERROR 
20 FORMAT AD ERROR 201 INSTRUCTION TEST ERROR 
21 FORMAT AD ERROR 203 DATA PATH TEST ERROR 
22 FORMAT AD ERROR 204 BLOCK ID TEST ERROR
27 FORMAT AD ERROR *OC UNRECOGNIZED AD ERROR CODE 
* 
*------------------INITIALIZATION---------------------------
* 
30 B0 = SB(12).AND.377       *ADAPTOR ERROR CODE
   B1 = 7777                 *INITIALIZE B1 REGISTER
* 
*------------------TEST-------------------------------------
* 
   MSG 0(B15,B6)TO LINE B2   *POST ERROR MESSAGE
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
   IF(SB(1).EQ.7777)EXIT TO 980  *IF NO VALID STATUS
   IF(B0.GE.237)EXIT TO 98G  *ERROR CODES 237-377 
* 
   IF(B0.GE.205)EXIT TO 98E  *ERROR CODES 205-236 
* 
   IF(B0.EQ.1) B1 = 1        *ADAPTOR ERROR CODE 1
   IF(B0.EQ.3) B1 = 2        *ADAPTOR ERROR CODE 3
   IF(B0.EQ.4) B1 = 3        *ADAPTOR ERROR CODE 4
   IF(B0.EQ.77) B1 = 4       *ADAPTOR ERROR CODE 77 
   IF(B0.EQ.100) B1 = 5      *ADAPTOR ERROR CODE 100
   IF(B0.EQ.101) B1 = 6      *ADAPTOR ERROR CODE 101
   IF(B0.EQ.102) B1 = 7      *ADAPTOR ERROR CODE 102
   IF(B0.EQ.103) B1 = 10     *ADAPTOR ERROR CODE 103
   IF(B0.EQ.104) B1 = 11     *ADAPTOR ERROR CODE 104
   IF(B0.EQ.105) B1 = 12     *ADAPTOR ERROR CODE 105
   IF(B0.EQ.106) B1 = 13     *ADAPTOR ERROR CODE 106
   IF(B0.EQ.107) B1 = 14     *ADAPTOR ERROR CODE 107
   IF(B0.EQ.110) B1 = 15     *ADAPTOR ERROR CODE 110
   IF(B0.EQ.177) B1 = 16     *ADAPTOR ERROR CODE 177
   IF(B0.EQ.200) B1 = 17     *ADAPTOR ERROR CODE 200
   IF(B0.EQ.201) B1 = 20     *ADAPTOR ERROR CODE 201
   IF(B0.EQ.203) B1 = 21     *ADAPTOR ERROR CODE 203
   IF(B0.EQ.204) B1 = 22     *ADAPTOR ERROR CODE 204
   IF(B1.NE.7777) GOTO 32    *IF ILLEGAL ERROR CODE 
* 
   MSG 27 (B0) TO LINE B2    *POST UNDEFINED ERROR CODE 
   GOTO 34
* 
32 MSG B1 TO LINE B2         *POST ADAPTOR ERROR MESSAGE
34 B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
* 
*------------------REPEAT/EXIT------------------------------
* 
   EXIT TO 98O               *EXIT TO NEXT MODULE 
* 
   END 30 
COMPILE        *ITU98C POST ERROR MESSAGE 100 
   MODULE ITU98E,6000(57),LOCK
***  ITU98E - POST ADAPTOR ERROR MESSAGES 205-236 
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU98E WILL POST THE  ERROR  MESSAGE  DESCRIPTION  FOR 
*         ADAPTOR ERROR CODES 205-236.
* 
*    1.2  METHOD
* 
*         1.   DETERMINE  THE  FORMAT  MESSAGE  NUMBER  FOR THE ADAPTOR 
*              ERROR CODE AND POST THE ADAPTOR  ERROR  CODE  AND  ERROR 
*              CODE DESCRIPTION.
*         2.   EXIT TO MODULE ITU98O. 
* 
*    1.3  ERRORS REPORTED - NONE
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         B0   = ADAPTOR ERROR CODE 
*         B1   = ALL ONES 
*         B2   = DISPLAY LINE NUMBER
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B1   = TEMPORARY STORAGE
*         B2   = DISPLAY LINE NUMBER
*    2.3  SUBMODULES USED 
* 
*         ITU98O    - POST STATUS/DATA ERROR MESSAGES 
* 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT AD ERROR 206 STATUS REGISTER TEST ERROR 
 1 FORMAT AD ERROR 207 PARITY TEST ERROR
 2 FORMAT AD ERROR 210 STU TEST ERROR 
 3 FORMAT AD ERROR 211 ICI CHANNEL TEST ERROR 
 4 FORMAT AD ERROR 220 CONTROLWARE ID ERROR 
 5 FORMAT AD ERROR 221 CONTROLWARE CHECKSUM ERROR 
 6 FORMAT AD ERROR 222 CONTROLWARE INITIALIZATION ERROR 
 7 FORMAT AD ERROR 223 CONTROLWARE DIAGNOSTIC ERROR 
10 FORMAT AD ERROR 224 CONTROLWARE EXCEPTION ERROR
11 FORMAT AD ERROR 225 CONTROLWARE INTERRUPT ERROR
12 FORMAT AD ERROR 226 6XX FUNC CAN-T FIND THE CONTROLWARE
13 FORMAT AD ERROR 227 6XX FUNC UNRECOVERABLE TAPE ERROR
14 FORMAT AD ERROR 230 INTERRUPT CONTROLLER LOGIC ERROR 
15 FORMAT AD ERROR 231 COUNTER TIMER LOGIC ERROR
16 FORMAT AD ERROR 232 SECDED LOGIC ERROR 
17 FORMAT AD ERROR 233 LOWER ROM ERROR
20 FORMAT AD ERROR 235 LOWER RAM ERROR
21 FORMAT AD ERROR 236 UPPER RAM ERROR
27 FORMAT AD ERROR *OC UNRECOGNIZED AD ERROR CODE 
* 
*------------------TEST-------------------------------------
* 
30 IF(B0.EQ.206) B1 = 0      *ADAPTOR ERROR CODE 206
   IF(B0.EQ.207) B1 = 1      *ADAPTOR ERROR CODE 207
   IF(B0.EQ.210) B1 = 2      *ADAPTOR ERROR CODE 210
   IF(B0.EQ.211) B1 = 3      *ADAPTOR ERROR CODE 211
   IF(B0.EQ.220) B1 = 4      *ADAPTOR ERROR CODE 220
   IF(B0.EQ.221) B1 = 5      *ADAPTOR ERROR CODE 221
   IF(B0.EQ.222) B1 = 6      *ADAPTOR ERROR CODE 222
   IF(B0.EQ.223) B1 = 7      *ADAPTOR ERROR CODE 223
   IF(B0.EQ.224) B1 = 10     *ADAPTOR ERROR CODE 224
   IF(B0.EQ.225) B1 = 11     *ADAPTOR ERROR CODE 225
   IF(B0.EQ.226) B1 = 12     *ADAPTOR ERROR CODE 226
   IF(B0.EQ.227) B1 = 13     *ADAPTOR ERROR CODE 227
   IF(B0.EQ.230) B1 = 14     *ADAPTOR ERROR CODE 230
   IF(B0.EQ.231) B1 = 15     *ADAPTOR ERROR CODE 231
   IF(B0.EQ.232) B1 = 16     *ADAPTOR ERROR CODE 232
   IF(B0.EQ.233) B1 = 17     *ADAPTOR ERROR CODE 233
   IF(B0.EQ.235) B1 = 20     *ADAPTOR ERROR CODE 235
   IF(B0.EQ.236) B1 = 21     *ADAPTOR ERROR CODE 236
   IF(B1.NE.7777) GOTO 32    *IF ILLEGAL ERROR CODE 
* 
   MSG 27 (B0) TO LINE B2    *POST UNDEFINED ERROR CODE 
   GOTO 34
* 
32 MSG B1 TO LINE B2         *POST ADAPTOR ERROR MESSAGE
34 B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
* 
*------------------REPEAT/EXIT------------------------------
* 
   EXIT TO 98O               *EXIT TO NEXT MODULE 
* 
   END 30 
COMPILE        *ITU98E POST ADATPOR ERROR MESSAGES 205-236
   MODULE ITU98G,6000(57),LOCK
***  ITU98G - POST ADAPTOR ERROR MESSAGES 237-377 
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU98C WILL POST THE  ERROR  MESSAGE  DESCRIPTION  FOR 
*         ADAPTOR ERROR CODES 237-377.
* 
*    1.2  METHOD
* 
*         1.   DETERMINE  THE  FORMAT  MESSAGE  NUMBER  FOR THE ADAPTOR 
*              ERROR CODE AND POST THE ADAPTOR  ERROR  CODE  AND  ERROR 
*              CODE DESCRIPTION.
*         2.   EXIT TO MODULE ITU98O. 
* 
*    1.3  ERRORS REPORTED - NONE
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         B0   = ADAPTOR ERROR CODE 
*         B1   = ALL ONES 
*         B2   = DISPLAY LINE NUMBER
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B1   = TEMPORARY STORAGE
*         B2   = DISPLAY LINE NUMBER
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98O    - POST STATUS/DATA ERROR MESSAGES 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT AD ERROR 237 PARITY ERROR REGISTER ERROR
 1 FORMAT AD ERROR 240 DATA LOOPBACK ERROR
 2 FORMAT AD ERROR 241 CH. INACTIVE FOR AUTOLOAD FUNCTION 
 3 FORMAT AD ERROR 242 CH. P.E. ON 4XX OR 6XX FUNC OR DATA
 4 FORMAT AD ERROR 243 6XX FUNCTION CANT CONNECT TO THE STU 
 5 FORMAT AD ERROR 243 6XX FUNCTION CANT REWIND THE STU 
 6 FORMAT AD ERROR 277 UNDEFINED ERROR
 7 FORMAT AD ERROR 301 DATA LOOPBACK DATA ERROR 
10 FORMAT AD ERROR 302 DATA LOOPBACK PARITY ERROR 
11 FORMAT AD ERROR 304 STU FORMATTER DIAG. TEST ERROR 
12 FORMAT AD ERROR 377 UNDEFINED ERROR
27 FORMAT AD ERROR *OC UNRECOGNIZED AD ERROR CODE 
* 
*------------------TEST-------------------------------------
* 
30 IF(B0.EQ.237) B1 = 0      *ADAPTOR ERROR CODE 237
   IF(B0.EQ.240) B1 = 1      *ADAPTOR ERROR CODE 240
   IF(B0.EQ.241) B1 = 2      *ADAPTOR ERROR CODE 241
   IF(B0.EQ.242) B1 = 3      *ADAPTOR ERROR CODE 242
   IF(B0.EQ.243) B1 = 4      *ADAPTOR ERROR CODE 243
   IF(B0.EQ.244) B1 = 5      *ADAPTOR ERROR CODE 244
   IF(B0.EQ.277) B1 = 6      *ADAPTOR ERROR CODE 277
   IF(B0.EQ.301) B1 = 7      *ADAPTOR ERROR CODE 301
   IF(B0.EQ.302) B1 = 10     *ADAPTOR ERROR CODE 302
   IF(B0.EQ.304) B1 = 11     *ADAPTOR ERROR CODE 304
   IF(B0.EQ.377) B1 = 12     *ADAPTOR ERROR CODE 377
   IF(B1.NE.7777) GOTO 32    *IF ILLEGAL ERROR CODE 
* 
   MSG 27 (B0) TO LINE B2    *POST UNDEFINED ERROR CODE 
   GOTO 34
* 
32 MSG B1 TO LINE B2         *POST ADAPTOR ERROR MESSAGE
34 B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
* 
*------------------REPEAT/EXIT------------------------------
* 
   EXIT TO 98O               *EXIT TO NEXT MODULE 
* 
   END 30 
COMPILE        *ITU98G POST ADAPTOR ERROR MESSAGE 237-377 
   MODULE ITU98I,6000(57),LOCK
***  ITU98I - POST ERROR MESSAGES 101-106 
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE  ITU98I  WILL  POST  THE  ERROR  MESSAGE  IN THE ERROR 
*         DISPLAY FOR ERROR CODES 101-106.
* 
*    1.2  METHOD
* 
*         1.   DETERMINE THE FIRST NUMBER FOR THE FORMAT STATEMENT  FOR 
*              THE ERROR CODE IN THE B7 REGISTER. 
*         2.   POST THE ERROR MESSAGE IN THE ERROR DISPLAY. 
*         3.   EXIT TO MODULE ITU98O. 
* 
*    1.3  ERRORS REPORTED - NONE
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         B2   = DISPLAY LINE NUMBER
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B15  = MODULE NUMBER
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = TEMPORARY STORAGE
*         B2   = DISPLAY LINE NUMBER
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98O    - POST STATUS/DATA ERROR MESSAGES 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT  ITU*D  E0101 L*OC ADAPTOR DIAG. TIMEOUT ERROR
 1 FORMAT THE ADAPTOR DIAGNOSTIC FAILED TO COMPLETE 
 2 FORMAT EXECUTION IN THE ALLOTTED AMOUNT OF TIME. 
 3 FORMAT  ITU*D  E0102 L*OC WRITE/READ MEMORY STATUS ERROR 
 4 FORMAT ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
 5 FORMAT COMPLETION OF A ADAPTOR WRITE MEMORY/ADAPTOR
 6 FORMAT MEMORY READ TEST SEQUENCE.
 7 FORMAT  ITU*D  E0103 L*OC READ DATA PATH STATUS ERROR
10 FORMAT ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
11 FORMAT COMPLETION OF A ADAPTOR WRITE MEMORY/ADAPTOR DATA 
12 FORMAT PATH READ TEST SEQUENCE.
13 FORMAT  ITU*D  E0104 L*OC WRITE DATA PATH STATUS ERROR 
14 FORMAT ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
15 FORMAT COMPLETION OF A ADAPTOR DATA PATH WRITE/ADAPTOR 
16 FORMAT MEMORY READ TEST SEQUENCE.
17 FORMAT  ITU*D  E0105 L*OC WR/RD DATA PATH STATUS ERROR 
20 FORMAT ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
21 FORMAT COMPLETION OF A ADAPTOR DATA PATH WRITE/ADAPTOR 
22 FORMAT DATA PATH READ TEST SEQUENCE. 
23 FORMAT  ITU*D  E0106 L*OC STU CONNECT STATUS ERROR 
24 FORMAT ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
25 FORMAT ATTEMPTING TO CONNECT TO THE STU USING A FORMAT 
26 FORMAT FUNCTION. 
* 
*------------------TEST-------------------------------------
* 
30 B0 = 0                    *ERROR CODE 101
   IF(B7.EQ.102) B0 = 3      *ERROR CODE 102
   IF(B7.EQ.103) B0 = 7      *ERROR CODE 103
   IF(B7.EQ.104) B0 = 13     *ERROR CODE 104
   IF(B7.EQ.105) B0 = 17     *ERROR CODE 105
   IF(B7.EQ.106) B0 = 23     *ERROR CODE 106
   MSG B0(B15,B6)TO LINE B2    *POST ERROR MESSAGE
* 
32 B0 = B0 + 1               *BUMP MESSAGE NUMBER 
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
   MSG B0 TO LINE B2         *POST NEXT MESSAGE 
   GOTO 32 WHILE(B8-1.NE.0)  *LOOP TO POST MESSAGE
* 
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
* 
*------------------REPEAT/EXIT------------------------------
* 
   EXIT TO 98O               *GO TO NEXT MODULE 
* 
   END 30 
COMPILE        *ITU98I POST ERROR MESSAGES 101-106
   MODULE ITU98K,6000(57),LOCK
***  ITU98K - POST ERROR MESSAGES 107-112 
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU98K WILL  POST  THE  ERROR  MESSAGE  IN  THE  ERROR 
*         DISPLAY FOR ERROR CODES 107-112.
* 
*    1.2  METHOD
* 
*         1.   DETERMINE  THE FIRST NUMBER FOR THE FORMAT STATEMENT FOR 
*              THE ERROR CODE IN THE B7 REGISTER. 
*         2.   POST THE ERROR MESSAGE IN THE ERROR DISPLAY. 
*         3.   IF THE NUMBER OF THE FORMAT STATEMENT IS 10 OCTAL,  POST 
*              THE  MESSAGE  WITH  THE  FAULT  SYMPTOM  CODE  AND FAULT 
*              SUBCODE FROM THE UNIT STATUS BUFFER. 
*         4.   EXIT TO MODULE ITU98O. 
* 
*    1.3  ERRORS REPORTED - NONE
* 
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         B2   = DISPLAY LINE NUMBER
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B15  = MODULE NUMBER
*         IB(30) = STU FAULT SYMPTOM CODE 
*         IB(31) = STU FAULT SUBCODE
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = TEMPORARY STORAGE
*         B2   = DISPLAY LINE NUMBER
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98O    - POST STATUS/DATA ERROR MESSAGES 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT  ITU*D  E0107 L*OC LOOP WRITE-TO-READ STATUS ERR. 
 1 FORMAT ALERT WAS SET IN THE GENERAL STATUS WORD AFTER
 2 FORMAT COMPLETION OF A LOOP WRITE-TO-READ TEST SEQUENCE. 
 3 FORMAT  ITU*D  E0110 L*OC STU DIAGNOSTIC DETECTED ERROR
 4 FORMAT ALERT WAS SET THE GENERAL STATUS WORD UPON
 5 FORMAT COMPLETION OF THE STU INVOKED DIAGNOSTIC TEST 
 6 FORMAT INDICATING THAT THE DIAGNOSTIC TEST DETECTED A
 7 FORMAT FAULT CONDITION.
10 FORMAT FAULT SYMPTOM = *HH,  FAULT SUBCODE = *HH 
11 FORMAT  ITU*D  E0111 L*OC WAIT END-OF-OP TIMEOUT 
12 FORMAT A TIMEOUT OCCURRED WHILE WAITING FOR END-OF-OP
13 FORMAT FROM THE ISMT ADAPTOR AFTER EITHER AN ISMT
14 FORMAT DIAGNOSTIC MEMORY READ OPERATION OR ISMT
15 FORMAT DIAGNOSTIC DATA PATH READ OPERATION.
16 FORMAT  ITU*D  E0112 L*OC STU NOT READY STATUS ERROR 
17 FORMAT THE STU WAS FOUND NOT READY AFTER CONNECTING TO 
20 FORMAT IT. THE STU MUST BE READY IN ORDER TO RUN THIS
21 FORMAT MODULE. 
* 
*------------------TEST-------------------------------------
* 
30 B0 = 0                    *ERROR CODE 107
   IF(B7.EQ.110) B0 = 3      *ERROR CODE 110
   IF(B7.EQ.111) B0 = 11     *ERROR CODE 111
   IF(B7.EQ.112) B0 = 16     *ERROR CODE 112
   MSG B0(B15,B6)TO LINE B2   *POST ERROR MESSAGE 
* 
32 B0 = B0 + 1               *BUMP MESSAGE NUMBER 
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
   IF(B0.EQ.10) GOTO 34      *TREAT MESSAGE 10 SPECIAL
* 
   MSG B0 TO LINE B2         *POST NEXT MESSAGE 
   GOTO 36                   *GO TO CHECK FOR DONE
* 
34 IB(30) = IB(10D).AND.377  *DIAGNOSTIC FAULT CODE 
   IB(31) = IB(11D).RS.4     *DIAGNOSTIC SUBFAULT CODE
   MSG B0 2 WORDS FROM IB(30)TO LINE B2  *POST MESSAGE 10 
* 
36 GOTO 32 WHILE(B8-1.NE.0)  *LOOP TO POST MESSAGE
* 
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
* 
*------------------REPEAT/EXIT------------------------------
* 
   EXIT TO 98O               *GO TO NEXT MODULE 
* 
   END 30 
COMPILE        *ITU98K POST ERROR MESSAGES 107-112
   MODULE ITU98M,6000(57),LOCK
***  ITU98M - POST ERROR MESSAGES 200-203 AND 300-302 
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU98M WILL  POST  THE  ERROR  MESSAGE  IN  THE  ERROR 
*         DISPLAY FOR ERROR CODES 200-203 AND 300-302 
* 
*    1.2  METHOD
* 
*         1.   DETERMINE  THE FIRST NUMBER FOR THE FORMAT STATEMENT FOR 
*              THE ERROR CODE IN THE B7 REGISTER. 
*         2.   POST THE ERROR MESSAGE IN THE ERROR DISPLAY. 
*         3.   EXIT TO MODULE ITU98O. 
* 
*    1.3  ERRORS REPORTED - NONE
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         B2   = DISPLAY LINE NUMBER
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B15  = MODULE NUMBER
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = TEMPORARY STORAGE
*         B2   = DISPLAY LINE NUMBER
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98O    - POST STATUS/DATA ERROR MESSAGES 
* 
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT  ITU*D  E0200 L*OC MEMORY WRITE/READ DATA ERROR 
 1 FORMAT ONE OR MORE DATA COMPARE ERRORS WERE DETECTED IN
 2 FORMAT THE DATA INPUTTED DURING A ADAPTOR MEMORY 
 3 FORMAT WRITE/ADAPTOR MEMORY READ TEST SEQUENCE.
 4 FORMAT  ITU*D  E0201 L*OC READ DATA PATH DATA ERROR
 5 FORMAT ONE OR MORE DATA COMPARE ERRORS WERE DETECTED IN
 6 FORMAT THE DATA INPUTTED DURING A ADAPTOR MEMORY 
 7 FORMAT WRITE/ADAPTOR DATA PATH READ TEST SEQUENCE. 
10 FORMAT  ITU*D  E0202 L*OC WRITE DATA PATH DATA ERROR 
11 FORMAT ONE OR MORE DATA COMPARE ERRORS WERE DETECTED IN
12 FORMAT THE DATA INPUTTED DURING A ADAPTOR DATA PATH
13 FORMAT WRITE/ADAPTOR MEMORY READ TEST SEQUENCE.
14 FORMAT  ITU*D  E0203 L*OC WR/RD DATA PATH DATA ERROR 
15 FORMAT ONE OR MORE DATA COMPARE ERRORS WERE DETECTED IN
16 FORMAT THE DATA INPUTTED DURING A ADAPTOR DATA PATH
17 FORMAT WRITE/ADAPTOR DATA PATH READ TEST SEQUENCE. 
20 FORMAT ITU*D L=*OCT GENERAL STATUS INCORRECT GS=*OCT 
21 FORMAT DEADMAN TIMER TOO LONG (GT 20.0 SECONDS)
22 FORMAT DEADMAN TIMER TOO SHORT (LT 15 SECONDS) 
* 
*------------------TEST-------------------------------------
* 
30 B0 = 0                    *ERROR CODE 200
   IF(B7.EQ.201) B0 = 4      *ERROR CODE 201
   IF(B7.EQ.202) B0 = 10     *ERROR CODE 202
   IF(B7.EQ.203) B0 = 14     *ERROR CODE 203
   IF(B7.GE.300)GOTO 40 
   MSG B0(B15,B6)TO LINE B2  *POST ERROR MESSAGE
* 
32 B0 = B0 + 1               *BUMP MESSAGE NUMBER 
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
   MSG B0 TO LINE B2         *POST NEXT MESSAGE 
   GOTO 32 WHILE(B8-1.NE.0)  *LOOP TO POST MESSAGE
* 
34 B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
   GOTO 50                   *EXIT
* 
*------------------REPEAT/EXIT------------------------------
* 
40 IF(B7.EQ.300) B0 = 20     *ERROR CODE 300
   IF(B7.EQ.301) B0 = 21     *ERROR CODE 301
   IF(B7.EQ.302) B0 = 22     *ERROR CODE 302
   MSG B0 (B15,B6,SB) TO LINE B2  *POST ERROR MESSAGE 
   B2 = B2 + 1
50 EXIT TO 98O               *GO TO NEXT M0DULE 
* 
   END 30 
COMPILE        *ITU98M POST ERROR MESSAGES 200-203
   MODULE ITU98O,6000(57),LOCK
***  ITU98O - POST STATUS/DATA ERROR MESSAGE
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU98O WILL POST THE REMAINING  MESSAGES  TO  COMPLETE 
*         THE ERROR DISPLAY.
* 
*    1.2  METHOD
* 
*         1.   POST  THE  MESSAGE  TO  DISPLAY  THE  CONTENTS OF THE WT 
*              REGISTER, LF REGISTER, ERROR COUNT REGISTER, AND  RANDOM 
*              NUMBER SEED. 
*         2.   POST  THE  MESSAGES  TO DISPLAY THE GENERAL AND DETAILED 
*              STATUS WORDS.
*         3.   IF THE CONTENTS OF DETAILED STATUS WORD 3  IS  EQUAL  TO 
*              ZERO, GO TO STEP 6.
*         4.   IF  THE  CONTENTS  OF  DETAILED STATUS WORD 3 IS GREATER 
*              THAN 12 OCTAL, EXIT TO MODULE ITU98Q.
*         5.   DETERMINE THE FORMAT MESSAGE NUMBER FOR THE  ERROR  CODE 
*              IN DETAILED STATUS WORD 3 AND POST THE ERROR MESSAGE.
*         6.   IF  THE  ERROR  BEING  REPORTED IS A DATA COMPARE ERROR, 
*              COMPARE THE DATA IN THE INPUT AND OUTPUT BUFFER AND POST 
*              UP TO FOUR DATA ERRORS MESSAGES IN THE ERROR DISPLAY.
*         7.   HALT IF ERROR STOP IS SELECTED IN THE ES REGISTER. 
*         8.   SEND A LINE OF 50 DECIMAL DASHS TO THE PRINT FILE. 
*         9.   BLANK THE DISPLAY BUFFER.
*         10.  RETURN TO THE CALLING MODULE.
* 
*    1.3  ERRORS REPORTED - NONE
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         BA   = INITIAL WORD COUNT FOR DATA COMPARE
*         B2   = DISPLAY LINE NUMBER
*         B3   = LAST FUNCTION (LF REGISTER)
*         B4   = WORD COUNT (WC REGISTER) 
*         B5   = WORDS TRANSFERRED (WT REGISTER)
*         B6   = ERROR ADDRESS (EA REGISTER)
*         B7   = ERROR CODE (EC REGISTER) 
*         B8   = ERROR MESSAGE (EM REGISTER)
*         B13  = MODULE ERROR COUNTER 
*         B15  = MODULE NUMBER
* 
*         DETAILED  STATUS  WORD  3  CONTAINS THE DETAILED STATUS ERROR 
*         CODE. 
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = TEMPORARY STORAGE
*         B2   = DISPLAY LINE NUMBER
*         WC   = TEMPORARY STORAGE
* 
*    2.3  SUBMODULES USED 
* 
*         ITU98Q    - POST DETAILED STATUS ERROR MESSAGE
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT  WT = *OCTB  LF = *OCTB  EC = *OCTB  SEED = *OCTB 
 1 FORMAT       GENERAL/DETAILED STATUS BUFFER (OCTAL)
 2 FORMAT SB(1D-8D) =*OCT *OCT *OCT *OCT *OCT *OCT *OCT *OCT
 3 FORMAT SB(9D-16D)=*OCT *OCT *OCT *OCT *OCT *OCT *OCT *OCT
 4 FORMAT A CONNECT WAS REJECTED BECAUSE THE UNIT WAS EITHER
 5 FORMAT OFF-LINE, POWERED OFF, OR NOT CABLED TO THE 
 6 FORMAT CONTROLLER. 
 7 FORMAT THE FUNCTION WAS REJECTED BECAUSE THE UNIT WAS NOT
10 FORMAT READY.
11 FORMAT UNIT WAS DECLARED NOT READY DURING LAST OPERATION 
12 FORMAT BECAUSE OF A UNIT CHECK OR INTERRUPT. 
13 FORMAT A WRITE WAS NOT EXECUTED DUE TO A MISSING WRITE 
14 FORMAT RING. 
15 FORMAT THE UNIT IS NOT CAPABLE OF READING THE TAPE 
16 FORMAT DENSITY.
17 FORMAT OVER 25 FEET OF BLANK TAPE IN PHASE OF 15 FEET IN 
20 FORMAT GCR.
21 FORMAT UNABLE TO WRITE FROM LOADPOINT DUE TO BAD TAPE
22 FORMAT (COULD NOT DETECT ID BURST OR ARA IMMEDIATELY 
23 FORMAT AFTER WRITING IT).
24 FORMAT UNDEFINED DETAILED STATUS ERROR CODE. 
25 FORMAT                   DATA ERROR(S) 
26 FORMAT WORD=*OCTB   EXP=*OCTB   ACTUAL=*OCTB   DIF=*OCTB 
27 FORMAT --------------------------------------------------
* 
*------------------INITIALIZATION---------------------------
* 
30 IF(ES.AND.TM.EQ.0)B2=B2+1  *IF KL DISPLAY
* 
*------------------TEST-------------------------------------
* 
   MSG 0(B5,B3,B13,B10)TO LINE B2  *POST REGISTER MESSAGE 
   MSG 1 TO LINE B2+1        *POST GENERAL STATUS MESSAGE 
   MSG 2 8 WORDS FROM SB(1) TO LINE B2+2  *POST STATUS WORDS
   MSG 3 8 WORDS FROM SB(9) TO LINE B2+3
   B2 = B2 + 4               *BUMP DISPLAY LINE NUMBER
* 
   B1 = SB(3).AND.177        *DETAILED STATUS ERROR CODE
   IF(B1.EQ.0) GOTO 34       *IF NO DETAILED STATUS ERROR 
* 
   IF(B1.GT.12)EXIT TO 98Q   *EXIT TO NEXT MODULE 
* 
   B0 = 24                   *UNDEFINED ERROR CODE
   WC = 3                    *MESSAGE LINE COUNT
   IF(B1.EQ.1) B0 = 4        *IF ERROR CODE 1 
   WC = 2                    *MESSAGE LINE COUNT
   IF(B1.EQ.4) B0 = 7        *IF ERROR CODE 4 
   IF(B1.EQ.5) B0 = 11       *IF ERROR CODE 5 
   IF(B1.EQ.6) B0 = 13       *IF ERROR CODE 6 
   IF(B1.EQ.7) B0 = 15       *IF ERROR CODE 7 
   IF(B1.EQ.10) B0 = 17      *IF ERROR CODE 10
   WC = 3                    *MESSAGE LINE COUNT
   IF(B1.EQ.12) B0 = 21      *IF ERROR CODE 12
   IF(B0.EQ.24) WC = 1       *MESSAGE LINE COUNT
* 
32 MSG B0 TO LINE B2         *POST NEXT MESSAGE 
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
   B0 = B0 + 1               *BUMP MESSAGE NUMBER 
   GOTO 32 WHILE(WC-1.NE.0)  *LOOP TO POST MESSAGE
* 
34 IF(B7.LT.200) GOTO 42     *NOT DATA COMPARE ERROR
   IF(B7.GE.300) GOTO 42
* 
   IF(B7.GE.4000) GOTO 42    *NOT DATA COMPARE ERROR
* 
   MSG 25 TO LINE B2         *POST DATA ERRORS MESSAGE
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
* 
   WC = 0                    *INITIALIZE BUFFER INDEX 
   B0 = 0                    *INITIALIZE ERROR COUNTER
36 IF(IB(WC).EQ.OB(WC)) GOTO 40  *CHECK DATA
* 
   B1 = IB(WC).XOR.OB(WC)    *DIFFERENCE
   MSG 26(WC,OB(WC),IB(WC),B1)TO LINE B2  *POST DATA ERROR
   IF(B0.EQ.3) GOTO 42       *IF FOUR ERRORS POSTED 
* 
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
   B0 = B0 + 1               *BUMP ERROR COUNTER
40 GOTO 36 WHILE (WC+1.NE.BA)  *CHECK ENTIRE BUFFER 
* 
42 PICTURE                   *PRINT ERROR DISPLAY 
   HALT                      *STOP ON ERROR 
   MSG 27 TO PRINT           *PRINT LINE OF DASHS 
   BLANK                     *CLEAR ERROR DISPLAY 
* 
*------------------REPEAT/EXIT------------------------------
* 
   EXIT                      *RETURN TO CALLING MODULE
* 
   END 30 
COMPILE        *ITU98O POST STATUS/DATA ERROR MESSAGES
   MODULE ITU98Q,6000(57),LOCK
***  ITU98Q - POST DETAILED STATUS ERROR MESSAGE
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU98Q  WILL  POST  THE  DETAILED  STATUS  ERROR  CODE 
*         MESSAGE AND DATA ERROR MESSAGES.
* 
*    1.2  METHOD
* 
*         1.   DETERMINE  THE  FORMAT MESSAGE NUMBER FOR THE ERROR CODE 
*              IN DETAILED STATUS WORD 3 AND POST THE ERROR MESSAGE.
*         2.   IF THE ERROR BEING REPORTED IS  A  DATA  COMPARE  ERROR, 
*              COMPARE THE DATA IN THE INPUT AND OUTPUT BUFFER AND POST 
*              UP TO FOUR DATA ERRORS MESSAGES IN THE ERROR DISPLAY.
*         3.   HALT IF ERROR STOP IS SELECTED IN THE ES REGISTER. 
*         4.   SEND A LINE OF 50 DECIMAL DASHS TO THE PRINT FILE. 
*         5.   BLANK THE DISPLAY BUFFER.
*         6.   RETURN TO THE CALLING MODULE.
* 
*    1.3  ERRORS REPORTED - NONE
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         BA   = INITIAL WORD COUNT FOR DATA COMPARE
*         B1   = DETAILED STATUS ERROR CODE 
*         B2   = DISPLAY LINE NUMBER
*         B7   = ERROR CODE (EC REGISTER) 
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = TEMPORARY STORAGE
*         B2   = DISPLAY LINE NUMBER
*         WC   = TEMPORARY STORAGE
* 
*    2.3  SUBMODULES USED - NONE
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT THE TAPE UNIT AGC COULD NOT BE SET PROPERLY ON
 1 FORMAT THIS TAPE (GCR ONLY). 
 2 FORMAT BACKWARD MOTION WAS ATTEMPTED AT THE LOADPOINT
 3 FORMAT MARKER. 
 4 FORMAT TAPE UNIT 04 THRU 17 WAS REQUESTED AND SUBSYSTEM
 5 FORMAT ONLY SUPPORTS UNIT NUMBERS 0 THRU 3.
 6 FORMAT TAPE UNIT BUSY REWINDING OR DOING A DSE.
 7 FORMAT REVERSE READ OPERATION ATTEMPTED IN GCR MODE. 
10 FORMAT TAPE UNIT FAILED TO REACH OPERATING SPEED.
11 FORMAT UNRECOGNIZABLE FUNCTION CODE. 
12 FORMAT NO TAPE UNIT CONNECTED. 
13 FORMAT NO FUNCTION PARAMETERS SENT.
14 FORMAT CHANNEL PARITY ERROR DURING FUNCTION OR 
15 FORMAT PARAMETER TRANSMISSION. 
16 FORMAT DATA WAS NOT RECEIVED IN TIME FOR AN OUTPUT 
17 FORMAT OPERATION.
20 FORMAT PPU WAS NOT READY TO RECEIVE DATA FOR AN INPUT
21 FORMAT OPERATION.
22 FORMAT ISMT SUBSYSTEM DETECTED CATASTROPHIC FAILURE WHILE
23 FORMAT RUNNING INTERNAL DIAGNOSTICS OR DURING OPERATION. 
24 FORMAT UNDEFINED DETAILED STATUS ERROR CODE. 
25 FORMAT                   DATA ERROR(S) 
26 FORMAT WORD=*OCTB   EXP=*OCTB   ACTUAL=*OCTB   DIF=*OCTB 
27 FORMAT --------------------------------------------------
* 
*------------------TEST-------------------------------------
* 
30 B0 = 24                   *UNDEFINED ERROR CODE
   WC = 2                    *MESSAGE LINE COUNT
   IF(B1.EQ.16) B0 = 0       *IF ERROR CODE 16
   IF(B1.EQ.30) B0 = 2       *IF ERROR CODE 30
   IF(B1.EQ.31) B0 = 4       *IF ERROR CODE 31
   WC = 1                    *MESSAGE LINE COUNT
   IF(B1.EQ.32) B0 = 6       *IF ERROR CODE 32
   IF(B1.EQ.33) B0 = 7       *IF ERROR CODE 33
   IF(B1.EQ.41) B0 = 10      *IF ERROR CODE 41
   IF(B1.EQ.50) B0 = 11      *IF ERROR CODE 50
   IF(B1.EQ.51) B0 = 12      *IF ERROR CODE 51
   IF(B1.EQ.52) B0 = 13      *IF ERROR CODE 52
   WC = 2                    *MESSAGE LINE COUNT
   IF(B1.EQ.55) B0 = 14      *IF ERROR CODE 55
   IF(B1.EQ.61) B0 = 16      *IF ERROR CODE 61
   IF(B1.EQ.62) B0 = 20      *IF ERROR CODE 62
   IF(B1.EQ.70) B0 = 22      *IF ERROR CODE 70
   IF(B0.EQ.24) WC = 1       *MESSAGE LINE COUNT
* 
32 MSG B0 TO LINE B2         *POST NEXT MESSAGE 
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
   B0 = B0 + 1               *BUMP MESSAGE NUMBER 
   GOTO 32 WHILE(WC-1.NE.0)  *LOOP TO POST MESSAGE
* 
34 IF(B7.LT.200) GOTO 42     *NOT DATA COMPARE ERROR
* 
   IF(B7.GE.4000) GOTO 42    *NOT DATA COMPARE ERROR
* 
   MSG 25 TO LINE B2         *POST DATA ERRORS MESSAGE
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
* 
   WC = 0                    *INITIALIZE BUFFER INDEX 
   B0 = 0                    *INITIALIZE ERROR COUNTER
36 IF(IB(WC).EQ.OB(WC)) GOTO 40  *CHECK DATA
* 
   B1 = IB(WC).XOR.OB(WC)    *DIFFERENCE
   MSG 26(WC,OB(WC),IB(WC),B1)TO LINE B2  *POST DATA ERROR
   IF(B0.EQ.3) GOTO 42       *IF FOUR ERRORS POSTED 
* 
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
   B0 = B0 + 1               *BUMP ERROR COUNTER
40 GOTO 36 WHILE (WC+1.NE.BA)  *CHECK ENTIRE BUFFER 
* 
42 PICTURE                   *PRINT ERROR DISPLAY 
   HALT                      *STOP ON ERROR 
   MSG 27 TO PRINT           *PRINT LINE OF DASHS 
   BLANK                     *CLEAR ERROR DISPLAY 
* 
*------------------REPEAT/EXIT------------------------------
* 
   EXIT                      *RETURN TO CALLING MODULE
* 
   END 30 
COMPILE        *ITU98Q POST DETAILED STATUS ERROR MESSAGE 
   MODULE ITU98S,6000(57),LOCK
***  ITU98S - VALIDATE STU DIAGNOSTIC PARAMETERS
**
*    1.0  EXTERNAL MODULE DOCUMENTATION 
* 
*    1.1  PURPOSE 
* 
*         MODULE ITU98S WILL VALIDATE THE STU DIAGNOSTIC TEST NUMBER IN 
*         PARAMETER WORD P0 AND  THE  STU  DIAGNOSTIC  TEST  OPTION  IN 
*         PARAMETER WORD P1.
* 
*    1.2  METHOD
* 
*         1.   INITIALIZE THE  B0  REGISTER  WITH  THE  FORMAT  MESSAGE 
*              NUMBER  FOR THE P0 PARAMETER ENTRY ERROR AND THE B2 WITH 
*              THE DISPLAY LINE NUMBER
*         2.   IF BITS 0-3 OF PARAMETER WORD  P0  ARE  GREATER  THAN  9 
*              HEXADECIMAL, GO TO STEP 5. 
*         3.   IF  BITS  4-7  OF  PARAMETER  WORD P0 ARE GREATER THAN 9 
*              HEXADECIMAL, GO TO STEP 5. 
*         4.   IF BITS 8-11 OF PARAMETER WORD P0 ARE EQUAL TO ZERO,  GO 
*              TO 6.
*         5.   POST  THE  P0 PARAMETER ENTRY ERROR MESSAGE IN THE ERROR 
*              DISPLAY. 
*         6.   INITIALIZE THE  B0  REGISTER  WITH  THE  FORMAT  MESSAGE 
*              NUMBER FOR THE P1 PARAMETER ENTRY ERROR. 
*         7.   IF CONTENTS OF PARAMETER WORD P1 IS GREATER THAN 3, POST 
*              THE P1  PARAMETER  ENTRY  ERROR  MESSAGE  IN  THE  ERROR 
*              DISPLAY. 
*         8.   IF NO PARAMETER ERRORS WERE DETECTED, EXIT THE MODULE. 
*         9.   POST THE REMAINING THE MESSAGES IN THE ERROR DISPLAY.
*         10.  POST  THE  PAUSE  MESSAGE  TO  INDICATE  THAT  THIS IS A 
*              PARAMETER ERROR STOP AND PAUSE.
*         11.  PRINT A LINE OF 50 DECIMAL DASHS AND BLANK  THE  DISPLAY 
*              BUFFER.
*         12.  IF REPEAT MODULE IS NOT SELECTED, TERMINATE EXECUTION OF 
*              THE MODULE BY GOING TO THE END MALET COMMAND.
*         13.  POST THE PAUSE MESSAGE IN INDICATE THAT REPEAT MODULE IS 
*              SELECTED AND PAUSE.
*         14.  LOOP TO STEP 12. 
* 
*    1.3  ERRORS REPORTED 
* 
*         P0 PARAMETER ENTRY ERROR
*         P1 PARAMETER ENTRY ERROR
  
*    2.0  INTERNAL MODULE DOCUMENTATION 
* 
*    2.1  ENTRY CONDITIONS
* 
*         P0   = STU DIAGNOSTIC TEST NUMBER 
*         P0   = STU DIAGNOSTIC TEST OPTION 
* 
*    2.2  REGISTER AND BUFFER USAGE 
* 
*         B0   = MESSAGE FORMAT NUMBER
*         B1   = TEMPORARY STORAGE
*         B2   = DISPLAY LINE NUMBER
* 
*    2.3  SUBMODULES USED - NONE
* 
* 
*------------------DATA DIVISION----------------------------
* 
 0 FORMAT ITU13-STU DIAGNOSTIC TEST 
 1 FORMAT  - PARAMETER ENTRY ERROR(S) - 
 2 FORMAT P0 PARAMETER ENTRY ERROR
 3 FORMAT P1 PARAMETER ENTRY ERROR
 4 FORMAT P0 AND P1 PARAMETERS
 5 FORMAT P0 = *HEH    P1 =*HEH 
 6 FORMAT ITU98S PARAMETER ERROR STOP 
 7 FORMAT --------------------------------------------------
10 FORMAT //ITU98S RM SELECTED. 
11 FORMAT ITU13 MODULE ABORTED - SUSPECT PARAMETER ERRORS 
* 
*------------------INITIALIZATION---------------------------
* 
30 B0 = 2                    *MESSAGE NUMBER
   B2 = 2                    *DISPLAY LINE NUMBER 
* 
*------------------TEST-------------------------------------
* 
   B1 = P0 AND 17            *CHECK LOWER HEX. DIGIT
   IF(B1.GT.11) GOTO 32      *IF DIGIT .GT. 9 HEX.
* 
   B1 = P0 RS 4 AND 17       *CHECK MIDDLE HEX. DIGIT 
   IF(B1.GT.11) GOTO 32      *IF DIGIT .GT. 9 HEX.
* 
   B1 = P0 RS 8D             *CHECK UPPER HEX. DIGIT
   IF(B1.EQ.0) GOTO 34       *IF DIGIT .EQ. 0 HEX.
* 
32 GOSUB 50 
* 
34 B0 = 3                    *MESSAGE NUMBER
   IF(P1.GT.3) GOSUB 50      *IF DIGIT .GT. 3 HEX.
* 
   IF(B2.EQ.2) GOTO 44       *GO TO EXIT IF NOT ERRORS
* 
   MSG 0 TO LINE 0           *MODULE TITLE MESSAGE
   MSG 1 TO LINE 1           *PARAMETER ENTRY MESSAGE 
   IF(ES.AND.TM.EQ.0)B2=B2+1  *BUMP DISPLAY LINE NUMBER 
   MSG 4 TO LINE B2          *PARAMETER DISPLAY MESSAGE 
   MSG 5(P0,P1)TO LINE B2+1  *P0, P1 DISPLAY MESSAGE
   PICTURE                   *PRINT ERROR DISPLAY 
   MSG 6 TO DISPLAY          *POST PAUSE MESSAGE
   PAUSE                     *STOP
   MSG 7 TO PRINT            *PRINT LINE OF DASHS 
   BLANK                     *CLEAR ERROR DISPLAY 
* 
*------------------REPEAT/EXIT------------------------------
* 
40 IF(ES.AND.RM.EQ.0)GOTO 42  *TERMINATE MODULE IF NOT RM 
* 
   MSG 10 TO DISPLAY         *POST PAUSE MESSAGE
   PAUSE                     *STOP
   GOTO 40                   *LOOP IF RM SELECTED 
* 
42 MSG 11 TO DAYFILE         *ISSUE MODULE ABORTED MESSAGE
   GOTO 76                   *STOP EXECUTION OF THE MODULE
* 
44 EXIT                      *RETURN TO CALLING MODULE
* 
*------------------SUBROUTINES------------------------------
* 
50 MSG B0 TO LINE B2         *POST PARAMETER ERROR MESSAGE
   B2 = B2 + 1               *BUMP DISPLAY LINE NUMBER
   RETURN                    *EXIT THE SUBROUTINE 
* 
76 END 30 
COMPILE     *ITU98S VALIDATE STU DIAGNOSTIC PARAMETERS
   MODULE ITU99,6000(57),LOCK 
***  ITU99 - TABLE OF CONTENTS AND PARAMETERS 
**
* 
/------------------TABLE OF CONTENTS------------------------
/ 
/  ITU99A - REPAIR MODULES -
/ 
/------------------RESTRICTIONS AND LIMITATIONS-------------
/ 
/  ITU ASSUMES THAT THE CONTROLWARE HAS BEEN LOADED AND IS
/  OPERATIONAL. 
/ 
/------------------PARAMETER DESCRIPTION--------------------
/ 
/  P0 = 0XXX - STREAMING TAPE UNIT (STU) DIAGNOSTIC TEST
/              NUMBER.  SEE THE STU FIELD SERVICE MAMUAL
/              LEGAL TEST NUMBERS.
/ 
/  P1 = 000X - STREAMING TAPE UNIT (STU) DIAGNOSTIC TEST
/              OPTION FOR THE DIAGNOSTIC TEST NUMBER
/              SELECTED IN PARAMETER WORD P0.  SEE THE STU
/              FIELD SERVICE MANUAL FOR LEGAL TEST OPTIONS
/              FOR THE DIAGNOSTIC TEST SELECTED.
/ 
/  P2 = NOT USED. 
/ 
/  P3 = NOT USED. 
/ 
/  P4 = XXXX - DATA PATTERN CONTROL.
/       0000 - SELECT RANDOM PATTERN BY P7 OR RT. 
/       1XXX - SELECT ALTERNATE PATTERN XXX.
/              PATTERN XXX IS STORED IN THE 1ST, 3RD, 5TH,
/              ETC 8 BIT BYTES OF THE OUTPUT  BUFFER.  THE
/              THE COMPLEMENT OF XXX IS STORED IN THE 2ND,
/              4TH, 6TH, ETC BYTES. 
/       2XXX - SELECT FIXED PATTERN XXX.
/              PATTERN XXX IS AN 8 BIT PATTERN STORED IN OB.
/ 
/  P5 = NOT USED. 
/ 
/  P6 = NOT USED. 
/ 
/  P7 = XXXX - BASE RANDOM NUMBER 
/       0000 - THE RANDOM NUMBER SEED WILL BE OBTAINED FROM 
/              THE REAL TIME CLOCK. 
/       XXXX - THE RANDOM NUMBER SEED IS XXXX.
/ 
/  P8 = XXXX - THE  NUMBER  OF  BLOCKS  (400 HEX BYTES)  OF 
/              ADAPTER MEMORY TO BE DUMPED. MAX BEING 100B. 
/ 
/  P9 = 00XY - THE  STARTING BYTE ADDRESS OF ADAPTER MEMORY 
/              TO BE DUMPED.
/       0000 - START AT HEXADECIMAL ADDRESS 0000
/       0001 - START AT HEXADECIMAL ADDRESS 0400
/       0002 - START AT HEXADECIMAL ADDRESS 0800
/       0003 - START AT HEXADECIMAL ADDRESS 0C00
/       0004 - START AT HEXADECIMAL ADDRESS 1000
/       0005 - START AT HEXADECIMAL ADDRESS 1400
/       0006 - START AT HEXADECIMAL ADDRESS 1800
/       0007 - START AT HEXADECIMAL ADDRESS 1C00
/       001Y - START AT HEXADECIMAL ADDRESS 2Y00
/       002Y - START AT HEXADECIMAL ADDRESS 4Y00
/       003Y - START AT HEXADECIMAL ADDRESS 6Y00
/       004Y - START AT HEXADECIMAL ADDRESS 8Y00
/       005Y - START AT HEXADECIMAL ADDRESS AY00
/       006Y - START AT HEXADECIMAL ADDRESS CY00
/       007Y - START AT HEXADECIMAL ADDRESS EY00
1  END 1
COMPILE,SOURCE     *ITU99 - PARAMETERS
   MODULE ITU99A,6000(57),LOCK
***  ITU99A - LIST OF MODULES 
**
* 
/ 
/------------------REPAIR MODULES---------------------------
/ 
/  MODULE    MODULE              ACCESS     RUN 
/  NUMBER    DESCRIPTION         LEVEL      TIME
/  ------    -----------         ------     ----
/ 
/  00  DUMMY PARAMETER MODULE      10       1 SEC 
/  01  ISMT DIAGNOSTIC TEST        10       2 SEC 
/  03  WRITE/READ MEMORY TEST      10       1 SEC 
/  05  READ DATA PATH TEST         10       6 SEC 
/  07  WRITE DATA PATH TEST        10       1 SEC 
/  09  WR/RD DATA PATH TEST        10       6 SEC 
/  11  LOOP WRITE/READ TEST        10       3 SEC 
/  13  STU DIAGNOSTIC TEST         10       - SEC 
/  14  DEADMAN TIMER TEST          21       37 SEC(MAX) 
/  21  AUTODUMP ADAPTER MEMORY     10       - SEC 
/ 
/      NOTE - THE RUN TIME FOR MODULE ITU13 IS DEPENDENT
/             ON THE STU TEST SELECTED AND LENGTH OF TAPE 
/             IF ONE IS REQUIRED (MILLISECONDS TO MINUTES). 
/ 
/      NOTE - THE RUN TIME FOR MODULE ITU21 IS DEPENDENT
/             ON THE NUMBER OF BLOCKS OF ADAPTER MEMORY 
/             THAT IS PRINTED.
/ 
1  END 1
COMPILE,SOURCE     *ITU99A - LIST OF MODULES 01-13
