*DECK ATC                                                                ATC
***      ATC - ADVANCED TAPE SUBSYSTEM (ATS - 67X) CONTROLLER TEST.      ATC
***      ATC - OVERVIEW.                                                 ATC
**                                                                       ATC
*                                                                        ATC
*        ATC - ADVANCED TAPE SUBSYSTEM (ATS - 67X) CONTROLLER TEST.      ATC
*                                                                        ATC
*    AUTHOR -                                                            ATC
*             COMPUTER DEVELOPMENT DIVISION.                             ATC
*             DIAGNOSTIC ENGINEERING I.                                  ATC
*             DATE 78/05/12.                                             ATC
*                                                                        ATC
*    OVERVIEW -                                                          ATC
*             ATC IS THE ON-LINE DIAGNOSTIC FOR THE ADVANCED             ATC
*             TAPE SUBSYSTEM (ATS) CONTROLLER. THIS TEST IS              ATC
*             A CONVERSION OF THE CYBER, SMM                             ATC
*             OFF-LINE CONTROLLER TEST -ATC-.                            ATC
*            CONTROL WARE LEVEL....D(READ ONLY MEMORY)                   ATC007K
*             ACCESS LEVEL ......= 10                                    ATC000K
*                                                                        ATC
*    USER ALERT - WHEN DOING A REPEAT CONDITION OR A SCOPE               ATC
*                 LOOP IT WILL BE NECESSARY,IN SOME MODULES,             ATC
*                 TO RESTART THE MODULE TO ELIMINATE FALSE               ATC
*                 ERROR REPORTING CREATED WHEN EXITING A                 ATC
*                 SCOPE OR REPEAT CONDITION LOOP.                        ATC
*                                                                        ATC009K
*                ATC32 WILL NOT FULLY TEST THE                           ATC009K
*                FUNCTION 50 ABORT UNTIL HARDWARE                        ATC009K
*                CHANGES ARE INSTALLED.                                  ATC009K
*                                                                        ATC009K
*                   THE DCN IN SUBROUTINE 60 IS USED TO                  ATC011K
*                   ELIMINATE POTENTIAL FALSE ERROR RE-                  ATC011K
*                   PORTING ON I/O FUNCTIONS.                            ATC011K
*                                                                        ATC011K
*    CALL -                                                              ATC
*             RUN,ATC.   OR                                              ATC
*             RUN,ATC(00,01,12,13,ETC.).                                 ATC
*                WHERE - 00,01,12,ETC., ARE ATC MODULE NUMBERS.          ATC
*                        CURRENT MODULES USED ARE THROUGH 56             ATC000K
*                        MODULE NUMBERS ARE SHOWN AS DECIMAL             ATC
*                        NUMBERS PER PROGRAMMING                         ATC
*                        CONVENTIONS.                                    ATC
*                                                                        ATC
*    PARAMETERS-                                                         ATC
*                                                                        ATC
*        CAUTION - SECTION 0 OF THIS TEST WILL VERIFY P3                 ATC
*                  PARAMETER ENTRY. IF THIS SECTION IS BY-               ATC
*                  PASSED AND TAPE TRANSPORT PARAEMETERS ARE             ATC
*                  IN ERROR WHEN ENTERED, THE TEST WILL GIVE             ATC
*                  INCORRECT ERROR MESSAGES.                             ATC
*                                                                        ATC
*                                                                        ATC
*        PARAMETER REGISTER SETTINGS                                     ATC
*                                                                        ATC
*        P1 - SET NON-ZERO FOR STOP TO DISPLAY ALL DATA COMPARE          ATC
*             ERRORS. A FULL SCREEN OF DATA IS PRESENTED AT EACH         ATC
*             STOP BEFORE THE FINAL STANDARD DATA ERROR STOP DISPLAY     ATC
*             IS MADE.                                                   ATC
*                                                                        ATC
*             SET TO ZERO FOR NO STOPS ON DATA ERROR PRESENTATION        ATC
*             (SCREEN IS MOMENTARILY DISPLAYING DATA ERRORS) BUT         ATC
*             WILL STOP ON FINAL STANDARD DATA ERROR STOP DISPLAY        ATC
*             IF STOP ON ERROR (SE) SWITCH IS ON.                        ATC
*                                                                        ATC
*        P3 - TAPE TRANSPORT TYPE.                                       ATC
*                                                                        ATC
*             XXX1  BIT 0  -  677-2  NRZI    7 TRACK 100 IPS.            ATC
*             XXX2      1  -  677-3  NRZI    7 TRACK 150 IPS.            ATC
*             XXX4      2  -  677-4  NRZI    7 TRACK 200 IPS.            ATC
*             XX10      3  -  679-2  PE/NRZI 9 TRACK 100 IPS.            ATC
*             XX20      4  -  679-3  PE/NRZI 9 TRACK 150 IPS.            ATC
*             XX40      5  -  679-4  PE/NRZI 9 TRACK 200 IPS.            ATC
*             X100      6  -  679-5  PE/GCR  9 TRACK 100 IPS.            ATC
*             X200      7  -  679-6  PE/GCR  9 TRACK 150 IPS.            ATC
*             X400  BIT 8  -  679-7  PE/GCR  9 TRACK 200 IPS.            ATC
*                                                                        ATC
*        USER ALERT - IF THE P3 PARAMETER IS ENTERED INCORRECLY          ATC
*                     OR DOES NOT MATCH THE SLECTED UNIT,                ATC
*                     A ERROR MESSAGE WILL BE DISPLAYED SHOWING          ATC
*                     THE RECEIVED STATUS AND THE EXPECTED STATUS        ATC
*                     OF THE SELECTED UNIT.                              ATC
*                                                                        ATC
*        P4 - CONTROLLER CAPABILITY.                                     ATC
*                                                                        ATC
*             XXX1 - GCR CAPABILITY.                                     ATC
*             NOTE* BITS 1 THRU 11 ARE NOT TESTED.                       ATC000K
*                                                                        ATC
*IF DEF,CMSE17X 
*        P9 - SKIP MODULE ATC28.
* 
*             NONZERO - SKIP MODULE ATC28.
*             ZERO - RUN MODULE ATC28.
*ENDIF
*                                                                        ATC009K
*         THE REST OF THE PARAMETER ENTRIES AR NOT USED.                 ATC009K
*                                                                        ATC009K
*        TAPE UNIT REQUIREMENT.                                          ATC
*                                                                        ATC
*             SEVERAL OF THE  MODULES CONTAINED HEREIN REQUIRE           ATC
*             A MAGNETIC TAPE MOUNTED AT THE BEGINNING OF TAPE (BOT)     ATC
*             POINT AND THE TAPE TRANSPORT READY STATUS LIGHT ON.        ATC
*             NO TAPE MOTION INSTRUCTIONS ARE ISSUED BY THIS TEST.       ATC
*             ONLY ONE UNIT, AS SPECIFIED ON THE  -ASSIGN-               ATC
*             DIRECTIVE, IS USED FOR THE PURPOSE OF CONNECTING AND       ATC
*             DISCONNECTING THE UNIT WHEN CHECKING DETAILED STATUS,      ATC
*             UNIT STATUS AND OTHER FUNCTION CODES IN THE TEST.          ATC
*                                                                        ATC
*                                                                        ATC
*    CAUTIONS -                                                          ATC
*                                                                        ATC
*         THE ATC TEST DOES NOT AND WILL NOT TEST MULTIPLE TAPE          ATC000K
*        DRIVES.  THE TEST DOESNOT MOVE TAPE SO UNIT DENSITIES           ATC
*        WILL NOT BE TESTED AS THE MOUNTED TAPE MUST MOVE OFF            ATC
*        OF BOT BEFORE UNIT DENSITY WILL CHANGE.                         ATC
*                                                                        ATC
*        TURN OFF THE CONTROLLER CHANNEL.                                ATC
*                                                                        ATC
*        SINCE THE ATC TEST TAKES OVER THE ENTIRE CONTROLLER AND         ATC
*        ALSO THE ASSOCIATED 67X TAPE DRIVE UNITS CONNECTED TO THE       ATC
*        CONTROLLER, THE CHANNEL FOR THE CONTROLLER SHOULD BE -DOWNED-   ATC
*        BY THE OPERATING SYSTEM BEFORE RUNNING THE ATC TEST MODULES.    ATC
*        THE NOS - NOS/BE COMMANDS FOR TURNING OFF THE ATS CONTROLLER    ATC
*        CHANNEL IS AS FOLLOWS-                                          ATC
*                                                                        ATC
*                DOWN,CHXX.       (UNDER NOS)                            ATC
*                                                                        ATC
*                DWN,CHXX.        (UNDER NOS/BE)                         ATC
*                                                                        ATC
*                           WHERE - XX IS THE CHANNEL NUMBER OF THE      ATC
*                                   ATS CONTROLLER UNDERGOING TEST.      ATC
*                                                                        ATC
*        TURN ON THE CONTROLLER CHANNEL.                                 ATC
*                                                                        ATC
*        THE ATS CONTROLLER CHANNEL IS RETURNED TO THE OPERATING         ATC
*        SYSTEM AT THE COMPLETION OF THE ATC TEST BY THE FOLLOWING       ATC
*        NOS - NOS/BE SYSTEM COMMAND.                                    ATC
*                                                                        ATC
*                UP,CHXX.         (UNDER NOS - NOS/BE)                   ATC
*                                                                        ATC
*                           WHERE - XX IS THE CHANNEL NUMBER OF THE      ATC
*                                   ATS CONTROLLER UNDERGOING TEST.      ATC
*                                                                        ATC
*                                                                        ATC
*        CODE TRANSLATION MEMORIES.                                      ATC
*                                                                        ATC
*        ANY STANDARD CODE TRANSLATION MEMORY CONTENTS HELD IN THE       ATC
*        CONTROLLER ARE DESTROYED BY THIS TEST.  ATC TEST MODULES        ATC
*        ATC00 THROUGH ATC07 (FIRST EIGHT MODULES) WRITE/READ INTO       ATC
*        THESE MEMORIES.  THE CODE TRANSLATION MEMORIES ARE RESTORED     ATC
*        BY BRINGING -UP- THE CONTROLLER CHANNEL UNDER THE NOS OR        ATC
*        NOS/BE OPERATING SYSTEM COMMAND.                                ATC
*                                                                        ATC
*                                                                        ATC
*                UP,CHXX.         (UNDER NOS - NOS/BE)                   ATC
*                                                                        ATC
*                                                                        ATC
*    SWITCH OPTIONS -                                                    ATC
*                                                                        ATC
*        SWITCHES REFERENCED IN THIS TEST.                               ATC
*                                                                        ATC
*             RC - REPEAT CONDITION.                                     ATC
*             RM - REPEAT MODULE.                                        ATC
*             SE - STOP ON ERROR,(HALT INSTRUCTION USE).                 ATC
*             SL - SCOPING LOOP (RM .OR. RC .NOT. SE)                    ATC
*                                                                        ATC
*         ABREVIATIONS -                                                 ATC000K
*                                                                        ATC000K
*   A/D.............ASSEMBLY/DISASSEMBLY                                 ATC000K
*   BLK.............BLOCK                                                ATC000K
*   CONN............CONNECT                                              ATC000K
*   EXPSTAT.........EXPECTED STATUS                                      ATC000K
*   ERRCT...........ERROR COUNT                                          ATC000K
*   EXPTD...........EXPECTED                                             ATC000K
*   EXPTCD..........EXPECTED                                             ATC000K
*   FUP.............FORMAT UNIT PARAMETER                                ATC000K
*   INT/EXT.........INTERNAL/EXTERNAL                                    ATC000K
*   IPS.............INCHES PER SECOND                                    ATC000K
*   INFO............INFORMATION                                          ATC000K
*   LWR.............LOOP WRITE TO READ                                   ATC000K
*   MEM.............MEMORY                                               ATC000K
*   NOS.............NUMBERS                                              ATC000K
*   PARAM...........PARAMETER                                            ATC000K
*   PE..............PHASE ENCODED                                        ATC000K
*   RC..............REPEAT CONDITION                                     ATC000K
*   REG.............REGISTER                                             ATC000K
*   SL..............SCOPE LOOP                                           ATC000K
*   STAT............STATUS                                               ATC000K
*   STWRD...........STATUS WORD                                          ATC000K
*   STATWRD.........STATUS WORD                                          ATC000K
*   TRANS...........TRANSLATION                                          ATC000K
*   TCU.............TAPE CONTROL UNIT                                    ATC000K
*   TU..............TAPE UNIT                                            ATC000K
*   TERM............TERMINATE                                            ATC000K
*   WD..............WORD                                                 ATC000K
*                                                                        ATC
*    MODULE DESCRIPTIONS AND TEST SEQUENCE.                              ATC
*                                                                        ATC
*         ATC00  -  MASTER CLEAR FUNCTIONS AND GENERAL STATUS.           ATC
*         ATC01  -  TEST CODE CONVERSION MEMORIES.                       ATC
*         ATC02  -  TEST CODE CONVERSION MEMORIES.                       ATC
*         ATC03  -  TEST CODE CONVERSION MEMORIES.                       ATC
*           ATC030                                                       ATC
*         ATC04  -  TEST CODE CONVERSION MEMORIES.                       ATC
*         ATC05  -  TEST CODE CONVERSION MEMORIES.                       ATC
*         ATC06  -  TEST CODE CONVERSION MEMORIES.                       ATC
*         ATC07  -  TEST CODE CONVERSION MEMORIES.                       ATC
*         ATC08 - LOOP WRITE TO READ TCU,ALL PATTERNS,WC                 ATC000K
*                   CONSTANT.                                            ATC
*         ATC09 - LOOP WRITE TO READ TCU,PATTERN CONSTANT,INCREASING     ATC000K
*                 WC.                                                    ATC000K
*         ATC10  -  FUNCTIONS EXECUTION.                                 ATC
*         ATC11  -  TEST DETAILED STATUS.                                ATC
*         ATC12  -  TEST UNIT STATUS.                                    ATC
*         ATC13  -  TEST OPPOSITE PARITY FUNCTION.                       ATC
*           ATC130                                                       ATC
*         ATC14  -  LOOP WRITE TO READ TCU FUNCTION.                     ATC
*           ATC140                                                       ATC
*           ATC141                                                       ATC
*           ATC142                                                       ATC
*         ATC15  -  LOOP WRITE TO READ TCU FUNCTION.                     ATC
*         ATC16  -  TEST CLEAR UNIT FUNCTION. *                          ATC
*         ATC17  -  TEST RELEASE UNIT FUNCTION.                          ATC003K
*         ATC18  -  FORMAT UNIT FUNCTION CONNECTS.                       ATC003K
*         ATC19  -  FORMAT UNIT FUNCTION, 0 AND 4000 PARAMETER 1 WORDS.  ATC
*         ATC20  -  FORMAT UNIT FUNCTION ISSUE ALL DENSITIES.            ATC003K
*         ATC21  -  TEST OPPOSITE PARITY FUNCTION. *                     ATC
*           ATC210                                                       ATC
*           ATC211                                                       ATC
*         ATC22  -  TEST OPPOSITE DENSITY FUNCTION. *                    ATC
*           ATC220                                                       ATC
*           ATC221                                                       ATC
*           ATC222                                                       ATC
*           ATC223                                                       ATC
*           ATC224                                                       ATC
*         ATC23  -  CONNECT TEST.                                        ATC003K
*         ATC24  -  SET READ CLIP LEVELS. *                              ATC
*         ATC25  -  TEST STOP MOTION. *                                  ATC
*         ATC26  -  TEST VELOCITY DETECTORS.                             ATC003K
*         ATC27  -  EVEN WRITE PATH PARITY.                              ATC
*IF DEF,CMSE17X,1 
*         ATC28  -  EVEN CHANNEL PARITY.                                 ATC
*         ATC29  -  FORCE DATA ERROR.                                    ATC
*         ATC30  -  OPPOSITE PARITY TEST.                                ATC
*         ATC31  -  FORMAT UNIT CONNECTS TO UNIT.                        ATC010K
*           ATC310                                                       ATC
*           ATC311                                                       ATC
*         ATC32  -  ATTEMPT WRITE WITH NO UNIT.                          ATC003K
*         ATC33  -  LOOP WRITE TO READ UNIT FUNCTION. *                  ATC
*         ATC34  -  LOOP WRITE TO READ UNIT ALL PATTERNS. *              ATC
*         ATC35  -  LOOP WRITE TO READ UNIT VARYING RECORD LENGTH. *     ATC
*         ATC36  -  LOOP WRITE TO READ UNIT WITH LONG RECORDS. *         ATC
*           ATC360                                                       ATC
*           ATC361                                                       ATC
*         ATC37 - LWR TCU,CODE CONVERSIONS,VARING DATA PATTERNS.*        ATC000K
*         ATC38  -  TEST BLOCK ID.                                       ATC
*         ATC39  -  TEST DETAILED STATUS.                                ATC003K
*         ATC40  -  TEST UNIT STATUS.                                    ATC003K
*         ATC41  -  SINGLE TRACK CORRECTION.                             ATC
*         ATC42  -  DUAL TRACK CORRECTION.                               ATC
*         ATC43  -  NINE TRACK, PE ERROR CORRECTION.                     ATC
*         ATC44  -  GCR ERROR CORRECTION.                                ATC
*         ATC45  -  TEST FORCE LOST DATA.                                ATC
*         ATC46  -  TEST FORMAT UNIT, ONE PARAMETER ONLY.                ATC
*         ATC47  -  FORCE TCU ERROR CODE 65.                             ATC
*         ATC48  -  TEST SINGLE FRAME ERROR.                             ATC
*         ATC49  -  NRZI, SEVEN TRACK DATA ERRORS.                       ATC
*         ATC50  -  NRZI, NINE TRACK WITH SINGLE TRACK ERRORS.           ATC
*         ATC51  -  DEADMAN TIMER TEST.                                  ATC
*         ATC52  -  TEST OPPOSITE DENSITY IN ALL LWR TCU MODES.          ATC
*         ATC53  -  CODE CONVERSION, WRITE 6-BIT READ PACKED MODE.       ATC
*         ATC54  -  ISSUE FORMAT UNIT FUNCTION WITH 3 PARAMETERS.        ATC
*         ATC55      (NOT USED INTENTIONALLY)                            ATC010K
*         ATC56  -  LOOP WRITE TO READ TCU FUNCTION - ERROR CORRECTION   ATC
*                   DISABLED.                                            ATC
*           ATC560                                                       ATC
*           ATC561                                                       ATC
*           ATC562                                                       ATC
*         ATC981 -  PATTERN GENERATOR.                                   ATC
*         ATC984 -  DATA COMPARISON MODULE.                              ATC
*         ATC985 - ERROR PROCESSING MODULE.                              ATC000K
*         ATC986 - ERROR MESSAGE (DASHES) SEPARATOR.                     ATC009K
*                                                                        ATC
*                               NOTE - * INDICATES UNIT CONNECT CODE     ATC
*                                        FUNCTION IS USED. A MAGNETIC    ATC
*                                        TAPE REEL SHOULD BE MOUNTED     ATC
*                                        AND AT LOAD POINT. UNIT         ATC
*                                        SHOULD BE READY. NO TAPE        ATC
*                                        MOTION INSTRUCTIONS ARE         ATC
*                                        ISSUED BY THIS TEST.            ATC
*                                                                        ATC
*                                                                        ATC
*    CORE LOCATIONS OF INTEREST.                                         ATC
*                                                                        ATC
*         OUTPUT BUFFER (OB) - TERMS CONTAINED IN CORE                   ATC
*             400 - DDLT NUMBER (FIRST OCTAL WORD PORTION).              ATC
*             401 - DDLT NUMBER (SECOND OCTAL WORD PORTION).             ATC
*             402 - PRIMARY FUNCTION CODE LAST ISSUED.                   ATC
*             403 - UNIT NUMBER.                                         ATC
*             404 - SUBMODULE NUMBER USED AS DDLT TERM.                  ATC
*             405 - ERROR TYPE NUMBER USED AS DDLT TERM.                 ATC
*             406 - FUNCTION SEQUENCE NUMBER USED AS DDLT TERM.          ATC
*             407 - SP1 - FORMAT UNIT PARAMETER WORD 1.                  ATC
*             410 - SP2 - FORMAT UNIT PARAMETER WORD 2.                  ATC
*             411 - SP3 - LOOP WRITE TO READ TCU PARAMETER WORD.         ATC
*             412 - WORD COUNT LENGTH FOR I/O.                           ATC
*             413 - PATTERN NUMBER.                                      ATC
*             414 - LOOP 1 COUNTER.                                      ATC
*             415 - LOOP 2 COUNTER.                                      ATC
*             416 - CURRENT ATC MODULE NUMBER EXECUTING.                 ATC
*             417 - FLAG - CURRENT STATUS TAKEN FLAG.                    ATC
*                                                                        ATC
*             420 - EXPECTED TCU STATUS WORD 1                           ATC
*             421 - EXPECTED TCU STATUS WORD 2                           ATC
*             422 - EXPECTED TCU STATUS WORD 3                           ATC
*             423 - EXPECTED TCU STATUS WORD 4                           ATC
*             424 - EXPECTED TCU STATUS WORD 5                           ATC
*             425 - EXPECTED TCU STATUS WORD 6                           ATC
*             426 - EXPECTED TCU STATUS WORD 7                           ATC
*             427 - EXPECTED TCU STATUS WORD 8                           ATC
*             430 - EXPECTED TCU STATUS WORD 9                           ATC
*             431 - EXPECTED TCU STATUS WORD 10                          ATC
*             432 - EXPECTED TCU STATUS WORD 11                          ATC
*             433 - EXPECTED TCU STATUS WORD 12                          ATC
*             434 - EXPECTED TCU STATUS WORD 13                          ATC
*             435 - EXPECTED TCU STATUS WORD 14                          ATC
*             436 - EXPECTED TCU STATUS WORD 15                          ATC
*             437 - EXPECTED TCU STATUS WORD 16                          ATC
*                                                                        ATC
*             477 - ERROR ACCUMULATIONS COUNT FOR MODULE.                ATC000K
*                                                                        ATC
*                                                                        ATC
*    FAULT ISOLATION SCHEME.                                             ATC
*                                                                        ATC
*       DIAGNOSTIC DECISION LOGIC TABLE (DTLT)PUB NO.60455130            ATC000K
*                                                                        ATC
*          THIS TEST HAS BEEN DESIGNED TO PROVIDE A DDLT CAPABILITY      ATC
*          FOR FAULT ISOLATION PURPOSES.  A DDLT NUMBER HAS BEEN         ATC
*          DEFINED TO GIVE SOME INDICATION OF THE ORDER AND              ATC
*          SEQUENCE OF EVENTS OCCURING IN THIS TEST.  THE DDLT           ATC
*          NUMBERS ARE TO ALLOW FOR CORRELATION WITH MOST PROBABLE       ATC
*          FAILING P.C. BOARD IDENTIFICATION.  THE INTENT OF THE DDLT    ATC
*          NUMBER IS TO GIVE THE CUSTOMER ENGINEER A SPECIFIC STARTING   ATC
*          REFERENCE POINT FOR THE CORRECTION OF EQUIPMENT MALFUNCTIONS. ATC
*          THE DDLT NUMBERS DEFINED HEREIN ARE TO BE CORRELATED TO       ATC
*          ACTUAL OBSERVED FAILURES INDUCED BY FAULT INJECTION ON AN     ATC
*          OPERATIONAL ADVANCED TAPE SUBSYSTEM (ATS) CONTROLLER.         ATC
*          ALL P.C. BOARD FAULTS CORRESPONDING TO DDLT NUMBERS           ATC
*          IN THIS TEST WILL BE ITEMIZED IN A TROUBLESHOOTING GUIDE.     ATC
*          IT IS ASSUMED THAT THIS METHOD WILL PROVIDE THE RAPID         ATC
*          AND SUCCESSFUL MODULE REPLACEMENT MECHANISM NEEDED FOR A      ATC
*          FIELD ENVIRONMENT USAGE OF THIS TEST.                         ATC
*                                                                        ATC
*          THE DDLT NUMBER WILL POINT TO THE LOCATION IN A PARTICULAR    ATC
*          FAILING MODULE WHICH, IN CONJUNCTION WITH THE MODULE DESCRIP- ATC
*          TION IN THE DOCUMENTATION, WILL SHOW THE LAST SEQUENCE OF     ATC
*          FUNCTIONS PERFORMED IN THE ATC.                               ATC
*                                                                        ATC
*          THE DDLT NUMBERS ARE DEFINED FOR THIS ATC TEST AS FOLLOWS -   ATC
*                                                                        ATC
*                TWO 12-BIT OCTAL CONSTANTS WILL BE USED WHEN REFERENCE  ATC
*                TO THE DDLT NUMBER IS MADE.  THE TEST WILL PROVIDE THE  ATC
*                NUMBER AS A DISPLAYED LINE WITH ALL OTHER INFORMATION   ATC
*                SHOWN IN THE ERROR MESSAGES EXAMPLES DESCRIBED FOR      ATC
*                THIS TEST.                                              ATC
*                                                                        ATC
*                THE DISPLAY LINE IS AS SHOWN BELOW -                    ATC
*                                                                        ATC
*                    DDLT NUMBER - AABC DEFF.                            ATC
*                                                                        ATC
*                         WHERE -  AA = PRIMARY ATC MODULE               ATC
*                                       NUMBER. 00 THRU 55 DECIMAL       ATC
*                                       SHOWN AS A TWO DIGIT OCTAL       ATC
*                                       NUMBER.                          ATC
*                                                                        ATC
*                                  B  = SUBMODULE NUMBER IF              ATC
*                                       SUBMODULES ARE FOUND IN THE      ATC
*                                       CURRENTLY RUNNING MODULE.        ATC
*                                       0 - NONE                         ATC
*                                       1 - FIRST SUBMODULE.             ATC
*                                       2 - SECOND SUBMODULE.            ATC
*                                       3 - THIRD SUBMODULE.             ATC
*                                       4 - ETC,......                   ATC
*                                                                        ATC
*                                  C  = ERROR TYPE NUMBER. ONE OCTAL     ATC
*                                       DIGIT DESIGNATING THE TYPE       ATC
*                                       OF ERROR ENCOUNTERED.            ATC
*                                       0 - NONE (NOT EXPECTED).         ATC
*                                       1 - STATUS ERROR STOP.           ATC
*                                       2 - DATA ERROR STOP.             ATC
*                                       3 - ERROR STOP.                  ATC
*                                       4 - OTHER ERROR STOP.            ATC
*                *OTHER ERROR STOP*=(NONE OF THE ABOVE)                  ATC003K
*                                                                        ATC
*                                  D  = ADDITIONAL ERROR INFORMATION.    ATC
*                                       0 - NONE.                        ATC
*                                       1 - FUNC 12, ABT XX              ATC
*                                           STATEMENT ABORTED IN THE     ATC
*                                           ERROR DISPLAY MODULE.        ATC
*                                       2 - STATUS 20 WORDS TO SB,       ATC
*                                           ABT XX STATEMENT ABORTED     ATC
*                                           IN THE ERROR DISPLAY         ATC
*                                           MODULE.                      ATC
*                                                                        ATC
*                                           DISPLAY MODULE IS ATC985.    ATC
*                                                                        ATC
*                                  E  = ADDITIONAL ERROR INFORMATION.    ATC
*                                       0 - NONE.                        ATC
*                                       1 - FUNC 12, ABT XX OR STATUS    ATC
*                                           STATEMENT ABORTED IN THE     ATC
*                                           CURRENT MODULE.              ATC
*                                                                        ATC
*                                  FF = FUNCTION ACTION NUMBER.          ATC
*                                       A TWO DIGIT OCTAL NUMBER         ATC
*                                       CORRESPONDING TO EACH            ATC
*                                       PRIMARY FUNCTION CODE            ATC
*                                       ISSUED WITHIN THE                ATC
*                                       MODULES. THESE NUMBERS           ATC
*                                       START WITH 01 AND ARE            ATC
*                                       INCREMENTED BY ONE FOR           ATC
*                                       EACH FUNCTION CODE FOUND         ATC
*                                       IN THE MODULES TEST              ATC
*                                       SEQUENCE.                        ATC
*                                                                        ATC
*    MESSAGE FORMATS.                                                    ATC
*                                                                        ATC
*       A. NORMAL MESSAGES.                                              ATC
*                                                                        ATC
*          ATC22 OPPOSITE DENSITY FUNCTION TEST.                         ATC
*                                                                        ATC
*                TYPICAL START OF MODULE MESSAGE SENT TO DISPLAY AND     ATC
*                PRINT BUFFERS.                                          ATC
*                                                                        ATC
*                ATC22 - REPRESENTS CURRENT MODULE IN EXECUTION.         ATC
*                        MODULE NUMBERS EXTEND FROM 00 TO 56.            ATC000K
*                        PRIMARY MODULE NUMBER 22 IS SHOWN ABOVE.        ATC
*                ONE LINE STATEMENT FOLLOWS TO DESCRIBE TEST PURPOSE.    ATC
*                                                                        ATC
*          ATC14 START OF SUBSEC 0005.                                   ATC
*                                                                        ATC
*          ATC14 END OF SUBSEC 0005.                                     ATC
*                                                                        ATC
*                THE ABOVE TWO MESSAGES SENT TO THE DISPLAY AND PRINT    ATC
*                BUFFERS.  MODULE 14 IN THIS EXAMPLE SHOWS SUBSECTION 5  ATC
*                STARTED AND ENDED EXECUTION.  EACH SUBSECTION IS        ATC
*                CONTAINED IN ONE MODULE.                                ATC
*                                                                        ATC
*          ATC22 END OF MODULE, 0000 ERRORS.                             ATC
*                                                                        ATC
*                THE END OF MODULE MESSAGE IS SENT TO THE DAYFILE AND    ATC
*                PRINT BUFFERS.  IF THE MODULE RUNS TO COMPLETION THE    ATC
*                ERROR COUNTER WOULD SHOW THE NUMBER (DECIMAL) OF        ATC
*                ERROR DISPLAYS PROCESSED WHILE THE MODULE WAS RUNNING.  ATC
*                THE COUNT WOULD SHOW ZEROES IF NO ERRORS WERE           ATC
*                ENCOUNTERED. THE EXAMPLE INDICATES MODULE 22 HAS        ATC
*                ENDED.                                                  ATC
*                                                                        ATC
*                                                                        ATC
*       B. ERROR MESSAGES.                                               ATC
*                                                                        ATC
*                THREE CATAGORIES OF ERRORS ARE REPORTED BY THIS TEST.   ATC
*                STATUS ERRORS, DATA COMPARISON ERRORS, AND              ATC
*                DETECTED LOW LEVEL ABORT (ABT) INSTRUCTION BRANCH       ATC
*                TYPE OF ERRORS.                                         ATC
*                                                                        ATC
*                THE ATC TEST MODULES ALL CONTAIN A CHECK OF THE         ATC
*                SIXTEEN WORDS OF ATS CONTROLLER STATUS IMMEDIATELY      ATC
*                FOLLOWING THE ACCEPTANCE OF THE FUNCTION SEQUENCE       ATC
*                ISSUED BY THE TEST. IF ANY STATUS TERMS DO NOT AGREE    ATC
*                WITH THE EXPECTED STATUS BUFFER TERMS AN ERROR IS       ATC
*                REPORTED. THE TEST IS CONTINUED FROM THE POINT AT       ATC
*                WHICH THE ERROR OCCURRED UNTIL END OF MODULE IS         ATC
*                REACHED.                                                ATC
*                                                                        ATC
*                DATA COMPARISON CHECKS ARE MADE IN SEVERAL OF THE       ATC
*                CODE TRANSLATION COPY MEMORY SEQUENCES AND ERRORS       ATC
*                WOULD BE DISPLAYED  IF ACTUAL DATA TERMS DO NOT         ATC
*                COMPARE WITH EXPECTED TERMS.  THE DATA TERMS IN ERROR   ATC
*                ARE SHOWN ALONG WITH THEIR WORD LOCATION AS A LIST      ATC
*                ENTRY FOLLOWED BY THE CURRENT ATS CONTROLLER STATUSES   ATC
*                (ACTUAL STATUS ONLY WITHOUT ANY EXPECTED STATUS WORDS   ATC
*                INDICATED).                                             ATC
*                                                                        ATC
*                DETECTED ERRORS WOULD OCCUR WHEN THE ABORT (ABT)        ATC
*                BRANCH OF THE LOW LEVEL INSTRUCTIONS IS TAKEN AND WAS   ATC
*                NOT EXPECTED BY THE TEST.  THE DISPLAY WILL SHOW THE    ATC
*                ISSUED ERROR INFORMATION ALONG WITH THE CURRENT         ATC
*                STATUSES OF THE ATS CONTROLLER, IF STATUS CAN BE        ATC
*                OBTAINED.                                               ATC
*                                                                        ATC
*                IN ALL ERROR CASES ABOVE THE TEST WILL DISPLAY          ATC
*                INFORMATION SHOWING THE MOST RECENT TEST CONDITIONS     ATC
*                BEING EXECUTED AT THE TIME OF ERROR AND ALSO THE        ATC
*                CURRENT CONTROLLER STATUSES.                            ATC
*                                                                        ATC
*                1. STATUS ERRORS EXAMPLE.                               ATC
*                                                                        ATC
*                       ATC TEST ERROR DISPLAY.                          ATC
*                         CURRENT ATC MODULE    = XXXX.                  ATC
*                         CURRENT TEST FUNCTION = 0YYY.                  ATC
*                         SP1 = AAAA, CNT1 = MMMM, LNG = LLLL.           ATC
*                         SP2 = BBBB, CNT2 = NNNN, PAT = PPPP.           ATC
*                         SP3 = CCCC.                                    ATC
*                                                                        ATC
*                         STATUS     1     2     3     4                 ATC
*                          EXPCTD  0305  0000  0000  0000                ATC
*                          ACTUAL  4305  1660  5200  0000                ATC
*                         STATUS     5     6     7     8                 ATC
*                          EXPCTD  0000  0000  0000  1400                ATC
*                          ACTUAL  0210  0000  0000  1400                ATC
*                         STATUS     9    10    11    12                 ATC
*                          EXPCTD  0000  0000  4056  0000                ATC
*                          ACTUAL  0000  0000  4056  0000                ATC
*                         STATUS    13    14    15    16                 ATC
*                          EXPCTD  0040  0032  0000  0044                ATC
*                          ACTUAL  0040  0032  0000  0044                ATC
*                                                                        ATC
*                                                                        ATC
*                                                                        ATC
*                         STATUS ERROR.                                  ATC
*                         DDLT NUMBER - *OCT *OCT.                       ATC
*                                                                        ATC
*                                                                        ATC
*                                                                        ATC
*                         EC=0001, EM=0005, LFN0012,U0006.               ATC
*                                                                        ATC003K
*        ATC TEST ERROR DISPLAY                                          ATC003K
*              STATUS WORDS 1 TO 8                                       ATC003K
*         EXP -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT                   ATC003K
*         ACT -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT                   ATC003K
*              STATUS WORDS 9 TO 16                                      ATC003K
*         EXP -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT                   ATC003K
*         ACT -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT                   ATC003K
*              FUNCTION TESTED=*OCT                                      ATC003K
*              DTLT NUMBER - *OCT *OCT                                   ATC003K
*                                                                        ATC003K
*                                                                        ATC
*                   NOTES - XXXX = MODULE NUMBER, USED BY                ATC
*                                  DISPLAY MODULE 985 TO                 ATC
*                                  SHOW MODULE WHERE ERROR               ATC
*                                  ORIGINATED. DECIMAL                   ATC
*                                  NUMBER DISPLAYED.                     ATC
*                           0YYY = CURRENT ATC FUNCTION CODE             ATC
*                                  BEING TESTED. USUALLY IS              ATC
*                                  NOT A 12 (STATUS) FUNCTION.           ATC
*                           AAAA = SP1 TAG FOR FORMAT UNIT               ATC
*                                  (FNC 4) PARAMETER WORD ONE.           ATC
*                           BBBB = SP2 TAG FOR FORMAT UNIT               ATC
*                                  (FNC 4) PARAMETER WORD TWO.           ATC
*                           CCCC = SP3 TAG FOR LOOP WRITE TO             ATC
*                                  READ TCU (FNC 75) PARAMETER           ATC
*                                  WORD.                                 ATC
*                           LLLL = I/O BLOCK OUTPUT BUFFER               ATC
*                                  LENGTH (OCTAL).                       ATC
*                           PPPP = PATTERN NUMBER FOR PATTERN            ATC
*                                  USED IN I/O OPERATIONS.               ATC
*                           MMMM = GENERAL COUNTER FOR LOOPING           ATC
*                                  (DECIMAL).                            ATC
*                           NNNN = GENERAL COUNTER FOR LOOPING           ATC
*                                  (DECIMAL).                            ATC
*                           *OCT *OCT = REPRESENTS THE TWO               ATC
*                                       OCTAL CONSTANTS MAKING UP        ATC
*                                       THE DDLT NUMBER.                 ATC
*                           EC = 0001 IS AN ERROR CODE NUMBER USED       ATC
*                                     IN THE CODE. THE ERROR             ATC
*                                     NUMBER 1 IS NOT SIGNIFICANT        ATC
*                                     TO TEST OPERATIONS.                ATC
*                           EM = 0005 IS THE FORMAT STATEMENT            ATC
*                                     MESSAGE NUMBER. THIS NUMBER IS     ATC
*                                     NOT SIGNIFICANT TO THE TEST        ATC
*                                     OPERATION.                         ATC
*                           LFN0012 INDICATES LAST FUNCTION CODE         ATC
*                                   PROCESSED BY . USUALLY IS            ATC
*                                   A STATUS FUNCTION CODE 12 USED       ATC
*                                   AFTER THE CURRENT TEST FUNCTION      ATC
*                                   0YYY (ABOVE) IS COMPLETED.           ATC
*                           U0006 INDICATES A UNIT NUMBER USED IN        ATC
*                                 ANY MODULE WHICH ISSUES A CONNECT      ATC
*                                 UNIT FUNCTION CODE.  MODULES           ATC
*                                 WHICH DO NOT CONNECT TO A UNIT SHOW    ATC
*                                 A UNIT NUMBER 0077 FOR DISPLAY         ATC
*                                 PURPOSES.                              ATC
*                                                                        ATC
*                                                                        ATC
*                   THE SAME TERMS ABOVE ARE USED IN THE                 ATC
*                   FOLLOWING DISPLAYS SHOWN BELOW.                      ATC
*                                                                        ATC
*                                                                        ATC
*                2. DATA ERRORS EXAMPLE.                                 ATC
*                                                                        ATC
*                       ATC DATA COMPARE ERRORS.                         ATC
*                           COMPARISON OF FFFF WORDS.                    ATC
*                           LOC CNT   EXPECTED   ACTUAL                  ATC
*                             WWWW     UUUU       VVVV                   ATC
*                             WWWW     UUUU       VVVV                   ATC
*                             WWWW     UUUU       VVVV                   ATC
*                             WWWW     UUUU       VVVV                   ATC
*                             WWWW     UUUU       VVVV                   ATC
*                             WWWW     UUUU       VVVV                   ATC
*                             WWWW     UUUU       VVVV                   ATC
*                             WWWW     UUUU       VVVV                   ATC
*                             WWWW     UUUU       VVVV                   ATC
*                             WWWW     UUUU       VVVV                   ATC
*                             WWWW     UUUU       VVVV                   ATC
*                                                                        ATC
*                                                                        ATC
*                       ATC TEST ERROR DISPLAY.                          ATC
*                         CURRENT ATC MODULE    = XXXX.                  ATC
*                         CURRENT TEST FUNCTION = 0YYY.                  ATC
*                         SP1 = AAAA, CNT1 = MMMM, LNG = LLLL.           ATC
*                         SP2 = BBBB, CNT2 = NNNN, PAT = PPPP.           ATC
*                         SP3 = CCCC.                                    ATC
*                                                                        ATC
*                         STATUS     1     2     3     4                 ATC
*                          ACTUAL  4305  1660  5200  0000                ATC
*                         STATUS     5     6     7     8                 ATC
*                          ACTUAL  0210  0000  0000  1400                ATC
*                         STATUS     9    10    11    12                 ATC
*                          ACTUAL  0000  0000  4056  0000                ATC
*                         STATUS    13    14    15    16                 ATC
*                          ACTUAL  0040  0032  0000  0044                ATC
*                                                                        ATC
*                                                                        ATC
*                                                                        ATC
*                                                                        ATC
*                         DATA ERROR.                                    ATC
*                         DDLT NUMBER - *OCT *OCT.                       ATC
*                                                                        ATC
*                                                                        ATC
*                                                                        ATC
*                         EC=0004, EM=0017,LFN0012,U0006.                ATC
*                                                                        ATC
*                   NOTES - WWWW = WORD LOCATION (OCTAL) IN              ATC
*                                  ERROR.                                ATC
*                           UUUU = EXPECTED 12-BIT OCTAL                 ATC
*                                  VALUES.                               ATC
*                           VVVV = ACTUAL 12-BIT OCTAL VALUES            ATC
*                                  INPUT FROM CONTROLLER.                ATC
*                           FFFF = TOTAL NUMBER OF WORDS THAT            ATC
*                                  ARE TO BE COMPARED (OCTAL).           ATC
*                                                                        ATC
*                           ONLY THOSE WORDS IN ERROR ARE                ATC
*                           DISPLAYED WHEN A BUFFER COMPARISON           ATC
*                           CHECK IS MADE.                               ATC
*                                                                        ATC
*                                                                        ATC
*                3.  ISSUED MESSAGES EXAMPLE.                            ATC
*                                                                        ATC
*                       ATC TEST ERROR DISPLAY.                          ATC
*                         CURRENT ATC MODULE    = XXXX.                  ATC
*                         CURRENT TEST FUNCTION = 0YYY.                  ATC
*                         SP1 = AAAA, CNT1 = MMMM, LNG = LLLL.           ATC
*                         SP2 = BBBB, CNT2 = NNNN, PAT = PPPP.           ATC
*                         SP3 = CCCC.                                    ATC
*                                                                        ATC
*                         STATUS     1     2     3     4                 ATC
*                          ACTUAL  4305  1660  5200  0000                ATC
*                         STATUS     5     6     7     8                 ATC
*                          ACTUAL  0210  0000  0000  1400                ATC
*                         STATUS     9    10    11    12                 ATC
*                          ACTUAL  0000  0000  4056  0000                ATC
*                         STATUS    13    14    15    16                 ATC
*                          ACTUAL  0040  0032  0000  0044                ATC
*                                                                        ATC
*                                                                        ATC
*                                                                        ATC
*                                                                        ATC
*                         ISSUED MESSAGE.                                ATC
*                         DDLT NUMBER - *OCT *OCT.                       ATC
*                                                                        ATC
*                                                                        ATC
*                                                                        ATC
*                         ATC985 ER4027 L054 CH INACTIVE ON CHAINING     ATC
*                                                                        ATC
*                   NOTES - ATC985 IS THE MODULE USED TO                 ATC
*                           PROVIDE ALL ERROR DISPLAYS SHOWN             ATC
*                           ABOVE.                                       ATC
*                                                                        ATC
*                           ER40DD IS THE ISSUED ERROR                   ATC
*                           CODE NUMBER DD.                              ATC
*                                                                        ATC
*                           LNNN IS THE LINE NUMBER NNN IN               ATC
*                           MODULE NUMBER XXXX WHERE                     ATC
*                           TOOK THE ABORT (ABT) BRANCH.                 ATC
*                           MODULE ATC985 IS THE RESULT OF               ATC
*                           A CALL 985 STATEMENT IN MODULE               ATC
*                           XXXX.                                        ATC
*                                                                        ATC
*                             THE ERROR STATEMENT IS A                   ATC000K
*                           BRIEF SENTENCE RELATED TO THE                ATC
*                           ERROR NUMBER DD. SEE MANUAL                  ATC
*                           FOR ALL POSSIBLE LOW LEVEL ERROR             ATC
*                           CODE MESSAGES.                               ATC
*                                                                        ATC
*                                                                        ATC009K
*                       ATC TEST ERROR DISPLAY.                          ATC009K
*                         CURRENT ATC MODULE    = XXXX.                  ATC009K
*                         CURRENT TEST FUNCTION = 0YYY.                  ATC009K
*                         SP1 = AAAA, CNT1 = MMMM, LNG = LLLL.           ATC009K
*                         SP2 = BBBB, CNT2 = NNNN, PAT = PPPP.           ATC009K
*                         SP3 = CCCC.                                    ATC009K
*                                                                        ATC009K
*                         STATUS     1     2     3     4                 ATC009K
*                          ACTUAL  4305  1660  5200  0000                ATC009K
*                         STATUS     5     6     7     8                 ATC009K
*                          ACTUAL  0210  0000  0000  1400                ATC009K
*                         STATUS     9    10    11    12                 ATC009K
*                          ACTUAL  0000  0000  4056  0000                ATC009K
*                         STATUS     13   14    15    16                 ATC009K
*                          ACTUAL  0040  0032  0000  0044                ATC009K
*                                                                        ATC009K
*                                                                        ATC009K
*                         ISSUED MESSAGE.                                ATC009K
*                         DTLT NUMBER - 0103  1001                       ATC009K
*                                                                        ATC009K
*                                                                        ATC009K
*                      ATC985 ABORT EC=4024,EM=0122,LFN=0012,EA=0061     ATC009K
*                                                                        ATC009K
*                       ATC01  E4024 L020  NO INACTIVE ON EQUIP FUNC     ATC009K
*                                                                        ATC009K
*                                                                        ATC009K
*                   THE ABOVE ERROR MESSAGE IS AN EXAMPLE                ATC009K
*                   OF A DOUBLE ABORT.THE MODULE ABORTED                 ATC009K
*                   IN THE TESTING MODULE ATC01 AND IN THE               ATC009K
*                   ERROR PROCESSING MODULE ATC985.THE DTLT              ATC009K
*                   NUMBER WILL FURTHER EXPLAIN THIS ERROR.              ATC009K
*                   REFER TO ATC DOCUMENTATION.                          ATC009K
*                                                                        ATC009K
*                                                                        ATC009K
*         THE FOLLOWING TABLE DEFINES THOSE POSSIBLE ERROR CODES THAT    ATC
*         MAY BE ISSUED DURING AN ABORT (ABT) ERROR LOOP OCCURING        ATC
*         IN THE EXECUTION OF INSTRUCTIONS USED IN THIS TEST.            ATC
*         SEE ALSO MANUAL, LOW LEVEL ERROR CODE TABLE, FOR MORE          ATC
*         COMPLETE DEFINITION OF ADDITIONAL ERROR CODES NOT SHOWN        ATC
*         HERE.                                                          ATC
*                                                                        ATC
*         ERROR                             INSTRUCTIONS WHICH           ATC
*         CODE         MESSAGE              COULD ISSUE THIS MESSAGE.    ATC
*                                                                        ATC
*          04    WC OR BUFFER INDEX ERROR   FUNC     STATUS   OUT        ATC
*                                           FOUT     INB      OUTB       ATC
*                                                                        ATC
*          12    NO FULL ON EQUIP STATUS    IN       OUT                 ATC
*                                           INB      OUTB                ATC
*                                                                        ATC
*          13    NO FULL ON EQUIP STATUS    STATUS                       ATC
*                                                                        ATC
*          20    CH ACTIVE ON ENTRY         ACN      FUNC     STATUS     ATC
*                                           CONN     IN       OUT        ATC
*                                                    INB      OUTB       ATC
*                                                                        ATC
*          21    CH INACTIVE AFTER ACN      ACN      FUNC     IN         ATC
*                                           CONN     STATUS   INB        ATC
*                                                                        ATC
*          22    CH ACTIVE AFTER DCN        STATUS   IN       OUT        ATC
*                                                    INB      OUTB       ATC
*                                                                        ATC
*          23    CH NOT RESERVED            ACN      STATUS   OUT        ATC
*                                           FUNC     IN       OUTB       ATC
*                                                    INB                 ATC
*                                                                        ATC
*          24    NO INACTIVE ON EQUIP FUNC  CONN                         ATC
*                                           FUNC                         ATC
*                                                                        ATC
*          26    NO EMPTY ON LAST BYTE      FOUT     OUT      OUTB       ATC
*                OUTPUT                                                  ATC
*                                                                        ATC
*          27    CH INACTIVE ON CHAINING    IN       OUT                 ATC
*                                           INB      OUTB                ATC
*                                                                        ATC
*          30    CH ACTIVE AND EMPTY ON     STATUS   IN                  ATC
*                INPUT                                                   ATC
*                                                                        ATC
*          31    CH INACTIVE ON STATUS      STATUS                       ATC
*                                                                        ATC
*          32    CH ACTIVE AND FULL ON      CONN     FUNC     OUT        ATC
*                OUTPUT                                                  ATC
*                                                                        ATC
*                                                                        ATC
*** ATC - MODULES DOCUMENTATION.                                         ATC
*                                                                        ATC
**  ATC - MODULES DOCUMENTATION.                                         ATC
*                                                                        ATC
*     MODULES DOCUMENTATION.                                             ATC
*                                                                        ATC
*         THE DOCUMENTATION WHICH FOLLOWS SHOWS THE SEQUENCE OF          ATC
*         OPERATIONS PERFORMED BY THIS ATC TEST.  THE FUNCTIONS          ATC
*         TESTED ARE INDICATED BY THE NOTATION, FNC NNN, IN THE          ATC
*         LEFT HAND COLUMN OF THE ITEMIZED TEST SEQUENCES                ATC
*         DESCRIBED. THE FUNCTION ACTION NUMBERS ARE SHOWN AS            ATC
*         (DDLT-FF) FOR EACH TEST FUNCTION.                              ATC
*                                                                        ATC
*         NNN, ABOVE, IS A ONE, TWO OR THREE DIGIT OCTAL FUNCTION        ATC
*         CODE.  FF IS A ONE OR TWO OCTAL DIGIT FUNCTION ACTION          ATC
*         NUMBER AS DESCRIBED IN THE FAULT ISOLATION SCHEME              ATC
*         PARAGRAPH DESCRIBED PREVIOUSLY IN THIS DOCUMENT.  THE          ATC
*         FF DIGITS WILL BE FOUND IN THE LOWER 6-BITS OF THE             ATC
*         ERROR DISPLAYS, DDLT NUMBER - XXXX XXFF.                       ATC
*                                                                        ATC
   MODULE ATC00,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC00.                                                  ATC
*                                                                        ATC
**  ATC00 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      00* *             ATC
*        MODULE - ATC00.                                   *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC00.                                                     ATC
*                                                                        ATC
*         TEST MASTER CLEAR FUNCTIONS AND GENERAL STATUS.                ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. ISSUE FIRST MASTER CLEAR FUNCTION.               ATC
*           (DDLT-1)                                                     ATC
*         FNC 12     2. ISSUE STATUS FUNCTION 12.                        ATC
*           (DDLT-2)                                                     ATC
*         STATUS     3. INPUT 16 WORDS OF GENERAL STATUS.                ATC
*           (DDLT-3)                                                     ATC
*                      4. VERIFY ALERT STATUS IS NOT SET                 ATC000K
*                       IN STATUS WORD 1.                                ATC
*                    5. VERIFY THAT ALL STATUS WORDS ARE                 ATC
*                       ZEROES EXCEPT FOR WORD 1 TCU NOT                 ATC
*                       CONNECTED AND WORD 11 GCR OPTION                 ATC
*                       BIT SET IF AVAILABLE.                            ATC
*                    6. REPEAT FROM 1 WITH MASTER CLEAR                  ATC
*                       FUNCTION CODES OF 514, 614, AND                  ATC
*                       714.                                             ATC
*                      7. IF RC OR SL GOTO 1.                            ATC000K
*                      8. LOOP FROM 1 TEN TIMES.                         ATC000K
*                      9. IF RC OR SL GOTO 1.                            ATC000K
*                     10. END MODULE.                                    ATC000K
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         FAILURE OF CONTROLLER TO ACCEPT MASTER CLEAR FUNCTION.         ATC
*         FAILURE OF CONTROLLER TO ACCEPT GENERAL STATUS FUNCTION.       ATC
*         FAILURE OF CONTROLLER TO SEND 16 WORDS OF GENERAL              ATC
*             STATUS.                                                    ATC
*         FAILURE OF CONTROLLER TO SHOW STATUS CORRESPONDING TO          ATC
*             MASTER CLEAR CONDITIONS.                                   ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE PRODUCT OVERLAY ERROR MESSAGES.                 ATC
*                                                                        ATC
*         THE FOLLOWING DISPLAYED LINES WILL BE PROVIDED.                ATC
*                                                                        ATC
*               ALERT STATUS BIT SHOWN.                                  ATC
*                                                                        ATC
*               STATUS ERRORS ON MASTER CLEAR.                           ATC
*                                                                        ATC
*               STATUS WORDS 1 TO 8.                                     ATC
*          EXP -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT.                 ATC
*          ACT -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT.                 ATC
*               STATUS WORDS 9 TO 16.                                    ATC
*          EXP -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT.                 ATC
*          ACT -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT.                 ATC
*                                                                        ATC
*               LOOP CNT=*DEC,ERR CNT=*DEC,EC=*OCT,FNC=*OCT.             ATC
*                                                                        ATC
*               FUNCTION TESTED =*OCT.                                   ATC
*                                                                        ATC
*               DDLT NUMBER - *OCT *OCT.                                 ATC
*                                                                        ATC
*         ATC00 END OF MODULE, *DEC ERRORS.                              ATC
*                                                                        ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         IF ABORT (ABT) IS TAKEN ON EITHER FUNCTIONS OR                 ATC
*         STATUS INSTRUCTIONS, REPEAT CONDITION FROM STEP 1.             ATC
*         IF SCOPING LOOP IS SET, REPEAT FROM STEP 1.                    ATC
*                                                                        ATC
/  EXERCISE MASTER CLEAR FUNCTIONS AND GENERAL STATUS.                   ATC
 1 FORMAT ATC00 RC-ON LC=*DEC,EC=*DEC.                                   ATC
 2 FORMAT       FUNCTION TESTED=*OCT                                     ATC
 3 FORMAT.ATC TEST ERROR DISPLAY.                                        ATC
 4 FORMAT.ATC00 MASTER CLEAR FUNCTIONS TEST.                             ATC
 5 FORMAT.      STATUS ERRORS ON MASTER CLEAR.                           ATC
 6 FORMAT.      STATUS WORDS 1 TO 8.                                     ATC
 7 FORMAT.      STATUS WORDS 9 TO 16.                                    ATC
10 FORMAT. EXP -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT                  ATC
11 FORMAT. ACT -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT                  ATC
12 FORMAT.      ALERT STATUS BIT SET                                     ATC000K
13 FORMAT ATC00 END OF MODULE, *DEC ERRORS.                              ATC
14 FORMAT       DDLT NUMBER - *OCT *OCT.                                 ATC
15 FORMAT ATC00-TAPE UNIT (*OCT) NOT CONNECTED                           ATC
16 FORMAT PARAM(P3)EXPT-STATUS *OCT,ACTUAL TAPE STATUS *OCT              ATC000K
17 FORMAT ATC00 SL-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB,CON) 414,514,614,714   *MASTER CLEAR FUNCTIONS.              ATC
20 MSG 4 TO DISPLAY,PRINT                                                ATC013K
31 RES,ABT 40                                                            ATC007K
   MSG 4 TO DISPLAY                                                      ATC013K
   OB(403)=SB(72)            *GET THE TAPE SELECTED.                     ATC
   OB(402)=OB(403)+20        *MASK IT                                    ATC
   OB(0)=OB(402)                                                         ATC008K
   FUNC OB(402),ABT 40       *CONNECT IT.                                ATC
   OB(401)=0100          *******DTLT ACTION NUMBER.                      ATC009K
   FUNC 12,ABT 40            *GET THE GENERAL STATUS.                    ATC
   OB(401)=0100      *******DTLT ACTION NUMBER.                          ATC008K
   STATUS 20 WORDS TO SB,ABT 40   *BUFFER THE STATUS.                    ATC
   B5=SB(12).AND.277           *GET PERTINENT STATUS BITS.               ATC
   IF(SB.AND.1000.EQ.0)GOTO 32    *GO TO IF CONNECTED.                   ATC
   B4=OB(402).AND.17B 
   MSG 15 (B4) TO LINE 4
   WC=WC+1            *INCREMENT THE ERR COUNT.                          ATC010K
   PICTURE                                                               ATC010K
   HALT                                                                  ATC
32 IF(P3.EQ.1)OB(432)=222      *100 IPS 7TRK STATWRD=222.                ATC
   IF(P3.EQ.2)OB(432)=226      *150 IPS 7TRK STATWRD=225.                ATC
   IF(P3.EQ.4)OB(432)=225      *200 IPS 7TRK STATWRD=226.                ATC
   IF(P3.EQ.10)OB(432)=42   *100 IPS 9TRK NRZI/CPI STWRD=42.             ATC
   IF(P3.EQ.20)OB(432)=46   *150 IPS 9TRK NRZI/CPI STWRD=46.             ATC
   IF(P3.EQ.40)OB(432)=45   *200 IPS 9TRK NRZI/CPI STWRD=45.             ATC
   IF(P3.EQ.100)OB(432)=52   *100 IPS 9TRK CPI/GCR STWRD=52.             ATC
   IF(P3.EQ.200)OB(432)=56   *150 IPS 9TRK CPI/GCR STWRD=56.             ATC
   IF(P3.EQ.400)OB(432)=55   *200 IPS 9TRK CPI/GCR STWRD=55.             ATC
33 IF(B5.EQ.OB(432))GOTO 35    *CORRECT PARAMETER ENTRY.                 ATC013K
   MSG 16(OB(432),SB(12))TO LINE 4                                       ATC
   GOTO 44                *DISPLAY THE MESSAGE                           ATC006K
35 B3=0                *FLAG INITIAL STATUS WAS OBTAINED                 ATC006K
   OB(432)=0      *CLEAR EXPECTED STATUS.                                ATC013K
   OB(0)=414                                                             ATC008K
   B1=0                   *TEN TIMES LOOP COUNTER.                       ATC
22 B2=0                   *CURRENT FUNCTION POINTER.                     ATC
   OB(0)=414                                                             ATC008K
23 RES,ABT 40                                                            ATC007K
24 OB(401)=1                 *ACTION NUMBER 1.                           ATC
   FUNC OB(B2), ABT 40       *SEND MASTER CLEAR FUNCTION.                ATC
   OB(401)=102         *ACTION NUMBER 2                                  ATC006K
   FUNC 12, ABT 40           *GENERAL STATUS FUNCTION.                   ATC
   OB(401)=103         *ACTION NUMBER 3                                  ATC006K
   STATUS 20 WORDS TO SB, ABT 40  *ACTUAL STATUS BUFFER.                 ATC
   IF(B3.NE.0) GOTO 26      *TEST INITIAL STATUS OBTAINED.               ATC
   B3=1                  *SET INITIAL STATUS OBTAINED FLAG.              ATC
   OB(420)=1000              *SHOW NOT TU CONNECTED STATUS.              ATC
   IF(P4.AND.1.NE.0)OB(432)=4000  *GCR CAPABILITY STATUS                 ATC010K
26 IF(SB.AND.4000.NE.0) ERROR 12/1 GOTO 43    *ERROR NO. 1.              ATC
   B7=20                                                                 ATC
   COMPARE SB TO OB(420) FOR B7, ABT 42      *COMPARE STAT.              ATC
27 BA=BA+1                   *INCREASE LOOP COUNTER.                     ATC
   IF(ES.AND.SL.NE.0)MSG 17(BA,WC)TO DISPLAY                             ATC
   IF(ES.AND.CS.EQ.CS)MSG 1(BA,WC)TO DISPLAY                             ATC
   IF(ES.AND.RC.NE.0)GOTO 31   *IF RC GOTO 31                            ATC000K
*        CONTINUE WITH NEXT FUNCTION.                                    ATC
   GOTO 23 WHILE (B2+1.LE.3)   *LOOP FOR ALL FUNCTIONS.                  ATC
*        REPEAT 10 TIMES.                                                ATC
   GOTO 22 WHILE(B1+1.LE.9)   *LOOP 10 TIMES                             ATC000K
34 IF(WC.NE.0)MSG 13 (WC) TO DAYFILE,PRINT                               ATC006K
   IF(ES.AND.RM.NE.0)GOTO 31      *REPEAT MODULE.                        ATC013K
   EXIT                                                                  ATC
*                                                                        ATC
*        DISPLAY ERRORS.                                                 ATC
40 OB(405)=3                       *ERROR TYPE NUMBER.                   ATC
   WC=WC+1                          *INCREASE ERROR COUNTER.             ATC
   IF(ES.AND.SL.NE.0) GOTO 27         *JUMP IF SCOPING LOOP.             ATC
   MSG 3 TO LINE B0                                                      ATC
   B0=B0+1                   *INCREASE DISPLAY LINE COUNTER.             ATC
   MSG EM TO LINE B0                    *POST ERROR MESSAGE.             ATC
41 B0=B0+1                   *INCREASE DISPLAY LINE COUNTER.             ATC
   MSG 2 (OB(B2)) TO LINE B0   *POST LAST MASTER CLR FNCT.               ATC
   B0=B0+1                     *INCREASE DISPLAY LINE COUNT.             ATC
   OB(400)=OB(405)           *ERROR TYPE TO DDLT NUMBER.                 ATC
   MSG 14 (OB(400),OB(401)) TO LINE B0                                   ATC
44 PICTURE                                                               ATC006K
   HALT                                                                  ATC
   BLANK                                                                 ATC000K
   B0=0                         *RESET DISPLAY LINE COUNTER.             ATC
   IF(ES.AND.RC.NE.0)GOTO 27                                             ATC006K
   IF(WC.GT.3)GOTO 34   *IF MORE THAN 3 ERRORS EXIT                      ATC000K
   GOTO 27                                                               ATC
42 ERROR 5/2                                   *ERROR NO. 2.             ATC
43 OB(405)=1                 *STATUS ERROR TYPE DDLT NUMBER.             ATC
   WC=WC+1     *INCREASE ERROR COUNTER                                   ATC000K
   IF(ES.AND.SL.NE.0) GOTO 27   *ENTER HERE IF ERROR NO.1.               ATC
   MSG 3 TO LINE B0                                                      ATC
   MSG EM TO LINE B0+1                                                   ATC010K
   MSG 6 TO LINE B0+2                                                    ATC010K
   MSG 10,10 WORDS FROM OB(420)TO LINE B0+3                              ATC010K
   MSG 11,10 WORDS FROM SB TO LINE B0+4                                  ATC010K
   MSG 7 TO LINE B0+5                                                    ATC010K
   MSG 10,10 WORDS FROM OB(430)TO LINE B0+6                              ATC010K
   MSG 11,10 WORDS FROM SB(10)TO LINE B0+7                               ATC010K
   B0=7                                                                  ATC010K
   GOTO 41                                                               ATC
*                                                                        ATC
   END 20                                                                ATC013K
COMPILE                                                                  ATC
   MODULE ATC01,6000,(44,54,55),LOCK                                     ATC003K
*** ATC- MODULE ATC01.                                                   ATC
*                                                                        ATC
**  ATC01 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      01  *             ATC
*                                                          *             ATC
*        MODULE - ATC01.                                   *             ATC
*            SECTION 1,  SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 1, SUBSECTION 0,*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC01.                                                     ATC
*                                                                        ATC
*        TEST WRITE TO CODE CONVERSION MEMORIES.                         ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*        WRITE ALL ONES PATTERN TO EACH OF THE WRITE/READ                ATC
*        TRANSLATION MEMORIES 1, 2, 3, AND 4.                            ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       PACKED MODE, CODE CONVERSION                     ATC
*                       MEMORY 1. PARAMETER 2 SET TO                     ATC
*                       ZERO.                                            ATC
*                    3. SET LOOP 1 COUNTER TO 1.                         ATC
*         FNC 4      4. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT PARAMETERS.                               ATC
*                    5. SET RECORD LENGTH 253B.                          ATC
*                    6. SET PATTERN NUMBER 1.                            ATC
*                       SET UP ALL ONES PATTERN IN OUTPUT                ATC
*                       BUFFER.                                          ATC
*         FNC 57     7. LOAD READ CODE TRANSLATION MEMORY.               ATC
*           (DDLT-3)                                                     ATC
*         FNC 257    8. LOAD WRITE CODE TRANSLATION MEMORY.              ATC
*           (DDLT-4)                                                     ATC
*                    9. IF REPEAT CONDITION (RC) SET GO TO               ATC
*                       STEP 3.                                          ATC
*                   10. INCREASE FORMAT UNIT PARAMETER ONE               ATC
*                       BY 400B (SELECT NEXT MEMORY).                    ATC
*                       INCREASE LOOP 1 COUNTER BY 1.                    ATC
*                   11. REPEATS FROM 4 FOR ALL 4 MEMORIES.               ATC
*                   12. IF REPEAT MODULE (RM) SET GO TO                  ATC
*                       STEP 1.                                          ATC
*                   13. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*      MODULES CALLED -                                                  ATC000K
*                                                                        ATC000K
*          ATC985    ERROR PROCESSOR                                     ATC000K
/        SECTION 1, SUBSECTION 0.                                        ATC
 1 FORMAT ATC01 TST CODE CONVRSN MEMS                                    ATC
 5 FORMAT ATC01 STATUS ERROR.                                            ATC
 6 FORMAT ATC01 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC01 SL-ON LC=*DEC,EC=*DEC                                    ATC
10 FORMAT ATC01 RC-ON LC=*DEC,EC=*DEC                                    ATC
   DATA (OB(416),CON) 1      *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO PRINT                                                        ATC
20 MSG 1 TO DISPLAY                                                      ATC
*                                                                        ATC
   DUP 0 TO OB(401) FOR 15   *CLEAR DISPLAY/CONSTANTS IN OB.             ATC
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   OB(427)=0                           *CLEAR PAST STATUS.               ATC
14 RES,ABT 15                                                            ATC007K
15 GOSUB 60                                                              ATC007K
21 OB(402)=414                                                           ATC
   OB(406)=1                            *DDLT ACTION NUMBER.             ATC
   FUNC OB(402),ABT 40               *MASTER CLEAR FUNCTION.             ATC
   GOTO 40                 *CK FOR RC OR SL                              ATC
*                                                                        ATC
22 OB(420) = 1000            *EXP STAT 1  = 1000.                        ATC
   IF(P4.AND.1.EQ.0) GOTO 23   *CHECK IF GCR CAPABILITY.                 ATC
   OB(432) = 4000            *EXP STAT 11 = 4000.                        ATC
23 GOSUB 70    *OBTAIN GENERAL STATUS AND COMPARE.                       ATC
*        FORMAT UNIT FUNCTION TO BE ISSUED                               ATC
*                                                                        ATC
   OB(414)=1                 *LOOP 1 COUNTER TO DISPLAY.                 ATC
   OB(407)=4640              *CODE TRANSLATION = 1                       ATC
*                                                                        ATC
25 OB(402)=4                 *FUNCTION - FORMAT UNIT.                    ATC
   OB(410)=0                                                             ATC
   BA = 407                                                              ATC
   WC = 2                                                                ATC
   OB(406)=2                            *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION AND PARAMETERS.             ATC
*                                                                        ATC
   OB(427)=3000              *TRANSLATION SELECTED STATUS.               ATC
   GOSUB 70    *OBTAIN GENERAL STATUS AND COMPARE.                       ATC
   DUP 7777 TO OB FOR 253    *ALL ONES TO OB BUFFER.                     ATC
   OB(413)=1                 *PATTERN NUMBER 1.                          ATC
   OB(412)=253               *LENGTH TO DISPLAY.                         ATC
   WC = 253                  *WORD COUNT.                                ATC
   BA = 0                    *BUFFER START ADDRESS.                      ATC
*                                                                        ATC
*        *ISSUE LOAD CODE TRANSLATION READ MEMORY.                       ATC
26 OB(402)=57    *FUNCTION - LOAD READ TRANSLATION MEMORY.               ATC
   OB(406)=3                            *DDLT ACTION NUMBER.             ATC
   GOSUB 50                 *ISSUE FUNCTION AND OUTPUT DATA.             ATC
*                                                                        ATC
   GOSUB 70    *OBTAIN GENERAL STATUS AND COMPARE.                       ATC
*        *ISSUE LOAD CODE TRANSLATION WRITE MEMORY.                      ATC
30 OB(402)=257    *FUNCTION - LOAD WRITE TRANSLATION MEMORY.             ATC
   OB(406)=4                            *DDLT ACTION NUMBER.             ATC
   GOSUB 50                 *ISSUE FUNCTION AND OUTPUT DATA.             ATC
*                                                                        ATC
   GOSUB 70    *OBTAIN GENERAL STATUS AND COMPARE.                       ATC
*        IF REPEAT CONDITION IS SET GO BACK TO ISSUE SERIES              ATC
*        OF FUNCTIONS AGAIN. OTHERWISE INCREASE THE FORMAT               ATC
*        UNIT PARAMETER 1 FOR NEXT CODE TRANSLATION MEMORY.              ATC
*                                                                        ATC
   IF(ES.AND.RC.NE.0)GOTO 25   *JUMP IF REPEAT CONDITION.                ATC
   OB(414)=OB(414)+1        *INCREASE LOOP 1 COUNTER.                    ATC
   OB(407)= OB(407)+400     *INCREASE FORMAT UNIT PARAMETER.             ATC
   IF(OB(414).LE.4) GOTO 25  *NEXT CODE TRANSLATION CONST.               ATC
31 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 20    *IF RM GOTO 20                           ATC000K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
40 GOSUB 60                     *ERROR REPORT.                           ATC
   IF(ES.AND.RC.NE.0)GOTO 21   *REPEAT CONDITION.                        ATC
   GOTO 22                                                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ISSUE FUNCTIONS AND OUTPUT DESIGNATED PARAMETERS  *             ATC
*        OR DATA FOR THE FUNCTION.                         *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ISSUE FUNCTIONS AND OUTPUT PARAMETERS.                          ATC
50 FOUT OB(402), ABT 52           *FUNCTION AND OUTPUT.                  ATC
52 GOSUB 60                     *ERROR REPORT.                           ATC
   IF(ES.AND.RC.NE.0)GOTO 50    *IF REPEAT CONDITION.                    ATC
   RETURN                    *CONTINUE.                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EM.NE.0)CALL 985        *CALL ERROR PROCESSOR                      ATC010K
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 31   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 74                      *ERROR NUMBER 11.              ATC
72 GOTO 71 WHILE(B1+1.LE.17)  *CHECK 18 WORDS                            ATC000K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 74                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
74 GOSUB 60                    *ERROR REPORT.                            ATC
   IF(ES.AND.RC.NE.0)GOTO 70   *REPEAT CONDITION                         ATC
   RETURN                                                                ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC02,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC02.                                                  ATC
*                                                                        ATC
**  ATC02 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      02  *             ATC
*                                                          *             ATC
*        MODULE - ATC02.                                   *             ATC
*            SECTION 1,  SUBSECTION 1                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 1, SUBSECTION 1,*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC02.                                                     ATC
*                                                                        ATC
*        TEST WRITE AND READ OF CODE CONVERSION MEMORIES.                ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         LOAD THE READ AND WRITE CODE CONVERSION MEMORIES               ATC
*         WITH A GIVEN PATTERN THEN READ THE SAME MEMORIES               ATC
*         AND COMPARE EXPECTED RESULTS. RUNS SEVEN PATTERNS              ATC
*         IN THE FOUR READ/WRITE MEMORIES.                               ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET FORMAT PARAMETER ONE                         ATC
*                       - PACKED MODE                                    ATC
*                       - MEMORY NUMBER ONE.                             ATC
*                       PARAMETER TWO SET TO ZEROES.                     ATC
*                    3. SET LOOP 1 COUNTER TO 1.                         ATC
*         FNC 4      4. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT TWO PARAMETER WORDS.                      ATC
*                    5. SET RECORD LENGTH TO 253B.                       ATC
*                    6. SET PATTERN NUMBER ONE.                          ATC
*                       SET LOOP 2 COUNTER TO 1.                         ATC
*                    7. CALL FOR PATTERN GENERATOR.                      ATC
*         FNC 257    8. LOAD WRITE CODE TRANSLATION MEMORY.              ATC
*           (DDLT-3)                                                     ATC
*         FNC 247    9. COPY WRITE CODE TRANSLATION MEMORY.              ATC
*           (DDLT-4)                                                     ATC
*           (DDLT-5)10. DEACTIVATE THE CHANNEL FOLLOWING                 ATC
*                       INPUT.                                           ATC
*                   11. COMPARE EXPECTED DATA RESULTS.                   ATC
*         FNC 57    12. LOAD READ CODE TRANSLATION MEMORY.               ATC
*           (DDLT-6)                                                     ATC
*         FNC 47    13. COPY READ CODE TRANSLATION MEMORY.               ATC
*           (DDLT-7)                                                     ATC
*           (DDLT-10)14.DEACTIVATE THE CHANNEL FOLLOWING                 ATC
*                       INPUT.                                           ATC
*                   15. COMPARE EXPECTED DATA RESULTS.                   ATC
*                   16. INCREASE PATTERN NUMBER BY 1.                    ATC
*                       INCREASE LOOP 2 COUNTER BY 1.                    ATC
*                   17. LOOP FROM 4 FOR PATTERNS TWO THRU                ATC006K
*                       SEVEN.                                           ATC
*                   18. INCREASE FORMAT UNIT PARAMETER 1                 ATC
*                       BY 400B TO SELECT NEXT MEMORIES.                 ATC
*                       INCREASE LOOP 1 COUNTER BY 1.                    ATC
*                   19. REPEAT FROM 4 FOR THE FOUR READ,                 ATC
*                       WRITE MEMORYIES 1,2,3, AND 4.                    ATC
*                   20. IF REPEAT MODULE (RM) GOTO STEP 1.               ATC
*                   21. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
          DATA COMPARE ERRORS.                                           ATC000K
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE LOW LEVEL PRODUCT OVERLAY                       ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED -                                                      ATC000K
*                                                                        ATC000K
*          ATC981   PATTERN GENERATOR                                    ATC000K
*                   1= ALL ONES                                          ATC000K
*                   2= ALL ZEROS                                         ATC000K
*                   3= ALTERNATING ONES,5252                             ATC000K
*                   4= ALTERNATING ONES,FRAME TO FRAME                   ATC000K
*                   5= SLIDING ONES                                      ATC000K
*                   6= SLIDING ZEROS                                     ATC000K
*                   7= INCREMENTING                                      ATC000K
*                  10= ALTERNATING ZEROS AND ONES                        ATC000K
*                  11= ALL ZEROS WITH FRAME OF ALL ONES                  ATC000K
*                                                                        ATC000K
*          ATC984    DATA COMPARE                                        ATC000K
*          ATC985    ERROR PROCESSOR                                     ATC000K
*                                                                        ATC000K
*        SECTION 1, SUBSECTION 1.                                        ATC
 1 FORMAT ATC02 TST CODE CONVRSN MEMS.                                   ATC
 4 FORMAT ATC02 DATA ERROR.                                              ATC
 5 FORMAT ATC02 STATUS ERROR.                                            ATC
 6 FORMAT ATC02 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC02 SL-ON LC=*DEC,EC=*DEC                                    ATC
10 FORMAT ATC02 RC-ON LC=*DEC,EC=*DEC                                    ATC
   DATA (OB(416),CON) 2      *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
17 DUP 0 TO OB(404)FOR 12    *CLEAR DISPLAY/CONSTANTS IN OB              ATC000K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
*                                                                        ATC
20 OB(402)=414                                                           ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402), ABT 32          *MASTER CLEAR FUNCTION                  ATC
   GOTO 32                                                               ATC
*        SET UP EXPECTED STATUS BUFFER.                                  ATC
33 OB(427)=0                 *CLEAR EXPCTD STAT WORD 8.                  ATC
   OB(420) = 1000                           *EXPSTAT = 1000.             ATC
   IF(P4.AND.1.NE.0)OB(432)=4000  *CHECK IF GCR AVAILABILITY.            ATC
41 GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
   OB(414)=1                 *SET LOOP 1 COUNTER.                        ATC
   OB(407)= 4640             *CODE TRANSLATION = 1,PACKED.               ATC
*                                                                        ATC
21 OB(402)=4                 *FUNCTION - FORMAT UNIT.                    ATC
   BA = 407                                                              ATC
   WC = 2                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND PARAMETERS.             ATC
*                                                                        ATC
*        OBTAIN STATUS                                                   ATC
   OB(427)=3000              *TRANSLATION SELECTED STATUS.               ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
   OB(412)=253               *WORD COUNT LENGTH.                         ATC
   OB(413)=1                 *INITIAL PATTERN NUMBER.                    ATC
   OB(415)=1                 *SET INITIAL LOOP 2 COUNTER.                ATC
   WC = 253                  *WORD COUNT.                                ATC
   BA = 0                    *BUFFER START ADDRESS.                      ATC
*                                                                        ATC
22 CALL 981                  *CALL PATTERN GENERATOR.                    ATC
*        ISSUE LOAD CODE TRANSLATION WRITE MEMORY.                       ATC
   GOSUB 60                                                              ATC007K
23 OB(402)=257    *FUNCTION - LOAD WRITE TRANSLATION MEMORY.             ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                 *ISSUE FUNCTION AND OUTPUT DATA.             ATC
*                                                                        ATC
*        TAKE DETAILED STATUS                                            ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
24 OB(402)=247    *FUNCTION - COPY WRITE TRANSLATION MEMORY.             ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION AND INPUT DATA.             ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
   GOSUB 50                         *COMPARE DATA BUFFERS.               ATC
*        *ISSUE LOAD CODE TRANSLATION READ MEMORY.                       ATC
25 OB(402)=57     *FUNCTION - LOAD READ TRANSLATION MEMORY.              ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                 *ISSUE FUNCTION AND OUTPUT DATA.             ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
26 OB(402)=47      *FUNCTION - COPY READ TRANSLATION MEMORY.             ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION AND INPUT DATA.             ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
   GOSUB 50                           *COMPARE DATA BUFFERS.             ATC
*                                                                        ATC
   IF(OB(413).GE.7) GOTO 27  *PATTERN NOS. 1 TO 7 ONLY.                  ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   OB(415)=OB(415)+1         *INCREASE LOOP 2 COUNTER.                   ATC
   GOTO 22                   *CONTINUE WITH NEXT PATTERN.                ATC
*                                                                        ATC
*        LOOP 1 - WITH NEXT FORMAT UNIT INCREMENT.                       ATC
*                                                                        ATC
27 IF(OB(414).GE.4)GOTO 31   *IF LOOP1 GE 4 EXIT                         ATC000K
   OB(407)=OB(407)+400    *INCREASE FORMAT UNIT PARAMETER.               ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
30 GOTO 21                   CONTINUE WITH NEXT FORMAT UNIT.             ATC
31 IF(OB(477).NE.0)MSG 6(OB(477))TO DAYFILE,PRINT                        ATC
   IF(ES.AND.RM.NE.0)GOTO 17    *REPEAT MODULE.                          ATC000K
   EXIT                      *EXIT MODULE.                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR REPORT                                      *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*                                                                        ATC
32 GOSUB 60                     *ERROR REPORT.                           ATC
   IF(ES.AND.RC.NE.0)GOTO 20                                             ATC
   GOTO 33                                                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        SUBROUTINES.                                      *             ATC
*                                                          *             ATC
* **********************************************************             ATC
40 FOUT OB(402),ABT 42                                                   ATC
42 GOSUB 60                     *ERROR REPORT.                           ATC
   IF(ES.AND.RC.NE.0)GOTO 40                                             ATC
   RETURN                                                                ATC
*                                                                        ATC
44 OB(406)=OB(406)-1         *RESET LAST ACTION NUMBER.                  ATC
45 FIN OB(402),ABT 46                                                    ATC
   OB(406)=OB(406)+1       *INCREASE FOR NEXT ACTION NUMBER.             ATC
46 GOSUB 60                     *ERROR REPORT.                           ATC
   IF(ES.AND.RC.NE.0)GOTO 44                                             ATC
   RETURN                                                                ATC
*                                                                        ATC
50 B3=OB.AND.7400.RS.10      *UPPER 4 BITS TO LOWER.                     ATC
   OB(252)=OB(252).AND.7760+B3   *FORM LAST TRANS MEM WD.                ATC
   B3=253                    *NUMBER OF WORDS TO COMPARE.                ATC
   CALL 984                  *COMPARE DATA ROUTINE.                      ATC
   IF(B4.NE.0)ERROR 4/17 GOSUB 60   *B4 ZERO IF NO ERRORS.               ATC
51 GOSUB 60                                                              ATC008K
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EM.NE.0)CALL 985     *CALL ERROR PROCESSOR.                        ATC008K
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.10)GOTO 31  *IF ERR COUNT GT 10 EXIT MODULE             ATC010K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76   *IF STAT COMPARE - JUMP                ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 16 WORDS                           ATC
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                    *ERROR REPORT.                            ATC
   IF(ES.AND.RC.NE.0)GOTO 70                                             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC03,6000,(44,54,55),LOCK                                     ATC003K
*** ATC- MODULE ATC03.                                                   ATC
*                                                                        ATC
**  ATC03 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      03  *             ATC
*        MODULE - ATC03.                                   *             ATC
*           SECTION 1,  SUBSECTION 2                       *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 1, SUBSECTION   *             ATC
*        2.                                                *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC03.                                                     ATC
*                                                                        ATC
*        TEST WRITE TO CODE CONVERSION MEMORIES.                         ATC
*        PATTERNS USED - 1 THRU 7                                        ATC000K
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         WRITE A DIFFERENT PATTERN IN EACH OF THE READ/WRITE            ATC
*         CODE CONVERSION MEMORIES. COPY EACH OF THE MEMORIES            ATC
*         AND COMPARE EXPECTED RESULTS.                                  ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET FORMAT PARAMETER ONE TO                      ATC
*                       - PACKED MODE.                                   ATC
*                       - CODE CONVERSION MEMORY 1.                      ATC
*                    3. SET FORMAT PARAMETER TWO TO ZEROES.              ATC
*                    4. SET RECORD LENGTH TO 253B.                       ATC
*                    5. SET PATTERN NUMBER TO ONE.                       ATC
*                   5A.CALL PATTERN GENERATOR                            ATC000K
*                    6. SET COUNTER ONE TO 4.                            ATC
*         FNC 4      7. ISSUE FORMAT UNIT FUNCTION.                      ATC
*           (DDLT-2)                                                     ATC
*         FNC 57     8. LOAD READ CODE CONVERSION MEMORY.                ATC
*           (DDLT-3)                                                     ATC
*                    9. INCREASE PATTERN NUMBER.                         ATC
*         FNC 257   10. LOAD WRITE CODE CONVERSION MEMORY.               ATC
*           (DDLT-4)                                                     ATC
*                   11. INCREASE PATTERN NUMBER.                         ATC
*                   12. INCREASE FORMAT UNIT ONE PARAMETER               ATC
*                       TO NEXT MEMORY SELECTION.                        ATC
*                   13. REPEAT FROM 7 FOR ALL CODE                       ATC
*                       CONVERSION MEMORIES.                             ATC
*                   14. SET FORMAT PARAMETER ONE FOR                     ATC
*                       - PACKED MODE.                                   ATC
*                       - CODE CONVERSION MEMORY 1.                      ATC
*                   15. SET PARAMETER TWO TO ZEROES.                     ATC
*                   16. SET PATTERN NUMBER TO 1.                         ATC
*         FNC 4     17. ISSUE FORMAT UNIT FUNCTION.                      ATC
*           (DDLT-5)                                                     ATC
*         FNC 47    18. COPY READ CODE CONVERSION MEMORY.                ATC
*           (DDLT-6)                                                     ATC
*           (DDLT-7)19. DEACTIVATE THE CHANNEL FOLLOWING                 ATC
*                       INPUT.                                           ATC
*                   20. COMPARE EXPECTED DATA RESULTS.                   ATC
*                   21. INCREASE PATTERN NUMBER BY ONE.                  ATC
*         FNC 247   22. COPY WRITE CODE CONVERSION MEMORY.               ATC
*           (DDLT-10)                                                    ATC
*           (DDLT-11)23.DEACTIVATE THE CHANNEL FOLLOWING                 ATC
*                       INPUT.                                           ATC
*                   24. COMPARE EXPECTED DATA RESULTS.                   ATC
*                   25. INCREASE PATTERN NUMBER BY ONE.                  ATC
*                   26. INCREASE FORMAT UNIT PARAMETER                   ATC
*                       ONE FOR NEXT CONVERSION MEMORY.                  ATC
*                   27. REPEAT FROM 17 FOR ALL CONVERSION                ATC
*                       MEMORIES.                                        ATC
*                   28. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*         DATA ERRORS - ACTUAL AND EXPECTED                              ATC000K
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*         IF P1 NON-ZERO,DATA ERRORS WILL BE DISPLAYED.                  ATC006K
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED -                                                      ATC000K
*                                                                        ATC000K
*          ATC981   PATTERN GENERATOR                                    ATC000K
*                   1= ALL ONES                                          ATC000K
*                   2= ALL ZEROS                                         ATC000K
*                   3= ALTERNATING ONES,5252                             ATC000K
*                   4= ALTERNATING ONES,FRAME TO FRAME                   ATC000K
*                   5= SLIDING ONES                                      ATC000K
*                   6= SLIDING ZEROS                                     ATC000K
*                   7= INCREMENTING                                      ATC000K
*                  10= ALTERNATING ZEROS AND ONES                        ATC000K
*                  11= ALL ZEROS WITH FRAME OF ALL ONES                  ATC000K
*                                                                        ATC000K
*          ATC984    DATA COMPARE                                        ATC000K
*          ATC985    ERROR PROCESSOR                                     ATC000K
*                                                                        ATC000K
/        SECTION 1, SUBSECTION 2.                                        ATC
 1 FORMAT ATC03 TST CODE CONVRSN MEMS.                                   ATC
 4 FORMAT ATC03 DATA ERROR.                                              ATC
 5 FORMAT ATC03 STATUS ERROR.                                            ATC
 7 FORMAT ATC03 SL-ON LC=*DEC,EC=*DEC                                    ATC
10 FORMAT ATC03 RC-ON LC=*DEC,EC=*DEC                                    ATC
   DATA (OB(416),CON) 3      *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 IF(ES.AND.RM.NE.0)GOTO 15                                             ATC007K
   MSG 1 TO DISPLAY,PRINT                                                ATC007K
15 GOSUB 60                                                              ATC007K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
*                                                                        ATC
20 OB(402)=414                                                           ATC
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402), ABT 31      *MASTER CLEAR FUNCTION                      ATC
   GOTO 31                   *TEST FOR RC OR SL                          ATC
*                                                                        ATC
32 DUP 0 TO OB(404) FOR 12   *CLEAR EXPECTED STATUS BUFFER.              ATC
   OB(427)=0                 *CLEAR EXPCT STAT WD 8.                     ATC
   OB(420) = 1000            *EXPSTAT = 1000                             ATC
   IF(P4.AND.1.EQ.0) GOTO 33  *CHECK IF GCR CAPABILITY.                  ATC
   OB(432)=4000                                                          ATC
*                                                                        ATC
33 GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*        FORMAT UNIT FUNCTION TO BE ISSUED                               ATC
*                                                                        ATC
   DUP 7777 TO OB FOR 253    *START WITH ALL ONES PATTERN.               ATC
   OB(413)=1                 *INITIAL PATTERN NUMBER.                    ATC
   OB(407)=4640       *PACKED MODE, CODE TRANSLATION = 1.                ATC
*                                                                        ATC
21 OB(402)=4                 *FUNCTION - FORMAT UNIT.                    ATC
   BA = 407                                                              ATC
   WC = 2                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                 *ISSUE FUNCTION AND PARAMETERS.              ATC
*                                                                        ATC
   OB(427)=3000             *TRANSLATION SELECTED STATUS.                ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*        *ISSUE LOAD CODE TRANSLATION READ MEMORY.                       ATC
*                                                                        ATC
   WC = 253      *WORD COUNT.                                            ATC
   BA = 0        *BUFFER START ADDRESS.                                  ATC
22 OB(402)=57    *FUNCTION - LOAD READ TRANSLATION MEMORY.               ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40       *ISSUE FUNCTION AND OUTPUT DATA.                       ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
   OB(412)=253               *WORD COUNT.                                ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   CALL 981                  *CALL NEXT PATTERN.                         ATC
   GOSUB 60                                                              ATC007K
*        *ISSUE LOAD CODE TRANSLATION WRITE MEMORY.                      ATC
*                                                                        ATC
23 OB(402)=257   *FUNCTION - LOAD WRITE TRANSLATION MEMORY.              ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40      *ISSUE FUNCTION AND OUTPUT DATA.                        ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
*        INCREASE FORMAT PARAMETER 1 IF REPEAT CONDITION                 ATC
*        IS NOT SET.                                                     ATC
   IF(ES.AND.RC.NE.0)GOTO 21                                             ATC
*                                                                        ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   CALL 981                  *CALL NEXT PATTERN.                         ATC
   GOSUB 60                                                              ATC007K
*                                                                        ATC
24 OB(407)=OB(407)+400      *INCREASE FORMAT UNIT PARAMETER.             ATC
   IF(OB(407).LT.6640) GOTO 21  *IF FUP LT 6640 GOTO 21                  ATC000K
34 EXIT TO 030         *CONTINUE NEXT SUB MODULE.                        ATC008K
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR MESSAGES                                    *             ATC
*                                                          *             ATC
* **********************************************************             ATC
31 GOSUB 60                     *ERROR REPORT.                           ATC
   IF(ES.AND.RC.NE.0)GOTO 20                                             ATC
   GOTO 32                                                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        SUBROUTINES.                                      *             ATC
*                                                          *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ISSUE FUNCTION AND OUTPUT PARAMETERS OR DATA.                   ATC
40 FOUT OB(402), ABT 42                                                  ATC
   GOTO 42                      *TEST FOR RC OR SL                       ATC
   RETURN                                                                ATC
42 GOSUB 60                     *ERROR REPORT.                           ATC
   IF(ES.AND.RC.NE.0)GOTO 40                                             ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (980) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 34   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
   RETURN                                                                ATC
72 GOTO 71 WHILE(B1+1.LE.17)   *CHECK 18 WORDS.                          ATC002K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                    *ERROR REPORT.                            ATC
   IF(ES.AND.RC.NE.0)GOTO 70                                             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                      030 *             ATC
*        MODULE ATC030.                                    *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC030,6000,(44,54,55),LOCK                                    ATC003K
 4 FORMAT ATC03 DATA ERROR.                                              ATC
 5 FORMAT ATC03 STATUS ERROR.                                            ATC
 6 FORMAT ATC03 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC03 SL-ON LC=*DEC,EC=*DEC                                    ATC
10 FORMAT ATC03 RC-ON LC=*DEC,EC=*DEC                                    ATC
*                                                                        ATC
77 RES,ABT 11                                                            ATC010K
   GOTO 17                                                               ATC010K
11 GOSUB 60         *CALL ERROR PROCESSOR                                ATC010K
17 OB(404)=1             *SUB MODULE 1 FOR DTLT                          ATC002K
   DUP 7777 TO OB FOR 253    *ALL ONES PATTERN TO OB.                    ATC
   OB(413)=1                 *INITIAL PATTERN NUMBER.                    ATC
   OB(407)=4640               CODE TRANSLATION = 1                       ATC
25 OB(402)=4                 *FUNCTION - FORMAT UNIT.                    ATC
   BA = 407                                                              ATC
   WC = 2                                                                ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40          *ISSUE FUNCTION AND PARAMETERS.                     ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*        *ISSUE COPY CODE TRANSLATION READ MEMORY.                       ATC
*                                                                        ATC
   WC = 253      *WORD COUNT.                                            ATC
   BA = 0        *BUFFER START ADDRESS.                                  ATC
26 OB(402)=47    *FUNCTION - COPY READ TRANSLATION MEMORY.               ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45      *ISSUE FUNCTION AND INPUT DATA.                         ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOTO 31       *TEST FOR RC OR SL.                                     ATC
*                                                                        ATC
33 GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
   GOSUB 50                            *COMPARE DATA BUFFER.             ATC
*                                                                        ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   CALL 981                  *CALL NEXT PATTERN.                         ATC
   GOSUB 60                                                              ATC007K
*                                                                        ATC
*        *ISSUE COPY CODE TRANSLATION WRITE MEMORY.                      ATC
27 OB(402)=247   *FUNCTION - COPY WRITE TRANSLATION MEMORY.              ATC
   OB(406)=10           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45      *ISSUE FUNCTION AND INPUT DATA.                         ATC
   OB(406)=11           *******         *DDLT ACTION NUMBER.             ATC
   GOTO 32              *TEST FOR RC OR SL.                              ATC
*                                                                        ATC
34 GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
   GOSUB 50                           *COMPARE DATA BUFFERS.             ATC
*                                                                        ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   CALL 981                  *CALL NEXT PATTERN.                         ATC
   GOSUB 60                                                              ATC007K
*                                                                        ATC
30 OB(407)= OB(407)+400     *INCREASE FORMAT UNIT PARAMETER.             ATC
   IF(OB(407).LT.6640)GOTO 25   *IF FUP LT 6640.                         ATC002K
35 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   EXIT                      *EXIT MODULE.                               ATC
31 GOSUB 60                  *ERROR REPORT.                              ATC
   GOTO 33                                                               ATC
32 GOSUB 60                  *ERROR REPORT.                              ATC
   GOTO 34                                                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        SUBROUTINES.                                      *             ATC
*                                                          *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ISSUE FUNCTION AND OUTPUT PARAMETERS OR DATA.                   ATC
40 FOUT OB(402), ABT 42                                                  ATC
   GOTO 42                  *TEST FOR RC OR SL.                          ATC
   RETURN                                                                ATC
42 GOSUB 60                      *REPORT ERROR.                          ATC
   IF(ES.AND.RC.NE.0)GOTO 40                                             ATC
   RETURN                                                                ATC
/        ISSUE FUNCTION AND INPUT DATA.                                  ATC
45 FIN OB(402), ABT 46                                                   ATC
   GOTO 46                *TEST FOR RC OR SL.                            ATC
   RETURN                                                                ATC
46 GOSUB 60                      *REPORT ERROR.                          ATC
   IF(ES.AND.RC.NE.0)GOTO 45                                             ATC
   RETURN                                                                ATC
/        COMPARE DATA SUBROUTINE.                                        ATC
50 B3=OB.AND.7400.RS.10      *UPPER 4 BITS TO LOWER.                     ATC
   OB(252)=OB(252).AND.7760+B3  *FORM LAST TRANSL MEM WD.                ATC
   B3=253                    *NUMBER OF WORDS TO COMPARE.                ATC
   CALL 984                  *COMPARE DATA ROUTINE.                      ATC
   IF(B4.EQ.0) GOTO 51       *B4 ZERO IF NO ERRORS.                      ATC
   ERROR 4/120 GOSUB 60      *SHOW ERROR STOP DISPLAY.                   ATC
51 GOSUB 60                                                              ATC008K
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.10)GOTO 35  *IF ERR COUNT GT 10 EXIT MODULE             ATC010K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
   RETURN                                                                ATC
72 GOTO 71 WHILE(B1+1.LE.17)   *CHECK 18 WORDS                           ATC000K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                    *ERROR REPORT.                            ATC
   IF(ES.AND.RC.NE.0)GOTO 70                                             ATC
   RETURN                                                                ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC04,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC04.                                                  ATC
*                                                                        ATC
**  ATC04 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      04  *             ATC
*        MODULE - ATC04.                                   *             ATC
*            SECTION 1,  SUBSECTION 3                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 1, SUBSECTION   *             ATC
*        3 TESTS THE CODE CONVERSION MEMORIES (CCM) FOR    *             ATC
*        ADDRESSING AND DATA RETENTION CAPABILITY.         *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC04.                                                     ATC
*                                                                        ATC
*        TEST WRITE AND READ OF CODE CONVERSION MEMORIES.                ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         LOAD ALL ONES PATTERN IN THE WRITE CONVERSION                  ATC
*         MEMORY AND COPY THE SAME MEMORY. LOAD THE READ                 ATC
*         CONVERSION MEMORY AND COPY THE SAME MEMORY.                    ATC
*         REPEAT SEQUENCE WITH ALL FOUR CONVERSION MEMORIES.             ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET PARAMETER 1, 4640                            ATC
*                    3. SET PARAMETER 2, 0000.                           ATC
*                    4. SET RECORD LENGTH, 253.                          ATC
*                    5. SET COUNTER 1 TO 0.                              ATC
*         FNC 4      6. ISSUE FORMAT UNIT FUNCTION.                      ATC
*           (DDLT-2)    AND OUTPUT TWO PARAMETERS.                       ATC
*                    7. SET PATTERN NUMBER 1.                            ATC
*                    8. SET COUNTER 2 TO 0.                              ATC
*         FNC 257    9. LOAD WRITE TRANSLATION MEMORY.                   ATC
*           (DDLT-3)                                                     ATC
*         FNC 247   10. COPY WRITE TRANSLATION MEMORY.                   ATC
*           (DDLT-4)                                                     ATC
*           (DDLT-5)11. DEACTIVATE THE CHANNEL AFTER INPUT.              ATC
*                   12. COMPARE EXPECTED DATA RESULTS.                   ATC
*         FNC 57    13. LOAD READ TRANSLATION MEMORY.                    ATC
*           (DDLT-6)                                                     ATC
*         FNC 257   14. COPY READ TRANSLATION MEMORY.                    ATC
*           (DDLT-7)15. DEACTIVATE THE CHANNEL AFTER INPUT.              ATC
*                   16. COMPARE EXPECTED DATA RESULTS.                   ATC
*                   17. INCREASE PATTERN NUMBER.                         ATC
*                   18. LOOP FROM 9 FOR ALL PATTERNS.                    ATC
*                   19. INCREASE PARAMETER 1 BY 400.                     ATC
*                   20. LOOP FROM 6 FOR ALL CODE CONVERSION              ATC
*                       MEMORIES.                                        ATC
*                   21. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES DATA,EXPTD AND ACTUAL STATUS AFTER EACH               ATC001K
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         STATUS OR DATA COMPARE ERRS AFTER A FUNCTION OR                ATC001K
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC984  DATA COMPARE                                           ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC001K
*        SECTION 1, SUBSECTION 3.                                        ATC
 1 FORMAT ATC04 TST CODE CONVRSN MEMS.                                   ATC
 4 FORMAT ATC04 DATA ERROR.                                              ATC
 5 FORMAT ATC04 STATUS ERROR.                                            ATC
 6 FORMAT ATC04 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC04 SL-ON LC=*DEC,EC=*DEC                                    ATC
10 FORMAT ATC04 RC-ON LC=*DEC,EC=*DEC                                    ATC
   DATA (OB(416),CON) 4      *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
17 DUP 0 TO OB(402)FOR 14                                                ATC000K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
*                                                                        ATC
20 OB(402)= 414                                                          ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402), ABT 37      *MASTER CLEAR FUNCTION                      ATC
   GOTO 37                                                               ATC
*        SET UP EXPECTED STATUS BUFFER.                                  ATC
36 OB(420) = 1000            *EXPSTAT = 1000                             ATC
   OB(427)=0                 *CLEAR EXPCT STAT WD 8.                     ATC
   IF(P4.AND.1.NE.0)OB(432)=4000  *CHECK IF GCR CAPABILITY.              ATC
*                                                                        ATC
30 GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
   OB(413)=1      *PATTERN TYPE                                          ATC011K
   DUP 7777 TO OB FOR 253           *ALL ONES TO OB.                     ATC
*                                                                        ATC
   OB(407)=4640               CODE TRANSLATION = 1                       ATC
*                                                                        ATC
21 OB(402)=4                 *FUNCTION - FORMAT UNIT.                    ATC
   BA = 407                                                              ATC
   WC = 2                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40          *ISSUE FUNCTION AND PARAMETERS.                     ATC
*                                                                        ATC
   OB(427)=3000              *TRANSLATION SELECTED STATUS.               ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
*        *ISSUE LOAD CODE TRANSLATION WRITE MEMORY.                      ATC
   WC = 253      *WORD COUNT.                                            ATC
   OB(412)=253    *PATTERN LENGTH                                        ATC011K
   BA = 0        *BUFFER START ADDRESS.                                  ATC
22 OB(402)=257   *FUNCTION - LOAD WRITE TRANSLATION MEMORY.              ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                *ISSUE FUNCTION AND OUTPUT DATA.              ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
23 OB(402)=247   *FUNCTION - COPY WRITE TRANSLATION MEMORY.              ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                 *ISSUE FUNCTION AND INPUT DATA.              ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
27 GOSUB 60                                                              ATC
26 GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
   GOSUB 50                  *COMPARE DATA BUFFERS                       ATC
*                                                                        ATC
*         *ISSUE LOAD CODE TRANSLATION READ MEMORY.                      ATC
24 OB(402)=57    *FUNCTION - LOAD READ TRANSLATION MEMORY.               ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                 *ISSUE FUNCTION AND OUTPUT DATA.             ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
25 OB(402)=47    *FUNCTION - COPY READ TRANSLATION MEMORY.               ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                 *ISSUE FUNCTION AND INPUT DATA.              ATC
   OB(406)=10           *******         *DDLT ACTION NUMBER.             ATC
41 GOSUB 60                                                              ATC
43 GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
   GOSUB 50                  *COMPARE DATA BUFFERS                       ATC
   IF(ES.AND.RC.NE.0) GOTO 21     *JUMP TO REPEAT CONDITION.             ATC
   OB(407)=OB(407)+400      *INCREASE FORMAT UNIT PARAMETER.             ATC
   IF(OB(407).LT.6640)GOTO 21   *IF FUP LT 6640.                         ATC002K
35 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 17   *REPEAT MODULE                            ATC000K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
37 GOSUB 60                  *ERROR REPORT.                              ATC
   IF(ES.AND.RC.NE.0) GOTO 20                                            ATC
   GOTO 36                                                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        SUBROUTINES.                                      *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ISSUE FUNCTION AND OUTPUT PARAMETERS OR DATA.                   ATC
40 FOUT OB(402),ABT 42                                                   ATC
42 GOSUB 60                      *REPORT ERROR.                          ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
*        ISSUE FUNCTION AND INPUT DATA.                                  ATC
45 FIN OB(402),ABT 46                                                    ATC
46 GOSUB 60                      *REPORT ERROR.                          ATC
   IF(ES.AND.RC.NE.0) GOTO 45    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
*        COMPARE DATA SUBROUTINE.                                        ATC
50 B3=OB.AND.7400.RS.10      *UPPER 4 BITS TO LOWER.                     ATC
   OB(252)=OB(252).AND.7760+B3  *FORM LAST TRANS MEM WD.                 ATC
   B3=253                    *NUMBER OF WORDS TO COMPARE.                ATC
   CALL 984                  *COMPARE DATA ROUTINE.                      ATC
   IF(B4.NE.0)ERROR 4/130 GOSUB 60  *B4 ZERO IF NO ERRORS.               ATC
51 GOSUB 60                                                              ATC008K
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EM.NE.0)CALL 985       *CALL ERR PROCESSOR.                        ATC008K
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.10)GOTO 35  *IF ERR COUNT GT 10 EXIT MODULE             ATC010K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE(B1+1.LE.17)   *CHECK 18 WORDS                           ATC002K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC05,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC05.                                                  ATC
*                                                                        ATC
**  ATC05 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      05  *             ATC
*        MODULE - ATC05.                                   *             ATC
*           SECTION 2,  SUBSECTION 0                       *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 2, SUBSECTION   *             ATC
*        0.                                                *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC05.                                                     ATC
*                                                                        ATC
*        ALL CODE CONVERSION MEMORIES ARE WRITTEN BEFORE                 ATC
*        THEY ARE READ AND VERIFIED.                                     ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET RECORD LENGTH TO 253B.                       ATC
*                    3. SET FORMAT PARAMETER 2 TO 0000.                  ATC
*                    4. SET PATTERN NUMBER FOR ALL ONES.                 ATC
*                    5. LOOP 1 COUNTER TO 1.                             ATC
*                    6. CALL FOR PATTERN GENERATOR.                      ATC
*                       SET FORMAT UNIT PARAMETER 1 TO,                  ATC
*                       PACKED MODE, CONVERSION MEMORY 1.                ATC
*                    7. SET LOOP 2 COUNTER TO 1.                         ATC
*         FNC 4      8. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT PARAMETERS.                               ATC
*         FNC 57     9. LOAD READ TRANSLATION MEMORY.                    ATC
*           (DDLT-3)                                                     ATC
*         FNC 257   10. LOAD WRITE TRANSLATION MEMORY.                   ATC
*           (DDLT-4)                                                     ATC
*                   11. INCREASE PARAMETER 1 BY 400,                     ATC
*                       SELECTS NEXT MEMORY.                             ATC
*                       INCREASE LOOP 2 COUNTER BY 1.                    ATC
*                   12. REPEAT FROM 8 FOR ALL CODE                       ATC
*                       CONVERSION MEMORIES.                             ATC
*                   13. SET FORMAT UNIT PARAMETER 1 TO                   ATC
*                       PACKED MODE, CONVERSION MEMORY 1.                ATC
*                   14. SET LOOP 2 COUNTER TO 1.                         ATC
*         FNC 47    15. COPY READ TRANSLATION MEMORY.                    ATC
*           (DDLT-5)                                                     ATC
*           (DDLT-6)16. DEACTIVATE THE CHANNEL FOLLOWING                 ATC
*                       INPUT.                                           ATC
*                   17. COMPARE EXPECTED DATA PATTERN.                   ATC
*         FNC 247   18. COPY WRITE TRANSLATION MEMORY.                   ATC
*           (DDLT-7)                                                     ATC
*           (DDLT-10)19.DEACTIVATE THE CHANNEL FOLLOWING                 ATC
*                       INPUT.                                           ATC
*                   20. COMPARE EXPECTED DATA PATTERN.                   ATC
*                   21. INCREASE FORMAT UNIT PARAMETER 1                 ATC
*                       BY 400.                                          ATC
*                       INCREASE LOOP 2 COUNTER BY 1.                    ATC
*                   22. REPEAT FROM 15 FOR ALL CODE                      ATC
*                       CONVERSION MEMORIES.                             ATC
*                   23. INCREASE THE PATTERN NUMBER.                     ATC
*                   24. REPEAT FROM 6 FOR SEVEN PATTERNS.                ATC
*                   25. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES DATA,EXPTD AND ACTUAL STATUS AFTER EACH               ATC001K
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         STATUS OR DATA COMPARE ERRS AFTER A FUNCTION OR                ATC001K
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC984  DATA COMPARE                                           ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC001K
*        SECTION 2, SUBSECTION 0.                                        ATC
 1 FORMAT ATC05 TST CODE CONVRSN MEMS.                                   ATC
 4 FORMAT ATC05 DATA ERROR.                                              ATC
 5 FORMAT ATC05 STATUS ERROR.                                            ATC
 6 FORMAT ATC05 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC05 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC05 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 5     *CURRENT MODULE NUMBER.                      ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
26 OB(403)=77      *INDICATE NO UNIT USED.                               ATC000K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
17 OB(402)=414                                                           ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
36 FUNC OB(402),ABT 37                                                   ATC
37 GOSUB 60                                                              ATC002K
   IF(ES.AND.RC.NE.0)GOTO 17  *RPEAT CONDITION.                          ATC
*                                                                        ATC
20 OB(420) = 1000            *EXPSTAT = 1000                             ATC
   OB(427)=0                 *ASSURE EXPCT STAT 8 CLEAR.                 ATC
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY.                      ATC
*                                                                        ATC
31 OB(414)=1                 *LOOP 1 COUNTER.                            ATC
   OB(412)=253               *PATTERN WORD COUNT.                        ATC
   OB(413)=1                 *PATTERN NUMBER.                            ATC
35 CALL 981                  *CALL PATTERN GENERATOR.                    ATC
   GOSUB 60                                                              ATC007K
   OB(415)=1                 *LOOP 2 COUNTER.                            ATC
   OB(427)=1000              *EXPCTD STAT WD 8.                          ATC
   OB(407)=4240              *CODE TRANSLATION = 1                       ATC
21 OB(402)=4                *FUNCTION - FORMAT UNIT.                     ATC
   BA = 407                                                              ATC
   WC = 2                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40      *ISSUE FUNCTION AND OUTPUT PARAMETERS.                  ATC
   IF (OB(415).NE.1)OB(427)=3000   *REPLACE INITIAL STAT 8.              ATC
34 GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
*        *ISSUE LOAD CODE TRANSLATION READ MEMORY.                       ATC
   WC = 253      *WORD COUNT.                                            ATC
   BA = 0        *BUFFER START ADDRESS.                                  ATC
22 OB(402)=57    *FUNCTION - LOAD READ TRANSLATION MEMORY.               ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40      *ISSUE FUNCTION AND OUTPUT DATA.                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
*        *ISSUE LOAD CODE TRANSLATION WRITE MEMORY.                      ATC
23 OB(402)=257   *FUNCTION - LOAD WRITE TRANSLATION MEMORY.              ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40      *ISSUE FUNCTION AND OUTPUT DATA.                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
   OB(415)=OB(415)+1        *INCREASE LOOP 2 COUNTER                     ATC
   OB(407)= OB(407)+400     *INCREASE FORMAT UNIT PARAMETER.             ATC
   IF(OB(407).LT.6640)GOTO 21   *IF FUP LT 6640.                         ATC002K
   OB(415)=1                 *RESET LOOP 2 COUNTER.                      ATC
   OB(407)=4240              *CODE TRANSLATION = 1                       ATC
*                                                                        ATC
*        *ISSUE COPY CODE TRANSLATION READ MEMORY.                       ATC
24 OB(402)=47    *FUNCTION - COPY READ TRANSLATION MEMORY.               ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45      *ISSUE FUNCTION  AND INPUT DATA.                        ATC
*                                                                        ATC
   OB(427)=3000                                                          ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
   GOSUB 50                            *COMPARE DATA BUFFER.             ATC
*                                                                        ATC
*        *ISSUE COPY CODE TRANSLATION WRITE MEMORY.                      ATC
25 OB(402)=247   *FUNCTION - COPY WRITE TRANSLATION MEMORY.              ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45      *ISSUE FUNCTION AND READ DATA.                          ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
   GOSUB 50                           *COMPARE DATA BUFFERS.             ATC
*                                                                        ATC
   OB(415)=OB(415)+1         *INCREASE LOOP 2 COUNTER.                   ATC
   OB(407) = OB(407)+400    *INCREASE FORMAT UNIT PARAMETER.             ATC
   IF(OB(407).LT.6640)GOTO 24   *IF FUP LT 6640.                         ATC002K
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   IF(OB(413).LE.7) GOTO 35   *LOOP FOR NEXT PATTERN.                    ATC
55 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 26   *REPEAT MODULE                            ATC000K
   EXIT                      *EXIT MODULE.                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        SUBROUTINES.                                      *             ATC
*                                                          *             ATC
* **********************************************************             ATC
40 FOUT OB(402),ABT 42                                                   ATC
42 GOSUB 60                      *REPORT ERROR.                          ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
44 OB(406)=OB(406)-1              *RESET LAST ACTION NUMBER.             ATC
45 FIN OB(402),ABT 46                                                    ATC
   OB(406)=OB(406)+1       *INCREASE FOR NEXT ACTION NUMBER.             ATC
46 GOSUB 60                      *REPORT ERROR.                          ATC
   IF(ES.AND.RC.NE.0) GOTO 44    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
*                                                                        ATC
50 B3=OB.AND.7400.RS.10      *UPPER 4 BITS TO LOWER.                     ATC
   OB(252)=OB(252).AND.7760+B3  *FORM LAST TRANSL MEM WD.                ATC
   B3=253                    *NUMBER OF WORDS TO COMPARE.                ATC
   CALL 984                  *COMPARE DATA ROUTINE.                      ATC
   IF(B4.NE.0)ERROR 4/17 GOSUB 60   *B4 ZERO IF NO ERRORS.               ATC
51 GOSUB 60                                                              ATC008K
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EM.NE.0)CALL 985       *CALL ERR PROCESSOR.                        ATC008K
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.10)GOTO 55  *IF ERR COUNT GT 10 EXIT MODULE             ATC010K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76   *IF STAT COMPARE-JUMP                  ATC002K
72 GOTO 71 WHILE (B1+1.LE.17)   *CHECK 18 WORDS                          ATC002K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC06,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC06.                                                  ATC
*                                                                        ATC
**  ATC06 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      06  *             ATC
*        MODULE - ATC06.                                   *             ATC
*            SECTION 2,  SUBSECTION 1                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 2, SUBSECTION   *             ATC
*        1.                                                *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC06.                                                     ATC
*                                                                        ATC
*        FORCE A FLAG BIT ERROR STATUS. WRITE A MEMORY WITH              ATC
*        DATA IN THE 2(7) OR 2(6) BIT POSITION. THEN READ                ATC
*        MEMORY WITH 6 BIT MODE SELECTED.                                ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       PACKED A/D MODE AND MEMORY NUMBER                ATC
*                       1.                                               ATC
*                    3. GENERATE ALL ONES PATTERN.                       ATC
*         FNC 4      4. ISSUE FORMAT UNIT FUNCTON AND                    ATC
*           (DDLT-2)    OUTPUT TWO PARAMETER WORDS.                      ATC
*                    5. SET PATTERN NUMBER 1.                            ATC
*                    6. SET RECORD LENGTH TO 253B.                       ATC
*         FNC 257    7. LOAD WRITE TRANSLATION MEMORY.                   ATC
*           (DDLT-3)                                                     ATC
*         FNC 57     8. LOAD READ TRANSLATION MEMORY.                    ATC
*           (DDLT-4)                                                     ATC
*                    9. SET FORMAT UNIT PARAMETER 1 TO                   ATC
*                       6-BIT A/D MODE, CODE MEMORY 1.                   ATC
*         FNC 4     10. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-5)    OUTPUT PARAMETERS.                               ATC
*         FNC 247   11. COPY WRITE TRANSLATION MEMORY.                   ATC
*           (DDLT-6)                                                     ATC
*           (DDLT-7)12. DEACTIVATE CHANNEL FOLLOWING INPUT.              ATC
*                   13. COMPARE EXPECTED DATA PATTERN.                   ATC
*         FNC 47    14. COPY READ TRANSLATION MEMORY.                    ATC
*           (DDLT-10)                                                    ATC
*           (DDLT-11)15.DEACTIVATE CHANNEL FOLLOWING INPUT.              ATC
*                   16. VERIFY FLAG BIT ERROR STATUS.                    ATC
*                   17. COMPARE EXPECTED DATA PATTERN.                   ATC
*                   18. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES DATA,EXPTD AND ACTUAL STATUS AFTER EACH               ATC001K
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         STATUS OR DATA COMPARE ERRS AFTER A FUNCTION OR                ATC001K
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC984  DATA COMPARE                                           ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
*        SECTION 2, SUBSECTION 1.                                        ATC
 1 FORMAT ATC06 TST CODE CONVRSN MEMS.                                   ATC
 4 FORMAT ATC06 DATA ERROR.                                              ATC
 5 FORMAT ATC06 STATUS ERROR.                                            ATC
 6 FORMAT ATC06 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC06 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC06 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 6      *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
31 DUP 0 TO OB(402) FOR 14                                               ATC000K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
*                                                                        ATC
17 OB(402)=414                                                           ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402),ABT 30       *MASTER CLEAR FUNCTION                      ATC
   GOTO 30                                                               ATC
*        SET UP EXPECTED STATUS BUFFER.                                  ATC
20 OB(420) = 1000            *EXPSTAT = 1000                             ATC
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY.                      ATC
27 GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
   OB(413)=1                                                             ATC
   OB(412)=253    *PATTERN LENGTH                                        ATC011K
   DUP 7777 TO OB FOR 253    *ALL ONES PATTERN TO OB.                    ATC
   OB(407)=4640     *PACKED MODE, CODE TRANSLATION = 1.                  ATC
21 OB(402)=4        *FUNCTION - FORMAT UNIT.                             ATC
   BA = 407                                                              ATC
   WC = 2                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40         *ISSUE FUNCTION AND OUTPUT PARAMETERS.               ATC
*                                                                        ATC
   OB(427)=3000                                                          ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
   WC = 253                  *WORD COUNT.                                ATC
   BA = 0                    *BUFFER START ADDRESS.                      ATC
*        *ISSUE LOAD CODE TRANSLATION WRITE MEMORY.                      ATC
22 OB(402)=257   *FUNCTION - LOAD WRITE TRANSLATION MEMORY.              ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40      *ISSUE FUNCTION AND OUTPUT DATA.                        ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
*        *ISSUE LOAD CODE TRANSLATION READ MEMORY.                       ATC
23 OB(402)=57    *FUNCTION - LOAD READ TRANSLATION MEMORY.               ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40      *ISSUE FUNCTION AND OUTPUT DATA.                        ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
   OB(407)=4600        *6-BIT MODE, CODE TRANSLATION = 1.                ATC
*                                                                        ATC
24 OB(402)=4                *FORMAT UNIT  FUNCTION.                      ATC
   BA = 407                                                              ATC
   WC = 2                                                                ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40      *ISSUE FUNCTION AND OUTPUT PARAMETERS.                  ATC
*                                                                        ATC
   OB(427)=2000                                                          ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
*                                                                        ATC
*        *ISSUE COPY CODE TRANSLATION WRITE MEMORY.                      ATC
   WC = 253                  *WORD COUNT.                                ATC
   BA = 0                    *BUFFER START ADDRESS.                      ATC
25 OB(402)=247   *FUNCTION - COPY WRITE TRANSLATION MEMORY.              ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45      *ISSUE FUNCTION AND INPUT DATA.                         ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
   GOSUB 50                           *COMPARE DATA BUFFERS.             ATC
*                                                                        ATC
*        *ISSUE COPY CODE TRANSLATION READ MEMORY.                       ATC
26 OB(402)=47    *FUNCTION - COPY READ TRANSLATION MEMORY.               ATC
   OB(406)=10           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45      *ISSUE FUNCTION AND INPUT DATA.                         ATC
*        FORCES FLAG BIT ERROR STATUS CONDITIONS.                        ATC
   OB(420) = 5000            *ALERT STATUS.                              ATC
   OB(424) = 4               *FLAG BIT ERROR STATUS.                     ATC
*                                                                        ATC
   GOSUB 70            *OBTAIN GENERAL STATUS AND COMPARE.               ATC
   GOSUB 50                            *COMPARE DATA BUFFER.             ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 31   *REPEAT MODULE                            ATC000K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 GOSUB 60           *ERROR REPORT.                                     ATC
   IF(ES.AND.RC.NE.0) GOTO 17    *REPEAT CONDITION.                      ATC
   GOTO 20                                                               ATC
* *********************************************************              ATC
*                                                         *              ATC
*        SUBROUTINES.                                     *              ATC
*                                                         *              ATC
* *********************************************************              ATC
*        ISSUE FUNCTION AND OUTPUT PARAMETERS OR DATA.                   ATC
40 FOUT OB(402), ABT 42                                                  ATC
42 GOSUB 60                      *REPORT ERROR.                          ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
*        ISSUE FUNCTION AND INPUT DATA.                                  ATC
44 OB(406)=OB(406)-1         *RESET LAST ACTION NUMBER.                  ATC
45 FIN OB(402), ABT 46                                                   ATC
   OB(406)=OB(406)+1         *SET NEXT ACTION NUMBER.                    ATC
46 GOSUB 60                      *REPORT ERROR.                          ATC
   IF(ES.AND.RC.NE.0) GOTO 44    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
*        DATA COMPARE SUBROUTINE.                                        ATC
50 B3=OB.AND.7400.RS.10      *UPPER 4 BITS TO LOWER.                     ATC
   OB(252)=OB(252).AND.7760+B3  *FORM LAST TRANSL MEM WD.                ATC
   B3=253                    *NUMBER OF WORDS TO COMPARE.                ATC
   CALL 984                  *COMPARE DATA ROUTINE.                      ATC
   IF(B4.NE.0)ERROR 4/210 GOSUB 60  *B4 ZERO IF NO ERRORS.               ATC
51 GOSUB 60                                                              ATC007K
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.10)GOTO 33  *IF ERR COUNT GT 10 EXIT MODULE             ATC010K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS FLAG.                   ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76  *IF STAT COMPARE - JUMP                 ATC
72 GOTO 71 WHILE (B1+1.LE.17)   *CHECK 18 WORDS                          ATC002K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC07,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC07.                                                  ATC
*                                                                        ATC
**  ATC07 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      07  *             ATC
*        MODULE - ATC07.                                   *             ATC
*            SECTION 2,  SUBSECTION 2                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 2, SUBSECTION   *             ATC
*        2.                                                *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC07.                                                     ATC
*                                                                        ATC
*        VERIFY OPERATION OF ASSEMBLY/DISASSEMBLY LOGIC.                 ATC
*         WRITE THE READ TRANSLATION MEMORY IN PACKED MODE               ATC001K
*         AND READ IT IN 6-BIT MODE AND VERIFY THE FIRST 253             ATC001K
*        WORDS OF INPUT DATA CONFORM TO EXPECTED DATA                    ATC
*        PATTERN.                                                        ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET LOOP 1 COUNTER TO 1.                         ATC
*                       SET RECORD LENGTH TO 253B.                       ATC
*                    3. GENERATE ALL ONES PATTERN.                       ATC
*                       SET PATTERN NUMBER TO 1.                         ATC
*                    4. SET PARAMETER 1 FOR PACKED A/D                   ATC
*                       MODE AND CODE MEMORY 1.                          ATC
*         FNC 4      5. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT THE PARAMETER WORDS.                      ATC
*         FNC 57     6. LOAD READ TRANSLATION MEMORY.                    ATC
*           (DDLT-3)                                                     ATC
*                    7. SET LOOP 1 COUNTER TO 2.                         ATC
*                    8. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       6-BIT A/D MODE AND CODE MEMORY 1.                ATC
*         FNC 4      9. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-4)    OUTPUT TWO PARAMETER WORDS.                      ATC
*         FNC 47    10. COPY READ TRANSLATION MEMORY.                    ATC
*           (DDLT-5)                                                     ATC
*           (DDLT-6)11. DEACTIVATE CHANNEL FOLLOWING INPUT.              ATC
*                   12. CHECK STATUS, EXPECT ALERT.                      ATC
*                   13. COMPARE EXPECTED DATA PATTERN.                   ATC
*                   14. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES DATA,EXPTD AND ACTUAL STATUS AFTER EACH               ATC001K
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE LOW LEVEL PRODUCT OVERLAY                       ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         STATUS OR DATA COMPARE ERRS AFTER A FUNCTION OR                ATC001K
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC984  DATA COMPARE                                           ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
*        SECTION 2, SUBSECTION 2.                                        ATC
 1 FORMAT ATC07 TST CODE CONVRSN MEMS.                                   ATC
 4 FORMAT ATC07 DATA ERROR.                                              ATC
 5 FORMAT ATC07 STATUS ERROR.                                            ATC
 6 FORMAT ATC07 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC07 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC07 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 7      *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
32 DUP 0 TO OB(402)FOR 14                                                ATC000K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
17 OB(402)=414                                                           ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402), ABT 30      *MASTER CLEAR FUNCTION                      ATC
   GOTO 30                                                               ATC
*        SET UP EXPECTED STATUS BUFFER.                                  ATC
20 OB(420) = 1000            *EXPSTAT = 1000                             ATC
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY.                      ATC
26 GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   DUP 7777 TO OB FOR 253    *ALL ONES PATTERN TO OB.                    ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
   OB(412)=253               *LENGTH.                                    ATC
   OB(413)=1                 *PATTERN NUMBER.                            ATC
*        FORMAT UNIT FUNCTION TO BE ISSUED                               ATC
   OB(407)=4640  *PACKED MODE, CODE TRANSLATION = 1.                     ATC
21 OB(402)=4     *FUNCTION - FORMAT UNIT.                                ATC
   BA = 407                                                              ATC
   WC = 2                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40      *ISSUE FUNCTION AND OUTPUT PARAMETERS.    .             ATC
*                                                                        ATC
   OB(427)=3000                                                          ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*        *ISSUE LOAD CODE TRANSLATION READ MEMORY.                       ATC
22 OB(402)=57    *FUNCTION - LOAD READ TRANSLATION MEMORY.               ATC
   WC = 253                                                              ATC
   BA = 0                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40      *ISSUE FUNCTION AND OUTPUT DATA.                        ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   OB(414)=2                 *LOOP 1 COUNTER.                            ATC
   OB(407)=4600  *6-BIT MODE, CODE TRANSLATION = 1.                      ATC
23 OB(402)=4     *FUNCTION - FORMAT UNIT.                                ATC
   BA = 407                                                              ATC
   WC = 2                                                                ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40      *ISSUE FUNCTION AND OUTPUT PARAMETERS.                  ATC
*                                                                        ATC
   OB(427)=2000                                                          ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*        *ISSUE COPY CODE TRANSLATION READ MEMORY.                       ATC
24 OB(402)=47    *FUNCTION - COPY READ TRANSLATION MEMORY.               ATC
   WC = 253                                                              ATC
   BA = 0                                                                ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45      *ISSUE FUNCTION AND INPUT DATA.                         ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOTO 31                                                               ATC
25 OB(420)=5000  *ALERT STATUS EXPECTED.                                 ATC
   OB(424)=4                                                             ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   GOSUB 50                            *COMPARE DATA BUFFER.             ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND RM.NE.0)GOTO 32    *REPEAT MODULE                           ATC000K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 GOSUB 60             *ERROR REPORT.                                   ATC
   IF(ES.AND.RC.NE.0) GOTO 17      *REPEAT CONDITION.                    ATC
   GOTO 20                                                               ATC
31 GOSUB 60             *ERROR REPORT.                                   ATC
   GOTO 25                                                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        SUBROUTINES.                                      *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ISSUE FUNCTION AND OUTPUT PARAMETERS OR DATA.                   ATC
40 FOUT OB(402),ABT 42                                                   ATC
42 GOSUB 60                     *ERROR REPORT.                           ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
*        ISSUE FUNCTION AND INPUT DATA.                                  ATC
45 FIN OB(402),ABT 46                                                    ATC
46 GOSUB 60                     *ERROR REPORT.                           ATC
   IF(ES.AND.RC.NE.0) GOTO 45    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
*        DATA COMPARE SUBROUTINE.                                        ATC
50 B3=OB.AND.7400.RS.10      *UPPER 4 BITS TO LOWER.                     ATC
   OB(252)=OB(252).AND.7760+B3  *FORM LAST TRANSL MEM WD.                ATC
   B3=253                    *NUMBER OF WORDS TO COMPARE.                ATC
   CALL 984                  *COMPARE DATA ROUTINE.                      ATC
   IF(B4.NE.0)ERROR 4/220 GOSUB 60  *B4 ZERO IF NO ERRORS.               ATC
51 GOSUB 60                                                              ATC007K
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.10)GOTO 33  *IF ERR COUNT GT 10 EXIT MODULE             ATC010K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76   *IF STAT COMPARE - JUMP                ATC
72 GOTO 71 WHILE (B1+1.LE.17)   *CHECK 18 WORDS                          ATC002K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC08,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC08.                                                  ATC
*                                                                        ATC
**  ATC08 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                      08  *             ATC
*        MODULE - ATC08.                                   *             ATC
*            SECTION 3,  SUBSECTION 0.                     *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYTEM       *             ATC
*        CONTROLLER, SECTION 3, SUBSECTION 0.              *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC08.                                                     ATC
*                                                                        ATC
*        PERFORM LOOP WRITE TO READ TCU WITH ALL DATA                    ATC
*        PATTERNS WHILE HOLDING RECORD LENGTH CONSTANT. THE              ATC
*        LOOP WRITE TO READ PARAMETER WORD IS SET FOR 200                ATC
*        IPS, PHASE ENCODED.                                             ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       PACKED MODE.                                     ATC
*                       PARAMETER 2 IS SET TO 0000.                      ATC
*         FNC 4      3. ISSUE FORMAT UNIT FUNCTION.                      ATC
*           (DDLT-2)                                                     ATC
*                    4. SET LOOP 1 COUNTER TO 1.                         ATC
*                    5. SET RECORD LENGTH TO 8.                          ATC
*                    6. SET PATTERN NUMBER 1.                            ATC
*                    7. CALL PATTERN GENERATOR.                          ATC
*                    8. SET LOOP WTR TCU PARAMETER FOR                   ATC
*                       PHASE ENCODED, 200 IPS.                          ATC
*         FNC 75     9. ISSUE LOOP WTR TCU AND OUTPUT THE                ATC
*           (DDLT-3)    PARAMETER WORD.                                  ATC
*         FNC 50    10. ISSUE WRITE FUNCTION AND OUTPUT                  ATC
*           (DDLT-4)    DATA BLOCK.                                      ATC
*                   11. INCREASE LOOP 1 COUNTER BY 1.                    ATC
*                       INCREASE PATTERN NUMBER BY 1.                    ATC
*                   12. REPEAT FROM 7 FOR ALL PATTERN                    ATC
*                       NUMBERS.                                         ATC
*         FNC 75    13. ISSUE LOOP WTR TCU FUNCTION AGAIN.               ATC
*           (DDLT-5)                                                     ATC
*         FNC 51    14. ISSUE WRITE TAPE/FILE MARK.                      ATC
*           (DDLT-6)                                                     ATC
*                   15. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE LOW LEVEL PRODUCT OVERLAY                       ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
*        SECTION 3, SUBSECTION 0.                                        ATC
 1 FORMAT.ATC08 LWTR ALL PATS,LNGTH CNSTNT.                              ATC
 5 FORMAT ATC08 STATUS ERROR.                                            ATC
 6 FORMAT ATC08 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC08 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC08 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 8D     *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
17 OB(403)=77       *INDICATE NO UNIT USED                               ATC000K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
20 OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.NE.0)OB(432)=4000  *SHOW GCR CAPABILITY.                  ATC
30 GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   BA=407                                                                ATC
   WC=2                                                                  ATC
   OB(407)=240               *PACKED A/D MODE.                           ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=1000                                                          ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(413)=1                 *PATTERN NUMBER.                            ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
22 OB(412)=10                *LENGTH 8 WORDS.                            ATC
   CALL 981                  *PATTERN GENERATOR.                         ATC
   GOSUB 60                                                              ATC007K
*                                                                        ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(411)=754               *PE, 200 IPS.                               ATC
   OB(402)=75                *LOOP WRITE TO READ.                        ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND OUTPUT.                 ATC
*                                                                        ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).AND.4000+45                                           ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   WC=10                     *WORD COUNT OF 8.                           ATC
   BA=0                                                                  ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   B0=1                      *SET FOR BLOCK ID STAT COMPARE.             ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.4000                                              ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   B0=0                      *CLEAR FLAG, NO BLK ID STAT.                ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.10) GOTO 22   *LOOP FOR ALL PATTERNS.                   ATC
*                                                                        ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND OUPUT.                  ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).AND.4000+45                                           ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   OB(402)=51                *WRITE TAPE MARK FUNCTION.                  ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION.                            ATC
   OB(420)=1020                                                          ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.4000                                              ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
31 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 17    *REPEAT MODULE                           ATC000K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
40 FOUT OB(402), ABT 41      *ISSUE FUNCTION AND INPUT.                  ATC
41 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
42 FUNC OB(402), ABT 43      *ISSUE FUNCTIONS.                           ATC
43 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 42                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 31   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS CHECKING SUBROUTINE               *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B0.EQ.0)GOTO 74       * IF NO BLK ID STAT.                         ATC002K
   OB(421)=SB(1).AND.7770    *RETAIN BLOCK ID VALUES.                    ATC
   GOTO 75                                                               ATC
74 OB(421)=0                                                             ATC
75 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76   *IF STAT COMPARE - JUMP                ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC09,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC09.                                                  ATC
*                                                                        ATC
**  ATC09 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      09  *             ATC
*        MODULE - ATC09.                                   *             ATC
*          SECTION 3,  SUBSECTION 1.                       *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC09.                                                     ATC
*                                                                        ATC
*        PERFORMS LOOP WRITE TO READ TCU FOR ONE PATTERN                 ATC
*        WHILE RECORD LENGTH IS VARIED.                                  ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       PACKED MODE.                                     ATC
*                    3. SET PARAMETER 2 TO 0000.                         ATC
*         FNC 4      4. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT TWO PARAMETER WORDS.                      ATC
*                    5. GENERATE 400B WORDS OF ALL ONES                  ATC
*                       PATTERN.                                         ATC
*                       SET RECORD LENGTH TO 1.                          ATC
*                    6. SET PATTERN NUMBER 1.                            ATC
*                    7. SET LOOP 1 COUNTER TO 1.                         ATC
*         FNC 75     8. ISSUE LOOP WTR TCU FUNCTION                      ATC
*           (DDLT-3)    OUTPUT ONE PARAMETER WORD.                       ATC
*         FNC 50     9. ISSUE WRITE FUNCTION AND OUTPUT                  ATC
*           (DDLT-4)    DATA BLOCK.                                      ATC
*                   10. INCREASE LOOP 1 COUNTER BY 1.                    ATC
*                       INCREASE WORD LENGTH BY 1.                       ATC
*                   11. LOOP FROM 8 ABOVE FOR 400B RECORDS.              ATC
*         FNC 75    12. ISSUE LOOP WTR TCU FUNCTION AND                  ATC
*           (DDLT-5)    OUTPUT ITS PARAMETER WORD 3.                     ATC
*         FNC 51    13. ISSUE WRITE TAPE/FILE MARK FUNCTION.             ATC
*           (DDLT-6)                                                     ATC
*                   14. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
*        SECTION 3, SUBSECTION 1.                                        ATC
 1 FORMAT.ATC09 LWTR PATT. CONST INCRSG LNGTH.                           ATC
 5 FORMAT ATC09 STATUS ERROR.                                            ATC
 6 FORMAT ATC09 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC09 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC09 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 9D     *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
17 OB(403)=77       *INDICATE NO UNIT USED                               ATC000K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
20 OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   OB(432)=0                  *NOT GCR
   IF(P4.AND.1.NE.0)OB(432)=4000                                         ATC
*                                                                        ATC
21 GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   BA=407                                                                ATC
   WC=2                                                                  ATC
   OB(407)=240               *PACKED A/D MODE.                           ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   GOSUB 40                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=1000                                                          ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   DUP 7777 TO OB FOR 400    *ALL ONES PATTERN TO OB.                    ATC
*                                                                        ATC
   OB(412)=1                 *INITIAL WORD COUNT FOR WC                  ATC
   OB(414)=1                 *INITIAL LOOP 1 COUNT.                      ATC
22 WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(411)=754               *PE, 200 IPS.                               ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND OUTPUT.                 ATC
*                                                                        ATC
   OB(427)=1200                                                          ATC
   OB(432)=4045                                                          ATC
   IF(P4.AND.1.EQ.0)OB(432)=45  *NOT GCR
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   WC=OB(412)                                                            ATC
   BA=0                                                                  ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND OUTPUT.                 ATC
*                                                                        ATC
   OB(427)=1000                                                          ATC
   OB(432)=4000                                                          ATC
   IF(P4.AND.1.EQ.0)OB(432)=0   *NOT GCR
   B0=1                      *SET FLAG FOR STAT COMPARE.                 ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   B0=0                      *CLEAR FLAG.                                ATC
   OB(412)=OB(412)+1                                                     ATC
   OB(414)=OB(414)+1            *INCREASE WORD COUNTER.                  ATC
   IF(OB(414).LT.400) GOTO 22   *LOOP COUNTER.                           ATC
*         END OF LOOPING REACHED HERE.                                   ATC
*                                                                        ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND OUTPUT.                 ATC
*                                                                        ATC
   OB(427)=1200                                                          ATC
   OB(432)=4045                                                          ATC
   IF(P4.AND.1.EQ.0)OB(432)=45  *NOT GCR
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   OB(402)=51                *WRITE TAPE MARK FUNCTION.                  ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION.                            ATC
   OB(420)=1020                                                          ATC
   OB(427)=1000                                                          ATC
   OB(432)=4000                                                          ATC
   IF(P4.AND.1.EQ.0)OB(432)=0   *NOT GCR
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20      *CLEAR ALL PREVIOUS STATUS.              ATC
   IF(ES.AND.RM.NE.0)GOTO 17    *REPEAT MODULE                           ATC000K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
40 FOUT OB(402), ABT 41      *ISSUE FUNCTION AND OUTPUT.                 ATC
41 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
42 FUNC OB(402), ABT 43                                                  ATC
43 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 42                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B0.EQ.0)GOTO 74     *IF NOT STAT COMPARE                           ATC002K
   OB(421)=SB(1).AND.7770    *RETAIN BLOCK ID STATUS.                    ATC
   GOTO 75                                                               ATC
74 OB(421)=0                                                             ATC
75 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76  *IF STAT COMPARE - JUMP                 ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC10,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC10.                                                  ATC
*                                                                        ATC
**  ATC10 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      10  *             ATC
*        MODULE - ATC10.                                   *             ATC
*          SECTION 3,  SUBSECTION 2.                       *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC10.                                                     ATC
*                                                                        ATC
*        ATTEMPT EXECUTION OF SEVERAL GENERAL TYPE FUNCTIONS             ATC
*        AND ASSURE EXPECTED RESPONSES WITHOUT A CONNECTED               ATC
*        UNIT PRESENT.                                                   ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*         FNC 206    2. ISSUE LOW READ CLIP FUNCTION.                    ATC
*           (DDLT-2)                                                     ATC
*         FNC 6      3. ISSUE NORMAL READ CLIP FUNCTION.                 ATC
*           (DDLT-3)                                                     ATC
*         FNC 106    4. ISSUE HIGH READ CLIP FUNCTION.                   ATC
*           (DDLT-4)                                                     ATC
*         FNC 306    5. ISSUE HYPER READ CLIP FUNCTION.                  ATC
*           (DDLT-5)                                                     ATC
*         FNC 5      6. ISSUE SET OPPOSITE PARITY FUNCTION.              ATC
*           (DDLT-6)                                                     ATC
*         FNC 105    7. ISSUE SET OPPOSITE DENSITY FUNCTION.             ATC
*           (DDLT-7)                                                     ATC
*         FNC 11     8. ISSUE STOP MOTION FUNCTION.                      ATC
*           (DDLT-10)                                                    ATC
*         FNC 74     9. ISSUE TRANSFER CHECK CHARACTER                   ATC
*           (DDLT-11)   FUNCTION.                                        ATC
*         FNC 76    10. ISSUE SET EVEN PATH PARITY FUNCTION.             ATC
*           (DDLT-12)                                                    ATC
*         FNC 71    11. ISSUE TEST VELOCITY INDICATORS FUNCTION.         ATC
*           (DDLT-13)                                                    ATC
*                   12. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
/        SECTION 3, SUBSECTION 2.                                        ATC
 1 FORMAT.ATC10 FUNCTIONS EXECUTION.                                     ATC
 5 FORMAT ATC10 STATUS ERROR.                                            ATC
 6 FORMAT ATC10 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC10 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC10 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 10D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
*        START OF SECTION 3, SUBSECTION 2.                               ATC
17 OB(403)=77       *INDICATE NO UNIT USED.                              ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 11         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
11 GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=206               *SET LOW READ CLIP.                         ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   OB(430)=2                                                             ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=6                 *SET NORMAL READ CLIP.                      ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   OB(430)=0                                                             ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=106               *SET HIGH READ CLIP.                        ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   OB(430)=1                                                             ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=306               *SET HYPER READ CLIP.                       ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   OB(430)=3                                                             ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=5                 *SET OPPOSITE PARITY.                       ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=105               *SET OPPOSITE DENSITY.                      ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=11                *SET STOP MOTION.                           ATC
   OB(406)=10           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   OB(420)=5000              *ALERT STATUS.                              ATC
   OB(422)=0051              *TCU ERROR STATUS.                          ATC
   OB(430)=10                                                            ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=74                *SET TRANSFER CHECK CHARACTER.              ATC
   OB(406)=11           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   OB(422)=0                                                             ATC
   OB(430)=0                                                             ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=76                *SET EVEN WRITE PATH PARITY.                ATC
   OB(406)=12           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=71                *TEST VELOCITY DETECTORS.                   ATC
   OB(406)=13           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 45                  *ISSUE FUNCTION.                            ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 17     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
45 FUNC OB(402), ABT 46                                                  ATC
   GOTO 46                   *TEST FOR SL OR RC.                         ATC
   RETURN                                                                ATC
46 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 45                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73           *GENERAL STATUS SUBROUTINE.                 ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70          *REPEAT CONDITION.                ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC11,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC11.                                                  ATC
*                                                                        ATC
**  ATC11 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      11  *             ATC
*        MODULE - ATC11.                                   *             ATC
*          SECTION 3,  SUBSECTION 3.                       *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC11.                                                     ATC
*                                                                        ATC
*        TEST OF THE DETAILED STATUS FUNCTION.                           ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET LOOP 1 COUNTER TO 1.                         ATC
*         FNC 12     3. ISSUE GENERAL STATUS FUNCTION.                   ATC
*           (DDLT-2)                                                     ATC
*                    4. SAVE ALL GENERAL STATUS IN INPUT                 ATC
*                       BUFFER.                                          ATC
*         FNC 112    5. ISSUE DETAILED STATUS FUNCTION.                  ATC
*           (DDLT-3)                                                     ATC
*                    6. COMPARE 14 WORDS OF DETAILED STATUS              ATC
*                       TO THE CORRESPONDING GENERAL STATUS              ATC
*                       WORDS.                                           ATC
*                    7. INCREASE LOOP 1 COUNTER AND REPEAT               ATC
*                       FROM STEP 3 ABOVE 10 TIMES.                      ATC
*                   10. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
/        SECTION 3, SUBSECTION 3.                                        ATC
 1 FORMAT.ATC11 TST DETAILED STATUS.                                     ATC
 5 FORMAT ATC11 STATUS ERRORS.                                           ATC
 6 FORMAT ATC11 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC11 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC11 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 11D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 OB(403)=77        *INDICATE NO UNIT USED                              ATC006K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(414)=0   *CLEAR LOOP1 COUNTER                                      ATC000K
20 GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
*                                                                        ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
22 OB(402)=12                *GENERAL STATUS FUNCTION.                   ATC
   B0=20                                                                 ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND INPUT.                  ATC
   COPY SB TO IB FOR 20      *MOVE GEN STAT TO IB BUFFER.                ATC
*                                                                        ATC
   OB(402)=112               *DETAIL STATUS.                             ATC
   B0=15                     *13 WORDS OF STATUS.                        ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND INPUT.                  ATC
*                                                                        ATC
   B2=2                      *COMPARE STATUS WORDS.                      ATC
   B3=0                                                                  ATC
24 IF(IB(B2).NE.SB(B3))GOTO 25   *IF STATUS NE-ERROR                     ATC002K
   B3=B3+1                      *INCREASE COUNTERS.                      ATC
   B2=B2+1                                                               ATC
   IF(B2.LE.17) GOTO 24         *CHECK ALL STATUS.                       ATC
*                                                                        ATC
26 OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.12) GOTO 22        *LOOP 10 TIMES.                      ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 15                                             ATC006K
   EXIT                      *EXIT MODULE.                               ATC
25 OB(417)=7777        *STATUS TAKEN FLAG                                ATC
   ERROR 5/1 GOSUB 60                                                    ATC
27 GOTO 26                                                               ATC
*                                                                        ATC
40 FUNC OB(402), ABT 41                                                  ATC
   GOTO 41                   *TEST FOR RC OR SL                          ATC
   RETURN                                                                ATC
41 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
42 FUNC OB(402),ABT 43                                                   ATC
   STATUS B0 WORDS TO SB,ABT 43                                          ATC
   GOTO 43                   *TEST FOR RC OR SL.                         ATC
   RETURN                                                                ATC
43 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 42                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC12,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC12.                                                  ATC
*                                                                        ATC
**  ATC12 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      12  *             ATC
*        MODULE - ATC12.                                   *             ATC
*          SECTION 3,  SUBSECTION 4.                       *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC12.                                                     ATC
*                                                                        ATC
*        TEST OF THE UNIT STATUS FUNCTION.                               ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET LOOP 1 COUNTER TO 1.                         ATC
*         FNC 12     3. ISSUE GENERAL STATUS FUNCTION.                   ATC
*           (DDLT-2)                                                     ATC
*                    4. SAVE ALL GENERAL STATUS IN INPUT                 ATC
*                       BUFFER.                                          ATC
*         FNC 212    5. ISSUE UNIT STATUS FUNCTION.                      ATC
*           (DDLT-3)                                                     ATC
*                    6. COMPARE 6 WORDS OF UNIT STATUS                   ATC
*                       TO THE CORRESPONDING GENERAL STATUS              ATC
*                       WORDS.                                           ATC
*                    7. INCREASE LOOP 1 COUNTER BY 1 AND                 ATC
*                       REPEAT FROM STEP 3 ABOVE 10 TIMES.               ATC
*                    8. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
/        SECTION 3, SUBSECTION 4.                                        ATC
 1 FORMAT.ATC12 TEST OF UNIT STATUS.                                     ATC
 5 FORMAT ATC12 STATUS ERRORS.                                           ATC
 6 FORMAT ATC12 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC12 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC12 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 12D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 OB(403)=77           *INDICATE NO UNIT USED                           ATC007K
20 RES,ABT 17                                                            ATC007K
17 GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
*                                                                        ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
21 OB(402)=12                *GENERAL STATUS FUNCTION.                   ATC
   B0=20                     *NUMBER OF WORDS.                           ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND INPUT.                  ATC
   COPY SB TO IB FOR 20      *MOVE GEN STAT TO IB BUFFER.                ATC
*                                                                        ATC
22 OB(402)=212               *UNIT STATUS.                               ATC
   B0=6                      *NUMBER OF WORDS.                           ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND INPUT.                  ATC
*                                                                        ATC
   B2=12                     *COMPARE STATUS WORDS.                      ATC
   B3=0                                                                  ATC
23 IF(IB(B2).NE.SB(B3))GOTO 25   *IF STATUS NE-ERROR                     ATC002K
   B3=B3+1                                                               ATC
   GOTO 23 WHILE (B2+1.LE.17)   *INCREASE COUNTER.                       ATC
*                                                                        ATC
26 OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.12) GOTO 21    *LOOP 10 TIMES.                          ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 15    *REPEAT MODULE                           ATC007K
   EXIT                      *EXIT MODULE.                               ATC
25 OB(417)=7777              *CURRENT STATUS TAKEN FLAG.                 ATC
   ERROR 5/1 GOSUB 60                                                    ATC
   GOTO 26                                                               ATC
*                                                                        ATC
40 FUNC OB(402),ABT 41                                                   ATC
   GOTO 41                                                               ATC
   RETURN                                                                ATC
41 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
42 FUNC OB(402), ABT 43                                                  ATC
   GOTO 43                                                               ATC
   STATUS B0 WORDS TO SB,ABT 43                                          ATC
   GOTO 43                                                               ATC
   RETURN                                                                ATC
43 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 42                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC13,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC13.                                                  ATC
*                                                                        ATC
**  ATC13 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      13  *             ATC
*        MODULE - ATC13.                                   *             ATC
*          SECTION 3,  SUBSECTION 5.                       *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC13,ATC130.                                              ATC
*                                                                        ATC
*        TEST OPPOSITE PARITY SELECTIONS.                                ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET PATTERN NUMBER TO 2, ALL ZEROES.             ATC
*         FNC 5      3. ISSUE OPPOSITE PARITY FUNCTION.                  ATC
*           (DDLT-2)                                                     ATC
*                    4. SET LOOP WTR TCU PARAMETER FOR                   ATC
*                       7 TRACK, NRZI, 200 IPS.                          ATC
*         FNC 75     5. ISSUE LOOP WTR TCU FUNCTION AND                  ATC
*           (DDLT-3)    OUTPUT PARAMETER.                                ATC
*                    6. SET RECORD LENGTH TO 20.                         ATC
*         FNC 50     7. ISSUE WRITE FUNCTION AND OUTPUT                  ATC
*           (DDLT-4)    DATA BLOCK.                                      ATC
*         FNC 5      8. ISSUE OPPOSITE PARITY FUNCTION.                  ATC
*           (DDLT-5)                                                     ATC
*         FNC 75     9. ISSUE LOOP WTR TCU FUNCTION AND                  ATC
*           (DDLT-6)    OUTPUT PARAMETER.                                ATC
*         FNC 51    10. ISSUE WRITE TAPE MARK.                           ATC
*           (DDLT-7)                                                     ATC
*                   11. GO TO SUBMODULE ATC130.                          ATC
*                   12. SET SUBMODULE NUMBER TO 1 FOR DDLT.              ATC
*                   13. SET PARAMETER 2 FOR EVEN PARITY.                 ATC
*         FNC 4     14. ISSUE FORMAT UNIT FUNCTION.                      ATC
*           (DDLT-10)                                                    ATC
*         FNC 75    15. ISSUE LOOP WTR TCU FUNCTION AND                  ATC
*           (DDLT-11)   OUTPUT PARAMETER.                                ATC
*         FNC 50    16. ISSUE WRITE FUNCTION AND OUTPUT                  ATC
*           (DDLT-12)   DATA BLOCK.                                      ATC
*         FNC 5     17. ISSUE OPPOSITE PARITY FUNCTION.                  ATC
*           (DDLT-13)                                                    ATC
*         FNC 75    18. ISSUE LOOP WTR TCU FUNCTION AND                  ATC
*           (DDLT-14)   OUTPUT PARAMETER.                                ATC
*         FNC 250   19. ISSUE SHORT WRITE FUNCTION AND                   ATC
*           (DDLT-15)   OUTPUT DATA BLOCK.                               ATC
*                   20. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
/        SECTION 3, SUBSECTION 5.                                        ATC
 1 FORMAT.ATC13 TST OPPOSITE PRTY FUNC.                                  ATC
 5 FORMAT ATC13 STATUS ERROR.                                            ATC
 7 FORMAT ATC13 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC13 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 13D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 IF(ES.AND.RM.NE.0)GOTO 15                                             ATC007K
   MSG 1 TO DISPLAY,PRINT                                                ATC007K
*        TEST PARITY SELECTIONS.                                         ATC
15 OB(403)=77           *INDICATE NO UNIT USED                           ATC007K
   RES,ABT 17                                                            ATC007K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
17 GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 20         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
20 GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
   DUP 0 TO OB FOR 20        *ALL ZEROES PATTERN TO OB.                  ATC
*                                                                        ATC
   OB(402)=5                 *OPPOSITE PARITY FUNCTION.                  ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(411)=670               *200 IPS, 7 TRACK NRZI.                     ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=200                                                           ATC
   OB(432)=OB(432).XOR.225                                               ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   WC=24                                                                 ATC
   BA=0                                                                  ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE.FUNCTION AND OUTPUT.                 ATC
   B0=1                      *RETAIN CURRENT BLOCK ID STAT.              ATC
   OB(427)=0                                                             ATC
   OB(432)=OB(432).AND.7000                                              ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=5                 *OPPOSITE PARITY FUNCTION.                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  ISSUESFUNCTION.                             ATC
   OB(421)=0                                                             ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=200                                                           ATC
   OB(432)=OB(432).XOR.225                                               ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=51                *WRITE TAPE MARK FUNCTION.                  ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
   OB(420)=1020                                                          ATC
   B0=1                      *RETAIN CURRENT BLOCK ID STAT.              ATC
   OB(427)=0                                                             ATC
   OB(432)=OB(432).AND.7000                                              ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
33 EXIT TO 130             *EXIT TO THE SUB MODULE.                      ATC008K
*                                                                        ATC
40 FUNC OB(402),ABT 41                                                   ATC
41 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
42 FOUT OB(402),ABT 43                                                   ATC
43 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 42                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B0.EQ.0)GOTO 74     *IF NOT RETAIN BLOCK ID                        ATC002K
   OB(421)=SB(1).AND.7770    *RETAIN CURRENT BLOCK ID STAT.              ATC
   B0=0                      *CLEAR FLAG.                                ATC
74 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76   *IF STAT COMPARE - JUMP                ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      130 *             ATC
*        MODULE - ATC130                                   *             ATC
*          SECTION 3,  SUBSECTION 5 (CONTINUED)            *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC130,6000,(44,54,55),LOCK                                    ATC003K
*        SECTION 3, SUBSECTION 5.                                        ATC
 5 FORMAT ATC13 STATUS ERROR.                                            ATC
 6 FORMAT ATC13 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC13 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC13 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 13D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 RES,ABT 11                                                            ATC010K
   GOTO 12                                                               ATC010K
11 GOSUB 60         *CALL ERROR PROCESSOR                                ATC010K
12 OB(404)=1        *SUBMODULE NUMBER.                                   ATC010K
   OB(411)=670               *RESTORE PARAMETER WORD 3.                  ATC
   OB(410)=3000              *VERTICAL PARITY - EVEN.                    ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(414)=0                 *CLEAR LOOP 1 COUNTER.                      ATC
   OB(406)=10           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(420)=1000                                                          ATC
   OB(421)=2                                                             ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(406)=11           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=200                                                           ATC
   OB(432)=OB(432).XOR.225                                               ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(412)=24                *WORD COUNT TO DISPLAY.                     ATC
   WC=24                                                                 ATC
   BA=0                                                                  ATC
   OB(402)=50                *WRITE.                                     ATC
   OB(406)=12           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=0                                                             ATC
   OB(420)=5000                                                          ATC
   OB(422)=46                                                            ATC
   OB(432)=OB(432).AND.7000                                              ATC
   B0=1          *RETAIN CURRENT BLOCK ID STAT.                          ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(402)=5                 *OPPOSITE PARITY FUNCTION.                  ATC
   OB(406)=13           *******         *DDLT ACTION NUMBER.             ATC
                                                                         ATC
20 FUNC OB(402),ABT 21                                                   ATC
21 GOSUB 60                  *ISSUE FUNCTION.                            ATC
   IF(ES.AND.RC.NE.0)GOTO 20                                             ATC
   OB(420)=1000                                                          ATC
   OB(422)=0                                                             ATC
   OB(425)=0                                                             ATC
   OB(424)=0                                                             ATC
   OB(423)=0                                                             ATC
   OB(426)=0                                                             ATC
   B0=1          *RETAIN CURRENT BLOCK ID STAT.                          ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   BA=411                                                                ATC
   WC=1                                                                  ATC
   OB(414)=2                 *LOOP 1 COUNTER.                            ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   OB(406)=14           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=200                                                           ATC
   OB(432)=OB(432).XOR.225                                               ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   WC=24                                                                 ATC
   BA=0                                                                  ATC
   OB(402)=250               *SHORT WRITE FUNCTION.                      ATC
   OB(406)=15           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 42                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(420)=5000                                                          ATC
   OB(422)=46                                                            ATC
   OB(427)=0                                                             ATC
   OB(432)=OB(432).AND.7000                                              ATC
   B0=1          *RETAIN CURRENT BLOCK ID STAT.                          ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
*                                                                        ATC
42 FOUT OB(402),ABT 43                                                   ATC
43 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 42                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 63                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B0.EQ.0)GOTO 74     *IF NOT RETAIN BLOCK ID                        ATC002K
   OB(421)=SB(1).AND.7770+2                                              ATC
   OB(424)=OB(424).AND.7776                                              ATC
   OB(424)=SB(4).AND.1+OB(424)                                           ATC
   B0=0                                                                  ATC
74 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76    *IF STAT COMPARE - JUMP               ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC14,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC14.                                                  ATC
*                                                                        ATC
**  ATC14 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      14  *             ATC
*                                                          *             ATC
*        MODULE - ATC14.                                   *             ATC
*                                                          *             ATC
*        START SECTION 4, SUBSECTIONS 0 - 13.              *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC14,ATC140,ATC141,ATC142.                                ATC
*                                                                        ATC
*        TEST OF LOOP WRITE TO READ TCU FOR ALL PATTERNS.                ATC
*        EACH SUBSECTION USES A DIFFERENT LOOP WRITE TO                  ATC
*        READ TCU PARAMETER VALUE.                                       ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*                    1. CLEAR LOOP 1 COUNTER TO 0.                       ATC
*                       COUNTER IS USED AS A SUBSECTION                  ATC
*                       COUNTER.                                         ATC
*         FNC 414    2. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    3. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       PACKED MODE.                                     ATC
*                    4. SET PARAMETER 2 TO 0000.                         ATC
*         FNC 4      5. ISSUE FORMAT UNIT AND OUTPUT                     ATC
*           (DDLT-2)    TWO PARAMETER WORDS.                             ATC
*                    6. SET INITIAL WORD LENGTH TO 100B.                 ATC
*                    7. SET PATTERN NUMBER TO 1.                         ATC
*                    8. SET LOOP 2 COUNTER TO 1.                         ATC
*                    9. USING LOOP 1 COUNTER AS AN INDEX                 ATC
*                       GET CONSTANT FOR LWTR TCU PARAMETER              ATC
*                       WORD 3. THESE CONSTANTS ARE AS                   ATC
*                       FOLLOWS -                                        ATC
*                          LOOP CNT  PARAM 3     TYPE                    ATC
*                             0 ..... 350 ... GCR, 200 IPS.              ATC
*                             1 ..... 152 ... GCR, 150 IPS.              ATC
*                             2 ..... 153 ... GCR, 100 IPS.              ATC
*                             3 ..... 754 ... PE, 200 IPS.               ATC
*                             4 ..... 556 ... PE, 150 IPS.               ATC
*                             5 ..... 557 ... PE, 100 IPS.               ATC
*                             6 ..... 750 ... 9T NRZI, 200 IPS.          ATC
*                             7 ..... 552 ... 9T NRZI, 150 IPS.          ATC
*                             8 ..... 553 ... 9T NRZI, 100 IPS.          ATC
*                             9 ..... 670 ... 7T NRZI, 200 IPS.          ATC
*                            10 ..... 472 ... 7T NRZI, 150 IPS.          ATC
*                            11 ..... 473 ... 7T NRZI, 100 IPS.          ATC
*                                                                        ATC
*         FNC 75    10. ISSUE LWR TCU FUNCTION AND OUTPUT                ATC
*           (DDLT-3)    PARAMETER WORD.                                  ATC
*                   11. CALL PATTERN GENERATOR.                          ATC
*         FNC 50    12. ISSUE WRITE FUNCTION AND OUTPUT DATA             ATC
*           (DDLT-4)    BLOCK.                                           ATC
*                   13. INCREASE PATTERN NUMBER.                         ATC
*                       INCREASE LOOP 2 COUNTER.                         ATC
*                   14. REPEAT FROM 10 FOR ALL PATTERNS.                 ATC
*         FNC 75    15. ISSUE LWR TCU FUNCTION AND OUTPUT                ATC
*           (DDLT-5)    PARAMETER WORD.                                  ATC
*         FNC 51    16. ISSUE WRITE TAPE MARK/FILE MARK                  ATC
*           (DDLT-6)    FUNCTION.                                        ATC
*                   17. INCREASE LOOP 1 COUNTER FOR NEXT                 ATC
*                       SUBSECTION WHICH SELECTS NEXT LWR                ATC
*                       TCU PARAMETER CONSTANT.                          ATC
*                   18. REPEAT FROM 1 ABOVE FOR REMAINING                ATC
*                       SUBSECTIONS.                                     ATC
*                   19. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 4, SUBSECTION 0 THRU 13.                                ATC
   DATA (OB(416),CON) 14D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 350,152,153,754,556,557,750,552,553,               ATC
  ,670,472,473                                                           ATC
   DATA (OB(454),CON) 75,76,72,45,46,42,65,66,62,225,226,222             ATC
*                                                                        ATC
77 GOTO 20                                                               ATC
20 EXIT TO 140               *GO TO FIRST SUBMODULE.                     ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      140 *             ATC
*                                                          *             ATC
*        MODULE - ATC140.                                  *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC140,6000,(44,54,55),LOCK                                    ATC003K
 1 FORMAT ATC14 LOOP WRITE TO READ TCU TEST.                             ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
   OB(404)=1                  *FIRST SUBMODULE.                          ATC
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   OB(414)=0                 *INITIAL SUBSECTION NUMBER.                 ATC
   IF(P4.AND.1.NE.0)GOTO 30   *GCR
   OB(414)=3                  *NOT GCR
30 EXIT TO 141
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      141 *             ATC
*                                                          *             ATC
*        MODULE - ATC141.                                  *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC141,6000,(44,54,55),LOCK                                    ATC003K
 2 FORMAT ATC14 START SUBSEC *OCT.                                       ATC
 5 FORMAT ATC14 STATUS ERRORS.                                           ATC
 7 FORMAT ATC14 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC14 RC-ON LC=*DEC,EC=*DEC.                                   ATC
*                                                                        ATC
77 IF(ES.AND.RM.NE.0)GOTO 15                                             ATC007K
   MSG 2 (OB(414))TO DISPLAY,PRINT                                       ATC007K
15 GOSUB 60                                                              ATC007K
   OB(404)=2                 *SECOND SUBMODULE NUMBER.                   ATC
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 20         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
20 GOSUB 70         *OBTAIN GENERAL STATUS AND CHECK.                    ATC
*                                                                        ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(407)=240               *PACKED A/D MODE.                           ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=1000                                                          ATC
   GOSUB 70         *OBTAIN GENERAL STATUS AND CHECK.                    ATC
*                                                                        ATC
35 OB(412)=100               *INITIAL WORD LENGTH.                       ATC
   B3=OB(414)                *SUBSECTION AS INDEX NUMBER.                ATC
36 OB(413)=1                 *SET INITIAL PATTERN NUMBER.                ATC
   OB(415)=1                 *LOOP 2 COUNTER.                            ATC
*                                                                        ATC
37 OB(411)=OB(B3+440)        *PARAMETER 3 TERM.                          ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(421)=0                                                             ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).XOR.OB(B3+454)                                        ATC
   GOSUB 70         *OBTAIN GENERAL STATUS AND CHECK.                    ATC
*                                                                        ATC
   CALL 981                  *GO TO PATTERN GENERATOR.                   ATC
   GOSUB 60                                                              ATC007K
*                                                                        ATC
   BA=0                                                                  ATC
   WC=OB(412)                *CURRENT WORD COUNT USED.                   ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(432)=OB(432).AND.6000                                              ATC
   OB(427)=1000                                                          ATC
   B0=1             *RETAIN CURRENT BLOCK ID STAT.                       ATC
   GOSUB 70         *OBTAIN GENERAL STATUS AND CHECK.                    ATC
*                                                                        ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   OB(415)=OB(413)           *USE AS LOOP 2 COUNTER.                     ATC
   IF(OB(413).LE.10) GOTO 37   *LOOP ON PATTERNS.                        ATC
*                                                                        ATC
33 EXIT TO 142         *GOTO THIRD SUB MODULE                            ATC008K
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE  SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
************************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B0.EQ.0)GOTO 74     *IF NOT RETAIN BLOCK ID                        ATC002K
   OB(421)=SB(1).AND.7770    *USE CURRENT BLOCK ID STAT.                 ATC
   B0=0                      *CLEAR FLAG.                                ATC
74 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      142 *             ATC
*                                                          *             ATC
*        MODULE - ATC142.                                  *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC142,6000,(44,54,55),LOCK                                    ATC003K
 5 FORMAT ATC14 STATUS ERRORS.                                           ATC
 6 FORMAT ATC14 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC14 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC14 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC14 END OF SUBSEC *OCT.                                      ATC
                                                                         ATC
*                                                                        ATC
77 RES,ABT 12                                                            ATC010K
   GOTO 13                                                               ATC010K
12 GOSUB 60         *CALL ERROR PROCESSOR                                ATC010K
13 OB(404)=3        *SUBMODULE NUMBER.                                   ATC010K
   OB(402)=75              *LOOP WRITE TO READ TCU FUNCTION.             ATC
   WC=1                      *ONE WORD PARAMETER.                        ATC
   BA=411                   *BEGINNING ADDRESS OF PARAMETER.             ATC
   OB(406)=5                 *DDLT ACTION NUMBER.                        ATC
   GOSUB 52                *ISSUE FUNCTION AND OUTPUT PARAM.             ATC
   OB(421)=0                                                             ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).XOR.OB(B3+454)                                        ATC
   GOSUB 70                  *STATUS AND COMPARE.                        ATC
   OB(402)=51          *WRITE TAPE MARK/FILE MARK FUNCTION.              ATC
   OB(406)=6                 *DDLT ACTION NUMBER.                        ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=OB(420)+20        *FILE MARK STATUS.                          ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.4000                                              ATC
   B0=1                      *RETAIN BLOCK ID STATUS.                    ATC
   GOSUB 70                  *STATUS AND COMPARE.                        ATC
*                                                                        ATC
   MSG 11 (OB(414)) TO DISPLAY,PRINT  *END SUBSECTION MESSAGE.           ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPECTED STATUSES.               ATC
   IF(OB(414).LE.13) GOTO 20   *CONTINUE FOR NEXT SUBSECTION.            ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0) GOTO 22   *REPEAT MODULE.                          ATC
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
20 EXIT TO 141               *NEXT SUBSECTION.                           ATC
22 EXIT TO 140               *START FIRST SUBMODULE.                     ATC
                                                                         ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE  SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B0.EQ.0)GOTO 74     *IF NOT RETAIN BLOCK ID                        ATC002K
   OB(421)=SB(1).AND.7770    *USE CURRENT BLOCK ID STAT.                 ATC
   B0=0                      *CLEAR FLAG.                                ATC
74 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 16 WORDS                           ATC
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC15,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC15.                                                  ATC
*                                                                        ATC
**  ATC15 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                      15  *             ATC
*        MODULE - ATC15.                                   *             ATC
*                                                          *             ATC
*        SECTION 4,  SUBSECTION 14.                        *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC15.                                                     ATC
*                                                                        ATC
*        TEST LOOP WRITE TO READ TCU FOR SHORT AND LONG                  ATC
*        RECORDS, ALL SPEEDS AND DENSITIES IN BOTH 6-BIT                 ATC
*        AND PACKED MODES.                                               ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET PATTERN NUMBER TO 4, ALTERNATING             ATC
*                       ONES PATTERN.                                    ATC
*                    3. CALL PATTERN GENERATOR AND FILL 400B             ATC
*                       OUTPUT (OB) BUFFER.                              ATC
*                    4. SET LOOP 2 COUNTER TO 1.                         ATC
*                    5. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       6-BIT A/D MODE.                                  ATC
*                    6. FORMAT UNIT PARAMETER 2 IS SET FOR               ATC
*                       0000.                                            ATC
*                    7. SET RECORD WORD LENGTH TO 5.                     ATC
*                    8. SET LOOP 1 COUNTER TO 1.                         ATC
*         FNC 4      9. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT TWO PARAMETER WORDS.                      ATC
*                   10. USING LOOP 1 COUNTER AS AN INDEX                 ATC
*                       GET CONSTANT FOR LWTR TCU PARAMETER              ATC
*                       WORD 3. THESE CONSTANTS ARE AS                   ATC
*                       FOLLOWS -                                        ATC
*                          LOOP CNT  PARAM 3     TYPE                    ATC
*                             0.....350...GCR, 200 IPS. 
*                             1.....152...GCR, 150 IPS. 
*                             2.....153...GCR, 100 IPS. 
*                             3.....754...PE, 200 IPS.
*                             4.....556...PE, 150 IPS.
*                             5.....557...PE, 100 IPS.
*                             6.....750...9T NRZI, 200 IPS. 
*                             7.....552...9T NRZI, 150 IPS. 
*                             8.....553...9T NRZI, 100 IPS. 
*                             9.....670...7T NRZI, 200 IPS. 
*                            10.....472...7T NRZI, 150 IPS. 
*                            11.....473...7T NRZI, 100 IPS. 
*                                                                        ATC
*         FNC 75    11. ISSUE LWR TCU FUNCTION AND OUTPUT                ATC
*           (DDLT-3)    PARAMETER WORD.                                  ATC
*         FNC 50    12. ISSUE WRITE FUNCTION AND OUTPUT                  ATC
*           (DDLT-4)    DATA BLOCK.                                      ATC
*                   13. INCREASE LOOP 1 COUNTER BY 1 AND                 ATC
*                       REPEAT FROM 9 FOR ALL SPEED DENSITY              ATC
*                       CONDITIONS.                                      ATC
*                   14. INCREASE LOOP 2 COUNTER BY 1 AND                 ATC
*                       INCREASE RECORD LENGTH TO 400 WORDS.             ATC
*                   15. REPEAT FROM 8 FOR ALL SPEED AND                  ATC
*                       DENSITY CONDITIONS.                              ATC
*                   16. CHANGE FORMAT UNIT PARAMETER 1 FOR               ATC
*                       PACKED A/D MODE.                                 ATC
*                   17. REPEAT TEST SEQUENCE FROM 7 FOR                  ATC
*                       BOTH SHORT AND LONG RECORD LENGTHS               ATC
*                       AND THE LOOP TCU PARAMETER CONSTANTS.            ATC
*                   18. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*        SECTION 4, SUBSECTION 14.                                       ATC
 1 FORMAT.ATC15 LWR TCU FUNCTIONS TEST.                                  ATC
 2 FORMAT.ATC15 SUBSECTION ABORT.                                        ATC
 5 FORMAT ATC15 STATUS ERROR.                                            ATC
 6 FORMAT ATC15 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC15 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC15 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 15D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 350,152,153,754,556,557,750,552,553,
  ,670,472,473,75,76,72,45,46,42,65,66,62,225,226,222,0,0,
  ,1000,1000,200,200,1200,1200
*                                                                        ATC
77 COPY OB(474) TO IB(474) FOR 4                                         ATC
   MSG 1 TO DISPLAY,PRINT                                                ATC007K
16 OB(477)=0             *ASSURE LOCATION IS CLEAR                       ATC007K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   RES,ABT 15                                                            ATC007K
15 GOSUB 60                                                              ATC007K
*        TITLE - LOOP SHORT AND LONG RECORDS AT ALL SPEEDS               ATC
*                AND DENSITIES IN BOTH SIX-BIT AND PACKED                ATC
*                MODES.                                                  ATC
*                                                                        ATC
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
13 FUNC OB(402),ABT 14                                                   ATC
14 GOSUB 60                   *ISSUE FUNCTION.                           ATC
   IF(ES.AND.RC.NE.0)GOTO 13  *REPEAT CONDITION.                         ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY                       ATC
17 GOSUB 70                *OBTAIN GENERAL STATUS AND CHECK.             ATC
*                                                                        ATC
*        GENERATE PATTERN NUMBER 4 HERE.                                 ATC
*        ALTERNATING ONES, FRAME TO FRAME.                               ATC
   OB(412)=400                                                           ATC
   OB(413)=4                 *PATTERN 4.                                 ATC
   CALL 981                  *GENERATE PATTERN.                          ATC
   GOSUB 60                                                              ATC008K
   OB(415)=1                 *SET LOOP 2 COUNTER.                        ATC
   OB(407)=200               *SIX-BIT MODE INITIALLY.                    ATC
20 B4=5                      *INITIAL WRITE WORD COUNT.                  ATC
21 OB(412)=B4                                                            ATC
   OB(414)=1                  *SET LOOP 1 COUNTER 
   IF(OB(407).NE.240) GOTO 24     *IF PACKED MODE 
   OB(414)=0
24 IF(P4.AND.1.NE.0) GOTO 23  *GCR
   OB(414)=3                 *BYPASS GCR LOOPS. 
23 B3=OB(414)                *INDEX COUNTER FOR PRAM SP3. 
22 WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(421)=0                                                             ATC
   B5=OB(415) - 1            *USE LOOP 2 COUNTER AS INDEX.               ATC
   OB(427)=OB(B5+470)                                                    ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(411)=OB(B3+440)        *PARAMETERS FROM TABLED ITEMS.              ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=IB(B5+474)                                                    ATC
   OB(432)=OB(432).AND.7000+OB(B3+454)                                   ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   WC=B4                                                                 ATC
   BA=0                                                                  ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   B0=1                                                                  ATC
   OB(427)=OB(B5+470)                                                    ATC
   OB(432)=OB(432).AND.7000                                              ATC
   GOSUB 70      *OBTAIN GENERAL STATUS AND CHECK.                       ATC
*                                                                        ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   GOTO 22 WHILE (B3+1.LE.13)   *LOOP FOR ALL SP3 PARAMS.                ATC
*                                                                        ATC
   IF(B4.GT.400) GOTO 43    *CHANGE LENGTH IF PASS 1 ENDED.              ATC
   OB(415)=OB(415)+1         *INCREASE LOOP 2 COUNTER.                   ATC
   B4=405                   *NEXT WORD LENGTH.                           ATC
   GOTO 21                   *AGAIN LOOP THROUGH ALL SP3.                ATC
*                                                                        ATC
43 IF(OB(407).EQ.240) GOTO 44  *FORMAT UNIT PACKED MODE.                 ATC
   OB(407)=240                                                           ATC
   OB(411)=0                 *CLEAR PARAM 3 WORD.                        ATC
   OB(415)=OB(415)+1         *INCREASE LOOP 2 COUNTER.                   ATC
   GOTO 20                   *REPEAT FOR PACKED MODE.                    ATC
*                                                                        ATC
44 IF(OB(477).NE.0)MSG 6(OB(477))TO DAYFILE,PRINT                        ATC
   DUP 0 TO OB(420) FOR 20   *CLEAR EXPECTED STATUS BUFFER.              ATC
   IF(ES.AND.RM.NE.0) GOTO 16      *REPEAT MODULE.                       ATC
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 63                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 44   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B0.EQ.0)GOTO 74     *IF NOT RETAIN BLOCK ID                        ATC002K
   OB(421)=SB(1).AND.7770    *RETAIN CURRENT BLOCK ID STAT.              ATC
   B0=0                      *CLEAR FLAG.                                ATC
74 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76   *IF STAT COMPARE - JUMP                ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC16,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC16.                                                  ATC
*                                                                        ATC
**  ATC16 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      16  *             ATC
*                                                          *             ATC
*        MODULE - ATC16.                                   *             ATC
*            SECTION 5,  SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 5, SUBSECTION 0.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC16.                                                     ATC
*                                                                        ATC
*        TEST OF CLEAR UNIT FUNCTION ON A CONNECTED                      ATC
*        TAPE UNIT.                                                      ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*         FNC 2X,3X    2. ISSUE CONNECT UNIT FUNCTION.                   ATC
*           (DDLT-2)                                                     ATC
*         FNC 12       3. ISSUE GENERAL STATUS FUNCTION.                 ATC
*           (DDLT-3)                                                     ATC
*         STATUS       4. USING STATUS INSTRUCTION INPUT                 ATC
*           (DDLT-4)      16 WORD STATUS BLOCK.                          ATC
*                      5. ASSURE TAPE UNIT SHOWS CONNECTED               ATC
*                         STATUS.                                        ATC
*                      6. SET LOOP 1 COUNTER TO 1.                       ATC
*         FNC 00       7. ISSUE CLEAR UNIT FUNCTION.                     ATC
*           (DDLT-5)                                                     ATC
*                      8. ASSURE ALL STATUS WORDS DO NOT                 ATC
*                         SHOW ANY BITS TO CAUSE ALERT                   ATC
*                         STATUS.                                        ATC
*                      9. INCREASE LOOP 1 COUNTER BY 1                   ATC
*                         AND REPEAT STEP 7 FOR 10 TIMES.                ATC
*                     10. END MODULE.                                    ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 5, SUBSECTION 0 START.                                  ATC
 1 FORMAT ATC16 CLEAR UNIT FUNCTION.                                     ATC
 5 FORMAT ATC16 STATUS ERROR.                                            ATC
 6 FORMAT ATC16 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC16 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC16 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 16D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 RES,ABT 17                                                            ATC002K
17 GOSUB 60                                                              ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000              *EXPECTED STAT WD 1.                        ATC
   IF(P4.AND.1.EQ.0)GOTO 16         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
16 GOSUB 70                  *GET STATUS AND COMPARE.                    ATC
*                                                                        ATC
   OB(403)=SB(72)            *UNIT NUMBER TO DISPLAY.                    ATC
   OB(402)=OB(403)+20        *FORM UNIT CONNECT CODE.                    ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
32 OB(402)=12                *GENERAL STATUS FUNCTION.                   ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
   OB(405)=1                                                             ATC000K
   OB(406)=104          *********  DTLT ACTION NUMBER                    ATC004K
   STATUS 20 WORDS TO SB,ABT 30  *INPUT STATUS.                          ATC
   OB(405)=0                                                             ATC000K
   GOTO 30                                                               ATC
31 IF(SB.AND.1000.EQ.0) GOTO 35  *CHECK FOR TU CONN.                     ATC
   OB(420)=5000              *SHOW ALERT EXPECTED.                       ATC
   OB(422)=1                 *SHOW TCU ERROR CODE.                       ATC
   GOTO 36                                                               ATC
35 COPY SB TO OB(420) FOR 20                                             ATC
36 GOSUB 70                                                              ATC
*        ISSUE CLEAR FUNCTION.                                           ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
20 OB(402)=0                 *CLEAR UNIT FUNCTION.                       ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                                                              ATC
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPECTD STATUS.                  ATC
   OB(420)=SB.AND.377                                                    ATC
   OB(427)=SB(7).AND.400                                                 ATC
   OB(432)=SB(12).AND.6677                                               ATC
   OB(434)=SB(14).AND.43                                                 ATC
   OB(435)=SB(15).AND.132                                                ATC
   OB(437)=SB(17).AND.377                                                ATC
   GOSUB 70                                                              ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.10D) GOTO 20    *LOOP 10 TIMES.                         ATC
*        END SUBSECTION.                                                 ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   IF(ES.AND.RM.NE.0)GOTO 15     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 32                                            ATC
   GOTO 31                                                               ATC
*                                                                        ATC
40 FUNC OB(402),ABT 41                                                   ATC
   GOTO 41                                                               ATC
   RETURN                                                                ATC
41 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC17,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC17.                                                  ATC
*                                                                        ATC
**  ATC17 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      17  *             ATC
*                                                          *             ATC
*        MODULE - ATC17.                                   *             ATC
*            SECTION 5,  SUBSECTION 1                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 5, SUBSECTION 1.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC17.                                                     ATC
*                                                                        ATC
*        TEST CONTROLLER RESPONSE TO A RELEASE UNIT                      ATC
*        FUNCTION ON A CONNECTED UNIT.                                   ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*         FNC 2X,3X    2. ISSUE CONNECT UNIT FUNCTION.                   ATC
*           (DDLT-2)                                                     ATC
*         FNC 12       3. ISSUE GENERAL STATUS FUNCTION.                 ATC
*           (DDLT-3)                                                     ATC
*         STATUS       4. USING STATUS INSTRUCTION INPUT                 ATC
*           (DDLT-4)      16 WORD STATUS BLOCK.                          ATC
*                      5. SET LOOP 1 COUNTER TO 1.                       ATC
*         FNC 1        6. ISSUE RELEASE UNIT FUNCTION.                   ATC
*                         ASSURE UNIT IS RELEASED VIA STAT.              ATC010K
*           (DDLT-5)                                                     ATC
*                      7. INCREASE LOOP 1 COUNTER BY 1                   ATC
*                         AND REPEAT FROM STEP 6 FOR                     ATC
*                         10 TIMES.                                      ATC
*                      8. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE LOW LEVEL PRODUCT OVERLAY                       ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 5, SUBSECTION 1 START.                                  ATC
 1 FORMAT ATC17 RELEASE UNIT FUNCTION.                                   ATC
 5 FORMAT ATC17 STATUS ERRORS.                                           ATC
 6 FORMAT ATC17 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC17 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC17 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 17D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 RES,ABT 17                                                            ATC002K
17 GOSUB 60                                                              ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 16         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
16 GOSUB 70                                                              ATC
   OB(403)=SB(72)            *UNIT NUMBER TO DISPLAY.                    ATC
   OB(402)=OB(403)+20        *FORM UNIT CONNECT CODE.                    ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE CONNECT FUNCTION.                    ATC
32 OB(402)=12                *GENERAL STATUS FUNCTION.                   ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  ISSUE FUNCTION.                             ATC
   OB(405)=1                                                             ATC000K
   OB(406)=104                  **********DTLT ACTION NUMBER             ATC007K
   STATUS 20 WORDS TO SB, ABT 30                                         ATC
   OB(405)=0                                                             ATC000K
   OB(406)=4         *******DTLT NUMBER.                                 ATC010K
   GOTO 30                                                               ATC
31 IF(SB.AND.1000.EQ.0)GOTO 35   *NOT ALERT STAT                         ATC002K
   OB(420)=5000              *ALERT STATUS EXPECTED.                     ATC
   GOTO 36                                                               ATC
35 COPY SB TO OB(420) FOR 20                                             ATC
36 GOSUB 70                                                              ATC
*        ISSUE RELEASE FUNCTION.                                         ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
20 OB(402)=1                 *RELEASE UNIT FUNCTION.                     ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPECTD STATUS.                  ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 34         *IF NOT GCR                          ATC002K
   OB(432)=4000              *SHOW GCR STATUS.                           ATC
34 GOSUB 70                                                              ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.10D) GOTO 20    *LOOP 10 TIMES.                         ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 15     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 32                                            ATC
   GOTO 31                                                               ATC
*                                                                        ATC
40 FUNC OB(402),ABT 41       *ISSUE FUNCTIONS.                           ATC
   GOTO 41                                                               ATC
   RETURN                                                                ATC
41 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC18,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC18.                                                  ATC
*                                                                        ATC
**  ATC18 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      18  *             ATC
*                                                          *             ATC
*        MODULE - ATC18.                                   *             ATC
*            SECTION 5,  SUBSECTION 2                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 5, SUBSECTION 2,*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC18.                                                     ATC
*                                                                        ATC
*        TEST FORMAT UNIT FUNCTION CONNECTS.                             ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 2X,3X    1. ISSUE CONNECT UNIT FUNCTION AND                ATC
*           (DDLT-1)      OBTAIN CURRENT CONNECTED STATUSES.             ATC
*                      2. SET FORMAT UNIT PARAMETER 1 WORD               ATC
*                         FOR UNIT CONNECT CONSTANT.                     ATC
*                         PARAMETER 2 WORD IS ZEROS.                     ATC
*                      3. SET LOOP 1 COUNTER TO 1.                       ATC
*         FNC 4        4. ISSUE FORMAT UNIT FUNCTION.                    ATC
*           (DDLT-2)                                                     ATC
*         OUT          5. USE OUT INSTRUCTION AND OUTPUT                 ATC
*           (DDLT-3)      THE TWO PARAMETER WORDS.                       ATC
*                      6. OBTAIN GENERAL STATUS AND COMPARE              ATC
*                         WITH ORIGINAL CONNECT STATUS.                  ATC
*         FNC 4        7. ISSUE FORMAT UNIT FUNCTION.                    ATC
*           (DDLT-4)                                                     ATC
*         OUT          8. USE OUT INSTRUCTION AND OUTPUT                 ATC
*           (DDLT-5)      THE TWO PARAMETER WORDS.                       ATC
*                      9. OBTAIN GENERAL STATUS AND COMPARE              ATC
*                         WITH ORIGINAL CONNECT STATUS.                  ATC
*         FNC 414     10. ISSUE MASTER CLEAR FUNCTION.                   ATC
*           (DDLT-6)      ASSURE TU NOT CONNECTED STATUS.                ATC
*         FNC 1       11. ISSUE RELEASE UNIT FUNCTION.                   ATC
*           (DDLT-7)      ASSURE TU NOT CONNECTED STATUS.                ATC
*                     12. INCREASE LOOP 1 COUNTER BY 1                   ATC
*                         AND REPEAT FROM 4 FOR 10 TIMES.                ATC
*                     13. END MODULE.                                    ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER                    ATC002K
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 5, SUBSECTION 2 START.                                  ATC
 1 FORMAT ATC18 FORMAT UNIT FUNCT CONNS.                                 ATC
 5 FORMAT ATC18 STATUS ERRORS.                                           ATC
 6 FORMAT ATC18 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC18 SL-ON LC=*DEC.EC=*DEC.                                   ATC
10 FORMAT ATC18 RC-ON LC=*DEC.EC=*DEC.                                   ATC
   DATA (OB(416),CON) 18D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 RES,ABT 17                                                            ATC002K
17 GOSUB 60                                                              ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   B0=1                                                                  ATC000K
   OB(402)=414     *MASTER CLEAR FUNCTION                                ATC007K
   GOSUB 50        *ISSUE THE MASTER CLEAR FUNCTION                      ATC007K
   GOSUB 70      *GET STATUS                                             ATC000K
   OB(403)=SB(72)            *UNIT NUMBER TO DISPLAY.                    ATC
   OB(402)=OB(403)+20             *FORM UNIT CONNECT CODE.               ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   B0=1                      *DO NOT COMPARE STATUS FLAG.                ATC
   GOSUB 70                                                              ATC
   B0=0                                                                  ATC
   COPY SB TO IB FOR 20      *SAVE EXPECTED STATUS WORDS.                ATC
   OB(407)=OB(402)           *SELECT UNIT NUMBER TO PARAM 1.             ATC
   OB(410)=0                                                             ATC
   OB(414)=1                                                             ATC
24 OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   OB(415)=1                 *LOOP COUNTER 2.                            ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OUTB,ABT 31                                                           ATC
   COPY IB TO OB(420) FOR 20   *MOVE TO EXPECTED STATUS.                 ATC
   GOTO 31                                                               ATC
*                                                                        ATC
21 GOSUB 70                                                              ATC
   OB(402)=4                 *FORMAT UNIT CONNECT.                       ATC
   OB(415)=2                 *LOOP COUNTER 2.                            ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   WC=1                                                                  ATC
   BA=407                                                                ATC
   OUT, ABT 32                                                           ATC
32 GOSUB 60                                                              ATC008K
33 COPY IB TO OB(420) FOR 20                                             ATC
   GOSUB 70                                                              ATC
   OB(415)=0                                                             ATC
*                                                                        ATC
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   DUP 0 TO OB(420) FOR 20                                               ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 26         *IF NOT GCR                          ATC002K
   OB(432)=4000                                                          ATC
26 GOSUB 70                                                              ATC
27 OB(402)=1                 *RELEASE UNIT FUNCTION.                     ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   DUP 0 TO OB(420) FOR 20                                               ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 20         *IF NOT GCR                          ATC002K
   OB(432)=4000                                                          ATC
20 B4=0                                                                  ATC
   GOSUB 70                                                              ATC
41 OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.10D) GOTO 24   *LOOP 10 TIMES.                          ATC
34 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 15     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
31 GOSUB 60                   *ERROR REPORT.                             ATC
   GOTO 21                                                               ATC
*                                                                        ATC
*                                                                        ATC
50 FUNC OB(402),ABT 52   *FUNCTION ROUTINE                               ATC000K
52 GOSUB 60                                                              ATC000K
   IF(ES.AND.RC.NE.0)GOTO 50                                             ATC000K
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EM.NE.0)CALL 985      *CALL ERROR PROCESSOR                        ATC006K
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 34   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B0.EQ.0)GOTO 74     *COMPARE STATUS                                ATC002K
   GOTO 76                  *DO NOT COMPARE STATUSES                     ATC006K
74 IF(B4.NE.1)GOTO 75     *IF NO STAT COMPARE                            ATC002K
   OB(420)=OB(420).AND.377                                               ATC
75 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC19,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC19.                                                  ATC
*                                                                        ATC
**  ATC19 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      19  *             ATC
*                                                          *             ATC
*        MODULE - ATC19.                                   *             ATC
*            SECTION 5,  SUBSECTION 3                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 5, SUBSECTION 2,*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC19.                                                     ATC
*                                                                        ATC
*         ISSUE REPETITIVE FORMAT UNIT FUNCTION WITH                     ATC
*         ZEROS SET IN PARAMETER WORDS 1 AND 2, THEN                     ATC
*         REPEAT WITH SELECT MEMORY BIT SET IN PARAMETER                 ATC
*         WORD 1.                                                        ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*                      2. SET LOOP 1 COUNTER TO 1.                       ATC
*                      3. SET LOOP 2 COUNTER TO 1.                       ATC
*                      4. SET FORMAT UNIT PARAMETER 1 AND 2              ATC
*                         TO ZEROES (0000).                              ATC
*         FNC 4        5. ISSUE FORMAT UNIT FUNCTION AND                 ATC
*           (DDLT-2)      OUTPUT THE TWO PARAMETERS.                     ATC
*                      6. INCREASE LOOP 1 COUNTER BY 1 AND               ATC
*                         REPEAT FROM STEP 5 FOR 8 TIMES.                ATC
*                      7. SET FORMAT UNIT PARAMETER 1                    ATC
*                         FOR SELECT CODE CONVERSION MEMORY              ATC
*                         ZERO (4000).                                   ATC
*                      9. INCREASE LOOP 2 COUNTER BY 1,                  ATC
*                         SET LOOP 1 COUNTER TO 1 AND                    ATC
*                         REPEAT SEQUENCE FROM STEP 5                    ATC
*                         FOR 8 TIMES.                                   ATC
*                     10. END MODULE.                                    ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE LOW LEVEL PRODUCT OVERLAY                       ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 5, SUBSECTION 3 START.                                  ATC
 1 FORMAT ATC19 FRMT UNIT, PARMS SET 0 AND 4000.                         ATC
 5 FORMAT ATC19 STATUS ERRORS                                            ATC000K
 6 FORMAT ATC19 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC19 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC19 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 19D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 RES,ABT 17                                                            ATC002K
17 GOSUB 60                                                              ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
20 OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402),ABT 30                                                   ATC
   GOTO 30                                                               ATC
21 OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 22         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
   OB(415)=1                 *LOOP 2 COUNTER.                            ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(407)=0                 *PARAMETER 1.                               ATC
   WC=2                      *WORD COUNT.                                ATC
   BA=407                    *OUTPUT WORDS START.                        ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
23 FOUT OB(402),ABT 31       *FORMAT UNIT.                               ATC
   GOTO 31                                                               ATC
24 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(414)=OB(414)+1         *INCREASE COUNTER 1.                        ATC
   IF(OB(414).LE.10) GOTO 23   *LOOP 8 TIMES.                            ATC
   IF(OB(415).GE.2)GOTO 25     *LOOP 2 COUNTER.                          ATC002K
   OB(415)=2                 *SET LOOP 2 COUNTER.                        ATC
   OB(414)=1                 *RESET LOOP 1 COUNTER.                      ATC
   OB(407)=4000              *SET NEW PARAMETER 1.                       ATC
   GOTO 23                   *NEXT FORMAT UNIT ISSUE.                    ATC
25 IF(OB(477).NE.0)MSG 6(OB(477))TO DAYFILE,PRINT                        ATC
   IF(ES.AND.RM.EQ.0) GOTO 26                                            ATC
   OB(414)=0                 *CLEAR COUNTERS.                            ATC
   OB(415)=0                                                             ATC
   GOTO 15                                                               ATC002K
*                                                                        ATC
26 EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 GOSUB 60                *ERROR REPORT.                                ATC
   IF(ES.AND.RC.NE.0) GOTO 20                                            ATC
   GOTO 21                                                               ATC
31 GOSUB 60                *ERROR REPORT.                                ATC
   IF(ES.AND.RC.NE.0) GOTO 23                                            ATC
   GOTO 24                                                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 25   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC20,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC20.                                                  ATC
*                                                                        ATC
**  ATC20 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      20  *             ATC
*        MODULE - ATC20.                                   *             ATC
*            SECTION 5,  SUBSECTION 4                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 5, SUBSECTION 4,*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC20.                                                     ATC
*        ISSUE ALL FORMAT UNIT DENSITY SELECTIONS WITH AND               ATC
*        WITHOUT THE  DEFINE DENSITY BIT SET TO A CONNECTED              ATC
*        UNIT.                                                           ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. CLEAR LOOP 1 COUNTER.                            ATC
*                    3. FORMAT UNIT PARAMETER ONE IS SET                 ATC
*                       TO 0000.                                         ATC
*                    4. SET FORMAT UNIT PARAMETER TWO                    ATC
*                       TO 0000.                                         ATC
*        FNC 2X/3X   5. CONNECT ASSIGNED UNIT.                           ATC
*           (DDLT-2)                                                     ATC
*        FNC 4       6. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-3)    OUTPUT THE TWO PARAMETER WORDS.                  ATC
*                    7. INCREASE PARAMETER TWO BY 100B.                  ATC
*                    8. INCREASE LOOP 1 COUNTER BY 1                     ATC
*                       AND REPEAT FROM 5 FOR ALL DENSITY                ATC
*                       SELECTIONS IN PARAMETER WORD TWO.                ATC
*                       THE DENSITY SELECTION CONSTANT                   ATC
*                       GOES FROM OCTAL 0 TO 7 IN THE                    ATC
*                       FORMAT UNIT PARAMETER WORD.                      ATC
*                    9. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 5, SUBSECTION 4 START.                                  ATC
 1 FORMAT ATC20 ISSUE ALL DENSITIES.                                     ATC
 5 FORMAT ATC20 STATUS ERRORS                                            ATC000K
 6 FORMAT ATC20 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC20 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC20 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC20 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 20D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 220,220,220,220,220,620,220,620                    ATC
*                                                                        ATC
77 IF(ES.AND.RM.NE.0)GOTO 15                                             ATC007K
   IF(OB(477).GT.4)GOTO 34   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
   MSG 1 TO DISPLAY,PRINT                                                ATC007K
15 GOSUB 60                                                              ATC007K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
17 FUNC OB(402),ABT 30       *ISSUE FUNCTION.                            ATC
   GOTO 30                                                               ATC
20 OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 21         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
21 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(414)=0                 *LOOP 1 COUNTER.                            ATC
*                                                                        ATC
   B4=1                      *SET NO STATUS COMPARE FLAG.                ATC
   OB(403)=SB(72)            *UNIT NUMBER TO DISPLAY.                    ATC
25 OB(402)=SB(72)+20         *FORM UNIT CONNECT CODE.                    ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
26 FUNC OB(402),ABT 31       *ISSUE CONNECT FUNCTION.                    ATC
   GOTO 31                                                               ATC
27 GOSUB 70                                                              ATC
   B4=0                      *ASSURE FLAG IS CLEAR.                      ATC
*                                                                        ATC
   OB(402)=4                                                             ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
35 FOUT OB(402),ABT 32       *ISSUE FORMAT UNIT FUNCTION.                ATC
   GOTO 32                                                               ATC
33 IF(B3.NE.0) GOTO 34       *NO STATUS CHANGES IF 9 TRACK.              ATC
   B5=OB(414)                                                            ATC
   OB(432)=OB(432).AND.4007 + OB(B5+440)   *SHOW DENSITY.                ATC
   GOTO 36                                                               ATC
34 OB(432)=OB(432).AND.4017 + 40                                         ATC
36 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(410)=OB(410)+100       *INCREASE DENSITY PARAMETER.                ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.7) GOTO 25  *LOOP FOR 8 PARAMETERS.                     ATC
37 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   OB(414)=0                                                             ATC
   OB(410)=0                                                             ATC
   IF(ES.AND.RM.NE.0) GOTO 77          *REPEAT MODULE.                   ATC
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 17                                            ATC
   GOTO 20                                                               ATC
*                                                                        ATC
31 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 26                                            ATC
   GOTO 27                                                               ATC
*                                                                        ATC
32 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 35                                            ATC
   GOTO 33                                                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 37   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B4.EQ.0)GOTO 74    *IF STATUS COMPARE                              ATC002K
   COPY SB TO OB(420) FOR 20   *RETAIN ALL STATUSES.                     ATC
   IF(OB(420).AND.1000.EQ.0) GOTO 75   *IS UNIT CONNECTED.               ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377   *SHOW EXPECTED STATUS.                      ATC
75 IF(OB(420).AND.100.EQ.0) GOTO 74   *7 TRACK IF ZERO.                  ATC
   B3=1                      *SET 9 TRACK UNIT FLAG.                     ATC
74 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC21,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC21.                                                  ATC
*                                                                        ATC
**  ATC21 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      21  *             ATC
*                                                          *             ATC
*        MODULE - ATC21.                                   *             ATC
*            SECTION 5,  SUBSECTION 5                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 5, SUBSECTION 5.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC21,ATC210,ATC211.                                       ATC
*                                                                        ATC
*         TEST OPPOSITE PARITY SELECTIONS IN LOOP WRITE TO               ATC
*         READ UNIT MODE.                                                ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                      2. SET FORMAT UNIT PARAMETER ONE FOR              ATC
*                         7640, CODE CONVERSION 7, PACKED                ATC
*                         MODE.                                          ATC
*                      3. SET PARAMETER TWO TO 0000.                     ATC
*         FNC 4        4. ISSUE FORMAT UNIT FUNCTION AND                 ATC
*           (DDLT-2)      OUTPUT TWO PARAMETER WORDS.                    ATC
*                      5. SET RECORD LENGTH FOR 40B WORDS.               ATC
*                      6. SET PATTERN NUMBER FOR 4, AND                  ATC
*                         CALL PATTERN GENERATOR.                        ATC
*         FNC 2X,3X    7. ISSUE CONNECT FUNCTION.                        ATC
*            (DDLT-3)          (ASSURE UNIT CONNECTED STATUS)            ATC011K
*         FNC  175     8. ISSUE LOOP WRITE TO READ UNIT                  ATC
*           (DDLT-4)      FUNCTION.                                      ATC
*         FNC 50       9. ISSUE WRITE FUNCTION AND OUTPUT                ATC
*           (DDLT-5)      DATA BLOCK.                                    ATC
*         FNC 5       10. ISSUE SELECT OPPOSITE PARITY                   ATC
*           (DDLT-6)      FUNCTION.                                      ATC
*                       11. GO TO SUBMODULE ATC211 TO                    ATC001K
*                         CONTINUE.                                      ATC
*                                                                        ATC
*         FNC  175    12. ISSUE LOOP WRITE TO READ UNIT                  ATC
*           (DDLT-7)      FUNCTION.                                      ATC
*         FNC 50      13. ISSUE WRITE FUNCTION AND OUTPUT                ATC
*           (DDLT-10)     DATA BLOCK.                                    ATC
*         FNC 5       14. ISSUE SELECT OPPOSITE PARITY                   ATC
*           (DDLT-11)     FUNCTION.                                      ATC
*         FNC 175     15. ISSUE LWR UNIT FUNCTION.                       ATC
*           (DDLT-12)                                                    ATC
*         FNC 51      16. ISSUE WRITE TAPE MARK FUNCTION.                ATC
*           (DDLT-13)                                                    ATC
*                     17. END MODULE.                                    ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*        ANY STATUS COMPARISON ERRORS AFTER A FUNCTION                   ATC009K
*        OR OTHER OPERATION HAS BEEN COMPLETED.                          ATC009K
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
77 GOTO 20                                                               ATC
20 EXIT TO 210                                                           ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      210 *             ATC
*                                                          *             ATC
*        MODULE - ATC210.                                  *             ATC
*            SECTION 5,  SUBSECTION 5                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 5, SUBSECTION 5.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC210,6000,(44,54,55),LOCK                                    ATC003K
*        SECTION 5, SUBSECTION 5 START.                                  ATC
 1 FORMAT ATC21 OPPOSITE PARITY FUNCT.                                   ATC
 5 FORMAT ATC21 STATUS ERRORS                                            ATC000K
 7 FORMAT ATC21 SL-ON LC=*DEC,EC=*DEC                                    ATC
10 FORMAT ATC21 RC-ON LC=*DEC,EC=*DEC                                    ATC
   DATA (OB(416),CON) 21D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 IF(ES.AND.RM.NE.0)GOTO 15                                             ATC007K
   MSG 1 TO DISPLAY,PRINT                                                ATC007K
15 OB(401)=1          *FIRST SUB MODULE                                  ATC007K
   GOSUB 60                                                              ATC007K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 20                                             ATC
/                 TEST FOR GCR CAPABILITY                                ATC003K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
20 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(407)=7640              *INT/EXT A/D MODE 1.                        ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
*                                                                        ATC
   OB(412)=40                *BLOCK WORD LENGTH.                         ATC
   OB(413)=4                 *PATTERN NUMBER.                            ATC
   CALL 981                  *GENERATE PATTERN.                          ATC
21 GOSUB 60                                                              ATC008K
   OB(403)=SB(72)            *UNIT NUMBER.                               ATC
   OB(402)=OB(403)+20        *FORM CONNECT FUNCTION.                     ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   B0=1                      *FLAG TO CHECK FOR ALERT STAT.              ATC
   GOSUB 70                  *STATUS AND COMPARE.                        ATC
*                                                                        ATC
   OB(402)=175               *LOOP UNIT FUNCTION.                        ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(427)=3200                                                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   WC=OB(412)                                                            ATC
   BA=0                                                                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   FOUT OB(402),ABT 40                                                   ATC000K
40 GOSUB 60                                                              ATC000K
   IF(ES.AND.RC.NE.0)GOTO 21                                             ATC000K
   OB(420)=IB(420)                                                       ATC
   OB(427)=3400                                                          ATC
   B1=1                      *SET FOR RETAIN BLOCK ID.                   ATC
   GOSUB 70                  *STATUS AND COMPARE.                        ATC
*                                                                        ATC
   OB(402)=5                 *OPPOSITE PARITY.                           ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   B3=1                      *FLAG FOR OPPOSITE PARITY.                  ATC
   GOSUB 70                  *STATUS AND COMPARE.                        ATC
*                                                                        ATC
33 EXIT TO 211                                                           ATC008K
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B0.EQ.0) GOTO 76                                                   ATC
/               FLAG FOR ALERT STATUS CHECK                              ATC003K
   B0=0                      *CLEAR FLAG.                                ATC
   IF(SB.AND.1000.EQ.0) GOTO 75       *IF UNIT IS CONNECTED.             ATC
   IB(420)=5000              *SHOW ALERT STATUS.                         ATC
   IB(422)=51                *SHOW TCU ERROR NUMBER 51.                  ATC
   GOTO 76                                                               ATC
75 IB(420)=SB.AND.0777                                                   ATC
   OB(420)=IB(420)                                                       ATC
   OB(427)=SB(7).AND.3600                                                ATC
   OB(432)=SB(12).AND.6677                                               ATC
   OB(434)=SB(14).AND.43                                                 ATC
   OB(435)=SB(15).AND.132                                                ATC
   OB(437)=SB(17).AND.377                                                ATC
76 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B1.EQ.0) GOTO 74                                                   ATC
/               FLAG FOR BLOCK ID RETENTION                              ATC003K
   OB(421)=SB(1).AND.7770                                                ATC
74 IF(B3.EQ.0) GOTO 30                                                   ATC
/               FLAG FOR OPPOSITE PARITY TEST                            ATC003K
   IF(OB(420).AND.100.NE.0) GOTO 30   *JUMP IF 9 TRACK.                  ATC
   OB(421)=OB(421).AND.7770+2                                            ATC
30 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 56  *IF STAT COMPARE - JUMP                 ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 56                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
56 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      211 *             ATC
*                                                          *             ATC
*        MODULE - ATC211.                                  *             ATC
*            SECTION 5,  SUBSECTION 5                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 5, SUBSECTION 5.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC211,6000,(44,54,55),LOCK                                    ATC003K
 5 FORMAT ATC21 STATUS ERRORS                                            ATC000K
 6 FORMAT ATC21 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC21 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC21 RC-ON LC=*DEC,EC=*DEC.                                   ATC
*                                                                        ATC
77 RES,ABT 11                                                            ATC010K
   GOTO 12                                                               ATC010K
11 GOSUB 60         *CALL ERROR PROCESSOR                                ATC010K
12 OB(404)=2        *SUBMODULE NUMBER.                                   ATC010K
   OB(415)=1                                                             ATC
   OB(420)=IB(420)                                                       ATC
   OB(402)=175               *LOOP UNIT FUNCTION.                        ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(427)=3200                                                          ATC
   B3=1                                                                  ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   OB(406)=10           *******         *DDLT ACTION NUMBER.             ATC
   FOUT OB(402),ABT 40                                                   ATC000K
40 GOSUB 60                                                              ATC000K
   IF(ES.AND.RC.NE.0)GOTO 77   *REPEAT CONDITION                         ATC000K
   OB(427)=3400                                                          ATC
   B0=1        *CHECK ALERT STATUS FLAG                                  ATC003K
   B3=1        *CHECK OPPOSITE PARITY FLAG                               ATC003K
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=5                 *OPPOSITE PARITY.                           ATC
   OB(406)=11           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   B3=1                                                                  ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(415)=2                                                             ATC
   OB(402)=175               *LOOP UNIT FUNCTION.                        ATC
   OB(406)=12           *******         *DDLT ACTION NUMBER.             ATC
   B0=1        *CHECK ALERT STATUS FLAG                                  ATC003K
   B3=1        *CHECK OPPOSITE PARITY FLAG                               ATC003K
   GOSUB 50                                                              ATC
   OB(427)=3200                                                          ATC
   B3=1                                                                  ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=51                *WRITE TAPE MARK.                           ATC
   OB(406)=13           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   B3=1                 *CHECK OPPOSITE PARITY FLAG                      ATC006K
   OB(427)=3400                                                          ATC
   OB(420)=OB(420)+20        *FILE MARK STATUS.                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   IF(ES.AND.RM.NE.0) GOTO 30                                            ATC
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 EXIT TO 210                                                           ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B0.EQ.0) GOTO 76                                                   ATC
/               FLAG FOR ALERT STATUS CHECK                              ATC003K
   B0=0                      *CLEAR FLAG.                                ATC
   IF(SB.AND.1000.EQ.0) GOTO 75       *IF UNIT IS CONNECTED.             ATC
   IB(420)=5000              *SHOW ALERT STATUS.                         ATC
   IB(422)=51                *SHOW TCU ERROR NUMBER 51.                  ATC
   GOTO 76                                                               ATC
75 IB(420)=SB.AND.0777                                                   ATC
   OB(420)=IB(420)                                                       ATC
   OB(427)=SB(7).AND.3600                                                ATC
   OB(432)=SB(12).AND.6677                                               ATC
   OB(434)=SB(14).AND.43                                                 ATC
   OB(435)=SB(15).AND.132                                                ATC
   OB(437)=SB(17).AND.377                                                ATC
76 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B1.EQ.0) GOTO 74                                                   ATC
/               FLAG FOR BLOCK ID RETENTION                              ATC003K
   OB(421)=SB(1).AND.7770                                                ATC
74 IF(B3.EQ.0) GOTO 20                                                   ATC
/               FLAG FOR OPPOSITE PARITY TEST                            ATC003K
   IF(OB(420).AND.100.NE.0) GOTO 21   *JUMP IF 9 TRACK.                  ATC
   OB(421)=OB(421).AND.7770+2     *OPPOSITE PARITY BIT.                  ATC
21 B3=0                                                                  ATC
20 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 56                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 56                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
56 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC22,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC22.                                                  ATC
*                                                                        ATC
**  ATC22 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      22  *             ATC
*                                                          *             ATC
*        MODULE - ATC22.                                   *             ATC
*            SECTION 5,  SUBSECTION 6                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 5, SUBSECTION 6.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*                                                                        ATC
*  OVERVIEW - ATC22,ATC220,ATC221,ATC222,ATC223,ATC224.                  ATC
*                                                                        ATC
*         TEST OF OPPOSITE DENSITY SELECTION ON CONNECTED                ATC
*         UNIT.                                                          ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                      2. SET FORMAT UNIT PARAMETER ONE                  ATC
*                         TO 0000.                                       ATC
*                      3. SET FORMAT UNIT PARAMETER TWO                  ATC
*                         TO 0000.                                       ATC
*                      4. SET RECORD LENGTH TO 10 WORDS.                 ATC
*                      5. SET LOOP 1 COUNTER TO 1.                       ATC
*         FNC 2X,3X    6. ISSUE CONNECT UNIT FUNCTION.                   ATC
*           (DDLT-2)                                                     ATC
*         FNC 4        7. ISSUE FORMAT UNIT FUNCTION.                    ATC
*           (DDLT-3)                                                     ATC
*         FNC 175      8. ISSUE LWR UNIT FUNCTION.                       ATC
*           (DDLT-4)                                                     ATC
*         FNC 50       9. ISSUE WRITE FUNCTION AND OUTPUT                ATC
*           (DDLT-5)      DATA BLOCK.                                    ATC
*         FNC 105     10. ISSUE OPPOSITE DENSITY FUNCTION.               ATC
*           (DDLT-6)                                                     ATC
*                     11. INCREASE LOOP 1 COUNTER BY 1                   ATC
*                     12. REPEAT SEQUENCE FROM STEP 8                    ATC
*                         ONE TIME ONLY.                                 ATC
*                     13. GO TO SUBMODULE ATC221.                        ATC
*         FNC 175     14. ISSUE LWR UNIT FUNCTION.                       ATC
*           (DDLT-7)                                                     ATC
*         FNC 51      15. ISSUE WRITE TAPE MARK FUNCTION.                ATC
*           (DDLT-10)                                                    ATC
*                     16. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
/         ATC22 OPPOSITE DENSITY FUNCTION TEST.                          ATC
 1 FORMAT ATC22 - SET PARAMETER WORD 3.                                  ATC
 2 FORMAT         BIT ASSIGNMENT (SET ONE BIT ONLY).                     ATC
 3 FORMAT         P3 = 0001  677-2 7 TRACK NRZI 100 IPS.                 ATC
 4 FORMAT            = 0002  677-3 7 TRACK NRZI 150 IPS.                 ATC
 5 FORMAT            = 0004  677-4 7 TRACK NRZI 200 IPS.                 ATC
 6 FORMAT            = 0010  679-2 9 TRACK PE/NRZI 100 IPS.              ATC
 7 FORMAT            = 0020  679-3 9 TRACK PE/NRZI 150 IPS.              ATC
10 FORMAT            = 0040  679-4 9 TRACK PE/NRZI 200 IPS.              ATC
11 FORMAT            = 0100  679-5 9 TRACK PE/GCR 100 IPS.               ATC
12 FORMAT            = 0200  679-6 9 TRACK PE/GCR 150 IPS.               ATC
13 FORMAT            = 0400  679-7 9 TRACK PE/GCR 200 IPS.               ATC
*                                                                        ATC
/         *STATUS WORD 11 EXPECTED STATUS BITS MASKS.                    ATC
77 OB(30) = 222              *7 TRACK NRZI 100 IPS.                      ATC
   OB(31) = 226              *7 TRACK NRZI 150 IPS.                      ATC
   OB(32) = 225              *7 TRACK NRZI 200 IPS.                      ATC
   OB(33) = 42               *9 TRACK PE/NRZI 100 IPS.                   ATC
   OB(34) = 46               *9 TRACK PE/NRZI 150 IPS.                   ATC
   OB(35) = 45               *9 TRACK PE/NRZI 200 IPS.                   ATC
   OB(36) = 52               *9 TRACK PE/GCR 100 IPS.                    ATC
   OB(37) = 56               *9 TRACK PE/GCR 150 IPS.                    ATC
   OB(40) = 55               *9 TRACK PE/GCR 200 IPS.                    ATC
*                                                                        ATC
   B1=0                      *ASSURE INDEX COUNTER CLEAR.                ATC
30 B2 = P3.RS.B1.AND.1       *MASK FOR TRANSPORT TYPE.                   ATC
   IF(B2.EQ.1) GOTO 32       *FOUND PARAMETER BIT SET.                   ATC
   B1 = B1 + 1               *INCREASE INDEX COUNTER.                    ATC
   IF(B1.GE.12) GOTO 31      *NO PARAMETER BIT FOUND.                    ATC
   GOTO 30                   *CONTINUE BIT SEARCH.                       ATC
31 MSG 1 TO LINE 20          *ASK FOR PARAMETER MESSAGE.                 ATC
   MSG 1 TO DISPLAY                                                      ATC
   MSG 2 TO LINE 21                                                      ATC
   MSG 3 TO LINE 22                                                      ATC
   MSG 4 TO LINE 23                                                      ATC
   MSG 5 TO LINE 24                                                      ATC
   MSG 6 TO LINE 25                                                      ATC
   MSG 7 TO LINE 26                                                      ATC
   MSG 10 TO LINE 27                                                     ATC
   MSG 11 TO LINE 30                                                     ATC
   MSG 12 TO LINE 31                                                     ATC
   MSG 13 TO LINE 32                                                     ATC
   PICTURE                   *DISPLAY MESSAGE.                           ATC
   HALT                                                                  ATC000K
   BLANK                                                                 ATC000K
32 OB(23) = B1               *SAVE INDEX COUNTER.                        ATC
   OB(21) = OB(B1 + 30)      *STATUS MASK BITS.                          ATC
   IF(B1.LE.2) GOTO 33       *SEVEN TRACK TAPE UNIT.                     ATC
   OB(22) = 100              *SET 9 TRACK STAT WORD 1 BIT 6.             ATC
33 EXIT TO 220               *EXIT TO SUBMODULE.                         ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      220 *             ATC
*                                                          *             ATC
*        MODULE - ATC220.                                  *             ATC
*                                                          *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC220,6000,(44,54,55),LOCK                                    ATC003K
/        SECTION 5, SUBSECTION 6 START.                                  ATC
 1 FORMAT ATC22 OPPOSITE DENSITY FUNCT.                                  ATC
 5 FORMAT ATC22 STATUS ERRORS                                            ATC000K
 6 FORMAT ATC22 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC22 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC22 RC-ON LC=*DEC,EC=*DEC.                                   ATC
*                                                                        ATC
77 IF(OB(410).NE.0) GOTO 17  *SKIP INITIAL MESSAGE ON LOOPS.             ATC
   MSG 1 TO DISPLAY,PRINT                                                ATC
17 OB(416)=22D               *CURRENT MODULE NUMBER.                     ATC
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(404)=1                 *FIRST SUBMODULE.                           ATC
   RES,ABT 12                                                            ATC011K
   GOTO 13                                                               ATC011K
12 GOSUB 60                                                              ATC011K
13 OB(403)=77     *INDICATE NO UNIT USED                                 ATC011K
*                                                                        ATC
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 20                                             ATC
/                 TEST FOR GCR CAPABILITY                                ATC003K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
20 GOSUB 70                                                              ATC
   OB(412)=12                *10 WORD BUFFER.                            ATC
   OB(403)=SB(72)            *UNIT NUMBER.                               ATC
   OB(402)=OB(403)+20        *FORM CONNECT CODE.                         ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   B5=1                *SET FLAG FOR INITIAL STATUS COMPARE.             ATC
   GOSUB 70                                                              ATC
   B5=0                      *CLEAR FLAG.                                ATC
   IF(OB(22).EQ.0) GOTO 21   *7 TRACK UNITS SELECTED.                    ATC
   EXIT TO 223               *TO 9 TRACK UNITS SUBMODULE.                ATC
21 EXIT TO 221               *TO 7 TRACKS UNITS SUBMODULE.               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985    *CALL ERROR PROCESSOR                          ATC011K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B5.EQ.0) GOTO 74       *NOT INITIAL STATUS LOOP.                   ATC
   OB(420)=SB.AND.205+OB(22)  *INITIAL CONNECTED UNIT STATUS             ATC
   OB(427)=SB(7)                                                         ATC
   OB(432)=OB(432)+OB(21)                                                ATC
   OB(434)=SB(14).AND.43                                                 ATC
   OB(435)=SB(15).AND.132                                                ATC
   OB(437)=SB(17).AND.377                                                ATC
*                                                                        ATC
74 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
75 RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      221 *             ATC
*                                                          *             ATC
*        MODULE - ATC221.                                  *             ATC
*                                                          *             ATC
*                SEVEN TRACK UNITS - SUBMODULE.            *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC221,6000,(44,54,55),LOCK                                    ATC003K
*                                                                        ATC
/         SEVEN TRACK UNITS - SUBMODULE.                                 ATC
 5 FORMAT ATC221 STATUS ERRORS                                           ATC000K
 7 FORMAT ATC221 SL-ON LC=*DEC,EC=*DEC.                                  ATC
10 FORMAT ATC221 RC-ON LC=*DEC,EC=*DEC.                                  ATC
77 RES,ABT 11                                                            ATC010K
   GOTO 12                                                               ATC010K
11 GOSUB 60         *CALL ERROR PROCESSOR                                ATC010K
12 OB(404)=2        *SUBMODULE NUMBER.                                   ATC010K
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
   IF(OB(415).EQ.7) GOTO 21                                              ATC
/     CHANGE STATUS WORD IF LOOP 2 COUNTER                               ATC003K
/     EQUAL 7                                                            ATC003K
   IF(OB(415).NE.5) GOTO 22                                              ATC
/     JUMP AROUND IF LOOP 2 NE 5                                         ATC003K
21 OB(432)=OB(432).AND.7677+400                                          ATC
22 GOSUB 70                                                              ATC
*                                                                        ATC
23 OB(402)=175               *LOOP UNIT FUNCTION.                        ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(421)=0                                                             ATC
   OB(427)=200                                                           ATC
   IF(OB(414).EQ.1) GOTO 24                                              ATC
   OB(432)=OB(432).XOR.400                                               ATC
24 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   WC=OB(412)                                                            ATC
   BA=0                                                                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   FOUT OB(402),ABT 40                                                   ATC000K
40 GOSUB 60                                                              ATC000K
   IF(ES.AND.RC.NE.0)GOTO 77   *REPEAT CONDITION                         ATC000K
   IF(OB(414).NE.2) GOTO 25                                              ATC
/     CHANGE STATUS WORD IF LOOP 1 COUNTER                               ATC003K
/     EQUAL 1                                                            ATC003K
   OB(432)=OB(432).XOR.400                                               ATC
25 B4=1                      *FLAG FOR RETAIN BLOCK ID STAT.             ATC
   OB(427)=400                                                           ATC
   IF(OB(415).EQ.7) GOTO 26                                              ATC
/     CHANGE STATUS WORD IF LOOP 2 COUNTER                               ATC003K
/     EQUAL 7                                                            ATC003K
   IF(OB(415).NE.6) GOTO 27                                              ATC
/     JUMP AROUND IF LOOP 2 NE 6                                         ATC003K
26 OB(420)=OB(420)+4000      *SHOW ALERT STATUS.                         ATC
   OB(422)=36                *ERROR CODE STATUS.                         ATC
27 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=105               *OPPOSITE DENSITY.                          ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(421)=0                                                             ATC
   OB(420)=OB(420).AND.3777                                              ATC
   OB(422)=0                                                             ATC
   OB(432)=OB(432).XOR.400                                               ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   OB(432)=OB(432).XOR.400   *SHOW OPPOSITE DENSITY.                     ATC
   IF(OB(414).LE.2) GOTO 23  *TWO LOOPS THRU CODE.                       ATC
*                                                                        ATC
   EXIT TO 222               *TO NEXT SUBMODULE.                         ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(EC.GE.4000)CALL 985  *CALL ERR PROCESSOR.                          ATC
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
74 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B4.EQ.0) GOTO 76       *NO CURRENT BLOCK ID STATUS.                ATC
   OB(421)=SB(1)             *EXPTCD BLOCK ID STATUS.                    ATC
   B4=0                      *ASSURE FLAG CLEARED.                       ATC
76 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 56                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 56                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
56 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
75 RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      222 *             ATC
*                                                          *             ATC
*        MODULE - ATC222.                                  *             ATC
*                                                          *             ATC
*                SEVEN TRACK UNITS - SUBMODULE.            *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC222,6000,(44,54,55),LOCK                                    ATC003K
*                                                                        ATC
 5 FORMAT ATC222 STATUS ERRORS                                           ATC000K
 6 FORMAT ATC22 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC22 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC22 RC-ON LC=*DEC,EC=*DEC.                                   ATC
*                                                                        ATC
77 RES,ABT 11                                                            ATC011K
   GOTO 12                                                               ATC011K
11 GOSUB 60                                                              ATC011K
12 OB(404)=3      *THIRD SUBMODULE.                                      ATC011K
   OB(420)=SB.AND.377                                                    ATC
   OB(402)=175               *LOOP UNIT FUNCTION.                        ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(421)=0                                                             ATC
   OB(427)=200                                                           ATC
   OB(432)=OB(432).XOR.400                                               ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=51                *WRITE TAPE MARK FUNCTION.                  ATC
   OB(406)=10           *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402),ABT 40                                                   ATC000K
40 GOSUB 60                                                              ATC000K
   IF(ES.AND.RC.NE.0)GOTO 77   *REPEAT CONDITION                         ATC000K
   IF(OB(415).EQ.7) GOTO 21                                              ATC
/     CHANGE STATUS WORD IF LOOP 2 COUNTER                               ATC003K
/     EQUAL 7                                                            ATC003K
   IF(OB(415).NE.6) GOTO 22                                              ATC
/     JUMP AROUND IF LOOP 2 NE 6                                         ATC003K
21 OB(420)=OB(420)+4000      *SHOW ALERT STATUS.                         ATC
   OB(422)=36                *ERROR CODE STATUS.                         ATC
   GOTO 23                                                               ATC
22 OB(420)=OB(420) + 20      *SHOW FILE MARK/TAPE MARK STAT.             ATC
23 OB(427)=400                                                           ATC
   B4=1                      *RETAIN BLOCK ID STATUS.                    ATC
   OB(432)=OB(432).AND.6277                                              ATC
   IF(OB(415).EQ.7) GOTO 24                                              ATC
/     CHANGE STATUS WORD IF LOOP 2 COUNTER                               ATC003K
/     EQUAL 7                                                            ATC003K
   IF(OB(415).NE.5) GOTO 25                                              ATC
/     JUMP AROUND IF LOOP 2 NE 5                                         ATC003K
24 OB(432)=OB(432)+400                                                   ATC
25 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(415)=OB(415)+1         *INCREASE LOOP 2 COUNTER.                   ATC
   OB(410)=OB(410)+100       *PARAMETER TWO DENSITY FIELD.               ATC
   IF(OB(410).GE.1000) GOTO 26   *END OF DENSITY BITS.                   ATC
   GOTO 30                   *CONTINUE NEXT SEQUENCE.                    ATC
*                                                                        ATC
26 IF(OB(477).NE.0)MSG 6(OB(477))TO DAYFILE,PRINT                        ATC
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   OB(415)=0                 *CLEAR COUNTER 2.                           ATC
   OB(410)=0                 *CLEAR PARAMETER WORD 2.                    ATC
   IF(ES.AND.RM.NE.0) GOTO 30                                            ATC
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 DUP 0 TO OB(420) FOR 20                                               ATC
   EXIT TO 220               *RETURN TO FIRST SUBMODULE.                 ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 26   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B4.EQ.0) GOTO 76       *NO CURRENT BLOCK ID STATUS.                ATC
   OB(421)=SB(1)             *EXPTCD BLOCK ID STATUS.                    ATC
76 B4=0                      *ASSURE FLAG CLEARED.                       ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 56                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 56                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
56 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
75 RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      223 *             ATC
*                                                          *             ATC
*        MODULE - ATC223.                                  *             ATC
*                                                          *             ATC
*                NINE TRACK UNITS - SUBMODULE.             *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC223,6000,(44,54,55),LOCK                                    ATC003K
 5 FORMAT ATC223 STATUS ERRORS                                           ATC000K
 7 FORMAT ATC22 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC22 RC-ON LC=*DEC,EC=*DEC.                                   ATC
*                                                                        ATC
/         NINE TRACK UNITS SUBMODULE.                                    ATC
77 RES,ABT 11                                                            ATC010K
   GOTO 12                                                               ATC010K
11 GOSUB 60         *CALL ERROR PROCESSOR                                ATC010K
12 OB(404)=4        *SUBMODULE NUMBER.                                   ATC010K
*                                                                        ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
21 OB(402)=175               *LOOP UNIT FUNCTION.                        ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(421)=0                                                             ATC
   OB(427)=200                                                           ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   WC=OB(412)                                                            ATC
   BA=0                                                                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   FOUT OB(402),ABT 40                                                   ATC005 
40 GOSUB 60                                                              ATC000K
   IF(ES.AND.RC.NE.0)GOTO 77                                             ATC000K
   B4=1                      *FLAG FOR RETAIN BLOCK ID STAT.             ATC
   OB(427)=400                                                           ATC
   IF(P4.AND.1.EQ.0)GOTO 33   *BYPASS THIS SECTION IF NOT GCR.
   IF(P3.LT.100) GOTO 23                                                 ATC
/      IF NOT GCR REQUIRED TAPE UNIT                                     ATC003K
   IF(OB(415).EQ.7) GOTO 22                                              ATC
/     CHANGE STATUS WORD IF LOOP 2 COUNTER                               ATC003K
/     EQUAL 7                                                            ATC003K
   IF(OB(415).NE.5) GOTO 23                                              ATC
/     JUMP AROUND IF LOOP 2 NE 5                                         ATC003K
22 OB(420)=OB(420).AND.3777+4000   *SHOW ALERT STATUS.                   ATC
   OB(422)=1000                                                          ATC
   OB(424)=10                                                            ATC
23 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=105               *OPPOSITE DENSITY.                          ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(421)=0                                                             ATC
   OB(420)=OB(420).AND.3777   *CLEAR ALERT STATUS.                       ATC
   OB(424)=0                  *CLEAR STATUS WORD 5                       ATC
   OB(422)=0                  *CLEAR STATUS WORD 3                       ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.2) GOTO 21  *TWO LOOPS THRU CODE.                       ATC
*                                                                        ATC
33 EXIT TO 224      *EXIT TO NEXT SUBMODULE                              ATC008K
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B4.EQ.0) GOTO 76       *NO CURRENT BLOCK ID STATUS.                ATC
   OB(421)=SB(1)             *EXPTCD BLOCK ID STATUS.                    ATC
76 B4=0                      *ASSURE FLAG CLEARED.                       ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 56                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 56                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
56 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
75 RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      224 *             ATC
*                                                          *             ATC
*        MODULE - ATC224.                                  *             ATC
*                                                          *             ATC
*                NINE TRACK UNITS - SUBMODULE.             *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC224,6000,(44,54,55),LOCK                                    ATC003K
*                                                                        ATC
/         NINE TRACK UNITS - SUBMODULE.                                  ATC
 5 FORMAT ATC224 STATUS ERRORS                                           ATC000K
 6 FORMAT ATC22 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC22 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC22 RC-ON LC=*DEC,EC=*DEC.                                   ATC
*                                                                        ATC
77 RES,ABT 11                                                            ATC010K
   GOTO 12                                                               ATC010K
11 GOSUB 60         *CALL ERROR PROCESSOR                                ATC010K
12 OB(404)=5        *SUBMODULE NUMBER.                                   ATC010K
   OB(404)=5                 *FIFTH SUBMODULE.                           ATC
   OB(420)=SB.AND.377                                                    ATC
   OB(402)=175               *LOOP UNIT FUNCTION.                        ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(421)=0                                                             ATC
   OB(427)=200                                                           ATC
   OB(432)=OB(432).AND.6277                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=51                *WRITE TAPE MARK FUNCTION.                  ATC
   OB(406)=10           *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402),ABT 40                                                   ATC000K
40 GOSUB 60                                                              ATC000K
   IF(ES.AND.RC.NE.0)GOTO 77                                             ATC000K
   IF(P4.AND.1.EQ.0)GOTO 41   *BYPASS TAPE MARK IF NOT GCR. 
   OB(420)=OB(420) + 20      *SHOW FILE MARK/TAPE MARK STAT.             ATC
   OB(427)=400                                                           ATC
   B4=1                                                                  ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
41 OB(415)=OB(415)+1          *INCREASE LOOP 2 COUNTER. 
   OB(410)=OB(410)+100       *PARAMETER TWO DENSITY FIELD.               ATC
   IF(OB(410).GE.1000) GOTO 22   *END OF DENSITY BITS.                   ATC
   GOTO 30                   *CONTINUE NEXT SEQUENCE.                    ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
22 DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   OB(415)=0                 *CLEAR COUNTER 2.                           ATC
   OB(410)=0                 *CLEAR PARAMETER WORD 2.                    ATC
   IF(ES.AND.RM.NE.0) GOTO 30                                            ATC
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 DUP 0 TO OB(420) FOR 20                                               ATC
   EXIT TO 220               *RETURN TO FIRST SUBMODULE.                 ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B4.EQ.0) GOTO 76       *NO CURRENT BLOCK ID STATUS.                ATC
   OB(421)=SB(1)             *EXPTCD BLOCK ID STATUS.                    ATC
   B4=0                      *ASSURE FLAG CLEARED.                       ATC
76 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 56                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 56                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
56 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
75 RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC23,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC23.                                                  ATC
*                                                                        ATC
**  ATC23 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      23  *             ATC
*                                                          *             ATC
*        MODULE - ATC23.                                   *             ATC
*            SECTION 5,  SUBSECTION 7                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 5, SUBSECTION 7.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC23.                                                     ATC
*                                                                        ATC
*         TEST OF CONTROLLER TO ISSUE A REPETITIVE                       ATC
*         CONNECT FUNCTION.                                              ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*         FNC 2X,3X    2. ISSUE CONNECT UNIT FUNCTION, AND               ATC
*           (DDLT-2)      OBTAIN GENERAL STATUS. SET LOOP                ATC
*                         1 COUNTER TO 1 INITIALLY.                      ATC
*                      3. INCREASE LOOP 1 COUNTER BY 1 AND               ATC
*                         REPEAT FROM STEP 2 FOR 100 TIMES.              ATC
*                         FOR EACH RUN THROUGH STEP 2                    ATC
*                         COMPARE SUBSEQUENT GENERAL STATUS              ATC
*                         BLOCK WITH ORIGINAL STATUSES.                  ATC
*                      4. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE LOW LEVEL PRODUCT OVERLAY                       ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 5, SUBSECTION 7 START.                                  ATC
 1 FORMAT ATC23 CONNECT TEST.                                            ATC
 5 FORMAT ATC23 STATUS ERRORS                                            ATC000K
 6 FORMAT ATC23 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC23 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC23 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC23 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 23D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
14 RES,ABT 15                                                            ATC007K
15 GOSUB 60                                                              ATC007K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 20                                             ATC
/                 TEST FOR GCR CAPABILITY                                ATC003K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
20 GOSUB 70                                                              ATC
   OB(403)=SB(72)            *UNIT NUMBER.                               ATC
   OB(402)=OB(403)+20        *FORM CONNECT CODE.                         ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
   B4=1                      *SET INITIAL STATUS PASS FLAG.              ATC
21 OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *CONNECT UNIT.                              ATC
   GOSUB 70                                                              ATC
   B4=0                      *ASSURE PASS FLAG CLEAR.                    ATC
   OB(414)=OB(414)+1         *INCREASE COUNTER 1.                        ATC
   IF(OB(414).LE.100D) GOTO 21                                           ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   IF(ES.AND.RM.NE.0)GOTO 14                                             ATC007K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SPEED-UP REQUIRED FULL     *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B4.EQ.0) GOTO 74       *RETAIN ALL EXPCTD STATUSES.                ATC
   COPY SB TO OB(420) FOR 20                                             ATC
   IF(OB(420).AND.1000.EQ.0) GOTO 74   *IF UNIT CONNECTED.               ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377   *SHOW EXPCTD STATUS.                        ATC
74 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC24,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC24.                                                  ATC
*                                                                        ATC
**  ATC24 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      24  *             ATC
*        MODULE - ATC24.                                   *             ATC
*            SECTION 6,  SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 0.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC24.                                                     ATC
*                                                                        ATC
*         TEST OF THE READ CLIP FUNCTIONS.                               ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*                      2. SET FORMAT UNIT PARAMETER ONE                  ATC
*                         TO ZERO.                                       ATC
*                      3. SET FORMAT UNIT PARAMETER TWO                  ATC
*                         TO ZERO.                                       ATC
*         FNC 4        4. ISSUE FORMAT UNIT FUNCTION AND                 ATC
*           (DDLT-2)      OUTPUT THE TWO PARAMETER WORDS.                ATC
*                      5. SET RECORD LENGTH TO 10 WORDS.                 ATC
*         FNC 2X,3X    6. ISSUE CONNECT UNIT FUNCTION.                   ATC
*           (DDLT-3)      OMIT STATUS CHECK BUT SET UP                   ATC
*                         EXPECTED STATUS BUFFER.                        ATC
*                      7. SET LOOP 1 COUNTER TO 1.                       ATC
*         FNC 206      8. ISSUE LOW READ CLIP FUNCTION.                  ATC
*           (DDLT-4)      NOTE THAT THIS FUNCTION CHANGES                ATC
*                         WITH LOOP 1 COUNTER AS AN INDEX.               ATC
*                            LOOP CNT  FNC    TYPE                       ATC
*                                1     206   LOW CLIP                    ATC
*                                2       6   NORMAL CLIP                 ATC
*                                3     106   HIGH CLIP                   ATC
*                                4     306   HYPER CLIP                  ATC
*         FNC 175      9. ISSUE LWR UNIT FUNCTION.                       ATC
*           (DDLT-5)                                                     ATC
*         FNC 50      10. ISSUE WRITE FUNCTION AND OUTPUT                ATC
*           (DDLT-6)      DATA BLOCK.                                    ATC
*                     11. INCREASE LOOP 1 COUNTER BY 1.                  ATC
*                     12. REPEAT SEQUENCE FROM STEP 8                    ATC
*                         FOR THE FOUR CLIP LEVELS SHOWN.                ATC
*                     13. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*        SECTION 6, SUBSECTION 0                                         ATC
 1 FORMAT ATC24 SET READ CLIP LEVELS.                                    ATC
 5 FORMAT ATC24 STATUS ERRORS.                                           ATC
 6 FORMAT ATC24 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC24 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC24 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC24 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 24D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 206,6,106,306   *CLIP LEVEL FUNCTIONS.             ATC
   DATA (OB(444),CON) 2,0,1,3         *CLIP LEVEL STATUS.                ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 RES,ABT 17                                                            ATC002K
17 GOSUB 60                                                              ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.NE.0)OB(432)=4000  *GCR CAPABILITY.                       ATC
21 GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
*                                                                        ATC
   WC=2                                                                  ATC
   BA=407                    *PARAMS ARE ZEROES.                         ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
*                                                                        ATC
   OB(403)=SB(72)            *UNIT SELECTION.                            ATC
   OB(402)=OB(403)+20        *FORM UNIT CONNECT CODE.                    ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   B4=1                      *FLAG OMIT STATUS CHECK.                    ATC
   GOSUB 70                  *OBTAIN STATUS.                             ATC
   B4=0                      *CLEAR FOR STATUS CHECKS.                   ATC
*                                                                        ATC
   OB(420)=SB.AND.377                                                    ATC
   OB(427)=400                                                           ATC
   OB(432)=SB(12).AND.6677                                               ATC
   OB(434)=SB(14).AND.43                                                 ATC
   OB(435)=SB(15).AND.132                                                ATC
   OB(437)=SB(17).AND.377                                                ATC
*                                                                        ATC
   OB(414)=1                 *SET LOOP 1 COUNTER.                        ATC
*                                                                        ATC
22 B1=OB(414) - 1            *LOOP COUNTER 1 AS INDEX.                   ATC
   OB(402)=OB(B1+440)        *CLIP LEVEL FUNCTION.                       ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(430)=OB(B1+444)        *EXPCTD CLIP LEVEL STATUS.                  ATC
   GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
*                                                                        ATC
   OB(402)=175               *LOOP UNIT FUNCTION.                        ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(427)=200                                                           ATC
   GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
*                                                                        ATC
   WC=12                     *10 WORDS.                                  ATC
   BA=0                                                                  ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   FOUT OB(402),ABT 40                                                   ATC000K
40 GOSUB 60                                                              ATC000K
   OB(427)=400                                                           ATC
   OB(430)=0                                                             ATC
   B0=1                      *RETAIN BLOCK ID VALUE.                     ATC
   GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
*                                                                        ATC
   OB(421)=0                 *CLEAR LAST EXPCTD BLOCK ID.                ATC
   OB(414)=OB(414)+1         *INCREASE COUNTER 1.                        ATC
   IF(OB(414).LE.4) GOTO 22  *LOOP FOR ALL CLIP LEVELS.                  ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   IF(ES.AND.RM.NE.0)GOTO 15     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   IF(B4.EQ.0) GOTO 76              *JUMP FOR STATUS CHECKS.             ATC
   COPY SB TO OB(420) FOR 20     *CURRENT EXPECTED STATUSES.             ATC
   IF(SB.AND.1000.EQ.0) GOTO 76          *UNIT IS CONNECTED.             ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377             *ASSURE ERROR REPORT.             ATC
76 IF(B0.EQ.0) GOTO 75       *RETAIN CURRENT BLOCK ID VALUE.             ATC
   OB(421)=SB(1)                                                         ATC
   B0=0                                         *CLEAR FLAG.             ATC
75 OB(417)=7777               *SET CURENT STATUS TAKEN FLAG.             ATC
   B1 = 0                                    *INDEX COUNTER.             ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 56    *IF STAT COMPARE - JUMP.              ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 56                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
56 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                           *RETURN.             ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC25,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC25.                                                  ATC
*                                                                        ATC
**  ATC25 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      25  *             ATC
*        MODULE - ATC25 .                                  *             ATC
*            SECTION 6,  SUBSECTION 1                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 1.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC25.                                                     ATC
*                                                                        ATC
*         TEST CONTROLLER RESPONSE TO STOP MOTION FUNCTION.              ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*         FNC 11       2. ISSUE STOP MOTION FUNCTION.                    ATC
*           (DDLT-2)      EXPECT ALERT STATUS AND TCU                    ATC
*                         ERROR CODE 51.                                 ATC
*         FNC 2X,3X    3. ISSUE CONNECT UNIT FUNCTION.                   ATC
*           (DDLT-3)                                                     ATC
*         FNC 11       4. ISSUE STOP MOTION FUNCTION.                    ATC
*           (DDLT-4)                                                     ATC
*                      5. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 6, SUBSECTION 1.                                        ATC
 1 FORMAT ATC25 TEST STOP MOTION.                                        ATC
 5 FORMAT ATC25 STATUS ERRORS.                                           ATC
 6 FORMAT ATC25 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC25 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC25 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC25 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 25D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 OB(403)=77           *INDICATE NO UNIT USED.                          ATC002K
   RES,ABT 17                                                            ATC002K
17 GOSUB 60                                                              ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 20         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
20 GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
   OB(402)=11                *STOP MOTION FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=5000              *SHOW ALERT STATUS.                         ATC
   OB(422)=51                *TCU ERROR STATUS CODE.                     ATC
   OB(430)=10    ****** NO SUCH STATUS BIT IN ENG SPEC.                  ATC
   GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
/      CONNECT TO UNITS.                                                 ATC
   OB(403)=SB(72)            *SELECTED UNIT.                             ATC
   OB(402)=OB(403) + 20      *FORM CONNECT UNIT CODE.                    ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   B0=1                      *SET NO COMPARE STATUS FLAG.                ATC
   GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
   B0=0                                                                  ATC
*                                                                        ATC
   OB(402)=11                *STOP MOTION FUNCTION.                      ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 15     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   IF(B0.EQ.0) GOTO 74       *GO CHECK STATUS FLAG IF ZERO.              ATC
   COPY SB TO OB(420) FOR 20                                             ATC
   IF(OB(420).AND.1000.EQ.0) GOTO 74   *UNIT CONNECTED.                  ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377                                               ATC
74 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   B0=0           *CLEAR THE FLAG FOR STATUS CHECK.                      ATC007K
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC26,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC26.                                                  ATC
*                                                                        ATC
**  ATC26 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      26  *             ATC
*        MODULE - ATC26.                                   *             ATC
*            SECTION 6,  SUBSECTION 2                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 2.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC26.                                                     ATC
*                                                                        ATC
*         TEST VELOCITY DETECTOR FUNCTION.                               ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*         FNC 71       2. ISSUE TEST VELOCITY DETECTORS                  ATC
*           (DDLT-2)      FUNCTION.                                      ATC
*         FNC 2X,3X    3. ISSUE CONNECT UNIT FUNCTION.                   ATC
*           (DDLT-3)                                                     ATC
*         FNC 71       4. ISSUE TEST VELOCITY DETECTORS                  ATC
*           (DDLT-4)      FUNCTION.                                      ATC
*                      5. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 6, SUBSECTION 2.                                        ATC
 1 FORMAT ATC26 VELOCITY DETECTORS.                                      ATC
 5 FORMAT ATC26 STATUS ERRORS.                                           ATC
 6 FORMAT ATC26 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC26 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC26 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC26 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 26D    *CURRENT MODULE NUMBER.                     ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 OB(403)=77           *INDICATE NO UNIT USED.                          ATC002K
   RES,ABT 16                                                            ATC002K
16 GOSUB 60                                                              ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 17         *IF NOT GCR                          ATC002K
   OB(432)=4000              *SHOW GCR CAPABILITY.                       ATC
17 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(402)=71                *TEST VELOCITY FUNCTION.                    ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(403)=SB(72)            *UNIT SELECTED.                             ATC
   OB(402)=OB(403)+20        *FORM UNIT CONNECT CODE.                    ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *CONNECT UNIT FUNCTION.                     ATC
   B5=1                      *SET FLAG FOR NO STAT COMPARE.              ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   B5=0                                                                  ATC
*                                                                        ATC
   OB(402)=71                *TEST VELOCITY FUNCTION.                    ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   OB(432)=OB(432).AND.4000                                              ATC
   DUP 0 TO OB(421) FOR 11                                               ATC
   DUP 0 TO OB(433) FOR 5                                                ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 15     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51       *ISSUE FUNCTIONS.                           ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73            *GENERAL STATUS FUNCTION.                   ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   IF(B5.EQ.0) GOTO 74       *COMPARE EXPECTED STATUSES.                 ATC
   COPY SB TO OB(420) FOR 20                                             ATC
   IF(OB(420).AND.1000.EQ.0) GOTO 74   *UNIT CONNECTED.                  ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377   *ASSURE ERROR REPORT.                       ATC
74 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC27,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC27.                                                  ATC
*                                                                        ATC
**  ATC27 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      27  *             ATC
*        MODULE - ATC27.                                   *             ATC
*            SECTION 6,  SUBSECTION 3                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 3.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC27.                                                     ATC
*                                                                        ATC
*         TEST EVEN WRITE PATH PARITY FUNCTION.                          ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*         FNC 76       2. ISSUE EVEN WRITE PATH PARITY                   ATC
*           (DDLT-2)      FUNCTION.                                      ATC
*                      3. SET LWR TCU PARAMETER FOR PE,                  ATC
*                         200 IPS SELECTION.                             ATC
*         FNC 75       4. ISSUE LWR TCU FUNCTION AND OUTPUT              ATC
*           (DDLT-3)      ITS PARAMETER WORD.                            ATC
*         FNC 50       5. ISSUE WRITE FUNCTION AND OUTPUT                ATC
*           (DDLT-4)      10 WORD DATA BLOCK.                            ATC
*                      6. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*        ANY STATUS COMPARISON ERRORS AFTER A FUNCTION                   ATC009K
*        OR OTHER OPERATION HAS BEEN COMPLETED.                          ATC009K
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 6, SUBSECTION 3.                                        ATC
 1 FORMAT ATC27 EVEN WRITE PATH PRTY.                                    ATC
 5 FORMAT ATC27 STATUS ERRORS.                                           ATC
 6 FORMAT ATC27 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC27 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC27 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 27D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 OB(403)=77           *INDICATE NO UNIT USED.                          ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   RES,ABT 16                                                            ATC002K
16 GOSUB 60                                                              ATC002K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 17         *IF NOT GCR                          ATC002K
   OB(432)=4000              *SHOW GCR CAPABILITY.                       ATC
*                                                                        ATC
17 OB(402)=76                *EVEN WRITE PATH PARITY FNC.                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(411)=754               *PE, 200 IPS.                               ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=200                                                           ATC
   OB(432)=OB(432).AND.6000+45                                           ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   BA=0                                                                  ATC
   WC=12                     *10 WORDS.                                  ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(421)=6410                                                          ATC
   OB(432)=OB(432).AND.6000                                              ATC
   OB(427)=0                                                             ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 15     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
*IF DEF,CMSE17X 
   MODULE ATC28,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC28.                                                  ATC
*                                                                        ATC
**  ATC28 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      28  *             ATC
*        MODULE - ATC28.                                   *             ATC
*            SECTION 6,  SUBSECTION 4                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 4.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC28.                                                     ATC
*                                                                        ATC
*         TEST EVEN CHANNEL PARITY FUNCTION.                             ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*         FNC 176      2. ISSUE EVEN CHANNEL PARITY FUNCTION             ATC
*           (DDLT-2)                                                     ATC
*         FNC 4        3. ISSUE FORMAT UNIT FUNCTION AND                 ATC
*           (DDLT-3)      OUTPUT TWO PARAMETER WORDS OF                  ATC
*                         ZEROES.                                        ATC
*                      4. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE LOW LEVEL PRODUCT OVERLAY                       ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 6, SUBSECTION 4.                                        ATC
 1 FORMAT ATC28 EVEN CHANNEL PARITY.                                     ATC
 5 FORMAT ATC28 STATUS ERRORS.                                           ATC
 6 FORMAT ATC28 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC28 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC28 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC28 NOT EXECUTED P9 NONZERO.
   DATA (OB(416),CON) 28D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
   IF (P9.EQ.0) GOTO 15           *IF P9 ZERO CONTINUE
   MSG 11 TO DISPLAY,PRINT        *POST NOT RUN MESSAGE 
   EXIT 
15 OB(403)=77           *INDICATE NO UNIT USED.                          ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   RES,ABT 16                                                            ATC002K
16 GOSUB 60                                                              ATC002K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 17         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
17 OB(402)=176               *SET EVEN CHANNEL PARITY FNC.               ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 15     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 75
74 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
75 IF(EC.NE.4033) GOTO 73    *IF NOT INPUT CHANNEL PARITY ERROR.
   ERROR 0/0                 *CLEAR EC AND EM FOR EXPECTED ERROR. 
   GOTO 74                   *CONTINUE AFTER INPUT PARITY ERROR.
   END 77                                                                ATC
COMPILE                                                                  ATC
*ENDIF
   MODULE ATC29,6000,(44,54,55),LOCK                                     ATC003K
***  ATC - MODULE ATC29.                                                 ATC
*                                                                        ATC
**  ATC29 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      29  *             ATC
*        MODULE - ATC29.                                   *             ATC
*            SECTION 6,  SUBSECTION 5                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 5.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC29.                                                     ATC
*                                                                        ATC
*         TEST OF THE FORCE ERROR FUNCTION.                              ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET LOOP 1 COUNTER TO 1.                         ATC
*                    3. SET TRACK IN ERROR PARAMETER                     ATC
*                       BIT AS INDICATED BY LOOP 1 COUNTER               ATC
*                       USED AS AN INDEX POINTER.                        ATC
*         FNC 77     4. ISSUE FORCE ERROR FUNCTION.                      ATC
*           (DDLT-2)    OUTPUT THE PARAMETER WORD.                       ATC
*                    5. INCREASE LOOP 1 COUNTER BY 1.                    ATC
*                       REPEAT STEP 4 FOR ALL TRACKS                     ATC
*                       ONE THROUGH 9.                                   ATC
*                    6. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 6, SUBSECTION 5                                         ATC
 1 FORMAT ATC29 FORCE DATA ERR FUNCT.                                    ATC
 5 FORMAT ATC29 STATUS ERRORS.                                           ATC
 6 FORMAT ATC29 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC29 SL-ON LC=*DEC,EC=*DEC.                                   ATC002K
10 FORMAT ATC29 RC-ON LC=*DEC,EC=*DEC.                                   ATC002K
   DATA (OB(416),CON) 29D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 OB(403)=77           *INDICATE NO UNIT USED.                          ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   RES,ABT 16                                                            ATC002K
16 GOSUB 60                                                              ATC002K
   B1=0                                                                  ATC
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 22         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
20 B2=1                                                                  ATC
   OB(460)=B2.LS.B1          *SET BIT SPECIFIED BY B1.                   ATC
   OB(402)=77                *KILL TRACK FUNCTION.                       ATC
   WC=1                                                                  ATC
   BA=460                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
   GOTO 20 WHILE (B1+1.LT.11)  *LOOP FOR ALL TRACKS.                     ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 15     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC30,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC30.                                                  ATC
*                                                                        ATC
**  ATC30 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      30  *             ATC
*        MODULE - ATC30.                                   *             ATC
*            SECTION 6,  SUBSECTION 6                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 6.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC30.                                                     ATC
*                                                                        ATC
*         TEST OF SEVERAL FUNCTIONS IN A SEQUENCE.                       ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET FORMAT UNIT PARAMETER 1 TO                   ATC
*                       7640, INTERNAL/EXTERNAL CONVERSION               ATC
*                       AND A/D PACKED MODE.                             ATC
*         FNC 4      3. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT TWO PARAMETER WORDS.                      ATC
*         FNC 106    4. ISSUE HIGH READ CLIP FUNCTION.                   ATC
*           (DDLT-3)                                                     ATC
*         FNC 5      5. ISSUE OPPOSITE PARITY FUNCTION.                  ATC
*           (DDLT-4)                                                     ATC
*         FNC 105    6. ISSUE OPPOSITE DENSITY FUNCTION.                 ATC
*           (DDLT-5)                                                     ATC
*         FNC 175    7. ISSUE LOOP WRITE TO READ UNIT                    ATC
*           (DDLT-6)    FUNCTION.                                        ATC
*         FNC 250    8. ISSUE SHORT WRITE FUNCTION.                      ATC
*           (DDLT-7)    OUTPUT ONE WORD.                                 ATC
*                    9. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 6, SUBSECTION 6.                                        ATC
 1 FORMAT ATC30 OPPOSITE PARITY TEST.                                    ATC
 5 FORMAT ATC30 STATUS ERRORS.                                           ATC
 6 FORMAT ATC30 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC30 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC30 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 30D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 OB(403)=77           *INDICATE NO UNIT USED.                          ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   RES,ABT 16                                                            ATC002K
16 GOSUB 60                                                              ATC002K
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 22         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                                                              ATC
*                            *EXT/INT CODE,PACKED MODE,                  ATC
   OB(407)=7640                                                          ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(427)=3000                                                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=106               *HIGH READ CLIP FUNCTION.                   ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(430)=1                                                             ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=5                 *OPPOSITE PARITY FUNCTION.                  ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=105               *OPPOSITE DENSITY.                          ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=175               *LOOP UNIT.                                 ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(427)=3200                                                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=250                *SHORT WRITE.                              ATC
   BA=0                                                                  ATC
   WC=1                                                                  ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(420)=5000                                                          ATC
   OB(422)=51                                                            ATC
   OB(427)=3000                                                          ATC
   OB(430)=0                                                             ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
20 IF(OB(477).NE.0)MSG 6(OB(477))TO DAYFILE,PRINT                        ATC
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 15     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 IF(EC.EQ.4026) GOTO 54                                                ATC
   GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
54 ERROR 0/0
   RETURN 
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 20   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC31,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC31.                                                  ATC
*                                                                        ATC
**  ATC31 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      31  *             ATC
*        MODULE - ATC31.                                   *             ATC
*            SECTION 6,  SUBSECTION 7                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 7.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC31,ATC310,ATC311.                                       ATC
*                                                                        ATC
*         TEST OF FORMAT UNIT FUNCTION TO CONNECT A UNIT.                ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET FORMAT UNIT PARAMETER ONE FOR                ATC
*                       A/D 6-BIT MODE AND SELECTION FOR                 ATC
*                       UNIT CONNECT.                                    ATC
*                    3. SET FORMAT UNIT PARAMETER TWO TO                 ATC
*                       0000.                                            ATC
*         FNC 2X,3X  4. ISSUE CONNECT UNIT AND RETAIN                    ATC
*           (DDLT-2)    GENERAL STATUSES FOR SUBSEQUENT                  ATC
*                       STATUS COMPARES.                                 ATC
*         FNC 1      5. ISSUE RELEASE UNIT FUNCTION.                     ATC
*           (DDLT-3)                                                     ATC
*         FNC 4      6. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-4)    OUTPUT THE TWO PARAMETER WORDS.                  ATC
*                    8. GO TO SUBMODULE ATC311 TO CONTINUE.              ATC
*         FNC 175    9. ISSUE LWR UNIT FUNCTION.                         ATC
*           (DDLT-5)                                                     ATC
*         FNC 51    10. ISSUE WRITE TAPE MARK FUNCTION.                  ATC
*           (DDLT-6)                                                     ATC
*         FNC 1     11. ISSUE RELEASE UNIT FUNCTION.                     ATC
*           (DDLT-7)                                                     ATC
*                   12. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
77 GOTO 20                                                               ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
20 EXIT TO 310                                                           ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      310 *             ATC
*        MODULE - ATC310.                                  *             ATC
*            SECTION 6,  SUBSECTION 7                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 7.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC310,6000,(44,54,55),LOCK                                    ATC003K
/        SECTION 6, SUBSECTION 7                                         ATC
 1 FORMAT ATC31 CONN-FORMAT UNIT FUNCT.                                  ATC
 5 FORMAT ATC31 STATUS ERRORS.                                           ATC
 6 FORMAT ATC31 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC31 SL-ON LC=*DEC.EC=*DEC.                                   ATC
10 FORMAT ATC31 RC-ON LC=*DEC.EC=*DEC.                                   ATC
11 FORMAT ATC31 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 31D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 IF(ES.AND.RM.NE.0)GOTO 15                                             ATC007K
   MSG 1 TO DISPLAY,PRINT                                                ATC007K
15 OB(403)=77        *INDICATE NO UNIT USED.                             ATC007K
   OB(404)=1                 *FIRST SUBMODULE.                           ATC
   GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 22                                             ATC
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(403)=SB(72)            *SELECTED UNIT NUMBER.                      ATC
   OB(402)=OB(403) + 20      *CONNECT CODE FUNCTION.                     ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   B5=1                      *SET NO STATUS COMPARE FLAG.                ATC
   GOSUB 70                                                              ATC
   B5=0                      *CLEAR FLAG.                                ATC
*                                                                        ATC
   OB(402)=1                 *RELEASE UNIT.                              ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   DUP 0 TO OB(420) FOR 20                                               ATC
   OB(420)=1000                                                          ATC
   OB(432)=IB(412).AND.4000                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(407) =SB(72)+220        *PACKED MODE AND UNIT SELECT.              ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   COPY IB(400) TO OB(420) FOR 20                                        ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
33 EXIT TO 311                                                           ATC008K
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B5.EQ.0) GOTO 74                                                   ATC
/      IF STATUS COMPARE                                                 ATC003K
   COPY SB TO OB(420) FOR 20                                             ATC
   COPY SB TO IB(400) FOR 20                                             ATC
   IF(SB.AND.1000.EQ.0) GOTO 74  *UNIT CONNECTED.                        ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377   *ASSURE ERROR REPORT.                       ATC
*                                                                        ATC
74 IF(B3.EQ.0) GOTO 75                                                   ATC
/      IF BLOCK ID RETENTION                                             ATC003K
   OB(421)=SB(1).AND.7770    *ACTUAL BLOCK ID TO EXPECTED.               ATC
   B3=0                                                                  ATC
75 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      311 *             ATC
*        MODULE - ATC311.                                  *             ATC
*            SECTION 6,  SUBSECTION 7                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 7.*             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC311,6000,(44,54,55),LOCK                                    ATC003K
*                                                                        ATC
/        SECTION 6, SUBSECTION 7                                         ATC
 5 FORMAT ATC31 STATUS ERRORS.                                           ATC
 6 FORMAT ATC31 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC31 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC31 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC31 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 31D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 RES,ABT 12                                                            ATC010K
   GOTO 13                                                               ATC010K
12 GOSUB 60         *CALL ERROR PROCESSOR                                ATC010K
13 OB(403)=SB(72)   *RESET THE UNIT NUMBER.                              ATC010K
*                                                                        ATC
   B5=1          *CHECK THE STATUS FLAG                                  ATC007K
   OB(404)=2                 *SECOND SUBMODULE.                          ATC
   OB(420)=SB.AND.377                                                    ATC
   OB(402)=175               *LOOP WRITE TO READ UNIT.                   ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(427)=200                                                           ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=51                *WRITE TAPE MARK.                           ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402),ABT 40                                                   ATC002K
40 GOSUB 60                                                              ATC002K
   IF(ES.AND.RC.NE.0)GOTO 77    *REPEAT CONDITION                        ATC002K
   OB(420)=OB(420) + 20   *SHOW FILE MARK/ TAPE MARK STATUS.             ATC
   OB(427)=400                                                           ATC
   B3=1                  *RETAIN ACTUAL BLOCK ID FOR EXPCTD.             ATC
   B5=1          *CHECK THE STATUS FLAG                                  ATC007K
   GOSUB 70                                                              ATC
   B5=0          *CLEAR THE STATUS CHECK FLAG                            ATC007K
*                                                                        ATC
   OB(402)=1                 *RELEASE UNIT.                              ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPECTED STATUSES.               ATC
   OB(420)=1000                                                          ATC
   OB(432)=IB(412).AND.4000                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0) GOTO 30  *REPEAT MODULE.                           ATC
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 EXIT TO 310                                                           ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B5.EQ.0) GOTO 74                                                   ATC
/      IF STATUS COMPARE                                                 ATC003K
   COPY SB TO OB(420) FOR 20                                             ATC
   COPY SB TO IB(400) FOR 20                                             ATC
   IF(SB.AND.1000.EQ.0) GOTO 74  *UNIT CONNECTED.                        ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377   *ASSURE ERROR REPORT.                       ATC
*                                                                        ATC
74 IF(B3.EQ.0) GOTO 75                                                   ATC
/      IF BLOCK ID RETENTION                                             ATC003K
   OB(421)=SB(1).AND.7770    *ACTUAL BLOCK ID TO EXPECTED.               ATC
   B3=0                                                                  ATC
75 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC32,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC32.                                                  ATC
*                                                                        ATC
**  ATC32 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      32  *             ATC
*        MODULE - ATC32.                                   *             ATC
*            SECTION 6,  SUBSECTION 10                     *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 6, SUBSECTION 10*             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC32.                                                     ATC
*                                                                        ATC
*         ATTEMPT WRITE WITHOUT A UNIT CONNECTED. FORCE                  ATC
*         ERROR CODE 51.                                                 ATC
*                                                                        ATC
*********************************************************                ATC009K
*                                                       *                ATC009K
*     FUNCTION 50 WILL NOT ABORT UNTIL HARDWARE         *                ATC009K
*     CHANGES ARE AVAILABLE AND INSTALLED.              *                ATC009K
*                                                       *                ATC009K
*********************************************************                ATC009K
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*         FNC 2X,3X    2. ISSUE CONNECT UNIT FUNCTION.                   ATC
*           (DDLT-2)                                                     ATC
*         FNC 1        3. ISSUE RELEASE UNIT FUNCTION.                   ATC
*           (DDLT-3)                                                     ATC
*         FNC 175      4. ISSUE LWR UNIT FUNCTION.                       ATC
*           (DDLT-4)                                                     ATC
*         FNC 50       5. ISSUE WRITE FUNCTION. EXPECT                   ATC
*           (DDLT-5)      FUNCTION REJECT.                               ATC
*                      6. IF FUNCTION DID NOT ABORT REPORT               ATC
*                         FAILURE TO ABORT BY SETTING                    ATC
*                         DDLT -OTHER ERROR TYPE-                        ATC
*                         DESIGNATOR NUMBER 4.                           ATC
*                      7. VERIFY THAT GENERAL STATUS SHOWS               ATC
*                         ALERT INDICATION AND TCU ERROR                 ATC
*                         CODE 51.                                       ATC
*                      8. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 6 SUBSECTION 10.                                        ATC
 1 FORMAT ATC32 ATTEMPT WRITE-NO UNIT.                                   ATC
 5 FORMAT ATC32 STATUS ERRORS.                                           ATC
 6 FORMAT ATC32 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC32 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC32 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC32 FUNCTION 50 FAILED TO ABORT.                             ATC
   DATA (OB(416),CON) 32D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
15 OB(403)=77           *INDICATE NO UNIT USED.                          ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   RES,ABT 16                                                            ATC002K
16 GOSUB 60                                                              ATC002K
30 OB(402)=414               *MASTER CLEAR                               ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 22         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(403)=SB(72)            *SELECTED UNIT NUMBER.                      ATC
   OB(402)=OB(403) +20       *FORM CONNECT CODE.                         ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *CONNECT UNIT.                              ATC
   B4=1                      *SET NO COMPARE STATUS FLAG.                ATC
   GOSUB 70                  *OBTAIN STATUS ONLY.                        ATC
*                                                                        ATC
   COPY IB TO OB(420) FOR 20    *MOVE TO EXPECTED STATUS.                ATC
   OB(420)=OB(420).AND.305      *ASSURE CONNECTED STATUS.                ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(402)=1                 *RELEASE UNIT.                              ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000              *SHOW TU NOT CONNECTED.                     ATC
   OB(432)=OB(432).AND.4000                                              ATC
   OB(427)=0                                                             ATC
   DUP 0 TO OB(433) FOR 5                                                ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(402)=175               *LOOP WRITE TO READ UNIT.                   ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(427)=200                                                           ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(402)=50                *WRITE.                                     ATC
   WC=1                                                                  ATC
   BA=0                                                                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   FOUT OB(402),ABT 31                                                   ATC
   GOTO 31                                                               ATC
   GOTO 20                                                               ATC
31 OB(420)=5000                                                          ATC
   OB(427)=0                                                             ATC
   OB(422)=51                *EXPECT TCU ERROR CODE 51.                  ATC
   GOSUB 70                  *EXPECT ABORT ON FUNCTION.                  ATC
32 IF(OB(477).NE.0)MSG 6(OB(477))TO DAYFILE,PRINT                        ATC
   DUP 0 TO OB(420) FOR 20                                               ATC
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
20 ERROR 11/1 GOSUB 60                  *ERROR NUMBER 1.                 ATC
   GOTO 31                                                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 32   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B4.EQ.0) GOTO 74       *COMPARE STATUSES FLAG.                     ATC
   COPY SB TO IB FOR 20      *SAVE ALL GENERAL STATUS.                   ATC
   B4=0                      *CLEAR OMIT STATUS CHECK FLAG.              ATC
74 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420).AND.OB(B1+460)                             ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   ERROR 0/0
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC33,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC33.                                                  ATC
*                                                                        ATC
**  ATC33 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      33  *             ATC
*        MODULE - ATC33.                                   *             ATC
*            SECTION 7,  SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 7, SUBSECTION 0 *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC33.                                                     ATC
*                                                                        ATC
*         TEST OF LOOP WRITE TO READ UNIT FUNCTION.                      ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*                      2. SET FORMAT UNIT PARAMETER 1 TO                 ATC
*                         ZERO.                                          ATC
*                      3. SET FORMAT UNIT PARAMETER 2 TO                 ATC
*                         ZERO.                                          ATC
*         FNC 4        4. ISSUE FORMAT UNIT FUNCTION AND                 ATC
*           (DDLT-2)      OUTPUT THE TWO PARAMETERS.                     ATC
*                      5. SET PATTERN NUMBER 1.                          ATC
*                      6. SET RECORD LENGTH FOR 2 WORDS.                 ATC
*         FNC 2X,3X    7. ISSUE CONNECT UNIT FUNCTION.                   ATC
*           (DDLT-3)                                                     ATC
*                      8. SET LOOP 1 COUNTER TO 1.                       ATC
*         FNC 175      9. ISSUE LWR UNIT FUNCTION.                       ATC
*           (DDLT-4)                                                     ATC
*         FNC 250     10. ISSUE SHORT WRITE FUNCTION AND                 ATC
*           (DDLT-5)      OUTPUT DATA BLOCK.                             ATC
*                     11. LOOP FROM 9 FOR LOOP 1 COUNTER                 ATC
*                         INCREMENT LIMIT OF 40B TIMES.                  ATC
*                     12. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
/        SECTION 7 SUBSECTION 0.                                         ATC
 1 FORMAT ATC33 LOOP WRT TO RD UNIT.                                     ATC
 5 FORMAT ATC33 STATUS ERRORS.                                           ATC
 6 FORMAT ATC33 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC33 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC33 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC33 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 33D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
17 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 22                                             ATC
/                 TEST FOR GCR CAPABILITY                                ATC003K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT ZEROS IN PARAMS.               ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(412)=2                                                             ATC
   OB(413)=1                 *PATTERN NUMBER 1.                          ATC
   DUP 7777 TO OB FOR 2      *ALL ONES PATTERN.                          ATC
   OB(403)=SB(72)            *UNIT NUMBER FROM .                         ATC
   OB(402)=OB(403)+20        *FORM CONNECT FUNCTION CODE.                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *CONNECT UNIT.                              ATC
   B5=1                      *SET UP EXPCTD STATUSES FLAG.               ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   B5=0                      *CLEAR FLAG.                                ATC
*                                                                        ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
30 OB(402)=175               *SET LOOP WTR UNIT.                         ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(427)=200                                                           ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   WC=2                                                                  ATC
   BA=0                                                                  ATC
   OB(402)=250               *SHORT WRITE FUNCTION.                      ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   FOUT OB(402),ABT 40                                                   ATC002K
40 GOSUB 60                                                              ATC002K
   B3=1                      *KEEP BLOCK ID EXPCTD STATUS.               ATC
   OB(427)=400                                                           ATC
   GOSUB 70                                                              ATC
   OB(421)=0                                                             ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.40) GOTO 30  *LOOP 40 TIMES.                            ATC
*                                                                        ATC
32 IF(OB(477).NE.0)MSG 6(OB(477))TO DAYFILE,PRINT                        ATC
   DUP 0 TO OB(420) FOR 20                                               ATC
   OB(414)=0                                                             ATC
   IF(ES.AND.RM.NE.0)GOTO 17   *REPEAT MODULE.                           ATC004K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 32   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B5.EQ.0) GOTO 74       *FIRST PASS CONNECT UNIT FLAG.              ATC
   COPY SB TO OB(420) FOR 20                                             ATC
   IF(SB.AND.1000.EQ.0) GOTO 74   *IF UNIT CONNECTED.                    ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377   *ASSURE ERROR REPORT.                       ATC
74 IF(B3.EQ.0) GOTO 75       *DO NOT USE CURRENT BLOCK ID.               ATC
   OB(421)=SB(1).AND.7770                                                ATC
   B3=0                      *ASSURE FLAG IS CLEARED.                    ATC
75 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC34,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC34.                                                  ATC
*                                                                        ATC
**  ATC34 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      34  *             ATC
*        MODULE - ATC34.                                   *             ATC
*            SECTION 7,  SUBSECTION 1                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 7, SUBSECTION 1 *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC34.                                                     ATC
*                                                                        ATC
*         TEST LOOP WRITE TO READ UNIT FOR ALL PATTERNS.                 ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*                      2. SET FORMAT UNIT PARAMETER 1 FOR                ATC
*                         A/D PACKED MODE.                               ATC
*                      3. SET RECORD LENGTH FOR 40B WORDS.               ATC
*         FNC 2X,3X    4. ISSUE CONNECT UNIT FUNCTION.                   ATC
*           (DDLT-2)                                                     ATC
*         FNC 4        5. ISSUE FORMAT UNIT FUNCTION AND                 ATC
*           (DDLT-3)      OUTPUT TWO PARAMETER WORDS.                    ATC
*                      6. SET LOOP 1 COUNTER TO 1.                       ATC
*                      7. SET PATTERN NUMBER TO VALUE OF                 ATC
*                         LOOP 1 COUNTER.                                ATC
*                      8. CALL PATTERN GENERATOR.                        ATC
*                                                                        ATC
*         FNC 175      9. ISSUE LWR UNIT FUNCTION.                       ATC
*           (DDLT-4)                                                     ATC
*         FNC 50      10. ISSUE WRITE FUNCTION AND OUTPUT                ATC
*           (DDLT-5)      DATA BLOCK OF CURRENT PATTERN.                 ATC
*                     11. INCREASE LOOP 1 COUNTER BY 1.                  ATC
*                     12. LOOP FROM 7 ABOVE FOR ALL DATA                 ATC
*                         PATTERNS 1 THROUGH 7.                          ATC
*                     13. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE LOW LEVEL PRODUCT OVERLAY                       ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 7 SUBSECTION 1.                                         ATC
 1 FORMAT ATC34 LOOP WRT TO RD UNIT,ALL PATTERNS.                        ATC
 5 FORMAT ATC34 STATUS ERRORS.                                           ATC
 6 FORMAT ATC34 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC34 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC34 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC34 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 34D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 4700,3210,2540,0410,6440,1150,2620,                ATC
  ,6650,2200                                                             ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
17 OB(403)=77       *INDICATE NO UNIT USED.                              ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 22         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(407)=240                                                           ATC
   OB(410)=0                                                             ATC
   OB(403)=SB(72)            *UNIT NUMBER FROM .                         ATC
   OB(402)=OB(403) + 20      *FORM CONNECT FUNCTION CODE.                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *CONNECT UNIT.                              ATC
   B5=1                      *SET FLAG NO STATUS COMPARE.                ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   B5=0                      *CLEAR FLAG.                                ATC
*                                                                        ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT.                               ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(427)=1400                                                          ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(412)=50                *40 WORD RECORD LENGTH.                     ATC
   OB(413)=1                 *PATTERN NUMBER 1.                          ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
25 CALL 981                  *GENERATE CURRENT PATTERN.                  ATC
26 GOSUB 60                                                              ATC007K
   OB(402)=175               *LOOP WRITE TO READ UNIT.                   ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(427)=1200                                                          ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   WC=50                                                                 ATC
   BA=0                                                                  ATC
   OB(402)=50                *WRITE.                                     ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   FOUT OB(402),ABT 40                                                   ATC002K
40 GOSUB 60                                                              ATC002K
   B4=OB(413)-1                                                          ATC
   OB(421)=OB(B4+440)        *BLOCK ID STATUS WORDS.                     ATC
   OB(427)=1400                                                          ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(421)=0                                                             ATC
   IF(ES.AND.RC.NE.0) GOTO 26   *REPEAT CONDITION.                       ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   OB(414)=OB(414)+1         *LOOP 1 COUNTER.                            ATC
   IF(OB(413).LE.11) GOTO 25   *RUN NEXT PATTERN.                        ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 17     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B5.EQ.0) GOTO 74       *STATUS TO BE COMPARED.                     ATC
   COPY SB TO OB(420) FOR 20                                             ATC
   IF(SB.AND.1000.EQ.0) GOTO 74   *UNIT IS CONNECTED.                    ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377   *ASSURE ERROR REPORT.                       ATC
74 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC35,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC35.                                                  ATC
*                                                                        ATC
**  ATC35 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      35  *             ATC
*        MODULE - ATC35.                                   *             ATC
*            SECTION 7,  SUBSECTION 2                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 7, SUBSECTION 2 *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC35.                                                     ATC
*                                                                        ATC
*         TEST LOOP WRITE TO READ UNIT WITH VARYING RECORD               ATC
*         LENGTHS OF DATA PATTERNS.                                      ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414      1. MASTER CLEAR CONTROLLER.                       ATC
*           (DDLT-1)                                                     ATC
*                      2. SET FORMAT UNIT PARAMETER 1 FOR                ATC
*                         A/D PACKED MODE.                               ATC
*         FNC 4        3. ISSUE FORMAT UNIT FUNCTION AND                 ATC
*           (DDLT-2)      OUTPUT TWO PARAMETER WORDS.                    ATC
*         FNC 2X,3X    4. ISSUE CONNECT UNIT FUNCTION.                   ATC
*           (DDLT-3)                                                     ATC
*                      5. SET PATTERN NUMBER FOR 1, ALL                  ATC
*                         ONES PATTERN.                                  ATC
*                      6. SET LOOP 1 COUNTER TO 1.                       ATC
*                      7. SET RECORD LENGTH TO 2 WORDS.                  ATC
*                      8. GENERATE 400B BLOCK OF ALL ONES                ATC
*                         PATTERN IN OUTPUT BUFFER (OB).                 ATC
*         FNC 175      9. ISSUE LWR UNIT FUNCTION.                       ATC
*           (DDLT-4)                                                     ATC
*         FNC 250     10. ISSUE SHORT WRITE AND OUTPUT                   ATC
*           (DDLT-5)      DATA BLOCK.                                    ATC
*                     11. INCREASE RECORD LENGTH BY 1.                   ATC
*                     12. INCREASE LOOP 1 COUNTER BY 1 AND               ATC
*                         LOOP FROM 9 UNTIL RECORD COUNT                 ATC
*                         LIMIT OF 400B WORDS IS REACHED.                ATC
*                     13. END MODULE.                                    ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 7 SUBSECTION 2.                                         ATC
 1 FORMAT ATC35 LOOPWTR UNIT VARYG RCD LENGTH.                           ATC
 5 FORMAT ATC35 STATUS ERRORS.                                           ATC
 6 FORMAT ATC35 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC35 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC35 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC35 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 35D    *CURRENT MODULE NUMBER.                     ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
17 OB(403)=77       *INDICATE NO UNIT USED.                              ATC002K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0)GOTO 22         *IF NOT GCR                          ATC002K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(407)=240                                                           ATC
   OB(410)=0                                                             ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(427)=1000                                                          ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(403)=SB(72)            *UNIT NUMBER FROM .                         ATC
   OB(402)=OB(403)+20        *FORM CONNECT UNIT CODE.                    ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *CONNECT UNIT.                              ATC
   B5=1                      *FLAG NO COMPARE OF STATUS.                 ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   B5=0                      *CLEAR FLAG.                                ATC
*                                                                        ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
   OB(412)=2                 *INITIAL WORD LENGTH.                       ATC
   DUP 7777 TO OB FOR 400    *ALL ONES PATTERN.                          ATC
   OB(413)=1                 *PATTERN NUMBER.                            ATC
*                                                                        ATC
25 WC=OB(412)                                                            ATC
   BA=0                                                                  ATC
   OB(402)=175               *LOOP WRITE TO READ UNIT.                   ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(421)=0                                                             ATC
   OB(427)=1200                                                          ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(402)=250               *SHORT WRITE.                               ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   FOUT OB(402),ABT 40                                                   ATC002K
40 GOSUB 60                                                              ATC002K
   B3=1                      *FLAG FOR BLOCK ID STATUS.                  ATC
   OB(427)=1400                                                          ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(414)=OB(414)+1         *LOOP 1 COUNTER.                            ATC
   OB(412)=OB(412)+1         *INCREASE LENGTH.                           ATC
   IF(OB(477).GT.3)GOTO 47    *IF MORE THAN 3 ERRORS EXIT                ATC000K
   IF(OB(412).LE.400) GOTO 25                                            ATC
*                                                                        ATC
47 IF(OB(477).NE.0)MSG 6(OB(477))TO DAYFILE,PRINT                        ATC000K
   DUP 0 TO OB(420) FOR 20                                               ATC
   OB(414)=0                                                             ATC
   IF(ES.AND.RM.NE.0)GOTO 17     *IF REPEAT MODULE                       ATC002K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 47   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B5.EQ.0) GOTO 74       *COMPARE ALL EXPCTD STATUSES.               ATC
   COPY SB TO OB(420) FOR 20                                             ATC
   IF(SB.AND.1000.EQ.0) GOTO 74   *UNIT IS CONNECTED.                    ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377   *ASSURE ERROR REPORT.                       ATC
74 IF(B3.EQ.0) GOTO 75       *KEEP EXPECTED BLOCK ID STATUS.             ATC
   OB(421)=SB(1)                                                         ATC
   B3=0                                                                  ATC
75 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC36,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC36.                                                  ATC
*                                                                        ATC
**  ATC36 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      36  *             ATC
*        MODULE - ATC36.                                   *             ATC
*            SECTION 7,  SUBSECTION 3                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 7, SUBSECTION 3 *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC36,ATC360,ATC361.                                       ATC
*                                                                        ATC
*         TEST LOOP WRITE TO READ UNIT WITH LONG RECORDS.                ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       A/D PACKED MODE.                                 ATC
*         FNC 4      3. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT TWO PARAMETER WORDS.                      ATC
*         FNC 2X,3X  4. ISSUE CONNECT FUNCTION.                          ATC
*           (DDLT-3)                                                     ATC
*                    5. SET PATTERN NUMBER 1 AND WORD COUNT              ATC
*                       FOR PATTERN LENGTH TO 400B.                      ATC
*                    6. SET LOOP 1 COUNTER TO 1.                         ATC
*                    7. CALL PATTERN GENERATOR.                          ATC
*         FNC 175    8. ISSUE LWR UNIT FUNCTION.                         ATC
*           (DDLT-4)                                                     ATC
*         FNC 250    9. ISSUE SHORT WRITE FUNCTION.                      ATC
*           (DDLT-5)                                                     ATC
*         OUTB CHAIN  10. OUTPUT DATA PATTERN OF 400B                    ATC
*           (DDLT-6)    WORDS USING THE CHAINING                         ATC
*                       INSTRUCTION.                                     ATC
*         OUTB                                                           ATC
*           (DDLT-7)  11. CONTINUE OUTPUT OF AN ADDITIONAL               ATC
*                       350B WORDS FROM OUTPUT BUFFER.                   ATC
*                   12. INCREASE PATTERN NUMBER BY 1.                    ATC
*                   13. INCREASE LOOP 1 COUNTER BY 1 AND                 ATC
*                       LOOP FROM STEP 7 FOR 4 TIMES. 
*                       RUNS PATTERNS 1,3,4 AND 6.
*                   14. GO TO SUBMODULE ATC361.                          ATC
*         FNC 175   15. ISSUE LWR UNIT FUNCTION.                         ATC
*           (DDLT-6)                                                     ATC
*         FNC 51    16. ISSUE WRITE TAPE MARK FUNCTION.                  ATC
*           (DDLT-7)                                                     ATC
*                   17. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
77 GOTO 20                                                               ATC
20 EXIT TO 360                                                           ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      360 *             ATC
*        MODULE - ATC360.                                  *             ATC
*            SECTION 7,  SUBSECTION 3                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 7, SUBSECTION 3 *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC360,6000,(44,54,55),LOCK                                    ATC003K
*        SECTION 7 SUBSECTION 3.                                         ATC
 1 FORMAT ATC36 LOOPWTR UNIT-LONG RECORDS.                               ATC
 5 FORMAT ATC360 STATUS ERRORS                                           ATC000K
 7 FORMAT ATC36 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC36 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC36 UNIT *OCT NOT CONNECTED.                                 ATC
   DATA (OB(416),CON) 36D   *CURRENT MODULE NUMBER.                      ATC
77 IF(ES.AND.RM.NE.0)GOTO 15                                             ATC007K
   MSG 1 TO DISPLAY,PRINT                                                ATC007K
15 OB(403)=77          *INDICATE NO UNIT USED.                           ATC007K
   GOSUB 60                                                              ATC007K
   OB(404)=1                 *FIRST SUBMODULE.                           ATC
   OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY.                      ATC
22 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(407)=240               *PACKED A/D MODE.                           ATC
   OB(410)=0                                                             ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
31 FOUT OB(402),ABT 32                                                   ATC
32 GOSUB 60                                                              ATC
   OB(427)=1000                                                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(403)=SB(72)            *UNIT NUMBER.                               ATC
   OB(402)=SB(72)+20         *FORM CONNECT UNIT CODE.                    ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *CONNECT UNIT.                              ATC
   B5=1                                                                  ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   B5=0                                                                  ATC
*                                                                        ATC
   OB(413)=1                 *LOOP COUNTER 1
23 OB(412)=400                                                           ATC
   CALL 981                  *GENERATE PATTERN.                          ATC
24 GOSUB 60                                                              ATC008K
   OB(402)=175               *LOOP WRITE TO READ UNIT.                   ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(421)=0                                                             ATC
   OB(427)=1200                                                          ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(402)=250               *SHORT WRITE.                               ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402),ABT 40                                                   ATC002K
40 GOSUB 60                                                              ATC002K
   OB(415)=1                 *LOOP COUNTER 2.                            ATC
25 BA=0                                                                  ATC
   WC=400                                                                ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   OUTB CHAIN,ABT 17         *OUTPUT CHAINED.                            ATC
   OB(415)=OB(415)+1         *INCREASE LOOP 2 COUNTER.                   ATC
*                                                                        ATC
   BA=0                                                                  ATC
   WC=350                                                                ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   DELAY 600D USEC
   OUTB,ABT 17               *OUTPUT REMAINING BLOCK.                    ATC
27 OB(427)=1400                                                          ATC
   B3=1                      *SET FLAG FOR CURRENT BLOCK ID.             ATC
   OB(420)=OB(420).AND.3777+ 4000   *SET ALERT STATUS.                   ATC
   OB(422)=4000 
   OB(424)=0
30 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(420)=OB(420).AND.3777  *ASSURE NO ALERT STATUS.                    ATC
   OB(422)=0                                                             ATC
   OB(424)=0                                                             ATC
   IF(ES.AND.RC.NE.0) GOTO 24    *REPEAT CONDITION.                      ATC
34 OB(413)=OB(413)+1         *INCREASE LOOP 1 COUNTER 
   IF(OB(413).EQ.2)GOTO 34   *BYPASS PATTERN 2
   IF(OB(413).EQ.5)GOTO 34   *BYPASS PATTERN 5
   IF(OB(413).LE.6)GOTO 23   *LOOP 1 COUNTER
*                                                                        ATC
33 EXIT TO 361                                                           ATC008K
*                                                                        ATC
17 GOSUB 60                                                              ATC
   GOTO 27                   *CONTINUE.                                  ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EM.NE.0)CALL 985     *CALL THE ERR PROCESSOR.                      ATC008K
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 63                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B5.EQ.0) GOTO 74       *STATUS TO BE COMPARED.                     ATC
   COPY SB TO OB(420) FOR 20                                             ATC
   IF(SB.AND.1000.EQ.0) GOTO 74   *UNIT IS CONNECTED.                    ATC
   MSG 11(SB(72))TO LINE 46                                              ATC000K
   OB(420)=OB(420).AND.377   *ASSURE ERROR REPORT.                       ATC
74 IF(B3.EQ.0) GOTO 75       *NO CURRENT BLOCK ID REQUIRED.              ATC
   OB(421)=SB(1).AND.7770    *EXPECTED STATUS BLOCK ID.                  ATC
   B3=0                      *ASSURE FLAG CLEARED.                       ATC
75 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76    *IF STAT COMPARE - JUMP               ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      361 *             ATC
*        MODULE - ATC361.                                  *             ATC
*            SECTION 7,  SUBSECTION 3                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 7, SUBSECTION 3 *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC361,6000,(44,54,55),LOCK                                    ATC003K
*                                                                        ATC
/      ATC36 LOOPWTR UNIT WITH LONG RECORDS.                             ATC
 5 FORMAT ATC36 STATUS ERRORS.                                           ATC
 6 FORMAT ATC36 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC36 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC36 RC-ON LC=*DEC,EC=*DEC.                                   ATC
77 RES,ABT 11                                                            ATC010K
   GOTO 12                                                               ATC010K
11 GOSUB 60         *CALL ERROR PROCESSOR                                ATC010K
12 OB(404)=2        *SUBMODULE NUMBER.                                   ATC010K
   OB(420)=SB.AND.377                                                    ATC
   OB(413)=0                                                             ATC
   OB(402)=175               *LOOP WRITE TO READ UNIT.                   ATC
   OB(406)=10           *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(421)=0                                                             ATC
   OB(427)=1200                                                          ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(402)=51                *WRITE TAPE MARK.                           ATC
   OB(406)=11           *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402),ABT 40                                                   ATC002K
40 GOSUB 60                                                              ATC002K
   IF(ES.AND.RC.NE.0)GOTO 77     *IF REPEAT CONDITION                    ATC002K
   OB(420)=OB(420).AND.357 + 20  *EXPECT TAPE/FILE MARK.                 ATC
   OB(427)=1400                                                          ATC
   B3=1                                                                  ATC
   GOSUB 70                                                              ATC
26 IF(OB(477).NE.0)MSG 6(OB(477))TO DAYFILE,PRINT                        ATC
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0) GOTO 30    *REPEAT MODULE.                         ATC
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
30 EXIT TO 360                                                           ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 26   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   IF(B3.EQ.0) GOTO 75       *NO CURRENT BLOCK ID REQUIRED.              ATC
   OB(421)=SB(1).AND.7770    *EXPECTED STATUS BLOCK ID.                  ATC
   B3=0                      *ASSURE FLAG CLEARED.                       ATC
75 OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC37,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC37.                                                  ATC
*                                                                        ATC
**  ATC37 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      37  *             ATC
*        MODULE - ATC37.                                   *             ATC
*            SECTION 7,  SUBSECTION 4                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST, SECTION 7, SUBSECTION 4 *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC37.                                                     ATC
*                                                                        ATC
*         TEST THE LOOP WRITE TO READ TCU WITH                           ATC001K
*         CODE CONVERSION SELECTED AND VARYING DATA                      ATC
*         PATTERNS.                                                      ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*         FNC 2X,3X  2. ISSUE CONNECT UNIT.                              ATC
*           (DDLT-2)                                                     ATC
*                    3. SET LOOP 1 COUNTER TO 1.                         ATC
*                    4. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       A/D PACKED MODE AND CODE                         ATC
*                       MEMORY CONVERSION 1.                             ATC
*                    5. SET FORMAT UNIT PARAMETER 2 TO                   ATC
*                       ZERO.                                            ATC
*         FNC 4      6. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-3)    OUTPUT TWO PARAMETER WORDS.                      ATC
*                    7. SET LOOP 2 COUNTER TO 1.                         ATC
*                    8. CALL PATTERN GENERATOR. LOOP 2                   ATC
*                       COUNTER CORRESPONDS TO PATTERN                   ATC
*                       NUMBER SELECTED.                                 ATC
*         FNC 175    9. ISSUE LOOP WRITE TO READ UNIT                    ATC
*           (DDLT-4)    FUNCTION.                                        ATC
*         FNC 50    10. ISSUE WRITE FUNCTION.                            ATC
*           (DDLT-5)                                                     ATC
*         OUTB CHAIN 11.OUTPUT 400B WORDS OF PATTERN USING               ATC
*           (DDLT-6)    THE CHAINING INSTRUCTION.                        ATC
*         OUTB      12. CONTINUE OUTPUT OF AN ADDITIONAL                 ATC
*           (DDLT-7)    100B WORDS FROM OUTPUT BUFFER.                   ATC
*                   13. INCREASE LOOP 2 COUNTER AND                      ATC
*                       PATTERN NUMBER.                                  ATC
*                   14. LOOP FROM STEP 8 FOR 4 TIMES. 
*                       RUNS PATTERNS 1,3,4  AND 6. 
*                   15. CLEAR LOOP 2 COUNTER.                            ATC
*                   16. INCREASE FORMAT UNIT PARAMETER 1                 ATC
*                       BY 400B, SELECT NEXT MEMORY.                     ATC
*                   17. INCREASE LOOP 1 COUNTER BY 1.                    ATC
*                   18. LOOP FROM STEP 6 FOR FOUR TIMES                  ATC
*                       TO RUN MEMORIES 1 THROUGH 4 OF                   ATC
*                       ABOVE TEST SEQUENCES.                            ATC
*                   19. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
77 GOTO 20                                                               ATC
20 EXIT TO 370                                                           ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      370 *             ATC
*        MODULE - ATC370.                                  *             ATC
*            SECTION 7,  SUBSECTION 4                      *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC370,6000,(44,54,55),LOCK                                    ATC003K
/        SECTION 7 SUBSECTION 4.                                         ATC
 1 FORMAT ATC37 LOOPWTR UNIT PATS-TRANSL.                                ATC
 5 FORMAT ATC37 STATUS ERRORS.                                           ATC
 7 FORMAT ATC37 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC37 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 37D    *CURRENT MODULE NUMBER.                     ATC
77 IF(ES.AND.RM.NE.0)GOTO 15                                             ATC007K
   MSG 1 TO DISPLAY,PRINT                                                ATC007K
15 GOSUB 60                                                              ATC007K
   OB(403)=77          *NO UNIT USED                                     ATC010K
   RES                                                                   ATC
   OB(402)=414               *MASTER CLEAR.                              ATC
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 22                                             ATC
/    *IF GCR CAPABILITY.                                                 ATC003K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(403)=SB(72)            *UNIT NUMBER.                               ATC
   OB(402)=SB(72)+20         *FORM UNIT CONNECT CODE.                    ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *CONNECT UNIT.                              ATC
   B5=1                      *FLAG NO EXPCTD STATUSES.                   ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   B5=0                                                                  ATC
*                                                                        ATC
33 EXIT TO 371          *GOTO NEXTTSUBAMODULEPRINT                       ATC008K
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B5.EQ.0) GOTO 74       *EXPCTD STATUS TO COMPARE.                  ATC
   COPY SB TO OB(420) FOR 20                                             ATC
   IF(SB.AND.1000.EQ.0) GOTO 74   *UNIT CONNECTED.                       ATC
   OB(420)=OB(420).AND.377   *ASSURE ERROR REPORT.                       ATC
74 IF(B0.EQ.0) GOTO 75       *DO NOT USE BLOCK ID STATUS.                ATC
   OB(421)=SB(1).AND.7770                                                ATC
   B0=0                      *ASSURE FLAG CLEARED.                       ATC
75 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      371 *             ATC
*        MODULE - ATC371.                                  *             ATC
*            SECTION 7,  SUBSECTION 4                      *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC371,6000,(44,54,55),LOCK                                    ATC003K
/        SECTION 7 SUBSECTION 4.                                         ATC
/    ATC37 LOOPWTR UNIT PATRNS AND TRANSL.                               ATC
 5 FORMAT ATC37 STATUS ERRORS.                                           ATC
 6 FORMAT ATC37 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC37 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC37 RC-ON LC=*DEC,EC=*DEC.                                   ATC
77 GOSUB 60                                                              ATC007K
   OB(404)=2                 *SECOND SUBMODULE.                          ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
24 OB(407)=4640              *PARAM 1 FORMAT UNIT.                       ATC
   OB(410)=0                                                             ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT.                               ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(421)=0                                                             ATC
   OB(427)=3400                                                          ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(415)=1                 *LOOP 2 COUNTER.                            ATC
25 OB(412)=400                                                           ATC
   OB(413)=OB(415)           *CURRENT PATTERN NUMBER.                    ATC
   CALL 981                  *GENERATE PATTERN.                          ATC
   GOSUB 60                                                              ATC007K
   OB(402)=175               *LOOP WRITE TO READ UNIT.                   ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(421)=0                                                             ATC
   OB(427)=3200                                                          ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
*                                                                        ATC
   OB(402)=50                *WRITE.                                     ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402),ABT 40                                                   ATC002K
40 GOSUB 60                                                              ATC002K
   WC=400                    *OUTPUT 500 OCTAL WORDS.                    ATC
   BA=0                                                                  ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
17 OUTB CHAIN,ABT 46                                                     ATC005 
   IF(ES.AND.RC.EQ.0)GOTO 27                                             ATC005 
46 GOSUB 60                                                              ATC005 
   IF(ES.AND.RC.NE.0)GOTO 17                                             ATC005 
27 BA=0                                                                  ATC002K
   WC=100                                                                ATC
   OB(406)=7            *******         *DDLT ACTION NUMBER.             ATC
   DELAY 600D USEC
42 OUTB,ABT 43                                                           ATC005 
   IF(ES.AND.RC.EQ.0)GOTO 44                                             ATC005 
43 GOSUB 60                                                              ATC005 
   IF(ES.AND.RC.NE.0)GOTO 42                                             ATC005 
44 B0=1                 *RETAIN BLOCK ID EXPECTED STATUS                 ATC005 
   OB(427)=3400                                                          ATC
   OB(420)=OB(420).AND.3777 + 4000   *SHOW ALERT STATUS.                 ATC
   OB(422)=4000 
   OB(424)=0
30 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(420)=OB(420).AND.3777  *ASSURE NO ALERT STATUS.                    ATC
   OB(422)=0                                                             ATC
   OB(424)=0                                                             ATC
32 OB(415)=OB(415)+1         *INCREASE LOOP 2 COUNTER 
   IF(OB(415).EQ.2)GOTO 32   *BYPASS PATTERN 2
   IF(OB(415).EQ.5)GOTO 32   *BYPASS PATTERN 5
   IF(OB(415).LE.6)GOTO 25   *LOOP 2 COUNTER
   OB(415)=0                                                             ATC
   OB(407)=OB(407)+400     *SELECT NEXT TRANSLATION MEMORY.              ATC
   OB(414)=OB(414)+1         *INCREASE COUNTER 1.                        ATC
   IF(OB(414).LE.4) GOTO 24  *LOOP 4 TIMES.                              ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   OB(414)=0                                                             ATC
   IF(ES.AND.RM.NE.0) GOTO 31   *REPEAT MODULE.                          ATC
   EXIT                      *EXIT MODULE.                               ATC
31 EXIT TO 370                                                           ATC
*                                                                        ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE. THIS SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B0.EQ.0) GOTO 75       *DO NOT USE BLOCK ID STATUS.                ATC
   OB(421)=SB(1).AND.7770                                                ATC
   B0=0                      *ASSURE FLAG CLEARED.                       ATC
75 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76    *IF STAT COMPARE - JUMP               ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC38,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC38.                                                  ATC
*                                                                        ATC
**  ATC38 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      38  *             ATC
*        MODULE - ATC38.                                   *             ATC
*            SECTION 10, SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 10 SUBSECTION 0. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC38.                                                     ATC
*                                                                        ATC
*         TEST OF BLOCK ID STATUS VALUES GENERATED BY EACH               ATC
*         OF FOUR PATTERNS WITH TEN DIFFERENT WORD LENGTHS               ATC
*         FOR EACH PATTERN.                                              ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    2. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       PACKED A/D MODE.                                 ATC
*                    3. SET LOOP 1 COUNTER TO 1.                         ATC
*                       SET LOOP 2 COUNTER TO 1.                         ATC
*                    4. SET FORMAT UNIT PARAMETER 2                      ATC
*                       TO ZERO.                                         ATC
*         FNC 4      5. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT TWO PARAMETER WORDS.                      ATC
*                    6. SET PATTERN WORD COUNT LIMIT                     ATC
*                       TO 100B WORDS.                                   ATC
*                    7. CALL PATTERN GENERATOR.                          ATC
*                    8. SET I/O WORD LENGHT TO 10 WORDS.                 ATC
*                    9. SET LOOP WRITE TO READ TCU                       ATC
*                       PARAMETER WORD FOR GCR, 200 IPS                  ATC
*                       RECORDING MODE IF P4 EQUALS 1. IF 
*                       P4 EQUALS ZERO PHASE, 200 IPS MODE. 
*         FNC 75    10. ISSUE LWR TCU FUNCTION AND OUTPUT                ATC
*           (DDLT-3)    ITS PARAMETER WORD.                              ATC
*         FNC 50    11. ISSUE WRITE FUNCTION AND OUTPUT                  ATC
*           (DDLT-4)    THE DATA PATTERN BLOCK.                          ATC
*                   12. COMPARE EXPECTED BLOCK ID STATUS                 ATC
*                       WITH ACTUAL STATUS RECEIVED.                     ATC
*                       EXPECTED BLOCK ID VALUES ARE FOUND               ATC
*                       FROM PRESTORED CONSTANTS IN THE                  ATC
*                       OUTPUT BUFFER. THESE CONSTANTS                   ATC
*                       USE LOOP COUNTER 2 AS AN INDEX FOR               ATC
*                       THE STATUS COMPARE TERMS.                        ATC
*                   13. INCREASE RECORD LENGTH WORD COUNT                ATC
*                       BY 3.                                            ATC
*                   14. INCREASE LOOP 2 COUNTER BY 1 AND                 ATC
*                       LOOP FROM STEP 10 FOR 10 PASSES.                 ATC
*                   15. RESET LOOP 2 COUNTER TO 1.                       ATC
*                   16. INCREASE PATTERN NUMBER BY 1.                    ATC
*                   17. INCREASE LOOP 1 COUNTER BY 1 AND                 ATC
*                       LOOP FROM 7 FOR 4 PASSES THROUGH                 ATC
*                       THE PATTERNS 1 TO 4.                             ATC
*                   18. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*        SECTION 10, SUBSECTION 0.                                       ATC
 1 FORMAT ATC38 TEST BLOCK ID.                                           ATC
 5 FORMAT ATC38 STATUS ERRORS.                                           ATC
 6 FORMAT ATC38 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC38 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC38 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 38D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(1),CON) 11,23,35,47                                          ATC
   DATA (OB(12),CON) 1470,1220,5600,5170,1170,2270,2510,                 ATC
  ,4540,6610,3010                                                        ATC
   DATA (OB(24),CON) 1300,7720,7340,3030,3510,6730,3500,                 ATC
  ,6530,2550,5610                                                        ATC
   DATA (OB(36),CON) 4710,1410,4200,2640,2140,0150,4160,                 ATC
  ,5240,6450,2650                                                        ATC
   DATA (OB(50),CON) 1110,0130,0330,6740,4220,5340,5600,                 ATC
  ,6560,4270,4140                                                        ATC
77 COPY OB TO IB FOR 62 
17 MSG 1 TO DISPLAY,PRINT                                                ATC
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   OB(402)=414                                                           ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
20 FUNC OB(402),ABT 30       *MASTER CLEAR.                              ATC
   GOTO 30                                                               ATC
21 OB(420)=1000              *EXPCTD STAT WD 1.                          ATC
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY.                      ATC
22 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(414)=1                 +LOOP 1 COUNTER.                            ATC
   OB(415)=1                 *LOOP 2 COUNTER.                            ATC
   OB(413)=1                 *INITIAL PATTERN NUMBER.                    ATC
23 WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(407)=240               *PACKED A/D MODE,PARAM 1.                   ATC
   OB(410)=0                                                             ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND PARAMS.                 ATC
   OB(421)=0                 *CLEAR EXPCTD STATUS WORD 2.                ATC
   OB(427)=1000              *EXPCTD STAT WD 8.                          ATC
   GOSUB 70                  *STATUS AND COMPARE.                        ATC
   OB(412)=100               *TOTAL WORD COUNT 100 WORDS.                ATC
   CALL 981                  *GENERATE PATTERN.                          ATC
   GOSUB 60                                                              ATC008K
   OB(412)=12                *INITIAL WORD COUNT 10 WORDS.               ATC
24 OB(411)=754               *200 IPS PHASE 
   IF(P4.AND.1.NE.0)OB(411)=350  *200 IPS, GCR MODE 
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(402)=75                *LOOP WTR TCU.                              ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(421)=0                                                             ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).AND.6000+75                                           ATC
   IF (P4.AND.1.NE.0) GOTO 26   *IF GCR 
   OB(432)=OB(432).AND.6000+45
26 GOSUB 70                  *STATUS AND COMPARE
   WC=OB(412)                                                            ATC
   BA=0                                                                  ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION AND OUTPUT.                 ATC
*                                                                        ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.6000                                              ATC
   B4=OB(414)                                                            ATC
   B4=IB(B4)+OB(415)                                                     ATC
   OB(421)=IB(B4)                                                        ATC
   GOSUB 70                  *STATUS AND OUTPUT.                         ATC
   OB(412)=OB(412)+3         *INCREASE LENGTH BY 3 WORDS.                ATC
   OB(415)=OB(415)+1         *INCREASE LOOP 2 COUNTER.                   ATC
   IF(OB(415).LE.10D) GOTO 24   *LOOP 10 TIMES.                          ATC
   OB(415)=1                 *RESET LOOP 2 COUNTER.                      ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.4) GOTO 23  *LOOP FOR FOUR PATTERNS.                    ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
   EXIT                                                                  ATC
*                                                                        ATC
30 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 20                                            ATC
   GOTO 21                                                               ATC
*                                                                        ATC
40 FOUT OB(402),ABT 42                                                   ATC
42 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
*                                                                        ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76   *IF STAT COMPARE - JUMP                ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC39,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC39.                                                  ATC
*                                                                        ATC
**  ATC39 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      39  *             ATC
*        MODULE - ATC39.                                   *             ATC
*            SECTION 11, SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 11 SUBSECTION 0. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC39.                                                     ATC
*                                                                        ATC
*         TEST OF CONTROLLER DETAILED STATUS RESPONSE.                   ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*         FNC 2X,3X  2. ISSUE CONNECT UNIT FUNCTION.                     ATC
*           (DDLT-2)                                                     ATC
*         FNC 12     3. ISSUE GENERAL STATUS FUNCTION.                   ATC
*           (DDLT-3)                                                     ATC
*         STATUS     4. INPUT 16 WORDS OF GENERAL STATUS.                ATC
*           (DDLT-4)                                                     ATC
*                    5. MOVE GENERAL STATUS BUFFER TO                    ATC
*                       EXPECTED STATUS BUFFER STARTING                  ATC
*                       WITH STATUS WORD 3 (DETAILED                     ATC
*                       STATUS).                                         ATC
*                    6. SET LOOP 1 COUNTER TO 1.                         ATC
*         FNC 112    7. ISSUE DETAILED STATUS FUNCTION.                  ATC
*           (DDLT-5)                                                     ATC
*         STATUS     8. INPUT 14 WORDS OF DETAILED STATUS.               ATC
*           (DDLT-6)                                                     ATC
*                     (TO BE DISPLAYED IN WORDS 3 THRU 16)               ATC009K
*                    9. COMPARE THE DETAILED STATUS                      ATC
*                       OBTAINED IN THE INITIAL GENERAL                  ATC
*                       STATUS BLOCK WITH THE FNC 112                    ATC
*                       RESULTS.                                         ATC
*                   10. INCREASE LOOP 1 COUNTER AND REPEAT               ATC
*                       FROM STEP 7 FOR 10 TIMES.                        ATC
*                   11. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*        ANY STATUS COMPARISON ERRORS AFTER A FUNCTION                   ATC009K
*        OR OTHER OPERTION HAS BEEN COMPLETED.                           ATC009K
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 11, SUBSECTION 0.                                       ATC
 1 FORMAT ATC39 TEST DETAILED STATUS.                                    ATC
 5 FORMAT ATC39 STATUS ERRORS.                                           ATC
 6 FORMAT ATC39 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC39 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC39 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 39D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
17 OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50          *MASTER CLEAR FUNCTION                              ATC006K
20 OB(420)=1000              *EXPECTED STAT WORD 1.                      ATC
   IF(P4.AND.1.EQ.0) GOTO 21                                             ATC
/    *IF GCR CAPABILITY.                                                 ATC003K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
21 GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
   OB(403)=SB(72)            *UNIT NUMBER FROM .                         ATC
   OB(402)=OB(403)+20        *FORM UNIT CONNECT CODE.                    ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
22 GOSUB 50                  *CONNECT UNIT.                              ATC
23 OB(402)=12                *GENERAL STATUS FUNCTION.                   ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(406)=104          *******         *DDLT ACTION NUMBER              ATC003K
   STATUS 20 WORDS TO SB,ABT 31   *INPUT STATUS.                         ATC
   COPY SB TO OB(420) FOR 20  *GENERAL STATUS TO OB.                     ATC
   GOTO 31                                                               ATC
30 OB(414)=1                 *LOOP 1 COUNTER.                            ATC
24 OB(402)=112               *DETAILED STATUS FUNCTION.                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 53                  *OBTAIN DETAILED STATUS.                    ATC
36 B0=16                                                                 ATC
   COMPARE SB(2)TO OB(422)FOR B0,ABT 35                                  ATC007K
25 OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.10D) GOTO 24   *LOOP 10 TIMES.                          ATC
   OB(414)=0                                                             ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
   EXIT                                                                  ATC
*                                                                        ATC
31 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 23                                            ATC
   GOTO 30                                                               ATC
*                                                                        ATC
35 OB(420)=7777              *INDICATE NO COMPARE.                       ATC
   OB(421)=7777                                                          ATC
   OB(417)=7777                                                          ATC007K
   ERROR 5/115 GOSUB 60                *ERROR NUMBER 115.                ATC
   IF(ES.AND.RC.NE.0) GOTO 24  *REPEAT CONDITION.                        ATC
   GOTO 25                   *CONTINUE.                                  ATC
*                                                                        ATC
50 FUNC OB(402),ABT 52                                                   ATC006K
   IF(OB(402).NE.12)GOTO 52   *IF NOT A STATUS FUNCTION                  ATC006K
   OB(417)=7777            *FLAF CURRENT STATUS TAKEN                    ATC006K
52 GOSUB 60                  *REPORT ERROR.                              ATC
   IF(ES.AND.RC.NE.0)GOTO 50                                             ATC006K
   OB(417)=0                 *CLEAR FLAG.                                ATC
   RETURN                                                                ATC
*                                                                        ATC
53 FUNC OB(402),ABT 55    *ISSUE THE CURRENT FUNCTION.                   ATC010K
54 OB(417)=7777           *SET CURRENT STATUS TAKEN FLAG.                ATC010K
   OB(406)=106          *******         *DDLT ACTION NUMBER              ATC003K
   STATUS 16 WORDS TO SB(2),ABT 55     *DETAILED STATUS.                 ATC007K
55 GOSUB 60                                                              ATC
   OB(406)=5        *******  *RESET ACTION NUMBER ON REPEAT.             ATC
   IF(ES.AND.RC.NE.0)GOTO 53    *REPEAT CONDITION                        ATC003K
   OB(417)=0                 *CLEAR FLAG.                                ATC
   RETURN                                                                ATC
*                                                                        ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EM.NE.0)CALL 985    *CALL ERROR PROCESSOR                          ATC002K
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985    *CALL ERROR PROCESSOR                          ATC002K
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
*                                                                        ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12, ABT 73          *SUBROUTINE FOR DETAILED STATUS.             ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC40,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC40.                                                  ATC
*                                                                        ATC
**  ATC40 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      40  *             ATC
*        MODULE - ATC40.                                   *             ATC
*            SECTION 11, SUBSECTION 1                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 11 SUBSECTION 1. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC40.                                                     ATC
*                                                                        ATC
*         TEST OF UNIT STATUS FUNCTION RESPONSE.                         ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414    1. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*         FNC 2X,3X  2. ISSUE CONNECT FUNCTION.                          ATC
*           (DDLT-2)                                                     ATC
*         FNC 12     3. ISSUE GENERAL STATUS FUNCTION.                   ATC
*           (DDLT-3)                                                     ATC
*         STATUS     4. INPUT 16 WORDS OF GENERAL STATUS.                ATC
*           (DDLT-4)                                                     ATC
*                    5. MOVE GENERAL STATUS BUFFER TO                    ATC
*                       EXPECTED STATUS BUFFER STARTING                  ATC
*                       WITH STATUS WORD 11 (UNIT                        ATC
*                       STATUS).                                         ATC
*                    6. SET LOOP 1 COUNTER TO 1.                         ATC
*         FNC 212    7. ISSUE UNIT STATUS FUNCTION.                      ATC
*           (DDLT-5)                                                     ATC
*         STATUS     8. INPUT 6 WORDS OF UNIT STATUS.                    ATC
*           (DDLT-6)                                                     ATC
*                     (TO BE DISPLAYED IN WORDS 11 THRU 16)              ATC009K
*                    9. COMPARE THE UNIT STATUS                          ATC
*                       OBTAINED IN THE INITIAL GENERAL                  ATC
*                       STATUS BLOCK WITH THE FNC 212                    ATC
*                       RESULTS.                                         ATC
*                   10. INCREASE LOOP 1 COUNTER AND REPEAT               ATC
*                       FROM STEP 7 FOR 10 TIMES.                        ATC
*                   11. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC009K
*        ANY STATUS COMPARISON ERRORS AFTER A FUNCTION                   ATC009K
*        OR OTHER OPERTION HAS BEEN COMPLETED.                           ATC009K
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 11, SUBSECTION 1.                                       ATC
 1 FORMAT ATC40 TEST UNIT STATUS.                                        ATC
 5 FORMAT ATC40 STATUS ERRORS.                                           ATC
 6 FORMAT ATC40 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC40 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC40 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 40D    *CURRENT MODULE NUMBER.                     ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
17 OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50           *SEND FUNCTION                                     ATC006K
20 OB(420)=1000              *EXPECTED STAT WORD 1.                      ATC
   IF(P4.AND.1.EQ.0) GOTO 21                                             ATC
/    *IF GCR CAPABILITY.                                                 ATC003K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
21 GOSUB 70                  *OBTAIN STATUS AND CHECK.                   ATC
   OB(403)=SB(72)            *UNIT NUMBER.                               ATC
   OB(402)=SB(72)+20         *FORM UNIT CONNECT CODE.                    ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
22 FUNC OB(402),ABT 40                                                   ATC003K
40 GOSUB 60                                                              ATC003K
   IF(ES.AND.RC.NE.0)GOTO 22   *REPEAT CONDITION                         ATC003K
23 OB(402)=12                *GENERAL STATUS FUNCTION.                   ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(406)=104          *******         *DDLT ACTION NUMBER              ATC003K
   STATUS 20 WORDS TO SB,ABT 31   *INPUT STATUS.                         ATC
   COPY SB TO OB(420) FOR 20  *GENERAL STATUS TO OB.                     ATC
   GOTO 31                                                               ATC
30 OB(414)=1                 *LOOP 1 COUNTER.                            ATC
24 OB(402)=212               *UNIT STATUS FUNCTION.                      ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 53                  *OBTAIN DETAILED STATUS.                    ATC
36 B0=6                                                                  ATC
   COMPARE SB(12)TO OB(432)FOR B0,ABT 35                                 ATC007K
25 OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.10D) GOTO 24   *LOOP 10 TIMES.                          ATC
   OB(414)=0                                                             ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   EXIT                                                                  ATC
*                                                                        ATC
31 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 23                                            ATC
   GOTO 30                                                               ATC
*                                                                        ATC
35 DUP 7777 TO OB(420) FOR 12       *INDICATE NO COMPARES.               ATC
   OB(417)=7777                                                          ATC007K
   ERROR 5/116 GOSUB 60                *ERROR NUMBER 116.                ATC
   IF(ES.AND.RC.NE.0) GOTO 24  *REPEAT CONDITION.                        ATC
   GOTO 25                   *CONTINUE.                                  ATC
*                                                                        ATC
50 FUNC OB(402),ABT 52                                                   ATC006K
   IF(OB(402).NE.12)GOTO 52   *IF NOT A STATUS FUNCTION                  ATC006K
   OB(417)=7777            *FLAF CURRENT STATUS TAKEN                    ATC006K
52 GOSUB 60                  *REPORT ERROR.                              ATC
   IF(ES.AND.RC.NE.0)GOTO 50                                             ATC006K
   OB(417)=0                 *CLEAR FLAG.                                ATC
   RETURN                                                                ATC
*                                                                        ATC
53 FUNC OB(402),ABT 55    *ISSUE THE CURRENT FUNCTION.                   ATC010K
54 OB(417)=7777           *SET CURRENT STATUS TAKEN FLAG.                ATC010K
   OB(406)=106          *******         *DDLT ACTION NUMBER              ATC003K
   STATUS 6 WORDS TO SB(12),ABT 55     *DETAILED STATUS.                 ATC007K
55 GOSUB 60                                                              ATC
   OB(406)=5        *******  *RESET ACTION NUMBER ON REPEAT.             ATC
   IF(ES.AND.RC.NE.0)GOTO 53   *REPEAT CONDITON                          ATC003K
   OB(417)=0                 *CLEAR FLAG.                                ATC
   RETURN                                                                ATC
*                                                                        ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EM.NE.0)CALL 985    *CALL ERROR PROCESSOR                          ATC002K
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985    *CALL ERROR PROCESSOR                          ATC002K
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
*                                                                        ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73            *ISSUE STATUS FUNCTION.                     ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777  SET CURRENT STATUS TAKEN FLAG.                          ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70             *REPEAT CONDITION.             ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC41,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC41.                                                  ATC
*                                                                        ATC
**  ATC41 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      41  *             ATC
*        MODULE - ATC41.                                   *             ATC
*            SECTION 12, SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 12 SUBSECTION 0. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC41.                                                     ATC
*                                                                        ATC
*         TEST SINGLE TRACK ERROR CORRECTION BY FORCING                  ATC
*         DATA ERRORS IN EACH TRACK.                                     ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*                    1. SET LOOP 1 COUNTER TO ZERO.                      ATC
*         FNC 414    2. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    3. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       A/D PACKED MODE.                                 ATC
*                    4. FORMAT UNIT PARAMETER 2 IS SET FOR               ATC
*                       ZERO.                                            ATC
*         FNC 4      5. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT TWO PARAMETER WORDS.                      ATC
*                    6. SET WORD LENGTH FOR 74B WORDS.                   ATC
*                       SET PATTERN NUMBER TO 4, ALTERNATING             ATC
*                       ONES PATTERN.                                    ATC
*                    7. CALL PATTERN GENERATOR.                          ATC
*                    8. SET B4 NON-ZERO FOR FLAG OF FIRST                ATC
*                       PASS THROUGH FORCE ERROR LOOP.                   ATC
*                    9. SET RECORD LENGTH TO 34B WORDS                   ATC
*                       ON THE FIRST PASS.                               ATC
*                   10. SET LOOP WRITE TO READ TCU                       ATC
*                       PARAMETER 3 FOR GCR, 200 IPS.                    ATC
*         FNC 75    11. ISSUE LWR TCU FUNCTION AND OUTPUT                ATC
*           (DDLT-3)    ITS PARAMETER WORD.                              ATC
*                   12. SET TRACK NUMBER BIT FOR ERROR                   ATC
*                       FORCING PARAMETER WORD. TRACK BIT IS             ATC
*                       FORMED BY LOOP 1 COUNTER USED AS                 ATC
*                       SHIFT COUNTER FOR A SINGLE BIT PLACED            ATC
*                       IN THE APPROPRIATE TRACK POSITION.               ATC
*                       ALSO SET BIT 9 OF THE PARAMETER WORD             ATC
*                       TO FORCE ENTIRE BLOCK ERROR.                     ATC
*         FNC 77    13. ISSUE FORCE ERROR FUNCTION AND OUTPUT            ATC
*           (DDLT-4)    THE TRACK IN ERROR PARAMETER.                    ATC
*         FNC 50    14. ISSUE WRITE FUNCTION AND OUTPUT                  ATC
*           (DDLT-5)    DATA PATTERN BLOCK.                              ATC
*                   15. CHECK IF FIRST PASS COMPLETED. IF                ATC
*                       COMPLETED CLEAR PASS FLAG REGISTER               ATC
*                       B4 AND RESET WORD LENGTH TO 74B WORDS.           ATC
*                       REPEAT FROM STEP 10 FOR SECOND PASS.             ATC
*                   16. IF SECOND PASS WAS COMPLETED,                    ATC
*                       INCREASE LOOP 1 COUNTER BY 1 (USED               ATC
*                       AS SUBSECTION COUNTER IN DISPLAY),               ATC
*                       AND GO TO STEP 2. NEXT TRACK IN                  ATC
*                       ERROR SEQUENCE. THIS IS REPEATED                 ATC
*                       FOR ALL TRACKS 1 THROUGH 9.                      ATC
*                   17. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*        SECTION 12, SUBSECTIONS 0 THRU 10.                              ATC
 1 FORMAT ATC41 SNGL TRK CORR SUBSEC *OCT.                               ATC
 5 FORMAT ATC41 STATUS ERRORS.                                           ATC
 6 FORMAT ATC41 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC41 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC41 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 41D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 6770,5600                                          ATC
77 IF(P4.AND.1.EQ.0)GOTO 36    *BYPASS MODULE IF NOT GCR* 
   MSG 1 TO DISPLAY,PRINT 
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
20 RES,ABT 17                                                            ATC004K
17 GOSUB 60                                                              ATC004K
21 OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
24 FUNC OB(402),ABT 25                                                   ATC
25 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0)GOTO 24                                             ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY.                      ATC
22 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=4                 *FORMAT UNIT.                               ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   OB(407)=240               *A/D MODE 1, PACKED.                        ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   GOSUB 52                                                              ATC
   OB(427)=1000                                                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(412)=74                *60 WORDS MAXIMUM WORD COUNT.               ATC
   OB(413)=4                 *PATTERN NUMBER 4.                          ATC
   CALL 981                  *GENERATE PATTERN.                          ATC
   GOSUB 60                                                              ATC008K
   B4=1                      *SET INITIAL PASS FLAG.                     ATC
   OB(412)=34                *28 WORDS INITIAL WORD COUNT.               ATC
30 OB(411)=350               *GCR, 200 IPS.                              ATC
*                                                                        ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(402)=75                *LOOP TCU FUNCTION.                         ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).AND.6000 + 75                                         ATC
   OB(421)=0                                                             ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   B0=1                      *BIT FOR SHIFT OPERATION.                   ATC
   OB(460)=B0.LS.OB(414)+1000   *SHIFT BIT TO TRACK.                     ATC
   BA=460                                                                ATC
   WC=1                                                                  ATC
   OB(402)=77                *SELECT KILL TRACK FUNCTION.                ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   WC=OB(412)                                                            ATC
   BA=0                                                                  ATC
   OB(402)=50                *WRITE.                                     ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(421)=OB(B4 + 440)                                                  ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.6000                                              ATC
   OB(420)=1000                                                          ATC
   OB(426)=OB(460).AND.777                                               ATC
   IF(B4.EQ.0) GOTO 32       *JUMP ON SECOND PASS.                       ATC
   IF(OB(414).NE.3) GOTO 34   *SINGLE ERROR CORR STAT EXP.               ATC
   OB(423)=0                 *CLEAR STATUS WORD 4.                       ATC
   GOTO 33                                                               ATC
34 OB(423)=OB(460).AND.7000                                              ATC
   GOTO 33                                                               ATC
32 OB(423)=OB(460)                                                       ATC
33 GOSUB 70                                                              ATC
*                                                                        ATC
   IF(B4.EQ.0) GOTO 31       *CHECK IF INITIAL LOOP COMPLETE             ATC
   B4=0                      *CLEAR PASS FLAG.                           ATC
   OB(412)=74                *CHANGE TO NEW LENGTH.                      ATC
   OB(421)=0                                                             ATC
   OB(420)=1000              *RESTORE NORMAL STATUS.                     ATC
   OB(423)=0                                                             ATC
   OB(426)=0                                                             ATC
   GOTO 30                   *REPEAT KILL TRACK WRITES.                  ATC
31 DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPECTD STATUS BUFF.             ATC
   IF(ES.AND.RC.NE.0) GOTO 20   *REPEAT SUBSECTION.                      ATC
   OB(414)=OB(414)+1         *INCREASE SUBSECTION NUMBER.                ATC
   IF(OB(414).LE.10) GOTO 20    *RUN NEXT SUBSECTION.                    ATC
35 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
36 EXIT 
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 63                                                               ATC
65 IF(EM.NE.0)CALL 985    *CALL THE ERR PROCESSOR                        ATC008K
   IF(OB(477).GT.4)GOTO 35       *IF ERR COUNT GT 4 EXIT                 ATC009K
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
************************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB, ABT 73                                         ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76   *IF STAT COMPARE - JUMP                ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC42,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC42.                                                  ATC
*                                                                        ATC
**  ATC42 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      42  *             ATC
*        MODULE - ATC42.                                   *             ATC
*            SECTION 13, SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 13 SUBSECTION 0. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC42.                                                     ATC
*                                                                        ATC
*         FORCE ERRORS IN TWO TRACKS AT A TIME.                          ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*                    1. SET LOOP 1 COUNTER TO ZERO.                      ATC
*         FNC 414    2. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    3. SET FORMAT UNIT 1 PARAMETER FOR                  ATC
*                       A/D PACKED MODE.                                 ATC
*                    4. FORMAT UNIT PARAMETER 2 IS SET                   ATC
*                       FOR ZEROS.                                       ATC
*         FNC 4      5. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT TWO PARAMETER WORDS.                      ATC
*                    6. SET WORD LENGTH FOR 74B WORDS.                   ATC
*                       SET PATTERN NUMBER TO 4, ALTERNATING             ATC
*                       ONES PATTERN.                                    ATC
*                    7. CALL PATTERN GENERATOR.                          ATC
*                    8. SET B4 NON-ZERO FOR FLAG OF FIRST                ATC
*                       PASS THROUGH FORCE ERROR LOOP.                   ATC
*                    9. SET RECORD LENGTH TO 34B WORDS                   ATC
*                       ON THE FIRST PASS.                               ATC
*                   10. SET LOOP WRITE TO READ TCU                       ATC
*                       PARAMETER 3 FOR GCR, 200 IPS.                    ATC
*         FNC 75    11. ISSUE LWR TCU FUNCTION AND OUTPUT                ATC
*           (DDLT-3)    ITS PARAMETER WORD.                              ATC
*                   12. SET TRACK NUMBER BITS FOR ERROR                  ATC
*                       FORCING PARAMETER WORD. TRACK 1 BIT              ATC
*                       AND SECOND TRACK BIT SET BY USING                ATC
*                       LOOP 1 COUNTER AS A SHIFT COUNTER                ATC
*                       TO MOVE A SINGLE BIT FROM TRACKS 2               ATC
*                       THROUGH TRACK 9 POSITION FORM THE                ATC
*                       PARAMETER WORD.                                  ATC
*                       ALSO SET BIT 9 OF THE PARAMETER WORD             ATC
*                       TO FORCE ENTIRE BLOCK ERROR.                     ATC
*         FNC 77    13. ISSUE FORCE ERROR FUNCTION AND                   ATC
*           (DDLT-4)    OUTPUT THE TRACK IN ERROR PARAMETER.             ATC
*         FNC 50    14. ISSUE WRITE FUNCTION AND OUTPUT                  ATC
*           (DDLT-5)    DATA PATTERN BLOCK.                              ATC
*                   15. CHECK IF FIRST PASS COMPLETED. IF                ATC
*                       COMPLETED CLEAR PASS FLAG REGISTER               ATC
*                       B4 AND RESET WORD LENGTH TO 74B WORDS.           ATC
*                       REPEAT FROM STEP 10 FOR SECOND PASS.             ATC
*                   16. IF SECOND PASS WAS COMPLETED,                    ATC
*                       INCREASE LOOP 1 COUNTER BY 1 (USED               ATC
*                       AS SUBSECTION COUNTER IN DISPLAY),               ATC
*                       AND GO TO STEP 2. NEXT TRACK IN                  ATC
*                       ERROR SEQUENCE. THIS IS REPEATED                 ATC
*                       FOR ALL TRACKS 1 THROUGH 9.                      ATC
*                   17. END MODULE.                                      ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
          NONE                                                           ATC003K
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
/        SECTION 13, SUBSECTION 0 THRU 7.                                ATC
 1 FORMAT ATC42 DUAL TRACK ERRORS.                                       ATC
 2 FORMAT ATC42 START SUBSEC *OCT.                                       ATC
 5 FORMAT ATC42 STATUS ERRORS.                                           ATC
 6 FORMAT ATC42 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC42 DOES NOT EXECUTE ON NON GCR CONTROLLER
   DATA (OB(416),CON) 42D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 6770,5600                                          ATC
77 IF(P4.AND.1.NE.0)GOTO 75    *BYPASS MODULE IF NOT GCR* 
   MSG 7 TO DISPLAY, PRINT
   EXIT 
75 MSG 1 TO DISPLAY,PRINT 
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(414)=0                 *INITIAL SUBSECTION NUMBER.                 ATC
20 MSG 2 (OB(414)) TO DISPLAY,PRINT                                      ATC
   RES,ABT 60                                                            ATC007K
21 OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 22                                             ATC
/    *IF GCR CAPABILITY.                                                 ATC003K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(407)=240               *A/D MODE 1 (PACKED).                       ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT.                               ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(427)=1000                                                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(412)=74                *60 WORDS MAXIMUM WORD COUNT.               ATC
   OB(413)=4                 *PATTERN NUMBER 4.                          ATC
   CALL 981                  *GENERATE PATTERN.                          ATC
   RES,ABT 60                                                            ATC007K
   B4=1                      *SET INITIAL PASS FLAG.                     ATC
   OB(412)=34                *28 WORDS INITIAL WORD COUNT.               ATC
30 OB(411)=350               *GCR, 200 IPS.                              ATC
*                                                                        ATC
   OB(402)=75                *LOOP TCU FUNCTION.                         ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).AND.6000 + 75                                         ATC
   OB(421)=0                                                             ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   B0=2                      *BIT FOR SHIFT OPERATION.                   ATC
   OB(460)=B0.LS.OB(414)+1001   *SHIFT BIT ADD SECOND BIT.               ATC
   OB(402)=77                *SELECT KILL TRACK FUNCTION.                ATC
   WC=1                                                                  ATC
   BA=460                                                                ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   WC=OB(412)                                                            ATC
   BA=0                                                                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(421)=OB(B4 + 440)                                                  ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.6000                                              ATC
   OB(420)=5000              *SHOW ALERT STATUS.                         ATC
   OB(426)=OB(460).AND.777                                               ATC
   IF(B4.EQ.0) GOTO 32       *JUMP ON SECOND PASS.                       ATC
   OB(423)=2000                                                          ATC
   GOTO 33                                                               ATC
32 OB(423)=OB(460).AND.777+2000   *DUAL TRACK CORR STATUS.               ATC
33 GOSUB 70                                                              ATC
*                                                                        ATC
   IF(B4.EQ.0) GOTO 31       *CHECK IF INITIAL LOOP COMPLETE             ATC
   B4=0                      *CLEAR PASS FLAG.                           ATC
   OB(412)=74                *CHANGE TO NEW LENGTH.                      ATC
   OB(421)=0                                                             ATC
   OB(420)=1000              *RESTORE NORMAL STATUS.                     ATC
   OB(423)=0                                                             ATC
   OB(426)=0                                                             ATC
   GOTO 30                   *REPEAT KILL TRACK WRITES.                  ATC
31 DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   OB(414)=OB(414)+1         *INCREASE SUBSECTION NUMBER.                ATC
   IF(OB(414).LE.7) GOTO 20     *RUN NEXT SUBSECTION.                    ATC
40 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
60 CALL 985              *GOTO FULL DISPLAY                              ATC003K
   IF(OB(477).GT.4)GOTO 40   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
63 RES,ABT 60                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   RETURN          *EXIT SUBROUTINE                                      ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC43,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC43.                                                  ATC
*                                                                        ATC
**  ATC43 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      43  *             ATC
*        MODULE - ATC43.                                   *             ATC
*            SECTION 14, SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 14 SUBSECTION 0. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC43.                                                     ATC
*                                                                        ATC
*         FORCE SINGLE TRACK ERRORS WITH 9 TRACK PHASE                   ATC
*         ENCODED DATA.                                                  ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*                    1. SET LOOP 1 COUNTER TO ZERO.                      ATC
*         FNC 414    2. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    3. SET FORMAT UNIT 1 PARAMETER FOR                  ATC
*                       A/D PACKED MODE.                                 ATC
*                    4. FORMAT UNIT 2 PARAMETER IS SET FOR               ATC
*                       ZEROS.                                           ATC
*         FNC 4      5. ISSUE FORMAT UNIT FUNCTION AND                   ATC
*           (DDLT-2)    OUTPUT THE TWO PARAMETER WORDS.                  ATC
*                    6. GENERATE 74 WORDS OF ONES PATTERN.               ATC001K
*                    7. (NOT USED)                                       ATC006K
*                    8. SET B4 NON-ZERO FOR FLAG OF FIRST                ATC
*                       PASS THROUGH FORCE ERROR LOOP.                   ATC
*                    9. SET RECORD LENGTH TO 34B WORDS                   ATC
*                       ON THE FIRST PASS.                               ATC
*                   10. SET LOOP WRITE TO READ TCU                       ATC
*                       PARAMETER 3 FOR PHASE ENCODED,                   ATC
*                       200 IPS RECORDING MODE.                          ATC
*         FNC 75    11. ISSUE LWR TCU FUNCTION AND OUTPUT                ATC
*           (DDLT-3)    ITS PARAMETER WORD.                              ATC
*                   12. SET TRACK NUMBER BITS FOR ERROR                  ATC
*                       FORCING PARAMETER WORD. TRACK BIT                ATC
*                       IS FORMED BY LOOP 1 COUNTER USED AS              ATC
*                       SHIFT COUNTER FOR A SINGLE BIT                   ATC
*                       PLACED IN INITIALLY IN TRACK 1                   ATC
*                       POSITION. ALSO SET BIT 9 OF THE                  ATC
*                       TO FORCE ENTIRE BLOCK ERROR.                     ATC
*         FNC 77    13. ISSUE FORCE ERROR FUNCTION AND OUTPUT            ATC
*           (DDLT-4)    THE TRACK IN ERROR PARAMETER.                    ATC
*         FNC 50    14. ISSUE WRITE FUNCTION AND OUTPUT                  ATC
*           (DDLT-5)    DATA PATTERN BLOCK.                              ATC
*                   15. CHECK IF FIRST PASS COMPLETED. IF                ATC
*                       COMPLETED CLEAR PASS FLAG REGISTER               ATC
*                       B4 AND RESET WORD LENGTH TO 74B WORDS.           ATC
*                       REPEAT FROM STEP 10 FOR SECOND PASS.             ATC
*                   16. IF SECOND PASS WAS COMPLETED,                    ATC
*                       INCREASE LOOP 1 COUNTER BY 1 (USED               ATC
*                       AS SUBSECTION COUNTER IN DISPLAY),               ATC
*                       AND GO TO STEP 2. NEXT TRACK IN                  ATC
*                       ERROR SEQUENCE. THIS IS REPEATED                 ATC
*                       FOR ALL TRACKS 1 THROUGH 9.                      ATC
*                   17. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
*        SECTION 14, SUBSECTION 0 THRU 7.                                ATC
 1 FORMAT ATC43 9TK,PE ERR CORR.                                         ATC
 2 FORMAT ATC43 START SUBSEC *OCT.                                       ATC
 5 FORMAT ATC43 STATUS ERRORS.                                           ATC
 6 FORMAT ATC43 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC43 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC43 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 43D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 7450,2510                                          ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
17 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(414)=0                 *INITIAL SUBSECTION NUMBER.                 ATC
20 MSG 2 (OB(414)) TO DISPLAY,PRINT                                      ATC
   DUP 0 TO OB(420) FOR 20   *CLEAR LAST EXPCTD STATUSES.                ATC
   GOSUB 60                                                              ATC007K
21 OB(402)=414               *MASTER CLEAR.                              ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
23 FUNC OB(402),ABT 24                                                   ATC
24 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0)GOTO 23                                             ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY.                      ATC
22 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(407)=240               *A/D MODE 1 (PACKED).                       ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT.                               ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(427)=1000                                                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   DUP 7777 TO OB FOR 74         *PATTERN NUMBER 1.                      ATC
   OB(413)=1                                                             ATC
   OB(412)=34                *28 WORDS INITIAL WORD COUNT.               ATC
   B4=1                      *SET INITIAL PASS FLAG.                     ATC
*                                                                        ATC
30 OB(411)=754               *PE, 200 IPS.                               ATC
*                                                                        ATC
   OB(402)=75                *LOOP TCU FUNCTION.                         ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(421)=0                                                             ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).AND.6000 + 45                                         ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   B0=1                      *BIT FOR SHIFT OPERATION.                   ATC
   OB(460)=B0.LS.OB(414)     *SHIFT A BIT TO TRACK POSITION.             ATC
   OB(402)=77                *SELECT KILL TRACK FUNCTION.                ATC
   WC=1                                                                  ATC
   BA=460                                                                ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   WC=OB(412)                                                            ATC
   BA=0                                                                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(420)=5000              *ALERT STATUS.                              ATC
   OB(421)=OB(B4 + 440)                                                  ATC
   OB(422)=200                                                           ATC
   OB(423)=OB(460) + 1000                                                ATC
   OB(425)=1000                                                          ATC
   OB(426)=OB(460)                                                       ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.6000                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   IF(B4.EQ.0) GOTO 31       *SECOND PASS COMPLETED IF ZERO.             ATC
   B4=0                      *CLEAR TO SHOW SECOND PASS.                 ATC
   OB(412)=74                *NEW WORD LENGTH.                           ATC
   OB(420)=1000                                                          ATC
   OB(422)=0                                                             ATC
   OB(423)=0                                                             ATC
   OB(425)=0                                                             ATC
   OB(426)=0                                                             ATC
   GOTO 30                   *SECOND LOOP.                               ATC
31 IF(ES.AND.RC.NE.0) GOTO 20   *REPEAT CONDITION.                       ATC
   OB(414)=OB(414)+1         *INCREASE SUBSECTION NUMBER.                ATC
   IF(OB(414).LE.10) GOTO 20    *RUN NEXT SUBSECTION.                    ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 17   *REPEAT MODULE.                           ATC004K
   EXIT                      *EXIT MODULE.                               ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0)GOTO 52    *REPEAT CONDITON                         ATC003K
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EM.NE.0)CALL 985    *CALL ERROR PROCESSOR                          ATC002K
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 63                                                               ATC
65 IF(EM.NE.0)CALL 985    *CALL ERROR PROCESSOR                          ATC002K
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76  *IF STAT COMPARE - JUMP                 ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70          *REPEAT CONDITION.                ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC44,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC44.                                                  ATC
*                                                                        ATC
**  ATC44 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      44  *             ATC
*        MODULE - ATC44.                                   *             ATC
*            SECTION 15, SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 15 SUBSECTION 0. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC44.                                                     ATC
*                                                                        ATC
*         TEST GCR ERROR CORRECTION USING FORCE ERROR                    ATC
*         FUNCTION AND A SPECIAL DATA PATTERN.                           ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*                     1. SET UP SPECIAL DATA PATTERN IN                  ATC
*                        OUTPUT BUFFER.                                  ATC
*                        LOC OB(  4) = 2000B                             ATC
*                            OB( 56) =   20B                             ATC
*                            OB(127) =    4B                             ATC
*                            OB(201) =  200B                             ATC
*         FNC 414     2. MASTER CLEAR CONTROLLER.                        ATC
*           (DDLT-1)                                                     ATC
*                     3. SET FORMAT UNIT 1 PARAMETER FOR                 ATC
*                        A/D PACKED MODE. PARAMETER 2 WORD               ATC
*                        IS ZEROS.                                       ATC
*         FNC 4       4. ISSUE FORMAT UNIT FUNCTION AND                  ATC
*           (DDLT-2)     OUTPUT THE TWO PARAMETER WORDS.                 ATC
*                     5. SET LWR TCU PARAMETER FOR GCR,                  ATC
*                        200 IPS.                                        ATC
*         FNC 75      6. ISSUE LWR TCU FUNCTION AND OUTPUT               ATC
*           (DDLT-3)     THE PARAMETER WORD.                             ATC
*                     7. SET TRACKS IN ERROR PARAMETER WORD              ATC
*                        TO 1767B.                                       ATC
*         FNC 77      8. ISSUE FORCE ERRORS FUNCTION AND                 ATC
*           (DDLT-4)     OUTPUT THE PARAMETER WORD.                      ATC
*                     9. SET RECORD LENGTH FOR 400B WORDS.               ATC
*         FNC 50     10. ISSUE WRITE FUNCTION AND OUTPUT                 ATC
*           (DDLT-5)     THE SPECIAL DATA PATTERN BLOCK.                 ATC
*                    11. END MODULE.                                     ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
/        SECTION 15, SUBSECTION 0.                                       ATC
 1 FORMAT ATC44 TEST GCR ERR CORR.                                       ATC
 5 FORMAT ATC44 STATUS ERRORS.                                           ATC
 6 FORMAT ATC44 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC44 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC44 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 44D    *CURRENT MODULE NUMBER.                     ATC
77 IF(P4.AND.1.NE.0) GOTO 34   *BYPASS MODULE IF NOT GCR* 
   MSG 1 TO DISPLAY,PRINT 
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   OB(4)=2000                *SPECIAL DATA FOR KILL TRACKS.              ATC
   OB(56)=20                                                             ATC
   OB(127)=4                                                             ATC
   OB(201)=200                                                           ATC
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
20 FUNC OB(402),ABT 17                                                   ATC
   GOTO 17                                                               ATC
30 OB(420)=1000              *EXPECTED STAT WD 1.                        ATC
   IF(P4.AND.1.EQ.0) GOTO 21                                             ATC
/    *IF GCR CAPABILITY.                                                 ATC003K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
21 GOSUB 70                                                              ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(407)=240               *PACKED A/D MODE.                           ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=1000              *PACKED EXPECTED STAT.                      ATC
   GOSUB 70                                                              ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   OB(411)=350               *GCR, 200 IPS PARAMETER.                    ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).AND.4000+75                                           ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(411)=1767              *KILL TRACKS PARAMETER.                     ATC
   OB(402)=77                *KILL TRACKS FUNCTION.                      ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(402)=50                *WRITE FUNCTION CODE.                       ATC
   WC=400                                                                ATC
   BA=0                                                                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(420)=5000              *SET EXPECTED STATUSES.                     ATC
   OB(422)=0                                                             ATC
   OB(424)=0                                                             ATC
   OB(423)=2000                                                          ATC
   OB(426)=767                                                           ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.4000                                              ATC
   B0=1                      *RETAIN CURRENT BLOCK ID VALUE.             ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20     *CLEAR ALL EXPECTED STATUSES.             ATC
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
34 EXIT 
*                                                                        ATC
17 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 20                                            ATC
   GOTO 30                                                               ATC
/        FUNCTION AND OUTPUT WORDS SUBROUTINE.                           ATC
50 FOUT OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   IF(B0.EQ.0)GOTO 75         *BLOCK ID RETENTION FLAG                   ATC003K
   OB(421)=SB(1).AND.7770    *SET CURRENT BLOCK ID VALUE.                ATC
   B0=0                                                                  ATC
75 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420).AND.OB(B1+460)                             ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC45,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC45.                                                  ATC
*                                                                        ATC
**  ATC45 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      45  *             ATC
*        MODULE - ATC45.                                   *             ATC
*            SECTION 15, SUBSECTION 1                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 15 SUBSECTION 1. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC45.                                                     ATC
*                                                                        ATC
*         FORCE A LOST DATA CONDITION.                                   ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414     1. MASTER CLEAR CONTROLLER.                        ATC
*           (DDLT-1)                                                     ATC
*                     2. SET LOOP 1 COUNTER TO 1.                        ATC
*                     3. SET FORMAT UNIT PARAMETER 1 FOR                 ATC
*                        A/D PACKED MODE.                                ATC
*                     4. SET FORMAT UNIT PARAMETER 2 TO                  ATC
*                        ZEROS.                                          ATC
*         FNC 4       5. ISSUE FORMAT UNIT FUNCTION AND                  ATC
*           (DDLT-2)     OUTPUT THE TWO PARAMETER WORDS.                 ATC
*                     6. SET LWR TCU PARAMETER WORD FOR                  ATC
*                        GCR, 200 IPS IF P4 EQUALS 1. IF
*                        P4 EQUALS ZERO PHASE, 200 IPS
*                        MODE.
*         FNC 75      7. ISSUE LWR TCU FUNCTION AND OUTPUT               ATC
*           (DDLT-3)     THE PARAMETER WORD.                             ATC
*         FNC 50      8. ISSUE WRITE FUNCTION.                           ATC
*           (DDLT-4)                                                     ATC
*         OUT CHAIN   9. WITH THE WORD COUNT SET TO 2 WORDS,             ATC
*           (DDLT-5)     ISSUE OUT CHAIN INSTRUCTION.                    ATC
*                        CHANNEL I TO REMAIN ACTIVE AFTER                ATC
*                        2 WORD OUTPUT.                                  ATC
*                    10. DELAY FOR 220 MILLISECONDS.                     ATC
*         DCN        11. ISSUE A DEACTIVATE TO THE CHANNEL.              ATC
*           (DDLT-6)     ERROR IF CHANNEL WAS INACTIVE.                  ATC
*                    12. VERIFY LOST DATA STATUS.                        ATC
*                    13. INCREASE LOOP 1 COUNTER BY 1 AND                ATC
*                        REPEAT FROM STEP 3 FOR 5 TIMES.                 ATC
*                    14. END MODULE.                                     ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 15, SUBSECTION 1.                                       ATC
 1 FORMAT ATC45 TEST FORCE LOST DATA.                                    ATC
 5 FORMAT ATC45 STATUS ERRORS.                                           ATC
 6 FORMAT ATC45 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC45 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC45 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 45D    *CURRENT MODULE NUMBER.                     ATC
77 MSG 1 TO DISPLAY, PRINT
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
20 GOSUB 40                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 21                                             ATC
/    *IF GCR CAPABILITY.                                                 ATC003K
   OB(432)=4000              *GCR CAPABILITY.                            ATC
21 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
22 OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   OB(407)=240               *PACKED A/D MODE.                           ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   GOSUB 50                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=1000              *PACKED EXPECTED STATUS.                    ATC
   GOSUB 70                                                              ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   OB(411)=754               *200 IPS PHASE 
   IF(P4.AND.1.NE.0)OB(411)=350  *200 IPS, GCR MODE 
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).AND.6000+75                                           ATC
   IF (P4.AND.1.NE.0) GOTO 26   *IF GCR 
   OB(432)=OB(432).AND.6000+45
26 GOSUB 70                  *STATUS AND COMPARE
   WC=2                                                                  ATC
   BA=0                                                                  ATC
   OB(402)=50                *WRITE, FORCE LOST DATA.                    ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 40                  *ISSUE FUNCTION.                            ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
44 OUT CHAIN,ABT 30     *OUTPUT WITH NO DEACTIVATE                       ATC004K
31 DELAY 220 MSEC            *DELAY FOLOST DATA.                         ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOTO 32                                                               ATC
33 OB(420)=5000              *ALERT STATUS.                              ATC
   OB(421)=600                                                           ATC
   OB(422)=4000              *LOST DATA EXPECTED.                        ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.6000                                              ATC
   GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(420)=1000                                                          ATC
   OB(421)=0                                                             ATC
   OB(422)=0                                                             ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.5) GOTO 22  *LOOP 5 TIMES.                              ATC
34 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20   *CLEAR EXPCTD STATUSES.                     ATC
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
   EXIT                                                                  ATC
*                                                                        ATC
30 GOSUB 60                                                              ATC
   GOTO 31                                                               ATC
32 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0)GOTO 44                                             ATC004K
   GOTO 33                                                               ATC
/        FUNCTION ISSUANCE                                               ATC
40 FUNC OB(402),ABT 41                                                   ATC
41 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 40                                            ATC
   RETURN                                                                ATC
/        FUNCTION AND OUTPUT WORDS SUBROUTINE.                           ATC
50 FOUT OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 34   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC46,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC46.                                                  ATC
*                                                                        ATC
**  ATC46 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      46  *             ATC
*        MODULE - ATC46.                                   *             ATC
*            SECTION 15, SUBSECTION 2                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 15 SUBSECTION 2. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC46.                                                     ATC
*                                                                        ATC
*         TEST OF FORMAT UNIT FUNCTION WITH ONE PARAMETER                ATC
*         OUTPUT TO THE CONTROLLER.                                      ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414       1. MASTER CLEAR CONTROLLER.                      ATC
*           (DDLT-1)                                                     ATC
*                       2. SET LOOP 1 COUNTER TO 1.                      ATC
*                       3. SET FORMAT UNIT PARAMETER 1 FOR               ATC
*                          A/D 6-BIT MODE.                               ATC
*         FNC 4         4. ISSUE FORMAT UNIT FUNCTION AND                ATC
*           (DDLT-2)       OUTPUT ONLY ONE PARAMETER WORD.               ATC
*                       5. INCREASE LOOP 1 COUNTER BY 1 AND              ATC
*                          REPEAT FROM STEP 3 FOR 10 TIMES.              ATC
*                       6. END MODULE.                                   ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 15, SUBSECTION 2.                                       ATC
 1 FORMAT ATC46 FORMAT UNIT,1 PARAM OUTPUT.                              ATC
 5 FORMAT ATC46 STATUS ERRORS.                                           ATC
 6 FORMAT ATC46 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC46 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC46 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 46D    *CURRENT MODULE NUMBER.                     ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
17 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
20 FUNC OB(402),ABT 30       *ISSUE FUNCTION.                            ATC
   GOTO 30                                                               ATC
21 OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 22                                             ATC
   OB(432)=4000              *GCR CAPABILITY.                            ATC
22 GOSUB 70                  *OBTAIN STATUS AND COMPRE.                  ATC
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
23 OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   WC=1                      *ONE WORD DATA.                             ATC
   BA=407                                                                ATC
   OB(407)=200               *A/D MODE - 6 BIT.                          ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
24 FOUT OB(402),ABT 31       *ISSUE FUNCTION AND OUTPUT.                 ATC
   GOTO 31                                                               ATC
25 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   IF(OB(414).LE.12) GOTO 23   *LOOP 10 TIMES.                           ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 17   *REPEAT MODULE.                           ATC004K
   EXIT                                                                  ATC
*                                                                        ATC
30 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 20                                            ATC
   GOTO 21                                                               ATC
31 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 24                                            ATC
   GOTO 25                                                               ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC47,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC47.                                                  ATC
*                                                                        ATC
**  ATC47 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      47  *             ATC
*        MODULE - ATC47.                                   *             ATC
*            SECTION 16, SUBSECTION 0                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 16 SUBSECTION 0. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC47.                                                     ATC
*                                                                        ATC
*         FORCE ERROR CODE OF 65 FROM THE CONTROLLER.                    ATC
*      (REFERENCE STATUS WORD 3 ERROR TABLE)                             ATC009K
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414       1. MASTER CLEAR CONTROLLER.                      ATC
*           (DDLT-1)                                                     ATC
*         FNC 112       2. FUNCTION FOR DETAILED STATUS.                 ATC
*           (DDLT-2)       DO NOT INPUT STATUS WORDS.                    ATC
*         ACN           3. ACTIVATE THE CHANNEL TO FORCE A               ATC
*           (DDLT-3)       HUNG CONDITION.                               ATC
*                       4. DELAY FOR 1000 MILLISECONDS FOR               ATC
*                          CONTROLLER TO DEACTIVATE.                     ATC
*                       5. OBTAIN STATUS AND COMPARE WITH                ATC
*                          EXPECTED ALERT AND TCU ERROR CODE             ATC
*                          65 STATUS.                                    ATC001K
*                       6. END MODULE.                                   ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 16, SUBSECTION 0.                                       ATC
 1 FORMAT ATC47 FORCE TCU ERR CODE 65.                                   ATC
 5 FORMAT ATC47 STATUS ERRORS.                                           ATC
 6 FORMAT ATC47 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC47 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC47 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 47D    *CURRENT MODULE NUMBER.                     ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 20                                             ATC
   OB(432)=4000              *GCR CAPABILITY.                            ATC
20 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=112               *DETAILED STATUS FUNCTION.                  ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
*                                                                        ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
40 ACN,ABT 30         *ACTIVATE THE CHANNEL                              ATC004K
   IF(ES.AND.RC.NE.0)GOTO 30                                             ATC004K
   GOTO 21                                                               ATC004K
30 GOSUB 60                                                              ATC004K
   IF(ES.AND.RC.NE.0)GOTO 40                                             ATC004K
21 DELAY 1000 MSEC           *DELAY 1 SECOND.                            ATC
   OB(420)=5000              *ALERT STATUS EXPECTED.                     ATC
   OB(422)=0065              *TCU ERROR CODE.                            ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
   EXIT                                                                  ATC
*                                                                        ATC
*                                                                        ATC
/        ISSUE FUNCTION SUBROUTINE.                                      ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
/        ISSUE FUNCTION AND OUTPUT SUBROUTINE.                           ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC48,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC48.                                                  ATC
*                                                                        ATC
**  ATC48 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      48  *             ATC
*        MODULE - ATC48.                                   *             ATC
*            SECTION 16, SUBSECTION 1                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 16 SUBSECTION 1. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC48.                                                     ATC
*                                                                        ATC
*         FORCE A SINGLE FRAME ERROR.                                    ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414       1. MASTER CLEAR CONTROLLER.                      ATC
*           (DDLT-1)                                                     ATC
*                       2. SET FORMAT UNIT PARAMETER 1 TO                ATC
*                          ZEROS.                                        ATC
*                       3. SET FORMAT UNIT PARAMETER 2 FOR               ATC
*                          EVEN VERTICAL PARITY.                         ATC
*         FNC 4         4. ISSUE FORMAT UNIT FUNCTION AND                ATC
*           (DDLT-2)       OUTPUT THE TWO PARAMETER WORDS.               ATC
*                       5. SET LWR TCU PARAMETER FOR NRZI,               ATC
*                          7 TRACK, 100 IPS.                             ATC
*         FNC 75        6. ISSUE LWR TCU FUNCTION AND OUTPUT             ATC
*           (DDLT-3)       THE PARAMETER WORD.                           ATC
*                       7. GENERATE PATTERN OF ALL ONES WITH             ATC
*                          A SINGLE ZERO FRAME AT OB(417).               ATC007K
*                       8. SET RECORD LENGTH FOR 30 WORDS.               ATC
*         FNC 50        9. ISSUE WRITE FUNCTION AND OUTPUT               ATC
*           (DDLT-4)       THE DATA PATTERN BLOCK.                       ATC
*                      10. OBTAIN STATUS AND COMPARE FOR                 ATC
*                          EXPECTED FRAME ERROR STATUS.                  ATC
*                      11. END MODULE.                                   ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 16, SUBSECTION 1.                                       ATC
 1 FORMAT ATC48 SINGLE FRAME ERROR.                                      ATC
 5 FORMAT ATC48 STATUS ERRORS.                                           ATC
 6 FORMAT ATC48 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC48 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC48 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 48D    *CURRENT MODULE NUMBER.                     ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 20                                             ATC
   OB(432)=4000              *GCR CAPABILITY.                            ATC
20 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(410)=3000              *EVEN VERTICAL PARITY.                      ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(421)=2                 *BLOCK ID STATUS.                           ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=75                *LOOP WTR TCU FUNCTION.                     ATC
   OB(411)=473               *100 IPS, 7 TRACK NRZI.                     ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(427)=200                                                           ATC
   OB(432)=OB(432).AND.6000 + 222                                        ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   DUP 7777 TO OB FOR 30D    *ALL ONES PATTERN.                          ATC
   OB(413)=1                                                             ATC
   OB(412)=30D                                                           ATC
   OB(17)=77                 *CLEAR ONE FRAME.                           ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   BA=0                                                                  ATC
   WC=OB(412)                                                            ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(420)=OB(420)+4000      *ALERT STATUS.                              ATC
   OB(421)=462               *BLOCK ID STATUS.                           ATC
   OB(422)=OB(422)+1200      *TAPE PE,TCU ERROR.                         ATC
   OB(424)=310               *SINGLE FRAME,FRM CNT,CRC1 - 2.             ATC
   OB(427)=0                                                             ATC
   OB(432)=OB(432).AND.6000                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
   EXIT                                                                  ATC
*                                                                        ATC
/        ISSUE FUNCTION SUBROUTINE.                                      ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
/        ISSUE FUNCTION AND OUTPUT SUBROUTINE.                           ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC49,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC49.                                                  ATC
*                                                                        ATC
**  ATC49 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      49  *             ATC
*        MODULE - ATC49.                                   *             ATC
*            SECTION 16, SUBSECTION 2                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 16 SUBSECTION 2. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC49.                                                     ATC
*                                                                        ATC
*         FORCE SINGLE TRACK ERRORS WITH NRZI, 7 TRACK                   ATC
*         RECORDING.                                                     ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*                       1. SET LOOP 1 COUNTER TO 1. COUNTER              ATC
*                          WILL BE USED AS TRACK IN ERROR                ATC
*                          POINTER.                                      ATC
*         FNC 414       2. MASTER CLEAR CONTROLLER.                      ATC
*           (DDLT-1)                                                     ATC
*                       3. SET RECORD LENGTH FOR 10 WORDS.               ATC
*                       4. SET PATTERN NUMBER TO 1.                      ATC
*                       5. GENERATE 10 WORDS OF ALL ONES                 ATC
*                          PATTERN.                                      ATC
*                       6. SET FORMAT UNIT PARAMETER 1 FOR               ATC
*                          A/D PACKED MODE.                              ATC
*                       7. SET FORMAT UNIT PARAMETER 2 TO                ATC
*                          0000.                                         ATC
*         FNC 4         8. ISSUE FORMAT UNIT FUNCTION AND                ATC
*           (DDLT-2)       OUTPUT TWO PARAMETER WORDS.                   ATC
*                       9. SET LWR TCU PARAMETER WORD FOR                ATC
*                          NRZI, 7 TRACK, 200 IPS.                       ATC
*         FNC 75       10. ISSUE LWR TCU FUNCTION AND OUTPUT             ATC
*           (DDLT-3)       THE PARAMETER WORD.                           ATC
*                      11. SET FORCE ERROR PARAMETER WORD.               ATC
*                          TRACK IN ERROR BIT SET                        ATC
*                          CORRESPONDS TO LOOP 1 COUNTER                 ATC
*                          USED AS A SHIFT COUNT FOR A                   ATC
*                          SINGLE BIT PLACED IN THE TRACK                ATC
*                          POSITION.                                     ATC
*         FNC 77       12. ISSUE FORCE ERROR FUNCTION AND                ATC
*           (DDLT-4)       OUTPUT THE PARAMETER WORD.                    ATC
*         FNC 50       13. ISSUE WRITE FUNCTION AND OUTPUT               ATC
*           (DDLT-5)       THE DATA PATTERN BLOCK.                       ATC
*                      14. INCREASE LOOP 1 COUNTER BY 1 AND              ATC
*                          REPEAT FOR EACH OF THE REMAINING              ATC
*                          TRACKS.                                       ATC
*                      15. END MODULE.                                   ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*        SECTION 16, SUBSECTION 2.                                       ATC
 1 FORMAT ATC49 NRZI 7TRK-SNGLTRK DATA ERRS                              ATC
 5 FORMAT ATC49 STATUS ERRORS.                                           ATC
 6 FORMAT ATC49 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC49 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC49 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 49D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 640,2170,2720,1470,510,5370                        ATC
   DATA (OB(446),CON) 4650,230,1560                                      ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(414)=1                 *TRACK POINTER.                             ATC
   B0=0                                                                  ATC
17 GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY.                      ATC
20 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(412)=10D               *LENGTH.                                    ATC
   OB(413)=1                 *PATTERN NUMBER.                            ATC
   DUP 7777 TO OB FOR 10D    *ALL ONES PATTERN.                          ATC
*                                                                        ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(407)=240                                                           ATC
   BA=407                                                                ATC
   WC=2                                                                  ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION.                            ATC
   OB(427)=1000                                                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(411)=670               *200 IPS, 7 TRK NRZI.                       ATC
   OB(402)=75                *LOOP TCU FUNCTION.                         ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).AND.6000+225                                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   B1=1                      *SET BIT FOR KILL TRACK.                    ATC
   OB(402)=77                *KILL TRACK FUNCTION CODE.                  ATC
   OB(460)=B1.LS.B0+1000     *BAD TRACK BIT.                             ATC
   WC=1                                                                  ATC
   BA=460                                                                ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   WC=10D                                                                ATC
   BA=0                                                                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(420)=5000              *ALERT STATUS.                              ATC
   OB(422)=1200                                                          ATC
   IF(OB(414).EQ.4) GOTO 22                                              ATC
   OB(424)=4200                                                          ATC
   GOTO 24                                                               ATC
22 OB(424)=4000                                                          ATC
24 OB(425)=1004                                                          ATC
   OB(421)=OB(B0+440)        *BLOCK ID VALUES.                           ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.6000                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(414)=OB(414)+1         *LOOP 1 COUNTER.                            ATC
   B0=B0+1                   *TRACK POINTER INDEX.                       ATC
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   IF(B0.LE.10) GOTO 17                                                  ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
   EXIT                                                                  ATC
*                                                                        ATC
*        ISSUE FUNCTION SUBROUTINE.                                      ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
*        ISSUE FUNCTION AND OUTPUT SUBROUTINE.                           ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76   *IF STAT COMPARE - JUMP                ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC50,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC50.                                                  ATC
*                                                                        ATC
**  ATC50 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      50  *             ATC
*        MODULE - ATC50.                                   *             ATC
*            SECTION 16, SUBSECTION 3                      *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 16 SUBSECTION 3. *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC50.                                                     ATC
*                                                                        ATC
*         FORCE SINGLE TRACK ERRORS WHEN RUNNING 9 TRACK                 ATC
*         NRZI RECORDING MODE.                                           ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*                       1. SET LOOP 1 COUNTER TO 1.                      ATC
*         FNC 414       2. MASTER CLEAR CONTROLLER.                      ATC
*           (DDLT-1)                                                     ATC
*                       3. SET RECORD LENGTH TO 10 WORDS.                ATC
*                       4. SET PATTERN NUMBER TO 4,                      ATC
*                          ALTERNATING ONES.                             ATC
*                       5. CALL PATTERN GENERATOR.                       ATC
*                       6. SET FORMAT UNIT PARAMETER 1 FOR               ATC
*                          A/D PACKED MODE.                              ATC
*                       7. FORMAT UNIT PARAMETER 2 IS SET                ATC
*                          FOR ZEROS.                                    ATC
*         FNC 4         8. ISSUE FORMAT UNIT FUNCTION AND                ATC
*           (DDLT-2)       OUTPUT THE TWO PARAMETER WORDS.               ATC
*                       9. SET LWR TCU PARAMETER FOR 9                   ATC
*                          TRACK, NRZI, 200 IPS RECORDING.               ATC
*         FNC 75       10. ISSUE LWR TCU FUNCTION AND OUTPUT             ATC
*           (DDLT-3)       THE PARAMETER WORD.                           ATC
*                      11. PRESET TRACK IN ERROR.                        ATC
*         FNC 77       12. ISSUE FORCE ERROR FUNCTION AND                ATC
*           (DDLT-4)       OUTPUT ITS PARAMETER WORD.                    ATC
*         FNC 50       13. ISSUE WRITE FUNCTION AND OUTPUT               ATC
*           (DDLT-5)       THE DATA PATTERN BLOCK.                       ATC
*                      14. INCREASE LOOP 1 COUNTER BY 1 AND              ATC
*                      14. REPEAT (SUBSECTION) FROM STEP 2               ATC
*                          FOR EACH OF 9 TRACKS.                         ATC
*                      15. END MODULE.                                   ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*        SECTION 16, SUBSECTION 3.                                       ATC
 1 FORMAT ATC50 NRZI 9TRK-SNGLE TRK ERR.                                 ATC
 5 FORMAT ATC50 STATUS ERRORS.                                           ATC
 6 FORMAT ATC50 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC50 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC50 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 50D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 6070,7410,10,3610,6570,5010                        ATC
   DATA (OB(446),CON) 510,6450,3540                                      ATC
77 IF(ES.AND.RM.NE.0)GOTO 15                                             ATC007K
   MSG 1 TO DISPLAY,PRINT                                                ATC007K
15 OB(403)=77           *INDICATE NO UNIT USED.                          ATC007K
   OB(414)=1                 *TRACK POINTER.                             ATC
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   B0=0                                                                  ATC
17 GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 20                                             ATC
   OB(432)=4000              *GCR CAPABILITY.                            ATC
20 GOSUB 70                                                              ATC
*                                                                        ATC
   OB(412)=10D               *LENGTH.                                    ATC
   OB(413)=4                 *PATTERN NUMBER.                            ATC
   CALL 981                  *ALTERNATING ONES FRAMED.                   ATC
   GOSUB 60                                                              ATC007K
*                                                                        ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(407)=240                                                           ATC
   BA=407                                                                ATC
   WC=2                                                                  ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION.                            ATC
   OB(427)=1000                                                          ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(411)=750               *200 IPS, 9 TRK NRZI.                       ATC
   OB(402)=75                *LOOP TCU FUNCTION.                         ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(427)=1200                                                          ATC
   OB(432)=OB(432).AND.6000+65                                           ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   B1=1                      *SET BIT FOR KILL TRACK.                    ATC
   OB(402)=77                *KILL TRACK FUNCTION CODE.                  ATC
   OB(460)=B1.LS.B0+1000     *BAD TRACK BIT.                             ATC
   WC=1                                                                  ATC
   BA=460                                                                ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   WC=10D                                                                ATC
   BA=0                                                                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(420)=5000              *ALERT STATUS.                              ATC
   OB(422)=1200                                                          ATC
   IF(OB(414).EQ.4) GOTO 22                                              ATC
   OB(424)=5200                                                          ATC
   GOTO 24                                                               ATC
22 OB(424)=5210                                                          ATC
24 OB(425)=1004                                                          ATC
   OB(421)=OB(B0+440)        *EXPECTED BLOCK ID VALUES.                  ATC
   OB(427)=1000                                                          ATC
   OB(432)=OB(432).AND.6000                                              ATC
   GOSUB 70                                                              ATC
*                                                                        ATC
   OB(414)=OB(414)+1         *LOOP 1 COUNTER.                            ATC
   B0=B0+1                   *TRACK POINTER INDEX.                       ATC
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPCTD STATUSES.                 ATC
   IF(B0.LE.10) GOTO 17                                                  ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0) GOTO 77                                            ATC
   EXIT                                                                  ATC
*                                                                        ATC
*        ISSUE FUNCTION SUBROUTINE.                                      ATC
50 FUNC OB(402),ABT 51                                                   ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50    *REPEAT CONDITION.                      ATC
   RETURN                                                                ATC
*        ISSUE FUNCTION AND OUTPUT SUBROUTINE.                           ATC
52 FOUT OB(402),ABT 53                                                   ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
*        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.NE.0)ERROR 5/1 GOTO 76  *IF STAT COMPARE - JUMP                 ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC51,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC51.                                                  ATC
*                                                                        ATC
**  ATC51 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      51  *             ATC
*        MODULE - ATC51.                                   *             ATC
*            SECTION 17.                                   *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 17.              *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC51.                                                     ATC
*                                                                        ATC
*         FORCE A DEADMAN TIMEOUT.                                       ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414       1. MASTER CLEAR CONTROLLER.                      ATC
*           (DDLT-1)                                                     ATC
*                                                                        ATC
*         FNC 4         2. ISSUE FORMAT UNIT FUNCTION.                   ATC
*           (DDLT-2)                                                     ATC
*                                                                        ATC
*         OUT,CHAIN     3. OUTPUT 2 WORDS OF ZEROS AND                   ATC
*           (DDLT-3)       HANG CHANNEL ACTIVE.                          ATC
*                                                                        ATC
*         ACN           4. EXPECT CHANNEL ACTIVE. A TIMEOUT              ATC
*           (DDLT-4)       IS EXPECTED TO OCCUR WHILE                    ATC
*                          WAITING FOR THE DEADMAN TIMER TO              ATC
*                          DEACTIVATE THE CHANNEL. THIS ACN              ATC
*                          INSTRUCTION WILL FINALLY ACTIVATE             ATC
*                          THE DEACTIVE CHANNEL.                         ATC
*         DCN           5. DEACTIVATE THE ACTIVE CHANNEL.                ATC
*           (DDLT-5)                                                     ATC
*                       6. END MODULE.                                   ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE LOW LEVEL PRODUCT OVERLAY                       ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*             NONE                                                       ATC007K
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 17.                                                     ATC
 1 FORMAT ATC51 DEADMAN TIMEOUT TEST.                                    ATC
 5 FORMAT ATC51 STATUS ERRORS.                                           ATC
 6 FORMAT ATC51 END OF MODULE, *DEC ERRORS.                              ATC007K
11 FORMAT ATC51 DEADMAN TIME *DEC SEC, *DEC MILLISEC.                    ATC
13 FORMAT ATC51 CHANNEL FOUND INACTIVE FOR TIMEOUT.                      ATC
14 FORMAT ATC51 CHAN DID NOT DEACTIVATE,(DEADMAN TIMEOUT).               ATC
   DATA (OB(416),CON) 51D     *CURRENT MODULE NUMBER                     ATC003K
77 MSG 1 TO DISPLAY, PRINT                                               ATC
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   RES,ABT 60                                                            ATC007K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 20                                             ATC
   OB(432)=4000              *SHOW GCR CAPABILITY.                       ATC
20 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
23 OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE A FUNCTION.                          ATC
   WC=2                                                                  ATC
   BA=10                                                                 ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   OUTB CHAIN, ABT 40        *OUTPUT AND HANG CHAN ACTIVE.               ATC
21 B0=0                      *COUNTER ZERO (MILLISECONDS).               ATC
   B1=0                      *COUNTER ONE (SECONDS).                     ATC
   B2=0                      *FLAG THAT CHAN WAS ACTIVE.                 ATC
22 OB(406)=4            ********* DTLT ACTION NUMBER                     ATC007K
   ACN,ABT 30       *CHANNEL EXPECTED ACTIVE                             ATC007K
   IF(B2.NE.0) GOTO 33       *GO CHECK DELAY TIME.                       ATC
   ERROR 13/10                *ERROR CHAN WAS FOUND INACTIVE.            ATC
   MSG 13 TO LINE 46                                                     ATC007K
   GOTO 40                                                               ATC009K
*                                                                        ATC
30 B2=1                      *FLAG THAT DELAYS OCCURRED.                 ATC
   DELAY 1000D USEC          *DELAY 1 MILLISEC.                          ATC
   B0=B0+1                   *INCREASE COUNTER ZERO.                     ATC
   IF(B0.LT.1000D) GOTO 22   *LOOP FOR ONE SECOND.                       ATC
   B1=B1+1                   *INCREASE COUNTER ONE.                      ATC
   B0=0                      *RESET COUNTER ZERO.                        ATC
   IF(B1.LT.6) GOTO 22       *LIMIT TO 6 SECONDS.                        ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   DCN, ABT 40               *ASSURE CHAN DEACTIVATED.                   ATC
   ERROR 14/11             *REPORT CHAN DID NOT DEACTIVATE.              ATC
   MSG 14 TO LINE 46                                                     ATC007K
   GOTO 40                                                               ATC009K
*                                                                        ATC
33 OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   DCN, ABT 40               *DEACTIVATE CHAN AND CHECK TIME             ATC
   MSG 11 (B1,B0) TO DISPLAY, PRINT                                      ATC
34 IF(OB(477).NE.0)MSG 6(OB(477))TO DAYFILE,PRINT                        ATC
   EXIT                                                                  ATC
*                                                                        ATC
40 GOSUB 60                  *REPORT ERROR.                              ATC
   GOTO 22                                                               ATC007K
/        ISSUE FUNCTION SUBROUTINE.                                      ATC
50 FUNC OB(402),ABT 51                                                   ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE SUBROUTINE WILL     *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
/        ERROR REPORT, FUNCTION OR I/O ABORT BRANCH.                     ATC
60 CALL 985        *CALL ERROR PROCESSOR                                 ATC007K
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 60                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
   IF(OB(477).GT.4)GOTO 34      *EXIT IF ERR COUNT GT 4.                 ATC009K
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
/        DETAILED STATUS SUBROUTINE.                                     ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURENT STATUS TAKEN FLAG.              ATC
   B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   RETURN                                                                ATC007K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC52,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC52.                                                  ATC
*                                                                        ATC
**  ATC52 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      52  *             ATC
*        MODULE - ATC52.                                   *             ATC
*            NEW SECTION 30.                               *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 30.              *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC52.                                                     ATC
*                                                                        ATC
*         TEST OPPOSITE DENSITY FUNCTION FOR ALL LOOP WRITE              ATC
*         TO READ TCU PARAMETER MODES.                                   ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*                    1. SET LOOP 1 COUNTER TO 1.                         ATC
*         FNC 414    2. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    3. SET LOOP 2 COUNTER TO 1.                         ATC
*                    4. USING LOOP 1 COUNTER AS AN INDEX                 ATC
*                       GET CONSTANT FOR LWTR TCU PARAMETER              ATC
*                       WORD 3. THESE CONSTANTS ARE AS                   ATC
*                       FOLLOWS -                                        ATC
*                          LOOP CNT  PARAM 3     TYPE                    ATC
*                             1 ..... 350 ... GCR, 200 IPS.              ATC
*                             2 ..... 152 ... GCR, 150 IPS.              ATC
*                             3 ..... 153 ... GCR, 100 IPS.              ATC
*                             4 ..... 754 ... PE, 200 IPS.               ATC
*                             5 ..... 556 ... PE, 150 IPS.               ATC
*                             6 ..... 557 ... PE, 100 IPS.               ATC
*                             7 ..... 750 ... 9T NRZI, 200 IPS.          ATC
*                             8 ..... 552 ... 9T NRZI, 150 IPS.          ATC
*                             9 ..... 553 ... 9T NRZI, 100 IPS.          ATC
*                            10 ..... 670 ... 7T NRZI, 200 IPS.          ATC
*                            11 ..... 472 ... 7T NRZI, 150 IPS.          ATC
*                            12 ..... 473 ... 7T NRZI, 100 IPS.          ATC
*                                                                        ATC
*         FNC 75     5. ISSUE LOOP WRITE TO READ TCU                     ATC
*           (DDLT-2)    FUNCTION AND OUTPUT PARAMETER.                   ATC
*         FNC 105    6. ISSUE OPPOSITE DENSITY FUNCTION.                 ATC
*           (DDLT-3)                                                     ATC
*                    7. SET LOOP 2 COUNTER TO 2.                         ATC
*         FNC 75     8. ISSUE LOOP WRITE TO READ TCU                     ATC
*           (DDLT-4)    FUNCTION AND OUTPUT PARAMETER.                   ATC
*         FNC 105    9. ISSUE OPPOSITE DENSITY FUNCTION.                 ATC
*           (DDLT-5)                                                     ATC
*                   10. CLEAR LOOP 2 COUNTER.                            ATC
*                   11. INCREASE LOOP 1 COUNTER BY 1 AND                 ATC
*                       REPEAT TEST SEQUENCE FROM 2 FOR                  ATC
*                       ALL 12 LOOP WRITE TO READ TCU                    ATC
*                       PARAMETER CONSTANTS.                             ATC
*                   12. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         THIS MODULE VERIFIES THAT STATUS WORD 11 AGREES                ATC
*         WITH EXPECTED STATUS OF UNIT VARIABLES AS SET UP               ATC
*         BY EACH OF THE 12 LOOP WRITE TO READ TCU PARAMETER             ATC
*         WORDS.  ALSO CHECKS THE OPERATION OF THE OPPOSITE              ATC
*         DESITY FUNCTION RESPONSE.                                      ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/         TEST OPPOSITE DENSITY IN ALL LWT TCU MODES.                    ATC
 1 FORMAT ATC52 OPPOSITE DNSTY, LWR TCU MODES.                           ATC
 5 FORMAT ATC52 STATUS ERRORS.                                           ATC
 6 FORMAT ATC52 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC52 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC52 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 52D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 350,152,153,754,556,557,750,552,553,               ATC
  ,670,472,473                                                           ATC
   DATA (OB(454),CON) 75,76,72,45,46,42,65,66,62,625,626,622             ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
   RES,ABT 65 
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(414)=1                 *LOOP 1 COUNTER.                            ATC
   IF(P4.AND.1.NE.0)GOTO 17   *BYPASS GCR COUNTS
   OB(414)=4
17 GOSUB 60                                                              ATC007K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  ISSUE FUNCTION.                             ATC
   OB(420)=1000                                                          ATC
   OB(432)=0                  *INITIALIZE FOR NOT GCR 
   IF(P4.AND.1.EQ.0) GOTO 20                                             ATC
   OB(432)=4000              *SHOW GCR CAPABILITY.                       ATC
20 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(415)=1                 *LOOP 2 COUNTER.                            ATC
21 B3=OB(414)-1                                                          ATC
   OB(411)=OB(B3+440)        *LWR TCU PARAMETER.                         ATC
   BA=411                                                                ATC
   WC=1                                                                  ATC
   OB(402)=75                *LWR TCU FUNCTION.                          ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(432)=OB(432).XOR.OB(B3+454).AND.6277                               ATC
   OB(427)=200                                                           ATC
   GOSUB 70                                                              ATC
   OB(402)=105               *OPPOSITE DENSITY FUNCTION.                 ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(432)=OB(432).AND.4000+OB(B3+454)                                   ATC
   GOSUB 70                  *STATUS AND COMPARE.                        ATC
   OB(415)=2                 *LOOP 2 COUNTER.                            ATC
   BA=411                                                                ATC
   WC=1                                                                  ATC
   OB(402)=75                *LWR TCU FUNCTION.                          ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                                                              ATC
   OB(432)=OB(432).AND.4000                                              ATC
   OB(432)=OB(432)+OB(B3+454).AND.6277                                   ATC
   GOSUB 70                                                              ATC
   OB(402)=105               *OPPOSITE DENSITY FUNCTION.                 ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                                                              ATC
   OB(432)=OB(432).AND.4000+OB(B3+454)                                   ATC
   GOSUB 70                                                              ATC
   OB(415)=0                                                             ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   OB(411)=0                                                             ATC
   OB(427)=0                                                             ATC
   IF(OB(414).LE.14) GOTO 17                                             ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20     *CLEAR ALL EXPCTD STATUS.                 ATC
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
   EXIT                                                                  ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51       *ISSUE A FUNCTION.                          ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                  *REPORT ERROR.                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50  *REPEAT CONDITION.                        ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53       *ISSUE FUNCTION AND OUTPUT.                 ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                  *REPORT ERROR.                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52  *REPEAT CONDITION.                        ATC
   RETURN                                                                ATC
*                                                                        ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
*                                                                        ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777        *SET CURRENT STATUS TAKEN FLAG.                   ATC
   B1=0                      *INDEX COUNTER.                             ATC
71 B2=SB(B1).XOR.OB(B1+420)                                              ATC
   IF(B2.EQ.0) GOTO 72       *IF STAT COMPARE JUMP.                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC53,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC53.                                                  ATC
*                                                                        ATC
**  ATC53 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      53  *             ATC
*        MODULE - ATC53.                                   *             ATC
*            NEW SECTION 31.                               *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 31.              *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*                                                                        ATC
*  OVERVIEW - ATC53.                                                     ATC
*                                                                        ATC
*         TEST CODE CONVERSION MEMORY BY WRITING ALL ONES                ATC
*         PATTERN IN 6 - BIT MODE AND READING BACK THE                   ATC
*         PATTERN IN PACKED MODE.                                        ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*                       1. FORM ALL ONES PATTERN IN OB.                  ATC
*         FNC 414       2. MASTER CLEAR CONTROLLER.                      ATC
*           (DDLT-1)                                                     ATC
*         FNC 4         3. ISSUE FORMAT UNIT FUNCTION AND                ATC
*           (DDLT-2)       OUTPUT 2 PARAMETER WORDS.  WORD               ATC
*                          1 IS SET FOR 6-BIT MODE, MEMORY               ATC
*                          1 SELECTED.                                   ATC
*         FNC 57        4. ISSUE LOAD READ TRANSLATION                   ATC
*           (DDLT-3)       MEMORY FUNCTION AND OUTPUT 128                ATC
*                          WORDS OF ALL ONES PATTERN.                    ATC
*                       5. SET PARAMETER WORD 1 FOR MEMORY               ATC
*                          1, PACKED A/D MODE.                           ATC
*         FNC 4         6. ISSUE FORMAT UNIT FUNCTION AND                ATC
*           (DDLT-4)       OUTPUT 2 PARAMETER WORDS.                     ATC
*         FNC 47        7. ISSUE COPY READ CODE TRANSLATION              ATC
*           (DDLT-5)       MEMORY FUNCTION AND INPUT 171                 ATC
*                          WORDS.                                        ATC
*         DCN           8. DEACTIVATE THE CHANNEL.                       ATC
*           (DDLT-6)                                                     ATC
*                       9. SET UP EXPECTED DATA PATTERN.                 ATC
*                      10. COMPARE ACTUAL AND EXPECTED DATA.             ATC
*                      11. END MODULE.                                   ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         REPORTS DATA COMPARE ERRORS IF ALL ONES PATTERN                ATC
*         WRITTEN IN 6-BIT MODE AND READ BACK IN PACKED                  ATC
*         MODE DOES NOT COMPARE WITH EXPECTED PATTERN.                   ATC
*                                                                        ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*         DATA COMPARISON ERRORS.                                        ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC984  DATA COMPARE                                           ATC006K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/         TEST CODE CONVERSION, WRITE 6-BIT READ PACKED.                 ATC
 1 FORMAT ATC53 MEM-WRITE 6-BIT,RD PCKED.                                ATC
 4 FORMAT ATC53 DATA ERRORS.                                             ATC
 5 FORMAT ATC53 STATUS ERRORS.                                           ATC
 6 FORMAT ATC53 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC53 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC53 RC-ON LC=*DEC,EC=*DEC.                                   ATC
   DATA (OB(416),CON) 53D    *CURRENT MODULE NUMBER.                     ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
16 DUP 7777 TO OB FOR 256D   *FORM ALL ONES PATTERN.                     ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   GOSUB 60                                                              ATC007K
20 OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY.                      ATC
21 GOSUB 70                  *OBTAIN STATUS AND COMPARE.                 ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(407)=4600              *MEMORY 1, 6-BIT MODE.                      ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=2000                                                          ATC
   GOSUB 70                  *STATUS AND COMPARE.                        ATC
   OB(413)=1                 *INDICATE PATTERN NUMBER.                   ATC
   OB(412)=253    *PATTERN LENGTH                                        ATC011K
   OB(402)=57                *LOAD READ TRANSLATION MEM FNC.             ATC
   WC=128D                   *6-BIT MODE WORD COUNT.                     ATC
   BA=0                                                                  ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   GOSUB 70                                                              ATC
   OB(407)=4640              *MEMORY1, PACKED MODE.                      ATC
   WC=2                                                                  ATC
   BA=407                                                                ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=3000                                                          ATC
   GOSUB 70                                                              ATC
   OB(402)=47                *COPY READ TRANSLATION MEM FNC.             ATC
   WC=171D                   *PACKED MODE WORD COUNT.                    ATC
   BA=0                                                                  ATC
   OB(406)=5            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 54                  *ISSUE FUNCTION AND INPUT.                  ATC
   OB(406)=6            *******         *DDLT ACTION NUMBER.             ATC
   GOTO 30                                                               ATC
31 GOSUB 70                                                              ATC
   DUP 1763/7477 TO OB FOR 171D       *FORM COMPARE DATA.                ATC
   GOSUB 56                  *COMPARE DATA BUFFERS.                      ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   DUP 0 TO OB(420) FOR 20                                               ATC
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
   EXIT                                                                  ATC
*                                                                        ATC
30 GOSUB 60                  *ERROR REPORT.                              ATC
   GOTO 31                                                               ATC
*                                                                        ATC
50 FUNC OB(402),ABT 51       *ISSUE A FUNCTION.                          ATC
51 GOSUB 60                  *REPORT ERROR.                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50  *REPEAT CONDITION.                        ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53       *ISSUE FUNCTION AND OUTPUT.                 ATC
53 GOSUB 60                  *REPORT ERROR.                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52  *REPEAT CONDITION.                        ATC
   RETURN                                                                ATC
*                                                                        ATC
54 FIN OB(402),ABT 55        *ISSUE FUNCTION AND OUTPUT.                 ATC
55 GOSUB 60                  *REPORT ERROR.                              ATC
   IF(ES.AND.RC.NE.0) GOTO 54  *REPEAT CONDITION.                        ATC
   RETURN                                                                ATC
*                                                                        ATC
56 B3=253                    *NUMBER OF WORDS TO COMPARE.                ATC
   CALL 984                  *COMPARE DATA ROUTINE.                      ATC
   IF(B4.EQ.0) GOTO 57       *B4 ZERO IF NO ERRORS.                      ATC
   ERROR 4/120 GOSUB 60      *SHOW ERRORS.                               ATC
57 GOSUB 60                                                              ATC007K
   RETURN                                                                ATC
*                                                                        ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.10)GOTO 33  *IF ERR COUNT GT 10 EXIT MODULE             ATC010K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
*                                                                        ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777        *SET CURRENT STATUS TAKEN FLAG.                   ATC
   B1=0                      *INDEX COUNTER.                             ATC
71 B2=SB(B1).XOR.OB(B1+420)                                              ATC
   IF(B2.EQ.0) GOTO 72       *IF STAT COMPARE JUMP.                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC54,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC54.                                                  ATC
*                                                                        ATC
**  ATC54 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      54  *             ATC
*        MODULE - ATC54.                                   *             ATC
*            NEW SECTION 32.                               *             ATC
*                                                          *             ATC
*        THIS MODULE BEGINS TEST OF THE ATS SUBSYSTEM      *             ATC
*        CONTROLLER. THE ATC TEST SECTION 32.              *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*                                                                        ATC
*  OVERVIEW - ATC54.                                                     ATC
*                                                                        ATC
*         TEST FORMAT UNIT FUNCTION WITH 3 PARAMETER WORDS               ATC
*         OUTPUT.  THE THIRD PARAMETER WORD IS USED TO                   ATC
*         DISABLE AND THEN ENABLE ERROR CORRECTION.                      ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         FNC 414       1. MASTER CLEAR CONTROLLER.                      ATC
*           (DDLT-1)                                                     ATC
*         FNC 4         2. ISSUE FORMAT UNIT FUNCTION AND                ATC
*           (DDLT-2)       OUTPUT 3 PARAMETER WORDS.  WORDS              ATC
*                          ARE ZEROES EXCEPT FOR SET DISABLE             ATC
*                          ERROR CORRECTION PARAMETER.                   ATC
*         FNC 4         3. ISSUE FORMAT UNIT FUNCTION AND                ATC
*           (DDLT-3)       OUTPUT 3 PARAMETER WORDS.  WORDS              ATC
*                          ARE ZEROES EXCEPT FOR CLEAR                   ATC
*                          DISABLE ERROR CORRECTION                      ATC
*                          PARAMETER WORD.                               ATC
*                       4. END MODULE.                                   ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         VERIFIES THAT STATUS WORD 8 BIT 6, ERROR                       ATC
*         CORRECTION DISABLED SETS AND CLEARS AS EXPECTED                ATC
*         DUE TO FORMAT UNIT FUNCTION COMMAND.                           ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
*                                                                        ATC
/         TEST FORMAT UNIT WITH 3 PARAMS, DIS ERR CORR.                  ATC
 1 FORMAT ATC54 FORMAT UNIT ERR CORR DISABL PARAM.                       ATC
 5 FORMAT ATC54 STATUS ERRORS.                                           ATC
 6 FORMAT ATC54 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC54 SL-ON LC=*DEC EC=*DEC.                                   ATC
10 FORMAT ATC54 RC-ON LC=*DEC EC=*DEC.                                   ATC
   DATA (OB(416),CON) 54D    *CURRENT MODULE NUMBER.                     ATC
77 MSG 1 TO DISPLAY,PRINT.                                               ATC
   GOSUB 60                                                              ATC007K
16 OB(403)=77      *INDICATE NO UNIT USED.                               ATC004K
   MSG 1 TO DISPLAY            *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   FUNC OB(402),ABT 31       *ISSUE MASTER CLEAR FUNCTION.               ATC
   GOTO 31                                                               ATC
21 DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPECTED STATUSES.               ATC
   OB(420)=1000                                                          ATC
   IF(P4.AND.1.EQ.0) GOTO 22                                             ATC
   OB(432)=4000              *SHOW GCR CAPABILITY.                       ATC
22 GOSUB 70                  *STATUS AND COMPARE.                        ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   WC=3                      *3 PARAMETER WORDS.                         ATC
   BA=407                                                                ATC
   OB(411)=6000              *DISABLE ERROR CORRECTION.                  ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=100               *SHOW ERROR CORR DISABLED STAT.             ATC
   GOSUB 70                                                              ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   WC=3                      *3 PARAMETER WORDS.                         ATC
   BA=407                                                                ATC
   OB(411)=4000              *ENABLE ERROR CORRECTION.                   ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=0                 *CLEAR ERR CORR DISABLED BIT.               ATC
   GOSUB 70                                                              ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0)GOTO 16   *REPEAT MODULE.                           ATC004K
   EXIT                                                                  ATC
*                                                                        ATC
31 GOSUB 60                  *REPORT ERROR.                              ATC
   GOTO 21                                                               ATC
*                                                                        ATC
50 FOUT OB(402),ABT 51       *ISSUE FUNCTION AND OUTPUT.                 ATC
51 GOSUB 60                  *REPORT ERROR.                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50  *REPEAT CONDITION.                        ATC
   RETURN                                                                ATC
*                                                                        ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
                                                                         ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777        *SET CURRENT STATUS TAKEN FLAG.                   ATC
   B1=0                      *INDEX COUNTER.                             ATC
71 B2=SB(B1).XOR.OB(B1+420)                                              ATC
   IF(B2.EQ.0) GOTO 72       *IF STAT COMPARE JUMP.                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
*                                                                        ATC
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70   *REPEAT CONDITION.                       ATC
   RETURN          *RETURN.                                              ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC56,6000,(44,54,55),LOCK                                     ATC003K
*** ATC - MODULE ATC56.                                                  ATC
*                                                                        ATC
**  ATC56 - EXTERNAL DOCUMENTATION.                                      ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      14  *             ATC
*                                                          *             ATC
*        MODULE - ATC56.                                   *             ATC
*                                                          *             ATC
*        START SECTION 4, SUBSECTIONS 0 - 13.              *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*  OVERVIEW - ATC56,ATC560,ATC561,ATC562.                                ATC
*                                                                        ATC
*        TEST OF LOOP WRITE TO READ TCU FOR ALL PATTERNS                 ATC
*        WITH ERROR CORRECTION DISABLED.                                 ATC
*        EACH SUBSECTION USES A DIFFERENT LOOP WRITE TO                  ATC
*        READ TCU PARAMETER VALUE.                                       ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*                    1. CLEAR LOOP 1 COUNTER TO 0.                       ATC
*                       COUNTER IS USED AS A SUBSECTION                  ATC
*                       COUNTER.                                         ATC
*         FNC 414    2. MASTER CLEAR CONTROLLER.                         ATC
*           (DDLT-1)                                                     ATC
*                    3. SET FORMAT UNIT PARAMETER 1 FOR                  ATC
*                       PACKED MODE.                                     ATC
*                    4. SET PARAMETER 2 TO 0000.                         ATC
*                       SET PAREMETER 3 TO 6000 .                        ATC
*         FNC 4      5. ISSUE FORMAT UNIT AND OUTPUT                     ATC
*           (DDLT-2)    TWO PARAMETER WORDS.                             ATC
*                    6. SET INITIAL WORD LENGTH TO 100B.                 ATC
*                    7. SET PATTERN NUMBER TO 1.                         ATC
*                    8. SET LOOP 2 COUNTER TO 1.                         ATC
*                    9. USING LOOP 1 COUNTER AS AN INDEX                 ATC
*                       GET CONSTANT FOR LWTR TCU PARAMETER              ATC
*                       WORD 3. THESE CONSTANTS ARE AS                   ATC
*                       FOLLOWS -                                        ATC
*                          LOOP CNT  PARAM 3     TYPE                    ATC
*                             0 ..... 350 ... GCR, 200 IPS.              ATC
*                             1 ..... 152 ... GCR, 150 IPS.              ATC
*                             2 ..... 153 ... GCR, 100 IPS.              ATC
*                             3 ..... 754 ... PE, 200 IPS.               ATC
*                             4 ..... 556 ... PE, 150 IPS.               ATC
*                             5 ..... 557 ... PE, 100 IPS.               ATC
*                             6 ..... 750 ... 9T NRZI, 200 IPS.          ATC
*                             7 ..... 552 ... 9T NRZI, 150 IPS.          ATC
*                             8 ..... 553 ... 9T NRZI, 100 IPS.          ATC
*                             9 ..... 670 ... 7T NRZI, 200 IPS.          ATC
*                            10 ..... 472 ... 7T NRZI, 150 IPS.          ATC
*                            11 ..... 473 ... 7T NRZI, 100 IPS.          ATC
*                                                                        ATC
*         FNC 75    10. ISSUE LWR TCU FUNCTION AND OUTPUT                ATC
*           (DDLT-3)    PARAMETER WORD.                                  ATC
*                   11. CALL PATTERN GENERATOR.                          ATC
*         FNC 50    12. ISSUE WRITE FUNCTION AND OUTPUT DATA             ATC
*           (DDLT-4)    BLOCK.                                           ATC
*                   13. INCREASE PATTERN NUMBER.                         ATC
*                       INCREASE LOOP 2 COUNTER.                         ATC
*                   14. REPEAT FROM 10 FOR ALL PATTERNS.                 ATC
*         FNC 75    15. ISSUE LWR TCU FUNCTION AND OUTPUT                ATC
*           (DDLT-5)    PARAMETER WORD.                                  ATC
*         FNC 51    16. ISSUE WRITE TAPE MARK/FILE MARK                  ATC
*           (DDLT-6)    FUNCTION.                                        ATC
*                   17. INCREASE LOOP 1 COUNTER FOR NEXT                 ATC
*                       SUBSECTION WHICH SELECTS NEXT LWR                ATC
*                       TCU PARAMETER CONSTANT.                          ATC
*                   18. REPEAT FROM 1 ABOVE FOR REMAINING                ATC
*                       SUBSECTIONS.                                     ATC
*                   19. END MODULE.                                      ATC
*                                                                        ATC
*                                                                        ATC
*  ERRORS DETECTED -                                                     ATC
*                                                                        ATC
*         COMPARES EXPECTED AND ACTUAL STATUSES AFTER EACH               ATC
*         FUNCTION IS ISSUED.                                            ATC
*                                                                        ATC
*  ERROR MESSAGES ISSUED -                                               ATC
*                                                                        ATC
*         ALL APPLICABLE  LOW LEVEL PRODUCT OVERLAY                      ATC
*         ERROR CODES AND MESSAGES IF THEY OCCUR.                        ATC
*                                                                        ATC
*         ANY STATUS COMPARISON ERRORS AFTER A FUNCTION OR               ATC
*         OTHER OPERATION HAS BEEN COMPLETED.                            ATC
*                                                                        ATC
*  REPEAT CONDITION LOOPS -                                              ATC
*                                                                        ATC
*         ALLOWS FOR SUBROUTINE REPEAT ERROR LOOPS ON                    ATC
*         FUNCTION, STATUS ABORTS (ABT).                                 ATC
*                                                                        ATC
*  MODULES CALLED-                                                       ATC001K
*         ATC981 PATTERN GENERATOR                                       ATC001K
*                1= ALL ONES                                             ATC001K
*                2= ALL ZEROS                                            ATC001K
*                3= ALTERNATING ONES,5252                                ATC001K
*                4= ALTERNATING ONES FRAME TO FRAME                      ATC001K
*                5= SLIDING ONES                                         ATC001K
*                6= SLIDING ZEROS                                        ATC001K
*                7= INCREMENTING                                         ATC001K
*               10= ALTERNATING ZEROS AND ONES                           ATC001K
*               11= ALL ZEROS WITH FRAME OF ALL ONES                     ATC001K
*         ATC985  ERROR PROCESSOR                                        ATC001K
/        SECTION 4, SUBSECTION 0 THRU 13.                                ATC
   DATA (OB(416),CON) 56D    *CURRENT MODULE NUMBER.                     ATC
   DATA (OB(440),CON) 350,152,153,754,556,557,750,552,553,               ATC
  ,670,472,473                                                           ATC
   DATA (OB(454),CON) 75,76,72,45,46,42,65,66,62,225,226,222             ATC
*                                                                        ATC
77 GOTO 20                                                               ATC
20 EXIT TO 560               *GO TO FIRST SUBMODULE.                     ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      140 *             ATC
*                                                          *             ATC
*        MODULE - ATC560.                                  *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC560,6000,(44,54,55),LOCK                                    ATC003K
 1 FORMAT ATC56 LOOP WRITE TO READ TCU TEST-ERR CORR DISABLE             ATC
*                                                                        ATC
77 MSG 1 TO DISPLAY,PRINT                                                ATC
   OB(404)=1                  *FIRST SUBMODULE.                          ATC
   OB(403)=77                *INDICATE NO UNIT USED.                     ATC
   OB(414)=0                 *INITIAL SUBSECTION NUMBER.                 ATC
   IF(P4.AND.1.NE.0.)GOTO 75   *BYPASS GCR COUNTS 
   OB(414)=3
75 EXIT TO 561
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      141 *             ATC
*                                                          *             ATC
*        MODULE - ATC561.                                  *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC561,6000,(44,54,55),LOCK                                    ATC003K
 2 FORMAT ATC56 START SUBSEC *OCT.                                       ATC
 5 FORMAT ATC56 STATUS ERRORS.                                           ATC
 7 FORMAT ATC56 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC56 RC-ON LC=*DEC,EC=*DEC.                                   ATC
*                                                                        ATC
77 MSG 2 (OB(414)) TO DISPLAY,PRINT                                      ATC
   GOSUB 60                                                              ATC008K
   OB(404)=2                 *SECOND SUBMODULE NUMBER.                   ATC
   MSG 2 (OB(414))TO DISPLAY   *DISPLAY THE RUN MESSAGE.                 ATC008K
   OB(402)=414               *MASTER CLEAR FUNCTION.                     ATC
   OB(406)=1            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=1000                                                          ATC
   OB(432)=0                  *NOT GCR
   IF(P4.AND.1.NE.0)OB(432)=4000   *GCR CAPABILITY.                      ATC
20 GOSUB 70         *OBTAIN GENERAL STATUS AND CHECK.                    ATC
*                                                                        ATC
   WC=3                                                                  ATC
   BA=407                                                                ATC
   OB(411)=6000              *DISABLE ERROR CORRECTION                   ATC
   OB(407)=240               *PACKED A/D MODE.                           ATC
   OB(402)=4                 *FORMAT UNIT FUNCTION.                      ATC
   OB(406)=2            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(427)=1100              *SHOW ERROR CORRECTION STATUS               ATC
   GOSUB 70         *OBTAIN GENERAL STATUS AND CHECK.                    ATC
*                                                                        ATC
35 OB(412)=100               *INITIAL WORD LENGTH.                       ATC
   B3=OB(414)                *SUBSECTION AS INDEX NUMBER.                ATC
36 OB(413)=1                 *SET INITIAL PATTERN NUMBER.                ATC
   OB(415)=1                 *LOOP 2 COUNTER.                            ATC
*                                                                        ATC
37 OB(411)=OB(B3+440)        *PARAMETER 3 TERM.                          ATC
   WC=1                                                                  ATC
   BA=411                                                                ATC
   OB(402)=75                *LOOP WRITE TO READ FUNCTION.               ATC
   OB(406)=3            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(421)=0                                                             ATC
   OB(427)=1300              *ERR CORRECTION STATUS                      ATC
   OB(432)=OB(432).XOR.OB(B3+454)                                        ATC
   GOSUB 70         *OBTAIN GENERAL STATUS AND CHECK.                    ATC
*                                                                        ATC
   CALL 981                  *GO TO PATTERN GENERATOR.                   ATC
   GOSUB 60                                                              ATC007K
*                                                                        ATC
   BA=0                                                                  ATC
   WC=OB(412)                *CURRENT WORD COUNT USED.                   ATC
   OB(402)=50                *WRITE FUNCTION.                            ATC
   OB(406)=4            *******         *DDLT ACTION NUMBER.             ATC
   GOSUB 52                  *ISSUE FUNCTION AND OUTPUT.                 ATC
   OB(432)=OB(432).AND.6000                                              ATC
   OB(427)=1100              *ERR CORRECTION STATUS                      ATC
   B0=1             *RETAIN CURRENT BLOCK ID STAT.                       ATC
   GOSUB 70         *OBTAIN GENERAL STATUS AND CHECK.                    ATC
*                                                                        ATC
   OB(413)=OB(413)+1         *INCREASE PATTERN NUMBER.                   ATC
   OB(415)=OB(413)           *USE AS LOOP 2 COUNTER.                     ATC
   IF(OB(413).LE.10) GOTO 37   *LOOP ON PATTERNS.                        ATC
*                                                                        ATC
33 EXIT TO 562             *GO TO THIRD SUBMODULE.                       ATC008K
*                                                                        ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE  SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B0.EQ.0) GOTO 74                                                   ATC
   OB(421)=SB(1).AND.7770    *USE CURRENT BLOCK ID STAT.                 ATC
   B0=0                      *CLEAR FLAG.                                ATC
74 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      142 *             ATC
*                                                          *             ATC
*        MODULE - ATC562.                                  *             ATC
*                                                          *             ATC
* **********************************************************             ATC
   MODULE ATC562,6000,(44,54,55),LOCK                                    ATC003K
 5 FORMAT ATC56 STATUS ERRORS.                                           ATC
 6 FORMAT ATC56 END OF MODULE, *DEC ERRORS.                              ATC
 7 FORMAT ATC56 SL-ON LC=*DEC,EC=*DEC.                                   ATC
10 FORMAT ATC56 RC-ON LC=*DEC,EC=*DEC.                                   ATC
11 FORMAT ATC56 END OF SUBSEC *OCT.                                      ATC
*                                                                        ATC
77 GOSUB 60                                                              ATC007K
   OB(404)=3                 *THIRD SUBMODULE NUMBER.                    ATC
   OB(402)=75              *LOOP WRITE TO READ TCU FUNCTION.             ATC
   WC=1                      *ONE WORD PARAMETER.                        ATC
   BA=411                   *BEGINNING ADDRESS OF PARAMETER.             ATC
   OB(406)=5                 *DDLT ACTION NUMBER.                        ATC
   GOSUB 52                *ISSUE FUNCTION AND OUTPUT PARAM.             ATC
   OB(421)=0                                                             ATC
   OB(427)=1300            *ERR CORRECTION STATUS.                       ATC
   OB(432)=OB(432).XOR.OB(B3+454)                                        ATC
   GOSUB 70                  *STATUS AND COMPARE.                        ATC
   OB(402)=51          *WRITE TAPE MARK/FILE MARK FUNCTION.              ATC
   OB(406)=6                 *DDLT ACTION NUMBER.                        ATC
   GOSUB 50                  *ISSUE FUNCTION.                            ATC
   OB(420)=OB(420)+20        *FILE MARK STATUS.                          ATC
   OB(427)=1100              *ERR CORRECTION STATUS.                     ATC
   OB(432)=OB(432).AND.4000                                              ATC
   B0=1                      *RETAIN BLOCK ID STATUS.                    ATC
   GOSUB 70                  *STATUS AND COMPARE.                        ATC
*                                                                        ATC
   MSG 11(OB(414)) TO DISPLAY,PRINT  *END SUBSECTION MESSAGE.            ATC
   OB(414)=OB(414)+1         *INCREASE LOOP 1 COUNTER.                   ATC
   DUP 0 TO OB(420) FOR 20   *CLEAR ALL EXPECTED STATUSES.               ATC
   IF(OB(414).LE.13) GOTO 20   *CONTINUE FOR NEXT SUBSECTION.            ATC
*                                                                        ATC
33 IF(OB(477).NE.0)MSG 6 (OB(477))TO DAYFILE,PRINT                       ATC008K
   IF(ES.AND.RM.NE.0) GOTO 22   *REPEAT MODULE.                          ATC
   GOTO 30                  *EXIT MODULE AND END TST SERIES.             ATC
*                                                                        ATC
20 EXIT TO 561               *NEXT SUBSECTION.                           ATC
22 EXIT TO 560               *START FIRST SUBMODULE.                     ATC
                                                                         ATC
50 FUNC OB(402),ABT 51                                                   ATC
   GOTO 51                                                               ATC
   RETURN                                                                ATC
51 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 50                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
52 FOUT OB(402),ABT 53                                                   ATC
   GOTO 53                                                               ATC
   RETURN                                                                ATC
53 GOSUB 60                                                              ATC
   IF(ES.AND.RC.NE.0) GOTO 52                                            ATC
   RETURN                                                                ATC
* **********************************************************             ATC
*                                                          *             ATC
*        ERROR DISPLAY SUBROUTINE. SETS UP TOTAL MESSAGE   *             ATC
*        BUFFER FOR DISPLAY. IF SCOPE-LOOP REQUIRED FULL   *             ATC
*        DISPLAY WILL NOT BE MADE, THE  SUBROUTINE WILL    *             ATC
*        SKIP THE CALL TO THE DISPLAY (985) MODULE.        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
60 IF(ES.AND.SL.NE.0) B9=7  *IF SL B9=7                                  ATC
   IF(ES.AND.CS.EQ.CS)B9=10                                              ATC
   IF(B9.LT.7)GOTO 65       *NO LOOPS EXIT ROUTINE.                      ATC
   IF(B9.GT.7)GOTO 64       *IS REPEAT CONDITION.                        ATC
   IF(EC.GE.4000)OB(477)=OB(477)+1   *ADD ONE TO ERR CT.                 ATC
   IF(EM.NE.0)OB(477)=OB(477)+1                                          ATC
   GOTO 62                                                               ATC
64 IF(EC.GE.4000)CALL 985    *IF RC AND ABT GIVE ERR.                    ATC
   IF(EM.NE.0)CALL 985       *IF RC AND ERR GIVE ERR.                    ATC
62 B11=B11+1                 *INCREASE LOOP COUNTER.                     ATC
   MSG B9(B11,OB(477))TO DISPLAY                                         ATC
   GOTO 67                                                               ATC
65 IF(EM.NE.0)CALL 985     *CALL ERR PROCESSOR.                          ATC
   IF(OB(477).GT.4)GOTO 33   *IF ERR COUNT GT 4 EXIT MODULE.             ATC008K
67 DCN,ABT 63              *                                             ATC
63 B9=0                    *CLEAR REG.                                   ATC
   RES,ABT 65                                                            ATC007K
   OB(417)=0               *CLEAR CURRENT STATUS TAKEN FLAG.             ATC
66 RETURN                      *RETURN TO CALLING STATEMENT.             ATC
* **********************************************************             ATC
*                                                          *             ATC
*        DETAILED STATUS SUBROUTINE                        *             ATC
*        ISSUES FUNCTION 12 (FUNC 12)                      *             ATC
*        INPUTS STATUS (STATUS ....)                       *             ATC
*        COMPARES EXPECTED AND ACTUAL STATUS BUFFERS.      *             ATC
*        GOES TO REPORT ERRORS IF STATUS DOES NOT COMPARE. *             ATC
* **********************************************************             ATC
70 FUNC 12,ABT 73                                                        ATC
   STATUS 20 WORDS TO SB,ABT 73                                          ATC
   OB(417)=7777              *SET CURRENT STATUS TAKEN FLAG.             ATC
   IF(B0.EQ.0) GOTO 74                                                   ATC
   OB(421)=SB(1).AND.7770    *USE CURRENT BLOCK ID STAT.                 ATC
   B0=0                      *CLEAR FLAG.                                ATC
74 B1 = 0                    *INDEX COUNTER                              ATC
71 B2 = SB(B1).XOR.OB(B1+420)                                            ATC
   IF(B2.EQ.0) GOTO 72      *IF STAT COMPARE - JUMP                      ATC
   ERROR 5/1 GOTO 76                                                     ATC
72 GOTO 71 WHILE (B1+1.LE.17)  *CHECK 18 WORDS                           ATC007K
   OB(417)=0     *CLEAR CURRENT STATUS TAKEN FLAG.                       ATC
   GOTO 76                                                               ATC000K
73 OB(406)=OB(406)+100       *ADD ABT INFO TO DDLT CONSTANT.             ATC
76 GOSUB 60                   *ERROR REPORT.                             ATC
   IF(ES.AND.RC.NE.0) GOTO 70                                            ATC
   RETURN                                                                ATC
*                                                                        ATC
30 END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC981,6000,(44,54,55),LOCK                                    ATC003K
*** ATC - MODULE 981.                                                    ATC
*                                                                        ATC
**  ATC981 EXTERNAL DOCUMENTATION.                                       ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      981 *             ATC
*                                                          *             ATC
*        MODULE - ATC981.                                  *             ATC
*                                                          *             ATC
*                PATTERN GENERATOR.                        *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*                                                                        ATC
*  OVERVIEW - ATC981.                                                    ATC
*                                                                        ATC
*        PATTERN GENERATOR.                                              ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*        ENTERED WITH OB(412) = WORD COUNT.                              ATC
*                     OB(413) = PATTERN NUMBER.                          ATC
*        EXIT TO CALLING SEQUENCE STATEMENT.                             ATC
*                                                                        ATC
*        1 = ALL ONES.                                                   ATC
*        2 = ALL ZEROES.                                                 ATC
*        3 = ALTERNATING ONES, 5252.                                     ATC
*        4 = ALTERNATING ONES, FRAME TO FRAME.                           ATC
*        5 = SLIDING ONES.                                               ATC
*        6 = SLIDING ZEROES.                                             ATC
*        7 = INCREMENTING.                                               ATC
*       10 = ALTERNATING ZEROES AND ONES.                                ATC
*       11 = ALL ZEROES WITH FRAME OF ALL ONES.                          ATC
*                                                                        ATC
77 IB(400)=B0                *SAVE OPERATING REGISTERS.                  ATC
   IB(401)=B1                                                            ATC
   IB(402)=B2                                                            ATC
   IB(403)=B3                                                            ATC
   IB(404)=B4                                                            ATC
   IB(405)=B5                                                            ATC
   IB(406)=B6                                                            ATC
   IB(407)=B7                                                            ATC
   B5=OB(412)                *WORD COUNT.                                ATC
   B6=OB(413)                *PATTERN NUMBER.                            ATC
*                                                                        ATC
   IF(B5.EQ.0) GOTO 60       *EXIT IF WORD COUNT ZERO.                   ATC
   IF(B5.AND.1.EQ.0) GOTO 20  *ASSURE WORD COUNT EVEN.                   ATC
   B5=B5+1                                                               ATC
20 IF(B5.LE.400)GOTO 21   *IF BUFFER TO BIG                              ATC002K
   B5=400                    *ASSURE NO MORE THAN 400 WORDS.             ATC
21 IF(B6.EQ.0) GOTO 60       *EXIT IF PATTERN IS ZERO.                   ATC
   IF(B6.EQ.1)GOTO 30    *ONES REQUESTED.                                ATC002K
   IF(B6.EQ.2)GOTO 32    *ALL ZEROS.                                     ATC002K
   IF(B6.EQ.3)GOTO 34    *ALTERNATING ONES.                              ATC002K
   IF(B6.EQ.4)GOTO 36    *ALTERNATING ONES FRAMED.                       ATC002K
   IF(B6.EQ.5)GOTO 40    *SLIDING ONES.                                  ATC002K
   IF(B6.EQ.6)GOTO 45    *SLIDING ZEROS.                                 ATC002K
   IF(B6.EQ.7)GOTO 50    *INCREMENTING.                                  ATC002K
   IF(B6.EQ.10)GOTO 52   *ALTERNATING ZEROS AND ONES.                    ATC002K
   IF(B6.EQ.11)GOTO 54   *ALL ZEROS WITH FRAME OF ONES.                  ATC002K
   OB(413)=7777              *NO PATTERN TYPE CALLED FOR.                ATC
   GOTO 60                   *EXIT THIS MODULE.                          ATC
*                                                                        ATC
30 DUP 7777 TO OB FOR B5     *ALL ONES PATTERN.                          ATC
   GOTO 60                   *EXIT.                                      ATC
*                                                                        ATC
32 DUP 0 TO OB FOR B5        *ALL ZEROES PATTERN.                        ATC
   GOTO 60                   *EXIT.                                      ATC
*                                                                        ATC
34 DUP 5252 TO OB FOR B5     *ALTERNATING ONES PATTERN.                  ATC
   GOTO 60                   *EXIT.                                      ATC
*                                                                        ATC
36 B5=B5-4                   *ASSURE WORD LIMIT.                         ATC
   IB(410)=2532              *ALTERNATING ONES,FRAMED.                   ATC
   IB(411)=5125                                                          ATC
   IB(412)=5245                                                          ATC
   IB(413)=2652                                                          ATC
   B1=0                                                                  ATC
37 COPY IB(410) TO OB(B1) FOR 4                                          ATC
   B1=B1+4                                                               ATC
   IF(B1.LE.B5) GOTO 37                                                  ATC
   GOTO 60                   *EXIT                                       ATC
*                                                                        ATC
40 B5=B5-2                   *ASSURE FULL WORD COUNT.                    ATC
   B1=0                                                                  ATC
   B4=0                                                                  ATC
41 B6=200                    *SLIDING ONES PATTERN.                      ATC
42 GOSUB 61                                                              ATC
   B6=B6.RS.1                *SHIFT BIT RIGHT ONE.                       ATC
   IF(B6.EQ.0) GOTO 41                                                   ATC
   GOTO 42                                                               ATC
*                                                                        ATC
45 B5=B5-2                   *ASSURE FULL WORD COUNT.                    ATC
   B1=0                                                                  ATC
   B4=0                                                                  ATC
46 B3=200                    *SLIDING ZERO PATTERN.                      ATC
47 B6=B3.XOR.377             *COMPLEMENT BITS.                           ATC
   GOSUB 61                                                              ATC
   B3= B3.RS.1                                                           ATC
   IF(B3.EQ.0) GOTO 46                                                   ATC
   GOTO 47                   *LOOP TO COMPLETE BUFFER.                   ATC
*                                                                        ATC
50 B5=B5-2                   *ASSURE FULL WORD COUNT.                    ATC
   B1=0                                                                  ATC
   B4=0                                                                  ATC
   B6=0                                                                  ATC
51 GOSUB 61                                                              ATC
   B6=B6+1                   *INCREASING SEQUENTIAL PATTERN.             ATC
   GOTO 51                                                               ATC
*                                                                        ATC
52 B5=B5-2                   *ASSURE FULL WORD COUNT.                    ATC
   B1=0                                                                  ATC
   B4=0                                                                  ATC
53 B6=0                      *ALTERNATING ZEROES AND ONES.               ATC
   GOSUB 61                                                              ATC
   B6=377                                                                ATC
   GOSUB 61                                                              ATC
   GOTO 53                   *LOOP TO COMPLETE BUFFER.                   ATC
*                                                                        ATC
54 B1=0                                                                  ATC
55 OB(B1)=0                  *BUFFER OF ALL ZEROES.                      ATC
   GOTO 55 WHILE (B1+1.LE.B5)                                            ATC
   B5=B5-22                  *ASSURE WORD LIMIT.                         ATC
   B1=21                                                                 ATC
56 OB(B1)=377                *8 BITS OF ALL ONES IN FRAME.               ATC
   GOTO 56 WHILE (B1+22.LE.B5)                                           ATC
   GOTO 60                                                               ATC
*                                                                        ATC
60 B0=IB(400)                 *RESTORE OPERATING REGISTERS.              ATC
   B1=IB(401)                                                            ATC
   B2=IB(402)                                                            ATC
   B3=IB(403)                                                            ATC
   B4=IB(404)                                                            ATC
   B5=IB(405)                                                            ATC
   B6=IB(406)                                                            ATC
   B7=IB(407)                                                            ATC
   EXIT                      *RETURN TO ORIGINATING MODULE.              ATC
* **********************************************************             ATC
*                                                          *             ATC
*        61 - SUBROUTINE.                                  *             ATC
*        ENTER WITH  B1 = OUTPUT BUFFER WORD COUNTER.      *             ATC
*                    B4 = 3 WORD (8 BIT BYTE) COUNTER.     *             ATC
*                    B6 = 8 BIT BYTE PATTERN WORD.         *             ATC
* **********************************************************             ATC
61 IB(B4+300)=B6       *SAVE AN 8-BIT BYTE TEMPORARILY.                  ATC
   B4=B4+1                                                               ATC
   IF(B4.EQ.3) GOTO 63    *JUMP IF 3 BYTES.                              ATC
62 RETURN              *RETURN TO PICK UP 2 MORE BYTES.                  ATC
63 B4=IB(301).RS.4                                                       ATC
   OB(B1)=IB(300).LS.4+B4                                                ATC
   B4=IB(301).AND.17.LS.10   *4 BITS SHIFTED 8 LEFT.                     ATC
   OB(B1+1)=IB(302)+B4                                                   ATC
   B1=B1+2                   *INCREASE OUTPUT BUFFER COUNT.              ATC
   B4=0                      *RESET 3 WORD COUNTER.                      ATC
   IF(B1.LE.B5) GOTO 62                                                  ATC
   ENDSUB                    *END SUBROUTINE                             ATC
   GOTO 60           *EXIT TO ORIGINATING MODULE.                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC984,6000,(44,54,55),LOCK                                    ATC003K
*** ATC - MODULE 984.                                                    ATC
*                                                                        ATC
**  ATC984 EXTERNAL DOCUMENTATION.                                       ATC
* **********************************************************             ATC
*                                                      984 *             ATC
*        MODULE 984                                        *             ATC
*                                                          *             ATC
*        COMPARE DATA PATTERNS AND REPORT ANY ERRORS.      *             ATC
* **********************************************************             ATC
*                                                                        ATC
*  OVERVIEW -  ATC984.                                                   ATC
*                                                                        ATC
*         COMPARE DATA BUFFERS AND ERROR DISPLAY ROUTINE.                ATC
*                                                                        ATC
*  DESCRIPTION -                                                         ATC
*                                                                        ATC
*         THIS ROUTINE COMPARES DATA WORDS CONTAINED IN                  ATC
*         THE INPUT (IB) BUFFER WITH EXPECTED PRESET DATA                ATC001K
*         WORDS IN THE OUTPUT (OB) BUFFER.  ANY WORDS WHICH              ATC
*         DO NOT COMPARE ARE SAVED IN THE DISPLAY BUFFER FOR             ATC
*         PRESENTATION WHEN THE DISPLAY LINES GET FILLED.                ATC
*         IF PARAMETER 1 (P1) IS SET NON-ZERO, THIS                      ATC
*         ROUTINE WILL PICTURE THE ERROR DATA BLOCK AND STOP             ATC
*     AT A HALT INSTRUCTION.THIS STOP WILL NOT OCCUR                     ATC006K
*         IF P1 IS CLEAR.                                                ATC
*                                                                        ATC
*  ENTRY CONDITIONS -                                                    ATC
*                                                                        ATC
*         CALL ATC984 WITH B3 EQUAL TO NUMBER OF WORDS IN                ATC
*         OB AND IB BUFFERS TO BE COMPARED.                              ATC
*                                                                        ATC
*  EXIT CONDITIONS -                                                     ATC
*                                                                        ATC
*         EXITS WITH B4 REGISTER SET NON-ZERO IF AN ERROR                ATC
*         WAS FOUND IN ANY DATA WORDS COMPARED.                          ATC
*         EXIT WITH B4 REGISTER ZERO IF NO ERRORS OCCURRED.              ATC
*         THE CALLING MODULE WILL PROCESS THE REMAINING                  ATC
*         PORTIONS OF THE DATA ERROR MESSAGE DISPLAY.                    ATC
*                                                                        ATC
/     ENTER WITH B3 = WORDS TO COMPARE IN OB AND IB BUFFERS.             ATC
 1 FORMAT ATC DATA COMPARE ERROR(S)                                      ATC
 2 FORMAT     COMPARISON OF *OCT WORDS.                                  ATC
 3 FORMAT     LOC CNT   EXPECTED ACTUAL                                  ATC
 4 FORMAT       *OCT     *OCT    *OCT                                    ATC
77 IB(400)=B1                *SAVE B1.                                   ATC
   IB(401)=B2                *SAVE B2.                                   ATC
   B1=0                    *INDEX COUNTER FOR IB AND OB.                 ATC
   B2=0                    *INDEX COUNTER FOR DISPLAY LINES.             ATC
   B4=0              *IF B4=0 NO COMPARE ERROR.                          ATC002K
20 IF(IB(B1).NE.OB(B1)) GOTO 22   *COMPARE BUFFERS.                      ATC
21 GOTO 20 WHILE (B1+1.LT.B3)   *COMPARE B3 NUMBER OF WORDS.             ATC
   GOTO 24                                                               ATC
22 IF(B4.NE.0) GOTO 23       *HEADER MESSAGE WAS ISSUED.                 ATC
   MSG 1 TO LINE 0                                                       ATC
   MSG 2 (B3) TO LINE 1                                                  ATC
   MSG 3 TO LINE 2                                                       ATC
   B4=77                     *SET ERROR FLAG NON ZERO.                   ATC
   B2=3                      *NEXT LINE FOR MESSAGE.                     ATC
23 MSG 4 (B1,OB(B1),IB(B1)) TO LINE B2                                   ATC
   B2=B2+1                   *INCREASE LINE COUNT.                       ATC
   IF(B2.LT.47) GOTO 21      *FILL DISPLAY IF NEEDED.                    ATC
   B2=0                      *CLEAR LINE COUNT TO CONTINUE.              ATC
   PICTURE                                                               ATC
   IF(P1.EQ.0) GOTO 26       *NO STOP FOR DATA DISPLAY.                  ATC
   HALT                                                                  ATC000K
26 BLANK                                                                 ATC
   GOTO 21                   *CONTINUE REST OF DATA CHECK.               ATC
24 IF(B2.EQ.0) GOTO 25       *NO FURTHER DISPLAY LINES.                  ATC
   PICTURE                                                               ATC
   IF(P1.EQ.0) GOTO 25       *NO STOP FOR DATA DISPLAY.                  ATC
   HALT                                                                  ATC000K
25 BLANK                                                                 ATC007K
   B1=IB(400)                                                            ATC007K
   B2=IB(401)                                                            ATC
   EXIT                      *RETURN TO CALLING ROUTINE.                 ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC985,6000,(44,54,55),LOCK                                    ATC003K
*** ATC - MODULE 985.                                                    ATC
*                                                                        ATC
**  ATC985 EXTERNAL DOCUMENTATION.                                       ATC
* **********************************************************             ATC
*                                                          *             ATC
*                                                      985 *             ATC
*                                                          *             ATC
*        MODULE - ATC985.                                  *             ATC
*                                                          *             ATC
*                ERROR DISPLAY MESSAGES ROUTINE.           *             ATC
*                                                          *             ATC
*                                                          *             ATC
* **********************************************************             ATC
*                                                                        ATC
*        THIS MODULE IS CALLED TO SET UP THE ERROR DISPLAY.              ATC
*        THE FOLLOWING REGISTERS AND BUFFERS WILL BE                     ATC
*        REFERENCED UPON ENTRY TO THIS CALLED MODULE.                    ATC
*                                                                        ATC
*        SB(000) TO SB(017) = ACTUAL GENERAL STATUS                      ATC
*        OB(400) = DDLT NUMBER FIRST OCTAL WORD.                         ATC
*        OB(401) = DDLT NUMBER SECOND OCTAL WORD.                        ATC
*        OB(402) = LAST FUNCTION ISSUED BY TEST                          ATC
*        OB(403) = UNIT SELECTED                                         ATC
*        OB(404) = DDLT SUBMODULE NUMBER,                                ATC
*        OB(405) = DDLT ERROR TYPE NUMBER.                               ATC
*        OB(406) = DDLT ACTION NUMBER.                                   ATC
*        OB(407) = FORMAT UNIT PARAMETER 1                               ATC
*        OB(410) = FORMAT UNIT PARAMETER 2                               ATC
*        OB(411) = LOOPING FUNCTION PARAMETER.                           ATC
*        OB(412) = RECORD LENGTH                                         ATC
*        OB(413) = PATTERN NUMBER                                        ATC
*        OB(414) = LOOP 1 COUNTER                                        ATC
*        OB(415) = LOOP 2 COUNTER                                        ATC
*        OB(416) = CURRENT  MODULE RUNNING.                              ATC
*        OB(417) = STATUS HAS BEEN TAKEN FLAG.                           ATC
*        OB(420) TO OB(437) = EXPECTED GENERAL STATUS                    ATC
*                                                                        ATC
 1 FORMAT.  EC=*OCT,EM=*OCT, LFN*OCT,U*OCT.                              ATC
 2 FORMAT ATC985 ABORT EC=*OCT.EM=*OCT,LFN=*OCT,EA=*OCT                  ATC004K
 3 FORMAT   FAILED TO GET CURRENT STATUS.                                ATC
 4 FORMAT   DATA ERROR.                                                  ATC
 5 FORMAT   STATUS ERROR.                                                ATC
 6 FORMAT ATC - *DEC CONTINUE RUN.                                       ATC
 7 FORMAT   DDLT NUMBER - *OCT *OCT.                                     ATC
10 FORMAT   ISSUED MESSAGE.                                              ATC
11 FORMAT   CURRENT ATC MODULE    = *DEC.                                ATC
12 FORMAT.ATC TEST ERROR DISPLAY.                                        ATC
13 FORMAT.              CURRENT STATUS                                   ATC
14 FORMAT.  STATUS    1     2     3     4                                ATC
15 FORMAT.   EXPCTD *OCT  *OCT  *OCT  *OCT                               ATC
16 FORMAT.   ACTUAL *OCT  *OCT  *OCT  *OCT                               ATC
17 FORMAT.  STATUS    5     6     7     8                                ATC
20 FORMAT.  STATUS    9    10    11    12                                ATC
21 FORMAT.  STATUS   13    14    15    16                                ATC
22 FORMAT.  CURRENT TEST FUNCTION = *OCT.                                ATC
23 FORMAT.  SP1 = *OCT, CNT1 = *DEC, LNG = *OCT.                         ATC
24 FORMAT        LAST AVAILABLE STATUS.                                  ATC
25 FORMAT.  SP2 = *OCT, CNT2 = *DEC, PAT = *OCT.                         ATC
26 FORMAT   OTHER ERROR STOP EC=*OCT.                                    ATC
27 FORMAT.  SP3 = *OCT.                                                  ATC
*                                                                        ATC
77 MSG 12 TO LINE 1                                                      ATC
   MSG 11 (OB(416)) TO LINE 2                                            ATC
   MSG 22 (OB(402)) TO LINE 3                                            ATC
   MSG 23 (OB(407),OB(414),OB(412)) TO LINE 4                            ATC
   MSG 25 (OB(410),OB(415),OB(413)) TO LINE 5                            ATC
   MSG 27 (OB(411)) TO LINE 6                                            ATC
   OB(401)=OB(406)           *FORM ACTION NUMBER.                        ATC
*                                                                        ATC
   IF(EC.GE.4000) GOTO 30   *JUMP IF  ISSUED ABT.                        ATC
   MSG 1 (EC,EM,LF,OB(403))TO LINE 40                                    ATC
   IF(EM.EQ.4) GOTO 40       *DATA ERROR TYPE NUMBER.                    ATC
   IF(EM.EQ.5) GOTO 42       *STATUS ERROR TYPE NUMBER.                  ATC
   OB(405)=4                 *OTHER TYPE ERROR STOP -DDLT.               ATC
   MSG 26 (EC) TO LINE 27                                                ATC
   GOTO 31                                                               ATC
40 OB(405)=2                 *DATA TYPE ERROR - DDLT.                    ATC
   GOTO 41                                                               ATC
42 OB(405)=1                 *SATATUS TYPE ERROR - DDLT.                 ATC
41 MSG EM TO LINE 27                                                     ATC
   GOTO 31                                                               ATC
*                                                                        ATC
30 MSG 10 TO LINE 27                                                     ATC
   OB(405)=3                       *ERROR TYPE NUMBER.                   ATC
   MSG EM TO LINE 40               *MESSAGE HERE.                        ATC
*                                                                        ATC
31 IF(OB(417).NE.0) GOTO 32  *WAS CURRENT STATUS TAKEN.                  ATC
   RES,ABT 34                                                            ATC007K
   OB(401)=OB(401)+1000      *DDLT ADDITIONAL ERROR INFO.1.              ATC
   FUNC 12,ABT 34                 *NEED CURRENT STATUS ONLY.             ATC
   OB(401)=OB(401)+1000      *DDLT ADDITIONAL ERROR INFO.2.              ATC
   STATUS 20 WORDS TO SB,ABT 34      *FOR THIS ERROR REPORT.             ATC
   OB(401)=OB(401).AND.777   *CLEAR UPPER DIGIT OF DDLT WORD.            ATC
   MSG 13 TO LINE 10                                                     ATC
   GOTO 35                                                               ATC
32 MSG 13 TO LINE 10                                                     ATC
   MSG 15 (OB(420),OB(421),OB(422),OB(423)) TO LINE 13                   ATC
   MSG 15 (OB(424),OB(425),OB(426),OB(427)) TO LINE 16                   ATC
   MSG 15 (OB(430),OB(431),OB(432),OB(433)) TO LINE 21                   ATC
   MSG 15 (OB(434),OB(435),OB(436),OB(437)) TO LINE 24                   ATC
35 MSG 14 TO LINE 11                                                     ATC
   MSG 16 (SB,SB(1),SB(2),SB(3)) TO LINE 12                              ATC
   MSG 17 TO LINE 14                                                     ATC
   MSG 16 (SB(4),SB(5),SB(6),SB(7)) TO LINE 15                           ATC
   MSG 20 TO LINE 17                                                     ATC
   MSG 16 (SB(10),SB(11),SB(12),SB(13)) TO LINE 20                       ATC
   MSG 21 TO LINE 22                                                     ATC
   MSG 16 (SB(14),SB(15),SB(16),SB(17)) TO LINE 23                       ATC
33 OB(400)=OB(416).LS.3 + OB(404)         *FORM DDLT NUMBER.             ATC
   OB(400)=OB(400).LS.3 + OB(405)                                        ATC
   MSG 7 (OB(400),OB(401)) TO LINE 30     *SHOW DDLT NUMBER.             ATC
   PICTURE                                                               ATC
   HALT                                                                  ATC
   BLANK DISPLAY                                                         ATC
   OB(477)=OB(477)+1       *INCREASE ERROR COUNTER.                      ATC
   MSG 6 (OB(416)) TO DISPLAY   *RUNNING MESSAGE.                        ATC
   EXIT TO 986         *DO DASHES FOR ERR MESSAGES.                      ATC008K
34 MSG 2 (EC,EM,LF,EA) TO LINE 35                                        ATC004K
   MSG 3 TO LINE 7                                                       ATC
   MSG 24 TO LINE 10                                                     ATC
   GOTO 35                   *SHOW LAST AVAILABLE STATUS.                ATC
*                                                                        ATC
   END 77                                                                ATC
COMPILE                                                                  ATC
   MODULE ATC986,6000,(44,54,55),LOCK                                    ATC008K
 1 FORMAT -------------------------------------------------              ATC008K
77 MSG 1 TO PRINT        *PRINT DASHES                                   ATC008K
   BLANK                                                                 ATC008K
   EXIT                                                                  ATC008K
   END 77                                                                ATC008K
COMPILE                                                                  ATC008K
   MODULE ATC99,6000,(44,54,55),LOCK                                     ATC001K
/**  ATC MODULE ATC99.                                                   ATC001K
/* ATC99 - EXTERNAL DOCUMENTATION.                                       ATC001K
/  MODULE - ATC99.                                   *                   ATC001K
/  ATC - ADVANCED TAPE SUBSYSTEM (ATS - 67X) CONTROLLER TEST.            ATC001K
/  ATC - OVERVIEW.                                                       ATC001K
/  ATC - ADVANCED TAPE SUBSYSTEM (ATS - 67X) CONTROLLER TEST.            ATC001K
/AUTHOR -                                                                ATC001K
/             COMPUTER DEVELOPMENT DIVISION.                             ATC001K
/             DIAGNOSTIC ENGINEERING I.                                  ATC001K
/             DATE 78/05/12.                                             ATC001K
/    OVERVIEW -                                                          ATC001K
/             ATC IS THE ON-LINE DIAGNOSTIC FOR THE ADVANCED             ATC001K
/             TAPE SUBSYSTEM (ATS) CONTROLLER. THIS TEST IS              ATC001K
/             A  LANGUAGE CONVERSION OF THE CYBER, SMM                   ATC001K
/             OFF-LINE CONTROLLER TEST -ATC-.                            ATC001K
/             ACCESS LEVEL = 10                                          ATC001K
/            CONTROL WARE LEVEL....D(READ ONLY MEMORY)                   ATC007K
/    USER ALERT - WHEN DOING A REPEAT CONDITION OR A SCOPE               ATC001K
/                 LOOP IT WILL BE NECESSARY,IN SOME MODULES,             ATC001K
/                 TO RESTART THE MODULE TO ELIMINATE FALSE               ATC001K
/                 ERROR REPORTING CREATED WHEN EXITING A                 ATC001K
/                 SCOPE OR REPEAT CONDITION LOOP.                        ATC001K
/                  ATC32 WILL NOT FULLY TEST THE FUNCTION                ATC011K
/                  50 ABORT UNTIL HARDWARE CHANGES ARE                   ATC011K
/                  INSTALLED.                                            ATC011K
/                  THE DCN IN SUBROUTINE 60 IS USED TO                   ATC011K
/                  ELIMINATE POTENTIAL FALSE ERROR RE-                   ATC011K
/                  PORTING ON I/O FUNCTIONS.                             ATC011K
/    CALL -                                                              ATC001K
/             RUN,ATC.   OR                                              ATC001K
/             RUN,ATC(00,01,12,13,ETC.).                                 ATC001K
/                WHERE-00,01,12,ETC., ARE ATC MODULE NUMBERS.            ATC001K
/                      CURRENT MODULES USED ARE THROUGH 56.              ATC001K
/                      MODULE NUMBERS ARE SHOWN AS DECIMAL               ATC001K
/                      NUMBERS PER  PROGRAMMING CONVENTION               ATC001K
/    PARAMETERS-                                                         ATC001K
/                                                                        ATC001K
/        CAUTION - MODULE 0 OF THIS TEST WILL VERIFY P3                  ATC001K
/                  PARAMETER ENTRY. IF THIS SECTION IS BY-               ATC001K
/                  PASSED AND TAPE TRANSPORT PARAEMETERS ARE             ATC001K
/                  IN ERROR WHEN ENTERED, THE TEST WILL GIVE             ATC001K
/                  INCORRECT ERROR MESSAGES.                             ATC001K
/                                                                        ATC001K
/   PARAMETER REGISTER SETTINGS                                          ATC001K
/                                                                        ATC001K
/ P1 -SET NON-ZERO FOR STOP TO DISPLAY ALL DATA COMPARE                  ATC001K
/     ERRORS. A FULL SCREEN OF DATA IS PRESENTED AT EACH                 ATC001K
/     STOP BEFORE THE FINAL STANDARD DATA ERROR STOP DISPLAY             ATC001K
/     IS MADE.                                                           ATC001K
/     SET TO ZERO FOR NO STOPS ON DATA ERROR PRESENTATION                ATC001K
/     (SCREEN IS MOMENTARILY DISPLAYING DATA ERRORS) BUT                 ATC001K
/     WILL STOP ON FINAL STANDARD DATA ERROR STOP DISPLAY                ATC001K
/     IF STOP ON ERROR (SE) SWITCH IS ON.                                ATC001K
/       P3 - TAPE TRANSPORT TYPE.                                        ATC001K
/            XXX1  BIT 0  -  677-2  NRZI    7 TRACK 100 IPS.             ATC001K
/            XXX2      1  -  677-3  NRZI    7 TRACK 150 IPS.             ATC001K
/            XXX4      2  -  677-4  NRZI    7 TRACK 200 IPS.             ATC001K
/            XX10      3  -  679-2  PE/NRZI 9 TRACK 100 IPS.             ATC001K
/            XX20      4  -  679-3  PE/NRZI 9 TRACK 150 IPS.             ATC001K
/            XX40      5  -  679-4  PE/NRZI 9 TRACK 200 IPS.             ATC001K
/            X100      6  -  679-5  PE/GCR  9 TRACK 100 IPS.             ATC001K
/            X200      7  -  679-6  PE/GCR  9 TRACK 150 IPS.             ATC001K
/            X400  BIT 8  -  679-7  PE/GCR  9 TRACK 200 IPS.             ATC001K
/                                                                        ATC001K
/   USER ALERT - IF THE P3 PARAMETER IS ENTERED INCORRECLY               ATC001K
/                OR DOES NOT MATCH THE SLECTED UNIT,                     ATC001K
/                A ERROR MESSAGE WILL BE DISPLAYED SHOWING               ATC001K
/                THE RECEIVED STATUS AND THE EXPECTED STATUS             ATC001K
/                                                                        ATC001K
/        P4 - CONTROLLER CAPABILITY.                                     ATC001K
/             XXX1 - GCR CAPABILITY.                                     ATC001K
/             NOTE* BITS 1 THRU 11 ARE NOT TESTED.                       ATC001K
*IF DEF,CMSE17X 
/ 
/        P9 - SKIP MODULE ATC28.
/             NONZERO - SKIP MODULE ATC28.
/             ZERO - RUN MODULE ATC28.
*ENDIF
/         THE REST OF THE PARAMETER ENTRIES AR NOT USED.                 ATC009K
/                                                                        ATC009K
/  TAPE UNIT REQUIREMENT.                                                ATC001K
/     SEVERAL OF THE  MODULES CONTAINED HEREIN REQUIRE                   ATC001K
/     A MAGNETIC TAPE MOUNTED AT THE BEGINNING OF TAPE (BOT)             ATC001K
/     POINT AND THE TAPE TRANSPORT READY STATUS LIGHT ON.                ATC001K
/     NO TAPE MOTION INSTRUCTIONS ARE ISSUED BY THIS TEST.               ATC001K
/     ONLY ONE UNIT, AS SPECIFIED ON THE  -ASSIGN-                       ATC001K
/     DIRECTIVE, IS USED FOR THE PURPOSE OF CONNECTING AND               ATC001K
/     DISCONNECTING THE UNIT WHEN CHECKING DETAILED STATUS,              ATC001K
/     UNIT STATUS AND OTHER FUNCTION CODES IN THE TEST.                  ATC001K
/ CAUTIONS -                                                             ATC001K
/ THE ATC TEST DOES NOT AND WILL NOT TEST MULTIPLE TAPE                  ATC001K
/ DRIVES.  THE TEST DOESNOT MOVE TAPE.                                   ATC001K
/ TURN OFF THE CONTROLLER CHANNEL.                                       ATC001K
/ SINCE THE ATC TEST TAKES OVER THE ENTIRE CONTROLLER AND                ATC001K
/ ALSO THE ASSOCIATED 67X TAPE DRIVE UNITS CONNECTED TO THE              ATC001K
/ CONTROLLER-THE CHANNEL FOR THE CONTROLLER SHOULD BE DOWNED             ATC001K
/ BY THE OPERATING SYSTEM BEFORE RUNNING THE TEST MODULES.               ATC001K
/ NOS - NOS/BE COMMANDS FOR TURNING OFF THE ATS CONTROLLER               ATC001K
/        CHANNEL IS AS FOLLOWS-                                          ATC001K
/                DOWN,CHXX.       (UNDER NOS)                            ATC001K
/                DWN,CHXX.        (UNDER NOS/BE)                         ATC001K
/                    WHERE - XX IS THE CHANNEL NUMBER OF THE             ATC001K
/                            ATS CONTROLLER UNDERGOING TEST.             ATC001K
/  TURN ON THE CONTROLLER CHANNEL.                                       ATC001K
/  THE ATS CONTROLLER CHANNEL IS RETURNED TO THE OPERATING               ATC001K
/  SYSTEM AT THE COMPLETION OF THE ATC TEST BY THE FOLLOWING             ATC001K
/  NOS - NOS/BE SYSTEM COMMAND.                                          ATC001K
/          UP,CHXX.         (UNDER NOS - NOS/BE)                         ATC001K
/                    WHERE - XX IS THE CHANNEL NUMBER OF THE             ATC001K
77 PASS                                                                  ATC001K
   PAUSE                                                                 ATC001K
   EXIT TO 991                                                           ATC001K
   END 77                                                                ATC001K
COMPILE,SOURCE                                                           ATC001K
   MODULE ATC991,6000,(44,54,55),LOCK                                    ATC001K
/                  ATS CONTROLLER UNDERGOING TEST.                       ATC001K
/ CODE TRANSLATION MEMORIES.                                             ATC001K
/ ANY STANDARD CODE TRANSLATION MEMORY CONTENTS HELD IN THE              ATC001K
/ CONTROLLER ARE DESTROYED BY THIS TEST.  ATC TEST MODULES               ATC001K
/ ATC00 THROUGH ATC07 (FIRST EIGHT MODULES) WRITE/READ INTO              ATC001K
/ THESE MEMORIES.THE CODE TRANSLATION MEMORIES ARE RESTORED              ATC001K
/ BY BRINGING -UP- THE CONTROLLER CHANNEL UNDER THE NOS OR               ATC001K
/      NOS/BE OPERATING SYSTEM COMMAND.                                  ATC001K
/                UP,CHXX.         (UNDER NOS - NOS/BE)                   ATC001K
/    SWITCH OPTIONS -                                                    ATC001K
/        SWITCHES REFERENCED IN THIS TEST.                               ATC001K
/             RC - REPEAT CONDITION.                                     ATC001K
/             RM - REPEAT MODULE.                                        ATC001K
/             SE - STOP ON ERROR,(HALT INSTRUCTION USE).                 ATC001K
/             SL - SCOPING LOOP (RM .OR. RC .NOT. SE)                    ATC001K
/    MODULE DESCRIPTIONS AND TEST SEQUENCE.                              ATC001K
/      ATC00  -  MASTER CLEAR FUNCTIONS AND GENERAL STATUS.              ATC001K
/      ATC01  -  TEST CODE CONVERSION MEMORIES.                          ATC001K
/      ATC02  -  TEST CODE CONVERSION MEMORIES.                          ATC001K
/      ATC03  -  TEST CODE CONVERSION MEMORIES.                          ATC001K
/         ATC030                                                         ATC001K
/      ATC04  -  TEST CODE CONVERSION MEMORIES.                          ATC001K
/      ATC05  -  TEST CODE CONVERSION MEMORIES.                          ATC001K
/      ATC06  -  TEST CODE CONVERSION MEMORIES.                          ATC001K
/      ATC07  -  TEST CODE CONVERSION MEMORIES.                          ATC001K
/      ATC08  -  LOOP WRITE TO READ,TCU ALL PATTERNS,WC                  ATC001K
/                CONSTANT.                                               ATC001K
/      ATC09  -  LOOP WRITE TO READ TCU,PATTERN CONSTANT,                ATC001K
/                INCREASING WC.                                          ATC001K
/      ATC10  -  FUNCTIONS EXECUTION.                                    ATC001K
/      ATC11  -  TEST DETAILED STATUS.                                   ATC001K
/      ATC12  -  TEST UNIT STATUS.                                       ATC001K
/      ATC13  -  TEST OPPOSITE PARITY FUNCTION.                          ATC001K
/      ATC130                                                            ATC001K
77 PASS                                                                  ATC001K
   PAUSE                                                                 ATC001K
   EXIT TO 992                                                           ATC001K
   END 77                                                                ATC001K
COMPILE,SOURCE                                                           ATC001K
   MODULE ATC992,6000,(44,54,55),LOCK                                    ATC006K
/      ATC14  -  LOOP WRITE TO READ TCU FUNCTION.                        ATC001K
/       ATC140                                                           ATC001K
/       ATC141                                                           ATC001K
/       ATC142                                                           ATC001K
/      ATC15  -  LOOP WRITE TO READ TCU FUNCTION.                        ATC001K
/      ATC16  -  TEST CLEAR UNIT FUNCTION. *                             ATC001K
/      ATC17  -  TEST RELEASE UNIT FUNCTION.                             ATC001K
/      ATC18  -  FORMAT UNIT FUNCTION CONNECTS.                          ATC001K
/      ATC19  -  FORMAT UNIT FUNCTION, 0 AND 4000                        ATC001K
/                PARAMETER 1 WORDS                                       ATC001K
/      ATC20  -  FORMAT UNIT FUNCTION ISSUE ALL DENSITIES.               ATC001K
/       ATC21  -  TEST OPPOSITE PARITY FUNCTION. *                       ATC001K
/       ATC210                                                           ATC001K
/       ATC211                                                           ATC001K
/      ATC22  -  TEST OPPOSITE DENSITY FUNCTION. *                       ATC001K
/      ATC220                                                            ATC001K
/       ATC221                                                           ATC001K
/       ATC222                                                           ATC001K
/       ATC223                                                           ATC001K
/       ATC224                                                           ATC001K
/      ATC23  -  CONNECT TEST.                                           ATC001K
/      ATC24  -  SET READ CLIP LEVELS. *                                 ATC001K
/      ATC25  -  TEST STOP MOTION. *                                     ATC001K
/      ATC26  -  TEST VELOCITY DETECTORS.                                ATC001K
/      ATC27  -  EVEN WRITE PATH PARITY.                                 ATC001K
/      ATC28  -  EVEN CHANNEL PARITY.                                    ATC001K
/      ATC29  -  FORCE DATA ERROR.                                       ATC001K
/      ATC30  -  OPPOSITE PARITY TEST.                                   ATC001K
/       ATC31  -  FORMAT UNIT CONNECTS TO UNIT.                          ATC010K
/       ATC310                                                           ATC001K
/       ATC311                                                           ATC001K
/      ATC32  -  ATTEMPT WRITE WITH NO UNIT.                             ATC001K
/      ATC33  -  LOOP WRITE TO READ UNIT FUNCTION. *                     ATC001K
/      ATC34  -  LOOP WRITE TO READ UNIT ALL PATTERNS. *                 ATC001K
/      ATC35  -  LOOP WRITE TO READ UNIT VARYING RECORD                  ATC001K
/                LENGTH. *                                               ATC001K
/      ATC36  -  LOOP WRITE TO READ UNIT WITH LONG                       ATC001K
/               RECORDS.*                                                ATC006K
/       ATC360                                                           ATC001K
/       ATC361                                                           ATC001K
/      ATC37  -  LWR TCU,CODE CONVERSIONS,VARYING DATA                   ATC001K
/                DATA PATTERNS. *                                        ATC001K
/      ATC38  -  TEST BLOCK ID.                                          ATC001K
/      ATC39  -  TEST DETAILED STATUS.                                   ATC001K
/      ATC40  -  TEST UNIT STATUS.                                       ATC001K
/      ATC41  -  SINGLE TRACK CORRECTION.                                ATC001K
/      ATC42  -  DUAL TRACK CORRECTION.                                  ATC001K
/      ATC43  -  NINE TRACK, PE ERROR CORRECTION.                        ATC001K
/      ATC44  -  GCR ERROR CORRECTION.                                   ATC001K
/      ATC45  -  TEST FORCE LOST DATA.                                   ATC001K
/      ATC46  -  TEST FORMAT UNIT, ONE PARAMETER ONLY.                   ATC001K
/      ATC47  -  FORCE TCU ERROR CODE 65.                                ATC001K
/             (REFERENCE STATUS WORD 3 ERROR TABLE)                      ATC009K
/      ATC48  -  TEST SINGLE FRAME ERROR.                                ATC001K
/      ATC49  -  NRZI, SEVEN TRACK DATA ERRORS.                          ATC001K
/      ATC50  -  NRZI, NINE TRACK WITH SINGLE TRACK ERRORS.              ATC001K
/      ATC51  -  DEADMAN TIMER TEST.                                     ATC001K
/      ATC52  -  TEST OPPOSITE DENSITY IN ALL LWR TCU MODES.             ATC001K
/      ATC53  -  CODE CONVERSION, WRITE 6-BIT READ PACKED                ATC001K
/                MODE                                                    ATC001K
/      ATC54  -  ISSUE FORMAT UNIT FUNCTION WITH 3                       ATC001K
/                PARAMETERS.                                             ATC001K
/      ATC55      (NOT USED INTENTIONALLY)                               ATC010K
/      ATC56  -  LOOP WRITE TO READ TCU FUNCTION - ERROR                 ATC001K
/                CORRECTION DISABLED.                                    ATC001K
/       ATC560                                                           ATC001K
/       ATC561                                                           ATC001K
/       ATC562                                                           ATC001K
/      ATC981 -  PATTERN GENERATOR                                       ATC001K
/      ATC984 -  DATA COMPARISON MODULE.                                 ATC001K
/      ATC985 -  ERROR PROCESSING MODULE.                                ATC001K
/      ATC986 - ERROR MESSAGE (DASHES) SEPARATOR.                        ATC009K
/                                                                        ATC001K
/                      NOTE - * INDICATES UNIT CONNECT CODE              ATC001K
/                      FUNCTION IS USED. A MAGNETIC                      ATC001K
/                      TAPE REEL SHOULD BE MOUNTED                       ATC001K
/                      AND AT LOAD POINT. UNIT                           ATC001K
/                      SHOULD BE READY. NO TAPE                          ATC001K
/                      MOTION INSTRUCTIONS ARE                           ATC001K
/                      ISSUED BY THIS TEST.                              ATC001K
/                                                                        ATC001K
77 PASS                                                                  ATC001K
   PAUSE                                                                 ATC001K
   EXIT TO 993                                                           ATC001K
   END 77                                                                ATC001K
COMPILE,SOURCE                                                           ATC001K
   MODULE ATC993,6000,(44,54,55),LOCK                                    ATC001K
/                                                                        ATC001K
/    CORE LOCATIONS OF INTEREST.                                         ATC001K
/     OUTPUT BUFFER (OB) - TERMS CONTAINED IN CORE                       ATC001K
/       400 - DDLT NUMBER (FIRST OCTAL WORD PORTION).                    ATC001K
/       401 - DDLT NUMBER (SECOND OCTAL WORD PORTION).                   ATC001K
/       402 - PRIMARY FUNCTION CODE LAST ISSUED.                         ATC001K
/       403 - UNIT NUMBER.                                               ATC001K
/       404 - SUBMODULE NUMBER USED AS DDLT TERM.                        ATC001K
/       405 - ERROR TYPE NUMBER USED AS DDLT TERM.                       ATC001K
/       406 - FUNCTION SEQUENCE NUMBER USED AS DDLT TERM.                ATC001K
/       407 - SP1 - FORMAT UNIT PARAMETER WORD 1.                        ATC001K
/       410 - SP2 - FORMAT UNIT PARAMETER WORD 2.                        ATC001K
/       411 - SP3 - LOOP WRITE TO READ TCU PARAMETER WORD.               ATC001K
/       412 - WORD COUNT LENGTH FOR I/O.                                 ATC001K
/       413 - PATTERN NUMBER.                                            ATC001K
/       414 - LOOP 1 COUNTER.                                            ATC001K
/       415 - LOOP 2 COUNTER.                                            ATC001K
/       416 - CURRENT ATC MODULE NUMBER EXECUTING.                       ATC001K
/       417 - FLAG - CURRENT STATUS TAKEN FLAG.                          ATC001K
/       420 - EXPECTED TCU STATUS WORD 1                                 ATC001K
/       421 - EXPECTED TCU STATUS WORD 2                                 ATC001K
/       422 - EXPECTED TCU STATUS WORD 3                                 ATC001K
/       423 - EXPECTED TCU STATUS WORD 4                                 ATC001K
/       424 - EXPECTED TCU STATUS WORD 5                                 ATC001K
/       425 - EXPECTED TCU STATUS WORD 6                                 ATC001K
/       426 - EXPECTED TCU STATUS WORD 7                                 ATC001K
/       427 - EXPECTED TCU STATUS WORD 8                                 ATC001K
/       430 - EXPECTED TCU STATUS WORD 9                                 ATC001K
/       431 - EXPECTED TCU STATUS WORD 10                                ATC001K
/       432 - EXPECTED TCU STATUS WORD 11                                ATC001K
/       433 - EXPECTED TCU STATUS WORD 12                                ATC001K
/       434 - EXPECTED TCU STATUS WORD 13                                ATC001K
/       435 - EXPECTED TCU STATUS WORD 14                                ATC001K
/       436 - EXPECTED TCU STATUS WORD 15                                ATC001K
/       437 - EXPECTED TCU STATUS WORD 16                                ATC001K
/                                                                        ATC001K
/       477 - ERROR ACCUMULATION COUNT FOR MODULE.                       ATC006K
/    FAULT ISOLATION SCHEME.                                             ATC001K
/       DIAGNOSTIC DECISION LOGIC TABLE (DDLT).PUBILICATION              ATC001K
/       NUMBER-60455130                                                  ATC001K
/ THIS TEST HAS BEEN DESIGNED TO PROVIDE A DDLT CAPABILITY               ATC001K
/ FOR FAULT ISOLATION PURPOSES.  A DDLT NUMBER HAS BEEN                  ATC001K
/ DEFINED TO GIVE SOME INDICATION OF THE ORDER AND                       ATC001K
/ SEQUENCE OF EVENTS OCCURING IN THIS TEST.  THE DDLT                    ATC001K
/ NUMBERS ARE TO ALLOW FOR CORRELATION WITH MOST PROBABLE                ATC001K
/ FAILING P.C. BOARD IDENTIFICATION.  THE INTENT OF THE DDLT             ATC001K
/ NO. IS TO GIVE THE CUSTOMER ENGINEER A SPECIFIC STARTING               ATC001K
/ REFERENCE POINT FOR THE CORRECTION OF EQUIPMENT                        ATC001K
/ MALFUNCTIONS.                                                          ATC001K
/ THE DDLT NUMBERS DEFINED HEREIN ARE TO BE CORRELATED TO                ATC001K
/ ACTUAL OBSERVED FAILURES INDUCED BY FAULT INJECTION ON AN              ATC001K
/ OPERATIONAL ADVANCED TAPE SUBSYSTEM (ATS) CONTROLLER.                  ATC001K
/ ALL P.C. BOARD FAULTS CORRESPONDING TO DDLT NUMBERS                    ATC001K
/ IN THIS TEST WILL BE ITEMIZED IN A TROUBLESHOOTING GUIDE.              ATC001K
/ IT IS ASSUMED THAT THIS METHOD WILL PROVIDE THE RAPID                  ATC001K
/ AND SUCCESSFUL MODULE REPLACEMENT MECHANISM NEEDED FOR A               ATC001K
/ FIELD ENVIRONMENT USAGE OF THIS TEST.                                  ATC001K
/                                                                        ATC001K
/ THE DDLT NUMBER WILL POINT TO THE LOCATION IN A PARTICULAR             ATC001K
/ FAILING MODULE WHICH, IN CONJUNCTION WITH THE MODULE                   ATC001K
/ DESCRIPTION IN THE DOCUMENTATION, WILL SHOW THE LAST                   ATC001K
/ SEQUENCE OF FUNCTIONS PERFORMED IN THE ATC.                            ATC001K
/                                                                        ATC001K
/ THE DDLT NUMBERS ARE DEFINED FOR THIS ATC TEST AS FOLLOWS              ATC001K
/   TWO 12-BIT OCTAL CONSTANTS WILL BE USED WHEN REFERENCE               ATC001K
/   TO THE DDLT NUMBER IS MADE.  THE TEST WILL PROVIDE THE               ATC001K
/   NUMBER AS A DISPLAYED LINE WITH ALL OTHER INFORMATION                ATC001K
/   SHOWN IN THE ERROR MESSAGES EXAMPLES DESCRIBED FOR                   ATC001K
/   THIS TEST.                                                           ATC001K
/                                                                        ATC001K
/      THE DISPLAY LINE IS AS SHOWN BELOW -                              ATC001K
/             DDLT NUMBER - AABC DEFF.                                   ATC001K
/              WHERE -  AA = PRIMARY ATC  MODULE                         ATC001K
/                     NUMBER. 00 THRU 56 DECIMAL                         ATC001K
/                     SHOWN AS A TWO DIGIT OCTAL                         ATC001K
/                     NUMBER.                                            ATC001K
/                       B  = SUBMODULE NUMBER IF                         ATC001K
/                            SUBMODULES ARE FOUND IN THE                 ATC001K
/                            CURRENTLY RUNNING MODULE.                   ATC001K
/                            0 - NONE                                    ATC001K
/                            1 - FIRST SUBMODULE.                        ATC001K
/                            2 - SECOND SUBMODULE.                       ATC001K
/                            3 - THIRD SUBMODULE.                        ATC001K
/                            4 - ETC,......                              ATC001K
77 PASS                                                                  ATC001K
   PAUSE                                                                 ATC001K
   EXIT TO 994                                                           ATC001K
   END 77                                                                ATC001K
COMPILE,SOURCE                                                           ATC001K
   MODULE ATC994,6000,(44,54,55),LOCK                                    ATC001K
/                        C  = ERROR TYPE NUMBER. ONE OCTAL               ATC001K
/                             DIGIT DESIGNATING THE TYPE                 ATC001K
/                             OF ERROR ENCOUNTERED.                      ATC001K
/                             0 - NONE (NOT EXPECTED).                   ATC001K
/                             1 - STATUS ERROR STOP.                     ATC001K
/                             2 - DATA ERROR STOP.                       ATC001K
/                             3 - ERROR STOP.                            ATC001K
/                           4 - OTHER ERROR STOP **                      ATC006K
/                            **(NONE OF THE ABOVE)                       ATC006K
/                        D  = ADDITIONAL ERROR INFORMATION.              ATC001K
/                             0 - NONE.                                  ATC001K
/                             1 - FUNC 12, ABT XX                        ATC001K
/                                 STATEMENT ABORTED IN THE               ATC001K
/                                 ERROR DISPLAY MODULE.                  ATC001K
/                             2 - STATUS 20 WORDS TO SB,                 ATC001K
/                                 ABT XX STATEMENT ABORTED               ATC001K
/                                 IN THE ERROR DISPLAY                   ATC001K
/                                 MODULE.                                ATC001K
/                                 DISPLAY MODULE IS ATC985.              ATC001K
/                        E  = ADDITIONAL ERROR INFORMATION.              ATC001K
/                             0 - NONE.                                  ATC001K
/                             1 - FUNC 12, ABT XX OR STATUS              ATC001K
/                                 STATEMENT ABORTED IN THE               ATC001K
/                                 CURRENT MODULE.                        ATC001K
/                       FF = FUNCTION ACTION NUMBER.                     ATC001K
/                            A TWO DIGIT OCTAL NUMBER                    ATC001K
/                            CORRESPONDING TO EACH                       ATC001K
/                            PRIMARY FUNCTION CODE                       ATC001K
/                            ISSUED WITHIN THE                           ATC001K
/                            MODULES. THESE NUMBERS                      ATC001K
/                            START WITH 01 AND ARE                       ATC001K
/                            INCREMENTED BY ONE FOR                      ATC001K
/                            EACH FUNCTION CODE FOUND                    ATC001K
/                            IN THE MODULES TEST                         ATC001K
/                            SEQUENCE.                                   ATC001K
77 PASS                                                                  ATC001K
   PAUSE                                                                 ATC001K
   EXIT TO 995                                                           ATC001K
   END 77                                                                ATC001K
COMPILE,SOURCE                                                           ATC001K
   MODULE ATC995,6000,(44,54,44),LOCK                                    ATC007K
/                                                                        ATC001K
/ MESSAGE FORMATS.                                                       ATC001K
/  A. NORMAL MESSAGES.                                                   ATC001K
/  ATC22 OPPOSITE DENSITY FUNCTION TEST.                                 ATC001K
/    TYPICAL START OF MODULE MESSAGE SENT TO DISPLAY AND                 ATC001K
/    PRINT BUFFERS.                                                      ATC001K
/ ATC22 - REPRESENTS CURRENT MODULE IN EXECUTION.                        ATC001K
/     MODULE NUMBERS EXTEND FROM 00 TO 55.                               ATC001K
/     PRIMARY MODULE NUMBER 22 IS SHOWN ABOVE.                           ATC001K
/     ONE LINE STATEMENT FOLLOWS TO DESCRIBE TEST PURPOSE.               ATC001K
/ ATC14 START OF SUBSEC 0005.                                            ATC001K
/ ATC14 END OF SUBSEC 0005.                                              ATC001K
/     THE ABOVE TWO MESSAGES SENT TO THE DISPLAY AND PRINT               ATC001K
/     BUFFERS.  MODULE 14 IN THIS EXAMPLE SHOWS SUBSECTION 5             ATC001K
/     STARTED AND ENDED EXECUTION.  EACH SUBSECTION IS                   ATC001K
/     CONTAINED IN ONE  MODULE.                                          ATC001K
/ ATC22 END OF MODULE, 0000 ERRORS.                                      ATC001K
/     THE END OF MODULE MESSAGE IS SENT TO THE DAYFILE AND               ATC001K
/     PRINT BUFFERS.  IF THE MODULE RUNS TO COMPLETION THE               ATC001K
/     ERROR COUNTER WOULD SHOW THE NUMBER (DECIMAL) OF                   ATC001K
/     ERROR DISPLAYS PROCESSED WHILE THE MODULE WAS RUNNING.             ATC001K
/     THE COUNT WOULD SHOW ZEROES IF NO ERRORS WERE                      ATC001K
/     ENCOUNTERED. THE EXAMPLE INDICATES MODULE 22 HAS                   ATC001K
/     ENDED.                                                             ATC001K
/ B. ERROR MESSAGES.                                                     ATC001K
/     THREE CATAGORIES OF ERRORS ARE REPORTED BY THIS TEST.              ATC001K
/     STATUS ERRORS, DATA COMPARISON ERRORS, AND                         ATC001K
/     DETECTED LOW LEVEL ABORT (ABT) INSTRUCTION BRANCH                  ATC001K
/     TYPE OF ERRORS.                                                    ATC001K
/     THE ATC TEST MODULES ALL CONTAIN A CHECK OF THE                    ATC001K
/     SIXTEEN WORDS OF ATS CONTROLLER STATUS IMMEDIATELY                 ATC001K
/     FOLLOWING THE ACCEPTANCE OF THE FUNCTION SEQUENCE                  ATC001K
/     ISSUED BY THE TEST. IF ANY STATUS TERMS DO NOT AGREE               ATC001K
/     WITH THE EXPECTED STATUS BUFFER TERMS AN ERROR IS                  ATC001K
/     REPORTED. THE TEST IS CONTINUED FROM THE POINT AT                  ATC001K
/     WHICH THE ERROR OCCURRED UNTIL END OF MODULE IS                    ATC001K
/     REACHED.                                                           ATC001K
/     DATA COMPARISON CHECKS ARE MADE IN SEVERAL OF THE                  ATC001K
/     CODE TRANSLATION COPY MEMORY SEQUENCES AND ERRORS                  ATC001K
/     WOULD BE DISPLAYED  IF ACTUAL DATA TERMS DO NOT                    ATC001K
/     COMPARE WITH EXPECTED TERMS.  THE DATA TERMS IN ERROR              ATC001K
/     ARE SHOWN ALONG WITH THEIR WORD LOCATION AS A LIST                 ATC001K
/     ENTRY FOLLOWED BY THE CURRENT ATS CONTROLLER STATUSES              ATC001K
/     (ACTUAL STATUS ONLY WITHOUT ANY EXPECTED STATUS WORDS              ATC001K
/     INDICATED).                                                        ATC001K
/     DETECTED ERRORS WOULD OCCUR WHEN THE ABORT (ABT)                   ATC001K
/     BRANCH OF THE LOW LEVEL INSTRUCTIONS IS TAKEN AND WAS              ATC001K
/     NOT EXPECTED BY THE TEST.  THE DISPLAY WILL SHOW THE               ATC001K
/     ISSUED ERROR INFORMATION ALONG WITH THE CURRENT                    ATC001K
/     STATUSES OF THE ATS CONTROLLER, IF STATUS CAN BE                   ATC001K
/     OBTAINED.                                                          ATC001K
/     IN ALL ERROR CASES ABOVE THE TEST WILL DISPLAY                     ATC001K
/     INFORMATION SHOWING THE MOST RECENT TEST CONDITIONS                ATC001K
/     BEING EXECUTED AT THE TIME OF ERROR AND ALSO THE                   ATC001K
/     CURRENT CONTROLLER STATUSES.                                       ATC001K
/     1. STATUS ERRORS EXAMPLE.                                          ATC001K
/              ATC TEST ERROR DISPLAY.                                   ATC001K
/              CURRENT ATC MODULE    = XXXX.                             ATC001K
/              CURRENT TEST FUNCTION = 0YYY.                             ATC001K
/              SP1 = AAAA, CNT1 = MMMM, LNG = LLLL.                      ATC001K
/              SP2 = BBBB, CNT2 = NNNN, PAT = PPPP.                      ATC001K
/              SP3 = CCCC.                                               ATC001K
/                                                                        ATC001K
/                STATUS     1     2     3     4                          ATC001K
/                 EXPCTD  0305  0000  0000  0000                         ATC001K
/                 ACTUAL  4305  1660  5200  0000                         ATC001K
/                STATUS     5     6     7     8                          ATC001K
/                 EXPCTD  0000  0000  0000  1400                         ATC001K
/                 ACTUAL  0210  0000  0000  1400                         ATC001K
/                STATUS     9    10    11    12                          ATC001K
/                 EXPCTD  0000  0000  4056  0000                         ATC001K
/                 ACTUAL  0000  0000  4056  0000                         ATC001K
/                STATUS    13    14    15    16                          ATC001K
/                 EXPCTD  0040  0032  0000  0044                         ATC001K
/                 ACTUAL  0040  0032  0000  0044                         ATC001K
/                STATUS ERROR.                                           ATC001K
/                 DDLT NUMBER - *OCT *OCT.                               ATC001K
/                EC=0001, EM=0005, LFN0012,U0006.                        ATC001K
77 PASS                                                                  ATC001K
   PAUSE                                                                 ATC001K
   EXIT TO 996                                                           ATC001K
   END 77                                                                ATC001K
COMPILE,SOURCE                                                           ATC001K
   MODULE ATC996,6000,(44,54,55),LOCK                                    ATC001K
/                                                                        ATC001K
/        ATC TEST ERROR DISPLAY                                          ATC001K
/              STATUS WORDS 1 TO 8                                       ATC001K
/         EXP -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT                   ATC001K
/         ACT -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT                   ATC001K
/              STATUS WORDS 9 TO 16                                      ATC001K
/         EXP -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT                   ATC001K
/         ACT -*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT,*OCT                   ATC001K
/              FUNCTION TESTED=*OCT                                      ATC001K
/              DTLT NUMBER - *OCT *OCT                                   ATC001K
/                                                                        ATC001K
/                                                                        ATC001K
/       NOTES - XXXX = MODULE NUMBER, USED BY                            ATC001K
/                      DISPLAY MODULE 985 TO                             ATC001K
/                      SHOW MODULE WHERE ERROR                           ATC001K
/                      ORIGINATED. DECIMAL                               ATC001K
/                      NUMBER DISPLAYED.                                 ATC001K
/               0YYY = CURRENT ATC FUNCTION CODE                         ATC001K
/                      BEING TESTED. USUALLY IS                          ATC001K
/                      NOT A 12 (STATUS) FUNCTION.                       ATC001K
/               AAAA = SP1 TAG FOR FORMAT UNIT                           ATC001K
/                      (FNC 4) PARAMETER WORD ONE.                       ATC001K
/               BBBB = SP2 TAG FOR FORMAT UNIT                           ATC001K
/                      (FNC 4) PARAMETER WORD TWO.                       ATC001K
/               CCCC = SP3 TAG FOR LOOP WRITE TO                         ATC001K
/                      READ TCU (FNC 75) PARAMETER                       ATC001K
/                      WORD.                                             ATC001K
/               LLLL = I/O BLOCK OUTPUT BUFFER                           ATC001K
/                      LENGTH (OCTAL).                                   ATC001K
/               PPPP = PATTERN NUMBER FOR PATTERN                        ATC001K
/                      USED IN I/O OPERATIONS.                           ATC001K
/               MMMM = GENERAL COUNTER FOR LOOPING                       ATC001K
/                      (DECIMAL).                                        ATC001K
/               NNNN = GENERAL COUNTER FOR LOOPING                       ATC001K
/                      (DECIMAL).                                        ATC001K
/               *OCT *OCT = REPRESENTS THE TWO                           ATC001K
/                           OCTAL CONSTANTS MAKING UP                    ATC001K
/                           THE DDLT NUMBER.                             ATC001K
/               EC = 0001 IS AN ERROR CODE NUMBER USED                   ATC001K
/                         IN THE  CODE. THE ERROR                        ATC001K
/                         NUMBER 1 IS NOT SIGNIFICANT                    ATC001K
/                         TO TEST OPERATIONS.                            ATC001K
/               EM = 0005 IS THE FORMAT STATEMENT                        ATC001K
/                         MESSAGE NUMBER. THIS NUMBER IS                 ATC001K
/                         NOT SIGNIFICANT TO THE TEST                    ATC001K
/                         OPERATION.                                     ATC001K
/               LFN0012 INDICATES LAST FUNCTION CODE                     ATC001K
/                       PROCESSED BY . USUALLY IS                        ATC001K
/                       A STATUS FUNCTION CODE 12 USED                   ATC001K
/                       AFTER THE CURRENT TEST FUNCTION                  ATC001K
/                       0YYY (ABOVE) IS COMPLETED.                       ATC001K
/               U0006 INDICATES A UNIT NUMBER USED IN                    ATC001K
/                     ANY MODULE WHICH ISSUES A CONNECT                  ATC001K
/                     UNIT FUNCTION CODE.  MODULES                       ATC001K
/                     WHICH DO NOT CONNECT TO A UNIT SHOW                ATC001K
/                     A UNIT NUMBER 0077 FOR DISPLAY                     ATC001K
/                     PURPOSES.                                          ATC001K
/                                                                        ATC001K
77 PASS                                                                  ATC001K
   PAUSE                                                                 ATC001K
   EXIT TO 997                                                           ATC001K
   END 77                                                                ATC001K
COMPILE,SOURCE                                                           ATC001K
   MODULE ATC997,6000,(44,54,55),LOCK                                    ATC001K
/                                                                        ATC001K
/                   THE SAME TERMS ABOVE ARE USED IN THE                 ATC001K
/                   FOLLOWING DISPLAYS SHOWN BELOW.                      ATC001K
/                                                                        ATC001K
/                                                                        ATC001K
/                2. DATA ERRORS EXAMPLE.                                 ATC001K
/                                                                        ATC001K
/                       ATC DATA COMPARE ERRORS.                         ATC001K
/                           COMPARISON OF FFFF WORDS.                    ATC001K
/                           LOC CNT   EXPECTED   ACTUAL                  ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                             WWWW     UUUU       VVVV                   ATC001K
/                                                                        ATC001K
/                     ATC TEST ERROR DISPLAY.                            ATC001K
/                     CURRENT ATC MODULE    = XXXX.                      ATC001K
/                     CURRENT TEST FUNCTION = 0YYY.                      ATC001K
/                     SP1 = AAAA, CNT1 = MMMM, LNG = LLLL.               ATC001K
/                     SP2 = BBBB, CNT2 = NNNN, PAT = PPPP.               ATC001K
/                     SP3 = CCCC.                                        ATC001K
/                                                                        ATC001K
/                         STATUS     1     2     3     4                 ATC001K
/                          ACTUAL  4305  1660  5200  0000                ATC001K
/                         STATUS     5     6     7     8                 ATC001K
/                          ACTUAL  0210  0000  0000  1400                ATC001K
/                         STATUS     9    10    11    12                 ATC001K
/                          ACTUAL  0000  0000  4056  0000                ATC001K
/                         STATUS    13    14    15    16                 ATC001K
/                          ACTUAL  0040  0032  0000  0044                ATC001K
/                                                                        ATC001K
/                         DATA ERROR.                                    ATC001K
/                         DDLT NUMBER - *OCT *OCT.                       ATC001K
/                                                                        ATC001K
/                         EC=0004, EM=0017,LFN0012,U0006.                ATC001K
/                                                                        ATC001K
/                NOTES - WWWW = WORD LOCATION (OCTAL) IN                 ATC001K
/                               ERROR.                                   ATC001K
/                        UUUU = EXPECTED 12-BIT OCTAL                    ATC001K
/                               VALUES.                                  ATC001K
/                        VVVV = ACTUAL 12-BIT OCTAL VALUES               ATC001K
/                               INPUT FROM CONTROLLER.                   ATC001K
/                        FFFF = TOTAL NUMBER OF WORDS THAT               ATC001K
/                               ARE TO BE COMPARED (OCTAL).              ATC001K
/                                                                        ATC001K
/                        ONLY THOSE WORDS IN ERROR ARE                   ATC001K
/                        DISPLAYED WHEN A BUFFER COMPARISON              ATC001K
/                        CHECK IS MADE.                                  ATC001K
/                                                                        ATC001K
/               3. ISSUED MESSAGES EXAMPLE.                              ATC001K
/                                                                        ATC001K
/                     ATC TEST ERROR DISPLAY.                            ATC001K
/                     CURRENT ATC MODULE    = XXXX.                      ATC001K
/                     CURRENT TEST FUNCTION = 0YYY.                      ATC001K
/                     SP1 = AAAA, CNT1 = MMMM, LNG = LLLL.               ATC001K
/                     SP2 = BBBB, CNT2 = NNNN, PAT = PPPP.               ATC001K
/                     SP3 = CCCC.                                        ATC001K
/                                                                        ATC001K
/                         STATUS     1     2     3     4                 ATC001K
/                          ACTUAL  4305  1660  5200  0000                ATC001K
/                         STATUS     5     6     7     8                 ATC001K
/                          ACTUAL  0210  0000  0000  1400                ATC001K
/                         STATUS     9    10    11    12                 ATC001K
/                          ACTUAL  0000  0000  4056  0000                ATC001K
/                         STATUS    13    14    15    16                 ATC001K
/                          ACTUAL  0040  0032  0000  0044                ATC001K
/                                                                        ATC001K
/               ISSUED MESSAGE.                                          ATC001K
/               DDLT NUMBER - *OCT *OCT.                                 ATC001K
/               ATC985 ER4027 L054 CH INACTIVE ON CHAINING               ATC001K
/                                                                        ATC001K
/               NOTES - ATC985 IS THE MODULE USED TO                     ATC001K
/                       PROVIDE ALL ERROR DISPLAYS SHOWN                 ATC001K
/                       ABOVE.                                           ATC001K
/                                                                        ATC001K
/                           ER40DD IS THE  ISSUED ERROR                  ATC001K
/                           CODE NUMBER DD.                              ATC001K
/                                                                        ATC001K
/                           LNNN IS THE LINE NUMBER NNN IN               ATC001K
/                           MODULE NUMBER XXXX WHERE                     ATC001K
/                           TOOK THE ABORT (ABT) BRANCH.                 ATC001K
/                           MODULE ATC985 IS THE RESULT OF               ATC001K
/                           A CALL 985 STATEMENT IN MODULE               ATC001K
/                           XXXX.                                        ATC001K
/                                                                        ATC001K
/                           THE ERROR STATEMENT IS A                     ATC001K
/                           BRIEF SENTENCE RELATED TO THE                ATC001K
/                           ERROR NUMBER DD. SEE  MANUAL                 ATC001K
/                           FOR ALL POSSIBLE LOW LEVEL ERROR             ATC001K
/                           CODE MESSAGES.                               ATC001K
77 PASS                                                                  ATC001K
   PAUSE                                                                 ATC001K
   EXIT TO 998                                                           ATC001K
   END 77                                                                ATC001K
COMPILE,SOURCE                                                           ATC001K
   MODULE ATC998,6000,(44,54,55),LOCK                                    ATC001K
/                                                                        ATC009K
/       ATC TEST ERROR DISPLAY.                                          ATC009K
/        CURRENT ATC MODULE    = XXXX.                                   ATC009K
/        CURRENT TEST FUNCTION = 0YYY.                                   ATC009K
/        SP1 = AAAA, CNT1 = MMMM, LNG = LLLL.                            ATC009K
/        SP2 = BBBB, CNT2 = NNNN, PAT = PPPP.                            ATC009K
/        SP3 = CCCC.                                                     ATC009K
/                                                                        ATC009K
/        STATUS     1     2     3     4                                  ATC009K
/         ACTUAL  4305  1660  5200  0000                                 ATC009K
/        STATUS     5     6     7     8                                  ATC009K
/         ACTUAL  0210  0000  0000  1400                                 ATC009K
/        STATUS     9    10    11    12                                  ATC009K
/         ACTUAL  0000  0000  4056  0000                                 ATC009K
/        STATUS     13   14    15    16                                  ATC009K
/         ACTUAL  0040  0032  0000  0044                                 ATC009K
/                                                                        ATC009K
/                                                                        ATC009K
/        ISSUED MESSAGE.                                                 ATC009K
/        DTLT NUMBER - 0103  1001                                        ATC009K
/                                                                        ATC009K
/                                                                        ATC009K
/      ATC985 ABORT EC=4024,EM=0122,LFN=0012,EA=0061                     ATC009K
/                                                                        ATC009K
/       ATC01  E4024 L020  NO INACTIVE ON EQUIP FUNC                     ATC009K
/                                                                        ATC009K
/                                                                        ATC009K
/        THE ABOVE ERROR MESSAGE IS AN EXAMPLE                           ATC009K
/        OF A DOUBLE ABORT.THE MODULE ABORTED                            ATC009K
/        IN THE TESTING MODULE ATC01 AND IN THE                          ATC009K
/        ERROR PROCESSING MODULE ATC985.THE DTLT                         ATC009K
/        NUMBER WILL FURTHER EXPLAIN THIS ERROR.                         ATC009K
/        REFER TO ATC DOCUMENTATION.                                     ATC009K
/                                                                        ATC009K
/                                                                        ATC001K
/THE FOLLOWING TABLE DEFINES THOSE POSSIBLE ERROR CODES THAT             ATC001K
/MAY BE ISSUED DURING AN ABORT (ABT) ERROR LOOP OCCURING                 ATC001K
/IN THE EXECUTION OF INSTRUCTIONS USED IN THIS TEST.                     ATC001K
/SEE ALSO  MANUAL, LOW LEVEL ERROR CODE TABLE, FOR MORE                  ATC001K
/COMPLETE DEFINITION OF ADDITIONAL ERROR CODES NOT SHOWN                 ATC001K
/HERE.                                                                   ATC001K
/                                                                        ATC001K
/ ERROR                             INSTRUCTIONS WHICH                   ATC001K
/ CODE         MESSAGE              COULD ISSUE THIS MESSAGE.            ATC001K
/                                                                        ATC001K
/ 04    WC OR BUFFER INDEX ERROR   FUNC     STATUS   OUT                 ATC001K
/                                  FOUT     INB      OUTB                ATC001K
/                                                                        ATC001K
/ 12    NO FULL ON EQUIP STATUS    IN       OUT                          ATC001K
/                                  INB      OUTB                         ATC001K
/                                                                        ATC001K
/ 13    NO FULL ON EQUIP STATUS    STATUS                                ATC001K
/                                                                        ATC001K
/ 20    CH ACTIVE ON ENTRY         ACN      FUNC     STATUS              ATC001K
/                                  CONN     IN       OUT                 ATC001K
/                                           INB      OUTB                ATC001K
/                                                                        ATC001K
/ 21    CH INACTIVE AFTER ACN      ACN      FUNC     IN                  ATC001K
/                                  CONN     STATUS   INB                 ATC001K
/                                                                        ATC001K
/ 22    CH ACTIVE AFTER DCN        STATUS   IN       OUT                 ATC001K
/                                           INB      OUTB                ATC001K
/                                                                        ATC001K
/ 23    CH NOT RESERVED            ACN      STATUS   OUT                 ATC001K
/                                  FUNC     IN       OUTB                ATC001K
/                                           INB                          ATC001K
/                                                                        ATC001K
/ 24    NO INACTIVE ON EQUIP FUNC  CONN                                  ATC001K
/                                  FUNC                                  ATC001K
/                                                                        ATC001K
/ 26    NO EMPTY ON LAST BYTE      FOUT     OUT      OUTB                ATC001K
/       OUTPUT                                                           ATC001K
/                                                                        ATC001K
/ 27    CH INACTIVE ON CHAINING    IN       OUT                          ATC001K
/                                  INB      OUTB                         ATC001K
/                                                                        ATC001K
/ 30    CH ACTIVE AND EMPTY ON     STATUS   IN                           ATC001K
/       INPUT                                                            ATC001K
/                                                                        ATC001K
/ 31    CH INACTIVE ON STATUS      STATUS                                ATC001K
/                                                                        ATC001K
/ 32    CH ACTIVE AND FULL ON      CONN     FUNC     OUT                 ATC001K
/       OUTPUT                                                           ATC001K
77 PASS                                                                  ATC001K
   PAUSE                                                                 ATC001K
   END 77                                                                ATC001K
COMPILE,SOURCE                                                           ATC001K
*                                                          *             ATC001K
